我可以采取哪些安全措施来保护不能在数据库中散列的密码?
问题描述:
我正在制作一个应包含密码安全类型功能的公司后端。很明显,密码需要是纯文本,所以用户可以阅读它们,或者至少以某种方式“纯”翻译成纯文本,所以我不能使用哈希值。我可以采取哪些安全措施来保护不能在数据库中散列的密码?
还有什么更多安全我能做的不只是将纯文本密码放入数据库吗?
注:这些(大部分)自动生成的密码是永远不会重复使用,除了它们保存为目的,其中大部分是FTP服务器凭据什么。
答
您可以使用MySQL的ENCODE()
,DES_ENCRYPT()
或AES_ENCRYPT()
功能,并使用存储在安全的位置来加密密钥。
真正的问题:你为什么需要它们是可逆的?你不能只为用户自动生成一个新的密码,如果他们忘记了? (这里有一些安全原理吗?) – 2012-07-22 23:43:17
@JeffTratner:它们必须是可逆的,因为这是一个密码安全的。这是将密码保存到客户端的FTP服务器的功能。 – Hubro 2012-07-23 00:38:26
感谢解释:)我不明白什么是密码安全的,我感到有点无聊。 – 2012-07-23 01:43:59