🎲生成されたパスワード
情報量(エントロピー)から強度を判定しています。
⚙️生成条件
システムが受け付けない記号があるときに指定します。
📋まとめて生成
🎯用途別プリセット
パスワードは crypto.getRandomValues() による暗号論的擬似乱数で生成し、剰余による偏りを避けるため範囲外の値を捨てる方式(棄却サンプリング)を使っています。
生成結果がサーバーに送られることはありません。
暗号論的乱数で作る、安全なランダム文字列
情報量(エントロピー)から強度を判定しています。
システムが受け付けない記号があるときに指定します。
パスワードは crypto.getRandomValues() による暗号論的擬似乱数で生成し、剰余による偏りを避けるため範囲外の値を捨てる方式(棄却サンプリング)を使っています。
生成結果がサーバーに送られることはありません。
パスワード生成ツールは、推測されにくいランダムな文字列をその場で作るツールです。文字数と使う文字の種類を指定すると、条件に合ったパスワードが生成されます。
自分で考えたパスワードは、どうしても意味のある単語や規則的な並びに寄ってしまい、辞書攻撃で破られやすくなります。「Password1!」のように記号と数字を足しただけの形は、攻撃側の辞書に必ず登録されています。乱数で作った文字列にはこうした偏りがありません。
このツールは crypto.getRandomValues() による暗号論的擬似乱数を使っています。Math.random() は生成される値の系列が予測可能で、パスワードの生成には適していません。さらに、乱数を文字数で割った余りをそのまま使うと特定の文字がわずかに出やすくなるため、範囲外の値を捨てて引き直す方式で偏りを取り除いています。
用途によります。英大小・数字・記号の4種類を使う場合、12文字で約79bit、16文字で約105bitの強度になります。総務省などが公開している一般向けの指針でも10文字以上が推奨されており、重要なアカウントでは16文字以上にしておくと当面は安心です。文字種を増やすより文字数を増やすほうが、強度は速く伸びます。
情報量(エントロピー)で、パスワードの取りうるパターン数を2の累乗で表したものです。60bitなら2の60乗通りの候補があることを意味します。おおよその目安として、60bit未満は業務利用には心もとなく、80bit以上あれば総当たり攻撃はまず現実的でなくなります。
「英大文字と記号を必ず含めること」といった要件があるサービスでは有効にしてください。厳密にいえば、この制約はパスワードの候補をわずかに狭めるため理論上の強度はごく少し下がりますが、実用上の差はほとんどありません。
いいえ。生成はすべてブラウザ内で完結し、サーバーへの送信も保存もしていません。ページを閉じた時点で消えるため、生成したパスワードは必ずその場で控えるかパスワードマネージャーに保存してください。
避けてください。あるサービスから流出したIDとパスワードの組み合わせを、別のサービスで順に試す攻撃(パスワードリスト攻撃)が広く行われています。サービスごとに別のパスワードを作り、パスワードマネージャーで管理するのが現実的な運用です。
0(ゼロ)とO(大文字のオー)、1(いち)とl(小文字のエル)とI(大文字のアイ)は、フォントによってはほとんど区別がつきません。印刷して配る初期パスワードや、電話口で読み上げる可能性がある文字列では、これらを除いておくと問い合わせが減ります。パスワードマネージャーに保存して手入力しない場合は、除外せず候補を広く取ったほうが強度は上がります。
かつては定期的な変更が推奨されていましたが、現在は考え方が変わっています。米国のNIST SP 800-63Bは、定期変更を強制すると利用者が単純で覚えやすいパターンに流れるため、漏えいの兆候がない限り変更を求めるべきではないとしています。定期変更より、十分に長い固有のパスワードと多要素認証の組み合わせのほうが有効です。