KR100976232B1 - 고속 비트-병렬 다항식 곱셈기, 그 곱셈 방법 - Google Patents
고속 비트-병렬 다항식 곱셈기, 그 곱셈 방법 Download PDFInfo
- Publication number
- KR100976232B1 KR100976232B1 KR1020090012137A KR20090012137A KR100976232B1 KR 100976232 B1 KR100976232 B1 KR 100976232B1 KR 1020090012137 A KR1020090012137 A KR 1020090012137A KR 20090012137 A KR20090012137 A KR 20090012137A KR 100976232 B1 KR100976232 B1 KR 100976232B1
- Authority
- KR
- South Korea
- Prior art keywords
- polynomial
- block
- multiplication
- elements
- basis
- 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/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
-
- 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/50—Adding; Subtracting
- G06F7/505—Adding; Subtracting in bit-parallel fashion, i.e. having a different digit-handling circuit for each denomination
-
- 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
- G06F7/523—Multiplying only
- G06F7/53—Multiplying only in parallel-parallel fashion, i.e. both operands being entered in parallel
Landscapes
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Engineering & Computer Science (AREA)
- Mathematical Analysis (AREA)
- Pure & Applied Mathematics (AREA)
- Computational Mathematics (AREA)
- Mathematical Optimization (AREA)
- Theoretical Computer Science (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Mathematical Physics (AREA)
- Error Detection And Correction (AREA)
- Complex Calculations (AREA)
- Detection And Correction Of Errors (AREA)
Abstract
고속 비트-병렬 다항식 곱셈기, 그 곱셈 방법이 개시된다. 본 발명의 일 실시 예에 따른 고속 비트-병렬 다항식 곱셈기는 제1다항식 및 제2다항식 각각에서 적어도 하나의 원소를 변형 이동 다항식 기저로 변환하는 변환 블록; 상기 기저 변환이 되지 않은 원소들 간의 논리곱 연산을 수행하는 제1곱셈 블록; 상기 기저 변환이 되지 않은 원소들의 논리합 연산을 수행하는 제1덧셈 블록; 및 상기 변환 블록, 제1곱셈 블록 및 제1덧셈 블록에서 출력되는 원소들을 이용하여 상기 제1다항식과 제2다항식간의 곱셈값을 생성하는 연산부를 포함한다. 본 발명의 다른 실시 예에 따른 고속 비트-병렬 다항식 곱셈기는 제1다항식 및 제2다항식에서 적어도 하나의 원소, (i는 임의의 정수)를 각각 , (k는 임의의 정수)로 기저 변환하는 변환 블록; 상기 기저 변환이 되지 않은 원소들 간의 논리곱 연산을 수행하는 제1곱셈 블록; 상기 기저 변환이 되지 않은 원소들의 논리합 연산을 수행하는 제1덧셈 블록; 및 상기 변환 블록, 제1곱셈 블록 및 제1덧셈 블록에서 출력되는 원소들을 이용하여 상기 제1다항식과 제2다항식간의 곱셈값을 생성하는 연산부를 포함한다. 본 발명의 실시 예들에 의하면, AND 게이트와 XOR 게이트의 비용을 같다고 가정할 경우 기존 곱셈기에 비하여 최대 25%의 게이트가 감소하고, 중간 항이 k인 다항식 중 100≤n<1000에서 n≤2k를 만족하는 1,335개의 삼항 기약다항식의 시간 복잡도는 174개(13%)가 기존의 결과보다 작으며 1,161개(87%)가 같으므로, 고속 연산이 요구되는 환경에서 기존 보다 더 효율적이다.
Shifted Polynomial Basis, time complexity, space complexity
Description
본 발명은 공개키 암호시스템 및 파이프라인이 아닌 구조의 비트-병렬 곱셈기가 탑재 가능한 모든 암호칩 및 유한체 연산기 등에 적용될 수 있는, 작은 시간 복잡도를 가지는 비트-병렬 SPB 곱셈기에 관한 것이다.
이동 다항식 기저 (Shifted Polynomial Basis; 이하 'SPB')는 Fan과 Dai에 의해 제안되었다. 이를 이용하여 파이프라인(pipeline)이 아닌 비트-병렬 곱셈기도 제안된 바 있다. SPB는 다항식 기저 (Polynomial Basis; PB)를 변형한 형태로 SPB와 PB 사이의 기저 변환이 매우 간단하게 수행되는 특징이 있다. 따라서 기존의 SPB 비트-병렬 곱셈기는 기존의 PB 비트-병렬 곱셈기와 많이 비교된다.
따라서, 본 발명이 이루고자 하는 첫 번째 기술적 과제는 기존 결과보다 시간 복잡도면에서 우수하며 공간 복잡도가 증가되지 않는 고속 비트-병렬 곱셈기를 제공하는 데 있다.
본 발명이 이루고자 하는 두 번째 기술적 과제는 기존 결과보다 시간 복잡도면에서 우수하며 공간 복잡도가 증가되지 않는 고속 비트-병렬 곱셈 방법을 제공하는 데 있다.
상기의 첫 번째 기술적 과제를 이루기 위하여, 본 발명의 일 실시 예에 따른 고속 비트-병렬 다항식 곱셈기는 제1다항식 및 제2다항식 각각에서 적어도 하나의 원소를 변형 이동 다항식 기저로 변환하는 변환 블록; 상기 기저 변환이 되지 않은 원소들 간의 논리곱 연산을 수행하는 제1곱셈 블록; 상기 기저 변환이 되지 않은 원소들의 논리합 연산을 수행하는 제1덧셈 블록; 및 상기 변환 블록, 제1곱셈 블록 및 제1덧셈 블록에서 출력되는 원소들을 이용하여 상기 제1다항식과 제2다항식간의 곱셈값을 생성하는 연산부를 포함한다.
바람직하게는, 상기 변환 블록, 제1곱셈 블록 및 제1덧셈 블록은, 병렬적으로 연산을 수행할 수 있다.
바람직하게는, 상기 연산부는, 상기 변환 블록에서 출력되는 원소들간의 논리곱 연산을 수행하는 제2곱셈 블록을 포함할 수 있다.
바람직하게는, 상기 연산부는, 상기 제1덧셈 블록에서 출력되는 원소들간의 논리곱 연산을 수행하는 제3곱셈 블록을 포함할 수 있다.
바람직하게는, 상기 연산부는, 상기 제1곱셈 블록에서 출력되는 원소들간의 논리합 연산을 수행하는 제2덧셈 블록을 포함할 수 있다.
바람직하게는, 상기 연산부는, 상기 변환 블록에서 출력되는 원소들간의 논리곱 연산을 수행하는 제2곱셈 블록; 상기 제1덧셈 블록에서 출력되는 원소들간의 논리곱 연산을 수행하는 제3곱셈 블록; 상기 제1곱셈 블록에서 출력되는 원소들간의 논리합 연산을 수행하는 제2덧셈 블록; 및 상기 제2곱셈 블록, 제3곱셈 블록 및 상기 제2덧셈 블록에서 출력되는 원소들간의 논리합 연산을 수행하는 이진 트리 덧셈 블록을 포함할 수 있다.
바람직하게는, 상기 변형 이동 다항식 기저는, 다항식 원소 중 적어도 하나의 원소의 차수가 나머지 원소의 차수와 불연속이 되는 다항식 기저일 수 있다.
상기의 첫 번째 기술적 과제를 이루기 위하여, 본 발명의 다른 실시 예에 따른 고속 비트-병렬 다항식 곱셈기는 제1다항식 및 제2다항식에서 적어도 하나의 원소, (i는 임의의 정수)를 각각 , (k는 임의의 정수)로 기저 변환하는 변환 블록; 상기 기저 변환이 되지 않은 원소들 간의 논리곱 연산을 수행하는 제1곱셈 블록; 상기 기저 변환이 되지 않은 원소들의 논리합 연산을 수행하는 제1덧셈 블록; 및 상기 변환 블록, 제1곱셈 블록 및 제1덧셈 블록에서 출력되는 원소들을 이용하여 상기 제1다항식과 제2다항식간의 곱셈값을 생성하는 연산부 를 포함한다.
상기의 두 번째 기술적 과제를 이루기 위하여, 본 발명의 일 실시 예에 따른 고속 비트-병렬 다항식 곱셈 방법은 변환 블록에서 제1다항식 및 제2다항식 각각에서 적어도 하나의 원소를 변형 이동 다항식 기저로 변환하고, 제1곱셈 블록에서 상기 기저 변환이 되지 않은 원소들 간의 논리곱 연산을 수행하며, 제1덧셈 블록에서 상기 기저 변환이 되지 않은 원소들의 논리합 연산을 수행하는 단계; 및 상기 기저 변환, 논리곱 및 논리합의 결과값을 이용하여 상기 제1다항식과 제2다항식간의 곱셈값을 생성하는 단계를 포함한다.
바람직하게는, 상기 곱셈값을 생성하는 단계는, 상기 변환 블록에서 출력되는 원소들간의 논리곱 연산을 수행하는 단계를 포함할 수 있다.
바람직하게는, 상기 곱셈값을 생성하는 단계는, 상기 제1덧셈 블록에서 출력되는 원소들간의 논리곱 연산을 수행하는 단계를 포함할 수 있다.
바람직하게는, 상기 곱셈값을 생성하는 단계는, 상기 제1곱셈 블록에서 출력되는 원소들간의 논리합 연산을 수행하는 단계를 포함할 수 있다.
바람직하게는, 상기 변형 이동 다항식 기저는, 다항식 원소 중 적어도 하나의 원소의 차수가 나머지 원소의 차수와 불연속이 되는 다항식 기저일 수 있다.
이하에서는 도면을 참조하여 본 발명의 바람직한 실시 예를 설명하기로 한다. 그러나, 다음에 예시하는 본 발명의 실시 예는 여러 가지 다른 형태로 변형될 수 있으며, 본 발명의 범위가 다음에 상술하는 실시 예에 한정되는 것은 아니다.
먼저, SPB 비트-병렬 곱셈 방법을 설명한다. 는 w개의 항을 가지는 기약다항식 에 의하여 생성되었고, 의 근을 라 정의하자. (이때 이다.) 그러면 의 임의의 두 원소 는 이다. 이때 이다.
두 원소의 곱 는 다항식 곱셈 과 에 의한 모듈러 감산 연산 에 의해 계산된다. 따라서 곱셈 연산의 복잡도는 위의 두 과정에 의하여 결정되며, 모듈러 감산 연산 복잡도의 경우 기약다항식 의 항의 개수에 의하여 영향을 받는다.
본 발명에서는 삼항 기약다항식에 적합한 SPB 곱셈 방법을 제안한다. 이후 모든 기약다항식은 중간 항이 인 이다. 2005년에 의 원소를 SPB로 표현하는 방법이 제안되었으며 이는 다음과 같이 정의된다.
이때 는 부터 까지 항을 가지므로 사이의 항과 사이의 항은 모듈러 감산 연산되어야 하므로 이를 각각 와 로 표현하고 모듈러 감산이 필요 없는 항들을 r이라하면 이고, 로 와 를 모듈러 감 산한 결과를 와 라 하면 이다.
곱셈기 구성에서 두 가지 방법을 고려할 수 있다. 첫 번째는 일반적인 곱셈기로 인 다항식 곱셈을 수행한 후 모듈러 감산연산을 수행하는 것이고, 두 번째는 마스트로비토 (mastrovito) 곱셈기로 에 의하여 생성된 감산행렬 Z를 생성한 후 를 계산하는 것이다. 여기서는 전자를 type-I, 후자를 type-II 곱셈기라 한다.
위의 두 가지 병렬 곱셈기의 시간 및 공간 복잡도는 다음과 같다. Type-I의 공간 복잡도의 경우 차 다항식 곱셈에서 개의 AND 게이트와 개의 XOR 게 이트가 소요되며, 모듈러 감산 단계인 의 덧셈에서 개의 XOR 게이트와 의 덧셈에서 개의 XOR 게이트가 소요되므로 개의 XOR 게이트가 추가적으로 필요하다. 따라서 일반적으로 전체 개의 AND 게이트와 개의 XOR 게이트가 소요된다. 그러나 EST(Equally Spaced Trinomial)의 경우 이고 는
이므로 의 계산에서 개의 XOR 게이트 의 계산에서 개의 XOR 게이트가 소요되므로 전체 개의 AND 게이트와 개의 XOR 게이트가 소요된다. 시간복잡도의 경우 r의 계산에서 의 시간 지연이 소요되며, 이 EST 일때 로 과 병렬연산이 가능하므로 TX으로 최소 시간 지연을 가지며, 일때 TA+ TX로 최대 시간 지연(Critical Path Delay)을 가지므로 type-I 곱셈기의 시간 복잡도를 라 하면 이다. Type-II 곱셈기의 경우 시간복잡도 계산을 위하여 를 다음과 같은 6가지 경우로 고려한다.
공간 복잡도는 type-I과 같이 일반적으로 개의 AND 게이트와 개의 XOR 게이트가 소요되며 인 경우 개의 AND 게이트와 개의 XOR 게이트가 소요된다. 시간 복잡도는 이다.
이하에서는 기존의 삼항 기약다항식 기반의 SPB 비트-병렬 곱셈기의 복잡도를 설명한다.
그리고 이때 연산량은 번의 XOR이다. 따라서 공간 복잡도는 에서 -v차부터 차까지 모든 항은 n개의 들의 합으로 구성되므로 개의 AND 게이트, 개의 XOR 게이트가 소요되고 의 계산에서 도 1과 같이 개의 XOR 게이트가 소요된다. 따라서 전체 공간 복잡도는 개의 AND 게이트와 개의 XOR 게이트이다.
시간 복잡도의 경우 한 항에서 계산 시에 들이 병렬로 덧셈을 수행한다. 따라서 최대 시간 지연은 도 1에서 개수가 가장 많은 항이므로, 0차 항에서 1+1 시간 이후 또는 의 개수는 으로 가장 크므로 시간 복잡도는 이다. 인 경우도 위의 방법과 같이 정리하면, 공간 복잡도는 개의 AND 게이트와 개의 XOR 게이트이고 시간 복잡도는 가 된다.
이하에서는 본 발명의 일 실시 예에 따른 비트-병렬 다항식 곱셈 방법에 대해 설명한다.
v를 임의의 정수라 하고 를 의 다항식기저라 할 때, 와 가 각각 , 이면, 순서집합 를 에 대한 변형된 MSPB(Modified Shifted Polynomial Basis)라 한다.
도 2는 본 발명의 일 실시 예에 따른 비트-병렬 다항식 곱셈 방법의 개념도이다.
본 발명의 일 실시 예에 따른 비트-병렬 다항식 곱셈 방법의 경우 입출력은 기존의 SPB를 사용하지만 최적 v를 k 또는 k-1을 사용했던 기존의 결과와 달리 v값을 로 정의한다. 그리고 마스트로비토 곱셈을 수행하기 전에 도2 와 같이 MSPB로 기저를 변환한 후 곱셈을 수행하며, 곱셈 결과는 다시 입력과 동일하게 처음의 SPB로 표현된다. 이때, 도 2의 기저 변환과 비트-병렬 곱셈은 병렬로 수행된다.
상세한 곱셈 방법 및 이의 효율은 , , 등으로 k값에 따라 구분하여 설명한다. 인 경우의 설명은 인 경우의 곱셈 수행을 최저항부터 최고차항까지 서로 대칭이 되도록 수행하면 되므로 생략한다.
수학식 8과 (ㄱ), (ㅅ)을 모듈러 감산 연산하면 수학식 7은 다음의 수학식 9와 같이 정리된다.
따라서 이를 적용하여 수학식 9의 각 항을 k에 따른 XOR게이트 시간 지연으로 정리하면 도 3과 같다.
이와 같은 비트-병렬 곱셈을 수행하는 고속 마스트로비토 곱셈기 인 경우에 또는 에서 최대 시간 지연을 가지며 이다. 또한, 인 경우에 고속 마스트로비토 곱셈기의 공간 복잡도는 이다.
도 5는 본 발명의 일 실시 예에 따른 고속 비트-병렬 곱셈기의 하드웨어 구조를 도시한 것이다.
수학식 9는 AND 또는 XOR 연산의 순서에 따라 구분되며, 이에 수학식 10의 간소화 표현까지 적용하여 블록 단위로 정리하면 다음과 같다.
제1곱셈 블록을 구성하는 AND BLOCK5은 의 연산을 수행한다. 또한, 제1곱셈 블록을 구성하는 AND BLOCK4는 의 연산을 수행하고, AND BLOCK6은 의 연산을 수행한다. 제2곱셈 블록을 구성하는 AND BLOCK7은 의 연산을 수행한다.
이하에서는 두 번째 단계의 연산에 대해 설명한다.
제2덧셈 블록(BINARY XOR BLOCK3)은 제1곱셈 블록 (AND BLOCK4, AND BLOCK5, AND BLOCK6, AND BLOCK7)의 같은 차수 연산 결과들 사이의 1TX 연산을 수행한다. 여 기에는 중복되는 연산이 포함된다.
도 5에서 XOR BLOCK은 3가지로 시간 지연이 일어나며 AND BLOCK은 7가지로 시간 지연이 일어난다. 또한 도 5에서와 같이 상위 + 시간 지연 이후의 시간 및 공간 복잡도의 트레이드 오프 (trade-off)는 k에 의존한다. 이는 AND BLOCK2와 AND BLOCK5가 k에 따라 복잡도가 정의되기 때문이다.
도 5에서 BTX (Binary Tree of XORs)로 표시된 블록은 이진 트리 덧셈 블록으로서, 도 6은 BTX 구조의 일 예를 보여준다.
도 7의 예에서는 XOR BLOCK2가 존재하지 않는다. 이는 XOR BLOCK2의 XOR 연산은 총 개인데 도 6의 예에서는 0이 되기 때문이다. 따라서 이에 대응하는 AND BLOCK3도 존재하지 않는다.
도 8은 삼항 기약다항식을 위한 SPB 비트-병렬 곱셈기 복잡도를 비교한 표이다.
기존의 가장 효율적인 결과의 경우 시간 복잡도가 +이고 공간 복잡도가 25개의 AND 게이트와 24개의 XOR 게이트인 반면에, 도 7의 고속 마스트로비토 곱셈기의 경우 시간 복잡도는 1TA+3TX로 같으나 공간 복잡도는 21개 AND 게이트와 24개 XOR 게이트로 감소한다.
보다 구체적으로, 공간복잡도의 경우 일 때 기존의 결과에 비하여 개 AND 게이트가 감소하고, 일 때는 개 AND 게이트와 개 XOR 게이트가 감소함을 알 수 있다. 시간 복잡도 또한 기존의 가장 빠른 SPB 곱셈기에 비하여 항상 작거나 같다. 따라서 본 발명의 일 실시 예에 따른 곱셈기는 고속 연산이 요구되는 환경에서 효율적이라 할 수 있다.
본 발명은 소프트웨어를 통해 실행될 수 있다. 바람직하게는, 본 발명의 일 실시 예에 따른 고속 비트-병렬 다항식 곱셈 방법을 컴퓨터에서 실행시키기 위한 프로그램을 컴퓨터로 읽을 수 있는 기록매체에 기록하여 제공할 수 있다. 소프트웨어로 실행될 때, 본 발명의 구성 수단들은 필요한 작업을 실행하는 코드 세그먼트들이다. 프로그램 또는 코드 세그먼트들은 프로세서 판독 가능 매체에 저장되거나 전송 매체 또는 통신망에서 반송파와 결합된 컴퓨터 데이터 신호에 의하여 전송될 수 있다.
컴퓨터가 읽을 수 있는 기록매체는 컴퓨터 시스템에 의하여 읽혀질 수 있는 데이터가 저장되는 모든 종류의 기록 장치를 포함한다. 컴퓨터가 읽을 수 있는 기록 장치의 예로는 ROM, RAM, CD-ROM, DVD±ROM, DVD-RAM, 자기 테이프, 플로피 디스크, 하드 디스크(hard disk), 광데이터 저장장치 등이 있다. 또한, 컴퓨터가 읽을 수 있는 기록매체는 네트워크로 연결된 컴퓨터 장치에 분산되어 분산방식으로 컴퓨터가 읽을 수 있는 코드가 저장되고 실행될 수 있다.
본 발명은 도면에 도시된 일 실시 예를 참고로 하여 설명하였으나 이는 예시적인 것에 불과하며 당해 분야에서 통상의 지식을 가진 자라면 이로부터 다양한 변형 및 실시 예의 변형이 가능하다는 점을 이해할 것이다. 그리고, 이와 같은 변형은 본 발명의 기술적 보호범위 내에 있다고 보아야 한다. 따라서, 본 발명의 진정한 기술적 보호범위는 첨부된 특허청구범위의 기술적 사상에 의해서 정해져야 할 것이다.
본 발명은 기존보다 시간 복잡도면에서 우수하며 공간 복잡도가 증가되지 않는 고속 비트-병렬 곱셈기 및 그 곱셈 방법에 관한 것으로, 공개키 암호시스템 및 파이프라인이 아닌 구조의 비트-병렬 곱셈기가 탑재 가능한 모든 암호칩 및 유한체 연산기 등에 적용될 수 있다.
도 2는 본 발명의 일 실시 예에 따른 비트-병렬 다항식 곱셈 방법의 개념도이다.
도 5는 본 발명의 일 실시 예에 따른 고속 비트-병렬 곱셈기의 하드웨어 구조를 도시한 것이다.
도 6은 BTX 구조의 일 예를 보여준다.
도 8은 삼항 기약다항식을 위한 SPB 비트-병렬 곱셈기 복잡도를 비교한 결과이다.
Claims (14)
- 다항식 기저를 변환하여 곱셈을 수행하는 다항식 곱셈기에 있어서,제1다항식 및 제2다항식 각각에서 적어도 하나의 원소를 변형 이동 다항식 기저로 변환하는 변환 블록;상기 기저 변환이 되지 않은 원소들 간의 논리곱 연산을 수행하는 제1곱셈 블록;상기 기저 변환이 되지 않은 원소들의 논리합 연산을 수행하는 제1덧셈 블록; 및상기 변환 블록, 제1곱셈 블록 및 제1덧셈 블록에서 출력되는 원소들을 이용하여 상기 제1다항식과 제2다항식간의 곱셈값을 생성하는 연산부를 포함하고,상기 변형 이동 다항식 기저는,다항식 원소 중 적어도 하나의 원소의 차수가 나머지 원소의 차수와 불연속이 되는 다항식 기저인 것을 특징으로 하는, 고속 비트-병렬 다항식 곱셈기.
- 제 1 항에 있어서,상기 변환 블록, 제1곱셈 블록 및 제1덧셈 블록은,병렬적으로 연산을 수행하는 것을 특징으로 하는, 고속 비트-병렬 다항식 곱셈기.
- 제 1 항에 있어서,상기 연산부는,상기 변환 블록에서 출력되는 원소들간의 논리곱 연산을 수행하는 제2곱셈 블록을 포함하는 것을 특징으로 하는, 고속 비트-병렬 다항식 곱셈기.
- 제 1 항에 있어서,상기 연산부는,상기 제1덧셈 블록에서 출력되는 원소들간의 논리곱 연산을 수행하는 제3곱셈 블록을 포함하는 것을 특징으로 하는, 고속 비트-병렬 다항식 곱셈기.
- 제 1 항에 있어서,상기 연산부는,상기 제1곱셈 블록에서 출력되는 원소들간의 논리합 연산을 수행하는 제2덧셈 블록을 포함하는 것을 특징으로 하는, 고속 비트-병렬 다항식 곱셈기.
- 제 1 항에 있어서,상기 연산부는,상기 변환 블록에서 출력되는 원소들간의 논리곱 연산을 수행하는 제2곱셈 블록;상기 제1덧셈 블록에서 출력되는 원소들간의 논리곱 연산을 수행하는 제3곱셈 블록;상기 제1곱셈 블록에서 출력되는 원소들간의 논리합 연산을 수행하는 제2덧 셈 블록; 및상기 제2곱셈 블록, 제3곱셈 블록 및 상기 제2덧셈 블록에서 출력되는 원소들간의 논리합 연산을 수행하는 이진 트리 덧셈 블록을 포함하는 것을 특징으로 하는, 고속 비트-병렬 다항식 곱셈기.
- 삭제
- 다항식 기저를 변환하여 곱셈을 수행하는 다항식 곱셈기에 있어서,상기 기저 변환이 되지 않은 원소들 간의 논리곱 연산을 수행하는 제1곱셈 블록;상기 기저 변환이 되지 않은 원소들의 논리합 연산을 수행하는 제1덧셈 블록; 및상기 변환 블록, 제1곱셈 블록 및 제1덧셈 블록에서 출력되는 원소들을 이용하여 상기 제1다항식과 제2다항식간의 곱셈값을 생성하는 연산부를 포함하고,상기 변환 블록은,다항식 원소 중 적어도 하나의 원소의 차수가 나머지 원소의 차수와 불연속이 되는 다항식 기저로 기저 변환하는 것을 특징으로 하는, 고속 비트-병렬 다항식 곱셈기.
- 다항식 기저를 변환하여 다항식의 곱셈을 수행하는 방법에 있어서,변환 블록에서 제1다항식 및 제2다항식 각각에서 적어도 하나의 원소를 변형 이동 다항식 기저로 변환하고, 제1곱셈 블록에서 상기 기저 변환이 되지 않은 원소들 간의 논리곱 연산을 수행하며, 제1덧셈 블록에서 상기 기저 변환이 되지 않은 원소들의 논리합 연산을 수행하는 단계; 및상기 기저 변환, 논리곱 및 논리합의 결과값을 이용하여 상기 제1다항식과 제2다항식간의 곱셈값을 생성하는 단계를 포함하고,상기 변형 이동 다항식 기저는,다항식 원소 중 적어도 하나의 원소의 차수가 나머지 원소의 차수와 불연속이 되는 다항식 기저인 것을 특징으로 하는, 고속 비트-병렬 다항식 곱셈 방법.
- 제 9 항에 있어서,상기 곱셈값을 생성하는 단계는,상기 변환 블록에서 출력되는 원소들간의 논리곱 연산을 수행하는 단계를 포함하는 것을 특징으로 하는, 고속 비트-병렬 다항식 곱셈 방법.
- 제 9 항에 있어서,상기 곱셈값을 생성하는 단계는,상기 제1덧셈 블록에서 출력되는 원소들간의 논리곱 연산을 수행하는 단계를 포함하는 것을 특징으로 하는, 고속 비트-병렬 다항식 곱셈 방법.
- 제 9 항에 있어서,상기 곱셈값을 생성하는 단계는,상기 제1곱셈 블록에서 출력되는 원소들간의 논리합 연산을 수행하는 단계를 포함하는 것을 특징으로 하는, 고속 비트-병렬 다항식 곱셈 방법.
- 삭제
- 제 9 항 내지 제 12 항 중 어느 한 항에 따른 고속 비트-병렬 다항식 곱셈 방법을 컴퓨터 시스템에서 실행하기 위한 프로그램이 기록된 컴퓨터 시스템이 판독할 수 있는 기록매체.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020090012137A KR100976232B1 (ko) | 2009-02-13 | 2009-02-13 | 고속 비트-병렬 다항식 곱셈기, 그 곱셈 방법 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020090012137A KR100976232B1 (ko) | 2009-02-13 | 2009-02-13 | 고속 비트-병렬 다항식 곱셈기, 그 곱셈 방법 |
Publications (1)
Publication Number | Publication Date |
---|---|
KR100976232B1 true KR100976232B1 (ko) | 2010-08-17 |
Family
ID=42759686
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020090012137A KR100976232B1 (ko) | 2009-02-13 | 2009-02-13 | 고속 비트-병렬 다항식 곱셈기, 그 곱셈 방법 |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR100976232B1 (ko) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2018139750A1 (ko) * | 2017-01-25 | 2018-08-02 | 공주대학교 산학협력단 | 유한체 병렬 곱셈 장치 및 방법 |
KR102132935B1 (ko) * | 2019-02-14 | 2020-07-10 | 단국대학교 산학협력단 | 유한체 곱셈 방법 및 장치 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20000026250A (en) * | 1998-10-19 | 2000-05-15 | Samsung Electronics Co Ltd | Method and apparatus for operating finite field |
KR100457177B1 (ko) | 2002-12-20 | 2004-11-16 | 한국전자통신연구원 | 유한체 상의 두 원소의 곱을 구하는 직렬-병렬 곱셈기 |
KR20090059265A (ko) * | 2007-12-06 | 2009-06-11 | 고려대학교 산학협력단 | 여분 표현을 사용하는 유한체 비트―병렬 곱셈 장치 및방법 |
-
2009
- 2009-02-13 KR KR1020090012137A patent/KR100976232B1/ko not_active IP Right Cessation
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20000026250A (en) * | 1998-10-19 | 2000-05-15 | Samsung Electronics Co Ltd | Method and apparatus for operating finite field |
KR100457177B1 (ko) | 2002-12-20 | 2004-11-16 | 한국전자통신연구원 | 유한체 상의 두 원소의 곱을 구하는 직렬-병렬 곱셈기 |
KR20090059265A (ko) * | 2007-12-06 | 2009-06-11 | 고려대학교 산학협력단 | 여분 표현을 사용하는 유한체 비트―병렬 곱셈 장치 및방법 |
Non-Patent Citations (1)
Title |
---|
조영인 외, 2008년 12월 전자공학회 논문지 제45권 SD편 제12호 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2018139750A1 (ko) * | 2017-01-25 | 2018-08-02 | 공주대학교 산학협력단 | 유한체 병렬 곱셈 장치 및 방법 |
KR102132935B1 (ko) * | 2019-02-14 | 2020-07-10 | 단국대학교 산학협력단 | 유한체 곱셈 방법 및 장치 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Wang et al. | Design, evaluation and fault-tolerance analysis of stochastic FIR filters | |
US10534576B2 (en) | Optimization apparatus and control method thereof | |
US11646880B2 (en) | Secret computation method, secret computation system, secret computation apparatus, and program | |
KR102075848B1 (ko) | 다항식 연산 최적화 처리 장치, 다항식 연산 최적화 처리 방법 및 기록매체 | |
KR100976232B1 (ko) | 고속 비트-병렬 다항식 곱셈기, 그 곱셈 방법 | |
KR100950581B1 (ko) | 여분 표현을 사용하는 유한체 비트―병렬 곱셈 장치 및방법 | |
KR100976229B1 (ko) | 저면적 비트-병렬 다항식 곱셈기, 그 곱셈 방법 | |
KR101418686B1 (ko) | 유한체에서 타입 4 가우시안 정규기저를 이용한 이차 미만의 공간 복잡도를 갖는 병렬 곱셈 연산방법 및 그 연산장치 | |
KR101094354B1 (ko) | 유한체의 원소간 비트-병렬 곱셈방법 및 장치 | |
KR100670780B1 (ko) | 유한체 GF(2^m)에서의 하이브리드 곱셈 연산 장치및 연산 방법 | |
JP6067596B2 (ja) | ペアリング演算装置、マルチペアリング演算装置、プログラム | |
JPWO2011036746A1 (ja) | 演算装置 | |
JP4856599B2 (ja) | ペアリング演算装置、プログラム | |
Mukhopadhyay et al. | Combining Montgomery Multiplication with Tag Tracing for the Pollard Rho Algorithm in Prime Order Fields | |
JP2015001555A (ja) | 公開鍵暗号化方式における並列GaussSieveアルゴリズムを用いた最短ベクトル問題の求解装置および求解方法 | |
Al Musa et al. | Fast scalar multiplication for elliptic curves over binary fields by efficiently computable formulas | |
Garg et al. | Higher-order nonlinearity of Kasami functions | |
Gorodecky et al. | Efficient hardware operations for the residue number system by boolean minimization | |
KR101626743B1 (ko) | 유한체상의 몽고메리 알고리즘을 이용한 곱셉기 및 곱셈 방법 | |
WO2022196041A1 (ja) | 遺伝子情報処理システム、遺伝子情報処理方法、及び記録媒体 | |
JP6023728B2 (ja) | マルチペアリング演算装置、マルチペアリング演算方法、マルチペアリング演算プログラム | |
Bafandehkar et al. | Optimizing {0, 1, 3}-NAF Recoding Algorithm Using Block-Method Technique in Elliptic Curve Cryptosystem. | |
KR20230028625A (ko) | 양자 컴퓨터 상의 곱셈 장치 및 곱셈 방법 | |
Erdem | Fast software multiplication in F_2 [x] for embedded processors | |
US20210182061A1 (en) | Information processing device, information processing method, and program |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E902 | Notification of reason for refusal | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant | ||
FPAY | Annual fee payment |
Payment date: 20130621 Year of fee payment: 4 |
|
FPAY | Annual fee payment |
Payment date: 20140630 Year of fee payment: 5 |
|
FPAY | Annual fee payment |
Payment date: 20151109 Year of fee payment: 6 |
|
LAPS | Lapse due to unpaid annual fee |