KR100653358B1 - A parallel multiplier in the finite field - Google Patents

A parallel multiplier in the finite field Download PDF

Info

Publication number
KR100653358B1
KR100653358B1 KR1020050090141A KR20050090141A KR100653358B1 KR 100653358 B1 KR100653358 B1 KR 100653358B1 KR 1020050090141 A KR1020050090141 A KR 1020050090141A KR 20050090141 A KR20050090141 A KR 20050090141A KR 100653358 B1 KR100653358 B1 KR 100653358B1
Authority
KR
South Korea
Prior art keywords
unit
equation
function
finite field
multiplication
Prior art date
Application number
KR1020050090141A
Other languages
Korean (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 KR1020050090141A priority Critical patent/KR100653358B1/en
Application granted granted Critical
Publication of KR100653358B1 publication Critical patent/KR100653358B1/en

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
    • G06F5/00Methods or arrangements for data conversion without changing the order or content of the data handled
    • G06F5/06Methods or arrangements for data conversion without changing the order or content of the data handled for changing the speed of data flow, i.e. speed regularising or timing, e.g. delay lines, FIFO buffers; over- or underrun control therefor
    • G06F5/08Methods or arrangements for data conversion without changing the order or content of the data handled for changing the speed of data flow, i.e. speed regularising or timing, e.g. delay lines, FIFO buffers; over- or underrun control therefor having a sequence of storage locations, the intermediate ones not being accessible for either enqueue or dequeue operations, e.g. using a shift register
    • 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/60Methods or arrangements for performing computations using a digital non-denominational number representation, i.e. number representation without radix; Computing devices using combinations of denominational and non-denominational quantity representations, e.g. using difunction pulse trains, STEELE computers, phase computers
    • G06F7/72Methods or arrangements for performing computations using a digital non-denominational number representation, i.e. number representation without radix; Computing devices using combinations of denominational and non-denominational quantity representations, e.g. using difunction pulse trains, STEELE computers, phase computers using residue arithmetic
    • G06F7/724Finite field arithmetic
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03KPULSE TECHNIQUE
    • H03K19/00Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits
    • H03K19/20Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits characterised by logic function, e.g. AND, OR, NOR, NOT circuits

Abstract

A parallel multiplier for a finite field is provided to usefully apply to implementation of hardware in encryption-related application fields by having the same space/time complexity as the most efficient Reyhani-Masoleh and Hansan multiplier. An AB multiplier(100) multiplies input 'A' and 'B' by a formula-1. An 'x' function part(110) operates the input 'A' and 'B' by a formula-2. An S1 function part(120) performs right cyclic shift according to a formula-3 by using a result value of the 'x' function part. A BTX1 multiplier(130) maps/adds the result value of the AB multiplier and the S1 function part to each cipher of the final output by a formular-4.

Description

유한체의 병렬곱셈 연산장치{A Parallel Multiplier in the finite field}A parallel multiplier in the finite field

도 1은 본 발명에 의한 유한체의 병렬곱셈 장치의 구성을 블록도로 도시한 것이다.1 is a block diagram showing the configuration of a finite field parallel multiplication apparatus according to the present invention.

도 2는 도 1의 x함수부의 보다 상세한 구성을 블록도로 도시한 것이다.FIG. 2 is a block diagram illustrating a more detailed configuration of the x function unit of FIG. 1.

도 3은 도 2의 서브그룹의 보다 상세한 구성을 블록도로 도시한 것이다.3 is a block diagram illustrating a more detailed configuration of the subgroup of FIG. 2.

도 4는 도 1의 BTX1 연산부의 보다 상세한 구성을 블록도로 도시한 것이다.4 is a block diagram illustrating a more detailed configuration of the BTX1 calculator of FIG. 1.

도 5는 도 4의 서브BTX1 연산부의 보다 상세한 구성을 도시한 것이다.FIG. 5 illustrates a more detailed configuration of the sub-BTX1 calculator of FIG. 4.

도 6은 본 발명에 의한 병렬곱셈장치의 개념을 블록도로 도시한 것이다.6 is a block diagram illustrating the concept of a parallel multiplication apparatus according to the present invention.

도 7은 본 발명의 실시예에 해당하는, AOP를 이용한 병렬곱셈기의 구체적인 블록도를 도시한 것이다.FIG. 7 shows a detailed block diagram of a parallel multiplier using AOP, corresponding to an embodiment of the present invention.

도 8은 yj ,i연산을 위한 블록을 게이트로 도시한 것이다.8 illustrates a block for a y j , i operation as a gate.

도 9는 타입IV의 가우시안 정규기저를 갖는 유한체 GF(27)의 병렬곱셈 연산기의 일실시예를 도시한 것이다.Figure 9 illustrates one embodiment of a parallel multiplication operator of finite field GF (2 7 ) with Gaussian normal basis of type IV.

본 발명은 곱셈장치에 관한 것으로서, 특히 유한체의 병렬곱셈 장치에 관한 것이다. The present invention relates to a multiplication device, and more particularly, to a parallel multiplying device of a finite field.

유한체는 암호학과 코딩 이론 등에서 응용되고 있으며 최근 공개키 암호인 타원곡선암호(ECC), XTR, ElGamal 타입 암호 등의 관련 응용 분야에서 활발하게 사용되고 있다. 특히 유한체 GF(2m)은 2m개의 원소들을 포함하는 수 체계이고, 유한체의 각 원소가 n비트로 표현될 수 있으므로 에러정정 코드 및 암호 시스템의 하드웨어 구현과 같은 응용에 많이 이용된다. 이들은 기본적으로 유한체 연산을 포함하고 있으며 이 연산에 따라 암호 시스템의 효율성이 결정된다. 따라서 유한체에서 정의된 연산의 고속화는 매우 중요하며 많은 연구의 대상이 되고 있다. Finite bodies are applied in cryptography and coding theory, and they are actively used in related applications such as elliptic curve cryptography (ECC), XTR, and ElGamal type cryptography. In particular, the finite field GF (2 m ) is a number system including 2 m elements, and since each element of the finite field can be represented by n bits, it is widely used for applications such as error correction codes and hardware implementations of cryptographic systems. These basically include finite field operations, which determine the efficiency of the cryptographic system. Therefore, the speedup of the operation defined in the finite field is very important and has been the subject of much research.

유한체의 연산은 표현 방법에 따라 달라지며 대표적으로 다항식기저, 정규기저 등이 있고, Nonconvention 기저를 사용한다. 특히 정규기저를 이용하는 경우 제곱연산이 순환이동(Cyclic shift)으로 이루어지는 등 많은 장점을 가지고 있어 하드웨어 구현에 이용된다. 이 중 기약 AOP(All one polynomial)에 의해 생성되는 타입 I 최적 정규기저를 가지는 유한체가 가장 높은 효율성을 보인다. 이에 대한 공간 및 시간 복잡도에서 우수한 유한체의 곱셈 연산장치가 요구되고 있다.The operation of finite field depends on the expression method, and there are representative polynomial basis, regular basis, etc., and nonconvention basis is used. In particular, in the case of using a normal basis, the square operation is used for hardware implementation because it has many advantages such as cyclic shift. Among them, the finite field having the type I optimal normal basis generated by the contract AOP (All one polynomial) shows the highest efficiency. There is a need for a finite field multiplication apparatus excellent in space and time complexity.

본 발명이 이루고자 하는 기술적 과제는 타입 I 최적 정규기저를 가지는 유한체 GF(2m)의 부분체이고 타입 (m,k)인 가우스 주기를 가지는 유한체 GF(2m)을 기반으로 하며, 타원곡선암호를 비롯한 암호 시스템 응용에서 소수인 m을 주로 사용 하므로 m이 홀수인 경우만 고려하여, 유한체 GF(2mk)에서 병렬 곱셈 연산기인 Reyhani-Masoleh과 Hasan의 타입 I 연산기를 활용하여 유한체 GF(2m)에서 곱셈을 수행하는 유한체의 병렬 곱셈 연산장치를 제공하는 것이다.Aspect of the present invention is the type I based on the partial body and the type of finite field GF (2 m) having a Gaussian period of (m, k) of the finite field GF (2 m) having the optimal normal basis, oval In cryptographic system applications, such as curve ciphers, the prime m is mainly used, so only the case of m is an odd number, and the finite field GF (2 mk ) uses the parallel multiplication operator Reyhani-Masoleh and Hasan's Type I operator. It is to provide a finite field multiplication apparatus that performs multiplication at GF (2 m ).

상기 기술적 과제를 이루기 위한 본 발명에 의한 유한체의 병렬 곱셈 연산장치는, 유한체 GF(2m)이 타입 k인 가우시안 정규기저를 가지며, GF(n+1)* = <2> 이고 n=mk 인 조건을 만족하는 입력 A, B(A, B는 벡터)에 대해, Ai * Bi 에 의해 A, B를 수학식 1에 의해 곱하는 AB곱셈부; 입력 A, B에 대해 수학식 2에 의해 연산되는 x 함수부; 상기 x 함수부의 결과값을 입력으로 하여 수학식 3에 따라 오른쪽 순환이동(right cyclic shift) 수행하는 S1함수부; 상기 AB곱셈부의 결과값과 상기 S1함수부의 결과값을 최종 출력의 각 자리에 수학식 4에 의해 맵핑시켜 더하는 BTX1 연산부를 포함함을 특징으로 한다.In accordance with the present invention for achieving the above technical problem, the finite-body parallel multiplication apparatus has a Gaussian normal basis whose finite field GF (2 m ) is of type k, where GF (n + 1) * = <2> and n = AB multiplication unit for multiplying A, B by Equation 1 with A i * B i for inputs A, B (A, B are vectors) satisfying the condition of mk; An x function unit computed by Equation 2 on inputs A and B; An S1 function unit performing a right cyclic shift according to Equation 3 by inputting a result value of the x function unit; And a BTX1 calculation unit for mapping the result value of the AB multiplication unit and the result value of the S1 function unit to each position of the final output by mapping (4).

[수학식 1][Equation 1]

A*B = Ai * Bi A * B = A i * B i

[수학식 2][Equation 2]

Figure 112005054343413-pat00003
Figure 112005054343413-pat00003

[수학식 3][Equation 3]

S1 =

Figure 112005054343413-pat00004
S1 =
Figure 112005054343413-pat00004

[수학식 4][Equation 4]

Figure 112005054343413-pat00005
Figure 112005054343413-pat00005

[수학식 5][Equation 5]

Figure 112005054343413-pat00006
Figure 112005054343413-pat00006

상기 AB곱셈부는 입력 A와 입력 B를 논리곱연산하며, 유한체 GF(2m)에서의 m 에 해당하는 개수만큼의 AND게이트로 이루어짐이 바람직하다. 상기 x함수부는 u = (m-1)/2개의 그룹으로 이루어지고, 상기 그룹은 m 개의 서브그룹으로 이루어지고, 상기 서브그룹은 Aj 와 B(( i0 +j))를 논리곱 연산하는 제1AND게이트; A(( i0 +j)) 와 Bj 를 논리곱 연산하는 제2AND게이트; 및 상기 제1AND게이트 및 제2AND게이트의 출력을 배타논리합하는 XOR게이트를 구비하여 이루어짐이 바람직하다. 여기서 ((a+b))는 ((a+b)) = (a+b) mod m 이다.The AB multiplication unit performs an AND operation on the input A and the input B, and preferably consists of as many AND gates as the number of m in the finite field GF (2 m ). The x function portion is made up of u = (m-1) / 2 groups, the group is made up of m subgroups, and the subgroups are logical products of Aj and B (( i0 + j)) . 1AND gate; A second AND gate for performing an AND operation on A (( i0 + j)) and Bj; And an XOR gate that exclusively combines the outputs of the first and second AND gates. Where ((a + b)) is ((a + b)) = (a + b) mod m

상기 S1함수부는 x 함수부의 서브그룹 개수(u개)에 해당하는 S1함수 맵핑그룹로 이루어지고, 상기 S1함수 맵핑그룹은 k 개의 단위맵핑부으로 이루어지고, 상기 단위맵핑부는 상기 x 함수부의 서브그룹에서 출력되는 m 비트의 데이터를 입력으로 하여 수학식 5와 같은

Figure 112005054343413-pat00007
함수에 의해 m 개의 출력으로 오른쪽 순환이동 매핑함이 바람직하다.The S1 function unit comprises an S1 function mapping group corresponding to the number of subgroups (u) of the x function unit, the S1 function mapping group consists of k unit mapping units, and the unit mapping unit is a subgroup of the x function unit By using m bits of data output from
Figure 112005054343413-pat00007
It is preferable to map the right shift to m outputs by a function.

상기 BTX1 연산부는 m 개의 서브BTX1 연산부로 이루어지고, 상기 서브BTX1 연산부는 상기 AB곱셈부의 결과값과 상기 S1함수부의 단위매핑부의 결과값에 대해 상기 수학식 4에 의해 결정되는 입력값을 배타논리합 연산하는 XOR 게이트가 이진트리로 구성됨이 바람직하다.The BTX1 operator comprises m sub-BTX1 operators, and the sub-BTX1 operator performs an exclusive logical sum operation on an input value determined by Equation 4 with respect to a result value of the AB multiplication unit and a result value of the unit mapping unit of the S1 function unit. XOR gate is preferably composed of a binary tree.

상기 기술적 과제를 이루기 위한 본 발명에 의한 유한체의 병렬 곱셈 연산장치는, 유한체 GF(2m)이 타입 k인 가우시안 정규기저를 가지며, GF(n+1)* = <2> 이고 n=mk 인 조건을 만족하는 입력 A, B(A, B는 벡터)에 대해, Ai * Bi 에 의해 A, B를 수학식 1에 의해 곱하는 AB곱셈부; 입력 A, B에 대해 수학식 6에 의해 연산되는 y 함수부; 상기 y 함수부의 결과값을 입력으로 하여 수학식 7에 따라 오른쪽 순환이동(right cyclic shift) 수행하는 S2함수부; 상기 AB곱셈부의 결과값과 상기 S2함수부의 결과값을 최종 출력의 각 자리에 수학식 4에 의해 맵핑시켜 더하는 BTX2 연산부를 포함함을 특징으로 한다.In accordance with the present invention for achieving the above technical problem, the finite-body parallel multiplication apparatus has a Gaussian normal basis whose finite field GF (2 m ) is of type k, where GF (n + 1) * = <2> and n = AB multiplication unit for multiplying A, B by Equation 1 with A i * B i for inputs A, B (A, B are vectors) satisfying the condition of mk; A y function unit computed by Equation 6 on inputs A and B; An S2 function unit performing a right cyclic shift according to Equation 7 by inputting a result value of the y function unit; And a BTX2 calculation unit configured to add the result of the AB multiplication unit and the result of the S2 function unit by adding Equation 4 to each position of the final output.

[수학식 6][Equation 6]

Figure 112005054343413-pat00008
Figure 112005054343413-pat00008

여기서,

Figure 112005054343413-pat00009
here,
Figure 112005054343413-pat00009

[수학식 7][Equation 7]

S2 =

Figure 112005054343413-pat00010
S2 =
Figure 112005054343413-pat00010

[수학식 8][Equation 8]

Figure 112005054343413-pat00011
Figure 112005054343413-pat00011

여기서,

Figure 112005054343413-pat00012
here,
Figure 112005054343413-pat00012

상기 AB곱셈부는 입력 A와 입력 B를 논리곱연산하며, 유한체 GF(2m)에서의 m 에 해당하는 개수만큼의 AND게이트로 이루어짐이 바람직하다. 상기 y함수부는 m개의 그룹으로 이루어지고, 상기 그룹은 u = (m-1)/2 개의 서브그룹으로 이루어지고, 상기 서브그룹은 Aj 와 A(( i0 +j))를 배타논리합 연산하는 제1XOR게이트; (여기서 ((a+b))는 ((a+b)) = (a+b) mod m 이다.) Bj 와 B(( i0 +j))를 배타논리합 연산하는 제2XOR게이트; 및 상기 제1XOR게이트 및 제2XOR게이트의 출력을 논리곱연산하는 AND게이트를 구비하여 이루어짐이 바람직하다.The AB multiplication unit performs an AND operation on the input A and the input B, and preferably consists of as many AND gates as the number of m in the finite field GF (2 m ). The y function portion is composed of m groups, the group is composed of u = (m-1) / 2 subgroups, and the subgroups are formed by performing an exclusive logic operation on Aj and A (( i0 + j)) . 1XOR gate; (Where ((a + b)) is ((a + b)) = (a + b) mod m.) A second XOR gate that performs an exclusive logic operation on Bj and B (( i0 + j)) ; And an AND gate for performing an AND operation on the outputs of the first and second XOR gates.

상기 S2함수부는 y 함수부의 서브그룹 개수(u개)에 해당하는 S2함수 맵핑그룹로 이루어지고, 상기 S2함수 맵핑그룹은 k 개의 단위맵핑부으로 이루어지고, 상기 단위맵핑부는 상기 y 함수부의 서브그룹에서 출력되는 m 비트의 데이터를 입력으로 하여 수학식 5와 같은

Figure 112005054343413-pat00013
함수에 의해 m 개의 출력으로 오른쪽 순환이동 매핑함이 바람직하다.The S2 function unit is composed of S2 function mapping groups corresponding to the number of subgroups (u) of the y function unit, the S2 function mapping group is composed of k unit mapping units, and the unit mapping unit is a subgroup of the y function unit By using m bits of data output from
Figure 112005054343413-pat00013
It is preferable to map the right shift to m outputs by a function.

상기 BTX2 연산부는 m 개의 서브BTX2 연산부로 이루어지고, 상기 서브BTX2 연산부는 상기 AB곱셈부의 결과값과 상기 S2함수부의 단위매핑부의 결과값에 대해 상기 수학식 8에 의해 결정되는 입력값을 배타논리합 연산하는 XOR 게이트가 이진 트리로 구성됨이 바람직하다.The BTX2 operator comprises m sub-BTX2 operators, and the sub-BTX2 operator performs an exclusive logical sum operation on an input value determined by Equation 8 with respect to a result value of the AB multiplier and a result value of the unit mapping unit of the S2 function unit. XOR gate is preferably composed of a binary tree.

이하, 첨부된 도면들을 참조하여 본 발명에 따른 유한체의 병렬 곱셈 연산장치에 대해 상세히 설명한다.Hereinafter, with reference to the accompanying drawings will be described in detail with respect to the parallel multiplication apparatus of the finite body according to the present invention.

먼저, 본 발명을 위한 기본적인 수학적 배경을 기술하기로 한다. 양의 정수 m 에 대해 유한체 GF(2) 위에서 GF(2m)의 정규기저가 존재한다. 즉 β∈GF(2m)가 존재하여

Figure 112005054343413-pat00014
이 GF(2) 위에서 GF(2m)의 기저 (Basis)일 때 N을 정규기저라 하고, β를 정규기저 생성자라 한다. 따라서 A∈GF(2m)에 대하여
Figure 112005054343413-pat00015
로 표현되며 좌표로
Figure 112005054343413-pat00016
와 같이 나타낸다. 또한 벡터 (행렬)표현으로 다음과 나타내며 T는 행렬의 치환 (Transpose)을 나타낸다. First, the basic mathematical background for the present invention will be described. For a positive integer m there is a normal basis of GF (2 m ) above finite field GF (2). That is β∈GF (2 m )
Figure 112005054343413-pat00014
When GF (2) is the basis of GF ( 2m ), N is called normal basis, and β is called normal basis generator. Thus for A∈GF (2 m )
Figure 112005054343413-pat00015
Expressed in coordinates
Figure 112005054343413-pat00016
It is represented as Also, the vector (matrix) representation is as follows and T represents the transpose of the matrix.

Figure 112005054343413-pat00017
Figure 112005054343413-pat00017

임의의 원소 A∈GF(2m)에 대해 A2은 좌표로 표현하면

Figure 112005054343413-pat00018
이고, 이는 오른쪽 순환이동 (Right cyclic shift, RCS)로 수행이 된다. For any element A∈GF (2 m ), A 2 is represented by coordinates
Figure 112005054343413-pat00018
This is performed by right cyclic shift (RCS).

m,k 는 양수이고 p=mk+1≠2는 소수, 유한체 GF(p)*에서 2의 위수(Order)를 e이며 GCD(mk/e,m)=1이라고 한다. 유한체 GF(2n), n=mk 에서 p의 원시근(A primitive nth root of unity)을

Figure 112005054343413-pat00019
, kth root of unity를 τ이고,
Figure 112005054343413-pat00020
이라고 하면 β는 유한체 GF(2m)의 정규기저 생성자이다. 즉
Figure 112005054343413-pat00021
은 유한체 GF(2) 위에서 GF(2m)의 정규기저로, 이 때 β를 유한체 GF(2) 위에서 타입 (m,k) 인 가우스 주기 (Gauss period of type (m,k))라 한다. 본 발명에서는 유한체 GF(2m)이 타입(m,k)인 가우스 주기를 가지는 경우 유한체 GF(2m)를 타입 k라고 한다. 또한 모든 계수가 1인 다항식인
Figure 112005054343413-pat00022
을 All one polynomial(AOP)라 한다. 이 때 k=1인 경우 타입 I 최적 정규기저라고 하며, k=2 인 경우 타입 II 최적 정규기저라고 한다. 또한 n=mk인 경우 유한체 GF(2m)은 GF(2n)의 부분체이다. m, k is a positive number and p = mk + 1 ≠ 2 is a prime, the order of 2 in the finite field GF (p) * is e and GCD (mk / e, m) = 1. A primitive nth root of unity at finite field GF (2 n ), n = mk
Figure 112005054343413-pat00019
, kth root of unity is τ,
Figure 112005054343413-pat00020
Is the normal basis constructor of the finite field GF (2 m ). In other words
Figure 112005054343413-pat00021
Is the normal basis of GF (2 m ) above finite field GF (2), where β is the Gaussian period of type (m, k) above finite field GF (2). do. In the present invention, when the finite field GF ( 2m ) has a Gaussian period of type (m, k), the finite field GF ( 2m ) is referred to as type k. Also, a polynomial with all coefficients equal to 1
Figure 112005054343413-pat00022
Is called All one polynomial (AOP). In this case, k = 1 is called type I optimal normal basis, and k = 2 is called type II optimal normal basis. In addition, when n = mk, the finite field GF ( 2m ) is a part of GF ( 2n ).

정리 1. (타입 I 최적 정규기저) Theorem 1. (Type I Optimal Normal Basis)

유한체 GF(2) 위에서 GF(2n)이 타입 I의 최적 정규기저를 가지기 위한 필요충분조건은 (n+1)이 소수이고 GF(n+1)*=<2> 이다. 또는 n차의 AOP인

Figure 112005054343413-pat00023
가 유한체 GF(2) 위에서 기약다항식인 경우 AOP의 근은 최적 정규기저의 생성자이다.The necessary conditions for GF (2 n ) to have an optimal normal basis of type I on the finite field GF (2) are (n + 1) prime and GF (n + 1) * = <2>. Or nth AOP
Figure 112005054343413-pat00023
If is a contract polynomial on the finite field GF (2), the root of the AOP is the constructor of the optimal normal basis.

정리 2. (타입 II의 최적 정규기저) Theorem 2. (Optimum Normal Basis for Type II)

유한체 GF(2) 위에서 GF(2n)이 타입 II의 최적 정규기저를 가지기 위한 필요 충분조건은 (2m+1)이 소수이고, GF(2m+1)*=<2>이나 2m+1≡3 mod 4 이고, GF(2m+1)*=<-1,2> 이면

Figure 112005054343413-pat00024
는 유한체 GF(2)위에서 GF(2m)의 최적 정규기저 생성자이다. 여기서
Figure 112005054343413-pat00025
는 (2m+1)의 원시근이다.The necessary and sufficient condition for GF (2 n ) to have an optimal normal basis of type II on finite field GF (2) is that (2m + 1) is prime and GF (2m + 1) * = <2> or 2m + 1 Mod3 mod 4 and GF (2m + 1) * = <-1,2>
Figure 112005054343413-pat00024
Is the optimal normal basis constructor of GF (2 m ) on finite field GF (2). here
Figure 112005054343413-pat00025
Is the root of (2m + 1).

본 발명에서는 m은 홀수이고 , n=mk, (n+1)은 소수이며 GF(n+1)*=<2>인 경우를 고려한다.

Figure 112005054343413-pat00026
Figure 112005054343413-pat00027
이 (n+1)의 원시근이면, 정리 1에 의해
Figure 112005054343413-pat00028
는 유한체 GF(2n)의 타입 I 최적 정규기저 생성자이다. 또한, e=mk, τ=2m이므로, (m,k)는 가우스 주기이며,
Figure 112005054343413-pat00029
는 유한체 GF(2)위에서 GF(2m)의 정규기저 생성자이다. 따라서 임의의 원소 A∈GF(2m)는 In the present invention, the case where m is odd, n = mk, (n + 1) is prime and GF (n + 1) * = <2> is considered.
Figure 112005054343413-pat00026
In other words
Figure 112005054343413-pat00027
If this is the (n + 1) primitive root, theorem 1
Figure 112005054343413-pat00028
Is the type I optimal normal basis constructor of the finite field GF (2 n ). Further, since e = mk and τ = 2 m , (m, k) is a Gaussian period,
Figure 112005054343413-pat00029
Is the normal basis constructor of GF (2 m ) on finite field GF (2). So any element A∈GF (2 m )

Figure 112005054343413-pat00030
와 같이 표현된다. 유한체 GF(2m)는 GF(2n)의 부분체이므로, A∈GF(2n) 이고,
Figure 112005054343413-pat00030
It is expressed as Finite field GF (2 m ) is a subdivision of GF (2 n ), so A∈GF (2 n ),

Figure 112005054343413-pat00031
Figure 112005054343413-pat00031

이다. 임의의 원소to be. Arbitrary elements

Figure 112005054343413-pat00032
이면
Figure 112005054343413-pat00032
Back side

[수학식 1][Equation 1]

Figure 112005054343413-pat00033
Figure 112005054343413-pat00033

이다.to be.

Figure 112005054343413-pat00034
Figure 112005054343413-pat00034

수학식 1과 같은 성질을 만족한다.The same properties as in Equation 1 are satisfied.

(2) Reyhani-Masoleh과 Hasan의 AOP를 이용한 타입 I 연산기(2) Type I calculator using Reyhani-Masoleh and Hasan's AOP

유한체 GF(2m)에서 임의의 두 원소를 A,B에 대해 C=AB이라 하면 곱의 결과인 C는 다음과 같이 표현한다.If any two elements in the finite field GF (2 m ) are C = AB for A and B, then the product of C is expressed as

[수학식 2][Equation 2]

Figure 112005054343413-pat00035
Figure 112005054343413-pat00035

즉 기저 N을 이용하여

Figure 112005054343413-pat00036
을 구성하며 수학식 2에서 곱의 행렬 M을 다음과 같이 다시 표현한다.Using base N
Figure 112005054343413-pat00036
The matrix M of the product in Equation 2 is expressed as follows.

Figure 112005054343413-pat00037
Figure 112005054343413-pat00037

제곱 연산이 순환이동연산으로 이루어진다는 것을 이용하면 곱 C=AB=(c0,c1, …, cm-1)은 다음과 같이 표현된다.Using the square operation as a circular shift operation, the product C = AB = (c 0 , c 1 , ..., c m-1 ) is expressed as

Figure 112005054343413-pat00038
Figure 112005054343413-pat00038

따라서 각 i에 대하여 행렬 Mi의 1의 개수는 모두 같음을 알 수 있으며 이 때 Mo의 1의 개수를 정규기저 B의 복잡도라 하고 CN으로 표시한다. 또한 Gao 등은 CN≥2m-1임을 증명하였다. 만약 CN=2m-1일 때 정규기저 N을 최적 정규기저 (Optimal normal basis, ONB)라고 한다. Therefore, for each i, it can be seen that the number of 1s in the matrix M i is the same, and the number of 1s in M o is called the complexity of the normal basis B and denoted by C N. Gao et al. Also proved that C N ≥2m-1. If C N = 2m-1, the normal basis N is called an optimal normal basis (ONB).

① Reyhani-Masoleh 와 Hasan의 AOP를 이용한 곱셈기① Multiplier using AOP of Reyhani-Masoleh and Hasan

Reyhani-Masoleh 와 Hasan은 유한체의 곱의 행렬 M = (

Figure 112005054343413-pat00039
)을 다음과 같이 분리하였다.Reyhani-Masoleh and Hasan are the matrix of finite products M = (
Figure 112005054343413-pat00039
) Were separated as follows.

Figure 112005054343413-pat00040
Figure 112005054343413-pat00040

Figure 112005054343413-pat00041
Figure 112005054343413-pat00041

만약

Figure 112005054343413-pat00042
이면 U의 모든 원소는
Figure 112005054343413-pat00043
로 표현되므로 다음과 같은 정리를 제시하였다.if
Figure 112005054343413-pat00042
If all elements of U are
Figure 112005054343413-pat00043
The following theorem is presented.

정리 3.

Figure 112005054343413-pat00044
이면 C=AB는 다음과 같다.Theorem 3.
Figure 112005054343413-pat00044
Then C = AB is

Figure 112005054343413-pat00045
Figure 112005054343413-pat00045

여기서 aj, bj는 A,B의 좌표이며

Figure 112005054343413-pat00046
이다.
Figure 112005054343413-pat00047
는 XOR 연산자이고, ·는 AND 연산자이며 모든 색인은 모듈러 m값이다.Where a j , b j are the coordinates of A, B
Figure 112005054343413-pat00046
to be.
Figure 112005054343413-pat00047
Is the XOR operator, · is the AND operator, and all indexes are modular m values.

유한체 GF(2n)가 기약다항식 AOP

Figure 112005054343413-pat00048
에 의해 생성되고, AOP의 근을
Figure 112005054343413-pat00049
라 하자. 이 때
Figure 112005054343413-pat00050
는 유한체 GF(2n)의 타입 I 최적 정규기저를 생성하며, 정리 3을 정리 4와 같이 적용할 수 있다. 여기서 <<i+j>>는 i+j mod n을 의미한다.Finite Field GF (2 n ) is a Polynomial AOP
Figure 112005054343413-pat00048
Generated by the root of the AOP
Figure 112005054343413-pat00049
Let's do it. At this time
Figure 112005054343413-pat00050
Produces a type I optimal normal basis of finite field GF (2 n ), and theorem 3 can be applied as theorem 4. Here, << i + j >> means i + j mod n.

정리 4. 유한체 이 타입 I 최적 정규기저를 가지며

Figure 112005054343413-pat00051
는 이 정규기저의 생성자이라고 하자. 임의의 원소 이면 는 다음과 같다. Theorem 4. Finite Field Type I Having Optimal Normal Basis
Figure 112005054343413-pat00051
Let is the constructor of this regular basis. If it is an arbitrary element, then

Figure 112005054343413-pat00052
Figure 112005054343413-pat00052

Figure 112005054343413-pat00053
Figure 112005054343413-pat00053

② Reyhani-Masoleh 와 Hasan의 AND 연산을 감소시킨 곱셈기A multiplier that reduces the AND operation of Reyhani-Masoleh and Hasan

2003년에 Reyhani-Masoleh 와 Hasan은 곱인 정리 5를 기반으로 AND연산을 감소시키는 병렬 곱셈 알고리즘을 제안하였다,In 2003, Reyhani-Masoleh and Hasan proposed a parallel multiplication algorithm that reduces the AND operation based on the product of theorem 5.

정리 5. 임의의 원소

Figure 112005054343413-pat00054
이면 C=AB는 다음과 같다.5. The Random Element
Figure 112005054343413-pat00054
Then C = AB is

Figure 112005054343413-pat00055
Figure 112005054343413-pat00055

Figure 112005054343413-pat00056
이고 모든 색인은 모듈러 m 값이다.
Figure 112005054343413-pat00056
And all indexes are modular m values.

(3) 본 발명에 의한 병렬 곱셈기의 구성(3) Structure of Parallel Multiplier According to the Present Invention

본 발명에서는 유한체 GF(2m)가 타입 k인 가우시안 정규기저를 가지며 GF(n+1)*=<2>이고 n=mk인 경우를 고려한다. 본 발명은 유한체 GF(2n)에서 병렬 곱셈 연산기인 Reyhani-Masoleh과 Hasan의 타입 I 연산기를 활용하여 유한체 GF(2m)에서 곱셈을 수행하는 새로운 병렬 곱셈 연산기를 제안한 것이다. 즉 임의의 원소

Figure 112005054343413-pat00057
일 때 2002년과 2003년에 각각 제안된 Reyhani-Masoleh과 Hasan의 기본 타입 I 연산기를 활용하여 새로운 병렬 곱셈 연산 C=AB를 수행하는 연산기를 구성한다. 본 발명에서 이용할
Figure 112005054343413-pat00058
는 다음과 같이 정의한다.In the present invention, a case in which the finite field GF ( 2m ) has a Gaussian normal basis of type k, and GF (n + 1) * = <2> and n = mk is considered. The present invention proposed a new parallel computing for finite field multiplication by using the arithmetic unit of the type I parallel multiplication operator Reyhani-Masoleh and Hasan in GF (2 n) perform the multiplication in the finite field GF (2 m). Random elements
Figure 112005054343413-pat00057
Is constructed using the Reyhani-Masoleh and Hasan basic Type I operators proposed in 2002 and 2003 respectively. Use in the present invention
Figure 112005054343413-pat00058
Is defined as:

정의 1. n=mk, (n+1)은 소수, GF(n+1)*=<2>이며 ki

Figure 112005054343413-pat00059
이라 하자. 이 때
Figure 112005054343413-pat00060
에 대해
Figure 112005054343413-pat00061
인 경우 다음과 같이
Figure 112005054343413-pat00062
를 정의 한다.Definition 1. n = mk, (n + 1) is prime, GF (n + 1) * = <2> and k i is
Figure 112005054343413-pat00059
Let's say At this time
Figure 112005054343413-pat00060
About
Figure 112005054343413-pat00061
If is
Figure 112005054343413-pat00062
Define.

Figure 112005054343413-pat00063
Figure 112005054343413-pat00063

① Reyhani-Masoleh과 Hasan의 곱셈기를 이용한 본 발명에 의한 유한체 GF(2m)에서의 병렬 곱셈기① Parallel multiplier in finite field GF (2 m ) according to the present invention using Reyhani-Masoleh and Hasan multiplier

본 발명은 유한체 GF(2m)의 원소 A,B를 타입 I의 최적 정규기저를 가지는 확대체 GF(2n)의 원소로 생각하여 병렬 곱셈기를 구성한다. 2002년 제안된 Reyhani-Masoleh과 Hasan의 연산기에서

Figure 112005054343413-pat00064
이므로 n개의 계산이 필요하다. 그러나 본 발명에서는
Figure 112005054343413-pat00065
는 m개만 계산한다. 또한
Figure 112005054343413-pat00066
은 식 (1)에 의해
Figure 112005054343413-pat00067
임을 이용하여 연산한다. The present invention constitutes a parallel multiplier by considering the elements A and B of the finite field GF ( 2m ) as elements of the enlarged body GF ( 2n ) having an optimal normal basis of type I. In the 2002 Reyhani-Masoleh and Hasan calculator
Figure 112005054343413-pat00064
N calculations are required. However, in the present invention
Figure 112005054343413-pat00065
Counts only m. Also
Figure 112005054343413-pat00066
By the equation (1)
Figure 112005054343413-pat00067
Calculate using

Reyhani-Masoleh와 Hasan의 곱셈기에서

Figure 112005054343413-pat00068
에 대하여 Bi 통과한 후 Si에서의 연산은
Figure 112005054343413-pat00069
을 만족하는 ki에 따라 오른쪽 순환이동(RCS)에 의하여 수행된다. 한편
Figure 112005054343413-pat00070
이므로 m개의 좌표가 k번 반복하여 표현되며
Figure 112005054343413-pat00071
이므로 0부터 m-1까지의 좌표만 고려한다. 따라서
Figure 112005054343413-pat00072
에 대해 Bi,
Figure 112005054343413-pat00073
경우
Figure 112005054343413-pat00074
로부터 Si의 출력값은 앞에 정의한
Figure 112005054343413-pat00075
에 의한 RCS에 의하여 주어진다. In the multiplier of Reyhani-Masoleh and Hasan
Figure 112005054343413-pat00068
After passing through B i , the operation in S i
Figure 112005054343413-pat00069
Is performed by right circular shift (RCS) according to k i satisfying. Meanwhile
Figure 112005054343413-pat00070
M coordinates are repeated k times.
Figure 112005054343413-pat00071
Therefore, only coordinates from 0 to m-1 are considered. therefore
Figure 112005054343413-pat00072
About Bi,
Figure 112005054343413-pat00073
Occation
Figure 112005054343413-pat00074
The output of S i from
Figure 112005054343413-pat00075
Given by RCS.

임의의 원소

Figure 112005054343413-pat00076
에 대해 본 발명에서 제안하는 C=AB는 다음과 같다.Arbitrary elements
Figure 112005054343413-pat00076
C = AB proposed by the present invention is as follows.

Figure 112005054343413-pat00077
Figure 112005054343413-pat00077

도 1은 본 발명에 의한 유한체의 병렬곱셈 장치의 구성을 블록도로 도시한 것으로서, 그 병렬곱셈장치는 AB곱셈부(100), x함수부(110), S1함수부(120) 및 BTX1연산부(130)를 포함하여 이루어진다.1 is a block diagram showing the configuration of a parallel multiplication apparatus of a finite body according to the present invention. The parallel multiplication apparatus includes an AB multiplication unit 100, an x function unit 110, an S1 function unit 120, and a BTX1 operation unit. 130 is made.

상기 AB곱셈부(100)는 유한체 GF(2m)이 타입 k인 가우시안 정규기저를 가지며, GF(n+1)* = <2> 이고 n=mk 인 조건을 만족하는 입력 A, B(A, B는 벡터)에 대해, Ai * Bi 에 의해 A, B를 수학식 1에 의해 곱한다.The AB multiplication unit 100 has a Gaussian normal basis of finite field GF (2 m ) of type k, and inputs A and B (s) satisfying the condition that GF (n + 1) * = <2> and n = mk ( A and B are multiplied by Equation 1 by A i * B i .

A*B = Ai * Bi A * B = A i * B i

상기 AB곱셈부(100)는 입력 A와 입력 B를 논리곱연산하며, 유한체 GF(2m)에서의 m 에 해당하는 개수만큼의 AND게이트로 이루어짐이 바람직하다.The AB multiplication unit 100 performs an AND operation on the input A and the input B, and preferably consists of AND gates corresponding to the number of m in the finite field GF (2 m ).

상기 x함수부(110)는 입력 A, B에 대해 수학식 2에 의해 연산된다.The x function 110 is calculated by Equation 2 with respect to inputs A and B.

Figure 112005054343413-pat00078
Figure 112005054343413-pat00078

도 2는 상기 x함수부(110)의 보다 상세한 구성을 블록도로 도시한 것으로서,u = (m-1)/2개의 그룹으로 이루어지고, 상기 그룹은 m 개의 서브그룹으로 이루어진다. FIG. 2 is a block diagram showing a more detailed configuration of the x function unit 110, where u = (m-1) / 2 groups, and the group consists of m subgroups.

도 3은 상기 서브그룹의 보다 상세한 구성을 블록도로 도시한 것으로서, 상기 서브그룹은 Aj 와 B(( i0 +j))를 논리곱 연산하는 제1AND게이트(300), A(( i0 +j)) 와 Bj 를 논리곱 연산하는 제2AND게이트(320) 및 상기 제1AND게이트(300) 및 제2AND게이트(320)의 출력을 배타논리합하는 XOR게이트(340)를 구비하여 이루어진다. 여기서 ((a+b))는 ((a+b)) = (a+b) mod m 이다.3 is a block diagram illustrating a more detailed configuration of the subgroup, in which the subgroup is the first AND gate 300 and A (( i0 + j) for performing an AND operation on Aj and B (( i0 + j)) . ) And a second AND gate 320 that performs an AND operation on Bj and an XOR gate 340 that exclusively sums the outputs of the first AND gate 300 and the second AND gate 320. Where ((a + b)) is ((a + b)) = (a + b) mod m

상기 S1함수부(120)는 상기 x 함수부(110)의 결과값을 입력으로 하여 수학식 3에 따라 오른쪽 순환이동(right cyclic shift) 수행한다.The S1 function unit 120 performs a right cyclic shift according to Equation 3 by inputting the result value of the x function unit 110.

Figure 112005054343413-pat00079
S1 =
Figure 112005054343413-pat00079
S1 =

상기 S1함수부(130)는 x 함수부의 서브그룹 개수(u개)에 해당하는 S1함수 맵핑그룹으로 이루어지고. 상기 S1함수 맵핑그룹은 k 개의 단위맵핑부로 이루어진다. 상기 단위맵핑부는 상기 x 함수부의 서브그룹에서 출력되는 m 비트의 데이터를 입력으로 하여 수학식 5와 같은

Figure 112005054343413-pat00080
함수에 의해 The S1 function unit 130 is composed of an S1 function mapping group corresponding to the number of subgroups (u) of the x function unit. The S1 function mapping group includes k unit mapping units. The unit mapping unit receives m-bit data output from the subgroup of the x function unit as an equation (5).
Figure 112005054343413-pat00080
By function

Figure 112005054343413-pat00081
Figure 112005054343413-pat00081

m 개의 출력으로 오른쪽 순환이동 매핑한다.Maps right shift with m outputs.

상기 BTX1 연산부(130)는 상기 AB곱셈부(100)의 결과값과 상기 S1함수부(120)의 결과값을 최종 출력의 각 자리에 수학식 4에 의해 맵핑시켜 더한다.The BTX1 calculator 130 maps the result value of the AB multiplier 100 and the result value of the S1 function unit 120 to each digit of the final output by using Equation 4 below.

Figure 112005054343413-pat00082
Figure 112005054343413-pat00082

도 4는 상기 BTX1 연산부(130)의 보다 상세한 구성을 블록도로 도시한 것으로서, 상기 BTX1 연산부는 m 개의 서브BTX1 연산부(400, 410, 420)로 이루어진다. 4 is a block diagram illustrating a more detailed configuration of the BTX1 calculator 130, and the BTX1 calculator comprises m sub-BTX1 calculators 400, 410, and 420. Referring to FIG.

도 5는 상기 서브BTX1 연산부(400)의 보다 상세한 구성을 도시한 것으로서, 상기 AB곱셈부(100)의 결과값과 상기 S1함수부(120)의 단위매핑부의 결과값에 대해 상기 수학식 4에 의해 결정되는 입력값을 배타논리합 연산하는 XOR 게이트가 이진트리로 구성된다.FIG. 5 illustrates a more detailed configuration of the sub-BTX1 calculation unit 400. The result value of the AB multiplication unit 100 and the result value of the unit mapping unit of the S1 function unit 120 are expressed by Equation 4 below. An XOR gate that performs an exclusive logic operation on the input value determined by the binary tree is configured.

도 6은 본 발명에 의한 병렬곱셈장치의 개념을 블록도로 도시한 것이다.6 is a block diagram illustrating the concept of a parallel multiplication apparatus according to the present invention.

도 7은 본 발명의 실시예에 해당하는, AOP를 이용한 병렬곱셈기의 구체적인 블록도를 도시한 것이다.FIG. 7 shows a detailed block diagram of a parallel multiplier using AOP, corresponding to an embodiment of the present invention.

② Reyhani-Masoleh 와 Hasan의 곱셈기를 이용한 본 발명에 의한 유한체 GF(2m)에서의 병렬 곱셈기② Parallel multiplier in finite field GF (2 m ) according to the present invention using Reyhani-Masoleh and Hasan multiplier

본 발명은 2003년에 Reyhani-Masoleh 와 Hasan이 제안한 AND연산을 감소시키는 연산기를 이용하여 유한체 GF(2m)에서 곱셈을 수행하는 새로운 병렬 곱셈 연산기를 구성한다. 즉 유한체 GF(2n)가 타입 I의 최적 정규기저를 가지며

Figure 112005054343413-pat00083
가 이 정규기저의 생성자라고 하고, 임의의 원소
Figure 112005054343413-pat00084
이면 C=AB는 다음과 같다.The present invention constructs a new parallel multiplication operator that performs multiplication on the finite field GF (2 m ) by using the AND reduction algorithm proposed by Reyhani-Masoleh and Hasan in 2003. That is, finite field GF (2 n ) has an optimal normal basis of type I
Figure 112005054343413-pat00083
Is the constructor of this regular basis,
Figure 112005054343413-pat00084
Then C = AB is

Figure 112005054343413-pat00085
Figure 112005054343413-pat00085

기존의 곱셈기에서는

Figure 112005054343413-pat00086
를 계산해야 한다. 그러나 본 발명에서는 수학식 1에 의하여
Figure 112005054343413-pat00087
만 계산하면 된다. 따라서 m개의 AND연산이 주어진다. 또한,
Figure 112005054343413-pat00088
를 계산하기 위해 수학식 1이 성립하므로, 다음이 성립한다.In conventional multipliers
Figure 112005054343413-pat00086
Must be calculated. In the present invention, however,
Figure 112005054343413-pat00087
You only need to calculate. Thus m AND operations are given. Also,
Figure 112005054343413-pat00088
Equation 1 holds to calculate, so the following holds.

Figure 112005054343413-pat00089
Figure 112005054343413-pat00089

또한

Figure 112005054343413-pat00090
과Also
Figure 112005054343413-pat00090
and

Figure 112005054343413-pat00091
일 때 다음과 같다.
Figure 112005054343413-pat00091
When

Figure 112005054343413-pat00092
Figure 112005054343413-pat00092

만약,

Figure 112005054343413-pat00093
인 경우
Figure 112005054343413-pat00094
라 하면
Figure 112005054343413-pat00095
이며 다음과 같다.if,
Figure 112005054343413-pat00093
If
Figure 112005054343413-pat00094
If
Figure 112005054343413-pat00095
And is as follows.

Figure 112005054343413-pat00096
Figure 112005054343413-pat00096

Figure 112005054343413-pat00097
인 경우 다음이 성립한다.
Figure 112005054343413-pat00097
If, the following holds true.

Figure 112005054343413-pat00098
Figure 112005054343413-pat00098

따라서

Figure 112005054343413-pat00099
는 ,
Figure 112005054343413-pat00100
인 경우만 계산하며,
Figure 112005054343413-pat00101
의 계산은 할 필요가 없음을 알 수 있다. 유한체 GF(2m)은 GF(2n)의 부분체이므로 부분체의 성질에 의하여 GF(2n)에서 m개의 좌표를 수행한다. 따라서 타입 k인 유한체 GF(2m)에서 n=mk, GF(n+1)*=<2> 라 하고, 임의의 원소
Figure 112005054343413-pat00102
이면 C=AB는 다음과 같다.therefore
Figure 112005054343413-pat00099
Is,
Figure 112005054343413-pat00100
Only counts if
Figure 112005054343413-pat00101
It can be seen that there is no need to calculate. Finite field GF (2 m) performs m-coordinate in the GF (2 n), by the nature of the body portion is the part of the body GF (2 n). Therefore, in the finite field GF (2 m ) of type k, n = mk, GF (n + 1) * = <2>
Figure 112005054343413-pat00102
Then C = AB is

Figure 112005054343413-pat00103
Figure 112005054343413-pat00103

본 발명에서 제안하는 병렬 곱셈기는 Bi의 출력이 yj,i가 되도록 입력을 Aj,

Figure 112005054343413-pat00104
로 바꾸어 다시 구성하면 도 8과 같다. 또한
Figure 112005054343413-pat00105
값이 BTX의 j번째 좌표의 입력값이 되도록 조정한다.The parallel multiplier proposed by the present invention inputs A j , i such that the output of B i is y j, i .
Figure 112005054343413-pat00104
It is as shown in FIG. Also
Figure 112005054343413-pat00105
Adjust the value to be the input value of the jth coordinate of BTX.

상술한 Reyhani-Masoleh 와 Hasan의 곱셈기를 이용한 본 발명에 의한 유한체 GF(2m)에서의 병렬 곱셈기는, AB곱셈부, y함수부, S2함수부, BTX2 연산부를 포함하여 이루어진다.The parallel multiplier in the finite field GF (2 m ) according to the present invention using the multiplier of Reyhani-Masoleh and Hasan described above comprises an AB multiplication unit, a y function unit, an S2 function unit, and a BTX2 operation unit.

상기 AB곱셈부는 유한체 GF(2m)이 타입 k인 가우시안 정규기저를 가지며, GF(n+1)* = <2> 이고 n=mk 인 조건을 만족하는 입력 A, B(A, B는 벡터)에 대해, Ai * Bi 에 의해 A, B를 수학식 1에 의해 곱한다.The AB multiplication unit has a Gaussian normal basis of finite field GF (2 m ) of type k, and inputs A, B (A, B) satisfying the condition that GF (n + 1) * = <2> and n = mk Vector), A and B are multiplied by Equation 1 by A i * B i .

상기 AB곱셈부는 입력 A와 입력 B를 논리곱연산하며, 유한체 GF(2m)에서의 m 에 해당하는 개수만큼의 AND게이트로 이루어진다.The AB multiplication unit performs an AND operation on the input A and the input B, and is composed of as many AND gates as the number of m in the finite field GF (2 m ).

상기 y함수부는 입력 A, B에 대해 수학식 6에 의해 연산된다.The y function unit is calculated by Equation 6 with respect to inputs A and B.

Figure 112005054343413-pat00106
Figure 112005054343413-pat00106

여기서,

Figure 112005054343413-pat00107
here,
Figure 112005054343413-pat00107

상기 y함수부는 m개의 그룹으로 이루어지고, 상기 그룹은 u = (m-1)/2 개의 서브그룹으로 이루어진다. 상기 서브그룹은 Aj 와 A(( i0 +j))를 배타논리합 연산하는 제1XOR게이트와, Bj 와 B(( i0 +j))를 배타논리합 연산하는 제2XOR게이트와, 상기 제1XOR게이트 및 제2XOR게이트의 출력을 논리곱연산하는 AND게이트를 구비하여 이루어진다. 여기서 ((a+b))는 ((a+b)) = (a+b) mod m 이다.The y function portion consists of m groups, and the group consists of u = (m-1) / 2 subgroups. The subgroup includes a first XOR gate for performing an exclusive logic operation on Aj and A (( i0 + j)) , a second XOR gate for performing an exclusive logic operation on Bj and B (( i0 + j)) , and the first XOR gate and a first operation. And an AND gate for performing an AND operation on the output of the 2XOR gate. Where ((a + b)) is ((a + b)) = (a + b) mod m

상기 S2함수부는 상기 y 함수부의 결과값을 입력으로 하여 수학식 7에 따라 오른쪽 순환이동(right cyclic shift) 수행한다.The S2 function unit performs a right cyclic shift according to Equation 7 by inputting a result value of the y function unit.

Figure 112005054343413-pat00108
S2 =
Figure 112005054343413-pat00108
S2 =

상기 S2함수부는 y 함수부의 서브그룹 개수(u개)에 해당하는 S2함수 맵핑그룹로 이루어지고, 상기 S2함수 맵핑그룹은 k 개의 단위맵핑부으로 이루어진다. 상기 단위맵핑부는 상기 y 함수부의 서브그룹에서 출력되는 m 비트의 데이터를 입력으로 하여 수학식 5와 같은

Figure 112005054343413-pat00109
함수에 의해 m 개의 출력으로 오른쪽 순환이동 매핑한다.The S2 function unit includes an S2 function mapping group corresponding to the number of subgroups (u) of the y function unit, and the S2 function mapping group includes k unit mapping units. The unit mapping unit receives m bits of data output from the subgroup of the y function unit as shown in Equation 5
Figure 112005054343413-pat00109
The right-circular mapping maps to m outputs by function.

[수학식 5][Equation 5]

Figure 112005054343413-pat00110
Figure 112005054343413-pat00110

상기 BTX2연산부는 상기 AB곱셈부의 결과값과 상기 S2함수부의 결과값을 최종 출력의 각 자리에 수학식 4에 의해 맵핑시켜 더한다.The BTX2 calculation unit maps the result value of the AB multiplication unit and the result value of the S2 function unit to each position of the final output by adding (4).

Figure 112005054343413-pat00111
Figure 112005054343413-pat00111

여기서,

Figure 112005054343413-pat00112
here,
Figure 112005054343413-pat00112

상기 BTX2 연산부는 m 개의 서브BTX2 연산부로 이루어지고, 상기 서브BTX2 연산부는 상기 AB곱셈부의 결과값과 상기 S2함수부의 단위매핑부의 결과값에 대해 상기 수학식 8에 의해 결정되는 입력값을 배타논리합 연산하는 XOR 게이트가 이진트리로 구성된다.The BTX2 operator comprises m sub-BTX2 operators, and the sub-BTX2 operator performs an exclusive logical sum operation on an input value determined by Equation 8 with respect to a result value of the AB multiplier and a result value of the unit mapping unit of the S2 function unit. An XOR gate is composed of a binary tree.

도 9는 타입IV의 가우시안 정규기저를 갖는 유한체 GF(27)의 병렬곱셈 연산기의 일실시예를 도시한 것이다.Figure 9 illustrates one embodiment of a parallel multiplication operator of finite field GF (2 7 ) with Gaussian normal basis of type IV.

본 발명은 컴퓨터로 읽을 수 있는 기록 매체에 컴퓨터(정보 처리 기능을 갖는 장치를 모두 포함한다)가 읽을 수 있는 코드로서 구현하는 것이 가능하다. 컴퓨터가 읽을 수 있는 기록 매체는 컴퓨터 시스템에 의하여 읽혀질 수 있는 데이터가 저장되는 모든 종류의 기록 장치를 포함한다. 컴퓨터가 읽을 수 있는 기록 장치의 예로는 ROM, RAM, CD-ROM, 자기 테이프, 플로피 디스크, 광데이터 저장장치 등이 있다. The present invention can be embodied as code that can be read by a computer (including all devices having an information processing function) in a computer-readable recording medium. The computer-readable recording medium includes all kinds of recording devices in which data that can be read by a computer system is stored. Examples of computer-readable recording devices include ROM, RAM, CD-ROM, magnetic tape, floppy disks, optical data storage devices, and the like.

본 발명은 도면에 도시된 실시예를 참고로 설명되었으나 이는 예시적인 것에 불과하며, 본 기술 분야의 통상의 지식을 가진 자라면 이로부터 다양한 변형 및 균등한 타 실시예가 가능하다는 점을 이해할 것이다. 따라서, 본 발명의 진정한 기술적 보호 범위는 첨부된 등록청구범위의 기술적 사상에 의해 정해져야 할 것이다. Although the present invention has been described with reference to the embodiments shown in the drawings, this is merely exemplary, and it will be understood by those skilled in the art that various modifications and equivalent other embodiments are possible. Therefore, the true technical protection scope of the present invention will be defined by the technical spirit of the appended claims.

상술한 바와 같이 본 발명에 의하면, 암호학적으로 많이 응용되는 유한체인 타입 k=2,4,6에 본 발명을 적용하면, 가장 효율적인 Reyhani-Masoleh와 Hasan의 곱셈기와 동일한 공간 및 시간 복잡도를 갖는다. 따라서 암호관련 응용분야의 하드웨어 구현에 유용하게 적용할 수 있다.As described above, according to the present invention, when the present invention is applied to the cryptographically applied finite chain type k = 2, 4, 6, it has the same space and time complexity as the most efficient multiplier of Reyhani-Masoleh and Hasan. Therefore, it can be usefully applied to hardware implementation of cryptography related fields.

그리고 본 발명에 의한 병렬곱셈장치에 대한 성능평가를 한 결과 다음과 같다. The performance evaluation of the parallel multiplication apparatus according to the present invention is as follows.

① 성능① performance

가. 타입 k = 4인 경우end. If type k = 4

m이 홀수, p=4m+1은 소수, GF(p)*=<2>이고 에 u=(m-1)/2 대하여, Z* p에서 m is odd, p = 4m + 1 is prime, GF (p) * = <2> and for u = (m-1) / 2 in Z * p

Figure 112005054343413-pat00113
Figure 112005054343413-pat00113

이라고 하자. m이 2000이하의 경우에 대하여

Figure 112005054343413-pat00114
또는
Figure 112005054343413-pat00115
중 하나가 성립함을 확인하였다. 따라서 타입 IV의 경우는 2m 개의 XOR gate수를 줄일 수 있다. 예를 들어 타입 IV인 권장 타원곡선인 m=163인 경우,
Figure 112005054343413-pat00116
일 때
Figure 112005054343413-pat00117
로 같다. m=409인 경우,
Figure 112005054343413-pat00118
일 때
Figure 112005054343413-pat00119
로 같다.Let's say. for m less than 2000
Figure 112005054343413-pat00114
or
Figure 112005054343413-pat00115
One of them was confirmed to be true. Therefore, in the case of Type IV, the number of 2m XOR gates can be reduced. For example, if m = 163, the recommended elliptic curve of type IV,
Figure 112005054343413-pat00116
when
Figure 112005054343413-pat00117
Is the same as if m = 409
Figure 112005054343413-pat00118
when
Figure 112005054343413-pat00119
Is the same as

나. 타입 k = 6인 경우I. If type k = 6

타입 k=6을 만족하는 1000이하에 m에 대하여 i 에 대한

Figure 112005054343413-pat00120
가 같은 쌍으로 4개 나타난다. 즉 m=103 인 경우, i=2*103-1.2*103+1 일 때,
Figure 112005054343413-pat00121
이고, i=14,103-14 일 대 14, i=2*103+14.2*103-14 일 때 15, i=15,103-15 일 때 14 이다. 만약 m이 홀수, p=6m+1은 소수, GF(p)*=<2>라 하면 이를 이용하여
Figure 112005054343413-pat00122
에 대해
Figure 112005054343413-pat00123
일 때
Figure 112005054343413-pat00124
의 같은 쌍이 4개 존재한다. 따라서 타입 VI의 경우는 XOR gate를 8m 개를 감소시킬 수 있다는 것을 알 수 있다.For i for m less than or equal to type k = 6
Figure 112005054343413-pat00120
Appears as four in the same pair. That is, when m = 103, when i = 2 * 103-1.2 * 103 + 1,
Figure 112005054343413-pat00121
I = 14,103-14 days versus 14, i = 2 * 103 + 14.2 * 103-14 and 15 when i = 15,103-15. If m is odd, p = 6m + 1 is prime, GF (p) * = <2>
Figure 112005054343413-pat00122
About
Figure 112005054343413-pat00123
when
Figure 112005054343413-pat00124
There are 4 identical pairs of. Therefore, in the case of Type VI, it can be seen that the XOR gate can be reduced by 8m.

다. 타입 k = 10인 경우All. If type k = 10

타입 k=10을 만족하는 1000이하에 m에 대해 i에 대한

Figure 112005054343413-pat00125
의 같은 쌍이 16개 나타난다. 먼저 i0에 대하여 수학식 4의 에 대한
Figure 112005054343413-pat00126
가 같을 때를
Figure 112005054343413-pat00127
로 표현하면 m=337 인 경우는 다음과 같다.For i for m below 1000 that satisfies type k = 10
Figure 112005054343413-pat00125
16 identical pairs of are shown. First, for i 0 ,
Figure 112005054343413-pat00126
When is the same
Figure 112005054343413-pat00127
In the case of m = 337,

{6, m-6, 2*m+6, 278}, {7, 7, m+7, 116}, {7, m-7, 2*m+7, 0 }, {51, m+51, 2*m+51, 51}, {51, 2*m-51, 5*m-51, 272}, {52, m+52, 2*m+51, 109}, {57, m-57, 5*m-57, 285}, {58, m-58, 5*m-58, 0}, {58, 2*m-58, 4*m-58, 58}, {59, 2*m-59, 4*m-59, 65}, {65, 65, 5*m-65, 59}, {65, 2*m+65, 3*m+65, 116}, {109, m+109, 4*m-109, 52}, {109, 2*m+109, 5*m-109, 330}, {116, 116, 2*m-116, 65}, {116, 2*m+116, 4*m-116, 7}.{6, m-6, 2 * m + 6, 278}, {7, 7, m + 7, 116}, {7, m-7, 2 * m + 7, 0}, {51, m + 51 , 2 * m + 51, 51}, {51, 2 * m-51, 5 * m-51, 272}, {52, m + 52, 2 * m + 51, 109}, {57, m-57 , 5 * m-57, 285}, {58, m-58, 5 * m-58, 0}, {58, 2 * m-58, 4 * m-58, 58}, {59, 2 * m -59, 4 * m-59, 65}, {65, 65, 5 * m-65, 59}, {65, 2 * m + 65, 3 * m + 65, 116}, {109, m + 109 , 4 * m-109, 52}, {109, 2 * m + 109, 5 * m-109, 330}, {116, 116, 2 * m-116, 65}, {116, 2 * m + 116 , 4 * m-116, 7}.

만약 m이 홀수, p=10m+1 또는 12m+1 이 소수, GF(p)*=<2>이면

Figure 112005054343413-pat00128
에 대해
Figure 112005054343413-pat00129
일 때
Figure 112005054343413-pat00130
가 같은 쌍이 k=10 이면 16개, k=12 이면 25개 존재한다. 따라서 타입 X의 경우 32m개, XII의 경우 50개의 XOR gate 수를 줄일 수 있다.If m is odd, p = 10m + 1 or 12m + 1 is prime, GF (p) * = <2>
Figure 112005054343413-pat00128
About
Figure 112005054343413-pat00129
when
Figure 112005054343413-pat00130
There are 16 pairs of equal pairs if k = 10 and 25 if k = 12. Therefore, the number of 32m gates in type X and 50 gates in XII can be reduced.

한편, 본 발명은 Reyhani-Masoleh과 Hasan의 곱셈기를 이용한 유한체 GF(2m)에서의 병렬 곱셈기인 경우 최대 복잡도는 다음과 같다. 여기서 TA는 AND delay, TX는 XOR Delay 이다.On the other hand, the present invention is the maximum complexity when the parallel multiplier in the finite field GF (2 m ) using a multiplier of Reyhani-Masoleh and Hasan is as follows. Where T A is AND delay and T X is XOR Delay.

a) m2 AND gate.a) m 2 AND gate.

