パスワードはメモすべし


だいたいパスワードというのは、暗記しておかなければ意味がない。ポストイットでモニタ脇に張っておくなんて言うのは最悪だ。だが他人から類推されにくい無意味な文字列は、自分でもそうそう暗記できるものではないのが困ったものである。

パスワードはメモして、そのメモをきちんと管理した方がいい。
だって、可能な限り堅牢なパスワード──すなわち可能な限りランダムで、可能な限り長いパスワードを、複数覚えておくなんてできないじゃないですか。フールプルーフな仕組みでないと、使えませんよ。


「どのシステムでも好みのパスワードを使えるとは限らないことから、私は実にいい加減なものを選び、それをどのシステムでも使い、決して変更しないようになるだろう。パスワードを紙にメモして、そのメモをきちんと管理すれば、何ら問題はないはずだ。こうすることで、より多くのパスワードを覚えられるようになる」(Johansson)

もちろん、メモはきちんと管理することが必要で、「ポストイットでモニタ脇に貼っておく」のが「最悪」なことに変わりはない。
しかし、暗記できるような平易なパスワードは、「可能な限り堅牢」の上限を大幅に下回ることになりかねない。さらに、複数のサービスで同一のパスワードを使ってしまうことも、充分に考えられる。


ただ、紙にメモしておくってのもめんどくさいので、ID ManagerRoboFormKeePass Password Safeなどのパスワード管理ツールを使うのがいい。
そして、起動時のパスワードを設定して、それだけは別にメモして厳重に管理するのがいいだろう。
こういったツールには、ランダムなパスワードの生成機能もある。コンピュータは、本当のランダムを生成することはできないが、自分で考えるよりも類推はされにくい。人力だと、息子の名前の「ジョシュア」をパスワードにするたわけもいる。まあ、パスワードで使える文字列を片っ端から試行する攻撃(=ブルートフォース攻撃)の場合は、類推もなにもないんだけど。
とりあえず、定期的なパスワード変更は手軽にできる。


とはいえ、定期的にパスワードを変えることに、どのくらいの効果があるのだろう。
1億通りのパスワードが作れるとして、平時に何度変更しても、攻撃を受けた時点では、常に1/1億の確率で突破されることになる。
効果がある場合を考えてみると、

  • ブルートフォース攻撃が進行中に、すでに試行されたパスワードに変更する。
  • パスワードが盗まれてから侵入されるまでに時間があり、その時間にパスワードを変更する。

どちらも現実的でないな。どうも思いつかない。他にあるだろうか。


そんなことより、可能な限り長くてランダムなパスワードを使った方がいいように思う。ブルートフォース攻撃クラッキングツールなどは、結構出回っているらしいが、対応する文字列長に限界があるとか。
クラッキングツールの対応文字列長を無制限にすることは簡単だろうし、そのくらいの機能はありそうだが、時間がかかりすぎて現実的でなくなるのかもしれない。