PHP Secure Password Hashing

by on December 5, 2007 · 2 comments· LAST UPDATED December 5, 2007

in , ,

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.

TwitterFacebookGoogle+PDF versionFound an error/typo on this page? Help us!

{ 2 comments… read them below or add one }

1 jcinacio December 7, 2007 at 10:36 am

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… :/

Reply

2 Lex February 12, 2008 at 8:45 pm

How do you do the variable salt thing in PHP?

Reply

Leave a Comment

Tagged as: , , , ,

Previous post:

Next post: