WindowsでダウンロードファイルのSHA-256を確認し、公式の値と照合する
Windows PowerShellのGet-FileHashでファイルのSHA-256を計算し、信頼できる配布元が示す値と比較します。ファイル名ではなく内容を照合する方法です。一致は比較した値との整合性を示しますが、ウイルス検査や安全性の保証にはなりません。
公開 · 更新 · FaultNote 編集方針
この記事が役立つ人・作業前の準備
- ISOやインストーラーなどのダウンロード結果を確かめたい人
- 外付けへコピーしたファイルの内容が同じか照合したい人
用意するもの
- ダウンロードを完了し、対象ファイルの保存先を確認します。検証のためにファイルを実行する必要はありません。
- 公式配布ページなど信頼できる場所から、同じ版・言語・構成のSHA-256を取得します。
- Windows PowerShellまたはPowerShellを開きます。対象ファイルを読める通常の権限で実行できます。
1. 比較する値の出所を確かめる
計算した値を単に検索して同じ文字列を見つけても、正しい配布物かは判断できません。公式配布元の該当製品・該当ファイルに対応する値を使います。
例としてMicrosoftのWindows 11ダウンロードページには、ダウンロード検証の案内があります。値は製品や言語で変わるため、別の版の値を流用しません。
- ファイル名だけでなく、版、言語、CPU向け構成などが配布ページと一致するか確認します。
- 配布元が示すアルゴリズムがSHA-256か確認し、対応する64桁の16進数を控えます。
2. ファイルのSHA-256を表示する
下のパスは例です。自分の保存場所へ置き換えて実行します。-LiteralPathは角括弧などを含むファイル名も、そのままの名前として扱います。
大きいファイルは読み取りに時間がかかります。途中で同じファイルを書き換えず、結果が返るまで待ちます。
$downloadPath = 'C:\Users\YourName\Downloads\package.zip'
Get-FileHash -LiteralPath $downloadPath -Algorithm SHA256 | Format-List Algorithm, Hash, Path- 以下の$downloadPathを対象ファイルへ変更して実行します。
- AlgorithmがSHA256、Pathが目的のファイルであることを確認します。
3. 公式の値と全体を比較する
先頭や末尾だけではなく全体を照合します。以下の例は、控えたSHA-256を入れる場所を明示し、桁数や文字が違う場合は比較前に停止します。
同じPowerShell画面で実行してください。大文字と小文字だけの違いは、この比較では一致として扱います。
$expectedHash = 'PASTE_THE_64_CHARACTER_SHA256_HERE'
if ($expectedHash -notmatch '^[A-Fa-f0-9]{64}$') {
throw 'Enter the exact 64-character SHA-256 from the trusted publisher.'
}
$actualHash = (Get-FileHash -LiteralPath $downloadPath -Algorithm SHA256 -ErrorAction Stop).Hash
$actualHash -eq $expectedHash- PASTE_THE_64_CHARACTER_SHA256_HEREを、公式の照合値そのものに置き換えます。前後の説明や空白を含めません。
- 結果がTrueなら一致、Falseなら不一致です。エラーが出た場合は、比較が完了したとは判断しません。
4. 不一致なら取り違えを確認する
不一致は内容が比較対象と同じでないことを示しますが、その理由までは示しません。途中のダウンロード、別の版、別の言語、展開済みファイルとの比較などを順に確認します。
- 対象のPathと配布ページを見直し、アルゴリズムと製品の条件を再確認します。
- 正しい公式配布元から改めてダウンロードし、完了後に新しいファイルを照合します。
- 繰り返し一致しない場合は、ファイルを実行せず配布元の更新案内や問い合わせ先を確認します。
5. 一致して分かることを整理する
信頼できない配布元がファイルと照合値を両方差し替えた場合でも、計算結果は一致し得ます。公式の値を確認することと、ハッシュを計算することの両方が必要です。
コピー前後の照合では、同じSHA-256なら内容の一致確認に使えます。一方、元ファイルが安全かを判断する検査とは別です。
- 確認した配布元、ファイル名、版、照合結果を必要に応じて記録します。
- コピーの検証なら、元と先でそれぞれ同じアルゴリズムを使って値を比較します。
- ファイルを使う段階では、配布元や署名、通常のセキュリティ確認も目的に応じて行います。
注意点・利用条件
- SHA-256が一致しても、ファイルの目的や実行時の動作が安全だと保証されるわけではありません。
- ファイル名を変えても内容が同じならハッシュは変わりません。展開・再圧縮・編集したファイルは、元の配布物と同じ値になるとは限りません。
- 公式の照合値がない場合、ハッシュだけで配布元の正当性を証明できません。
よくある質問
Trueならウイルスは入っていませんか?
Trueは指定した値と一致したという意味です。ファイルの安全性を判定する検査ではなく、照合値の出所も確認する必要があります。
同じ名前なのにハッシュが違います
名前と内容は別です。版や言語が違う、更新された、編集された、取得が不完全といった可能性を確認します。
公式情報・確認日
情報確認日:。対応OS・プラン・画面構成の変更は、以下の公式情報で確認できます。