「耐震強度偽造問題」の「偽造」に対してパソコンができること

耐震強度偽造問題」「構造計算偽造」という名前が定着してしまったようですが、よく考えると「偽造」というのは正確ではありません。

検査会社がハンコを押した書類を、検査会社の倉庫に忍びこんで中身を差しかえたらこれは「偽造」です。今回の件では、検査会社に提出して検査会社が承認した書類をそのまま改ざんすることなくそのまま使ってますから、「偽造」ではない。承認すべきでないものを承認してしまった「承認ミス」が正確な表現だと思います。

それでは、姉歯建築士は何を「偽造」したのでしょうか?この点をクリアにしないと、再発防止の為の対策が立てられません。しかし、国公認の構造計算データ、市販ソフトで容易に改ざん という読売新聞の記事が、このあたりについて間違った方向に問題を持っていきそうな気配があります。

これは、制度の問題ではなくて、単純な技術的な問題です。この記事を書いた人は、コンピュータやソフトウエアの性質について、基本的な所で間違った認識があるようです。


マンションなどの耐震強度偽装問題で、姉歯秀次・1級建築士(48)が使っていた国土交通相公認の構造計算用プログラムのデータは、市販のワープロソフトなどを使って容易に改ざんできることが1日、わかった。

いきなりここがおかしい。データ、つまり自分が所有しているパソコン上のファイルは、どのようなソフトのどのようなデータでも「容易に改ざん」できます。


姉歯建築士が実際に、この手口で構造計算書を偽造していた可能性も指摘されている。公認ソフトの信頼性にかかわる事態に、国交省は、ソフト会社などから急きょ事情聴取を始めるなど、データ改ざん対策に乗り出した。

データ改ざんができることが「公認ソフトの信頼性にかかわる」という判断はまったくおかしい。


姉歯建築士が関与した偽装物件11棟に建築確認を出した民間の指定確認検査機関最大手「日本ERI」によると、姉歯建築士は、実際には存在する壁を計算上は無いことにしたり、壁の重量を「ゼロ」にしたりするなどして、構造計算書を偽造していた。本来ならこのような不自然な入力を行うと、公認ソフトは、計算書に「エラー」の文字を印字するほか、「大臣認定番号」を打ち出さないことで、ミスを防ぐ仕組みとなっている。

異常データのチェックは「ミスを防ぐ」為のもので、故意の偽造を防ぐようにはできてないはずです。


ところがERIや国交省の調査で、この公認ソフトが出力するデータは、「ワード」などのワープロソフトに張り付けて編集できることが判明した。編集によりエラーの文字を消し、大臣認定番号を書き込むことができ、ERIは「断定できない」としながらも、姉歯建築士がこの方法で偽造していた可能性を指摘している。

この感じだと「故意の偽造を防ぐように改造しないと認定を取りけすぞ!」ということになりそうですが、これは原理的に不可能なことで、そういう無茶を言うと、問題の本質がぼやけて、ゆがんだおかしなシステム、制度になってしまうと思います。

ポイントを整理してみます。

  • 大半の構造計算は、特定のコンピュータソフトを利用して行なわれ、そのソフトの印刷結果がそのまま承認用の書類となっている
  • 検査会社は、そのソフトの出力であることを前提として検査を行なっている
  • 姉歯建築士はソフトの出力であるかのように見せかけて、恣意的にいじった書類を提出した

つまり、今後このようなことが起こらないようにするには、「ある書類(かデータ)が特定ソフトの出力であることを、性悪説を前提として確認する」ことが必要になります。しかし、これは原理的に言って不可能なことです。

まず、紙の書類に打ち出したものを改ざん不可能にすることができないことは、常識的にわかると思います。ワープロで似たような書類を打って細かく書式や印字位置を調整していけば、手間はかかりますが全く同じ形式の書類を作れます。専門的に言えば、特殊なプリンタドライバを使ってファイル出力してから改ざんすれば、もっと簡単にできます。

ですから、これは印刷結果をPDF等のデータファイルとして出力して提出し、その正当性を確認するということになると思います。しかし、これもやはり不可能なことなのです。

そのソフトが、特定の形式(正当な計算結果)のデータしか出力しないようにすることは可能です。しかし、その出力を別のソフトで変更することを防ぐ手段はありません。また、その変更をデータだけを見て機械的に検出することはできません。

なぜなら、その「改ざんの検出」を行なうのが別のプログラムである以上は、その「検出」の方法を解析して、それに適合するようなデータを作ることができるからです。「検出」の方法を秘密にした上で方式を工夫して、困難にすることは可能ですが、「性悪説」に立つならば、「性悪ハッカー」つまりクラッカーの助けを借りることを前提としなければなりません。

