Unity-MD5加密

这段时间在开发项目的过程中,后台接口为了安全性考虑,在请求时会要求好几个字段拼接后进行MD5加密后传入,以下讲述利用MD5相关API进行加密,具体加密的规则(由哪些字段组成)各位可以自己定义,如:从接口获取用户识别身份、当前时间戳等进行规则定义。

引用命名空间:

using System;
using System.Security.Cryptography;
using System.Text;

一、MD5-加密返回16位字符串

        /// <summary>
        /// MD5 16位加密
        /// </summary>
        /// <param name="_encryptContent">需要加密的内容</param>
        /// <returns></returns>
        public static string EncryptMD5_16(string _encryptContent)
        {
    
    
            var md5 = new MD5CryptoServiceProvider();
            string t2 = BitConverter.ToString(md5.ComputeHash(Encoding.Default.GetBytes(_encryptContent)), 4, 8);
            t2 = t2.Replace("-", "");
            return t2;
        }

二、MD5-加密返回32位字符串(常用)

        /// <summary>
        /// MD5 32位加密
        /// </summary>
        /// <param name="_encryptContent">需要加密的内容</param>
        /// <returns></returns>
        public static string EncryptMD5_32(string _encryptContent)
        {
    
    
            string content_Normal = _encryptContent;
            string content_Encrypt = "";
            MD5 md5 = MD5.Create();

            byte[] s = md5.ComputeHash(Encoding.UTF8.GetBytes(content_Normal));

            for (int i = 0; i < s.Length; i++)
            {
    
    
                content_Encrypt = content_Encrypt + s[i].ToString("X2");
            }
            return content_Encrypt;
        }

三、MD5-加密返回64位字符串

        /// <summary>
        /// MD5 64位加密
        /// </summary>
        /// <param name="_encryptContent">需要加密的内容</param>
        /// <returns></returns>
        public static string EncryptMD5_64(string _encryptContent)
        {
    
    
            string content = _encryptContent;
            MD5 md5 = MD5.Create(); 
            byte[] s = md5.ComputeHash(Encoding.UTF8.GetBytes(content));
            return Convert.ToBase64String(s);
        }

猜你喜欢

转载自blog.csdn.net/weixin_38484443/article/details/118873604