b) (k+1)m(m-1)/2 XOR gate.b) (k + 1) m (m-1) / 2 XOR gate.

c)

Figure 112005054343413-pat00131
c)
Figure 112005054343413-pat00131

또한 타입 II의 최적 정규기저를 가지는 유한체 GF(2m)에서 본 발명의 복잡도는 다음과 같다.In addition, the complexity of the present invention in the finite field GF (2 m ) having an optimal normal basis of type II is as follows.

a)

Figure 112005054343413-pat00132
a)
Figure 112005054343413-pat00132

b)

Figure 112005054343413-pat00133
b)
Figure 112005054343413-pat00133

타입 IV의 최적 정규기저를 가지는 유한체 GF(2m)에서 본 발명의 복잡도는 다음과 같다.The complexity of the present invention in finite field GF (2 m ) with an optimal normal basis of type IV is as follows.

a)

Figure 112005054343413-pat00134
a)
Figure 112005054343413-pat00134

b)

Figure 112005054343413-pat00135
b)
Figure 112005054343413-pat00135

타입 VI의 최적 정규기저를 갖는 유한체 에서 본 발명의 복잡도는 다음과 같다.The complexity of the present invention in a finite field with optimal normal basis of type VI is as follows.

a) m2 AND gate, m(7m-23)/2 XOR gate.a) m 2 AND gate, m (7m-23) / 2 XOR gate.

