暗号化技術の変遷と最新のトレンドを知る

2010年11月22日(月)
Kevin Lee

危機管理上必要な大原則とは何か

しかし、この技術の研究開発に没頭するあまり忘れられてしまった、暗号化による機密保持の原則があります。それは「できる限り早いタイミングで暗号化し、できる限り遅いタイミングで復号化する(従来のDRMでは、復号化部分での完成度は高い)」というものです。暗号化されている時間を極力長くし、平文である時間を最短時間で済ませることが危機管理上必要な大原則なのです。

この原則を忘れてしまっては、本末転倒です。機密ファイルは、「アプリケーションで作成されたと同時暗号化され、使用される直前に復号化する」べきではないでしょうか?

ここまでの話で、アプリケーション・レイヤーで実行される暗号化が安全ではないということをお伝えしている訳ではありません。透過式暗号化では、その安全性を確保するため、カーネル・レイヤーやアプリケーション・レイヤーの両方で開発されているため、その違いという観点で説明しています。

カーネル・レイヤーとアプリケーション・レイヤー

客観的に見て、カーネル・レイヤーあるいはアプリケーション・レイヤーにおいてファイルI/O権限の取得やオブジェクトのアクセス・コントロールは、メカニズムとしては同じで、広い意味ではHOOK技術です。カーネル・レイヤーでのプログラムはドライバレベルで実行されているため、アプリケーション・レイヤーよりも悪意のあるユーザーからのハッキングを回避できる可能性(メモリーから直接データを取るなど)は高く、理論的にアプリケーション・レイヤーで開発されたものよりも、アクセス・コントロールと自己保護面において効果はあります。

しかし、このメリットはデメリットでもあるのです。カーネルで動作しているため、プロセス稼働中のささいなことでもシステムのクラッシュやファイルの破損を誘発してしまうことがあります。また、その他のアプリケーション(トロイの木馬などのプログラムを含む)による正常ではないファンクション・コールによって、透過式暗号化製品のカーネルでファンクション同士が衝突する可能性もあります。

アプリケーション・レイヤーで動いているプログラムの安定性と親和性に比べ、カーネル・レイヤーで動いているそれには大きな開きがあり、開発および製品化を難しいものとしています。

これらの理由から、カーネル・レイヤーで開発されているプログラムはシンプルなものほど良いものとなります。複雑なロジックや細かい機能の開発をするために、開発と調査の難しさは倍増します。また、カーネルで動作させることで、保護されたアプリケーションに対してはハイレベルな認証を与えておかないと、実行ファイル名(例 winword.exeなど)を容易に取得されてしまいます。

例えば、ユーザーがインターネットからダウンロードしたファイル、もしくは独自で開発したプログラムの名称を、保護されたファイルを起動するアプリケーションの実行ファイルと同じネーミングにすることで(例えば、マルウェアのabc.exeをwinword.exeにリネーム)、簡単に暗号化されたファイルを平文にし、内容をハッキングすることができます。この例から見ると、単にカーネルレイヤーで動いている透過式暗号化の安全性は問われてしまうかもしれません。実際に複数の暗号化製品をテストした結果、その脆弱性は確認できています。

そこでSecward社では、新しい透過式暗号化技術(New DRM Technologies)を開発しました。

米国Secward Technologies, Inc. 共同創設者&CEO(最高経営責任者)

半導体企業や通信企業、郵便局、通信企業といった多くのSOCデザイン・導入経験から、セキュリティ製品やセキュリティアプリケーション、企業ごとの異なるセキュリティ要件などに関する豊富な知識をもとに、同社を設立。現在は、透過型暗号化製品「TotalFileGuard」を日本をはじめ2バイト言語圏を中心に台湾、中国にて事業を展開。
Secwardジャパン株式会社のURL: http://www.secward.com/Jp/
Secwardジャパン株式会社の問い合わせ先: mailto:sjp_mktg@secward.com

連載バックナンバー

Think ITメルマガ会員登録受付中

Think ITでは、技術情報が詰まったメールマガジン「Think IT Weekly」の配信サービスを提供しています。メルマガ会員登録を済ませれば、メルマガだけでなく、さまざまな限定特典を入手できるようになります。

Think ITメルマガ会員のサービス内容を見る

他にもこの記事が読まれています