Hash Value Generator

ハッシュ値生成ツール

ハッシュ値生成ツールは、SHA-256・SHA-512・SHA3・MD5・BLAKE2b/3など主要なアルゴリズムに対応した無料ツールです。文字列やファイルのハッシュ計算・HMAC生成に加えて、「ハッシュ値が一致しない原因」を文字コード・改行・BOMごとに自動診断できます。ファイルはサーバーに送信されず、すべてブラウザ内で処理されます。

使い方

  1. 上部のタブから用途(文字列ハッシュ・照合と原因診断・HMAC生成・ファイルハッシュ)を選びます。
  2. 文字列を入力するか、ファイルをドラッグ&ドロップします。使いたいアルゴリズムにチェックを入れます。
  3. 文字コード・改行コードを指定すると、ハッシュ値がどう変わるかを確認できます。
  4. 「ハッシュ値を生成」ボタンを押すと、ハッシュ値・文字数・ビット数が一覧表示されます。
  5. 期待するハッシュ値を貼り付けると、一致する文字コード・改行条件を自動で診断します。
  6. 各ハッシュ値はコピーでき、生成履歴はページ下部に自動保存されます。

ハッシュ値とは・アルゴリズムの選び方

ハッシュ値とは・アルゴリズムの選び方

ハッシュ値とは、任意のデータ(文字列やファイル)から一定の長さの値を計算する仕組みで、データの改ざん検知・ダウンロードの破損確認・パスワードの保存・電子署名など幅広く使われます。入力が1バイトでも変わればハッシュ値は大きく変わり、同じ入力からは必ず同じハッシュ値が得られます。ここでは主要な用途とアルゴリズムの選び方を解説します。

1. 文字列からハッシュ値を生成する

「文字列ハッシュ」タブに文字列を入力し、アルゴリズムを選ぶだけでハッシュ値が表示されます。複数のアルゴリズムに同時にチェックを入れれば一括で生成でき、SHA-256を中心とした「かんたん表示」と、選択した全アルゴリズムを見る「詳細表示」を切り替えられます。

初期選択はSHA-256です。現在もっとも広く使われている安全なハッシュで、迷ったらSHA-256を選べば問題ありません。

2. アルゴリズムの選び方

用途によって適したアルゴリズムは異なります。

  • 一般的な改ざん検知・署名・保存:SHA-256(標準的で安全)
  • より高い安全性や長いハッシュが必要:SHA-512 / SHA3-512
  • SHA-2とは設計の異なる方式が必要:SHA3-256 / SHA3-512
  • 高速処理・大きなファイル:BLAKE2b / BLAKE3
  • 単純な誤り検出(チェックサム):CRC32
  • 古いシステムとの互換:MD5 / SHA-1(旧方式・セキュリティ用途は非推奨)

MD5とSHA-1には既知の脆弱性があり、改ざん検知や署名などのセキュリティ目的には使うべきではありません。NISTもSHA-1からSHA-2またはSHA-3への移行を推奨しています。互換性のためだけに残されている旧方式だと理解して使い分けてください。

3. 文字コード・改行コードでハッシュ値が変わる理由

ハッシュ関数は「文字」ではなく「バイト列」を対象に計算します。そのため、同じ見た目の文字列でも次の違いによってバイト列が変わり、ハッシュ値も完全に変わります。

  • 文字コード(UTF-8・UTF-16LE・UTF-16BE・ASCII など)
  • BOM(バイトオーダーマーク)の有無
  • 改行コード(LF・CRLF・CR)
  • 末尾の改行の有無
  • 前後の空白の有無

このツールでは、文字コードや改行コードを指定した上でハッシュ値を生成でき、入力バイト数・改行コード・BOMの有無も画面に表示します。「なぜ手元で計算したハッシュ値が公式サイトの値と違うのか」を確かめるのに役立ちます。

4. ハッシュ値が一致しない原因を自動診断する

このツールの中心機能が「照合・原因診断」です。文字列と、公式サイトなどに掲載されている期待するハッシュ値を入力すると、文字コード・BOM・改行コード・末尾改行・前後空白といった条件を自動的に切り替えながらハッシュ値を計算し、「どの条件なら一致するか」を探し出して表示します。

