CN110572251B - 一种模板攻击方法以及设备抗模板攻击的评估方法 - Google Patents
一种模板攻击方法以及设备抗模板攻击的评估方法 Download PDFInfo
- Publication number
- CN110572251B CN110572251B CN201910743504.5A CN201910743504A CN110572251B CN 110572251 B CN110572251 B CN 110572251B CN 201910743504 A CN201910743504 A CN 201910743504A CN 110572251 B CN110572251 B CN 110572251B
- Authority
- CN
- China
- Prior art keywords
- key
- template
- attack
- energy consumption
- sequence
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
- 238000000034 method Methods 0.000 title claims abstract description 59
- 238000011156 evaluation Methods 0.000 title claims description 18
- 238000009826 distribution Methods 0.000 claims abstract description 48
- 238000005265 energy consumption Methods 0.000 claims abstract description 43
- 238000012545 processing Methods 0.000 claims abstract description 12
- 239000013598 vector Substances 0.000 claims description 19
- 239000011159 matrix material Substances 0.000 claims description 18
- 230000000694 effects Effects 0.000 description 10
- 238000004364 calculation method Methods 0.000 description 5
- 238000012986 modification Methods 0.000 description 5
- 230000004048 modification Effects 0.000 description 5
- 230000008569 process Effects 0.000 description 4
- 230000009466 transformation Effects 0.000 description 4
- 235000005612 Grewia tenax Nutrition 0.000 description 1
- 244000041633 Grewia tenax Species 0.000 description 1
- 241000022852 Letis Species 0.000 description 1
- 230000004075 alteration Effects 0.000 description 1
- 238000005314 correlation function Methods 0.000 description 1
- 230000005670 electromagnetic radiation Effects 0.000 description 1
- 230000036039 immunity Effects 0.000 description 1
- 238000011160 research Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/30—Authentication, i.e. establishing the identity or authorisation of security principals
- G06F21/45—Structures or tools for the administration of authentication
- G06F21/46—Structures or tools for the administration of authentication by designing passwords or checking the strength of passwords
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
- G06F21/57—Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
- G06F21/577—Assessing vulnerabilities and evaluating computer system security
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/002—Countermeasures against attacks on cryptographic mechanisms
- H04L9/003—Countermeasures against attacks on cryptographic mechanisms for power analysis, e.g. differential power analysis [DPA] or simple power analysis [SPA]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0861—Generation of secret information including derivation or calculation of cryptographic keys or passwords
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Hardware Design (AREA)
- Software Systems (AREA)
- Signal Processing (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Networks & Wireless Communication (AREA)
- Computing Systems (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
- Complex Calculations (AREA)
Abstract
本发明公开了一种模板攻击方法,首先,根据输入的明文数据、密钥以及密码算法对明文数据、密钥的处理函数,构造单源多变量联合分布;接着,对于每个变量,采用基于相关能耗分析的方法计算相关系数,不同变量的相关系数构成相关系数图;接下来,基于相关系数图选取模板攻击的关键点,将各个变量对应的关键点的集合作为模板攻击的有效关键点;然后计算能耗轨迹序列的信噪比,当能耗轨迹的信噪比高于预设值时,选择任意一个变量建立256个模板;否则,为单源多变量联合分布建立m个模板;最后,在攻击阶段,计算被攻击轨迹与构建的各个模板匹配的概率,并根据计算出的概率求出对应的密钥作为被攻击设备的密钥。本发明可以提高模板攻击的有效性。
Description
技术领域
本发明涉及密码学应用技术领域,具体涉及一种模板攻击方法以及设备抗模板攻击的评估方法。
背景技术
传统的密码分析都是基于数学原理进行的。与传统的密码分析相比,侧信道攻击的基本思想是利用设备运行时泄露的物理信息来分析密钥,而不是利用数学等传统的密码分析手段。所述的物理信息有电能消耗、电磁辐射、执行时间等。侧信道分析的应用场景主要是智能卡,物联网设备等,这些物品的所有权和使用权往往是分离的,容易成为敌手的攻击对象。即使是经过密码学家充分论证的密码算法在侧信道面前也非常脆弱。研究侧信道的攻击与防护对智能卡和物联网设备的安全非常重要。
模板攻击最初由Chari et al.等人于2002年提出,模板攻击是假设攻击者有一个与被攻击目标设备相同的参考设备,因此可以刻画目标设备的能量泄露特征。从信息论的角度,模板攻击被认为是较强的一种侧信道攻击。
本申请发明人在实施本发明的过程中,发现现有技术的方法,至少存在如下技术问题:
现有的模板攻击方法存在攻击效果还有待提高。
发明内容
有鉴于此,本发明提供了一种模板攻击方法以及设备抗模板攻击的评估方法,用以解决或者至少部分解决现有技术中的方法存在的攻击效果较差的技术问题。
为了解决上述技术问题,本发明第一方面提供了一种模板攻击方法,包括:
步骤S1:根据输入的明文数据、密钥以及密码算法对明文数据、密钥的处理函数,构造一个单源多变量联合分布v1=f1(data,key),v2=f2(v1),…,vn=fn(vn-1),其中,data表示输入的明文数据,key表示密钥,v1、v2…vn表示不同的变量,fi(i=1,2,…,n)表示密码算法对(data,key)的处理函数,且每两个变量之间具有一一对应关系;
步骤S2:对于步骤S1中的每个变量,采用基于相关能耗分析的方法计算能耗轨迹序列和理论能耗序列相关系数,不同变量的相关系数构成相关系数图;
步骤S3:基于相关系数图选取模板攻击的关键点,将各个变量对应的关键点的集合作为模板攻击的有效关键点POI;
步骤S4:计算能耗轨迹序列的信噪比,当能耗轨迹的信噪比高于预设值时,选择任意一个变量建立256个模板;否则,为单源多变量联合分布建立m个模板,其中,m为单源多变量联合分布的区分能力,为正整数;
步骤S5:在攻击阶段,计算被攻击轨迹与构建的各个模板匹配的概率,并根据计算出的概率求出对应的密钥作为被攻击设备的密钥。
在一种实施方式中,步骤S2具体为采用下式计算能耗轨迹序列和理论能耗序列相关系数:
在一种实施方式中,步骤S3具体包括:
将ρ(R,H)绝对值大于预设边界的点作为模板攻击的关键点POI。
在一种实施方式中,在选取关键点时,所述方法还包括:
当两个关键点的位置相邻时,则删除ρ(R,H)绝对值小的点。
在一种实施方式中,步骤S5具体包括:
步骤S5.1:计算被攻击的轨迹的噪音向量n,并计算被攻击轨迹与构建的各个模板匹配的概率pi(n):
其中|CMi|表示所有噪音向量的协方差矩阵的判别式,CMi -1表示矩阵的逆,pi(n)表示噪音向量n符合第i个模板的概率,将矩阵CM取为单位矩阵;
步骤S5.2:根据计算出的概率确定被攻击轨迹所属的类,并根据该类别以及密钥相关的函数反推出密钥,作为被攻击设备的密钥。
基于同样的发明构思,本发明第二方面提供了一种基于第一方面所述的模板攻击方法的设备抗模板攻击的评估方法,该评估方法包括:
根据求出的设备密钥与设备实际采用密钥的吻合程度评估设备抗模板攻击的能力。
在一种实施方式中,根据求出的设备密钥与设备实际采用的密钥的吻合程度评估设备抗模板攻击的能力,包括:
将基于第一方面模板攻击方法求出的密钥,按概率大小进行排序,构成密钥集合;
根据设备实际采用的密钥在密钥集合中的顺序,判断吻合程度,从而评估设备抗模板攻击的能力。
在一种实施方式中,所述方法还包括:
根据评估结果修改密码算法的实现。
本申请实施例中的上述一个或多个技术方案,至少具有如下一种或多种技术效果:
本发明提供的一种模板攻击方法,首先,根据输入的明文数据、密钥以及密码算法对明文数据、密钥的处理函数,构造一个单源多变量联合分布;接着,对于每个变量,采用基于相关能耗分析的方法计算能耗轨迹序列和理论能耗序列相关系数,不同变量的相关系数构成相关系数图;接下来,基于相关系数图选取模板攻击的关键点,将各个变量对应的关键点的集合作为模板攻击的有效关键点POI;然后计算能耗轨迹序列的信噪比,当能耗轨迹的信噪比高于预设值时,选择任意一个变量建立256个模板;否则,为单源多变量联合分布建立m个模板;最后,在攻击阶段,计算被攻击轨迹与构建的各个模板匹配的概率,并根据计算出的概率求出对应的密钥作为被攻击设备的密钥。
由于本发明在建模阶段关键点POI(points of interests)的选取采用了基于相关能耗分析的方法,可以减少计算量,并提高抗噪音能力,对于实际的模板攻击,根据输入的明文数据、密钥以及密码算法对明文数据、密钥的处理函数,构造了单源多变量联合分布,并根据能耗轨迹序列的信噪比,来构建不同的模板,最后在攻击阶段,计算被攻击轨迹与构建的各个模板匹配的概率,并根据计算出的概率求出对应的密钥作为被攻击设备的密钥,从而可以提高模板攻击的有效性。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明提供的一种模板攻击方法的流程示意图;
图2为本发明具体实施例中设备抗模板攻击的评估方法的流程示意图。
具体实施方式
本发明的目的在于针对现有技术中的方法存在的攻击效果较差的技术问题,提出一种模板攻击方法以及设备抗模板攻击的评估方法,从而达到改善攻击效果以及对设备抗模板攻击能力的评估的目的。
为达到上述目的,本发明的主要构思如下:
首先根据输入的明文数据、密钥以及密码算法对明文数据、密钥的处理函数,形成一个单源多变量联合分布。且各个变量之间的变换都是双射(即一一对应关系),则求取每个变量vi的序列与能耗序列的相关系数,并从相关系数按照一定的规则抽取出相应的POI。以各个变量的POI全体作为模板攻击的POI。当信噪比高时,选择任一变量建立256个模板,当信噪比低时,为联合分布建立m个模板,m为联合分布的可区分能力。在攻击阶段,令CM矩阵为单位矩阵,计算被攻击轨迹和各个模板匹配的概率,并根据概率最大的模板进一步求出对应的密钥作为被攻击设备的密钥。评估方法则在此基础上,根据所求设备的密钥与实际设备所用密钥的吻合程度来评估设备抗模板攻击的能力,并根据评估结果修改密码算法的实现。既可以用于评估设备抗模板攻击的能力,也可用于指导密码算法的具体实现。
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
实施例一
本实施例提供了一种模板攻击方法,请参见图1,该方法包括:
步骤S1:根据输入的明文数据、密钥以及密码算法对明文数据、密钥的处理函数,构造一个单源多变量联合分布v1=f1(data,key),v2=f2(v1),…,vn=fn(vn-1),其中,data表示输入的明文数据,key表示密钥,v1、v2…vn表示不同的变量,且每两个变量之间具有一一对应关系。
具体来说,本发明提供的模板攻击方法是一种基于多变量联合分布的模板攻击,下面具体介绍基于多变量联合分布的模板攻击。
定义1:所谓多变量联合分布就是密码算法中与(data,key)组合有关的所有非线性相关变量组成的向量(v1=f1(data,key),v2=f2(data,key),…,vn=fn(data,key))所构成的分布。其中,data是数据部分,而key是密钥,fi,i=1,2,…,n表示密码算法对(data,key)的处理函数,且这些函数之间没有线性关系。
在密码算法里,上述的变量之间具有一定的关系,而不是相互独立。
定义2:如果上述变量满足如下关系:v1=f1(data,key),v2=f2(v1),…,vn=fn(vn-1),则称多变量联合分布为单源多变量联合分布。如果多变量联合分布由多个单源多变量联合分布构成,则称多变量联合分布为多源多变量联合分布。
当考虑能耗泄露模型时,假设能耗泄露模型为H,则单源多变量联合分布的能耗泄露模型为(H(v1),H(v2),…,H(vn))。常用的比较符合实际的能耗模型是汉明重量模型。
定义3:假设设备的能耗泄露模型为H,单源多变量联合分布的能耗泄露模型为(H(v1),H(v2),…,H(vn))。如果一个向量(H(v1),H(v2),…,H(vn))和其它向量能够区分,则称该向量为可区分向量。所有可区分向量的个数称为多变量联合分布的可区分能力。
以AES算法为例,令是s盒的输入,则v2=f2(v1)=sbox(v1),(v1,v2)构成单源多变量联合分布。由于行移位所产生的变量和变量v2是线性相关的,根据定义该变量不作为联合分布的变量。当能耗泄露模型为汉明重量模型时,上述AES的多变量联合分布(v1,v2)的可区分能力为48,即有48种不同的(H(v1),H(v2))。
基于上述定义,可以得出如下结论:
定理1:在单源多变量联合分布情况下,当变量之间的变换为双射时,在模板攻击的建模阶段,以任意变量为目标对象建模对于模板攻击来说都是等价的。
定理2:在单源多变量联合分布情况下,当变量之间的变换为双射时,各个变量获得的POI全体构成了模板攻击的有效POI。
对于实际的模板攻击,还需要考虑为哪些变量建模,建立多少个模板的问题。可以分2种情况讨论:
情况1:当能耗轨迹噪音低时,根据定理1,任意选择一个变量,为该变量建立256个模板。
情况2:当能耗轨迹噪音大时,设多变量联合分布的可区分能力为m,为多变量联合分布建立m个模板。
步骤S2:对于步骤S1中的每个变量,采用基于相关能耗分析的方法计算能耗轨迹序列和理论能耗序列相关系数,不同变量的相关系数构成相关系数图。
具体来说,基于相关能耗分析的方法即基于CPA(correlation power analysis)的方法,相比与SOST(sum ofsquared pairwise t-differences)方法,基于CPA的方法抗噪音能力较好,而且计算量也比较小。
在一种实施方式中,步骤S2具体为采用下式计算计算能耗轨迹序列和理论能耗序列相关系数:
步骤S3:基于相关系数图选取模板攻击的关键点,将各个变量对应的关键点的集合作为模板攻击的有效关键点POI。
在一种实施方式中,步骤S3具体包括:
将ρ(R,H)绝对值大于预设边界的点作为模板攻击的关键点POI。
其中,在选取关键点时,所述方法还包括:
当两个关键点的位置相邻时,则删除ρ(R,H)绝对值小的点。
在具体实现的过程中,根据CPA的实际情况(计算出的相关系数)设定一个基础噪音界作为预设边界,选取所有CPA值大于该界的点作为POI(points of interests)。为了进一步保证有效性,当两个POI的位置相邻时,则去掉CPA绝对值小的点,然后按照ρ(R,H)绝对值按从大到小排序。
例如,设共获得m个点,for(j=1;j<m;j++){利用前j个点进行模拟模板攻击},将攻击效果最好的j个点组成的集合计为POIi,i=1,2,...,n;
步骤S4:计算能耗轨迹序列的信噪比,当能耗轨迹的信噪比高于预设值时,选择任意一个变量建立256个模板;否则,为单源多变量联合分布建立m个模板,其中,m为单源多变量联合分布的区分能力,为正整数。
具体来说,步骤S1~S4为模板攻击的建模阶段,在参考设备上为K个操作(O1,O2,...,Ok)采集大量轨迹L(每个操作通常1千条),然后计算每个操作的平均信号M1,M2,...,Mk,接着采用基于CPA的方法计算相关系数选择POI,对于每个操作Oi,轨迹T的N维噪音向量为Ni(T)=(T[p1]-Mi[p1],...,T[pN]-Mi[pN]).为操作Oi计算所有噪音向量的协方差矩阵CMi,该矩阵的项定义如下:CMi[u,v]=cov(Ni(pu),Ni(pv)),通过上述步骤就为K个操作每个都建立到了模板(Mi,CMi),i=1,2,...,k。
为了使模板攻击可行有效,在建模阶段关键点POI的选择采用基于CPA的方法,对于实际的模板攻击,本发明根据能耗轨迹的信噪比来确定为哪些变量建模,建立多少个模板,从而可以提高攻击效果。
步骤S5:在攻击阶段,计算被攻击轨迹与构建的各个模板匹配的概率,并根据计算出的概率求出对应的密钥作为被攻击设备的密钥。
在一种实施方式中,步骤S5具体包括:
步骤S5.1:计算被攻击的轨迹的噪音向量n,并计算被攻击轨迹与构建的各个模板匹配的概率pi(n):
其中|CMi|表示所有噪音向量的协方差矩阵的判别式,CMi -1表示矩阵的逆,pi(n)表示噪音向量n符合第i个模板的概率,将矩阵CM取为单位矩阵;
步骤S5.2:根据计算出的概率确定被攻击轨迹所属的类,并根据该类别以及密钥相关函数反推出密钥,作为被攻击设备的密钥。
具体来说,步骤S5为模板攻击的攻击阶段,对于被攻击的轨迹,首先计算噪音向量n,然后计算其中|CMi|表示协方差矩阵的判别式,CMi -1表示矩阵的逆,pi(n)就表示噪音向量n符合第i个模板的概率。从pi(n)的计算公式看,当POI的数量N比较大时,由于涉及矩阵的逆,判别式计算量非常大,而且容易出现数值计算问题,本发明采用的方法是取CM为单位矩阵。
实施例二
基于同样的发明构思,本实施例提供了一种基于实施例一所述的模板攻击方法的设备抗模板攻击的评估方法,该评估方法包括:
根据求出的设备密钥与设备实际采用密钥的吻合程度评估设备抗模板攻击的能力。
具体来说,图2示出了在具体应用中评估方法的实现流程图,步骤S201~S205对应实施例一中的步骤S1~S5。
在一种实施方式中,根据求出的设备密钥与设备实际采用的密钥的吻合程度评估设备抗模板攻击的能力,包括:
将基于实施例一的模板攻击方法求出的密钥,按概率大小进行排序,构成密钥集合;
根据设备实际采用的密钥在密钥集合中的顺序,判断吻合程度,从而评估设备抗模板攻击的能力。
具体来说,根据实施例一的模板攻击方法可以求出多个可能的密钥,将其按概率大小排序。设备实际适用的密钥只有一个,检测实际采用的密钥在可能密钥集合里排第几位,如果在第一位,则吻合程度好,如果排在靠后的位置,则吻合程度不好。
在一种实施方式中,所述方法还包括:
根据评估结果修改密码算法的实现。
具体来说,如果攻击效果好,则需要增加防护措施,一般有两种防护措施,一种是随机化方法,如增加随机时延,另外一种方法是加入高阶掩码,增加模板攻击的难度。
密码算法对输入数据data和key的处理过程一般如下:读入明文data,读入密钥key,按照密码算法对data和key进行运算。按照多变量联合分布的观点,为(data,key)建立模板,所对应的多变量联合分布应该为(v-1=f-1(data),v0=f0(key),v1=f1(data,key),v2=f2(data,key),…,vn=fn(data,key)),其中v-1,v0分别表示对data,key的单独读写等操作。这是一个多源多变量联合分布。由于data一般是已知的,所以可以去掉变量v-1=data,这样多变量联合分布变为:(v0=key,v1=f1(data,key),v2=f2(data,key),…,vn=fn(data,key))。由于上述分布是多源多变量分布,所以定理1并不直接适用。对于多源多变量联合分布,直观的方案是为每个单源多变量联合分布建模,进行多次的模板攻击。
具体的,首先以变量v0为对象进行模板攻击。由于单个变量v0无法分为256类,在汉明重量模型下,可以分为9类。对于其它单源多变量,按照单源多变量联合分布的方法进行模板攻击获取具体的key,并用v0所在的类对所求的key进行过滤。上述攻击和为(data,key)建立65536个模板的策略相比,在不降低攻击效果的情况下,大幅降低了建模所需的工作量和轨迹需求量,而且在轨迹噪音比较大(信噪比低)时,其攻击效果比目前常用的基于CPA的模板攻击和基于SOST的模板攻击效果要好。由于很多的密码算法都具有s盒变换,所以本发明具有广泛的适应性。不但可以用于评估密码设备抗模板攻击的能力,而且可用于指导密码算法的实现,比如AES算法实现时,为了减少单源多变量联合分布里变量的个数,应该避免单独实现s盒输出的2倍乘法与3倍乘法运算。
此外,本发明提供的方法也很容易推广到带掩码防护的密码算法,此时可以对(data,key,mask)进行建模,此处data是输入的明文数据,key是密钥,mask是采用的掩码。按照现有技术中的方法,这在工程实现上是不可能的。利用本发明多变量联合分布的观点,为(data,key,mask)建模的处理过程和为(data,key)建模的处理过程是类似的,在此不再赘述。
综上所述,由于本发明在建模阶段关键点POI(points of interests)的选取采用了基于相关能耗分析的方法,可以减少计算量,并提高抗噪音能力,对于实际的模板攻击,根据输入的明文数据、密钥以及密码算法对明文数据、密钥的处理函数,构造了单源多变量联合分布,并根据能耗轨迹序列的信噪比,来构建不同的模板,最后在攻击阶段,计算被攻击轨迹与构建的各个模板匹配的概率,并根据计算出的概率求出对应的密钥作为被攻击设备的密钥,从而可以提高模板攻击的有效性。基于多源多变量联合分布的模板攻击可以分解为多个基于单源多变量联合分布的模板攻击。
尽管已描述了本发明的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例做出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明范围的所有变更和修改。
显然,本领域的技术人员可以对本发明实施例进行各种改动和变型而不脱离本发明实施例的精神和范围。这样,倘若本发明实施例的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。
Claims (6)
1.一种模板攻击方法,其特征在于,包括:
步骤S1:根据输入的明文数据、密钥以及密码算法对明文数据、密钥的处理函数,构造一个单源多变量联合分布v1=f1(data,key),v2=f2(v1),...,vn=fn(vn-1),其中,data表示输入的明文数据,key表示密钥,v1、v2...vn表示不同的变量,fi(i=1,2,...,n)表示密码算法对(data,key)的处理函数,且每两个变量之间具有一一对应关系;
步骤S2:对于步骤S1中的每个变量,采用基于相关能耗分析的方法计算能耗轨迹序列和理论能耗序列相关系数,不同变量的相关系数构成相关系数图;
步骤S3:基于相关系数图选取模板攻击的关键点,将各个变量对应的关键点的集合作为模板攻击的有效关键点POI;
步骤S4:计算能耗轨迹序列的信噪比,当能耗轨迹的信噪比高于预设值时,选择任意一个变量建立256个模板;否则,为单源多变量联合分布建立m个模板,其中,m为单源多变量联合分布的区分能力,为正整数;
步骤S5:在攻击阶段,计算被攻击轨迹与构建的各个模板匹配的概率,并根据计算出的概率求出对应的密钥作为被攻击设备的密钥;
步骤S2具体为采用下式计算计算能耗轨迹序列和理论能耗序列相关系数:
步骤S5具体包括:
步骤S5.1:计算被攻击的轨迹的噪音向量n,并计算被攻击轨迹与构建的各个模板匹配的概率pi(n):
其中|CMi|表示所有噪音向量的协方差矩阵的判别式,CMi -1表示矩阵的逆,pi(n)表示噪音向量n符合第i个模板的概率,将矩阵CM取为单位矩阵;
步骤S5.2:根据计算出的概率确定被攻击轨迹所属的类,利用该类别以及密钥相关的函数反推出密钥,作为被攻击设备的密钥。
2.如权利要求1所述的方法,其特征在于,步骤S3具体包括:
将ρ(R,H)绝对值大于预设边界的点作为模板攻击的关键点POI。
3.如权利要求2所述的方法,其特征在于,在选取关键点时,所述方法还包括:
当两个关键点的位置相邻时,则删除ρ(R,H)绝对值小的点。
4.一种基于权利要求1至3任一项权利要求所述的模板攻击方法的设备抗模板攻击的评估方法,其特征在于,该评估方法包括:
根据求出的设备密钥与设备实际采用密钥的吻合程度评估设备抗模板攻击的能力。
5.如权利要求4所述的方法,其特征在于,根据求出的设备密钥与设备实际采用的密钥的吻合程度评估设备抗模板攻击的能力,包括:
将基于权利要求1至3任一项权利要求的模板攻击方法求出的密钥,按概率大小进行排序,构成密钥集合;
根据设备实际采用的密钥在密钥集合中的顺序,判断吻合程度,从而评估设备抗模板攻击的能力。
6.如权利要求4所述的方法,其特征在于,所述方法还包括:
根据评估结果修改密码算法的实现。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910743504.5A CN110572251B (zh) | 2019-08-13 | 2019-08-13 | 一种模板攻击方法以及设备抗模板攻击的评估方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910743504.5A CN110572251B (zh) | 2019-08-13 | 2019-08-13 | 一种模板攻击方法以及设备抗模板攻击的评估方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110572251A CN110572251A (zh) | 2019-12-13 |
CN110572251B true CN110572251B (zh) | 2020-09-22 |
Family
ID=68775192
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910743504.5A Expired - Fee Related CN110572251B (zh) | 2019-08-13 | 2019-08-13 | 一种模板攻击方法以及设备抗模板攻击的评估方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110572251B (zh) |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108964872A (zh) * | 2018-07-23 | 2018-12-07 | 武汉大学 | 一种基于aes的加密方法及装置 |
CN109257160A (zh) * | 2018-12-05 | 2019-01-22 | 电子科技大学 | 一种基于决策树的侧信道模板攻击方法 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
GB201519612D0 (en) * | 2015-11-06 | 2015-12-23 | Nagravision Sa | Key sequence generation for cryptographic operations |
CN108880781A (zh) * | 2018-06-14 | 2018-11-23 | 成都信息工程大学 | 一种对加掩防护加密设备的无掩码神经网络攻击方法 |
CN109525384A (zh) * | 2018-11-16 | 2019-03-26 | 成都信息工程大学 | 利用神经网络进行拟合的dpa攻击方法及系统、终端 |
-
2019
- 2019-08-13 CN CN201910743504.5A patent/CN110572251B/zh not_active Expired - Fee Related
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108964872A (zh) * | 2018-07-23 | 2018-12-07 | 武汉大学 | 一种基于aes的加密方法及装置 |
CN109257160A (zh) * | 2018-12-05 | 2019-01-22 | 电子科技大学 | 一种基于决策树的侧信道模板攻击方法 |
Non-Patent Citations (5)
Title |
---|
"Power Analysis Attacks and Countermeasures";Thomas Popp等;《IEEE》;20071206;535-543 * |
"一类完全非线性S-盒的构造";杨敏,孟庆树,张焕国;《计算机工程与应用》;20080301 * |
"侧信道攻击中的高阶模板攻击研究";周冠豪,王燚;《安防技术》;20181231;13-18 * |
"基于能耗旁路泄露的密码芯片模板攻击算法研究";张洪欣等;《电波科学学报》;20150518;987-992 * |
"密码内部模板旁路攻击改进研究";王小娟等;《中国密码学会》;20141125;64-81 * |
Also Published As
Publication number | Publication date |
---|---|
CN110572251A (zh) | 2019-12-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Batina et al. | Mutual information analysis: a comprehensive study | |
Lomné et al. | Behind the scene of side channel attacks | |
Reparaz et al. | Selecting time samples for multivariate DPA attacks | |
Dabosville et al. | A new second-order side channel attack based on linear regression | |
Jin et al. | Recent advances in deep learning‐based side‐channel analysis | |
CN108833120B (zh) | 一种crt-rsa选择明文联合攻击方法及系统 | |
Timon | Non-profiled deep learning-based side-channel attacks | |
Thiebeauld et al. | Scatter: A new dimension in side-channel | |
Pfeifer et al. | Spread: a new layer for profiled deep-learning side-channel attacks | |
Pu et al. | Trace augmentation: What can be done even before preprocessing in a profiled sca? | |
CN111934852A (zh) | 一种基于神经网络的aes密码芯片电磁攻击方法及系统 | |
Schindler | Advanced stochastic methods in side channel analysis on block ciphers in the presence of masking | |
Prouff et al. | Theoretical and practical aspects of mutual information-based side channel analysis | |
Ding et al. | Signal-sensing dynamic S-box image encryption with 2D Griewank–sin map | |
Zhang et al. | A highly effective DPA attack method based on genetic algorithm | |
CN110572251B (zh) | 一种模板攻击方法以及设备抗模板攻击的评估方法 | |
CN111082921B (zh) | 密码芯片通过一阶泄露模型改进二阶功耗分析的方法 | |
Sim et al. | Key bit-dependent attack on protected PKC using a single trace | |
Ming et al. | Revealing the weakness of addition chain based masked SBox implementations | |
Zhang et al. | Theoretical and practical aspects of multiple samples correlation power analysis | |
Jin et al. | Adaptive channel estimation in side channel attacks | |
De Cherisey et al. | Confused yet successful: Theoretical comparison of distinguishers for monobit leakages in terms of confusion coefficient and SNR | |
Aljuffri et al. | Balanced Dual-Mask Protection Scheme for GIFT Cipher Against Power Attacks | |
Kordi et al. | Cost-effective and practical countermeasure against the template side channel attack | |
Liu et al. | Two Dimensional SOST: Extract Multi-Dimensional Leakage for Side-Channel Analysis on Cryptosystems |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20200922 |