本文說明不同機密運算技術的測量暫存器中,測量了哪些元件。
vTPM 平台設定暫存器
機密 VM vTPM 中的每個平台設定暫存器 (PCR) 都包含三個儲存區,分別用於 SHA-1、SHA-256 和 SHA-384 摘要。
下列規格大致標準化了 PCR 0 至 7 的使用方式:
作業系統會使用大於 7 的 PCR,或以其他平台專屬方式使用。詳情請參閱「Linux TPM PCR 登錄檔」。
機密 VM 執行個體會將下列元件測量到 vTPM PCR 中:
| 索引 | 評估內容 | ||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 0 |
靜態信任根測量 (SRTM)、BIOS、內嵌選項 ROM。 根據「 Trusted Computing Group 韌體設定檔規格」,Compute Engine UEFI 的 PCR 0 並非標準,因為其中不含整個韌體二進位大型物件的測量值。這是為了確保穩定性。每次啟動 Compute Engine VM 執行個體時,系統都會視為新機器,並以最新的虛擬韌體版本啟動。如果省略韌體二進位檔 Blob 測量,韌體變更 (非安全性相關或因工具鍊變更而發生) 就不會中斷認證驗證。 即使重新啟動和更新軟體,PCR 0 在單一 VM 的生命週期內仍會保持穩定。即使使用相同映像檔,在兩個不同的 VM 生命週期中,這項說法也不成立。 機密 VM 會將兩個額外事件測量到 PCR 0 中:
下表詳細列出
|
||||||||||||
| 1 | 主機平台設定,包括啟動順序、啟動項目、微碼更新和韌體磁碟區。 | ||||||||||||
| 2 | UEFI 驅動程式和應用程式程式碼。 | ||||||||||||
| 3 | UEFI 驅動程式和應用程式設定與資料。 | ||||||||||||
| 41 | EFI 可攜式可執行 (PE) 或通用物件檔案格式 (COFF) 應用程式 (例如開機載入程式) 評估事件,表示從 UEFI 轉換至第一個 EFI 應用程式。 | ||||||||||||
| 5 |
GPT 測量 (開機選項使用 GPT 時)、
ExitBootServices。
|
||||||||||||
| 6 | 主機平台製造商專用,不適用於參考 EDK II 實作項目。 | ||||||||||||
| 71 |
安全啟動 政策。包括下列 UEFI 變數:
PCR 7 仍維持穩定,提供安全啟動狀態,簽署階層也保持不變。只要使用相同金鑰簽署,並使用相同金鑰階層,兩張不同的圖片就會產生相同的 PCR 7 值。 |
||||||||||||
| 8 | GRUB 開機載入程式執行的所有指令,以及產生的核心和模組指令列。 | ||||||||||||
| 9 | GRUB 讀取的所有檔案,例如 grub.cfg。 |
||||||||||||
| 10 | 核心完整性,由 Linux 完整性測量架構 (IMA) 使用。 | ||||||||||||
| 13 | 機密空間 環境的工作負載和設定測量結果。 | ||||||||||||
| 141 | 機器擁有者金鑰 (MOK) 狀態 shim。 |
1 視設定而定,墊片也會將測量結果擴展至 PCR 4、7 和 14。
AMD SEV-SNP 評估暫存器
AMD 安全處理器具有單一啟動 MEASUREMENT 暫存器。與其他機密運算測量暫存器一樣,測量值會經過雜湊處理並串連,以產生最終摘要。如果是 AMD SEV-SNP,則使用 SHA-384 演算法。
系統會評估下列元件,並納入最終摘要:
VM 執行個體的虛擬韌體。
下列記憶體頁面的結構,但不包括內容:
SNP 安全記憶體頁面,代表虛擬韌體需要管理程序預先驗證的記憶體區塊,VM 才能啟動。
「Secrets」頁面,內含用於訪客與 AMD 安全處理器之間通訊的金鑰。
CPUID 頁面,其中包含已驗證的 CPU 功能。
分配給機密 VM 執行個體的每個 vCPU 的虛擬機器儲存區域 (VMSA)。如果 VM 有多個 vCPU,每個 VMSA 會依序個別雜湊處理到鏈結中。
您也可以存取受保護的 VM vTPM 測量結果,但與 AMD 安全處理器不同的是,這些測量結果是軟體認證而非硬體認證。
Intel TDX 測量暫存器
Intel TDX 使用下列測量暫存器:
信任網域評估 (MRTD)
執行階段測量暫存器 (RTMR)
每個暫存器都會儲存 SHA-384 摘要。
機密 VM 執行個體會將下列元件測量結果寫入 Intel TDX 測量暫存器:
| 測量記錄 | 評估內容 |
|---|---|
MRTD |
在 TD 建構程序中取得的信任網域虛擬韌體 (TDVF)。 |
RTMR[0] |
TDVF 設定 (TD 交接區塊、ACPI、安全啟動設定)。 |
RTMR[1] |
TD 載入器 (GRUB/shim)。 |
RTMR[2] |
核心,以及傳送至核心的指令列。 |
RTMR[3] (User-defined) |
從使用者空間傳遞的其他事件記錄評估。 |
您也可以存取受防護的 VM vTPM 測量值,但與 Intel TDX 模組不同的是,這些測量值是由軟體而非硬體認證。