基于虚拟孔与双轨预充电技术的电流型混淆逻辑电路设计

2023-06-07 11:17姚茂群李聪辉薛紫微李海威
浙江大学学报(理学版) 2023年3期
关键词:预充电攻击者功耗

姚茂群,李聪辉,薛紫微,李海威

(1.杭州师范大学 信息科学与技术学院,浙江 杭州 311121;2.台州科技职业学院 信息工程学院,浙江 台州 318020)

0 引言

随着半导体技术的不断发展,集成电路(integrated circuit,IC)的设计也变得多样且复杂。以密码芯片为代表的加密硬件应用广泛,小到公交卡、银行卡,大到通信基站以及军用设施。正因为密码芯片的重要性,与之相关的安全问题也逐渐增多,为窃取密码芯片的设计结构以及所处理的数据,攻击者常采用逆向攻击、功耗攻击等方式攻击密码芯片,带来诸多安全问题,严重影响IC 产业的发展。

逆向攻击[1-3],先对芯片采取解封装、化学腐蚀等处理,再利用光学显微镜分析芯片的内部结构、电路版图及层次等,最后提取门级网表,获得芯片的设计方案。攻击者常以此作为功耗攻击的辅助手段,获得电路的设计细节,从而判断电路的逻辑功能,提高功耗攻击的效率。近年来,提出了一种通过电路伪装抵抗逆向攻击的方法,即通过隐藏电路版图中的物理细节,掩盖电路的逻辑功能。如虚拟孔技术[4-5]、传输管阈值损失技术[6-7]等。

功耗攻击[8-10]是密码芯片遭遇的较常见且极具威胁性的攻击方式。利用芯片运行时所泄露的功耗信息,并对功耗与密码算法进行相关性分析,得到算法密钥。目前,抗功耗攻击的常用方法是使电路的功耗恒定,消除两者的相关性关系。

电流型CMOS 电路具有功耗低、逻辑简单等优点[11-12],并且不同门电路之间具有相似的电路结构,非常有利于电路伪装,具有抗逆向攻击的优势。同时,已有的抗攻击电路研究大多集中在电压型电路,随着电流型CMOS 电路的不断发展,设计抗逆向攻击和抗功耗攻击的电流型CMOS 电路具有必要性。

1 电路伪装与功耗恒定

1.1 电路伪装

电路伪装的核心是伪装逻辑门,即将几种不同逻辑功能的门电路设计成相同的电路结构,具有“看”似相同的线路布局,从而让攻击者无法通过光学显微镜提取门级网表信息,进而抵抗基于图像提取的逆向攻击。如图1 所示[13],标准NAND 门电路与标准NOR 门电路版图的区别清晰可辨。而伪装的NAND 与NOR 门电路,在版图上无法被准确区分,起混淆逻辑作用,增加了攻击者分析电路逻辑功能的难度,从而达到防御逆向攻击的目的。

伪装逻辑门设计,主要利用了虚拟孔技术,即版图中的接触孔可能是真实连接的,也可能是虚拟连接的,令攻击者无法得知其准确配置。通过将真实连接与虚拟连接的接触孔相互混合,就可用相同的电路结构设计出不同功能的伪装门电路,即接触孔的配置决定了该伪装门的逻辑功能。

1.2 功耗恒定

功耗恒定是一种较为常见的抵抗功耗攻击的方法。实现功耗恒定的常用设计方法是双轨预充电技术(dual rail pre-charge,DRP)[14-15],即将电路的运行周期分为预充电和求值2 个阶段,且1 个双轨电路由2 个单轨电路组合而成,有2 个输出端,如图2 所示。当1 对输入信号到达时,若电路处于预充电阶段,则2 个输出信号均为低电平0。若处于求值阶段,则2 个输出信号为正常的互补运算值。因此,当电路从预充电阶段进入求值阶段时,无论输入信号为何值,2 个输出信号中有且仅有1 个发生从低电平到高电平(0→1)的跳变。当电路从求值阶段进入预充电阶段时,2 个输出信号中也有且仅有1 个发生从高电平到低电平(1→0)的跳变,即输出信号的跳变频率恒定,此为功耗恒定的理论基础。

图2 单轨电路与双轨电路结构示意Fig.2 Structure of single rail circuit and double rail circuit

2 基于虚拟孔的电流型逻辑电路

2.1 电路设计

电流型CMOS 电路的不同门电路具有相似的电路结构,非常适合伪装逻辑门设计。如图3 所示[11],电流型CMOS 与非门、或非门以及非门的电路结构非常相似,只需改变MOS 管的宽长比就可实现不同的逻辑功能。

图3 电流型CMOS 门电路[11]Fig.3 Current-type CMOS gate[11]

利用虚拟孔技术,即通过真实孔与虚拟孔相混合的方式配置版图接触孔,实现用一种电路结构完成与非、或非以及非门3 种逻辑功能,构成布尔逻辑完备集。提出了基于虚拟孔的电流型逻辑(dummy contacts current-mode logic,DCCML),其电路结构如图4 所示。圆圈处为接触孔所在位置,真实孔与虚拟孔的配置如表1 所示。当CH1,CH2为真实孔,CH3为虚拟孔时,实现NAND 功能;当CH1,CH3为真实孔,CH2为虚拟孔时,实现NOR 功能;当CH3为真实孔,CH1,CH2为虚拟孔时,实现INV 功能。这种电路设计方法,使得攻击者无法得到该电路接触孔的具体配置,无法分辨电路的逻辑功能,起混淆逻辑作用,增大分析难度。

