C#实现MD5加密:
1.首先创建MD5的对象。
2.调用MD5加密的方法ComputeHash();
3.将需要加密的字符串转换为字节数组,调用MD5加密的方法ComputeHash(),进行加密,并且返回一个自己数组。
4.将返回的字节数组中的每个元素转换为字符串(ToString();)
实例代码:
static void Main(string[] args)
{
//MD5加密
Console.WriteLine("请输入一个字符串:");
string input = Console.ReadLine();
//调用加密的方法
string Md5Str = GetMd5(input);
Console.WriteLine("{0}加密后的结果是:\t{1}", input, Md5Str);
Console.ReadKey();
}
/// <summary>
/// 将用户输入的字符串转换为MD5加密的形式,并且返回字符串
/// </summary>
/// <param name="str">用户输入的字符串</param>
/// <returns>返回的加密后的字符串</returns>
public static string GetMd5(string str)
{
//创建MD5的对象
MD5 myMd5 = MD5.Create();
///将用户输入的字符串转换为字节数组
byte[] buffer = System.Text.Encoding.Default.GetBytes(str);
//调用MD5加密的方法,将MD5加密后的的字节数组存储到Md5buffer字节数组中
byte[] Md5buffer = myMd5.ComputeHash(buffer);
//将加密后的字节数组转换为字符串, 是将字节数组中的每个元素都转换为字符串。
StringBuilder sb = new StringBuilder();
for (int i = 0; i < Md5buffer.Length; i++)
{
sb.Append(Md5buffer[i].ToString("x2")); //x-->将10进制转换为16进制。2-->每次都是两位数输出。
}
return sb.ToString();
}