.NET中的加密解密:私钥加密(对称加密):DES
2010-03-09 14:40
507 查看
public class DesSample
{
DES des = null;
public DesSample(byte[] bKey)
{
des = new DESCryptoServiceProvider();
des.Key = bKey;
des.IV = bKey;
}
public string Encrypt(string data)
{
try
{
byte[] bData = Encoding.UTF8.GetBytes(data);
MemoryStream ms = new MemoryStream();
CryptoStream cs = new CryptoStream(ms, des.CreateEncryptor(), CryptoStreamMode.Write);
cs.Write(bData, 0, bData.Length);
cs.FlushFinalBlock();
return Convert.ToBase64String(ms.ToArray());
}
catch
{
throw;
}
}
public string Decrypt(string data)
{
try
{
byte[] bData = Convert.FromBase64String(data);
MemoryStream ms = new MemoryStream();
CryptoStream cs = new CryptoStream(ms, des.CreateDecryptor(), CryptoStreamMode.Write);
cs.Write(bData, 0, bData.Length);
cs.FlushFinalBlock();
return Encoding.UTF8.GetString(ms.ToArray());
}
catch
{
throw;
}
}
}//class DesSample
class Program
{
static void Main(string[] args)
{
byte[] bKey8 = UTF8Encoding.UTF8.GetBytes("12345678");
string data = "Hello,I am Jie.";
Console.WriteLine("Des Sample");
DesSample des = new DesSample(bKey8);
string desData = "";
desData = des.Encrypt(data);
Console.WriteLine("DES Encrypt:{0}", desData);
Console.WriteLine("DES Decrypt:{0}", des.Decrypt(desData));
Console.WriteLine();
Console.Read();
}
}
{
DES des = null;
public DesSample(byte[] bKey)
{
des = new DESCryptoServiceProvider();
des.Key = bKey;
des.IV = bKey;
}
public string Encrypt(string data)
{
try
{
byte[] bData = Encoding.UTF8.GetBytes(data);
MemoryStream ms = new MemoryStream();
CryptoStream cs = new CryptoStream(ms, des.CreateEncryptor(), CryptoStreamMode.Write);
cs.Write(bData, 0, bData.Length);
cs.FlushFinalBlock();
return Convert.ToBase64String(ms.ToArray());
}
catch
{
throw;
}
}
public string Decrypt(string data)
{
try
{
byte[] bData = Convert.FromBase64String(data);
MemoryStream ms = new MemoryStream();
CryptoStream cs = new CryptoStream(ms, des.CreateDecryptor(), CryptoStreamMode.Write);
cs.Write(bData, 0, bData.Length);
cs.FlushFinalBlock();
return Encoding.UTF8.GetString(ms.ToArray());
}
catch
{
throw;
}
}
}//class DesSample
class Program
{
static void Main(string[] args)
{
byte[] bKey8 = UTF8Encoding.UTF8.GetBytes("12345678");
string data = "Hello,I am Jie.";
Console.WriteLine("Des Sample");
DesSample des = new DesSample(bKey8);
string desData = "";
desData = des.Encrypt(data);
Console.WriteLine("DES Encrypt:{0}", desData);
Console.WriteLine("DES Decrypt:{0}", des.Decrypt(desData));
Console.WriteLine();
Console.Read();
}
}
相关文章推荐
- .NET中的加密解密:私钥加密(对称加密):AES、DES、RC2、Rijindael、TripleDES
- .NET中的加密解密:私钥加密(对称加密):AES、DES、RC2、Rijindael、TripleDES
- 对称加密中DES的加密与解密算法
- .NET生成RSA公钥和私钥-加密解密示例
- Asp.Net C#中除了MD5加密之外还经常用到了AES加密、解密与DES加密、解密,本次先介绍DES的加密及解密。注意的是DES的密匙是8位的。
- .NET TripleDES加密、解密
- c# RSA 加密解密 java.net公钥私钥转换 要解密的模块大于128字节
- 银联手机支付(.Net Csharp),3DES加密解密,RSA加密解密,RSA私钥加密公钥解密,.Net RSA 3DES C#
- .Net下的加密解密大全(5):玩转对称加密
- java实现对称加密AES和DES的加密、解密
- 银联手机支付(.Net Csharp),3DES加密解密,RSA加密解密,RSA私钥加密公钥解密,.Net RSA 3DES C#
- 【转】asp.net(c#)加密解密算法之sha1、md5、des、aes实现源码详解
- 提供一个基于.NET SymmetricAlgorithm 类的、带私钥的加密/解密算法的包装类
- VB.NET 的 DES 加密与解密(转载于nofort博客)
- NET实现RSA AES DES 字符串 加密解密以及SHA1 MD5加密
- 对称加密和非对称加密解密技术
- 到底私钥和公钥哪个是用来加密 哪个是用来解密的
- PHP使用DES进行加密解密
- Android 中对称加密算法DES,DESede,AES的加密和解密 的工具类的使用
- java php DES 加密解密