0
为了生成加密数据,我们需要定义一个足以生成数据的密钥。但在.net DESCryptoServiceProvider需要密钥和Intialisation向量来生成加密数据。在这方面,我想知道定义这个初始化向量场所获得的好处的重要性。这是强制性的,而使用DES算法进行加密。初始化矢量 - DES /三重DES算法
请分享你的想法。
问候, 巴鲁
为了生成加密数据,我们需要定义一个足以生成数据的密钥。但在.net DESCryptoServiceProvider需要密钥和Intialisation向量来生成加密数据。在这方面,我想知道定义这个初始化向量场所获得的好处的重要性。这是强制性的,而使用DES算法进行加密。初始化矢量 - DES /三重DES算法
请分享你的想法。
问候, 巴鲁
如果密钥用于加密多个项目恰巧是相同的(或开出相同)没有初始化向量,你会得到相同的密文的输出,这是一个相当大的问题。
对加密的每个项目使用唯一的初始化向量可解决该问题。
查看http://en.wikipedia.org/wiki/Block_cipher_modes_of_operation#Initialization_vector_.28IV.29了解更多详情。