簡析散列算法在C# 加密中的應(yīng)用
散列算法是C# 加密中經(jīng)常會(huì)用到的方法,那么什么是散列算法呢?它的作用是如何實(shí)現(xiàn)的呢?那么這里就向你詳細(xì)介紹執(zhí)行的具體過程,我們在學(xué)習(xí)之前要明白創(chuàng)建散列碼的方法很多,其實(shí)即使是同一種散列算法也可以通過許多類來實(shí)現(xiàn),以 SHA1 為例:
散列算法在C# 加密的實(shí)現(xiàn)實(shí)例:
- string plaintext = "明文";
- byte[] srcBuffer =
- System.Text.Encoding.UTF8.GetBytes(plaintext);
- HashAlgorithm hash = HashAlgorithm.Create("SHA1");
- //將參數(shù)換成“MD5”,則執(zhí)行 MD5 加密。不區(qū)分大小寫。
- byte[] destBuffer = hash.ComputeHash(srcBuffer);
- string hashedText = BitConverter.ToString(destBuffer).Replace("-", "");
用的是 HashAlgorithm 這個(gè)類,其名稱空間是 System.Security.Cryptography。只用了它的兩個(gè)方法:Create 和 ComputeHash,ComputeHash 返回的是 byte[],為了顯示這里轉(zhuǎn)換成字符串,轉(zhuǎn)換之后,它和前一節(jié)講的 SHA1 結(jié)果是一樣的。
也可以用 SHA1Managed 和 SHA1CryptoServiceProvider,但是我們推薦用本文的方法,因?yàn)樗簧婕邦惷乃惴ǎ恍枰?Create 的字符串參數(shù)即可。
散列算法在C# 加密中的使用就向你介紹到這里,希望對你了解和學(xué)習(xí)散列算法和C# 加密有所幫助。
【編輯推薦】