パスワード生成
ここで作られるパスワードはすべてブラウザー内で生成され、外には一切出ません。サーバーと通信する生成ツールとは、自分が作ったものを知っている生成ツールのことです。
この生成ツールでできること
パスワードが持ちこたえるかどうかは2つで決まります。文字数と、各位置に入り得た文字の種類数です。これを掛け合わせるとビット数が出ます。2つのパスワードを比較できる唯一の値がこれです。このページは「強い」といった言葉を当てずっぽうに出すのではなく、その数値を示します。
使い方
- 1 長さを設定します。動かすとバーとビット数がその場で変わります。
- 2 文字グループを選びます。記号を外すとビット数が減り、その減り具合が表示されます。
- 3 「生成」を押し、気に入ったものをコピーします。そのままパスワード管理ツールに貼り付けてください。
エントロピー1ビットの意味
ビットが1つ増えるたびに、攻撃側の作業量は倍になります。下の表は同じ計算を4つのよくある文字種で示したもので、意外に思われる事実を明らかにします。小さな文字種の長いパスワードは、大きな文字種の短いパスワードにほぼ必ず勝ちます。
| 文字種 | 8 文字 | 12 文字 | 20 文字 |
|---|---|---|---|
| 数字のみ (10) | 27 | 40 | 66 |
| 小文字のみ (26) | 38 | 56 | 94 |
| 英数字 (62) | 48 | 71 | 119 |
| 記号を含むすべて (76) | 50 | 75 | 125 |
「各グループから1文字」はどう実装しているか
よくある近道は、ランダムなパスワードを作ったあとで規則を満たすようにいくつかの位置を上書きする方法です。これはその位置を予測可能にし、結果を弱くします。ここでは先に必要な各グループから1文字ずつ引き、残りを統合した文字プールから埋め、全体をシャッフルします。どの位置も、それがどのグループ由来かを示しません。
ランダム性はどこから来るのか
端末の暗号学的乱数からです。当サイトの抽選ツール群と同じ処理を通しています。その処理は剰余ではなく棄却サンプリングで添字を選びます。単純な剰余では小さい添字がわずかに多く出てしまい、パスワードではそれが攻撃者の探索空間を静かに狭めるからです。
生成されたパスワードは仕事の半分
ここまでランダムなパスワードは覚えられません。そしてそれこそが狙いです。置き場所はパスワード管理ツールであって、頭の中でもメモでもありません。どれほど強いパスワードでも複数のサイトで使い回せば強さは帳消しになります。一度の流出が、それを共有するすべてのアカウントを開けてしまうからです。