ハッシュ生成ツール
MD5・SHA-1・SHA-256・SHA-384・SHA-512 のハッシュ値をリアルタイムで計算。すべてブラウザ内で完結します。
テキストからハッシュ値を生成するには、SHA-256・SHA-512・SHA-1・SHA-384・MD5 のいずれかのアルゴリズムを選び、文字を入力または貼り付けるだけです。入力した瞬間にハッシュ値が表示されます。SHA 系はブラウザ標準の Web Crypto API、MD5 は spark-md5 ライブラリでブラウザ内計算するため、入力内容がサーバーに送信されることは一切ありません。入力が空のときは空文字列のハッシュではなくプレースホルダーを表示し、誤認を防ぎます。
SHA-256 — Web Crypto API, runs entirely in your browser.
ハッシュ値を生成する手順
- 1
アルゴリズムを選ぶ
SHA-256・SHA-512・SHA-1・SHA-384・MD5 から選択します。整合性チェックや電子署名などのセキュリティ用途では SHA-256 または SHA-512 を選びましょう。MD5 は非セキュリティのチェックサム用途に限定してください。
- 2
テキストを入力または貼り付ける
入力欄に任意のテキストを入力すると、1 文字ごとにリアルタイムでハッシュ値が更新されます。SHA 系はブラウザの SubtleCrypto.digest() を、MD5 は spark-md5 を使い、すべてブラウザ内で計算します。
- 3
ハッシュ値をコピーする
コピーボタンを押すと、16 進数のハッシュ値をクリップボードにコピーできます。出力は小文字の 16 進文字列で、コードやターミナル、比較ツールにそのまま貼り付けられます。
- 4
検証・比較する
ファイルの整合性を確認するには、提供元と同じアルゴリズムでハッシュ値を計算し、2 つの 16 進文字列を 1 文字ずつ比較します。入力が 1 ビットでも違えば、まったく異なるハッシュ値になります。
ハッシュ生成に関するよくある質問
- ハッシュ(ハッシュ値)とは何ですか?
- ハッシュ値とは、任意の長さのデータを固定長の文字列に変換した値で、ハッシュ関数によって計算されます。同じ入力からは必ず同じハッシュ値が得られ、入力が 1 ビットでも変われば結果はまったく異なる値になります。元のデータをハッシュ値から復元することは事実上できないため、パスワード保存やファイルの改ざん検知に利用されます。
- ハッシュ値の生成方法を教えてください
- 上部のアルゴリズム選択でハッシュ方式(SHA-256 など)を選び、入力欄にテキストを入力または貼り付けるだけです。入力した瞬間に 16 進数のハッシュ値が表示されます。コピーボタンを押すと結果をクリップボードにコピーでき、コードやターミナル、比較ツールにそのまま貼り付けられます。
- SHA-256 のハッシュを生成するにはどうすればよいですか?
- アルゴリズム選択で SHA-256 を選び、テキストを入力または貼り付けると、64 文字(256 ビット)の 16 進ハッシュ値が即座に生成されます。SHA-256 はブラウザ標準の Web Crypto API で計算されるため高速で、改ざん検知や電子署名の用途に適しています。
- ハッシュ生成にはどのアルゴリズムを使うべきですか?
- セキュリティ用途(パスワード・署名・整合性チェック)では SHA-256 または SHA-512 を推奨します。SHA-384 は TLS 1.3 の暗号スイートで使われます。SHA-1 は 2017 年以降ほとんどの用途で非推奨です。MD5 は脆弱性が確認されているため、偶発的な破損を検出するチェックサムなど非セキュリティ用途に限って使用してください。
- SHA-256 と MD5 の違いは何ですか?
- SHA-256 は 256 ビットのダイジェストを生成し、衝突耐性が高いため整合性検証・電子署名・TLS に適しています。一方 MD5 は 128 ビットで、意図的に衝突を作れることが判明しており暗号学的に破られています。MD5 は偶発的な破損のチェックサムなど、セキュリティを伴わない用途に限定してください。
- ハッシュ関数とは何で、どのように使われますか?
- ハッシュ関数とは、任意のデータを固定長のハッシュ値に変換する関数です。同じ入力からは同じ出力が得られ、わずかな入力差で出力が大きく変わる(雪崩効果)、出力から入力を逆算できない(一方向性)といった性質を持ちます。これらの性質を利用して、パスワードの安全な保存、ファイル整合性の検証、データ構造(ハッシュテーブル)の高速検索などに使われます。
- 各アルゴリズムのハッシュ値の長さはどのくらいですか?
- MD5 は 128 ビット(16 進 32 文字)、SHA-1 は 160 ビット(40 文字)、SHA-256 は 256 ビット(64 文字)、SHA-384 は 384 ビット(96 文字)、SHA-512 は 512 ビット(128 文字)です。ダイジェストが長いほど衝突耐性が高くなります。
参考資料
- FIPS 180-4 セキュアハッシュ標準(SHA)
SHA-1・SHA-224・SHA-256・SHA-384・SHA-512 を定義する NIST の標準仕様。本ツールで使う SHA ファミリーの正式な仕様書です。
- RFC 1321 — MD5 メッセージダイジェストアルゴリズム
RSA Data Security が公開した MD5 の原典となる IETF 仕様。参考として有用ですが、MD5 はセキュリティ用途では破られている点に注意してください。
- MDN — SubtleCrypto.digest()
本ツールが SHA-1・SHA-256・SHA-384・SHA-512 の計算に使う、ブラウザ標準の Web Crypto API メソッド。サーバー通信なしでハッシュ値を算出します。