重要なのは、入力内容を勝手に変換しないことです。各候補を別々に計算して比較するため、一致した瞬間に「文字コードはUTF-8、改行コードはCRLF、末尾改行はあり」といった具体的な条件が分かります。SHA-256が一致しない、MD5が一致しない、改行でハッシュ値が変わる、HMAC-SHA256が合わない、といった悩みをまとめて解決できます。

5. ファイルのハッシュ値と改ざん確認

「ファイルハッシュ」タブでは、ファイルをドラッグ&ドロップまたは選択するだけでハッシュ値を計算します。ファイル名・サイズ・MIMEタイプ・更新日時・計算時間・処理速度も表示されます。配布元が公開しているハッシュ値を「照合値」欄に貼り付ければ、ダウンロードしたファイルが破損・改ざんされていないかを自動で判定できます。

ファイルの内容はサーバーへ送信されず、すべてブラウザ内で処理されるため、機密ファイルでも安心して利用できます。

6. HMACの生成と署名照合

HMACは、メッセージとシークレットキーからハッシュ値を計算する仕組みで、APIリクエストやWebhookの真正性検証によく使われます。「HMAC生成」タブでは、HMAC-SHA256・SHA384・SHA512に対応し、キーをテキスト・Hex・Base64のいずれの形式でも入力できます。既存の署名を貼り付ければ、生成結果と一致するかどうかを照合でき、署名が合わない原因の切り分けに役立ちます。

よくある質問(FAQ)

Q. SHA-256のハッシュ値が公式サイトの値と一致しません。なぜですか?
A. 文字コード(UTF-8かUTF-16か)、改行コード(LFかCRLFか)、末尾改行やBOMの有無、前後の空白が違うと、同じ文字列でもハッシュ値は変わります。「照合・原因診断」タブに文字列と期待するハッシュ値を入力すると、どの条件なら一致するかを自動で探索して原因を特定します。
Q. 対応しているアルゴリズムは何ですか?
A. SHA-256・SHA-384・SHA-512・SHA3-256・SHA3-512・MD5・SHA-1・CRC32・BLAKE2b・BLAKE3に対応しています。初期選択はSHA-256です。
Q. MD5やSHA-1は安全ですか?
A. セキュリティ目的では非推奨です。どちらも既知の脆弱性があり、改ざん検知や署名には適しません。NISTもSHA-2またはSHA-3への移行を推奨しています。古いシステムとの互換のためだけに残された旧方式です。
Q. ファイルはサーバーにアップロードされますか?
A. されません。ファイルのハッシュ計算はすべてブラウザ内で行われ、内容がサーバーに送信されることはありません。機密ファイルでも安心して利用できます。
Q. ダウンロードしたファイルが壊れていないか確認できますか?
A. はい。「ファイルハッシュ」タブでファイルをドロップし、配布元のハッシュ値を照合値欄に貼り付けると自動で一致判定します。一致すれば破損・改ざんはありません。
Q. HMACは生成できますか?
A. はい。「HMAC生成」タブでHMAC-SHA256/384/512を生成でき、キーはテキスト・Hex・Base64で入力できます。既存の署名との照合も可能です。
Q. HexとBase64はどう違いますか?
A. どちらも同じハッシュ値を文字で表したものです。Hexは1バイトを2文字(SHA-256なら64文字)、Base64はより短い文字数で表します。照合先の形式に合わせて出力を切り替えてください。
Q. BLAKE2bやBLAKE3とは何ですか?
A. SHA-2/SHA-3と同等以上の安全性を持ちつつ高速なハッシュ関数です。特にBLAKE3は大きなファイルのハッシュを高速に計算でき、近年のソフトウェア配布などで採用が進んでいます。

関連ツール

注意事項

このツールは無料でご利用いただけます。ハッシュ計算はすべてブラウザ内で行われ、入力内容やファイルがサーバーに送信されることはありません。MD5・SHA-1は旧方式であり、セキュリティ目的での使用は推奨されません。重要な判断には専門家への確認をおすすめします。

※このプログラムはPHP8.2.22にて作成、動作確認を行っております。
※ご利用下さっている皆様のご意見・ご要望(改善要望)をお寄せください。