我有一个登录名和密码,需要存储在我的数据库中。对它们进行编码的更安全的方法是什么(我使用 AES 算法):作为一个在登录/密码之间带有分隔符的字符串,还是作为两个单独的字符串?编码必须是可逆的,所以请不要提及哈希。
问问题
77 次
2 回答
1
安全与您的选择没有太大关系。如果您使用AES with mode different than ECB and PKCS7/PKCS5 Padding
,您可以单独加密登录名和密码,也可以单独加密登录名和密码。这取决于您在实施中是否需要没有密码的登录。您可能会使用相同的密钥来加密登录名和密码。因此,拆分绝不是额外的安全措施。如果您要使用一些加盐的 PKDF 密钥,则每条记录可能会有所不同,但攻击者仍然只需要获取主密码和盐。
于 2012-12-05T07:48:32.467 回答
0
将它们一起或单独加密并没有任何额外的安全性。但是,您还应该明智地选择密码模式/初始向量 - 对于 CBC 和 CTR(和 CFB?),加密输入与加密的初始向量进行异或运算,因此对于两个加密密码具有相同的向量,对它们进行异或运算将允许得到原始密码,可能会泄露信息。
于 2012-12-05T09:42:48.140 回答