機密コンピューティング - AWS Nitro Enclaves で処理中のデータを隔離保護する

AWS Nitro Enclaves を使った機密データの隔離処理を解説。暗号化アテステーション、KMS 統合、PII 処理・暗号鍵管理のユースケースを紹介します。

機密コンピューティングの必要性

従来のセキュリティモデルでは、データの保護は保存時 (at rest) と転送時 (in transit) の暗号化で実現されてきました。しかし、データを処理する際には復号してメモリ上に展開する必要があり、この「処理中のデータ」が攻撃対象になります。OS やハイパーバイザーの脆弱性、メモリダンプ、サイドチャネル攻撃などにより、処理中のデータが漏洩するリスクがあります。Nitro ベースの EC2 インスタンス (C5、M5、R5 以降) で利用可能な AWS Nitro Enclaves は、EC2 インスタンス内に完全に隔離された仮想マシン (Enclave) を作成し、機密データの処理を外部からアクセス不能な環境で実行する機密コンピューティングサービスです。Enclave は Nitro Hypervisor によって親インスタンスから完全に隔離され、ネットワーク接続、永続ストレージ、SSH アクセス、外部からのメモリアクセスが一切ありません。AWS のオペレーターを含む誰もが Enclave 内のデータにアクセスできません。

Enclave の仕組みとアテステーション

Enclave は親 EC2 インスタンスの vCPU (最大で親の半分) とメモリの一部を分割して作成されます。親インスタンスとの通信は vsock (仮想ソケット) のみに限定され、TCP/IP ネットワークは使用できません。アプリケーションは Docker イメージとして Enclave にデプロイし、Nitro CLI で起動します。暗号化アテステーション (Attestation) は Enclave の整合性を検証する仕組みです。Enclave の起動時に、Nitro Hypervisor が Enclave のイメージ (コード、設定) のハッシュ値を含むアテステーションドキュメントを生成します。このドキュメントは AWS Nitro Attestation PKI で署名されており、Enclave が改ざんされていないことを暗号学的に証明します。KMS はアテステーションドキュメントを検証し、特定の Enclave イメージでのみ復号可能な暗号鍵ポリシーを適用できます。

ユースケースと KMS 統合

Nitro Enclaves の主なユースケースは、 PII (個人情報) の処理です。医療データ、金融データ、個人識別情報を Enclave 内で処理し、集計結果のみを親インスタンスに返すことで、生データの漏洩リスクを排除します。暗号鍵の管理では、 CloudHSM の代替として Enclave 内で暗号鍵を生成・使用し、鍵が Enclave 外に出ないようにします。 KMS との統合では、 KMS キーポリシーに Enclave のイメージハッシュ (PCR 値) を条件として設定します。これにより、特定のコードが動作する特定の Enclave でのみ KMS キーを使用でき、親インスタンスが侵害されても KMS キーへのアクセスが不可能になります。マルチパーティ計算では、複数の組織がそれぞれのデータを Enclave に送信し、 Enclave 内で共同計算を実行して結果のみを返すパターンに活用できます。追加料金は不要で、 EC2 インスタンスの料金のみで利用できます。 Nitro Enclaves のベストプラクティスを網羅的に学ぶなら、技術書 (Amazon)を参照してください。

Nitro Enclaves の料金

Nitro Enclaves 自体に追加料金は発生しません。コストは Enclave に割り当てる vCPU とメモリの分だけ、親インスタンスのリソースが減少する点です。例えば m5.2xlarge (8 vCPU、32 GB) で Enclave に 2 vCPU、8 GB を割り当てると、親インスタンスは 6 vCPU、24 GB で動作します。Enclave 用に大きいインスタンスを選択する必要がある場合、そのインスタンス料金の差額が実質的なコストです。KMS との統合で使用する KMS キーの料金 (月額 1 ドル/キー) も発生します。

まとめ - Nitro Enclaves の活用指針

AWS Nitro Enclaves は、処理中のデータを完全に隔離保護する機密コンピューティングサービスです。Nitro Hypervisor による隔離、暗号化アテステーション、KMS 統合による暗号鍵の保護が主な強みです。PII の処理、暗号鍵の管理、マルチパーティ計算など、処理中のデータの保護が規制やセキュリティポリシーで求められるユースケースに適しています。追加料金なしで利用でき、既存の EC2 ワークロードに Enclave を追加する形で導入できます。