《硬件安全与可信导论》PDF下载

  • 购买积分:12 如何计算积分?
  • 作  者:(美)MOHAMMAD TEHRANIPOOR,CLIFFWANG主编;陈哲,王坚译
  • 出 版 社:北京:电子工业出版社
  • 出版年份:2019
  • ISBN:7121332418
  • 页数:306 页
图书介绍:本书从集成电路测试出发,全面、系统地介绍了硬件安全与可信领域的相关知识。从结构上看,本书共18章,每章针对一个具体的研究领域进行介绍;从内容上看,本书包括了数字水印、边信道攻防、物理不可克隆函数、硬件木马、加密算法和可信设计技术等众多热门的研究方向;从研究对象上看,本书覆盖了FPGA、RFID、IP核和存储器在内的多种器件。书中每章末都提供了大量参考文献,可为读者进一步了解该领域提供帮助。本书指导性和参考性俱佳。

第1章 超大规模集成电路测试背景 1

1.1 引言 1

1.2 测试成本和产品质量 1

1.2.1 测试成本 2

1.2.2 缺陷、成品率和缺陷等级 2

1.3 测试生成 3

1.3.1 结构测试与功能测试的对比 3

1.3.2 故障模型 4

1.3.3 可测性:可控性和可观察性 5

1.3.4 自动测试模式生成(ATPG) 8

1.4 结构化的可测性设计技术概述 8

1.4.1 可测性设计 8

1.4.2 扫描设计:扫描单元、扫描链及扫描测试压缩 9

1.4.3 部分扫描设计 11

1.4.4 边界扫描 12

1.4.5 BIST法 13

1.5 全速延迟测试 14

1.5.1 为什么采用全速延迟测试 14

1.5.2 全速测试基础:发射捕获和发射偏移 15

1.5.3 全速延迟测试的挑战 16

参考文献 17

第2章 哈希函数的硬件实现 18

2.1 加密哈希函数概述 18

2.1.1 构建哈希函数 18

2.1.2 哈希函数的应用 19

2.2 哈希函数的硬件实现 20

2.2.1 MD5 20

2.2.2 SHA-2 22

2.2.3 面积优化 24

2.3 SHA-3的候选对象 24

2.3.1 Keccak算法 25

2.3.2 BLAKE算法 26

2.3.3 Grφstl算法 27

2.3.4 Skein算法 29

2.3.5 JH算法 30

2.3.6 算法性能 31

参考文献 33

第3章 RSA算法的实现与安全性 36

3.1 引言 36

3.2 算法的描述与分析 37

3.3 硬件实现简介 39

3.4 安全性分析 42

3.5 结论 44

参考文献 45

第4章 基于物理上不可克隆和无序的安全性 46

4.1 引言 46

4.2 独特对象 47

4.2.1 独特对象的历史和实例 48

4.2.2 独特对象的协议及应用 51

4.2.3 安全性 51

4.3 弱物理不可克隆函数 52

4.3.1 历史与实现的实例 53

4.3.2 协议、应用与安全 55

4.4 强物理不可克隆函数 56

4.4.1 强PUF的历史及举例 57

4.4.2 协议、应用及安全 60

4.5 受控的PUF 62

4.5.1 受控的PUF特性 62

4.5.2 历史和实现 62

4.5.3 协议、应用与安全 63

4.6 新兴的PUF 64

4.6.1 保密模型PUF 64

4.6.2 定时认证 64

4.6.3 具有公共模型的PUF 64

4.6.4 量子读取的PUF 65

4.6.5 具有超高信息量的PUF 65

4.7 未来的研究课题 65

4.7.1 公共PUF的公开性问题 65

4.7.2 高效的硬件实现:开销与安全 66

4.7.3 错误校正与可实现性 66

4.7.4 IC计量及伪造检测 66

4.7.5 攻击和漏洞分析 66

4.7.6 形式化验证与安全性证明 67

4.7.7 新的协议及应用 67

4.8 结论 67

参考文献 67

第5章 硬件计量综述 74

5.1 引言 74

5.2 分类与模型 75

5.3 被动式芯片计量 77

5.3.1 非功能识别的被动计量 77

5.3.2 被动式功能性计量 78

5.4 主动式芯片计量 80

5.4.1 内部的主动式芯片计量 81

5.4.2 外部的主动式芯片计量 84

5.5 结论 85

参考文献 85

第6章 利用数字水印保护硬件IP 88

6.1 引言 88

6.1.1 设计复用和IP设计 88

6.1.2 什么是IP设计 88

6.1.3 为什么要保护IP设计 88

6.1.4 哪些行为可以保护IP安全 89

6.2 利用基于约束的水印技术保护IP设计 89

