Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
在 MySQL函数文档中PASSWORD:
PASSWORD
MySQL Server 中的身份验证系统使用 PASSWORD() 函数;您不应该在自己的应用程序中使用它。为此,请考虑使用 MD5() 或 SHA1()。
为什么我们不应该在我们的应用程序中使用这个函数?
我能想到的几个原因
这是一个快速散列(我相信是 SHA1),它不是密码散列的好属性。
他们可能会更改它在未来版本的 MySQL 中使用的哈希值,从而破坏您的应用程序。他们已经这样做了一次,因此使用了 OLD_PASSWORD() 函数。
它自然不会使用盐(尽管如果您想在调用 PASSWORD 函数之前将其附加到密码中,您可以使用盐)
它是非标准 SQL,因此如果您需要将应用程序移植到另一个平台,您需要找到一个替代品