c# 加密解密示例
2012-08-26 13:30
253 查看
using System.Security.Cryptography; public class DESEncrypt { #region ========加密======== /// <summary> /// 加密 /// </summary> /// <param name="Text"></param> /// <returns></returns> public static string Encrypt(string Text) { return Encrypt(Text, "SKYWISWARE"); } public static string Encrypt(string Text, string sKey) { DESCryptoServiceProvider des = new DESCryptoServiceProvider(); byte[] inputByteArray; inputByteArray = Encoding.Default.GetBytes(Text); des.Key = ASCIIEncoding.ASCII.GetBytes(sKey.Substring(0, 8)); des.IV = ASCIIEncoding.ASCII.GetBytes(sKey.Substring(0, 8)); System.IO.MemoryStream ms = new System.IO.MemoryStream(); CryptoStream cs = new CryptoStream(ms, des.CreateEncryptor(), CryptoStreamMode.Write); cs.Write(inputByteArray, 0, inputByteArray.Length); cs.FlushFinalBlock(); StringBuilder ret = new StringBuilder(); foreach (byte b in ms.ToArray()) { ret.AppendFormat("{0:X2}", b); } return ret.ToString(); } #endregion #region ========解密======== /// <summary> /// 解密 /// </summary> /// <param name="Text"></param> /// <returns></returns> public static string Decrypt(string Text) { return Decrypt(Text, "SKYWISWARE"); } public static string Decrypt(string Text, string sKey) { DESCryptoServiceProvider des = new DESCryptoServiceProvider(); int len; len = Text.Length / 2; byte[] inputByteArray = new byte[len]; int x, i; for (x = 0; x < len; x++) { i = Convert.ToInt32(Text.Substring(x * 2, 2), 16); inputByteArray[x] = (byte)i; } des.Key = ASCIIEncoding.ASCII.GetBytes(sKey.Substring(0, 8)); des.IV = ASCIIEncoding.ASCII.GetBytes(sKey.Substring(0, 8)); System.IO.MemoryStream ms = new System.IO.MemoryStream(); CryptoStream cs = new CryptoStream(ms, des.CreateDecryptor(), CryptoStreamMode.Write); cs.Write(inputByteArray, 0, inputByteArray.Length); cs.FlushFinalBlock(); return Encoding.Default.GetString(ms.ToArray()); } #endregion }
相关文章推荐
- C#使用RSA证书文件加密和解密示例(任意长度的内容)
- C#使用RSA证书文件加密和解密示例
- C#使用RSA证书文件加密和解密示例
- 基于RSA的加密/解密示例C#代码
- 基于RSA的加密/解密示例C#代码
- C#实现简单的3DES加密解密功能示例
- C#使用RSA证书文件加密和解密示例
- C#实现Base64处理的加密解密,编码解码示例
- C#使用RSA证书文件加密和解密示例
- 基于RSA的加密/解密示例C#代码
- C#版3DES加密解密简单示例
- 基于RSA的加密/解密示例C#代码
- C#使用DES和AES实现加密解密功能示例
- delphi加密C#解密示例源码说明
- C#实现的AES加密解密完整实例
- Android 3DES加密解密(JAVA和C#)
- C#字符串的几种加密解密方法
- PHP实现的AES加密、解密封装类与用法示例
- c# asp.net 字符串加密解密的类
- C# Java间进行RSA加密解密交互(三)