🔐 ハッシュ値計算(SHA-256 / SHA-1 / SHA-512)
テキストでもファイルでもハッシュ値を計算できます。配布元が公開しているハッシュと照合して改ざん・破損をチェックする機能つき。ファイルはアップロードされず、すべて端末内で計算されるため、機密ファイルでも安全です。
ここにハッシュ値が表示されます
🔒 Web Crypto API によりすべて端末内で計算。ファイルもテキストもサーバーには送信されません。
🔎 ハッシュ値とは・何に使うか
ハッシュ値は、データを一定の長さの文字列に変換した「データの指紋」です。次の性質があります。
- 同じ入力からは必ず同じ値が出る。だから照合に使えます。
- 1バイトでも違えば全く別の値になる。わずかな改ざんも検出できます。
- ハッシュ値から元のデータは復元できない。一方向の変換だからです。
実務では主に次の用途で使われます。
- ダウンロードの検証:配布元が公開するハッシュ値と照合し、通信途中の破損や第三者による差し替えを検出する。
- 同一性の判定:2つのファイルが完全に同じかを、中身を比較せずに判定する。
- パスワードの保存:平文で保存せず、ハッシュ化して保存する(実際にはソルトと反復処理を併用します)。
⚖️ アルゴリズムの選び方
| 種類 | 長さ | 安全性 | 使いどころ |
|---|---|---|---|
| SHA-256 | 64文字 | ✅ 安全(現在の標準) | 迷ったらこれ。ファイル検証・署名の標準 |
| SHA-384 | 96文字 | ✅ 安全 | より長い強度が求められる場合 |
| SHA-512 | 128文字 | ✅ 安全 | 64bit環境では高速なこともある |
| SHA-1 | 40文字 | ⚠️ 非推奨 | 衝突攻撃が実証済み。古い配布ファイルの照合用途のみ |
| MD5 | 32文字 | ❌ 危険 | 容易に衝突を作れる。セキュリティ用途では使用禁止 |
⚠️ 本ツールはブラウザ標準のWeb Crypto APIを使用しているため、MD5には対応していません(同APIが安全でないアルゴリズムを提供していないためです)。MD5が必要な場合は、配布元にSHA-256の提供を確認するか、コマンドラインツールをご利用ください。
✅ ダウンロードしたファイルを検証する手順
- 配布元の公式ページでハッシュ値を確認します。「SHA256」「チェックサム」「checksum」などと書かれた欄にあります。ダウンロードページと同じ場所にある値を使うことが重要です(配布サイト自体が改ざんされている場合は意味がないため、可能なら公式のGitHubリリースや署名付きの情報源を使います)。
- 上の「ファイル」タブにダウンロードしたファイルをドラッグします。ファイルは端末内で処理され、アップロードは発生しません。
- 公式のハッシュ値を「照合」欄に貼り付けます。一致すれば緑、不一致なら赤で表示されます。
- 不一致だった場合はそのファイルを使わないでください。ダウンロードし直すのが基本です。それでも一致しない場合、配布元に問い合わせます。
参考として、コマンドラインでは次のように確認できます:Windowsは certutil -hashfile ファイル名 SHA256、Macは shasum -a 256 ファイル名、Linuxは sha256sum ファイル名。
❓ よくある質問
- Q. ファイルはアップロードされますか?
- されません。ブラウザ標準のWeb Crypto APIで端末内だけで計算します。機密ファイルでも安全です。
- Q. 大きなファイルも計算できますか?
- 数百MB程度までは問題なく計算できます。ただしブラウザのメモリを使うため、数GBの巨大ファイルではコマンドラインツールのほうが確実です。
- Q. 同じファイルなのにハッシュ値が違います
- 1バイトでも違えば別の値になります。よくある原因は、ダウンロードの失敗、テキストの改行コード(CRLF↔LF)の変換、BOMの有無、末尾の改行です。
- Q. ハッシュ値から元のデータに戻せますか?
- 戻せません。ただし「よくあるパスワード」などは、あらかじめ計算された一覧(レインボーテーブル)と照合して推測される可能性があります。パスワードの保存にはソルトと反復処理が必須です。
- Q. パスワードの安全性を確認したい
- パスワード漏洩チェックで流出リストへの掲載を、パスワード強度チェックで解読にかかる時間を確認できます。