【发布时间】:2020-05-01 12:47:40
【问题描述】:
我正在创建一个程序,该程序将加密文件夹中的文件并允许我稍后解密它们。
我目前正在使用 AES-GCM,我想知道是否使用相同的密钥但更改每次加密的 IV 是否是正确的方法?
我正在使用 mBedTLS 来执行此操作,并且我能够使用 AES-GCM 和硬编码密钥和 IV 成功加密/解密文件。但是出于安全原因,我想确保我正在更改需要更改的内容以及出于性能原因,而不是更改不需要的内容。
【问题讨论】:
-
另一种方法是使用 KBKDF(例如 HKDF)通过组合主密钥和
Info为每个文件派生另一个密钥,只要它对每个文件都是唯一的,它可以是任何东西.然后,您甚至可以将 nonce 设置为全零字节。优点是您可以选择任何加密方案/模式(尽管使用较大的密钥大小(例如 256 位)可能对此类方案有利)。
标签: encryption cryptography aes aes-gcm