MD5算法
是一種散列(hash)算法,不是一種加密算法。主要是驗明真身字符串與文件均可。
介紹工具:CaicMD5
1、MD5是不可逆的,MD5長度一般是32位的16進制數字符串
//計算字符串的Md5值
public static stringEncryptString(string str)
{
//1.創建一個Md5對象
MD5md5Obj = MD5.Create();
//1.1把字符串轉換爲一個byte數組
byte[]byts = System.Text.Encoding.Default.GetBytes(str);
//2.使用md5進行字符串處理
byte[]md5Byts = md5Obj.ComputeHash(byts);
//3.釋放資源
md5Obj.Clear();//類似於Dispose();
md5Obj.Dispose();
StringBuildersb = new StringBuilder();
//4.返回處理以後的結果
for(int i = 0; i < md5Byts.Length; i++)
{
sb.Append(md5Byts[i].ToString("x2"));
}
returnsb.ToString();
}
//文件MD5加密
public static string EncryptFile(stringpath)
{
using(FileStream fs = File.Open(path,FileMode.Open))
{
using(MD5 md5Obj = MD5.Create())
{
byte[]md5Byts = md5Obj.ComputeHash(fs);
StringBuildersb = new StringBuilder();
for(int i = 0; i < md5Byts.Length; i++)
{
sb.Append(md5Byts[i].ToString("x2"));
}
returnsb.ToString();
}
}
}