ECC Processor Supporting NIST Elliptic Curves over GF(2m)

GF(2m) 상의 NIST 타원곡선을 지원하는 ECC 프로세서

  • Published : 2018.10.18

Abstract

This paper describes a design of an elliptic curve cryptography (ECC) processor that supports five pseudo-random curves and five Koblitz curves over binary field defined by the NIST standard. The ECC processor adopts the Lopez-Dahab projective coordinate system so that scalar multiplication is computed with modular multiplier and XORs. A word-based Montgomery multiplier of $32-b{\times}32-b$ was designed to implement ECCs of various key lengths using fixed-size hardware. The hardware operation of the ECC processor was verified by FPGA implementation. The ECC processor synthesized using a 0.18-um CMOS cell library occupies 10,674 gate equivalents (GEs) and 9 Kbits RAM at 100 MHz, and the estimated maximum clock frequency is 154 MHz.

NIST 표준으로 정의된 이진체 상의 5가지 pseudo-random 타원곡선과 5가지 Koblitz 타원곡선을 지원하는 타원곡선 암호 (Elliptic Curve Cryptography; ECC) 프로세서를 설계하였다. Lopez-Dahab 투영 좌표계를 적용하여 모듈러 곱셈과 XOR 연산으로 스칼라 곱셈 (scalar multiplication)이 연산되도록 하였으며, 32-비트${\times}$32-비트의 워드 기반 몽고메리 곱셈기를 이용한 고정 크기의 하드웨어로 다양한 키 길이의 ECC가 구현될 수 있도록 설계하였다. 설계된 ECC 프로세서는 FPGA 구현을 통해 하드웨어 동작을 검증하였으며, 0.18-um CMOS 셀 라이브러리로 합성한 결과 100 MHz의 동작 주파수에서 10,674 GEs와 9 킬로비트의 RAM으로 구현되었고, 최대 154 MHz의 동작 주파수를 갖는다.

Keywords