KR100653358B1 - A parallel multiplier in the finite field - Google Patents
A parallel multiplier in the finite field Download PDFInfo
- 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
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F7/00—Methods or arrangements for processing data by operating upon the order or content of the data handled
- G06F7/38—Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation
- G06F7/48—Methods 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/52—Multiplying; Dividing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F5/00—Methods or arrangements for data conversion without changing the order or content of the data handled
- G06F5/06—Methods 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/08—Methods 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F7/00—Methods or arrangements for processing data by operating upon the order or content of the data handled
- G06F7/60—Methods 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/72—Methods 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/724—Finite field arithmetic
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03K—PULSE TECHNIQUE
- H03K19/00—Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits
- H03K19/20—Logic 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
Description
도 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
[수학식 1][Equation 1]
A*B = Ai * Bi A * B = A i * B i
[수학식 2][Equation 2]
[수학식 3][Equation 3]
S1 = S1 =
[수학식 4][Equation 4]
[수학식 5][Equation 5]
상기 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와 같은 함수에 의해 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 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
[수학식 6][Equation 6]
여기서, here,
[수학식 7][Equation 7]
S2 = S2 =
[수학식 8][Equation 8]
여기서, here,
상기 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와 같은 함수에 의해 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 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)가 존재하여 이 GF(2) 위에서 GF(2m)의 기저 (Basis)일 때 N을 정규기저라 하고, β를 정규기저 생성자라 한다. 따라서 A∈GF(2m)에 대하여 로 표현되며 좌표로 와 같이 나타낸다. 또한 벡터 (행렬)표현으로 다음과 나타내며 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 ) 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 ) Expressed in coordinates It is represented as Also, the vector (matrix) representation is as follows and T represents the transpose of the matrix.
임의의 원소 A∈GF(2m)에 대해 A2은 좌표로 표현하면 이고, 이는 오른쪽 순환이동 (Right cyclic shift, RCS)로 수행이 된다. For any element A∈GF (2 m ), A 2 is represented by coordinates 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)을 , kth root of unity를 τ이고, 이라고 하면 β는 유한체 GF(2m)의 정규기저 생성자이다. 즉 은 유한체 GF(2) 위에서 GF(2m)의 정규기저로, 이 때 β를 유한체 GF(2) 위에서 타입 (m,k) 인 가우스 주기 (Gauss period of type (m,k))라 한다. 본 발명에서는 유한체 GF(2m)이 타입(m,k)인 가우스 주기를 가지는 경우 유한체 GF(2m)를 타입 k라고 한다. 또한 모든 계수가 1인 다항식인 을 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 , kth root of unity is τ, Is the normal basis constructor of the finite field GF (2 m ). In other words 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 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 최적 정규기저)
유한체 GF(2) 위에서 GF(2n)이 타입 I의 최적 정규기저를 가지기 위한 필요충분조건은 (n+1)이 소수이고 GF(n+1)*=<2> 이다. 또는 n차의 AOP인 가 유한체 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 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의 최적 정규기저)
유한체 GF(2) 위에서 GF(2n)이 타입 II의 최적 정규기저를 가지기 위한 필요 충분조건은 (2m+1)이 소수이고, GF(2m+1)*=<2>이나 2m+1≡3 mod 4 이고, GF(2m+1)*=<-1,2> 이면 는 유한체 GF(2)위에서 GF(2m)의 최적 정규기저 생성자이다. 여기서 는 (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> Is the optimal normal basis constructor of GF (2 m ) on finite field GF (2). here Is the root of (2m + 1).
본 발명에서는 m은 홀수이고 , n=mk, (n+1)은 소수이며 GF(n+1)*=<2>인 경우를 고려한다. 즉 이 (n+1)의 원시근이면, 정리 1에 의해 는 유한체 GF(2n)의 타입 I 최적 정규기저 생성자이다. 또한, e=mk, τ=2m이므로, (m,k)는 가우스 주기이며, 는 유한체 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. In other words If this is the (n + 1) primitive root,
와 같이 표현된다. 유한체 GF(2m)는 GF(2n)의 부분체이므로, A∈GF(2n) 이고, It is expressed as Finite field GF (2 m ) is a subdivision of GF (2 n ), so A∈GF (2 n ),
이다. 임의의 원소to be. Arbitrary elements
이면 Back side
[수학식 1][Equation 1]
이다.to be.
수학식 1과 같은 성질을 만족한다.The same properties as in
(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]
즉 기저 N을 이용하여 을 구성하며 수학식 2에서 곱의 행렬 M을 다음과 같이 다시 표현한다.Using base N The matrix M of the product in
제곱 연산이 순환이동연산으로 이루어진다는 것을 이용하면 곱 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
따라서 각 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 = ()을 다음과 같이 분리하였다.Reyhani-Masoleh and Hasan are the matrix of finite products M = ( ) Were separated as follows.
만약 이면 U의 모든 원소는 로 표현되므로 다음과 같은 정리를 제시하였다.if If all elements of U are The following theorem is presented.
정리 3. 이면 C=AB는 다음과 같다.
여기서 aj, bj는 A,B의 좌표이며 이다. 는 XOR 연산자이고, ·는 AND 연산자이며 모든 색인은 모듈러 m값이다.Where a j , b j are the coordinates of A, B to be. Is the XOR operator, · is the AND operator, and all indexes are modular m values.
유한체 GF(2n)가 기약다항식 AOP 에 의해 생성되고, AOP의 근을 라 하자. 이 때 는 유한체 GF(2n)의 타입 I 최적 정규기저를 생성하며, 정리 3을 정리 4와 같이 적용할 수 있다. 여기서 <<i+j>>는 i+j mod n을 의미한다.Finite Field GF (2 n ) is a Polynomial AOP Generated by the root of the AOP Let's do it. At this time Produces a type I optimal normal basis of finite field GF (2 n ), and
정리 4. 유한체 이 타입 I 최적 정규기저를 가지며 는 이 정규기저의 생성자이라고 하자. 임의의 원소 이면 는 다음과 같다. Theorem 4. Finite Field Type I Having Optimal Normal Basis Let is the constructor of this regular basis. If it is an arbitrary element, then
② 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
정리 5. 임의의 원소 이면 C=AB는 다음과 같다.5. The Random Element Then C = AB is
이고 모든 색인은 모듈러 m 값이다. 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)에서 곱셈을 수행하는 새로운 병렬 곱셈 연산기를 제안한 것이다. 즉 임의의 원소 일 때 2002년과 2003년에 각각 제안된 Reyhani-Masoleh과 Hasan의 기본 타입 I 연산기를 활용하여 새로운 병렬 곱셈 연산 C=AB를 수행하는 연산기를 구성한다. 본 발명에서 이용할 는 다음과 같이 정의한다.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 Is constructed using the Reyhani-Masoleh and Hasan basic Type I operators proposed in 2002 and 2003 respectively. Use in the present invention Is defined as:
정의 1. n=mk, (n+1)은 소수, GF(n+1)*=<2>이며 ki는 이라 하자. 이 때 에 대해 인 경우 다음과 같이 를 정의 한다.
① 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의 연산기에서 이므로 n개의 계산이 필요하다. 그러나 본 발명에서는 는 m개만 계산한다. 또한 은 식 (1)에 의해 임을 이용하여 연산한다. 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 N calculations are required. However, in the present invention Counts only m. Also By the equation (1) Calculate using
Reyhani-Masoleh와 Hasan의 곱셈기에서 에 대하여 Bi 통과한 후 Si에서의 연산은 을 만족하는 ki에 따라 오른쪽 순환이동(RCS)에 의하여 수행된다. 한편 이므로 m개의 좌표가 k번 반복하여 표현되며 이므로 0부터 m-1까지의 좌표만 고려한다. 따라서 에 대해 Bi, 경우 로부터 Si의 출력값은 앞에 정의한 에 의한 RCS에 의하여 주어진다. In the multiplier of Reyhani-Masoleh and Hasan After passing through B i , the operation in S i Is performed by right circular shift (RCS) according to k i satisfying. Meanwhile M coordinates are repeated k times. Therefore, only coordinates from 0 to m-1 are considered. therefore About Bi, Occation The output of S i from Given by RCS.
임의의 원소 에 대해 본 발명에서 제안하는 C=AB는 다음과 같다.Arbitrary elements C = AB proposed by the present invention is as follows.
도 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곱셈부(100)는 유한체 GF(2m)이 타입 k인 가우시안 정규기저를 가지며, GF(n+1)* = <2> 이고 n=mk 인 조건을 만족하는 입력 A, B(A, B는 벡터)에 대해, Ai * Bi 에 의해 A, B를 수학식 1에 의해 곱한다.The
상기 AB곱셈부(100)는 입력 A와 입력 B를 논리곱연산하며, 유한체 GF(2m)에서의 m 에 해당하는 개수만큼의 AND게이트로 이루어짐이 바람직하다.The
상기 x함수부(110)는 입력 A, B에 대해 수학식 2에 의해 연산된다.The
도 2는 상기 x함수부(110)의 보다 상세한 구성을 블록도로 도시한 것으로서,u = (m-1)/2개의 그룹으로 이루어지고, 상기 그룹은 m 개의 서브그룹으로 이루어진다. FIG. 2 is a block diagram showing a more detailed configuration of the
도 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
상기 S1함수부(120)는 상기 x 함수부(110)의 결과값을 입력으로 하여 수학식 3에 따라 오른쪽 순환이동(right cyclic shift) 수행한다.The
상기 S1함수부(130)는 x 함수부의 서브그룹 개수(u개)에 해당하는 S1함수 맵핑그룹으로 이루어지고. 상기 S1함수 맵핑그룹은 k 개의 단위맵핑부로 이루어진다. 상기 단위맵핑부는 상기 x 함수부의 서브그룹에서 출력되는 m 비트의 데이터를 입력으로 하여 수학식 5와 같은 함수에 의해 The
m 개의 출력으로 오른쪽 순환이동 매핑한다.Maps right shift with m outputs.
상기 BTX1 연산부(130)는 상기 AB곱셈부(100)의 결과값과 상기 S1함수부(120)의 결과값을 최종 출력의 각 자리에 수학식 4에 의해 맵핑시켜 더한다.The
도 4는 상기 BTX1 연산부(130)의 보다 상세한 구성을 블록도로 도시한 것으로서, 상기 BTX1 연산부는 m 개의 서브BTX1 연산부(400, 410, 420)로 이루어진다. 4 is a block diagram illustrating a more detailed configuration of the
도 5는 상기 서브BTX1 연산부(400)의 보다 상세한 구성을 도시한 것으로서, 상기 AB곱셈부(100)의 결과값과 상기 S1함수부(120)의 단위매핑부의 결과값에 대해 상기 수학식 4에 의해 결정되는 입력값을 배타논리합 연산하는 XOR 게이트가 이진트리로 구성된다.FIG. 5 illustrates a more detailed configuration of the
도 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의 최적 정규기저를 가지며 가 이 정규기저의 생성자라고 하고, 임의의 원소 이면 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 Is the constructor of this regular basis, Then C = AB is
기존의 곱셈기에서는 를 계산해야 한다. 그러나 본 발명에서는 수학식 1에 의하여 만 계산하면 된다. 따라서 m개의 AND연산이 주어진다. 또한, 를 계산하기 위해 수학식 1이 성립하므로, 다음이 성립한다.In conventional multipliers Must be calculated. In the present invention, however, You only need to calculate. Thus m AND operations are given. Also,
또한 과Also and
일 때 다음과 같다. When
만약, 인 경우 라 하면 이며 다음과 같다.if, If If And is as follows.
인 경우 다음이 성립한다. If, the following holds true.
따라서 는 , 인 경우만 계산하며, 의 계산은 할 필요가 없음을 알 수 있다. 유한체 GF(2m)은 GF(2n)의 부분체이므로 부분체의 성질에 의하여 GF(2n)에서 m개의 좌표를 수행한다. 따라서 타입 k인 유한체 GF(2m)에서 n=mk, GF(n+1)*=<2> 라 하고, 임의의 원소 이면 C=AB는 다음과 같다.therefore Is, Only counts if 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> Then C = AB is
본 발명에서 제안하는 병렬 곱셈기는 Bi의 출력이 yj,i가 되도록 입력을 Aj, 로 바꾸어 다시 구성하면 도 8과 같다. 또한 값이 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 . It is as shown in FIG. Also 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
상기 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
여기서, here,
상기 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.
상기 S2함수부는 y 함수부의 서브그룹 개수(u개)에 해당하는 S2함수 맵핑그룹로 이루어지고, 상기 S2함수 맵핑그룹은 k 개의 단위맵핑부으로 이루어진다. 상기 단위맵핑부는 상기 y 함수부의 서브그룹에서 출력되는 m 비트의 데이터를 입력으로 하여 수학식 5와 같은 함수에 의해 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
[수학식 5][Equation 5]
상기 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).
여기서, here,
상기 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
이라고 하자. m이 2000이하의 경우에 대하여 또는 중 하나가 성립함을 확인하였다. 따라서 타입 IV의 경우는 2m 개의 XOR gate수를 줄일 수 있다. 예를 들어 타입 IV인 권장 타원곡선인 m=163인 경우, 일 때 로 같다. m=409인 경우, 일 때 로 같다.Let's say. for m less than 2000 or 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, when Is the same as if m = 409 when Is the same as
나. 타입 k = 6인 경우I. If type k = 6
타입 k=6을 만족하는 1000이하에 m에 대하여 i 에 대한 가 같은 쌍으로 4개 나타난다. 즉 m=103 인 경우, i=2*103-1.2*103+1 일 때, 이고, 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>라 하면 이를 이용하여 에 대해 일 때 의 같은 쌍이 4개 존재한다. 따라서 타입 VI의 경우는 XOR gate를 8m 개를 감소시킬 수 있다는 것을 알 수 있다.For i for m less than or equal to type k = 6 Appears as four in the same pair. That is, when m = 103, when i = 2 * 103-1.2 * 103 + 1, 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> About when 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에 대한 의 같은 쌍이 16개 나타난다. 먼저 i0에 대하여 수학식 4의 에 대한 가 같을 때를 로 표현하면 m=337 인 경우는 다음과 같다.For i for m below 1000 that satisfies type k = 10 16 identical pairs of are shown. First, for i 0 , When is the same 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>이면 에 대해 일 때 가 같은 쌍이 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> About when 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) c)
또한 타입 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) a)
b) b)
타입 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) a)
b) b)
타입 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) b)
본 발명은 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) c)
또한 타입 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) c)
타입 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) c)
타입 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) c)
타입 (m,10) 또는 (m,12)인 가우스 주기를 갖는 유한체에서의 연산기는 16, 25쌍의 가 각각 일치하므로, 최대 복잡도에서 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 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.
② 예제② Example
m=7, k=4이면, n=29, p=29 이므로 GF(29)*=<2>이다. 각 i에 대한 ki 와 의 값을 와 같이 표현하면 다음과 같다.When m = 7 and k = 4, since n = 29 and p = 29, GF (29) * = <2>. K i for each i Value of 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}.
따라서, 에서 이 동일한 값이므로 S3, S4는 삭제하여도 된다. therefore, in Since these values are the same, S 3 and S 4 may be deleted.
Claims (10)
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)
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)
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 |
-
2005
- 2005-09-27 KR KR1020050090141A patent/KR100653358B1/en not_active IP Right Cessation
Patent Citations (4)
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)
Title |
---|
논문 |
Cited By (1)
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 |