JP2003502905A - 暗号演算に対するパワーアタックおよびタイミングアタックへの対策 - Google Patents
暗号演算に対するパワーアタックおよびタイミングアタックへの対策Info
- Publication number
- JP2003502905A JP2003502905A JP2001504109A JP2001504109A JP2003502905A JP 2003502905 A JP2003502905 A JP 2003502905A JP 2001504109 A JP2001504109 A JP 2001504109A JP 2001504109 A JP2001504109 A JP 2001504109A JP 2003502905 A JP2003502905 A JP 2003502905A
- Authority
- JP
- Japan
- Prior art keywords
- transmission
- processing
- algorithm
- unnecessary
- key
- 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.)
- Pending
Links
- 238000012545 processing Methods 0.000 claims abstract description 47
- 230000009467 reduction Effects 0.000 claims abstract description 8
- 238000000034 method Methods 0.000 claims description 57
- 230000005540 biological transmission Effects 0.000 claims description 40
- 230000008569 process Effects 0.000 claims description 27
- 230000006870 function Effects 0.000 claims description 4
- 238000012544 monitoring process Methods 0.000 description 7
- 230000008901 benefit Effects 0.000 description 5
- 238000012937 correction Methods 0.000 description 3
- 238000010586 diagram Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- TVZRAEYQIKYCPH-UHFFFAOYSA-N 3-(trimethylsilyl)propane-1-sulfonic acid Chemical compound C[Si](C)(C)CCCS(O)(=O)=O TVZRAEYQIKYCPH-UHFFFAOYSA-N 0.000 description 1
- 235000002567 Capsicum annuum Nutrition 0.000 description 1
- 240000004160 Capsicum annuum Species 0.000 description 1
- 230000015556 catabolic process Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 239000012141 concentrate Substances 0.000 description 1
- 230000001186 cumulative effect Effects 0.000 description 1
- 238000012217 deletion Methods 0.000 description 1
- 230000037430 deletion Effects 0.000 description 1
- 239000000463 material Substances 0.000 description 1
- 230000005055 memory storage Effects 0.000 description 1
- 239000000203 mixture Substances 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/30—Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/30003—Arrangements for executing specific machine instructions
- G06F9/30007—Arrangements for executing specific machine instructions to perform operations on data operands
- G06F9/3001—Arithmetic instructions
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/002—Countermeasures against attacks on cryptographic mechanisms
- H04L9/003—Countermeasures against attacks on cryptographic mechanisms for power analysis, e.g. differential power analysis [DPA] or simple power analysis [SPA]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/002—Countermeasures against attacks on cryptographic mechanisms
- H04L9/005—Countermeasures against attacks on cryptographic mechanisms for timing attacks
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/30—Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy
- H04L9/3006—Public 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/3013—Public 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/30—Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy
- H04L9/3006—Public 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/302—Public 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 integer factorization problem, e.g. RSA or quadratic sieve [QS] schemes
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computing Systems (AREA)
- Signal Processing (AREA)
- Computer Networks & Wireless Communication (AREA)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- Software Systems (AREA)
- Mathematical Optimization (AREA)
- General Engineering & Computer Science (AREA)
- Pure & Applied Mathematics (AREA)
- Mathematical Analysis (AREA)
- Computational Mathematics (AREA)
- Storage Device Security (AREA)
- Power Sources (AREA)
Abstract
Description
,909号の優先権の利益を主張する。
グ技術およびタイミングモニタリング技術の使用による、暗号システムにおける
秘密鍵の解読防止に関する。
のにかかる時間を監視することにより、セキュアプロセッサから暗号鍵情報を得
ることができると分かっている。更に、その様な演算中のパワーを監視すること
は、プロセッサの安全性を攻撃する1つの方法として使用され得る。これは、例
えば、乗算および平方化(squaring)の機能が、異なる量の時間とパワ
ーを使用する場合に起こり得る。したがって、攻撃を仕掛けようとする者は、多
くの異なるメッセージをセキュアデバイスに入力するのに必要な時間およびパワ
ーを探知することで、秘密鍵を解読し得る。パワー使用および時間使用を監視で
きるという状態が、結局は、鍵を明らかにし得る。
対策が存在するが、これらの対策は両方のタイプのモニタリングに対して有効な
技術を生み出していない。また、これらの対策の使用は、大量のメモリ、プロセ
ッササイクル、追加の回路、パワー、またはその他の資源を必要とし得る。この
ことは、例えば、セキュアプロセッサが、パワー、スピード、および回路に使用
可能な表面積が重要な、バッテリー給電型「スマートカード」内等の、電力制限
の環境下にある場合、好ましくない。
ニタリングアタックの両方に有効な対策技術を提供することが望ましい。パフォ
ーマンスペナルティの制限を受けつつ、パワーアタックおよびタイミングアタッ
クに対抗することも望ましい。
よび/またはパワー使用を偽装する。例えば、本発明のある実施形態は、不必要
な数理的演算および/またはデータの不必要な格納を行って、アルゴリズムにお
いて数理的演算または格納が実際に行われたかどうかを偽装する。エミュレート
された乗算によって使用されるパワーおよびプロセッササイクル時間が効率的な
まま維持されるように、エミュレートされた演算の合計数を制御し得る。
ムにおけるパワー使用および時間使用を偽装する方法を提供する。プロセッサは
エミュレートされた乗算演算を行って、鍵の1つ以上のビットをマスクする。本
発明のこの実施形態は、乗算演算が行われるべきか行われるべきでないかを鍵が
指示したかどうかを偽装するという点で、有利であり得る。不必要な乗算演算が
原因で、鍵に含まれるビットの値に関わらず、攻撃者は予測不可能な時間使用お
よび同様のパワー使用を観測する。したがって、鍵の値は安全に維持される。さ
らなる処理として、ダミーメモリロケーションに、エミュレートされた乗算の結
果が格納され得る。必要な乗算/格納の機能が鍵によって指示される場合に、続
いて行われる手順をさらにエミュレートする。
れば、当業者に明らかになる。本発明は開示される詳細に限定されず、本発明の
趣旨および添付のクレームの範囲内にあるそのような改変例および変更例のすべ
てを含むことが理解される。
必要としない他の暗号システムにも適用し得ることを理解されたい。例えば、本
発明は、当業者の言うところの、秘密鍵に基づくシステム、特に離散的対数シス
テムおよび整数因数分解システムに使用し得る。しかし、復号化の例を用いるこ
とは本発明を説明するのに役立つ。
すフローチャートを示す。図1において、まずメッセージが暗号化される(10
0)。暗号化演算は、当業者によってよく理解される、いろいろな暗号化方法に
よって達成し得る。メッセージが暗号化された後、目的地に送信される(104
)。この送信は単なる点から点への送信だけではなく、暗号化された送信が目的
のエンドユーザーに届くまでにもっと複雑なルーティングを含むと想定される。
最終的に、暗号化された送信は受信される(108)。受信後、例えば、メッセ
ージを復号化することによって、送信の処理が開始される。図1に示すように、
暗号化されたメッセージが復号化される間(120)、メッセージを復号化する
のに必要な時間が偽装され(112)、復号化するのに必要なパワーが偽装され
る(116)。この様態で、本発明はタイミングアタックとパワーアタックとの
両方が攻撃者によって行われるのを防止する。さらに、そのようなパワーアタッ
クおよびタイミングアタックに抵抗することは同時に達成され得る。
ある。すなわち、図2において、エンドユーザーはまず、送信、例えば暗号化さ
れた送信を受信する(200)。次いで、暗号アルゴリズム、例えば復号化アル
ゴリズムが送信に適用されて、データが処理される(204)。しばしば、これ
は同じ様態で、しかし、異なる結果を生成する異なる「鍵」(つまり数字)を使
用して演算するアルゴリズムによって達成される。例えば、モジュラー指数アル
ゴリズムが実行される場合、公開鍵および秘密鍵が使用される。しかし、各鍵を
使用する場合の基本的数理的アルゴリズムは同じである。様々な暗号アルゴリズ
ムのさらなる背景については、Bruce Schneierによる、Appl ied Cryptography 、Secnd Edition、John
Wiley&Sons,Inc.、1996を参照し得る。本発明書中、この文
献の内容を参考として援用する。引き続き、図2を参照する。復号化アルゴリズ
ムを適用しつつ、追加処理を行ってパワー使用および時間使用を偽装する(20
8)。これらの追加処理はアルゴリズム自体の処理中に行われると想定されるが
、他の実施形態ではアルゴリズムが完了した後に行われ得る。この場合もまた、
復号化処理は単なる一例に過ぎず、本発明は他の暗号処理、特に秘密鍵システム
に使用され得る。
して行われる追加処理である。例えば、そのような処理は全く不必要な追加の数
理的演算の実行を含み得る。その上、その処理は不必要な、すなわちアルゴリズ
ムの通常の機能に必要とされない、メモリへの格納を含み得る。同様に、追加処
理の1つは、多くの暗号アルゴリズムの一部として、しばしば行われる、モジュ
ラー削減演算を含み得る。可能な場合、アルゴリズムの必要なステップを行うの
と同じ回路を用いて、不必要なステップを同様に行うことにより、偽装が得られ
る。そのような回路の使用は、追加資源の使用を減少し、そして同様のパワーお
よび予想し得ない時間使用のシグニチャーを生成する。なぜなら、同じ構成要素
を用いて必要な処理および不必要な処理を達成するからである。エミュレートさ
れ得る他のタイプの処理は、当業者に明らかである。
データを復号化)するのに必要な時間および/または送信を処理するのに必要な
パワーを監視している攻撃者がだまされるという点にある。実行中の追加処理が
暗号アルゴリズムの一部として行われると期待される条件付きの処理である場合
に、特に真実である。例えば、秘密鍵システムにおけるモジュラー指数アルゴリ
ズムのアプリケーションが挙げられる。秘密鍵のビットの値に応じて乗算演算が
行われると想定される。例えば、秘密鍵のビットの値が「1」の場合、関連する
乗算演算が行われる。秘密鍵のビットの値が「0」の場合、関連する乗算は行わ
れない。したがって、攻撃者がこの対応する乗算演算が行われるか行われないか
を監視することにより、鍵を復号化しようとする。当業者が気付くように、様々
な個々のパワーアタックおよびタイミングアタックはそのような復号化を行うと
想定される。したがって、乗算はビットの値が「0」または「1」であるかどう
かを条件とするので、攻撃者はビットの値に関わらず乗算を常に行う処理によっ
てだまされる。特に同じ回路が使用される場合にあてはまる。この様態で、攻撃
者は乗算の結果が実際に使用されたのか、使用されなかったのか、迷うことにな
る。
にこの処理を進め得る。例えば、一旦必要な乗算が達成されると、乗算の結果の
、メモリへの格納がしばしば発生する。エミュレートされた(または不必要な)
乗算が行われた場合も、その結果がメモリに同様に格納され得る。メモリに格納
された結果はアルゴリズムによって必要とされないが、演算を行うのにパワーお
よび時間を使用することは、攻撃者が復号化鍵の値を復号化することを阻止する
のに役立つ。
により、偽装はさらに進め得る。例えば、不必要な場合にモジュラー削減演算を
行い、モジュラー指数アルゴリズムをさらにエミュレートし得る。これらの演算
のすべてを行う必要はないが、それらの演算のいくつか、少し、またはすべてを
使用することは処理の偽装を促進し、そして秘密鍵の値などの、暗号システムの
安全性の確保を促進する。
を示す。まず、暗号鍵を使用するモジュラー指数アルゴリズム等の暗号アルゴリ
ズムが適用され、送信が処理される(300)。例えば、復号化鍵を用いて送信
を復号化する。次いで、アルゴリズムの実行中に、鍵の値がチェックされる(3
04)。例えば、モジュラー指数アルゴリズムにおいて、二値鍵に含まれるビッ
ト値がチェックされる。次いで、チェックされた鍵の値に応じて、不必要な数理
的演算が、つまり、アルゴリズムの通常の演算では必要とされない数理的演算が
行われる(308)。次いで、アルゴリズムの実行をさらにエミュレートするた
めに、不必要な、メモリへのデータの格納が行われる(312)。
図示される。図4において、トランスミッター404がレシーバ408に送信4
06を送信する。レシーバ408はセットトップボックス416に結合される。
セットトップボックスは回路を用いて送信されたデータを処理する。前述のよう
に、回路はデータの暗号処理中にデータを処理するのに必要なパワー使用を偽装
するために演算可能である。さらに、前述のように、回路はデータの暗号処理中
に必要な時間使用を偽装するために演算可能である。セットトップボックスを用
いて本発明の目的を説明したが、本発明は暗号技術が使用される多くの異なるタ
イプの装置で使用し得る。例えば、セットトップボックスに加え、本発明は、デ
ジタルテレビ、PCMCIAカード等に使用し得る。本特許の目的上、そのよう
な装置は家電装置と言及されるべきである。
るように、マイクロプロセッサ424等のプロセッサは集積回路上に配置され、
入力425を介して送信信号を受信する。プロセッサは第1のメモリ440に結
合される。プロセッサはまた、第2のメモリ444に結合され得る。プロセッサ
はまた、復号化コード428および隠匿コード432等の暗号コードを保有する
、プログラム格納領域に結合される。暗号コードは暗号鍵436を使用し、それ
はまたメモリの中に格納されるた状態で図示される。暗号コード428はプロセ
ッサ424による使用に適しており、プロセッサに暗号アルゴリズムを実行させ
る。しかし、同時に隠匿コード432も行われる。このようにして、アルゴリズ
ムの隠匿または偽装も達成しつつ、データの通常の処理が行われる。隠匿コード
432は、不必要な演算を行って送信の通常処理に必要なパワー使用および時間
使用を偽装する。様々な不必要な演算もまた行われ得る。例えば、前述のように
、隠匿コードの結果として、不必要な乗算がプロセッサによって行われ得る。同
様に、メモリへのデータの不必要な格納、または不必要なモジュラー削除演算が
行われ得る。しかし、これらの不必要な演算の全てを行って、アルゴリズムの必
要な処理をエミュレートすることにより、最良の偽装が達成され得る。
々の部分として図4に示される。しかし、当業者が理解するように、これらの2
つのコード部分は、通常、単一のプログラムの一部であることに留意されたい。
このようにして、隠匿コードによって必要とされるエミュレーション演算は、通
常の暗号処理における適切な時に行われる。
ムにおいて、暗号鍵の各ビットはモジュラー乗算演算が行われるべきかどうかを
示す。ある実施形態において、これらのビットの1つがモジュラー乗算が必要で
はないと示した場合に、隠匿コードはエミュレートされたモジュラー乗算演算を
プロセッサに行わせるように演算可能である。この様態で、攻撃者はだまされて
、モジュラー乗算が実際に行われたので、ビットの値が実際の値と違っていたと
考える。
る。追加メモリがなくても、エミュレートされたメモリへの格納を当業者のメモ
リによって成し得ると想定されるが、メモリ444はこの点を実証する助けとな
る。すなわち、実際の暗号処理が第1のメモリ440を使用するのに対して、第
2のメモリ444はメモリへの不必要な格納が必要な場合に使用され得る。この
様態で、メモリへの格納に起因するパワー使用によって攻撃者はだまされる。し
かし、同時に、メモリ440に格納される暗号ルーチンに必要なデータは崩壊さ
れない。したがって、少量のメモリの追加で、暗号アルゴリズムはエミュレート
され得、大量の余分な回路の追加なしに、安全性が維持または増強され得る。
る。図5は、モジュラー指数アルゴリズムを参照して説明される。モジュラー指
数アルゴリズムにおいて、値Mはまず2乗され、次いでMを2乗して得られた値
について、整数nによるモジュラー削減が行われる。次いで、アルゴリズムの鍵
の二値表示に含まれる対応するビットの値に応じて、モジュラー削減の結果がM
倍に乗算され、そして最後に、再び整数nによってモジュラー削減される。例え
ば、値「1」が乗算をすることを示すとし、そして値「0」が乗算をしないこと
を示すと仮定する。その場合、適用可能なビットの値が「1」であるとすると、
値((M×M)mod n)はM倍に乗算され、次いでさらにnによるモジュラ
ー削減が行われる。この処理はアルゴリズムの鍵に含まれる全てのビットに対し
て行われる。結果的に、図5は、様々な値を格納してアルゴリズムを達成するた
めに必要な、メモリブロックを実証する。Mの最初の値は、メモリロケーション
504に格納される。この例の目的上、このメモリロケーションの長さは102
4ビットであると示される。その後、Mは2乗が達成され、その長さが2048
ビットであると示される、メモリロケーション508に格納される。次いで、n
によってモジュラー削減された結果がメモリロケーション512に格納され得る
。この結果はCiaとして、且つ1024ビットの長さとして図5に示される。
る場合、Ciaの値はM倍に乗算され、メモリロケーション508に格納される。
次いで、この値はnによってモジュラー削減され、再びロケーション512に格
納される(Ciaの前の値と置換される)。しかし鍵に含まれるビットの値が「0
」である場合、モジュラー乗算は必要ではない。しかし、攻撃者をだますために
、通常の乗算/モジュラー削減/メモリへの格納という処理が実行される。その
結果、メモリロケーション512に格納されるCiaの値を壊すことなく、レジス
タ516を使用することでエミュレートされた処理を成し得る。これはCiaをM
倍に乗算し、その結果をメモリロケーション508に格納することにより成し得
る。この値はその後、nによってモジュラー削減され、そしてメモリロケーショ
ン512ではなく、メモリロケーション516に格納される。また、鍵のビット
の値が「0」ではなく「1」であるとエミュレートするまたは偽ると同時に、メ
モリロケーション512に格納された値Ciaを保存する。加えて、メモリロケー
ション516内のデータが単に上書きされ得るので、大量の余分なメモリを必要
としない。実際に、下記に示されるように、追加のメモリなしで、モントゴメリ
ーアルゴリズムが実行され得る。
演算がエミュレートされる必要はない。例えば、モントゴメリーアルゴリズムに
おいて、1024ビットの秘密鍵の中の最初の128個の「0」ビットだけが「
1」としてエミュレートされればよい、つまり、アタックに耐えるために、通常
「1」が必要とするいくつかの演算をエミュレートさせればよい。そのようなシ
ナリオを図6に示す。図6において、秘密鍵を上段に示す。下段は秘密鍵の中の
最初の128個の0に対応する位置を示す。したがって、それらの位置でエミュ
レーション処理が行われる。128ビット位置のエミュレーションは安全性とプ
ロセッサ速度との間に適切なトレードオフを加えると考えられる。様々なエミュ
レーションスキームに起因する、より詳細なペナルティの内訳については、「M
ethod and System for Countering a Po
wer Attack and Timing Attack on Inte
ger Factoring and Discrete Logarithm
Problem−Based Private Key Operation
s」という名称の、1999年6月11日に出願された米国特許出願第60/1
38,909号を参照のこと。本明細書中、この文献を参考として援用する。
に留意されたい。したがって、安全性を得るために、128個以上のビットをエ
ミュレートする必要はない。128ビットのエミュレーションは、処理が完全に
崩壊するレベルまで資源を下げずに、セキュア送信を行うことが想定されるのみ
である。
く利用して、鍵から使用する最初のビットを偽装する。鍵に含まれる使用される
最初のビットが偽装される場合、鍵を解読することは最も難しくなるので、この
実施形態は、エミュレートされた演算を、鍵に含まれる使用される最初の値に集
中させる。この様態で、鍵において後に行われるエミュレートされた演算に比べ
ると、鍵にアタックする時に、攻撃者は最大の挑戦に直面することになる。例え
ば、Paul C. Kocherによる、「Timing Attacks
on Implementations of Diffie−Hellman
n,RSA,DSS and Other Systems」に記載の説明を参
照のこと。
る。この様態で、エミュレートされた演算が示される固定されたロケーションに
「0」ビットが存在する場合、エミュレートされた処理が実行される。これは図
7に示され、上段は鍵を示す。図7の下段は、鍵の対応する値が零である場合に
、エミュレートされた演算が実行され得るロケーションを示す。図7において、
エミュレートされた演算は、エミュレーションビット位置2、98、99、およ
び100に対応して行われる。図7はまた、128個未満のビットを利用してエ
ミュレーションをトリガする例を示す。また、この数字は1程度低くあり得るが
、依然、ある程度の安全性を提供する。
ある実施形態を行う例を示す。当業者が認識するように、モントゴメリーアルゴ
リズムはモジュラー削減を行うアルゴリズムのうちの1つである。まず、図8に
おいて、左手側の列にモントゴメリーアルゴリズムを行うための模範コードを示
す。右手側の列にはコードを行うための模範メモリ配列が示される。メモリの大
きさを図示するが、説明だけを目的としており、本発明を限定するものではない
。図8は、アルゴリズムが使用する変数および定数を格納するために、マイクロ
プロセッサのレジスタがどのように使用されるかを示す。さらに、一時保持レジ
スタを用いて、アルゴリズムが行われる間、結果を一時的に保持する。ステップ
7〜9は実施例の秘密鍵内の最初の128個の「0」をエミュレートする処理を
示す。これらの「0」のうちの1つが現れた場合、サブルーチン「MonPro
」を呼び出して、モントゴメリープロダクトを実行する。しかし、このモントゴ
メリープロダクトはアルゴリズムの結果を達成するために使用されない。むしろ
、それは捨てられる。にもかかわらず、秘密鍵のビットの値が「1」の場合に実
行される同じ演算が、プロセッサによって実行される。したがって、プロセッサ
の使用は、パワー使用および時間使用の量を偽装することにより、攻撃者を混乱
させる。
「BigMod」を達成するためのコードを示す。2k−1の大きさの一時レジ
スタもまた、示される。また、これらのレジスタの大きさは説明だけを目的とす
る。
鍵に含まれるビットの値が「1」(ei==1)の場合、結果はTemp3から x Registerへと移動される。しかし、鍵に含まれるビットの値が「0」
の場合、結果は単に一時レジスタへ移動され、格納されない。したがって、攻撃
者はエミュレートされたステップにだまされる、しかし、エミュレートされたス
テップはアルゴリズムの結果に影響しない。図8〜10は、追加メモリが必要で
はないことを例示する。したがって、これは追加資源を必要としないという点で
有利である。
た。しかし、本発明は他の数理的システムにも及ぶことは留意されたい。例えば
、楕円カーブ暗号技術の基本的な数理分野も適用され得る。これらの他の分野の
数理的処理も、乗算、加算、および累乗算の処理を含む、整数分野の数学のもと
で行われる処理との、均等物または結果を有するということを当業者は理解する
。したがって、本特許はそのような結果および均等物を含有することを意図する
。
記載から理解されると思われる。上文に記述される形式は単に好ましいまたは模
範的な実施形態であり、構成要素の形態、構成、および配置は、本発明の趣旨お
よび範囲から逸脱することなく、または材料の利点を犠牲にすることなく、様々
に変更し得ることは明らかである。本発明は復号化処理の領域を強調して説明し
たが、他の処理も意図しており、復号化処理は単に有益な例を提供するにすぎな
いことを理解されたい。
トを示す。
本発明の別の実施形態のフローチャートを示す。
位置のブロック図を示す。
密鍵内の最初の128個の零に対してエミュレートされた演算が行われるビット
の値の一を示す。
内のビットの値が零の場合、どこで所定のエミュレートされた演算が行われるか
の表示とを一緒に示す。
用され得るかの例を示す。
用され得るかの例を示す。
使用され得るかの例を示す。
Claims (24)
- 【請求項1】 データを処理する方法であって、 秘密鍵と共に使用する送信を受信する工程と、 該秘密鍵を用いることにより該送信を処理する工程と、 該送信の該処理を行うのに必要なパワー使用を偽装する工程と、 その一方で、該送信の該処理を行うのに必要な時間使用を偽装する工程と、 を含む方法。
- 【請求項2】 データを処理する方法であって、 前記送信に数理的アルゴリズムを実行することにより該送信を処理する工程と
、 該アルゴリズムに加えて、追加の数理的プロセスを実行する工程であって、該
追加の数理的プロセスは、該処理にとって不必要である、工程と、 該追加の数理的プロセスを実行することにより、要求される前記パワー使用お
よび要求される前記時間使用を偽装する工程と、 を含む、請求項1に記載の方法。 - 【請求項3】 前記追加の数理的プロセスを処理する工程が、乗算を行う工
程を含む、請求項2に記載のデータを処理する方法。 - 【請求項4】 メモリへのデータの不必要な格納を実行する工程をさらに含
む、請求項3に記載のデータを処理する方法。 - 【請求項5】 前記要求されるパワー使用および要求される時間の量を前記
偽装する工程が、モジュロ削減演算を実行する工程を含む、請求項2に記載のデ
ータを処理する方法。 - 【請求項6】 前記送信を前記処理する工程が、 条件付き乗算を含むアルゴリズムを使用する工程を含み、 該方法が、 該条件が満たされない場合に、該条件付き乗算の少なくとも1つを実行する工
程をさらに含む、請求項1に記載のデータを処理する方法。 - 【請求項7】 数的表示を有する暗号鍵を前記秘密鍵として使用する工程を
さらに含む、請求項6に記載のデータを処理する方法。 - 【請求項8】 前記アルゴリズムの前記条件付き乗算が、前記暗号鍵の二値
表示の少なくとも1つのビットの値によって決定される、請求項7に記載のデー
タを処理する方法。 - 【請求項9】 前記少なくとも1つの前記条件付き乗算の前記少なくとも1
つの結果をメモリに格納する工程をさらに含む、請求項6に記載のデータを処理
する方法。 - 【請求項10】 前記送信を処理する工程が、モントゴメリーアルゴリズム
を行う工程を含む、請求項1に記載のデータを処理する方法。 - 【請求項11】 暗号技術において使用する装置であって、該装置は、 プロセッサと、 送信を受信するための該プロセッサへの入力と、 該プロセッサに該送信を処理させる暗号コードと、 該プロセッサに不必要な演算を実行させて、該送信の処理中のパワー使用およ
び時間使用の量を偽装する隠匿コードと、 を含む。 - 【請求項12】 前記装置が二値表示を有する秘密鍵をさらに含み、前記隠
匿コードは、前記プロセッサに該秘密鍵のビットの値に基づいてエミュレートさ
れた機能を実行させるように演算可能である、請求項11に記載の装置。 - 【請求項13】 前記不必要な演算が不必要な乗算を含む、請求項11に記
載の装置。 - 【請求項14】 前記不必要な演算が、データをメモリに不必要に格納する
ことをさらに含む、請求項13に記載の装置。 - 【請求項15】 前記暗号コードが、モントゴメリーアルゴリズムを実行す
るコードを含む、請求項11に記載の装置。 - 【請求項16】 集積回路と、 符号化された送信を受信する該集積回路の入力と、 該入力に結合されたマイクロプロセッサと、 該符号化された送信を復号化するための、該マイクロプロセッサによる使用に
適した復号化コードと、 該復号化された送信を復号化する際の、該マイクロプロセッサによるパワー使
用および時間使用を偽装するための隠匿コードと、 を含む装置。 - 【請求項17】 前記コードを復号化する際に、前記マイクロプロセッサに
よって使用される第1のメモリと、 前記隠匿コードによって得られる結果を格納する第2のメモリと、 をさらに含む、請求項16に記載の装置。 - 【請求項18】 データを処理する方法であって、 暗号化された送信を受信する工程と、 該暗号化された送信を復号化する工程と、 該復号化工程へのパワーアタックに抵抗しつつ、該復号化工程へのタイミング
アタックに抵抗する工程と、 を含む、方法。 - 【請求項19】 データを処理する方法であって、 暗号化された送信を受信する工程と、 プロセッサを用いて乗算演算を実行する工程と、 該乗算演算で該送信を復号化する工程と、 該プロセッサを用いて不必要な乗算演算を実行する工程と、 該不必要な乗算演算による該復号化に必要なパワー使用を偽装する工程と、 該不必要な乗算演算による該復号化に必要な時間使用を偽装する工程と、 を含む、方法。
- 【請求項20】 家電装置と、 データを処理する、該家電装置内に配置された回路と、 を含み、 該回路は、該データを処理するのに必要なパワー使用の量を偽装するように
演算可能であり、 該回路は、該データを処理するのに必要な時間使用の量を偽装するように演
算可能である、 装置。 - 【請求項21】 暗号化された送信を受信する工程と、 該送信を復号化する工程と、 該送信を復号化するのに必要なパワー使用を偽装する工程と、 該送信を復号化するのに必要な時間の量を偽装する工程と、 を含み、 該送信を復号化する工程は、 該暗号化されたメッセージに対して、数理的アルゴリズムを実行する工程と
、 該数理的アルゴリズムの一部として復号化鍵を使用する工程と、 を含み、 該パワー使用を偽装する工程および該時間の量を偽装する工程は、 追加の数理的処理を行う工程であって、該追加の数理的処理が、該復号化に
不必要である、工程と、 メモリへのデータの不必要な格納を実行する工程と、 を含み、 該メモリへのデータの不必要な格納を実行する工程は、該復号化鍵のビットの
値によって決定される、 復号化を行う方法。 - 【請求項22】 数理的アルゴリズムを行う工程が、モントゴメリーアルゴ
リズムを実行する工程を含む、請求項21に記載の方法。 - 【請求項23】 暗号技術において使用される装置であって、該装置は、 家電装置と、 該家電装置内に配置されたマイクロプロセッサと、 暗号化された送信を受信するための該マイクロプロセッサの入力と、 該マイクロプロセッサに該送信を復号化させる復号化コードと、 該プロセッサに不必要な演算を実行させて、該送信を復号化する際に使用され
るパワー使用および時間の量を偽装する、隠匿コードと、 二値表示を有する復号化鍵であって、該隠匿コードは、該復号化鍵のビットの
値に基づいて該マイクロプロセッサにエミュレートされた機能を実行させるよう
に演算可能である、復号化鍵と、 を含む装置。 - 【請求項24】 前記復号化コードが、モントゴメリーアルゴリズムを実行
する、請求項23に記載の装置。
Applications Claiming Priority (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US13890999P | 1999-06-11 | 1999-06-11 | |
US60/138,909 | 1999-06-11 | ||
US09/373,866 | 1999-08-13 | ||
US09/373,866 US6804782B1 (en) | 1999-06-11 | 1999-08-13 | Countermeasure to power attack and timing attack on cryptographic operations |
PCT/US2000/015958 WO2000077973A2 (en) | 1999-06-11 | 2000-06-09 | Countermeasure to power attack and timing attack on cryptographic operations |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2003502905A true JP2003502905A (ja) | 2003-01-21 |
Family
ID=26836681
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2001504109A Pending JP2003502905A (ja) | 1999-06-11 | 2000-06-09 | 暗号演算に対するパワーアタックおよびタイミングアタックへの対策 |
Country Status (8)
Country | Link |
---|---|
US (1) | US6804782B1 (ja) |
EP (1) | EP1190525A2 (ja) |
JP (1) | JP2003502905A (ja) |
KR (1) | KR20020016638A (ja) |
CN (1) | CN1355974A (ja) |
AU (1) | AU770620B2 (ja) |
CA (1) | CA2374541A1 (ja) |
WO (1) | WO2000077973A2 (ja) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2008141385A (ja) * | 2006-11-30 | 2008-06-19 | Oki Electric Ind Co Ltd | 暗号方法、暗号装置および暗号プログラム |
US7877577B2 (en) | 2006-12-11 | 2011-01-25 | Renesas Electronics Corporation | Information processor and instruction fetch control method |
JP2016009114A (ja) * | 2014-06-25 | 2016-01-18 | ルネサスエレクトロニクス株式会社 | データ処理装置及び復号処理方法 |
JP2019515353A (ja) * | 2016-05-04 | 2019-06-06 | ジエマルト・エス・アー | 暗号化べき乗アルゴリズムへのセーフ−エラーフォールトインジェクション攻撃に対する対策 |
Families Citing this family (35)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7092523B2 (en) | 1999-01-11 | 2006-08-15 | Certicom Corp. | Method and apparatus for minimizing differential power attacks on processors |
CA2258338C (en) * | 1999-01-11 | 2009-02-24 | Certicom Corp. | Method and apparatus for minimizing differential power attacks on processors |
US7599491B2 (en) | 1999-01-11 | 2009-10-06 | Certicom Corp. | Method for strengthening the implementation of ECDSA against power analysis |
DE10000503A1 (de) * | 2000-01-08 | 2001-07-12 | Philips Corp Intellectual Pty | Datenverarbeitungseinrichtung und Verfahren zu dessen Betrieb |
US9323955B2 (en) * | 2000-12-21 | 2016-04-26 | Gemalto Sa | Method for protecting a logic or mathematical operator installed in an electronic module with a microprocessor as well as the associated embedded electronic module and the system |
FR2818847A1 (fr) * | 2000-12-26 | 2002-06-28 | St Microelectronics Sa | Circuit logique a polarite variable |
DE10101956A1 (de) * | 2001-01-17 | 2002-07-25 | Infineon Technologies Ag | Verfahren zur Erhöhung der Sicherheit einer CPU |
JP3902440B2 (ja) * | 2001-10-29 | 2007-04-04 | 三菱電機株式会社 | 暗号通信装置 |
DE10202700A1 (de) * | 2002-01-24 | 2003-08-07 | Infineon Technologies Ag | Vorrichtung und Verfahren zum Erzeugen eines Befehlscodes |
WO2003075506A1 (en) * | 2002-03-07 | 2003-09-12 | Axalto Sa | Method for making safe an electronic cryptography assembly with a secret key |
DE10221409A1 (de) * | 2002-05-14 | 2003-12-04 | Infineon Technologies Ag | Schaltung und Verfahren zur Durchführung einer Berechnung |
FR2840083A1 (fr) * | 2002-05-24 | 2003-11-28 | St Microelectronics Sa | Test d'un algorithme execute par un circuit integre |
US7892087B1 (en) * | 2002-12-02 | 2011-02-22 | Sca Promotions, Inc. | Authentication of game results |
WO2004053685A1 (en) * | 2002-12-12 | 2004-06-24 | Arm Limited | Instruction timing control within a data processing system |
US7302056B2 (en) * | 2003-06-30 | 2007-11-27 | Lucent Technologies Inc. | Method and system for determining sequence parameters to limit cycle attacks in timed release cryptography |
US9633213B2 (en) * | 2005-05-16 | 2017-04-25 | Texas Instruments Incorporated | Secure emulation logic between page attribute table and test interface |
US20060259828A1 (en) | 2005-05-16 | 2006-11-16 | Texas Instruments Incorporated | Systems and methods for controlling access to secure debugging and profiling features of a computer system |
US7372290B2 (en) * | 2005-10-04 | 2008-05-13 | Stmicroelectronics, Inc. | System and method for using dummy cycles to mask operations in a secure microcontroller |
US20070150530A1 (en) * | 2005-12-13 | 2007-06-28 | Intel Corporation | Resisting cache timing based attacks |
US8321666B2 (en) | 2006-08-15 | 2012-11-27 | Sap Ag | Implementations of secure computation protocols |
EP1936527A1 (fr) * | 2006-12-18 | 2008-06-25 | Gemplus | Procédé permettant de faire varier le nombre d'exécution de contre-mesures dans un code exécuté |
US7936871B2 (en) * | 2007-06-28 | 2011-05-03 | Samsung Electronics Co., Ltd. | Altering the size of windows in public key cryptographic computations |
US7974409B2 (en) * | 2007-06-28 | 2011-07-05 | Samsung Electronics Co., Ltd. | Changing the order of public key cryptographic computations |
US8781111B2 (en) * | 2007-07-05 | 2014-07-15 | Broadcom Corporation | System and methods for side-channel attack prevention |
US7991162B2 (en) * | 2007-09-14 | 2011-08-02 | University Of Ottawa | Accelerating scalar multiplication on elliptic curve cryptosystems over prime fields |
JP5146156B2 (ja) * | 2008-06-30 | 2013-02-20 | 富士通株式会社 | 演算処理装置 |
EP2367102B1 (en) * | 2010-02-11 | 2013-04-10 | Nxp B.V. | Computer processor and method with increased security properties |
DE102010028375A1 (de) * | 2010-04-29 | 2011-11-03 | Robert Bosch Gmbh | Schutz vor kryptoanalytischen Seitenkanalattacken |
US8635467B2 (en) | 2011-10-27 | 2014-01-21 | Certicom Corp. | Integrated circuit with logic circuitry and multiple concealing circuits |
US8334705B1 (en) | 2011-10-27 | 2012-12-18 | Certicom Corp. | Analog circuitry to conceal activity of logic circuitry |
US9773111B2 (en) * | 2012-08-14 | 2017-09-26 | Empire Technology Development Llc | Software-based side-channel attack prevention |
CN103051454A (zh) * | 2012-12-19 | 2013-04-17 | 天地融科技股份有限公司 | 电子设备及其密码验证方法 |
US8909967B1 (en) * | 2012-12-31 | 2014-12-09 | Emc Corporation | Technique for secure computation |
US10693896B2 (en) | 2015-01-14 | 2020-06-23 | Virta Laboratories, Inc. | Anomaly and malware detection using side channel analysis |
US10210350B2 (en) * | 2015-08-10 | 2019-02-19 | Samsung Electronics Co., Ltd. | Electronic device against side channel attacks |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH02199561A (ja) * | 1988-11-10 | 1990-08-07 | Sgs Thomson Microelectron Sa | 許可を得ていない保護データ検出に対する安全装置 |
JPH07239837A (ja) * | 1993-12-21 | 1995-09-12 | General Instr Corp Of Delaware | 秘密保護マイクロプロセッサのためのクロック周波数変調 |
JPH1091531A (ja) * | 1996-09-19 | 1998-04-10 | Toshiba Corp | セキュリティシステム |
JPH10222065A (ja) * | 1997-02-03 | 1998-08-21 | Nippon Telegr & Teleph Corp <Ntt> | 冪乗剰余演算方法及び装置 |
WO1999014880A2 (en) * | 1997-09-16 | 1999-03-25 | Koninklijke Philips Electronics N.V. | A method and device for executing a decrypting mechanism through calculating a standardized modular exponentiation for thwarting timing attacks |
WO1999035782A1 (en) * | 1998-01-02 | 1999-07-15 | Cryptography Research, Inc. | Leak-resistant cryptographic method and apparatus |
JP2000259799A (ja) * | 1999-03-09 | 2000-09-22 | Hitachi Ltd | Icカードと半導体集積回路装置 |
Family Cites Families (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5619501A (en) | 1994-04-22 | 1997-04-08 | Thomson Consumer Electronics, Inc. | Conditional access filter as for a packet video signal inverse transport system |
US5920572A (en) | 1995-06-30 | 1999-07-06 | Divicom Inc. | Transport stream decoder/demultiplexer for hierarchically organized audio-video streams |
US5926647A (en) | 1996-10-11 | 1999-07-20 | Divicom Inc. | Processing system with dynamic alteration of a color look-up table |
US5923385A (en) | 1996-10-11 | 1999-07-13 | C-Cube Microsystems Inc. | Processing system with single-buffered display capture |
US5937067A (en) | 1996-11-12 | 1999-08-10 | Scientific-Atlanta, Inc. | Apparatus and method for local encryption control of a global transport data stream |
US5920626A (en) | 1996-12-20 | 1999-07-06 | Scientific-Atlanta, Inc. | Analog/digital system for television services |
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 |
US6064740A (en) * | 1997-11-12 | 2000-05-16 | Curiger; Andreas | Method and apparatus for masking modulo exponentiation calculations in an integrated circuit |
AU6381799A (en) * | 1998-06-03 | 2000-01-10 | Cryptography Research, Inc. | Secure modular exponentiation with leak minimization for smartcards and other cryptosystems |
-
1999
- 1999-08-13 US US09/373,866 patent/US6804782B1/en not_active Expired - Lifetime
-
2000
- 2000-06-09 WO PCT/US2000/015958 patent/WO2000077973A2/en not_active Application Discontinuation
- 2000-06-09 JP JP2001504109A patent/JP2003502905A/ja active Pending
- 2000-06-09 CA CA002374541A patent/CA2374541A1/en not_active Abandoned
- 2000-06-09 KR KR1020017015942A patent/KR20020016638A/ko not_active Application Discontinuation
- 2000-06-09 AU AU74696/00A patent/AU770620B2/en not_active Ceased
- 2000-06-09 EP EP00963255A patent/EP1190525A2/en not_active Withdrawn
- 2000-06-09 CN CN00808788A patent/CN1355974A/zh active Pending
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH02199561A (ja) * | 1988-11-10 | 1990-08-07 | Sgs Thomson Microelectron Sa | 許可を得ていない保護データ検出に対する安全装置 |
JPH07239837A (ja) * | 1993-12-21 | 1995-09-12 | General Instr Corp Of Delaware | 秘密保護マイクロプロセッサのためのクロック周波数変調 |
JPH1091531A (ja) * | 1996-09-19 | 1998-04-10 | Toshiba Corp | セキュリティシステム |
JPH10222065A (ja) * | 1997-02-03 | 1998-08-21 | Nippon Telegr & Teleph Corp <Ntt> | 冪乗剰余演算方法及び装置 |
WO1999014880A2 (en) * | 1997-09-16 | 1999-03-25 | Koninklijke Philips Electronics N.V. | A method and device for executing a decrypting mechanism through calculating a standardized modular exponentiation for thwarting timing attacks |
WO1999035782A1 (en) * | 1998-01-02 | 1999-07-15 | Cryptography Research, Inc. | Leak-resistant cryptographic method and apparatus |
JP2000259799A (ja) * | 1999-03-09 | 2000-09-22 | Hitachi Ltd | Icカードと半導体集積回路装置 |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2008141385A (ja) * | 2006-11-30 | 2008-06-19 | Oki Electric Ind Co Ltd | 暗号方法、暗号装置および暗号プログラム |
US7877577B2 (en) | 2006-12-11 | 2011-01-25 | Renesas Electronics Corporation | Information processor and instruction fetch control method |
JP2016009114A (ja) * | 2014-06-25 | 2016-01-18 | ルネサスエレクトロニクス株式会社 | データ処理装置及び復号処理方法 |
JP2019515353A (ja) * | 2016-05-04 | 2019-06-06 | ジエマルト・エス・アー | 暗号化べき乗アルゴリズムへのセーフ−エラーフォールトインジェクション攻撃に対する対策 |
Also Published As
Publication number | Publication date |
---|---|
KR20020016638A (ko) | 2002-03-04 |
AU7469600A (en) | 2001-01-02 |
CA2374541A1 (en) | 2000-12-21 |
EP1190525A2 (en) | 2002-03-27 |
WO2000077973A3 (en) | 2001-07-12 |
WO2000077973A9 (en) | 2002-07-11 |
US6804782B1 (en) | 2004-10-12 |
WO2000077973A2 (en) | 2000-12-21 |
CN1355974A (zh) | 2002-06-26 |
AU770620B2 (en) | 2004-02-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP2003502905A (ja) | 暗号演算に対するパワーアタックおよびタイミングアタックへの対策 | |
Messerges | Securing the AES finalists against power analysis attacks | |
US6278783B1 (en) | Des and other cryptographic, processes with leak minimization for smartcards and other cryptosystems | |
EP1261903B2 (en) | Method of authenticating users of software | |
EP1191739B1 (en) | Stream cipher encryption application accelerator and methods thereof | |
US20130016834A1 (en) | Security countermeasures for power analysis attacks | |
JP7206324B2 (ja) | 暗号アルゴリズム向けのワンタイムの中国剰余定理のべき乗のためのシステムおよび方法 | |
JP5823639B2 (ja) | ブール演算および算術演算を用いる暗号アルゴリズムへのサイドチャネル解析に対する対策方法 | |
EP0950302A1 (en) | Public key cryptographic apparatus and method | |
US7000111B1 (en) | Method for masking secret multiplicands | |
WO1995006373A1 (en) | Method and apparatus for decryption using cache storage | |
JP2003533752A (ja) | 暗号法及び装置 | |
CA2259089C (en) | Method and apparatus for masking cryptographic operations | |
EP2738973A1 (en) | System and method for cryptography using multiplicative masking using simultaneous exponentiation techniques | |
US20040184604A1 (en) | Secure method for performing a modular exponentiation operation | |
US7454625B2 (en) | Method and apparatus for protecting a calculation in a cryptographic algorithm | |
US20040260931A1 (en) | Method and apparatus for protecting an exponentiation calculation by means of the chinese remainder theorem (CRT) | |
US9942038B2 (en) | Modular exponentiation using randomized addition chains | |
Preneel | Cryptanalysis of message authentication codes | |
JP2003521010A (ja) | 公開鍵暗号アルゴリズムを用いる電子構成品におけるモジュラべき乗演算アルゴリズム | |
EP1933496A2 (en) | Improved DES and other cryptographic processes with leak minimization for smartcards and other cryptosystems |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20070605 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20100831 |
|
A601 | Written request for extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20101129 |
|
A602 | Written permission of extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A602 Effective date: 20101206 |
|
A601 | Written request for extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20101227 |
|
A602 | Written permission of extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A602 Effective date: 20110107 |
|
A601 | Written request for extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20110128 |
|
A602 | Written permission of extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A602 Effective date: 20110204 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20110420 |