デジタル人材の育成

未踏IT人材発掘・育成事業:2023年度採択プロジェクト概要(福山PJ)

公開日:2023年6月19日

1.担当プロジェクトマネージャー

  • 竹迫 良範(株式会社リクルート データプロダクトユニット ユニット長)

2.採択者氏名

  • 福山 将英(慶應義塾大学環境情報学部環境情報学科)

3.採択金額

  • 2,736,000円

4.プロジェクト名

  • TEEを用いたセキュアかつ高性能なデータベースシステムの開発

5.関連Webサイト

  • なし

6.申請プロジェクト概要

クラウドコンピューティング(以降、クラウド)の利用は増加の一途を辿っている。GoogleやMicrosoft、Amazonなどの大企業がクラウド事業を提供しており、それらは外部からの攻撃に対する様々な策を講じているため、安全であると考えられている。しかし、安心は満たされていない。なぜなら、クラウド事業者は自身が提供しているマシンの管理者権限を有しているため、彼らがデータの読み取りや改ざんを行うかもしれないという疑念が残るからだ。クラウドを利用するときは当然、組織の重要なデータベースをクラウド上において運用するが、クラウド事業者等の管理者権限を有する者が不正アクセスを行っていないことを保証するのは難しい。

この対策として、データベースに準同型暗号やTEE(Trusted Execution Environment)を適用したデータの機密性を保証する手法が提案されているが、前者は暗号演算による膨大なオーバーヘッドがあること、後者は旧型の並行性制御法や逐次ロギングが採用されていることから、スケールアップを行うことは困難である。

本プロジェクトでは、「高セキュリティ」「高性能」「高分離レベル」「スケーラビリティ」の4つ全てを満たす、セキュアかつ高性能なデータベースシステムを開発する。具体的には、TEEの一つであるIntel SGXによって提供される隔離実行環境(Enclave)に、トランザクション処理プロトコルのSilo、インデックス及び機密データを配置することにより、OSやハイパーバイザ、クラウド事業者からの読み取りや改ざんを防ぎつつ、高性能化を実現する。また、出力したログに関しても、暗号化とログ改ざん検知プロトコルの適用を行うことで、機密性と完全性を保証する。

本システムは高セキュリティかつ高性能を提供するため、金融、医療等、機密データを扱う様々な分野の高性能化と安全性付与に寄与することが期待できる。

7.採択理由

本プロジェクトは、Intel SGX v2を用いて、KVSインタフェースを持つセキュアで高性能なデータベースシステムを自作するという野心的な提案である。従来のインメモリデータベースで使われていたSiloというトランザクション処理技法をTEE上の隔離実行環境の中で動かすことで、セキュリティと高性能を両立させることを狙っている。

似たようなコンセプトでオープンソースとして公開されている従来の実装としてはShieldStoreがあるが、古いIntel SGX v1で開発されており、128MBのメモリサイズ上限が存在するため、インメモリデータベースを実装するには不適当なアーキテクチャである。

今回開発する実装はIntel SGX v2のため512GBまで対応が可能になる見込みである。ログは暗号化した状態でWALを行い、並列ログ書き込みできるのであれば他システムと比べても優位性があると考えられる。
セキュアなトランザクション処理技法については、論文上でいくつかの提案はあるが、ソースが公開されていないものも多い。本プロジェクトによって新しくIntel SGX v2で実装したTEE上のSiloデータベースシステムがオープンソースとして公開され、セキュアで高性能なデータベースシステムの実用性が向上することを期待し、本提案を採択した。

更新履歴

  • 2023年6月19日

    2023年度採択プロジェクト概要(福山PJ)を掲載しました。