4 ms·
The method I've used is to add the column for the new stronghash then you update the old column to stronghash(<oldhash>), where <oldhash> is dumbhash(password)
by lotyrin 10y ago
The method I've used is to add the column for the new stronghash then you update the old column to stronghash(<oldhash>), where <oldhash> is dumbhash(password) check against that on login stronghash(dumbhash(password)) and generate just stronghash(<password>) while you have the plaintext password in memory and update the row to add the new hash (simple and interoperable, not dependent on dumbhash) and drop the stronghash(<oldhash>). After a <longtime> limit (to optimize both maintenance overhead of the additional column / behavior and limit exposure to only minority users that haven't logged in for <longtime>), you drop the stronghash(<oldhash>) from everyone and do a "we sent you a reset email" for anyone that's trying to log in but has no <stronghash> password hash.
- danielweber 10y agoThis is fine workflow, but keep in mind > and do a "we sent you a reset email" for anyone that's trying to log in but has no <stronghash> password hash. Yahoo is an email provider so many of these users won't have an external provider to refer to.
- sah2ed 10y agoThis workflow is much better than the other proposals I've read up-thread.