「C#」文字列のSHA256ハッシュ値を取得する
説明
SHA256 アルゴリズムの暗号サービス プロバイダー (CSP: Cryptographic Service Provider) 実装にアクセスするためのラッパー オブジェクトを定義します。
書式
1.GetBytes(String)
派生クラスでオーバーライドされた場合、指定した文字列に含まれるすべての文字をバイト シーケンスにエンコードします。
2.ComputeHash(Byte[])
指定したバイト配列のハッシュ値を計算します。
3.Clear()
HashAlgorithm クラスによって使用されているすべてのリソースを解放します。
使用例
using System; using System.Security.Cryptography; using System.Text; namespace ConsoleApplicationSample { class Program { static void Main(string[] args) { // 文字列変数の定義 string target = "arkgame"; // ハッシュ値を計算 SHA256CryptoServiceProvider shsp = new SHA256CryptoServiceProvider(); // すべての文字をバイト シーケンスにエンコード byte[] beforeByteArr = Encoding.UTF8.GetBytes(target); // 指定したバイト配列のハッシュ値を計算 byte[] afterByteArr = shsp.ComputeHash(beforeByteArr); // HashAlgorithm クラスによって使用されているすべてのリソースを解放 shsp.Clear(); // バイト配列を16進数文字列に変換 StringBuilder sbd = new StringBuilder(); foreach (byte bt in afterByteArr) { sbd.Append(bt.ToString("x2")); } // コンソールに出力 Console.WriteLine("SHA256ハッシュ値: " + sbd.ToString()); Console.ReadKey(); } } }
実行結果
SHA256ハッシュ値: 165ea25595fa8f204e1a67ae28748c9c567199057910b682657b576bf174f765