一种针对密码芯片DPA攻击的安全风险量化分析方法

2016-06-08 06:07李廷顺程志华张宗华
计算机应用与软件 2016年5期
关键词:概率分布消耗密码

李廷顺 谭 文 程志华 张宗华

1(华北电力大学控制和计算机工程学院 北京 102206)2(国家电网公司 北京 100031)3(南瑞集团有限公司 江苏 南京 210003)



一种针对密码芯片DPA攻击的安全风险量化分析方法

李廷顺1谭文1程志华2张宗华3

1(华北电力大学控制和计算机工程学院北京 102206)2(国家电网公司北京 100031)3(南瑞集团有限公司江苏 南京 210003)

摘要针对密码芯片遭受差分功耗分析DPA(Differential Power Analysis)策略攻击时风险如何量化精确评估的问题,提出一种量化应用模拟分析方法。该方法对正常运行中的密码芯片功率消耗大小的概率分布密度值实行核函数机制理论推导,并引入密钥在获取时攻击分析结构模型与功率消耗大小之间的互通信熵值。实验结果表明,该量化分析方法不仅能精确地验算出与互通信熵值类似的相关度参数,而且能有效地提高密钥芯片风险全方位分析能力。

关键词DPA密码芯片核函数互通信熵值量化分析

0引言

近年来,随着计算机信息技术的不断发展,人们在享用IT技术所带来便利的同时,越来越关心信息安全的重要性。其中,便携性密码装置的应用与实践已深入到世界信息化发展的各个层面,尤其是企业级信息安全密码芯片装置最为突出。但是,近年来功耗分析技术对密码芯片的安全产生了严重的威胁,功耗分析属于旁路攻击技术的一种且威胁性最高。而DPA是功耗分析攻击中的一种主要手段[1]。攻击者利用对硬件加密设备中的CM0S电路锁定时产生的动态能量消耗曲线等边信道信息进行测量和分析,采用非侵入的方式提取设备的加密密钥等秘密信息。所以攻击者对被攻击器件不需要深入地了解就能破解例如DES、AES等加密算法。与传统破解加密芯片的方法相比,DPA更隐蔽而且更难防范。密码芯片应用于人们生活中的各个领域,因而对密码芯片有关DPA等攻击技术的研究很有必要[2]。

而目前,在国内外研究成果中,关于DPA攻击对于密码芯片风险机制处理的量化分析研究资料极其缺乏。文献[3] 借鉴了Prouff等人利用频谱变换进行防护的思路,提出一种基于Walsh 谱变换的安全S 盒算法,分析其安全性与简便性,介绍其硬件实施的可行性,并以DES为例证明该方案的安全性。然而此文献只是单纯地对于算法密钥风险机制采取了量化措施,未能对基于DPA攻击下的风险机制进行量化分析,忽视了偏向性DPA攻击多变化的波浪线式风险识别过程。文献[4]依据功率消耗泄露参数,设计出一种新型的信息安全风险评估策略。此策略中引入了汉明权重HW(Hamming weight)结构对其差分风险攻击进行了研究验证,然而其信息安全风险量化机制仅仅针对于密码芯片的感知安全风险的能力值,对于其信息安全风险量化机制的全方位分析能力没有根本指导性价值。文献[5]采取互通信熵值作为信息安全密码芯片的功率消耗大小风险机制量化信息参数,引入其熵值用于评估密码芯片系统安全风险因子分析,设计出一种改进的安全风险评测结构模型。然而此模型趋于理想化条件才能保证有效结果,该理想化条件就是必须保证其系统功耗噪音对密码芯片的影响趋于零。然而现实情况下,不可能使其实现理想化。文献[6]根据电磁学理论原理,推出一种考虑电磁泄露攻击形态的信息安全风险评测机制。此方法引入了电磁学中信号应用分析理论对其电磁泄露攻击构建参考模型,且采取熵值度量其安全风险机制。此风险评测机制同样具有局限性,只能对其电磁泄露攻击形态下的安全风险机制进行量化分析,无法量化分析DPA攻击形态下的操作流程。文献[7]则从信息安全风险选择、策略机制考虑,以信息化博弈学理论为基石,综合分析攻击方与防御方信息安全攻击与防御策略机制。引入互通信熵值参数因子,对整个密码芯片的信息安全风险机制进行量化分析,提出了多种平等条件下的信息安全攻防策略结构模型,并结合系统安全商务智能仓库数据信息,全面分析了信息安全攻防两端的互通信过程。然而DPA攻击是一种通过路径条件获取密码芯片密钥信息的暴力攻击手段,所有攻击流程与方式是非并发无随机选择性,都是预先确定的,符合纵向攻击模式行为。基于博弈学理论可知,这些方法并不能有效地对DPA攻击进行多层次量化分析。因此,在如何有效地量化DPA攻击行为对信息安全风险机制的影响方面尚在探索阶段。

