セキュリティー意識の実際

今度の案件はイントラWebっぽいところを作る必要がありそうで、その件について後輩と色々とお勉強。その後輩は新人のときに前のプロジェクトに入ってきてWebアプリを作っていたんだけど、大規模案件だからあまり個別の実装部以外のところは教える機会がなかった。ネットワークの基本とかSSLのこととかを教えてみた。とても飲み込みが良くて頭もいい後輩なんだが、そもそもの話として知らない。開発屋さんとしてはそろそろ知ってて欲しいことがいっぱいあるので鍛える決心をするとともに、世の中こんなものか、と思った。普通にhttpsなウェブサイトを使ったりしているのにね。
インターネットが一般に広まりだした頃、お約束のようにアングラな世界に片足を突っ込みながら、プロキシーとは何か、暗号化とは何かなんてことを聞きかじりで身に付けていった世代の人たちからすると、当たり前のようにインターネットが日常になってからPCを触りだした世代の余りの基本的なことへの無知は驚くしかないわけだけれども、それはある意味仕方のないことで、だって日常なんですもの。僕らがLEDを光らすだけの自作パソコンを作らなかったからと言って前の世代が苦々しく思っていたこと*1について責任があるとも思えない。だから、お前らなんて技術者でもなんでもないなんていわない。言わないけれども、じゃあ実際セキュリティー関連のことをやらなきゃいけなくなって、その時に知りませんわかりませんと言うのは若い技術者としてはどうしようもなくて、少なくとも目の前に転がっている、自分たちを守ってくれる仕掛けのある程度の部分を知りたいと思う気持ちがないとなかなか一人立ちは出来ない。技術ではなくて、思想や発想を鍛えることができれば、後は自分で力を出してくれると信じてはいるのだけれども。
そんなわけで、一般化(ありていに言えば陳腐化)してしまった技術について、そのバックグラウンドを意識させるのは本来開発側だけでありたい。知るためのコストは結構高く、それこそ昔から使っていた人たちだって、セキュリティーに興味があること自体それなりの要求があったってことで、それこそエロサイトに安全にアクセスするための手腕だったりしたわけだ。コストを払うだけの動機があったりなかったり。
家電なんかがどんどんブラックボックス化する一方で、ある程度ブラックボックス化しているPCのセキュリティーは、それでもユーザーに確認を強いる。いや、確認しなくても使えるけれども、問題が起きたときに確認していれば防げた、と言うのを免罪符的に言い放てるような予防線を張っていたりする。もちろん、自分の身は自分で守るべきだ。だけれども、理想的には、それを意識しないでも使える、というのがよい。ウェブに重要なものをおかない原則などとっくに崩れ去っているだけに、切実な問題なような気はしている。

*1:偏見です。