note 60056 added to function.crypt
| From: | solar at openwall dot com | Date: | Sat, 24 Dec 2005 07:20:13 +0000 |
| Subject: | note 60056 added to function.crypt | ||
| Groups: | php.notes | ||
| Request: | Send a blank email to php-notes+get-100652@lists.php.net to get a copy of this message | ||
With different password hashing methods supported on different systems and with the need to generate
salts with your own PHP code in order to use the more advanced / more secure methods, it takes
special knowledge to use crypt() optimally, producing strong password hashes. Other message digest
/ hashing functions supported by PHP, such as md5() and sha1(), are really no good for password
hashing if used naively, resulting in hashes which may be brute-forced at rates much higher than
those possible for hashes produced by crypt().
I have implemented a PHP password hashing framework (in PHP, tested with all of PHP 3, 4, and 5)
which hides the complexity from your PHP applications (no need for you to worry about salts, etc.),
yet does things in almost the best way possible given the constraints of the available functions.
The homepage for the framework is:
http://www.openwall.com/phpass/
I have placed this code in the public domain, so there are no copyrights or licensing restrictions
to worry about.
P.S. I have 10 years of experience in password (in)security and I've developed several other
password security tools and libraries. So most people can feel confident they're getting this
done better by using my framework than they could have done it on their own.
----
Manual Page -- http://www.php.net/manual/en/function.crypt.php
Edit -- http://master.php.net/manage/user-notes.php?action=edit+60056
Delete: added to the manual -- http://master.php.net/manage/user-notes.php?action=delete+60056&report=yes&reason=added+to+the+manual
Delete: bad code -- http://master.php.net/manage/user-notes.php?action=delete+60056&report=yes&reason=bad+code
Delete: spam -- http://master.php.net/manage/user-notes.php?action=delete+60056&report=yes&reason=spam
Delete: useless -- http://master.php.net/manage/user-notes.php?action=delete+60056&report=yes&reason=useless
Delete: non-english -- http://master.php.net/manage/user-notes.php?action=delete+60056&report=yes&reason=non-english
Delete: already in docs -- http://master.php.net/manage/user-notes.php?action=delete+60056&report=yes&reason=already+in+docs
Delete: other reasons -- http://master.php.net/manage/user-notes.php?action=delete+60056&report=yes
Reject -- http://master.php.net/manage/user-notes.php?action=reject+60056&report=yes
Search -- http://master.php.net/manage/user-notes.php