常用的加密方法!
来源:互联网 发布:js mouseover 提示 编辑:程序博客网 时间:2024/04/30 16:19
/*用法
protected void Page_Load(object sender, EventArgs e)
{
//加密
this.Title = CEncrypt.DesEncrypt("pwd", CEncrypt.Key);
this.Title += CEncrypt.DesDecrypt(this.Title, CEncrypt.Key);
Response.Write(CEncrypt.DesDecrypt("gAYyhdLQunc=", CEncrypt.Key));
}
*/
using System;
using System.IO;
using System.Text;
using System.Security.Cryptography;
using System.Web;
namespace YD.Common
{
/// <summary>
/// 加密码类
/// </summary>
public class CEncrypt
{
/// <summary>
/// 加密
/// </summary>
/// <param name="inputString"></param>
/// <returns></returns>
public static string DesEncrypt(string inputString)
{
return DesEncrypt(inputString, Key);
}
/// <summary>
/// 解密
/// </summary>
/// <param name="inputString"></param>
/// <returns></returns>
public static string DesDecrypt(string inputString)
{
return DesDecrypt(inputString, Key);
}
/// <summary>
/// 密匙
/// </summary>
private static string Key
{
get
{
return "hongye10";
}
}
/// <summary>
/// 加密字符串
/// 注意:密钥必须为8位
/// </summary>
/// <param name="strText">字符串</param>
/// <param name="encryptKey">密钥</param>
/// <param name="encryptKey">返回加密后的字符串</param>
public static string DesEncrypt(string inputString, string encryptKey)
{
byte[] byKey = null;
byte[] IV = { 0x12, 0x34, 0x56, 0x78, 0x90, 0xAB, 0xCD, 0xEF };
try
{
byKey = System.Text.Encoding.UTF8.GetBytes(encryptKey.Substring(0, 8));
DESCryptoServiceProvider des = new DESCryptoServiceProvider();
byte[] inputByteArray = Encoding.UTF8.GetBytes(inputString);
MemoryStream ms = new MemoryStream();
CryptoStream cs = new CryptoStream(ms, des.CreateEncryptor(byKey, IV), CryptoStreamMode.Write);
cs.Write(inputByteArray, 0, inputByteArray.Length);
cs.FlushFinalBlock();
return Convert.ToBase64String(ms.ToArray());
}
catch (System.Exception error)
{
//return error.Message;
return null;
}
}
/// <summary>
/// 解密字符串
/// </summary>
/// <param name="this.inputString">加了密的字符串</param>
/// <param name="decryptKey">密钥</param>
/// <param name="decryptKey">返回解密后的字符串</param>
public static string DesDecrypt(string inputString, string decryptKey)
{
byte[] byKey = null;
byte[] IV = { 0x12, 0x34, 0x56, 0x78, 0x90, 0xAB, 0xCD, 0xEF };
byte[] inputByteArray = new Byte[inputString.Length];
try
{
byKey = System.Text.Encoding.UTF8.GetBytes(decryptKey.Substring(0, 8));
DESCryptoServiceProvider des = new DESCryptoServiceProvider();
inputByteArray = Convert.FromBase64String(inputString);
MemoryStream ms = new MemoryStream();
CryptoStream cs = new CryptoStream(ms, des.CreateDecryptor(byKey, IV), CryptoStreamMode.Write);
cs.Write(inputByteArray, 0, inputByteArray.Length);
cs.FlushFinalBlock();
System.Text.Encoding encoding = new System.Text.UTF8Encoding();
return encoding.GetString(ms.ToArray());
}
catch (System.Exception error)
{
//return error.Message;
return null;
}
}
}
}
- 常用的加密方法!
- 常用的加密解密方法
- iOS 常用的加密方法
- 常用的加密解密方法收藏
- 几种常用的文件加密方法
- C#几种常用的加密方法
- asp.net常用的加密方法
- 关于路径加密的常用简单方法
- Java中常用的加密方法(JDK)
- Java中常用的加密方法(JDK)
- Java中常用的加密方法(JDK)
- Java中常用的加密方法(JDK)
- Java中常用的加密方法
- Java中常用的加密方法(JDK)
- Java中常用的加密方法(JDK)
- Java中常用的加密方法(JDK)
- Java中常用的加密方法(JDK)
- Java中常用的加密方法(JDK)
- Android聊天工具实现
- ZipUtil 历史上最好用的 压缩解压缩工具类 附代码
- ubuntu - eclipse 乱码
- Static block start new thread
- 正则表达式30分钟入门教程
- 常用的加密方法!
- Apk程序签名
- android编写Service入门
- 从字符串中删除指定子串或指定元素
- hdu1496 hash
- Windows下安装MongoDB步骤详解
- 随手写了一个linux服务端与window客户端的epoll程序,当做练习把。
- 第一次分析 草稿
- ural 1057(数位dp)