簡析散列算法在C# 加密中的應用
散列算法是C# 加密中經(jīng)常會用到的方法,那么什么是散列算法呢?它的作用是如何實現(xiàn)的呢?那么這里就向你詳細介紹執(zhí)行的具體過程,我們在學習之前要明白創(chuàng)建散列碼的方法很多,其實即使是同一種散列算法也可以通過許多類來實現(xiàn),以 SHA1 為例:
散列算法在C# 加密的實現(xiàn)實例:
- 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 這個類,其名稱空間是 System.Security.Cryptography。只用了它的兩個方法:Create 和 ComputeHash,ComputeHash 返回的是 byte[],為了顯示這里轉換成字符串,轉換之后,它和前一節(jié)講的 SHA1 結果是一樣的。
也可以用 SHA1Managed 和 SHA1CryptoServiceProvider,但是我們推薦用本文的方法,因為它不涉及類名,要更改算法,只需要更改 Create 的字符串參數(shù)即可。
散列算法在C# 加密中的使用就向你介紹到這里,希望對你了解和學習散列算法和C# 加密有所幫助。
【編輯推薦】