MD5加密的使用

MD5加密类,其实是封装了一个哈希算法。哈希函数将任意长度的二进制字符串映射为固定长度的小型二进制字符。

MSDN上代码是这样写的:

ExpandedBlockStart.gif View Code
 1  static   string  GetMd5Hash( string  input)
 2  {
 3     MD5 Md5 = MD5.Create();      // 实例一个对象
 4     byte [] data = md5Hash.ComputerHash(system.text.Encoding.Default.GetBytes(input));
 5   StringBuilder sBuilder = new  StringBuilder();
 6     for ( int  i = 0 ;i < data.Length;i ++ )
 7   {
 8     sBuilder.Append(data[i].ToString( " X2 " ));
 9   }
10    return  sBuilder.ToString();
11  }

  调用此方法可以取得加密后的结果。本想直接把byte[] data转换成string型的字符串,测试了一下,直接返回"System.Byte[]",所以正确的做法是一定要用for循环赋值。

MSDN备注:

 

哈希函数将任意长度的二进制字符串映射为固定长度的小型二进制字符串。 加密哈希函数有这样一个属性:在计算上不大可能找到散列为相同的值的两个不同的输入;也就是说,两组数据的哈希值仅在对应的数据也匹配时才会匹配。 数据的少量更改会在哈希值中产生不可预知的大量更改。

MD5 算法的哈希值大小为 128 位。

MD5 类的 ComputeHash 方法将哈希作为 16 字节的数组返回。 请注意,某些 MD5 实现会生成 32 字符的十六进制格式哈希。 若要与此类实现进行互操作,请将 ComputeHash 方法的返回值格式化为十六进制值。

 

 

转载于:https://www.cnblogs.com/yeslove/archive/2011/04/19/2021614.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值