SHA-256ファイルチェックサム

SHA-256チェックサムでファイルの整合性を検証。sha256sumの使い方、MD5より安全な検証にSHA-256が推奨される理由、チェックサム検証の自動化方法を解説します。

SHA-256

詳細な説明

SHA-256チェックサムはファイルの内容から計算される256ビットのハッシュで、整合性(ファイルが破損していない)と真正性(ファイルが改ざんされていない)の両方を検証する暗号学的フィンガープリントです。SHA-256チェックサムはソフトウェア業界における安全なファイル検証の現行標準です。

SHA-256チェックサムの計算:

Linuxではsha256sum filename、macOSではshasum -a 256 filename、Windowsではcertutil -hashfile filename SHA256またはPowerShellのGet-FileHash -Algorithm SHA256を使用します。複数ファイルのチェックサムマニフェストはsha256sum *.tar.gz > SHA256SUMSで生成できます。

検証ワークフロー:

ファイルとチェックサムファイル(通常SHA256SUMSまたはCHECKSUMS.sha256という名前)をダウンロードし、sha256sum -c SHA256SUMSで全ファイルを自動検証します。一致するファイルには「OK」、不一致には「FAILED」と報告されます。64文字の文字列を手動比較するより確実です。

MD5に対するセキュリティ上の利点:

MD5とは異なり、SHA-256には既知の衝突攻撃がありません。攻撃者が正規ファイルと同じSHA-256チェックサムを持つ悪意あるファイルを作成することは事実上不可能です。ただし、チェックサムの信頼性はソースに依存します。最大限のセキュリティのためには、GPG/PGP鍵でチェックサムに署名すべきです。

業界での採用:

主要なLinuxディストリビューションがISOイメージとパッケージにSHA-256チェックサムを使用しています。Docker Content TrustはSHA-256ダイジェストを使用します。Pythonのpipはパッケージ整合性をSHA-256で検証します。ブラウザのWeb Crypto APIはSHA-256をサポートし、サーバーへのラウンドトリップなしでクライアントサイドのチェックサム計算を可能にします。

ユースケース

SHA-256チェックサムは、ソフトウェアダウンロード、Dockerイメージの整合性、Linuxディストリビューションやパッケージマネージャーでのパッケージ真正性の検証に使用される標準です。

Try It — Hash Generator

フルツールを開く