[发明专利]防御侧信道攻击的方法、装置及可读存储介质有效
申请号: | 202011047473.9 | 申请日: | 2020-09-29 |
公开(公告)号: | CN111931176B | 公开(公告)日: | 2021-01-22 |
发明(设计)人: | 不公告发明人 | 申请(专利权)人: | 网御安全技术(深圳)有限公司 |
主分类号: | G06F21/55 | 分类号: | G06F21/55 |
代理公司: | 深圳君信诚知识产权代理事务所(普通合伙) 44636 | 代理人: | 刘伟 |
地址: | 518000 广东省深圳市南山区粤海街道高新*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 防御 信道 攻击 方法 装置 可读 存储 介质 | ||
1.一种防御侧信道攻击的方法,其特征在于,在对模逆运算添加掩码时,进行以下步骤:
步骤S11.获取参与所述模逆运算的底数a、模数p及随机数r2;
步骤S12.根据公式1计算与所述模数p相关的中间变量e;
e=p-2; 公式1
步骤S13.将所述底数a进行随机数r2的掩码乘法处理,以获取更新后的底数a;
步骤S14.分别根据公式2、3构建带掩码的幂b及掩码的幂c,并计算b、c的值;
b=ae mod p 公式2;
c= r2e mod p; 公式3
步骤S15.根据公式4输出运算结果s;
s=(b*c)mod p 公式4。
2.根据权利要求1所述的防御侧信道攻击的方法,其特征在于,根据以下步骤计算b的值:
步骤S141.初始化中间变量b0=1,b1=a;
步骤S142.按从最高位至最低位的顺序,依次根据所述中间变量e的每一位更新b0、b1的值:
若所述中间变量e的当前位为0,则计算当前的b0与b1的第一乘积值,及计算当前的b0与b0的第二乘积值,并将当前的b1的值更新成所述第一乘积值,及将当前的b0的值更新成所述第二乘积值;
若所述中间变量e的当前位为1,则计算当前的b0与b1的第三乘积值,及计算当前的b1与b1的第四乘积值,并将当前的b0的值更新成所述第三乘积值,及将当前的b1的值更新成所述第四乘积值;
步骤S143. 当根据所述中间变量e的最低位更新完b0、b1的值时,获取当前的b0的值,并将当前的b0的值作为b的值。
3.根据权利要求1所述的防御侧信道攻击的方法,其特征在于,根据以下步骤计算c的值:
步骤S144.初始化中间变量c0=1,c1=r2;
步骤S145.按从最高位至最低位的顺序,依次根据所述中间变量e的每一位更新c0、c1的值:
若所述中间变量e的当前位为0,则计算当前的c0与c1的第五乘积值,及计算当前的c0与c0的第六乘积值,并将当前的c1的值更新成所述第五乘积值,及将当前的c0的值更新成所述第六乘积值;
若所述中间变量e的当前位为1,则计算当前的c0与c1的第七乘积值,及计算当前的c1与c1的第八乘积值,并将当前的c0的值更新成所述第七乘积值,及将当前的c1的值更新成所述第八乘积值;
步骤S146.当根据所述中间变量e的最低位更新完c0、c1的值时,获取当前的c0的值,并将当前的c0的值作为c的值。
4.一种防御侧信道攻击的方法,其特征在于,在对SM2签名时,进行以下步骤:
步骤S20.获取私钥参与的运算,并对其进行转换,以获取转换后的运算((1+dA)-1(k+r)-r)mod n,其中,dA为私钥,k为参与签名运算的第一随机数,r为参与签名运算第二随机数,n为一与所述第一随机数的取值范围相关的正整数;
步骤S30.从所述转换后的运算中提取模逆运算(1+dA)-1 mod n,并计算1+dA的值,而且,将所计算的值作为底数a,将n的值作为p,并使用权利要求1-3任一项所述的方法对所述模逆运算添加掩码;
步骤S40.从所述转换后的运算中提取模加减运算,并对其添加布尔型掩码。
5.一种可读存储介质,存储有计算机程序,其特征在于,所述计算机程序在被处理器执行时实现权利要求1-4任一项所述的方法的步骤。
6.一种防御侧信道攻击的装置,包括处理器,其特征在于,所述处理器在执行所存储的计算机程序时实现权利要求1-4任一项所述的方法的步骤。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于网御安全技术(深圳)有限公司,未经网御安全技术(深圳)有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202011047473.9/1.html,转载请声明来源钻瓜专利网。