b)

Figure 112005054343413-pat00136
b)
Figure 112005054343413-pat00136

본 발명은 2003년에 제안된 Reyhani-Masoleh 와 Hasan의 곱셈기를 이용한 유한체 GF(2m)에서의 병렬 곱셈기인 경우 최대 복잡도는 다음과 같다. 여기서 TA는 AND delay, TX는 XOR Delay 이다.In the present invention, the maximum complexity of the parallel multiplier in the finite field GF (2 m ) using the multiplier of Reyhani-Masoleh and Hasan proposed in 2003 is as follows. Where T A is AND delay and T X is XOR Delay.

a) m(m+1)/2 AND gate.a) m (m + 1) / 2 AND gate.

b) (k+2)m(m-1)/2 XOR gate.b) (k + 2) m (m-1) / 2 XOR gate.

c)

Figure 112005054343413-pat00137
c)
Figure 112005054343413-pat00137

또한 타입 II의 최적 정규 기저를 갖는 유한체 GF(2m)에서 본 발명의 복잡도 는 다음과 같다. In addition, the complexity of the present invention in finite field GF (2 m ) with an optimal normal basis of type II is as follows.

a) m(m+1) AND gate.a) m (m + 1) AND gate.

b) 2m(m-1) XOR gate.b) 2 m (m-1) XOR gate.

