인수분해 공식과 정규기저를 이용한 GF(2$^{m}$ ) 상의 고속 곱셈 역원 연산 알고리즘

A Fast Algorithm for Computing Multiplicative Inverses in GF(2$^{m}$) using Factorization Formula and Normal Basis

  • 장용희 (한국항공대학교 정보통신공학과 대학원) ;
  • 권용진 (한국항공대학교 전자ㆍ정보통신ㆍ컴퓨터공학부)
  • 발행 : 2003.06.01

초록

Diffie-Hellman 키분배 시스템과 타원곡선 암호시스템과 같은 공개키 기반 암호시스템은 GF(2$^{m}$ ) 상에서 정의된 연산, 즉 덧셈, 뺄셈, 곱셈 및 곱셈 역원 연산을 기반으로 구축되며, 이들 암호시스템을 효율적으로 구현하기 위해서는 위 연산들을 고속으로 계산하는 것이 중요하다. 그 중에서 곱셈 역원이 가장 time-consuming하여 많은 연구 대상이 되고 있다. Format 정리에 의해$\beta$$\in$GF(2$^{m}$ )의 곱셈 역원 $\beta$$^{-1}$$\beta$$^{-1}$=$\beta$$^{2}$sup m/-2/이므로 GF(2$^{m}$ )의 임의의 원소에 대해 곱셈 역원을 고속으로 계산하기 위해서는, 2$^{m}$ -2을 효율적으로 분해하여 곱셈 횟수를 감소시키는 것이 가장 중요하며, 이와 관련된 알고리즘들이 많이 제안되어 왔다 이 중 Itoh와 Tsujii가 제안한 알고리즘[2]은 정규기저를 사용해서 필요한 곱셈 횟수를 O(log m)까지 감소시켰으며, 또한 이 알고리즘을 향상시킨 몇몇 알고리즘들이 제안되었지만, 분해과정이 복잡하다는 등의 단점이 있다[3,5]. 본 논문에서는 실제 어플리케이션에서 주로 많이 사용되는 m=2$^{n}$ 인 경우에, 인수분해 공식 x$^3$-y$^3$=(x-y)(x$^2$+xy+y$^2$)와 정규기저론 이용해서 곱셈 역원을 고속으로 계산하는 알고리즘을 제안한다. 본 논문의 알고리즘은 곱셈 횟수가 Itoh와 Tsujii가 제안한 알고리즘 보다 적으며, 2$^{m}$ -2의 분해가 기존의 알고리즘 보다 간단하다.

The public-key cryptosystems such as Diffie-Hellman Key Distribution and Elliptical Curve Cryptosystems are built on the basis of the operations defined in GF(2$^{m}$ ):addition, subtraction, multiplication and multiplicative inversion. It is important that these operations should be computed at high speed in order to implement these cryptosystems efficiently. Among those operations, as being the most time-consuming, multiplicative inversion has become the object of lots of investigation Formant's theorem says $\beta$$^{-1}$ =$\beta$$^{2}$sup m/-2/, where $\beta$$^{-1}$ is the multiplicative inverse of $\beta$$\in$GF(2$^{m}$ ). Therefore, to compute the multiplicative inverse of arbitrary elements of GF(2$^{m}$ ), it is most important to reduce the number of times of multiplication by decomposing 2$^{m}$ -2 efficiently. Among many algorithms relevant to the subject, the algorithm proposed by Itoh and Tsujii[2] has reduced the required number of times of multiplication to O(log m) by using normal basis. Furthermore, a few papers have presented algorithms improving the Itoh and Tsujii's. However they have some demerits such as complicated decomposition processes[3,5]. In this paper, in the case of 2$^{m}$ -2, which is mainly used in practical applications, an efficient algorithm is proposed for computing the multiplicative inverse at high speed by using both the factorization formula x$^3$-y$^3$=(x-y)(x$^2$+xy+y$^2$) and normal basis. The number of times of multiplication of the algorithm is smaller than that of the algorithm proposed by Itoh and Tsujii. Also the algorithm decomposes 2$^{m}$ -2 more simply than other proposed algorithms.

키워드

참고문헌

  1. C.C. Wang, T.K. Truong, H.M. Shao, L.J. Deutsch, J.K. Omura, and I.S. Reed, 'VLSI Architecture for Computing Multiplications and Inverses in $GF(2^m)$,' IEEE Trans. on Computers, vol. 34, no. 8, pp. 709-716, Aug. 1985 https://doi.org/10.1109/TC.1985.1676616
  2. T. Itoh and S. Tsujii, 'A Fast Algorithm for Computing Multiplicative Inverses in $GF(2^m)$ Using Normal Basis,' Information and Computing, vol. 78, pp. 171-177, 1988 https://doi.org/10.1016/0890-5401(88)90024-7
  3. T. Chang, E. Lu, Y. Lee, Y. Leu, and H. Shyu, 'Two Algorithms for Computing Multiplicative Inverses in $GF(2^m)$ Using Normal Basis,' accepted by Information Processing Letters
  4. L. Gao and G. E. Sobelman, 'Improved VLSI Designs for Multiplication and Inversion in $GF(2^m)$ over Normal Basis,' Proceeding of ASIC/SOC Conference 2000, pp. 97-101 https://doi.org/10.1109/ASIC.2000.880683
  5. N. Takagi, J. Yoshiki, and K. Takagi, 'A Fast Algorithm for Multiplicative Inversion in $GF(2^m)$ Using Normal Basis,' IEEE Trans. on Computers, vol. 50, No. 5, pp. 394-398, May 2001 https://doi.org/10.1109/12.926155