集成电路芯片安全隐患检测技术
罗宏伟
(电子元器件可靠性物理及其应用技术国家级重点实验室,信息产业部电子五所 广东广州
510610)
摘要:现代信息产业的基础是集成电路,集成电路的安全性决定了信息产业的安全,在集成电路芯片设计过程中考虑不周全或在设计过程中恶意植入不受使用方控制的程序或电路,是对现代信息产业安全的重大挑战。本文通过对集成电路芯片中安全漏洞的分析,提出了三种检测芯片安全隐患的方法:物理检测、电学检测和协议检测,认为采用物理检测和电学检测相结合的方式可以比较有效的检测出芯片的安全隐患,并对基于电流变化的电学检测技术进行了详细的论述。
关键词:集成电路 安全隐患 检测技术
Test Technology for Hidden security Troubles in IC
Luo Hong-wei
(National Key Lab. for Reliab. and Appl. Technol. of Elec. Prod; China Elec. Prod. Reliab. And
Environ. Test Resear. Instit., MII, Guangzhou, Guangdong 510610, China)
Abstract: IC is the national’s information industry base and the security of information industry is decided by the security of IC. Here three types hidden security troubles in IC have been analyzed and the test technology relatively have been pointed out, the method of physical test combining with electronic test is effective in inspecting the IC hidden security troubles, and the electrical test technology based on the current is discussed.
Key words: IC; Hidden Security Troubles; Test Technology
1 引言
电子元器件特别是集成电路是现代电子设计中重要的部件,作为整个信息产业的基础,在信息安全上有着重要和关键性的作用,这不仅表现在现代信息处理要依赖集成电路技术,更反映在集成电路本身的安全与否和被处理信息的安全息息相关[1]。一颗集成电路芯片由几百万个甚至几亿个晶体管构成,如果设计者在其中的某些晶体管上“开了后门”,一般是很难查出来的,这样就为使用者造成了隐患。随着现代集成电路技术的发展,包含CPU、存储器、信号产生/发射单元以及嵌入式软件等的集成电路已广泛应用于通讯数据处理、信息存
储之中,而这些电路中包含的软件算法、运算单元、存储结构以及信号发射/接受控制电路等,都容易在设计过程中被植入恶意的、不受使用方控制的程序或电路,导致在使用过程中出现不受控的安全问题;也有可能是在设计过程中由于考虑不周全而存在设计漏洞,从而在信息交换或处理中被他方窃取。这些问题都属于电子元器件的安全隐患问题,经常会导致被处理信息的泄漏,导致公司重要客户信息或决策被竞争对手获取,造成严重的不良后果。研究集成电路的安全隐患问题,不仅仅是防止信息的丢失或保证系统的安全,更主要的是找到不安全隐患的原因,制订出对策,确保使用的芯片更可靠,系统更不容易出问题。 2 集成电路芯片的安全隐患类型
不考虑由于设计不完善导致的安全隐患问题,要在集成电路中实现植入后门、制造安全漏洞的方法通常有三种:一种是完全用硬件实现,在电路中专门设计特殊的控制单元,与电路的正常功能一起工作,占用芯片的面积和逻辑电路资源,这可以在简单的电路中就得到实现;一种是将控制信息和算法完全用软件实现,在需要时通过特定信号进行触发或定时触发,这种方法一般是用在高级的电路中;第三种是软硬件结合,将控制信息和处理部分用硬件、部分用软件来实现,这种方法是最难被检测到的方法,但通常成本也是最大的。
针对这几种产生电路安全隐患的手段,相应的芯片安全检测方法也可以分为三大类:物理检测,电学检测和协议检测。物理检测的核心是通过逆向工程的方法获得集成电路的版图,并经过分析掌握与安全相关的电路拓扑,进而找到与安全隐患相关的电路部分。在电学检测中,可以将芯片置于非正常状态以探取芯片设计中的逻辑漏洞并确定其类型,或者对集成电路芯片的每个动作产生的微小电性能差异进行跟踪和分析,从而了解芯片的内部可能存在的异常功能电路;协议检测是在获得了部分安全控制算法结构的信息之后由这方面的专家或熟知这方面技术的专业人员通过分析和尝试进行的一种检测手段。
协议检测的方法需要对信息控制和算法有比较深入的了解,一般属于密码学的范畴,需要信号处理和通信方面的专家来进行,同时还需要对集成电路内部逻辑结构有较深入的理解,实施起来比较困难。在目前的设备条件和技术能力来看,更多的采用物理检测和电学检测相结合的方法来实现电子元器件的安全隐患检测是一个可行的方案。
3 安全隐患检测的检测方法
3.1 电学检测
针对怀疑存在安全隐患的电路,分析其中可能的导致安全隐患的结构,使用一系列专门设计的较短的测试向量来激励特定的电路单元和被测电路网络,结合电路的结构分析,对芯片电路各组成部分逐一分析,确定电路中存在/不存在怀疑的结构。同时,通过模拟各种特殊环境应力条件(如超高频信号、电磁脉冲环境、过电应力条件等),分别在芯片处于非工作状态或正常工作状态下测试其功能和参数,与常规工作状态进行比较,检测芯片内部是否存在易受外加信号触发的结构。
对需进行安全检测分析的集成电路采用高时域精度的方法,分析电源接口在集成电路正常工作过程中产生的各种电磁辐射的以及电源电流变化的模拟特征。芯片中隐藏的附加的电路在启动后也会消耗一定的功率,因此可以测试和比较电路导通瞬间的电流IDDT,进一步通过频谱变换如傅立叶分析和小波分析的方法来确定异常的导通瞬间电流,来判断是否存在附
加的电路。IDD频谱图形测试方法是在被测样品(DUT)的输入端施加测试向量,测试向量的频率可达到DUT的工作频率[2]。DUT工作时,其内部晶体管处于开关工作状态,DUT电源电流包含了晶体管开和关的开关电流。通过频谱仪检测分析DUT的电源电流,在频率域而不是时域获取电源电流的信息,除可获得晶体管静态电流所包含的信息,还获得晶体管开关工作时开关电流的信息。如果测试向量输入时,异常的集成电路结构将导致异常的电流成份出现,这块集成电路的电流频谱将和正常的集成电路不同,两者比较分析便可判断该集成电路是否存在未列出或冗余的电路模块。
基于集成电路芯片工作电流变化的电学检测技术是通过对集成电路运行过程中的信号变化以及能量消耗进行分析,判断其电流输运和信号传递路径的方法,包括电压分析技术、故障分析技术、时间分析技术、简单的电流分析技术、差分电流分析技术、电磁辐射分析技术等,其中应用最多、也最广泛的技术是简易功率分析和微分能量分析技术[3,4,5]。
3.2 软硬件协同测试
对于含有嵌入式软件的电路,需要进行软硬件的协同测试。采用快速原型系统,将电路置于系统仿真验证环境中,对电路的各个功能块利用与其有关的成套系统测试分别孤立的加以测试验证,辨别其中的特殊模块,特别是其中的控制数据流向、信号传递的模块,与常规控制模块进行比较。同时,软硬件协同测试,有利于分辨电路控制指令的功能,确定各个阶段电路的工作状态。
在芯片的检测过程中,采用单步跟踪和断点是最根本技术。
3.3 物理检测
即版图分析,采用反向工程的方法利用开封、制样、拍照、拼图、扫描电镜、电子探针等硬件设备对芯片版图进行细致分析,检测提取相应的电路结构,分析判断其中超过功能要求的部分,确定是否存在后门电路和冗余电路等安全隐患。
结构分析在芯片安全检测中的作用主要体现在可以通过版图重构技术重新建立芯片的逻辑电路图,从物理层次分析电路不同模块的作用,以发现当中是否包含由异常的有可能是安全隐患的电路模块。在物理上解剖芯片,可以使用各种化学腐蚀和机械剖切的手段,一微米一微米地将芯片上的不同覆层剥离,再使用光学显微镜和精密机械探针,研究芯片的电连接和功能。
用于芯片安全隐患检测、分析的系统和分析设备包括电子束探针系统、聚焦离子束、红外热像仪、扫描电镜、显微镜、半导体参数分析仪等。通过使用这些仪器,就能对芯片各表层和纵向剖面进行分析,准确定位芯片内部信号传送路径以及电平转换节点,分析提供完整的芯片内部物理结构。例如,电子束诊断系统的探针能够透过芯片表面钝化层探测、采集到器件波形,快速准确地定位和分析节点信号,并提供出较有效的电压信号变化信息。离子束修补系统可对工艺线宽最小至0.35 微米的集成电路封装器件或管芯进行修补,包括切割介质、切割金属、淀积金属、淀积二氧化硅,从而实现对集成电路布线修改、测试点制作、电阻修调以及剖面制作等。
在芯片安全隐患的检测过程中,若有可能,应尽可能的选择相同或相近的、已知结构和功能的芯片或结构进行对比性检测分析。
4 基于电流变化的电学检测技术
CMOS门电路是由上拉P MOS晶体管和下拉N MOS晶体管电路互补构成的,通常情况下只有一个晶体管导通。当集成电路内部处理的数据发生变化时,反映在CMOS电路上即为状态的变化,这种状态的变化导致CMOS电路的功率消耗,也就是电路上电流的变化。理想状态下,CMOS集成电路静态电流为零,晶体管开关上升沿和下降沿为垂直,开关电流为零,不存在功耗的问题。但实际上,CMOS集成电路在工作过程中,晶体管的开关过程是一个对其负载充放电的过程,需要一定的时间,消耗一定的功率;而且,管子处于关态时,有一定的漏电流。最简单的CMOS集成电路单元CMOS反相器结构如图2所示,CMOS反相器工作时的的电压、电流波形表示在图2的右侧。