加密专家的问题。想象一下,我们有一个概念 Notes.app :
在以下条件下,解密10个音符标题几乎需要 1秒。但如果有很多笔记怎么办?
我对这个问题的2便士:使用不同的初始化向量加密所有音符,但也使用相同的盐加密。这将允许我只生成一次解密密钥并快速解密许多笔记。
问题是:这样做我们会得到许多不同的笔记,用相同的密钥加密。这会以某种方式损害AES加密的安全性吗?是否有可能知道有一堆文件不仅具有相同的密码,而且相同的盐以某种方式可以破解加密?
感谢您的想法
答案 0 :(得分:1)
AES-256 不使用盐。但我猜你在PBE算法中使用salt和密码来生成密钥。通常这种PBE算法的构造计算成本很高 - 因此您在移动设备上看到的时间为80毫秒。
在加密不同的消息时,您可以使用不同的初始化向量(IV),而不是使用不同的盐来创建不同的密钥。不同的 IV 可确保以相同块开头的邮件加密到不同的邮件。