温馨提示:代码在线浏览功能只能做为源码浏览参考,如果想更进一步了解该代码请下载:无忧之源招聘系统及Log4Net源码
当前文件:
51Job/App_Code/CommonComponent/Encrypt.cs[2K,2009-6-12 11:31:08],打开代码结构图
51Job/App_Code/CommonComponent/Encrypt.cs[2K,2009-6-12 11:31:08],打开代码结构图1using System; 2
using System.Text; 3
using System.IO; 4
using System.Security.Cryptography; 5
//该源码下载自www.51aspx.com(51aspx.com) 6
7
namespace HRManager.CommonComponent 8
{ 9
/// <summary> 10
/// 字符串加密、解密类,利用DES算法 11
/// </summary> 12
public class myEncrypt 13
{ 14
private static byte[] key = new byte[] { 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08 }; 15
private static byte[] iv = new byte[] { 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08 }; 16
17
/// <summary> 18
/// 加密 19
/// </summary> 20
/// <param name="notEncryptStr">待加密的明文字符串</param> 21
/// <returns>加密后的字符串</returns> 22
public static string EncryptString(string notEncryptStr) 23
{ 24
//初始化加密器生成器 25
DESCryptoServiceProvider des = new DESCryptoServiceProvider(); 26
27
byte[] byteNotEncrypt = Encoding.UTF8.GetBytes(notEncryptStr);//将字符串转换成字节 28
MemoryStream encryptMs = new MemoryStream();//创建内存数据流 29
CryptoStream encryptCs = new CryptoStream(encryptMs, des.CreateEncryptor(key,iv), CryptoStreamMode.Write);//创建加密器 30
31
//加密数据 32
encryptCs.Write(byteNotEncrypt, 0, byteNotEncrypt.Length);//将字节加密并写入内存 33
encryptCs.FlushFinalBlock();//将缓存中的数据写入内存 34
encryptMs.Seek(0, SeekOrigin.Begin);//回到内存流开始的位置 35
36
//将加密后的数据读取出来 37
byte[] byteEncrypt = new byte[1024]; 38
int i = encryptMs.Read(byteEncrypt, 0, 1024); 39
40
encryptCs.Close(); 41
42
//将加密后的字节转换为BASE64编码 43
string decryptStr = Convert.ToBase64String(byteEncrypt, 0, i); 44
return decryptStr; 45
} 46
47
void test() 48
{ 49
string str1 = "Hello"; 50
string str2 = myEncrypt.EncryptString(str1); 51
} 52
53
/// <summary> 54
/// 解密 55
/// </summary> 56
/// <param name="decryptStr">待解密的密文字符串</param> 57
/// <returns>解密后的字符串</returns> 58
public static string DecryptString(string decryptStr) 59
{ 60
//初始化解密器生成器 61
DESCryptoServiceProvider des = new DESCryptoServiceProvider(); 62
63
64
byte[] byteNotDecrypt = Convert.FromBase64String(decryptStr);//将加密后的BASE64编码的字符串转换成字节 65
MemoryStream decryptMs = new MemoryStream(byteNotDecrypt);//创建内存数据流 66
CryptoStream decryptCs = new CryptoStream(decryptMs, des.CreateDecryptor(key, iv), CryptoStreamMode.Read);//创建解密器 67
68
//解密数据 69
byte[] byteDecrypt = new byte[1024]; 70
int i = decryptCs.Read(byteDecrypt, 0, 1024); 71
decryptCs.Close(); 72
73
//将解密后的字节转换为BASE64编码 74
string notEncryptStr = Encoding.UTF8.GetString(byteDecrypt, 0, i); 75
return notEncryptStr; 76
} 77
} 78
} 79






}