KR950020088A - 사전 계산 테이블을 이용한 모듈러 리덕션 방법 - Google Patents
사전 계산 테이블을 이용한 모듈러 리덕션 방법 Download PDFInfo
- Publication number
- KR950020088A KR950020088A KR1019930026632A KR930026632A KR950020088A KR 950020088 A KR950020088 A KR 950020088A KR 1019930026632 A KR1019930026632 A KR 1019930026632A KR 930026632 A KR930026632 A KR 930026632A KR 950020088 A KR950020088 A KR 950020088A
- Authority
- KR
- South Korea
- Prior art keywords
- bits
- reduction
- overflow
- modular reduction
- addition operations
- 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/38—Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Mathematical Analysis (AREA)
- Pure & Applied Mathematics (AREA)
- Mathematical Optimization (AREA)
- Computational Mathematics (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Mathematical Physics (AREA)
- Complex Calculations (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
Abstract
본 발명은 컴퓨터를 이용한 일반 연산과정 수행시 리덕션 속도를 높이기 위한 사전계산 테이블을 이용한 모듈러 리덕션 방법에 관한 것으로, 덧셈 연산의 횟수를 줄임과 동시에 리덕션 알고리즘의 1회 수행에 덧셈 연산의 수를 최대 2회로 고정하여 평균 덧셈 연산 수행 횟수를 줄여 리덕션 속도를 높이는 방법을 제공하기 위하여, 리덕션할 상위 log2t(t≥1) 비트의 수를 인덱스로 테이블에 저장된 값을 찾아 하위 n(n≥512)비트의 수와 더해 주는 제1단계; 상기 제1단계에서 상기 하위 n 비트의 수와 테이블에서 찾은 수를 더한 결과가 오버플로우(1비트)를 발생한 경우, 상기 오버 플로우를 제거하고 연산 수행을 종료하는 제2단계; 및 상기 제2단계에서 상기 오버플로우가 발생하지 않은 경우, 상기 제1단계의 결과를 모듈로 N상에서의 N(N≥1)을 더해주고 연산 수행을 종료하는 제3단계를 구비하고 있는 것을 특징으로 한다. 그리고 모듈러 리덕션 연산시 덧셈 연산 횟수를 줄임으로써, 종래의 리덕션 알고리즘과 비교하여 볼때, 같은 크기의 사전 계산 테이블을 이용하면서도 고속으로 리덕션 연산을 수행 할 수 있는 이점이 있다.
Description
본 내용은 요부공개 건이므로 전문내용을 수록하지 않았음
제4도는 본 발명의 모듈러 리덕션 알고리즘에서 이용한 테이블의 초기 구성도.
제5도는 본 발명이 모듈러 리덕션 알고리즘에서 이용한 테이블의 최적화 과정도.
Claims (3)
- 사전 계산 테이블을 이용한 모듈러 리덕션 방법에 있어서, 리덕션할 상위 log2t(t≥1) 비트의 수를 인덱스로 테이블에 저장된 값을 찾아 하위 n(n≥512)비트의 수와 더해 주는 제1단계; 상기 제1단계에서 상기 하위 n 비트의 수와 테이블에서 찾은 수를 더한 결과가 오버플로우(1비트)를 발생한 경우, 상기 오버 플로우를 제거하고 연산 수행을 종료하는 제2단계; 및 상기 제2단계에서 상기 오버플로우가 발생하지 않은 경우, 상기 제1단계의 결과를 모듈로 N상에서의 N(N≥1)을 더해주고 연산 수행을 종료하는 제3단계를 구비하고 있는 것을 특징으로 하는 모듈러 리덕션 방법.
- 제1항에 있어서, 상기 제3단계에서의 N값을 정할때 MSB(Most Significant Bit)가 1인값을 선택하는 것을 특징으로 하는 모듈러 리덕션 방법.
- 제2항에 있어서, 상기 테이블에 저장된 값은 log2t비트의 수 + 1에 해당하는 값인 것을 특징으로 하는 모듈러 리덕션 방법.※ 참고사항 : 최초출원 내용에 의하여 공개하는 것임.
Priority Applications (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1019930026632A KR950015177B1 (ko) | 1993-12-06 | 1993-12-06 | 사전 계산 테이블을 이용한 모듈로 리덕션 방법 |
US08/353,266 US5572454A (en) | 1993-12-06 | 1994-12-05 | Modulo reduction method using a precomputed table |
FR9414597A FR2713365B1 (fr) | 1993-12-06 | 1994-12-05 | Procédé de réduction modulo à l'aide d'une table précalculée. |
JP30086194A JP3432315B2 (ja) | 1993-12-06 | 1994-12-05 | 事前計算テーブルを利用したモジューロリダクション装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1019930026632A KR950015177B1 (ko) | 1993-12-06 | 1993-12-06 | 사전 계산 테이블을 이용한 모듈로 리덕션 방법 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR950020088A true KR950020088A (ko) | 1995-07-24 |
KR950015177B1 KR950015177B1 (ko) | 1995-12-23 |
Family
ID=19370037
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1019930026632A KR950015177B1 (ko) | 1993-12-06 | 1993-12-06 | 사전 계산 테이블을 이용한 모듈로 리덕션 방법 |
Country Status (4)
Country | Link |
---|---|
US (1) | US5572454A (ko) |
JP (1) | JP3432315B2 (ko) |
KR (1) | KR950015177B1 (ko) |
FR (1) | FR2713365B1 (ko) |
Families Citing this family (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
FR2726668B1 (fr) * | 1994-11-08 | 1997-01-10 | Sgs Thomson Microelectronics | Procede de mise en oeuvre de reduction modulaire selon la methode de montgomery |
US5724279A (en) * | 1995-08-25 | 1998-03-03 | Microsoft Corporation | Computer-implemented method and computer for performing modular reduction |
US5793659A (en) * | 1996-10-15 | 1998-08-11 | United Microelectronics Corporation | Method of modular reduction and modular reduction circuit |
US6424712B2 (en) * | 1997-10-17 | 2002-07-23 | Certicom Corp. | Accelerated signature verification on an elliptic curve |
US6369727B1 (en) * | 1999-12-17 | 2002-04-09 | Rng Research | Analog-to-digital conversion method of random number generation |
DE10021920C1 (de) | 2000-05-05 | 2001-07-26 | Infineon Technologies Ag | Datenverarbeitungsverfahren und -Einrichtung zur Modulo-Berechnung eines Rests bei der Division |
US7170997B2 (en) | 2000-12-07 | 2007-01-30 | Cryptico A/S | Method of generating pseudo-random numbers in an electronic device, and a method of encrypting and decrypting electronic data |
US7194088B2 (en) * | 2001-06-08 | 2007-03-20 | Corrent Corporation | Method and system for a full-adder post processor for modulo arithmetic |
DE10200133B4 (de) * | 2002-01-04 | 2005-12-22 | Infineon Technologies Ag | Verfahren und Vorrichtung zur Berechnung von Modulo-Operationen |
US20040086117A1 (en) * | 2002-06-06 | 2004-05-06 | Petersen Mette Vesterager | Methods for improving unpredictability of output of pseudo-random number generators |
US7849125B2 (en) | 2006-07-07 | 2010-12-07 | Via Telecom Co., Ltd | Efficient computation of the modulo operation based on divisor (2n-1) |
KR101326078B1 (ko) | 2007-10-11 | 2013-11-08 | 삼성전자주식회사 | 모듈러 곱셈 방법, 모듈러 곱셈기 및 모듈러 곱셈기를구비하는 암호 연산 시스템 |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3980874A (en) * | 1975-05-09 | 1976-09-14 | Burroughs Corporation | Binary to modulo M translation |
US4742479A (en) * | 1985-03-25 | 1988-05-03 | Motorola, Inc. | Modulo arithmetic unit having arbitrary offset and modulo values |
EP0239749B1 (de) * | 1986-03-05 | 1990-07-25 | Holger Sedlak | Kryptographie-Verfahren und Kryptographie-Prozessor zur Durchführung des Verfahrens |
JPH0778726B2 (ja) * | 1986-08-21 | 1995-08-23 | 富士通株式会社 | 分割整数剰余計算機 |
US4891781A (en) * | 1987-03-04 | 1990-01-02 | Cylink Corporation | Modulo arithmetic processor chip |
US4949293A (en) * | 1987-09-25 | 1990-08-14 | Kabushiki Kaisha Toshiba | Method and apparatus for computing residue with respect to arbitrary modulus |
US5210710A (en) * | 1990-10-17 | 1993-05-11 | Cylink Corporation | Modulo arithmetic processor chip |
US5249148A (en) * | 1990-11-26 | 1993-09-28 | Motorola, Inc. | Method and apparatus for performing restricted modulo arithmetic |
-
1993
- 1993-12-06 KR KR1019930026632A patent/KR950015177B1/ko not_active IP Right Cessation
-
1994
- 1994-12-05 JP JP30086194A patent/JP3432315B2/ja not_active Expired - Fee Related
- 1994-12-05 US US08/353,266 patent/US5572454A/en not_active Expired - Fee Related
- 1994-12-05 FR FR9414597A patent/FR2713365B1/fr not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
FR2713365A1 (fr) | 1995-06-09 |
US5572454A (en) | 1996-11-05 |
JPH07200262A (ja) | 1995-08-04 |
FR2713365B1 (fr) | 1997-05-23 |
KR950015177B1 (ko) | 1995-12-23 |
JP3432315B2 (ja) | 2003-08-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR950020088A (ko) | 사전 계산 테이블을 이용한 모듈러 리덕션 방법 | |
KR19980065431A (ko) | 모듈로(Modulo)주소발생기 및 그 방법 | |
KR920001323A (ko) | 브랜치를 제거하여 컴퓨터 성능을 개선하는 프로세서 동작방법 | |
KR890015170A (ko) | 폰트의 함축방법 | |
KR910006838A (ko) | 디지탈 가산 회로 | |
KR970071286A (ko) | 고성능 데이터 처리 시스템에서 4-웨이 최소 최근 사용 메카니즘의 구현 방법과 이를 포함한 캐시 메모리 | |
KR940015793A (ko) | 적게 변경된 현존하는 하드웨어에 의해 구현되는 2진 승산 | |
JPS57101768A (en) | Data processor | |
KR920701903A (ko) | 근사산술디비전을 수행하는 방법 및 장치 | |
KR910003477A (ko) | 입출력포트 절감형 키이스캔회로 및 방법 | |
KR930018853A (ko) | 전 가산기 | |
JPH0566618B2 (ko) | ||
Berndt et al. | Ramanujan’s theory of divergent series | |
JP2003174424A (ja) | 並列ビットスタッフィング方法及び並列ビットスタッフィング回路 | |
KR100429195B1 (ko) | 근사값을 이용한 나누기 방법 | |
KR910005150A (ko) | 계산기 및 이 계산기에 이용되는 연산방법 | |
KR870008276A (ko) | 디지탈신호 처리회로 | |
SU1059569A1 (ru) | Устройство дл умножени | |
JPS648441A (en) | Character string retrieving system | |
KR960025124A (ko) | 클럭 버퍼링 회로 | |
KR950006583A (ko) | 곱셈 회로 및 그 방법 | |
JPS5680870A (en) | Data processor | |
JPS564839A (en) | Operating method for software | |
KR19990000466A (ko) | 가변 구조 연산 방법 | |
KR950015114A (ko) | 하이브리드 위치-내용-참조 메모리(HyLCAM)의 코드 생성 방법 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E902 | Notification of reason for refusal | ||
G160 | Decision to publish patent application | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant | ||
FPAY | Annual fee payment |
Payment date: 19980623 Year of fee payment: 4 |
|
LAPS | Lapse due to unpaid annual fee |