【问题标题】:Using IV with Key Derivation in AES 256 BIT在 AES 256 BIT 中使用 IV 和密钥派生
【发布时间】:2017-10-07 20:58:35
【问题描述】:

我正在开发一个 php 系统,其中所有数据都由从用户密码派生的密钥加密。 我已经能够导出密钥,但是使用 AES 加密数据需要密钥和 IV。 这就是我产生疑问的地方: 在这种情况下,我想我应该存储 IV 以便稍后解密数据。我在哪里存储?在数据库中还是在服务器上的文件中? 或者存储 IV 是不正确的,是否有另一种方法可以为相同的密钥获取相同的 IV?

【问题讨论】:

    标签: php security encryption


    【解决方案1】:

    不要从派生密钥的同一来源派生 IV。您应该为每个加密操作使用随机生成的 IV,并简单地将 IV 与密文一起存储。

    通常将 IV 简单地添加到密文中,以便在需要解密数据时轻松检索它。 IV不需要保密,所以上述方法是完全安全的。

    重申一下,因为它很重要,不要从 KDF 或类似物中派生 IV,始终为每个加密操作随机生成一个新的 IV。

    【讨论】:

    • 太好了,我明白了:)
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2013-03-13
    • 2015-01-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多