本发明专利技术公开了一种用于侧信道攻击的深度学习模型的评价与训练方法,评价指标能够良好反映模型侧信道攻击效果的情况,在计算复杂度和对评估者能力要求方面远低于传统的侧信道评估指标。此外,通过将该评价指标改造成针对深度学习侧信道攻击的损失函数,可以在不对数据集和网络结构做任何改动的情况下,彻底解决深度学习侧信道广泛面临的数据不平衡问题。在处理不平衡数据时,该损失函数在各种条件下的效果均大幅优于以往的损失函数。效果均大幅优于以往的损失函数。效果均大幅优于以往的损失函数。
【技术实现步骤摘要】
用于侧信道攻击的深度学习模型的评价与训练方法
[0001]本专利技术涉及侧信道攻击
,尤其涉及一种用于侧信道攻击的深度学习模型的评价与训练方法。
技术介绍
[0002]侧信道攻击(SCA)的概念自1996年被提出之后,受到了密码学界的广泛关注。由于可以利用密码算法在密码设备上运行时产生的侧信道信息,包括设备的能量消耗、电磁辐射、声音、光、算法运行时间等,侧信道攻击相对于传统的密码攻击方法具有着巨大的优势。
[0003]自从Kocher等人提出计时攻击之后,侧信道攻击(SCA)在攻破密码系统方面展现出了强大的潜力。侧信道攻击是一类新型的密码攻击方法,和传统的密码分析技术不同,侧信道攻击并不局限于密码算法的理论分析。由于所有的密码算法最终使用都需要在硬件设备上运行,硬件设备运行过程中产生的物理泄露反映了密码算法使用的密钥的特征。通过利用这种物理泄露并结合密码算法的性质,侧信道攻击能够攻破许多理论上安全的密码算法,是目前较为强大而独特的密码分析方法。
[0004]建模攻击是侧信道攻击中最为强大的一种攻击方法。建模攻击最基本的基本假设是攻击者可以获取与待攻击设备同质的一个克隆设备,并能任意操纵这个克隆设备,利用获取的信息对此设备预先建立一个模型。以Z表示设备处理的敏感信息,X表示对应的侧信道泄露的信息,预建立的模型相当于对概率密度函数Pr[Z|X]的一个估计。在建立模型之后攻击者便可以利用建立好的模型,和从待攻击设备上采集的一些侧信道信息,结合明密文来破解运行于设备上的密码算法的密钥(通常是使用最大似然的方法)。
[0005]近几年,随着深度学习技术的发展和推广使用,深度学习也被用于侧信道建模攻击中的建模阶段,并且取得了不错的效果。将深度学习用于建模攻击的思路就是通过把概率密度估计问题替换为有监督分类问题来进行建模,然而这两个问题并不等价,这导致深度学习在用于建模攻击中时仍有几个重大的问题。
[0006]第一个问题是深度学习领域用来衡量模型分类效果的指标,如准确度accuracy(Acc),无法衡量模型的侧信道攻击效果。一个具有更高准确度的模型的攻击效果未必会比低准确度的模型的攻击效果好,即使采用了专门的验证集来计算准确度,也无法解决这个问题,因为它是由分类问题和概率密度估计问题的差异导致的。这个问题在数据集的标签变得不平衡的时候尤为严重,模型的预测准确度会变得更高但是攻击效果却不尽如人意。另一方面,通用的侧信道攻击评价指标GE(GuessingEntropy,猜测熵)/SR(SuccessRate,成功率)在基于深度学习的侧信道攻击中缺乏优势,GE/SR的计算复杂度和对攻击者能力(采集的侧信道信息的数目)要求较高,需要进行真实的攻击且难以嵌入到深度学习框架中。目前来说,还没能有一个兼顾效率且能准确反映模型攻击效果的指标。
[0007]第二个问题是目前使用深度学习技术进行建模时,模型的训练效果容易受到数据不平衡的影响。通常来说用于进行侧信道攻击的数据集习惯于采用汉明重量和汉明距离标签,然而这种标签是极度不平衡的,会加大模型训练的难度,降低模型训练的效果。针对这
种不平衡的数据,现存的解决方案仍有缺陷。某些方案选择直接采用S盒的输出而非其汉明重量作为标签,但会使得标签数目变多,训练过程更为复杂;某些方案采用重采样技术对数据集做平衡化处理,但是技术一般较为复杂,需要对数据集进行预处理并且效果好坏难以预测。
技术实现思路
[0008]本专利技术的目的是提供一种用于侧信道攻击的深度学习模型的评价与训练方法,新的评价指标可以良好反映模型侧信道攻击效果,同时,在处理不平衡数据时,相应损失函数在各种条件下的效果均大幅优于以往的损失函数。
[0009]本专利技术的目的是通过以下技术方案实现的:
[0010]一种用于侧信道攻击的深度学习模型的评价方法,包括:
[0011]设计一种评价指标CER,该评价指标包括第一部分与第二部分,将第一部分与第二部分的比值作为评价指标CER的值;其中,给定侧信道轨迹集合与深度学习模型,利用每一侧信道轨迹对应的公开变量和真实密钥计算真实标签,得到侧信道轨迹和真实标签的真实分布;对于每一侧信道轨迹与其真实标签,利用深度学习模型输出预测标签为真实标签概率,得到侧信道轨迹和真实标签的预测分布,将真实标签的真实分布与预测分布的交叉熵估计结果作为第一部分;将所有侧信道轨迹的真实标签随机打乱,计算打乱后的标签的分布;对于每一侧信道轨迹与其打乱后的标签,利用深度学习模型输出预测标签为打乱后的标签的概率,得到侧信道轨迹和打乱后的标签的预测分布,将打乱后的标签的分布与打乱后的标签的预测分布的交叉熵估计结果作为第二部分;
[0012]对于待评价的深度学习模型,计算相应的评价指标CER的值,数值越小,则表示深度学习模型的效果越好。
[0013]一种用于侧信道攻击的深度学习模型的评价方法,包括:
[0014]设计一种评价指标CER,该评价指标包括第一部分与第二部分,将第一部分与第二部分的比值作为评价指标CER的值;其中,给定侧信道轨迹集合与深度学习模型,利用每一侧信道轨迹对应的公开变量和真实密钥计算真实标签,将侧信道轨迹集合与对应的真实标签输入至深度学习模型,并将深度学习模型输出的交叉熵估计结果作为第一部分;将所有侧信道轨迹的真实标签随机打乱,并放入侧信道轨迹集合,得到新的侧信道轨迹集合,将新的侧信道轨迹集合输入至深度学习模型,并将深度学习模型输出的交叉熵估计结果作为第二部分;
[0015]对于待评价的深度学习模型,计算相应的评价指标CER的值,数值越小,则表示深度学习模型的效果越好。
[0016]一种用于侧信道攻击的深度学习模型的训练方法,包括:
[0017]构造损失函数,该损失函数包括第一部分与第二部分,将第一部分与第二部分的比值作为损失函数;
[0018]利用构造的损失函数对所述深度学习模型进行训练;
[0019]其中,给定侧信道轨迹集合与待训练的深度学习模型,利用每一侧信道轨迹对应的公开变量和真实密钥计算真实标签,得到侧信道轨迹和真实标签的真实分布;
[0020]对于每一侧信道轨迹与其真实标签,利用待训练的深度学习模型输出预测标签为
真实标签概率,得到侧信道轨迹和真实标签的预测分布,将真实标签的真实分布与预测分布的交叉熵估计结果作为第一部分;或者,利用每一侧信道轨迹对应的公开变量和真实密钥计算真实标签,将侧信道轨迹集合与对应的真实标签输入至待训练的深度学习模型,并将待训练的深度学习模型输出的交叉熵估计结果作为第一部分;
[0021]将所有侧信道轨迹的真实标签随机打乱,计算打乱后的标签的分布;对于每一侧信道轨迹与其打乱后的标签,利用待训练的深度学习模型输出预测标签为打乱后的标签的概率,得到侧信道轨迹和打乱后的标签的预测分布,计算打乱后的标签的分布与打乱后的标签的预测分布的交叉熵估计结果,并重复的随机打乱侧信道轨迹集合的真实标签多次,将打乱后的标签的分布与打乱后的标签的预测分布的所有交叉熵估计结果本文档来自技高网...
【技术保护点】
【技术特征摘要】
1.一种用于侧信道攻击的深度学习模型的评价方法,其特征在于,包括:设计一种评价指标CER,该评价指标包括第一部分与第二部分,将第一部分与第二部分的比值作为评价指标CER的值;其中,给定侧信道轨迹集合与深度学习模型,利用每一侧信道轨迹对应的公开变量和真实密钥计算真实标签,得到侧信道轨迹和真实标签的真实分布;对于每一侧信道轨迹与其真实标签,利用深度学习模型输出预测标签为真实标签概率,得到侧信道轨迹和真实标签的预测分布,将真实标签的真实分布与预测分布的交叉熵估计结果作为第一部分;将所有侧信道轨迹的真实标签随机打乱,计算打乱后的标签的分布;对于每一侧信道轨迹与其打乱后的标签,利用深度学习模型输出预测标签为打乱后的标签的概率,得到侧信道轨迹和打乱后的标签的预测分布,将打乱后的标签的分布与打乱后的标签的预测分布的交叉熵估计结果作为第二部分;对于待评价的深度学习模型,计算相应的评价指标CER的值,数值越小,则表示深度学习模型的效果越好。2.根据权利要求1所述的一种用于侧信道攻击的深度学习模型的评价方法,其特征在于,所述利用每一侧信道轨迹对应的公开变量和真实密钥计算真实标签,得到侧信道轨迹和真实标签的真实分布包括:利用每一侧信道轨迹对应的公开变量和真实密钥计算真实标签,表示为:其中,P是公开变量,k
*
是对应的真实密钥,G是密码学原语,f是标签转换函数;令是真实密钥k
*
对应生成的真实标签,侧信道轨迹和真实标签的真实分布记为其中,轨迹X表示随机变量,侧信道轨迹集合S
P
中的侧信道轨迹x
i
为随机变量X的样本。3.根据权利要求1所述的一种用于侧信道攻击的深度学习模型的评价方法,其特征在于,利用深度学习模型输出预测标签为真实标签概率,得到侧信道轨迹和真实标签的预测分布包括:将侧信道轨迹的真实标签记为通过深度学习模型M
θ
输出预测标签为真实标签的概率,得到侧信道轨迹和真实标签的预测分布4.根据权利要求1所述的一种用于侧信道攻击的深度学习模型的评价方法,其特征在于,真实标签的真实分布与预测分布的交叉熵估计结果表示为:其中,表示真实分布,表示预测分布,H(.)表示交叉熵计算函数。5.根据权利要求1所述的一种用于侧信道攻击的深度学习模型的评价方法,其特征在于,所述将所有侧信道轨迹的真实标签随机打乱,计算打乱后的标签的分布包括:给定侧信道轨迹集合S
P
的真实标签随机打乱后,将打乱后的标签记为L
k
,并放入侧信道轨迹集合S
p
,得到新的侧信道轨迹集合打乱后标签的分布记为Pr[X,L
k
]。6.根据权利要求1所述的一种用于侧信道攻击的深度学习模型的评价方法,其特征在
于,利用深度学习模型输出预测标签为打乱后的标签的概率,得到侧信道轨迹和打乱后的标签的预测分布包括:将侧信道轨迹的打乱后的标签记为L
k
,通过深度学习模型M
θ
输出预测标签为打乱后的标签L
k
的概率,得到侧信道轨迹和真实标签的预测分布M
θ
(X)[L
k
]。7.根据权利要求1所述的一种用于侧信道攻击的深度学习模型的评价方法,其...
【专利技术属性】
技术研发人员:胡红钢,张佳佳,
申请(专利权)人:中国科学技术大学,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。