The present invention provides a method for scalar multiplication on elliptic curves, which comprises the following steps: A, dividing into two equal scalar D sub bit string D = (B2||B1); step two, propositional logic from two bit string to extract equal length common sub bit string based on Bcom, which is a scalar split the three part of the Bcom, BXOR_1 and BXOR_2, and
【技术实现步骤摘要】
一种椭圆曲线标量乘方法
本专利技术涉及一种高效的椭圆曲线标量乘方法。
技术介绍
1980年代中期,Miller和Koblitz分别独立地提出了椭圆曲线密码体制(ellipticcurvecryptosystems,ECC)。相对于其它的公钥密码体制,ECC只需较短的私钥就可以达到较高的安全级别。所以,近年来ECC受到广泛关注。短的私钥意味着更少的功耗、计算开销和存储空间,尤其适用于资源受限的便携式计算设备(例如智能卡)。所以,ECC的这种特性使得它们非常适用于资源受限的计算设备的密码服务。在ECC中,标量乘是最主要且最耗时的操作。二进制方法是计算标量乘最常用的方法:给定一个标量d和一个椭圆曲线上的点P,标量乘dP的计算是由一系列取决于d的比特序列的点加(ADD)和点倍(DBL)来完成,也称它们为椭圆曲线操作,其中d是ECC的私钥。本专利技术提出了一种高效的标量乘方法,比二进制方法减少了(k/8)·A计算复杂度。
技术实现思路
本专利技术要解决的技术问题是提出一种高效的椭圆曲线密码标量乘方法,该方法划分标量比特串为两半,抽取共同的子比特串,节省了计算椭圆曲线点加操作的次数。本专利技术提供了一种椭圆曲线标量乘方法,包括以下步骤:步骤一,划分标量d为两个等长的子比特串d=(B2||B1);“||”是比特串的并置符号;步骤二,基于命题逻辑操作从两个等长子比特串中抽取共同子比特串Bcom,从而拆分标量为三个部分:Bcom、BXOR_1和BXOR_2,且B1=Bcom+BXOR_1,B2=Bcom+BXOR_2;BXOR_1和BXOR_2分别表示B1和B2分别与共同比特串 ...
【技术保护点】
一种椭圆曲线标量乘方法,其特征在于,包括以下步骤:步骤一,划分标量d为两个等长的子比特串d=(B2||B1);“||”是比特串的并置符号;步骤二,从两个等长子比特串中抽取共同子比特串Bcom,从而拆分标量为三个部分:Bcom、BXOR_1和BXOR_2,且B1=Bcom+BXOR_1,B2=Bcom+BXOR_2;BXOR_1和BXOR_2分别表示B1和B2分别与共同比特串Bcom的“异或”位元运算结果;步骤三,划分标量乘dP为3个子标量乘,为:BXOR_1·P、BXOR_2·P和Bcom·P,并分别计算结果Q1、Q2和Q3;步骤四,整合计算步骤三中3个子标量乘的结果Q1、Q2和Q3,得出标量乘dP。
【技术特征摘要】
1.一种椭圆曲线标量乘方法,其特征在于,包括以下步骤:步骤一,划分标量d为两个等长的子比特串d=(B2||B1);“||”是比特串的并置符号;步骤二,从两个等长子比特串中抽取共同子比特串Bcom,从而拆分标量为三个部分:Bcom、BXOR_1和BXOR_2,且B1=Bcom+BXOR_1,B2=Bcom+BXOR_2;BXOR_1和BXOR_2分别表示B1和B2分别与共同比特串Bcom的“异或”位元运算结果;步骤三,划分标量乘dP为3个子标量乘,为:BXOR_1·P、BXOR_2·P和Bcom·P,并分别计算结果Q1、Q2和Q3;步骤四,整合计算步骤三中3个子标量乘的结果Q1、Q2和Q3,得出标量乘dP。2.根据权利要求1所述的一种椭圆曲线标量乘方法,其特征在于:所述步骤一中,其中k为标量d比特长度。3.根据...
【专利技术属性】
技术研发人员:邬可可,
申请(专利权)人:深圳信息职业技术学院,
类型:发明
国别省市:广东,44
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。