機密計算:原理與技術
姚頡文
- 出版商: 機械工業
- 出版日期: 2025-07-01
- 售價: $534
- 語言: 簡體中文
- 頁數: 296
- ISBN: 7111773942
- ISBN-13: 9787111773948
下單後立即進貨 (約4週~6週)
商品描述
本書系統介紹了機密計算的概念,總結了各類主流TEE硬件通用設計,幫助讀者理解TEE硬件的工作原理。本書圍繞安全模型、生命周期、證明模型、攻擊方法和防範策略,系統介紹了TEE的設計原則和使用方法,並以業界常用的x86、ARM以及RISC-V架構提供的TEE為例,分析了硬件TEE的實現方法,幫助讀者理解不同實現的利弊。全書分為三個部分,首先介紹機密計算的基礎知識,包括隱私計算的概述和機密計算的定義、分類等;第二部分介紹機密計算中的TEE,主要內容包括機密計算模型、TEE的生命周期、TEE的證明模型、TEE的可選功能、機密計算的軟件開發、TEE的攻擊與防範;第三部分介紹機密計算中的TEE-IO,主要內容包括TEE-IO模型、TEE-IO的生命周期、TEE-IO的證明模型、TEE-IO機密計算的軟件開發、TEE-IO的攻擊和防範。本書體系清晰,內容先進,適合從事機密計算相關研究和技術開發工作的人員閱讀,也適合作為高校學生的拓展讀物。
作者簡介
姚頡文
現任Intel公司首席工程師,主要從事硬件、固件和系統軟件的安全架構方面的工作,擅長領域為安全啟動、可信計算和機密計算等。目前,參與分布式管理任務組(DMTF)、可信計算組織(TCG)、統一可擴展固件接口組織(UEFI)以及RISC-V聯盟等業界技術組織的工作,主導相關規範的制定與推廣,曾獲TCG主要貢獻獎和DMTF明星獎。同時,在EDKII、SPDM、CoCo、CCC等開源社區主導開發和維護OMVF、libspdm、td-shim和spdm-rs等安全相關軟件項目。擁有專利50余篇。
目錄大綱
推薦序一
推薦序二
推薦序三
前 言
第一部分 機密計算基礎
第1章 隱私計算概述2
1.1 隱私計算的目標2
1.2 隱私計算技術3
1.2.1 同態加密3
1.2.2 安全多方計算5
1.2.3 零知識證明9
1.2.4 差分隱私11
1.3 隱私計算的應用12
第2章 機密計算概述15
2.1 機密計算的概念15
2.2 機密計算中硬件TEE方案的分類19
2.3 機密計算的軟件實現21
2.4 機密計算的應用22
第二部分 機密計算中的TEE
第3章 機密計算模型24
3.1 機密計算安全模型24
3.1.1 機密計算的通用架構模型25
3.1.2 關於TEE的權限問題27
3.1.3 關於TEE-TCB的範圍問題29
3.1.4 關於RoT的問題32
3.2 機密計算的威脅模型33
3.2.1 需要考慮的威脅33
3.2.2 不需要考慮的威脅35
3.2.3 側信道攻擊與防範35
3.3 機密計算TEE實例的威脅模型35
3.3.1 Intel SGX的威脅模型35
3.3.2 Intel TDX的威脅模型38
3.3.3 AMD SEV的威脅模型42
3.3.4 ARM RME44
3.3.5 RISC-V CoVE47
第4章 TEE的生命周期51
4.1 TEE的內存布局51
4.2 TEE的啟動和卸載53
4.3 機密計算TEE實例的生命周期58
4.3.1 Intel SGX的生命周期59
4.3.2 Intel TDX的生命周期61
4.3.3 AMD SEV的生命周期64
4.3.4 ARM RME的生命周期67
4.3.5 RISC-V CoVE的生命周期68
第5章 TEE的證明模型70
5.1 證明在生活中的運用70
5.2 證明過程的通用模型72
5.2.1 證據的生成和傳遞74
5.2.2 驗證86
5.2.3 證明結果的傳遞92
5.3 其他議題93
5.3.1 運行時環境的非度量方案93
5.3.2 基於遠程證明的安全通信協議95
5.4 機密計算TEE證明實例97
5.4.1 Intel SGX的TEE證明97
5.4.2 Intel TDX的TEE證明101
5.4.3 AMD SEV的TEE證明103
5.4.4 ARM RME的TEE證明106
5.4.5 RISC-V CoVE的TEE證明107
第6章 TEE的可選功能109
6.1 封裝109
6.1.1 TPM密鑰封裝和DICE密鑰封裝111
6.1.2 TEE密鑰封裝112
6.2 嵌套114
6.2.1 Intel TDX的TD分區116
6.2.2 AMD SEV虛擬機特權等級117
6.3 vTPM117
6.3.1 基於TEE的vTPM118
6.3.2 基於TEE虛擬機嵌套的vTPM121
6.4 實時遷移122
6.4.1 實時遷移概述122
6.4.2 Intel TDX虛擬機遷移127
6.4.3 AMD SEV虛擬機遷移127
6.5 運行時更新128
第7章 機密計算的軟件開發130
7.1 TEE軟件的應用場景130
7.2 機密虛擬機中的軟件133
7.2.1 虛擬機管理器133
7.2.2 虛擬固件133
7.2.3 客戶機操作系統134
7.2.4 L1-VMM135
7.2.5 TSM136
7.3 安全飛地的軟件支持137
7.3.1 庫操作系統137
7.3.2 Enclave軟件棧137
7.4 TEE遠程證明相關軟件140
7.4.1 vTPM140
7.4.2 證明和驗證服務的軟件143
7.4.3 策略引擎的相關軟件146
7.5 TEE安全通信147
7.6 TEE數據安全148
7.6.1 密鑰代理分發服務148
7.6.2 鏡像管理代理148
第8章 TEE的攻擊與防範150
8.1 攻擊方法150
8.1.1 攻擊軟件150
8.1.2 攻擊密碼算法和協議150
8.1.3 側信道與故障註入攻擊156
8.1.4 簡單物理攻擊177
8.2 防護原則178
8.2.1 安全軟件設計178
8.2.2 安全密碼應用180
8.2.3 側信道與故障註入保護183
8.2.4 簡單物理攻擊保護189
8.3 針對TEE特有的攻擊和保護189
8.3.1 針對SGX的攻擊和保護189
8.3.2 針對TDX的攻擊和保護190
8.3.3 針對SEV的攻擊和保護192
第三部分 機密計算中的TEE-IO
第9章 機密計算TEE-IO模型194
9.1 機密計算TEE-IO安全模型194
9.1.1 通用機密計算TEE-IO安全模型196
9.1.2 TEE-IO中的模塊198
9.1.3 TEE-IO中的通信協議199
9.1.4 TEE-IO中的資源分類204
9.1.5 TEE-IO中的密鑰208
9.2 機密計算TEE-IO威脅模型209
9.2.1 需考慮的威脅209
9.2.2 設備端的安全需求213
9.2.3 主機端的安全需求215
9.3 機密計算TEE-IO主機端實例216
9.3.1 Intel TDX Connect216
9.3.2 AMD SEV-TIO218
9.3.3 ARM RME-DA219
9.3.4 RISC-V CoVE-IO220
9.4 機密計算TEE-IO設備端實例221
第10章 TEE-IO的生命周期224
10.1 TEE-IO的生命周期概述224
10.1.1 系統和設備初始化224
10.1.2 SPDM安全會話建立225
10.1.3 IDE安全鏈路建立225
10.1.4 TDI鎖定和分配227
10.1.5 TDI接受和運行227
10.1.6 IDE密鑰更新229
10.1.7 SPDM密鑰更新229
10.1.8 TDI移除230
10.1.9 IDE安全鏈路停止230
10.1.10 SPDM安全會話終止231
10.2 錯誤處理231
10.2.1 錯誤觸發231
10.2.2 錯誤報告233
10.2.3 錯誤恢覆233
10.3 機密計算TEE-IO設備端實例234
第11章 TEE-IO的證明模型237
11.1 TVM對設備的證明237
11.1.1 證據的生成和傳遞238
11.1.2 驗證248
11.1.3 證明結果的傳遞252
11.2 第三方對綁定設備的TVM的證明255
11.2.1 證據的生成和傳遞255
11.2.2 第三方驗證TVM257
11.3 設備與主機的雙向證明257
11.4 機密計算TEE-IO設備端證明實例258
第12章 TEE-IO的特別功能263
12.1 TEE-IO設備的彈性恢覆263
12.2 TEE-IO設備的運行時更新265
12.2.1 運行時更新策略265
12.2.2 更新策略的驗證266
12.2.3 更新固件的證明266
12.3 PCIe設備間的對等傳輸270
12.4 CXL設備271
12.4.1 機密計算CXL HDM的安全模型272
12.4.2 機密計算CXL HDM的威脅模型278
第13章 TEE-IO機密計算軟件的開發279
13.1 TEE-IO軟件應用的場景279
13.2 機密虛擬機中支持TEE-IO的軟件280
13.3 TEE-IO設備證明281
13.4 TEE-IO安全通信282
第14章 TEE-IO的攻擊與防範283
14.1 攻擊方法283
14.1.1 攻擊TEE-IO主機端284
14.1.2 攻擊TEE-IO設備的連接284
14.1.3 攻擊TEE-IO設備端288
14.2 防護原則292
14.2.1 TEE-IO主機端防護292
14.2.2 TEE-IO設備的連接防護293
14.2.3 TEE-IO設備端防護294