JP4977300B2 - 暗号法及び装置 - Google Patents
暗号法及び装置 Download PDFInfo
- Publication number
- JP4977300B2 JP4977300B2 JP2001585023A JP2001585023A JP4977300B2 JP 4977300 B2 JP4977300 B2 JP 4977300B2 JP 2001585023 A JP2001585023 A JP 2001585023A JP 2001585023 A JP2001585023 A JP 2001585023A JP 4977300 B2 JP4977300 B2 JP 4977300B2
- Authority
- JP
- Japan
- Prior art keywords
- mod
- prime
- kgv
- optimal
- numbers
- 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 - Lifetime
Links
- 238000000034 method Methods 0.000 claims abstract description 80
- 238000004364 calculation method Methods 0.000 claims description 34
- 230000008569 process Effects 0.000 claims description 30
- 230000007246 mechanism Effects 0.000 claims description 9
- 230000009467 reduction Effects 0.000 claims description 5
- KKIMDKMETPPURN-UHFFFAOYSA-N 1-(3-(trifluoromethyl)phenyl)piperazine Chemical compound FC(F)(F)C1=CC=CC(N2CCNCC2)=C1 KKIMDKMETPPURN-UHFFFAOYSA-N 0.000 claims 1
- 230000008901 benefit Effects 0.000 description 3
- 238000010348 incorporation Methods 0.000 description 2
- 238000013459 approach Methods 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000018109 developmental process Effects 0.000 description 1
- 230000002708 enhancing effect Effects 0.000 description 1
- 238000005286 illumination Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
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/723—Modular exponentiation
-
- 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/7271—Fault verification, e.g. comparing two values which should be the same, unless a computational fault occurred
Landscapes
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Engineering & Computer Science (AREA)
- Computational Mathematics (AREA)
- Mathematical Analysis (AREA)
- Mathematical Optimization (AREA)
- Pure & Applied Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Mathematical Physics (AREA)
- General Engineering & Computer Science (AREA)
- Computing Systems (AREA)
- Storage Device Security (AREA)
- Mobile Radio Communication Systems (AREA)
- Complex Calculations (AREA)
- Devices For Executing Special Programs (AREA)
- Error Detection And Correction (AREA)
- Bidet-Like Cleaning Device And Other Flush Toilet Accessories (AREA)
Description
記号化及び署名の機構の形態の暗号法は、特に、高まりつつある電子商取引の重要性によりますます普及してきている。暗号法は通常、例えばプログラマブル汎用マイクロコントローラまたはその他の、例えばASIC(特定用途向けIC)の形態の、専用電子回路を備えることができる電子装置を用いて実施される。特に注目される暗号装置の形態はスマートカードであり、これはスマートカードが、技術的に適切に設計されていれば、不正アクセスに対して秘密キーデータを保護できることによる。暗号法の実行速度を高めるためにも、おこり得る全ての種類の攻撃に対して暗号法を保護するためにも、絶え間ない努力がなされている。本発明は、特にスマートカードとともに使用するに適するが、それだけには決して限定されない。むしろ、本発明は全ての種類の暗号化装置とともに実施することができる。
【0002】
数多くの既知の暗号法では、式(1):
【数1】
にしたがう法対合を実施する必要がある。ここでp及びqは素数である。法対合過程を含む特に重要な暗号法は、例えば、アルフレッド・ジェイ・メネゼス(Alfred J. Menezes),ポール・シー・ファン・オースコット(Paul C. van Ooschot)及びスコット・エイ・バンストーン(Scott C. Vanstone)著,「応用暗号技術ハンドブック(Handbook of Applied Cryptography)」,米国フロリダ州ボカラトン(Boca Raton):CRCプレス(CRC Press),1997年,p.285〜291により知られる、RSA法である。しかし、法対合の使用はRSA法に限られておらず、例えば、メネゼス等著の上記ハンドブック,p.438〜442により知られるラビン(Rabin)署名、及びメネゼス等著の上記ハンドブック,p.408〜410により知られるフィアット−シャミール(Fiat-Shamir)等化機構がある。
【0003】
法対合を含む暗号法のセキュリティは、式(1)の数Nの素因数p及びqへの因数分解の困難さに当然依存する。この問題は大きな値のNに対してのみ十分複雑であり、よって一方では、Nは可能な限り大きく選ばれるべきである。他方では、式(1)にしたがう法対合を用いて値を計算するための計算時間はNの大きさとともに単調に増加し、よって必要な計算時間を大きな値のNにもかかわらず許容できる値に制限できることが実際的な適用可能性の観点から望ましいであろう。
【0004】
例えば、等しい時間でより大きな値のNの計算を可能にする、いわゆる“中国剰余定理”を適用することにより、計算速度が4倍になることが知られている。式(1)を評価する代わりに、式(2):
【数2】
にしたがう変換が実行される。ここでE1及びE2はそれぞれ、式(3):
【数3】
及び式(4):
【数4】
で与えられる。
【0005】
中国剰余定理の適用の結果の1つは、法対合がもはやNを法としてなされないこと、すなわち、法がその数自体の素因数分解は秘密にされ、第1の部分過程の法p及び第2の部分過程の法qとして連続的に存在するに過ぎないことである。すなわち、素因数分解N=p・qの知識が秘密に保たれるべきことがこの計算規則では前提とされ、全計算過程の、本質的に第1の素因数を含む第1の計算過程(3)及び本質的に第2の素因数を含む第2の計算過程(4)への分割が導かれる。式(1)の指数dが法φ(p・q)で定められなければならず、式(2)の指数が法φ(p)またはφ(q)で定められるだけでなければならないことが、利点である。ここでφはオイラー関数を表す。
【0006】
注目すべきことには、具体的な実装暗号法が式(2)〜(4)にしたがう中国剰余定理を利用していれば、別に撹乱されてはいない計算シーケンスへの適当な技巧的侵入により撹乱された法対合の誤りのある結果からNの素因数分解に関する情報を復元し得ることによる、法対合を用いるそのような暗号法への攻撃機構が最近知られるようになった。“ベルコア(Bellcore)攻撃”と知られるこの攻撃は、例えばダン・ボネー(Dan Boneh),リチャード・エイ・デミロ(Richard A. DeMillo)及びリチャード・ジェイ・リプトン(Richard J. Lipton)著,「誤りに対する暗号プロトコルチェックの重要性について(On the importance of checking cryptographic protocols for faults)」,暗号学の進歩(Advances in Cryptology)−ユーロクリプト(EUROCRYPT),97,コンピュータサイエンス(Computer Science)1233講義録,独国ベルリン:スプリンガー(Springer),1997,に説明されている。中国剰余定理にしたがう法対合の実行において、ある、それほど大きくはない、確率で計算エラーが生じるように、クロック速度、動作電圧または照射を大きくするような物理的侵入により、記号化装置が操作される。式(2)の2つの項の内の1つだけに計算エラーが生じれば、2つの素因数p及びqを、エラーのある対合結果から復元することができる。
【0007】
中国剰余定理を用いて実施される法対合の上記の脆弱性から引き出される結論は、計算操作の結果を、この結果がさらに処理される前に、特にこの結果が何らかの形態、例えば書名の形態で出力される前に、正誤についてまずチェックを行うことである。
【0008】
“ベルコア攻撃”に対する自明な対抗手段は、計算操作を少なくとも1回繰り返すことにより上記の正誤チェックを実施することである。ランダムな計算エラーの場合には、初めの計算操作の結果がチェックのための計算操作の結果と異なると想定することができる。この手法の本質的な欠点は、1回のチェック計算により計算時間が既に2倍になっていることである。
【0009】
国際公開第A1-98/52319号パンフレットは、特に、中国剰余定理にしたがう法対合を実行する計算操作を“ベルコア攻撃”に対して防護するための方法を開示している。秘密の整数jが、例えばkを16≦k≦32とする区間[0,2k−1]の範囲内で選ばれる。次いで式(5):
【数5】
式(6):
【数6】
式(7):
【数7】
式(8):
【数8】
式(9):
【数9】
及び式(10):
【数10】
が計算される。次いで、式(11):
【数11】
が成立するか否かがチェックされる。式(11)が成立することが証明されれば、式(12):
【数12】
及び式(13):
【数13】
が既知の方法で計算され、次いで、これらから式(14):
【数14】
に対する値を、中国剰余定理を用いて決定することができる。
【0010】
この既知の方法は、必要な追加の計算時間が実質的に短いという、単純なチェック計算操作に優る利点を有する。
【0011】
この方法では、素数p及びqのいずれもにも同じ因子dが乗じられなければならない。国際公開第A1-98/52319号パンフレットは、素数p及びqに相異なる因子r及びsを乗じることができる、第2の方法を開示している。しかし、他に2つの対合がチェック計算に対して必要である。
【0012】
本発明の課題は、計算操作すなわち計算時間を節約し、同時にセキュリティを維持するかまたは高める、暗号法及び装置を提供することにある。
【0013】
上記課題は、特許請求項1または2に述べられる特徴をもつ暗号法及び特許請求項13または14に述べられる特徴をもつ暗号装置により、本発明にしたがって解決される。
【0014】
従属請求項3〜12及び15〜14は有用な発展形を示す。
【0015】
以下に述べるように、法対合における法が2進数で多くの頭の1を有すれば、ある利点をここで相異なる因子r及びsが示すから、ある演算及び論理ユニットには有利である。さらに、法対合に対して最適化されている演算及び論理ユニットが存在するが、対合のための中央処理装置から最適化された演算及び論理ユニットへのデータ転送だけがかなりのオーバーヘッドを生じさせる。本発明は、相異なる因子rおよびsによる上述の方法に比較して、対合を1つ不要にする。
【0016】
本発明にしたがえば、dがφ(kgV(r,s))に対して素であるように、例えばkを16≦k≦32とする区間[0,2k−1]の範囲内で、2つの整数r及びsが選ばれる。ここでkgV(r,s)はr及びsの最小公倍数であり、φ( )はオイラー関数である。次いで、式(15):
【数15】
式(16):
【数16】
式(17):
【数17】
式(18):
【数18】
式(19):
【数19】
及び、式(20):
【数20】
が計算される。ここでz1=xd(mod p・r)及びz2=xd(mod q・r)が成立する。中国剰余定理にしたがい、数zをz1及びz2から式(21):
【数21】
により容易に計算することができる。数r及びsは本発明にしたがいdがφ(kgV(r,s))に対して素であるように選ばれなければならない。上記状況の下で、式(22):
【数22】
にしたがう自然数eを容易に見いだすために、拡張ユークリッド互除法を用いることができる。z及びeを用いて、式(23):
【数23】
によりCが計算される。オイラー定理にしたがえば、式(24):
【数24】
が成立する。2つの値C及びx(mod kgV(r,s))を比較することにより、高い確率でエラーを確かめることができる。C≠x(mod kgV(r,s))であることが確かめられれば、法対合の結果は誤りであると見なされ、放棄されるべきである。
【0017】
RSA法においては(ラビン署名機構でも同様に)、法対合はデジタル署名を生成するため、または記号化のために実施されることになっており、法p・q及び指数dは秘密キーにしか依存しない。したがって、数d,e,r及びsを秘密キーの組込に際して1回計算し、再使用のため格納することができる。
【0018】
本発明の変形態様においては、2つの整数r及びsが同様に、例えばkを16≦k≦32とする区間[0,2k−1]の範囲内で選ばれる。2進演算及び論理ユニットに関しては、数r及びsがともに奇数であることが推奨される。さらに、区間[1,...,r−1]及び[1,...,s−1]内にあり、それぞれr及びsに対して素である、xに依存しない、2つの固定数b1及びb2が選ばれる。r及びsが互いに素でなければ、b1及びb2はさらに、条件b1=b2(mod ggT(r,s))を満足しなければならない。ここでggT(r,s)はr及びsの最大公約数を表す。
【0019】
中国剰余定理にしたがい、まず数x1が式(25):
【数25】
を用いて計算される。同様に、数x2が式(26):
【数26】
を用いて計算される。次いで、式(27):
【数27】
式(28):
【数28】
式(29):
【数29】
式(30):
【数30】
式(31):
【数31】
及び、式(32):
【数32】
が計算される。計算時間を節約するため、式(31)及び(32)の指数d_1及びd_2を、それぞれφ(r)及びφ(s)を法とする対合を実行する前に、簡約することができる。式(27)及び(29)から式(33):
【数33】
が得られ、式(28)及び(30)から式(34):
【数34】
が得られる。
【0020】
中国剰余定理にしたがい、数zをz1及びz2から式(35):
【数35】
を用いて容易に計算することができる。
【0021】
rとsが互いに素ではない場合でも、z1=C1=b1 d _ 1=b2 d _ 2=C2=z2(mod ggT(r,s))であるから、そのような数zが存在する。p及びqは互いに素であるから、式(33),(34)及び(35)から式(36):
【数36】
が得られ、よって求める数zを上で計算された値から容易に決定することができる。
【0022】
式(25),(29)及び(31)から式(37):
【数37】
が得られる。
【0023】
式(26),(30)及び(32)から式(38):
【数38】
が得られる。
【0024】
条件(37)及び(38)をチェックすることにより、エラーを高い確率で確かめることができる。条件(37)及び(38)の内の1つが侵されていれば、法対合の結果はエラーがあると見なされ、放棄されるべきである。
【0025】
国際公開第A1-98/52319号パンフレットの請求項8の方法とは対照的に、ここで提示される方法の変形態様においては、数b1及びb2が基xに依存しない。RSA法またはラビン署名機構を適用する場合、秘密キーは一般に暗号装置、例えばスマートカードに一度組み込まれ、次いで何度も使用される。これらの方法に適用される法対合においては、指数d及び法p・qが秘密キーの固定要素である。したがって、行われなければならないC1及びC2の計算は暗号装置へのキーの組込に際して一度だけであり、その後C1及びC2を装置に格納できる。これらの値の格納は2つの法対合を不要にし、国際公開第A1-98/52319号パンフレットに提示される方法に優る。
【0026】
法演算を速めるための補助ハードウエアをもつ暗号装置、例えばスマートカードは、通常の実施形態において高速加算及び/または乗算ユニットを有するが、法簡約に必要な多桁の数字による除算は、例えばドナルド・クヌース(Donald Knuth)著,「コンピュータプログラミング技法(The Art of Computer Programming)」,第2巻:準数値的アルゴリズム(Seminumerical Algorithms),第2版,アディソン−ウェスリー(Addison-Wesley),1981年,により知られるような、通常の標準的方法により実施されなければならない。除法演算を単純化するためのいくつかの既知の方法の内の1つは、積p・rの2進数表現が可能な限り多くの1を含むように、対合の前に法pに数rを乗じることである;例えばメネゼス等著の上記ハンドブック,p.598〜599を参照されたい。可能な限り多くの頭の1をもつ数による除算は、普通の数によるよりもかなり簡単である。
【0027】
乗数rは、本発明にしたがい、dがφ(r)と互いに素であるように選ばれる。本発明の上述の変形態様では、上記の互いに素であることは必要ではない。それぞれの法pに対して、特定の除算実施技法に依存する最適な乗数r最適が存在する。選ばれたrの値が最適値より若干小さい場合には、積p・rは除算を簡単に行うことができるに十分な数の頭の1をまだもっている。高い確率で、数dは、φ(r最適−i)の値の内の少なくとも1つと互いに素である。ここで,i=1,...,kであり、kは除算実施技法に依存する小さな数である。
【0028】
これが当てはまらない場合には、rを2l・rで置き換える。ここで2lは除算実施技法に依存する適当な2の羃乗である。
【0029】
したがって、同じ置換を第2の素因数qにも適用できる。(pに対する)乗数r及び(qに対する)乗数sは互いに独立に選ぶことができるから、乗数sに対しても、対応する選択が同様に可能である。
Claims (24)
- a)第1の素因数p,第2の素因数q,指数d,及び基xによる法対合E:E=xd(mod p・q)を含む計算過程を実行する対合装置を少なくとも1つ有する暗号装置が実施する暗号方法であって:
b)前記暗号装置が、前記法対合を実行するため、dがφ(kgV(r,s))に対して素であるという条件の下に、2つの自然数r及びsを選び、以下の計算過程:
x1=x(mod p・r)
x2=x(mod q・s)
d_1=d(mod φ(q・r))
d_2=d(mod φ(q・s))
z1=x1 d_1(mod p・r)
z2=x2 d_2(mod q・s)
を実行する;ここでφ( )はオイラー関数であり、kgV(r,s)はrとsの最小公倍数である;
c)次に、前記暗号装置が、数zを、中国余剰定理にしたがい、z1及びz2から:
z=z1(mod p・r);z=z2(mod q・s)
を用いて計算する;
d)次に、前記暗号装置が、前記対合の結果Eをp・qを法とするzの簡約により計算する;
e) 次に、前記暗号装置が、前記先に計算されたz,したがって前記結果Eを、チェック過程において計算エラーについてチェックする;
ことを含み:
f)前記チェック過程において以下の計算操作:
f1)前記暗号装置が、拡張ユークリッド互除法を用いて:
e・d=1(mod φ(kgV(r,s)))
であることを特徴とする最小の可能な自然数eを計算する;
f2)次に、前記暗号装置が、
C=ze(modkgV(r,s))
によりCの値を計算する;
f3)次に、前記暗号装置が、xの値とkgV(r,s)を法とするCの値とを比較して、x≠C(mod kgV(r,s))であれば、前記法対合Eを誤りとして廃棄する;
ことを特徴とする暗号方法。 - a)第1の素因数p,第2の素因数q,指数d,及び基xによる法対合E:E=xd(mod p・q)を含む計算過程を実行する対合装置を少なくとも1つ有する暗号装置が実施する暗号方法であって:
b)前記暗号装置が、前記法対合を実行するため、2つの自然数r及びs,並びに、それぞれが区間[1,...,r−1]及び[1,...,s−1]内にあって、r及びsに対して素である2つの数b1及びb2を選び、b1及びb2は条件:
b1=b2(mod ggT(r,s))
を満足する;ここでggT(r,s)はrとsの最大公約数を表す;
c)前記暗号装置が、前記2つの数b1及びb2を用いて、中国剰余定理にしたがい、以下の条件
x1=x(mod p),x1=b1(mod r)
x2=x(mod q),x2=b2(mod s)
を満足する値x1及びx2を計算し、次に、以下の計算過程:
d_1=d(mod φ(p))
d_2=d(mod φ(q))
z1=x1 d_1(mod p・r)
z2=x2 d_2(mod q・s)
を実行する;ここでφ( )はオイラー関数を表す;
d)次に前記暗号装置が、数zを、中国剰余定理にしたがい、z1及びz2から:
z=z1(mod p・r);z=z2(mod q・s);
を用いて計算する;
e)次に、前記暗号装置が、前記対合の結果Eをp・qを法とするzの簡約により計算する;
f)前記暗号装置が、前記先に計算されたzを(したがって、前記結果Eも自動的に)、チェック過程において計算エラーについてチェックする;
ことを含み:
g)前記チェック過程が以下の計算操作:
g1)前記暗号装置が、下式:
C1=b1 d_1(mod r)
C2=b2 d_2(mod s)
により数C1及びC2を計算する;ここでd_1及びd_2は、法対合を実行する前に、それぞれφ(r)及びφ(s)を法として簡約される;
g2)前記暗号装置が、z1の値とrを法とするC1の値の比較及びz2の値とsを法とするC2の値の比較を行い、C1≠z1(mod r)またはC2≠z2(mod s)が成立すれば、前記法対合の結果Eを誤りとして廃棄する;
を含む;
ことを特徴とする暗号方法。 - 前記数r及びsが奇数であることを特徴とする請求項2記載の暗号方法。
- 前記数r及びsが、kを16≦k≦32とする区間[0,2k−1]の範囲内で選ばれることを特徴とする請求項1から3いずれか1項記載の暗号方法。
- 前記数r及びsの内の少なくとも1つが、積p・rまたは積q・sの2進数表示が可能な限り多くの頭の1を含むように選ばれることを特徴とする請求項1記載の暗号方法。
- 前記数r及びsのいずれもが、積p・r及び積q・sの2進数表示が可能な限り多くの頭の1を含むように選ばれることを特徴とする請求項1又は5記載の暗号方法。
- 請求項5及び6記載の暗号方法において:
a)第1の部分過程において、dがφ(kgV(r,s))に対して素であるという条件による制限を受けることなく、前記数r及びsのそれぞれに対して対応する最適な数r最適及びs最適の内の少なくとも1つが初めに選ばれる;及び
b)第2の部分過程において、dがφ(kgV(r,s))に対して素であるように、隣り合う値r=r最適−i及びs=s最適−i,i=0,1,...,k,が選ばれる;
ことを特徴とする暗号方法。 - 請求項5及び6記載の暗号方法において:
a)第1の部分過程において、dがφ(kgV(r,s))に対して素であるという条件による制限を受けることなく、それぞれが前記数r及びsのそれぞれに対応する最適な数r最適及びs最適が選ばれる;及び
b)第2の部分過程において、dがφ(kgV(r,s))に対して素であるように、値r=2l・r最適及びs=2l・s最適,l=0,1,...,j,が選ばれる;
ことを特徴とする暗号方法。 - 請求項5及び6記載の暗号方法において:
a)第1の部分過程において、dがφ(kgV(r,s))に対して素であるという条件による制限を受けることなく、数r最適及びs最適の内の少なくとも1つが初めに選ばれる;
b)第2の部分過程において、i=0,1,...,kに対してそのような値が存在すれば、dがφ(kgV(r,s))に対して素であるように、隣り合う値r=r最適−i及びs=s最適−i,i=0,1,...,k,が選ばれる;及び
c)前記第2の部分過程で選ばれる値がなかった場合には、第3の部分過程において、dがφ(kgV(r,s))に対して素であるように、値r=2l・r最適及びs=2l・s最適,l=0,1,...,j,が選ばれる;
ことを特徴とする暗号方法。 - 前記暗号方法がRSA法を含むことを特徴とする請求項1から9いずれか1項記載の暗号方法。
- 前記暗号方法がラビン署名機構を含むことを特徴とする請求項1から10いずれか1項記載の暗号方法。
- 前記暗号方法がフィアット−シャミール等化機構を含むことを特徴とする請求項1から11いずれか1項記載の暗号方法。
- 暗号装置において:
a) 第1の素因数p,第2の素因数q,指数d,及び基xによる法対合E:E=xd(mod p・q)を含む計算過程を実行する対合装置を少なくとも1つ有する暗号装置であって、前記暗号装置において:
b)前記法対合を実行するため、dがφ(kgV(r,s))に対して素であるという条件の下に、2つの自然数r及びsが選ばれ、以下の計算過程:
x1=x(mod p・r)
x2=x(mod q・s)
d_1=d(mod φ(q・r))
d_2=d(mod φ(q・s))
z1=x1 d_1(mod p・r)
z2=x2 d_2(mod q・s)
が実行される;ここでφ( )はオイラー関数であり、kgV(r,s)はrとsの最小公倍数である;
c)次に数zが、中国余剰定理にしたがい、z1及びz2から:
z=z1(mod p・r);z=z2(mod q・s)
を用いて計算される;
d)次に、前記対合の結果Eがp・qを法とするzの簡約により計算される;
e)次に、前記先に計算されたzが(したがって前記結果Eも自動的に)、チェック過程において計算エラーについてチェックされる;
及び
f)前記チェック過程が以下の計算操作:
f1)拡張ユークリッド互除法を用いて:
e・d=1(mod φ(kgV(r,s)))
であることを特徴とする最小の可能な自然数eを計算する;
f2)次に:
C=ze(modkgV(r,s))
によりCの値を計算する;
f3)次に、xの値とkgV(r,s)を法とするCの値とを比較して、x≠C(mod kgV(r,s))であれば、前記法対合Eが誤りとして廃棄される;
を含む;
ことを特徴とする暗号装置。 - 暗号装置において:
a)第1の素因数p,第2の素因数q,指数d,及び基xによる法対合E:E=xd(mod p・q)を含む計算過程を実行する対合装置を少なくとも1つ有する暗号装置であって、前記暗号装置において:
b)前記法対合を実行するため、2つの自然数r及びs,並びに、それぞれが区間[1,...,r−1]及び[1,...,s−1]内にあって、r及びsに対して素である2つの数b1及びb2が選ばれ、b1及びb2は条件:
b1=b2(mod ggT(r,s))
を満足する;ここでggT(r,s)はrとsの最大公約数を表す;
c)前記2つの数b1及びb2を用いて、中国剰余定理にしたがい、以下の条件:
x1=x(mod p),x1=b1(mod r)
x2=x(mod q),x2=b2(mod s)
を満足する値x1及びx2が計算され、次に、以下の計算過程:
d_1=d(mod φ(p))
d_2=d(mod φ(q))
z1=x1 d_1(mod p・r)
z2=x2 d_2(mod q・s)
が実行される;ここでφ( )はオイラー関数を表す;
d)次に数zが、中国剰余定理にしたがい、z1及びz2から:
z=z1(mod p・r);z=z2(mod q・s);
を用いて計算される;
e)次に、前記対合の結果Eがp・qを法とするzの簡約により計算される;
f)前記先に計算されたzが(したがって、前記結果Eも自動的に)、チェック過程において計算エラーについてチェックされる;
を含み:
g)前記チェック過程が以下の計算操作:
g1)下式:
C1=b1 d_1(mod r)
C2=b2 d_2(mod s)
により数C1及びC2を計算する;ここでd_1及びd_2は、それぞれφ(r)及びφ(s)を法とする法対合を実行する前に簡約される;
g2)z1の値とrを法とするC1の値の比較及びz2の値とsを法とするC2の値の比較のいずれをも行い、C1≠z1(mod r)またはC2≠z2(mod s)が成立すれば、前記法対合の結果Eは誤りとして廃棄される;
を含む;
ことを特徴とする暗号装置。 - 前記数r及びsが奇数であることを特徴とする請求項14記載の暗号装置。
- 前記数r及びsがkを16≦k≦32とする区間[0,2k−1]の範囲内で選ばれることを特徴とする請求項13から15いずれか1項記載の暗号装置。
- 前記数r及びsの内の少なくとも1つが、積p・rまたは積q・sの2進数表示が可能な限り多くの頭の1を含むように選ばれることを特徴とする請求項13記載の暗号装置。
- 前記数r及びsのいずれもが、積p・r及び積q・sの2進数表示が可能な限り多くの頭の1を含むように選ばれることを特徴とする請求項13又は17記載の暗号装置。
- 請求項17及び18記載の暗号装置において:
a)第1の部分過程において、dがφ(kgV(r,s))に対して素であるという条件による制限を受けることなく、前記数r及びsのそれぞれに対して対応する最適な数r最適及びs最適の内の少なくとも1つが初めに選ばれる;及び
b)第2の部分過程において、dがφ(kgV(r,s))に対して素であるように、隣り合う値r=r最適−i及びs=s最適−i,i=0,1,...,k,が選ばれる;
ことを特徴とする暗号装置。 - 請求項17及び18記載の暗号装置において:
a)第1の部分過程において、dがφ(kgV(r,s))に対して素であるという条件による制限を受けることなく、それぞれが前記数r及びsのそれぞれに対応する最適な数r最適及びs最適が選ばれる;及び
b)第2の部分過程において、dがφ(kgV(r,s))に対して素であるように、値r=2l・r最適及びs=2l・s最適,l=0,1,...,j,が選ばれる;
ことを特徴とする暗号装置。 - 請求項17及び18記載の暗号装置において:
a)第1の部分過程において、dがφ(kgV(r,s))に対して素であるという条件による制限を受けることなく、数r最適及びs最適の内の少なくとも1つが初めに選ばれる;
b)第2の部分過程において、i=0,1,...,kに対してそのような値が存在すれば、dがφ(kgV(r,s))に対して素であるように、隣り合う値r=r最適−i及びs=s最適−i,i=0,1,...,k,が選ばれる;及び
c)前記第2の部分過程で選ばれる値がなかった場合には、第3の部分過程において、dがφ(kgV(r,s))に対して素であるように、値r=2l・r最適及びs=2l・s最適,l=0,1,...,j,が選ばれる;
ことを特徴とする暗号装置。 - 前記暗号装置がRSA法を含むことを特徴とする請求項13から21いずれか1項記載の暗号装置。
- 前記暗号装置がラビン署名機構を含むことを特徴とする請求項13から22いずれか1項記載の暗号装置。
- 前記暗号装置がフィアット−シャミール等化機構を含むことを特徴とする請求項13から23いずれか1項記載の暗号装置。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE10024325A DE10024325B4 (de) | 2000-05-17 | 2000-05-17 | Kryptographisches Verfahren und kryptographische Vorrichtung |
DE10024325.8 | 2000-05-17 | ||
PCT/EP2001/005532 WO2001088693A2 (de) | 2000-05-17 | 2001-05-15 | Kryptographisches verfahren und kryptographische vorrichtung |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2003533752A JP2003533752A (ja) | 2003-11-11 |
JP4977300B2 true JP4977300B2 (ja) | 2012-07-18 |
Family
ID=7642491
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2001585023A Expired - Lifetime JP4977300B2 (ja) | 2000-05-17 | 2001-05-15 | 暗号法及び装置 |
Country Status (12)
Country | Link |
---|---|
US (1) | US7227947B2 (ja) |
EP (1) | EP1290545B1 (ja) |
JP (1) | JP4977300B2 (ja) |
CN (1) | CN1429360A (ja) |
AT (1) | ATE309569T1 (ja) |
AU (2) | AU6596701A (ja) |
BR (1) | BR0110923A (ja) |
CA (1) | CA2409200C (ja) |
DE (2) | DE10024325B4 (ja) |
MX (1) | MXPA02011222A (ja) |
RU (1) | RU2276465C2 (ja) |
WO (1) | WO2001088693A2 (ja) |
Families Citing this family (18)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1454260B1 (de) | 2001-10-17 | 2005-06-01 | Infineon Technologies AG | Verfahren und vorrichtung zum absichern einer exponentiations-berechnung mittels dem chinesischen restsatz (crt) |
WO2003034649A2 (de) | 2001-10-17 | 2003-04-24 | Infineon Technologies Ag | Verfahren und vorrichtung zum absichern einer berechnung in einem kryptographischen algorithmus |
DE10162496C5 (de) * | 2001-10-17 | 2009-02-26 | Infineon Technologies Ag | Verfahren und Vorrichtung zum Absichern einer Berechnung in einem kryptographischen Algorithmus |
WO2004032411A1 (de) * | 2002-09-11 | 2004-04-15 | Giesecke & Devrient Gmbh | Geschützte kryptographische berechnung |
US7840806B2 (en) * | 2002-10-16 | 2010-11-23 | Enterprise Information Management, Inc. | System and method of non-centralized zero knowledge authentication for a computer network |
US8239917B2 (en) * | 2002-10-16 | 2012-08-07 | Enterprise Information Management, Inc. | Systems and methods for enterprise security with collaborative peer to peer architecture |
ATE479142T1 (de) * | 2003-10-14 | 2010-09-15 | Panasonic Corp | Datenumsetzer |
US7213766B2 (en) | 2003-11-17 | 2007-05-08 | Dpd Patent Trust Ltd | Multi-interface compact personal token apparatus and methods of use |
US7762470B2 (en) | 2003-11-17 | 2010-07-27 | Dpd Patent Trust Ltd. | RFID token with multiple interface controller |
US7597250B2 (en) | 2003-11-17 | 2009-10-06 | Dpd Patent Trust Ltd. | RFID reader with multiple interfaces |
FR2862454A1 (fr) * | 2003-11-18 | 2005-05-20 | Atmel Corp | Methode de reduction modulaire aleatoire et equipement associe |
WO2008104482A2 (en) * | 2007-02-27 | 2008-09-04 | Thomson Licensing | A method and a device for generating compressed rsa moduli |
EP2697786B1 (en) * | 2011-04-13 | 2017-10-04 | Nokia Technologies Oy | Method and apparatus for identity based ticketing |
DE102011117236A1 (de) * | 2011-10-28 | 2013-05-02 | Giesecke & Devrient Gmbh | Effiziente Primzahlprüfung |
CN104123431B (zh) * | 2013-04-24 | 2018-09-14 | 国民技术股份有限公司 | 一种元素的模逆计算方法及装置 |
CN107251018B (zh) | 2014-12-10 | 2021-12-03 | 凯恩迪股份有限公司 | 用于基于组合超图形的数据表示和操作的装置和方法 |
US9652200B2 (en) * | 2015-02-18 | 2017-05-16 | Nxp B.V. | Modular multiplication using look-up tables |
US11005654B2 (en) | 2019-05-14 | 2021-05-11 | Google Llc | Outsourcing exponentiation in a private group |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
FR2737369A1 (fr) * | 1995-07-26 | 1997-01-31 | Trt Telecom Radio Electr | Systeme de communication de messages cryptes selon un procede de type r.s.a. |
GB2318892B (en) * | 1996-10-31 | 2001-07-11 | Motorola Ltd | Co-processor for performing modular multiplication |
US5991415A (en) * | 1997-05-12 | 1999-11-23 | Yeda Research And Development Co. Ltd. At The Weizmann Institute Of Science | Method and apparatus for protecting public key schemes from timing and fault attacks |
-
2000
- 2000-05-17 DE DE10024325A patent/DE10024325B4/de not_active Expired - Fee Related
-
2001
- 2001-05-15 JP JP2001585023A patent/JP4977300B2/ja not_active Expired - Lifetime
- 2001-05-15 EP EP01943373A patent/EP1290545B1/de not_active Expired - Lifetime
- 2001-05-15 DE DE50108011T patent/DE50108011D1/de not_active Expired - Lifetime
- 2001-05-15 US US10/275,947 patent/US7227947B2/en not_active Expired - Fee Related
- 2001-05-15 BR BR0110923-5A patent/BR0110923A/pt not_active IP Right Cessation
- 2001-05-15 CN CN01809690.5A patent/CN1429360A/zh active Pending
- 2001-05-15 AU AU6596701A patent/AU6596701A/xx active Pending
- 2001-05-15 MX MXPA02011222A patent/MXPA02011222A/es active IP Right Grant
- 2001-05-15 AU AU2001265967A patent/AU2001265967B2/en not_active Expired
- 2001-05-15 AT AT01943373T patent/ATE309569T1/de not_active IP Right Cessation
- 2001-05-15 WO PCT/EP2001/005532 patent/WO2001088693A2/de active IP Right Grant
- 2001-05-15 CA CA2409200A patent/CA2409200C/en not_active Expired - Lifetime
- 2001-05-15 RU RU2002133218/09A patent/RU2276465C2/ru not_active IP Right Cessation
Also Published As
Publication number | Publication date |
---|---|
ATE309569T1 (de) | 2005-11-15 |
EP1290545A2 (de) | 2003-03-12 |
US7227947B2 (en) | 2007-06-05 |
WO2001088693A2 (de) | 2001-11-22 |
JP2003533752A (ja) | 2003-11-11 |
EP1290545B1 (de) | 2005-11-09 |
DE10024325A1 (de) | 2001-12-06 |
AU6596701A (en) | 2001-11-26 |
AU2001265967B2 (en) | 2005-11-24 |
CA2409200C (en) | 2010-02-09 |
CN1429360A (zh) | 2003-07-09 |
WO2001088693A3 (de) | 2002-02-28 |
MXPA02011222A (es) | 2003-06-06 |
BR0110923A (pt) | 2003-03-11 |
US20040028221A1 (en) | 2004-02-12 |
CA2409200A1 (en) | 2002-11-18 |
DE10024325B4 (de) | 2005-12-15 |
RU2276465C2 (ru) | 2006-05-10 |
DE50108011D1 (de) | 2005-12-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4977300B2 (ja) | 暗号法及び装置 | |
EP1889391B1 (en) | Scalar recoding for elliptic curve point multiplication | |
US6658569B1 (en) | Secret key cryptographic process for protecting a computer system against attacks by physical analysis | |
EP1815636B1 (en) | New trapdoor one-way function on elliptic curves and its application to asymmetric encryption and shorter signatures | |
US7912216B2 (en) | Elliptic curve cryptosystem optimization using two phase key generation | |
JP4662802B2 (ja) | 計算方法、計算装置及びコンピュータプログラム | |
JP4137385B2 (ja) | 公開鍵および秘密鍵による暗号化方法 | |
JP5365624B2 (ja) | 電力解析攻撃への対策機能を備えた復号装置、プログラム、及び復装置を組み込んだ組込機器装置 | |
US6404890B1 (en) | Generating RSA moduli including a predetermined portion | |
US20100177886A1 (en) | Information security device | |
EP0952697B1 (en) | Elliptic curve encryption method and system | |
US20040148325A1 (en) | Information processing means | |
US7983415B2 (en) | Method for performing iterative scalar multiplication which is protected against address bit attack | |
Flori et al. | Diversity and transparency for ECC | |
JP4616169B2 (ja) | モンゴメリ乗算剰余における変換パラメータの計算装置、方法およびそのプログラム | |
JP4598269B2 (ja) | 楕円曲線上の高速有限体演算 | |
CA2288767A1 (fr) | Generateur pseudo-aleatoire base sur une fonction de hachage pour systemes cryptographiques necessitant le tirage d'aleas | |
JP3796867B2 (ja) | 素数判定方法および装置 | |
US11973866B2 (en) | Cryptographic processing method, related electronic device and computer program | |
Neves et al. | Degenerate curve attacks | |
Kim et al. | SPA countermeasure based on unsigned left-to-right recodings | |
Shukla et al. | A Comparative analysis of the attacks on public key RSA cryptosystem | |
Bosselaers et al. | COMSET | |
JP2007316491A (ja) | べき乗演算装置、復号化装置及び署名生成装置 | |
Bosselaers et al. | RSA |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20080515 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20110419 |
|
A601 | Written request for extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20110719 |
|
A602 | Written permission of extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A602 Effective date: 20110726 |
|
A601 | Written request for extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20110819 |
|
A602 | Written permission of extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A602 Effective date: 20110826 |
|
A601 | Written request for extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20110920 |
|
A602 | Written permission of extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A602 Effective date: 20110928 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20111019 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20111122 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20120222 |
|
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: 20120321 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20120416 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 4977300 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: 20150420 Year of fee payment: 3 |
|
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 |
|
S111 | Request for change of ownership or part of ownership |
Free format text: JAPANESE INTERMEDIATE CODE: R313113 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
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 |