本文介绍了TripleDes的IV的C#?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

所以当我说是这样的:

TripleDES tripledes = TripleDES.Create();
Rfc2898DeriveBytes pdb = new Rfc2898DeriveBytes(password, plain);
tripledes.Key = pdb.GetBytes(16);
tripledes.IV = pdb.GetBytes(16);



我得到一个错误。所使用的错误是在关键的,但是它得到修复(我认为 - 除非你点的东西错了)。但是,当我设置IV发生错误:

I get an error. The error used to be on the key, but its been fixed (I think - unless you spot something wrong). However, the error occurs when I set the IV:

tripledes.IV = pdb.GetBytes(16);



它说,它不是一个有效的初始化向量。

It says that its not a valid initialization vector.

如何解决呢?

推荐答案

有关TripleDes的块大小为64位。你尝试设置128位

The block size for TripleDES is 64 bits. You are trying to set 128 bits.

这应该工作:

tripledes.IV = pdb.GetBytes(8);

这篇关于TripleDes的IV的C#?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!

10-19 06:56