使用des进行加密和解密
2012-07-10 09:42
519 查看
当需要将大量数据进行加密保存同时有需要将数据还原,这就需要用到可逆的加密算法
常用的有des加密解密算法
c# 的des加密算法: 密钥为8位字符串;
using System.Security.Cryptography;
public string desCode(string pToEncrypt, string sKey)
{
using (DESCryptoServiceProvider des = new DESCryptoServiceProvider())
{
byte[] inputByteArray = Encoding.UTF8.GetBytes(pToEncrypt);
des.Key = ASCIIEncoding.ASCII.GetBytes(sKey);
des.IV = ASCIIEncoding.ASCII.GetBytes(sKey);
System.IO.MemoryStream ms = new System.IO.MemoryStream();
using (CryptoStream cs = new CryptoStream(ms, des.CreateEncryptor(), CryptoStreamMode.Write))
{
cs.Write(inputByteArray, 0, inputByteArray.Length);
cs.FlushFinalBlock();
cs.Close();
}
string str = Convert.ToBase64String(ms.ToArray());
ms.Close();
return str;
}
}
c#的解密算法:
public string desUncode(string pToDecrypt, string sKey)
{
byte[] inputByteArray = Convert.FromBase64String(pToDecrypt);
using (DESCryptoServiceProvider des = new DESCryptoServiceProvider())
{
des.Key = ASCIIEncoding.ASCII.GetBytes(sKey);
des.IV = ASCIIEncoding.ASCII.GetBytes(sKey);
System.IO.MemoryStream ms = new System.IO.MemoryStream();
using (CryptoStream cs = new CryptoStream(ms, des.CreateDecryptor(), CryptoStreamMode.Write))
{
cs.Write(inputByteArray, 0, inputByteArray.Length);
cs.FlushFinalBlock();
cs.Close();
}
string str = Encoding.UTF8.GetString(ms.ToArray());
ms.Close();
return str;
}
}
常用的有des加密解密算法
c# 的des加密算法: 密钥为8位字符串;
using System.Security.Cryptography;
public string desCode(string pToEncrypt, string sKey)
{
using (DESCryptoServiceProvider des = new DESCryptoServiceProvider())
{
byte[] inputByteArray = Encoding.UTF8.GetBytes(pToEncrypt);
des.Key = ASCIIEncoding.ASCII.GetBytes(sKey);
des.IV = ASCIIEncoding.ASCII.GetBytes(sKey);
System.IO.MemoryStream ms = new System.IO.MemoryStream();
using (CryptoStream cs = new CryptoStream(ms, des.CreateEncryptor(), CryptoStreamMode.Write))
{
cs.Write(inputByteArray, 0, inputByteArray.Length);
cs.FlushFinalBlock();
cs.Close();
}
string str = Convert.ToBase64String(ms.ToArray());
ms.Close();
return str;
}
}
c#的解密算法:
public string desUncode(string pToDecrypt, string sKey)
{
byte[] inputByteArray = Convert.FromBase64String(pToDecrypt);
using (DESCryptoServiceProvider des = new DESCryptoServiceProvider())
{
des.Key = ASCIIEncoding.ASCII.GetBytes(sKey);
des.IV = ASCIIEncoding.ASCII.GetBytes(sKey);
System.IO.MemoryStream ms = new System.IO.MemoryStream();
using (CryptoStream cs = new CryptoStream(ms, des.CreateDecryptor(), CryptoStreamMode.Write))
{
cs.Write(inputByteArray, 0, inputByteArray.Length);
cs.FlushFinalBlock();
cs.Close();
}
string str = Encoding.UTF8.GetString(ms.ToArray());
ms.Close();
return str;
}
}
相关文章推荐
- PHP使用DES进行加密解密
- PHP使用DES进行加密解密
- PHP使用DES进行加密和解密
- C/C++使用openssl进行摘要和加密解密(md5, sha256, des, rsa)
- PHP使用DES进行加密和解密
- 使用DES对资源进行加密解密
- 【转】PHP使用DES进行加密和解密
- PHP使用DES进行加密与解密的方法详解
- Java中使用DES进行加密解密
- PHP使用DES进行加密与解密的方法详解
- 使用DES进行加密解密
- PHP使用DES进行加密和解密
- Java中使用DES进行加密解密
- C/C++使用openssl进行摘要和加密解密(md5, sha256, des, rsa)
- PHP使用DES进行加密解密
- C/C++使用openssl进行摘要和加密解密(md5, sha256, des, rsa)
- php使用openssl进行Rsa长数据加密(117)解密(128) 和 DES 加密解密
- PHP使用DES进行加密和解密
- C/C++使用openssl进行摘要和加密解密(md5, sha256, des, rsa)
- iOS中使用RSA对数据进行加密解密