확장된 NIST 소수를 이용한 모듈러 곱셈 및 모듈러 지수승 방법
Modular multiplication and modular exponentiation using extended NIST prime
특허 요약
본 발명은 확장된 NIST 소수를 이용한 모듈러 곱셈, 모듈러 지수승 방법 및 그 방법을 기록한 기록매체에 관한 것으로, 본 발명에 따른 모듈러 곱셈 방법은, 두 개의 정수를 입력받아 입력된 정수를 승산한 후, 승산된 값에 대해 q로 제 1 모듈러 감산을 수행하고, 제 1 모듈러 감산 결과에 대해 소수 p로 제 2 모듈러 감산을 수행하며, q와 p는 양의 홀수 h에 대하여 를 만족한다.
청구항
번호청구항
1

적어도 하나의 프로세서(processor) 및 시프터(shifter)를 구비하는 모듈러 곱셈기의 모듈러 곱셈 방법에 있어서,상기 모듈러 곱셈기가 두 개의 정수를 입력받는 단계;상기 모듈러 곱셈기가 상기 입력된 두 개의 정수를 승산하는 단계;상기 모듈러 곱셈기가 상기 승산된 값에 대해 q로 제 1 모듈러(modular) 감산을 수행하는 단계; 및상기 모듈러 곱셈기가 상기 제 1 모듈러 감산 결과에 대해 소수 p로 제 2 모듈러 감산을 수행하는 단계를 포함하고,상기 q와 p는 양의 홀수 h에 대하여 를 만족하고,상기 소수 p는 소수 인수를 갖는 NIST 소수 형태의 양수인 것을 특징으로 하는 방법.

2

삭제

3

제 1 항에 있어서,상기 두 개의 정수는 각각 및 ()이고,상기 제 1 모듈러 감산은 이며,상기 제 2 모듈러 감산은 인 것을 특징으로 하는 방법.

4

삭제

5

제 1 항에 있어서,상기 제 1 모듈러 감산은, () 및 기저 인 를 입력받고,288비트의 정수 를 정의하며,상기 정의된 정수에 대한 를 수행하여 반환하는 것을 특징으로 하는 방법.

6

제 1 항에 있어서,상기 제 2 모듈러 감산은,(a) 상기 제 1 모듈러 감산 결과와 상기 소수 p를 입력받고,(b) 상기 제 1 모듈러 감산 결과가 상기 소수 p보다 큰 만큼 상기 소수 p를 왼쪽 시프트(shift)하고,(c) 상기 시프트 결과를 1 만큼 오른쪽 시프트하고,(d) 상기 제 1 모듈러 감산 결과에서 상기 시프트 결과를 감산하고,만약 상기 감산 결과가 상기 소수 p보다 크다면 상기 (a), (b), (c) 및 (d)의 과정을 반복하며,이상의 연산 결과 산출된 감산 결과를 반환하는 것을 특징으로 하는 방법.

7

적어도 하나의 프로세서(processor) 및 시프터(shifter)를 구비하는 모듈러 연산기의 모듈러 지수승 방법에 있어서,상기 모듈러 연산기가 및 양수 를 입력받는 단계;상기 모듈러 연산기가 초기값이 할당된 변수 A에 대해 2의 지수승하고, q로 모듈러 감산을 수행하는 단계;만약 이면, 상기 모듈러 연산기가 A와 g를 승산하고, q로 모듈러 감산을 수행하는 단계;상기 모듈러 연산기가 상기 모듈러 감산을 t회(t는 양의 정수) 만큼 반복 수행하는 단계; 및상기 모듈러 연산기가 상기 수행 결과에 대해 p로 모듈러 감산을 수행하여 그 결과를 반환하는 단계를 포함하고,상기 q와 p는 양의 홀수 h에 대하여 를 만족하고,상기 p는 소수 인수를 갖는 NIST 소수 형태의 양수인 것을 특징으로 하는 방법.

8

제 7 항에 있어서,상기 q는 상기 p와 동일한 수의 워드 블록을 사용하며,상기 h는 상기 워드 사이즈의 절반 이하를 사용하는 것을 특징으로 하는 방법.

9

제 1 항, 제 3 항, 제 5 항 내지 제 8 항 중에 어느 한 항의 방법을 컴퓨터에서 실행시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체.