1 |
1
ECC(Elliptic Curve Crytography) 시스템의 포인트 곱셈 연산 장치로서,복수의 멀티플렉서; 및 복수의 가산기를 포함하며,상기 복수의 멀티플렉서 및 상기 복수의 가산기에 의해, 아래 [식 1]의 연산이 수행되고, 곱셈기가 사용되지 않으며,[식 1]Q = k * P(여기서, P는 타원 곡선 상의 베이스 포인트이고 3 차원 상에 표현되며, k는 개인키이며 비트열로 표현되며, 상기 개인키의 비트값이 변경없이 상기 [식 1]에서 그대로 사용되고, Q는 공개키이며 3 차원 상에 표현됨),상기 포인트 곱셈 연산 장치는,상기 개인키를 입력받아, 상기 개인키의 비트값을 반복 구간마다 한 비트씩 순차적으로 출력하는 제1 멀티플렉서; 및상기 P를 제1 입력단에서 입력받고 0을 제2 입력단에서 입력받아, 상기 제1 멀티플렉서가 출력하는 비트값을 사인 비트로 이용하여, 상기 P 또는 0을 출력하는 제2 멀티플렉서를 포함하는, 포인트 곱셈 연산 장치
|
2 |
2
삭제
|
3 |
3
제1항에 있어서,클럭 사이클에 기초하여 동작하며, 상기 P의 값으로 초기화된 제1 중간값(Q1)을 제1 및 제2 입력단에서 동일하게 입력받아 가산 연산하는 제1 가산기를 포함하는, 포인트 곱셈 연산 장치
|
4 |
4
제3항에 있어서,상기 제2 멀티플렉서의 출력값을 제1 입력단에서 입력받고, 상기 제1 가산기의 출력값을 제2 입력단에서 입력받아, 이를 가산 연산하는 제2 가산기를 포함하는, 포인트 곱셈 연산 장치
|
5 |
5
제4항에 있어서,상기 제2 가산기의 출력값을 제1 입력단에서 입력받고, 상기 제1 가산기의 출력값을 제2 입력단에서 입력받아, 상기 제1 멀티플렉서가 출력하는 비트값을 사인 비트로 이용하여, 상기 제1 또는 제2 가산기의 출력값을 출력하는 제3 멀티플렉서를 포함하는, 포인트 곱셈 연산 장치
|
6 |
6
제5항에 있어서,상기 제3 멀티플렉서의 출력값을 저장하는 레지스터를 포함하며,상기 레지스터의 저장값은, 반복 구간이 종료될 때까지, 상기 제1 가산기의 제1 및 제2 입력단에 동시에 입력되는, 포인트 곱셈 연산 장치
|
7 |
7
제1항에 있어서,모듈러 연산 기반의 변환기에 의해, 상기 3 차원 상에 표현되는 상기 P 및 Q가 2 차원 상에 표현되도록 변환되는, 포인트 곱셈 연산 장치
|
8 |
8
ECC(Elliptic Curve Crytography) 시스템의 포인트 곱셈 연산 방법으로서,개인키의 비트열이 제1 멀티플렉서의 각 입력단을 통해 입력되는 단계; 및상기 개인키의 비트값이 반복 구간마다 순차적으로 상기 제1 멀티플렉서에 의해 출력되는 경우, 복수의 멀티플렉서 및 복수의 가산기를 이용하여 포인트 곱셈 연산을 수행하는 단계를 포함하며,상기 개인키의 비트값이 변경없이 그대로 사용되고, 상기 포인트 곱셈 연산에 곱셈기가 사용되지 않으며,상기 포인트 곱셈 연산을 수행하는 단계는,타원 곡선 상의 베이스 포인트(P)를 제1 입력단에서 입력받고 0을 제2 입력단에서 입력받는 제2 멀티플렉서에 의해, 상기 제1 멀티플렉서가 출력한 비트값을 사인 비트로 하여, 상기 P 또는 0을 출력하는 단계를 포함하는, 포인트 곱셈 연산 방법
|
9 |
9
삭제
|
10 |
10
제8항에 있어서,상기 포인트 곱셈 연산을 수행하는 단계는,클럭 사이클에 기초하여 동작하는 제1 가산기에 의해, 상기 P의 값으로 초기화된 제1 중간값(Q1)을 제1 및 제2 입력단에서 동일하게 입력받아 가산 연산하는 단계를 포함하는, 포인트 곱셈 연산 방법
|
11 |
11
제10항에 있어서,상기 포인트 곱셈 연산을 수행하는 단계는,제2 가산기에 의해, 상기 제2 멀티플렉서의 출력값을 제1 입력단에서 입력받고, 상기 제1 가산기의 출력값을 제2 입력단에서 입력받아, 이를 가산 연산하는 단계를 포함하는, 포인트 곱셈 연산 방법
|
12 |
12
제11항에 있어서,상기 포인트 곱셈 연산을 수행하는 단계는,제3 멀티플렉서에 의해, 상기 제2 가산기의 출력값을 제1 입력단에서 입력받고, 상기 제1 가산기의 출력값을 제2 입력단에서 입력받아, 상기 제1 멀티플렉서가 출력하는 비트값을 사인 비트로 이용하여, 상기 제1 또는 제2 가산기의 출력값을 출력하는 단계를 포함하는, 포인트 곱셈 연산 방법
|
13 |
13
제12항에 있어서,상기 포인트 곱셈 연산을 수행하는 단계는,레지스터에 의해, 상기 제3 멀티플렉서가 출력한 값을 저장하는 단계를 포함하며,상기 레지스터의 저장값은, 반복 구간이 종료될 때까지 상기 제1 가산기의 제1 및 제2 입력단에 동시에 입력되는, 포인트 곱셈 연산 방법
|
14 |
14
제8항에 있어서,모듈러 연산 기반의 변환기에 의해, 3 차원 상에 표현되는 상기 P 및 공개키 Q가 2 차원 상에 표현되도록 변환하는 단계를 더 포함하는, 포인트 곱셈 연산 방법
|
15 |
15
ECC(Elliptic Curve Crytography) 시스템으로서,개인키(k) 및 2차원으로 표현되는 베이스 포인트(P)를 입력받아, 상기 2차원으로 표현되는 베이스 포인트(P)를 3차원으로 표현되는 베이스 포인트(P)로 변환하는 A2P 변환기(Affine to Projective Converter);상기 A2P 변환기로부터 개인키(k) 및 3차원으로 표현되는 베이스 포인트(P)를 입력받아, 복수의 멀티플렉서 및 복수의 가산기를 이용하여, 아래 [식 2]의 곱셈 연산을 수행하며, 곱셈기가 사용되지 않는 포인트 곱셈 연산 장치; 및[식 2]Q = k * P(여기서, P는 타원 곡선 상의 베이스 포인트이고, k는 개인키이며 비트열로 표현되며, 상기 개인키의 비트값이 변경없이 상기 [식 2]에서 그대로 사용되며, Q는 공개키이며 3 차원으로 표현됨),3차원으로 표현된 공개키(Q)를 2차원으로 표현되는 공개키(Q)로 변환하는 모듈러 연산 기반의 P2A 변환기(Projective to Affine Converter)를 포함하며,상기 포인트 곱셈 연산 장치는,상기 개인키를 입력받아, 상기 개인키의 비트값을 반복 구간마다 한 비트씩 순차적으로 출력하는 제1 멀티플렉서; 및상기 P를 제1 입력단에서 입력받고 0을 제2 입력단에서 입력받아, 상기 제1 멀티플렉서가 출력하는 비트값을 사인 비트로 이용하여, 상기 P 또는 0을 출력하는 제2 멀티플렉서를 포함하는, ECC 시스템
|
16 |
16
삭제
|
17 |
17
제15항에 있어서,상기 포인트 곱셈 연산 장치는,클럭 사이클에 기초하여 동작하며, 상기 P의 값으로 초기화된 제1 중간값(Q1)을 제1 및 제2 입력단에서 동일하게 입력받아 가산 연산하는 제1 가산기를 포함하는, ECC 시스템
|
18 |
18
제17항에 있어서,상기 포인트 곱셈 연산 장치는,상기 제2 멀티플렉서의 출력값을 제1 입력단에서 입력받고, 상기 제1 가산기의 출력값을 제2 입력단에서 입력받아, 이를 가산 연산하는 제2 가산기를 포함하는, ECC 시스템
|
19 |
19
제18항에 있어서,상기 포인트 곱셈 연산 장치는,상기 제2 가산기의 출력값을 제1 입력단에서 입력받고, 상기 제1 가산기의 출력값을 제2 입력단에서 입력받아, 상기 제1 멀티플렉서가 출력하는 비트값을 사인 비트로 이용하여, 상기 제1 또는 제2 가산기의 출력값을 출력하는 제3 멀티플렉서를 포함하는, ECC 시스템
|
20 |
20
제19항에 있어서,상기 포인트 곱셈 연산 장치는,상기 제3 멀티플렉서의 출력값을 저장하는 레지스터를 포함하며,상기 레지스터의 저장값은, 반복 구간이 종료될 때까지, 상기 제1 가산기의 제1 및 제2 입력단에 동시에 입력되는, ECC 시스템
|