パスワード生成
ローカルで強力なパスワード生成
読み込み中…
このツールは役に立ちましたか?
このツールについて
希望の長さと文字種を選んでランダムなパスワードを生成します。crypto.getRandomValues()で暗号学的に安全な乱数を取り出し、剰余演算による偏りをなくすため範囲外の値は捨てて引き直す方式(棄却サンプリング)を使います。l、I、O、0、1のように紛らわしい文字は文字集合からあらかじめ除外しています。
使い方
- 長さスライダー(8〜64文字)でパスワードの長さを決めます。
- 小文字・大文字・数字・記号のチェックボックスで含める文字種を選びます。
- 生成個数(1/3/5/10)を選ぶとその数だけ一度に生成され、バーで大まかな強度(ビット数)が表示されます。
- 再生成ボタンで新しい値を作り、コピー ボタンで欲しいパスワードを取得します。
よくある質問
- このパスワードはどれくらい安全な乱数で作られていますか?
- Math.randomではなくcrypto.getRandomValues()を使っています。剰余演算による特定文字への偏りを防ぐため、範囲外の乱数は捨てて引き直す方式を使っています。
- l、I、O、0、1のような文字が見当たらないのはなぜですか?
- 小文字のlと大文字のI、大文字のOと数字の0、数字の1のようにフォントによって紛らわしい文字は、文字集合から完全に除外しています。そのため手で書き写すときのミスが減ります。
- 画面に出るビット数は何を意味しますか?
- 選んだ文字種の数と長さから計算したおおよそのエントロピーです。数値が大きいほど総当たり攻撃に必要な試行回数が指数関数的に増えることを意味し、72ビット以上は「強い」と表示されます。
- 生成されたパスワードはサーバーに保存・送信されますか?
- いいえ。すべてブラウザ内で生成され、サーバーには送信されません。
このページで作ったパスワードはサーバーには送信されませんが、画面を開いたままにすると他の人に見られる可能性があります。実際に使うパスワードは生成後すぐ安全な場所に保存し、画面からは消してください。