[发明专利]用于椭圆曲线密码防御差分功耗攻击的方法有效
申请号: | 201010578706.8 | 申请日: | 2010-12-08 |
公开(公告)号: | CN102546160A | 公开(公告)日: | 2012-07-04 |
发明(设计)人: | 顾海华 | 申请(专利权)人: | 上海华虹集成电路有限责任公司 |
主分类号: | H04L9/30 | 分类号: | H04L9/30 |
代理公司: | 上海浦一知识产权代理有限公司 31211 | 代理人: | 高月红 |
地址: | 201203 上海市*** | 国省代码: | 上海;31 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 用于 椭圆 曲线 密码 防御 功耗 攻击 方法 | ||
1.一种用于椭圆曲线密码防御差分功耗攻击的方法,包括步骤:
步骤一,在椭圆曲线E()上选择一个非零点P=(X:Y:1),给定任意整数m;
步骤二,计算同构映射φ(P)=(fuX:fvY:1),并记P′=(X′:Y′:1)=φ(P);
步骤三,计算标量乘mP′,并记点R=mP′=(X″:Y″:Z″);
步骤四,计算同构逆映射φ-1(R)=(fvX″:fv+2uY″:fv+uZ″)=mP。
2.如权利要求1所述的用于椭圆曲线密码防御差分功耗攻击的方法,其特征在于:所述步骤一中,n>80。
3.如权利要求1所述的用于椭圆曲线密码防御差分功耗攻击的方法,其特征在于:所述步骤二中,u、v是正整数,且v≥2u;
f是域中随机选取的非零元变量,且要求fh的汉明重量值小于其中,h=v-u,v-2u或v+2u。
4.如权利要求1所述的用于椭圆曲线密码防御差分功耗攻击的方法,其特征在于:所述步骤二中,P′的Z坐标取1。
5.如权利要求1所述的用于椭圆曲线密码防御差分功耗攻击的方法,其特征在于:所述步骤三中,通过调用以下步骤的算法来计算R=mP′:
步骤(1),输入整数m以及P′=(X′:Y′:1);
步骤(2),把整数m展开成二进制形式
步骤(3),给点Q赋初始值:Q←∞;
步骤(4),从i=0到i=s-1循环:
步骤(5),如果mi=1,则计算Q←Q+P′;
步骤(6),计算P′←2P′;
步骤(7),i←i+1;
步骤(8),循环结束后,输出点Q;
最后,点Q的值就等于所求的R=mP′。
6.如权利要求5所述的用于椭圆曲线密码防御差分功耗攻击的方法,其特征在于:所述步骤(2)中的m还能以如下形式展开:
m=∑m′ipwi
其中,p是一个素数,w是一个整数,
7.如权利要求5所述的用于椭圆曲线密码防御差分功耗攻击的方法,其特征在于:所述步骤(5)是通过点加运算完成的,具体运算公式如下:
椭圆曲线E()上任意点P′、Q,其中,P′=(X′1:Y′1:Z1),Q=(X′2:Y′2:Z2),并记P′+Q=(X′3:Y′3:Z3);
如果P′=∞,则P′+Q=∞+Q=Q;
如果Q=∞,则P′+Q=P′+∞=P′;
当P′≠∞且Q≠∞,P′≠Q时,则
X′3=A(H+D)+B(G+C)
Y′3=(AJ+FG)F+(J+fv-uZ3)X′3
Z3=FZ1Z2
其中,A=X′1Z2,,B=X′2Z1,C=fv-2uA2,D=fv-2uB2,E=A+B,F=C+D,I=G+H,J=fv-2uIE。
8.如权利要求5所述的用于椭圆曲线密码防御差分功耗攻击的方法,其特征在于:所述步骤(6)是通过倍点运算完成的,具体运算公式如下:
椭圆曲线E()上任意点P′、Q,其中,P′=(X′1:Y′1:Z1),Q=(X′2:Y′2:Z2),并记P′+Q=(X′3:Y′3:Z3);
如果P′=∞,则P′+Q=∞+Q=Q;
如果Q=∞,则P′+Q=P′+∞=P′;
当P′≠∞且Q≠∞,P′=Q,则
X′3=fv-2uC2+B
Y′3=(Y′12+a2fv-uZ3+fv-2uB)X′3+fv-uZ3B
Z3=fv-uAC
其中,B=a6fv+2uA2,C=X′12。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于上海华虹集成电路有限责任公司,未经上海华虹集成电路有限责任公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201010578706.8/1.html,转载请声明来源钻瓜专利网。