Skip to main content
QUICK REVIEW

[論文レビュー] StealthDB: a Scalable Encrypted Database with Full SQL Query Support

Alexey Gribov, Dhinakaran Vinayagamurthy|arXiv (Cornell University)|Nov 7, 2017
Security and Verification in Computing参考文献 46被引用数 8
ひとこと要約

StealthDB は、Intel SGX 上に構築されたスケーラブルでフル-SQL 暗号化データベースシステムであり、最小限のパフォーマンスオーバーヘッドでトランザクションワークロードをサポートする。機密性の高い操作をハードウェア保護されたエナclaveで隔離することで、強固なセキュリティ保証を達成し、TPC-C ベンチマークにおいてスループットをわずか 30% 減少させる一方で、エンドツーエンドの機密性と整合性を維持する。

ABSTRACT

Encrypted database systems provide a great method for protecting sensitive data in untrusted infrastructures. These systems are built using either special-purpose cryptographic algorithms that support operations over encrypted data, or by leveraging trusted computing co-processors. Strong cryptographic algorithms (e.g., public-key encryptions, garbled circuits) usually result in high performance overheads, while weaker algorithms (e.g., order-preserving encryption) result in large leakage profiles. On the other hand, some encrypted database systems (e.g., Cipherbase, TrustedDB) leverage non-standard trusted computing devices, and are designed to work around the architectural limitations of the specific devices used. In this work we build StealthDB - an encrypted database system from Intel SGX. Our system can run on any newer generation Intel CPU. StealthDB has a very small trusted computing base, scales to large transactional workloads, requires minor DBMS changes, and provides a relatively strong security guarantees at steady state and during query execution. Our prototype on top of Postgres supports the full TPC-C benchmark with a 30% decrease in the average throughput over an unmodified version of Postgres operating on a 2GB unencrypted dataset.

研究の動機と目的

  • 信頼できないクラウド環境において、フル SQL 機能をサポートするセキュアでスケーラブルな暗号化データベースシステムを設計すること。
  • 受動的および能動的攻撃者に対する強固なセキュリティ保証を維持しながら、パフォーマンスオーバーヘッドを最小限に抑えること。
  • 信頼計算基盤(TCB)を縮小し、非標準的または特許技術に依存しないこと。
  • PostgreSQL などの既存の DBMS に最小限の変更で統合できること。
  • ハードウェア強制暗号化を用いて、大規模なトランザクションワークロード(例:TPC-C)をサポートできること。

提案手法

  • Intel Software Guard Extensions(SGX)を活用して、OS やクラウド管理者が不正アクセスできないように、隔離された暗号化メモリエナclaveを構築する。
  • 信頼できる部分と信頼できない部分を分割することでデータベースアーキテクチャを設計し、機密性の高い操作(例:クエリ処理、インデックスアクセス)をエナclave内でのみ実行する。
  • メルクルツリーを用いてエナclaveのメモリ内データの整合性を保証し、改ざんを検出する。アクセスごとに対数的オーバーヘッドが発生する。
  • エナclave内でクエリ処理、インデックス検索、トランザクション管理を実装することで、フル SQL クエリ実行を実現し、サイドチャnel漏洩を最小限に抑える。
  • バッチ処理とエナclaveモードと非エナclaveモード間のコンテキストスイッチを減らすことでパフォーマンスを最適化する。
  • PostgreSQL に最小限の変更で統合可能であり、既存のアプリケーションに対して透過的な暗号化実行(イン・ユーズ)を可能にする。

実験結果

リサーチクエスチョン

  • RQ1Intel SGX を用いて、非標準的または大規模な信頼できるハードウェアを必要とせずに、コンsumer レベルの Intel CPU で効率的かつ安全にフル-SQL 暗号化データベースを構築できるか?
  • RQ2トランザクションワークロードに対して、強固なセキュリティ保証を維持しながら、パフォーマンスオーバーヘッドを最小限に抑える方法は何か?
  • RQ3限られたエナclaveメモリを有する SGX 上で暗号化データベースを構築する際、セキュリティ、機能、パフォーマンスのトレードオフはどのように生じるか?
  • RQ4大規模なデータセットや TPC-C のような複雑なワークロードに対しても、エンドツーエンドの機密性と整合性を維持しながらスケーラブルに拡張可能か?
  • RQ5信頼計算基盤を縮小し、FPGA シェルやカスタムハードウェアなどの信頼できないコンponent に依存しない方法は何か?

主な発見

  • StealthDB は、2GB の未暗号化データセット上で、未変更の PostgreSQL と比較して平均スループットが 30% 減少するが、TPC-C ベンチマークの全機能をサポートする。
  • システムは安定状態およびクエリ実行中においても強固なセキュリティ保証を維持し、クラウド管理者、共用ユーザー、能動的攻撃者からのデータ漏洩を防ぐ。
  • Intel SGX のみに依存することで信頼計算基盤(TCB)を最小限に抑え、信頼できない FPGA シェル やカスタムハードウェアへの依存を回避する。
  • 下位の DBMS への変更は最小限で、PostgreSQL のような成熟したシステムへの統合が可能である。
  • コンテキストスイッチの削減と、整合性確保に効率的なデータ構造(例:メルクルツリー)の活用により、パフォーマンスオーバーヘッドを低く抑える。
  • プロトタイプは、90MB のエナclaveメモリ制限があるにもかかわらず、標準 Intel CPU と SGX を用いてフル-SQL 対応とスケーラビリティが実現可能であることを示している。

より良い研究を、今すぐ始めましょう

論文の読解から最終レビューまで、研究時間を劇的に削減しましょう。

クレジットカード登録不要

このレビューはAIが作成し、人間の編集者が確認しました。