DOI QR코드

DOI QR Code

224-비트 소수체 타원곡선을 지원하는 공개키 암호 프로세서의 저면적 구현

A small-area implementation of public-key cryptographic processor for 224-bit elliptic curves over prime 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.05.25
  • 심사 : 2017.05.31
  • 발행 : 2017.06.30

초록

NIST 표준에 정의된 소수체(prime field) GF(p) 상의 224-비트 타원곡선을 지원하는 타원곡선 암호 프로세서를 설계하였다. 타원곡선 암호의 핵심 연산인 스칼라 점 곱셈을 수정형 Montgomery ladder 알고리듬을 이용하여 구현하였다. 점 덧셈과 점 두배 연산은 투영(projective) 좌표계를 이용하여 연산량이 많은 나눗셈 연산을 제거하였으며, 소수체 상의 덧셈, 뺄셈, 곱셈, 제곱 연산만으로 구현하였다. 스칼라 점 곱셈의 최종 결과값은 다시 아핀(affine) 좌표계로 변환되어 출력하며, 이때 사용되는 역원 연산은 Fermat's little theorem을 이용하여 구현하였다. 설계된 ECC 프로세서를 Virtex5 FPGA로 구현하여 정상 동작함을 확인하였다. $0.18{\mu}m$공정의 CMOS 셀 라이브러리로 합성한 결과 10 MHz의 동작 주파수에서 2.7-Kbit RAM과 27,739 GE로 구현되었고, 최대 71 MHz의 동작 주파수를 갖는다. 스칼라 점 곱셈에 1,326,985 클록 사이클이 소요되며, 최대 동작 주파수에서 18.7 msec의 시간이 소요된다.

This paper describes a design of cryptographic processor supporting 224-bit elliptic curves over prime field defined by NIST. Scalar point multiplication that is a core arithmetic function in elliptic curve cryptography(ECC) was implemented by adopting the modified Montgomery ladder algorithm. In order to eliminate division operations that have high computational complexity, projective coordinate was used to implement point addition and point doubling operations, which uses addition, subtraction, multiplication and squaring operations over GF(p). The final result of the scalar point multiplication is converted to affine coordinate and the inverse operation is implemented using Fermat's little theorem. The ECC processor was verified by FPGA implementation using Virtex5 device. The ECC processor synthesized using a 0.18 um CMOS cell library occupies 2.7-Kbit RAM and 27,739 gate equivalents (GEs), and the estimated maximum clock frequency is 71 MHz. One scalar point multiplication takes 1,326,985 clock cycles resulting in the computation time of 18.7 msec at the maximum clock frequency.

키워드

참고문헌

  1. NOKIA, "LTE-M-Optimizing LTE for the Internet of Things," White Paper, 2015.
  2. NIST Std. FIPS-197, Advanced Encryption Standard, National Institute of Standard and Technology (NIST), November, 2001.
  3. R. Rivest, A. Shamir and L. Adleman, "A method for obtaining Digital Signatures and Public-Key Cryptosystems," Communications of 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. T. Akishita and T. Takagi, "Zero-value point attacks on elliptic curve cryptosystem," International Conference on Information Security, Springer Berlin Heidelberg, pp. 218-233, 2003.
  7. D. Amiet, A. Curiger, and P. Zbinden, "Flexible FPGA-Based Architectures for Curve Point Multiplication over GF(p)," IEEE Euromicro Conference on Digital System Design, pp. 107-114, 2016.
  8. H. Alrimeih and D. Rakhmatov, "Fast and flexible hardware support for ECC over multiple standard prime fields," IEEE Transactions on Very Large Scale Integration (VLSI) Systems, vol. 22, no. 12, pp. 2661-2674, Dec. 2014. https://doi.org/10.1109/TVLSI.2013.2294649
  9. J. Vliegen et al, "A compact FPGA-based architecture for elliptic curve cryptography over prime fields," IEEE International Conference on Application-specific Systems Architectures and Processors (ASAP), pp. 313-316, 2010.
  10. J. Guajardo et al, "Efficient hardware implementation of finite fields with applications to cryptography," in Acta Applicandae Mathematicae, vol. 93, pp. 75-118, 2006. https://doi.org/10.1007/s10440-006-9072-z
  11. M.S. Hossain and Y. Kong, "High-Performance FPGA Implementation of Modular Inversion over F_256 for Elliptic Curve Cryptography," 2015 IEEE International Conference on Data Science and Data Intensive Systems (DSDIS), pp. 169-174, 2015.
  12. J. Bosmans et al, "A tiny coprocessor for elliptic curve cryptography over the 256-bit NIST prime field," IEEE 2016 29th International Conference on VLSI Design, 2016 15th International Conference on Embedded Systems, pp. 523-528, 2016.
  13. T. Izu, B. Moller, and T. Takagi, "Improved elliptic curve multiplication methods resistant against side channel attacks," International Conference on Cryptology in India, Springer Berlin Heidelberg, pp. 296-313, 2002.
  14. 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, March. 2012. https://doi.org/10.20533/ijisr.2042.4639.2012.0013