温馨提示×

c# md5加密对中文字符的处理

c#
小樊
83
2024-06-30 00:51:40
栏目: 编程语言

在C#中使用MD5加密中文字符时,需要将中文字符先转换为字节数组,然后再进行MD5加密。以下是一个示例代码:

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

class Program
{
    static void Main()
    {
        string input = "你好,世界!"; // 中文字符
        byte[] inputBytes = Encoding.UTF8.GetBytes(input); // 将中文字符转换为字节数组

        using (MD5 md5 = MD5.Create())
        {
            byte[] hashBytes = md5.ComputeHash(inputBytes); // 计算MD5哈希值

            StringBuilder sb = new StringBuilder();
            for (int i = 0; i < hashBytes.Length; i++)
            {
                sb.Append(hashBytes[i].ToString("x2")); // 将字节数组转换为16进制字符串
            }

            string hash = sb.ToString();
            Console.WriteLine("MD5加密结果:{0}", hash);
        }
    }
}

运行以上代码,将输出中文字符 “你好,世界!” 的MD5加密结果。在这个示例中,我们首先将中文字符转换为UTF-8编码的字节数组,然后通过 MD5.Create() 创建一个MD5实例,使用 ComputeHash() 方法计算哈希值,最后将哈希值转换为16进制字符串输出。

0