[发明专利]一种密码芯片的旁路攻击仿真系统在审
申请号: | 202011186957.1 | 申请日: | 2020-10-29 |
公开(公告)号: | CN112287354A | 公开(公告)日: | 2021-01-29 |
发明(设计)人: | 赵斌;王辉;鲁毅 | 申请(专利权)人: | 天津津航计算技术研究所 |
主分类号: | G06F21/57 | 分类号: | G06F21/57;G06F16/242;G06F30/30 |
代理公司: | 中国兵器工业集团公司专利中心 11011 | 代理人: | 周恒 |
地址: | 300308 天津*** | 国省代码: | 天津;12 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 密码 芯片 旁路 攻击 仿真 系统 | ||
1.一种密码芯片的旁路攻击仿真系统,其特征在于,所述旁路攻击仿真系统包括:系统配置模块、仿真器和分析器;
所述系统配置模块用于根据用户输入的参数,设置仿真器模块和分析器模块的初始运行环境;
所述仿真器用于在虚拟硬件平台上运行算法程序,根据预先建立的旁路信息泄露模型,建立旁路泄漏信息数据库,并对密码算法库中选择的加密算法指令进行分析,产生相应的旁路泄露曲线;
所述分析器用于分析旁路泄露曲线,以旁路泄漏信息数据库统一格式的旁路泄露信息文件作为输入,不受旁路泄露曲线数据来源的限制,对仿真器产生的旁路泄漏信息或从真实的物理设备上测量得到的旁路泄漏信息作前期处理,根据选定的区分函数分集,计算平均旁路泄露曲线,并绘制曲线图。
2.如权利要求1所述的密码芯片的旁路攻击仿真系统,其特征在于,所述系统配置模块使用两个数据结构来分别缓存从用户界面输入的配置参数,然后根据配置参数分别生成仿真器的初始化配置文件Simulator.ini和分析器的初始化配置文件Analyzer.ini。
3.如权利要求1所述的密码芯片的旁路攻击仿真系统,其特征在于,所述仿真器包括:密码算法库、旁路泄露分析子模块、旁路信息生成子模块、曲线绘制模块;
所述旁路信息生成子模块用于根据预先建立的旁路信息泄露模型,建立旁路泄漏信息数据库;
所述旁路泄露分析子模块用于根据密码算法库中的加密算法指令,以及旁路泄漏信息数据库中的旁路泄漏信息特征,建立加密算法指令和旁路泄漏信息特征的映射关系表;
所述曲线绘制模块用于对所建立的旁路泄漏信息数据库以及加密算法指令和旁路泄漏信息特征的映射关系表进行综合分析,绘制生成对应密码算法运行全过程的旁路泄漏曲线。
4.如权利要求3所述的密码芯片的旁路攻击仿真系统,其特征在于,所述旁路泄露分析子模块根据密码算法库中的加密算法指令,以及旁路泄漏信息数据库中的旁路泄漏信息特征,建立加密算法指令和旁路泄漏信息特征的映射关系表的过程中:
旁路泄漏信息特征与机器指令形式的加密算法指令存在着密切的关系,不同的机器指令执行时泄漏的信息是不相同的;即使是同种机器指令,操作数据不同时旁路泄漏信息特征也是有差异的;为了建立加密算法指令与旁路泄漏信息特征的联系,首先利用编译工具对加密算法指令进行编译,生成优化的机器指令代码;接着利用机器指令作为索引,在旁路泄漏信息数据库中查询对应的泄漏信息特征的入口。
5.如权利要求1所述的密码芯片的旁路攻击仿真系统,其特征在于,所述分析器包括:区分函数库、曲线分集子模块、曲线分析子模块、绘图子模块;
所述区分函数库用于存储不同的区分函数;由于加密算法不同,对应的区分函数实现也不同,因此使用区分函数库对不同的区分函数进行保存;
所述曲线分集子模块用于根据系统配置模块的设置,从区分函数库中选择指定的区分函数,对仿真器产生的旁路泄漏信息或从真实的物理设备上测量得到的旁路泄漏信息作前期处理,即将旁路泄漏曲线的数据分配到不同的集合中;
所述曲线分析子模块用于分别对不同集合中的旁路泄漏曲线的数据,求取其平均信号,计算平均旁路泄露曲线,然后再求取两个集合的平均差分信号;
所述绘图子模块用于利用曲线分析子模块的输出结果生成对应的分析曲线图,提供较为直观的分析结果。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于天津津航计算技术研究所,未经天津津航计算技术研究所许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202011186957.1/1.html,转载请声明来源钻瓜专利网。