JP4717437B2 - スパイ行為に対抗して保護される逆法計算 - Google Patents

スパイ行為に対抗して保護される逆法計算 Download PDF

Info

Publication number
JP4717437B2
JP4717437B2 JP2004505873A JP2004505873A JP4717437B2 JP 4717437 B2 JP4717437 B2 JP 4717437B2 JP 2004505873 A JP2004505873 A JP 2004505873A JP 2004505873 A JP2004505873 A JP 2004505873A JP 4717437 B2 JP4717437 B2 JP 4717437B2
Authority
JP
Japan
Prior art keywords
value
auxiliary
parameter
inverse
determining
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
Application number
JP2004505873A
Other languages
English (en)
Other versions
JP2005532715A (ja
Inventor
バウエル,スフェン
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Giesecke and Devrient GmbH
Original Assignee
Giesecke and Devrient GmbH
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 Giesecke and Devrient GmbH filed Critical Giesecke and Devrient GmbH
Publication of JP2005532715A publication Critical patent/JP2005532715A/ja
Application granted granted Critical
Publication of JP4717437B2 publication Critical patent/JP4717437B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Images

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/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
    • G06F7/721Modular inversion, reciprocal or quotient calculation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2207/00Indexing scheme relating to methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F2207/72Indexing scheme relating to groups G06F7/72 - G06F7/729
    • G06F2207/7219Countermeasures against side channel or fault attacks
    • G06F2207/7223Randomisation as countermeasure against side channel attacks
    • G06F2207/7233Masking, e.g. (A**e)+r mod n
    • G06F2207/7238Operand masking, i.e. message blinding, e.g. (A+r)**e mod n; k.(P+R)
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2207/00Indexing scheme relating to methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F2207/72Indexing scheme relating to groups G06F7/72 - G06F7/729
    • G06F2207/7219Countermeasures against side channel or fault attacks
    • G06F2207/7223Randomisation as countermeasure against side channel attacks
    • G06F2207/7233Masking, e.g. (A**e)+r mod n
    • G06F2207/7247Modulo masking, e.g. A**e mod (n*r)

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)
  • Computing Systems (AREA)
  • Mathematical Physics (AREA)
  • General Engineering & Computer Science (AREA)
  • Storage Device Security (AREA)

Description

