Efficient Implementation of Cryptographic Algorithms in Modern Architectures
Error-Correcting Codes and Lattice Applications to Public-Key Cryptography.
![]() | |
Author(s): |
Marcio Rogerio Juliato
Total Authors: 1
|
Document type: | Master's Dissertation |
Press: | Campinas, SP. |
Institution: | Universidade Estadual de Campinas (UNICAMP). Instituto de Computação |
Defense date: | 2006-08-08 |
Examining board members: |
Guido Costa Souza de Araújo;
Manoel Eusebio de Lima;
Ricardo Dahab
|
Advisor: | Guido Costa Souza de Araújo |
Abstract | |
The increase in electronic communication has lead to a high demand for encrypted information exchange between unfamiliar hosts over insecure channels (such as the Internet). Elliptic curve cryptography (ECC) is a public-key mechanism that requires the communicating entities exchange key material that is authentic and has the property of being computationally infeasible to determine the private key from the knowledge of the public key. The fundamental ECC operation is the point multiplication (kP), which spends around 90% of its running time in the finite field multiplication. Therefore, the speed of an ECC scheme is highly dependent on the performance of its underlying finite field arithmetic. In this work, we studied the specialization of the NIOS2 processor for ECC applications. More precisely, we implemented the finite field operations and the point multiplication over F2163 as NIOS2 custom instructions and peripherals, and thus, we analyzed them in terms of area and speedup. We also determined which implementations are best suited for performance-driven and area-constrained environments. Our best hardware implementation of the point multiplication is capable of accelerating the kP computation in 2900 times, when compared to the best software implementation running in the NIOS2. According to the literature, we obtained the fastest point multiplier in hardware over F2163 , proving that Gaussian normal bases are quite appropriate for hardware implementations (AU) |