[发明专利]一种抵抗SPA攻击的模幂计算方法、系统及嵌入式单芯片有效
申请号: | 201611203442.1 | 申请日: | 2016-12-23 |
公开(公告)号: | CN106603221B | 公开(公告)日: | 2022-07-26 |
发明(设计)人: | 胡俊义;王幼君 | 申请(专利权)人: | 北京握奇智能科技有限公司;北京握奇数据股份有限公司 |
主分类号: | H04L9/00 | 分类号: | H04L9/00 |
代理公司: | 北京天悦专利代理事务所(普通合伙) 11311 | 代理人: | 田明;文永明 |
地址: | 100102 北京市朝阳区*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 抵抗 spa 攻击 计算方法 系统 嵌入式 芯片 | ||
本发明涉及一种抵抗SPA攻击的模幂计算方法、系统及嵌入式单芯片,方法包括将模幂计算中的指数e0进行斐波那契变换分解加法链,得到目标指数e’;使用目标指数e’进行模幂计算。系统包括指数获取模块、目标指数转换模块和运算模块。该嵌入式芯片采用上述模幂计算方法。本发明的技术方案中,采用将指数变换为多个斐波那契数之和的方法,淡化了外在功耗变化规律,使得旁路攻击变得困难,不容易通过SPA/DPA攻击获取关键信息,如密钥信息。就是一种安全防护措施,用来抵抗旁路攻击,使得嵌入式密码产品的抗攻击能力得到加强,更加安全。
技术领域
本发明涉及密码加密技术,具体涉及一种抵抗SPA攻击的模幂计算方法、系统及嵌入式单芯片。
背景技术
在嵌入式单芯片内实现RSA公钥密码算法(或用到模幂的其他密码算法),存在受到SPA攻击的威胁,这种攻击的成本在下降,技术在成熟,攻击的威胁很大。那么对抵抗攻击的方法也就有了明显的需求。密码产品要拿到资质,需要做相关的攻击测试。
上述密码算法的加密/解密过程都会用到模幂计算,模幂计算就是计算做形如m=cd(mod n)的计算,其中c是底数,d是指数,n是模量,m是计算结果。
SPA是典型的侧信道攻击,就是记录和观察模幂计算过程中,嵌入式单芯片的功耗变化情况。如果能分析出指数d的值,则攻击成功。
理论上,模幂计算的过程包括如下步骤:
(1)定位d的最高有效位,也就是值为1的最高二进制位,根据公式m=c 给计算结果m赋值;
(2)根据指数d的下一位计算计算结果m:根据公式m=m2(mod n)给计算结果m进行赋值;
如果该指数位为0,进入步骤(3);
如果该指数位为1,则根据公式m=m*c(mod n)给本步骤赋值后的计算结果m 进行再次赋值,进入步骤(3);
(3)重复步骤(2)直至根据指数d的最后一位计算完毕。
可见,模幂过程在对指数d的循环计算过程中,如果当前指数位为0,则只做模平方计算。如果当前指数位为1,则还要再做一个模乘计算。SPA攻击可从功耗变化规律,来得出d的值。模平方和模乘计算过程中,功耗曲线是有区别的,时间长短也有不同。另外,软件实现过程中,条件判断和分支过程的功耗和时间都有所不同。
为了抵抗SPA攻击,可从硬件和软件两个方面来做安全防护。硬件的防护,是在芯片的设计中考虑到功耗外在表现的平衡,使得计算过程的功耗在外部记录和观察到的表象,与内部操作构不成明显的对应关系。而软件防护,是在算法实现过程中掩盖计算过程中功耗和时间,使得外在功耗和内在计算的关系不那么明显对应。这些防护的目的就是为了抵抗外在攻击对指数d的分析。
出于抵抗SPA的目的,与本发明相关的现有技术之一是改变模幂过程中指数的值,改变的方法是在原有指数值的基础上加欧拉PHI函数的若干倍数,这个倍数是随机的。这种技术的不足在于没有掩盖模乘和模平方的功耗变化,当侧信道攻击分析出了改变之后的指数值,就可推导出原来的指数值。
与本发明相关的另一现有技术是增加伪操作,就是在模平方操作之后,无论指数位是否为1,都做模乘操作,只不过,在指数位为0的情况下,模乘操作是伪操作,也就是不去影响实际计算结果,只用来改变功耗变化规律。这种技术的不足之处在于,模乘和模平方的功耗不同仍然存在,对条件判断后做分支的流程分析,还存在问题。
发明内容
针对现有技术中所存在的问题,本发明的目的在于有针对地提供这一种抵抗SPA攻击的模幂计算方法、系统及嵌入式单芯片,该方案能够在潜在受到SPA攻击的软件或硬件密码设备运行公钥体制时,在需要使用秘密密钥或保密参数为指数计算模幂情况下(包括RSA算法或用到模幂计算的其他密码算法),抵抗SPA攻击,避免相关信息泄露。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京握奇智能科技有限公司;北京握奇数据股份有限公司,未经北京握奇智能科技有限公司;北京握奇数据股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201611203442.1/2.html,转载请声明来源钻瓜专利网。