本発明は全般的には暗号法の技術分野に関し、さらに詳しくは、暗号目的のために提供される逆法計算のための技法に関する。本発明は、特に、例えば、様々な構成形態のスマートカードとして、あるいはICモジュールとして、構成することができる、携帯型データ記憶媒体における使用のために提供される。
暗号法の分野においては、例えば、特許文献1に説明されるRSAエンコードまたは署名方法に対する一対のキーの生成に、逆法計算のための方法が用いられる。RSA法は、公開キー(e,m)及び秘密キーdを用い、mは2つの大きな素数p及びqの積である。キー対を計算するため、値p,q及びeが初めに確定される。次いで、(p−1)(q−1)を法とするeの逆法値として秘密キーdが計算される。これは、数dが式:1=ed (mod (p−1)(q−1))を満たすことを意味する。計算において、秘密キーd及び法(p−1)(q−1)は秘密のままでなければならない。
一般に、与えられた2つの整数a及びnに対し、nを法とするaの逆法値は、0≦b<n及び1=ab (mod n)を満たす数bとして定義される。この種の数bはa及びnが互いに素である場合に存在する。与えられたnを法とする与えられた値aの逆法値を計算するためのアルゴリズム自体は既知である。例えば、非特許文献1の325〜327ページに、拡張ユークリッドアルゴリズムが説明されている。2進数に関して特に有利である、拡張ユークリッドアルゴリズムの変形が、非特許文献1で、339ページの練習問題35及び606ページの解答に関して321〜324ページに説明されている、スタイン(Stein)の方法である。
しかし、上述した2つの方法には、プログラムとしてのアルゴリズムの直接実施において、処理されるプログラムコード、したがって実行時間または電力消費のような物理パラメータも、入力データに大きく依存するという問題がある。したがって、電力消費曲線、プログラム実行時間またはその他の測定値の解析により、入力値a及びnに関する結論を引き出すことができる。携帯型データ記憶媒体にかかわる攻撃に関する上記及びその他の機会の例が、非特許文献2に説明されている。例として上述した方法とは別の逆法計算のための方法においても、攻撃に関する同様の機会がおそらくあり得るであろう。
入力値aまたはnの内の少なくとも1つが秘密に保たれなければならない場合に、上述したような攻撃に関する機会はセキュリティリスクを生じさせる。例えば、RSA法のためのキー対を生成する既述の例において、(p−1)(q−1)を法とするeの逆法計算中に、攻撃者が、秘密に保たれるべき法(p−1)(q−1)を、または計算結果、すなわち秘密キーdを直接に、探り出すであろう。
上記のセキュリティ問題は、逆法計算が携帯型データ記憶媒体、例えばスマートカード、またはICモジュールのプロセッサにより実行される場合に、特に重大である。その第1の理由は、この種の携帯型データ記憶媒体はセキュリティが肝要である用途に対して、例えば、金銭取引、アクセス管理または法的拘束力のある文書の署名に関係して、用いられることが多いことである。第2に、携帯型データ記憶媒体は、方法が実行されている間一般に攻撃者の所有下にあり、よって、攻撃者は秘密の保たれるべき値を探り出すためのアクセス及び解析の全ての機会を有する。
米国特許第4405829号明細書 Donald E. Knuth著,「コンピュータプログラミング技術(The Art of Computer Programming)」,第2版,第2巻,1981年,アディソン−ウエズレイ(Addison-Wesley) W. Rankl及びW. Effing著,「ICカードハンドブック(Handbuch der Chipkarten)」,第3版,1999年,ハンザー(Hanser),第8.2.4.1節(p.482−499)
したがって、本発明の課題は、スパイ行為に対抗して保全され、例えば携帯型データ記憶媒体上での暗号計算のような、セキュリティが肝要である用途に適する、逆法計算のための方法を提供することである。特に、本方法は、実行時間解析または電力消費解析による攻撃を可能な限り受け難くなっているべきである。
本発明にしたがえば、上記課題は、請求項1の特徴をもつ方法、請求項12にしたがうコンピュータプログラム製品及び請求項13にしたがう携帯型データ記憶媒体により、完全にまたはある程度は、解決される。従属請求項は本発明の好ましい構成を定める。
本発明は、入力データ(すなわち値a及び法n)を逆法計算のための方法に直接与えるのではなく、初めに入力データを適切な方法で補助値β及び補助法δに変換するという、基本アイデアに基づく。ここで、変換に影響を与える少なくとも1つの掩蔽パラメータrが、補助値β及び/または補助法δを知っていたとしても、秘密に保たれるべき入力データまたは秘密に保たれるべき入力データの一部に関する十分な情報が導出され得ないような方法で、例えば、ランダムまたは準ランダムに、あるいは別のいずれかの適する態様で、選ばれる。
次いで、補助値β及び補助法δから、それ自体は既知の逆法計算のための方法により、補助逆法値β'が決定される。この逆法計算法が初めに述べた攻撃に関する機会の内の1つでアクセス可能であるとしても、補助値β及び/または補助法δ及び/または補助逆法値β'を探り出すことは、これらが少なくともある程度は掩蔽された形態、すなわち、少なくとも1つの掩蔽パラメータrに依存する形態で初期データを含むから、攻撃者にとって何の利益もない。
最後に、初期の変換が、補助逆法値β'に依存する逆法値bを計算することにより、実効的に逆転される。少なくとも1つの掩蔽パラメータr、並びに値β及びδの内の少なくとも1つ、及び、適切であれば、別の値も、この逆変換にある程度影響する。
本発明にしたがって提供される変換及び逆変換を用いることにより、秘密に保たれるべき値は、重要な計算セクションの前に、偽装または掩蔽される。この偽装または掩蔽は、所望の結果を得るため、スパイ行為によるリスクを冒して逆法計算後に再び逆変換される。この場合に考慮されるべき攻撃に関する機会に対抗して、掩蔽及び掩蔽解除のために役立つ計算が保全される。このようにして、方法全体はスパイ行為に対抗して保全され、重要な用途にも適する。掩蔽及び掩蔽解除のために役立つ計算にはある程度の負荷がさらに必要であるが、全体として見れば、これはいかなる特別な意義ももたない。
好ましい構成においては、補助値β及び補助法δのいずれもが、それぞれ、基礎の値a及び法nと異なるという意味で、掩蔽される。他方で、本発明の別の実施形態において、これらの値の内の1つに関してのみ掩蔽を実施する形態が提供される。したがって、補助値βが値aと同じであるか、あるいは補助法δが法nと同じである。これらの構成は、特に、値a及びnの内の1つは秘密に保たれる必要がない場合に用いることができる。
好ましい構成において、掩蔽パラメータrは本方法の個々の実行のそれぞれに対して毎度ランダムに選ばれ、この場合、例えば適する乱数アルゴリズムが呼び出される。他方で、代替実施形態において、掩蔽パラメータrは、いくつかの計算に対して一定のままにしておくか、あるいは、ランダム分布に関する厳密な要件を満たさない簡単なアルゴリズムにより段階的に変えることができる。これでもスパイ行為に対抗する十分なセキュリティを生じさせるのに十分であり得る。掩蔽パラメータrの桁数は法nとほぼ同じであることが好ましい。このことは、例えば値r及びnが2進数または10進数としての長さにおいて最大で20%または最大で1/2だけ異なることを意味し得る。
掩蔽パラメータrを乗じることによる値a及び/または法nの変形が提供されることが好ましく、この場合、補助値β及び/または補助法δは積に依存して計算される。
好ましい構成においては、掩蔽パラメータrだけでなく、同様に掩蔽値β及び/またはδの計算に用いられるが、後の逆法値の決定にはもはや直接に利用されない、少なくとも1つの別の補助パラメータsが提供される。しかし、補助パラメータsは、通常、値β、β'及びδの内の少なくとも1つに影響するから、上記の計算に間接的な影響を有する。掩蔽パラメータrの上述した好ましい特徴は、好ましい構成における補助パラメータsにも同様に当てはまる。
補助値β及び補助法δは、それぞれの場合において、値aの倍数と法nの倍数の間の差として得られる。特に、式:ra=αn+β及びsn=γa+δにしたがうか、あるいは式:ra=αn+δ及びsn=γa+βにしたがう、補助値β及び補助法δの決定を提供することができる。さらに、不等式:0≦β<nまたは0≦δ<n、あるいは不等式:0≦δ<aまたは0≦β<aがそれぞれ満たされれば、これは、それぞれの場合において、剰余による1回の除法計算に対応する。
本発明にしたがうコンピュータプログラム製品は本発明にしたがう方法を実施するためのプログラム命令を有する。この種のコンピュータプログラム製品は、例えば、本発明にしたがう計算プログラムが格納されている、半導体メモリまたはディスケットまたはCD−ROMとすることができる。この種のコンピュータプログラム製品は、特にスマートカードの作成に用いるために、提供することができる。
好ましい構成において、コンピュータプログラム製品及び/または携帯型データ記憶媒体は、さらに、上述した特徴及び/または方法に関する従属請求項に述べられる特徴に対応する特徴をもつ発展形として与えられる。
本発明のさらなる特徴、利点及び目的は、以下の、実施形態例及びいくつかの代替実施形態の詳細な説明から明らかである。一枚の簡略な図面が参照される。
図1に簡略に示される方法は、携帯型データ記憶媒体の、特にスマートカードまたはICモジュールのプロセッサにより実行されるべく、提供される。この目的のため、本方法は、データ記憶媒体のROMまたはEEPROMに格納された、上記プロセッサのためのプログラム命令の形態で実施される。本実施形態例において、本方法はRSAエンコード法またはRSA署名法のためのキー対決定に用いられる。他方で、本発明の変形実施形態において、本方法は別の暗号目的に対して用いられる。
本方法はあらかじめ設定された値a及び法nから出発し、これらから逆法値b,言い換えれば、1=ab (mod n)が成立し、0≦b<nである値bを計算する。第1の工程10において、この計算のために、補助値β及び補助法δを決定するため、値a及び法nが変換される。本実施形態例において、工程10は、代替実施形態においては異なる順序であるいは完全にまたは部分的にインターリーブされて実行することもできる、4つの部分工程12,14,16,18を有する。
第1の部分工程12において、値nと桁数がほぼ同じである、ランダムな掩蔽パラメータrが決定される。それ自体は既知であり、ソフトウエアで実施される乱数発生器がこのために用いられる。部分工程14において、掩蔽パラメータrと値aの積が法nで除されて、整数の商と剰余になる。整数の商αは以降は必要とされず、一方、剰余βは以降の方法に対する補助値としてはたらく。
部分工程16及び18は上述したばかりの部分工程12及び14に対応する。部分工程16においてランダムな補助パラメータsが決定され、部分工程18において法nとの補助パラメータsの積が値aで除される。整数の商γ及び剰余δのいずれもが以降の工程で必要とされ、ここで剰余δは補助法δとしても選定される。
工程20において、それ自体は既知の逆法計算にための方法にしたがい、例えば拡張ユークリッドアルゴリズムまたはスタインの方法にしたがい、補助法δを法とする補助値βの補助逆法値β'が計算される。言い換えれば、値β'は特性:1=ββ' (mod δ)を有する。
値β及びδが互いに素ではなく、したがってβの逆法値β'が存在しないため、補助逆法値β'の計算に失敗することがおこり得る。工程20でこれがおこった場合には、工程10の初めへの復帰22が起発される。次いで新しいランダム値r及びsが選ばれる。a及びnが互いに素であれば、この種の復帰がおこる確率はほぼ40%である。したがって、過大な数の復帰22が実行されなければならなくなるということはおこりそうもない。例えば、4つより多くの乱数r及びsの新しい対が計算されなければならない確率はほぼ1%にすぎない。
a及びnが互いに素でなければ復帰22が必ず実行され、よって図1に示される方法は終了しないであろう。したがって、a及びnが互いに素であるか否かが開始時から確実ではない状況で本方法が用いられることになる場合には、復帰カウンタの使用が提供される。復帰カウンタは本方法の実行中におこる復帰22の数を監視する。復帰22の数があらかじめ設定された最大復帰数を上回ると、図1の方法は終止される。本方法の正しい実行のための別の条件は、(実際上気にする必要のない)a=1及びn=1という些細な場合の、このような場合には本方法は必ず失敗するから、排除である。
工程20における補助逆法値β'の決定後、工程24において逆法値bが計算される。この計算においては、初めに中間値δ'=(ββ'−1)/δの計算が実施され、次いで最終の計算b=β'r+δ'γ (mod n)が実施される。値bは、暗号法用途に利用できるようになっている、求められていた逆法値である。
工程10及び24は、攻撃に関する機会を少ししか提供しないで実行される計算のためのアルゴリズムが利用できるから、初めに述べた実行時間解析及び電力消費解析による攻撃に対抗して容易に保全できる。工程20における逆法計算はスパイ行為によるリスクを冒しているが、この工程の解析により、攻撃者は補助値β及び/または補助法δに関する知識を得ることができるに過ぎない。これらの値は、ランダムな掩蔽パラメータr及びランダムな補助パラメータsがβ及びδの計算にある程度の影響を及ぼしているから、秘密に保たれるべき入力値a及びnに関しては工程10で掩蔽されている。したがって、得られ得る値β及びδの知識では、攻撃者が入力値a及びnに関してセキュリティを損なういかなる結論も引き出すことはできない。
図1の方法の代替構成では、部分工程14及び18において値βと値δの役割が入れ替えられる。この場合、工程24において式:b=β'r+δ'γ (mod n)の代わりに、式:b=−(δ'r+β'γ) (mod n)が用いられる。
別の代替実施形態では、部分工程14及び/または部分工程16において、剰余による除法計算の実施の代わりに、値α及び/またはγが、ランダムに、または他のいずれかの適する方法により、選ばれる。この場合、それぞれ、部分工程14において補助値βがβ=ra−αnから得られ、部分工程18において補助法値δがδ=sn−γaから得られる。
最後に、部分工程12において掩蔽パラメータrがr=1に設定され、部分工程14において値αがα=0に設定される(したがってβ=aが成立する)か、あるいは、部分工程16において補助パラメータsがs=1に設定され、部分工程18において値γがγ=0に設定される(したがってδ=nが成立する)、本発明の構成も提供される。特に、先に述べた可能性を組み合わせることにより、別の代替実施形態を得ることができる。
本発明の一実施形態例における方法の実行のフローチャートを示す

Claims (15)

  1. 暗号法用途のためにnを法とする値aの逆法値bを決定する、プロセッサにより実行されるプログラムに実装された方法において、
    (a) 決定手段により、互いに素である補助値β及び補助法δを、前記補助値βが前記値aと異なるような態様及び/または前記補助法δが前記法nと異なるような態様で、前記値a、前記法n、少なくとも1つの掩蔽パラメータr及び少なくとも1つの補助パラメータsに少なくとも依存して決定する工程(10)であって、前記決定手段が、前記補助値β及び前記補助法δを、あらかじめ定められた値α及びγあるいは前記工程(a)で計算された値α及びγについて、式:ra=αn+β及びsn=γa+δが満たされるような態様で決定するものであり、
    (b) 前記決定手段により、前記補助法δを法とする前記補助値βの逆法値として、1=ββ’( mod δ)が成り立つように補助逆法値β'を決定する工程(20)、及び
    (c) 前記決定手段により、前記逆法値bが、δ'=(ββ'−1)/δとする式:b=β'r+δ'γ (mod n)を評価することにより決定される工程(24)、
    を有してなることを特徴とする方法。
  2. 暗号法用途のためにnを法とする値aの逆法値bを決定する、プロセッサにより実行されるプログラムに実装された方法において、
    (a) 決定手段により、互いに素である補助値β及び補助法δを、前記補助値βが前記値aと異なるような態様及び/または前記補助法δが前記法nと異なるような態様で、前記値a、前記法n、少なくとも1つの掩蔽パラメータr及び少なくとも1つの補助パラメータsに少なくとも依存して決定する工程(10)であって、前記決定手段が、前記補助値β及び前記補助法δを、あらかじめ定められた値α及びγあるいは前記工程(a)で計算された値α及びγについて、式:ra=αn+δ及びsn=γa+βが満たされるような態様で決定するものであり、
    (b) 前記決定手段により、前記補助法δを法とする前記補助値βの逆法値として、1=ββ’( mod δ)が成り立つように補助逆法値β'を決定する工程(20)、及び
    (c) 前記決定手段により、前記逆法値bが、δ'=(ββ'−1)/δとする式:b=−(δ'r+β'γ) (mod n)を評価することにより決定される工程(24)、
    を有してなることを特徴とする方法。
  3. 前記少なくとも1つの掩蔽パラメータrが、前記決定手段によりランダムに選ばれることを特徴とする請求項1または請求項2に記載の方法。
  4. 少なくとも1つの掩蔽パラメータr及び前記法nが、2進数としての長さにおいて最大で1/2だけ異なることを特徴とする請求項1から3のいずれか1項に記載の方法。
  5. 前記決定手段により、前記掩蔽パラメータrをr=1とし、前記値αをα=0とすることを特徴とする請求項1または2記載の方法。
  6. 前記決定手段により、少なくとも1つの補助パラメータsがランダムに選ばれることを特徴とする請求項1から5のいずれか1項に記載の方法。
  7. 少なくとも1つの補助パラメータs及び前記値aが、2進数としての長さにおいて最大で1/2だけ異なることを特徴とする請求項1から6のいずれか1項に記載の方法。
  8. 前記決定手段により、前記補助パラメータsをs=1とし、前記値γをγ=0とすることを特徴とする請求項1からのいずれか1項に記載の方法。
  9. 前記決定手段により、前記値aまたは前記法nに前記掩蔽パラメータrが乗じられ、その積を前記補助値β及び/または前記補助法δの計算に含めることを特徴とする請求項1または2に記載の方法。
  10. 前記決定手段により、前記補助値βが、不等式:0≦β<nが満たされるように、剰余による1回の除法計算により決定されることを特徴とする請求項1から9のいずれか1項に記載の方法。
  11. 前記決定手段により、前記補助法δが、不等式:0≦δ<aが満たされるように、剰余による1回の除法計算により決定されることを特徴とする請求項1から10のいずれか1項に記載の方法。
  12. 前記暗号法用途がRSAエンコード法またはRSA署名法におけるキー対の決定であることを特徴とする請求項1から11のいずれか1項に記載の方法。
  13. 請求項1から11のいずれか1項に記載の特徴をもつ方法をプロセッサに実行させるためのプログラム命令を有することを特徴とするコンピュータプログラム
  14. 請求項1から12のいずれか1項に記載の方法を実行するためのプログラムを保持する携帯型データ記憶媒体。
  15. 前記携帯型データ記憶媒体が、スマートカードまたはチップモジュールであることを特徴とする請求項14記載の携帯型データ記憶媒体。