c)

Figure 112005054343413-pat00138
c)
Figure 112005054343413-pat00138

타입 IV의 최적 정규기저를 갖는 유한체 에서 본 발명의 복잡도는 다음과 같다.The complexity of the present invention in a finite field with an optimal normal basis of type IV is as follows.

a) m(m+1)/2 AND gate.a) m (m + 1) / 2 AND gate.

b) m(3m-5) XOR gate.b) m (3m-5) XOR gate.

c)

Figure 112005054343413-pat00139
c)
Figure 112005054343413-pat00139

타입 VI의 최적 정규기저를 갖는 유한체 GF(2m)에서 본 발명의 복잡도는 다음과 같다.The complexity of the present invention in finite field GF (2 m ) with an optimal normal basis of type VI is as follows.

a) m2 AND gate.a) m 2 AND gate.

b) 4m(m-3) XOR gate.b) 4 m (m-3) XOR gate.

c)

Figure 112005054343413-pat00140
c)
Figure 112005054343413-pat00140

타입 (m,10) 또는 (m,12)인 가우스 주기를 갖는 유한체에서의 연산기는 16, 25쌍의

Figure 112005054343413-pat00141
가 각각 일치하므로, 최대 복잡도에서 32m, 50m개의 XOR gate를 빼며 그에 따른 의 TX값도 줄어들 것이다.In a finite field with a Gaussian period of type (m, 10) or (m, 12), operators of 16, 25 pairs
Figure 112005054343413-pat00141
Are matched, so the 32m and 50m XOR gates will be subtracted from the maximum complexity and the resulting T X value will be reduced.

Figure 112005054343413-pat00142
Figure 112005054343413-pat00142

② 예제② Example

m=7, k=4이면, n=29, p=29 이므로 GF(29)*=<2>이다. 각 i에 대한 ki

Figure 112005054343413-pat00143
의 값을
Figure 112005054343413-pat00144
와 같이 표현하면 다음과 같다.When m = 7 and k = 4, since n = 29 and p = 29, GF (29) * = <2>. K i for each i
Figure 112005054343413-pat00143
Value of
Figure 112005054343413-pat00144
When expressed as follows.

{1, 5, 5}, {7-1, 12, 6}, {7+1, 16, 2}, {2*7-1, 27, 0}, {2, 22, 1}, {7-2, 2, 4}, {7+2, 24, 3}, {2*7-2, 3, 5}, {3, 10, 3}, {7-3, 21, 3}, {7+3, 23, 2}, {2*7-3, 9, 5}.{1, 5, 5}, {7-1, 12, 6}, {7 + 1, 16, 2}, {2 * 7-1, 27, 0}, {2, 22, 1}, {7 -2, 2, 4}, {7 + 2, 24, 3}, {2 * 7-2, 3, 5}, {3, 10, 3}, {7-3, 21, 3}, {7 +3, 23, 2}, {2 * 7-3, 9, 5}.

