PHP Secure Password Hashing

This blog post provides good information about password hashing. The main point of this article is to use strong encryption and make attackers life hard. So if someone gains access to database, attacker could figure out your password using a brute force or rainbow tables.

ADVERTISEMENTS

🐧 Get the latest tutorials on SysAdmin, Linux/Unix, Open Source & DevOps topics via:
CategoryList of Unix and Linux commands
File Managementcat
FirewallCentOS 8 OpenSUSE RHEL 8 Ubuntu 16.04 Ubuntu 18.04 Ubuntu 20.04
Network Utilitiesdig host ip nmap
OpenVPNCentOS 7 CentOS 8 Debian 10 Debian 8/9 Ubuntu 18.04 Ubuntu 20.04
Package Managerapk apt
Processes Managementbg chroot cron disown fg jobs killall kill pidof pstree pwdx time
Searchinggrep whereis which
User Informationgroups id lastcomm last lid/libuser-lid logname members users whoami who w
WireGuard VPNCentOS 8 Debian 10 Firewall Ubuntu 20.04

ADVERTISEMENTS
2 comments… add one
  • jcinacio Dec 7, 2007 @ 10:36

    Yep, recent advances in CPU power allow recovering poorly hashed passwords.

    Besides the (not so obvious to some, but required) salt, there are a couple of rules:

    – password minimum length (unsalted passwords up to 8/9 chars can be easily recovered)
    – variable salt (you can store the salt for each password in the db as well, this increases it’s security exponentially)
    – strong hash function (md5 is considered weak nowadays, sha1 or even better sha256 is the way to go)

    … but most importantly, NEVER store passwords in plaintext, as i still see in many sites that send you your original password on recovery… :/

  • Lex Feb 12, 2008 @ 20:45

    How do you do the variable salt thing in PHP?

Leave a Reply

Your email address will not be published. Required fields are marked *

Use HTML <pre>...</pre>, <code>...</code> and <kbd>...</kbd> for code samples.