DOI QR코드

DOI QR Code

233-비트 이진체 타원곡선을 지원하는 암호 프로세서의 저면적 구현

A small-area implementation of cryptographic processor for 233-bit elliptic curves over binary field

  • Park, Byung-Gwan (School of Electronic Engineering, Kumoh National Institute of Technology) ;
  • Shin, Kyung-Wook (School of Electronic Engineering, Kumoh National Institute of Technology)
  • 투고 : 2017.02.15
  • 심사 : 2017.03.09
  • 발행 : 2017.07.31

초록

NIST 표준에 정의된 이진체(binary field) 상의 233-비트 타원곡선을 지원하는 타원곡선 암호(elliptic curve cryptography; ECC) 프로세서를 설계하였다. 타원곡선 암호 시스템의 핵심 연산인 스칼라 점 곱셈을 수정형 Montgomery ladder 알고리듬을 이용하여 구현함으로써 단순 전력분석에 강인하도록 하였다. 점 덧셈과 점 두배 연산은 아핀(affine) 좌표계를 기반으로 유한체 $GF(2^{233})$ 상의 곱셈, 제곱, 나눗셈으로 구현하였으며, shift-and-add 방식의 곱셈기와 확장 유클리드 알고리듬을 이용한 나눗셈기를 적용함으로써 저면적으로 구현하였다. 설계된 ECC 프로세서를 Virtex5 FPGA로 구현하여 정상 동작함을 확인하였다. $0.18{\mu}m$ 공정의 CMOS 셀 라이브러리로 합성한 결과 49,271 GE로 구현되었고, 최대 345 MHz의 동작 주파수를 갖는다. 스칼라 점 곱셈에 490,699 클록 사이클이 소요되며, 최대 동작 주파수에서 1.4 msec의 시간이 소요된다.

This paper describes a design of cryptographic processor supporting 233-bit elliptic curves over binary field defined by NIST. Scalar point multiplication that is core arithmetic in elliptic curve cryptography(ECC) was implemented by adopting modified Montgomery ladder algorithm, making it robust against simple power analysis attack. Point addition and point doubling operations on elliptic curve were implemented by finite field multiplication, squaring, and division operations over $GF(2^{233})$, which is based on affine coordinates. Finite field multiplier and divider were implemented by applying shift-and-add algorithm and extended Euclidean algorithm, respectively, resulting in reduced gate counts. The ECC processor was verified by FPGA implementation using Virtex5 device. The ECC processor synthesized using a 0.18 um CMOS cell library occupies 49,271 gate equivalents (GEs), and the estimated maximum clock frequency is 345 MHz. One scalar point multiplication takes 490,699 clock cycles, and the computation time is 1.4 msec at the maximum clock frequency.

키워드

참고문헌

  1. NIST Std. FIPS-197, Advanced Encryption Standard, National Institute of Standard and Technology (NIST), Nov., 2001.
  2. KS X 1213, 128 bit Block Encryption Algorithm ARIA, Korean Agency for Technology and Standards (KATS), 2004.
  3. R. Rivest, A. Shamir, and L. Adleman, "A method for obtaining Digital Signatures and Public-Key Cryptosystems," Communications of the Association for Computing Machinery (ACM), vol. 21, no. 2, pp. 120-126, Feb. 1978. https://doi.org/10.1145/359340.359342
  4. NIST Std. FIPS PUB 186-2, Digital Signature Standard (DSS), National Institute of Standard and Technology (NIST), Jan., 2000.
  5. TTA Std. TTAK.KO-12.0015/R1, Digital Signature Mechanism with Appendix (Part 3) Korean Certificatebased Digital Signature Algorithm using Elliptic Curves, Telecommunications Technology Association (TTA), Dec., 2012.
  6. H. A. Selma and H. M'hamed, "Elliptic curve cryptographic processor design using FPGAs," Proceedings of the IEEE 2015 3rd International Conference on Control, Engineering & Information Technology (CEIT), Univ. of Tlemcen Tlemcen, Algeria, pp. 1-6, May 2015.
  7. M. Amara and A. Siad, "Hardware implementation of Elliptic Curve Point Multiplication over GF(2^m) for ECC protocols," International Journal for Information Security Research (IJISR), vol. 2, no. 1, pp. 106-112, Mar. 2012. https://doi.org/10.20533/ijisr.2042.4639.2012.0013
  8. V. R. Venkatasubramani, G. R. Kumar, and K. Vignesh, "Fast computation of scalar multiplication over binary edwards curve processor against side channel attack," Proceedings of the IEEE 2014 International Conference on Electronics and Communication Systems (ICECS), Karpagam College, India, pp. 1-7, Feb. 2014.
  9. C. Rebeiro, S. S. Roy, and D. Mukhopadhyay. "Pushing the limits of high-speed GF (2^m) elliptic curve scalar multiplication on FPGAs," Proceedings of the International Workshop on Cryptographic Hardware and Embedded Systems, Springer Berlin Heidelberg, pp. 494-511, Jan. 2012.
  10. D. Amiet, A. Curiger, and P. Zbinden, "Flexible FPGA-Based Architectures for Curve Point Multiplication over GF(p)," Proceedings of the IEEE 2016 Euromicro Conference on Digital System Design (DSD), Limassol, Cyprus, pp. 107-114, Aug. 2016.
  11. J. Park, J. T. Hwang, and Y. C. Kim, "FPGA and ASIC implementation of ECC processor for security on medical embedded system," Proceedings of the IEEE Third International Conference on Information Technology and Applications (ICITA 2005), Sydney, Australia, vol. 2, pp. 547-551, July 2005.