
随着人们对集成电路供应链的日益重视以及对软、硬件协同开发的日益深入,有关集成电路安全方面的研究工作越来越受到重视。本书首先简要介绍集成电路安全这一概念的提出以及集成电路安全与当前的软件安全、密码芯片等的区别,然后重点讲解硬件木马、旁路攻击、错误注入攻击、硬件安全性的形式化验证、分块制造及其在电路防护中的应用、通过逻辑混淆实现硬件IP保护和供应链安全、防止IC伪造的检测技术、集成电路网表级逆向工程、物联网(IOT)的硬件安全、基于硬件的软件安全、基于体系架构支持的系统及软件安全策略等。本书既可作为集成电路安全领域科研人员的技术参考书,也可作为高等院校相关专业高年级本科生和研究生的教材。
集成电路,特别是片上系统(System-on-Chip, SoC)的复杂性日益增强,先进工艺下的芯片制造成本不断上升,直接促成了半导体行业由垂直商业模式转化为水平商业模式。在新的水平商业模式下,各项设计制造服务的外包以及第三方知识产权(Third Party Intellectual Property, 3PIP)的广泛使用,显著缩短了产品的设计周期、降低了制造成本。具体而言,SoC的设计者会首先获取3PIP的授权,然后把内部开发的模块和第三方IP进行整合从而得到SoC设计。这些设计随后会交给晶圆代工厂(Foundry)、封装厂和测试工厂进行加工、封装和测试。所有这些相关的行业,从设计、制造到分销,均分布在全球各地,各自遵循着当地的法律法规。 这一水平商业模式构造了全球化的集成电路产业链,允许企业将资源集中在他们擅长的专业领域,构成了成功的商业模式,极大地增加了集成电路的供应量和多样性,成为集成电路广泛应用的基石,但同时这一水平商业模式也带来了新的风险。因为每一个产业链的参与者都可能引入安全隐患,同时也可能是这些安全隐患的受害者。在这种全球化的设计环境下,无论前向信任还是后向信任都会有缺失,全球化的供应链布局也使信任链的建立变得非常困难。具体而言,IP所有者无法在全球化的产业链中跟踪IP的使用情况,导致了包括IP窃取、芯片过量制造、芯片和IP的恶意克隆、IP恶意篡改等问题。与之相对应,SoC的集成厂商和终端用户也无法完全追踪所有第三方设计和服务的来源,从而为芯片层面的漏洞提供了可能。这些芯片层面的漏洞包括硬件木马、侧信道信息泄露、测试电路的后门、IP模块隐藏功能等。 一旦集成电路部分乃至全部被认为是不可信的,那么现有的基于软件和网络安全的攻击模型就无法全面描述计算系统可能面临的风险。更有甚者,许多已有的安全防护方案都是基于硬件可信假设的,任何硬件或集成电路层面的安全威胁都需要研究人员重新考虑软件防护体系的有效性。当然,研究人员也从乐观角度去看待集成电路安全,尝试把硬件加入系统安全防护体系,提供硬件主动防御,弥补以往“用软件保护软件”的软肋。基于这一思路,研究人员开发了以硬件保护软件的新型安全防护方案,很快被应用到了市面上几乎所有的主流处理器中。 鉴于集成电路,特别是SoC产业链安全的重要性,集成电路安全这一新兴的研究课题正受到前所未有的关注,一个明显的趋势是越来越多的有着不同背景的研究人员正在加入这一领域。然而,对于集成电路安全的理解往往容易与传统的网络和系统安全以及密码学,特别是密码芯片的研究相混淆。因为这个原因,集成电路安全的研究领域一直缺乏一个明确的定义。为了帮助研究人员熟悉这个领域,特别是了解这个领域的各项任务和挑战,同时帮助学术界和工业界更好地研究集成电路安全的保护措施,笔者撰写了《集成电路安全》这本书。书中总结了三类集成电路安全的研究:①集成电路安全攻击方式的研究;②集成电路安全防御方式的研究;③集成电路安全的新应用和新挑战,特别是集成电路安全结合系统安全和计算机体系结构安全而产生的新兴交叉研究领域。 通过对这三个领域的深入阐述,笔者希望能够帮助读者理解集成电路安全的发展过程以及可能的安全隐患,特别是如何保护集成电路的热点研究问题。鉴于这一领域的快速发展,相信会有更多的研究领域被发现,也会有更多的安全防护方法被提出,最终帮助实现可信的集成电路和集成电路产业链,为整个计算系统的安全提供硬件和芯片基础。除了阅读本书,笔者也鼓励相关领域的研究人员多参与学术交流和讨论。为了促成这一目的,笔者于2016年创办了亚洲硬件安全年会 (Asian Hardware Oriented Security and Trust Symposium, AsianHOST)。该年会成为亚太地区覆盖面最广的硬件安全学术会议。同时,笔者也联合中国计算机协会容错专委会,帮助创立了硬件安全论坛。希望这些会议、论坛,以及本书的出版,都能帮助集成电路安全领域的研究人员更好地展开研究和讨论。 另外,笔者还要感谢合作者和学生,包括Xiaolong Guo、Raj Gautam Dutta、贺家骥、马浩诚、赵毅强、Max Panoff、杨亚军、周平强、Kaveh Shamsi、Travis Meade、Shaojie Zhang、 陈柯君、邓庆续、Orlando Arias、Dean Sullivan等。没有他们的辛勤研究和辛苦付出,本书介绍的大部分技术都不会存在。 从学术角度来看,本书既可以作为集成电路安全研究的教材,满足高年级本科生和研究生的学习需求,填补这一领域教材的匮乏,同时又可以作为相关领域科研人员的参考文献。 编著者
目录 第1章概述 11硬件安全简介 12硬件木马检测 121芯片部署前的硬件木马检测 122芯片部署后的硬件木马检测 13形式化验证 131基于硬件 IP 核的携带证明硬件框架 132基于 SAT 求解器的形式化验证方法 14芯片防伪与 IC 保护 15物理不可克隆函数 16基于新型器件的硬件安全 17硬件辅助计算机安全 171ARM TrustZone 172英特尔 SGX 173CHERI扩展 174开放硬件平台lowRISC 18结论 参考文献 第2章硬件木马 21硬件木马攻击模型与硬件木马分类 211易受攻击的 IC 供应链 212攻击模型类别 213硬件木马分类 22硬件木马设计 23硬件木马防护对策 231木马检测 232可信设计 233可信分块制造 234运行时硬件木马检测方法 235基于EM侧信道信息的分析方法 24挑战 241木马防范 242利用模拟和混合信号实现的模拟硬件木马 243黄金模型依赖 25总结 参考文献 第3章旁路攻击 31旁路攻击基础 311旁路信息泄露的起源 312旁路信息泄露模型 313旁路攻击的原理 32旁路分析模型 321简单功耗分析 322差分功耗分析 323相关功耗分析 33现有旁路攻击 331时序旁路分析攻击 332功耗旁路攻击 333电磁旁路攻击 334声音旁路攻击 335可见光旁路攻击 336热量旁路攻击 337故障旁路攻击 338缓存旁路攻击 34针对旁路攻击的策略 341隐藏策略 342掩码策略 343旁路漏洞评估 35结论 参考文献 第4章错误注入攻击 41错误注入攻击模型 411错误注入攻击模型概述 412错误注入攻击的前提条件 42基于功率的错误注入攻击 421过低功率输入 422功率毛刺 43基于时钟信号的错误注入攻击 44基于电磁信号的错误注入攻击 441电磁错误注入攻击 442电磁错误注入方式 45其他错误注入攻击 451基于激光或强光的错误注入攻击 452基于聚焦离子束和基于物理探针进行的错误注入攻击 453基于热量的错误注入攻击 46错误注入攻击的防范方法 47总结 参考文献 第5章硬件安全性的形式化验证 51概述 52形式化验证方法简介 521定理证明器 522模型检验器 523等价性检验 524符号执行 525信息流跟踪 53携带证明硬件 (proof-carrying hardware, PCH) 531携带证明硬件 (PCH) 的背景 532携带证明硬件面临的挑战 533PCH 优化:跨越软、硬件边界 534PCH 优化:集成框架 54基于硬件编程语言的安全解决方案 541SecVerilog、Caisson 和 Sapper 542QIF-Verilog 55运行时验证 551可验证的运行时解决方案 552运行时携带证明硬件 56结论 参考文献第6章分块制造及其在电路防护中的应用 61引言 62分块制造简介 63分块制造中的木马威胁 64问题形式化 641威胁模型 642问题形式化 65攻击度量和流程 651度量标准 652攻击流程 653映射 654剪枝 66防御方法 67实验结果 671实验平台设置 672映射数目N的选取 673攻击效果分析和比较 674防御的有效性分析 68结论 参考文献 第7章通过逻辑混淆实现硬件 IP 保护和供应链安全 71简介 72逻辑混淆技术研究概览 73关于各类攻击的介绍 731数学符号约定 732攻击模型 733oracle-guided 攻击 734oracle-less 攻击 735顺序oracle-guided 攻击 74关于防御的介绍 741伪装单元和元器件 742锁定单元和元器件 743网表级混淆方案 75研究陷阱和未来方向 76结论 参考文献 第8章防止IC 伪造的检测技术 81伪造电子器件的问题 811什么是伪造电子器件 812伪造途径 82电子器件伪造检测 821被动检测措施 822主动检测措施 83讨论 831被动伪造检测 832主动防伪 84结论 参考文献 第9章集成电路网表级逆向工程 91逆向工程与芯片安全 92电路网表提取 93网表级逆向工程概述 931研究问题 932逻辑划分及归类 933网表划分和评估 934高层网表表述提取 94基于逆向工程的逻辑识别与分类 941RELIC 方法 942RELIC结果演示 95对有限状态机进行逆向分析 951REFSM的基本原理和方法 952利用 REFSM进行逻辑提取 96基于网表逆向工具的集成电路安全分析 961木马检测 962解锁 FSM 97结论 参考文献 第10章物联网(IoT)的硬件安全 101感知层安全 1011RFID 1012NFC 102网络层安全 103中间件层安全 1031针对微体系架构的攻击 1032其他缓存旁路攻击 1033环境旁路攻击 104应用层安全 1041针对智能设备的旁路攻击 1042针对智能设备的物理攻击 105基于硬件的安全机制 1051本地保护 1052安全认证 106结论 参考文献 第11章基于硬件的软件安全 111硬件原语 1111ARM TrustZone 1112ARM TrustZone-M 1113可信平台模块 112基于硬件的物联网防御 1121控制流完整性 1122固件验证 113基于硬件的控制流完整性 1131控制流完整性 1132HAFIX:硬件辅助控制流完整性扩展 1133扩展 HAFIX:HAFIX++ 1134各类控制流完整性方案的比较 114代码执行完整性 1141指令集随机化 1142地址空间布局随机化 1143SCYLLA 设计 1144实现 SCYLLA 架构 1145SCYLLA 评估 115未来工作和结论 参考文献 第12章基于体系架构支持的系统及软件安全策略 121处理器及体系架构安全简介 1211微架构部件 1212商业处理器中的安全架构 1213学术界提出的安全架构 122处理器微架构漏洞 1221处理器微架构中的信息泄露通道 1222针对乱序执行部件的攻击 1223针对推测执行部件的攻击 123针对处理器微架构漏洞的一些解决方案 1231针对乱序执行攻击的解决方案 1232针对推测执行攻击的解决方案 124结论 参考文献