一种侧信道黑盒攻击方法、装置、设备及存储介质制造方法及图纸

技术编号:36604566 阅读:22 留言:0更新日期:2023-02-04 18:24
本发明专利技术公开了一种侧信道黑盒攻击方法、装置、设备及存储介质,根据预设的第一采集方案采集侧信道信息,使用预设的特征选择模型确定发生侧信道泄露的特征点,根据确定的特征点生成特征向量;根据预设的第二采集方案采集训练数据,根据所述特征向量裁剪所述训练数据,得到训练数据集,为所述训练数据集标注标签;根据标注标签的训练数据集对深度学习模型进行训练,生成攻击模型;根据预设的第三采集方案采集数据,并经由所述特征向量裁切生成攻击数据集,将所述攻击数据集输入到所述攻击模型中,生成密钥的概率向量,以得分最高的密钥作为攻击密钥完成侧信道黑盒攻击。与现有技术相比,实现侧信道攻击的通用性,并提高侧信道攻击的效率。击的效率。击的效率。

【技术实现步骤摘要】
一种侧信道黑盒攻击方法、装置、设备及存储介质


[0001]本专利技术涉及信息安全领域,尤其涉及一种侧信道黑盒攻击方法、装置、设备及存储介质。

技术介绍

[0002]侧信道攻击是针对密码硬件的一种有效攻击方式,其攻击效果在不同芯片平台以及密码算法上均已得到验证。其中,模板攻击被认为是一种效果较好的攻击方法。近年来,伴随人工智能技术的发展,模板攻击也引进了深度学习方法作为统计建模攻击,增强其攻击效果。然而深度学习需要对神经网络进行调参和训练。现有的攻击方法需要在攻击前需要的了解加密算法的泄露操作,泄露操作的中间值进行建模,才能实现侧信道攻击。然而找到泄露操作需要具备丰富知识和经验的攻击者花费大量的时间和精力,严重影响了侧信道攻击的效率,并且只能针对对应的泄露操作进行侧信道攻击,适用范围小。

技术实现思路

[0003]针对上述现有技术的缺陷,本专利技术提供一种侧信道黑盒攻击方法、装置、设备及存储介质,实现侧信道攻击的通用性,并提高侧信道攻击的效率。
[0004]本专利技术实施例提供的一种侧信道黑盒攻击方法,所述方法包括:
[0005]根据预设的第一采集方案采集侧信道信息,使用预设的特征选择模型确定发生侧信道泄露的特征点,根据确定的特征点生成特征向量;
[0006]根据预设的第二采集方案采集训练数据,根据所述特征向量裁剪所述训练数据,得到训练数据集,为所述训练数据集标注标签;
[0007]根据标注标签的训练数据集对深度学习模型进行训练,生成攻击模型;
[0008]根据预设的第三采集方案采集数据,并经由所述特征向量裁切生成攻击数据集,将所述攻击数据集输入到所述攻击模型中,生成密钥的概率向量,以得分最高的密钥作为攻击密钥完成侧信道黑盒攻击。
[0009]优选地,所述根据预设的第一采集方案采集侧信道信息,使用预设的特征选择模型确定发生侧信道泄露的特征点,根据确定的特征点生成特征向量,具体包括:
[0010]根据预设的明文密钥交叉顺序、明文密钥组数和明文密钥数据设置的第一采集方案采集密码算法运行时的侧信道信息,所述侧信道信息包括功耗、电磁信息;
[0011]将采集的侧信道信息分为n组:T1,T2,

T
n
(n≥2),其中t1~T
n
是加密固定明文F1~F
n
时采集的侧信道信息,每组侧信道信息包含K条功耗数据,功耗数据包括功耗轨迹或电磁轨迹,记为每条轨迹有Q个采样点,即Q个原始特征,其中每条轨迹有Q个采样点,即Q个原始特征,其中
[0012][0013]使用最大相关最小冗余算法计算采集的侧信道信息中的每一功耗数据的Q个采样点的mRMR值,确定功耗数据中mRMR值不小于第一阈值的采样点,将n组侧信道信息中K条功
耗数据中确定的m个采样点的功耗数据作为功耗数据集T;
[0014]将计算得到的功耗数据集T进行支持向量机训练,得到对m个采样点计算的权重,根据权重高低对m个采样点进行排序,生成特征向量t*,m>0。
[0015]作为一种优选方案,所述根据预设的第二采集方案采集训练数据,根据所述特征向量裁剪所述训练数据,得到训练数据集,为所述训练数据集标注标签,具体包括:
[0016]采用侧信道信息的明文向量P
train
和密钥向量设置为全随机的第二采集方案采集N
train
条侧信道信息作为训练数据T
train

[0017]选择特征向量t*的前n
t
个特征点对训练数据T
train
进行裁剪,得到训练数据集将每次攻击单位设置为n
attack
位,每一明文P
train
和密钥k
train
对应位置设置的标签label有n
bit
/n
attack
个,n
bit
为训练数据集的每条功耗数据对应的明文向量P
train
和密钥向量K
train
的位数,每一明文P
train
和密钥k
train
对应的位置i对应的标签设置为label
i

