本書系統(tǒng)、詳盡地介紹了硬件木馬的起源、常見攻擊手段與防御措施。具體內容包括:硬件木馬的綜述及其攻防策略概述;硬件木馬攻擊,如SoC/NoC、硬件IP、模擬/混合/射頻芯片以及PCB中的硬件木馬威脅分析;硬件木馬檢測,如邏輯測試、形式驗證和無黃金電路檢測等電路邏輯測試方法,以及延遲分析和逆向工程等邊信道分析方法;安全設計方法,如硬件混淆、植入威懾和FPGA木馬及其對策;硬件木馬的發(fā)展趨勢及挑戰(zhàn)。
Swarup Bhunia是美國弗羅里達大學硬件安全實驗室的創(chuàng)始人,全美硬件安全頂級專家。近年來,他主持了多項硬件安全類課題,包括美國國家自然基金、美國DARPA部分課題、Intel芯片安全研究課題等。此外,Swarup還是硬件安全HOST年會創(chuàng)始人之一,多個IEEE期刊編輯,在該領域有巨大的國際影響。
王堅,男,教授,博導,電子科技大學“賽博空間硬件設計與安全實驗室”負責人。中國復雜裝備聯(lián)盟可靠性專委會副主任委員,美國標準研究院IOF組織TPC,四川省杰出青年基金獲得者,四川省萬人計劃“天府科技菁英”,IEEE IoT、TII、TVLSI等多個國際頂級雜志審稿人。近5年,承擔了國家、省部級項目14項,發(fā)表論文50余篇,授權專利20余項,撰寫著作3本,并獲得軍隊科技進步二等獎、四川省教學成果二等獎、高等教育學會優(yōu)秀獎各1次。
目 錄
第一部分 硬件木馬的基礎知識
第1章 緒論 2
1.1 本書的目的 2
1.2 對讀者的幫助 3
1.3 關于木馬攻擊 3
1.4 本書的內容 6
參考文獻 9
第2章 硬件木馬簡介 10
2.1 概述 10
2.2 半導體的發(fā)展趨勢、權衡和木馬攻擊威脅 11
2.2.1 半導體設計流程 11
2.2.2 攻擊者和攻擊 12
2.3 木馬攻擊的比較和誤區(qū) 13
2.3.1 木馬與漏洞或缺陷的比較 13
2.3.2 硬件木馬與軟件木馬的比較 14
2.3.3 關于硬件木馬成因及影響的誤區(qū) 15
2.4 攻擊策略 17
2.4.1 木馬的類型 17
2.4.2 木馬觸發(fā)器和有效負載的分類 18
2.4.3 基本木馬示例 19
2.4.4 新型木馬攻擊:設計和示例 20
2.4.5 木馬攻擊模型 23
2.5 防御對策 24
2.5.1 木馬防御對策分類法 24
2.5.2 木馬檢測:示例 28
2.5.3 木馬預防:示例 29
2.5.4 其他值得注意的木馬檢測和預防方法 31
2.5.5 各種木馬防御方法的比較 31
2.6 小結 33
參考文獻 33
第二部分 硬件木馬攻擊:威脅分析
第3章 SoC與NoC中的硬件木馬攻擊 38
3.1 引言 38
3.2 SoC的安全挑戰(zhàn) 38
3.3 SoC威脅模型 39
3.4 SoC安全保證 40
3.5 NoC安全性 41
3.5.1 信息泄露攻擊 42
3.5.2 針對故障注入攻擊的數據包安全性 44
3.5.3 網絡接口故障 44
3.5.4 拒絕服務攻擊 45
3.5.5 基于錯誤注入的拒絕服務 48
3.5.6 使用差錯控制方法的木馬檢測 49
3.6 開放性挑戰(zhàn) 50
3.7 小結 50
參考文獻 51
第4章 硬件IP核可信度 53
4.1 引言 53
4.2 問題的提出 54
4.3 木馬的特征 54
4.4 現(xiàn)有測試和安全特性的不足 55
4.5 木馬分類 55
4.5.1 基于物理特性的木馬分類 55
4.5.2 基于激活特性的木馬分類 56
4.5.3 基于動作特性的木馬分類 57
4.6 通用木馬緩解技術 58
4.6.1 預防技術 58
4.6.2 檢測技術 59
4.7 IP級的木馬緩解 60
4.7.1 檢測技術:可疑信號引導的時序等價性檢驗 60
4.7.2 預防技術:攜帶證明代碼 66
4.8 小結 69
參考文獻 69
第5章 模擬、混合信號和射頻集成電路中的硬件木馬 72
5.1 引言 72
5.2 射頻IC中的硬件木馬 72
5.2.1 無線加密IC中的硬件木馬 72
5.2.2 低于本底噪聲的射頻傳輸 77
5.3 AMS集成電路中的硬件木馬 79
5.3.1 攻擊 79
5.3.2 防御 80
5.3.3 模擬觸發(fā)器 81
5.4 AMS/RF IC中的其他威脅 83
5.4.1 IC/IP的剽竊和偽造問題 83
5.4.2 漏洞分析 83
5.4.3 拆分制造 84
5.4.4 AMS IP核水印 84
5.4.5 針對AMS偽造品的保護 85
5.5 討論 85
5.6 小結 86
參考文獻 86
第6章 PCB硬件木馬與盜版 90
6.1 引言 90
6.2 PCB安全性挑戰(zhàn)、攻擊和對策 90
6.2.1 安全性挑戰(zhàn) 90
6.2.2 攻擊實例 93
6.2.3 可能的對策 96
6.3 PCB認證挑戰(zhàn)和前瞻性解決方案 99
6.3.1 PCB變化和認證挑戰(zhàn) 100
6.3.2 前瞻性PUF結構 101
6.3.3 定性和定量分析 103
6.4 小結 104
致謝 104
參考文獻 104
第三部分 檢測:邏輯測試
第7章 面向硬件木馬檢測的邏輯測試技術 107
7.1 引言 107
7.2 硬件木馬的MERO檢測法 109
7.2.1 數學分析 110
7.2.2 測試生成 110
7.2.3 覆蓋率估算 112
7.2.4 木馬樣本大小選擇 112
7.2.5 N的選擇 112
7.2.6 提升木馬檢測覆蓋率 113
7.2.7 結果 113
7.2.8 MERO的缺點 118
7.3 基于GA和SAT的硬件木馬檢測方法 119
7.3.1 硬件木馬模型 119
7.3.2 針對ATPG的遺傳算法(GA) 120
7.3.3 用于難以激活觸發(fā)條件的SAT 123
7.3.4 有效負載感知測試集的選擇和測試壓縮 124
7.3.5 結果與討論 127
7.4 小結 130
參考文獻 131
第8章 硬件可信性驗證的形式化方法 134
8.1 引言 134
8.2 使用可滿足性問題進行可信性驗證 135
8.3 使用屬性檢查的安全驗證 137
8.4 用于木馬檢測的定理證明器 139
8.4.1 使用攜帶證明代碼的機密數據保護 140
8.4.2 定理證明器和模型驗證器的結合 141
8.5 基于符號代數的木馬檢測 142
8.5.1 基于Gr?bner基理論的等價性檢查:背景介紹 142
8.5.2 基于符號代數的算術電路中木馬的激活與檢測 144
8.5.3 第三方IP中的木馬定位 144
8.6 小結 145
參考文獻 146
第9章 無黃金模型木馬檢測 149
9.1 引言 149
9.2 無黃金模型木馬檢測及其挑戰(zhàn) 149
9.3 一些可能的解決方案 150
9.4 案例研究:傳感器輔助的自認證 151
9.4.1 概述 151
9.4.2 用于捕捉與設計相關延遲特性的傳感器 152
9.4.3 制造后自認證的場景 153
9.5 小結 156
參考文獻 157
第四部分 檢測:邊信道分析
第10章 利用延遲分析檢測硬件木馬 159
10.1 引言 159
10.2 硬件木馬植入點 160
10.3 用于檢測布局中植入硬件木馬的方法 161
10.4 基于延遲的HT檢測方法的基本原理 164
10.4.1 路徑延遲測量方案及其他概念 164
10.4.2 處理工藝波動 169
10.4.3 測試向量生成策略 170
10.5 基于路徑延遲分析的HT檢測方法 171
10.5.1 早期的HT檢測技術與片上測量方法 172
10.5.2 基于環(huán)形振蕩器的HT檢測方法 173
10.5.3 用于HT檢測的輕量級片上路徑計時技術 176
10.5.4 自認證:一種無黃金模型的HT檢測方法 178
10.5.5 用于HT檢測的線性規(guī)劃方法和測試點插入 179
10.5.6 增強HT檢測的工藝校準和測試向量選擇 180
10.5.7 用于HT檢測的時鐘掃描 182
10.5.8 一種無黃金芯片的HT檢測方法 183
10.5.9 通過比較具有結構對稱性的路徑來進行HT檢測 183
10.5.10 利用脈沖傳播進行HT檢測 185
10.5.11 用于HT檢測的芯片對中校準技術 187
10.6 多參數檢測方法 190
10.7 小結 191
參考文獻 193
第11章 基于逆向工程的硬件木馬檢測 197
11.1 引言 197
11.2 集成電路的逆向工程 198
11.2.1 逆向工程簡介 198
11.2.2 逆向工程的應用 198
11.3 使用逆向工程的硬件木馬檢測 198
11.3.1 通用信息 198
11.3.2 使用逆向工程檢測硬件木馬的優(yōu)點 199
11.3.3 使用逆向工程檢測硬件木馬的挑戰(zhàn) 199
11.4 使用SVM的基于逆向工程的硬件木馬檢測 199
11.4.1 問題陳述 200
11.4.2 提出的方法 201
11.4.3 實驗與結果 202
11.5 安全設計方法 203
11.5.1 問題定義和挑戰(zhàn) 203
11.5.2 推薦的方法 205
11.5.3 實驗和結果 209
11.6 小結 210
參考文獻 210
第五部分 安 全 設 計
第12章 硬件木馬預防和檢測的硬件混淆方法 214
12.1 引言 214
12.2 混淆 214
12.2.1 混淆的概念 214
12.2.2 區(qū)分混淆和加密 215
12.2.3 軟件中的混淆技術 215
12.3 混淆技術在硬件木馬預防和檢測中的作用 216
12.3.1 硬件木馬 216
12.3.2 硬件混淆概述 217
12.4 芯片級混淆 218
12.4.1 器件級混淆 218
12.4.2 電路級混淆 219
12.4.3 門級混淆 223
12.4.4 寄存器傳輸級混淆 229
12.4.5 片上通信級 230
12.4.6 其他方法 233
12.5 FPGA混淆 233
12.6 板級混淆 234
12.7 硬件混淆評估指標 234
12.8 小結 236
參考文獻 237
第13章 硬件木馬植入的威懾方法 242
13.1 引言 242
13.2 監(jiān)測法 244
13.2.1 邊信道特征測量 244
13.2.2 邊信道測量的分類器 246
13.2.3 掃描單元重排序 247
13.3 阻塞性方法 247
13.4 混合方法 250
13.4.1 BISA結構 250
13.4.2 BISA的特定攻擊及其局限性 251
13.5 小結 252
參考文獻 252
第14章 FPGA中的硬件木馬攻擊及其保護方法 256
14.1 引言 256
14.2 威脅模型和分類 256
14.2.1 FPGA設計流程 256
14.2.2 威脅模型 257
14.2.3 分類方法 258
14.2.4 進入點 258
14.2.5 創(chuàng)建方法 259
14.3 FPGA結構中的木馬 259
14.3.1 增加延遲的木馬 259
14.3.2 引起電壓波動的木馬 260
14.3.3 壽命縮短型木馬(LRT) 260
14.4 FPGA設計中的木馬 263
14.4.1 在FPGA設計中植入木馬 263
14.4.2 HDL中的木馬 264
14.4.3 綜合后網表中的木馬 265
14.4.4 案例:映射/布局布線后網表中的木馬 267
14.5 比特流中的木馬 267
14.5.1 Xilinx比特流結構 267
14.5.2 修改比特流的木馬 268
14.5.3 文獻中的木馬例子 269
14.6 針對FPGA木馬的對策 269
14.6.1 使用模塊冗余的硬件木馬容錯 270
14.6.2 FPGA可信熔斷(TrustFuzion) 271
14.6.3 比特流木馬對策 271
14.7 小結 271
參考文獻 272
第六部分 新興趨勢、工業(yè)實踐和新的攻擊
第15章 工業(yè)SoC設計中的硬件可信性:實踐與挑戰(zhàn) 276
15.1 引言 276
15.2 可信挑戰(zhàn)的范圍 277
15.3 安全策略和執(zhí)行 278
15.4 設計和實現(xiàn)的可信性驗證 279
15.5 平臺級可信保證 281
15.6 安全認證 282
15.7 小結 283
參考文獻 283
第16章 總結與未來的工作 285
16.1 總結 285
16.2 未來的工作 286