MD5的全称是Message-Digest Algorithm 5(信息-摘要算法),用数字签名软件签署私人密匙前被"压缩"成一种保密的格式(就是把一个任意长度的字节串变换成一定长的大整数)。不管是md2、md4还是md5,它们都需要获得一个随机长度的信息并产生一个128位的信息摘要。
加密哈希函数将任意长度的二进制字符串映射为固定长度的小型二进制字符串。加密哈希函数有这样一个属性:对应的数据也匹配时才会匹配。数据的少量更改会每个字符中间产生一个分隔符,需要去除掉 
20  strResult = strResult.Replace("-", ""); 
21  return strResult; 
22 } 
23 
24 /**//// <summary> 
25 /// 方法二:通过调用特定加密算法的抽象类上的 Create 方法,创建实现特定加密算法的对象。 
26 /// </summary> 
27 /// <param name="strSource">需要加密的明文</param> 
28 /// <returns>返回32位加密结果</returns> 
29 public string Get_MD5_Method2(string strSource) 
30 { 
31  string strResult = ""; 
32 
33  //Create 
34  System.Security.Cryptography.MD5 md5 = System.Security.Cryptography.MD5.Create(); 
35 
36  //注意编码UTF8、UTF7、Unicode等的选择 
37  byte[] bytResult = md5.ComputeHash(System.Text.Encoding.UTF8.GetBytes(strSource)); 
38 
39  //字节类型的数组转换为字符串 
40  for (int i = 0; i < bytResult.Length; i++) 
41  { 
42   //16进制转换 
43   strResult = strResult + bytResult[i].ToString("X"); 
44  } 
45  return strResult; 
46 } 
47 
48 /**//// <summary> 
49 /// 方法三:直接使用HashPasswordForStoringInConfigFile生成 
50 /// </summary> 
51 /// <param name="strSource">需要加密的明文</param> 
52 /// <returns>返回32位加密结果</returns> 
53 public string Get_MD5_Method3(string strSource) 
54 { 
55  return System.Web.Security.FormsAuthentication.HashPasswordForStoringInConfigFile(strSource, "MD5"); 
56 }
这些加密函数都是客户端安装ActiveX控件, 的投稿 本文仅代表作者观点,与楚天站长站立场无关。

 RSS订阅