マイクロソフトと科学者がハードウェアで保護されたデータベースを開発

Table of Contents

マイクロソフトと科学者がハードウェアで保護されたデータベースを開発

今週、カリフォルニア州サンフランシスコで開催された IEEE セキュリティおよびプライバシーシンポジウムにおいて、インペリアル・カレッジ・ロンドンとマイクロソフトの研究者らが、ホストシステムが侵害された場合でもデータとデータベースクエリを安全に保つことを目的とした EnclaveDB という実験的なデータベースエンジンを発表しました。

インペリアル・カレッジ・ロンドンの博士課程の学生であるクリスチャン・プリーブ氏とマイクロソフトの研究員カピル・ヴァスワニ氏およびマヌエル・コスタ氏による研究論文に記載されているように、EnclaveDB は信頼できるハードウェアの助けを借りて「データとクエリの機密性、整合性、および最新性を保証する」とのことです。

EnclaveDB はリレーショナル データベースの規則に従っており、承認されたユーザーがデータ テーブルとインデックスを作成し、構造化照会言語 (SQL) を使用してその情報を照会できます。

イルトロン

マイクロソフトの研究者が準同型暗号の速度の壁を打ち破る

続きを読む

セキュリティに関しては両者の見解が分かれています。データは保存時および転送時に暗号化されることが多い一方、クエリ処理時にはメモリ内で復号化される傾向があります。ただし例外もあり、CryptDB、Monomi、Seabedなどは暗号化されたデータに対するクエリ処理をサポートしています。

しかし、データの専門家たちは、既存のアプローチには欠点があり、特にクエリの制限や情報漏洩のリスクが高いと主張しています。データベースとのやり取りをより安全にする他の手法にも、独自の問題があると彼らは指摘します。例えば、データベース全体を信頼できる実行環境(Template Execution Environment)やセキュアエンクレーブ(Secure Enclave)内に配置しても、悪意のある管理者から保護することはできません。

両陣営に足を踏み入れる

EnclaveDBは設計上、外部および内部からの攻撃から保護します。そのために、EnclaveDBはセキュアエンクレーブ(クエリとトランザクションマネージャーをホストする場所)に片足を置くことに依存しています。もう片方の足は、管理タスクを実行するもののエンクレーブ内の機密データへのアクセスは提供しない、信頼できないデータベースサーバーをサポートします。

「従来のデータベースとは異なり、EnclaveDBは、信頼できるクライアントマシン上の事前コンパイラを使用して、機密データに対するクエリをネイティブコードにコンパイルします」と論文は説明しています。「コンパイル済みのクエリは署名され、暗号化され、信頼されていないデータベースサーバー上のエンクレーブに展開されます。」

クエリのコンパイルと実行を分離することで、特定のデータベース エンジン コンポーネントを信頼できる環境でホストできます。

「EnclaveDBクライアントは、エンクレーブとの安全なチャネルを確立し、暗号化されたパラメータを含むリクエストを送信することで、プリコンパイルされたクエリを実行します」と論文では説明されている。「エンクレーブはリクエストを認証し、パラメータを復号化し、プリコンパイルされたクエリを実行し、クエリ結果を暗号化して、クライアントに結果を返します。」

EnclaveDB は Intel Software Guard Extensions (SGX) を念頭に置いて設計されましたが、この設計は代替の信頼できるハードウェア システムでも使用できるはずです。

「コア技術自体は非常に汎用的です」と、マイクロソフトリサーチのシステム&ネットワーキンググループの研究者、カピル・ヴァスワニ氏はThe Register紙との電話インタビューで述べた。「強力なセキュリティ要件が求められるあらゆるデータベースの代替として利用できます。」

Vaswani 氏は、EnclaveDB は、関係者全員にデータを公開することなく、複数の関係者が集約されたデータに対してクエリを実行できるようにする方法として最適であると示唆しました。

「複数の銀行が自社のデータをデータベースに蓄積し、不正検知機能を実行したいと考えている状況を想像してみてください」と彼は述べた。「各行は、自社のデータが他の行に漏洩しないという保証を求めているのです。」

同氏は、医療データにも同様の方法で使用できると述べ、複数の医療提供者が研究目的でデータを集約しながら、情報が権限のある処理者の管理下にあることを保証するシナリオを説明した。

曇りの出場者?

SQL ServerのインメモリデータベースエンジンであるHekatonを使用して構築されたEnclaveDBプロトタイプは、小規模な信頼できるコンピューティングベース(従来のデータベースサーバーの100分の1)のみを必要とします。研究者によると、EnclaveDBは優れたパフォーマンスを発揮し、低いオーバーヘッドでTPC-Cで最大31,000 tpsを実現します。

「信頼できるハードウェアの利点の一つは、同様の保証を提供する他のソリューションとは異なり、非常に優れたパフォーマンスが得られることです」と彼は述べた。「強力なセキュリティ保証を備えながらも、ベアメタルに近いパフォーマンスを実現できるのです。」

ヴァスワニ氏は、EnclaveDBはまだ研究プロジェクト段階であり、実用的な製品になるまでには、もしそうなるとしても、しばらく時間がかかるだろうと警告した。Microsoft Azureプラットフォーム上で動作するようになった場合、コア部分はおそらくオープンソース化されるだろうとヴァスワニ氏は述べた。

研究チームはまだこの技術をテストする企業を探していないが、興味を持つ可能性のある組織と協力する用意はあるという。

EnclaveDB は Intel SGX を念頭に置いて設計されましたが、Vaswani 氏は他の信頼できるハードウェア システムの出現によってプロジェクトが強化されると考えています。

「長期的には、このようなものが成功するには、より多様で信頼できるハードウェアの実装が必要です」と彼は語った。®

Discover More