我的服务器会定期发送联系人列表。然后我需要编码并将哈希值存储在没有初始值的数据库中(只有哈希值)。如果我收到两次联系,则哈希必须与此相同。目前我想使用AES加密。要获得相同的哈希两次,必须使用相同的密钥和相同的初始化向量,这似乎非常不安全。其中一个解决方案可能是生成密钥和联系人。它比使用一个密钥和iv对所有联系人更好。这不好主意吗?你能建议另一个解决方案吗?
答案 0 :(得分:1)
这取决于你想做什么
存储联系人编码后检索清除数据,然后必须使用加密:例如AES
或只是它们的一些痕迹,看看你是否已经拥有它们:那么哈希就足够了。这是不可逆转的。 SHA例如
您收到明确的数据吗?然后你必须做两个动作中的一个。
之后,你想用它做什么?
加密数据,您可以解密
使用哈希,你只能看到你是否再次收到它。
是整个数据,还是仅仅是某些部分? (例如密码)