6.2.1 例子:最简布尔表达式的水印 91

6.2.2 基于约束的水印的背景与要求 92

6.3 带无关项的水印 92

6.4 通过复制模块向HDL源码添加水印 95

6.4.1 例子:4比特模式检测器 95

6.4.2 状态转换图的Verilog实现 95

6.4.3 通过复制模块向Verilog代码添加水印 96

6.4.4 通过模块分割嵌入水印 98

6.4.5 水印技术的性能评估 99

6.5 结论 101

参考文献 101

第7章 物理攻击与防篡改 102

7.1 攻击场景 102

7.2 防篡改等级 103

7.3 攻击类别 104

7.3.1 非入侵式攻击 105

7.3.2 入侵式攻击 106

7.3.3 半入侵式攻击 107

7.4 用非入侵式攻击威胁安全性 108

7.4.1 边信道攻击 108

7.5 入侵式攻击对安全的威胁 111

7.5.1 剥层分析 113

7.5.2 逆向工程 113

7.5.3 微探针 114

7.6 半入侵式攻击对安全的威胁 115

7.6.1 紫外线攻击 115

7.6.2 先进的成像技术 115

7.6.3 光故障注入 117

7.6.4 光学边信道分析 118

7.6.5 基于光学增强的定位功率分析 119

7.7 物理攻击对策 121

7.8 结论 122

参考文献 123

第8章 边信道攻击与对策 125

8.1 引言 125

8.2 边信道 126

8.2.1 功耗 126

8.2.2 电磁 128

8.2.3 光学 129

8.2.4 时序及延迟 129

8.2.5 声学 130

8.3 利用边信道信息的攻击 130

8.4 对策 131

8.4.1 隐藏 131

8.4.2 掩码/盲化 135

8.4.3 模块划分 135

8.4.4 物理安全与防篡改 136

8.5 结论 136

参考文献 137

第9章 FPGA中的可信设计 140

9.1 引言 140

9.2 FPGA的综合流程及其脆弱性 140

9.2.1 脆弱性 141

9.3 基于FPGA的应用密码学 144

9.3.1 脆弱性 144

9.4 FPGA硬件安全基础 146

9.4.1 物理不可克隆函数 147

9.4.2 真随机数发生器 152

9.5 顶级的FPCA安全性挑战 154

9.5.1 算法密码安全 154

9.5.2 基于硬件的密码学:原语和协议 154

9.5.3 集成电路与工具的数字权限管理 155

9.5.4 可信工具 155

9.5.5 可信IP 156

9.5.6 抵御逆向工程 156

9.5.7 木马检测与诊断 156

9.5.8 零知识和不经意传输 157

9.5.9 自我可信的综合 157

9.5.10 新的FPGA架构和技术 157

9.5.11 基于硬件安全的FPGA工具 157

9.5.12 边信道 158

9.5.13 理论基础 158

9.5.14 物理和社会的安全应用 158

9.5.15 恢复技术和长寿使能技术 158

9.5.16 可执行的摘要 159

9.6 总结 159

参考文献 159

第10章 嵌入式系统的安全性 165

10.1 引言 165

10.1.1 安全计算模型及风险模型 165

10.1.2 程序数据属性的保护 166

10.1.3 嵌入式系统安全处理的软硬件方法 166

10.2 针对高效动态信息流跟踪的安全页面分配 167

10.2.1 相关工作 167

10.2.2 我们的PIF方法 169

10.2.3 安全分析和攻击检测 173

10.2.4 实验结果 174

10.2.5 总结 176

10.3 利用预测架构验证运行的程序 177

10.3.1 预备知识 177

10.3.2 控制流传输和执行路径验证的推测架构 180

10.3.3 实验结果与安全性分析 183

10.3.4 总结 184

参考文献 185

第11章 嵌入式微控制器的边信道攻击和对策 189

11.1 引言 189

11.2 嵌入式微控制器的边信道泄漏 189

11.3 对微控制器的边信道攻击 190

11.3.1 边信道分析 191

11.3.2 PowerPC实现高级加密标准(AES) 192

11.3.3 边信道分析:功率模型的选择 193

11.3.4 边信道分析:实用的假设检验 194

11.3.5 边信道分析:攻击结果 195

11.4 微控制器的边信道对策 196

11.4.1 隐藏对策的电路级实现 197

11.4.2 VSC:将DRP移植到软件中 198

11.4.3 VSC的实现 198

11.4.4 将AES映射到VSC上 199

11.4.5 实验结果 201

11.5 总结 202

参考文献 202

第12章 射频识别(RFID)标签的安全性 204

12.1 引言 204

12.1.1 RFID的历史 205

12.1.2 物联网 205

12.1.3 RFID的应用 205

