namespace _01.MD5加密
{
class Program
{
static void Main(string[] args)
{
//MD5加密就是給想要的密碼或者其它字符加密
//如果字符串被加密成MD5值之后,是不可逆的.
//字符串123 的MD5 64位加密形式是 202cb962ac59075b964b07152d234b70
Console.WriteLine("請輸入需要加密的字符串:");
string input = Console.ReadLine();
string str=GetMD5(input);
Console.WriteLine("輸入的值為:{0},加密后的值為:{1}.",input,str);
Console.ReadKey();
}
public static string GetMD5(string input)
{
//創建MD5對象
MD5 md5=MD5.Create(); //通過Create()方法模擬一個MD5對象出來
//在加密之前我們需要將字符串轉換成字節數組
byte[] buffer=Encoding.Default.GetBytes(input);
//開始加密
byte[] md5Buffer = md5.ComputeHash(buffer);
//將字節數組轉換成字符串,理論上有三種方式:
//1. 將字節數組中每個元素按照指定的編碼格式解析成字符串
//2.直接將數組ToString(); //這會輸出命名空間的
//3.將字節數組中的每一個元素ToString();
//我們采用第三種
//return Encoding.Default.GetString(md5Buffer); //將字節數組轉換成字符串
string str = null;
for (int i = 0; i < md5Buffer.Length; i++)
{
str += md5Buffer[i].ToString("x2"); //在ToString();方法的參數中加個x就會將十進制轉換成16進制
}
return str;
}
}
}
ToSting(); ? ?
ToString();方法的括號中可以加很多參數,用以轉各種各樣的格式.
詳情查閱 筆記ToString(),方法的參數詳解?02.ToString()方法詳解
來自為知筆記(Wiz)