完全無料

MD5 ハッシュ ジェネレーター

テキストやファイルからMD5ハッシュをブラウザ上で即座に生成。無料・プライベート・アップロード不要。

このツールについて

MD5 (メッセージ ダイジェスト 5) は、1991 年に Ronald Rivest によって公開された 128 ビットの暗号化ハッシュ関数です。これは、任意の長さの入力を受け取り、決定論的 (同じ入力から常に同じハッシュが生成される) で固定の 32 文字の 16 進数出力を生成します。また、一方向であり、ハッシュだけから入力を復元することはできません。 MD5 は、暗号化目的で SHA-2 ファミリ関数に置き換えられるまで、1990 年代から 2000 年代初頭まで汎用ハッシュ関数として主流でした。

MD5 は暗号化用途では壊れています。実際の衝突攻撃 (同じハッシュを生成する 2 つの入力を見つける) は 2004 年以来実証されており、選択プレフィックス衝突は現在、汎用ハードウェアで数時間で達成可能です。パスワードのハッシュ化、デジタル署名、証明書のフィンガープリント、または耐衝突性が重要なコンテキストには MD5 を使用しないでください。 SHA-256 と bcrypt が適切な代替品です。

MD5 は、衝突耐性がセキュリティ特性ではない非暗号化チェックサムに引き続き役立ちます。たとえば、偶発的なファイル破損の検出、管理するシステムでのアップロードの重複排除、キャッシュ キーの短い識別子の生成などです。このジェネレーターは、JavaScript MD5 実装を使用してブラウザー内で完全に実行されます。デバイスからの入力はありません。

MD5 ハッシュを生成する理由

迅速なファイル整合性チェックは、依然として最も防御可能な MD5 使用例です。ダウンロード サイトがファイルと一緒に MD5 を公開すると、読者はダウンロードがそのまま到着したことを確認できます。このチェックは、悪意のある改ざんではなく、送信エラーを防御します。高度な攻撃者は、選択した MD5 に一致するファイルを作成できます。ただし、カジュアルな整合性検証には問題ありません。

MD5 は、決定的な短い識別子としても役立ちます。キャッシュ レイヤー、重複排除システム、ETag 生成では、結果が短く、計算が速く、セキュリティ以外の目的には十分であるため、コンテンツを MD5 でハッシュすることがよくあります。新しい設計では SHA-256 または xxHash を優先する必要がありますが、識別子に MD5 を使用する既存のシステムはこの役割において安全ではありません。

使い方

テキストを貼り付けるかファイルをアップロードして、32 文字の 16 進数のハッシュを取得します。

  1. 入力の追加: テキストを貼り付けるか、ファイルをアップロードします。ハッシャーは、文字列、バイナリ ファイル、大きなドキュメントなどの任意の入力を受け入れます。
  2. コンピューティング: MD5 アルゴリズムは、入力を 512 ビット ブロックで処理し、4 ラウンドの非線形関数とモジュラー加算を適用して、128 ビットのダイジェストを生成します。この実装はブラウザ側で行われ、通常の入力ではミリ秒単位で実行されます。
  3. ハッシュを読む: 出力は 32 個の 16 進文字で、128 ビット ダイジェストの標準テキスト表現です。確認または保管のためにコピーしてください。
  4. 期待値と比較する: 公開された参照ハッシュがある場合は、文字ごとに比較します。違いがある場合は、入力が期待したものではないことを意味します。

一般的な使用例

技術的な詳細

MD5 は入力を 512 ビット (64 バイト) ブロックで処理します。各ブロックは 4 ラウンドの操作を通じて 128 ビットの内部状態を更新します。各ラウンドでは、異なる非線形関数、モジュラー加算、およびビット単位の回転が適用されます。最終状態はダイジェストです。

このアルゴリズムにはパディングが必要です。入力には 1 ビット、次に 0 ビット、そして 64 ビットの長さフィールドが追加され、合計の長さが 512 ビットの倍数になります。これにより、すべての入力に長さの接頭辞が付いた一意のエンコーディングが適用されるようになります。

出力はリトルエンディアン順で 16 バイトとして解釈され、32 個の 16 進文字として出力されます。一部のツールは大文字で印刷し、一部は小文字で印刷します。値は同等です。

ベストプラクティス

よくある質問

生成された出力をカスタマイズできますか?
はい。このツールには、特定のニーズに合わせて出力を調整するためのさまざまなカスタマイズ オプションが用意されています。生成する前に設定を調整するか、別のオプションを使用して再生成します。
生成されたコンテンツは無料で使用できますか?
はい。このツールで生成したものはすべて、制限や帰属要件なしで、個人、教育、商業目的で使用できます。
これにはアカウントが必要ですか?
いいえ。このツールはサインアップ、電子メール、登録を必要とせずにすぐに使用できます。ページを開いて生成を開始するだけです。
私の入力データは非公開に保たれますか?
はい。すべての処理はブラウザ内で行われます。入力データと生成された出力が外部サーバーに送信されることはありません。
16 進数の大文字または小文字は正しいですか?
どちらも同等です。ほとんどの実装では、デフォルトで小文字が生成されます。比較では大文字と小文字を区別する必要があります。
私の入力はサーバーにアップロードされていますか?
いいえ、ハッシュ化は完全にブラウザ内で行われます。
MD5 と SHA-1 の違いは何ですか?
SHA-1 は、別の 160 ビット ハッシュ関数です。 SHA-1 も、2017 年時点では暗号化用途では壊れています。どちらもセキュリティ以外の用途には許容されます。衝突耐性が重要な場合には、どちらも使用しないでください。
2 つの異なる入力から同じ MD5 を生成できますか?
はい、それは衝突です。ランダムな衝突は天文学的に起こりそうにありませんが、意図的に構築された衝突は現在では実用的に計算できます。