A Tale of Security Gone Wrong
gavinmiller.io
gavinmiller.io
Essentially, if you ever find yourself having to think about manually creating and incorporating salts into your password hashing mechanism, it's a telltale sign that you are using an unsuitable password hashing algorithm to begin with. Instead, you should almost always be using bcrypt, scrypt or PBKDF2 as per current best practice.
https://security.stackexchange.com/questions/92512/how-much-...
This was a follow up of a more general and well received question (How critical is it to keep your password length secret?), where some of the answers imho are a really worth reading:
https://security.stackexchange.com/questions/92233/how-criti...
Can someone help me understand if this is an assumption or a status quo?
Then, what does storing this information gain you from an app owner perspective?
That said - the article addresses the claimed advantage of storing the value:
"The rationale was that as technology progressed and password cracking became easier, users could be contacted to update their password."
I would argue that this a misguided motivation for storing the password entropy. Bcrypt is purposefully designed to combat the problem of more efficient brute-forcing due to future GPU/CPU speed improvements by incorporating a 'work factor'. At any time, application owners can specifically increase the work factor and the hashing process will be intentionally slowed further. In this way, the future reversibility of the password hashes can be reduced without requiring that users update their passwords.