如何在我的数据库中存储其他应用程序的密码? (加密)

时间:2013-10-22 13:06:06

标签: passwords

我的应用程序连接到许多其他应用程序,因此我需要在我的数据库中存储其他应用程序的用户名/密码。

我不想将它们存储为纯文本,但我的应用程序需要向其他人发送纯文本密码以进行身份​​验证。

请建议安全存储密码的最佳方法。

感谢。

2 个答案:

答案 0 :(得分:0)

对数据库中的敏感数据字段使用可逆加密(可能是AES),并在每次需要该值时让您的应用程序对其进行解密。您需要以某种方式访问​​应用程序的加密密钥,但这应该在特定于部署的配置文件中。

如果有人获取了您的数据库转储但未转储您的应用所在的文件系统,这将保护您。

答案 1 :(得分:0)

如果有的话,很少需要使用可逆加密策略来存储密码。存储密码的原因是,用户可以在将来的某个时刻向您证明其身份(对于某些“证明”值),并且通常可以使用单向散列(如MD5或SHA1)来完成。 / p>

使用单向哈希存储密码 保护您的用户免受入侵者访问您的系统的影响,因为没有密钥可以让他们从加密密码中获取明文