TW419925B - Method and apparatus for arithmetic operation and recording medium thereof - Google Patents

Method and apparatus for arithmetic operation and recording medium thereof Download PDF

Info

Publication number
TW419925B
TW419925B TW088100420A TW88100420A TW419925B TW 419925 B TW419925 B TW 419925B TW 088100420 A TW088100420 A TW 088100420A TW 88100420 A TW88100420 A TW 88100420A TW 419925 B TW419925 B TW 419925B
Authority
TW
Taiwan
Prior art keywords
data
remainder
bits
calculation
addition
Prior art date
Application number
TW088100420A
Other languages
English (en)
Inventor
Mitsuru Matsui
Original Assignee
Mitsubishi Electric Corp
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 Mitsubishi Electric Corp filed Critical Mitsubishi Electric Corp
Application granted granted Critical
Publication of TW419925B publication Critical patent/TW419925B/zh

Links

Classifications

    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09CCIPHERING OR DECIPHERING APPARATUS FOR CRYPTOGRAPHIC OR OTHER PURPOSES INVOLVING THE NEED FOR SECRECY
    • G09C1/00Apparatus or methods whereby a given sequence of signs, e.g. an intelligible text, is transformed into an unintelligible sequence of signs by transposing the signs or groups of signs or by replacing them by others according to a predetermined system
    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/04Forecasting or optimisation specially adapted for administrative or management purposes, e.g. linear programming or "cutting stock problem"
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/30Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy
    • H04L9/3006Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy underlying computational problems or public-key parameters
    • H04L9/3013Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy underlying computational problems or public-key parameters involving the discrete logarithm problem, e.g. ElGamal or Diffie-Hellman systems

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Business, Economics & Management (AREA)
  • Computing Systems (AREA)
  • Mathematical Analysis (AREA)
  • Pure & Applied Mathematics (AREA)
  • Mathematical Optimization (AREA)
  • Strategic Management (AREA)
  • Economics (AREA)
  • Computational Mathematics (AREA)
  • Human Resources & Organizations (AREA)
  • Mathematical Physics (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Development Economics (AREA)
  • General Engineering & Computer Science (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Marketing (AREA)
  • Operations Research (AREA)
  • Quality & Reliability (AREA)
  • Tourism & Hospitality (AREA)
  • General Business, Economics & Management (AREA)
  • Computer Security & Cryptography (AREA)
  • Game Theory and Decision Science (AREA)
  • Signal Processing (AREA)
  • Complex Calculations (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Executing Machine-Instructions (AREA)
  • Signal Processing For Digital Recording And Reproducing (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)
  • Error Detection And Correction (AREA)
  • Detection And Correction Of Errors (AREA)
  • Steroid Compounds (AREA)
  • Optical Recording Or Reproduction (AREA)

Description

419925 五、發明說明(1) 發明所屬技術領域 本發明係關於計算餘數之演算裝置、演算方法及其記 錄媒體’尤其係關於使用電腦計算餘數之演算裝置、演算 方法及其記.錄媒體D 習知技術 習知技術1 以下使用圖1 5說明習知技術1之利用在美國專利 -54636 90號公報公開之餘數計算方法之習知技術之—例。 這是關於計算將整數Z除以質數P之餘數之演算方法的。在 此,將質數P限制為可用2<J-C(q係自然數,C係比較小的奇 數)。藉者限疋為這樣的質數’只用移位演算和加減法可 計算餘數。在此,餘數計算使用以2M為基本演算單位之電 腦。 例如’如圖15所示,整數685除以質數13(q = 4,C=3) 之餘數,使用以23 ( 3位元)為基本演算單位之電腦可計算如 下。 以2進位數表達時,685變成(1010101101)。 最初,閂鎖整數Z之最下階q = 4位元1401(11 01)位元。 其次,使用移位演算和加法計算將剩下之位元 1 4 02( 1 0 1 0 1 0 )乘以C = 3 之資料1403(1 111110)。接著,將所 算出之資料1403和資料1401(1101)相加,算出資料 1404(10001011)。 其次,閂鎖資料1404之最下階Q = 4位元1405(1011)。 接著,使用移位演算和加法計算將剰下之位元
4 1 9 92 5 卜 五、發明說明(2) 乘以C=3之資料1 40 7( 1 1 0 00 )。再將資料1 407和資枓1 40 5相 加,算出資料1 408 ( 1 000 1 1 )。 其次’閂鎖所算出之資料14 〇8之最下階q = 4位元 1 40 9( 0 0 1 1 )。接著,使用移位演算和加法計算將剩下之位 元1410(10)乘以C=3之資料1411(110)。再將所算出之資料 1411和資枓1409相加,算出資料1412(1001)。 14 12具有q= 4或q = 4以下之位元數,係整數z除以質數P 之餘數。 習知技術2 其次,使用圖1 6說明習知技術2之計算整數Z除以整數 I之餘數R之演算方法。演算方法之基本想法和習知技術1 一樣。但是,具體之數和習知技術1不同。說明使用16位 元電腦之演算方法,以16位元單位進行處理。在圖16 , 1501係整數Z,1502係整數I(I=216Hff9d) ,1503係整數Z之 上階64位元Zh,1 5 04係整數Z之下階160位元Z1,1 509係餘 數R。此外’圖16之整數Z和餘數R以16進位數表示,在整 數I,216D以10進位數、ff9d以16進位數表示。 I之最上階16位元係1,藉著自Z11504減對Zhl503乘以 ff9d之結果,可計算餘數。具體而言,利用以下之處理可 計算。 首先’計算對Zhl 50 3之最下階16位元aaaa乘以ff9d之 32位元資料aa68 00 42( 1 5 05)(-乘法處理1)〇其次,計算對 1^1)13乘以{{9(1之32位元資料1^72663£( 1 506 )(-乘法處理 2)。接著,計算對cccc乘以ff9d之32位元資料
第5頁 Γ 419925 五、發明說明(3) cc7ccdlc( 1 507)(-乘法處理3)。 其次,計算對dddd乘以ff9d之32位元資料 dd873389(1508)( -乘法處理4)。利用以上4次之乘法處 理*可得到對Zh乘以ff9d之結果。 接著,自Z1C1504)減該結果。在以下之加減法處理也 包含進位、借位。 首先,自Z1C 1 504)之最下階16位元0000減0 042(加減 法處理1)。其次,自111 1減aa68(加減法處理2),再減 66af (加減法處理3)。接著,自2 222減bb72(加減法處理 4) ’再減cdlc(加減法處理5)。其次,自3333減cc72(加減 法處理6) ’再減3389(加減法處理7)。最後,自4444減 dd87(加減法處理8)。 如上述所示’利用4次乘法處理和8次加減法處理,可 計算整數Z除以整數I之餘數ri5〇9。 如以上之習知技術所示,質數p係以乂㈧係比較小的奇 數)時’因不用除法可計算其餘數,可高速地計算。可 是’不使用除法,也因必須使用移位演算計算,在高速演 算上有界限。 又’如在習知技術2明確所示,在整數I係2q_f(在習知 技術1,q = 4、卜3,在習知技術2,q = i60、f = f f 9d)之情 況,需,f(3或ff9d)之乘法步驟。又,因f之乘法結果超 過基本演算單位之丨6位元,加法或減法之處理次數成比例 增加。這些結果’碼之大小變大’同時處理變多也導致演 算延遲。
9 9:;:;、 I、發明說明(4) " ' ' 本發明是為了解決上述之問題點而想出來的,其目的 在於提供使用電腦高速計算整數餘數之演算裝置、演算方 法及其記錄媒體。 發明之概要 本發明之演算裝置係計算用以下式表示之資料I除Bz 位元之資料Z之餘數R之演算裝置, N = /= Λ^Ο (Μ係基本演算單位之位元數,ν係由〇至Nmax為止之自 然數’ A〇係絕對值比以基本演算單位Μ位元表示之值小之 值’ Ai至人“」係+ 1、0、或-1,Αν_ 係+1或-1,q係2以上之 自然數。) 其特徵在於具有(1)至(4)之要素。 (1) 記憶該資料Ζ之下階M XNmax位元之資料之資料 Z1記憶區域。 (2) 記憶該資料Z之上階(Bz-M xNmax)位元之資料zh之 資料Zh記憶區域。 (3 )記憶該資料AN之資料AN記憶區域。 (4 )藉著依據資料AN之正負決定加法或減法後,將該資 料Z 1記憶區域之至少一部分所記憶之資料和該資料Zh記憶 區域之至少一部分所記憶之資料加減而算出該餘數r之加 減法部。 又,此外其特徵在於:
第7頁 419925 五、發明說明(5) 該資料Z1記憶區域將資料21之每該基本演算單位Μ位 元自最下1¾側開始依次在係(lSiSNmax)之自然數i之範 圍設為ΖΚΠ ’劃分資料Zl( i)區域記憶; 該資料Zh記憶區域將資料“之每該基本演算單位M位 元自最下階側開始依次在係(1 g j芸(Bz/M)_Nmax之小數點 以下進位之自然數)之自然數j之範圍設為,劃分資 料Zh( j )區域記憶; 該加減法部使用和i及j具有一定關係決定加法或 減法,將该資料Z1 (i)區域所記憶之資料和該資料Zh()區 域所記憶之資料加減。 又,此外其特徵在於該加減法部使用具有N = i_].之關 係之N,在該資料an為正之情況決定為減法,在該資料M為 負之情況決定為加法。 又’此外其特徵在於該加減法部對於指定之N,就具 有N= 1 - j之關係之i和j之組合連續加減。 又,此外其特徵在於該加減法部對於指定之i,就具 有N= 1 - j之關係之n和j之組合連續加減。 j發明之演算方法係使用演算裝置計算用以下式表示 之資料I除Bz位元之資料z之餘數R之演算方法, N : N祕 撕 (Μ係基本演算單位之位元數,n係由〇至為止之自 然數’ A0 <系絕對值比以基本演算單位m位元表示之值小之
4 1 9 92 5 五、發明說明(6) 值’ A!至係+ 1、0、或-1 ’ ANinax係+ 1或-1,Q係2以上之 自然數。) 其特徵在於具有(1)至(4)之要素。 (1) 記憶該資料Z之下階Μ X N max位元之資料Z1之資料 Z1記憶步驟。 (2) 記憶該資料Z之上階(Bz_M XNmax)位元之資料Zh之 資料Zh記憶步驟。 (3 )記憶該資料AN之資料AN記憶步驟。 (4 )藉著依據資料AN之正負決定加法或減法後,將該資 料Z1之至少一部分之資料和該資料Zh之至少一部分之資料 加減而算出該餘數R之加減步驟。 又,此外其特徵在於: 該資料Z 1記憶步驟將資料Z1之每該基本演算單位Μ位 元自最下階側開始依次在係(1 Si SNmax)之自然數i之範 圍設為Zl(i)記憶, 該資料Zh記憶步驟將資料Zh之每該基本演算單位Μ位 元自最下階侧開始依次在係(1 S j S (Bz/M)-Nmax之小數點 以下進位之自然數)之自然數j之範圍設為Zh( j)記憶; 該加減法步驟使用和i及j具有一定關係之N決定加法 或減法,將該資料Zl(i)和該資料Zh( j)加減。 本發明之記錄媒體係記錄了用以令電腦執行演算處理 之程式之電腦可讀取之記錄媒體’該演算處理係使用演算 裝置計算用以下式表示之資料I除Bz位元之資料Z之餘數R 之演算處理,
第9頁 419925 五、發明說明(7) N : h I = AnQmn Λ^Ο (Μ係基本演算單位之位元數,ν係由〇至Nmax為止之自 然數’ AQ係絕對值比以基本演算單位μ位元表示之值小之 值’ A1至係+ 1、〇、或-1,ANnax係+ 1或-1,q係2以上之 自然數。) 其特徵在於具有(1)至(4)之要素。 Ο )記憶該資料Z之下階Μ X Nmax位元之資料Z1之資料 Z1記憶處理。 (2)記憶該資料Z之上階(Bz-M X Nmax)位元之資料Zh之 資料Zh記憶處理。 (3 )記憶該資料AN之資料AN記憶處理。 (4)藉著依據資料AN之正負決定加法或減法後,將該資 料Z1之至少一部分之資料和該資料Zh之至少一部分之資料 加減而算出該餘數R之加減處理。 又,此外其特徵在於: 該資料Z 1記憶處理將資料z 1之每該基本演算單位μ位 元自最下階側開始依次在係(1 S i S N m a X)之自然數i之範 圍設為Z1 (i)記憶; 該資料Zh記憶處理將資料Zh之每該基本演算單位Μ位 元自最下階側開始依次在係(1 $ j $ ( Bz /Μ) - Nma X之小數點 以下進位之自然數)之自然數j之範圍設為Zh(j)記憶; 該加減法處理使用和i及j具有一定關係之N決定加法
第10頁 4 1 9 92 5 五、發明說明(8) 或減法,將該資料Z1 (i)和該資料Z h (j )加減。 本發明之演算裝置係計算用以下式表示之資料I除Bz 位元之資料Z之餘數R之演算裝置, I = CQn ± 1 (Μ係基本演算單位之位元數,Q係2以上之自然數,^ 係η 2Μ,C 係1 <C <QM。) 其特徵在於具有(1)至(4)之要素。 (1) 記憶該資料Z之下階η位元之資料Z1之資料z 1記憶 區域。 (2) 記憶該資料Ζ之上階Βζ-η位元之資料Zh之資料Zh記 憶區域。 (3) 藉著將該資料Zh除以該資料C算出商q和餘數r之商 計算部。 (4) 藉著將該餘數r作為比該資料Z1上階之基本演算單 位’和該資料Z1相加後,再將該商加減,計算該餘數R之 加減法部。 本發明之演算方法係使用演算裝置計算用以下式表示 之資料I除Bz位元之資料Z之餘數R之演算方法, I=CQn ±1 (Μ係基本演算單位之位元數,Q係2以上之自然數,η 係η 2Μ,C 係1 <C <QM。) 其特徵在於具有(1)至(4)之要素。 (1)記憶該資料Z之下階η位元之資料Z1之資料Z1記憶 步驟。
第11頁 五、發明說明(9) 憶步驟 (2 )記憶' 該資料Z之上階Bz_n位元之資料^之資 料Zh記 (3)藉著將該資料2h降以兮杳當 計算步驟。 料除以該資料C算出商q和餘數r之商 上階之基本演算單 *計算該餘數R之 (4 )藉著將該餘數r作為比該資料z ^ 位’和該資料Z1相加後,再將該商加滅 加減步驟。 本發明之記錄媒體係記 之程式之電腦可讀取之記錄 裝·置計算用以下式表示之資 之演算處理, 錄了用以令電腦執行演算處理 媒體’該演算處理係使用演算 料I除Bz位元之資料z之餘數r I = CQn ±1 (Μ係基本演算單位之位元數,q係2以上 係η 2Μ,C 係1 <C <QM。) … 其特徵在於具有(1)至(4)之要素。 (1) s己憶該資料Z之下階η位元之資料Z1之資料zi記憶 處理。 (2) 記憶該資料Ζ之上階Βζ-η位元之資料zh之資料zh記 憶處理。 (3) 藉著將該資料Zh除以該資料C算出商q和餘數r之商 計算處理。 (4 )藉著將該餘數r作為比該資料Z1上階之基本演算單 位,和該資料Z1相加後’再將該商加減,計算該餘數R之 加減處理。
第12頁 41 9925
五、發明說明(ίο) 本發明之演算裝置係計算以資料p除資料Z之餘數R之 演算裝置’其特徵在於具有資料I判定部,判定資料p是否 和指定之資料I相等。 又’此外其特徵在於該資料I判定部以下式表示資料 N 二 I ~ >γλ AnQm^
A^O (M係基本演算單位之位元數,n係由〇至^以為止之自 然數’ AG係絕對值比以基本演算單位μ位元表示之值小之 值,Ai至Α—η係+1、〇、或_ 1係+ 1或—1 , q係2以上 自然數。) 又’此外其特徵在於該資料I判定部以下式表示資料 I ° I = CQn ±1
(Μ係基本演算單位之位元數,q係2以上之自然數,〇 係 n2M,C 係1<C<QM 本發明之演算方法係計算以資料P除資料z之餘數R之 演算方法,其特徵在於具有資料I判定步驟,判定資料p 否和指定之資料I相等。 又,此外其特徵在於該資料I判定步驟以下式表示 料I。 、貝 /V = yv 1γ 1T max __ λ 广)ΛΐΛ.
A N(J
第13頁 41 9925 五、發明說明(11) (M係基本演算單位之位元數,N係由0至Nmax為止之自 然數,Ao係絕對值比以基本演算單位Μ位元表示之值小之 值’ Α〗至係+ 1、〇、或_1,ANmax係+ 1或-1 ’ Q係2以上之 自然數。) 又,此外其特徵在於該資料I判定步驟以下式表示資 料I。 I = CQn ±1 (Μ係基本演算單位之位元數,Q係2以上之自然數,η 係n ,C 係1 <C <Qm。) 本發明之記錄媒體係記錄了用以令電腦執行計算以資 料P除資料Z之餘數R之演算處理之程式之電腦可讀取之記 錄媒體’其特徵在於具有資料I判定步驟,判定資料P是否 和指定之資料I相等。 又,此外其特徵在於該資料I判定處理以下式表示資 料I。 N 二
V AnQM^ A^O CM係基本演算單位之位元數,n係由〇至Nmax為止之自 然數’ A〇係絕對值比以基本演算單位μ位元表示之值小之 值’ Α丨至ANnax-丨係+ 1、0、或-1,ANmax係+ 1或-1,Q係2以上之 自然數。) 又’此外其特徵在於該資料I判定處理以下式表示資 料I。
第14頁 4 1 9 92 b 'i 五、發明說明(12) I = CQn ± 1 (M係基本演算單位之位元數,q係2以上白冰數,n 係n』,C係1<C<QL) 圖式簡單說明 圖1係說明在實施例1及2之餘數計算之圖。 圖2係在實施例1、2、3 '4、5之電腦之概略構造圖。 圖3係說明在實施例1及3之餘數計算方法之流程圖。 圖4係說明在實施例1及2之餘數計算之計算圖。 圖5係說明在實施例2及4之餘數計算方法之流程圖。 圖6係說明在實施例2之餘數計算之計算圖。 圖7係說明在實施例3及4之餘數計算之圖。 圖8係說明在實施例3之餘數計算之計算圖。 圖9係說明在實施例4之餘數計算之計算圖。 圖1 0係說明在實施例5之餘數計算之計算圖。 圖11係說明在實施例5之餘數計算方法之流程圖。 圖12係表示在實施例6之通訊系統之概略構造圖。 圖1 3係表示在實施例6之通訊系統之動作之流程圖。 圖14係說明在實施例6之資料p之判定之流程圖。 圖1 5係說明在習知技術1之餘數計算方法之圖。 圖1 6係說明在習知技術2之餘數計算方法之圖。 發明之實施例 實施例1 圖1係說明本發明之一實施例之使用1 6位元電腦之餘 數計算之圖。在本實施例,計算整數z 101除以整數1102之
第15頁 419925 五'發明說明(13) " 餘數R109。 在圖1,101係以16進位數表示24〇位元之整數z的各 4位數之數字相當於16位元。記憶體記憶該每丨6 料。102係表示如下之整數I, N二N職 /= V λ/^ο (Αν(Ν手0)為0或土1。但,Aq為絕對值比 Μ小之整數,A_x為±1) 、 ^ 在本實施例 ’ M=16,Aq = -1,Al=:1,a2 = 〇 ,、= 1 ’ μ =-1 ’ A1q = 1,Nmax=l 0。I 以i〇 進位表示, 103係整數Z101之上階8〇位元之資料&,係整數 Z101之下階160位元之資料zi,Zh和Z1各自自下階位元開 始每16位元資料分割成21(1)~21(1〇)、Zh(1)〜zh(5)之各 資料後記憶。在此,16位元係此電腦之基本演算單位。 圖2係表示電腦之CPU201和記憶體202之概略圖。在電 腦,如圖2所示,藉著CPU201對由位址特定之記憶體趴〇 所記憶之資料或程式執行演算而進行處理。例如,在記憶 體2〇2,記憶姑乂、[^、2^、21等資料。在〇?11201,處理 執行圖3所示處理之程式。關於電腦内之處理,在以下之 實施例係一樣。此外,記憶體2〇 2相當於記憶裝置, CPU201相當於加減法裝置、商計算裝置。 圖3係表示圖1所記載發明之處理步驟之一例之流程 圖β圖4係按照該流程圖表示具體之數值計算之計算圖。
第16頁 4.1 9 92 5 五、發明說明(14) 在圖3,Dz係自下階位元開始每隔基本演算單位分割整數 Z101之情況之個數’ NSE係在整數1102之N之第2大之數。在 本實施例’ DZ係15 ’ NSE係4。又’ i、j、η係變數。以 下使用圖3及圖4說明餘數計算之處理。 此外,以下之處理在計算上和下式等價。又,在以下 說明1 6進位數之計算 Z1 - Zh X (I-2MNraax) = Z1-Zh X (- 264 + 248 + 216- 1 ) (式1 ) 處理,但是在電腦内以2進位數處理。這在以下之實 施例都一樣。 首先,將整數Z11 0 4之每1 6位元記憶於由位址指定之 記憶體W (i )(步驟3 -1〜3 - 4)。在此,整數Z以下階1 6 0位元 分開係因MNBax為1 60。又,設記憶體tf ( i )最初被清為零。以 下使用Zl(i)、Zh( j)說明。 其次,進行式1之處理(步驟3-5至3-11)。 在N = 0之情況(步驟3-5),因A0 = -l,將由Zh(l)〜Zh(5) 構成之80位元(1 05)和由記憶於w(l)〜ff(5)之Zl( 1)〜Zl(5) 構成之80位元相加(在n = 〇,步驟3-6〜3-9)。藉此,由W(l) 〜W(10)構成之160位元變成圖4之資料401。 此外’該處理藉著每16位元資料進行加減法處理執行 C步驟3-7) ^又,在步驟3_7,也一併計算借位、進位。這 在以下之實施例都一樣。 其次,進行之處理(步驟3-10)。®A1 = 1,自由W(2) 〜W(6)構成之8〇位元減去由Zh(1)〜Zh(5)構成之8〇位元 (106)(在N = 1,步驟3_6〜3 9)。藉此’由w(1)~w(1〇)構成
第17頁 419925 五、發明說明(15) 之160位元變成資料4〇2。 接著’進行N=2之處理(步驟3-1〇),因A2 = 0,可不進行 步驟3-6〜3-9之處理。 其次’進行N = 3之處理(步驟3-10)。因A3=l,自由W(4) 〜W(8)構成之8〇位元減去由構成之go位元 (107) (在N = 3,步驟3-6〜3-9)。藉此,由W(1)〜W(10)構成 之1 60位元變成資料4〇3。 最後,進行N=4之處理(步驟3-10)。因A4 = -l,將由 W(5)〜W(9)構成之8〇位元加上由zh(l )〜Zh(5)構成之80位元 (108) (在N = 4,步驟3-6〜3-9)。藉此,由W(l)〜W(10)構成 之160位元變成資料4〇4 ’該數值ri〇9成為整數Z101除以整 數11 02之餘數。 如上述所示’藉著將記憶體所記憶之1 6位元資料按照 AN各自加減,可計算餘數。 如上述所示’若利用本實施例,因只用加法和減法處 理就可計算整數z除以整數I之餘數,和需要除法、移位計 算之演算方法相比,可高速計算餘數。 此外,在A〇之絕對值為1以上之情況,只要重複在N = 1 之情況之上述步驟3-6〜3-9之處理即可。加減法處理之順 序未限定為上述的,例如進行和資料1〇5〜108之處理之後 資料103之處理也可。又,位元意指資訊之基本單位,在 本實施例以2進位法處理’但是在以Q進位法處理之電腦, 表示0〜(Q - 1 )之Q個狀態。在此情況也可和本實施例一樣地 計算餘數。又,將本實施例之演算方法記錄於記錄媒體
第18頁 419925 五、發明說明(16) 後,利用電腦進行上述之處理也可。這在以下之實施例都 一樣。 實施例2 圖5係表示圖1所記載演算方法之另一種處理步驟之流 程圖。又’圖6係按照該流程圖表示具體之數值計算之計 算圖。又,因在圖5之記號和圖3所記載的一樣,各自省略 說明。以下使用圖5和圖6說明餘數計算之處理。此外,在 本實施例係所得到結果之餘數和實施例1 一樣。 首先’將整數Z11 0 4之每1 6位元記憶於由位址指定之 記憶艏W(i)(步驟5-1〜5-4)。在此,整數Z以下階16〇位元 分開係因M Nmax為1 6 0 ’化和實施例1 一樣。 其次,進行式1之處理(步驟5-5至5-13)。 首先,進行i = 0之情況(步驟5-5),因係i = l,係只有N 為0之情況C步驟5-9)。因係A〇 = -l,對W(l)加上Zh(l)(步驟 5-7)。藉此,W(l)變成aaaa(601)。 其次’進行i = 2之處理(步驟5-12)。因係i = 2,係N為0 和1之情況C步驟5-9)。因係AD = -1 'A/l,對W(2)加Zh(2) 後減 Zh(l)(步驟 5-7)。藉此,w(2)變成 2222( 60 2)。 接著’進行i = 3之處理(步驟5_12)。因係i = 3,係N為 0、1、2之情況(步驟5-9)。因係Α〇 = _ι、Αι = 1、、=〇,對 W(3)加Zh(3)後減Zh(2)(步驟5-7)。藉此,w(3)變成 3333(603)。
其次,進行i = 4之處理(步驟5_12)。因係i = 4,係n為 0、1、2、3之情沉(步驟 5-9)。因係、Αι = 1、A2 = 0、A
第19頁 419925 " 丨! _ ' _ 五、發明說明(17) 3 = 1,對W( 4)加Zh(4)後減Zh( 3 ),再減Zh( 1)(步驊5-7 )。藉 * 此,W(4)變成999a(604)。此時,發生借位。 接著,進行i = 5之處理(步驟5 -12)。因係i = 5,係N為 0、1、2、3、4之情況(步驟5-9) » 因係Αα = -1= 1、A2 =0、A3 = 1、A4 = -1 ’ 自 W(5)加Zh(5)後減Zh(4),再滅Zh(2) 加Zh (1)(步驟5-7)。減在i = 4發生之借位1(步驊5-11)。藉 此,W(5)變成4443 (605)。 其次,進行i = 6之處理(步驟5-12)。係i = 6,但是因N 係到4為止(步驟5-10),係N為〇、1、2、3、4之情況。 但’因Zh係到Zh(5 )為止,可不處理n = 〇。因係A^l、A2 =0、A3 = 1、A4 = -1,自 W(6)減 Zh(5),再減 Zh(3),加 Zh(2)(步騍5-7)。藉此,W(6)變成5556(606)。此時,發 生借位。 接著’進行i = 7之處理(步驟5-12)。因和i = 6之情況一 樣,處理N為2、3、4之情況。因係a2 = 〇、A3=l、A4 = -l,自 W(7)減Zh(4),再加Zh(3)(步驟5-7),減在i = 6發生之借位 1(步驟 5~11)。藉此,W(7)變成 5 554 (607)。 其次,進行i = 8之處理(步驟5-12)。因和i = 6之情況一 樣,處理N為3、4之情況。因係A3=l、A4 = -1,自W(8)減 Zh(5),加 Zh(4)(步驟 5-7)。藉此,w(8)變成 66 66 ( 608 )。 接著’進行i = 9之處理(步驟5-12)。因和i = 6之情況一 樣,處理N為4之情況。因係A4 = -l,對W(9)加Zh( 5)(步驟 5 - 7)藉此,W(9)變成7776(609)。此時,發生借位。 最後*進行i = 10之處理(步驟5-12、5-13)。因和i=6
第20頁 419925 五、發明說明(18) -- 之情況一樣,可不執行步驟4-7 口對1〇)加在i=9發生之 借位1(步驟5-12)。藉此,w(l〇)變成999a(61〇)。 利用以上所計算之對W(0)〜對w(9)之16〇位元成為將整 數Z除以整數I之餘數。 如上述所示,若利用本實施例’藉著將各位址所記憶 之1 6位元資料不進行移位演算處理而進行加減法處理,就 可計算餘數’可就基本演算單位之各16位元處理資料,可 高速計算餘數。 實施例3 圖7係說明本發明之一實施例之使用丨6位元電腦之餘 數計算之圖’在本實施例’計算整數27〇1除以整數17〇2之 餘數R711。 在圖7 ’701係以16進位數表示256位元之整數Z的,各 4位數之數字相當於16位元《記憶體記憶該每16位元之資 料。I 7 0 2係和在實施例1的一樣,省略說明。 703係整數Z 701之上階96位元之整數Zh,704係整數 Z701之下階160位元之整數zi,Zh和Z1各自自下階位元開 始每16位元資料分割成Z1(1 )〜Z1 (1〇)、zh(1)〜zh(6)之各 資料後記憶。在此,16位元係此電腦之基本演算單位。 圖3係表示圖7所記載發明之處理步驟之一例之流程 圖。圖8係按照該流程圖表示具體之數值計算之計算圖。 因對於圖3已說明’省略其說明。但,在本實施例,&係 1 6 ’ NSE係4。以下使用圖3及圖8說明餘數計算之處理。 此外,以下之處理在計算上和下式等價。 41P925 五、發明說明(19)
Zl-Zh X (I-2’ax)-(I-2咖ax):Zl-Zh X (- 264 + 248 + 216 -l)-(- 264+ 248 + 216 -l ) (式2) 首先’將整數Z1 7 0 4之每1 6位元記憶於由位址指定之 記憶體W( i)(步驟3-卜3-4)。在此,整數Z以下階160位元 分開係因MN,ax為160。 其次,進行式2之處理(步驟3-5至3-11)。 在N = 0之情況(步驟3-5),因、=-1,將由Zh(l)〜Zh(6) 構成之96位元( 7 05 )和由記憶於)〜w(6)之zi (1)〜Z1 (6) 構成之96位元相加(在N = 〇,步驟3-6〜3-9)。藉此,由ff(l) 〜W(10)構成之160位元變成圖8之8〇1。 其次’進行之處理(步驟3_1〇)。因Ai = 1,自由w(2) ~ff(7)構成之96位元減去由Zh(1)〜Zh(6)構成之96位元 (706)(在N=1,步驟3-6〜3-9)。藉此,由W(1)K10)構成 之160位元變成802。 接著’進行N=2之處理(步驟3一1〇),因、=〇,可不進行 步驟3-6〜3-9之處理。 其次’進行N = 3之處理(步驟3_10)。因a3 = 1,自由w(4) 〜W(9)構成之96位元減去由Zh(1)〜Zh(6)構成之96位元 (707)(在N = 3,步驟3-6 〜3-9) 之1 60位元變成8〇3。 藉此,由W(l)〜W(10)構成 接著,進行N=4之處理(步驟3_1〇)。因a4 = _i,將由 W(5)~W(10)構成之96位元加上由Zh(1) Zh(6)構成之96位 兀(708)(在N = 4 ’步驟3〜6〜3_9)。藉此,由界⑴〜w(⑴構 成之176位το變成8〇4。該數值比整數17〇2大,將8〇4當作
第22頁 419925 五、發明說明(20) 整數Z,重複進行以上之處理。在本實施例’因資料8〇4之 Zh係1 ’自804減去(-264 + 248 + 216 - 1 )即可。該數值R711成為 整數Z701除以整數17〇2之餘數。 如上述所示,藉著將記憶體所記憶之16位元資料按照 AN各自加減’可在記憶體上計算餘數。 如上述所示,若利用本實施例,因藉著將各位址所記 憶之1 6位元資料不進行移位演算處理而進行加減法處理, 就可計算餘數’可就基本演算單位之各16位元處理資料, 可高速計算餘數。 此外’在A〇之絕對值為1以上之情況,只要重複在n = i 之處理即可。如本實施例所示,用1次之一連串處理無法 算出餘數時’只要重複相同之處理即可。這些特點在實施 例4也一樣。 實施例4 圖5係表示圖7所記載發明之另一種處理步驟之流程 圖。又’圖9係按照該流程圖表示具體之數值計算之計算 圖。因對於圖5、圖7已分別在實施例2、3說明了 ,省略其 說明°但’在本實施例,Dz係1 6,NSE係4。以下使用圖5及 圖9說明餘數計算之處理。此外,係在本實施例所得到結 果之餘數係和實施例3 —樣。 首先’將整數Z1704之每16位元記憶於由位址指定之 記憶鱧W(i)(步驟5—卜5_4)。在此,整數z以下階16〇位元 分開係因MNnax為1 6〇,這和實施例3 一樣。 其次’進行式2之處理(步驟5-5至5-13)。
第23頁 419925 五、發明說明(21) 首先’進行i = l之處理(步驟5-5),因係i = l,係只有N 為0之情況(步驟5-9)。因係Ac = -1,對W(l)加上Zh(l)(步驟 5-7)。藉此 ’W(l)變成aaaa(901)。 其次,進行i = 2之處理(步驟5-12)。因係i = 2,係N為〇 和1之情況(步驟5-9)。因係aq = -1、A^l,對W(2)加Zh(2) 後減 Zh(l)(步驟 5-7)。藉此,W(2)變成 2222(90 2)。 接著’進行i = 3之處理(步驟5-12)。因係i = 3,係N為 0、1、2 之情況(步驟 5 - 9 )。因係 A〇 = -1 ' A! = 1、A2 = 0 ’ 對 W(3)加Zh(3)後減Zh(2)(步驟5-7)。藉此,W(3)變成 3333(903)。 其次,進行i = 4之處理(步驟5-12)。因係i = 4,係N為 0、1、2、3之情況(步驟5-9)。因係A0 = -l 'A^l、A2 = 0、A 3 = 1,對W(4)加Zh(4)後減Zh(3),再減Zh(l)(步驟 5-7)。藉 此,W(4)變成999a(904)。此時,發生借位。 接著,進行i = 5之處理(步驟5-12)。因係i = 5 ’係N為 0、1、2、3、4 之情況(步驟5-9)。因係八。=-1、A^l、A2 =0、A3 = 1、A4 = -1,自 W(5)加 Zh(5)後減Zh(4) ’ 再減Zh(2) 加Zh(l)(步驟5-7)。減在i = 4發生之借位K步驟5-11)。藉 此,W(5)變成4443(905)。 其次,進行i = 6之處理(步驟5-12) ^係i=6 ’但是因N 係到4為止(步驟5-10),係N為0、1、2、3、4之情況。因 係AD = -1= 1、A2=0、A3 = 1、A4 = -1,對w(6)加Zh(6)後減 Zh(5),再減Zh(3),加Zh(2)(步驟5-7)。藉此,W(6)變成 5556(906)。
第24頁 419925 五、發明說明(22) 接著’進行i = 7之處理(步驟5-12)。係i=6,但是因N 係到4為止(步驟5-10) ’係n為〇、1、2、3、4之情況。此 外,因Zh係到Zh(6)為止,可不處理n = 0。因此,處理N為 1、2、3、4之情況。因係A^l、A2 = 〇、A3=1、A4 = -1,自 W(7)減Zh(6)後’減Zh(4),再加Zh(3)(步驟5-7)。藉此, W(O變成5 5 5 6 ( 9 0 7 )。此時,發生借位。 其次,進行i = 8之處理(步驟5-12)。因和i = 7之情況一 樣’處理N為2、3、4之情況。因係a2 = 0、A3 = l、A4 = -l,自 W(8)減Zh(5) ’加Zh(4)(步驟5-7),減在i = 7發生之借位 U 步驟 5-11)。藉此,變成 6 665 ( 9〇8)。 接著,進行i = 9之處理(步驟5-12)。因和i = 6之情況一 樣,處理N為3、4之情況。因係a3 = 1、A4 = -1,自W(9)減
Zh(6)後加 Zh(5)(步驟5-7)。藉此,W(9)變成 7777(909)。 最後’進行i=l〇之處理(步驟5_12、5-13)。因和i = 6之情 況一樣’處理N為4之情況。因係A4 = -l,對W(10?21頁)加
Zh(6)(步驟 5-7)。藉此,w(i〇)變成 9998 ( 9 1 0 )。 11利用以上所計算之W(l)〜W(ll )之176位元709比整數 1702大’將資料709當作整數Z,重複進行以上之處理《在 本實施例’因係Zh = l,自70 9減去(-264 + 248+ 216- 1 )即可。該 數值R711成為整數Z 701除以整數1702之餘數。 如上述所示’若利用本實施例,藉著將各位址所記憶 之1 6位兀資料不進行移位演算處理而進行加減法處理,就 可計算餘數’可就基本演算單位之各16位元處理資料,可 高速計算餘數。
第25頁 五、發明說明(23) 實施例5 圖10係說明本發明之一實施例之使用16位元電腦之餘 數計算之圖。在本實施例’計算將整數Z1001除以整數 1 1 002 之餘數R1 0 08。 在圖10,1001係用1 6進位數表示224位元之整數z的, 用空白間隔之各數字相當於16位元。記憶體就該每16位元 記憶資料。1002係可用下式表示之 I = C · Qn+f (1 <C <QM > η ' 1 <Q«) 整數I,在本實施例’使用1 〇進位數和1 6進位數表 示,C=ff9c(16 進位數),Q = 2 ’n = 144(10 進位數)= 進位數)’M=16(10進位數)。1〇〇3係整數Z1001之上階80位 元之資料Zh,1004係整數Z1001之下階144位元之資料21。
Zh和Z1各自自下階位元開始每1 6位元資料分割成 Zl(l)〜Zl(9)、Zh(l)〜Zh(5)之各資料後記憶。在此,i6位 元係此電腦之基本演算單位。 圖11係表示餘數計算之具體之處理步驟之流程圖。在 圖11 ’ q(i)係將商dl 005自下階位元側開始每16位元分割 之資料,imax係在q(i)之I之最大值。在本實施例, C = ff9c,imax = 4。以下使用圖11說明具體之處理步驟。 最初,將Zhl 0 03除以C=ff9c,得到商ql 0 0 5和餘數 rl 0 06(步驟1101)。即,將Zhl 00 3之最上階32位元dddd cccc除以ff9c,計算商和餘數(除法處理1) ^其次,因除 法處理1之餘數係991c,將991c bbbb除以ff9c,計算商和 餘數(除法處理2)。接著,因除法處理2之餘數係a2 lb,將
第26頁 A 1 9925 五、發明說明(24) a21b aaaa除以ff9c,計算商和餘數(除法處理3)。又因除 法處理3之餘數係1636,將1636 9999除以ff9c,計算商和 餘數(除法處理4)。利用以上4次之除法處理,得到將Zh除 以ff9c之商ql005和餘數rl006。 其次’將該餘數當作上階位元,和Z1 (丨QQ4)相加,得 到資料1 0 07。此外,以下之計算也包含借位、進位。首 先’自Ζ1 ( 1 )=00 00減q(l) = l63f(在i=i之步驟1卜5)(加減 法處理1)。其次,自Zl(2) = llll減Q(2) = a25b(在i = 2之步 驟11-5)(加減法處理2)。接著,自zi( 3) = 2222減 q(3) = 9 958(在i = 3之步驟11-5)(加減法處理3)。自 Zl(4) = 3333減d(4)=de34(在i=4之步驟11-5)(加減法處理 4)。在該4次之加減法處理後(步驟π_6),輸出餘數(步驟 1 卜7)。 以上利用4次之除法處理和4次之加減法處理可算出將 整數Ζ1001除以整數1 1 00 2之餘數R1008。 如上述所示’若利用本發明,因整數110〇2係可用 I = ff9c · 2144+1表示之整數,不需要如習知技術1、2般之 f(在習知技術1為3,在習知技術2為f f9d)之乘法步驟。因 其結果之商ql005之各16位元資料未超過16位元,只需要 最低限度之加減法處理,可得到命令數少、瑪之大小可小 型化之餘數計算方法。又’命令數少之結果,演算可成比 例高速化。 此外,在本實施例說明了 f = 1之情況,但是f关j時, 只要將商ql005乘f後的和資料1007進行加減法處理即可。
第27頁 419925 玉、發明說明(25) 此時,在商之各16位元r(i)和f相乘之結果比16位元小之 情況,和f = 1之情況一樣地可設為最低限度之加減法處 理。 實施例6 圖1 2係本發明之一實施例之之通訊系統之概略構造 圖。在圖12,1201係通訊者A之密碼編碼/解碼裝置,1202 係通訊者A之秘密鑰匙保持裝置,1 203係通訊者B之密碼編 碼/解碼裝置,1204係通訊者B之秘密鑰匙保持裝置,1205 係公開鑰匙保持裝置,1 2 0 6係公開之網路。本系統藉著使 用被稱為所謂的E1 Gama 1密碼之公開鑰匙密碼方式保持通 訊資料之秘密。公開鑰匙密碼方式係在密碼化和解碼上使 用不同之2種鑰匙的。傳送者使用接收者所公開之公開錄 匙將傳送資料密碼化’而接收者使用由自己保密之秘密输 匙將接收資料解碼。自公開鑰匙求秘密鑰匙當然在現實上 不可能。 E 1 Gama 1密碼係將其基礎置於離散對數問題之困難性 之公開鑰匙密碼方式。離散對數問題係在p為質數、居為 jalois體GF(p)之原始元、a係除以p之餘數不是〇之自然 數,並已知口、2、&時,求滿足下式之χ的。當p大時, a =gx mod p 使用電腦要在現實時間内求解也是困難的。 圖13係在本實施例之資料密碼化/解碼時之流程圖。 例: = 將傳送資料密碼化/解碼之動作。在本實施 例說明傳送者秘密傳送普通文Μ之情況^
419925 五、發明說明(26) 接枚者保持秘密鑰匙x(步驟13-1),公開p、g、y(步 驟13-2),作為自己之公開鑰匙。傳送者產生適當之亂數 k(步驟 13-3)後,傳送Myk mod p*gk mod p(步驟 13-4)。 接收者使用所接收之gk m〇d p和自己之秘密錄匙χ求(gk)x mod p(步驟 13-5)。因(gk)x syk m〇d p,由此計算Myk/(gk) x mod p(步驟13-6)。藉此,可將接收資料μ解碼(步驟 13-7) ^此時,要解碼需要χ,但是知道的只有接收者,可 保持資料之秘密性。 在本實施例’為了將資料密碼化/解碼,必須重複進 行質數Ρ之餘數之計算,即m〇d ρ。因此,在該密碼化/解 碼處理需要高速進行質數p之餘數之計算’又在密碼強度 之提尚上也重要。因此,此時在質數P上,配合電腦之演 算單位’選擇可用下式表示之質數p ^藉此,如在實施例 卜4之說明般可高速計算餘數, N= Nmzx /=
A^O (An(N尹〇)為〇或±1。但’係絕對值比基本演算單位M 小之整數,Αα係± 1,Q係2以上之自然數) 可實現資料變換之高速化、改善對於伴隨高速化之處 理時間之密碼解讀之困難性。 又’藉著在質數p上’配合電腦之演算單位,選擇下 式’如在實施例5 I=C .Qn±l(l<C<QM,n^M,Q 為2 以上之自然數)
第29頁
419925 1 五、發明說明(27) --- 之說日」般’命令數少、碼之大小小型化,可得到因命令數 少而向速化之資料變換方法。 r此!進行以資料p除之餘數計算之情況,如圖14 ^ ^料p是否和以上述2個式子表示之資料1相 目之情况進行以該I為前提之利用本發明之高速 之餘數計Ϊ。而在不相等之情況也可進行其他泛用之餘數 計算。藉著預先記憶以上述2個式子表示之資料丨後和資料 p比較二:判定是否相等。若照這樣做,有在以特定之資 料I為則提之裝置間選擇性進行高速之密碼化/解碼,而在 其他裝置間可進行泛用之密碼化/解碼之效果。 產業上之可應用性 本發明之演算裝置、演算方法及利用記錄於記錄媒體 之程式令電腦執行之演算處理,因只利用加減法可計算餘 數,不需要移位演算、除法或乘法,係高速。又,碼之大 小也小塑化。 此外’因判定除數資料是否是適合利用本發明之高速 演算之值,可選擇性地高速演算,藉著和泛用之演算組合 玎選擇適合除數資料之特性之演算。 圃
Hi 第30頁

Claims (1)

  1. 4l9925 六、申請專利範圍 1 · 一種演算裝置’係計算用以下式表示之資料I除82 位元之資料Z之餘數R, j二' Λ^Ο 其中,Μ係基本演算單位之位元數,ν係由〇至Nmax為 止之自然數,A〇係絕對值比以基本演算單位μ位元表示之值 小之值,Ai至人⑽…丨係+ 1、〇、或-1,ΑΝ隨係+1或,q係2以 上之自然數, 其特徵在於具有(1)至(4)之要素: (1) 記憶該資料Z之下階Μ X Nmax位元之資料zi之資料 Z1記憶區域; (2) 記憶該資料z之上階(Bz-M X Nmax)位元之資料zh之 資料Zh記憶區域; (3 )記憶該資料AN之資料an記憶區域;以及 (4 )藉著依據資料an之正負決定加法或減法後,將該資 料z 1記憶區域之至少一部分所記憶之資料和該資料Zh記憶 區域之至少一部分所記憶之資料加減而算出該餘數1?之加 減法部。 2.如申請專利範圍第1項之演算裴置,其中: 該資料z 1記憶區域將資料21之每該基本演算單位M位 元自最下階側開始依次在係(1 $ i芸Nmax)之自然數i之範 圍設為Zl(i) ’劃分資料2丨(丨)區域記憶; 該資料zh記憶區域將資料Zh之每該基本演算單位M位
    第31頁 41 六、申請專利範圍 元自最下階側開始依次在係(丨s g (Bz/M)_Nmax之小數點 以下進位之自然數)之自然數j之範圍設為Zh(j),劃分資 料Zh( j)區域記憶;以及 該加減法部使用和i及j具有一定關係決定加法或 j法,將該資料Zl(i)區域所記憶之資料和該資料以(])區 域所記憶之資料加減。 3. 如申請專利範圍第2項之,當質、 〜 喟之肩算裝置,其中該加減法 部使用具有N = i - j之關係之N,力:兮级,,上 ,. , .^ , 在该資料AN為正之情況決定 為減法’在該資料AN為負之情況決定為加法。 4. 如申請專利範圍第3項之演 # ^ ,+ 部對於指定之Ν ’就具有N= i - j之關接★ . i , ζ A A ^ 烕。 j〈關係之1和j之組合連續加 5 ♦如申請專利範圍第3項之演算 甘*分‘決、土 部對於指定之i,就具有之1置’其中該加減法 減。 J之關係之N和j之組合連續加 6. —種演算方法,使用涫曾 詧蚪T I^R办-々咨刺α 、异袭置計算用以下式表示之 貢枓I除Bz位兀之資料z之餘數r, N 二 /= y Λ^〇 其中,Μ係基本演算單位之/ _ 止之自然數,^係絕許值比以基疋數,Ν係由0 W隱為 小之值ΊΜ + 1、0 H廣算單㈣位元表示之值 上之自然數’ ’係+1或-1 ’ Q係2以 國ΙΜ 六、申請專利範圍 其特徵在於具有(1)至(4)之要素: (1)記憶該資料Ζ之下階μ X N max位元之資料Ζ1之資料 Z1記憶步驟; (2 )記憶該資料Z之上階(Bz-M X Nmax)位元之資料Zh之 資料Zh記憶步驟; (3 )記憶該資料AN之資料AN記憶步驟;以及 (4 )藉著依據資料AN之正負決定加法或減法後,將該資 料Z1之至少一部分之資料和該資料2}1之至少一部分之資料 加減而算出該餘數R之加減步驟。 7. 如申請專利範圍第6項之演算方法,其中: 該資料Z 1記憶步驟將資料Z1之每該基本演算單位Μ位 元自最下階侧開始依次在係(1 Si SNmax)之自然數i之範 圍設為Z1 (i)記憶; 該資料Zh記憶步驟將資料Zh之每該基本演算單位Μ位 元自最下階側開始依次在係(1 $ j $ (Bz/M)-Nmax之小數點 以下進位之自然數)之自然數j之範圍設為Zh(j)記憶;以 及 該加減法步驟使用和i及j具有一定關係之N決定加法 或減法,將該資料Zl(i)和該資料Zh(j)加減。 8. —種記錄媒體,記錄了用以令電腦執行演算處理之 程式之電腦可讀取之記錄媒體’該演算處理係使用演算裝 置計算用以下式表示之資料I除Βζ位元之資料ζ之餘數R, Ν二Κ… I 二 anqmn A^O i^sr 第33頁 419925 其十,M係基本演算單位之位元數,N係由〇至心以為 =之自然數,Afl係絕對值比以基本演算單位M位元表示之值 、之值’ A〗至人㈤係+ 1、0、或-1,Α_χ係+1或],Q係2以 上之自然數, 其特徵在於具有(1)至(4)之要素: (1) 記憶該資料Z之下階M XNmax位元之資料之資料 Zl記憶處理; (2) 記憶該資料Z之上階(Bz-M XNmax)位元之資料Zh之 資料Zh記憶處理; (3 )記憶該資料an之資料AN記憶處理;以及 (4 )藉著依據資料AN之正負決定加法或減法後,將該資 料Z1之至少一部分之資料和該資料zh之至少一部分之資料 加減而算出該餘數R之加減處理。 9. 如申請專利範圍第8項之記錄媒體,其中: 該資料Z 1記憶處理將資料Z1之每該基本演算單位Μ位 元自最下階側開始依次在係(1 S i S Nmax)之自然數i之範 圍設為Zl ( i )記憶; 該資料Zh記憶處理將資料Zh之每該基本演算單位Μ位 元自最下階侧開始依次在係(1 S(Bz/M)-Nmax之小數點 以下進位之自然數)之自然數j之範圍設為Zh( j)記憶;以 及 該加減法處理使用和i及j具有一定關係之N決定加法 或減法,將該資料Zl(i)和該資料Zh( j)加減。 10. —種演算裝置,計算用以下式表示之資料I除Bz位
    第34頁 41 9 92 5 六、申請專利範圍 元之資料Z之餘數R ’ I = CQn 土 1 其中,Μ係基本演算單位之位元數,Q係2以上之自然 數,η 係η 2Μ,C 係1 <C , 其特徵在於具有(Π至(4)之要素: (1 )記憶該資料Z之下階η位元之資料z 1之資料Z 1記憶 區域; (2 )記憶該資料Ζ之上階Βζ-η位元之資料Zh之資料Zh記 憶區域; (3) 藉著將該資料Zh除以該資料c算出商q和餘數r之商 計算部;以及 (4) 藉著將該餘數r作為比該資料21上階之基本演算翠 位’和該資料Z1相加後’再將該商加減,計算該餘數R之 加減法部。 11. 一種演算方法’使用演算裝置,計算用以下式表 示之資料I除Bz位元之資料Z之餘數R, I = CQn ± 1 其中,Μ係基本演算單位之位元數,q係2以上之自然 數,η 係η 2Μ,C 係1 <C <QM, 其特徵在於具有(1)至(4)之要素: (1) 記憶該資料Z之下階π位元之資料21之資料zi記憶 步驟; ° μ (2) 5己憶該資料Ζ之上階Β ζ - π位元之資料z h之資料Z h記 憶步驟;
    第35頁 41 9925 六、申請專利範圍 (3) 藉著將該資料Zh除以該資料C算出商q和餘數r之商 β十算步驟;以及 (4) 藉著將該餘數r作為比該資料Ζ1上階之基本演算單 位’和該資料Z1相加後,再將該商加減,計算該餘數R之 加減步驟。 J2· —種記錄媒體,記錄了用以令電腦執行演算處理 之程式之電腦可讀取之記錄媒體,該演算處理係使用演算 裝置計算用以下式表示之資料I除“位元之資料Z之餘數 R, I = CQn ±1 其中,Μ係基本演算單位之位元數,Q係2以上之自然 數 ’ η 係η 2Μ,C 係1 <C <QM, 其特徵在於具有(1)至(4)之要素: (1 )記憶該資料Z之下階η位元之資料Z1之資料Z1記憶 處理; (2) 記憶該資料Ζ之上階Βζ-η位元之資料Zh之資料Zh記 愫處理; (3) 藉著將該資料Zh除以該資料C算出商q和餘數r之商 計算處理;以及 (4) 藉著將該餘數r作為比該資料Z1上階之基本演算單 仇,和該資料Z1相加後,再將該商加減,計算該餘數r之 加減處理。 13. —種演算裝置,計算以資料P除資料Z之餘數R之演 算裳置,其特徵在於具有資料I判定部,判定資料P是否和
    第36頁 41 9y2S 六、申請專利範圍 指定之資料I相等。 算裝置,其中該資料I 1 4 ♦如申請專利範圍第〗3項之演 判定部以下式表示資料I, Ή N = Nmax -^ Λν〇^ Α^Ο 止> 係基本演算單位之位元數,Ν係由0 W為 “:,Ag係絕對值比以基本演算單位Μ位元表示之值 之值’ Α丨至ANeax_〗係+ 1、〇、或],Α ] 係2以 上之自然數。 “ 15.如申請專利範圍第13項之演算裝置,其中該資料I 判定部以下式表示資料I, I = CQn ±1 其中’ Μ係基本演算單位之位元數,q係2以上之自然 數 ’η係,C 係1 <c<qm。 16. —種演算方法,計算以資料p除資料z之餘數r,其 特徵在於:具有資料I判定步驟,判定資料p是否和指定之 資料I相等。 17_如申請專利範圍第μ項之演算方法,其中該資料j 判定步驟以下式表示資料工, N = /= yv AnQmn A^O 其中,M係基本演算單位之位元數,n係由0至Nmax為
    第37頁 41 9^25 六、申請專利範圍 止之自然數,A〇係絕對值比以基本演算單位Μ位元表示之值 小之值,Ai至ANmax丨係+1、0、或-1,ANmax係+ 1或-1 ’ Q係2以 上之自然數。 1 8 .如申請專利範圍第1 6項之演算方法,其中該資料I 判定步驟以下式表示資料I, I=CQn ±1 其中,Μ係基本演算單位之位元數,Q係2以上之自然 數,η 係 η 2 Μ,C 係 1 < C < QM。 1 9. 一種記錄媒體,記錄了用以令電腦執行計算以資 料P除資料Z之餘數R之演算處理之程式之電腦可讀取之, 其特徵在於:具有資料I判定步驟,判定資料P是否和指定 之資料I相等。 20.如申請專利範圍第19項之記錄媒體,其中該資料I 判定處理以下式表示資料I, /= Λ^Ο 其中,Μ係基本演算單位之位元數,Ν係由0至Nmax為 止之自然數,Ao係絕對值比以基本演算單位J1位元表示之值 小之值,Ai至人卩·」係+ 1、0、或-1,AN係+1或-1,Q係2以 上之自然數。 2 1.如申請專利範圍第1 9項之記錄媒體,其中該資料I 判定處理以下式表示資料I, I = CQn ±1
    第38頁 4 1 b 5
    第39頁