データ作成プログラムが一般の建築士に入手可能である以上、性悪建築士を助ける性悪ハッカーは、その内容や出力結果(に含まれる改ざん防止用のデータ)をゆっくり調査することができます。昔のパソコン用ゲームソフト等のプロテクト破りの技術レベルを想定すれば、まず破られるのは時間の問題で、破ることができると悪人はだいたいそれを公開します。その方法がいったんどこかに公開されてしまえば、日本中の性悪建築士と性悪ハッカーはそれを利用して、簡単に偽造データを作成することができます。

一見すると、これは「電子署名」のような「改ざん防止」の技術を応用すれば解決するような問題に思えますが、「電子署名」は、「署名する人」と「改ざんを試みる悪人」が別の人間である時に使用する技術です。建築士が作成したデータを施工主が改ざんしてしまうことを防ぐという話ならば、「電子署名」が使えます。検査会社は「このデータは建築士が作成したそのままのデータで途中の経路(施工主等)で改ざんされたものではない」ということを確実に確認することができます。しかし、ここで必要とされているのは、「このデータはソフトが作成したそのままのデータで途中の経路(性悪建築士)で改ざんされたものではない」という証明ですから、全く別の種類の問題なのです。具体的に言えば、秘密鍵をソフトと一緒に配布する以上は、「電子署名」ではこの問題は解説しません。

これを改善するならば、技術的に正しい方法は、そのソフトに入力したデータをそのまま検査組織に提出し、検査組織が機械的にそのデータの正当性をチェックすることです。その為には、構造計算のデータ形式を標準化して公開することが必要だと思います。現在行なわれている判定の中で、印刷結果を見て「あのソフトの出力だからここの部分は間違いないだろう」と推定されている部分を、自分でプログラムを走らせてチェックすることに置きかえるべきです。建築士が入力データの形式で提出するようにすれば、検査機関は労力なしでそれをチェックできます。

問題の新聞記事を見て「そうだなあ」と思う人と「何かおかしくないか?」と思う人が、どれくらいの割合になるのかはわかりません。しかし、このあたりの基本的な知識は、広く社会全体として共有されるべきだと思います。たとえば、自動車のエンジンやトランスミッションやブレーキの構造は、普通のドライバーなら基本的な所を理解しているでしょう。「エンジンがかからない時にラジオがつかなければまずバッテリーを疑う」くらいのレベルの知識だと思います。

あの記事を書いた人にとっては「パソコンはブラックボックス」なのだと思います。それは正しいことです。一応専門家である私にとっても、パソコンの中にはわからないことがたくさんあります。しかし、「パソコンは全ての部品を取り換え可能なブラックボックス」なのです。それも原理的、専門的な意味ではなく、ごく日常的なレベルで「取り換え可能」なのです。もちろん、普通のプログラマには手の出ない専門的な知識がないといじれない部品はたくさんありますが、その知識は共有可能なのです。ソフトの中の部品であれば、その部品そのものを共有可能であり、ネットにある部品を自分のマシンに入れることは、小学生でもできることです。

そういう基本的な認識があれば、「改ざん不可能なデータを作成するソフト」が不可能なことは誰にでもすぐわかると思います。

だから、むしろ、SSLのような「安全な通信方法」があることを疑わないといけないのだと思います。パソコンに「安全な通信方法」があるということが非常な魔術的技術なのです。魔術的な技術があることで、「偽造不可能なデータを作成するソフト」という別の不可能が可能なように錯覚してしまったのだと思いますが、いかに魔術的ではあっても、技術である以上は限界があります。社会全体として、それを正しく理解し、うまく使わないといけません。

というわけで、『暗号技術入門 ―― 秘密の国のアリス』の重要性をあらためて感じるわけですが


プログラマが社会貢献しようと思ったら、何より先に身近な人にPKIというものの持つ意味を知らせることだと、私は考えています。それくらいPKI の社会的な意味は大きいのです。そして、PKIつまり暗号技術は実は簡単なんです。本質を抜き出せば簡単、でもちょっとでも深入りし過ぎると難しくなる。そして、難しい所に深入りしないことは難しいです。だから残念なことに、プログラマでさえもPKIを敬遠してしまう人が多い。


この本は、PKIの本質的な部分を過不足なくわかりやすく説明しています。PKIの中で重要で絶対知るべき部分に絞りこんでいる。


PKIは認証する為の技術であって、暗号はその実装の為の手段です。PKIを暗号技術と言うのは、自動車学校のことをエンジン学校と言うくらいおかしなことだと思います。「エンジンは我々の生活に必要不可欠なもので、大変身近なものです」と言うと「嘘だ」と思うけど、高速道路とか道路交通法とか整備工場とかガソリンスタンドとか免許証とか、そういう車にまつわる社会的システムは、生活にとって重要だし、政治的な課題にもなるし、社会人としての常識の範囲です。それと同じように、PKIはネットを使う人がみんなで考えなきゃいけないテーマです。

PKIに関する正しい認識が社会の中に広まることを望みます。