1

我正在编写一些简单的登录脚本。我只是想知道,在 MySQL 中使用散列和加密函数而不是 PHP 或其他方式有什么优势吗?

我知道使用存储过程,我可能会传输不安全的敏感信息。另一方面,它可能更易于维护。

使用它们有什么好处吗?

4

3 回答 3

4

我看到使用 mysql 加密敏感数据的唯一问题是,如果您运行 php 的 Web 服务器位于 mysql 的不同位置,您可能会通过与这两方通信的网络发送敏感的未加密数据。

于 2012-10-01T02:07:07.883 回答
0

我肯定会在 MySQL 上使用 PHP 来散列密码。有很多方法可以存储和查看查询,如果有这样的查询最终存储在某个地方,那可能会很糟糕:

SELECT id FROM users WHERE username = 'User123' AND password = MD5(CONCAT('SecretSalt','MyPassword'))

于 2012-10-01T02:19:36.760 回答
0

如果您要存储密码,请使用设计为难以破解的散列函数。bcrypt是一个合理的选择,这里的许多答案都详细介绍了如何实现它。

MySQL 的散列方法没有这种安全性,并且用于其他目的,例如散列文档以检查重复。

于 2012-10-01T02:44:54.313 回答