TW088100420A 1998-01-27 1999-01-12 Method and apparatus for arithmetic operation and recording medium thereof TW419925B (en)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP1392498 1998-01-27

Publications (1)

Publication Number Publication Date
TW419925B true TW419925B (en) 2001-01-21

Family

ID=11846743

Family Applications (1)

Application Number Title Priority Date Filing Date
TW088100420A TW419925B (en) 1998-01-27 1999-01-12 Method and apparatus for arithmetic operation and recording medium thereof

Country Status (12)

Country Link
US (3) US6477556B1 (zh)
EP (2) EP0971331B1 (zh)
JP (1) JP3183670B2 (zh)
KR (1) KR100348340B1 (zh)
CN (2) CN1598758B (zh)
AU (1) AU736797B2 (zh)
CA (1) CA2284713C (zh)
DE (2) DE69941653D1 (zh)
HK (1) HK1027194A1 (zh)
NO (3) NO326219B1 (zh)
TW (1) TW419925B (zh)
WO (1) WO1999038142A1 (zh)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7685221B1 (en) * 2003-03-17 2010-03-23 Marvell Israel (M.I.S.L.) Ltd. Efficient remainder calculation for even divisors
DE10341804A1 (de) * 2003-09-10 2005-04-28 Giesecke & Devrient Gmbh Division von Binärzahlen
JP4662802B2 (ja) * 2005-03-30 2011-03-30 富士通株式会社 計算方法、計算装置及びコンピュータプログラム
FR2897963A1 (fr) * 2006-02-28 2007-08-31 Atmel Corp Procede pour les conjectures de quotient rapide et une manip ulation de congruences
JP5328186B2 (ja) * 2008-03-21 2013-10-30 ルネサスエレクトロニクス株式会社 データ処理システム及びデータ処理方法
CN103699356B (zh) * 2012-09-27 2016-09-21 任光前 一种并行除法计算器
US9841946B1 (en) * 2015-11-11 2017-12-12 Mbit Wireless, Inc. Method and apparatus for modulo operation

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4949293A (en) * 1987-09-25 1990-08-14 Kabushiki Kaisha Toshiba Method and apparatus for computing residue with respect to arbitrary modulus
US5271061A (en) 1991-09-17 1993-12-14 Next Computer, Inc. Method and apparatus for public key exchange in a cryptographic system
JP3180836B2 (ja) 1992-05-21 2001-06-25 日本電気株式会社 暗号通信装置
US5379243A (en) * 1992-08-31 1995-01-03 Comstream Corporation Method and apparatus for performing finite field division
FR2701323A1 (fr) * 1993-02-08 1994-08-12 Trt Telecom Radio Electr Dispositif pour effectuer une division.
JPH08115205A (ja) * 1994-10-14 1996-05-07 Matsushita Electric Ind Co Ltd 高速剰余演算装置
JP3609512B2 (ja) * 1994-12-15 2005-01-12 株式会社東芝 演算器
JPH08179690A (ja) 1994-12-22 1996-07-12 Nec Corp プロダクト暗号装置
EP0733416B1 (de) 1995-03-24 1999-05-19 Filzmoser, Franz Verfahren und Vorrichtung zum Herstellen von Bewehrungsmatten
US5675528A (en) * 1995-06-16 1997-10-07 Cyrix Corporation Early detection of overflow and exceptional quotient/remainder pairs for nonrestoring twos complement division
JPH0990870A (ja) 1995-09-27 1997-04-04 Nec Corp 基本変換方法、暗号化方法、基本変換回路および暗号装置
JPH09198232A (ja) * 1996-01-23 1997-07-31 Ricoh Co Ltd 除算器
US6175850B1 (en) * 1997-02-03 2001-01-16 Nippon Telegraph And Telephone Corporation Scheme for carrying out modular calculations based on redundant binary calculation

