双11狂欢大促

盲盒赢 定制羽绒服

开启惊喜盲盒,抽取你的专属好礼

— 惊喜奖品抢先看 —

3des加密为何编译出错?

叶子哟 叶子哟 墨衍会员 · AI 创作全网分发 墨衍智能分发 通过墨衍一键同步至各平台 可同步平台 CSDN微信公众号微博知乎掘金百家号博客园抖音小红书 你的文章也可以这样分发 墨衍会员 ¥399起/年,写一次发全网 我也要 + 加入社区
//利用3des加密源串,密钥为8位
//web应用
const string b64key = "abcdefgh";
public string EncryptData(string b64Key, string content)
{
byte[] tdesIV=new byte[1];
byte[] tdesKey=Convert.FromBase64String(b64Key);
TripleDESCryptoServiceProvider tdes = new TripleDESCryptoServiceProvider();
tdes.Mode=CipherMode.ECB;
tdes.Padding=PaddingMode.PKCS7;
ICryptoTransform temp=tdes.CreateEncryptor(tdesKey, tdesIV);
ToBase64Transform t64=new ToBase64Transform();
MemoryStream dstream=new MemoryStream();
CryptoStream encStream = new CryptoStream(dstream,t64 , CryptoStreamMode.Write);
CryptoStream enc2=new CryptoStream(dstream,temp,CryptoStreamMode.Write);
Console.WriteLine("Encrypting...");
char[] contentchar=content.ToCharArray();
byte[] contentbyte=new byte[contentchar.GetLength(0)];
for (int i=0;i<contentchar.GetLength(0);i++)
{
contentbyte[i]=(byte)contentchar[i];
}
enc2.Write(contentbyte, 0, contentchar.GetLength(0));
enc2.Close();
byte[] a3= dstream.ToArray();
string a4=Convert.ToBase64String(a3);
return a4;
}

出错提示:
指定键的大小对于此算法无效。
说明: 执行当前 Web 请求期间,出现未处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。

异常详细信息: System.Security.Cryptography.CryptographicException: 指定键的大小对于此算法无效。

源错误:

行 66: tdes.Mode=CipherMode.ECB;
行 67: tdes.Padding=PaddingMode.PKCS7;
行 68: ICryptoTransform temp=tdes.CreateEncryptor(tdesKey, tdesIV);
行 69: ToBase64Transform t64=new ToBase64Transform();
行 70: MemoryStream dstream=new MemoryStream();


源文件: d:\inetpub\wwwroot\websip\bjsgip.aspx.cs 行: 68
...全文

相关推荐

评论 3
收藏 已收藏
分享
返回顶部
叶子哟
C# 111,129 成员 642,540 内容