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


相关推荐: 利用python获取某年中每个月的第一天和最后一天  Laravel控制器是什么_Laravel MVC架构中Controller的作用与实践  Laravel如何实现事件和监听器?(Event & Listener实战)  用v-html解决Vue.js渲染中html标签不被解析的问题  微信小程序 闭包写法详细介绍  laravel怎么为API路由添加签名中间件保护_laravel API路由签名中间件保护方法  b2c电商网站制作流程,b2c水平综合的电商平台?  简单实现jsp分页  微博html5版本怎么弄发语音微博_语音录制入口及时长限制操作【教程】  图片制作网站免费软件,有没有免费的网站或软件可以将图片批量转为A4大小的pdf?  成都品牌网站制作公司,成都营业执照年报网上怎么办理?  常州企业网站制作公司,全国继续教育网怎么登录?  Laravel API路由如何设计_Laravel构建RESTful API的路由最佳实践  如何在云指建站中生成FTP站点?  Laravel项目结构怎么组织_大型Laravel应用的最佳目录结构实践  Windows10电脑怎么查看硬盘通电时间_Win10使用工具检测磁盘健康  Python企业级消息系统教程_KafkaRabbitMQ高并发应用  深圳网站制作的公司有哪些,dido官方网站?  如何在企业微信快速生成手机电脑官网?  php485函数参数是什么意思_php485各参数详细说明【介绍】  如何用花生壳三步快速搭建专属网站?  打开php文件提示内存不足_怎么调整php内存限制【解决方案】  JavaScript数据类型有哪些_如何准确判断一个变量的类型  电视网站制作tvbox接口,云海电视怎样自定义添加电视源?  Laravel如何使用Service Provider服务提供者_Laravel依赖注入与容器绑定【深度】  Laravel如何使用Eloquent ORM进行数据库操作?(CRUD示例)  html如何与html链接_实现多个HTML页面互相链接【互相】  Laravel如何为API编写文档_Laravel API文档生成与维护方法  Laravel如何监控和管理失败的队列任务_Laravel失败任务处理与监控  为什么要用作用域操作符_php中访问类常量与静态属性的优势【解答】  laravel怎么用DB facade执行原生SQL查询_laravel DB facade原生SQL执行方法  Laravel如何集成第三方登录_Laravel Socialite实现微信QQ微博登录  Laravel如何从数据库删除数据_Laravel destroy和delete方法区别  ChatGPT 4.0官网入口地址 ChatGPT在线体验官网  使用豆包 AI 辅助进行简单网页 HTML 结构设计  个人网站制作流程图片大全,个人网站如何注销?  做企业网站制作流程,企业网站制作基本流程有哪些?  湖南网站制作公司,湖南上善若水科技有限公司做什么的?  如何挑选优质建站一级代理提升网站排名?  Edge浏览器提示“由你的组织管理”怎么解决_去除浏览器托管提示【修复】  青岛网站建设如何选择本地服务器?  网站图片在线制作软件,怎么在图片上做链接?  Android GridView 滑动条设置一直显示状态(推荐)  如何确保FTP站点访问权限与数据传输安全?  如何在腾讯云服务器上快速搭建个人网站?  北京网站制作费用多少,建立一个公司网站的费用.有哪些部分,分别要多少钱?  javascript和jQuery中的AJAX技术详解【包含AJAX各种跨域技术】  Win11怎么开启自动HDR画质_Windows11显示设置HDR选项  Laravel怎么判断请求类型_Laravel Request isMethod用法  Laravel怎么清理缓存_Laravel optimize clear命令详解