複数の単語をつなげた、覚えやすく強力なパスフレーズを自動生成します。 英単語・日本語ローマ字の単語セット、区切り文字、数字・記号の追加にも対応。
生成されたパスフレーズ
候補一覧(クリックで選択・コピー)
推定解読時間の目安
1秒未満
文字数
26文字
覚え方のヒント
朝は「bridge」、昼は「quarry」、夕方は「olive」、夜は「pepper」という1日
単語セット
単語数:4語
書式のカスタマイズ
区切り文字
大文字化
「correct-horse-battery-staple」形式とは?覚えやすく強いパスフレーズの作り方
パスフレーズとは、複数の実在する単語をつなげて作る、記憶しやすく長めの認証文字列のことです。ランダムな記号の羅列(例:xT9!kR2m)を暗記するのは難しい一方、 「correct-horse-battery-staple」のように意味のある単語を並べた文字列は、人間にとって圧倒的に覚えやすいという特徴があります。
本ツールは、英単語・日本語ローマ字の2種類の単語セットから、暗号学的に安全な乱数を使って単語をランダムに選び出し、区切り文字・大文字化・数字や記号の追加といった細かなカスタマイズを加えた、覚えやすくかつ強力なパスフレーズをその場で生成します。
選んだ条件に応じた組み合わせ数(エントロピー)や推定解読時間も自動で表示されるため、「どれくらいの強度になっているか」を数字で確認しながら設定を調整できます。
こんなシーンで便利です
ランダム文字列型のパスワードが覚えられずに困っている
record-generator型の完全ランダムなパスワードを何度も忘れてしまう方が、記憶しやすさを重視した認証文字列を作りたい場合に。
メモを取らずに覚えておきたい重要なマスターパスワードを作りたい
パスワードマネージャー自体のマスターパスワードなど、絶対に忘れられないが同時に強度も必要な1つのパスフレーズを設計したい場合に最適です。
サービスの文字数制限に合わせて長さを調整したい
単語数・区切り文字・数字や記号の有無を細かく調整できるため、長い文字列を許可するサービスにも、ある程度の制限があるサービスにも対応できます。
パスワードの強度を数字で確認しながら設定したい
組み合わせ数(エントロピー)や推定解読時間が自動表示されるため、感覚だけでなく数字の根拠を持って強度を判断できます。
使い方は簡単 4ステップ
- 単語セット(英単語/日本語ローマ字)と単語数(3〜6語)を選びます。
- 区切り文字・大文字化の方法・数字や記号の追加有無を必要に応じて設定します。
- 自動的に5件のパスフレーズ候補が生成されます。気に入ったものをクリックしてコピーします。
- 「再生成」ボタンでいつでも新しい候補を生成し直せます。
※単語は暗号学的乱数生成機能(Web Crypto API)を使って選ばれるため、生成のたびに予測不可能な組み合わせになります。
ご利用時の注意点
- 生成されたパスフレーズは画面を離れると保持されません。重要なパスフレーズは、生成後すぐにパスワードマネージャーなど安全な場所に保存してください。
- サービスによっては使用できる記号の種類やパスフレーズの最大文字数に制限がある場合があります。生成後は登録前に文字数・使用可能文字をご確認ください。
- 推定解読時間はあくまで理論上の目安です。実際の安全性は、サービス側のログイン試行回数制限やパスワードの使い回しの有無にも大きく左右されます。
- 完全無料・安全:生成したパスフレーズは一切外部へ送信されない、通信が発生しないブラウザ完結型を採用しています。
単語数別の組み合わせ数と推定解読時間の目安(英単語セット・約150語)
単語セットの語数(約150語)を基準に、単語数を増やすごとに強度がどれだけ変化するかをまとめました。数字・記号は追加していない場合の目安です。
| 単語数 | 組み合わせ数の目安 | 推定解読時間の目安 | 強度評価 |
|---|---|---|---|
| 3語 | 約338万通り | 1秒未満 | 弱い(重要な用途には非推奨) |
| 4語 | 約5億通り | 数秒程度 | 普通(軽微な用途向け) |
| 5語 | 約759億通り | 数時間〜数日程度 | 強い(一般的な用途に推奨) |
| 6語 | 約1.1兆通り | 数十年〜数百年程度 | 非常に強い(重要な用途に推奨) |
※1秒間に100億回の試行が可能な環境を想定した理論上の目安です。数字や記号を追加したり、日本語ローマ字セットなど別の単語リストを使用すると、実際の組み合わせ数はツール本体の表示に応じて変動します。
パスフレーズの安全性を高める仕組みと、正しい使い方
なぜ単語の組み合わせが安全とされるのか、その根拠と実務的な注意点を解説します。
結論:パスフレーズの強度は「単語数」と「単語リストの語彙数」で決まる
パスフレーズ全体の組み合わせ数は、「単語リストの語彙数」を「単語数」の回数だけ掛け算した数で決まります。
例えば語彙数が2000語のリストから4単語を選ぶ場合、組み合わせ数は2000の4乗(約16兆通り)にもなります。単語数を1つ増やすだけで組み合わせ数が語彙数倍に跳ね上がるため、記憶する単語をあと1つ増やすだけで、強度を大きく引き上げられるのがこの方式の特徴です。
XKCDが示した「複雑な記号1文字」より「単語1つ」が強い理由
webコミック『XKCD』の有名な回では、「Tr0ub4dor&3」のような1語を記号や数字に置き換えたパスワードと、「correct horse battery staple」のような4つの単純な単語を並べたパスフレーズを比較し、後者の方が覚えやすいうえに組み合わせ数(総当たり攻撃への耐性)も大きくなることを示しました。
人間が置き換えがちなパターン(oを0に、aを@になど)は攻撃者にも織り込み済みであるため、単純な記号の工夫よりも、純粋に長さ(単語数)を増やす方が効果的だという考え方です。
推定解読時間はどのように見積もられているか
推定解読時間は、パスフレーズ全体の組み合わせ数(2のエントロピービット乗)を、1秒あたりの想定試行回数で割った値から算出しています。
本ツールでは、オフラインでの高速な総当たり攻撃を想定し、1秒間に100億回という比較的厳しめの条件で計算しているため、実際のオンラインサービスでは(試行回数制限がある分)これよりも大幅に長い時間がかかるのが一般的です。
パスフレーズを安全に使うための3つの注意点
強力なパスフレーズを生成しても、(1)複数のサービスで使い回す、(2)誰かに口頭やメモで共有する、(3)辞書に載っていない単語をあえて避けた予測しやすい組み合わせにするといった運用をしてしまうと、せっかくの強度が意味をなさなくなります。
生成したパスフレーズは1つのサービスにつき1つだけ使用し、他人と共有せず、必要であればパスワードマネージャーで安全に管理することをおすすめします。
よくある失敗と対策
有名な例文(correct horse battery staple)をそのままパスフレーズとして使ってしまう
解説記事などで紹介された具体例をそのままコピーして使ってしまい、既に多くの攻撃用辞書に登録されている組み合わせを設定してしまう失敗です。
💡 対策・解決策を見る▼
単語数を減らしすぎて、覚えやすさを優先するあまり強度が不足してしまう
「短い方が入力しやすい」という理由で単語数を2〜3語まで減らしてしまい、推定解読時間が数秒程度まで下がってしまう失敗です。
💡 対策・解決策を見る▼
生成したパスフレーズを平文のメモ帳やメールに保存してしまう
強力なパスフレーズを生成したにもかかわらず、暗号化されていないメモアプリやメール下書きにそのまま保存し、別の経路から漏洩してしまうリスクを作ってしまう失敗です。
💡 対策・解決策を見る▼
全サービス共通の「マスター単語セット」を使い回してしまう
生成したパスフレーズの単語の並びや一部を少しだけ変えて、複数のサービスで使い回してしまい、1つが漏洩した際に他のサービスも連鎖的に危険にさらされてしまう失敗です。
💡 対策・解決策を見る▼
よくある質問(FAQ)
Q.パスフレーズとパスワードは何が違うのですか
A. パスワードは通常、ランダムな英数字・記号を組み合わせた短い文字列(例:xT9!kR2m)を指すのに対し、パスフレーズは複数の単語をつなげた長めの文字列(例:correct-horse-battery-staple)を指します。文字数自体はパスフレーズの方が長くなりますが、実在する単語で構成されているため人間にとって記憶しやすく、かつ組み合わせの数(総当たり攻撃への耐性)は文字数に比例して増えるため、覚えやすさと強度を両立しやすい方式です。
Q.なぜランダムな記号の羅列より、単語を組み合わせた方が安全だと言われるのですか
A. 有名なXKCDの漫画(『Password Strength』)で示された考え方で、「1つの単語を1つの記号に置き換える」よりも「単語の数を増やす」方が、覚える手間に対して得られる強度(組み合わせの数)がはるかに大きくなるためです。例えば単語リストが2000語ある場合、単語を1つ増やすごとに組み合わせ数は2000倍に増えます。一方、8文字のランダムなパスワードに記号を1つ追加しても、増える組み合わせ数はそれよりずっと小さくなります。
Q.単語の数はいくつにすればよいですか
A. 一般的な目安として、重要度が低いアカウントであれば4単語程度、金融機関やメインのメールアドレスなど重要なアカウントであれば5〜6単語程度を推奨します。本ツールでは単語数を選択するたびに推定解読時間が自動で再計算されるため、目的に応じた単語数をその場で判断できます。
Q.日本語(ローマ字)の単語セットと英単語セット、どちらを選べばよいですか
A. どちらも同程度の強度で設計していますが、普段から英単語に馴染みがある方は英単語セット、日本語の単語の方が記憶に定着しやすい方はローマ字セットを選ぶと、より覚えやすいパスフレーズになります。サービス側の言語制限(半角英数字のみ、など)がある場合は、ローマ字セットも半角英字のみで構成されるためそのまま利用できます。
Q.区切り文字はハイフン以外にも変更できますか
A. はい、ハイフン(-)、アンダースコア(_)、ピリオド(.)、スペース、区切りなしの中から選択できます。また「ランダムな記号」を選ぶと、単語と単語の間にランダムな記号が1つずつ挿入され、区切り文字の予測しにくさも高められます。
Q.表示されている「推定解読時間」はどのように計算していますか
A. 選択した単語数・単語セットの単語数・大文字化のランダム性・数字や記号の追加有無から、パスフレーズ全体の組み合わせ数(エントロピー)を計算し、1秒間に100億回のパスワード試行が可能な高性能な攻撃環境を想定して、平均的にどれくらいの時間で全パターンの半分を試行できるかを目安として算出しています。実際の攻撃耐性はサービス側の対策(試行回数制限など)にも大きく左右されるため、あくまで目安としてご覧ください。
Q.生成したパスフレーズや設定内容が外部に送信される心配はありませんか
A. 一切ありません。本ツールは単語の選択から組み立てまで、すべての処理をブラウザ内の暗号学的乱数生成機能(Web Crypto API)だけで完結させる設計です。生成したパスフレーズが外部サーバーへ送信されたり保存されたりすることはなく、ページを閉じれば情報は即座に消去されます。
あなたの声で、
このツールをより鋭く。
「こんな機能が欲しい」「ここを直してほしい」といったご意見や、新しいツールのリクエストを募集しています。エンジニアが直接目を通し、開発の参考にさせていただきます。