Also Published As

Publication number Publication date
NO20030202L (no) 1999-09-27
NO331487B1 (no) 2012-01-16
WO1999038142A1 (fr) 1999-07-29
DE69941653D1 (de) 2010-01-07
CA2284713A1 (en) 1999-07-29
US6687728B2 (en) 2004-02-03
NO994667D0 (no) 1999-09-24
US6687727B2 (en) 2004-02-03
CN1598758B (zh) 2010-05-12
US20020184280A1 (en) 2002-12-05
NO20030203D0 (no) 2003-01-15
EP0971331A1 (en) 2000-01-12
US20020178205A1 (en) 2002-11-28
CA2284713C (en) 2003-07-08
NO331489B1 (no) 2012-01-16
KR20010005695A (ko) 2001-01-15
NO20030202D0 (no) 2003-01-15
NO20030203L (no) 1999-09-27
CN1598758A (zh) 2005-03-23
EP1659552A1 (en) 2006-05-24
US6477556B1 (en) 2002-11-05
AU1982999A (en) 1999-08-09
DE69940175D1 (de) 2009-02-05
AU736797B2 (en) 2001-08-02
CN1255998A (zh) 2000-06-07
JP3183670B2 (ja) 2001-07-09
EP0971331A4 (en) 2004-11-17
HK1027194A1 (en) 2001-01-05
EP0971331B1 (en) 2009-11-25
EP1659552B1 (en) 2008-12-24
CN1255998B (zh) 2010-06-09
NO326219B1 (no) 2008-10-20
NO994667L (no) 1999-09-27
KR100348340B1 (ko) 2002-08-09

