本文へスキップ
Case Converter Online
ja

強力なパスワード生成ツール

長くてランダムなパスワードをワンクリックで作成し、その強度をビット数で確認できます。パスワードはお使いの端末の中で作られ、送信も保存もされません。

使う文字
オプション

パスワードはお使いの端末内で crypto.getRandomValues を使って作成されます。送信、記録、保存されることはありません。パスワードマネージャーで管理してください。

強力なパスワードの条件

強力なパスワードとは、攻撃者が現実的な時間内に推測できないパスワードのことです。それを決めるのは2つの要素です。長さと、各位置に入りうる文字の種類の多さです。ランダムであることも重要です。ペットの名前の後ろに年を付けたような自分で考えたパスワードは、人の選び方に予測しやすい傾向があるため、長さから想像するよりはるかに推測されやすくなります。

このツールは、許可した文字の中からすべての文字をランダムに選びます。そのため強度を簡単に測ることができ、悪用できるパターンもありません。

パスワード生成ツールの使い方

  1. ページを開くとすぐに、「パスワード」欄に新しいパスワードが表示されます。
  2. 「長さ」のスライダーを動かすか、マイナスとプラスのボタンを使って、4文字から128文字の間で選びます。初期値は20文字です。
  3. 「使う文字」で、「英大文字」「英小文字」「数字」「記号」のオン・オフを切り替えます。
  4. オプションを選びます。
    • 紛らわしい文字を除外(I l 1 O 0):取り違えやすい文字を取り除きます。
    • 選んだ種類をすべて使う:選んだ各種類の文字が、少なくとも1文字ずつ入るようにします。
  5. 別のパスワードが欲しい場合は「新しく生成」を、コピーするには「コピー」を押します。
  6. 複数必要な場合は、「パスワードの数」で数を選びます。「すべてのパスワード」欄に表示され、「すべてコピー」で一覧全体をコピーできます。

パスワードの下には、強度を示すバーとラベルが、ビット数の推定値とともに表示されます。

生成されるパスワードはすべて半角の英数字と記号です。サイトによっては使える記号が限られていることがあります。記号が受け付けられない場合は、「記号」をオフにして、その分文字数を増やしてください。

強度のラベル

エントロピーのビット数 ラベル
28未満 非常に弱い
28から44 弱い
45から63 普通
64から99 強い
100以上 非常に強い

生成例

以下のパスワードと数値は、生成ツールを実行した結果です。すでに公開されているので、これらは使わないでください。

長さ 使う文字 ビット数 ラベル 例
6 数字 19.93 非常に弱い 546382
8 英小文字 37.60 弱い orvapcvl
8 4種類すべて 51.93 普通 QpF4b@<V
12 4種類すべて 77.90 強い .y9}g-.ta$rP
16 英字と数字 95.27 強い ydrGkOZ9PrXPB6TL
16 4種類すべて 103.87 非常に強い Aj~oJ-WDTW}8rJu2
20 4種類すべて 129.84 非常に強い CwEfwEyMg)>w~b-tMx.9
20 4種類すべて、紛らわしい文字を除外 127.50 非常に強い B;8#]&Dr/*3X8y]fP#-P

文字の種類を増やすより、長さを伸ばす方が効果的であることに注目してください。4種類すべてを使った場合、8文字から16文字にするとビット数はおよそ2倍になります。

仕組み

4種類の文字には、英大文字26文字、英小文字26文字、数字10文字、記号28文字の合計90文字が含まれます。「紛らわしい文字を除外」では、I、l、1、縦線、O、0、o の7文字が取り除かれ、83文字が残ります。

各文字は、ブラウザの暗号論的な乱数源 crypto.getRandomValues を使って選ばれます。ツールは単純な余りではなく棄却サンプリングで乱数を文字に割り当てるので、候補のどの文字もまったく同じ確率で選ばれます。

