Design of a ECC arithmetic engine for Digital Transmission Contents Protection (DTCP)

컨텐츠 보호를 위한 DTCP용 타원곡선 암호(ECC) 연산기의 구현

  • Published : 2005.03.01

Abstract

In this paper, we implemented an Elliptic Curve Cryptography(ECC) processor for Digital Transmission Contents Protection (DTCP), which is a standard for protecting various digital contents in the network. Unlikely to other applications, DTCP uses ECC algorithm which is defined over GF(p), where p is a 160-bit prime integer. The core arithmetic operation of ECC is a scalar multiplication, and it involves large amount of very long integer modular multiplications and additions. In this paper, the modular multiplier was designed using the well-known Montgomery algorithm which was implemented with CSA(Carry-save Adder) and 4-level CLA(Carry-lookahead Adder). Our new ECC processor has been synthesized using Samsung 0.18 m CMOS standard cell library, and the maximum operation frequency was estimated 98 MHz, with the size about 65,000 gates. The resulting performance was 29.6 kbps, that is, it took 5.4 msec to process a 160-bit data frame. We assure that this performance is enough to be used for digital signature, encryption and decryption, and key exchanges in real time environments.

본 논문에서는 디지털 컨텐츠 보호를 위해 표준으로 제정된 DTCP(Digital Transmission Contents Protection)용 타원 곡선 암호(ECC) 연산기의 구현에 대해 기술한다. 기존의 시스템이 유한체 GF(2/sup m/)를 사용하는 것과는 달리 DTCP에서는 소수체인 GF(p)에서 타원 곡선을 정의하여 인증 및 키 교환을 위해 ECC 암호 알고리즘을 사용하고 있다. 본 논문에서는 ECC 알고리즘의 핵심 연산인 GF(p) 상에서의 스칼라 곱셈 연산기를 구현하였으며, 이 중 가장 많은 시간과 자원을 필요로 하는 나눗셈 연산을 제거하기 위하여 투영 좌표 변환 방법을 이용하였다. 또한, 효율적인 모듈러 곱셈 연산을 위하여 몽고메리 알고리즘을 이용하였으며, 곱셈기의 처리 속도를 빠르게 하기 위해 CSA(Carry Save Adder)와 4-레벨의 CLA(Carry Lookahead Adder)를 사용하였다. 본 논문에서 설계한 스칼라 곱셈기는 삼성전자 0.18 un CMOS 라이브러리를 이용하여 합성하였을 경우 64,559 게이트의 크기에 최대 98 MHz까지 동작이 가능하며 이 때 데이터 처리속도는 29.6 kbps로 160-blt 프레임당 5.4 ms 걸린다. 본 성능은 실시간 환경에서 DTCP를 위한 디지털 서명, 암호화 및 복호화, 그리고 키 교환 등에 효율적으로 적용될 수 있다.

Keywords

References

  1. DTCP Specification, '5C Digital Transmission Content Protection Specification Volume 1(Information Version),' July, 2000
  2. J. Kim, Y. Kim and Y. Jeong, 'Implementation of a pipelined Scalar Multiplier using Extended Euclid Algorithm for Elliptic Curve Cryptography(ECC),' 한국정보보호학회, pp. 17-30. Oct. 2001
  3. IEEE P1363a/D5(Draft Version 5). Standard Specifications for Public Key Cryptography : Additional Techniques, August 16 2000
  4. Certicom Whitepaper, 'The Elliptic Curve Cryptosystem for Smart Cards,' http:// www.certicom.com, May, 1998
  5. S. Berna Ors, L. Batina, B. Preneel and J. Vandewalle, 'Hardware Implementation of an Elliptic Curve Processor over GF(p),' Proceedings of the Application-Specific Systems, Architectures, and Processor, IEEE 2003
  6. E.Savas, A. F. Tenca and C. K. Koc, 'A Scalable and Unified Multiplier Architecture for Finite Fields GF(p) and $GF(2^m)$,' Workshop on Cryptographic Hardware and Embedded Systems(CHES), pp. 281-282. Aug. 2000
  7. Israel Koren, Computer Arithmetic Algorithms (2nd edition), 2002