KR101213399B1 - 비트-병렬 다항식 기저 곱셈 방법 - Google Patents

비트-병렬 다항식 기저 곱셈 방법 Download PDF

Info

Publication number
KR101213399B1
KR101213399B1 KR1020090085148A KR20090085148A KR101213399B1 KR 101213399 B1 KR101213399 B1 KR 101213399B1 KR 1020090085148 A KR1020090085148 A KR 1020090085148A KR 20090085148 A KR20090085148 A KR 20090085148A KR 101213399 B1 KR101213399 B1 KR 101213399B1
Authority
KR
South Korea
Prior art keywords
polynomial
bit
case
iterative
equation
Prior art date
Application number
KR1020090085148A
Other languages
English (en)
Other versions
KR20110027175A (ko
Inventor
장남수
김창한
홍석희
김현민
Original Assignee
고려대학교 산학협력단
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 고려대학교 산학협력단 filed Critical 고려대학교 산학협력단
Priority to KR1020090085148A priority Critical patent/KR101213399B1/ko
Publication of KR20110027175A publication Critical patent/KR20110027175A/ko
Application granted granted Critical
Publication of KR101213399B1 publication Critical patent/KR101213399B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/38Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation
    • G06F7/48Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation using non-contact-making devices, e.g. tube, solid state device; using unspecified devices
    • G06F7/52Multiplying; Dividing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/38Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation
    • G06F7/48Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation using non-contact-making devices, e.g. tube, solid state device; using unspecified devices
    • G06F7/52Multiplying; Dividing
    • G06F7/523Multiplying only
    • G06F7/53Multiplying only in parallel-parallel fashion, i.e. both operands being entered in parallel

Landscapes

  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Computational Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Pure & Applied Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Error Detection And Correction (AREA)

Abstract

본 발명은 유한체(Finite Field)상에서 비트-병렬 다항식 기저 곱셈을 위한 기약다항식(irreducible polynomial)으로서 반복형 기약다항식(RFP: Repeated Form Polynomial)을 이용하는 비트-병렬 다항식 기저 곱셈 방법에 관한 것이다.
본 명세서에서 개시하는 비트-병렬 다항식 기저 곱셈 방법은 유한체(finite field)상에서의 비트-병렬 다항식 기저 곱셈을 위한 기약다항식 f(x)가
Figure 112009503508486-pat00030
, deg(l(x)) ≤ v, deg(p(x)) < s을 만족하는지의 여부로 상기 f(x)가 반복형 기약다항식임을 판단하여 비트-병렬 다항식 기저 곱셈이 이루어진다. f(x)가 반복형 기약다항식임을 판단하는 것은 (a)상기 유한체상의 임의의 다항식
Figure 112009503508486-pat00031
에 대해 xs = q(x)p(x) + 1을 만족하는 최소의 양의 정수 s와 상기 p(x)가 존재하는지 판단하는 단계; (b)상기 p(x)가 존재하는 경우, 상기 q(x)와 상기 유한체상의 임의의 다항식 h(x)에 대하여
Figure 112009503508486-pat00032
을 만족하는 최소의 양의 정수 n0와 다항식
Figure 112009503508486-pat00033
가 존재하는지 판단하는 단계; 및 (c)상기 n0와 상기
Figure 112009503508486-pat00034
가 존재하는 경우, 상기 f(x)의 차수(degree) n에 대하여 xn+r = q(x)f(x) + h(x)를 만족하는지 판단하는 단계를 포함하여 이루어진다.

Description

비트-병렬 다항식 기저 곱셈 방법{Method of bit-parallel polynomial basis multiplication}
본 발명은 비트-병렬 다항식 기저 곱셈 방법에 관한 것으로, 보다 상세하게는 유한체(Finite Field)상에서 비트-병렬 다항식 기저 곱셈을 위한 기약다항식(irreducible polynomial)으로서 반복형 기약다항식(RFP: Repeated Form Polynomial)을 이용하는 비트-병렬 다항식 기저 곱셈 방법에 관한 것이다.
암호 시스템에 적용되는 유한체에서 주로 사용되는 기약다항식은 All One Polynomial(AOP), Equally Spaced Polynomial(ESP), 삼항 기약다항식(Trinomial), 오항 기약다항식(Pentanomial)이 있다. 유한체의 특정 차수(degree)에서 비트-병렬 다항식 기저 곱셈의 효율성(곱셈 소요시간 및 곱셈에 필요한 게이트 수)을 고려한 기약다항식의 순서는 위와 같다. 그러나 암호 알고리즘에서 사용되는 유한체의 차수는 대부분 소수(prime number)이므로 AOP와 ESP는 거의 사용되지 않으며, 대부분 Trinomial과 Pentanomial이 사용된다.
유한체의 차수가 1000 이하인 것들 중 443개의 차수에 대해서는 AOP, ESP, Trinomial을 사용할 수 없고 Pentanomial만 사용할 수 있었는데, Pentanomial을 사 용함으로써 야기되는 곱셈의 비효율성을 개선하기 위해 Pentanomial 아닌 세 가지 종류의 기약다항식이 제안된 바 있다(H. Wu, "Bit-Parallel polynomial Basis Multiplier for New Classes of Finite Fields," IEEE Trans. Computers, vol. 57, no. 8). 그러나 제안된 기약다항식은 Pentanomial보다 효율적이지만 상기 443개의 차수 중 10개의 차수에 대해서만 사용할 수 있다. 따라서 나머지 433개의 차수에 대해서는 여전히 비효율적인 Pentanomial을 사용할 수밖에 없다. 특히 이 433개의 차수를 갖는 유한체(다항식)은 암호 시스템에서 많이 활용되는 차수가 많이 포함되어 있는바, 상기와 같은 문제는 결국 암호 시스템의 효율적 구현에 장애가 된다.
본 발명이 해결하고자 하는 과제는 유한체의 차수가 1,000 이하인 차수 중에서 Pentanomial을 사용하는 경우보다 더 효율적이고 아울러 상기 443개의 차수에 사용될 수 있는 반복형 기약다항식을 이용한 비트-병렬 다항식 기저 곱셈 방법을 제공하는 것이다.
상기와 같은 과제를 해결하기 위해 본 명세서에서 개시하는 비트-병렬 다항식 기저 곱셈 방법에 의하면
유한체(finite field)상에서의 비트-병렬 다항식 기저 곱셈을 위한 기약다항식 f(x)가
Figure 112009503508486-pat00035
, deg(l(x)) ≤ v, deg(p(x)) < s을 만족하는 지의 여부로 상기 f(x)가 반복형 기약다항식임을 판단하여 비트-병렬 다항식 기저 곱셈이 이루어진다. f(x)가 반복형 기약다항식임을 판단하는 것은 (a)상기 유한체상의 임의의 다항식
Figure 112009503508486-pat00036
에 대해 xs = q(x)p(x) + 1을 만족하는 최소의 양의 정수 s와 상기 p(x)가 존재하는지 판단하는 단계; (b)상기 p(x)가 존재하는 경우, 상기 q(x)와 상기 유한체상의 임의의 다항식 h(x)에 대하여
Figure 112009503508486-pat00037
을 만족하는 최소의 양의 정수 n0와 다항식
Figure 112009503508486-pat00038
가 존재하는지 판단하는 단계; 및 (c)상기 n0와 상기
Figure 112009503508486-pat00039
가 존재하는 경우, 상기 f(x)의 차수(degree) n에 대하여 xn+r = q(x)f(x) + h(x)를 만족하는지 판단하는 단계를 포함하여 이루어진다.
이때, 상기 r은 1로 하고, 상기 h(x)의 0이 아닌 항의 개수를 3으로 하는 것이 본 발명의 과제를 해결함에 바람직하다. 또는 상기 r은 2 이상 8 이하로 하고, 상기 h(x)의 0이 아닌 항의 개수를 2 또는 3으로 하는 것이 본 발명의 과제를 해결함에 바람직하다.
본 발명에서 제안하는 반복형 기약다항식을 이용한 비트-병렬 다항식 기저 곱셈 방법에 의하면, 특히 유한체의 차수가 1000 이하의 차수 중 AOP, ESP, Trinomial을 사용할 수 없는 443개의 차수에 대해서도 모두 적용가능 하므로, 이들 443개의 차수에 대해 오항 기약다항식을 적용함으로써 야기되었던 곱셈의 비효율성을 개선시킬 수 있다. 즉, 차수 n인 반복형 기약다항식을 사용하는 경우 오항 기약다항식을 사용하는 경우보다 대략 n개의 XOR 게이트 수(공간 복잡도)를 줄일 수 있고, XOR 게이트의 Time Delay를 현저히 줄일 수 있어 비트-병렬 다항식 기저 곱셈 연산에 소요되는 시간을 획기적으로 줄일 수 있다. 따라서 상기 443개의 차수에 오항 기약다항식을 적용함으로써 야기되었던 비트-병렬 다항식 기저 곱셈의 비효율성을 개선시킬 수 있다.
이하, 본 발명이 해결하고자 하는 과제의 해결 방안을 명확하게 하기 위한 발명의 구성을 본 발명의 바람직한 실시예에 근거하여 첨부 도면을 참조하여 상세히 설명하되, 도면의 구성요소들에 참조번호를 부여함에 있어서 동일 구성요소에 대해서는 비록 다른 도면상에 있더라도 동일 참조번호를 부여하였으며 당해 도면에 대한 설명시 필요한 경우 다른 도면의 구성요소를 인용할 수 있음을 미리 밝혀둔다. 아울러 본 발명과 관련된 공지 기능 혹은 구성에 대한 구체적인 설명 그리고 그 이외의 제반 사항이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우, 그 상세한 설명을 생략한다.
1. 제안하는 반복형 기약다항식
유한체에서 비트-병렬 다항식 기저 곱셈의 효율성을 고려한 기약다항식의 순서는 상기한 바와 같이 ESP, Trinomial, Pentanomial의 순서를 가지며, 유한체의 차수(n, degree)가 정해지면 상기의 순으로 기약다항식을 선택하여 사용하게 된다. 그러나 n이 1000 이하인 경우에는 77개의 n에서만 ESP를 사용할 수 있고 543개의 n에서만 Trinomial을 사용할 수 있으며, ESP와 Trinomial을 같이 사용할 수 있는 경우까지 고려하면 총 557개의 n에서만 ESP 또는 Trinomial을 사용할 수 있으므로 나머지 443개의 n에서는 가장 비효율적인 Pentanomial을 사용하여야 한다. 따라서 본 발명에서는 이러한 문제를 해결하기 위해 Pentanomial을 사용하는 경우보다 효율적인 새로운 기약다항식 즉 반복형 기약다항식을 제안한다.
유한체
Figure 112009503508486-pat00040
위에서 임의의 두 다항식 p(x)와 l(x)에 대하여 f(x)가 아래의 식(1)을 만족하면, 그 f(x)는 반복형 기약다항식이다.
Figure 112009503508486-pat00041
, deg(l(x)) ≤ v, deg(p(x)) < s --- 식(1).
이 반복형 다항식은 s-ESP를 포함하며, 임의의 다항식
Figure 112009503508486-pat00042
가 주어졌을 때 식 xn+r = h(x) mod f(x)를 만족하는 f(x)가 RFP임을 보이기 위하여 다음의 정리(theorem)들을 이용한다.
<Theorem 1>
Figure 112009503508486-pat00043
위에서 임의의 다항식
Figure 112009503508486-pat00044
에 대하여 xs = q(x)p(x) + 1을 만족하는 최소의 양의 정수 s와 다항식 p(x)가 존재할 때, 임의 의 양의 정수 m에 대하여 xm이 xm = q(x)pm(x) + 1을 만족하면 양의 정수 i에 대하여 m = i·s이다.
Proof of Theorem 1) xm = q(x)pm(x) + 1을 만족하는 m의 순서집합(ordered set)을
Figure 112009503508486-pat00045
라 하자. 그러면 가정에 의하여 순서집합
Figure 112009503508486-pat00046
의 최소값(m0)은 s이다. 다음으로 s보다 큰 순서집합
Figure 112009503508486-pat00047
의 최소값을 m1라 하면
Figure 112009503508486-pat00048
이므로 F2[x]에서,
Figure 112009503508486-pat00002
이다.
이때 가정에 의하여
Figure 112009503508486-pat00049
이므로 m1-s는
Figure 112009503508486-pat00050
의 원소이다. m1은 s보다 큰 순서집합
Figure 112009503508486-pat00051
의 최소값이며, m1 > m1 -s = s 이므로 m1 = 2s이고 이를 일반화하면 mi = i·s이다. 즉, 순서집합
Figure 112009503508486-pat00052
의 원소는 양의 정수 i에 대하여 m = i·s이다.
<Theorem 2> 상기 다항식 q(x)와 임의의 다항식 h(x)에 대하여
Figure 112009503508486-pat00053
을 만족하는 최소의 양의 정수 n0와 다항식
Figure 112009503508486-pat00054
가 존재하면, 임의의 n에 대하여 xn+r = q(x)f(x) + h(x)를 만족하는 f(x)는
Figure 112009503508486-pat00055
또는
Figure 112009503508486-pat00056
인 반복형 다항식이다.
Proof of Theorem 2)
Figure 112009503508486-pat00057
를 만족하는 ni의 순서집합을
Figure 112009503508486-pat00058
라 하자. 가정에 의하여
Figure 112009503508486-pat00059
을 만족하는 최소 양의 정수 n0와 다항식
Figure 112009503508486-pat00060
가 존재하고,
Figure 112009503508486-pat00061
의 원소인 n0보다 큰 최소값을 n1이라 하면
Figure 112009503508486-pat00062
이다. 그러면
Figure 112009503508486-pat00063
이고 <Theorem 1>에서
Figure 112009503508486-pat00064
이므로
Figure 112009503508486-pat00065
이다. 따라서 <Theorem 1>에 의하여 n1-n0는 i·s이며 n1이 n0보다 큰 최소값이므로 n1-n0=s이다. 실제로
Figure 112009503508486-pat00003
이고, 순서집합
Figure 112009503508486-pat00066
의 원소에 대하여 일반화하면 ni+1-ni=s이다. 따라서
Figure 112009503508486-pat00067
이다. 다음으로
Figure 112009503508486-pat00068
이므로
Figure 112009503508486-pat00069
와 (n0+r)을 각각
Figure 112009503508486-pat00070
, n0+r=v라 하면
Figure 112009503508486-pat00071
이다. 따라서 <Theorem 1>의 다항식 q(x)와 임의의 다항식 h(x)(∈F2[x])에 대하여, xn+r = q(x)f(x) + h(x)를 만족하는 임의의 n이 존재하면 f(x)는
Figure 112009503508486-pat00072
또는
Figure 112009503508486-pat00073
인 반복형 다항식이다.
2. RFP를 이용한 비트-병렬 다항식 기저 곱셈
상기 <Theorem 2>로부터 임의의 q(x), h(x)에 대하여 xn+r = q(x)f(x) + h(x) => xn+r = h(x) mod f(x)를 만족하는 최소 차수의
Figure 112009503508486-pat00074
가 주어졌을 때, xn+r = q(x)f(x) + h(x)를 만족하는 나머지 f(x)는 모두
Figure 112009503508486-pat00075
와 p(x)를 이용한 반복형 기약다항식임을 알 수 있다. 반복형 기약다항식 f(x)에 의하여 정의된
Figure 112009503508486-pat00076
의 임의의 두 원소를 a(α),b(α)라 하고, f(x)가 <Theorem 2>를 만족한다면 x n + r h(x) mod f(x)이다. 따라서
Figure 112009503508486-pat00004
이다.
이때, 만약 deg(h(x)αi-r)≥n이면, h(x)αi-r는 모듈러 감산(modulo reduction)되어야 한다. 따라서 c(α)=a(α)·b(α)는 f(x)에 의하여 다음과 같다.
Figure 112009503508486-pat00005
식(2)에서
Figure 112009503508486-pat00077
항을 식(2.1),
Figure 112009503508486-pat00078
항을 식(2.2)로 한다.
이때, 만약 deg(h(x))≥r+2이면 식(2.2)은 다시 모듈러 감산되어야 한다. 감산행렬 T에서 식(2.2)과 같이 h(x)로 표현되는 행을 REDUCTION BLOCK2라 하고 나머지 행을 REDUCTION BLOCK1라고 하면 RFP의 감산행렬 T는 도 1과 같다. c(α)의 계산에서 REDUCTION BLOCK1의 효율성은 h(x)의 0이 아닌 비트수에 의존하고 REDUCTION BLOCK2의 효율성은 h(x)와 r에 의존한다.
본 발명이 제안하는 반복형 기약다항식을 이용하여 식(2)의 간단한 예를 들면 다음과 같다.
q(x), h(x)(∈F2[x])를 각각 q(x)=x3+x2+x+1, h(x)=x5+x2+1이라 하면, x4+3=q(x)(x4+x3+x2+x+1)+h(x)이므로, <Theorem 2>에 의하여
Figure 112009503508486-pat00079
이고, xn=q(x)f(x)+h(x)를 만족하는 반복형 기약다항식 f(x)는
Figure 112009503508486-pat00080
이다.
이때 i=1인 f(x)=x8+x7+x4+x3+x2+x+1은 기약다항식이고 이를 이용하여
Figure 112009503508486-pat00081
에서 c(α)=a(α)·b(α)을 계산하면,
Figure 112009503508486-pat00006
이다. 그리고 이때 7×8 곱셈 행렬(감산 행렬) T=(ti,j)7×8는 다음과 같다.
Figure 112009503508486-pat00007
3. 효율적인 RFP와 그 비트-병렬 다항식 기저 곱셈의 복잡도
오항 기약다항식
Figure 112009503508486-pat00082
을 이용한 비트-병렬 다항식 기저 곱셈기의 복잡도는 도 2에 제시되어 있다. 도 2를 통해 알 수 있듯이, 본 오항 기약다항식을 이용하는 경우에 비트-병렬 다항식 기저 곱셈기의 AND 게이트 수(# AND)는 모두 n2이며, [k1=1 이고 k3-k2=1]인 경우를 제외하면 비트-병렬 다항식 기저 곱셈을 위한 XOR 게이트 수(#XOR)와 시간 지연(Time Delay, 시간 복잡도(Time Complexity))은 3가지 경우로 구분된다. 따라서 본 발명에서 제안하는 반복형 기약다항식이 오항 기약다항식보다 차수에 따라 시간 또는 공간 복잡도 측면에서 더 효율적이기 위해서 요구되는 XOR 게이트 수(#XOR)와 시간 복잡도(Time Complexity)는 다음의 3 경우(Case 1, Case 2, Case 3)와 같다.
Case 1 : #XOR
Figure 112009503508486-pat00083
n2+n, Time Delay = TA+([log2(n)]+3)TX.
Case 2 : #XOR
Figure 112009503508486-pat00084
n2+n, Time Delay = TA+([log2(n)]+4)TX.
Case 3 : #XOR
Figure 112009503508486-pat00085
n2+2n, Time Delay = TA+[log2(n)+3]TX.
TA는 AND 게이트의 게이트 지연(gate delay)을, TX는 XOR 게이트의 게이트 지연을 의미한다. 이때, 상기 배경기술에서 소개된 세 가지 타입의 RFP는 Case 1에 속한다(이때, 2r+2 < k1 < (n+3r+1)/2).
본 발명이 제안하는 RFP를 이용한 비트-병렬 다항식 기저 곱셈 방법에 의한 시간 복잡도 및 공간 복잡도를 제시하면 다음과 같다.
h(x)의 0이 아닌 항(non-zero term)의 개수를 H(h(x))라 하면, RFP 기반의 비트-병렬 다항식 기저 곱셈의 효율성은 다항식 q(x)의 차수 r과 H(h(x))에 의존한다. 따라서 효율적인 비트-병렬 다항식 기저 곱셈을 위한 r과 h(x)에 대하여 고려 하여야 한다.
우선 임의의 r에 대하여 h(x)=1인 경우를 살펴보면, 이 경우 RFP
Figure 112009503508486-pat00086
는 <Theorem 2>의 증명에 의해
Figure 112009503508486-pat00087
는 <Theorem 1>의 p(x)가 된다. 따라서 p(x)=l(x)이고 항상
Figure 112009503508486-pat00088
이다. 결국 p(x)가 1이 아닌 경우 f(x)는 기약다항식이 될 수 없으며, p(x)=1인 경우 f(x)는 ESP가 된다. 따라서 p(x)=1인 경우를 제외하면 임의의 r에 대하여 최소 해밍 웨이트(hamming weight)인 H(h(x))=2인 경우가 가장 효율적이다.
다음으로 H(h(x))=2인 경우의 r을 살펴보면 다음과 같다. r=1인 경우 <Theorem 2>에서 q(x)는 가정에 의하여 q(x) = x+1이다. 따라서 xn+r + h(x) = q(x)f(x)에서 q(x)f(x)의 해밍 웨이트는 항상 짝수이다. 그러나 (xn+r + h(x))의 해밍 웨이트는 항상 홀수이므로 r=1과 H(h(x))=2를 만족하는 f(x)는 존재할 수 없다. 따라서 H(h(x))=2인 경우에는 r이 2 이상인 경우에만 반복형 기약다항식 f(x)가 존재한다.
그러면 r과 H(h(x))의 최대값을 고려해야 하는데, 이에 대해서는 다음과 같다. r이 9 이상인 경우는 식(2.1)의 계산에서만 3·TX가 소요되어 위에서 정의한 Case를 만족할 수 없다. 또한 H(h(x))가 4 이상인 경우는 식(2.2)가 다시 모듈러 감산되지 않는다 하여도 #XOR ≥ n2+3n이 되어 역시 상기 Case를 만족할 수 없다. 따라서 Case 1 내지 Case 3을 모두 만족하는 조건(r과 H(h(x))의 범위)은 다음과 같다.
[r=1 이고 H(h(x))=3] 또는 [2≤r≤8 이고 2≤H(h(x))≤3].
r과 H(h(x))에 따른(각 Case에 따른) RFP와 그 비트-병렬 다항식 기저 곱셈기의 공간 및 시간 효율성(공간 및 시간 복잡도)을 상기 각 Case에 대해 살펴보면 다음과 같다. 이하에서,
Figure 112009503508486-pat00089
에서 u > v 또는 u < 0인 경우
Figure 112009503508486-pat00090
이다.
3.1. Case 1인 경우
1) r=2 이고 H(h(x))=2인 경우
H(h(x))=2이므로
Figure 112009503508486-pat00091
이다. 도 3의 (a)의 REDUCTION BLOCK1의 임의의 열에서 1의 개수가 네 개 이하가 되어야 3·TX내에 곱셈 연산이 가능하므로 k1의 범위는 k1≤(n+5)/2이다. 따라서 k1이 최대일 때(=(n+5)/2), 식(2) 내지 식(2.2)는 다음과 같이 전개된다.
Figure 112009503508486-pat00008
따라서 모듈러 감산에 소요되는 XOR 게이트 수(공간 복잡도)는 식(3.1)에서 (n-k1+2)개, 식(3.2)에서 2개, 식(3.3)에서 (k1-3)개, 식(3.1)+식(3.3)에서 (n-3)개, (식(3.1)+식(3.3))+식(3.2)에서 최대 n개이므로 전체 (3n-2)개이다.
시간 복잡도의 경우 식(3.1)+식(3.3) 계산에서 2·TX가 필요하고, 식(3.2)의 (
Figure 112009503508486-pat00092
)에서 1·Tx와 t0,j + t1,j에서 1·Tx가 소요되므로 2·Tx가 소요된다. 따라서 모듈러 감산에서 최대 (3n-5)개의 XOR 게이트와 3·Tx가 추가적으로 필요하다.
2) r=3 이고 H(h(x))=2인 경우
도 3의 (a)의 REDUCTION BLOCK1의 임의의 열에서 1의 개수가 네 개 이하가 되어야 3·Tx내에 곱셈 연산이 가능하므로 k1의 범위는 6보다 작다. 따라서
Figure 112009503508486-pat00093
라 하고, k1의 최대값을 5로 가정하면 식(2) 내지 식(2.2)은 다음과 같이 전개된다.
Figure 112009503508486-pat00009
식(4.1)의 REDUCTION BLOCK1
Figure 112009503508486-pat00094
의 XOR 게이트 수를 ε이라 하면 0 < ε < 2r-r 이다. 따라서 식(4.1)은 최대 4개(δ=1인 경우는 5개)의 XOR 게이트로 계산되며 식(4.2)는 [n-4+(n-3)](δ=1인 경우 n-4)개의 XOR 게이트로 계산되고, 식(4.1)+식(4.2)은 n개의 XOR 게이트로 계산되므로 모듈러 감산에서 최대 (3n-3)개의 XOR 게이트가 필요하다. 시간 복잡도의 경우 식(4.1)과 식(4.2)은 2·Tx내에 계산되므로 3·Tx의 시간 지연이 발생한다.
3) r=4 이고 H(h(x))=2인 경우
이 경우는 상기한 경우들과 마찬가지로 전개되므로 결과만 정리하면,
r=4, k1<6인 경우 #AND = n2, #XOR = n2+n+ε-10, Time Delay = TA+[log2(n)+3]TX이다. r>4인 경우 REDUCTION BLOCK1의 시간 지연만 3·Tx가 되어 Case 1에 해당하지 않는다.
결론적으로 RFP는 다음의 경우이어야 Case 1을 만족한다.
a) r=2, H(h(x))=2, k1 < (n+6)/2.
b) r=3, H(h(x))=2, k1 < 6.
c) r=4, H(h(x))=2, k1 < 6.
3.2. Case 2인 경우
1) r=2 이고 H(h(x))=2인 경우
Figure 112009503508486-pat00095
이다. (n+5)/2 < k1 ≤ (2n+7)/3을 가정하자. 그러면 최대 k1(=(2n+7)/3)에서 식(2) 내지 식(2.2)은 다음과 같이 전개된다.
Figure 112009503508486-pat00096
Figure 112009503508486-pat00097
우선 공간 복잡도(필요한 #XOR)를 살펴본다. 식(5.3)의 (d)의 (n-k1+2)개의 XOR 게이트로 (a), (b), (f), (g)는 모두 계산되고 식(5.3)의 (c)의 (-n+2k1-7)개의 XOR 게이트로 (e)가 계산된다. 식(5.1)은 3개의 XOR 게이트로 계산되며, 식(5.2)은 (n-k1+2)개의 XOR 게이트로 계산된다. 따라서 식(5.3)+식(5.4)은 연산량이 없으며 식(5.1)+식(5.2)는 n개의 XOR 게이트, (식(5.1)+식(5.2))+(식(5.3)+식(5.4))는 (n-5)개의 XOR 게이트로 계산되므로 모듈러 감산은 (3n-5)개의 XOR 게이트로 계산되며 전체적으로 n2개의 AND 게이트와 (n2+n-4)개의 XOR 게이트가 소요된다.
다음으로 시간 복잡도를 살펴본다. 식(5.1)의 계산에서 3·Tx, 식(5.2)의 계산에서 1·Tx, 식(5.3)+식(5.4)의 계산에서 2·Tx가 소요되므로, 모듈러 감산에 있어서 4·Tx가 추가적으로 필요하다.
2) r=3, H(h(x))=2, 6 ≤ k1 ≤ (n+7)/2 인 경우
k1이 최대 즉 k1=(n+7)/2이면, 식(2) 내지 식(2.2)은 다음과 같이 전개된다.
Figure 112009503508486-pat00012
우선 공간 복잡도(필요한 #XOR)를 살펴본다. 식(6.1)의 계산에서 (ε+3)개의 XOR 게이트 계산, (a)의 계산에서 (2n-3k1+10)개의 XOR 게이트 계산 및 (c)의 (k1-7)개의 XOR 게이트 계산에 의해 (d)는 계산되었으므로 연산량이 없다. 그리고 (a)+(b)는 (2k1-14)개의 XOR 게이트로, 식(6.1)+((a)+(b))는 n개의 XOR 게이트로 계산되므로 모듈러 감산에서 (3n+ε-8)개의 XOR 게이트가 소요된다.
다음으로 시간 복잡도를 살펴보면, 식(6.1)에서 3·Tx, (a)+(b)에서 3·Tx 시간 지연이 발생되므로 모듈러 감산에서 4·Tx가 소요된다.
3) r=4, H(h(x))=2, 6 ≤ k1 ≤ (n+9)/2 인 경우
k1이 최대 즉 k1=(n+9)/2이면, 식(2) 내지 식(2.2)은 다음과 같이 전개된다.
Figure 112009503508486-pat00098
우선 공간 복잡도(필요한 #XOR)를 살펴보면, 식(7.1)의 계산에서 (ε+3)개의 XOR 게이트 계산, (a)의 계산에서 (2n-3k1+13)개의 XOR 게이트 계산 및 (k1-7)개의 XOR 게이트 계산에 의해 (d)는 계산되었으므로 연산량이 없다. 그리고 (a)+(b)에서 (2k1-18)개의 XOR 게이트, 식(7.1)+((a)+(b))에서 n개의 XOR 게이트로 계산되므로 모듈러 감산에서 (3n+ε-10)개의 XOR 게이트가 소요된다.
다음으로 시간 복잡도를 살펴보면, 식(7.1)에서 3·Tx, (a)+(b)에서 3·Tx, 시간 지연이 발생되므로 모듈러 감산에서 4·Tx가 소요된다.
위에서 가정한 경우 보다 k1이 큰 경우 REDUCTION BLOCK 1의 계산에만 4·Tx가 소요되므로 상기 어느 Case에도 해당하지 않는다. Case 2에 해당하기 위해서는 REDUCTION BLOCK 1의 행의 개수가 8 이하가 되어야 한다. 식 (2.1)의 REDUCTION BLOCK 1에서 행 개수는 r이며, 식 (2.2)는
Figure 112009503508486-pat00099
이므로 (n-r-2+k1)-(n-1)+r ≤ 8이다. 따라서 r > 4인 경우 Case 2를 만족하기 위해서는 r < 9이고 k1은 9 이하여야 한다. 이 경우 모듈러 감산의 공간 복잡도는 2(n-r-2)+ε+n=(3n-2r+ε-4)개의 XOR 게이트이고 추가되는 시간 복잡도는 4·Tx이다. 따라서 다음 RFP만 Case 2를 만족한다.
a) r = 2, H(h(x)) = 2,
Figure 112009503508486-pat00100
(n+5)/2 < k1
Figure 112009503508486-pat00101
(2n+7)/3
Figure 112009503508486-pat00102
b) r = 3, H(h(x)) = 2, 6 ≤ k1
Figure 112009503508486-pat00103
(n+7)/2
Figure 112009503508486-pat00104
c) r = 4, H(h(x)) = 2, 6 ≤ k1
Figure 112009503508486-pat00105
(n+9)/2
Figure 112009503508486-pat00106
d) 4 < r < 9, H(h(x)) = 2, k1 ≤ 9.
3.3. Case 3인 경우
1) r=1, H(h(x))=3 인 경우
Figure 112009503508486-pat00107
이다(k1>k2>1). 우선 k1≤(n+3)/2라 가정하면 최대 k1=(n+3)/2에서 식(2) 내지 식(2.2)은 다음과 같이 전개된다.
Figure 112009503508486-pat00015
(a1)+(a2)는 k1 > k2이므로,
Figure 112009503508486-pat00108
이고,
(b1)+(b2)와 (c1)+(c2)는
Figure 112009503508486-pat00016
이므로, (
Figure 112009503508486-pat00109
)는 (
Figure 112009503508486-pat00110
)과 중복연산이 되어 연산량이 없다.
또한 식(9)와 (d)의 합은
Figure 112009503508486-pat00017
이므로 이 또한 (
Figure 112009503508486-pat00111
)과 중복연산이므로 연산량이 없다. 마지막으로 (e)=δ12를 위하여 δ1, δ2를 정리하면,
Figure 112009503508486-pat00112
이고, 위의 내용을 적용하여 식(8)을 정리하면 다음과 같다.
Figure 112009503508486-pat00020
식(10.1)의
Figure 112009503508486-pat00113
Figure 112009503508486-pat00114
는 각각 log2(k1-1)TX, log2(k2-1)TX의 시간 지연을 가지므로 가정 2k1 < n+4에 의하여 모두 log2(n/2)TX보다 작은 계산시간을 가지며 (
Figure 112009503508486-pat00115
)는 Sn-1과 동시에 계산되므로 식(10.1)의 계산은 1·TX에 계산 가능하다. 또한 식(10.2) 내지 식(10.4)은 모두 1·TX에 계산되므로 식(10.1) 내지 식(10.4)의 시간지연은 1·TA+([log2n]+3)TX이다.
다음으로 공간 복잡도를 살펴보면, 식(10.2)+식(10.3)은 [(n-k1+l)+(k2-3)+(n-k1)+(n-2k1+3)+(k2-3)]개의 XOR 게이트와 2(k1-3)개의 XOR 게이트의 합이므로 전체 (3n-2k1+2k2-8)개의 XOR 게이트로 연산된다. 또한 식(10.1)은 2개의 XOR 게이트로 연산되며, 식(10.4)은 식(10.3)에서 계산되어 연산량이 없으므로 (식(10.2)+ 식(10.3))+식(10.4)는 (2k1-k2-3)개의 XOR 게이트로 연산되며, (식(10.2)+식(10.3)+식(10.4))+식(10.1)은 H(f(x))와 같으므로 비트-병렬 다항식 기저 곱셈 연산을 위한 총 게이트수는 n2[#AND]+((n)2+(n+k2+H(f(x))-8)[#XOR]이므로 #XOR
Figure 112009503508486-pat00116
n2+2n이며 따라서 Case 3이다. 그리고 가정과 달리 2k1≥(n+4)인 경우에는 식(10.1)의 시간 지연이 2·TX가 되어 상기 어느 Case에도 해당하지 않는다.
Case 3의 경우 REDUCTION BLOCK2의 계산에서 2·TX가 소요되므로 REDUCTION BLOCK1의 행의 개수가 4보다 작은 r < 5이다. 따라서 1 ≤ r ≤ 4인 경우 식 (2.2)을 고려했을 때 (n-r-2+k1)-(n-1)+r≤4 이므로 k1≤5이다. 이 경우 모듈러 감산의 공간 복잡도는 3(n-r-2)+ε+n = (4n-2r+ε-4)개의 XOR 게이트이고 추가되는 시간 복잡도는
Figure 112009503508486-pat00117
이다. 따라서 다음 RFP만 Case 3을 만족한다.
a) r = 1, H(h(x)) = 3, 2k1 ≤ n+3.
b) 1 < r < 5, H(h(x)) = 3, k1 ≤ 5.
본 발명은 암호 알고리즘에서 사용되는 1000 이하의 유한체 차수 중 AOP, ESP, Trinomial이 존재하지 않는 443개의 차수에서 모두 사용가능한 새로운 기약다항식인 반복형 기약다항식(RFP)을 제안하였으며, 도 2에서 보인 기존의 오항 기약다항식에 비해 차수에 따라 효율적인 세 가지 경우(Case 1, Case 2, Case 3)에서의 RFP를 제시하였다. 세 가지 경우의 기약다항식의 시간 및 공간 복잡도를 도 4에 r에 따라 정리하였다.
한편 차수가 1000 이하인 경우의 적용가능한 기약다항식의 개수는 도 5에 제시되어 있다. 기존에 가장 효율적으로 알려진 기약다항식인 ESP와 Trinomial이 없는 443개의 차수 중 Case 1의 경우 181(40.8%)개가 존재하며, Case 2의 경우 232(52.4%)개, Case 3의 경우 443(100%)개 존재한다. 또한 case 3(r=1)의 경우 n = 1, 2, 16, 515를 제외한 모든 차수에서 존재한다.
본 발명에서 제안하는 RFP는 타원곡선 암호시스템의 표준(ANSI X9.62, IEEE P1363, SEC2)에서 제안되어 사용되는 유한체 중 오항 기약다항식을 사용하는 차수인 n = 131, 163, 283, 571 모두에서 존재하는데(사용가능한데), 이를 살펴보면 다음과 같다.
n=131:
Figure 112009503508486-pat00118
n=163:
Figure 112009503508486-pat00119
,
Figure 112009503508486-pat00120
,
Figure 112009503508486-pat00121
,
Figure 112009503508486-pat00122
,
Figure 112009503508486-pat00123
,
Figure 112009503508486-pat00124
n=283:
Figure 112009503508486-pat00022
,
Figure 112009503508486-pat00125
,
Figure 112009503508486-pat00126
,
Figure 112009503508486-pat00127
,
Figure 112009503508486-pat00023
n=571:
Figure 112009503508486-pat00128
이다. n=283인 경우, Case 2(r=3)에서 하나 존재하며 나머지는 모두 Case3(r=1)인 경우에서 존재한다. 따라서 제안하는 RFP 기약다항식은 유한체(유한체) 차수 1000 이하에서 모두 존재하며 EPS 또는 Trinomial이 사용될 수없는 차수에서 오항 기약다항식 보다 효율적이다.
본 방법발명은 또한 컴퓨터로 읽을 수 있는 기록매체에 컴퓨터가 읽을 수 있는 코드로서 구현하는 것이 가능하다. 컴퓨터가 읽을 수 있는 기록매체는 컴퓨터 시스템에 의하여 읽혀질 수 있는 데이터가 저장되는 모든 종류의 기록 장치를 포함한다.
컴퓨터가 읽을 수 있는 기록매체의 예로는 ROM, RAM, CD-ROM, 자기 테이프, 플로피디스크, 광 데이터 저장장치 등이 있으며, 또한 캐리어 웨이브(예를 들어 유무선 네트워크를 통한 전송)의 형태로 구현되는 것도 포함한다. 또한 컴퓨터가 읽을 수 있는 기록매체는 네트워크로 연결된 컴퓨터 시스템에 분산되어 분산방식으로 컴퓨터가 읽을 수 있는 코드가 저장되고 실행될 수 있다.
이제까지 본 발명에 대하여 그 바람직한 실시예를 중심으로 살펴보았다. 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자는 본 발명이 본 발명의 본질적인 특성에서 벗어나지 않는 범위에서 변형된 형태로 구현될 수 있음을 이해할 수 있을 것이다.
그러므로 개시된 실시예들은 한정적인 관점이 아니라 설명적인 관점에서 고려되어야 한다. 본 발명의 범위는 전술한 설명이 아니라 특허청구범위에 나타나 있으며, 그와 균등한 범위 내에 있는 모든 차이점은 본 발명에 포함된 것으로 해석되어야 할 것이다.
도 1은 본 발명에 의한 반복형 기약다항식의 감산행렬 T를 제시한 도면이다.
도 2는 오항 기약다항식 기반의 비트 병렬 다항식 기저 곱셈기의 시간 및 공간 복잡도를 제시한 도면이다.
도 3은 본 발명에 의한 반복형 기약다항식의 감산행렬 T의 일례를 제시한 도면으로 2≤r≤4 인 경우의 감산행렬 T이다.
도 4는 본 발명에 의한 반복형 기약다항식을 이용한 비트-병렬 다항식 기저 곱셈을 하는 곱셈기의 시간 및 공간 복잡도를 제시한 도면이다.
도 5는 차수가 1000 이하인 경우의 적용가능한 기약다항식의 개수를 제시한 도면이다.

Claims (9)

  1. 삭제
  2. 삭제
  3. 삭제
  4. 삭제
  5. 유한체(finite field)상에서의 비트-병렬 곱셈을 수행하는 방법에 있어서,
    적어도 하나의 비트-병렬 곱셈기가 소정 반복형 기약다항식을 이용하여 대상 다항식을 곱셈하는 단계; 및
    상기 적어도 하나의 비트-병렬 곱셈기가 상기 곱셈 결과에서 상기 대상 다항식보다 차수가 큰 다항식을 반복적으로 감산하는 단계를 포함하고,
    상기 소정 반복형 기약다항식은,
    XOR 게이트 수
    Figure 112012052913388-pat00137
    n2+n이고, 시간 지연이 TA+([log2(n)]+3)TX인 제 1 경우,
    XOR 게이트 수
    Figure 112012052913388-pat00138
    n2+n이고, 시간 지연이 TA+([log2(n)]+4)TX인 제 2 경우 및
    XOR 게이트 수
    Figure 112012052913388-pat00139
    n2+2n이고, 시간 지연이 TA+[log2(n)+3]TX인 제 3 경우
    (n은 상기 유한체의 차수, TA는 상기 비트-병렬 곱셈기의 AND 게이트의 게이트 지연, TX는 상기 비트-병렬 곱셈기의 XOR 게이트의 게이트 지연)
    중 적어도 하나를 만족하는 것을 특징으로 하는 방법.
  6. 제 5 항에 있어서,
    상기 소정 반복형 기약다항식을 이용하여 산출된 곱셈 결과는,
    Figure 112012052913388-pat00140
    (c(α)는 상기 유한체 상에서 상기 대상 다항식의 곱셈 결과를 상기 반복형 기약다항식을 이용하여 표현한 것, s는 상기 곱셈 결과를 만족하는 순서집합(ordered set)의 최소값, f(x)는 상기 반복형 기약다항식, h(x)는 상기 대상 다항식의 곱셈 결과에 따른 감산 블록(reduction block), t는 감산행렬)
    에 따라 산출되는 것을 특징으로 하는 방법.
  7. 제 5 항에 있어서,
    상기 제 1 경우에 따르는 상기 소정 반복형 기약다항식은,
    a) r=2, H(h(x))=2, k1 < (n+6)/2 인 경우,
    b) r=3, H(h(x))=2, k1 < 6 인 경우 및
    c) r=4, H(h(x))=2, k1 < 6 인 경우
    (r은 상기 대상 다항식의 차수, h(x)는 상기 대상 다항식의 곱셈 결과에 따른 감산 블록(reduction block), H(h(x))는 상기 소정 반복형 기약다항식의 0이 아닌 항의 개수, k1은 상기 소정 반복형 기약다항식의 0이 아닌 항의 최저 차수)
    중 적어도 하나인 것을 특징으로 하는 방법.
  8. 제 5 항에 있어서,
    상기 제 2 경우에 따르는 상기 소정 반복형 기약다항식은,
    a) r = 2, H(h(x)) = 2,
    Figure 112012052913388-pat00141
    (n+5)/2 < k1
    Figure 112012052913388-pat00142
    Figure 112012052913388-pat00143
    (2n+7)/3
    Figure 112012052913388-pat00144
    인 경우,
    b) r = 3, H(h(x)) = 2, 6 ≤ k1
    Figure 112012052913388-pat00145
    (n+7)/2
    Figure 112012052913388-pat00146
    인 경우,
    c) r = 4, H(h(x)) = 2, 6 ≤ k1
    Figure 112012052913388-pat00147
    (n+9)/2
    Figure 112012052913388-pat00148
    인 경우 및
    d) 4 < r < 9, H(h(x)) = 2, k1 ≤ 9 인 경우
    (r은 상기 대상 다항식의 차수, h(x)는 상기 대상 다항식의 곱셈 결과에 따른 감산 블록(reduction block), H(h(x))는 상기 소정 반복형 기약다항식의 0이 아닌 항의 개수, k1은 상기 소정 반복형 기약다항식의 0이 아닌 항의 최저 차수)
    중 적어도 하나인 것을 특징으로 하는 방법.
  9. 제 5 항에 있어서,
    상기 제 3 경우에 따르는 상기 소정 반복형 기약다항식은,
    a) r = 1, H(h(x)) = 3, 2k1 ≤ n+3 인 경우 및
    b) 1 < r < 5, H(h(x)) = 3, k1 ≤ 5 인 경우
    (r은 상기 대상 다항식의 차수, h(x)는 상기 대상 다항식의 곱셈 결과에 따른 감산 블록(reduction block), H(h(x))는 상기 소정 반복형 기약다항식의 0이 아닌 항의 개수, k1은 상기 소정 반복형 기약다항식의 0이 아닌 항의 최저 차수)
    중 적어도 하나인 것을 특징으로 하는 방법.
KR1020090085148A 2009-09-10 2009-09-10 비트-병렬 다항식 기저 곱셈 방법 KR101213399B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020090085148A KR101213399B1 (ko) 2009-09-10 2009-09-10 비트-병렬 다항식 기저 곱셈 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020090085148A KR101213399B1 (ko) 2009-09-10 2009-09-10 비트-병렬 다항식 기저 곱셈 방법

Publications (2)

Publication Number Publication Date
KR20110027175A KR20110027175A (ko) 2011-03-16
KR101213399B1 true KR101213399B1 (ko) 2013-01-10

Family

ID=43934029

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020090085148A KR101213399B1 (ko) 2009-09-10 2009-09-10 비트-병렬 다항식 기저 곱셈 방법

Country Status (1)

Country Link
KR (1) KR101213399B1 (ko)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20040055550A (ko) * 2002-12-20 2004-06-26 한국전자통신연구원 유한체 상의 두 원소의 곱을 구하는 직렬-병렬 곱셈기
KR100653358B1 (ko) 2005-09-27 2007-02-28 고려대학교 산학협력단 유한체의 병렬곱셈 연산장치
KR20090059265A (ko) * 2007-12-06 2009-06-11 고려대학교 산학협력단 여분 표현을 사용하는 유한체 비트―병렬 곱셈 장치 및방법

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20040055550A (ko) * 2002-12-20 2004-06-26 한국전자통신연구원 유한체 상의 두 원소의 곱을 구하는 직렬-병렬 곱셈기
KR100653358B1 (ko) 2005-09-27 2007-02-28 고려대학교 산학협력단 유한체의 병렬곱셈 연산장치
KR20090059265A (ko) * 2007-12-06 2009-06-11 고려대학교 산학협력단 여분 표현을 사용하는 유한체 비트―병렬 곱셈 장치 및방법

Also Published As

Publication number Publication date
KR20110027175A (ko) 2011-03-16

Similar Documents

Publication Publication Date Title
Akdemir et al. Design of cryptographic devices resilient to fault injection attacks using nonlinear robust codes
US20150188578A1 (en) Error correction encoding method and error correction encoding device
Erdem et al. Polynomial basis multiplication over GF (2m)
Wu Bit-parallel polynomial basis multiplier for new classes of finite fields
US8099655B1 (en) Galois field multiplier system and method
KR101213399B1 (ko) 비트-병렬 다항식 기저 곱셈 방법
Wilson A lemma on polynomials modulo pm and applications to coding theory
RU2314639C1 (ru) Устройство декодирования кодов рида-соломона
KR101094354B1 (ko) 유한체의 원소간 비트-병렬 곱셈방법 및 장치
Beth et al. Architectures for exponentiation in GF (2n)
EP3297170B1 (en) Efficient reed-solomon encoding
KR20140091087A (ko) 병렬 bch 복호기를 위한 고속 소면적의 수정된 스텝-바이-스텝 복호 방법 및 그 연산 회로
KR100723863B1 (ko) 랜덤화한 프로베니우스 분해방법을 이용한 차분 공격 방지방법 및 그 장치
Jeon et al. Elliptic curve based hardware architecture using cellular automata
US20160034255A1 (en) Arithmetic Devices, Montgomery Parameter Calculation Method and Modular Multiplication Method Thereof
KR100954586B1 (ko) 다항식 기저 기반의 이진체 병렬 곱셈 장치 및 방법과 이를이용한 마이크로프로세서
KR100893695B1 (ko) 유한체 상의 고속 직렬 곱셈기 구조
KR100976232B1 (ko) 고속 비트-병렬 다항식 곱셈기, 그 곱셈 방법
KR101626743B1 (ko) 유한체상의 몽고메리 알고리즘을 이용한 곱셉기 및 곱셈 방법
KR100653358B1 (ko) 유한체의 병렬곱셈 연산장치
KR101423947B1 (ko) 확장된 nist 소수를 이용한 모듈러 곱셈 및 모듈러 지수승 방법
KR100926828B1 (ko) 유한체 내에서 역원 계산 장치
US8566384B2 (en) Multiplicative group counter
Vollala et al. Modular Exponential Techniques
KR100606437B1 (ko) 확장체에서 다항식 곱셈장치 및 방법

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E90F Notification of reason for final refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20151030

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20160928

Year of fee payment: 5

LAPS Lapse due to unpaid annual fee