テキストハッシュ生成

概要

Hash Textは任意のテキスト入力に対して8種類のハッシュ値を同時に計算し、入力するたびにすべての結果をリアルタイムで更新します。MD5・SHA1・SHA224・SHA256・SHA384・SHA512・SHA3・RIPEMD160に対応しており、すべてブラウザ内でローカル計算されます。各結果行にはワンクリックでコピーできるボタンが付いています。

同じ入力でも大きく異なる出力

アルゴリズム間の長さの違いを示すために、hello world を各形式でハッシュした例を示します。

MD5:      5eb63bbbe01eeed093cb22bb8f5acdc3     (16進数32文字)
SHA1:     2aae6c69bc0b4ab6db7f39be3e...        (16進数40文字)
SHA256:   b94d27b9934d3e08a52e52d7d...          (16進数64文字)
SHA512:   30d8ac7...                            (16進数128文字)
RIPEMD160:98c615784ccb5fe5936fbc0cbe...        (16進数40文字)

雪崩効果により、1文字の違いでも出力は完全に別物になります。hello worldhello World のSHA256値には共通点が一切ありません。

どのアルゴリズムを使うべきか

セキュリティ用途に適している

  • SHA256 — デジタル署名・ブロックチェーン・整合性検証の汎用的な第一選択
  • SHA512 — セキュリティマージンを重視する場合、衝突耐性がより高い
  • SHA3 — SHA-2と異なる設計原理(Keccak);将来を見据えたアプリに向いている

非セキュリティ用途のみ

  • MD5 — ファイルの簡易整合性確認・キャッシュキー生成・非セキュリティな一意ID
  • SHA1 — 旧システムとの互換性(GitのオブジェクトID・古いプロトコル)
  • RIPEMD160 — Bitcoinアドレス生成(SHA256と組み合わせて使用)

これらのアルゴリズムでパスワードを保護することはできない

パスワードをMD5や任意のSHA系でハッシュして保存する方法は安全ではありません。平文のハッシュのみが保存されている場合、レインボーテーブル攻撃で一般的なパスワードを数秒で解読できます。パスワードの保存には、そのために設計された低速でソルト付きのハッシュ関数 — bcryptやArgon2 — が必要です。このツールの汎用ハッシュ関数では代替できません。