ファイル暗号化 VS データ暗号化

Home / データセキュリティ / ファイル暗号化 VS データ暗号化

暗号化セールス現場は、苦しい戦場である。暗号化製品の紹介に先立って、「ITとは一体何か?」の講義から始めなければならない困惑した状況ももう大分慣れてきたが、相変わらず大変なことで、古代ギリシャから今日に至る「暗号の歴史」を聞かせてほしいという要請も時々聞く。それで、話をしてみても第2次世界大戦の時、ドイツの暗号機械である「エニグマ」以後は興味が冷えてしまう。そこからが本当に大事な内容なのに!

一般的に人たちが「暗号」という言葉に対して持つ好奇心や期待のレベルはどうも幼い頃、スパイ映画を見ながら秘密要員活動を想像した少年期にとどまっているようだ。

もちろん、そういう「暗号」や「暗号化」が無関係なわけではない。現代暗号化もまた、置換と移動などの古典的な暗号理論に基づいて構築された体系だから。しかし、学校ではなく実務現場ではこのような教養や常識は全く(!)重要ではない。「暗号化」は、古典的な暗号理論よりは安全なITシステムの「設計」及び「構築」のための技術だが、その事実に興味を示す顧客は非常に少ない。セールスの困難さを訴える前に、情報セキュリティの根本の根本である暗号化に対する誤解は、本当に深刻な問題ではないか?だから、下のような曖昧な質問もとてもよく聞く。

「ファイルを丸ごと、いや、ハードディスクを丸ごと暗号化してしまえば、いいんじゃないんですか?」

もちろん、このような措置が必要な時もある。世の中、どんなものであれどこかにはきっと役に立つから。しかし、ほとんどの場合「ディスク暗号化」は情報セキュリティ的に適切な措置ではなく、「ファイル暗号化」ではなく、「データ暗号化」がもっと重要な概念である。 理解のため、まずは「ファイル暗号化」とは何かから調べてみよう。

 

ファイル暗号化とは?

 

当然のことだが、「ファイル暗号化」はファイルを暗号化することである。ところで、「ファイル」は一体何? 毎日口に出している、慣れた言葉だが、こう聞かれると何だか不慣れに感じられる。「ファイル」は、意味ある情報を盛る論理的な単位だ。それで、私たちはコンピュータを使用するとき、ファイルを単位として会話する。“ファイルは何個?” ”このファイルの容量はいくら?” ”そのファイルはこのフォルダの中に入ってる。” このようにファイルを基準として情報を保存して、分類して、管理する。 それで、ファイルという言葉にすごく慣れている。 そのため、「ファイル暗号化」という言葉も、もともと慣れていた言葉のように聞こえる。聞くだけで、それが何かを全部理解したような気がする。 しかし、「ファイル暗号化」はそんなに簡単な概念ではない。

私たちはファイル単位にまとめ、そこに名前を付けて閲覧と検索のためにどこに保存するかなどを決めることにより情報を管理する。それではコンピュータの内部では1)物理的保存装置、2)運営体制カーネル、3)アプリケーションなどの3つの領域でそれぞれ違う方式を通じて、ファイルを処理する。したがって、私たちがよく言う「ファイル暗号化」も、またその3つの領域でそれぞれ違う方式で行われる。これに対するより詳しい説明は本一冊ぐらいのが必要なので、今は簡単に概要だけ見てみよう。

しかし、1)物理的保存装置、主にハードディスクを丸ごと暗号化する「ディスク暗号化」は、現在論点から遠く離れているので一応論外としておこう。もちろん、ハードウェア暗号化が必要な場合もある。 情報セキュリティがとても致命的なところでは想像できるすべてのセキュリティ措置を一つも抜かさずすべて適用しなければならないのでその場合は、ハードウェア暗号化措置まで必要だ。例えば、核発電所とか。しかし、そのような場合でも追加または補完措置になるだけで、情報セキュリティの基本は「データ暗号化」でなければならない。

簡単に言って、2)運営体制カーネル領域で3)アプリケーション領域にいくほど、マネジメントの対する負担が増大する代わりに、セキュリティ性は高くなる。これは、すべての情報セキュリティ技術全体にわたって適用される一種の原理である。セキュリティを高めると、どうしても使用が不便になるのだ。言い換えれば、便利さを求めるとセキュリティ性は低くなるしかない。それにもかかわらず、便利さはとても強力な魅力なので、「ファイル暗号化」や「ディスク暗号化」製品を販売する人たちは、よくこう言う。

「ファイルやディスクを丸ごと暗号化してくれるから本当に便利です!」

本当に魅力的な話ではないか? 便利であるというものは良い事だから。しかし、適当に逃さず、こんなにまた問わなければならない。

「便利にするために暗号化するのではないじゃないですか?」

そうだ。 暗号化は、セキュリティ性を高めるためにするものである。

 

実際の業務現場での、ファイル暗号化の危険性

 

こう単純に考えてみよう。過渡な単純化に見えるだが、一応、

―ファイルは、データを盛る箱である。

―ファイルに入っているそれぞれのデータがみんな同じ危険性を持っているわけではない。

