ITアーキテクトのひとりごと
第82回「データが正しいということ」
インターネットでプログラムをダウンロード、PCでチェックサムを計算し、インターネットに公開されているチェックサムと比較。チェックサムが一致しているので、恐らく、ダウンロードしたファイルは正真正銘、元のファイルと同じはずだ。
こんなことを念のためにやっている自分は、何を疑っているのか。間違いは誰にでも、どこにでもある、という確信に満ちた疑いが根本にある。
もし、ファイル伝送中に間違いが混在していれば、ダウンロードしたプログラムを実行すると(多分)エラーになるはずなので、チェックサムで確認する必要もないが、エラーの原因がさっぱりわからなくなるので、やはり、チェックサムを計算しておく。
気象観測で得られたようなデータで、そのデータが正しいというのはどういうことか。正しい方法で、決められた手順で、校正された装置で取得されたデータであることが正しさの証明だが、そんな一連の信頼性は、ただ信じることだけで成り立っている。簡単に嘘がつけるという脆弱性につけこんだ不正義が行われることはないはずだ、という信頼に依存している。
ITシステムではストレージ装置に蓄えられたデータは最重要なもののひとつだが、そのデータがバイナリレベルで元のデータと全く同じであることを誰がどのように保証しているのか、関わっているコンポーネントが多いので難しい。
利用者から見れば、そのほとんどがブラックボックスなので、信頼性の保証は期待することができない。利用者が出来ることは、チェックサムでデータがおかしなことになっていないかどうかを確認することだけだ。 こんな単純なことでしかストレージシステムに蓄えられたデータの正しさを確認できないのだから、蓄える前の恣意的なデータの嘘や、恣意的ではないがちょっとした間違ったデータの嘘を見抜くことは至難の業だ。
沢山のデータを蓄えたストレージシステムが悪いわけではないけれど、データの正しさというものが意外と危ういものなんだな、という前提でシステムを俯瞰しておく必要性があることを感じる。
株式会社エクサ 恋塚 正隆