JP4047816B2 - 除算の結果を演算する装置および方法 - Google Patents
除算の結果を演算する装置および方法 Download PDFInfo
- Publication number
- JP4047816B2 JP4047816B2 JP2003568519A JP2003568519A JP4047816B2 JP 4047816 B2 JP4047816 B2 JP 4047816B2 JP 2003568519 A JP2003568519 A JP 2003568519A JP 2003568519 A JP2003568519 A JP 2003568519A JP 4047816 B2 JP4047816 B2 JP 4047816B2
- Authority
- JP
- Japan
- Prior art keywords
- result
- factor
- denominator
- equal
- product
- Prior art date
- Legal status (The legal status 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 status listed.)
- Expired - Fee Related
Links
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
-
- 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
- G06F7/48—Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation using non-contact-making devices, e.g. tube, solid state device; using unspecified devices
- G06F7/52—Multiplying; Dividing
- G06F7/535—Dividing only
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2207/00—Indexing scheme relating to methods or arrangements for processing data by operating upon the order or content of the data handled
- G06F2207/72—Indexing scheme relating to groups G06F7/72 - G06F7/729
- G06F2207/7219—Countermeasures against side channel or fault attacks
- G06F2207/7261—Uniform execution, e.g. avoiding jumps, or using formulae with the same power profile
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)
- General Engineering & Computer Science (AREA)
- Mathematical Physics (AREA)
- Complex Calculations (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Description
Q=A/N (1)
一般的に限定されるものではないが、分子Aと分母Nとの双方を2進数とし、以下の式を満たすものとする:
2a−1≦A<2a (2a)
2n−i≦N<2n (2b)
式2a,2bは、分子Aと分母Nとの桁数を示す。
A=Q・N+H (3a)
式3の値Hを、以下のように計算する:
H=A−Q・N (3b)
ただし、値Hは、0よりもよりも大きいか、または、0に等しく、かつ、Nよりも小さい。
H=AmodN (4)
ただし、各浮動小数点除算を、例えば小数点のシフト、および、隣接する整数への丸めによって、整数の除算に変換できる。通常は、浮動小数点除算は、演算装置内で、整数除算に変換される。
F=2e (5)
ここでは、2進数システムを単なる例として考察するので、数2が底となり、底2を指数e乗すると、因数Fが得られる。本発明では、因数Fが、以下の条件を満たしている必要がある:
N・F>Q (6)
または、式6に式5を挿入して:
N・2e>Q (7)
すなわち、因数は、因数Fと除算(式1)の分母との積が、求めようとする除算の結果Qよりも大きいように決定されている。
e≧a+2−2n (8)
式8は、分子A(式2a)についての情報および分母N(式2b)についての情報だけを含む。eの大きさを式8のように規定すると、式6の因数に対する条件が常に満たされる。
A・F=Q・N・F+H・F (9)
さらに、式4の両辺に、同じく因数Fを乗算すると、以下の式10となる:
H・F=A・Fmod(N・F) (10)
さらに:
0≦H・F<N・F (11)
が成り立つ。この式11は、式10の法計算が、法N・Fの剰余類の範囲内になければならないことを示している、すなわち、0に等しいか、あるいは、0よりも大きく、かつ、N・Fよりも小さい必要がある。
A・F=Q・N・F+Q+H・F−Q (12)
式12を、式12の右辺にある最初の2項の結果Qが括弧の外になるように書き換えると、以下のようになる:
A・F=Q(N・F+1)+H・F−Q (13)
あるいは、式12を、HFとQとの和を算出し、最初の2項の差は算出しないように書き換えることもできる:
A・F=Q(N・F−1)+H・F+Q (13’)
差H・F−Q(またはその和)が、式の左辺にくるように式13または13’を書き換えると、以下のようになる:
H・F−Q=A・F−Q(N・F+1) (14)
「代わりに和をとる」場合については以下の結果となる:
H・F+Q=A・F−Q(N・F−1) (14’)
次に、式14または式14’を、式3aおよび式3bと比較すると、式14は、新しい除算のための新しい決定式であることが分かる。この場合、式14または式14’の左辺にある差または和(すなわち、求めようとする結果Qを含む補助数量(H・F−Q)または(H・F+Q))は、分子A・Fを分母(N・F+1)または(N・F−1)で割る整数の除算の剰余に相当している。
H・F−Q=A・Fmod(N・F+1) (15)
したがって、式15は、法計算である。この法計算の結果、補助数量H・F−Qが生じる。この補助数量から、以下に説明するように、様々な方法で、求めようとする結果Qを簡単に抽出できる。したがって、式15は、除算(式1)を変形して得られる基本となる法計算である。ただし、上記式の左辺の差は、負になり得る。この場合は、式を満たすように法を加算する。なぜなら、除算による法計算の結果が、負であってはいけないからである。
H・F+Q=A・Fmod(N・F−1) (15’)
以下に示すように、補助数量H・F+/−Qから求めようとする結果Qを様々に抽出することができる。
H・F=A・Fmod(N・F) (16)
式16は、式4に相当している。しかし、ここでは、因数Fが考慮されている。
H・F−(H・F−Q)=Q (17)
補助数量、すなわち差H・F−Qが負である場合を区別することについて以下に説明する。式15における差H・F−Qが負である場合、式15の左辺に法(N・F+1)を加算する。なぜなら、定義によると、法計算の結果は、常に正であるべきだからである。それゆえ、補助数量が負である場合、式15の左辺に法を加算する。その結果、式15を式16から減算すると、以下のようになる:
Q=A・Fmod(N・F)−A・Fmod(N・F+1)+N・F+1(18)
以下に、図1について説明する。分子を分母で割る除算の結果を演算するため、または、後にさらに実施されるように、結果Qの倍数を演算するための好ましい装置のブロック図を示す。図1では、見やすいように、決定式を、1つのブロック10に示す。本発明の装置は、因数(特に、数e)を供給する手段12を備えている。なお、この数eは、式6または式7を満たすように底2の指数として因数を形成する。
H・F−Q・x=A・Fmod(N・F+x) (19)
1よりも大きい数xを使用する場合、式6において因数Fの選択の際にこれについても考慮する必要がある。つまり、因数がx=1と比較してx倍になっている必要があることを考慮する必要がある。
Q・(y−x)=A・Fmod(N・F+x)−A・Fmod(N・F+y)(21)
ただし、パラメータxおよびyは、負でもよい。つまり、式(13’)から(15’)に関連して説明した方法と同じである。
12 供給する手段
14 法計算する手段
16 抽出する手段
20 補助数の決定
22 第1積の演算
24 第2積の演算
26 第1補助数量の演算
28 法の追加
30 補助数量の演算
32 他の補助数量からの補助数量の減算
34 結果の符合の検査
36 法の加算
38 結果の出力
38’ 結果の出力
300 長大数レジスタ
Claims (17)
- 暗号アルゴリズム内で分子(A)を分母(N)で割る除算の結果(Q)、または、上記結果(Q)の倍数を演算し、上記分子(A)および上記分母(N)が、上記暗号アルゴリズムにおけるパラメータである装置であって、
上記分母(N)との積が上記結果(Q)よりも大きくなるように選択される因数(F)を供給する手段(12)と、
上記因数(F)を乗算した上記除算の剰余(H)と、上記結果(Q)との差に等しい補助数量(H・F−Q)であって、上記結果を含むものを得るために、上記分子(A)と上記因数(F)との第1積を、上記分母(N)と上記因数(F)との第2積と1との和に等しい法を用いて、法計算するか、または、
上記因数(F)を乗算した上記除算の剰余(H)と、上記結果(Q)との和に等しい補助数量(H・F+Q)であって、上記結果を含むものを得るために、上記分子(A)と上記因数(F)との第1積を、上記分母(N)と上記因数(F)との第2積と1との差に等しい法を用いて、法計算するか、または、
上記因数(F)を乗算した上記除算の剰余(H)と、上記結果(Q)にある整数(x)を乗算したものとの差に等しい補助数量(H・F−Q・x)であって、上記結果を含むものを得るために、上記分子(A)と上記因数(F)との第1積を、上記分母(N)と上記因数(F)との第2積と上記整数(x)との和に等しい法を用いて、法計算する手段(14)と、
上記補助数量から上記結果(Q)または上記結果(Q)の上記倍数を抽出する手段(16)とを備えていることを特徴とする装置。 - 上記供給する手段(12)は、底の、ある補助数乗が、上記因数(F)に等しいように上記因数(F)を決定するように構成されていることを特徴とする請求項1に記載の装置。
- 上記因数(F)を乗算することがレジスタの位置をある数だけシフトさせることに相当するように、上記底を2とし、上記位置の上記ある数は上記補助数に等しいことを特徴とする請求項2に記載の装置。
- 上記補助数量(H・F−Q)は上記因数(F)を乗算した上記除算の剰余(H)と上記結果(Q)との差に等しいものであって、
負の数を表すために、2の補数表示を使用し、
上記補助数量はレジスタ(300)に格納されており、上記抽出する手段(16)が、上記除算の上記結果(Q)を得るために、上記結果を含む上記レジスタ(300)の下位部分(−Q)を読み出す手段と、読み出した値を反転し、1を加算する手段とを備えていることを特徴とする請求項1〜3のいずれか1項に記載の装置。 - 暗号アルゴリズム内で分子(A)を分母(N)で割る除算の結果(Q)、または、上記結果(Q)の倍数を演算し、上記分子(A)および上記分母(N)が、上記暗号アルゴリズムにおけるパラメータである装置であって、
上記分母(N)との積が上記結果(Q)よりも大きくなるように選択される因数(F)を供給する手段(12)と、
上記因数(F)を乗算した上記除算の剰余(H)と、上記結果(Q)との差に等しい補助数量(H・F−Q)であって、上記結果を含むものを得るために、上記分子(A)と上記因数(F)との第1積を、上記分母(N)と上記因数(F)との第2積と1との和に等しい法を用いて、法計算する手段(14)と、
上記補助数量から上記結果(Q)または上記結果(Q)の上記倍数を抽出する手段(16)とを備え、
上記抽出する手段(16)は、
上記因数(F)が乗算された上記分母(N)が法として供給されて、他の補助数量として、上記因数(F)が乗算された上記分子(A)の法計算の結果を演算する手段(26)と、
上記除算の上記結果(Q)を得るために、上記他の補助数量から上記補助数量を減算する手段(32)とを備えていることを特徴とする装置。 - 上記除算は、整数除算であることを特徴とする請求項1〜5のいずれか1項に記載の装置。
- 上記補助数は、(上記分子の桁数)−(上記分母の桁数の2倍)+2に等しいように選択されていることを特徴とする請求項3に記載の装置。
- 上記抽出する手段(16)は、上記結果(Q)が負であるかどうかを決定し(34)、上記結果(Q)が負であれば、法計算する手段(14)において使用するために供給される法を、上記結果(Q)に加算する構成であることを特徴とする請求項5に記載の装置。
- 上記分子(A)を格納するための第1レジスタと、
上記分母(N)を格納するための第2レジスタと、
上記他の補助数量(H2)を格納するための第3レジスタと、
上記補助数量(H1)を格納するための第4レジスタと、
上記結果(Q)を得るために、上記計算する手段(14)および上記抽出する手段(16)を制御するレジスタ制御ユニットとをさらに備えていることを特徴とする請求項5に記載の装置。 - 上記補助数量(H・F−Q・x)は上記因数(F)を乗算した上記除算の剰余(H)とある整数の乗算数(x)を乗算した上記結果(Q)との差に等しいものであって、
上記結果に上記整数の乗算数を乗算する演算を行い、
上記供給する手段(12)は、ある因数を供給するように構成されており、この因数は、当該因数(Q)と、上記分母(N)との積が、上記除算の上記結果(Q)と、上記乗算数(x)との積よりも大きいように選択され、
上記抽出する手段(16)が、上記分母(N)と当該因数(F)との積と、上記乗算数(x)との和に等しい法を使用して法計算を実行するように構成されていることを特徴とする請求項1に記載の装置。 - 暗号アルゴリズム内で分子(A)を分母(N)で割る除算の結果(Q)、または、上記結果(Q)の倍数を演算し、上記分子(A)および上記分母(N)が、上記暗号アルゴリズムにおけるパラメータである装置であって、
上記分母(N)との積が上記結果(Q)よりも大きくなるように選択される因数(F)を供給する手段(12)と、
上記分子(A)と上記因数(F)との第1積を、上記分母(N)と上記因数(F)との第2積と第1の整数(x)との和に等しい法を用いて第1の法計算した第1の値と、上記分子(A)と上記因数(F)との第1積を、上記分母(N)と上記因数(F)との第2積と第2の整数(y)との和に等しい法を用いて第2の法計算した第2の値との差を計算する手段(14)とを備え、
上記第1の整数(x)は、1よりも大きいか、または、1に等しく、上記第2の整数(y)は、上記第1の整数(x)とは異なり、
その結果、上記第2の整数(y)と上記第1の整数(x)との差が1に等しい場合、上記除算の上記結果(Q)は、上記計算する手段(14)によって得られる上記第1の値と上記第2の値との差に等しいか、
または、上記計算する手段(14)によってある整数の乗算数(y−x)が乗算された上記結果(Q)が得られ、当該乗算数は、上記第2の整数(y)と上記第1の整数(x)との差に等しいことを特徴とする装置。 - 暗号化装置の暗号化コプロセッサーとして実現されていることを特徴とする請求項1〜11のいずれか1項に記載の装置。
- 上記結果(Q)が反転せずに得られるように、上記整数が負であることを特徴とする請求項1〜3のいずれか1項に記載の装置。
- 上記他の数は、負の整数であることを特徴とする請求項11〜13のいずれか1項に記載の装置。
- 暗号アルゴリズム内で分子(A)を分母(N)によって割る除算の結果(Q)、または、上記結果(Q)の倍数を演算し、上記分子(A)および上記分母(N)が、上記暗号アルゴリズムにおけるパラメータである、暗号化コプロセッサーが実行する方法であって、
上記分母(N)との積が上記結果(Q)よりも大きくなるように選択される因数(F)を供給する(12)ステップと、
上記因数(F)を乗算した上記除算の剰余(H)と、上記結果(Q)との差に等しい補助数量(H・F−Q)であって、上記結果を含むものを得るために、上記分子(A)と上記因数(F)との第1積を、上記分母(N)と上記因数(F)との第2積と1との和に等しい法を用いて、法計算するか、または、
上記因数(F)を乗算した上記除算の剰余(H)と、上記結果(Q)との和に等しい補助数量(H・F+Q)であって、上記結果を含むものを得るために、上記分子(A)と上記因数(F)との第1積を、上記分母(N)と上記因数(F)との第2積と1との差に等しい法を用いて、法計算するか、または、
上記因数(F)を乗算した上記除算の剰余(H)と、上記結果(Q)にある整数(x)を乗算したものとの差に等しい補助数量(H・F−Q・x)であって、上記結果を含むものを得るために、上記分子(A)と上記因数(F)との第1積を、上記分母(N)と上記因数(F)との第2積と上記整数(x)との和に等しい法を用いて、法計算する(14)ステップと
上記結果、または、上記結果の上記倍数を、上記補助数量から抽出する(16)ステップとを含むことを特徴とする方法。 - 暗号アルゴリズム内で分子(A)を分母(N)によって割る除算の結果(Q)、または、上記結果(Q)の倍数を演算し、上記分子(A)および上記分母(N)が、上記暗号アルゴリズムにおけるパラメータである、暗号化コプロセッサーが実行する方法であって、
上記分母(N)との積が上記結果(Q)よりも大きくなるように選択される因数(F)を供給する(12)ステップと、
上記因数(F)を乗算した上記除算の剰余(H)と、上記結果(Q)との差に等しい補助数量(H・F−Q)であって、上記結果を含むものを得るために、上記分子(A)と上記因数(F)との第1積を、上記分母(N)と上記因数(F)との第2積と1との和に等しい法を用いて、法計算する(14)ステップと、
上記補助数量から上記結果(Q)または上記結果(Q)の上記倍数を抽出する(16)ステップとを含み、
上記抽出する(16)ステップは、
上記因数(F)が乗算された上記分母(N)が法として供給されて、他の補助数量として、上記因数(F)が乗算された上記分子(A)の法計算の結果を演算する(26)ステップと、
上記除算の上記結果(Q)を得るために、上記他の補助数量から上記補助数量を減算する(32)ステップとを含むことを特徴とする方法。 - 暗号アルゴリズム内で分子(A)を分母(N)によって割る除算の結果(Q)、または、上記結果(Q)の倍数を演算し、上記分子(A)および上記分母(N)が、上記暗号アルゴリズムにおけるパラメータである、暗号化コプロセッサーが実行する方法であって、
上記分母(N)との積が上記結果(Q)よりも大きくなるように選択される因数(F)を供給する(12)ステップと、
上記分子(A)と上記因数(F)との第1積を、上記分母(N)と上記因数(F)との第2積と第1の整数(x)との和に等しい法を用いて第1の法計算した第1の値と、上記分子(A)と上記因数(F)との第1積を、上記分母(N)と上記因数(F)との第2積と第2の整数(y)との和に等しい法を用いて第2の法計算した第2の値との差を計算する(14)ステップとを含み、
上記第1の整数(x)は、1よりも大きいか、または、1に等しく、上記第2の整数(y)は、上記第1の整数(x)とは異なり、
その結果、上記第2の整数(y)と上記第1の整数(x)との差が1に等しい場合、上記除算の上記結果(Q)は、上記計算する(14)ステップによって得られる上記第1の値と上記第2の値との差に等しいか、
または、上記計算する(14)ステップによってある整数の乗算数(y−x)が乗算された上記結果(Q)が得られ、当該乗算数は、上記第2の整数(y)と上記第1の整数(x)との差に等しいことを特徴とする方法。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE10205713A DE10205713C1 (de) | 2002-02-12 | 2002-02-12 | Vorrichtung und Verfahren zum Berechnen eines Ergebnisses aus einer Division |
PCT/EP2003/000669 WO2003069462A2 (de) | 2002-02-12 | 2003-01-23 | Vorrichtung und verfahren zum berechnen eines ergebnisses aus einer division |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2005517980A JP2005517980A (ja) | 2005-06-16 |
JP4047816B2 true JP4047816B2 (ja) | 2008-02-13 |
Family
ID=7713793
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2003568519A Expired - Fee Related JP4047816B2 (ja) | 2002-02-12 | 2003-01-23 | 除算の結果を演算する装置および方法 |
Country Status (7)
Country | Link |
---|---|
US (1) | US7567999B2 (ja) |
EP (1) | EP1474741B1 (ja) |
JP (1) | JP4047816B2 (ja) |
AU (1) | AU2003244870A1 (ja) |
DE (2) | DE10205713C1 (ja) |
TW (1) | TW200304616A (ja) |
WO (1) | WO2003069462A2 (ja) |
Families Citing this family (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE10341804A1 (de) * | 2003-09-10 | 2005-04-28 | Giesecke & Devrient Gmbh | Division von Binärzahlen |
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 |
DE102006025713B9 (de) | 2005-10-28 | 2013-10-17 | Infineon Technologies Ag | Kryptographie-Vorrichtung und Kryptographie-Verfahren 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 |
DE102006025673B9 (de) * | 2005-10-28 | 2010-12-16 | Infineon Technologies Ag | Rechenwerk zum Reduzieren einer Eingabe-Zahl bezüglich eines Moduls |
US7826612B2 (en) * | 2006-06-29 | 2010-11-02 | Intel Corporation | System, method and apparatus for an incremental modular process including modular multiplication and modular eduction |
WO2008106793A1 (en) * | 2007-03-06 | 2008-09-12 | Research In Motion Limited | Power analysis attack countermeasure for the ecdsa |
US20100011047A1 (en) * | 2008-07-09 | 2010-01-14 | Viasat, Inc. | Hardware-Based Cryptographic Accelerator |
RU2661797C1 (ru) * | 2017-06-13 | 2018-07-19 | федеральное государственное автономное образовательное учреждение высшего образования "Северо-Кавказский федеральный университет" | Вычислительное устройство |
Family Cites Families (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4484259A (en) * | 1980-02-13 | 1984-11-20 | Intel Corporation | Fraction bus for use in a numeric data processor |
DE69229766T2 (de) * | 1991-09-05 | 2000-03-23 | Canon Kk | Verfahren und Gerät zum Verschlüsseln und Entschlüsseln von Kommunikationsdaten |
FR2701323A1 (fr) * | 1993-02-08 | 1994-08-12 | Trt Telecom Radio Electr | Dispositif pour effectuer une division. |
JPH0720778A (ja) * | 1993-07-02 | 1995-01-24 | Fujitsu Ltd | 剰余計算装置、テーブル作成装置および乗算剰余計算装置 |
DE4332674C2 (de) * | 1993-09-25 | 2003-01-23 | Unaxis Deutschland Holding | Vorrichtung zum Arretieren eines flachen, vorzugsweise kreisscheibenförmigen Substrats am Substratteller einer Vakuumbeschichtungsanlage |
US5493522A (en) * | 1994-09-21 | 1996-02-20 | Northrop Grumman Corporation | Fast arithmetic modulo divider |
US5710730A (en) * | 1995-03-31 | 1998-01-20 | International Business Machines Corporation | Divide to integer |
JP3660075B2 (ja) * | 1996-10-04 | 2005-06-15 | 株式会社ルネサステクノロジ | 除算装置 |
US6088453A (en) * | 1997-01-27 | 2000-07-11 | Kabushiki Kaisha Toshiba | Scheme for computing Montgomery division and Montgomery inverse realizing fast implementation |
CA2228493C (en) * | 1997-02-03 | 2005-05-03 | Nippon Telegraph And Telephone Corporation | Scheme for carrying out modular calculations based on redundant binary calculation |
US6065030A (en) * | 1998-03-30 | 2000-05-16 | Conexant Systems, Inc. | Method and apparatus for implementing short-word division techniques in a multiple modulus conversion context |
JP2000132376A (ja) * | 1998-10-27 | 2000-05-12 | Fujitsu Ltd | 剰余演算方法,乗算剰余演算方法,剰余演算装置,乗算剰余演算装置及び記録媒体 |
US7277540B1 (en) * | 1999-01-20 | 2007-10-02 | Kabushiki Kaisha Toshiba | Arithmetic method and apparatus and crypto processing apparatus for performing multiple types of cryptography |
US20020055962A1 (en) * | 1999-11-12 | 2002-05-09 | Richard Schroeppel | Automatically solving equations in finite fields |
DE10021920C1 (de) * | 2000-05-05 | 2001-07-26 | Infineon Technologies Ag | Datenverarbeitungsverfahren und -Einrichtung zur Modulo-Berechnung eines Rests bei der Division |
US6763365B2 (en) * | 2000-12-19 | 2004-07-13 | International Business Machines Corporation | Hardware implementation for modular multiplication using a plurality of almost entirely identical processor elements |
-
2002
- 2002-02-12 DE DE10205713A patent/DE10205713C1/de not_active Expired - Fee Related
-
2003
- 2003-01-23 DE DE50302536T patent/DE50302536D1/de not_active Expired - Lifetime
- 2003-01-23 EP EP03739440A patent/EP1474741B1/de not_active Expired - Fee Related
- 2003-01-23 WO PCT/EP2003/000669 patent/WO2003069462A2/de active IP Right Grant
- 2003-01-23 AU AU2003244870A patent/AU2003244870A1/en not_active Abandoned
- 2003-01-23 JP JP2003568519A patent/JP4047816B2/ja not_active Expired - Fee Related
- 2003-02-12 TW TW092102937A patent/TW200304616A/zh unknown
-
2004
- 2004-08-12 US US10/917,262 patent/US7567999B2/en active Active
Also Published As
Publication number | Publication date |
---|---|
WO2003069462A2 (de) | 2003-08-21 |
EP1474741A2 (de) | 2004-11-10 |
US20050038845A1 (en) | 2005-02-17 |
DE50302536D1 (de) | 2006-04-27 |
AU2003244870A1 (en) | 2003-09-04 |
TW200304616A (en) | 2003-10-01 |
US7567999B2 (en) | 2009-07-28 |
JP2005517980A (ja) | 2005-06-16 |
DE10205713C1 (de) | 2003-08-07 |
EP1474741B1 (de) | 2006-03-01 |
AU2003244870A8 (en) | 2003-09-04 |
WO2003069462A3 (de) | 2004-04-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4582912B2 (ja) | 耐パワーシグニチャーアタック暗号法 | |
US7805480B2 (en) | Randomized modular polynomial reduction method and hardware therefor | |
US7603558B2 (en) | Montgomery transform device, arithmetic device, IC card, encryption device, decryption device and program | |
US7831650B2 (en) | Method for modular multiplication | |
US20070116270A1 (en) | Calculating unit for reducing an input number with respect to a modulus | |
US7809133B2 (en) | Randomized modular reduction method and hardware therefor | |
JP4047816B2 (ja) | 除算の結果を演算する装置および方法 | |
EP0938790B1 (en) | A method and device for executing a decrypting mechanism through calculating a standardized modular exponentiation for thwarting timing attacks | |
JP4302640B2 (ja) | 被乗数のシフトを用いて乗算を計算するための装置およびその方法、上記装置を実行するためのプログラムコードを格納した記録媒体 | |
CN1739094B (zh) | 防止隐蔽信道攻击的整数除法方法 | |
US7558817B2 (en) | Apparatus and method for calculating a result of a modular multiplication | |
JP2009505148A (ja) | 暗号化演算における反転操作を行うための回路配置及び方法 | |
US8364737B2 (en) | Device and method for calculating a result of a sum with a calculating unit with limited word length | |
CN113141255A (zh) | 用于在处理设备、对应的处理设备和计算机程序产品中对数据执行密码运算的方法 | |
KR20110095328A (ko) | 스칼라 배산기 및 스칼라 배산프로그램 | |
US7016927B2 (en) | Method and apparatus for modular multiplication | |
US7590235B2 (en) | Reduction calculations in elliptic curve cryptography | |
JP2004125891A (ja) | べき乗剰余演算器 | |
EP1639448B1 (en) | Improved inversion calculations | |
JP3779479B2 (ja) | Icカード | |
JPH11282351A (ja) | セキュリティ技術における逆元演算方法、その方法を使った演算装置、及びその方法を実行するプログラムを記録した記録媒体 | |
JP2006091086A (ja) | モンゴメリ逆元演算装置を備えた半導体装置およびicカ−ド | |
JP2004151234A (ja) | べき乗演算装置 | |
Großschädl | A new serial/parallel architecture for a low power modular multiplier | |
JP2006500615A (ja) | 向上したQuisquaterReduction |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20070116 |
|
A601 | Written request for extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20070330 |
|
RD02 | Notification of acceptance of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7422 Effective date: 20070330 |
|
A602 | Written permission of extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A602 Effective date: 20070420 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20070713 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20071030 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20071122 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20101130 Year of fee payment: 3 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 4047816 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20111130 Year of fee payment: 4 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20121130 Year of fee payment: 5 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20131130 Year of fee payment: 6 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
LAPS | Cancellation because of no payment of annual fees |