【发布时间】:2019-02-21 20:51:13
【问题描述】:
我正在尝试将密码存储在我的用户表中。我当然想在之前给它们加盐和哈希。
但是 mysql 中不再有 hash() 方法了。如何在 8.0 版中做到这一点?有替代品吗?
提前感谢您的帮助。
【问题讨论】:
-
警告:编写自己的访问控制层并不容易,而且有很多机会会严重错误。当任何现代的development framework(如Laravel)带有强大的authentication system 内置时,请不要编写自己的身份验证系统。至少遵循recommended security best practices 并且永远不要将密码存储为纯文本 或像 SHA1 或 MD5 这样的弱散列。
-
请包含 exact 错误消息,而不是其近似值。 MySQL 没有通用的
HASH()函数。您可能会将其与HASH()partitioning method 混淆。 -
除了没有
hash-function,MySQL 8.0.11+ 也没有password()-function。