基于多源数据聚合的神经网络侧信道攻击.pdf
《基于多源数据聚合的神经网络侧信道攻击.pdf》由会员分享,可在线阅读,更多相关《基于多源数据聚合的神经网络侧信道攻击.pdf(10页珍藏版)》请在咨信网上搜索。
1、基于多源数据聚合的神经网络侧信道攻击张润莲潘兆轩李金林武小年韦永壮(密码学与信息安全重点实验室(桂林电子科技大学)广西桂林541004)()A Side Channel Attack Based on Multi-Source Data Aggregation Neural NetworkZhangRunlian,PanZhaoxuan,LiJinlin,WuXiaonian,andWeiYongzhuang(Key Laboratory of Cryptography and Information Security(Guilin University of Electronic Techn
2、ology),Guilin,Guangxi 541004)AbstractSidechannelattackbasedondeeplearningneedstomodelandtraineachkeybyteofthecryptographicalgorithm,whichcostsalotofdataacquisitionandmodeltraining.Tosolvethisproblem,asidechannelattackmethodbasedonmulti-sourcedataaggregationneuralnetworkisproposed.Inordertoscreenthel
3、eakeddataofkeybytewithgoodgeneralizationqualityfordataaggregation,takingAES-128algorithmasanexample,firstly16singlekeybytemodelsaretrainedbasedontheleakeddataof16keybytes,andmodelsareusedtorecover16keybytesrespectively.Secondly,ascoringmechanismisdesignedtoevaluatethegeneralizationeffectofeachsingle
4、keybytemodel,andmodelswiththebestrecoveryeffectforeachkeybyteareselectedaccordingtoscoresorting.Finally,amulti-source data aggregation model is constructed based on the key byte leaked data sets corresponding to theselectedmodelstorealizekeyrecovery.Thetestedresultsshowthatthemulti-sourcedataaggrega
5、tionmodelhasgoodgeneralizationeffect,effectivelyimprovestheaccuracyandefficiencyofkeyrecovery,reducesthenumberoftracesusedtorecoverthekey,andthemodelalsohasgoodattackeffectinthecaseoflesstraces.Key wordssidechannelattack;neuralnetwork;scoringmechanism;dataaggregation;datalabeling摘要基于深度学习的侧信道攻击需要针对密码
6、算法的每一个密钥字节建模并训练,数据采集和模型训练开销大.针对该问题,提出一种基于多源数据聚合的神经网络侧信道攻击方法.为筛选具有良好泛化效果的密钥字节泄露数据进行数据聚合,以 AES-128 算法为例,先基于 16 个密钥字节的泄露数据训练 16个单密钥字节模型,分别实现对 16 个密钥字节的恢复;其次,设计一种打分机制评估各单密钥字节模型的泛化效果,通过得分排序筛选出对各密钥字节恢复效果最好的单密钥字节模型;最后,以筛选模型所对应的各密钥字节泄露数据集构建多源数据聚合模型进行训练,实现密钥恢复.实验测试结果表明,多源数据聚合模型具有良好的泛化效果,有效提高了密钥恢复的准确率和效率,降低了恢
7、复密钥所需的能量迹数量,其在采集能量迹较少的情况下依然具有较好的攻击效果.关键词侧信道攻击;神经网络;打分机制;数据聚合;数据标签中图法分类号TP309.7收稿日期:2022-03-01;修回日期:2022-12-23基金项目:国家自然科学基金项目(62062026,61872103);广西创新研究团队项目(2019GXNSFGA245004);广西青年创新人才科研专项(桂科AD20238082);广西自然科学基金项目(2020GXNSFBA297076);广西研究生创新项目(2022YCXS082)ThisworkwassupportedbytheNationalNaturalScience
8、FoundationofChina(62062026,61872103),theInnovationResearchTeamProjectofGuangxi(2019GXNSFGA245004),theScientificResearchProjectofYoungInnovativeTalentsofGuangxi(guikeAD20238082),theGuangxiNaturalScienceFoundation(2020GXNSFBA297076),andtheGraduateInnovationProjectofGuangxi(2022YCXS082).计 算 机 研 究 与 发 展
9、DOI:10.7544/issn1000-1239.202220172JournalofComputerResearchandDevelopment61(1):261270,2024侧信道攻击通过对密码算法在设备实际运行过程中泄露的物理信息(如时间信息、能量信息、电磁信息)进行采集和分析,从而恢复密钥信息1.侧信道攻击实用性强且破坏性大,严重威胁着密码设备的安全,是近年来密码分析的一个研究热点.随着密码设备功能的完善以及新防护手段的应用,传统侧信道攻击的效率和成功率越来越低.为提高侧信道攻击的效率和成功率,深度学习被引入侧信道攻击.深度学习具有学习能力强、覆盖范围广、适应性好等优点.基于密码设
10、备运行过程中采集的数据,深度学习可以在一定程度上学习和提取密码算法在设备中进行数据加密时的特征信息,实现对密码算法的密钥恢复2-4.2016 年,Maghrebi 等人5将深度学习用于 AES(advancedencryptionstandard)算法在无掩码和有掩码情况下的攻击,证明基于深度学习的侧信道攻击具有更好的攻击效果.2017 年,Cagli 等人6基于卷积神经网络实现在不需要对能量迹对齐和精确特征点提取的情况下的攻击.2020 年,Benadjila 等人7提出基于 ASCAD 数据集的最优神经网络模型,并通过实验证明神经网络模型的攻击效果优于被优化的模板攻击;Wang 等人8提出
11、基于联邦学习的侧信道攻击,使用 9 个同型号的不同设备采集数据进行联合训练,并成功完成攻击;Perin 等人9分析了基于深度学习的侧信道分析模型的泛化能力并以集成技术增强模型的攻击能力.2021 年,Won 等人10提出将 1 维数据的原始能量迹的测量值转化为具有数据位置信息的 2 维数据,改进了基于深度学习的侧信道分析;Zaid 等人11则为了减少深度学习衡量指标与侧信道评估指标的差异,提出一种排名损失函数并论证了成功攻击所需的能量迹上界.基于深度学习的侧信道分析,目前普遍的方法是针对采集的能量迹,基于每个密钥字节对应的泄露数据建模,再恢复该密钥字节.例如,针对 AES-128 算法,基于深
12、度学习的侧信道分析将 128b 密钥以每组 8b 划分为 16 个密钥字节,为了恢复 16 个正确密钥需要分别对每个密钥字节建模再进行恢复12.深度学习高度依赖数据,数据量越大,其学习效果越好.因此,为提高攻击的准确率,上述方式需要采集大量数据且单独训练 16 个模型,效率较低.而对侧信道攻击来说,数据采集由于外部因素的限制,攻击者可能无法采集到足够的数据,而数据不足会严重影响神经网络的训练效果.如何在数据采集要求无法被满足的情况下,提高深度学习侧信道攻击的效率和准确率,成为开展深度学习侧信道攻击的关键.针对该问题,数据增强技术被使用.2020 年,王恺等人12通过对原始功耗曲线增加抖动和高斯
13、噪声实现数据增强,并将增强后的数据用于残差网络训练实现密钥恢复;同年,Wang 等人13将条件生成对抗网络(conditionalgenerativeadversarialnetwork,CGAN)用于侧信道领域,通过条件生成对抗网络生成新的数据集进行训练数据集的扩充,从而提高能量迹不足情况下的攻击效率.2021 年,Luo 等人14和 Karim 等人15运用 Mixup技术16生成能量迹,增加模型攻击效果.然而,数据增强方法需要先训练网络生成所需能量迹,增加了侧信道攻击中数据训练的复杂性.针对上述问题,提出一种基于多源数据聚合的神经网络侧信道攻击方法,以 AES-128 算法为攻击对象,先
14、基于 16 个密钥字节的泄露数据训练 16 个模型,并分别实现对相应 16 个密钥字节的恢复;进一步以每个模型分别恢复其他的密钥字节,了解每个模型在特征学习过程中的泛化效果;针对每个模型对所有密钥字节的攻击效果打分并排序,筛选出对所有密钥字节攻击效果好的模型所对应的泄露数据,构建和训练一个基于多密钥字节泄露数据的多源数据聚合模型,再恢复所有的密钥字节.实验结果表明,该方法在较少能量迹情况下不需要数据增强处理也能够提高侧信道攻击的准确率,降低了模型训练的开销,减少了成功恢复密钥所需要的能量迹数量.1MLP 神经网络简介多层感知器(multi-layerperceptron,MLP)是一种由多个感
15、知器单元组成的神经网络,包括输入层、输出层和 1 个或多个隐藏层,每一层包含 1 个或多个感知器单元,每一层的所有感知器与下一层的所有感知器进行全连接,MLP 的结构如图 1 所示.输入层隐藏层输出层Fig.1ThestructureofMLP图1MLP 结构MLP 网络模型的核心思想是通过前向传播得到误差,再把误差通过反向传播实现权重的修正,最终得到最优模型.在反向传播过程中通常使用随机梯262计算机研究与发展2024,61(1)度下降法对权重值进行修正,梯度下降法的原理是计算损失函数关于所有内部变量的梯度,并进行反向传播.2多源数据聚合模型目前采用神经网络针对 AES 算法的侧信道分析,主
16、要利用采集的能量迹分别为每一个密钥字节在第1 轮 S 盒处的泄露点进行建模,再恢复该密钥字节,如对 AES-128 算法需要建立和训练 16 个模型.这种方法需要采集大量的数据进行训练,能量迹采集和训练开销大、效率低;若采集的能量迹不足,会导致模型的准确率低.针对上述问题,提出基于多源数据聚合的模型构建方法,针对 AES-128 算法筛选出对各个密钥字节攻击效果较好的数据集建立多源数据聚合模型,再进行密钥恢复.2.1基于单密钥字节的泄露数据集建模在 AES-128 算法加密过程中,16 个密钥字节加密明文的操作是一个时序操作,所有的泄露都在采集的一条能量迹中.在整个时序中,由于每个密钥字节在加
17、密不同明文时所泄露的能量信息具有相同特征,因此在采用深度学习方法进行侧信道分析时,通常是对单个密钥字节的泄露数据建模,在攻击阶段根据训练结果恢复出对应字节的密钥.在传统侧信道攻击中,通常使用能量消耗模型模拟真实情况下泄露的能量消耗.能量消耗模型有不同的精度级别,一般而言,精度越高的模型攻击效果越好,但所需要的资源也越多.汉明重量模型是攻击者刻画总线与寄存器能量消耗常用的能量消耗模型,它的基本原理是假设能量消耗与寄存器中存储数据比特 1 的数目成正比.而密码设备 S 盒置换的非线性操作在寄存器中引发的能量变化较为突出,因此主要针对 S 盒的输出通过能量消耗模型寻找相关特征.能量迹的特征依赖于密钥
18、与明文,理论上针对单密钥字节所建立的模型并以其恢复对应密钥字节的效果是最佳的.模型的建立需要先对采用的数据集进行数据处理,即完成数据标签.数据的标签实际上是将每条能量迹的特征通过能量消耗模型重新刻画,即将每条能量迹的分类类别由明文和密钥转化为标签值函数计算后的标签值.假设一条能量迹中某 S 盒泄露点 x 的明文数据为 p,该单密钥字节为 k,假设采用汉明重量函数 HW()计算,则标签值 z 计算方法为z=f(p,k)=HW(Sbox(pk).(1)对于其他能量迹,同样在该泄露位置 x 计算对应的标签值 z,完成对所有能量迹在泄露点 x 的标签.采用同样的方法,继续针对所有能量迹的其他泄露点完成
19、数据标签.以所有能量迹在某个泄露点标签后的数据,训练建立一个单密钥字节模型,并以该模型恢复该泄露点对应的密钥字节.AES-128 算法中,使用了 16 个 S 盒,但这 16 个 S盒的真值表是相同的.这使得基于这 16 个 S 盒进行运算后的数据间可能存在一定的关联性,即所采集的能量迹不同泄露点的数据可能会表现出相似的特征.对能量迹的标签计算,也会将这些相似特征表现出来,即在对这些能量迹进行标签时,通过标签值函数 f(p,k)标签,不同泄露点的标签结果也可能会被归于同一类.基于这种特征,以某个泄露点训练的模型,若能够有效恢复出其他泄露点对应的密钥字节,则可以有效降低能量迹采集和模型训练的开销
20、.为评估以某个泄露点训练的模型恢复其他泄露点对应密钥字节,针对 AES-128 算法,先采集算法运行时的能量迹,再将其划分为 16 个密钥字节的泄露数据集,进行数据标签处理,以这 16 个密钥字节的数据集分别训练出 16 个模型.进一步地,利用这 16个模型,先分别恢复该泄露数据集对应的密钥字节,再分别去恢复其他密钥字节.采用 Benadjila 等人7于 2020 年对 ASCAD 数据集提出的 MLP-best 模型建立 MLP 神经网络模型,MLP 模型一共有 6 层,第 1 层为输入层,其是大小为96 的 1 维向量,输入层神经元数对应单个密钥字节在 S 盒操作处的 96 个能量采样点
21、数据.中间 4 层为隐藏层,每层隐藏层都有 200 个神经元;为了在快速收敛的同时避免梯度消失并提高网络的精度,激活函数采用 RELU 函数.最后一层是输出层,其大小与实验选择的能量消耗模型有关.ASCAD 公开数据集只提供第 3 个 S 盒处的泄露数据,本文方法需分析AES 算法的 16 个 S 盒的所有泄露数据,在此选用提供了全部字节泄露的 DPAContest_V4 数据集.MLP-best 在 ASCAD 数据集上有局部最优效果,但并不适用于采用 RSM(rotatingS-boxmasking)掩码方案17的DPAContest_V4 数据集18.针对 DPAContest_V4 数
22、据集,构造新的标签值函数计算标签值:z=f(p,k)=pkSbox(pk).(2)f将标签值(p,k)作为不同明文对应能量迹的标签值时,根据 AES 的 S 盒输入异或输出共 163 种异或结果,因此输出层设置为 163 个神经元,对应 163张润莲等:基于多源数据聚合的神经网络侧信道攻击263种不同标签值的分类结果.为提高分类的准确率,输出 层 的 激 活 函 数 选 择 适 用 于 多 分 类 场 景 下的Softmax 函数,以将输出映射为各个类别的分类概率.基于上述建立的模型,利用 AES-128 算法 16 个密钥字节的标签好的数据集训练出 16 个模型,分别命名为 Mi(i=1,2
23、,16).为区分不同密钥字节的标签数据集,以 Sj(j=1,2,16)表示依据 S 盒操作顺序并完成标签的数据集.DPAContest_V4 数据集中每个数据集 Sj分别有 10000 条能量迹,从中随机抽取 8000条作为训练集训练神经网络模型 Mi,剩下的 2000 条作为测试集用以恢复对应密钥字节.为保证效果一致,在每个模型训练过程中统一设置相关参数:训练的 epoch=300,batchsize=100,学习率设为 0.00001,优化器使用 RMSprop,使用交叉熵损失函数.基于上述建立的 16 个模型,利用相应的测试集数据分别去恢复 16 个密钥字节,各个模型恢复对应密钥字节所用
24、的最少能量迹数如表 1 所示.进一步地,为评估以某个泄露点训练的模型是否能够恢复其他泄露点对应密钥字节,基于同样的实验环境,利用这 16 个模型中的每一个模型,分别以每个密钥字节对应的测试集数据去恢复相应的密钥字节,各模型完成对各密钥字节恢复的最少能量迹数如表 2 所示.Table 1Minimum Number of Traces for Sixteen ModelsRecovering the Corresponding Key Byte表 1 16 个模型恢复对应密钥字节的最少能量迹数模型能量迹数模型能量迹数模型能量迹数模型能量迹数M150M531M918M1328M240M615M10
25、50M1433M349M727M1168M1541M430M839M1235M1633Table 2Number of Traces for Sixteen Models Recovering Sixteen Key Bytes表 2 16 个模型恢复 16 个密钥字节的能量迹数模型密钥字节S1S2S3S4S5S6S7S8S9S10S11S12S13S14S15S16M1501387895138141681378142071384121287177172M211340137831607167170256192171329466208352155M396182493003321838744227
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 数据 聚合 神经网络 信道 攻击
1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前自行私信或留言给上传者【自信****多点】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时私信或留言给本站上传会员【自信****多点】,需本站解决可联系【 微信客服】、【 QQ客服】,若有其他问题请点击或扫码反馈【 服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【 版权申诉】”(推荐),意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4008-655-100;投诉/维权电话:4009-655-100。