详解ASP.NET中DES加密与解密MD5
导读:收集整理的这篇文章主要介绍了详解ASP.NET中DES加密与解密MD5,觉得挺不错的,现在分享给大家,也给大家做个参考。这篇文章主要介绍了ASP.NET中DES加密与解密MD5加密帮助类的实例代码,还是很不错的,想要了解的朋友可以来看一下。...
收集整理的这篇文章主要介绍了详解ASP.NET中DES加密与解密MD5,觉得挺不错的,现在分享给大家,也给大家做个参考。这篇文章主要介绍了ASP.NET中DES加密与解密MD5加密帮助类的实例代码,还是很不错的,想要了解的朋友可以来看一下。public class TrialHelPEr { //默认密钥向量 PRivate static byte[] Keys = { 0x12, 0x34, 0x56, 0x78, 0x90, 0xAB, 0xCD, 0xEF } ; /// summary> /// DES加密字符串 /// /summary> /// param name="encryptString"> 待加密的字符串/param> /// param name="encryptKey"> 加密密钥,要求为8位/param> /// returns> 加密成功返回加密后的字符串,失败返回源串/returns> public static string EncryptDES( string encryptString, string encryptKey = "" ) { try { if (string.IsNullOrEmpty(encryptKey) || encryptKey.Length 8) { encryptKey = "winform01"; } byte[] rgbKey = Encoding.UTF8.GetBytes(encryptKey.Substring(0, 8)); byte[] rgbIV = Keys; byte[] inputByteArray = Encoding.UTF8.GetBytes(encryptString); DESCryptoServiceProvider dCSP = new DESCryptoServiceProvider(); MemoryStream mStream = new MemoryStream(); CryptoStream cStream = new CryptoStream(mStream, dCSP.CreateEncryptor(rgbKey, rgbIV), CryptoStreamMode.WrITe); cStream.Write(inputByteArray, 0, inputByteArray.Length); cStream.FlushFinalBlock(); return Convert.ToBase64String(mStream.ToArray()); } catch { return encryptString; } } /// summary> /// DES解密字符串 /// /summary> /// param name="decryptString"> 待解密的字符串/param> /// param name="decryptKey"> 解密密钥,要求为8位,和加密密钥相同/param> /// returns> 解密成功返回解密后的字符串,失败返源串/returns> public static string DecryptDES( string decryptString, string decryptKey = "" ) { try { if (string.IsNullOrEmpty(decryptKey) || decryptKey.Length 8) { decryptKey = "winform01"; } byte[] rgbKey = Encoding.UTF8.GetBytes(decryptKey.Substring(0, 8)); byte[] rgbIV = Keys; byte[] inputByteArray = Convert.FromBase64String(decryptString); DESCryptoServiceProvider DCSP = new DESCryptoServiceProvider(); MemoryStream mStream = new MemoryStream(); CryptoStream cStream = new CryptoStream(mStream, DCSP.CreateDecryptor(rgbKey, rgbIV), CryptoStreamMode.Write); cStream.Write(inputByteArray, 0, inputByteArray.Length); cStream.FlushFinalBlock(); return Encoding.UTF8.GetString(mStream.ToArray()); } catch { return decryptString; } } /// summary> /// MD5数据加密 /// /summary> /// param name="sDatain"> 加密字段/param> /// returns> 加密后的字符串/returns> public static string GetMD5( string sDataIn ) { System.Security.Cryptography.MD5CryptoServiceProvider md5 = new System.Security.Cryptography.MD5CryptoServiceProvider(); byte[] bytValue, bytHash; bytValue = System.Text.Encoding.UTF8.GetBytes(sDataIn); bytHash = md5.COMputeHash(bytValue); md5.Clear(); string sTemp = ""; for (int i = 0; i bytHash.Length; i++) { sTemp += bytHash[i].ToString("x").PadLeft(2, '0'); } return sTemp; } }
调用:
//获取登录信息 loginRecord.Name = tbName.Text.Trim(); LOGinRecord.MD5Pwd = TrialHelper.GetMD5(tbPwd.Password); //保存到数据库MD5加密方式 loginRecord.Pwd = TrialHelper.EncryptDES(tbPwd.Password); //记住密码des加密方式,保存到本地
以上就是详解ASP.NET中DES加密与解密MD5的详细内容,更多请关注其它相关文章!
声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!
若转载请注明出处: 详解ASP.NET中DES加密与解密MD5
本文地址: https://pptw.com/jishu/592533.html