If you already have SHA1 hashed passwords and you're trying to migrate to a better password hashing algorithm, is it less secure to just use PBKDF2 to hash the SHA1 hashes you already have instead of migrating users over when they next log in and hash the password with PBKDF2 directly?

In other words, is there any difference between these two approaches?:

PBKDF2(SHA1(password)) or PBKDF2(password)

The ability to migrate the existing hashes over in one shot would make a migration much easier.

  • 1
    I realize you're asking about PBKDF2 and the flagged duplicate question discusses bcrypt, but they're more or less the same for your purposes. If you have specific PBKDF2 questions I would suggest editing your question to mention those.
    – PwdRsch
    Jun 9 '17 at 0:24

This is a pretty common interim conversion scenario. If you have the luxury of having control over the code that manages authentication and can support both methods simultaneously, this is operationally efficient without sacrificing security, if properly implemented.

Informative reference here.

Not the answer you're looking for? Browse other questions tagged or ask your own question.