日本語入力環境でパスワードを打つとき特有の事故がある。IME(かな漢字変換)がオンのまま気づかずパスワード欄に入力し、半角英数のつもりが全角文字や変換候補になってログインが失敗する——という経験は、日本語キーボードを日常的に使う人ならほぼ誰もが一度は味わっている。パスワードマネージャーの自動入力は、この種の入力ミスを丸ごと回避できる。
パスワードのエントロピーとは何か
エントロピーはビット単位で測定され、文字セットのサイズとパスワードの長さに依存します:エントロピー = log2(文字セットサイズ ^ 長さ)。文字セットが小さくても(たとえば小文字のみ)長いパスワードは、複雑な文字セットを持つ短いパスワードより高いエントロピーを持つことがあります。
日本のサイトに今も残る短い文字数制限
日本の一部の銀行や大手ECサイトでは、レガシーな会員システムの都合でパスワードの上限文字数が8~16文字程度に短く固定されていたり、使用できる記号が限定されていたりすることが今も珍しくない。理論上どれだけ高いエントロピーの文字列を生成しても、入力フォーム側の制限に合わせて切り詰めざるを得ないケースは、パスワード生成ツールを使う上で意外と実務的な問題になる。
それでも生成ツールが文字の種類を混ぜる理由
多くのシステムは数字、大文字、特殊記号を必須としています——これは必ずしも実際のエントロピーを高めるわけではありませんが、最も単純な辞書攻撃や、今も一般的な古いポリシーから守ります。優れたパスワード生成ツールは、目標とするエントロピーレベルに応じて長さと文字セットの多様性のバランスを取ります。
なぜこれが必要か
- 人間の記憶に頼らず、新しいアカウントのために強力なパスワードを生成する。
- 「少なくとも1つの数字と記号」という要件が最も重要なセキュリティ要因ではない理由を理解する。
- 既存のパスワードが総当たり攻撃にどれだけ耐えられるか実際に見積もる。
パスフレーズとランダムな文字の比較
辞書からランダムに選んだ複数の単語からなるパスフレーズ(例:「correct-horse-battery-staple」)は、記号を含む短いパスワードよりも高いエントロピーを持つことがあり、しかも人間にとってはるかに覚えやすいものです。パスワードマネージャーに保存されて手入力されることのないパスワードについては、これは重要ではありません——ランダムな文字の方が1文字あたりのエントロピーは高くなります。しかし、覚えておく必要があるパスワードマネージャー自体の「マスターパスワード」については、パスフレーズの方が実用的な選択肢であることが多いです。