TEE(Trusted Execution Environment)技術 ####################### TEE技術の概要とAutoPrivacy DataCleanRoomでの活用方法について説明します。 TEEとは *********************** TEE(Trusted Execution Environment)は、ハードウェアレベルでデータを保護する技術の総称です。 TEEには複数のハードウェア実装があり、代表的なものとしてIntel SGX、AMD SEV、ARM TrustZoneなどがあります。 以下では、AutoPrivacy DataCleanRoomで使用している Intel SGX を例に、TEEの主な特徴を説明します。 主な特徴 ======== **Enclave領域の隔離** - TEE内の領域(Enclave)は外部から完全に隔離されています - サーバー管理者やクラウドプロバイダーであっても、Enclave内のデータにアクセスできません - オペレーティングシステムやハイパーバイザーからもアクセス不可能です **MEE(Memory Encryption Engine)による透過的なメモリ暗号化** - MEEはCPUとメモリ(DRAM)の間に配置され、データの暗号化・復号を自動的に行います - Enclave内のデータがCPUパッケージの外部(DRAM)に書き込まれる際、MEEが透過的に暗号化します - 逆に、DRAMからCPUに読み込まれる際は、MEEが透過的に復号します - 暗号化キーは電源投入時にハードウェア内で生成され、実行中のソフトウェアからはアクセスできません - 物理的なメモリへの直接アクセスがあっても、暗号化されたデータしか読み取れません **ハードウェアレベルでの保護機構** - CPUチップ内部のハードウェア機能として実装されています - ソフトウェアの脆弱性に依存しない、根本的なセキュリティを提供します - Remote Attestation機能により、実行環境の正当性を検証できます さらに詳しい技術情報については、以下を参照してください: - `Intel SGX 公式ドキュメント `_ AutoPrivacy DataCleanRoomでのTEE活用 *********************** AutoPrivacy DataCleanRoomでは、計算実行サーバーにTEE技術を使用しています。 計算実行サーバーの構成 ====================== 計算実行サーバーは、以下の2つの領域で構成されています: - TEE内(Enclave内): ユーザーのデータを復号し、関数を実行する領域 - TEE外: サーバーの管理機能やネットワーク通信を担当 データ保護の仕組み ================== **暗号化されたデータの送信** - クライアント(APC CLI)のローカル環境でデータを暗号化してからサーバーに送信します - 送信中および保存中は常に暗号化された状態です - 計算結果はTEE内で暗号化してからクライアントに返送します **TEE内でのみ復号** - 暗号化されたデータはTEE内でのみ復号されます - サーバー管理者やクラウドプロバイダーを含む誰も、暗号化されたデータの内容を見ることはできません **検証可能な安全性** - Remote Attestation機能により、サーバーのTEE環境が正常に動作していることを検証できます - ユーザーは計算を実行する前に、実行環境の安全性を確認できます 詳細なシステム構成については、:doc:`../concepts/architecture` を参照してください。