【发布时间】:2010-04-08 23:31:12
【问题描述】:
为了生成加密数据,我们需要定义一个足以生成数据的密钥。但是在.net DESCryptoServiceProvider 中需要密钥和初始化向量来生成加密数据。在这方面,我想知道定义这个初始化向量场的重要性和好处。这在使用 DES 算法加密时是强制性的吗?
请分享你的想法。
问候, 巴鲁
【问题讨论】:
标签: c#
为了生成加密数据,我们需要定义一个足以生成数据的密钥。但是在.net DESCryptoServiceProvider 中需要密钥和初始化向量来生成加密数据。在这方面,我想知道定义这个初始化向量场的重要性和好处。这在使用 DES 算法加密时是强制性的吗?
请分享你的想法。
问候, 巴鲁
【问题讨论】:
标签: c#
如果在没有初始化向量的情况下使用密钥加密多个恰好相同(或开始相同)的项目,您将获得相同的密文输出,这是一个相当大的问题。
对每个加密的项目使用唯一的初始化向量可以解决这个问题。
更多详情请参阅http://en.wikipedia.org/wiki/Block_cipher_modes_of_operation#Initialization_vector_.28IV.29。
【讨论】: