DOI QR코드

DOI QR Code

Efficient Formulas for Cube roots in $F_{3^m}$ for Pairing Cryptography

페어링 암호 연산을 위한 $F_{3^m}$에서의 효율적인 세제곱근 연산 방법

  • Received : 2010.07.09
  • Accepted : 2010.11.03
  • Published : 2011.04.30

Abstract

Evaluation of cube roots in characteristic three finite fields is required for Tate (or modified Tate) pairing computation. The Hamming weights (the number of nonzero coefficients) in the polynomial representations of $x^{1/3}$ and $x^{2/3}$ determine the efficiency of cube roots computation, where $F_{3^m}$is represented as $F_3[x]/(f)$ and $f(x)=x^m+ax^k+b{\in}F_3[x]$ (a, $b{\in}F_3$) is an irreducible trinomial. O. Ahmadi et al. determined the Hamming weights of $x^{1/3}$ and $x^{2/3}$ for all irreducible trinomials. In this paper, we present formulas for cube roots in $F_{3^m}$ using the shifted polynomial basis(SPB). Moreover, we provide the suitable shifted polynomial basis bring no further modular reduction process.

$F_{3^m}$에서의 Tate 페어링 또는 ${\eta}_T$ 페어링 알고리즘 계산을 위하여 효율적인 세제곱근 계산은 매우 중요하다. $x^{1/3}$의 다항식 표현 중 0이 아닌 계수들의 개수를 $x^{1/3}$의 헤밍웨이트라 할 때, 이 헤밍웨이트가 세제곱근 연산의 효율성을 결정하게 된다. O. Ahmadi 등은 $f(x)=x^m+ax^k+b$ (a, $b{\in}F_3$)가 $F_3[x]$의 삼항 기약다항식이라 할 때, $F_{3^m}=F_3[x]/(f)$을 생성하는 모든 삼항 기약다항식에 대하여 $x^{1/3}$의 헤밍웨이트를 계산하였다. 본 논문에서는 Shifted Polynomial Basis(SPB)가 기존의 결과보다 $x^{1/3}$의 헤밍웨이트를 낮출 수 있음을 보이며, 모듈로 감산 연산이 필요 없는 가장 적합한 SPB를 제공한다.

Keywords

I. 서론

페어링 암호 기반의 암호 프로토콜 구현을 위하여 F3m위의 초특이 타원곡선이 매우 적합한 것으로 연구되었고 이에따라 F3m에서의 효율적인 유한체 연산에 대한 연구가 최근 주목을 받고 있다[2][7]. 특히 초특이 타원곡선위의 페어링 암호 알고리즘 중 F3m위에서의 ηr 페어링의 계산을 위하여 세제곱근 연산이 필요하다[3][7]. f(x) = xm +axk +b (a, b∈F3 )가 F3 [x]의 삼항 기약다항식(Irreducible trinomial)이라 할때, F3m = F3 [x]/(f)라 하자. F3m에서의 세제곱근 연산을 살펴보도록 한다. 우선 임의의 자연수 u에 대하여 m = 3u라 하자. (m≡±1 (mod 3)인 경우도 유사하게 적용할 수 있다.) 그러면 C ∈F3 m에 대하여

#

이고 이 식을 이용하여 C의 세제곱 연산식은 아래의 식 (1)과 같다.

#(1)

x1/3과 x2/3가 사전계산 되었다면, 식 (1)을 이용하여 단지 두 번의 다항식 곱셈만으로 세제곱근을 계산할 수 있다. 이 다항식 곱셈을 할 때, x1/3과 x2/3의다항식 표현이 작은 개수의 항을 갖는다면 보다 효율적으로 연산이 이루어진다. m≡k (mod 3)인 경우 x1/3과 x2/3의 다항식 표현이 매우 작은 개수의 항을 가지므로 가장 효율적으로 세제곱 연산을 할 수 있다[5]. 그러나 m≡k (mod 3)인 형태의 삼항 기약다항식 f(x) = xm +axk +b은 굉장히 드물게 존재한다. 따라서 m≠k (mod 3)인 형태의 삼항 기약다항식에 대해서 세제곱근을 구할 수 있는 방법에 대한 연구가 필요하게 되었고 O. Ahmadi 등은 이 경우에 대하여 x1/3의 다항식 표현 중 0 이 아닌 계수들의 개수를 x1/3의 헤밍웨이트라 할 때, 이 헤밍웨이트가 세제곱근 연산의 효율성을 결정하게 된다. 세제곱근 연산식의 x1/3과 x2/3의 헤밍웨이트를 계산하였다[4].

본 논문에서는 효율적인 세제곱근 연산을 위하여기존 결과보다도 x1/3과 x2/3의 헤밍웨이트를 낮추도록 한다. Polynomial Basis(PB)의 변형된 형태인 SPB는 2005년 GF(2n )에서의 곱셈기 설계를 위하여 제안되었다[1]. 본 논문에서는 SPB를 기저로 한 x1/3과 x2/3의 다항식 표현이 작은 개수의 항을 갖는다는 것을 발견하였다. 따라서 SPB를 기저로 하여 x1/3과 x2/3의 헤밍웨이트를 계산한다. 또한, 본 논문에서는 가능한 모든 삼항 기약다항식에 대하여 모듈로 감산 연산이 필요없는 SPB를 제공한다. 따라서 본 논문의 방법으로 [4]의 방법보다 훨씬 효율적으로 세제곱근을 연산할 수 있다. 앞으로 x1/3의 헤밍웨이트를 wt(x1/3 )로 정의한다.

본 논문의 구성은 다음과 같다. 2 장에서는 기존 결과들을 살펴보고, 3 장에서 SPB를 기저로 하여 wt(x1/3 )과 wt(x2/3 )를 계산한 후, 가장 적합한 SPB를 찾는다. 4장에서 비교와 결론으로 끝을 맺는다.

II. 관련 연구

본 장에서는 관련 연구 결과를 설명한다. 관련 연구로는 [4, 5]가 유일하다.

정리 1.

[5] f(x) = xm +axk +b (a, b∈F3 )가 F3위의 삼항 기약다항식이고 m≡k (mod 3)이라 하면

#

정리 1을 통하여 m≡k (mod 3)인 경우, x1/3과 x2/3의 다항식 표현이 매우 작은 개수의 항을 가지는 것을 알 수 있다.

정리 2.

[4] f(x) = xm +axk +b (a, b∈F3 )가 F3위의 삼항 기약다항식이고 m≡-k (mod 3)이라 하면 wt(x1/3 )∈{(m/e)-2, (m/e)-1, m/e}. 이 때, e = gcd(m, k).

m≡-k (mod 3)인 경우, O. Ahmadi 등은 x1/3 = #라 할 때, h(x) =#를 만족하는 다항식 g(x)와 h(x)를 찾도록 하였다. 이로써 x1/3의 다항식 표현을 찾고 wt(x1/3 )을 계산하였다. SPB는 모듈로 감산 연산을 줄이기 위해 이용하는 것이기 때문에 이 경우에는 PB를 기저로 한 wt(x1/3 )과 같은 결과를 갖는다. 아래의 정리들은 [4]의 결과들이며 본 논문에서는 아래의 정리들에 해당 하는 경우에 대하여 보다 낮은 wt(x1/3 )과 wt(x2/3 )을 제공한다.

정리 3.

[4] f(x) = xm +axk +b (a, b∈F3 )가 F3위의 삼항 기약다항식이고 m≡0 (mod 3), k≡1 (mod 3)이라하면

#

정리 4.

[4] f(x) = xm +axk +b (a, b∈F3)가 F3위의 삼항 기약다항식이고 m≡0 (mod 3), k≡-1(mod 3)이라 하면 wt(x1/3) ≤ 5 이다.

정리 5.

[4] f(x) = xm +axk +b (a, b∈F3)가 F3위의 삼항 기약다항식이라 하면

#

이 때, p = ⌈(m-1)/3k⌉+⌈(m-1-k)/3k⌉, q= ⌈(2m-1)/3k⌉+⌈(2m-1-k)/3k⌉+⌈(2m-1-2k)/3k⌉.

정리 5로부터 k가 클수록 낮은 wt(x1/3 )를 얻을 수 있음을 알 수 있다. 그러나 큰 k를 갖는 삼항 기약다항식은 일반적으로 모듈러 감산 연산이 많이 필요하게 된다. 따라서 정리 5의 경우에 낮은 wt(x1/3 )를 얻는다 해도 추가적인 모듈로 감산이 많아 질 수 있다.

III. 적합한 SPB 계산

본 장에서는 SPB를 이용하여 효율적으로 세제곱근을 연산할 수 있는 방법을 제안한다. 또한, m≠±k(mod 3)인 경우에 대하여 wt(x1/3 )과 wt(x2/3 )을 계산하고 모듈로 감산 연산이 필요없는 가장 적합한 SPB를 찾는다.

정의 1.

r을 임의의 정수라 하고 집합 S = {xi | 0≤i≤m-1}를 F3위의 PB라 할 때, 집합 x- r S := {xi - r | 0≤i≤m-1}을 S의 SPB라 한다.

기존 결과 [4]에서는 추가적인 모듈로 감산 연산이 필요했다. 예를 들어, 정리 2의 m≡0 (mod 3), k≡1 (mod 3)인 삼항 기약다항식에 대하여 식 (1)에서 x1/3의 다항식 표현은#와 곱해져야한다. 그러면 x1/3#의 최대 차수는 4u-v-1가 되고 4u-v-1 >3u(= m)이므로 추가적인 모듈로 감산 연산이 필요하게 된다. 다른 모든 경우에 대해서도 같은 이유로 모듈로 감산 연산이 필요하다. 따라서 본 논문에서는 [4]에서와 달리 C1/3계산 시 모듈로 감산 연산이 필요 없도록 정의 1의 r을 결정한다. 이와 같은 r을 γ로 정의하고 식 전개의 편의를 위하여 임의의 정수 t와 Θ∈{0, 1, 2}에 대하여 r 대신에 3t+Θ을 대입 한다.

3.1 m≡0 (mod 3)인 경우

SPB를 기저로 하여 C를 간결하게 표현하기 위하여 아래의 함수를 정의한다.

#

식 (1)과 정의 1로부터 SPB를 기저로 한 C의 다항식 표현은 다음과 같다.

#(2)

따라서 식 (2)로부터 C의 세제곱근 연산식은 아래와 같다.

#

이제 SPB를 기저로 하여 wt(x1/3 )과 wt(x2/3 )을 계산하고 각 경우에 대하여 γ을 결정한다. 본 논문에서는 wt(x1/3 )를 최소화 하는데 초점을 맞추고 있으므로 PB에 속하지 않는 항에 대하여 허용한다. 그리고 나서 결과적으로 모듈로 감산이 필요 없는 적합한 SPB를 찾는다.

정리 6.

f(x) = xm +axk +b (a, b∈F3 )가 F3위의 삼항 기약다항식이고 m≡0 (mod 3), k≡1 (mod 3)이라하면

#

증명. 임의의 양수 u와 v에 대하여(u >v) m = 3u 이고 k = 3v+1라 하자. F3m에서 x3u +ax3v + 1 +b=0 이므로 ax3v ∙x =-x3u -b 이다. 따라서

x1/3 =-axu - v -abx- v =-a(xu - v +bx- v ).       (3)

또한

x2/3 = (-a(xu - v +bx- v ))2 = x2u - 2v +x- 2v -bxu - 2v.       (4)

따름정리 1.

f(x) = xm +axk +b (a, b∈F3 )가 F3위의 삼항 기약다항식이고 m≡0 (mod 3), k≡1 (mod 3)이라하면 γ∈{3v, 3v+1}.

증명. 식 (3)과 (4)로부터 다음의 식 (5)를 얻을 수 있다.

#(5)

식 (5)로부터 C1/3의 최소 차수는 -2v-σ2 -t이고 최대 차수는 3u-2v-1-σ2 -t임을 알 수 있다. 그러므로 식 (6)을 만족하면 식 (5)에서 더 이상의 모듈로 감산 연산은 필요하지 않게 된다.

#(6)

식 (6)으로부터 t = (2v+σ2 -Θ)/2를 구할 수 있고, 이 때, (t, Θ) 쌍은 (v, 0)과 (v, 1)가 될 수 있다. 그러므로 γ은 3v나 3v+1이 된다.

정리 7.

f(x) = xm +axk +b (a, b∈F3 )가 F3위의 삼항 기약다항식이고 m≡0 (mod 3), k≡-1 (mod 3)이라 하면

#

증명. 임의의 양수 u와 v에 대하여(u≥v) m = 3u이고 k= 3v-1라 하자. F3m에서 x3u +ax3v - 1 +b=0이므로 ax3v ∙x- 1 =-x3u -b이다. 따라서

x- 1/3 =-a(xu - v +bx- v ).

그러므로

x2/3 = x- 1/3 ∙x =-a(xu - v + 1 +bx- v + 1 ).       (7)

식 (7)로부터

x1/3 ∙x = (-a(xu - v + 1 +bx- v + 1 ))2

= x2u - 2v + 2 +x- 2v + 2 -bxu - 2v + 2

가 된다. 그러므로

x1/3 = x2u - 2v + 1 +x- 2v + 1 -bxu - 2v + 1 .       (8)

따름정리 2.

f(x) = xm +axk +b (a, b∈F3 )가 F3위의 삼항 기약다항식이고 m≡0 (mod 3), k≡-1 (mod 3)이라 하면 γ∈{3v-2, 3v-1}.

증명. 식 (7)과 (8)로부터 다음의 식 (9)를 얻을 수 있다.

#(9)

식 (9)로부터 C1/3의 최소 차수는 -2v+1+σ1 -t이고 최대 차수는 3u-2v-σ1 -t임을 알 수 있다. 그러므로 식 (10)을 만족하면 식 (9)에서 더 이상의 모듈로 감산 연산은 필요하지 않게 된다.

#(10)

식 (10)으로부터 t = (2v-1+σ1 -Θ)/2를 구할 수 있고, 이 때, (t, Θ) 쌍은 (v-1, 1)과 (v-1, 2)가 될 수 있다. 그러므로 γ은 3v-2나 3v-1이 된다.

3.2 k≡0 (mod 3)인 경우

먼저 m≡1 (mod 3), k≡0 (mod 3)인 경우를 고려해 보도록 한다. 임의의 양수 u에 대하여 m = 3u+1라 하면 C∈F3m는 다음과 같이 표현된다.

#

C의 간략한 표현을 위하여 아래와 같이 정의한다.

#

이를 이용하여 SPB를 기저로 한 C를 표현하면 식 (11)과 같이 쓸 수 있다.

#(11)

식 (11)로부터 아래와 같이 C1/3을 구할 수 있다.

#

정리 8.

f(x) = xm +axk +b (a, b∈F3 )가 F3위의 삼항 기약다항식이고 m≡1 (mod 3), k≡0 (mod 3)이라 하면

#

증명. 임의의 양수 u와 v에 대하여(u≥v) m = 3u+1이고 k= 3v라 하자. F3m에서 x3u + 1+ax3v +b= 0 이므로-x3u ∙x = ax3v +b 이다. 따라서

x1/3 =-axv - u -bx- u.       (12)

또한

x2/3 = (-axv - u -bx- u )2 = x2v - 2u +x- 2u -abxv - 2u.       (13)

따름정리 3.

f(x) = xm +axk +b (a, b∈F3 )가 F3위의 삼항 기약다항식이고 m≡1 (mod 3), k≡0 (mod 3)이라 하면 γ∈{3u, 3u+1}.

증명. 식 (12)과 (13)로부터 다음의 식 (14)를 얻을 수 있다.

#(14)

식 (14)로부터 C1/3의 최소 차수는 -2u-σ2 -t이고 최대 차수는 u-σo -t임을 알 수 있다. 그러므로 식 (15)을 만족하면 식 (14)에서 더 이상의 모듈로 감산 연산은 필요하지 않게 된다.

#(15)

식 (15)으로부터 (2u+σ2 -Θ)/2≤t≤(2u+σo-Θ)/2를 구할 수 있고, 이 때, (t, Θ) 쌍은 (u, 0)과 (u, 1)가 될 수 있다. 그러므로 γ은 3u나 3u+1 된다.

다음으로 m≡-1 (mod 3), k≡0 (mod 3)인 경우를 고려해보도록 한다. 임의의 양수 u에 대하여 m = 3u-1라 하면 C∈F3m는 다음과 같이 표현된다.

#

이를 이용하여 SPB를 기저로 한 C를 표현하면 식 (16)과 같이 쓸 수 있다.

#(16)

식 (16)로부터 아래와 같이 C1/3을 구할 수 있다.

#

[표 1] x1/3와 x2/3의 헤밍웨이트 비교표

α: p = ⌈(m-1)/3k⌉+⌈(m-1-k)/3k⌉,β : q = ⌈(2m-1)/3k⌉+⌈(2m-1-k)/3k⌉+⌈(2m-1-2k)/3k⌉.

 

정리 9.

f(x) = xm +axk +b (a, b∈F3 )가 F3위의 삼항 기약다항식이고 m≡-1 (mod 3), k≡0(mod 3) 이라 하면

#

증명. 임의의 양수 u와 v에 대하여(u >v) m = 3u-1이고 k= 3v라 하자. F3m에서 x3u - 1 +ax3v +b= 0이므로

x3u ∙x- 1 =-ax3v -b

이다. 따라서 x- 1/3 =-axv - u -bx- u.

그러므로

x2/3 = x- 1/3 ∙x =-a(xv - u + 1 +bx- u + 1 ).       (17)

식 (17)로부터

x1/3 ∙x = (-a(xv - u + 1 +bx- u + 1 ))2

= x2v - 2u + 2 +x- 2u + 2 -bxv - 2u + 2

가 된다. 그러므로

x1/3 = x2v - 2u + 1 +x- 2u + 1 -bxv - 2u + 1 .       (18)

따름정리 4.

f(x) = xm +axk +b (a, b∈F3 )가 F3위의 삼항 기약다항식이고 m≡-1 (mod 3), k≡0 (mod 3) 이라 하면 γ∈{3u-2, 3u-1}.

증명. 식 (17)과 (18)로부터 다음의 식 (19)를 얻을 수 있다.

#(19)

식 (19)로부터 C1/3의 최소 차수는 -2u+1-σ1 -t 이고 최대 차수는 u-1-σ1 -t임을 알 수 있다. 그러므로 식 (20)을 만족하면 식 (19)에서 더 이상의 모듈로 감산 연산은 필요하지 않게 된다.

#(20)

식 (20)으로부터 t = (2u+1+σ1 -Θ)/2를 구할 수 있고, 이 때, (t, Θ) 쌍은 (u-1, 1)과 (u-1, 2)가 될 수 있다. 그러므로 γ은 3u-1나 3u-2이 된다.

V. 비교 및 결론

본 논문에서는 SPB를 기저로 하여 wt(x1/3 )와 wt(x2/3 )를 낮출 수 있음을 보였다. [표 1]은 기존 결과 [4]와 본 논문의 결과를 비교한 표이다. [표 2]만으로는 PB를 기저로 한 wt(x1/3 )와 SPB를 기저로 한 wt(x1/3 )를 비교하는 것이 쉽지 않으므로, m∈[2, 56] 인 삼항 기약다항식에 대하여 이들을 비교하여 [표 2]에 표현하였다. PB를 기저로 한 wt(x1/3 )와 비교하여 보다 좋은 결과를 굵게 표현하였다. [표 2]를 통하여기존 결과 [4] 보다 SPB를 기저로 한 wt(x1/3 )가 훨씬 효율적임을 알 수 있다. 또한, 3장의 따름정리에서 제공한 γ를 적용한 SPB를 기저로 하면 더 이상의 모듈로 감산 연산은 필요없게 된다.

[표 2] 2 ≤m ≤ 56이고 m≠±k (mod 3)인 삼항 기약다항식의 wt(x1/3 ) 비교표

References

  1. H. Fan and Y. Dai, "Fast Bit-Parallel $GF(2^{n})$Multiplier for All Trinomials," IEEE Transactions on Computers, vol.54, no. 4, pp.485-490, April 2005. https://doi.org/10.1109/TC.2005.64
  2. I. Duursma and H. S. Lee, "Tate pairing implementation for hyperelliptic curves $y^{2}=x^{p}-x+d$," Advances in Cryptology. ASIACRYPT 2003, Lecture Notes in Computer Science, vol. 2894, Springer, Berlin, pp. 111-123, 2003.
  3. J. Beuchat, N. Brisebarre, J. Detrey, E. Okamoto, M. Shirase and T. Takagi. "Algorithms and arithmetic operators for computing the $n_{t}$ pairing in characteristic three," IEEE Transactions on Computers, Special Section on Special-Purpose Hardware for Cryptography and Cryptanalysis,vol. 57, no. 11, IEEE Computer Society, November 2008.
  4. O. Ahmadi, D. Hankerson and A. Menezes, "Formulas for cube roots in $F_{3^{m}}$," Elsevier Discrete Applied Mathematics 155, pp.260-270, 2007. https://doi.org/10.1016/j.dam.2006.06.004
  5. P. S. L. M. Barreto, "A note on efficient computation of cube roots in characteristic 3," Cryptology ePrint Archive: Report 2004/305, 2004.
  6. P. S. L. M. Barreto, H. Y. Kim, B. Lynn and M. Scott, "Efficient algorithms for pairing-based cryptosystems," Advances in Cryptology. CRYPTO 2002, Lecture Notes in Computer Science, vol. 2442, Springer, Berlin, pp. 354-368, 2002.
  7. P. S. L. M. Barreto, S. D. Galbraith, C. O hἙigeartaigh and M. Scott, "Efficient pairing computation on supersingular abelian varieties," Des. Codes Cryptography 42, pp. 239-271, 2007. https://doi.org/10.1007/s10623-006-9033-6