Edwards 曲线快速标量乘算法的改进与FPGA 实现*
2020-10-12高献伟明娇娇董秀则张青川
高献伟 明娇娇 张 磊 董秀则 张青川
1. 北京电子科技学院,北京市 100070;
2. 农产品质量安全追溯技术及应用国家工程实验室(北京工商大学),北京市 100048
引言
公钥密码思想是由W.Diffie 和M.E.Hellman在1976 年提出的,随着社会信息化的快速发展,人们对系统安全性要求越来越高,这点使得公钥密码的应用也越来越广泛。 RSA 是公钥密码体系中应用最广的一种公钥密码体制,但是,现在计算机的计算能力越来越高,RSA 变得越来越不安全,很容易就被第三方攻 破。 所以,对于RSA 密码体制来说,若想要增强其安全强度,就必须不断地增加密钥长度,但是密钥长度的增加所带来的问题就是加解密速度特别慢,而且占用的存储空间也比较大,这不但使得密码体制效率低下,资源利用率也很低。
椭圆曲线密码(Elliptic Curves Cryptography,ECC)体制是在1985 年由Miller[1]和Koblitz[2]分别提出来的。 研究表明,在安全性相同的情况下,ECC 的密钥长度较短[3]。 例如,160 位密钥的ECC 相当于1024 位的RSA 的安全性[4]。 因为ECC 的密钥的长度比较短,所以ECC 在工程实现加密和解密时的速度比较快,并且节省资源,适合用在移动通信、智能卡等系统中。 因此,密码学中热衷于研究椭圆曲线的学者越来越多。Edwards[5]在2007 年为椭圆曲线引入了一种新的形式:x2+y2=c2(1 +dx2y2),并且提出,如果一个域的特征不等于2,则该域上的椭圆曲线与该域或其扩域上的Edwards 曲线等价。 Edwards曲线最大的优点是点加运算和倍点运算的公式相同,所以其运算规则比较简单。 这个特点使得Edwards 曲线能够天然有效地抵抗侧信道攻击[6],进而使得加密系统更加安全。……
