パスワード生成ツール
ブラウザの暗号論的乱数からパスワードを生成します。どこにも送信されず、記録もされません。エントロピーの表示で実際の強度も確認できます。
`Math.random` ではない本物の乱数
すべての文字は暗号論的に安全な `crypto.getRandomValues` から取得し、棄却サンプリングで偏りのない分布にしています。`Math.random` は予測可能で、それを使って作られたパスワードが実際に復元された事例もあります。ここでは使いません。
複雑さより長さ
各生成に表示されるエントロピーは強度の率直な指標で、長さ × 1 文字あたりのビット数です。記号を必須にするより 4 文字増やすほうが遥かに効果があります。通常のアカウントで 60 ビット以上、他の認証情報を守るものは 80 ビット以上を目安にしてください。
紛らわしい文字を除くかどうか
`l` `I` `O` `0` `1` を除外すると、画面から書き写したり読み上げたりする際の間違いを防げます。パスワードマネージャーとログインフォームの間だけを行き来するなら残して構いません。除外するぶん文字種はわずかに減ります。
よくある質問
パスワードはサーバーで生成していますか?
いいえ。ここが最も重要な点です。貼り付けた内容がブラウザの外に出ることはありません。ページは小さな JavaScript を読み込むだけで、計算はすべて手元の端末で行われます。送信先のサーバーそのものが存在しません。 サーバーで動くパスワード生成器は、仕組み上あなたのパスワードを見ています。このページにはそれができません。読み込み後のネットワーク通信はなく、ブラウザの開発者ツールで確認できます。
パスワードは何文字にすべきですか?
複数の文字種を混ぜた 20 文字が妥当な既定値で、100 ビットを大きく超えるエントロピーになります。実際の制約はサイト側の受け入れ可能な長さで、いまだに 16 文字上限や記号不可のところもあります。上限が短いサイトは、そのセキュリティ方針を推し量る材料にもなります。
パスワードマネージャーは使うべきですか?
使うべきです。すべて異なるランダムなパスワードは、何かが覚えていてくれる前提でしか運用できません。可能ならマネージャー内で直接生成し、その外で必要なときにこうしたツールを使い、生成したらすぐ保存してください。
パスフレーズのほうが良いですか?
複数のランダムな単語は入力も記憶もしやすく、大きな単語リストから機械的に選ぶ限り同等に強力です。手で頻繁に打ち込む必要があるものには、パスフレーズのほうが適していることが多いです。