本文在文献[7]的研究基础之上,依据信息安全密钥在某种情况下获取被攻击方获取时,DPA攻击形态结构与功率消耗大小概率分布密度存在某种关联性为前提,除了引入互通信熵值之外,添加了一种核函数机制,融合到差分功耗分析攻击形态之中,在其攻击过程之中,全方位地量化了密码芯片的信息安全风险机制,并对其进行了量化应用模拟与分析。

1DPA攻击理论

关于差分功耗分析(DPA)攻击相关的理论原理,在文献[8,9]进行了详细的描述与分析。通过实践表明,具体攻击阶段与详细流程按照时间周期关键节点顺序一般由四个部分组成:

(1) 实时运作环节攻击方将其m组可知的明文pi(i∈[1,m])作为AES(高级加密标准)信息安全密码芯片的输入值,且对其明文P通过其加密算法进行多次(如n次)加密处理,获取二元组m×n相关联的密码芯片功率消耗函数趋势模型。若攻击方的锁定对象为一种特定编码的、具有AES加密措施的8 bit密码芯片(假定为单片机设备)。依据此设备所特有的装置性质与特征(16个S盒设备串行拼接而成),则攻击方获取的二元组m×n关联性密码芯片功率消耗函数趋势模型同样存在其装置性质与特征,即此模型具有显示多拼接S盒设备实时运作阶段的功率消耗大小的特点。

(2) 通信操作环节在此环节中,首先攻击方从所有P中抽取n条密码芯片功率消耗函数趋势模型,依据时间周期作为关键中轴点,对其求和且进行平均,使得最大程度降低高斯噪音声波对其通信处理信号的影响;然后以SPA(简单功率消耗分析)作为第一攻击方式获取相关数据信息,将其结果应用于多拼接S盒的首环过程中,从获取的密码芯片功率消耗函数趋势模型中智能抽取多拼接S盒实时通信阶段的时间关键变量,即多拼接S盒首环操作过程中HW结构与系统密钥之间的中间参数值。

(1)

则攻击方可以获取从Q1一直到Q28总计28个差值集合,且对其进行了从大到小的排序。因此,对于较大输出差值集合的Qi其对应的Ki的推导精确性同样较大,呈现正比关系。

依据上述具体攻击阶段与详细流程,可以描述出DPA攻击的整体框架,如图1所示。

图1 DPA攻击流程图

在DPA攻击的整个过程中,在攻击方的一边(即上半图部分),因为每个攻击方采取的攻击方式与手段不同,这里DPA攻击手段单一,只攻击多拼接S盒首环中的某1 bit位置。因此,多拼接S盒首环操作过程中HW结构与系统密钥之间的中间参数值只能是0或者1。但是攻击方的另一边(即下半图部分),因为噪音声波的干扰,攻击方计算出在该1 bit位置的翻转功率消耗大小值是固定在某一个范围之内的不间断的参数数值。尽管是在DPA攻击周期的初始节点,但是对于噪音声波而言,攻击方已对取得的功率消耗函数模型做了平均差操作。基于保持一定的DPA攻击能力与强度的要求,攻击方选择适度执行对其P的加密操作,不然将会出现关键时间周期无法控制的现象。所以,若以平均差操作的手段对其噪音声波彻底铲除,这一点很难实现,只能通过相对性的削弱,以达到预定的目的。

假设DPA攻击在密钥推导阶段的精确度保持一定水准,使得攻击达到目的,则攻击方构造的结构模型,即模拟函数D=Hw[S(K⊕P)]。其D的0与1值与多拼接S盒运算操作中某个bit位置的功率消耗大小的概率分布密度保持一定的函数关系,即确定了其功率消耗大小的区域范围。与此同时,HW结构输出参数与具体情况下的某个bit位置的功率消耗大小是独立分布的两个个体,因此,可以获取较大的Qi。其函数关系度与密钥推导精准度是呈现正比关系。所以,在(3)阶段应对DPA攻击过程中,其函数关系度是信息安全量化密码芯片应付威胁风险值的关键测试指标之一。

