KR100684134B1 - 몽고메리 승산에 기초한 모듈의 승산 및 누승을 위한 개선된 장치와 방법 - Google Patents
몽고메리 승산에 기초한 모듈의 승산 및 누승을 위한 개선된 장치와 방법 Download PDFInfo
- Publication number
- KR100684134B1 KR100684134B1 KR1019997010171A KR19997010171A KR100684134B1 KR 100684134 B1 KR100684134 B1 KR 100684134B1 KR 1019997010171 A KR1019997010171 A KR 1019997010171A KR 19997010171 A KR19997010171 A KR 19997010171A KR 100684134 B1 KR100684134 B1 KR 100684134B1
- Authority
- KR
- South Korea
- Prior art keywords
- bit
- bits
- multiplier
- multiplication
- input
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims abstract description 66
- 229910052757 nitrogen Inorganic materials 0.000 claims description 23
- 239000000872 buffer Substances 0.000 claims description 20
- 230000007246 mechanism Effects 0.000 claims description 11
- 230000036316 preload Effects 0.000 claims description 6
- 238000004377 microelectronic Methods 0.000 claims description 3
- 238000012546 transfer Methods 0.000 claims description 2
- 230000005055 memory storage Effects 0.000 claims 1
- 230000008569 process Effects 0.000 description 26
- 230000006870 function Effects 0.000 description 13
- 238000004364 calculation method Methods 0.000 description 10
- 238000007792 addition Methods 0.000 description 6
- 230000003071 parasitic effect Effects 0.000 description 5
- 238000010586 diagram Methods 0.000 description 4
- 230000008859 change Effects 0.000 description 3
- 230000003111 delayed effect Effects 0.000 description 3
- 238000012545 processing Methods 0.000 description 3
- 238000011084 recovery Methods 0.000 description 3
- 230000001360 synchronised effect Effects 0.000 description 3
- VTYYLEPIZMXCLO-UHFFFAOYSA-L Calcium carbonate Chemical class [Ca+2].[O-]C([O-])=O VTYYLEPIZMXCLO-UHFFFAOYSA-L 0.000 description 2
- 229940069428 antacid Drugs 0.000 description 2
- 239000003159 antacid agent Substances 0.000 description 2
- 230000001458 anti-acid effect Effects 0.000 description 2
- 229910052799 carbon Inorganic materials 0.000 description 2
- 238000006243 chemical reaction Methods 0.000 description 2
- 238000010276 construction Methods 0.000 description 2
- 230000007423 decrease Effects 0.000 description 2
- 238000001514 detection method Methods 0.000 description 2
- 230000009977 dual effect Effects 0.000 description 2
- 230000002093 peripheral effect Effects 0.000 description 2
- 230000002441 reversible effect Effects 0.000 description 2
- 238000012360 testing method Methods 0.000 description 2
- 241000251135 Scyliorhinidae Species 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 238000004422 calculation algorithm Methods 0.000 description 1
- 238000007796 conventional method Methods 0.000 description 1
- 230000001186 cumulative effect Effects 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000009795 derivation Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- BTCSSZJGUNDROE-UHFFFAOYSA-N gamma-aminobutyric acid Chemical compound NCCCC(O)=O BTCSSZJGUNDROE-UHFFFAOYSA-N 0.000 description 1
- 230000006698 induction Effects 0.000 description 1
- 238000003780 insertion Methods 0.000 description 1
- 230000037431 insertion Effects 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 238000012804 iterative process Methods 0.000 description 1
- 239000000463 material Substances 0.000 description 1
- 229910052698 phosphorus Inorganic materials 0.000 description 1
- 238000002360 preparation method Methods 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 239000002210 silicon-based material Substances 0.000 description 1
- 238000011410 subtraction method Methods 0.000 description 1
- 238000012795 verification Methods 0.000 description 1
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/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
Landscapes
- Physics & Mathematics (AREA)
- Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Analysis (AREA)
- Mathematical Optimization (AREA)
- Pure & Applied Mathematics (AREA)
- Computational Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Computing Systems (AREA)
- Mathematical Physics (AREA)
- General Engineering & Computer Science (AREA)
- Complex Calculations (AREA)
- Signal Processing For Digital Recording And Reproducing (AREA)
- Error Detection And Correction (AREA)
Abstract
Description
Claims (33)
- P(A·B)N의 몽고메리 모듈 승산을 수행하는 마이크로전자 논리연산 장치로서, P(A·B)N은 A·B·I mod N에 모듈적으로 일치하고, I는 2-n mod N이고, A,B,N은 n 비트 길이 오퍼랜드이고, N은 홀수인 마이크로전자 논리연산 장치에 있어서, 상기 장치는,각각이 n 비트 길이 오퍼랜드를 유지하고, 승수(B) 및 모듈러스(N)를 각각 저장하도록 적용되어 있는 제1 (70,80;1000) 및 제2 (200,210;1005) 주메모리 레지스터;제1 k 비트 스트링(Ai)을 제1 들어오는 비트(Bd)로 그리고 제2 k 비트 스트링(N0,Y0)을 제2 들어오는 비트(Y0,Nd)로 동시에 승산하고 그 결과를 누산하는 디바이스(390)로서, 적어도 k+1 비트 길이의 하나의 캐리-세이브 가산기(410)를 가지고, 모두-제로 스트링 값, 상기 제1 k 비트 스트링, 상기 제2 k 비트 스트링, 또는 상기 제1 및 제2 k 비트 스트링의 미리 계산된 합중의 하나를 상기 캐리세이브 가산기로의 입력으로 선택하도록 적용된 디바이스(390);제 1 단계에서 캐리-세이브 가산기로부터 출력되는 k 하위 비트가 제로가 되도록 하는 Y0를 결정하는 논리 디바이스(430); 및제 2 단계에서 상기 캐리-세이브 가산기로부터 최종 P(A·B)N 결과를 출력하도록 적용된 출력 전달 매커니즘을 포함하고 있으며,상기 장치는 제1 단계에서,상기 제1 들어오는 비트로서 B의 연속하는 하위 비트;상기 디바이스로 입력되는 상기 제2 들어오는 비트로서 동작중 발생된 예측값 Y0의 연속하는 비트;상기 제 1k 비트 스트링으로서 피승수(A)의 연속하는 k 비트; 및상기 제2 k 비트 스트링으로서 N의 연속하는 k 하위비트를 입력하도록 적용되고상기 장치는 제2 단계에서,상기 제1 들어오는 비트로서 B의 연속하는 하위 비트;상기 디바이스로 입력되는 상기 제2 들어오는 비트로서 N의 연속하는 비트;상기 제1 k 비트 스트링으로서 피승수(A)의 연속하는 k 비트 및상기 제2 k 비트 스트링으로서, 제1 단계에서 발생된 Y0의 연속하는 k 하위비트를 입력하도록 적용되고,상기 논리 디바이스(430)는 입력으로서,제1 k 비트 스트링의 하위 비트(Ai);상기 제1 들어오는 비트(Bd);상기 캐리세이브 가산기(410)로부터 하위 캐리 아웃 비트;상기 캐리 세이브 가산기로부터 하위비트의 다음 비트;일시 저장 레지스터(S)로부터의 다음 비트; 및가산기(460)으로부터 캐리 아웃 비트;를 수신하고,상기 캐리-세이브 가산기(410)는 피승수가 상기 캐리-세이브 가산기(410)내로 가산됨과 동시에 값을 출력하도록 적용되는 것을 특징으로 하는 마이크로전자 논리연산장치.
- 제 1 항에 있어서, 상기 캐리-세이브 가산기내로 합산은 직렬적으로 차례로 로드된 연속적으로 더 상위의 승수 비트에 의해 활성화되는 것을 특징으로 하는 장치.
- 제 2 항에 있어서, 상기 연속적으로 로드된 승수 비트는:상기 입력 승수 비트 및 대응 입력 Y0 비트가 제로이면 캐리-세이브 가산기내로 합산을 야기하지 않도록 적용되고;상기 입력 승수 비트가 1이고 대응 입력 Y0 비트가 제로이면 Ai 피승수만을 가산하도록 적용되고;상기 입력 승수 비트가 제로이고 대응 입력 Y0 비트가 1이면 모듈러스 N 만을 가산하도록 적용되고;상기 입력 승수 비트 및 대응 입력 Y0 비트가 1이면 피승수 Ai 와 모듈러스 N 의 합산을 가산하도록 적용되는 것을 특징으로 하는 장치.
- 제 3 항에 있어서, 피승수 값 Ai 및 모듈러스 값 N을 2개의 지정된 사전로드 버퍼에 사전로드하고, 이 값들을 제 3 피승수 사전로드 버퍼내로 합산하도록 적용되어, 대응 승수 및 Y0 비트가 모두 1일때 각각의 피승수 값에 각각 가산할 필요를 없애는 것을 특징으로 하는 장치.
- 제 4 항에 있어서, 상기 사전로드 버퍼는 직렬로 공급되고, 피승수 값은 상기 레지스터중의 하나로부터 또는 상기 레지스터중의 하나를 통해 CPU로부터 상기 사전로드 버퍼로 동작중에 사전로드되는 것을 특징으로 하는 장치.
- 제 1 항에 있어서, 상기 승수 값은 직렬로 입력되고 캐리-세이브 가산기의 출력은 직렬로 출력되고, 상기 논리 디바이스가 하나의 비트로 모듈러스 값이 캐리-세이브 가산기내로 가산되어야 하는지를 예측하도록 적용되는 것을 특징으로 하는 장치.
- 제 1 항 또는 제 6 항에 있어서, k 하위 제로가, Y0비트를 예측할 때 다음의 3가지 특성:i) Ai 레지스터의 최하위 비트와 B 스트림의 다음 비트의 논리곱, A0·Bd;ii) 캐리-세이브 가산기로부터 하위 캐리 아웃 비트, CO0; 및iii) 캐리-세이브 가산기의 제2 하위 셀로부터 Sout 비트, SO1에 의해 제어되는 모듈 승산 디바이스로부터 빠져 나가는 것을 특징으로 하는 장치.
- 제 7 항에 있어서, 상기 3개의 값 A0·Bd, CO0 및 SO1은 유효한 Y0 예측 비트를 출력하도록 배타적 논리합되는 것을 특징으로 하는 장치.
- 제 1 항에 있어서, 그 출력의 최하위 k 비트가 폐기되는 모듈 승산 디바이스로부터의 출력을 감지하도록 적용된 비교기를 더 포함하고, 상기 출력이 모듈러스 N 보다 크고 2N보다 적고, 상기 비교기는 상기 승산 디바이스로부터 출력 스트림이 예정되는 메모리 레지스터로부터의 출력값을 이용하여 모듈 감산을 제어하도록 적용되어, 제2 메모리 저장 디바이스를 더 작은 몽고메리 곱 값을 위해 할당할 필요를 없애는 것을 특징으로 하는 장치.
- 제 1 항에 있어서, 직렬 비교기가 상기 모듈 승산 디바이스로부터의 출력 Z/2k가 2n보다 적을 때를 감지하도록 적용되어, 오버플로 비트를 설정하도록 적용되는 것을 특징으로 하는 장치.
- 제 1 항에 있어서, Y0 승수 입력이 상수 제로 입력으로 교체되는 경우, 정수의 정규 영역에서 Ai·B의 자연 정수 승산을 수행하도록 적용되는 것을 특징으로 하는 장치.
- 제 1 항에 있어서, Y0 승수 입력이 상수 제로 입력으로 교체되는 경우, Ai·B의 자연 정수 승산을 수행하도록 적용되고, n 비트 레지스터로부터 나오는 다른 값 S는 값 Ai·B+S를 발생시키기 위해 합산될 수 있는 것을 특징으로 하는 장치.
- 제 1 항에 있어서, Y0 승수 입력이 오퍼랜드 C를 공급하도록 적용된 메모리 레지스터의 출력으로 교체되고, 오퍼랜드 N이 대체 오퍼랜드 D로 교체되는 경우, Ai·B+C·D의 자연 정수 승산을 수행하도록 적용되고, 또 다른 레지스터로부터 나오는 다른 값 S는 값 Ai·B+C·D+S를 발생시키기 위해 정수의 정규 영역에서 합산될 수 있는 것을 특징으로 하는 장치.
- 제 1 항에 있어서, 몽고메리 모듈 승산이 몽고메리 상수 J0의 사용을 요구하지 않고, 단지 하나의 미리 계산된 몽고메리 변수를 가지고 수행될 수 있는 것을 특징으로 하는 장치.
- 제 1 항에 있어서, 몽고메리 상수 J0는 Ai 오퍼랜드 값 및 B 오퍼랜드 값을 제로로 재설정하고, 부분 결과 값 S0를 1로 설정함으로써 계산되는 것을 특징으로 하는 장치
- 제 1 항에 있어서, 상기 디바이스는 몽고메리 모듈 누승을 수행하도록 적용되는 것을 특징으로 하는 장치.
- 삭제
- 삭제
- 삭제
- 삭제
- 삭제
- 삭제
- 삭제
- 삭제
- 삭제
- 삭제
- 삭제
- 삭제
- 삭제
- 삭제
- 삭제
- 삭제
- 삭제
Applications Claiming Priority (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
IL12077697A IL120776A0 (en) | 1997-05-04 | 1997-05-04 | Apparatus and methods for modular multiplication and exponentiation based on montgomery multiplication |
IL120776 | 1997-07-14 | ||
IL121311 | 1997-07-14 | ||
IL12131197A IL121311A (en) | 1997-07-14 | 1997-07-14 | Apparatus and method for modular multiplication and exponentiation based on montgomery multiplication |
PCT/IL1998/000148 WO1998050851A1 (en) | 1997-05-04 | 1998-03-29 | Improved apparatus & method for modular multiplication & exponentiation based on montgomery multiplication |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20010012222A KR20010012222A (ko) | 2001-02-15 |
KR100684134B1 true KR100684134B1 (ko) | 2007-02-16 |
Family
ID=26323418
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1019997010171A KR100684134B1 (ko) | 1997-05-04 | 1998-03-29 | 몽고메리 승산에 기초한 모듈의 승산 및 누승을 위한 개선된 장치와 방법 |
Country Status (9)
Country | Link |
---|---|
US (1) | US6185596B1 (ko) |
EP (1) | EP1008026B1 (ko) |
JP (2) | JP2001527673A (ko) |
KR (1) | KR100684134B1 (ko) |
AT (1) | ATE372541T1 (ko) |
AU (1) | AU6516498A (ko) |
DE (1) | DE69838390T2 (ko) |
ES (1) | ES2293677T3 (ko) |
WO (1) | WO1998050851A1 (ko) |
Families Citing this family (55)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6317769B1 (en) * | 1996-09-18 | 2001-11-13 | International Business Machines Corporation | Apparatus for calculating of Bc (mod n) with repeatedly shifting a holding value |
WO1999035782A1 (en) * | 1998-01-02 | 1999-07-15 | Cryptography Research, Inc. | Leak-resistant cryptographic method and apparatus |
US6278783B1 (en) | 1998-06-03 | 2001-08-21 | Cryptography Research, Inc. | Des and other cryptographic, processes with leak minimization for smartcards and other cryptosystems |
US7587044B2 (en) * | 1998-01-02 | 2009-09-08 | Cryptography Research, Inc. | Differential power analysis method and apparatus |
WO2000002342A2 (en) * | 1998-07-02 | 2000-01-13 | Cryptography Research, Inc. | Leak-resistant cryptographic indexed key update |
IL128007A (en) * | 1999-01-11 | 2003-02-12 | Milsys Ltd | Enhancements on compact logic devices and also for accelerating and securing computations in modular arithmetic especially for use in public key cryptographic co-processors designed for elliptic curve and rsa type computations |
FR2791155B1 (fr) * | 1999-03-17 | 2001-05-11 | St Microelectronics Sa | Dispositif et procede de mise en oeuvre d'une operation modulaire elementaire selon la methode de montgomery |
FR2791156B1 (fr) | 1999-03-17 | 2001-05-11 | St Microelectronics Sa | Dispositif et procede de mise en oeuvre d'une operation modulaire elementaire selon la methode de montgomery |
FR2791157A1 (fr) * | 1999-03-17 | 2000-09-22 | St Microelectronics Sa | Dispositif et procede de mise en oeuvre d'une operation modulaire elementaire selon la methode de montgomery |
IL135247A0 (en) * | 2000-03-23 | 2003-06-24 | Cipherit Ltd | Method and apparatus for the calculation of modular multiplicative inverses |
US7240204B1 (en) * | 2000-03-31 | 2007-07-03 | State Of Oregon Acting By And Through The State Board Of Higher Education On Behalf Of Oregon State University | Scalable and unified multiplication methods and apparatus |
US6691143B2 (en) | 2000-05-11 | 2004-02-10 | Cyberguard Corporation | Accelerated montgomery multiplication using plural multipliers |
CN1265280C (zh) * | 2000-05-15 | 2006-07-19 | 艾蒙系统股份有限公司 | 扩展整数的计算域的范围 |
FR2809894B1 (fr) * | 2000-05-31 | 2002-10-25 | France Telecom | Procede de cryptographie, microcircuit pour carte a puce et cartes a puce incluant un tel microcircuit |
IL140267A0 (en) | 2000-12-13 | 2003-09-17 | Milsys Ltd | Dual processor trusted computing environment |
US6963977B2 (en) * | 2000-12-19 | 2005-11-08 | International Business Machines Corporation | Circuits and methods for modular exponentiation |
US20020116429A1 (en) * | 2000-12-19 | 2002-08-22 | International Business Machines Corporation | System and method for modular multiplication |
US7607165B2 (en) * | 2001-03-09 | 2009-10-20 | The Athena Group, Inc. | Method and apparatus for multiplication and/or modular reduction processing |
FR2822260A1 (fr) * | 2001-03-14 | 2002-09-20 | Bull Sa | Procedes et dispositifs pour accelerer le temps de calcul d'un produit de montgomery d'un multiplication et d'une exponentiation modulaire |
JP3820909B2 (ja) * | 2001-04-24 | 2006-09-13 | ソニー株式会社 | 楕円曲線暗号処理方法および楕円曲線暗号処理装置、並びにプログラム |
DE10127195A1 (de) * | 2001-06-05 | 2002-12-19 | Infineon Technologies Ag | Prozessor mit interner Speicherkonfiguration |
US6917956B2 (en) * | 2001-08-14 | 2005-07-12 | Sun Microsystems, Inc. | Apparatus and method for efficient modular exponentiation |
US20030072442A1 (en) * | 2001-10-01 | 2003-04-17 | Blakley George Robert | Cisponentiation method, software, and device for exponentiation |
US7376235B2 (en) * | 2002-04-30 | 2008-05-20 | Microsoft Corporation | Methods and systems for frustrating statistical attacks by injecting pseudo data into a data system |
US20040010470A1 (en) * | 2002-07-09 | 2004-01-15 | Mills Charles A. | Anti-piracy system for software and digital entertainment |
KR100458031B1 (ko) * | 2003-03-14 | 2004-11-26 | 삼성전자주식회사 | 몽고메리 유형의 모듈라 곱셈 장치 및 방법 |
US7050475B2 (en) | 2003-05-02 | 2006-05-23 | Litelaser Llc | Waveguide laser |
DE602004027943D1 (de) | 2003-11-16 | 2010-08-12 | Sandisk Il Ltd | Verbesserte natürliche montgomery-exponentenmaskierung |
CN1985458B (zh) * | 2003-11-16 | 2013-05-08 | 桑迪斯克以色列有限公司 | 增强的自然蒙哥马利指数掩蔽和恢复的方法和装置 |
US7664810B2 (en) * | 2004-05-14 | 2010-02-16 | Via Technologies, Inc. | Microprocessor apparatus and method for modular exponentiation |
US7583717B2 (en) * | 2004-08-30 | 2009-09-01 | Videojet Technologies Inc | Laser system |
US7296359B2 (en) * | 2004-10-27 | 2007-11-20 | Videojet Technologies | Laser alignment system and method |
DE102006025569A1 (de) * | 2005-10-28 | 2007-05-03 | Infineon Technologies Ag | Vorrichtung und Verfahren zum Berechnen einer Multiplikations-Additions-Operation und zum Berechnen eines Ergebnisses einer modularen Multiplikation |
DE102006025677B4 (de) * | 2005-10-28 | 2020-03-12 | Infineon Technologies Ag | Vorrichtung und Verfahren zum Berechnen eines Ergebnisses einer Summe mit einem Rechenwerk mit begrenzter Wortlänge |
DE102006025713B9 (de) | 2005-10-28 | 2013-10-17 | Infineon Technologies Ag | Kryptographie-Vorrichtung und Kryptographie-Verfahren zum Berechnen eines Ergebnisses einer modularen Multiplikation |
DE102006025673B9 (de) * | 2005-10-28 | 2010-12-16 | Infineon Technologies Ag | Rechenwerk zum Reduzieren einer Eingabe-Zahl bezüglich eines Moduls |
EP1975906B1 (en) | 2006-01-13 | 2012-07-04 | Fujitsu Ltd. | Montgomery s algorithm multiplication remainder calculator |
JP5027422B2 (ja) * | 2006-02-09 | 2012-09-19 | ルネサスエレクトロニクス株式会社 | 剰余演算処理装置 |
US7805479B2 (en) * | 2006-03-28 | 2010-09-28 | Michael Andrew Moshier | Scalable, faster method and apparatus for montgomery multiplication |
US8229109B2 (en) * | 2006-06-27 | 2012-07-24 | Intel Corporation | Modular reduction using folding |
US20080043406A1 (en) * | 2006-08-16 | 2008-02-21 | Secure Computing Corporation | Portable computer security device that includes a clip |
US7925011B2 (en) * | 2006-12-14 | 2011-04-12 | Intel Corporation | Method for simultaneous modular exponentiations |
US20080263115A1 (en) * | 2007-04-17 | 2008-10-23 | Horizon Semiconductors Ltd. | Very long arithmetic logic unit for security processor |
US8042025B2 (en) * | 2007-12-18 | 2011-10-18 | Intel Corporation | Determining a message residue |
US8626816B2 (en) * | 2008-02-26 | 2014-01-07 | International Business Machines Corporation | Method, system and computer program product for detecting errors in fixed point division operation results |
US8402078B2 (en) * | 2008-02-26 | 2013-03-19 | International Business Machines Corporation | Method, system and computer program product for determining required precision in fixed-point divide operations |
EP2334006B1 (en) * | 2009-12-10 | 2016-03-23 | Nxp B.V. | Side-channel resistant modular exponentiation |
FR2974201B1 (fr) | 2011-04-18 | 2013-04-12 | Inside Secure | Circuit de multiplication de montgomery |
FR2974202B1 (fr) | 2011-04-18 | 2013-04-12 | Inside Secure | Procede de multiplication de montgomery |
CN103699358B (zh) * | 2013-12-05 | 2016-11-23 | 西安交通大学 | 一种适用于大数的快速模平方运算电路 |
US10025556B2 (en) * | 2014-09-08 | 2018-07-17 | Atmel Corporation | Optimized multi-precision division |
US11508263B2 (en) | 2020-06-24 | 2022-11-22 | Western Digital Technologies, Inc. | Low complexity conversion to Montgomery domain |
US11468797B2 (en) | 2020-06-24 | 2022-10-11 | Western Digital Technologies, Inc. | Low complexity conversion to Montgomery domain |
WO2022115108A1 (en) * | 2020-11-27 | 2022-06-02 | Pqsecure Technologies, Llc | An architecture for small and efficient modular multiplication using carry-save adders |
TWI802095B (zh) | 2021-11-22 | 2023-05-11 | 財團法人工業技術研究院 | 模數乘法電路與對應之計算模數乘法之方法 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5073870A (en) * | 1989-01-30 | 1991-12-17 | Nippon Telegraph And Telephone Corporation | Modular multiplication method and the system for processing data |
EP0566498A2 (en) * | 1992-04-16 | 1993-10-20 | FORTRESS U&T Ltd. | Digital signature device and process |
Family Cites Families (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3621218A (en) * | 1967-09-29 | 1971-11-16 | Hitachi Ltd | High-speed divider utilizing carry save additions |
US4110832A (en) * | 1977-04-28 | 1978-08-29 | International Business Machines Corporation | Carry save adder |
US4514592A (en) | 1981-07-27 | 1985-04-30 | Nippon Telegraph & Telephone Public Corporation | Cryptosystem |
US4538238A (en) * | 1983-01-18 | 1985-08-27 | Honeywell Information Systems Inc. | Method and apparatus for calculating the residue of a signed binary number |
KR19990024971A (ko) * | 1997-09-09 | 1999-04-06 | 정선종 | 모듈러 승산장치 |
JP2710412B2 (ja) * | 1989-06-20 | 1998-02-10 | 日本電気株式会社 | 乗除算回路 |
US5185714A (en) * | 1989-09-19 | 1993-02-09 | Canon Kabushiki Kaisha | Arithmetic operation processing apparatus |
US5101431A (en) | 1990-12-14 | 1992-03-31 | Bell Communications Research, Inc. | Systolic array for modular multiplication |
DE69229766T2 (de) * | 1991-09-05 | 2000-03-23 | Canon K.K., Tokio/Tokyo | Verfahren und Gerät zum Verschlüsseln und Entschlüsseln von Kommunikationsdaten |
US5513133A (en) * | 1992-11-30 | 1996-04-30 | Fortress U&T Ltd. | Compact microelectronic device for performing modular multiplication and exponentiation over large numbers |
US5349551A (en) * | 1993-07-30 | 1994-09-20 | The United States Of America As Represented By The Director Of National Security Agency | Device for and method of preforming an N-bit modular multiplication in approximately N/2 steps |
GB2332542B (en) * | 1997-12-20 | 2002-08-07 | Motorola Ltd | Data processing system for performing multiplication and multiplication method |
-
1998
- 1998-03-29 AT AT98910967T patent/ATE372541T1/de not_active IP Right Cessation
- 1998-03-29 WO PCT/IL1998/000148 patent/WO1998050851A1/en active IP Right Grant
- 1998-03-29 EP EP98910967A patent/EP1008026B1/en not_active Expired - Lifetime
- 1998-03-29 AU AU65164/98A patent/AU6516498A/en not_active Abandoned
- 1998-03-29 ES ES98910967T patent/ES2293677T3/es not_active Expired - Lifetime
- 1998-03-29 JP JP54788398A patent/JP2001527673A/ja not_active Withdrawn
- 1998-03-29 KR KR1019997010171A patent/KR100684134B1/ko not_active IP Right Cessation
- 1998-03-29 DE DE69838390T patent/DE69838390T2/de not_active Expired - Lifetime
- 1998-04-01 US US09/050,958 patent/US6185596B1/en not_active Expired - Lifetime
-
2009
- 2009-06-12 JP JP2009140914A patent/JP2009230153A/ja active Pending
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5073870A (en) * | 1989-01-30 | 1991-12-17 | Nippon Telegraph And Telephone Corporation | Modular multiplication method and the system for processing data |
EP0566498A2 (en) * | 1992-04-16 | 1993-10-20 | FORTRESS U&T Ltd. | Digital signature device and process |
Also Published As
Publication number | Publication date |
---|---|
EP1008026B1 (en) | 2007-09-05 |
DE69838390D1 (de) | 2007-10-18 |
EP1008026A1 (en) | 2000-06-14 |
ATE372541T1 (de) | 2007-09-15 |
DE69838390T2 (de) | 2008-05-29 |
EP1008026A4 (en) | 2000-06-14 |
US6185596B1 (en) | 2001-02-06 |
ES2293677T3 (es) | 2008-03-16 |
WO1998050851A1 (en) | 1998-11-12 |
AU6516498A (en) | 1998-11-27 |
KR20010012222A (ko) | 2001-02-15 |
JP2009230153A (ja) | 2009-10-08 |
JP2001527673A (ja) | 2001-12-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR100684134B1 (ko) | 몽고메리 승산에 기초한 모듈의 승산 및 누승을 위한 개선된 장치와 방법 | |
JP3636740B2 (ja) | モジュラ・乗算を遂行するための超小形電子系装置、および超小形電子系装置を使用する方法 | |
US7805478B2 (en) | Montgomery modular multiplier | |
JP4955182B2 (ja) | 整数の計算フィールド範囲の拡張 | |
US6820105B2 (en) | Accelerated montgomery exponentiation using plural multipliers | |
US5764554A (en) | Method for the implementation of modular reduction according to the Montgomery method | |
US5166978A (en) | Encoding system according to the so-called rsa method, by means of a microcontroller and arrangement implementing this system | |
EP0801345A1 (en) | Circuit and method for modulo multiplication and exponentiation arithmetic | |
KR20110105555A (ko) | 효율적인 하드웨어 구성을 갖는 몽고메리 승산기 | |
US7046800B1 (en) | Scalable methods and apparatus for Montgomery multiplication | |
US7698357B2 (en) | Modular multiplication with parallel calculation of the look-ahead parameters | |
Großschädl | High-speed RSA hardware based on Barret’s modular reduction method | |
US6470372B1 (en) | Method for the performance of an integer division | |
Huai et al. | Efficient architecture for long integer modular multiplication over Solinas prime | |
Findlay et al. | Modular exponentiation using recursive sums of residues | |
US20070016635A1 (en) | Inversion calculations | |
US6658442B1 (en) | Device and method for the implementation of an elementary modular operation according to the Montgomery method | |
Feldhofer et al. | A self-timed arithmetic unit for elliptic curve cryptography | |
KR20000009759A (ko) | 모듈러 곱셈기 | |
Chiou et al. | Parallel modular multiplication with table look-up | |
US7426529B2 (en) | Processor and method for a simultaneous execution of a calculation and a copying process | |
KR100400210B1 (ko) | 디지털 서명을 위한 모듈라 곱셈장치 | |
IL106923A (en) | Device for performing modular multiplication | |
Großschädl | A new serial/parallel architecture for a low power modular multiplier | |
Tenca et al. | for Montgomery Multiplication |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PA0105 | International application |
Patent event date: 19991103 Patent event code: PA01051R01D Comment text: International Patent Application |
|
PG1501 | Laying open of application | ||
N231 | Notification of change of applicant | ||
PN2301 | Change of applicant |
Patent event date: 20010316 Comment text: Notification of Change of Applicant Patent event code: PN23011R01D |
|
A201 | Request for examination | ||
AMND | Amendment | ||
PA0201 | Request for examination |
Patent event code: PA02012R01D Patent event date: 20030329 Comment text: Request for Examination of Application |
|
E902 | Notification of reason for refusal | ||
PE0902 | Notice of grounds for rejection |
Comment text: Notification of reason for refusal Patent event date: 20050527 Patent event code: PE09021S01D |
|
AMND | Amendment | ||
E801 | Decision on dismissal of amendment | ||
PE0801 | Dismissal of amendment |
Patent event code: PE08012E01D Comment text: Decision on Dismissal of Amendment Patent event date: 20051117 Patent event code: PE08011R01I Comment text: Amendment to Specification, etc. Patent event date: 20050727 Patent event code: PE08011R01I Comment text: Amendment to Specification, etc. Patent event date: 20030329 |
|
J301 | Trial decision |
Free format text: TRIAL DECISION FOR APPEAL AGAINST DECISION TO DECLINE AMENDMENT REQUESTED 20051219 Effective date: 20060428 Free format text: TRIAL NUMBER: 2005102000073; TRIAL DECISION FOR APPEAL AGAINST DECISION TO DECLINE AMENDMENT REQUESTED 20051219 Effective date: 20060428 |
|
PJ1301 | Trial decision |
Patent event code: PJ13011S07D Patent event date: 20060428 Comment text: Trial Decision on Objection to Dismissal of Amendment Appeal kind category: Appeal against decision to decline amendment Request date: 20051219 Decision date: 20060428 Appeal identifier: 2005102000073 |
|
E601 | Decision to refuse application | ||
PE0601 | Decision on rejection of patent |
Patent event date: 20060613 Comment text: Decision to Refuse Application Patent event code: PE06012S01D Patent event date: 20050527 Comment text: Notification of reason for refusal Patent event code: PE06011S01I |
|
J201 | Request for trial against refusal decision | ||
PJ0201 | Trial against decision of rejection |
Patent event date: 20060913 Comment text: Request for Trial against Decision on Refusal Patent event code: PJ02012R01D Patent event date: 20060613 Comment text: Decision to Refuse Application Patent event code: PJ02011S01I Appeal kind category: Appeal against decision to decline refusal Decision date: 20061121 Appeal identifier: 2006101008086 Request date: 20060913 |
|
AMND | Amendment | ||
PB0901 | Examination by re-examination before a trial |
Comment text: Amendment to Specification, etc. Patent event date: 20061012 Patent event code: PB09011R02I Comment text: Request for Trial against Decision on Refusal Patent event date: 20060913 Patent event code: PB09011R01I Comment text: Amendment to Specification, etc. Patent event date: 20050727 Patent event code: PB09011R02I Comment text: Amendment to Specification, etc. Patent event date: 20030329 Patent event code: PB09011R02I |
|
B701 | Decision to grant | ||
PB0701 | Decision of registration after re-examination before a trial |
Patent event date: 20061121 Comment text: Decision to Grant Registration Patent event code: PB07012S01D Patent event date: 20061031 Comment text: Transfer of Trial File for Re-examination before a Trial Patent event code: PB07011S01I |
|
GRNT | Written decision to grant | ||
PR0701 | Registration of establishment |
Comment text: Registration of Establishment Patent event date: 20070212 Patent event code: PR07011E01D |
|
PR1002 | Payment of registration fee |
Payment date: 20070213 End annual number: 3 Start annual number: 1 |
|
PG1601 | Publication of registration | ||
PR1001 | Payment of annual fee |
Payment date: 20100210 Start annual number: 4 End annual number: 4 |
|
PR1001 | Payment of annual fee |
Payment date: 20101228 Start annual number: 5 End annual number: 5 |
|
FPAY | Annual fee payment |
Payment date: 20120203 Year of fee payment: 6 |
|
PR1001 | Payment of annual fee |
Payment date: 20120203 Start annual number: 6 End annual number: 6 |
|
FPAY | Annual fee payment |
Payment date: 20130117 Year of fee payment: 7 |
|
PR1001 | Payment of annual fee |
Payment date: 20130117 Start annual number: 7 End annual number: 7 |
|
LAPS | Lapse due to unpaid annual fee | ||
PC1903 | Unpaid annual fee |
Termination category: Default of registration fee Termination date: 20150109 |