Confidential VMs を利用した Google Cloud Confidential Computing
Google Cloud Japan Team
※この投稿は米国時間 2020 年 7 月 14 日に、Google Cloud blog に投稿されたものの抄訳です。
Google では、今後クラウド コンピューティングは秘匿化がさらに進み、データの機密性をユーザーが常にコントロールできる暗号化されたサービスとなると確信しています。
Google Cloud ではデフォルトで保存時と転送時にデータが暗号化されますが、お客様のデータは処理時に復号する必要があります。Confidential Computing は、使用中、つまり処理中もデータを暗号化する画期的なテクノロジーです。Confidential Computing 環境では、メモリ内や中央処理装置(CPU)外のどの場所でも、データが暗号化された状態が保持されます。
現在はベータ版での提供となっている Confidential VMs は、Google Cloud の Confidential Computing ポートフォリオでは初となるプロダクトです。Google では、クラウド インフラストラクチャの一部として、すでにさまざまな分離手法とサンドボックス化手法を導入し、マルチテナント アーキテクチャの安全性を確保しています。Confidential VMs は、このような安全性をさらに高いレベルに引き上げるプロダクトであり、メモリ暗号化によりクラウド内ワークロードの分離を強化することができます。Confidential VMs の導入により、お客様のあらゆる機密データを保護できますが、特に、規制が多い業界に利益をもたらすものと考えています。
J.P. Morgan Chase & Co. のディレクターである Morgan Akers 氏は、次のように述べています。「J.P. Morgan Chase では、データ保護は最優先事項の一つであり、Confidential Computing をデータ保護戦略の一環として検討すべき新しいテクノロジーと考えています。」
新たな可能性を切り拓く
Asylo はコンフィデンシャル コンピューティングに対応したオープンソースのフレームワークです。Google の取り組みは、このフレームワークの導入から始まり、容易にデプロイ可能で使いやすく、高パフォーマンスを提供し、クラウドで実行するあらゆるワークロードに適用できるコンフィデンシャル コンピューティング環境の実現に注力されてきました。Google では、利便性、柔軟性、パフォーマンス、セキュリティについて妥協すべきではないと考えています。
ベータ版での Confidential VMs の提供に伴い、Google は、このようなレベルのセキュリティと分離を提供する初の大規模クラウド プロバイダとなりました。その一方で、新規で構築するアプリケーションだけでなく「リフト&シフト」するアプリケーションについても、シンプルで使いやすいオプションを提供しています。このようなアプローチにより、次のことが実現します。
- これまでにない機密性保持: 処理中であっても、最もセンシティブなデータの機密性をクラウドで保護できます。Confidential VMs は、第 2 世代の AMD EPYC™ CPU が提供する Secure Encrypted Virtualization(SEV)機能を利用しています。使用中のほか、インデックス登録中やクエリの実行中、トレーニング中も、お客様のデータは暗号化された状態が維持されます。暗号鍵は VM ごとにハードウェアで生成され、エクスポートできません。
- イノベーションの強化: Confidential Computing により、これまでは不可能であったコンピューティング シナリオが可能になります。たとえば、機密性の高いデータセットを共有し、クラウドで共同研究を行うことができます。この場合も、データの機密性は完全に保持されます。
- リフト&シフトのワークロードに対応した機密性保持: Google の目標は、Confidential Computing を容易に導入できるプロダクトにすることです。Confidential VMs への移行はシームレスです。現在 VM で実行しているすべての GCP ワークロードは、Confidential VMs として実行できます。チェックボックス 1 つで実現できるシンプルな作業です。
- 高度な脅威に対処できる保護: Confidential Computing は、Shielded VM が提供する、ルートキットとブートキットに対する保護に基づいて構築されていて、Confidential VMs で実行するオペレーティング システムの整合性が確保されます。
Confidential VMs の基盤
Confidential VMs は、第 2 世代 AMD EPYC™ プロセッサを装備した N2D シリーズの VM で稼働します。AMD SEV 機能を利用し、要求の厳しいコンピューティング タスクを高性能で処理するうえ、専用の VM インスタンス キー(AMD EPYC プロセッサで生成、管理される)を使用して VM メモリを暗号化します。これらのキーは VM 作成時に AMC Secure プロセッサで生成されて VM 内のみに置かれるため、Google や、ホスト上で稼働している他の VM が利用することはできません。
Google では、ハードウェアベースのインライン メモリ暗号化に加え、Shielded VM を基盤とした Confidential VMs を構築しました。これにより、OS イメージの強化を図り、ファームウェア、カーネル バイナリ、ドライバの整合性を検証できます。現在提供しているイメージは Ubuntu v18.04、Ubuntu 20.04、コンテナ最適化 OS(COS v81)、RHEL 8.2 ですが、CentOS、Debian などのディストリビュータと協力し、さらに多くのコンフィデンシャル OS イメージを提供できるよう努めています。
Google は AMD Cloud Solution のエンジニア チームと密接に連携して、ワークロード パフォーマンスを妨げない VM メモリ暗号化を実現しました。従来のプロトコルよりも高いスループットでストレージのトラフィックやネットワーク トラフィックを処理するために、新しい OSS ドライバ(nvme と gvnic)のサポートを追加しました。これにより、Confidential VMs のパフォーマンス指標を Confidential VMs 以外のパフォーマンス指標に確実に近づけることができます。
AMD でデータセンター エコシステム部門のバイス プレジデントを務める Raghu Nambiar 氏は、次のように述べています。「Secure Encrypted Virtualization 機能を搭載した第 2 世代 AMD EPYC プロセッサで提供される革新的なハードウェアベースのセキュリティ機能により、仮想環境内でデータを安全に保護できます。N2D シリーズで稼働する新しい Google Compute Engine Confidential VMs のために、当社は Google と連携してワークロードのパフォーマンスを損なわないデータ保護を実現しました。Confidential VMs は、さまざまなワークロードにおいて、標準の N2D VM と同レベルの高パフォーマンスを提供できます。」
テクノロジーの変革のチャンス
Confidential Computing は、機密性保持とプライバシーは安全に保護したまま、クラウドにおける組織のデータ処理方法を変えることができます。組織はデータセットの機密性保持を損なわずに、他の組織とのコラボレーションを進めることができるというメリットもあります。このような安全なコラボレーションから、より革新的なテクノロジーやアイデアが次々ともたらされる可能性は大きく、たとえば、速やかなワクチンの開発や病気の治癒などが可能になるでしょう。
このテクノロジーの可能性を、ぜひお客様のビジネス拡大のチャンスにご活用ください。Confidential Computing のページで詳細をご確認ください。
- Google Cloud Confidential Computing リード プロダクト マネージャー、Nelly Porter
Google Cloud Confidential Computing エンジニアリング ディレクター、Gilad Golan
G Suite および GCP Platform リード セキュリティ PMM、Sam Lugani