JP2004505873A 2002-05-16 2003-05-13 スパイ行為に対抗して保護される逆法計算 Expired - Lifetime JP4717437B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
DE10222212.6 2002-05-16
DE10222212A DE10222212A1 (de) 2002-05-16 2002-05-16 Ausspähungsgeschützte modulare Inversion
PCT/EP2003/005011 WO2003098429A2 (de) 2002-05-16 2003-05-13 Ausspähungsgeschützte modulare inversion

Publications (2)

Publication Number Publication Date
JP2005532715A JP2005532715A (ja) 2005-10-27
JP4717437B2 true JP4717437B2 (ja) 2011-07-06

Family

ID=29413947

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2004505873A Expired - Lifetime JP4717437B2 (ja) 2002-05-16 2003-05-13 スパイ行為に対抗して保護される逆法計算

Country Status (6)

Country Link
US (1) US7474748B2 (ja)
EP (1) EP1506473B1 (ja)
JP (1) JP4717437B2 (ja)
AU (1) AU2003236642A1 (ja)
DE (1) DE10222212A1 (ja)
WO (1) WO2003098429A2 (ja)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102005024609A1 (de) * 2005-05-25 2006-11-30 Siemens Ag Bestimmung einer modularen Inversen
DE102005030286A1 (de) * 2005-06-29 2007-01-04 Giesecke & Devrient Gmbh Verwendung eines Koprozessors zur modularen Inversion
FR2897964B1 (fr) * 2006-02-28 2017-01-13 Atmel Corp Procede de calcul numerique incluant la division euclidienne
US8290151B2 (en) * 2007-10-12 2012-10-16 Infineon Technologies Ag Device and method for determining an inverse of a value related to a modulus
CN103336680B (zh) * 2013-06-27 2016-01-13 清华大学 实现二进制左移模逆算法的电路

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4405829A (en) * 1977-12-14 1983-09-20 Massachusetts Institute Of Technology Cryptographic communications system and method
WO2000042733A1 (en) * 1999-01-15 2000-07-20 Certicom Corp. Method and apparatus for masking cryptographic operations
JP2002082609A (ja) * 2000-09-06 2002-03-22 Toyo Commun Equip Co Ltd 依頼計算を用いた演算装置、及び記録媒体
JP2003513491A (ja) * 1999-10-28 2003-04-08 ブル・セー・ペー・8 物理的分析によるハッキングに対する母数指数化に基づく電子暗号ユニットの安全保護方法

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3515306B2 (ja) 1997-01-29 2004-04-05 日本電信電話株式会社 逆元演算装置
ATE325478T1 (de) * 1998-01-02 2006-06-15 Cryptography Res Inc Leckresistentes kryptographisches verfahren und vorrichtung
WO2002003608A1 (en) * 2000-06-29 2002-01-10 The State Of Oregon Acting By And Through The State Board Of Higher Education On Befalf Of The University Of Oregon Method and apparatus for incomplete modular arithmetic
DE10061697A1 (de) 2000-12-12 2002-06-27 Infineon Technologies Ag Verfahren und Vorrichtung zum Ermitteln eines Schlüsselpaars und zum Erzeugen von RSA-Schlüsseln
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
DE10143728B4 (de) 2001-09-06 2004-09-02 Infineon Technologies Ag Vorrichtung und Verfahren zum Berechnen eines Ergebnisses einer modularen Exponentiation

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4405829A (en) * 1977-12-14 1983-09-20 Massachusetts Institute Of Technology Cryptographic communications system and method
WO2000042733A1 (en) * 1999-01-15 2000-07-20 Certicom Corp. Method and apparatus for masking cryptographic operations
JP2003513491A (ja) * 1999-10-28 2003-04-08 ブル・セー・ペー・8 物理的分析によるハッキングに対する母数指数化に基づく電子暗号ユニットの安全保護方法
JP2002082609A (ja) * 2000-09-06 2002-03-22 Toyo Commun Equip Co Ltd 依頼計算を用いた演算装置、及び記録媒体

