0

Diceware パスフレーズ生成ツール — ランダム単語パスフレーズ

Diceware 方式で、本当にランダムな単語を組み合わせて強力で覚えやすいパスフレーズを生成します。真の暗号論的ランダム性を用い、実際のビットエントロピーを正直に表示します。

🔒 ブラウザ内で完全に処理されます。ここに入力した内容はアップロードされません。

6
処理中... 0%
安全なランダム単語を生成中
完了

結果

このツールは、Diceware 方式でパスフレーズを生成します。入力が難しく、さらに記憶しにくいランダム文字の密集した文字列の代わりに、独立にランダムに選ばれた複数の一般的な単語を連結します。「forest-comet-lantern-guitar-oasis-thistle」のようなパスフレーズは、実際に計算可能なエントロピーを持ちながら、人間が音読したり、スマートフォンのキーボードで入力したり、数回の試行で記憶したりできるものになります。これこそが、Diceware スタイルの生成法が意図したトレードオフです。

ランダム性こそが本質であるため、ここでは真剣に扱われています。各単語は、ブラウザの crypto.getRandomValues() 暗号論的乱数生成器を用い、毎回の抽出で適切な棄却サンプリングを行って選ばれます。生の 32 ビット乱数値は、単語リストの長さで割り切れる範囲に入った場合のみ受け入れられ、余った半端な範囲の値は破棄して再抽選されます。このステップを省き、単純に value % wordlistLength で計算すると、インデックス番号の小さい単語が大きい単語よりわずかに有利になるという、素朴な実装が黙って導入してしまいがちな微妙な統計的偏りが生じます。この生成ツールは、決してそのような近道をしません。

エントロピーに対する正直さは、設計上のもう一つの柱です。付属の単語リストには、一意で曖昧さのない日常的な英単語が 1,821 語含まれています。これは十分に大きく代表的なリストですが、古典的な Diceware プロジェクトで使われている特定の 7,776 語のリストとは異なるため、そのリストにのみ当てはまる有名な「1 単語あたり 12.9 ビット」という数字を、このツールが主張することは決してありません。代わりに、1 単語あたりのエントロピーは log2(リストの長さ) としてリアルタイムに計算され、ここでは約 10.8 ビットになります。画面上の結果には常に完全な計算式 ― 単語数 × 単語あたりのビット数 + 追加要素の正直な寄与分 ― が表示されるため、マーケティング的な数字を信用するのではなく、合計値がどのように導き出されたのかを正確に確認できます。

オプションの切り替えも、同じ誠実さをもって扱われます。「各単語を大文字化」は、毎回同じように適用される固定的かつ決定的なルールであるため、実際のエントロピーはまったく追加されません。どの文字が大文字か分からなくても、ルールを知っている攻撃者には何の利得もないからであり、そのことをツールは率直に明示します。一方、「ランダムな 2 桁の数字を追加」は、等確率の 100 通りの値から行われる真にランダムな追加抽選であり、単語のエントロピーに加えて実際に約 6.6 ビットが追加されることが明示されます。すべての計算と描画はサーバーを介さずブラウザ内でローカルに実行されるため、生成されたパスフレーズがあなた以外の誰かに見られることは決してありません。