2风险量化应用分析

通过DPA攻击建立的模拟函数:

D=Hw[S(K⊕P)]

(2)

由于其噪音声波的干扰,对于现实情况下的功率消耗大小采取以下函数代替:

U=Hw[S(K⊕P)]+n

(3)

现对上式进行定义描述:可知n为噪音声波的干扰量,依据D的定义,U与其相对应,即U为连续不间断地随机变量。

从信息安全主动方角度出发,为了测试DPA攻击对于密码芯片所带来的影响与威胁,并且为了做好信息安全风险评估工作,应当提供一个正确的Ki。因此,在以低电平正常运行的密码芯片多拼接S盒的前提下,DPA攻击风险量化应用分析包括以下几个部分:

以AES算法为加密标准的密码芯片一套,且输入值是m组P。

重复执行加密m组P,获取二元组m×n关联性密码芯片功率消耗函数趋势模型,且对所有组P的指定bit位置中的功率消耗大小qi(i∈[1,m])进行重点标记。

依据P与预先给定的Ki,依次运算出所有组P对应的Di值(D=Hw[S(K⊕P)](i∈[1,m])),且对其qi分为A0以及A1两个系列集合。A0中所有因子的Di都是0,与其相反,A1中所有因子的Di都是1。

基于核函数机A1制理论原理作为信息安全风险评估量化原则,即采用核函数机制分别计算p(q|D=0)以及p(q|D=0)情况下概率分布密度。在输出结果中,p(q|D=1)是A1参数值分布情况,p(q|D=0)是A0参数值分布情况。

通过以上过程的顺序执行下,获得的输出值,即互通信数据参数的大小详细定义了D=Hw[S(K⊕P)]与U=Hw[S(K⊕P)]+n之间的相关度。若其D与U之间的相关度较高,则两个系列D值概率分布情况存在较高的差异度,在保证Ki正确的前提下,攻击方能够获取较大的Q,同时也能够以较高的精准度划分Ki的正确性。所以,以互通信数据的参数作为DPA攻击信息安全风险评估的量化指标,能够在信息安全密码防御技术方面能够提供一定的研究意义。现将以核函数机制理论原理为基础,针对功率消耗概率分布密度趋势模型与计算互通信熵值两个方面进行应用与分析。

2.1核函数机制估算概率分布密度

针对信息安全风险评估机制中的现实情况,对于采样的参数概率分布密度结构模型的详细表现方式尚无分析能力。因此,不能利用其全参数估算方式进行函数结构模型的应用分析,只能通过无参数估算方式测试器概率分布密度结构模型。目前使用最多的是文献[8]中提出的无参数估算方式,即基于核函数机制理论原理的一种概率分布密度估算方式,现对其方式通用流程进行详细描述。

预先定义一个随机变量x,其有n个检测点,即表示为xi(1≤i≤n)。在无参数估算方式下,其核函数机制估算方式通过以下风险评估估算函数表示x的概率分布密度结构模型:

(4)

当中K(*)则是核结构函数,且符合以下条件:

(5)

其中,*满足条件K(*)≥0,无参数估算方式窗口宽度使用h表示。其中对于K(*)以及h的相关因素说明估算方式的优劣度。通过研究表明[9],密码芯片中门结构在某一t点内的翻转模式服从正态分布关系,同时其噪音声波的干扰最低,此时服从噪音声波干扰值等于0的正态分布。因此,其核函数表示如下:

(6)

从式(4)与式(6)中,可知f(x)的估算方式如下:

(7)

注:h见式(5)所述,n是密码芯片测试参数总个数。

对其f(x)确定之后,h将影响最终风险评估参数估算实际作用,则在不同h值中,选取其能够达到最佳风险评估参数估算作用的h值成为需要解决的关键点。依据应用数学理论中的差分机制,利用其f(x)与fh(x)(基于h值下的核函数)两者的不同之处,进行差分计算,表示如下:

M(h)=E{∫[fh(x)-f(x)]2dx}

(8)

