ハッシュ生成

MD5・SHA-1・SHA-256ハッシュを生成

MailDropのハッシュ生成ツールは、入力した任意のテキストのMD5、SHA-1、SHA-256、SHA-512ダイジェストを、一度にすべて、完全にブラウザ内で計算します。ボタンを押す必要はありません。入力するそばから4つのハッシュが自動的に更新されるため、たった1文字の変更で全く異なるダイジェストが生まれる様子をリアルタイムで観察できます。SHAファミリーは速度と正確性のため、ブラウザ内蔵のWebCrypto APIで計算されます。

ハッシュはデータ整合性とソフトウェア開発の主力です。ダウンロードしたファイルのチェックサムが公開値と一致するか検証したり、キャッシュキーやコンテンツ識別子を生成したり、2つのテキストを目視せずに比較したり、ダイジェストを扱うコードのテストフィクスチャを作ったりできます。よく使われる4つのアルゴリズムが並んで表示されるため、長さと形式を突き合わせて、出所不明のハッシュがどのアルゴリズムで生成されたのかを特定するのも簡単です。

ハッシュ化はクライアントサイドで行われるため、入力したテキストがアップロード、記録、保存されることはなく、機密性の高い入力もお使いの端末にとどまります。ツールは無料・登録不要で、MailDropの一時メールと同じプライバシー重視のツールキットの一部です。

1. テキストを入力または貼り付ける

任意のテキストを入力欄に入れます。単語でも、試しているパスフレーズでも、コードのブロックでも、エディタから貼り付けたファイルの内容でも構いません。実用上問題になる長さの制限はありません。

2. ハッシュが表示されるのを見る

MD5、SHA-1、SHA-256、SHA-512のダイジェストは、送信ボタンなしで入力と同時に自動計算されます。キーを打つたびに4つの値すべてが、ブラウザ内で即座に再計算されます。

3. 必要なアルゴリズムを選ぶ

セキュリティに関わる用途にはSHA-256かSHA-512を使い、MD5とSHA-1はレガシーなチェックサムとの照合や、それらを要求する既存システムとの互換性のためだけに使いましょう。4つの出力はいずれも標準的な小文字の16進表記です。

4. ダイジェストをコピーする

必要なハッシュをコピーして、比較、スクリプト、テストフィクスチャ、ドキュメントに貼り付けます。データ整合性を検証するには、同じ入力を両方の場所でハッシュ化し、ダイジェストが完全に一致することを確認してください。

よくある質問

ハッシュ化したテキストはサーバーに送信されますか?

いいえ。ハッシュ化はすべてブラウザ内のクライアントサイドで実行され、SHAアルゴリズムは最新ブラウザに組み込まれたWebCrypto APIが処理します。入力内容が送信、保存、記録されることはないため、機密性の高い文字列も安全にハッシュ化できます。ページ読み込み後にインターネット接続を切ってもツールは動き続けます。

どのハッシュアルゴリズムを使うべきですか?

新規の用途にはSHA-256かSHA-512を使ってください。どちらも現行の耐衝突性を持つ標準で、整合性チェックやデジタル署名に適しています。MD5とSHA-1は暗号学的に破られており、攻撃者が同じダイジェストを持つ異なる入力を作れるため、古いシステムとの互換性や、キャッシュキーのようなセキュリティ以外の用途に限定しましょう。

ハッシュを逆算して元のテキストを知ることはできますか?

直接はできません。ハッシュ関数は設計上一方向であり、ダイジェストを入力に戻すアルゴリズムは存在しません。ただし、攻撃者は推測できます。よくあるパスワードや短い文字列は事前計算されたルックアップテーブルで見つかってしまうため、実際のシステムでは素のハッシュを保存せず、パスワードにソルトとストレッチングを施すのです。

入力のわずかな変更でハッシュが全く変わるのはなぜですか?

これはアバランシェ効果と呼ばれる、暗号学的ハッシュ関数に意図的に持たせた性質です。入力の1ビットを反転させると出力のおよそ半分のビットが反転するため、似た入力からも無関係なダイジェストが生まれます。これこそが、データのごくわずかな破損や改ざんの検出にハッシュが信頼できる理由です。

一時メールとどう組み合わせられますか?

アカウントシステムをテストする開発者は、フィクスチャ用、保存値の比較用、ハッシュ化された識別子の挙動確認用にダイジェストをよく必要とします。この生成ツールとMailDropの捨てメアドの受信箱を組み合わせれば、個人のメールアドレスをテスト用データベースに一切入れることなく、ハッシュも含めたサインアップ・認証フロー全体を検証できます。

ツール