昨年 9 月、Azure Confidential Computing の取り組みをご紹介しました。これにより、Microsoft Azure は、お客様の使用中のデータを保護する新しいデータ セキュリティ機能を実装した初のクラウド プラットフォームとなりました。Azure チームは、Microsoft Research、Intel、Windows、開発者用ツール グループと協力し、Intel SGX や Virtualization Based Security (VBS、旧称 Virtual Secure Mode) などの Trusted Execution Environment (TEE) をクラウドで利用できるようにしました。TEE の役割は、処理中のデータを保護し、TEE 外部からアクセスできないようにすることです。今回は、Confidential Cloud (機密性に優れたクラウド) のビジョンと前回の発表以降の取り組みについて詳しくお伝えします。
今日では多くの企業がミッション クリティカルなワークロードやデータをクラウドに移行しています。このようにクラウドの採用が促進される大きな要因として、パブリック クラウドのセキュリティ上のメリットが挙げられます。International Data Corporation (IDC) が発表した 2017 年版の CloudView (英語) 調査によると、企業がクラウドへの移行を進める主な推進要因の 1 つが "セキュリティの強化" です。一方で、特に機密性の高い知的財産やデータをクラウドに移行する場合には、現在もセキュリティに対する懸念が広く阻害要因となっています。先日、Cloud Security Alliance (CSA) によって、「Treacherous 12 Threats to Cloud Computing (クラウド コンピューティングに関して懸念される 12 の脅威) (英語)」レポートの最新版が公開されました。予想どおり、主要なクラウドの脅威の 1 つとしてデータ漏えいが挙げられた以外に、システムの脆弱性による漏えい、悪意のある内部関係者、共有テクノロジの脆弱性という 3 つのデータ セキュリティ上の懸念が指摘されています。
Azure Confidential Computing は、クラウドで処理中のデータを保護することを目的としています。この機能はマイクロソフトの「Confidential Cloud」のビジョンの基盤となるもので、以下のような原則に基づいています。
- 主要なデータ漏えいの脅威を軽減すること
- インフラストラクチャは制御できないものの、保管中、転送中、使用中のデータをお客様が完全に制御できること
- クラウドで実行されるコードが保護され、お客様が検証可能であること
- クラウド プラットフォームからデータやコードにアクセスできないようにすること、つまりクラウド プラットフォームをトラステッド コンピューティング ベースの外部に配置すること
現在、このテクノロジはデータ処理シナリオの一部のみに適用されていますが、成熟度の高まりと共に、クラウドとエッジの両方において、あらゆるデータ処理の新たなスタンダードになることが予想されます。
このビジョンを実現するためには、ハードウェア、ソフトウェア、サービスのすべてでイノベーションを進め、Confidential Computing をサポートする必要があります。
- ハードウェア: この数年間、Microsoft はシリコン パートナーと緊密に協力して、演算処理中にアプリケーションを分離する機能を追加し、これらの機能を複数のオペレーティング システムで利用できるように取り組んできました。この緊密なパートナーシップにより、準備が整いしだい、最新の Intel Secure Enclave が提供されます。
Azure の米国東部リージョンで、Intel SGX テクノロジを採用した最新世代の Intel Xeon プロセッサの提供が開始されます。これにより、ハードウェア ベースの機能をクラウドで利用できるようになります。その後、オンプレミスでの一般提供を予定しています。
- コンピューティング Azure のコンピューティング プラットフォームを拡張して、TEE に対応したコンピューティング インスタンスをデプロイし、管理できるようにします。
Intel SGX テクノロジを採用した最新世代の Intel Xeon プロセッサ搭載の新しい VM ファミリ (DC シリーズ) が導入されます。今回のリリースにより、クラウドで SGX 対応アプリケーションを実行して、コードやデータの機密性と整合性を保護できるようになります。
- 開発: Microsoft はパートナーと緊密に協力して、ハードウェア ベースとソフトウェア ベースの両方の TEE で一貫した Windows および Linux 用 API を開発し、機密性の高いアプリケーション コードを移植できるようにします。また、機密性の高いアプリケーションの開発やテストに利用できるツールやデバッグのサポートにも取り組んでいます。
Intel SGX SDK と新たに追加される Enclave API により、C/C++ アプリケーションの開発が可能になります。
- 構成証明: TEE で実行されるコードの信頼を確立し、コードにシークレットを公開するかどうかを判断するには、そのコードの ID を検証する必要があります。マイクロソフトはシリコン パートナーと協力して、検証をシンプルかつ広く利用できるようにする構成証明サービスを設計、ホストします。
- サービス/ユース ケース: 仮想マシンによって、新しい安全なビジネス シナリオやユース ケースに対応するための構成要素が提供されます。マイクロソフトは社内全体で、以下のような Confidential Computing を活用したサービスや製品の開発を積極的に進めています。
- SQL Server Always Encrypted により、データの機密性と整合性を保護
- スケーラブルで機密性の高いブロックチェーン ネットワークを実現する Confidential Consortium Blockchain Framework により、信頼性の低い参加者間に信頼性の高い分散ネットワークを構築
- 機密性を確保しながら複数のデータ ソースを組み合わせ、安全なマルチパーティの機械学習シナリオをサポート
- 研究: Microsoft Research は、Azure チームやシリコン パートナーと緊密に協力して、TEE の脆弱性の特定と防止に取り組んできました。その一例として、TEE アプリケーションを強化し、TEE 外部への直接的または間接的な情報漏えいを防止する高度な手法の研究に積極的に取り組んでいます。その研究成果は、機密性の高いコードの開発に使用できるツールやランタイムという形で公開する予定です。
Confidential Computing のプラットフォーム、ソフトウェア、ツールの使用や、開発者コミュニティへの参加をご希望のお客様は、今すぐサインアップしてプレビューへの参加をお申し込みください。 「クラウド コンピューティングに関して懸念される脅威」を軽減するクラウド アプリケーションやクラウド サービスの開発にぜひご協力ください。マイクロソフトは、皆様からのフィードバックをお待ちしております。Confidential Cloud Computing の開発にご協力をお願いいたします。