其中,M(h)是以h的一种积分表达式体现出来的。其实,在现实估算过程中,选取M(h)最小值状态(其估算效果最佳[10]),那么,f(x)最好地显示x的概率密度分布情况。所以,对其M(h)求导且其值为零的过程就是最佳的h值:

(9)

其中,形式化证明了最佳h值的f(x)估算过程[11]。如此同时,需要对功率消耗大小的样本进行测试,使得n与xj值能够获取完整状态下的f(x)。

2.2互通信熵值的计算分析

通过上一节的论证分析,因为P的不确定性,如表1显示的D值概率分布。

表1 D值概率分布

通过分析结果已知,p(q|D=1)和p(q|D=0)具有类似的表现模式,然而其密码芯片参数采样的数据信息分布与h值情况,使得估算参数值不尽相同,所以对于D值与q存在一定的互通信熵值。I(D;q)表示互通信熵值,依据D与p(q|D=d)的定义关系,以及信息论理论原理可知:

(10)

参照I(D;q)能够对其DPA攻击进行一定的信息安全风险评估量化应用与分析。

3模拟实验

模拟系统主要由以下几种装备组成:(1) 若干FPGA密码芯片(基于AES加密标准的8 bit刀片机);(2) 计算机一台;(3) 稳定电压的电源装置一台;(4) 示波器T一个;(5) 不同大小的电阻设备若干。首先,在FPGA芯片的末端方与接地端之间接入一个50Ω容量的电阻设备,使得能够获取FPGA芯片的功率消耗趋势关系。然后在电阻设备两边插入测试探头,使得FPGA芯片的功率消耗趋势关系信号通过其装置传输给T,且利用USB接口与计算机连接。本文T的采集样本操作程序使用LabView编码实现其模拟实验功能。具体操作过程如下:(1) 系统将以AES加密算法为标准的密钥信息K传入到FPGA密码芯片中;(2) 基于RS232开发端口为通道,将任意P信息发送给FPGA密码芯片;(3) 通过电阻设备的接入,记录示波器T显示的功率消耗参数值(其中采样率为250 MHz,平台采样分布密度为10 000个点),且实时将数据信息发送给计算机系统平台;(4) 多次执行上面3次操作,使得数据信息采样实现自动控制功能。

在模拟系统正常运行的条件下,基于加密算法标准,预先设定一个K给予FPGA密码芯片,且对5000组P进行加密。相对于各个不同的P,依次获取多拼接S盒首环操作过程中的第5 bit的5000组功率消AES耗数据信息。然后通过D=Hw[S(K⊕P)]对所有P分析,分类为两个系列集合,且记录各个系列的功率消耗概率密度分布情况,如图2所示。

图2 DPA攻击bit翻转功率消耗的概率分布密度曲线

如上所述可知,在记录分布数据中,有无D直接关系到功率消耗概率密度分布的区域差异性,因此,正是密钥推导精准度最佳时,其Q值最大的直接原因。

对于h值的计算思路:在p(q|D=0)的情况下,h=0.45,在p(q|D=1)的情况下,h=0.56,此时对于风险评估估算函数的计算表达式如下:

注:表达式中的D分布值情况可以参考表1所示。

通过各个过程的推导可知互通信熵值为0.74,且此时的互通信熵值即是FPGA密码芯片对于DPA攻击进行信息安全风险评估量化分析的重要参考因素。

4结语

在基于DPA攻击的基本特点与核函数机制理论原理的前提下,引入互通信熵值与DPA攻击趋势结构,将其应用于DPA攻击过程中的信息安全功率消耗风险评估量化机制中,且进行了深入的应用测试。模拟测试表明,在预先设置精准度最佳密钥的状况下,DPA攻击趋势结构和密码芯片功率消耗大小概率密度分布之间具有一定的关联度。正是这个因子的存在,使得p(q|D=1)和p(q|D=0)具有较大差异度,基于这个度值使得DPA攻击得以正常操作。所以,在密码芯片应对DPA攻击时,其关联度特征是能够正确测试以及量化信息安全风险因子参数值的重要节点。

