[发明专利]一种HMAC-SM3密码算法的侧信道能量分析方法及装置有效
申请号: | 201510149095.8 | 申请日: | 2015-03-31 |
公开(公告)号: | CN106161004B | 公开(公告)日: | 2019-03-26 |
发明(设计)人: | 王立辉;郭丽敏;张志敏;李大为;罗鹏;莫凡 | 申请(专利权)人: | 上海复旦微电子集团股份有限公司;国家密码管理局商用密码检测中心 |
主分类号: | H04L9/08 | 分类号: | H04L9/08 |
代理公司: | 北京集佳知识产权代理有限公司 11227 | 代理人: | 潘彦君;骆苏华 |
地址: | 200433 上海市杨浦区*** | 国省代码: | 上海;31 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | 本发明提供了一种HMAC‑SM3密码算法的侧信道能量分析方法及装置。所述方法包括:分析获得第一密钥数据Kin的值;分析获得第二密钥数据Kout的值。所述分析获得第一密钥数据Kin的值包括:向密码模块输入消息组M1,在j=0时,分别选择第一变量TT10和第二变量TT20作为分析对象,获得θ0和η0的值;向密码模块输入消息组M2,在j=1时,分别选择第一变量TT11和第二变量TT21作为分析对象,获得θ1和η1的值;向密码模块输入消息组M3,在j=2时,分别选择第一变量TT12和第二变量TT22作为分析对象,获得θ2和η2的值;向密码模块输入消息组M4,在j=3时,分别选择第一变量TT13和第二变量TT23作为分析对象获得θ3和η3的值。应用所述方法获得第一密钥数据,可以有效提高破解的成功率。 | ||
搜索关键词: | 一种 hmac sm3 密码 算法 信道 能量 分析 方法 装置 | ||
【主权项】:
1.一种HMAC‑SM3密码算法的侧信道能量分析方法,其特征在于,SM3密码算法的压缩函数在第j轮的迭代运算过程中,产生第一变量TT1j,第二变量TT2j,其中:TT1j=θj+Wj′,θj=FFj(Aj,Bj,Cj)+Dj+SS2j,TT2j=ηj+Wj,ηj=GGj(Ej,Fj,Gj)+Hj+SS1j,SS1j=((Aj<<<12)+Ej+(Tj<<<j))<<<7,
0≤j≤63,且j为整数,A,B,C,D,E,F,G,H均为基于HMAC‑SM3密码算法的密码模块的寄存器,所述密码模块每次调用SM3密码算法时,第二个压缩函数的初始值均为当前调用SM3密码算法时各个所述寄存器的初始状态值A0,B0,C0,D0,E0,F0,G0,H0顺序排列所形成的数据序列,FFj(Aj,Bj,Cj)为对Aj,Bj和Cj布尔函数求值,GGj(Ej,Fj,Gj)为对Ej,Fj和Gj布尔函数求值,Wj,W′j为对一消息的一消息分组进行扩展后生成的字,Tj为常量;所述密码模块每次调用SM3密码算法的过程中,每个压缩函数运算后的结果为Vp,1≤P≤N,P为整数,N为每次调用SM3密码算法的过程中调用压缩函数的总次数;所述分析方法包括:分析获得第一密钥数据Kin的值,所述第一密钥数据Kin为所述密码模块第一次调用SM3密码算法时,第二个压缩函数的初始值,采用如下步骤获得Kin:向基于HMAC‑SM3密码算法的密码模块输入消息组M1={m10,m11,...,m1i,...,m1n},其中,消息m1i为随机数,n为正整数,0≤i≤n,且i为整数,采集消息组M1中每条消息的能量消耗信息,建立能量消耗矩阵,并在j=0时,分别选择第一变量TT10和第二变量TT20作为分析对象,根据消息组M1的输入数据以及对应采集到的能量消耗信息,采用侧信道能量分析方法,分别获得θ0和η0的值;向基于HMAC‑SM3密码算法的密码模块输入消息组M2={m20,m21,…,m2i,…,m2n},采集消息组M2中每条消息的能量消耗信息,建立能量消耗矩阵,其中,消息m2i第一个消息分组的W0及W4均为0,其余均为随机数,并在j=1时,分别选择第一变量TT11和第二变量TT21作为分析对象,根据消息组M2的输入数据以及对应采集到的能量消耗信息,采用侧信道能量分析方法,分别获得θ1和η1的值;向基于HMAC‑SM3密码算法的密码模块输入消息组M3={m30,m31,…,m3i,…,m3n},采集消息组M3中每条消息的能量消耗信息,建立能量消耗矩阵,其中,消息m3i第一个消息分组的W0、W1、W4及W5均为0,其余均为随机数,并在j=2时,分别选择第一变量TT12和第二变量TT22作为分析对象,根据消息组M3的输入数据以及对应采集到的能量消耗信息,采用侧信道能量分析方法,分别获得θ2和η2的值;向基于HMAC‑SM3密码算法的密码模块输入消息组M4={m40,m41,…,m4i,…,m4n},采集消息组M4中每条消息的能量消耗信息,建立能量消耗矩阵,其中,消息m4i第一个消息分组的W0、W1、W2、W4、W5及W6均为0,其余均为随机数,并在j=3时,分别选择第一变量TT13和第二变量TT23作为分析对象,根据消息组M4的输入数据以及对应采集到的能量消耗信息,采用侧信道能量分析方法,分别获得θ3和η3的值;根据所获得的θ0、θ1、θ2、θ3、η0、η1、η2及η3的值,计算变量A0、B0、C0、D0、E0、F0、G0和H0的值,并将所述变量A0、B0、C0、D0、E0、F0、G0和H0的值顺序排列以获得所述第一密钥数据Kin的值;分析获得第二密钥数据Kout的值;根据所获得的第一密钥数据Kin的值以及第二密钥数据Kout的值,生成消息摘要。
下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于上海复旦微电子集团股份有限公司;国家密码管理局商用密码检测中心,未经上海复旦微电子集团股份有限公司;国家密码管理局商用密码检测中心许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/patent/201510149095.8/,转载请声明来源钻瓜专利网。
- 上一篇:晶体管及其形成方法
- 下一篇:防电压脉冲干扰的系统