我正在使用 Rijndael 算法实现密文解密。不幸的是,我无法访问数据的加密,并且只提供了密码(用于生成密钥)和算法类型。
我没有盐(看起来没问题),也没有静脉注射。现在,我的问题是我是否绝对必须拥有 IV 才能执行解密?我怀疑编写加密的开发人员没有使用盐或IV(如果可能的话)。
我尝试将 IV 设置为 null,但没有成功,生成 Rijndael 实例会创建默认 IV,这会扭曲解密后明文的前 16 个字符。
有什么办法可以抵消IV的影响吗?或者是否需要尝试获取加密中使用的 IV?
如果密码已使用CBC模式加密(其中是默认值 http://msdn.microsoft.com/en-us/library/system.security.cryptography.symmetricalgorithm.mode.aspx)那么你必须知道 IV,没有办法绕过它。
但是,由于 IV 的用途与密码的用途不同,有时您会发现 IV 被添加到加密数据的前面(以便接收者在解密时可以轻松获取它并使用)。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)