ファイルのダウンロードや、ファイルに変更があったのか確認のためハッシュ値を取得する場合のサンプルになります。 よく使われるハッシュアルゴリズムが変わっていっているので、とりあえずいくつか載せてあります。
$TargetPath = "C:\Temp\test.dat" $MD5 = New-Object System.Security.Cryptography.MD5CryptoServiceProvider $SHA1 = New-Object System.Security.Cryptography.SHA1CryptoServiceProvider $SHA256 = New-Object System.Security.Cryptography.SHA256CryptoServiceProvider $SHA512 = New-Object System.Security.Cryptography.SHA512CryptoServiceProvider $Stream = [System.IO.File]::Open(`$TargetPath`,[System.IO.Filemode]::Open, [System.IO.FileAccess]::Read) [System.BitConverter]::ToString($MD5.ComputeHash($Stream)) [System.BitConverter]::ToString($SHA1.ComputeHash($Stream)) [System.BitConverter]::ToString($SHA256.ComputeHash($Stream)) [System.BitConverter]::ToString($SHA512.ComputeHash($Stream)) $Stream.Close()
結果サンプル
MD5
E0-B5-50-FA-9B-7A-43-4B-74-BB-7B-B2-40-96-C2-A8
SHA1
DA-39-A3-EE-5E-6B-4B-0D-32-55-BF-EF-95-60-18-90-AF-D8-07-09
SHA256
E3-B0-C4-42-98-FC-1C-14-9A-FB-F4-C8-99-6F-B9-24-27-AE-41-E4-64-9B-93-4C-A4-95-99-1B-78-52-B8-55
SHA512
CF-83-E1-35-7E-EF-B8-BD-F1-54-28-50-D6-6D-80-07-D6-20-E4-05-0B-57-15-DC-83-F4-A9-21-D3-6C-E9-CE-47-D0-D1-3C-5D-85-F2-B0-FF-83-18-D2-87-7E-EC-2F-63-B9-31-BD-47-41-7A-81-A5-38-32-7A-F9-27-DA-3E
(SHA512は、長いですね)
検証環境
Windows 7 Powershell 4.0