用C#实现MD5算法

using  System; 
InBlock.gif using  System.Text; 
InBlock.gif using  System.Security.Cryptography; 
InBlock.gif
InBlock.gif namespace  Common 
InBlock.gif
InBlock.gif /// <summary> 
InBlock.gif /// 一个实现MD5散列字符串的类 
InBlock.gif /// 作者:周公 
InBlock.gif /// 日期:2007 
InBlock.gif /// </summary> 
InBlock.gif public sealed class  MD5Hashing 
InBlock.gif         { 
InBlock.gif private static  MD5 md5 = MD5.Create(); 
InBlock.gif //私有化构造函数 
InBlock.gif private  MD5Hashing() 
InBlock.gif                 { 
InBlock.gif                 } 
InBlock.gif /// <summary> 
InBlock.gif /// 使用utf8编码将字符串散列 
InBlock.gif /// </summary> 
InBlock.gif /// <param name="sourceString">要散列的字符串</param> 
InBlock.gif /// <returns>散列后的字符串</returns> 
InBlock.gif public static string  HashString( string  sourceString) 
InBlock.gif              { 
InBlock.gif return  HashString(Encoding.UTF8, sourceString); 
InBlock.gif              } 
InBlock.gif /// <summary> 
InBlock.gif /// 使用指定的编码将字符串散列 
InBlock.gif /// </summary> 
InBlock.gif /// <param name="encode">编码</param> 
InBlock.gif /// <param name="sourceString">要散列的字符串</param> 
InBlock.gif /// <returns>散列后的字符串</returns> 
InBlock.gif public static string  HashString(Encoding encode,  string  sourceString) 
InBlock.gif                 { 
InBlock.gif byte [] source = md5.ComputeHash(encode.GetBytes(sourceString)); 
InBlock.gif                         StringBuilder sBuilder =  new  StringBuilder(); 
InBlock.gif for  ( int  i = 0; i < source.Length; i++) 
InBlock.gif                         { 
InBlock.gif                                 sBuilder.Append(source[i].ToString( "x2" )); 
InBlock.gif                         } 
InBlock.gif return  sBuilder.ToString(); 
InBlock.gif                 } 
InBlock.gif         } 

InBlock.gif





















本文转自周金桥51CTO博客,原文链接: http://blog.51cto.com/zhoufoxcn/167094,如需转载请自行联系原作者



  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值