実際はさらに複雑な違いがあるが一応、簡単に言うと「ファイル暗号化」はデータが入っている箱を丸ごと暗号化することであり、「データ暗号化」は箱の中に入っているデータの中で必ず隠さなければならない危険なデータだけを選別して暗号化するものである。二つの方式はそれぞれの長所と短所があるが、上の「マネジメントの対する負担が増大する代わりに、セキュリティ性は高くなる。」という原理はそのまま適用される。ファイル暗号化は管理が簡単である。しかし、セキュリティ性は低い。なぜだろう?

ある会社に顧客情報が保存されているデータベースファイルがあるとしよう。「ファイル暗号化」方式はそのデータベースファイルを丸ごと暗号化する。言い換えれば、ファイルを使用するためには暗号化されたファイル全体を復号化して、作業が終わったらまたファイル全体を暗号化して保存することである。このような場合、危険は下の通りである。

1.使用者のミスもしくは故意で暗号化しない場合: 使用者のミスで暗号化しない場合が頻繁に発生する。暗号化すべきだということを忘れたり、ただ暗号化の手続きが面倒で、平文のままに保存する場合が多い。セキュリティ事故の大半は使用者のミスのためだという事実を忘れてはならない。使用者のミスを未然に防止して監視する装置が必要である。

2. ファイル全体の内容が平文のままでメモリに存在: ファイル丸ごと暗号化されているなら、ファイルに入った情報内容を読む時、やむを得ずファイル全体を復号化するしかない。そうなると、暗号化されていない全体平文がメモリに存在するようになって、メモリダンプなどの手法を通じたデータ漏えいの危険がある。平文露出は何があっても最小限に減らす方が良い。

3.鍵管理およびアクセス制御、セキュリティ監査などの追加的な道具必要:暗号化は暗号化だけでは無用な技術である。暗号化および復号化作業のための鍵管理及びアクセス制御、セキュリティ監査など他のセキュリティ道具が一緒に動作しなければならない。しかし、様々なものを加えると「ファイル暗号化」の最も大きい長所である単純性から離れてしまう。便利さを強調するが、結局は同く複雑になるわけである。さらに、性質が違う他の道具を一つのシステムの中に結合する技術的な危険もある。実際、暗号化というそれ自体はそんなに難しい技術ではない。前に述べたように、安全なITシステムの「設計」及び「構築」のための技術なので難しいことである。

この中で特に注目しなければならないのは 「2.ファイル全体の内容が平文のままでメモリに存在」しているので発生する危険である。しかし、これはどんな暗号化方式にも同じく該当する危険である。情報を読み取るためにはメモリに平文が存在しなければいけないから。しかし、どれほどたくさんの情報をどれだけ長く露出するかによる差はかなり大きい。実際の業務現場における状況を考えてみよう。

 

ファイル全体を一日中平文のままに露出する暗号化?

 

顧客情報が保存されているデータベースファイル全体を丸ごと「ファイル暗号化」したとしよう。そうすると、ファイルの中に入っているどんな情報であれ閲覧するためにはファイル全体を復号化しなければならない。探そうとするデータがマイナンバーなどの重要な個人情報ではない場合にも全体内容をすべて露出しなければならないのだ。それでは検索、閲覧、処理などの作業を終わってからまた暗号化する時まではすべての情報がメモリ上に平文のままに放置されてしまう。顧客管理業務が多い会社であれば、職員が出勤するやいなや暗号化データを復号化して一日中全てのデータを平文の状態に露出して、帰り道に再び暗号化するとしても決して誇張ではない。

逆に、重要なデータだけを暗号化した場合にはどうだろうか? 「データ暗号化」は、重要データを別に暗号化して該当情報が必要な時だけ復号化して処理して、再び暗号化する。露出しても、特に危険ではない一般情報だけを開いて作業して、特定暗号化データが必ず必要な瞬間に一連の手続きを通じて、復号化して作業を終えてから再び暗号化する。上の「ファイル暗号化」に比べると、危険性への露出時間が顕著に短いのである。そして暗号化のほか、別に必要な鍵管理及びアクセス制御、セキュリティ監査などの道具も全て一つの製品として統合されて提供されるから、 異種技術結合による不安定性も非常に少ない。

しかし、個人が使うコンピュータで、そして企業でもどんな特需な要求のため、情報をファイル単位で区別して管理する場合がある。その時は「ファイル暗号化」も選択すべきの方法かもしれない。しかし、「ファイル暗号化」は「データ暗号化」に含まれる一部とみる方が良い。言い換えれば、「ファイル暗号化」は一部のデータをまた別のものにして暗号化する方法がないが、「データ暗号化」はファイル内容の部分もしくは全体を選択して暗号化することにより、ファイル暗号化と同じ効果を得ることができる。

「ファイルやフォルダを丸ごと暗号化してくれるから本当に便利です!」

そうだ。 便利だ。 しかし、「便利にするために暗号化するのではないじゃないですか?」

MyDiamo-JP
MyDiamo-JP
MyDiamoは、OSS(Open Source Software)のMySQLとMariaDBに特化したDBMSエンジンレベルの暗号化ソリューションであり、エンジンレベルのカラム暗号化セキュリティとパフォーマンスの両立を実現させるアプリケーションから独立したコンポーネントです。ペンタセキュリティでは、オフィシャルサイトにて個人用の非営利的利用のため、無償ライセンスを提供しています。
Related Posts