安全なパスワード生成ツール
強力なランダムパスワード・覚えやすいパスフレーズ・PIN を生成。ブラウザの暗号学的乱数(Web Crypto)で動作し、すべてローカルで生成され、このページから外に出ることはありません。
安全なパスワードとは?
パスワードの本当の強さはエントロピー、つまりそれが持つランダム性のビット数で決まります。予測しにくいほど、攻撃者に必要な試行回数は増えます。エントロピーは 2 つの要素で決まります。選べる文字(または単語)の母集合の大きさと、それをいくつ並べるかです。小さな文字集合から作った短いパスワードは、どれだけ凝って見えても弱く、大きな母集合から作った長いものは、たとえ素朴に見えても強いのです。
同じくらい重要なのが、ランダム性をどう生み出すかです。本ツールはブラウザ内蔵の暗号学的に安全な乱数生成器である Web Crypto API(crypto.getRandomValues)を使い、剰余バイアスを除くためのリジェクションサンプリングを行います。つまり、すべての文字と単語が本当に一様な確率で選ばれます — 予測されうる Math.random() の疑似乱数とは違います。
3 つの生成方法
- ランダム — 大文字・小文字・数字・記号を混ぜた古典的なパスワード。同じ長さなら最も強く、パスワードマネージャーに保存して使うのに最適です。
- 覚えやすい — ランダムな一般単語からなるパスフレーズ(いわゆる「correct-horse-battery-staple」方式)。入力も記憶もしやすく、4 単語以上ならとても強力です。
- PIN — ドアロックや SIM カードなど、数字しか受け付けない機器のための数値コード。
このツールの使い方
- 上部でモードを選びます:ランダム・覚えやすい・PIN。
- 長さを調整し、文字オプションを切り替えます。設定を変えるたびに自動で再生成されます。
- 強度メーターを確認しましょう — 重要なアカウントには最低でも 60–80 ビットのエントロピーを目安に。
- コピーでクリップボードへ、再生成で新しいものを作成します。
よくある質問
- このパスワード生成ツールは安全ですか?
- はい。すべて Web Crypto API を使ってブラウザ内だけで動作します。パスワードはお使いの端末で生成され、ネットワークに送信されることはなく、どこにも記録・保存されません。インターネットを切断しても動作します。
- Math.random() と何が違うのですか?
- Math.random() はセキュリティ向けに設計された疑似乱数で、出力が予測されうるものです。本ツールは暗号学的に安全な crypto.getRandomValues() を使い、リジェクションサンプリングによってすべての文字を真に一様な確率で選び、剰余バイアスをなくしています。
- パスワードはどのくらいの長さにすべきですか?
- パスワードマネージャーで管理するアカウントなら、ランダムな 16–20 文字(または 4–5 単語のパスフレーズ)で十分です — 80 ビットを大きく超えるエントロピーになります。記憶して手入力するパスワードには、4 単語以上の覚えやすいパスフレーズが強くて実用的です。
- パスフレーズとは何で、なぜ使うのですか?
- パスフレーズは「maple-otter-cliff-amber」のように複数のランダムな単語をつないだものです。大きな単語リストから選ぶため 4 単語で十分強いエントロピーになり、ランダムな記号の羅列よりも読みやすく、入力しやすく、覚えやすいのが利点です。
- 強度メーターは何を測っていますか?
- ビット単位のエントロピー — 攻撃者が平均して何回推測する必要があるかの指標 — を推定します。解読時間は毎秒約 100 億回のオフライン高速攻撃を想定しており、オンラインサービスは通常はるかに遅いため、実際の安全余裕はより大きくなります。
- 同じパスワードを使い回してもよいですか?
- 絶対にやめましょう。使い回すと、ある 1 つのサイトが侵害されただけで、同じパスワードを共有するすべてのアカウントが危険にさらされます。サービスごとに固有のパスワードを生成し、信頼できるパスワードマネージャーで管理してください。