ASP.NET中DES加密与解密MD5加密帮助类的实现代码

发布时间 - 2026-01-11 02:21:01    点击率:
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加密帮助类,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对网站的支持!


# 加密与解密  # des加密  # 解密md5  # asp.net实现的DES加密解密操作示例  # asp.net实现的MD5加密和DES加解密算法类完整示例  # asp.net的加密解密技巧  # ASP.NET加密解密算法分享  # Asp.net  # C# 加密解密字符串的使用详解  # asp.net 对中文汉字的加密与解密代码  # asp.net 字符串加密解密技术  # 详解ASP.NET中加密和解密的方法  # 小编  # 在此  # 给大家  # 所述  # 给我留言  # 感谢大家  # 疑问请  # 有任何  # Length  # IsNullOrEmpty  # rgbKey  # Encoding  # EncryptDES  # param  # encryptString  # encryptKey  # string  # returns  # MemoryStream  # dCSP 


相关栏目: 【 网站优化151355 】 【 网络推广146373 】 【 网络技术251813 】 【 AI营销90571


相关推荐: 如何在浏览器中启用Flash_2025年继续使用Flash Player的方法【过时】  android nfc常用标签读取总结  Laravel Debugbar怎么安装_Laravel调试工具栏配置指南  Laravel中的Facade(门面)到底是什么原理  北京企业网站设计制作公司,北京铁路集团官方网站?  如何获取PHP WAP自助建站系统源码?  用v-html解决Vue.js渲染中html标签不被解析的问题  JavaScript Ajax实现异步通信  php打包exe后无法访问网络共享_共享权限设置方法【教程】  Claude怎样写结构化提示词_Claude结构化提示词写法【教程】  Laravel如何处理异常和错误?(Handler示例)  JS中对数组元素进行增删改移的方法总结  IOS倒计时设置UIButton标题title的抖动问题  昵图网官网入口 昵图网素材平台官方入口  在线制作视频的网站有哪些,电脑如何制作视频短片?  如何在IIS中新建站点并配置端口与物理路径?  如何用AI帮你把自己的生活经历写成一个有趣的故事?  如何自定义建站之星模板颜色并下载新样式?  今日头条AI怎样推荐抢票工具_今日头条AI抢票工具推荐算法与筛选【技巧】  Laravel如何正确地在控制器和模型之间分配逻辑_Laravel代码职责分离与架构建议  Laravel Session怎么存储_Laravel Session驱动配置详解  Laravel Fortify是什么,和Jetstream有什么关系  哪家制作企业网站好,开办像阿里巴巴那样的网络公司和网站要怎么做?  Laravel安装步骤详细教程_Laravel环境搭建指南  Laravel事件和监听器如何实现_Laravel Events & Listeners解耦应用的实战教程  深圳网站制作培训,深圳哪些招聘网站比较好?  Laravel怎么上传文件_Laravel图片上传及存储配置  音响网站制作视频教程,隆霸音响官方网站?  如何在建站之星绑定自定义域名?  Linux系统命令中tree命令详解  如何在万网利用已有域名快速建站?  如何快速查询网址的建站时间与历史轨迹?  Win11搜索不到蓝牙耳机怎么办 Win11蓝牙驱动更新修复【详解】  php后缀怎么变mp4格式错误_修改扩展名提示格式不对怎么办【技巧】  Android自定义listview布局实现上拉加载下拉刷新功能  企业网站制作这些问题要关注  Laravel如何实现一对一模型关联?(Eloquent示例)  在Oracle关闭情况下如何修改spfile的参数  怎么用AI帮你设计一套个性化的手机App图标?  phpredis提高消息队列的实时性方法(推荐)  海南网站制作公司有哪些,海口网是哪家的?  微信小程序 HTTPS报错整理常见问题及解决方案  如何解决hover在ie6中的兼容性问题  如何在IIS7中新建站点?详细步骤解析  Laravel如何实现全文搜索功能?(Scout和Algolia示例)  Win11应用商店下载慢怎么办 Win11更改DNS提速下载【修复】  大连网站制作费用,大连新青年网站,五年四班里的视频怎样下载啊?  中国移动官方网站首页入口 中国移动官网网页登录  Laravel如何实现用户注册和登录?(Auth脚手架指南)  Edge浏览器如何截图和滚动截图_微软Edge网页捕获功能使用教程【技巧】