2007.07.31

MD5CryptoServiceProviderクラスを使用した方法

MD5CryptoServiceProviderクラスを使用した方法
MD5ハッシュ値を計算するには、MD5CryptoServiceProviderクラスを使います。下の例では文字列sのMD5ハッシュ値を計算し、結果を16進数の文字列として出力します。

[VB.NET]
'MD5ハッシュ値を計算する文字列
Dim s As String = "<wu-hao@ilovex.co.jp>wuhao"
Dim md5 As New System.Security.Cryptography.MD5CryptoServiceProvider()
'文字列をbyte型配列に変換してからハッシュ値を計算
Dim bs As Byte() = md5.ComputeHash(System.Text.Encoding.ASCII.GetBytes(s))
'byte型配列を16進数の文字列に変換
'ここの部分は次のようにもできる
'Dim result as String = BitConverter.ToString(bs).ToLower().Replace("-","")
Dim b As Byte
Dim result As New System.Text.StringBuilder()
For Each b In bs
    result.Append(b.ToString("x2"))
Next
'結果を表示
Console.WriteLine(result)

コメント (2)

突然すみません。
VBAでMD5のハッシュ値を算出するプログラムを作成したいのですが、これをエクセルVBAで書き換えるとどうなりますか?
教えていただければ助かります。

VBAでMD5のハッシュ値の計算はちょっと複雑だと思います。まず、自分の暗号化クラス ライブラリを作成しなければなりません。
詳細説明は下記URLで参照して下さい。
http://support.microsoft.com/kb/317535

コメントを投稿

(いままで、ここでコメントしたことがないときは、コメントを表示する前にこのブログのオーナーの承認が必要になることがあります。承認されるまではコメントは表示されません。そのときはしばらく待ってください。)

photo
wu