首页后端开发ASP.NET详解ASP.NET中DES加密与解密MD5

详解ASP.NET中DES加密与解密MD5

时间2024-01-30 12:41:03发布访客分类ASP.NET浏览405
导读:收集整理的这篇文章主要介绍了详解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解密

若转载请注明出处: 详解ASP.NET中DES加密与解密MD5
本文地址: https://pptw.com/jishu/592533.html
javascript怎么求数组最大值以及它的下标 手把手教你怎么正确快速的部署一个TS Node.js项目!

游客 回复需填写必要信息