关于mysql:为什么在存储密码时使用salt而不是aes

Why use a salt instead of AES when storing passwords

本问题已经有最佳答案,请猛点这里访问。

与使用salt相比,aes在将密码存储在数据库中时是否更安全?注:不涉及性能,只涉及安全性。哪个更安全。另外,将加密密钥存储在另一个数据库服务器中,显然是加密的,这不是更好吗?


不可以。如果您使用密钥加密密码,而攻击者窃取了加密密码表和密钥,他可以发现所有用户的密码并使用它们登录到您的系统(以及用户选择相同密码的所有其他系统)。这不安全。

如果您正确地"散列"密码,则没有允许攻击者从身份验证表中恢复密码的密钥或快捷方式。这个哈希函数不能像密码一样被颠倒。