[ハッシュ作成(SHA1, MD2, MD4, MD5)]

ハッシュを作成します。
ハッシュアルゴリズムは、SHA1, MD2, MD4, MD5 などに対応しています。
この例を使用するには capicom.dll の登録が必要です。
 ex$ regsvr32 capicom.dll
capicom.dll はマイクロソフトのサイトからダウンロードできます。

【ソースコード】
[tips0199.vbs]
Option Explicit

Function DoHashCommand(ByVal lngAlgorithm, ByVal strContent)
    Dim strHashValue    ' ハッシュ値
    Dim objHashedData   ' ハッシュ作成用

    On Error Resume Next
    strHashValue = ""

    Set objHashedData = CreateObject("CAPICOM.HashedData")
    If Err.Number = 0 Then
        objHashedData.Algorithm = lngAlgorithm
        objHashedData.Hash strContent
        If Err.Number = 0 Then
            strHashValue = objHashedData.Value
        Else
            WScript.Echo "エラー: " & Err.Description
        End If
    Else
        WScript.Echo "エラー: " & Err.Description
    End If

    Set objHashedData = Nothing
    DoHashCommand = strHashValue
End Function

Dim strContent  ' ハッシュ作成文字列
Dim strAlgo     ' ハッシュアルゴリズム
Dim lngLoop     ' ループカウンタ

strContent = "hash test"
strAlgo = Array("SHA1", "MD2", "MD4", "MD5")

WScript.Echo "文字列: " & strContent
For lngLoop = 0 To UBound(strAlgo)
    WScript.Echo strAlgo(lngLoop) & ": " & _
        DoHashCommand(lngLoop, strContent)
Next

【実行結果】
C:\> cscript //NoLogo tips0199.vbs
文字列: hash test
SHA1: DCB12E70AFEE6D8A86091767CC753851305C043A
MD2: 785176A0CB72FF8E3BA9C0B6F8141E49
MD4: E0C287023917CEE9E539300BACAD08A2
MD5: 1E25FCDC4379021015CDED273988470A