ASP.NET中重要数据加密方法及实现
2011-06-26 10:00
274 查看
public class Operate
{
public Operate()
{
//
//TODO: 在此处添加构造函数逻辑
//
}
//Encrypting方法,用来对重要的数据进行加密,返回值为string类型
public static string Encrypting(string strSource)
{
//把字符串放到数组中
byte[] bytIn = System.Text.Encoding.Default.GetBytes(strSource);
//建立加密对象的密钥和偏移量
byte[] iv = { 102, 16, 93, 156, 78, 4, 218, 32 }; //定义偏移量
byte[] key = { 55, 103, 246, 79, 36, 99, 167, 3 }; //定义密钥
//实例DES加密类
DESCryptoServiceProvider mobjCryptoService = new DESCryptoServiceProvider();
mobjCryptoService.Key = iv;
mobjCryptoService.IV = key;
ICryptoTransform encrypto = mobjCryptoService.CreateEncryptor();
//实例MemoryStream流加密文件
System.IO.MemoryStream ms = new System.IO.MemoryStream();
CryptoStream cs = new CryptoStream(ms, encrypto, CryptoStreamMode.Write);
cs.Write(bytIn, 0, bytIn.Length);
cs.FlushFinalBlock();
return System.Convert.ToBase64String(ms.ToArray());
}
//Decryptin方法,对已加密数据进行解密,返回值为string类型
public static string Decryption(string Source)
{
try
{
//将解密字符串转换成字节数组
byte[] bytIn = System.Convert.FromBase64String(Source);
//给出解密的密钥和偏移量,并且与加密的相同
byte[] iv = { 102, 16, 93, 156, 78, 4, 218, 32 }; //定义偏移量
byte[] key = { 55, 103, 246, 79, 36, 99, 167, 3 }; //定义密钥
DESCryptoServiceProvider mobjCryptoService = new DESCryptoServiceProvider();
mobjCryptoService.Key = iv;
mobjCryptoService.IV = key;
//实例流进行解密
System.IO.MemoryStream ms = new System.IO.MemoryStream(bytIn, 0, bytIn.Length);
ICryptoTransform encrypto = mobjCryptoService.CreateEncryptor();
CryptoStream cs = new CryptoStream(ms, encrypto, CryptoStreamMode.Read);
System.IO.StreamReader strd = new System.IO.StreamReader(cs, System.Text.Encoding.Default);
return strd.ReadToEnd();
}
catch(Exception ex)
{
throw new Exception("在文件解密的时候出现错误!错误提示:\n" + ex.Message);
}
}
}
//调用时候的代码
string password = Operate.Encrypting(txtPass.Text.ToString());
{
public Operate()
{
//
//TODO: 在此处添加构造函数逻辑
//
}
//Encrypting方法,用来对重要的数据进行加密,返回值为string类型
public static string Encrypting(string strSource)
{
//把字符串放到数组中
byte[] bytIn = System.Text.Encoding.Default.GetBytes(strSource);
//建立加密对象的密钥和偏移量
byte[] iv = { 102, 16, 93, 156, 78, 4, 218, 32 }; //定义偏移量
byte[] key = { 55, 103, 246, 79, 36, 99, 167, 3 }; //定义密钥
//实例DES加密类
DESCryptoServiceProvider mobjCryptoService = new DESCryptoServiceProvider();
mobjCryptoService.Key = iv;
mobjCryptoService.IV = key;
ICryptoTransform encrypto = mobjCryptoService.CreateEncryptor();
//实例MemoryStream流加密文件
System.IO.MemoryStream ms = new System.IO.MemoryStream();
CryptoStream cs = new CryptoStream(ms, encrypto, CryptoStreamMode.Write);
cs.Write(bytIn, 0, bytIn.Length);
cs.FlushFinalBlock();
return System.Convert.ToBase64String(ms.ToArray());
}
//Decryptin方法,对已加密数据进行解密,返回值为string类型
public static string Decryption(string Source)
{
try
{
//将解密字符串转换成字节数组
byte[] bytIn = System.Convert.FromBase64String(Source);
//给出解密的密钥和偏移量,并且与加密的相同
byte[] iv = { 102, 16, 93, 156, 78, 4, 218, 32 }; //定义偏移量
byte[] key = { 55, 103, 246, 79, 36, 99, 167, 3 }; //定义密钥
DESCryptoServiceProvider mobjCryptoService = new DESCryptoServiceProvider();
mobjCryptoService.Key = iv;
mobjCryptoService.IV = key;
//实例流进行解密
System.IO.MemoryStream ms = new System.IO.MemoryStream(bytIn, 0, bytIn.Length);
ICryptoTransform encrypto = mobjCryptoService.CreateEncryptor();
CryptoStream cs = new CryptoStream(ms, encrypto, CryptoStreamMode.Read);
System.IO.StreamReader strd = new System.IO.StreamReader(cs, System.Text.Encoding.Default);
return strd.ReadToEnd();
}
catch(Exception ex)
{
throw new Exception("在文件解密的时候出现错误!错误提示:\n" + ex.Message);
}
}
}
//调用时候的代码
string password = Operate.Encrypting(txtPass.Text.ToString());
相关文章推荐
- asp.net实现数据从DataTable导入到Excel文件并创建表的方法
- ASP.NET 2.0 中一种新的方法实现对配置文件的加密
- Asp.net中把Excel数据存储至SQL Server中的具体实现方法
- ASP.NET中实现页面间数据传递的方法
- ASP.NET中实现页面间数据传递的方法
- ASP.NET导出数据到Excel的实现方法
- asp.net下XML的加密和解密实现方法
- ASP.NET中实现页面间数据传递的方法
- asp.net Mvc中实现在View页面中嵌入公用动态数据,实现方法为:include(包含动态页面数据)
- asp.net下XML的加密和解密实现方法
- asp.net实现Gradview绑定数据库数据并导出Excel的方法
- 【转】XML的加密和解密及ASP.NET下的实现方法
- asp.net实现从Txt文件读取数据到数据视图的方法
- asp.net实现导出DataTable数据到Word或者Excel的方法
- asp.net实现将Excel中多个sheet数据导入到SQLSERVER中的方法
- ASP.NET导出数据到Excel的实现方法
- asp.net实现从Txt文件读取数据到数据视图的方法
- ASP.NET中用javascript实现页面间传递数据的方法
- Asp.net中把Excel数据存储至SQL Server中的具体实现方法
- ASP.NET中实现页面间数据传递的方法