このツールについて
パスワードジェネレーターは、あなたが有効にした文字セット(小文字、大文字、数字、記号)からランダムな文字列を構築します。このツールは Web Crypto API の crypto.getRandomValues からすべての文字を取り出し、棄却サンプリングでインデックスを選択するため、結果は剰余バイアスのない一様分布になります。強度の表示は Shannon エントロピーをビット単位で示し、長さ × log2(プールサイズ) として計算されます。88 文字のプールから生成した 20 文字のパスワードはおよそ 129 ビットで、これはブルートフォース攻撃が試し尽くせる範囲をはるかに超えています。
アカウントごとに固有の認証情報を作成したり、データベースやサービスのパスワードをローテーションしたり、パスワードマネージャーのエントリーを初期化したりするのに使えます。手作業で書き写される可能性があるパスワードでは、まぎらわしい文字(I、l、1、O、0)をオフに切り替え、出力が常に複雑さの要件を満たすように「選択したすべてのセットを必須にする」をオンのままにし、あるいは「10 個生成」を押せば、ボールトにそのまま貼り付けられるバッチを作成できます。
パスワードを解読しにくくするのは長さではなくエントロピーです。1 つの文字セットだけで作られた長いパスワードは、すべてのセットから取り出した短いパスワードよりもはるかに弱いものです。
よくある質問
これらのパスワードはどのように生成されますか — 本当にランダムですか?
各文字はブラウザの暗号学的に安全なランダムソースである crypto.getRandomValues から取り出され、どの文字も他より出やすくならないよう棄却サンプリングを使っています。攻撃者が予測できるようなシードやパターンは存在しません。
ビット単位のエントロピーとは何を意味しますか?
エントロピーは、攻撃者が平均してどれだけの推測を必要とするかを測るものです。長さ × log2(プールサイズ) として計算され、1 ビットごとに作業量が倍になります。128 ビットのパスワードは平均しておよそ 2^127 回の推測を要し、これは計算上、解読が実行不可能です。
ウェブサイトでパスワードを生成しても安全ですか?
はい。すべては JavaScript によってブラウザ内でローカルに実行されるためです。パスワードがネットワーク越しに送信されたり、記録されたり、保存されたりすることは一切ありません。インターネットから切断してもツールが動き続けることを確認すれば、これを確かめられます。