Also Published As

Publication number Publication date
US7474748B2 (en) 2009-01-06
EP1506473A2 (de) 2005-02-16
AU2003236642A1 (en) 2003-12-02
WO2003098429A2 (de) 2003-11-27
WO2003098429A3 (de) 2004-07-15
US20050157870A1 (en) 2005-07-21
DE10222212A1 (de) 2003-12-04
EP1506473B1 (de) 2013-07-17
JP2005532715A (ja) 2005-10-27

Similar Documents

Publication Publication Date Title
KR101255393B1 (ko) 타원 곡선 점 곱셈
US7603558B2 (en) Montgomery transform device, arithmetic device, IC card, encryption device, decryption device and program
US6704870B2 (en) Digital signatures on a Smartcard
US7912216B2 (en) Elliptic curve cryptosystem optimization using two phase key generation
JP4137385B2 (ja) 公開鍵および秘密鍵による暗号化方法
JP2003513491A (ja) 物理的分析によるハッキングに対する母数指数化に基づく電子暗号ユニットの安全保護方法
US20020126838A1 (en) Modular exponentiation calculation apparatus and modular exponentiation calculation method
US8160256B2 (en) Key calculation method and key agreement method using the same
US8265265B2 (en) Circuit arrangement and method for RSA key generation
US20020041683A1 (en) Method for selecting optimal number of prime factors of a modulus for use in a cryptographic system
JP4717437B2 (ja) スパイ行為に対抗して保護される逆法計算
JPH10500502A (ja) 離散対数をベースとした公開キーによる暗号化方法
JP2004226674A (ja) 情報処理方法
US11502836B2 (en) Method for performing cryptographic operations on data in a processing device, corresponding processing device and computer program product
JP4153665B2 (ja) 同一の秘密鍵の暗号アルゴリズムを使用して1つまたは複数の電子装置を保護する方法、当該方法の使用および当該電子装置
US6609141B1 (en) Method of performing modular inversion
US8533490B2 (en) Efficient storage of cryptographic parameters
KR101990861B1 (ko) 논-모듈러 승산기, 논-모듈러 승산 방법 및 계산 장치
JP3779479B2 (ja) Icカード
JP2006507516A (ja) 値の逆法計算
CN113761561B (zh) 一种基于褶积优化的sha1加密方法及装置
CN113836851A (zh) 一种ⅱ型最优正规基与多项式基转换电路
Kaminaga et al. Power analysis and countermeasure of RSA cryptosystem
KR100200906B1 (ko) 효율적인 이산대수 암호시스팀을 위한 소수 생성 방법
US20030048898A1 (en) Method of encrypting the data transmission in a data processing unit, particularly a smart card

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20060413

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20091104

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20100204

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20100212

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20100304

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20100405

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100506

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20100510

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20101019

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110119

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: 20110301

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20110330

R150 Certificate of patent or registration of utility model

Ref document number: 4717437

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: 20140408

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

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