Similar Documents

Publication Publication Date Title
JP4575283B2 (ja) 暗号装置、復号装置、プログラム及び方法
JP4842276B2 (ja) 楕円曲線上の新しいトラップドア1方向性関数と、その、より短い署名及び非対称暗号化への応用
JP4875700B2 (ja) ランダム化されたモジュラー多項式のリダクション方法およびそのためのハードウェア
US20090094464A1 (en) Signature generating device, signature generating method and signature generating program
EP1215642A1 (en) Elliptic curve generating method and device, elliptic encryption system and recording medium
US20080205638A1 (en) Method for elliptic curve scalar multiplication
JPH0375913B2 (zh)
US8102998B2 (en) Method for elliptic curve scalar multiplication using parameterized projective coordinates
TW419925B (en) Method and apparatus for arithmetic operation and recording medium thereof
JP4783382B2 (ja) モンゴメリ法用乗算剰余計算装置
US20080273695A1 (en) Method for elliptic curve scalar multiplication using parameterized projective coordinates
US6252960B1 (en) Compression and decompression of elliptic curve data points
JP2000132376A (ja) 剰余演算方法,乗算剰余演算方法,剰余演算装置,乗算剰余演算装置及び記録媒体
JP2004361969A (ja) 暗号化方法
JP3615405B2 (ja) 素体上楕円曲線上の点の演算方法およびその装置
JP4872261B2 (ja) 安全性評価装置及び安全性評価プログラム
JP2000137436A (ja) 素体上楕円曲線上の点の演算方法およびその装置
CN107005403A (zh) 电子计算设备
JPH0643808A (ja) 有限可換群における演算器
JP5010508B2 (ja) 楕円曲線暗号演算装置、方法及びプログラム並びに楕円曲線暗号演算システム及び方法
KR20180062303A (ko) 색상코드를 이용한 개인정보 관리방법
JPH02273779A (ja) ディジタル署名装置
JP4225764B2 (ja) 楕円曲線変換装置、楕円曲線変換方法、楕円曲線利用装置及び楕円曲線生成装置
JP2003216028A (ja) 超楕円曲線暗号のための演算装置
JP2003309551A (ja) 暗号鍵保管装置

Legal Events

Date Code Title Description
GD4A Issue of patent certificate for granted invention patent
MK4A Expiration of patent term of an invention patent