分析と広告のためのCookie
分析と広告のためにCookieを使っており、どちらもGoogleに送られます。拒否しても、目に見える動作は何も変わりません。プライバシーポリシーを読む
ブラウザの暗号用乱数生成器から作られるパスワードです。長さと文字種はご自身で選べます。生成はお使いの機械の上で行われ、どこにも送られません。パスワードにとってこれは気配りではなく本質そのものです。手元に届くまでにネットワークを渡ってきたパスワードは、誰かが見ることのできたパスワードだからです。
l、I、1、O、0 を除きます。画面から読み取って入力する場合に便利ですが、数ビット分だけ弱くなります。
仕組み
文字は `crypto.getRandomValues`、すなわちブラウザの暗号用乱数生成器から引かれます。これはOSのエントロピープールから供給されます。もう一方の `Math.random` はどのブラウザにもありますが、ここでは失格です。アルゴリズムは公開され、内部状態は小さく、わずかな出力からその状態を復元することは解決済みの問題で、動くコードも公開されています。これを使った生成器は、パスワードがどれほど長く見えても、実際の鍵空間が内部状態の大きさしかないパスワードを作ります。
出力を見ても両者は区別できません。だからこそどちらを使っているかを述べる意味があり、このプロジェクトには、そのファイルに `Math.random` が現れた時点で失敗するテストが置いてあります。
ランダムなバイトをランダムな文字に変える処理は、ふつう `byte % 文字数` と書かれます。これは256が文字集合の大きさで割り切れないとき、必ずわずかに誤ります。二十六文字なら、0から255のバイトは `a` から `v` を十回ずつ、`w` から `z` を九回しか覆いません。最初の二十二文字が約11%多く現れることになります。
小さな欠陥ですが実在し、この種の生成器でもっとも多い不具合です。対処は、その短い余りに落ちた値を捨てて引き直すことで、費用はループひとつ、平均して一文字あたり二回未満の抽選です。ここではそうしています。
エントロピーはビットで表され、パスワードの強さを述べる誠実な方法です。一ビットごとに必要な試行回数が倍になります。四種すべてを使った二十文字はおよそ130ビット、つまりおよそ2^130通りで、物理的な意味を持たない数です。それこそが要点です。
取捨の重みも見えるようになります。二十文字から記号を外すと約11ビット、紛らわしい文字を外すと約3ビット失われます。四文字足すと約26ビット増えます。長さが常に複雑さに勝るのはこのためです。その四文字はキーボード上のすべての記号より価値があり、しかも手で打つことのないパスワードなら受け入れやすいものです。
数字にチェックを入れれば、パスワードには数字が入ります。これは自動ではありません。混ざった文字集合から二十文字をランダムに引けば、いずれかの文字種がひとつも出ない確率は現実にあり、その結果はポリシーに弾かれ、作り直すことになるパスワードです。
それを保証する文字はまず先に置かれ、そのあと全体がかき混ぜられます。そうしなければどのパスワードも小文字、大文字、数字、記号の順で始まることになり、最初の数文字が攻撃者の推測から外れてしまいます。この保証の費用は一ビットの端数で、表示される数値の丸め幅よりも小さいものです。
使い回した強いパスワードは弱いパスワードです。そのパスワードを持つどこか一箇所が破られた瞬間に、強さは意味を失うからです。生成する価値は、アカウントごとに別のものを持てる点にあり、それは何かが代わりに覚えていてくれる場合にだけ成り立ちます。
ですからパスワード管理ソフトを使ってください。どれでも構いませんし、ブラウザに組み込まれているものでも構いません。ここの生成器はフォームを前にした瞬間のためのものです。それを役立てるのは、結果があとで見つけられる場所に収まることです。
いいえ。そしてこれは、このサイトのどの道具よりもその点が重い道具です。生成するのはあなたのブラウザ自身で、コピーするまでページの中にしか存在しません。アップロードも記録もされず、アカウントも不要です。サーバーで動くパスワード生成器とは、その出力を誰かが見た生成器のことです。
十六が妥当な下限で、二十ならなお良いでしょう。三十あたりを超えると現実的な攻撃者に対して得るものはなくなるため、長さを縛るのは仕組みが受け付ける上限だけです。手で打つのではなく貼り付けるべきものなので、長さの代償はありません。
画面から読み取ってどこかに打ち込む場合だけです。テレビ、印刷した紙、クリップボードのない機器などが当てはまります。文字集合が小さくなり数ビット失われますが、切り替えた瞬間にエントロピーの数値がそれを示します。
意味のある形では起こりません。既定の設定ではおよそ2^130通りあるため、生きている人全員が毎秒ひとつ生成し続けても、宇宙の年齢のあいだに重なりは起きません。
はい。アカウントは不要で、生成する回数にも制限はありません。あなたの機械の上で動くので、もう一度ボタンを押していただいても私たちの費用はかかりません。