如何避免存储我需要以纯文本格式访问的用户密码?

时间:2014-01-22 15:09:22

标签: php mysql

我正在开发一个API的客户端,该客户端不适合此API的普通客户端的配置文件。此API要求用户使用用户/密码对或会话密钥进行身份验证。但是,只要用户未在其他地方进行身份验证,会话密钥就会持续。每次会话到期时让用户重新键入密码是不可行的。目前,在开发应用程序时,我一直在MySQL中以明文形式存储密码。我想为生产客户避免这种情况。当我需要明文密码将这些密码发送给服务时,如何保护这些密码?

2 个答案:

答案 0 :(得分:0)

使用数据库加密来发送和接收敏感信息。

这样,黑客还需要访问数据库并找出加密模式才能显示密码。有一些软件可以为您完成,例如ProtectDB(http://www.safenet-inc.com/data-protection/database-encryption/protect-db/

或者你可以自己制作!

答案 1 :(得分:0)

使用哈希算法(例如SHA512(http://www.php.net/manual/en/function.hash.php))在注册时加密密码。

然后,当用户使用他们的用户名和密码登录时,加密密码,并根据数据库中存储的密码进行检查。