12.1.4 射频识别参考模型 207

12.1.5 射频识别标签的种类 208

12.1.6 射频识别对社会和个人的影响 208

12.2 对无源射频识别标签安全的攻击 208

12.2.1 伪装攻击 208

12.2.2 信息泄漏攻击 210

12.2.3 拒绝服务攻击 211

12.2.4 物理操作攻击 212

12.3 射频识别标签的保护机制 212

12.3.1 伪装攻击 212

12.3.2 信息泄漏攻击 213

12.3.3 拒绝服务攻击 214

12.3.4 物理操作攻击 214

12.4 用于防伪的RFID标签指纹 215

12.4.1 指纹电子设备的背景 215

12.4.2 标签的最小功率响应 215

12.4.3 标签频率响应和瞬态响应 216

12.4.4 标签时间响应 216

参考文献 217

第13章 内存完整性保护 219

13.1 引言 219

13.1.1 问题的定义 219

13.2 简单的解决方案:采用消息验证码 220

13.2.1 程序代码的完整性 220

13.3 瓶颈与限制 221

13.3.1 回放攻击 221

13.3.2 可信根 222

13.4 模块构建 222

13.4.1 Merkle树 222

13.4.2 哈希函数 223

13.4.3 Merkle树以外的方案 224

13.5 已有的方案 225

13.5.1 基于GCM的验证方案 225

13.5.2 自适应树对数方案 226

13.5.3 基于UMAC的Merlle树方案 228

13.6 内存完整性保护的推广 231

参考文献 232

第14章 硬件木马分类 233

14.1 引言 233

14.2 硬件木马 233

14.3 木马分类 233

14.3.1 按插入阶段分类 233

14.3.2 按抽象的层次分类 235

14.3.3 按激活机制分类 236

14.3.4 按影响分类 236

14.3.5 按位置分类 237

14.4 硬件木马案例 238

14.4.1 基于边信道的恶意片外泄漏木马(MOLES) 238

14.4.2 通过RS-232泄漏密钥的木马 239

14.4.3 综合工具木马 239

14.4.4 通过温度边信道泄漏密钥的木马 240

14.4.5 拒绝服务(DoS)木马 240

14.4.6 通过VGA显示器泄漏信息的木马 241

14.5 总结 241

参考文献 241

第15章 硬件木马检测 243

15.1 引言 243

15.2 芯片的硬件木马检测 244

15.2.1 木马检测方法的分类 244

15.2.2 木马检测所面临的挑战 246

15.2.3 测试和验证方法 250

15.2.4 实时监测法 256

15.2.5 木马检测方法的比较 257

15.3 IP硬核的可信度验证 257

15.4 总结 258

参考文献 259

第16章 硬件可信度设计 261

16.1 概述 261

16.2 基于延迟的方案 261

16.2.1 影子寄存器 261

16.2.2 环形振荡器 263

16.3 罕见事件的删除 266

16.4 木马测试设计 269

16.4.1 步骤Ⅰ:代码评估 270

16.4.2 步骤Ⅱ:敏感路径的选择 270

16.4.3 步骤Ⅲ:插入探测点 271

16.5 带校验的硬件 271

16.6 总结 273

参考文献 274

第17章 安全和测试 276

17.1 引言 276

17.1.1 测试接口的发展 276

17.1.2 示例:测试一个2比特状态机 277

17.1.3 故障测试与木马检测的比较 280

17.1.4 VLSI测试:目标和指标 280

17.1.5 可测性和安全性之间的冲突 281

17.2 基于扫描的测试 281

17.2.1 基于扫描的攻击 282

17.2.2 扫描攻击的对策 282

17.3 BIST 284

17.4 JTAG 284

17.4.1 JTAG劫持 287

17.4.2 JTAG防御 287

17.5 片上系统测试结构 289

17.5.1 劫持SoC测试 290

17.5.2 SoC测试的保护措施 290

17.6 测试安全的新兴领域 291

17.6.1 汽车的OBD-Ⅱ 292

17.6.2 医疗植入设备的接口安全 292

17.7 总结和展望 292

参考文献 293

第18章 保护IP核免受扫描边信道攻击 294

18.1 引言 294

18.1.1 前期的工作 295

18.2 扫描攻击的分类 295

18.2.1 基于扫描的可观测性攻击 295

18.2.2 基于扫描的可控性/可观测性攻击 296

18.3 低成本安全扫描 297

18.3.1 LCSS测试流程 299

18.4 自动的LCSS插入流程 299

18.4.1 低成本安全扫描插入流程 299

18.5 分析及结论 300

18.5.1 开销 300

18.5.2 对安全性和可测试性的影响 303

18.6 总结 305

参考文献 306