asp.net实现的MD5加密和DES加解密算法类完整示例
本文实例讲述了asp.net实现的MD5加密和DES加解密算法类。分享给大家供大家参考,具体如下:
#regionMD5算法 publicstringmd5(stringstr,intcode) { if(code==32)//32位加密 { returnSystem.Web.Security.FormsAuthentication.HashPasswordForStoringInConfigFile(str,"MD5").ToLower(); } else//16位MD5加密(取32位加密的9~25字符) { returnSystem.Web.Security.FormsAuthentication.HashPasswordForStoringInConfigFile(str,"MD5").ToLower().Substring(8,16); } } #endregion
#regionDESEncryptDES加密 //<summary> ///进行DES加密。 ///</summary> ///<paramname=”pToEncrypt”>要加密的字符串。</param> ///<paramname=”sKey”>密钥,且必须为8位。</param> ///<returns>以Base64格式返回的加密字符串。</returns> publicstringDESEncrypt(stringpToEncrypt,stringsKey) { using(DESCryptoServiceProviderdes=newDESCryptoServiceProvider()) { byte[]inputByteArray=Encoding.UTF8.GetBytes(pToEncrypt); des.Key=ASCIIEncoding.ASCII.GetBytes(sKey); des.IV=ASCIIEncoding.ASCII.GetBytes(sKey); System.IO.MemoryStreamms=newSystem.IO.MemoryStream(); using(CryptoStreamcs=newCryptoStream(ms,des.CreateEncryptor(),CryptoStreamMode.Write)) { cs.Write(inputByteArray,0,inputByteArray.Length); cs.FlushFinalBlock(); cs.Close(); } stringstr=Convert.ToBase64String(ms.ToArray()); ms.Close(); returnstr; } } #endregion
#regionDESDecryptDES解密 ///<summary> ///进行DES解密。 ///</summary> ///<paramname=”pToDecrypt”>要解密的以Base64</param> ///<paramname=”sKey”>密钥,且必须为8位。</param> ///<returns>已解密的字符串。</returns> publicstringDESDecrypt(stringpToDecrypt,stringsKey) { byte[]inputByteArray=Convert.FromBase64String(pToDecrypt); using(DESCryptoServiceProviderdes=newDESCryptoServiceProvider()) { des.Key=ASCIIEncoding.ASCII.GetBytes(sKey); des.IV=ASCIIEncoding.ASCII.GetBytes(sKey); System.IO.MemoryStreamms=newSystem.IO.MemoryStream(); using(CryptoStreamcs=newCryptoStream(ms,des.CreateDecryptor(),CryptoStreamMode.Write)) { cs.Write(inputByteArray,0,inputByteArray.Length); cs.FlushFinalBlock(); cs.Close(); } stringstr=Encoding.UTF8.GetString(ms.ToArray()); ms.Close(); returnstr; } } #endregion
PS:关于加密解密感兴趣的朋友还可以参考本站在线工具:
密码安全性在线检测:
高强度密码生成器:
http://tools.jb51.net/password/CreateStrongPassword
MD5在线加密工具:
http://tools.jb51.net/password/CreateMD5Password
迅雷、快车、旋风URL加密/解密工具:
http://tools.jb51.net/password/urlrethunder
在线散列/哈希算法加密工具:
http://tools.jb51.net/password/hash_encrypt
更多关于asp.net相关内容感兴趣的读者可查看本站专题:《asp.net操作json技巧总结》、《asp.net字符串操作技巧汇总》、《asp.net操作XML技巧总结》、《asp.net文件操作技巧汇总》、《asp.netajax技巧总结专题》及《asp.net缓存操作技巧总结》。
希望本文所述对大家asp.net程序设计有所帮助。