Abstract:
오류 주입 공격에 안전한 CRT-RSA 모듈러 지수승 알고리즘을 이용한 디지털 서명 방법, 그 장치 및 이를 기록한 기록매체가 개시된다. 본 발명에 따른 오류 주입 공격에 안전한 CRT-RSA 모듈러 지수승 알고리즘을 이용한 디지털 서명 방법은 를 만족하는 서로 다른 소수 두 를 비밀키로, euler totient 함수 과 서로 소인 소정의 정수 를 공개키로, 을 만족하는 를 비밀키로 이용하는 오류 주입 공격에 안전한 CRT-RSA 모듈러 지수승 알고리즘을 이용한 디지털 서명방법에 있어서, 인증된 수신자에게 전송하고자 하는 메시지 , 상기 서로 다른 두 소수 , 상기 비밀키 를 로 모듈러 연산한 , 상기 를 로 모듈러 연산한 , 상기 와 의 합인 , 으로 연산되는 , 암호화하고자 하는 송신자에 의해 랜덤하게 선택된 제 1 정수 , 제 2 정수 , 및 상기 제 2 정수 에 의해 의 연산으로 생성되는 를 포함하는 복수 개의 암호화 인자를 수신하는 단계; 상기 복수 개의 암호화 인자 중에서 선택된 제 1 데이터 집합 을 이용하여 제 1 데이터 쌍 을 생성하는 단계; 상기 수신된 복수 개의 암호화 인자 및 상기 제 1 데이터 쌍 중에서 선택된 제 2 데이터 집합 을 이용하여 제 2 데이터 쌍 을 생성하는 단계; 상기 제 1 데이터 쌍의 와 상기 제 2 데이터 쌍의 를 입력값으로 중국인의 나머지 정리를 이용하여 제 1 중간값 를 산출하는 단계; 상기 제 1 데이터 쌍의 와 상기 제 2 데이터 쌍의 를 입력값으로 중국인의 나머지 정리를 이용하여 제 2 중간값 를 산출하는 단계; 상기 의 비트열의 길이와 상기 의 비트열의 길이에 따라 결정된 제로 비트 생성 인자 , 상기 의 보수 , 상기 및 를 이용하여 중간 연산자 를 생성하는 단계; 상기 와 의 논리곱 연산을 수행하여 상기 제 1 중간값 를 갱신하는 단계; 상기 를 로 나눈값과 상기 를 논리곱 연산을 수행하여 상기 제 2 중간값 를 갱신하는 단계; 및 상기 , 및 를 에 곱하여 최종 서명값을 생성하는 단계를 포함한다. 본 발명에 의하면, 오류 주입시 오류 확산을 유발시키는 지수승 연산 방법을 제공할 수 있으며, 대표적인 오류 주입 공격인 SPA, DPA, FA에 모두 안전한 서명 생성 기법을 제공하여 암호화의 신뢰성 및 안전성을 제공할 수 있으며, 대표적인 CRT-RSA 암호화 알고리즘에 비하여 연산량을 감소시켜, 보다 빠른 연산 처리 속도를 제공할 수 있는 효과가 있다.
Abstract:
MSD first 직렬 곱셈 장치, 그 방법 및 이를 기록한 기록매체가 개시된다. 본 발명에 따른 MSD first 직렬 곱셈 장치는, 상에서 차수가 인 삼항 기약 다항식 을 사용하며, 상기 의 해가 일 때, 유한체 상의 두 원소 , 의 곱셈을 수행하여 직렬 곱셈 결과값 를 생성하는 기반의 MSD first 디지트 직렬 곱셈 장치에 있어서, 루프 인덱스 가 일 때, 개의 디지트의 인덱스를 라 하면, 상기 의 계수 , , 상기 삼항 기약 다항식의 계수로부터 생성되는 , 및 상기 삼항 기약 다항식의 계수에 따라 생성되는 를 입력으로 하여 과 을 생성하고, 상기 를 이용하여 를 생성하는 초기값 생성부; 루프 인덱스 가 일 때, 상기 연산된 를 이용하여 제 1 치환 연산자 λ j 를 생성하고, 상기 연산된 를 이용하여 제 2 치환 연산자 δ j 를 생성하는 전처리 연산부; 상기 전처리 연산부에서 생성된 제 2 치환 연산자 δ j , 상기 의 계수 , , 및 를 입력으로 하여 의 결과값 을 생성하는 곱셈부; 이전 루프의 MSD first 디지트 직렬 곱셈의 결과값 , 상기 제 1 치환 연산자 λ j , 및 상기 곱셈부의 결과값을 입력으로 하여 덧셈 결과값을 생성하는 가산부; 및 상기 덧셈 결과값을 라이트 쉬프트하여 상기 가산부에 피드백하는 쉬프트 레지스터를 포함한다. 본 발명에 의하면, 삼항 기약 다항식이 적용되는 페이링 기반의 암호 시스템에 있어서, 기존의 MSD-first 곱셈기에 비하여 적은 시간 지연을 가지고, 표수에 의존하지 않고, 기존의 유한체 곱셈기에 비하여 고속 동작하면서 이때 증가하는 공간 복잡도를 최소화할 수 있고, 이에 따라 페어링 기반의 암호 시스템을 더욱 효율적으로 설계할 수 있으며, 특히 삼항 기약 다항식을 사용하는 모든 유한체에 적용할 수 있기 때문에 이를 기반으로 하는 하드웨어 설계에 응용할 수 있는 효과가 있다.
Abstract:
본 발명은 다항식 기저 기반의 유한체 직렬 곱셈 장치 및 방법에 관한 것이며, 다항식 기저로 표현되는 제1 승수의 항 중에서 삼항 기약다항식의 각 항의 차수 중 중간 차수와 동일한 차수의 항을 제외하여 제2 승수를 생성하고, 상기 삼항 기약다항식에 의해 다항식 기저로 표현되는 피승수와 상기 제2 승수의 계수 곱셈 및 모듈러 연산을 수행하는 제1 곱셈 및 모듈러 연산부; 상기 제1 곱셈 및 모듈러 연산부의 중간 연산 결과를 저장하여 연산을 보조하고 상기 제1 곱셈 및 모듈러 연산부의 최종 연산 결과인 제1 연산 결과를 저장하는 제1 레지스터; 상기 삼항 기약다항식에 의해 상기 제1 승수에서 제외된 상기 항과 상기 피승수의 계수 곱셈 및 모듈러 연산을 수행하여 제2 연산 결과를 생성하는 제2 곱셈 및 모듈러 연산부; 및 상기 제2 곱셈 및 모듈러 연산부의 연산 결과를 저장하는 제2 레지스터를 포함하고, 상기 제1 곱셈 및 모듈러 연산부는 상기 제1 연산 결과가 생성되면 상기 제1 연산 결과에 상기 제2 레지스터에 저장된 상기 제2 연산 결과를 가산하여 상기 피승수 및 상기 제1 승수의 곱셈 결과를 생성하여 시간 및 공간 복잡도를 개선한다.
Abstract:
PURPOSE: An MSD first GF serial multiplier, a method thereof and a recording media capable of application of a hardware design are provided to minimize space complexity and operate the multiplier at high speed comparing with the existing MSD-first multiplier. CONSTITUTION: An MSD first GF serial multiplier, a method thereof and a recording media capable of application of a hardware design includes an initial generating unit(510), a preprocessing operation unit(520), a multiplier(530), and a shift register(550). The initial generating unit generates a digit index in case the loop index is the digit index. The preprocessing operation unit produces the second permutation operators and produces the first permutation operators by using the loop index. The shift register feeds back the add return value.
Abstract:
A method and an apparatus of a digital signature using bit arithmetic based on a CRT-RSA and recording medium using by the same are provided make a encryption procedure simple by adding a simple resistor. An apparatus of a digital signature using bit arithmetic based on a CRT-RSA and recording medium is composed of an intermediate operator generating unit(810), a modular exponentiation operation unit(820), a correlation modular exponentiation operation unit(830), a CRT operator(840), a bit comparison operator area(850), and a signature authentication performing unit(860). The intermediate operator generation unit generates a first and a second operator by using a message and a prime number to be transmitted to an authenticated receiver. The modular exponentiation operation unit performs a modular operation of the message.
Abstract:
A finite field bit-parallel multiplier using redundant expressions and a method therefor are provided to reduce the spatial complexity as efficiently operating in the exponential multiplication environment. A subtraction matrix generating unit(100) generates a subtraction matrix by performing the subtraction process of a matrix which is defined to perform the polynomial multiplication. The matrix consists of polynomial coefficients of the first element which is expressed through the redundant representation. An inner product unit(110) inner-products a matrix of the second element and the subtraction matrix generated by the subtraction matrix generating unit. The matrix of the second element has polynomial coefficients which are expressed through polynomial basis the as components.
Abstract:
A Karatsuba multiplying method for reducing unnecessary calculation is provided to reduce an unnecessary calculation by reducing space/time complexity in an elliptic curve Karatsuba parallel multiplier defined in a conventional binary body. An order of an input value is checked. In case that the order of the input value is higher than seven, initialization for the inputted value and a coefficient for an operation is performed. If the initialization is completed, a sum of each input value is found by performing previous addition for the inputted values. A target value is found by performing an NRHKOA(Non-Redundant Half Karatusba-Ofman Algorithm) after finding the sum. Output is found by replacing the inputted value with the target value and recursively repeating steps from the second step.
Abstract translation:提供了用于减少不必要的计算的Karatsuba乘法方法,以通过减少常规二进制体中定义的椭圆曲线Karatsuba并行乘法器中的空间/时间复杂度来减少不必要的计算。 检查输入值的顺序。 在输入值的顺序大于7的情况下,执行输入值的初始化和操作的系数。 如果初始化完成,则通过对输入的值执行先前的相加来找到每个输入值的和。 通过在求和之后执行NRHKOA(Non-Redundant Half K Apparatusba-Ofman算法)来找到目标值。 通过用目标值替换输入值并从第二步递归地重复步骤来找到输出。
Abstract:
부채널 공격을 방지할 수 있는 타원곡선 암호화 방법 및 그 시스템이 개시된다. 본 발명에 따른 타원곡선 암호화방법은, 타원곡선 상의 한점 P와 Q = dP를 연산하기 위한 d를 비밀키로 이용하며, 중첩된 윈도우별로 홀수 정수인 랜덤값을 각각 선택하는 단계, 각 윈도우별로 선택된 랜덤값에 따라, 비밀키 d와 동일한 값을 갖는 복수개의 부호화된 이진수 중에서 선택된 부호화된 수열을 각각 생성하는 단계, 및 생성된 수열 및 P를 이용한 스칼라 곱셈을 수행하여, Q를 발생하는 단계를 포함한다. 이에 의해, Second-Order DPA 뿐만 아니라 기존의 부채널 공격에 안전하고, 또한 효율적인 타원곡선 암호화가 가능하다. 타원곡선 암호화, 스칼라 곱셈, 부채널 공격, 윈도우
Abstract:
PURPOSE: A method for protecting information from power electricity analysis attack and error injection attack using CRT-RSA(Chinese Reminder Theorem-Rivest Shamir Adleman) is provided to protect the information by implementing a modular exponential algorithm in the CRT-RSA in order to achieve high speed calculation as being strong in the power electricity analysis attack and the error injection attack. CONSTITUTION: A method for protecting information from power electricity analysis attack and error injection attack using CRT-RSA uses a CRT-RSA modular exponential algorithm using p of 1 bit length and q of 1 bit length which are prime numbers satisfying rN=pq. Protection target information m, two prime numbers p and q, dp(=d mo(p-1)), dq(= d mod (q-1)), Ip(= p-1 mod q), Tp, Tq and Tlp are inputted, and r is randomly selected(100). R is smaller than p and q. A first data pair(S'p,Sp,p') is generated using m, dp, p, r and Tp. A second data pair(S'q,Sq,q') is generated using m,dq,q,r and Tq(120). K1 and K2 are calculated(130). K1 is obtained by modular calculation of the multiplication of Sp and S'q by 2I-1. K2 is obtained by modular calculation of the multiplication of S'p and Sq by 2I-1. A first middle value S1 of encoded information(S) of m is calculated using S'p and S'q, and a second middle value S2 of S is calculated using Sp and Sq(140). A value calculated using I, K1 and K2 is stored in a register(C1)(150). A value calculated using C1, m, S1, k2 and N is stored in a register(C2)(160). A recalculated value using p', q' and k1 is compared with the value stored in the register(C1)(170). S is generated by using C2, S2, C1, k1 and k2(190). [Reference numerals] (110) Receive necessary values(m,p,q,d_p,d_q,I_p,T_p,T_q,T_ip) for deriving information(S) encoding a protection target information m and select a random value r; (115) Generate d'_p randomizing a secret key index d_p and d'_q randomizing a secret key index d_q; (120) Generate a first data pair(S'_p,S_p,p') and a second data pair(S'_q,S_q,q'); (130) Calculate K1 and K2; (140) Calculate a first middle value S_1 and a second middle value S_2 for obtaining S; (150) Generate a value to be inputted to a register(C1); (160) Generate a value to be inputted to a register(C2); (170) Regenerate a value inputted to the register(C1); (180) Generate a value S'; (190) Generate a value S; (AA) Start; (BB) End