椭圆曲线密码的点乘运算结果的获取方法和装置制造方法

文档序号:6629108阅读:344来源:国知局
椭圆曲线密码的点乘运算结果的获取方法和装置制造方法
【专利摘要】本发明公开了一种椭圆曲线密码的点乘运算结果的获取方法和装置。其中,该方法包括:获取椭圆曲线上的曲线点坐标和点乘系数;将点乘系数分解为高位系数和低位系数;对高位系数与曲线点坐标进行点乘计算得到第一点乘子结果,同时对低位系数与曲线点坐标进行点乘计算得到第二点乘子结果;计算第一点乘子结果和第二点乘子结果的点加,得到点乘数据。通过本发明,解决了现有技术中的获取椭圆曲线密码的点乘运算结果速度慢的问题,实现了快速获取点乘结果的效果。
【专利说明】椭圆曲线密码的点乘运算结果的获取方法和装置

【技术领域】
[0001] 本发明涉及数据处理领域,具体而言,涉及一种椭圆曲线密码的点乘运算结果的 获取方法和装置。

【背景技术】
[0002] 当前的椭圆曲线密码算法的高效实现,通常都集中于对曲线点算法和实现的研 究,点乘的实现速度基本决定了椭圆曲线密码算法的实现速度。
[0003] 现有计算点乘的方式主要有2种:
[0004] 窗口法:将点乘系数的若干比特作为一个观察单位,通过预计算的方式计算该观 察窗口。NAF编码(椭圆曲线密码编码方式):通过减少点乘系数汉明重量的方式,来减少 点加的操作次数。
[0005] 但是采用现有技术中的窗口法通常需要更多的存储空间和更大的逻辑复杂度,电 路实现成本高,使用窗口法和NAF编码提高的速度比较有限。
[0006] 针对现有技术中获取椭圆曲线密码的点乘运算结果速度慢的问题,目前尚未提出 有效的解决方案。


【发明内容】

[0007] 针对相关技术中获取椭圆曲线密码的点乘运算结果速度慢的问题,目前尚未提出 有效的解决方案,为此,本发明的主要目的在于提供一种椭圆曲线密码的点乘运算结果的 获取方法和装置,以解决上述问题。
[0008] 为了实现上述目的,根据本发明的一个方面,提供了一种椭圆曲线密码的点乘数 据的获取方法,该方法包括:获取椭圆曲线上的曲线点坐标和点乘系数;将所述点乘系数 分解为高位系数和低位系数;对所述高位系数与所述曲线点坐标进行点乘计算得到第一点 乘子结果,同时对所述低位系数与所述曲线点坐标进行点乘计算得到第二点乘子结果;计 算所述第一点乘子结果和所述第二点乘子结果的点加,得到点乘数据。
[0009] 进一步地,将所述点乘系数分解为高位系数和低位系数包括:获取所述点乘系数 的位长;按照点乘的计算时间和所述位长确定所述高位系数和所述低位系数,以使点乘计 算所述高位系数与所述曲线点坐标的第一时间与点乘计算所述低位系数与所述曲线点坐 标的第二时间符合预设倍数。
[0010] 进一步地,按照点乘的计算时间和所述位长确定所述高位系数和所述低位系数包 括:按照如下公式计算低位参数X,所述公式为

【权利要求】
1. 一种椭圆曲线密码的点乘数据的获取方法,其特征在于,包括: 获取椭圆曲线上的曲线点坐标和点乘系数; 将所述点乘系数分解为高位系数和低位系数; 对所述高位系数与所述曲线点坐标进行点乘计算得到第一点乘子结果,同时对所述低 位系数与所述曲线点坐标进行点乘计算得到第二点乘子结果; 计算所述第一点乘子结果和所述第二点乘子结果的点加,得到点乘数据。
2. 根据权利要求1所述的获取方法,其特征在于,将所述点乘系数分解为高位系数和 低位系数包括: 获取所述点乘系数的位长; 按照点乘的计算时间和所述位长确定所述高位系数和所述低位系数,以使点乘计算所 述高位系数与所述曲线点坐标的第一时间与点乘计算所述低位系数与所述曲线点坐标的 第二时间符合预设倍数。
3. 根据权利要求2所述的获取方法,其特征在于,按照点乘的计算时间和所述位长确 定所述高位系数和所述低位系数包括: 按照如下公式计算低位参数X,所述公式为X =
其中,所述L为所述位长,所 述D为一次点倍计算的时间,所述A为一次点加计算的时间; 计算所述位长与所述低位参数的差得到高位参数L-x ; 使用(L-X)确定所述高位系数,使用X确定所述低位系数。
4. 根据权利要求1至3中任意一项所述的获取方法,其特征在于,对所述高位系数与所 述曲线点坐标进行点乘计算得到第一点乘子结果,同时对所述低位系数与所述曲线点坐标 进行点乘计算得到第二点乘子结果包括: 使用窗口法或NAF编码对所述高位系数与所述曲线点坐标进行点乘计算得到所述第 一点乘子结果,同时使用窗口法或NAF编码对所述低位系数与所述曲线点坐标进行点乘计 算得到所述第二点乘子结果。
5. -种椭圆曲线密码的点乘数据的获取装置,其特征在于,包括: 获取模块,用于获取椭圆曲线上的曲线点坐标和点乘系数; 分解模块,用于将所述点乘系数分解为高位系数和低位系数; 第一计算模块,用于对所述高位系数与所述曲线点坐标进行点乘计算得到第一点乘子 结果,同时对所述低位系数与所述曲线点坐标进行点乘计算得到第二点乘子结果; 第二计算模块,用于计算所述第一点乘子结果和所述第二点乘子结果的点加,得到点 乘数据。
6. 根据权利要求5所述的获取装置,其特征在于,所述分解模块包括: 第一获取子模块,用于获取所述点乘系数的位长; 第一确定模块,用于按照点乘的计算时间和所述位长确定所述高位系数和所述低位系 数,以使点乘计算所述高位系数与所述曲线点坐标的第一时间与点乘计算所述低位系数与 所述曲线点坐标的第二时间符合预设倍数。
7. 根据权利要求6所述的获取装置,其特征在于,所述第一确定模块包括: 第一计算子模块,用于按照如下公式计算低位参数X,所述公式为X = ,其中, 51) + 1Α 所述L为所述位长,所述D为一次点倍计算的时间,所述Α为一次点加计算的时间; 第二计算子模块,用于计算所述位长与所述低位参数的差得到高位参数L-x ; 第二确定模块,用于使用(L-X)确定所述高位系数,使用X确定所述低位系数。
8.根据权利要求5至7中任意一项所述的获取装置,其特征在于,所述第一计算模块包 括: 第三计算子模块,用于使用窗口法或NAF编码对所述高位系数与所述曲线点坐标进行 点乘计算得到所述第一点乘子结果,同时使用窗口法或NAF编码对所述低位系数与所述曲 线点坐标进行点乘计算得到所述第二点乘子结果。
【文档编号】G06F17/10GK104298646SQ201410515936
【公开日】2015年1月21日 申请日期:2014年9月29日 优先权日:2014年9月29日
【发明者】王磊, 王新龙, 张建龙, 张文婧 申请人:北京宏思电子技术有限责任公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1