米国立標準技術研究所(NIST)の認証に関するガイドライン「NIST SP 800-63」が改訂され、「パスワードは「複雑」より「長い」が重要、定期的な変更を義務付けてはならない」というのがようやく周知された。
しかし、「複雑なパスワード」と「定期的なパスワードの変更」が長年推奨されてきたのか。この文章は、その原因を偉大な科学者たちが過ちを犯したことに理由を求めている。
その科学者とはロバート・モリスとケン・トンプソンの二人である。ケン・トンプソンについては説明は不要だろうが Unix の開発者ですね。ロバート・モリスは暗号学者で、Y Combinator の共同創業者であり「モリスワーム」の作者として知られるロバート・タッパン・モリスの父親である。
この二人が1979年に実際のユーザパスワードを調査して発表した Password Security: A Case History という論文が後に大きな影響を及ぼし、何十年もパスワードの改良に進歩を妨げることになったという。
この論文が犯した過ちは二つがあり、一つ目は複数の文字種(小文字、大文字、数字、記号)を含めることがパスワードの安全性を高めるというパスワードの複雑化の推奨で、現実には「p@ssword」や「Password1」といった推測しやすいパターンはセキュリティ向上にはつながらなかった。
二つ目は、パスワードをハッシュ化して保存する方法を提案したことで、結果的にこれがが研究者によるパスワードの実態調査を著しく困難にしてしまい、結果として、パスワードに関する知見の蓄積が停滞しまった。
まさか二人も自分たちの論文がここまで長く影響力を持ってしまうとは思わなかっただろう。一見有用そうなポリシーが長い目で見れば悪い影響をもたらすのだから難しいものである。
ネタ元は Schneier on Security。