经过探索,本文仍需对几个要点进行分析总结,以便更好地找到解决方案。主要包括以下两个问题:(1) 依据核函数机制理论原理,对密码芯片功率消耗大小概率分布密度进行测试分析的过程中,其无参数估算方式流程过于繁琐,需继续探索改进;(2) 无参数估算方式具有一定使用局限性,若关联度参数值具有线性模式,此估算方式处于非最佳状态,所以如何将信息安全风险评估估算方式达到最佳状态,同样是今后需要研究的关键之一。

参考文献

[1] Mangard S,Oswald E,Popp T.能量分析攻击[M].冯登国,周永彬,刘继业,等译.北京:科学出版社,2010.

[2] 曾辉,李飞,高献伟,等.基于FPGA加密芯片的DPA实现与防御研究[J].电子设计工程,2011(11):25-29.

[3] 孙慧盈,陆继承,魏长征,等.基于Walsh谱变换的S盒算法[J].计算机工程,2014(7):18-23.

[4] Stefan Mangard.Securing implmentations of block ciphers against side-channel attacks[D].Austria:Graz University of Technology,2004.

[5] Knocher P,Jaffe J,Jun B.Differental power analysis[C]//LNCS 1666:Advances in Cryptology(CRYPTO’99).Berlin:Springer,1999:388-397.

[6] Akashi Satoh,Sumio Morioka,Kohji Takano,et al.A compact rijndael hardware architecture with S-Box optimization[C]// LNCS 2248:ASIACRYPT 2001.Berlin:Springer,2001:239-254.

[7] Johannes Blomer,Jorge Guajardo Merchan,Volker Krummel.Provably Secure Masking of AES[C]//LNCS 3357:SAC 2004.Berlin:Springer,2005:69-83.

[8] 童元满,王志英.一种抗DPA及HO-DPA攻击的AES算法实现技术[J].计算机研究与发展,2009,46(3):377-383.

[9] Tiri K,Akmal M,Verbauwhede I.A Dynamic and Differenrial CMOS Logic with Signal Independent Power Consumption to Withstad Differential Powe Analysis on Smart Cards[C]//ESSCIRC,2002:403-406.

[10] Popp T,Kirschbaum M,Zefferer T,et al.Evaluation of the Masked Logic Style MDPL on a Prototype Chip[C]//CHES,2007:81-94.

[11] Tiri K,Verbauwhede I.Simulation Models for Side-channel Information Leaks[C]//DAC,2005:228-233.

[12] Bucci M,Giancane L,Luzzi R,et al.Three-phase Dual-rail Pre-charge Logic[C]//CHES,2006:232-241.

A QUANTITATIVE ANALYSIS METHOD FOR SECURITY RISK AGAINST DPA ATTACK ON PASSWORD CHIP

Li Tingshun1Tan Wen1Cheng Zhihua2Zhang Zonghua3

1(SchoolofControlandComputerEngineering,NorthChinaElectricPowerUniversity,Beijing102206,China)2(StateGridCorporationofChina,Beijing100031,China)3(NARIGroupCorporation,Nanjing210003,Jiangsu,China)

AbstractAiming at how to estimate the risk of the password chips being attacked with differential power analysis (DPA) in quantified and precise way, this paper proposes a quantitative analysis method for applied simulation. The method makes the theoretical derivation with kernel function mechanism on the probability distribution density value of the power consumption of password chip in normal working process, and introduces the mutual communication entropy between the analysis structure model of the attack during key acquisition and the energy consumption. Experimental results indicate that the quantitative analysis can not only check the relevance parameter similar to mutual communication entropy, but can also effectively improve the full-range analysis capability in regard to key chip risks.

KeywordsDPAPassword chipKernel functionMutual communication entropyQuantitative analysis

收稿日期:2014-11-17。华北电力大学中央高校基本科研业务专项(13MS22)。李廷顺,讲师,主研领域:云计算,信息安全,大数据处理。谭文,教授。程志华,高工。张宗华,工程师。

中图分类号TP309.1

文献标识码A

DOI:10.3969/j.issn.1000-386x.2016.05.078

猜你喜欢
概率分布消耗密码
玉钢烧结降低固体燃料消耗实践
密码里的爱
转炉炼钢降低钢铁料消耗的生产实践
降低钢铁料消耗的生产实践
离散型概率分布的ORB图像特征点误匹配剔除算法
我们消耗很多能源
密码抗倭立奇功
关于概率分布函数定义的辨析
基于概率分布的PPP项目风险承担支出测算
密码藏在何处