따라서,

Figure 112005054343413-pat00145
에서
Figure 112005054343413-pat00146
이 동일한 값이므로 S3, S4는 삭제하여도 된다. therefore,
Figure 112005054343413-pat00145
in
Figure 112005054343413-pat00146
Since these values are the same, S 3 and S 4 may be deleted.

Claims (10)

유한체 GF(2m)이 타입 k인 가우시안 정규기저를 가지며, GF(n+1)* = <2> 이고 n=mk 인 조건을 만족하는 입력 A, B(A, B는 벡터)에 대해,For inputs A and B (A and B are vectors) that have a Gaussian normal basis of type k with finite field GF (2 m ) and satisfy the condition that GF (n + 1) * = <2> and n = mk , Ai * Bi 에 의해 A, B를 수학식 1에 의해 곱하는 AB곱셈부;An AB multiplication unit for multiplying A and B by Equation 1 by A i * B i ; [수학식 1][Equation 1] A*B = Ai * Bi A * B = A i * B i 입력 A, B에 대해 수학식 2에 의해 연산되는 x 함수부;An x function unit computed by Equation 2 on inputs A and B; [수학식 2][Equation 2]
Figure 112005054343413-pat00147
Figure 112005054343413-pat00147
상기 x 함수부의 결과값을 입력으로 하여 수학식 3에 따라 오른쪽 순환이동(right cyclic shift) 수행하는 S1함수부;An S1 function unit performing a right cyclic shift according to Equation 3 by inputting a result value of the x function unit; [수학식 3][Equation 3] S1 =
Figure 112005054343413-pat00148
S1 =
Figure 112005054343413-pat00148
상기 AB곱셈부의 결과값과 상기 S1함수부의 결과값을 최종 출력의 각 자리에 수학식 4에 의해 The result value of the AB multiplication unit and the result value of the S1 function unit are represented by Equation 4 in each position of the final output. [수학식 4][Equation 4]
Figure 112005054343413-pat00149
Figure 112005054343413-pat00149
맵핑시켜 더하는 BTX1 연산부를 포함함을 특징으로 하는 유한체의 병렬곱셈 연산장치.A finite field parallel multiplication computing device comprising: a BTX1 calculation unit for mapping and adding.
제1항에 있어서, 상기 AB곱셈부는The method of claim 1, wherein the AB multiplication unit 입력 A와 입력 B를 논리곱연산하며, 유한체 GF(2m)에서의 m 에 해당하는 개수만큼의 AND게이트로 이루어짐을 특징으로 하는 유한체의 병렬곱셈 연산 장치.A logical multiplication operation of input A and input B, wherein the finite field parallel multiplication unit is characterized in that the number of AND gates corresponding to m in the finite field GF (2 m ). 제1항에 있어서, 상기 x함수부는The method of claim 1, wherein the x function unit u = (m-1)/2개의 그룹으로 이루어지고,u = (m-1) / 2 groups, 상기 그룹은 m 개의 서브그룹으로 이루어지고,The group consists of m subgroups, 상기 서브그룹은The subgroup Aj 와 B((i0+j))를 논리곱 연산하는 제1AND게이트;A first AND gate for ANDing Aj and B ((i0 + j)) ; (여기서 ((a+b))는 ((a+b)) = (a+b) mod m 이다.)(Where ((a + b)) is ((a + b)) = (a + b) mod m.) A((i0+j)) 와 Bj 를 논리곱 연산하는 제2AND게이트; 및A second AND gate for performing an AND operation on A ((i0 + j)) and Bj; And 상기 제1AND게이트 및 제2AND게이트의 출력을 배타논리합하는 XOR게이트를 구비하여 이루어짐을 특징으로 하는 유한체의 병렬 곱셈 연산 장치.And an XOR gate configured to exclusively sum the outputs of the first and second AND gates. 제3항에 있어서, 상기 S1함수부는The method of claim 3, wherein the S1 function unit x 함수부의 서브그룹 개수(u개)에 해당하는 S1함수 맵핑그룹로 이루어지고,It consists of S1 function mapping group corresponding to the number of subgroups (u) of x function part, 상기 S1함수 맵핑그룹은 k 개의 단위맵핑부으로 이루어지고, The S1 function mapping group is composed of k unit mapping units, 상기 단위맵핑부는 상기 x 함수부의 서브그룹에서 출력되는 m 비트의 데이터를 입력으로 하여 수학식 5와 같은
Figure 112005054343413-pat00150
함수에 의해
The unit mapping unit receives m-bit data output from the subgroup of the x function unit as an equation (5).
Figure 112005054343413-pat00150
By function
[수학식 5][Equation 5]
Figure 112005054343413-pat00151
Figure 112005054343413-pat00151
m 개의 출력으로 오른쪽 순환이동 매핑함을 특징으로 하는 유한체의 병렬 곱셈 연산 장치.A finite field parallel multiplication device characterized by mapping right circular to m outputs.
제4항에 있어서, 상기 BTX1 연산부는The method of claim 4, wherein the BTX1 calculation unit m 개의 서브BTX1 연산부로 이루어지고,m sub-BTX1 calculation unit, 상기 서브BTX1 연산부는 The sub BTX1 calculation unit 상기 AB곱셈부의 결과값과 상기 S1함수부의 단위매핑부의 결과값에 대해 상기 수학식 4에 의해 결정되는 입력값을 배타논리합 연산하는 XOR 게이트가 이진트리로 구성됨을 특징으로 하는 유한체의 병렬 곱셈 연산 장치.A parallel multiplication operation of a finite field comprising an XOR gate which performs an exclusive logical sum operation on the result value of the AB multiplication unit and the input value determined by Equation 4 with respect to the result value of the unit mapping unit of the S1 function unit. Device. 유한체 GF(2m)이 타입 k인 가우시안 정규기저를 가지며, GF(n+1)* = <2> 이고 n=mk 인 조건을 만족하는 입력 A, B(A, B는 벡터)에 대해,For inputs A and B (A and B are vectors) that have a Gaussian normal basis of type k with finite field GF (2 m ) and satisfy the condition that GF (n + 1) * = <2> and n = mk , Ai * Bi 에 의해 A, B를 수학식 1에 의해 곱하는 AB곱셈부;An AB multiplication unit for multiplying A and B by Equation 1 by A i * B i ; [수학식 1][Equation 1] A*B = Ai * Bi A * B = A i * B i 입력 A, B에 대해 수학식 6에 의해 연산되는 y 함수부;A y function unit computed by Equation 6 on inputs A and B; [수학식 6][Equation 6]
Figure 112005054343413-pat00152
Figure 112005054343413-pat00152
여기서,
Figure 112005054343413-pat00153
here,
Figure 112005054343413-pat00153
상기 y 함수부의 결과값을 입력으로 하여 수학식 7에 따라 오른쪽 순환이동(right cyclic shift) 수행하는 S2함수부;An S2 function unit performing a right cyclic shift according to Equation 7 by inputting a result value of the y function unit; [수학식 7][Equation 7] S2 =
Figure 112005054343413-pat00154
S2 =
Figure 112005054343413-pat00154
상기 AB곱셈부의 결과값과 상기 S2함수부의 결과값을 최종 출력의 각 자리에 수학식 4에 의해 The result of the AB multiplication unit and the result of the S2 function unit are represented by Equation 4 in each position of the final output. [수학식 8][Equation 8]
Figure 112005054343413-pat00155
Figure 112005054343413-pat00155
여기서,
Figure 112005054343413-pat00156
here,
Figure 112005054343413-pat00156
맵핑시켜 더하는 BTX2 연산부를 포함함을 특징으로 하는 유한체의 병렬곱셈 연산장치.A finite field parallel multiplication computing device comprising: a BTX2 computing unit for mapping and adding.
제6항에 있어서, 상기 AB곱셈부는The method of claim 6, wherein the AB multiplication unit 입력 A와 입력 B를 논리곱연산하며, 유한체 GF(2m)에서의 m 에 해당하는 개수만큼의 AND게이트로 이루어짐을 특징으로 하는 유한체의 병렬곱셈 연산 장치.A logical multiplication operation of input A and input B, wherein the finite field parallel multiplication unit is characterized in that the number of AND gates corresponding to m in the finite field GF (2 m ). 제6항에 있어서, 상기 y함수부는The method of claim 6, wherein the y function unit m개의 그룹으로 이루어지고,m groups, 상기 그룹은 u = (m-1)/2 개의 서브그룹으로 이루어지고,The group consists of u = (m-1) / 2 subgroups, 상기 서브그룹은The subgroup Aj 와 A((i0+j))를 배타논리합 연산하는 제1XOR게이트;A first XOR gate for performing an exclusive logic operation on Aj and A ((i0 + j)) ; (여기서 ((a+b))는 ((a+b)) = (a+b) mod m 이다.)(Where ((a + b)) is ((a + b)) = (a + b) mod m.) Bj 와 B((i0+j))를 배타논리합 연산하는 제2XOR게이트; 및A second XOR gate for performing an exclusive logic operation on Bj and B ((i0 + j)) ; And 상기 제1XOR게이트 및 제2XOR게이트의 출력을 논리곱연산하는 AND게이트를 구비하여 이루어짐을 특징으로 하는 유한체의 병렬 곱셈 연산 장치.And an AND gate for performing logical AND operation on the outputs of the first XOR gate and the second XOR gate. 제8항에 있어서, 상기 S2함수부는The method of claim 8, wherein the S2 function unit y 함수부의 서브그룹 개수(u개)에 해당하는 S2함수 맵핑그룹로 이루어지고,y S2 function mapping group corresponding to the number of subgroups (u) of the function part, 상기 S2함수 맵핑그룹은 k 개의 단위맵핑부으로 이루어지고, The S2 function mapping group is composed of k unit mapping units, 상기 단위맵핑부는 상기 y 함수부의 서브그룹에서 출력되는 m 비트의 데이터를 입력으로 하여 수학식 5와 같은
Figure 112005054343413-pat00157
함수에 의해
The unit mapping unit receives m bits of data output from the subgroup of the y function unit as shown in Equation 5
Figure 112005054343413-pat00157
By function
[수학식 5][Equation 5]
Figure 112005054343413-pat00158
Figure 112005054343413-pat00158
m 개의 출력으로 오른쪽 순환이동 매핑함을 특징으로 하는 유한체의 병렬 곱셈 연산 장치.A finite field parallel multiplication device characterized by mapping right circular to m outputs.
제9항에 있어서, 상기 BTX2 연산부는10. The method of claim 9, wherein the BTX2 calculation unit m 개의 서브BTX2 연산부로 이루어지고,m sub-BTX2 calculation unit, 상기 서브BTX2 연산부는 The sub BTX2 calculation unit 상기 AB곱셈부의 결과값과 상기 S2함수부의 단위매핑부의 결과값에 대해 상기 수학식 8에 의해 결정되는 입력값을 배타논리합 연산하는 XOR 게이트가 이진트리로 구성됨을 특징으로 하는 유한체의 병렬 곱셈 연산 장치.A parallel multiplication operation of a finite field comprising an XOR gate that exclusively ORs an input value determined by Equation 8 with respect to a result of the AB multiplication unit and a result of the unit mapping unit of the S2 function unit. Device.
KR1020050090141A 2005-09-27 2005-09-27 A parallel multiplier in the finite field KR100653358B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020050090141A KR100653358B1 (en) 2005-09-27 2005-09-27 A parallel multiplier in the finite field

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020050090141A KR100653358B1 (en) 2005-09-27 2005-09-27 A parallel multiplier in the finite field

