このパスワード生成器の特徴は何ですか?
これはプライバシー重視の、ブラウザのみで動作するパスワード ジェネレーターです。すべてのランダムバイトは、crypto.getRandomValues を介してオペレーティングシステムの暗号学的乱数生成器から取得されます — Math.random は決して使いません。ページはパスワード生成のためにネットワークリクエストを一切行わず、生成された値はあなたのタブから出ることはありません。DevTools の Network パネルを開いて「生成」をクリックしてみてください: 何も動きません。
このパスワード生成器はどのように機能しますか?
このツールはブラウザ内の JavaScript で完全に動作します。サーバーへの往復はなく、パスワードを運ぶ解析ビーコンもなく、ページ読み込み後のリモートフォントリクエストもありません。
- OS の CSPRNG からシードを取得。すべてのランダムな整数は
crypto.getRandomValues(new Uint32Array(n))から取得されます — ブラウザが TLS の鍵素材やcrypto.randomUUIDに使用しているのと同じ暗号学的に安全なソースです。Math.randomは意図的に決して呼び出されず、プロジェクト全体の grep でそれを強制しています。 - 文字セットの組み立て。ランダム文字モードでは、有効な文字クラス — 大文字、小文字、数字、記号 — を結合して 1 つのアルファベットを作ります。「紛らわしい文字を除外」トグルは見た目が似ている字形(
0、O、o、1、l、I、|、バッククォート)を取り除くので、声に出して読んだり手で書き写したりしてもパスワードが曖昧になりません。 - バイアスのない索引サンプリング。32 ビット符号なし整数を素朴に(剰余で)文字セットの索引に対応付けると、文字セットのサイズが 2^32 を割り切らない場合に小さなバイアスが生じます。このツールは棄却サンプリングを用います: 剰余の余り部分に入ったサンプルは破棄して再抽選するので、文字セット内のどの文字も等確率になります。
- 一括生成。ランダム文字モードでは、1 回のクリックで 1 〜 50 個のパスワードを要求できます。各結果は独自のエントロピー推定値、強度区分、コピーボタンとともに行として表示されます。「すべてコピー」ボタンは各行を改行で結合するので、CSV や保管庫のインポートファイルに貼り付けられます。
- パスフレーズモード。モード切替を反転すると、ページは初回利用時に EFF Short Wordlist #1(パブリックドメインの英単語 1296 語)を遅延フェッチします。5 単語のパスフレーズで約 51.7 ビットのエントロピーになります — 日常的なアカウントには十分で、9 文字のランダムな文字列よりはるかに記憶しやすいです。その同一オリジンの 1 回のフェッチの後、ページは再び沈黙します。
このパスワード生成器を使う理由は何ですか?
- パスワードはブラウザの外に出ません。サーバーエンドポイントも、値を運ぶ解析コールも、リモートフォントも、テレメトリもありません。DevTools を開き、パスワードを生成して、Network パネルが空のままであることを確認してください。
- 構造的に暗号学的に安全な乱数性。すべての整数は
crypto.getRandomValuesから取得され、剰余バイアスに対しては棄却サンプリングを行います。ブラウザのパスワード ジェネレーターで最もよくあるバグ — エントロピーにMath.randomを使う — は、ここでは構造的に不可能です。 - 2 つのモード、1 つのツール。ランダム文字モードはパスワード マネージャー向けの高エントロピー文字列を生成し、パスフレーズモードは EFF Short Wordlist #1 に裏付けされた人間が覚えやすい xkcd 風の文字列(
correct-horse-battery-staple)を生成します。両者ともプライバシーモデルは同じです。 - 透明なエントロピー。生成された各行はビット単位のエントロピーと明確な強度ラベルを表示するので、12 文字で記号なしの文字列が実際に 5 単語のパスフレーズと同じくらい強いのかが一目で分かります。宣伝文句ではなく、数字だけです。
生成されたパスワードの一般的な用途は何ですか?
新しいランダムな秘密が必要なときはいつでも、信頼の表面積を最小化するのがこのツールです:
- パスワード マネージャーのインポート。強力なパスワードを 50 個一括で生成し、「すべてコピー」をクリックし、保管庫の CSV インポートに貼り付けます。値はどのサーバーも往復していないため、生成から保管までの間に漏洩する余地がありません。
- マスターパスフレーズ。パスフレーズモードに切り替え、6 〜 7 単語を選び、必要なら各単語の頭文字を大文字にすれば、書き留めずに本当に覚えられる高エントロピーの文字列が手に入ります。6 単語で約 62 ビットのエントロピー — オフライン攻撃の閾値をはるかに上回ります。
- 個人プロジェクトの API キーとトークン。Webhook の署名鍵や開発用データベースのパスワードとして、使い捨ての共有秘密が必要ですか? ここで 32 文字の記号豊富な文字列を生成し、一度コピーすれば、転送中にそれが存在した唯一の場所はあなた自身のブラウザタブの中だけです。
生成されたパスワードの例はどのようなものですか?
長さを 16 に設定し、4 つの文字クラスをすべて有効にしたまま「生成」をクリックしてください。文字セットは 26 + 26 + 10 + 32 = 94 文字なので、生成された各文字は log2(94) ≈ 6.55 ビットのエントロピーを持ちます。16 文字で約 104.9 ビット — 80 ビットの「非常に強い」閾値をはるかに上回り、現在のハードウェアでは実質的に総当たり不可能です。次にパスフレーズモードに切り替え、デフォルトのハイフン区切りで 5 単語を選択します: cocktail-sprig-aspect-magenta-tonic は log2(1296) × 5 ≈ 51.7 ビットを持ちます。覚えやすく、打ちやすく、平均的な人間が選ぶパスワードよりも強力です。
生成して、コピーして、次に進む。ページはサーバーを見ず、パスワードはタブから出ず、エントロピーは第一原理から計算されます。それがすべての約束です。