下面是 C# 中实现 MD5加密(哈希) 的示例代码,演示如何将字符串转换成MD5哈希值(通常是32位16进制字符串形式):
using System;
using System.Text;
using System.Security.Cryptography;
class Program
{
static void Main()
{
string input = "HelloWorld";
string md5Hash = GetMD5Hash(input);
Console.WriteLine($"原文: {input}");
Console.WriteLine($"MD5加密后: {md5Hash}");
}
// 计算字符串的MD5值,返回16进制小写字符串
public static string GetMD5Hash(string input)
{
// 1. 创建MD5实例
using (MD5 md5 = MD5.Create())
{
// 2. 将输入字符串转换成字节数组
byte[] inputBytes = Encoding.UTF8.GetBytes(input);
// 3. 计算MD5哈希
byte[] hashBytes = md5.ComputeHash(inputBytes);
// 4. 将字节数组转换为16进制字符串
StringBuilder sb = new StringBuilder();
foreach (byte b in hashBytes)
{
sb.Append(b.ToString("x2")); // 转为两位16进制小写字符串
}
return sb.ToString();
}
}
}
说明
MD5.Create()
创建MD5算法实例- 输入字符串先用UTF-8编码成字节
ComputeHash
计算字节数组的MD5哈希值- 最后把哈希字节数组转换成16进制字符串返回
你可以用这个函数对任意字符串生成MD5哈希,非常适合做密码摘要、文件校验等场景。
如果你需要带盐值加密、或其他散列算法(如SHA256)实现,也可以告诉我!
发表回复