Abstract
This paper describes a high-speed software implementation of Elliptic Curve Cryptography (ECC) for GeForce GTX graphics cards equipped with an NVIDIA GT200 Graphics Processing Unit (GPU). In order to maximize throughput, our ECC software allocates just a single thread per scalar multiplication and aims to launch as many threads in parallel as possible. We adopt elliptic curves in Montgomery as well as twisted Edwards form, both defined over a special family of finite fields known as Optimal Prime Fields (OPFs). All field-arithmetic operations use a radix-224 representation for the operands (i.e. 24 operand bits are contained in a 32-bit word) to comply with the native (24 ×24)-bit integer multiply instruction of the GT200 platform. We implemented the OPF arithmetic without conditional statements (e.g. if-then clauses) to prevent thread divergence and unrolled the loops to minimize execution time. The scalar multiplication on the twisted Edwards curve employs a comb approach if the base point is fixed and uses extended projective coordinates so that a point addition requires only seven multiplications in the underlying OPF. Our software currently supports elliptic curves over 160-bit and 224-bit OPFs. After a detailed evaluation of numerous implementation options and configurations, we managed to launch 2880 threads on the 30 multiprocessors of the GT200 when the elliptic curve has Montgomery form and is defined over a 224-bit OPF. The resulting throughput is 115k scalar multiplications per second (for arbitrary base points) and we achieved a minimum latency of 19.2 ms. In a fixed-base setting with 256 precomputed points, the throughput increases to some 345k scalar multiplications and the latency drops to 4.52 ms.
Original language | English |
---|---|
Title of host publication | Information Security Practice and Experience |
Subtitle of host publication | 10th International Conference, ISPEC 2014 Fuzhou, China, May 5-8, 2014 Proceedings |
Editors | Xinyi Huang, Jianying Zhou |
Place of Publication | Cham Switzerland |
Publisher | Springer |
Pages | 202-216 |
Number of pages | 15 |
ISBN (Electronic) | 9783319063201 |
ISBN (Print) | 9783319063195 |
DOIs | |
Publication status | Published - 2014 |
Externally published | Yes |
Event | Information Security Practice and Experience Conference 2014 - Fuzhou, China Duration: 5 May 2014 → 8 May 2014 Conference number: 10th https://link.springer.com/book/10.1007/978-3-319-06320-1 |
Publication series
Name | Lecture Notes in Computer Science |
---|---|
Publisher | Springer |
Volume | 8434 |
ISSN (Print) | 0302-9743 |
ISSN (Electronic) | 1611-3349 |
Conference
Conference | Information Security Practice and Experience Conference 2014 |
---|---|
Abbreviated title | ISPEC 2014 |
Country/Territory | China |
City | Fuzhou |
Period | 5/05/14 → 8/05/14 |
Internet address |