I’m working on some PHP meant to be deployed to users’ servers – likely cheap/shared hosting (meaning lowest-common-denominator PHP 5.2, no modification of PHP installation). Common advice for password hashes seems to be bcrypt or scrypt, via installable extensions for PHP 5.2.
I’ve been thinking about using an iterated SHA-512 with a beefy per-user salt, but it doesn’t sound like it really compares to bcrypt/scrypt.
Without the ability to modify the base PHP installation, what options do I have for strong password security?
As mentioned in the comments to the original question, a PHP < 5.2 implementation of PBKDF2 is available at http://crackstation.net/hashing-security.htm.
PBKDF2 is arguably a better option than bcrypt/scrypt, having been much more thoroughly studied and tested.