Publications (1)

Publication Number Publication Date
KR100653358B1 true KR100653358B1 (en) 2007-02-28

Family

ID=38103709

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020050090141A KR100653358B1 (en) 2005-09-27 2005-09-27 A parallel multiplier in the finite field

Country Status (1)

Country Link
KR (1) KR100653358B1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101213399B1 (en) 2009-09-10 2013-01-10 고려대학교 산학협력단 Method of bit-parallel polynomial basis multiplication

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5272661A (en) 1992-12-15 1993-12-21 Comstream Corporation Finite field parallel multiplier
KR20010068349A (en) * 2000-01-05 2001-07-23 김효근 Standard basis gf multiplier with the generalized basis cell and the fixed basic cell and squarer architecture
KR20040055523A (en) * 2002-12-21 2004-06-26 한국전자통신연구원 APPARATUS OF FIELD MULTIPLICATION OVER GF(p) AND GF(2^m)
US6925479B2 (en) 2001-04-30 2005-08-02 Industrial Technology Research Institute General finite-field multiplier and method of the same

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5272661A (en) 1992-12-15 1993-12-21 Comstream Corporation Finite field parallel multiplier
KR20010068349A (en) * 2000-01-05 2001-07-23 김효근 Standard basis gf multiplier with the generalized basis cell and the fixed basic cell and squarer architecture
US6925479B2 (en) 2001-04-30 2005-08-02 Industrial Technology Research Institute General finite-field multiplier and method of the same
KR20040055523A (en) * 2002-12-21 2004-06-26 한국전자통신연구원 APPARATUS OF FIELD MULTIPLICATION OVER GF(p) AND GF(2^m)

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
논문

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101213399B1 (en) 2009-09-10 2013-01-10 고려대학교 산학협력단 Method of bit-parallel polynomial basis multiplication

