KR19980065477A - Modular Multipliers for Digital Signatures - Google Patents
Modular Multipliers for Digital Signatures Download PDFInfo
- Publication number
- KR19980065477A KR19980065477A KR1019970000500A KR19970000500A KR19980065477A KR 19980065477 A KR19980065477 A KR 19980065477A KR 1019970000500 A KR1019970000500 A KR 1019970000500A KR 19970000500 A KR19970000500 A KR 19970000500A KR 19980065477 A KR19980065477 A KR 19980065477A
- Authority
- KR
- South Korea
- Prior art keywords
- mod
- register
- adder
- output
- nand
- Prior art date
Links
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/722—Modular multiplication
-
- 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/728—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 using Montgomery reduction
-
- G—PHYSICS
- G07—CHECKING-DEVICES
- G07B—TICKET-ISSUING APPARATUS; FARE-REGISTERING APPARATUS; FRANKING APPARATUS
- G07B17/00—Franking apparatus
- G07B17/00733—Cryptography or similar special procedures in a franking system
- G07B2017/00741—Cryptography or similar special procedures in a franking system using specific cryptographic algorithms or functions
- G07B2017/00758—Asymmetric, public-key algorithms, e.g. RSA, Elgamal
- G07B2017/00766—Digital signature, e.g. DSA, DSS, ECDSA, ESIGN
Landscapes
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Engineering & Computer Science (AREA)
- Computational Mathematics (AREA)
- Mathematical Analysis (AREA)
- Mathematical Optimization (AREA)
- Pure & Applied Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Computing Systems (AREA)
- Mathematical Physics (AREA)
- General Engineering & Computer Science (AREA)
- Complex Calculations (AREA)
Abstract
본 발명은 디지털 서명을 위한 모듈라 곱셈 장치에 관한 것으로, P=22nmod N 계산부; T=A·B·2-nmod N 계산부; 및 상기 P와 T를 입력으로하여 P·T·2-nmod N = A·B mod N을 계산하는 계산부를 포함한다.The present invention relates to a modular multiplication apparatus for digital signature, comprising: P = 2 2n mod N calculator; T = A · B · 2 −n mod N calculation unit; And a calculation unit for calculating P · T · 2 −n mod N = A · B mod N by inputting P and T.
본 발명에 의하면, 상기 디지털 서명을 위한 모듈라 곱셈 장치는 하드웨어적으로 A·B mod N의 계산을 빠르게 할 수 있고, 디지털 서명의 생성 및 검증을 위한 기기에 사용될 수 있는 장치로 제공될 수 있다. 또한, 아이씨(IC) 카드를 바탕으로한 전자 서명, 인증, 암/복호화의 하드웨어 장치, 또는 모듈라 곱셈을 수행하는 전자 서명기기에 의해서 암/복호화하는 기기에 사용될 수 있다.According to the present invention, the modular multiplication apparatus for the digital signature can be quickly calculated in hardware A · B mod N, can be provided as a device that can be used in the device for the generation and verification of the digital signature. It can also be used in devices that encrypt / decrypt by electronic signatures, authentication, encryption / decryption hardware devices based on IC cards, or electronic signature devices that perform modular multiplication.
Description
본 발명은 디지털 서명을 위한 모듈라 곱셈 장치에 관한 것으로, 특히 디지털 서명에 필요한 모듈라 곱셈을 수행하는 장치에 관한 것이다.The present invention relates to a modular multiplication apparatus for digital signatures, and more particularly, to an apparatus for performing modular multiplication necessary for digital signatures.
디지털 서명이라 함은 정보의 전자적 교환에 있어서, 종래의 종이에 손으로 직접 서명했던 기능을 전자적인 문서에서 제공할 수 있도록 하는 기술을 의미한다. 종류로는 국제 표준인 ISO(the International Organization for Standardization: 국제 표준 기구)/IEC(the International Electrotechnical Commission:국제 전자 기술 위원회) 9796, 엘가말(ElGamal)형의 변형 미국의 DSS(Digital Signiture Standard), 러시아의 고스트(GOST) 및 한국에서 표준으로 진행중인 케이시-디에스에이(KC-DSA) 등이 있다. 상기 디지털 서명들을 구현하기 위해서는 모듈라 멱승 연산이 필요하고, 상기 모듈라 멱승은 A·B·2-nmod N과 A·B mod N 의 모듈라 곱셈이 반드시 필요하다. 상기 모듈라 곱셈을 수행하기 위해서 제안된 알고리즘 가운데 몽고메리(Montgomery) 알고리즘은 계산 효율면에서 가장 효율적인 것으로 알려져 있다.Digital signature refers to a technology that enables electronic documents to provide a function of directly signing a conventional paper in electronic exchange of information. Types include the International Organization for Standardization (ISO) / the International Electrotechnical Commission (IEC) 9796, the ElGamal variant of the United States Digital Signiture Standard (DSS), Russia's Ghost (GOST) and Korea's KC-DSA (KC-DSA) are the standard. To implement the digital signatures, a modular power operation is required, and the modular power requires a modular multiplication of A · B · 2 −n mod N and A · B mod N. Among algorithms proposed for performing the modular multiplication, Montgomery algorithm is known to be the most efficient in terms of computational efficiency.
일반적으로 A·B mod N을 계산하기 위해서는 나눗셈과 A·B의 몫을 추정하는 것이 필요하지만, 몽고메리 알고리즘은 나눗셈과 몫의 추정이 필요하지 않다. 몽고메리 알고리즘은 다음과 같다.In general, in order to calculate A · B mod N, it is necessary to estimate the quotient of division and A · B, but the Montgomery algorithm does not require division and quotient estimation. The Montgomery algorithm is as follows.
각각 n비트인 수 A, B, N에 대해, A, B를 A=an-1·2n-1+····+a1·2+a0, B=bn-1·2n-1+····+b1·2+b0로 표현할 때, T=A·B·R-1mod N을 구하는 알고리즘으로 다음과 같이 나타낼 수 있다.For numbers A, B, and N, which are each n bits, A and B are A = an-1 · 2 n-1 + ··· + a1 · 2 + a0, B = bn-1 · 2 n-1 + When expressed as + b1 · 2 + b0, an algorithm for obtaining T = A · B · R −1 mod N can be expressed as follows.
M=A·B·N' mod R=mn-1·2n-1+····+m1·2+m0M = A · B · N 'mod R = mn-1 · 2 n-1 + ··· + m1 · 2 + m0
단, mi∈{0,1}, 0≤i≤n-1, R=2n, N'은 RR-1-NN'=1을 만족하는 값이다. 상기 수학식 1에 따라 T는 다음과 같이 쓸 수 있다.However, m i ∈ {0,1}, 0 ≦ i ≦ n −1, R = 2 n , and N ′ are values satisfying RR −1 -NN ′ = 1. According to Equation 1, T can be written as follows.
+(mn-1·2-1+mn-2·2-2+··+m1·2-n+1+m0·2-n)·N+ (mn-1 · 2 -1 + mn-2 · 2 -2 + · + m1 · 2 -n + 1 + m0 · 2 -n ) N
=(··((a0·B+m0·N)·2-1+a1·B+m1·N)·2-1+··+an-1·B+mn-1·N)·2-1 = (·· ((a0 · B + m0 · N) · 2 -1 + a1 · B + m1 · N) · 2 -1 + ·· + an-1 · B + mn-1 · N) · 2 - One
=(··((a0·B+m0·N+2·a1·B)·2-1+m1·N+2·a2·B)·2-1+·+mn-1·N)·2-1 ((A0 · B + m0 · N + 2 · a1 · B) · 2 −1 + m1 · N + 2 · a2 · B) · 2 −1 + · mn-1 · N) -One
단, R=2n임With R = 2 n
여기서 mi는 T의 i번째 비트값인 ti에 따라서 결정되는데, 여기서는 ti가 1이면 mi는 1, ti가 0이면 항상 mi는 0이다.Here, mi is determined according to ti, i-th bit value of T. Here, if ti is 1, mi is 1, and if ti is 0, mi is always 0.
상기한 바와 같이 몽고메리 알고리즘은 나눗셈이 필요하지 않은 효율적인 알고리즘으로서, 종래의 나눗셈, 몫 추정방법을 소프트웨어로 구현시 요구되는 많은 계산량을 줄일 수 있고, 상기 종래 방법을 하드웨어로 구현할 경우에도 많은 소자가 요구되는 단점을 보완할 수 있다. 본 발명은 상기 몽고메리 알고리즘을 하드웨어로 구현하기 위해서, 주어진 값과 임시값을 위한 몇 개의 레지스터와 간단한 논리 조합 회로만을 이용해서 빠른 모듈라 곱셈의 수행이 가능하도록 한 것이다.As described above, the Montgomery algorithm is an efficient algorithm that does not require division, and it can reduce a large amount of computation required when implementing the conventional division and quotient estimation method in software, and many elements are required even when the conventional method is implemented in hardware. It can compensate for the disadvantage. In order to implement the Montgomery algorithm in hardware, the present invention enables fast modular multiplication using only a few logical combination circuits and a few registers for given and temporary values.
본 발명은 상술한 문제점을 해결하기 위해 창출된 것으로서, 계산면에서 효율적인 몽고메리 알고리즘을 이용하여, 주어진 임시 값을 잠시 저장하기 위한 몇 개의 레지스터와 간단한 논리 조합 회로만을 이용해서 디지털 서명에 필요한 모듈라 곱셈을 수행하는 디지털 서명을 위한 모듈라 곱셈 장치를 제공함에 목적이 있다.SUMMARY OF THE INVENTION The present invention was created to solve the above-mentioned problems, using a Montgomery algorithm that is efficient in computation, and performs modular multiplication for digital signatures using only a few logical combination circuits and a few registers to temporarily store a given temporary value. It is an object of the present invention to provide a modular multiplication apparatus for performing digital signatures.
도 1은 본 발명에 따른 디지털 서명을 위한 곱셈 장치에 대한 블록도를 도시한 것이다.1 shows a block diagram of a multiplication apparatus for digital signatures in accordance with the present invention.
도 2는 모듈라 곱셈 장치를 이루는 A·B·2-nmod N을 구하는 블록에 대한 블록도를 도시한 것이다.Fig. 2 shows a block diagram of a block for obtaining A · B · 2 −n mod N constituting the modular multiplication apparatus.
도 3은 도 2의 장치에 대한 각 블록의 타이밍도를 도시한 것이다.3 shows a timing diagram of each block for the apparatus of FIG.
도 4는 도 2의 선택 가산기에 대한 장치도를 도시한 것이다.4 shows an apparatus diagram for the selective adder of FIG.
도 5는 도 4의 낸드 게이트를 도시한 것이다.FIG. 5 illustrates the NAND gate of FIG. 4.
상기 목적을 달성하기 위한 본 발명에 따른, 디지털 서명을 위한 모듈라 곱셈 장치는 P=22nmod N 계산부; T=A·B·2-nmod N 계산부; P·T·2-nmod N = A·B mod N 계산부를 포함함이 바람직하다.According to the present invention for achieving the above object, the modular multiplication device for digital signature P = 2 2n mod N calculation unit; T = A · B · 2 −n mod N calculation unit; It is preferable to include a P · T · 2 −n mod N = A · B mod N calculation unit.
상기 A·B·2-nmod N 계산부는 입력된 n 비트 수 B, N을 저장하는 레지스터; 입력된 n 비트 수 A를 저장하는 쉬프트 레지스터; 상기 T=A·B·2-nmod N의 결과를 매 클럭마다 저장하는 n+2 비트 임시 저장 레지스터; 상기 A 레지스터의 최하위비트인 a0, 상기 T 레지스터의 최하위비트인 t0, 상기 입력값 B 및 상기 입력값 N을 입력으로하고 a0t0가 11이면 2B+N, 10면 2B, 01이면 N, 00이면 0을 n+2 비트로 출력하는 선택 가산기; 및 상기 선택 가산기 출력과 상기 T 레지스터의 출력을 입력으로하여 가산하는 가산기를 구비함이 바람직하다.The A · B · 2 −n mod N calculation unit comprises: a register for storing an input number n of bits B and N; A shift register which stores the input n-bit number A; An n + 2 bit temporary storage register for storing the result of the T = A · B · 2 −n mod N at every clock; Inputs a0 which is the least significant bit of the A register, t0 which is the least significant bit of the T register, the input value B and the input value N, and if a0t0 is 11, 2B + N, 10 is 2B, 01 is N, 00 is 0 A select adder for outputting n + 2 bits; And an adder which adds the selection adder output and the output of the T register as inputs.
상기 선택 가산기는 미리 계산한 2B와 상기 N을 더하는 가산기; 상기 a0, 상기 t0의 반전된 입력 및 상기 2B를 낸드 논리 연산하는 제1 낸드 게이트; 상기 a0의 반전된 입력, 상기 t0 및 상기 N을 낸드 논리 연산하는 제 2 낸드 게이트; 상기 가산기의 출력과 상기 제1, 제2 낸드 게이트의 출력을 낸드 논리 연산하는 제3 낸드 게이트; 상기 제1, 제2 및 제3 낸드 게이트의 출력을 낸드 논리 연산하는 제4 낸드 게이트를 포함함이 바람직하다.The selection adder includes an adder that adds 2B and N previously calculated; A first NAND gate performing a NAND logic operation on the a0, the inverted input of t0 and the 2B; A second NAND gate performing a NAND logic operation on the inverted input of the a0, the t0 and the N; A third NAND gate performing NAND logic operation on the output of the adder and the outputs of the first and second NAND gates; And a fourth NAND gate performing NAND logic operation on the outputs of the first, second and third NAND gates.
이하에서 첨부된 도면을 참조하여 본 발명의 동작을 자세히 설명한다.Hereinafter, with reference to the accompanying drawings will be described in detail the operation of the present invention.
도 1은 본 발명에 따른 모듈라 곱셈 장치에 대한 블록도를 도시한 것으로서, 모듈라 곱셈 장치는 P=22nmod N를 계산하는 P=22nmod N 계산부(100), A, B 및 N을 입력으로하여 T=A·B·2-nmod N을 계산하는 T=A·B·2-nmod N 계산부(110), 상기 P와 T를 입력으로하여 P·T·2-nmod N=A·B mod N을 셰산하는 A·B mod N 계산부(120)로 이루어진다.Figure 1 as showing a block diagram of a modular multiplication according to the present invention, the modular multiplication device is P = 2 2n mod for calculating the N P = 2 2n mod N calculation section (100), A, B, and N entered by T = a · B · 2 -n calculating a mod N T = a · B · 2 -n mod N calculating unit 110, to the P and T as the input P · T · 2 -n mod The A · B mod N calculation unit 120 calculates N = A · B mod N.
상기 T=A·B·2-nmod N의 계산블록은 도 2에 자세히 보인 것과 같이 몇 개의 레지스터들과 간단한 논리 조합 게이트들로 구성되어 있다. A·B·2-nmod N을 계산하기 위해 입력되는 A(200), B(210), N(220)은 각각 n비트인 A,B,N을 저장하기 위한 n비트 레지스터들이다. 이 때 A는 매 클럭마다 오른쪽으로 한 비트씩 이동하는 쉬프트 레지스터이다. T(230)는 매 클럭마다 나오는 임시값을 저장해서 최신의 값으로 바꾸는 n+2비트 레지스터로서 0으로 초기화된다. 상기 가산기(250)는 선택 가산기(240)의 출력과 상기 T(230)의 출력을 입력으로하여 가산한 다음, 상기 가산결과의 최하위비트가 항상 0이고 중간 계산에 필요하지 않는 값이므로, 임시 저장 레지스터인 T(230)로 최하위 비트를 제외한 n+2 비트를 출력한다. 상기 선택 가산기(240)는 도 4에 자세하게 도시된 바와 같이, n비트 낸드 게이트(400, 410, 420, 430)와 가산기(440)로 구성되어 있다. 도 4는 상기 n비트 낸드 게이트(400, 410, 420, 430)를 자세히 도시한 것으로, 각 비트별로 낸드 논리 연산을 수행함을 보인 것이다. 상기 선택 가산기(240)는 상기 a0, t0의 값에 따라 상기 B(210)와 상기 N(220)을 입력으로하여 a0t0가 11이면 2B+N, 10이면 2B, 01이면 N, 00이면 0을 선택하여 그 결과를 출력한다. 상기 레지스터들을 제외한 회로의 오동작을 방지하기 위해서, 조합회로의 전파 지연 시간을 충분히 보장하는 정도로 클럭을 주어야한다. 도 3은 각 동작에 따른 타이밍 도를 보인 것이다. 상기 각 레지스터들에 모든 데이터가 입력되었을 때, 상기 임시 레지스터 T(230)에 저장될 값은 불안정한 값들로 변동을 보이다가 시간이 흐르면 일정한 값으로 안정을 이루게된다. 이때 값은 상기 A(200)와 상기 T(230) 레지스터의 최하위 비트에 의해 결정된다. 상기 결정된 값은 처음 클럭에 상기 T(230) 레지스터에 자신의 최하위 비트를 버린 후 n+2비트크기로 저장된다. 상기와 같은 계산을 n+1 클럭동안 반복하여 수행한다.The computation block of T = A · B · 2 −n mod N is composed of several registers and simple logic combination gates as shown in detail in FIG. A (200), B (210), and N (220) input to calculate A · B · 2 −n mod N are n bit registers for storing A, B, and N, which are n bits, respectively. A is a shift register that shifts one bit to the right every clock. T 230 is initialized to 0 as an n + 2 bit register that stores a temporary value for every clock and replaces it with the latest value. The adder 250 adds the output of the select adder 240 and the output of the T 230 as inputs, and then temporarily stores the least significant bit of the addition result because it is always 0 and is not necessary for the intermediate calculation. It outputs n + 2 bits except the least significant bit to the register T230. As shown in detail in FIG. 4, the selective adder 240 includes n-bit NAND gates 400, 410, 420, and 430 and an adder 440. 4 illustrates the n-bit NAND gates 400, 410, 420, and 430 in detail, showing that the NAND logic operation is performed for each bit. The select adder 240 inputs the B 210 and the N 220 according to the values of a0 and t0, and if a0t0 is 11, 2B + N, 10 is 2B, 01 is N, and 00 is 0. Select and print the result. In order to prevent malfunction of circuits other than the above registers, a clock should be provided to a degree sufficient to ensure propagation delay time of the combination circuit. 3 is a timing diagram according to each operation. When all data is input to each of the registers, the value to be stored in the temporary register T 230 varies with unstable values, and stabilizes to a constant value as time passes. The value is determined by the least significant bits of the A 200 and T 230 registers. The determined value is stored in n + 2 bit sizes after discarding its least significant bit in the T 230 register at the first clock. The above calculation is repeated for n + 1 clocks.
다음 표1은 상기 A 레지스터(200)의 값이 10100110, 상기 B 레지스터(210)의 값이 11100101, 상기 N 레지스터(220)의 값이 11110101인 경우, 본 발명에 의한 모듈라 곱셈 장치중의 A·B·2-nmod N을 계산하는 과정을 보인 것이다.Table 1 shows the values of A ··················· of the modulator multiplier The process of calculating B · 2 −n mod N is shown.
여기서, X의 값은 0이고 Ti'는 상기 가산기(250)의 출력값이다. 먼저 임시 레지스터 Ti(230)는 0으로 초기화 되어있다. 상기 선택 가산기(240)의 출력은 0이고, 상기 가산기(250) 출력 Ti'도 0이다. 첫번째 클럭(i=1)이 들어왔을 때, 상기 a0,t0는 10이므로 상기 선택 가산기(240)의 출력은 0111001010이고, 상기 가산기 출력(250) Ti'는 00111001010이 된다. 이 때, 최하위 비트를 제외한 0011100101이 T 레지스터(230)에 다시 저장된다. 두번째 클럭(i=2)이 들어왔을 때, 상기 a0,t0는 11이므로 상기 선택 가산기(240)의 출력은 1010111111이고, 상기 가산기(250) 출력 Ti'는 01110100100이 되고 상기 T 레지스터(230)에는 최하위 비트를 제외한 0111010010이 저장된다. 상기와 같은 방법으로 n+1클럭까지 계산이 이루어진다. 상기 표 1에서 보인 바와 같이 n비트 입력이 들어왔을 때, n+2비트의 임시 레지스터를 이용해서 n+1 클럭만에 A·B·2-nmod N의 계산이 가능하므로, 몫을 추정하여 모듈라 값을 추정하는 과정에 비해서 클럭 수와 필요한 레지스터를 현저히 줄일 수 있다.Here, the value of X is 0 and Ti 'is an output value of the adder 250. First, the temporary register Ti 230 is initialized to zero. The output of the select adder 240 is zero, and the adder 250 output Ti 'is also zero. When the first clock (i = 1) is input, the a0, t0 is 10, so the output of the select adder 240 is 0111001010, and the adder output 250 Ti 'is 00111001010. At this time, 0011100101 except the least significant bit is stored in the T register 230 again. When a second clock (i = 2) is input, the output of the select adder 240 is 1010111111, the output of the adder 250 becomes 01110100100 since the a0, t0 is 11 and the T register 230 0111010010 is stored except the least significant bit. In the same way as above, calculation is performed up to n + 1 clocks. As shown in Table 1 above, when n-bit input is input, A · B · 2− n mod N can be calculated using only n + 1 clocks using n + 2 bit temporary registers. Compared to estimating modular values, the number of clocks and required registers can be significantly reduced.
본 발명에 의하면, 상기 디지털 서명을 위한 모듈라 곱셈 장치는 하드웨어적으로 A·B mod N의 계산을 빠르게 할 수 있고, 디지털 서명의 생성 및 검증을 위한 기기에 사용될 수 있는 장치로 제공될 수 있다. 또한, 아이씨(IC) 카드를 바탕으로한 전자 서명, 인증, 암/복호화의 하드웨어 장치, 또는 모듈라 곱셈을 수행하는 전자 서명기기에 의해서 암/복호화하는 기기에 사용될 수 있다. 또한, 니스트-디에스에스(NIST-DSS), 알에스에이(Rivest Shamir Adleman), 엘가말, 슈너(Schnorr) 전자 서명등 종래의 공개키 암호 시스템을 구현하는데 이용할 수 있다.According to the present invention, the modular multiplication apparatus for the digital signature can be quickly calculated in hardware A · B mod N, can be provided as a device that can be used in the device for the generation and verification of the digital signature. It can also be used in devices that encrypt / decrypt by electronic signatures, authentication, encryption / decryption hardware devices based on IC cards, or electronic signature devices that perform modular multiplication. It can also be used to implement conventional public key cryptographic systems, such as NIST-DSS, Rivest Shamir Adleman, Elgarmal, and Schnorr digital signatures.
Claims (3)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1019970000500A KR100400210B1 (en) | 1997-01-10 | 1997-01-10 | Modular multiplication device for digital signature |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1019970000500A KR100400210B1 (en) | 1997-01-10 | 1997-01-10 | Modular multiplication device for digital signature |
Publications (2)
Publication Number | Publication Date |
---|---|
KR19980065477A true KR19980065477A (en) | 1998-10-15 |
KR100400210B1 KR100400210B1 (en) | 2003-11-14 |
Family
ID=37422326
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1019970000500A KR100400210B1 (en) | 1997-01-10 | 1997-01-10 | Modular multiplication device for digital signature |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR100400210B1 (en) |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3302043B2 (en) * | 1992-05-18 | 2002-07-15 | キヤノン株式会社 | Encryption communication method and system |
FR2726666B1 (en) * | 1994-11-08 | 1997-01-17 | Sgs Thomson Microelectronics | PROCESS FOR PRODUCING AN ERROR CORRECTION PARAMETER ASSOCIATED WITH THE IMPLEMENTATION OF MODULAR OPERATIONS ACCORDING TO THE MONTGOMERY METHOD |
KR100257124B1 (en) * | 1997-05-16 | 2000-05-15 | 문상재 | High-speed exponentiation method using common-multiplicand modular multiplication |
KR100257123B1 (en) * | 1997-05-16 | 2000-05-15 | 문상재 | High-speed exponentiation method using a modified montgomery modular multiplication |
-
1997
- 1997-01-10 KR KR1019970000500A patent/KR100400210B1/en not_active IP Right Cessation
Also Published As
Publication number | Publication date |
---|---|
KR100400210B1 (en) | 2003-11-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US5742530A (en) | Compact microelectronic device for performing modular multiplication and exponentiation over large numbers | |
EP0933695B1 (en) | IC card equipped with elliptic curve encryption processing facility | |
US8504602B2 (en) | Modular multiplication processing apparatus | |
US6434585B2 (en) | Computationally efficient modular multiplication method and apparatus | |
US4949293A (en) | Method and apparatus for computing residue with respect to arbitrary modulus | |
US8738927B2 (en) | Arrangement for and method of protecting a data processing device against an attack or analysis | |
US5210710A (en) | Modulo arithmetic processor chip | |
KR20010012222A (en) | Improved apparatus & method for modular multiplication & exponentiation based on montgomery multiplication | |
US20040179681A1 (en) | Apparatus and method for performing montgomery type modular multiplication | |
US20060126830A1 (en) | Montgomery transform device, arithmetic device, IC card, encryption device, decryption device and program | |
EP0938790B1 (en) | A method and device for executing a decrypting mechanism through calculating a standardized modular exponentiation for thwarting timing attacks | |
US20100287384A1 (en) | Arrangement for and method of protecting a data processing device against an attack or analysis | |
Rankine | Thomas—a complete single chip RSA device | |
EP1068565B1 (en) | Acceleration and security enhancements for elliptic curve and rsa coprocessors | |
US20040125948A1 (en) | Montgomery modular multiplier using a compressor and multiplication method | |
KR100508092B1 (en) | Modular multiplication circuit with low power | |
KR20040067779A (en) | Information processing means | |
US7512231B2 (en) | Computation method for modular exponentiation operation in decryption or signature generation | |
KR100400210B1 (en) | Modular multiplication device for digital signature | |
Knežević et al. | Speeding up bipartite modular multiplication | |
KR100322740B1 (en) | Modular computing apparatus and method thereof | |
Takagi | A modular multiplication algorithm with triangle additions | |
KR100297110B1 (en) | Modular multiplier | |
Orton et al. | A design of a fast pipelined modular multiplier based on a diminished-radix algorithm | |
JP3779479B2 (en) | IC card |
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: 20120814 Year of fee payment: 10 |
|
FPAY | Annual fee payment |
Payment date: 20130822 Year of fee payment: 11 |
|
LAPS | Lapse due to unpaid annual fee |