KR950020088A - 사전 계산 테이블을 이용한 모듈러 리덕션 방법 - Google Patents

사전 계산 테이블을 이용한 모듈러 리덕션 방법 Download PDF

Info

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
Application number
KR1019930026632A
Other languages
English (en)
Other versions
KR950015177B1 (ko
Inventor
이윤호
장청룡
이명성
Original Assignee
조백제
한국전기통신공사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 조백제, 한국전기통신공사 filed Critical 조백제
Priority to KR1019930026632A priority Critical patent/KR950015177B1/ko
Priority to US08/353,266 priority patent/US5572454A/en
Priority to FR9414597A priority patent/FR2713365B1/fr
Priority to JP30086194A priority patent/JP3432315B2/ja
Publication of KR950020088A publication Critical patent/KR950020088A/ko
Application granted granted Critical
Publication of KR950015177B1 publication Critical patent/KR950015177B1/ko

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/38Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/60Methods 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/72Methods 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)

  1. 사전 계산 테이블을 이용한 모듈러 리덕션 방법에 있어서, 리덕션할 상위 log2t(t≥1) 비트의 수를 인덱스로 테이블에 저장된 값을 찾아 하위 n(n≥512)비트의 수와 더해 주는 제1단계; 상기 제1단계에서 상기 하위 n 비트의 수와 테이블에서 찾은 수를 더한 결과가 오버플로우(1비트)를 발생한 경우, 상기 오버 플로우를 제거하고 연산 수행을 종료하는 제2단계; 및 상기 제2단계에서 상기 오버플로우가 발생하지 않은 경우, 상기 제1단계의 결과를 모듈로 N상에서의 N(N≥1)을 더해주고 연산 수행을 종료하는 제3단계를 구비하고 있는 것을 특징으로 하는 모듈러 리덕션 방법.
  2. 제1항에 있어서, 상기 제3단계에서의 N값을 정할때 MSB(Most Significant Bit)가 1인값을 선택하는 것을 특징으로 하는 모듈러 리덕션 방법.
  3. 제2항에 있어서, 상기 테이블에 저장된 값은 log2t비트의 수 + 1에 해당하는 값인 것을 특징으로 하는 모듈러 리덕션 방법.
    ※ 참고사항 : 최초출원 내용에 의하여 공개하는 것임.
KR1019930026632A 1993-12-06 1993-12-06 사전 계산 테이블을 이용한 모듈로 리덕션 방법 KR950015177B1 (ko)

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)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
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

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