Similar Documents

Publication Publication Date Title
Okada et al. Implementation of Elliptic Curve Cryptographic Coprocessor over GF (2 m) on an FPGA
Lee et al. Efficient design of low-complexity bit-parallel systolic Hankel multipliers to implement multiplication in normal and dual bases of GF (2 m)
US6763366B2 (en) Method for calculating arithmetic inverse over finite fields for use in cryptography
Daneshbeh et al. A class of unidirectional bit serial systolic architectures for multiplicative inversion and division over GF (2/sup m/)
KR100653358B1 (en) A parallel multiplier in the finite field
Kadu et al. Hardware implementation of efficient elliptic curve scalar multiplication using vedic multiplier
Park et al. Subquadratic space complexity multiplier for GF (2n) using type 4 Gaussian normal bases
Neumeier et al. Efficient implementation of punctured parallel finite field multipliers
Shuqin et al. -ADIC FORMAL SERIES AND COHEN'S PROBLEM
Baktır et al. Finite field polynomial multiplication in the frequency domain with application to elliptic curve cryptography
Özbudak et al. A new representation of elements of binary fields with subquadratic space complexity multiplication of polynomials
Kobayashi et al. Fast inversion algorithm in GF (2m) suitable for implementation with a polynomial multiply instruction on GF (2)
Li et al. Low complexity bit-parallel $ GF (2^ m) $ multiplier for all-one polynomials
Preethy et al. RNS-based logarithmic adder
Deepthi et al. Implementation and analysis of stream ciphers based on the elliptic curves
Bernatska et al. Addition via reduction algorithm on trigonal curves
Yong et al. Speeding Scalar Multiplication of Elliptic Curve over GF (2mn).
Saleh et al. Efficient elliptic curve cryptosystems
Meher et al. A New Look-Up Table Approach for High-Speed Finite Field Multiplication
Andronic et al. A unified VLSI architecture for addition and multiplication in GF (2 m)
Narain et al. Implementation of reconfigurable galois field multipliers over2m using primitive polynomials
RANI et al. Design and Implementation of High Speed SOBL MASTROVITO Multiplier
Jeon et al. An evolutionary approach to the design of cellular automata architecture for multiplication in elliptic curve cryptography over finite fields
CN104239279A (en) Multiplying unit
Daneshbeh et al. A Class of Scalable Unidirectional Bit Serial Systolic Architectures for Multiplicative Inversion and Division over GF (2m)

Legal Events

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

Payment date: 20121004

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20130717

Year of fee payment: 8

LAPS Lapse due to unpaid annual fee