algorith | fairly safe difficulty (all variables) | very safe difficulty without incurring too much performance cost.
pbkdf + sha1 | completely unsafe | completely unsafe
pbkdf + sha2 | 100000 | ...
pbkdf + sha256
bcrypt
scrypt
argon2
algorith | fairly safe difficulty (all variables) | very safe difficulty without incurring too much performance cost.
pbkdf + sha1 | completely unsafe | completely unsafe
pbkdf + sha2 | 100000 | ...
pbkdf + sha256
bcrypt
scrypt
argon2
That's the problem with a chart like this. The gradation will go from "completely unsafe" salted hashes to "very much safe enough" with only marginal changes after that.
Another problem is that these functions are all parameterized, so the chart needs to capture the safety level at specific parameters.
algorith | a safe set of parameters | a VERY safe set of parameters but needs strong hardware
Maybe a 4th column of "unsafe if difficulty is below"
This could be something updated yearly or whatever to help people figure out what things they need to move towards. If they see that their currently used settings are below the unsafe line, they will know it's time to upgrade.
Example: I use PBKDF2-SHA1 at difficulty of 11k iterations. Is that number still within the "probably okay" list, or is that in the "I can hack any password on your list in 15 minutes"