【问题标题】:Basic secure encryption for sensitive data?敏感数据的基本安全加密?
【发布时间】:2014-06-23 08:36:02
【问题描述】:

我目前将我们内部系统的大量信息存储在 MySQL 数据库中。这包括 SSH/远程桌面密码、IPMI 密码等。为了开发过程中的时间,我只是将这些存储为纯文本,因为没有人可以访问它,但是现在我们的一些团队成员将使用它,我需要增加一些安全性。

根据我的理解,实际的加密/散列文本听起来并不像可以使用其中一些/大部分选项转换回纯文本。

我不一定需要最先进的安全性,我只是想确保这些密码不会以纯文本形式存储在数据库中(但我需要能够即时将其转换回纯文本) .这可以用 MD5/SHA1/etc 完成吗?

【问题讨论】:

    标签: php mysql security encryption md5


    【解决方案1】:

    您不能使用像 MD5 这样的哈希算法,但可以使用 AES_ENCRYPT,因为您需要无损加密。

    对于解密当然使用 AES_DECRYPT()。

    【讨论】:

      【解决方案2】:

      MD5/SHA 是一种方式的哈希,您不能转换回来。理想的做法是存储密码的哈希值,而不是密码本身。

      在你的情况下,你可以使用mcrypt_encrypt()

      【讨论】:

        【解决方案3】:

        我不会推荐 MD5/SHA1。因为可以使用匹配工具从其哈希中检索弱密码。我推荐 salted hashing 使用 SHA-256 或 SHA-512,同时将密码存储到数据库。散列密码无法恢复为纯文本,您必须在检查时匹配散列。

        如果您想以纯文本形式检索密码,可以使用加密。可以使用像 AES-256 这样的对称加密,其中您有一个用于加密和解密密码的密钥。

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 2023-03-18
          • 2014-08-03
          • 2012-08-11
          • 2021-04-10
          • 2013-08-01
          • 2013-09-24
          相关资源
          最近更新 更多