[发明专利]一种基于指令的大数点加、倍点运算电路及实现方法在审
申请号: | 201410573820.X | 申请日: | 2014-10-24 |
公开(公告)号: | CN104503730A | 公开(公告)日: | 2015-04-08 |
发明(设计)人: | 刘奇浩;孙晓宁;刘大铕;赵阳;王运哲;刘守浩 | 申请(专利权)人: | 山东华芯半导体有限公司 |
主分类号: | G06F7/72 | 分类号: | G06F7/72 |
代理公司: | 济南舜源专利事务所有限公司37205 | 代理人: | 赵佳民 |
地址: | 250101山东省济*** | 国省代码: | 山东;37 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 指令 大数 运算 电路 实现 方法 | ||
技术领域
本发明涉及微电子技术领域,尤其涉及一种基于指令的大数点加、倍点运算电路及实现方法。
背景技术
目前基于有限域上椭圆曲线离散对数问题的非对称密码算法ECC(Elliptic Curve Cryptography)被公认为是最高比特强度的公钥密码体制,广泛应用于快速加密、密钥交换、身份验证、数字签名、保密通信等领域。
SM2椭圆曲线公钥密码算法作为ECC算法中的一种,加密强度为256位,安全性高、存储空间小、可以快速完成签名、密钥交换以及加密应用。
SM2相关的运算逻辑可以视为独立的单元进行设计,并且采用层次化的划分方式可以分为有限域运算层以及椭圆曲线运算层。有限域运算层的主要功能是提供SM2算法所需要的数论运算支持,包括256位大整数模加、模减、模乘、模逆、模幂、比较。椭圆曲线运算层由有限域运算层的各种基础运算按照一定的规则进行排序后构成,包括点加、倍点、点乘、坐标转换。
在椭圆曲线密码体制中,核心运算是点乘,我们可以将点乘分解为两种基本运算:点加以及倍点,点加和倍点运算可以采用不同的坐标系来实现。常用的坐标系是仿射坐标系和Jacobi投影坐标系。本发明适用于基数在素数域中Jacobian加重射影坐标系下的椭圆曲线公钥密码算法。在Jacobian加重射影坐标系下,令O 点表示无穷远点,在有限域Fp 内,E( Fp) 上点的加法运算定义如下:
(1)O+O=O;
(2)??P = x, y, z∈E(Fp) || O, P+O=O+P=P;
(3) ??P = x, y, z∈E(Fp) || O, P的逆元素??P = (u2x, ??u3y, uz),u∈Fp且u ≠ 0,P+(-P)=O;
(4)设点P1 = (x1, y1, z1)∈E(Fp) || O,P2 = (x2, y2, z2)∈ E(Fp) || O,P3 = P1 + P2 = (x3, y3, z3) ≠ O,若P1 ≠ P2,进行点加运算,则:
λ1 = x1z22,λ2 = x2z12,λ3 = λ1 ?? λ2,λ4 = y1z23,λ5 = y2z13,λ6 = λ4 ?? λ5,
λ7 =λ1 +λ2 ,λ8 =λ4 +λ5 ,x3 =λ62 ?? λ7λ32 ,λ9 =λ7λ32 ?? 2x3 ,
y3= (λ9λ6 ?? λ8λ33) /2,z3 = z1z2λ3;
若P 1 = P2,进行倍点运算,则:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于山东华芯半导体有限公司;,未经山东华芯半导体有限公司;许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201410573820.X/2.html,转载请声明来源钻瓜专利网。