よく「パスワードに対する攻撃の対策に、パスワードの定期的に変更を!」って言われるんだけれど、これがはたしてブルートフォースアタックに対する耐性の向上に役立つかの説明は今まで受けたことがない *1。
- Aさんが 100 面体サイコロを振って、数字を一つ決めます(パスワード)。
- B さんが 10 個数字を選んで、どれか一つでも A さんの数字と一致したら攻撃成功です。
- A さんがサイコロを振ります。目は仮に 65 としましょう。
- B さんが 10 個数字を選びます。全部外れたとしましょう。
- A さんがサイコロを振ります。目は仮に 41 としましょう。
- B さんが 10 個数字を選びます。全部外れたとしましょう。
- A さんが数字を変えます……
っていうふうに、 A さんがサイコロを振ろうが振らまいが、 B さんがサイコロの目を当てるまでには平均 50 個の数字を選べば済むんじゃないの、 A さんはサイコロを何回振っても同じだよね、という話。
パスワードを変えて効果があるのは、攻撃者に既にパスワードが知られてしまったという状況下で、攻撃者が好き勝手できる時間を短くできる、という点においてだけだと思うんだけど、どこか見落しがあるのかなぁ。