Elliptic Curve Cryptography Algorithms for IC Card

IC 카드용 타원곡선 암호 알고리즘

  • 이택희 (호남대학교 정보통신공학과) ;
  • 서창호 (공주대학교 응용수학) ;
  • 김영철 (전남대학교 전자컴퓨터정보통신공학) ;
  • 이태훈 (광주대학교 컴퓨터전자통신학) ;
  • 윤보현 (목원대학교 컴퓨터교육학과)
  • Published : 2004.08.01

Abstract

This paper describes implementations and test results of Elliptic Curve Cryptography (ECC) and Elliptic Curve KCDSA(ECKCDSA) algorithms based on Java card. 163-Bit ECC guarantees as secure as 1024-Bit Rivest-Shamir-Adleman (RSA) public key algorithm, which has been frequently used until now. According to our test results, 163-bit ECC processing time is about five times fast compared with 1024-bit RSA and amount of resource usages of ECC is smaller than RSA. Therefore, ECC is more appropriate for use on secure devices such as smart cards and wireless devices with constrained computational power consumption and small memory resources.

본 논문에서는 IC 카드 용 ECC(Elliptic Curve Cryptography) 및 ECKCDSA(Elliptic Curve KCDSA) 알고리즘 설계, 구현 및 테스트 결과에 대해 기술하고 있다. 타원곡선 암호는 160 비트의 키 길이를 이용하여 현재 사용되는 공개키 암호 알고리즘(RSA)과 동등한 안전도를 제공해준다. 또한. 짧은 키 길이를 사용하기 때문에 작은 메모리와 처리 능력이 제한된 IC 카드나 이동 통신 등과 같은 분야에서 매우 유용하게 사용될 수 있으며, ECC나 ECKCDSA를 자바 카드 상에 구현하여 사용함으로써 사용자들은 보다 강화된 보안성과 안전성을 제공받을 수 있을 것이다.

Keywords

References

  1. http://java.sun.com/products/javacard
  2. R.L. Rivest, A. Shamir, and L.M. Adleman, 'A method for obtaining digital ignatures and publickey cryptosystems,' Communications of the ACM, volume 21, pp.120-126, February 1978 https://doi.org/10.1145/359340.359342
  3. Certicom research, The Elliptic Curve Cryptosystem, Certicom, April 1997
  4. Certicom research, 'SEC 2 : Recommended Elliptic Curve Domain Parameters,' October 1999
  5. Chen, Zhiqun, Java Card Technology for Smart Cards, Addison-wesley, 2002.
  6. Alfred J. Menezes, Paul C. van Oorschot, Scott A. Vanstone, Handbook of Applied Cryptography, CRC press, 1997
  7. Richard Schroeppel, Hilarie Orman, Sean O'Malley, 'Fast Key Exchange with Elliptic Curve Systems,' TR-95-03(Tucson, AZ: University of Arizona), Computer Sciences Department, 1995
  8. Michael Caentsch, 'Java Card-From Hype to Reality,' IEEE Concurrency, pp.36-43, Oct.-Dec., 1999
  9. Sun Microsystems, Inc., Java Card Applet Developers Guide, August 30, 1999
  10. Sun Microsystems, Inc., Java $Card^{TM}$ 2.1 Application Programming Interface, June 7, 1999
  11. Sun MicroSystems, Inc. Java $Card^{TM}$ 2.1.2 Development Kit User's Guide, 2002
  12. Tommi Elo, 'A Software Implementation of ECDSA on a Java Smart Card,' Master's Thesis, Helsinki University of Technology, March 2000
  13. Sun Microsystems, Inc., Java Card Applet Developers Guide, August 30, 1999
  14. IEEE P1363a: Standard Specifications for PublicKey Cryptography: Additional Techniques Draft 9, 2001
  15. Darrel Hankerson, Julio Lopez Hernandez, Alfred Menezes, 'Software Implementation of Elliptic Curve Cryptography over Binary Fields,' CHES 2000, pp.1-24. 2000
  16. N. Koblitz, Elliptic curve cryptosystems, Mathematics of Computation, N.. 48, pp. 203-200, 1987
  17. W. Rnakl, W. Effing, Smart Card Handbook, JOHN WILEY & SONS, 1999