按照使用 AES 算法的标准说明,我无法在 C# 中使用 AES 正确加密/解密某些文本。虽然我发现如果我将名为 aesIV 的数据与加密数据分开附加,我可以。据我了解,aesIV 已经嵌入到加密数据中。所以我认为它不会产生安全问题。请让我问我是否可以做到。
先感谢您。
按照使用 AES 算法的标准说明,我无法在 C# 中使用 AES 正确加密/解密某些文本。虽然我发现如果我将名为 aesIV 的数据与加密数据分开附加,我可以。据我了解,aesIV 已经嵌入到加密数据中。所以我认为它不会产生安全问题。请让我问我是否可以做到。
先感谢您。
最常见的选项是在加密期间将随机 IV 添加到密文中。然后在解密过程中将其从密文集IV中删除。在 C# 的通用托管加密中,随机IV
属性是自动生成的,因此您可以简单地检索它并添加它。
请参阅AesManaged和示例(其中 IV 是单独传输的,否则就可以了)。
如果您在添加 IV 之后直接解密,那么您将获得blocksize
垃圾字节。这通常不是继续进行的方式,因为提前移除和使用 IV 就像移除垃圾一样容易。
正如您所假设的,IV 可能会以明文形式传输。