「選んだ種類をすべて使う」がオンの場合、選んだ種類のどれかがたまたま含まれなかったパスワードは捨てられ、新しく引き直されます。これにより、結果が均等にランダムなまま保たれます。

強度の推定値は、文字数に候補の数の log2 を掛けた値です。90文字から20文字を選ぶなら、20 x 6.49 で約129.84ビットになります。これは上限の値です。すべての種類を必須にすると、ありうるパスワードの数はわずかに減りますが、通常の長さなら減る量はごくわずかです。

プライバシーとセキュリティ

  • 何も端末の外に出ません。 サーバーでの処理はありません。パスワードは、コピーするまでページ上にだけ存在します。
  • 何も保存されません。 ページを再読み込みすると、パスワードは消えます。このツールには、意図的に履歴機能を設けていません。
  • 共有のパソコンでは、貼り付けた後にクリップボードを消去しましょう。
  • パスワード管理ツールを使いましょう。 ランダムなパスワードは、安全に保管できてこそ役に立ちます。管理ツールは自動入力もできるので、長くしても手間は増えません。
  • できる限り2段階認証をオンにしましょう。 偽のログインページで盗まれてしまえば、強力なパスワードも役に立ちません。

表示されるビット数は、ここで生成したようにランダムに作られたパスワードを前提にしています。自分で考えて別のチェッカーに入力したパスワードには当てはまりません。

そのほかのパスワードの作り方

Python が入っているパソコンなら、次のコマンドで実行するたびに英数字20文字の新しいパスワードが表示されます。

python -c "import secrets, string; a = string.ascii_letters + string.digits; print(''.join(secrets.choice(a) for _ in range(20)))"

OpenSSL がインストールされていれば、openssl rand -base64 18 で24文字のランダムな文字列が表示されます。ほとんどのパスワード管理ツールにも生成機能が組み込まれています。

パスワードの作成に、Excel の RAND 関数や JavaScript の Math.random は使わないでください。これらは予測できないようには設計されていません。

関連ツール

秘密の値ではなく一意の ID が必要なら、UUID 生成ツールを使ってください。範囲を指定したランダムな数字には、乱数生成ツールを使ってください。ファイルのチェックサムを作るには、MD5 ハッシュ生成ツールを使ってください。

パスワード生成のよくある質問

強力なパスワードは何文字にすべきですか?

ほとんどのアカウントでは、英大文字、英小文字、数字、記号を使って16文字以上にしてください。このツールでは約104ビットのエントロピーになり、推測による攻撃が届く範囲をはるかに超えます。手で入力することが多いパスワードなら、英字と数字だけで長くするのも有効です。英数字24文字で約143ビットになります。

オンラインのパスワード生成ツールを使っても安全ですか?

仕組み次第です。このツールは、ブラウザがセキュリティ用途のために備えている乱数源 crypto.getRandomValues を使い、すべてブラウザの中で動作します。パスワードがサーバーに送信されたり、記録・保存されたりすることはありません。ページを読み込んだ後にオフラインにしても、そのまま生成を続けられます。

エントロピーのビット数とは何ですか?

攻撃者が何回推測する必要があるかを表す尺度です。1ビット増えるごとに、ありうるパスワードの数が2倍になります。このツールでは、文字数に、選べる文字の種類の数の log2 を掛けて計算します。4種類すべてを使った20文字のパスワードは約129ビットです。

紛らわしい文字を避けるのはなぜですか?

大文字の I、小文字の l、数字の 1、あるいは大文字の O とゼロのような文字は、画面や紙からパスワードを読み取るときに取り違えやすいからです。「紛らわしい文字を除外」をオンにすると、これらの文字が除かれます。1文字あたりの強度がわずかに下がるので、1、2文字長くして補ってください。

強力なパスワードを複数のサイトで使い回してもよいですか?

いけません。1つのサイトから漏れると、攻撃者はほかのあらゆるサイトでそれを試します。アカウントごとに別のパスワードを使い、パスワード管理ツールで保管してください。