岡嶋裕史『暗証番号はなぜ4桁なのか』

暗証番号はなぜ4桁なのか? セキュリティを本質から理解する (光文社新書)

暗証番号はなぜ4桁なのか? セキュリティを本質から理解する (光文社新書)

前に読んだ『セキュリティはなぜ破られるのか』(id:atnb:20080424)と同著者の本である。表題どおり、暗証番号に代表されるパスワードに焦点を絞って、『セキュリティはなぜ…』よりもユーザー側とシステム運用の実例に切り込んで解説している。

第1章 暗証番号はなぜ4桁なのか?―見え隠れする管理者の傲慢
第2章 パスワードにはなぜ有効期限があるのか?―破られることを前提とした防護システム
第3章 コンピュータはなぜ計算を間違えるのか?―計算のしくみとそれに付け込む人間の知恵
第4章 暗証番号はなぜ嫌われるのか?―利便性との二律背反
第5章 国民背番号制は神か悪魔か救世主か―管理と安全の二律背反
第6章 暗証番号にはなぜ法律がないのか? ―ITに馴染まない護送船団方式
第7章 インシデントはなぜ起こり続けるのか?―覚えておきたい3つの対策

第1章。暗証番号を通して、「識別」と「認証」の本質を解説する。そして、暗証番号が4桁に「何となく決まってしまった」のはないか、という推測を行っている。セキュリティが声高に叫ばれる以前は、わざわざ数学的に検証して制約を決めたりなんかしない。そうでなければ、最悪10000通りの試行で破られてしまう4桁番号になるはずがない。そのときに考えられる最も低いコスト(お金がかからない、前提となるフォーマットがある、考えなくて済むなど)で、決まってしまう。

話の本筋から横道に逸れる形で、単純なシステムづくりの要素も紹介している。

  1. 作りやすい。
  2. 直しやすい。
  3. 設計した人が辞めたり死んだりしても、他の人が後を継げる。

3.は、本当にそうなんだよ。結局、システムやプログラムを作った人にしかわからない、ということはたくさん目にしてきた。私だってそんなことをやってしまったから、身にしみてよくわかる。世間では、プロジェクト情報やシステム設計の「見える化」と称して、共通理解を助けるための様々な手法が紹介されている。しかし、末端にはぜんぜん活用されていませーん。さらに、3.は、自分の仕事を楽にする(=ミスを減らす、人に振る)ためにも、ものすごく重要なノウハウのひとつなんだよね。

自分が以前に担当したプロジェクト経験から共感したのは第4章である。ユーザー側は放っておくと、いくらでも楽に運用しようとする。あとからセキュリティで締め付けても、「そんなのできない。本来の仕事が回らない。」なぜか「できない。」というほうは、自信ありげにモノを言う。ただ状況を楯にしているだけなのに。じゃあ、そのままセキュリティ監査でダメだし食らった後、徹底的に締め付けられて、蒼ざめてね。冗談だからね。それでは、どの辺までセキュリティを厳しくしたらいいのか。本書にある、<<大半の社員が抜け道を考えたくなる一線>>がセキュリティ適用の目安という指摘は、本質を突いていながら、意外と聞こえてこないものだ。

セキュリティは人間くさい世界だ。どうやって現実的な解を探すか。本書で明快な回答が得られるわけではない。ここにもプロセスを廻していくことの困難さが語られているだけだ。個人で企業でセキュリティが声高に謳われていても、その優先順位は低い。それでも、何かいい方法はあるはずだ。そう思わなければ、やってられんよね。仕事だから。セキュリティ初心者の私は、いろいろと追いかけていくだけである。

この本は図解がほとんど出てこない。一般の人にはブルーバックスの『セキュリティはなぜ破られるのか』のほうがわかりやすいので、そちらをお薦めする。