SEV は、仮想マシンベースのコンフィデンシャル コンピューティング ソリューションです。コンフィデンシャル VM という枠で定義される「信頼できる実行環境」を作成することで、使用中のデータを保護します。仮想マシン 1 台につき 1 つのキーを使用し、ゲストとハイパーバイザーを互いに分離します。このキーは AMD Secure Processor によって管理されます。SEV は、ゲスト OS およびハイパーバイザーでの有効化が必要です。ゲストの変更により、VM はメモリ内のどのページを暗号化するかを指定できます。ハイパーバイザーの変更では、ハードウェア仮想化の手順と AMD Secure Processor との通信を使用して、メモリ コントローラー内の適切なキーを管理します。AMD は、進化し続けるセキュリティ環境に対応するために、AMD EPYC サーバー向け CPU の世代ごとに新機能を追加することで SEV を進化させています。 これらの機能強化について、次で説明します。
Encrypted State (ES) - 旧称 SEV-ES
SEV-ES は、VM の実行が停止したときに、すべての CPU レジスタの内容を暗号化します。これにより、CPU レジスタ内の情報がハイパーバイザーなどのコンポーネントに漏洩することがなくなり、CPU レジスタの状態に悪意のある変更があるかどうかを検出することもできます。
Secure Nested Paging (SNP) - 旧称 SEV-SNP
SEV-SNP のパワフルなメモリ整合性保護により、データ リプレイやメモリ再マッピングなど、ハイパーバイザーベースの悪質な攻撃を防止し、分離された実行環境を確立できます。SEV-SNP にはオプションのセキュリティ強化機能も複数導入されています。追加の VM 使用モデルをサポートし、割り込み動作に関するより強力な保護を提供、さらに、近年明らかになったサイドチャネル攻撃に対しても保護を強化できます。
Trusted I/O (TIO) - 旧称 SEV-TIO
SEV-TIO は、SEV によって作成された信頼できる実行環境 (TEE) を拡張し、PCI-SIG で定義された TEE デバイス インターフェイス セキュリティ プロトコル (TDISP) を使用した PCIe デバイス (NIC、アクセラレータ、ストレージ) を含むようになっています。TDISP はデバイスの新しいプロトコルと機能を定義しており、これにより、デバイス自体の認証、PCIe ファブリックでのトラフィックの傍受やなりすましの防止、構成の正当性検証、およびホスト ドライバーで使用可能なデバイス制御からのゲスト ワークロードの分離が実現します。
AMD 透過的 Secure Memory Encryption (TSME)
TSME は、システム メモリを暗号化するために単一のキーを使用します。キーは、起動時に AMD Secure Processor によって生成されます。Secure Memory Encryption には、システム BIOS またはオペレーティング システムで有効にする必要があります。BIOS で有効にすると、メモリの暗号化が透過的になり、どのオペレーティング システムでも実行できるようになります。
AMD EPYC™ サーバー向け CPU の世代ごとの SEV 機能と能力
| AMD EPYC サーバー向け CPU の世代 | 新機能 | 新しい能力 |
| AMD EPYC™ 7001 | コンフィデンシャル VM を介した Encrypted State | 128 ビット AES XEX 暗号化 128 スレッド 15 個のキー |
| AMD EPYC™ 7002 | Encrypted State (ES) を介して暗号化された CPU レジスタ | 256 スレッド 509 個のキー 強化されたスケーラビリティ |
| AMD EPYC™ 7003 | Secure Nested Paging (SNP) によるハイパーバイザー分離とゲスト認証のサポート | |
| AMD EPYC™ 8004 & 9004 | CXL 接続メモリ用のメモリ暗号化 | 強力な 256 ビット AES-XTS 暗号化 512 スレッド、1006 キーで、最大 63 個のマルチ ホスト キーに対応 |
| AMD EPYC™ 8005 | セグメント化された RMP Secure AVIC Performance Counter (PMC) の仮想化 ゲスト インターセプト制御 暗号テキストの秘匿 |
|
| AMD EPYC™ 9005 | TDISP (旧称 SEV-TIO) を介した Trusted I/O |
ホワイト ペーパーと仕様
| 資料 | 説明 | リビジョン | 日付 |
|---|---|---|---|
| SEV-TIO ファームウェア インターフェイス仕様 | SEV ファームウェアへの Trusted I/O 拡張を指定します。TIO 拡張は、ゲストがゲスト プライベート アドレス空間内で信頼できるデバイスにバインドし、それらを使用するための仕組みを提供します。 | 0.91 | 2025 年 7 月 |
| VirTEE/SEV を使用した SEV-SNP プラットフォーム認証 | VirTEE/SEV クレートは、第 3 世代以降の AMD EPYC プロセッサに搭載されている AMD Secure Processor とのインターフェイスとなる、Rust に最適化された使いやすい API です。 | 1.2 | 2023 年 7 月 |
| SEV-TIO ホワイト ペーパー | AMD SEV ゲストの I/O パフォーマンスとセキュリティを向上させる Trusted I/O テクノロジの概要 | 2023 年 4 月 | |
| バージョン管理されたチップ保証キー (VCEK) 証明書および KDS インターフェイスの仕様 | VCEK 証明書と証明書の取得に使用する KDS インターフェイスの概要。 | 1.00 | 2025 年 1 月 |
| Guest Hypervisor Communication Block (GHCB) の標準化 | Guest-Hypervisor Communication Block (GHCB) 形式を標準化し、ハイパーバイザーと SEV-ES ゲスト間の相互運用性を可能にするための GHCB で提供される必要な終了サポートおよび関連ゲスト状態を指定します。 | 2.04 | 2025 年 1 月 |
| SEV Secure Nested Paging ファームウェア ABI 仕様 | SNP アクティブ ゲストを管理するためのホスト ハイパーバイザーで使用できる API を文書化します。 | 1.58 | 2025 年 5 月 |
| SVSM の仕様 | SEV ゲスト用のセキュア VM サービス モジュール (SVSM) | 1.0 | 2023 年 7 月 |
| AMD のメモリ暗号化 | Secure Memory Encryption (SME) および Secure Encrypted Virtualization (SEV) の概要。 | 2021 年 10 月 | |
| Secure Encrypted Virtualization API | ホスト ハイパーバイザーとゲスト VM メモリ間のキーの管理と安全なデータ転送のためにホスト ハイパーバイザーが使用できる API を文書化します | 3.24 | 2020 年 4 月 |
| AMD64 アーキテクチャ プログラマ マニュアル ボリューム 2 | AMD64 アーキテクチャのリソースおよびシステム ソフトウェアによって管理される機能について説明します。注記セクション
|
3.44 | 2026 年 4 月 |
| AMD SEV-SNP | 完全性保護などにより、VM の分離を強化します。 | 2020 年 1 月 | |
| OpenStack: libvirt ドライバーで AMD SEV 暗号化インスタンスを起動 | Nova の libvirt ドライバーが、AMD の SEV (Secure Encrypted Virtualization) テクノロジを使用して暗号化された KVM インスタンスの起動をサポートするために必要な作業を提案しています。 | 2019 年 1 月 | |
| SEV-ES による VM レジスタ状態の保護 | Encrypted State SEV-ES 機能の技術概要、そのアーキテクチャの背後にある原理、および暗号化 VM の分離をいっそう強固にするための保護。 | 2017 年 2 月 |
リンク & ダウンロード
| リンク | 説明 |
|---|---|
| https://github.com/AMDESE/AMDSEV | 開発中の Linux オープンソース コード |
| Confidential Containers | Confidential Containers (CoCO) プロジェクト |
| Oracle Linux と共に AMD Secure Memory Encryption を使用 | SME および SEV に対する Oracle UEK のサポート |
| SUSE: AMD Secure Encrypted Virtualization (AMD-SEV) ガイド | SEV の仕組み、有効化と設定の方法、非暗号化仮想化と比較した場合の使用に伴う制限と制約についての基本的な理解が得られるよう解説します。 |
| ask_ark_naples.cert | EPYC 7xx1 (Naples) の ASK/ARK 証明書 |
| ask_ark_rome.cert | EPYC 7xx2 (Rome) の ASK/ARK 証明書 |
| ask_ark_milan.cert | EPYC 7xx3 (Milan) の ASK/ARK 証明書 |
| ask_ark_genoa.cert | EPYC 9xx4 (Genoa) の ASK/ARK 証明書 |
| ask_ark_prod_turin.cert | EPYC 9xx5 (Turin) の ASK/ARK 証明書 |
| amd_sev_fam17h_model01h_0.17.49.zip | SEV ファームウェア | SEV ファームウェア 0.17.49 [hex 00.11.31]、EPYC 7xx1 (Naples) 用 |
| amd_sev_fam17h_model3xh_0.24.22.zip | SEV ファームウェア | SEV ファームウェア 0.24.22 [hex 00.18.16]、EPYC 7xx2 (Rome) 用 |
| amd_sev_fam19h_model0xh_1.58.02.zip | SEV ファームウェア | SEV ファームウェア 1.58.02 [hex 1.3A.02]、EPYC 7xx3 (Milan) 用 |
| amd_sev_fam19h_model1xh_1.58.02.zip | SEV ファームウェア | SEV ファームウェア 1.58.02 [hex 1.3A.02]、EPYC 9xx4 (Genoa) 用 |
| amd_sev_fam1ah_model0xh_1.58.06.zip | SEV ファームウェア | SEV ファームウェア 1.58.06 [hex 1.3A.06]、EPYC 9xx5 (Turin) 用 |
| CEK 証明書ウェブ ページ | CEK 証明書を取得するためのインタラクティブ ツール。https://kdsintf.amd.com/cek/id/<GetIDValue> としても利用可 |
| https://github.com/AMDESE/sev-tool | SEV プラットフォーム証明書の管理が可能な非推奨 AMD SEV ツール |
テクニカル プレゼンテーション
| フォーラム | プレゼンテーション | 日付 |
|---|---|---|
| Linux Security Summit (2022) | Secure Nested Paging 認証: ゲストとの信頼関係の構築 | 2022 年 9 月 |
| KVM Forum (2022) | AMD のセキュア VM サービス モジュールに機密ゲスト サービスを提供 | 2022 年 9 月 |
| Linux Security Summit (2021) | Secure Nested Paging 開発アップデート | 2021 年 9 月 |
| KVM Forum (2021) | Secure Nested Paging を使用した、悪意のあるハイパーバイザーからの保護 | 2021 年 9 月 |
| Linux Security Summit (2019) | 悪意のあるハイパーバイザから保護するための今後の x86 テクノロジ | 2019 年 11 月 |
| KVM Forum (2019) | Secure Encrypted Virtualization – 次のステップ | 2019 年 11 月 |
| Linux Security Summit (2019) | Enarx - AMD の SEV によりセキュリティが保護されたテスト済みの実行 | 2019 年 8 月 |
| Linux Security Summit (2018) | AMD Encrypted Virtualization のアップデート | 2018 年 11 月 |
| KVM Forum (2018) | Encrypted State による Secure Encrypted Virtualization の拡張 | 2018 年 10 月 |
| Linux Security Summit (2017) | Encrypted State による VM レジスタ状態の保護 | 2017 年 9 月 |
| Linux Security Summit (2016) | AMD x86 メモリ暗号化テクノロジ | 2016 年 12 月 |
| KVM Forum (2016) | AMD の仮想化メモリ暗号化テクノロジ | 2016 年 9 月 |
| Xen Summit | AMD の仮想化メモリ暗号化テクノロジ | 2016 年 9 月 |
| Usenix Security Symposium | AMD x86 メモリ暗号化テクノロジ | 2016 年 8 月 |
ユーザー ガイド
| 資料 | 日付 |
|---|---|
| AMD EPYC™ プロセッサでの SEV の使用 | 2023 年 10 月 |
| WinMagic および AMD EPYC ハードウェア メモリ暗号化によるクラウド信頼の問題解決 | 2018 年 10 月 |
| AMD EPYC ハードウェア メモリ暗号化によるクラウド セキュリティの強化 | 2018 年 10 月 |