仿真功耗采集平台下的AES能量分析攻击

仿真功耗采集平台下的AES能量分析攻击摘要:理论上安全的密码算法,其算法实现也容易遭受侧信道攻击,需要评估密码算法的侧信道泄露并且加以防护。系统介绍以Primepower为核心的能量分析攻击仿真功耗采集平台的搭建过程,使用该平台采集AES密码算法加密多组不同明文的动态瞬时功耗,并使用这些功耗对AES算法成功实施了相关能量分析攻击。关键词:侧信道攻击;相关能量分析攻击;仿真平台;高级加密标准DOI:10.16640/jki.37-1222/t.2017.14.2221侧信道攻击与防护思路侧信道攻击作为一种全新的密码分析方法,突破了传统密码分析方法的局限,借助密码芯片加解密的物理信息(功耗[1]和电磁辐射[2]等)泄露而得以对子密钥而非整个密钥进行穷尽攻击,从而以极小的时间代价和存储代价取得比传统数学分析方法更好的分析结果。目前,侧信道攻击的研究主要集中在能量分析攻击,通过采集设备加密时的功耗来分析和获取密钥信息[3]。研究结果表明,没有任何防护措施的密码芯片,是无法抵抗侧信道攻击,即使其密码算法在理论上是安全的[4]。这要求几乎所有的密码算法芯片都必须研究算法可能导致的侧信道泄露,并加上防护措施。评估每款密码算法的侧信道泄露,需要把密码算法的Verilog实现下载到功耗仿真平台上或者基于FPGA的侧信道评估板上运行,收集对应的功耗集,并展开侧信道攻击的安全评估。2能量分析攻击仿真采集平台搭建由于SynopsysPrimepower的专业性和精准程度高,绝大部分侧信道攻击研究者都使用该仿真平台采集算法执行的瞬时功耗,进行侧信道攻击与评估。图1描述了基于Primepower仿真功耗采集平台的模拟功耗采集与攻击实验方案。首先使用Verilog硬件描述语言来编码实现密码算法。接着在SynopsysDC中使用工艺库来综合这些Verilog源文件,得到门级网表文件。以门级网表文件表示的密码算法放入Modelsim上模拟运行,通过testbench激励文件调用门级网表文件的密码算法模块,同时可以把整个运行过程的细节通过“值变存储文件”VCD做记录。最后使用Primepower程序精确计算出“值变存储文件”VCD中所有操作的瞬时功耗。整个过程,都需使用真实的工艺库来编译、模拟运行和计算功耗。3仿真平台采集AES功耗(1)使用硬件描述语言Verilog编写AES密码算法实现,保存为AES.v。(2)在SynopsysDC中使用台积电tsmc-0.18um工艺库来综合步骤1所实现的Verilog密码算法AES.v,得到以工艺库中的电路元件描述的门级网表文件AES_NETLIST.v。在SynopsysDC综合Verilog源文件的过程如下:1)setsearch_path"/home/.../project/AES"//设置源文件和工艺库文件所在目录2)setlink_path"*slodbfast.dbdw_foundation.sldb"//指定工艺库文件3)read_verilog"AES.v"//读入verilog源文件,如有多个源文件,可以读入多次4)current_designAES//指定编译芯片的主模块名5)uniquify//实例唯一化,可选6)compile-exact_map//编译verilog源文件7)write-hierarchy-formatverilog-output/home/.../project/AES/AES_NETLIST.v//把综合结果写入门级网表文件AES_NETLIST.v(3)门级网表文件AES_NETLIST.v在ModelSim仿真运行,得到“值变存储文件”VCD。需要加入testbench激励文件来让ModelSim正确仿真AES_NETLIST.v算法。同时通过$dumpfile("AES1.VCD")和$dumpvars命令让ModelSim记录下“值变存储文件”VCD。(4)把生成的一系列VCD文件和tsmc-0.18um工艺库放入Primepower中,计算出一条条对应着明文的瞬时功耗曲线。使用Primepower计算一条功耗的过程如下:1)setsearch_path"/home/.../project/AES"//设置源文件和工艺库文件所在目录2)setlink_path"*slodbfast.dbdw_foundation.sldb"//指定工艺库文件3)read_verilog/home/.../project/AES/AES_NETLIST.v//读入网表文件4)current_designAES//指定编译芯片的主模块名5)read_vcd-strip_pathAES_TB/AESAES1.VCD//读入VCD文件6)set_waveform-file/home/.../project/AES/AES1.out-formatout//指定功耗的输出路径7)calculate_power-waveform//根据网表和“值变存储文件”VCD计算功耗4对功耗采集和能量分析攻击反复使用第3节所述的采集仿真功耗的方法,仅在步骤3的激励文件中...

1、当您付费下载文档后,您只拥有了使用权限,并不意味着购买了版权,文档只能用于自身使用,不得用于其他商业用途(如 [转卖]进行直接盈利或[编辑后售卖]进行间接盈利)。
2、本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供参考,付费前请自行鉴别。
3、如文档内容存在侵犯商业秘密、侵犯著作权等,请点击“举报”。

常见问题具体如下:

1、问:已经付过费的文档可以多次下载吗?

      答:可以。登陆您已经付过费的账号,付过费的文档可以免费进行多次下载。

2、问:已经付过费的文档不知下载到什么地方去了?

     答:电脑端-浏览器下载列表里可以找到;手机端-文件管理或下载里可以找到。

            如以上两种方式都没有找到,请提供您的交易单号或截图及接收文档的邮箱等有效信息,发送到客服邮箱,客服经核实后,会将您已经付过费的文档即时发到您邮箱。

注:微信交易号是以“420000”开头的28位数字;

       支付宝交易号是以“2024XXXX”交易日期开头的28位数字。

客服邮箱:

biganzikefu@outlook.com

所有的文档都被视为“模板”,用于写作参考,下载前须认真查看,确认无误后再购买;

文档大部份都是可以预览的,笔杆子文库无法对文档的真实性、完整性、准确性以及专业性等问题提供审核和保证,请慎重购买;

文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为依据;

如果您还有什么不清楚的或需要我们协助,可以联系客服邮箱:

biganzikefu@outlook.com

常见问题具体如下:

1、问:已经付过费的文档可以多次下载吗?

      答:可以。登陆您已经付过费的账号,付过费的文档可以免费进行多次下载。

2、问:已经付过费的文档不知下载到什么地方去了?

     答:电脑端-浏览器下载列表里可以找到;手机端-文件管理或下载里可以找到。

            如以上两种方式都没有找到,请提供您的交易单号或截图及接收文档的邮箱等有效信息,发送到客服邮箱,客服经核实后,会将您已经付过费的文档即时发到您邮箱。

注:微信交易号是以“420000”开头的28位数字;

       支付宝交易号是以“2024XXXX”交易日期开头的28位数字。

确认删除?