下面的代码在 c#.NET 中运行良好
byte[] key = Encoding.ASCII.GetByte("012345678901234567890123"); //24characters
byte[] plainText = Encoding.ASCII.GetBytes("lasaa");
TripleDES des = TripleDES.Create();
des.Key = key;
des.Mode = CipherMode.CBC;
ICryptoTransform ic = des.CreateEncryptor();
byte[] enc = ic.TransformFinalBlock(plainText, 0, plainText.Length);
MessageBox.Show(UTF8Encoding.UTF8.GetString(enc));
我关于上述的问题是......
- 如何指定 KeySize?如果我使用
des.KeySize=
128
or192
或者256
它给出
指定的密钥不是此算法的有效大小
- 如果我通过添加更多(例如:40 个字符)来更改键中的字符长度。它给出了错误
指定的密钥不是此算法的有效大小
我想知道为什么会这样?