
CryptDBのアーキテクチャ
CryptDBで実装されるアプローチは、完全準同型暗号化と呼ばれます。 IBM Research の暗号作成者であるCraig Gentry は、2009年にDBMSの最初の完全準同型モデルを提案しました。これは、乗算と加算の演算に対して同時に準同型であり、任意の数学関数を表現できます。 確かに、1つの問題がありました。通常のDBMSと比較した場合の操作速度が約1兆倍に増加しました。
一方、CryptDBは、MySQLと比較して、SQLデータベースのほとんどの操作の速度を15〜26%だけ低下させます。

MITの研究者はパフォーマンスを最優先事項としているため、プロジェクトではさまざまなアルゴリズムを使用し、それぞれが特定のタスクに最適に対応しています。 たとえば、RSAは暗号化されたデータ乗算演算に使用され、Paillierは加算に使用されます。 比較およびソート操作のために、他のスキームが使用されます。
実際、CryptDBの最も革新的な部分は、実行される操作のタイプに応じて、異なる暗号化スキームをオンザフライで切り替える機能です。 これは、データが異なるアルゴリズムによって複数のレイヤーで暗号化される場合の「タマネギ」マルチステージ暗号化により実現されます。 各レイヤーには、独自のキーとサポートされる操作のリストがあります。 最も信頼性の高いアルゴリズムは下位層で使用され、下位層をデコードせずに上位層での操作が可能です。

残念ながら、CryptDBには特定の制限があります。 たとえば、このシステムは平方根を計算することができず、レコードを使用したその他の必要な操作をサポートしていません。 さらに、上位層を解読するとき、システムは潜在的な攻撃者にデータベースレコードの属性を与えます。 しかし、これらは実際的な欠陥よりも理論的なものです。 公開された科学論文で、開発者は単純なユースケースでシステムを評価しました:phpBBフォーラムのデータベースと大学でのトレーニングWebアプリケーションのデータベース。 彼らによると、これらの場合、CryptDBは必要な操作の約99.5%を実行し、個人情報を発行しません。

CryptDBを使用したphpBBフォーラムのプライベートメッセージ投稿スキームにより、送信者と受信者のみがメッセージを見ることができます。 潜在的な攻撃者がフォーラムを制御すると、オープンセッションを持つプライベートユーザーのみがプライベートメッセージを見ることができます。
CryptDB:暗号化されたクエリ処理による機密性の保護。 Raluca Ada Popa、キャサリンMSレッドフィールド、Nickolai Zeldovich、Hari Balakrishnan MIT CSAIL
フォーブス経由