パスフレーズとは
この記事は約 2 分で読めます
パスフレーズとは、複数の単語を組み合わせて構成する長いパスワードのことです。 「mountain-river-clock-purple」のように、無関係な単語を並べることで、 人間にとっては覚えやすく、コンピュータにとっては推測困難な認証情報を作れます。 従来の短く複雑なパスワード (例: xK#9mP!2) よりも高いエントロピーを 確保しやすく、入力ミスも減るため、セキュリティと利便性を両立する手法として注目されています。
Diceware 方式の歴史と仕組み
パスフレーズの生成手法として最も有名なのが、 1995 年に Arnold Reinhold が考案した Diceware 方式です。物理的なサイコロを 5 回振り、出た目の組み合わせ (例: 4-1-6-2-3) を 7,776 語の単語リストと照合して 1 単語を決定します。この手順を繰り返して複数の単語を選び、 パスフレーズを構成します。
Diceware の本質的な強みは、エントロピーの計算が透明であることです。 1 単語あたり log2(7776) ≒ 12.9 ビットのエントロピーが保証されます。 6 単語なら約 77 ビット、 7 単語なら約 90 ビットです。 ソフトウェアの乱数生成器に依存せず、物理的なサイコロという検証可能な乱数源を使う点が、 暗号学的に誠実な設計といえます。現在では EFF (Electronic Frontier Foundation) が 改良版の単語リストを公開しており、より覚えやすい単語が選ばれるよう工夫されています。
パスワードとの違い - エントロピー比較
従来型のパスワードとパスフレーズの決定的な違いは、エントロピーの稼ぎ方にあります。 8 文字のランダムパスワード (英大小文字 + 数字 + 記号、約 95 種) は最大で約 52 ビットの エントロピーを持ちます。一方、 Diceware 6 単語のパスフレーズは約 77 ビットです。 文字数では 25 文字前後になりますが、覚えやすさは圧倒的にパスフレーズが上です。
ただし、この比較には前提条件があります。パスフレーズの強度は「単語がランダムに選ばれている」 ことに依存します。自分で意味のある文章を作ってしまうと、エントロピーは大幅に低下します。 「I love my cat very much」のような文は、文法的な制約と頻出単語の偏りにより、 見た目の長さほどの強度はありません。総当たり攻撃や辞書攻撃に対する 耐性は、あくまでランダム性に依存するのです。
xkcd #936 の功罪
2011 年に公開された xkcd のコミック #936 「correct horse battery staple」は、 パスフレーズの概念を一般に広めた功績があります。「Tr0ub4dor&3」のような複雑だが短い パスワードよりも、 4 つのランダムな単語を並べた方が強度も記憶しやすさも上回るという主張は、 直感的で説得力がありました。
しかし、この漫画には見落とされがちな問題もあります。まず、 4 単語 (約 44 ビット) という エントロピーは 2011 年時点でも十分とは言い切れず、現在の計算能力ではオフライン攻撃に 対して脆弱です。 NIST は 2017 年のガイドライン (SP 800-63B) で最低 8 文字以上を推奨していますが、 パスフレーズの場合は 5 単語以上、できれば 6 単語以上が実務上の推奨ラインです。 また、「correct horse battery staple」自体が有名になりすぎたため、 攻撃者の辞書に登録されている可能性が高い点も皮肉な教訓です。
実務での推奨と使い分け
パスフレーズが最も効果を発揮するのは、パスワードポリシーで マスターパスワードが求められる場面です。具体的には、パスワードマネージャーのマスターパスワード、 ディスク暗号化のパスフレーズ、 SSH 鍵のパスフレーズなど、頻繁に手入力する必要があり、 かつ最高レベルの強度が求められる用途に適しています。
一方、個別のサービスごとのパスワードには、パスフレーズよりもパスワードマネージャーで 生成したランダム文字列の方が合理的です。サービスごとに異なるパスフレーズを何十個も記憶するのは 現実的ではなく、結局は使い回しの誘惑に負けてしまいます。安全なパスワードの作り方やパスワードの心理学も 参考にしてください。パスワードセキュリティの関連書籍 (Amazon)では、パスフレーズの設計思想をより深く学べます。
よくある誤解
「長ければ安全」という単純化は危険です。パスフレーズの強度は長さではなく、 単語の選択がどれだけランダムかに依存します。歌詞の一節、有名な引用、 個人的に意味のあるフレーズは、攻撃者にとって推測しやすい候補です。 また、単語間の区切り文字 (スペース、ハイフン、ピリオドなど) はエントロピーにほとんど 寄与しません。区切り文字の工夫よりも、単語数を 1 つ増やす方がはるかに効果的です。パスワードの歴史と文化を 振り返ると、人間の記憶に頼る認証の限界が見えてきます。
この記事は役に立ちましたか?