【技术实现步骤摘要】
一种同时多点乘实现方法及装置
[0001]本文涉及信息安全技术,尤指一种同时多点乘实现方法及装置。
技术介绍
[0002]双标量乘Q=kG+tP是椭圆曲线密码验签算法的一个核心运算步骤,也是最耗时的一个运算步骤。。
[0003]相关技术中,大多数厂商将双标量乘Q=kG+tP其看作两个标量乘算法(kG和tP)分别进行计算,然后再进行一次点加运算,常见的标量乘方法有二进制扫描法、加减法、蒙哥马利阶梯法、滑动窗口法和COMB编码法,部分厂商将其看作整体进行计算,即通过同时多点乘算法实现的。
[0004]然而,现有的同时多点乘运算在编码时得到的窗口值K
i
和T
i
有可能出现窗口0值,因此窗口会出现“非零窗口”和“零窗口”之分,攻击者可通过采集功耗曲线并分析“非零窗口”与“零窗口”的差异性,以获取标量的部分信息,因此现有的同时多点乘不能抵抗简单功耗分析(Simple Power Analysis,SPA)攻击和故障攻击(Fault Attack,FA)。
技术实现思路
[0005]本申请提供了一种同时多点乘实现方法及装置,能够消除“零窗口”的出现,使得同时多点乘能够抵抗SPA攻击和FA攻击。
[0006]一方面,本申请提供了一种同时多点乘实现方法,包括:
[0007]对同时多点乘运算中的每个标量采用预设编码方式进行编码;
[0008]基于经过编码的标量获取所述同时多点乘运算的计算结果,并根据编码过程中所述标量的变换处理内容对所述同时多点 ...
【技术保护点】
【技术特征摘要】 【专利技术属性】
1.一种同时多点乘实现方法,其特征在于,包括:对同时多点乘运算中的每个标量采用预设编码方式进行编码;基于经过编码的标量获取所述同时多点乘运算的计算结果,并根据编码过程中所述标量的变换处理内容对所述同时多点乘运算的计算结果进行还原处理;其中,所述预设编码方式包括:以窗口宽度w,编码对象k=(k
l
‑1,
…
,k1,k0)2,作为输入,执行以下步骤,输出(u
d
,u
d
‑1,
…
,u0)
w
,其中,k
j
∈{0,1},j=0,1
…
,l
‑
1,所述以下步骤包括:步骤1、i=0;步骤2、若k为奇数,计算k
′
=k+2,若k为偶数,计算k
′
=k+1;步骤3、当k
′
>1时,重复执行步骤3.1
‑
3.3;步骤3.1、计算u
i
=k
′
mod 2
w+1
‑2w
;步骤3.2、计算k
′
=(k
′‑
u
s
)/2
w
;步骤3.3、计算i=i+1;步骤4、当k
′
=1,置u
d
=1;步骤5、返回(u
d
,u
d
‑1,
…
,u0)
w
。2.根据权利要求1所述的方法,其特征在于,当所述同时多点乘运算为椭圆曲线双标量乘运算kG+tP,所述椭圆曲线双标量乘运算的计算结果为R时,所述根据编码过程中所述标量的变换处理内容对所述同时多点乘运算的计算结果进行还原处理,包括:若k为奇数,计算R=R
‑
2G,若k为偶数,计算R=R
‑
G;若t为奇数,计算R=R
‑
2P,若t为偶数,计算R=R
‑
P;其中,k、t为标量。3.根据权利要求2所述的方法,其特征在于,所述基于经过编码的标量获取所述同时多点乘运算的计算结果,包括:预计算iG,iP,其中,i∈(0,2
w
‑
1]的奇数;当i=d时,计算R=K
d
G+T
d
技术研发人员:雷翻翻,纪云鹏,马贵霞,
申请(专利权)人:大唐微电子技术有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。