• MD5加密操作


         MD5加密操作MD5加密算法原理MD5的全称是Message-Digest Algorithm 5(信息-摘要算法),它的作用是让大容量信息在用数字签名软件签署私人密匙前被"压缩"成一种保密的格式(就是把一个任意长度的字节串变换成一定长的大整数)。

     

    //导入命名空间
    using System.Security.Cryptography;

        MD5加密文件

    string GetFileMd5(string path)
     {
     string ctyptStr = "";
     byte[] cryptBytes;
     using (FileStream fs = new FileStream(path,FileMode.Open))
     {
     MD5CryptoServiceProvider md5 = new MD5CryptoServiceProvider();
     cryptBytes = md5.ComputeHash(fs);
     }
     for (int i = 0; i < cryptBytes.Length; i++)
     {
     ctyptStr += cryptBytes[i].ToString("X2");
     }
     return ctyptStr;
     }

        MD5加密字符串

    方式一:
     
    public string GetMD5String(string pwd)
    {
     MD5CryptoServiceProvider md5=new MD5CryptoServiceProvide();
     byte[] data=System.Text.Encoding.ASCII.GetBytes(pwd);
     byte[] md5data=md5.ComputeHash(data);
     StringBuilder builder=new StringBUilder();
     for(int i=0;i<md5data.Length-1;i++)
     {
     builder.Append(md5data[i].ToString("X2")); 
    }
     return builder;
    }
    方式二:
     
    public string GetMd5(string msg)
     {
     string cryptStr = "";
     MD5CryptoServiceProvider md5 = new MD5CryptoServiceProvider();
     byte[] bytes = Encoding.UTF8.GetBytes(msg);
     byte[] cryptBytes = md5.ComputeHash(bytes);
     for (int i = 0; i < cryptBytes.Length; i++)
     {
     cryptStr += cryptBytes[i].ToString("X2");
     }
     return cryptStr;
     }

    我们也可以用Foreach进行循环

     public string GetMD5String(string code)
          {
              //在登录的时候调用的
              MD5CryptoServiceProvider md5 = new MD5CryptoServiceProvider();
              //将字符串   转换  byte[]
              byte[] bytes = Encoding.Default.GetBytes(code);
              byte[] md5Byte = md5.ComputeHash(bytes);
              //byte[]   转换  字符串
              StringBuilder sb = new StringBuilder();
              foreach (byte item in md5Byte)
              {
                  sb.Append(item.ToString("X2"));
              }
              return sb.ToString();
                   
          }

    我可以在主窗体调用

      private void btnexit_Click(object sender, EventArgs e)
            {
                Md5加密 md = new Md5加密();
               string num= md.GetMD5String("1");
               MessageBox.Show(num);
            }
  • 相关阅读:
    C#代码
    属性面板:tabcontroller
    窗体效果
    c#窗体开发
    帝国cms学习
    在树莓派上运行 .net core 2.1 程序 并实现开机启动
    C# 高性能的数组 高性能数组队列实战 HslCommunication的SharpList类详解
    C# 序列化详解,xml序列化,json序列化对比
    C# 读写redis C#读写实时数据库
    python 读写三菱PLC数据,使用以太网读写Q系列,L系列,Fx系列的PLC数据
  • 原文地址:https://www.cnblogs.com/yejiaojiao/p/5387385.html
Copyright © 2020-2023  润新知