High-performance Implementation of Elliptic Curve Cryptography Using Vector Instructions

被引:28
作者
Faz-Hernandez, Armando [1 ]
Lopez, Julio [1 ]
Dahab, Ricardo [1 ]
机构
[1] Univ Estadual Campinas, Inst Comp, 1251 Albert Einstein,Cidade Univ, BR-13083852 Campinas, SP, Brazil
来源
ACM TRANSACTIONS ON MATHEMATICAL SOFTWARE | 2019年 / 45卷 / 03期
基金
巴西圣保罗研究基金会;
关键词
Edwards digital signature algorithm; Diffie-Hellman protocol; Ed25519; AVX2 vector instructions; elliptic curve cryptography; secure software; ALGORITHMS; EFFICIENT;
D O I
10.1145/3309759
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
Elliptic curve cryptosystems are considered an efficient alternative to conventional systems such as DSA and RSA. Recently, Montgomery and Edwards elliptic curves have been used to implement cryptosystems. In particular, the elliptic curves Curve25519 and Curve448 were used for instantiating Diffie-Hellman protocols named X25519 and X448. Mapping these curves to twisted Edwards curves allowed deriving two new signature instances, called Ed25519 and Ed448, of the Edwards Digital Signature Algorithm. In this work, we focus on the secure and efficient software implementation of these algorithms using SIMD parallel processing. We present software techniques that target the Intel AVX2 vector instruction set for accelerating prime field arithmetic and elliptic curve operations. Our contributions result in a high-performance software library for AVX2-ready processors. For example, our library computes digital signatures 19% (for Ed25519) and 29% (for Ed448) faster than previous optimized implementations. Also, our library improves by 10% and 20% the execution time of X25519 and X448, respectively.
引用
收藏
页数:35
相关论文
共 56 条
[1]  
[Anonymous], 2001, X963 ANSI
[2]  
[Anonymous], 2017, EBACS ECRYPT BENCHMA
[3]  
[Anonymous], 2000, IEEE Standard 1363-2000, P1
[4]  
ANSI, 1998, X962 ANSI
[5]  
Aoki K., 2001, ISC2001, V2200, P235
[6]  
Aranha Diego F., 2012, Progress in Cryptology - LATINCRYPT 2012. Proceedings of the 2nd International Conference on Cryptology and Information Security in Latin America, P177, DOI 10.1007/978-3-642-33481-8_10
[7]  
Aumasson Jean-Philippe, 2013, CRYPTOGRAPHY CODING
[8]  
Bernstein DJ, 2008, LECT NOTES COMPUT SC, V5023, P389
[9]  
Bernstein DJ, 2006, LECT NOTES COMPUT SC, V3958, P207
[10]  
Bernstein DJ, 2014, LECT NOTES COMPUT SC, V8873, P317, DOI 10.1007/978-3-662-45611-8_17