[0018]其中,其中,是采集的侧信道信息中N
train
条功耗数据,条功耗数据,为裁剪后的功耗数据;为裁剪后的功耗数据;为裁剪后的功耗数据;和分别为位置i对应的明文和密钥。
[0019]优选地,所述根据标注标签的训练数据集对深度学习模型进行训练,生成攻击模型,具体包括:
[0020]基于深度学习搭建Conformer训练模型,并额外构建一维卷积层作为模型的编码层;
[0021]将标注的训练数据集输入到构建的Conformer训练模型进行训练,将训练完成后生成的模型作为所述攻击模型。
[0022]优选地,所述根据预设的第三采集方案采集数据,并经由所述特征向量裁切生成攻击数据集,将所述攻击数据集输入到所述攻击模型中,生成密钥的概率向量,以得分最高的密钥作为攻击密钥完成侧信道黑盒攻击,具体包括:
[0023]采用预设的采集数量和明文P
attack
设置为全随机的第三采集方案采集N
attack
条功耗数据;
[0024]根据所述特征向量前n
t
个特征点对N
attack
条功耗数据进行裁切,将裁切后的N
attack
条功耗数据作为攻击数据集将攻击数据集输入到所述攻击模型中,输出攻击数据集对应的密钥的概率向量,确定每一密钥key
i
的得分S(key
i
);
[0025]将得分最高的密钥作为攻击密钥,完成侧信道黑盒攻击;
[0026]其中,其中,是裁剪后的每一功耗数据,每一密钥key
i
的得分的得分是密钥key
i
的概率
向量。
[0027]本专利技术实施例还提供一种侧信道黑盒攻击装置,所述装置包括:
[0028]数据采集模块,用于根据预设的第一采集方案采集侧信道信息,使用预设的特征选择模型确定发生侧信道泄露的特征点,根据确定的特征点生成特征向量;
[0029]数据标注模块,用于根据预设的第二采集方案采集训练数据,根据所述特征向量裁剪所述训练数据,得到训练数据集,为所述训练数据集标注标签;
[0030]数据训练模块,用于根据标注标签的训练数据集对深度学习模型进行训练,生成攻击模型;
[0031]攻击模块,用于根据预设的第三采集方案采集数据,并经由所述特征向量裁切生成攻击数据集,将所述攻击数据集输入到所述攻击模型中,生成密钥的概率向量,以得分最高的密钥作为攻击密钥完成侧信道黑盒攻击。
[0032]作为一种优选方案,所述数据采集模块具体用于:
[0033]根据预设的明文密钥交叉顺本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种侧信道黑盒攻击方法,其特征在于,所述方法包括:根据预设的第一采集方案采集侧信道信息,使用预设的特征选择模型确定发生侧信道泄露的特征点,根据确定的特征点生成特征向量;根据预设的第二采集方案采集训练数据,根据所述特征向量裁剪所述训练数据,得到训练数据集,为所述训练数据集标注标签;根据标注标签的训练数据集对深度学习模型进行训练,生成攻击模型;根据预设的第三采集方案采集数据,并经由所述特征向量裁切生成攻击数据集,将所述攻击数据集输入到所述攻击模型中,生成密钥的概率向量,以得分最高的密钥作为攻击密钥完成侧信道黑盒攻击。2.根据权利要求1所述的侧信道黑盒攻击方法,其特征在于,所述根据预设的第一采集方案采集侧信道信息,使用预设的特征选择模型确定发生侧信道泄露的特征点,根据确定的特征点生成特征向量,具体包括:根据预设的明文密钥交叉顺序、明文密钥组数和明文密钥数据设置的第一采集方案采集密码算法运行时的侧信道信息,所述侧信道信息包括功耗、电磁信息;将采集的侧信道信息分为n组:T1,T2,...T
n
(n≥2),其中T1~T
n
是加密固定明文F1~F
n
时采集的侧信道信息,每组侧信道信息包含K条功耗数据,功耗数据包括功耗轨迹或电磁轨迹,记为每条轨迹有Q个采样点,即Q个原始特征,其中每条轨迹有Q个采样点,即Q个原始特征,其中每条轨迹有Q个采样点,即Q个原始特征,其中使用最大相关最小冗余算法计算采集的侧信道信息中的每一功耗数据的Q个采样点的mRMR值,确定功耗数据中mRMR值不小于第一阈值的采样点,将n组侧信道信息中K条功耗数据中确定的m个采样点的功耗数据作为功耗数据集T;将计算得到的功耗数据集T进行支持向量机训练,得到对m个采样点计算的权重,根据权重高低对m个采样点进行排序,生成特征向量t*,m>0。3.根据权利要求1所述的侧信道黑盒攻击方法,其特征在于,所述根据预设的第二采集方案采集训练数据,根据所述特征向量裁剪所述训练数据,得到训练数据集,为所述训练数据集标注标签,具体包括:采用侧信道信息的明文向量P
train
和密钥向量K
train
设置为全随机的第二采集方案采集N
train
条侧信道信息作为训练数据T
train
;选择特征向量t*的前n
t
个特征点对训练数据T
train
进行裁剪,得到训练数据集将每次攻击单位设置为n
attack
位,每一明文P
train
和密钥k
train
对应位置设置的标签label有n
bit
/n
attack
个,n
bit
为训练数据集的每条功耗数据对应的明文向量P
train
和密钥向量K
train
的位数,每一明文P
train
和密钥k
train
对应的位置i对应的标签设置为label
i
:其中,其中,是采集的侧信道信息中N
train
条功耗数据,条功耗数据,为裁剪后的功耗数据;
和分别为位置i对应的明文和密钥。4.根据权利要求1所述的侧信道黑盒攻击方法,其特征在于,所述根据标注标签的训练数据集对深度学习模型进行训练,生成攻击模型,具体包括:基于深度学习搭建Conformer训练模型,并额外构建一维卷积层作为模型的编码层;将标注的训练数据集输入到构建的Conformer训练模型进行训练,将训练完成后生成的模型作为所述攻击模型。5.根据权利要求1所述的侧信道黑盒攻击方法,其特征在于,所述根据预设的第三采集方案采集数据,并经由所述特征向量裁切生成攻击数据集,将所述攻击数据集输入到所述攻击模型中,生成密钥的概率向量,以得分最高的密钥作为攻击密钥完成侧信道黑盒攻击,具体包括:采用预设的采集数量和明文P
attack
设置为全随机的第三采集方案采集N
attack
条功耗数据;根据所述特征向量前n
t
个特征点对N
attack
条功耗数据...

【专利技术属性】
技术研发人员:李伟键张云琛
申请(专利权)人:广东技术师范大学
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1