近日发现有程序员在.NET项目中自己编写MD5算法实现,为避免不必要的资源消耗,特撰此文。
.NET框架下MD5实现已经集成于System.Web.Security名称空间,只需简单调用即获取结果: string 结果字符串=System.Web.Security.FormsAuthentication.HashPasswordForStoringInConfigFile(输入字符串,"MD5");
以下包装函数根据code参数的不同(可取16或32),分别返回参数STR的16位和32位MD5加密字串。 (16位字串用于模拟动网论坛等国内常见论坛的MD5实现)
public string md5(string str,int code) { if(code==16) { return System.Web.Security.FormsAuthentication.HashPasswordForStoringInConfigFile(str,"MD5").ToLower().Substring(8,16) ; } if(code==32) { return System.Web.Security.FormsAuthentication.HashPasswordForStoringInConfigFile(str,"MD5"); } return "00000000000000000000000000000000"; }
System.Web.Security名称空间封装的其他方法,可参见MSDN。
*本处以C#为例

|