本文介绍了我的解密显示错误:Buffer不能为null。参数名称:buffer。请帮我解决这个问题。的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Security.Cryptography;//use to run the encryption
using System.Text;// using ASCII language
public partial class About : System.Web.UI.Page
{
string cipherData;
byte[] cipherByte;
byte[] textByte1;
byte[] textByte2;
byte[] key;
SymmetricAlgorithm desObj;
protected void Page_Load(object sender, EventArgs e)
{
desObj = Rijndael.Create();//when the page is load to let the function can run.
}
protected void btnEncryption_Click(object sender, EventArgs e)
{
cipherData = txtST.Text;
textByte1 = Encoding.ASCII.GetBytes(cipherData);
key = Encoding.ASCII.GetBytes("0123456789abcdef");//fix the size from oringinal data? dk want to 16bit or not
desObj.Key = key;
desObj.Mode = CipherMode.CBC;//can either choose one
desObj.Padding = PaddingMode.PKCS7;//typd of encryption
System.IO.MemoryStream ms = new System.IO.MemoryStream();
CryptoStream cs = new CryptoStream(ms, desObj.CreateEncryptor(), CryptoStreamMode.Write);
cs.Write(textByte1, 0, textByte1.Length);
cs.Close();
cipherByte = ms.ToArray();
ms.Close();
txtEnc.Text = Encoding.ASCII.GetString(cipherByte);
}
protected void btnDecryption_Click(object sender, EventArgs e)
{
System.IO.MemoryStream ms1 = new System.IO.MemoryStream(cipherByte);
CryptoStream cs1 = new CryptoStream(ms1, desObj.CreateDecryptor(), CryptoStreamMode.Read);
cs1.Read(cipherByte, 0, cipherByte.Length);
textByte2 = ms1.ToArray();
cs1.Close();
ms1.Close();
txtDec.Text = Encoding.ASCII.GetString(textByte2);
}
}
错误:
Error:
Buffer cannot be null. Parameter name: buffer.
请帮我解决这个问题。
Please help me to solve this problem.
推荐答案
这篇关于我的解密显示错误:Buffer不能为null。参数名称:buffer。请帮我解决这个问题。的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!