パスワード生成
長さと文字種(大文字・小文字・数字・記号)を選んで、強力なパスワードをその場で生成できる無料ツールです。ブラウザの暗号乱数で端末内だけで生成し、サーバーには送信しません。
パスワードはお使いの端末の暗号乱数(Web Crypto)で生成され、サーバーへ送信されません。重要な用途ではパスワード管理ソフトでの保存を推奨します。
使い方
長さのスライダーと、含めたい文字種のチェックを設定すると、条件に合ったパスワードが生成されます。 「再生成」で別の候補に切り替え、「コピー」ですぐ使えます。選んだ文字種は必ず1つ以上含まれます。
安全なパスワードのコツ
- 長く(12文字以上、できれば16文字以上)する
- 大文字・小文字・数字・記号を混ぜる
- サービスごとに違うパスワードにする(使い回さない)
- パスワード管理ソフトで安全に保管する
強さは「長さ × 文字の種類」で決まる
パスワードの強さはビットという単位で表せます。 使える文字の種類が多いほど、そして長いほど、総当たりで試す組み合わせが増えます。 このツールが表示する強度もこの値です。
| 文字の種類 | 8文字 | 12文字 | 16文字 |
|---|---|---|---|
| 英小文字だけ(26種) | 38 bit | 56 bit | 75 bit |
| 英小文字+数字(36種) | 41 bit | 62 bit | 83 bit |
| 英大小+数字(62種) | 48 bit | 71 bit | 95 bit |
| 英大小+数字+記号(85種) | 51 bit | 77 bit | 103 bit |
表を横に見ると長さを伸ばした効果、縦に見ると種類を増やした効果が分かります。 8文字を12文字にすると 51→77 bit と26も増えるのに対し、8文字のまま記号を足しても 48→51 bit にしかなりません。記号を足すより、4文字伸ばすほうがはるかに効きます。
総当たりにかかる時間の目安
攻撃側が1秒に1兆回試せると仮定した場合、すべての組み合わせを試し終えるまでの時間です (実際は平均するとこの半分で見つかります)。
| 文字の種類 | 8文字 | 12文字 | 16文字 |
|---|---|---|---|
| 英小文字だけ | 0.2秒 | 1.1日 | 1,383年 |
| 英小文字+数字 | 2.8秒 | 55日 | 25万年 |
| 英大小+数字 | 3.6分 | 102年 | 15億年 |
| 英大小+数字+記号 | 45分 | 4,510年 | 2,354億年 |
8文字はどの組み合わせでも1時間かからずに破られます。12文字以上、できれば16文字を目安にしてください。
生成したあとに大事なこと
- 使い回さない — どんなに強くても、他社から漏れた1つを使い回していれば、 そのまま別のサービスにも入られます(パスワードリスト攻撃)。
- 覚えようとしない — 覚えられる文字列は総じて弱くなります。 パスワード管理ソフトかブラウザの保存機能に預けてください。
- 2段階認証を併用する — パスワードが漏れても、それだけでは入られなくなります。 重要なサービスほど効果が大きい対策です。
- 定期変更はしない — 定期的な変更は、かえって単純なパターン(末尾の数字だけ増やす等)を招くため、 現在は推奨されていません。漏えいが疑われるときに変更してください。
使うときの注意
- サイトによって使える記号が違います。弾かれる場合は記号を外し、その分長さを伸ばして補ってください。
- 「紛らわしい文字を除く」を有効にすると I・l・1・O・0・o を使いません。手で書き写すときに便利ですが、強度はわずかに下がります。
- 生成できるのは4〜64文字です。
- 時間の目安は仮定に基づく概算です。実際の攻撃速度はサービス側の防御や機器によって大きく変わります。
よくある質問
生成したパスワードは安全ですか?外部に送信されませんか?
パスワードはお使いのブラウザの暗号学的乱数(Web Crypto API)を使って端末内だけで生成され、サーバーへ送信・保存されることは一切ありません。
どのくらいの長さにすべきですか?
一般に12文字以上、重要な用途では16文字以上が推奨されます。長く、文字種が多いほど強度(bit数)が上がります。当ツールは目安の強度も表示します。
「紛らわしい文字を除く」とは?
大文字のI・小文字のl・数字の1、大文字のO・小文字のo・数字の0など、見間違えやすい文字を除外します。手入力する場面での打ち間違いを防げます。
生成したパスワードはどう管理すればいいですか?
使い回さず、サービスごとに別のパスワードを使うのが安全です。数が多くなるため、パスワード管理ソフト(パスワードマネージャー)での保存をおすすめします。