表1 接触孔配置Table 1 Contact hole configuration

图4 DCCML 电路Fig.4 DCCML circuit

2.2 逻辑功能实验

对所设计的DCCML 电路,用Hspice 软件,0.18 μm 工艺参数进行模拟,0 μA 代表逻辑值0,10 μA 代表逻辑值1,其仿真波形如图5 所示,结果表明,该电路结构逻辑功能正确。因此,只需对接触孔进行不同配置,就可利用相同的电路结构执行不同的逻辑功能,从而抵抗逆向攻击。

图5 DCCML 电路输出波形Fig.5 Output waveform of DCCML circuit

3 双轨预充电电流型混淆逻辑(DCMOL)电路设计

将DCCML 电路与双轨预充电技术相结合,设计了一种既可抵抗逆向攻击,也可抵抗功耗攻击的电路,提出了双轨预充电电流型混淆逻辑(DRP current-mode obfuscation logic,DCMOL)电路,其单轨电路如图6 所示。与图4 相比,增加了1 个PMOS 管P1和1 个NMOS 管N1,并在该处放置时钟信号,其目的是使电路根据时钟信号的取值进入预充电阶段或求值阶段。当时钟信号CLKA 为低电平时,进入预充电阶段,P1管导通,N1管截止,电路输出与地相连,从而输出低电平0。当时钟信号CLKA 为高电平时,电路从预充电阶段进入求值阶段,N1管导通,P1管截止,之后根据接触孔的不同配置,在求值阶段分别运行NAND、NOR 或INV 逻辑。接触孔的配置如表1 所示。

图6 DCMOL 单轨电路Fig.6 DCMOL single-rail circuit

将2 个完全相同的DCMOL 单轨电路进行组合,构成DCMOL 结构,如图7 所示。输入信号(x,y)与(a,b)之间构成表2 所示的对应取值关系,即当(x,y)的取值为(0,0)时,(a,b)的取值应为(1,1),其对应关系也可由a=b=----------x+y 运算得到。此设计使得求值阶段DCMOL 结构的2 个输出信号是互补的,从而令信号翻转率恒定,实现功耗恒定。

表2 2 组输入信号的对应取值关系Table 2 Corresponding value of two groups of input signal

表3 同类型逻辑结构实现的或非门功耗恒定性能对比Table 3 Comparison of constant power consumption performance of NOR gates implemented by the same type of logic structure

图7 DCMOL 结构Fig.7 DCMOL structure

4 实验结果与分析

将基于DCMOL 结构得到的与非门、或非门以及非门,利用Hspice 软件、0.18 μm 工艺参数进行实验,用Vdd端的电流数据评估计算功耗的变化。利用接触孔的不同配置实现3 种逻辑的门电路,实验结果如图8 所示。其中,在0~5 和10~15 ns 时,电路为预充电阶段,在5~10 和15~20 ns 时,电路为求值阶段,共运行2 个周期。由图8 可知,3 个门电路的电源端波形一致,即攻击者无法通过功耗分辨门电路的逻辑功能。并且,无论输入信号如何取值,电流曲线(功耗变化)近似相同,即功耗与数据之间的相关性在一定程度上被消除了。

图8 DCMOL 结构电源端电流波形Fig.8 The current waveform of the power supply terminal of the DCMOL structure

为验证逻辑电路功耗的恒定性以及电路运算数据与功耗之间的相关性程度,通常采用标准化能量偏差(normalized energy deviation,NED)[16]进行评估。其定义为:

其中,E 为逻辑电路在一个运算周期内所产生的功耗值的集合,NED 的取值范围为[0,1],值越小其功耗恒定性和抗功耗攻击的性能越好。

为使测试结果更接近实际工作情况,考虑电压波动以及温度变化对电路性能的影响,设置5 种实验环境[5]:(1)TYP(typical),工作电压与标准电压相同,为1.8 V,温度为25 ℃;(2)BCF(best case fast),工作电压比标准电压高10%,温度为-40 ℃;(3)WCS(worst case slow),工作电压比标准电压低10%,温度为125 ℃;(4)TL(typical leakage),标准电压,温度为125 ℃;(5)ML(maximal leakage),工作电压比标准电压高10%,温度为125 ℃。

5 结论

通过虚拟孔技术设计的DCCML 电路可在同一电路结构下执行与非、或非以及非门3 种逻辑功能,攻击者在未获得接触孔配置的情况下无法分辨电路的逻辑功能,从而起混淆逻辑的作用,可有效防御逆向攻击。在此基础上设计了DCMOL 结构,在5 种实验环境下,NED 均低于0.37%,表现出较好的功耗恒定性。经实验验证,DCMOL 结构能有效抵抗逆向与功耗联合攻击。

猜你喜欢
预充电攻击者功耗
动力电池预充设计及温升特性研究
基于任务映射的暗硅芯片功耗预算方法
电动汽车预充电保护设计
基于微分博弈的追逃问题最优策略设计
电动汽车分级预充电回路及预充电阻选型匹配方法研究
正面迎接批判
揭开GPU功耗的面纱
数字电路功耗的分析及优化
有限次重复博弈下的网络攻击行为研究
IGBT模型优化及其在Buck变换器中的功耗分析