JP2002521724A - タイミングアタック防止暗号システム - Google Patents
タイミングアタック防止暗号システムInfo
- Publication number
- JP2002521724A JP2002521724A JP2000561725A JP2000561725A JP2002521724A JP 2002521724 A JP2002521724 A JP 2002521724A JP 2000561725 A JP2000561725 A JP 2000561725A JP 2000561725 A JP2000561725 A JP 2000561725A JP 2002521724 A JP2002521724 A JP 2002521724A
- Authority
- JP
- Japan
- Prior art keywords
- group
- intermediate element
- bit
- group operation
- bits
- 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.)
- Granted
Links
- 230000002265 prevention Effects 0.000 title 1
- 238000000034 method Methods 0.000 claims abstract description 23
- 239000013598 vector Substances 0.000 claims abstract description 16
- 238000012545 processing Methods 0.000 claims description 3
- 238000004364 calculation method Methods 0.000 description 5
- 238000004891 communication Methods 0.000 description 4
- 238000010586 diagram Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 238000012986 modification Methods 0.000 description 3
- 230000008569 process Effects 0.000 description 3
- 230000014509 gene expression Effects 0.000 description 2
- 230000007774 longterm Effects 0.000 description 2
- 230000009471 action Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 230000001010 compromised effect Effects 0.000 description 1
- 125000004122 cyclic group Chemical group 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000005242 forging Methods 0.000 description 1
- 238000005259 measurement Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
- 230000007704 transition Effects 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/724—Finite field arithmetic
- G06F7/725—Finite field arithmetic over elliptic curves
-
- 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/3005—Arrangements for executing specific machine instructions to perform operations for flow control
- G06F9/30058—Conditional branch 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/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/3066—Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy involving algebraic varieties, e.g. elliptic or hyper-elliptic curves
-
- 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
-
- 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/4824—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 using signed-digit representation
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Optimization (AREA)
- Computer Security & Cryptography (AREA)
- Pure & Applied Mathematics (AREA)
- Mathematical Analysis (AREA)
- Computational Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Computing Systems (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Algebra (AREA)
- Complex Calculations (AREA)
- Storage Device Security (AREA)
- Mobile Radio Communication Systems (AREA)
- Synchronisation In Digital Transmission Systems (AREA)
- Lock And Its Accessories (AREA)
- Radar Systems Or Details Thereof (AREA)
- Traffic Control Systems (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
Abstract
Description
イミングアタックを防止するための方法および装置に関する。
実によって安全性を担保しており、この事実がなければ、スキーム(scheme)を
破壊することはほとんど困難である。一般的に、当該秘密情報は安全境界内に蓄
積されていなければならず、これによりアタッカー(attacker)が直接それに達
することを困難にしている。しかし、上記秘密情報を獲得するために種々のスキ
ームあるいはアタックが試みられてきた。これらのひとつが、タイミングアタッ
ク(timing attack )である。
パブリックキー)暗号スキームが数学グループF* P とE(Fq)とのそれぞれ
に作用する。RSAにおいて乗算モジューロ(modulo)pと称されるグループオ
ペレーションおよびECにおけるポイントの追加は、特定の方法で繰り返される
ことによりスカラーオペレーションを実行する。RSAにおいては、オペランド
(operand )は指数(exponent)と称され、該オペレーションは指数化(expone
ntiation)と称され、乗算方法は、通常二乗および乗算を繰り返すものとして知
られている。故に、a∈FP を満たす数a、および0≦k<pを満たす整数であ
って、二進法で表すとk=Σt i=0 ki 2i をみたす指数kについて、ak mod
pの値を二乗および乗算アルゴリズムを繰り返すことによって計算することがで
きる。同様に、g(x)∈FP mを満たす数g(x)、および0≦k≦pm −1なる整数
kについて、g(x)k mod f(x)をこの方法によって計算することができる。
ションはポイントのスカラー乗算と称され、上記方法は二倍および加算法として
知られている。故に、aが正の整数であって、Pが楕円曲線ポイントである場合
、aPを二倍および加算法によって求めることができる。これらの方法はいずれ
も当業者に良く知られたものであるので、これ以上の説明は行わない。
ー(private key )を使用する。これに対してECにおいては全てのスカラー乗
算は、ロングタームプライベートキー(long term private key )あるいはセッ
ションプライベートキー(session private key )のいずれかを使用する。これ
らの場合の何れにおいても、指数化または乗算オペレーションは万一の場合でも
逆転させることが困難であるので、プライベートキーは安全である。これは、離
散的ログ問題あるいは素因数分解の困難性の為である。上記したように、アタッ
カーは一旦プライベートキー(あるいはロングタームもしくはセッション)を所
有すると、アタックの対象に対して、シグニチャー(signature )を偽造して秘
密のメッセージを解読することができる。よって、システムにおけるプライベー
トキーの秘密性あるいは保全性を維持することが極めて重要である。
ーションは、サイクリック(cyclic)な方法で動作する特定の目的あるいは一般
的な目的のプロセッサーにおいて実行されている。公知文献に開示された近年の
アタック方法は、これらのプロセッサーのタイミング分析あるいはいわゆる”ブ
ラックボックス”オペレーションのタイミング分析に基づく。一例では、プライ
ベートキーオペレーションを通じてプロセッサーの瞬間電力使用量を得ることに
よって、アタッカーはパワーシグニチャー(power signature )を得る。上記パ
ワーシグニチャーは、個々のクロックサイクルによって動作するゲート数に関す
る。上記段落で説明した各基本オペレーションは、離散タイミングパターンを生
成する。瞬間電力使用量以外にも、パワーシグニチャーを得るための方法が存在
する。
るいは二乗および乗算オペレーションの順序を分解することができる。二倍ある
いは二乗は、それぞれ指数あるいはスカラー乗算子のいずれのビットについても
別個に発生しなければならない。それゆえ、二倍波形が互いに隣接する箇所にお
いては、ゼロのビットポジションを示し、加算パターンのある箇所においては、
1を示す。それゆえ、これらのタイミング測定を分析することによって、完全な
シークレットキー(secret key)を発見することができ、システムを妥協させる
ことができる。ゆえに、タイミングアタックを成功させるリスクを最小限にする
システムが必要である。
ロセッサーによって暗号オペレーションが実行され、個々のビットスカラーの処
理あるいはあらゆる値の指数について一定量の時間を必要とする暗号システムを
提供することを目的とする。
ープオペレーションの結果を決定するための方法であって、 (a)上記整数を二進ベクトルとして表現し、 (b)中間エレメントをグループ一致エレメントに初期化し、 (c)もっとも左側のビットから開始して上記ベクトルの連続するビットを選
択し、上記選択されたビットのそれぞれについて、 (i)新しい中間エレメントを導出する上記中間エレメントに上記グループ
オペレーションを実行し、 (ii)上記中間エレメントを上記新しい中間エレメントに置き換え、 (iii)上記中間エレメント、および上記選択されたビットが1である場
合の上記グループエレメントと上記選択されたビットがゼロである場合の上記グ
ループエレメントの逆エレメントとから成るグループから選択されるエレメント
に対して上記グループオペレーションを実行し、 (iv)上記中間エレメントを上記新しい中間エレメントに置き換え、 (d)上記中間値および上記最終ビットがゼロである場合の最終エレメントに
対して上記グループオペレーションを実行し;上記中間エレメントを置き換える
ことにより結果を求め、上記合計の各ビットが実質的に同一のオペレーションに
より処理されることにより上記暗号システムへのタイミングアタックを最小化す
るステップを含むことを特徴とする。
ことにより説明する。
a communication system)10は、コミュニケーションチャネル16により接続
された1対のコレスポンデント(correspondents)、すなわち送信者A(12)
および受信者B(14)を含む。各コレスポンデントAおよびB(12,14)
は暗号ユニット18,20を含み、各暗号ユニット18,20はそれぞれデジタ
ル情報を処理するとともに、チャネル16を介してそれを伝達するための準備を
する。
者のショートタームパブリックキーkと、送信者AのシグニチャーSとを含むデ
ータストリングから成る。構成された後にデータストリングは所望の受信者Bに
向けて送信され、受信者BはAのパブリックキーを用いて該シグニチャーを確認
する。このパブリックキー情報は、認証オーソリティ(certification authorit
y:CA)24から獲得されるかもしれないし、場合によってはメッセージととも
に送信されるかもしれない。
ジmを暗号化し、Aがメッセージmを解読する。メッセージmを暗号化するため
に、BはAのパブリックキー(n,e)を得るとともに、メッセージを[0,m
−1]の間の整数として表現する。次に、Bはc=me mod nを算出し、暗号化
テキストcをAに送信する。エンティティAは、プライベートキーdを用いるこ
とによりm=cd mod nとしてcからメッセージmを復元する。cd mod nの計
算(モジューロ指数化)は、公知の二乗および乗算アルゴリズムを使用すること
により実行される。同様の計算がRSAにおける符号化に要求され、符号化のた
めに、ECC等の離散的ログシステムにおける暗号化および解読が必要とされる
。
使用する特定の暗号化スキームに対応する暗号化プロセッサにより計算される。
それゆえ、図2に示すように、1で終了するあらゆるビットベクトルは+1およ
び−1の項からなる全非ゼロベクトルとして記録される。ゼロで終了するエレメ
ントについては、最後のゼロを記録された形式で維持するか、あるいは更に最後
のゼロが上記のルールにより処理された後の修正として−1動作を実行する必要
がある。後に明白になるように、修正動作を行うことが好ましい。
リズムステートマシンの具体例を参照番号30として示す。本実施形態において
は、処理されるビットベクトルbはステートマシン30に付与される。処理の結
果は、値bPであって、Pは楕円曲線上の座標(x,y)を有するポイントであ
る。ステートマシン30はカウンターiとともに初期化され、該カウンターiは
ベクトルbのビット数Nおよびレジスタに蓄積された中間値Qにセットされてい
る。bの第1ビット(MSB)がエンカウンタされる(encountered )と(第1
非ゼロビットではない)、ステートマシンのステートH0へのエントリが発生す
る。ステートH0においては、中間値Qのコンテンツ(contents)が二倍される
とともにベースポイントPがそこに加えられる。ビットは連続して処理され、現
在のステートH0に戻るか、あるいは次のステートH1に進むかのいずれかの変
化を起こす。ステートH1においては、Qが二倍され、ベースポイントPが減じ
られる。次のビットがゼロである場合、次のステートは常にH1である。次のビ
ットが1である場合、次のステートは常にH0である。現在のステートがH0で
ある場合は常に加算(+P)が起こり、それ以外の場合には減算(−P)が起こ
る。すべてのビットが計算されると、bPを結果とする終了ステートへと制御が
進行する。H0中に出口条件に達する場合は、最後に結果から減算(−P)を行
うことが必要である。
ットを利用できることが必要である。図4は、汎用データおよび制御メカニズム
が利用可能であるステートマシンの擬似コード具体例である。ループ内のすべて
の可能な実行パスについて実行時間およびパワーが同一であればタイミングアタ
ックを防止することができる。本具体例では、ラインL5,L6およびL7から
なる実行パスに要する時間は、ラインL5,L8およびL9からなる実行パスに
要する時間と同一である。これは、分岐命令(IF)が、偽(false )および真
(true)条件についても同様の時間で実行されなければならないことを示す。
の負の値を加算することにより、これはより明らかに可能である。アルゴリズム
においてラインL14およびL15を除く他の全てのラインの実行時間は非クリ
ティカル(non-critical)であって、タイミングアタックを防止できることにつ
いて注意されたい。これら2つのラインが実行される場合は必要時間が増加し、
最終Hステートがゼロであったことが明らかになる。これは、スカラーの最終ビ
ットがゼロであったことを明らかにすることに等しい。これは避けられないが、
スカラー乗数のシングルビットを明らかにするのみである。
よびテストオペレータが存在しない傾向がある。この場合、Hステート制御は通
常の方法で加算されることができない。その代わり、離散コードパスを通じて分
岐することによりステートを符号化することが必要である。
実行パスは離散ステートに対応する。一般的にこれはコード膨張を引き起こすが
、ここで必要なのは2つのショートパスのみである。ここにおいても上記したの
と同様に、ループ内のすべての可能な実行パスについて実行時間およびパワーが
同一であればタイミングアタックを防止することができる。本具体例においては
、ラインLL3,LL4およびLL5からなる実行パスにはラインLL6,LL
7およびLL8からなる実行パスと同様の時間が必要である。更に、LL9,L
L10およびLL16のパスは、LL9およびLL11のパスと同様の時間およ
びパワーで実行されなければならない。これは、(次のロケーションへの)フォ
ールスルー(fall through)と同様に(新しいロケーションへの)分岐について
、条件分岐命令が同じ時間を必要とする構造については真であろう。ラインLL
11,LL12およびLL13は、ラインLL16,LL17およびLL18と
等しい実行時間およびパワーであることに注目されたい。これもまたタイミング
アタックを防止するために必要である。他の場合は、Hステートインフォメーシ
ョンが明らかにされる。上記具体例においては、ループがH0パスを終了したと
きにLL14における最終の修正減算が必要である。これにより最終Hパスある
いは同等のスカラーの最終ビットが明らかになる。
で示されており、これに対応するステートマシン具体例が図7に示されている。
本具体例では、指数ビットベクトルbがステートマシン60に付与される。処理
の結果として、Mb なる値が計算される。再びカウンターはベクトルbの長さN
に初期化されるとともに、累算器Qは1に初期化される。ステートマシンのステ
ートH0へのエントリは、ビットベクトルbのMSBと共に開始する。上記した
ように、ビットは連続して処理され、現在のステートH0へ戻るか、あるいは次
のステートH1に進むかのいずれかの遷移を生じる。ステートH0においては、
累算器QのコンテンツはベースMにより二乗および乗算される。ステートH1に
おいては、累算器はベースMにより二乗および除算される。次のビットが0であ
る場合は、次のステートは常にH1であり、次のビットが1である場合は次のス
テートは常にH0である。現在の状態がH0である場合は常に乗算が発生し、そ
れ以外は除算が発生する。上記したように、全てのビットが消費されると、制御
は終了ステートにて終了する。H0中に出口条件に達する場合は、最終ラインを
ベースMにより割ることが必要である。
ode )を実行するようにプログラムされている一般的なプロセッサの具体例を示
す。モジューロ演算および/または有限フィールド計算ユニット84が、二乗お
よび乗算の計算ならびにポイントの加算/減算のためにそれぞれ設けられている
。カウンタ86およびレジスタbはコントローラ82の連続オペレーションのタ
イミングのためのステートコントローラに結合されている。
許請求の範囲のような本発明の精神から外れることなく、種々の態様変更が発生
することが可能である。
ており、これに限定されるものではない。このような単語および表現は、記載さ
れた特徴の均等物を排除する目的で用いられるものではなく、本発明の特許請求
の範囲の範囲内において種々の態様変更が可能である。
である。
体例である。
体例である。
ムである。
Claims (6)
- 【請求項1】 グループから選択されたエレメントについて整数回実行されるグループオペレ
ーションの結果を決定するための方法であって、 (a)上記整数を二進ベクトルとして表現し、 (b)中間エレメントをグループ一致エレメントに初期化し、 (c)もっとも左側のビットから開始して上記ベクトルの連続するビットを選
択し、上記選択されたビットのそれぞれについて、 (i)新しい中間エレメントを導出する上記中間エレメントに上記グループ
オペレーションを実行し、 (ii)上記中間エレメントを上記新しい中間エレメントに置き換え、 (iii)上記中間エレメント、および上記選択されたビットが1である場
合の上記グループエレメントと上記選択されたビットがゼロである場合の上記グ
ループエレメントの逆エレメントとから成るグループから選択されるエレメント
に対して上記グループオペレーションを実行し、 (iv)上記中間エレメントを上記新しい中間エレメントに置き換え、 (d)上記中間値および上記最終ビットがゼロである場合の最終エレメントに
対して上記グループオペレーションを実行し;上記中間エレメントを置き換える
ことにより結果を求め、上記合計の各ビットが実質的に同一のオペレーションに
より処理されることにより上記暗号システムへのタイミングアタックを最小化す
るステップを含むことを特徴とする方法。 - 【請求項2】 上記グループは乗算グループFp * であって、上記グループエレメントは整数
であって、上記グループオペレーションは指数化ga であって、上記逆エレメン
トは乗算逆数1/gであることを特徴とする請求項1に記載の方法。 - 【請求項3】 上記グループは加算グループ 【数1】 であって、上記グループオペレーションはポイントの加算であることを特徴とす
る請求項1に記載の方法。 - 【請求項4】 上記グループは加算グループE(Fq )であって、上記グループエレメントは
楕円曲線上の座標(x,y)を有するポイントPであって、上記グループオペレ
ーションは上記ポイントのスカラー乗数kPであって、上記逆エレメントは上記
ポイントの負の値−Pであることを特徴とする請求項1に記載の方法。 - 【請求項5】 上記整数値がプライベートキーkであることを特徴とする請求項1に記載の方
法。 - 【請求項6】 暗号化プロセッサにおいて選択されたグループオペレーションをスカラーおよ
び上記グループから選択された上記エレメントについて実行する方法であって、 上記スカラーを二進ベクトルとして表現し、 上記二進ベクトルを記録して+1および−1の数値からなる符号化された数値
表現を生成し、 上記記録されたビットを連続して選択し、選択された各ビットについて上記グ
ループオペレーションを実行して中間エレメントから新しい中間エレメントを生
成し;上記数値が選択されている場合に、上記符号に対応して上記中間エレメン
トについて上記選択されたエレメントを加算あるいは減算し、 上記中間値を上記グループオペレーションの結果として出力するステップを含
むことを特徴とする方法。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CA2,243,761 | 1998-07-21 | ||
CA002243761A CA2243761C (en) | 1998-07-21 | 1998-07-21 | Timing attack resistant cryptographic system |
PCT/CA1999/000658 WO2000005837A1 (en) | 1998-07-21 | 1999-07-21 | Timing attack resistant cryptographic system |
Publications (3)
Publication Number | Publication Date |
---|---|
JP2002521724A true JP2002521724A (ja) | 2002-07-16 |
JP2002521724A5 JP2002521724A5 (ja) | 2010-05-13 |
JP4699610B2 JP4699610B2 (ja) | 2011-06-15 |
Family
ID=4162681
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2000561725A Expired - Lifetime JP4699610B2 (ja) | 1998-07-21 | 1999-07-21 | タイミングアタック防止暗号システム |
Country Status (8)
Country | Link |
---|---|
US (1) | US7020281B2 (ja) |
EP (1) | EP1097541B1 (ja) |
JP (1) | JP4699610B2 (ja) |
AT (1) | ATE460027T1 (ja) |
AU (1) | AU4891799A (ja) |
CA (1) | CA2243761C (ja) |
DE (1) | DE69942094D1 (ja) |
WO (1) | WO2000005837A1 (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2006522375A (ja) * | 2002-12-12 | 2006-09-28 | エイアールエム リミテッド | データ処理システムにおける処理動作マスキング |
Families Citing this family (26)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CA2252078C (en) * | 1998-10-28 | 2009-02-17 | Certicom Corp. | Power signature attack resistant cryptographic system |
US6948065B2 (en) * | 2000-12-27 | 2005-09-20 | Intel Corporation | Platform and method for securely transmitting an authorization secret |
DE10122504A1 (de) * | 2001-05-10 | 2003-01-02 | Giesecke & Devrient Gmbh | Berechnung eines Vielfachen eines Gruppenelements für kryptographische Zwecke |
US7233663B2 (en) * | 2001-10-29 | 2007-06-19 | Safenet, Inc. | Key generation performance improvement |
FR2838210B1 (fr) * | 2002-04-03 | 2005-11-04 | Gemplus Card Int | Procede cryptographique protege contre les attaques de type a canal cache |
DE10254658A1 (de) * | 2002-11-22 | 2004-06-03 | Philips Intellectual Property & Standards Gmbh | Mikrocontroller und zugeordnetes Verfahren zum Abarbeiten der Programmierung des Mikrocontrollers |
US7555122B2 (en) | 2002-12-04 | 2009-06-30 | Wired Communications LLC | Method for elliptic curve point multiplication |
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 |
KR20090006176A (ko) * | 2006-04-06 | 2009-01-14 | 엔엑스피 비 브이 | 평문 판정 방법 |
KR100867989B1 (ko) * | 2006-12-06 | 2008-11-10 | 한국전자통신연구원 | 단순전력분석에 안전한 Left-to-Right방향으로 리코딩과 스칼라 곱셈을 동시에 수행하는 스칼라곱셈 방법 |
US7991162B2 (en) * | 2007-09-14 | 2011-08-02 | University Of Ottawa | Accelerating scalar multiplication on elliptic curve cryptosystems over prime fields |
FR2946819B1 (fr) | 2009-06-16 | 2011-07-01 | Sagem Securite | Cryptographie sur une courbe elliptique. |
US20140314229A1 (en) | 2011-12-09 | 2014-10-23 | Morpho | Cryptography on a simplified elliptical curve |
FR2946818B1 (fr) * | 2009-06-16 | 2011-07-01 | Sagem Securite | Cryptographie sur une courbe elliptique simplifiee. |
US20170207918A1 (en) | 2009-06-16 | 2017-07-20 | Morpho | Cryptography on an elliptical curve |
EP2464731B1 (en) | 2009-08-11 | 2016-10-05 | CuRNA, Inc. | Treatment of adiponectin (adipoq) related diseases by inhibition of natural antisense transcript to an adiponectin (adipoq) |
GB2479871A (en) * | 2010-04-26 | 2011-11-02 | David Coyne | System for preventing side channel attacks on a synchronous logic device. |
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 |
US9239926B2 (en) | 2012-06-29 | 2016-01-19 | International Business Machines Corporation | Static analysis for discovery of timing attack vulnerabilities in a computer software application |
US9979543B2 (en) | 2013-12-23 | 2018-05-22 | Nxp B.V. | Optimized hardware architecture and method for ECC point doubling using jacobian coordinates over short weierstrass curves |
US9929862B2 (en) | 2013-12-23 | 2018-03-27 | Nxp B.V. | Optimized hardware architecture and method for ECC point doubling using Jacobian coordinates over short Weierstrass curves |
US9900154B2 (en) * | 2013-12-23 | 2018-02-20 | Nxp B.V. | Optimized hardward architecture and method for ECC point addition using mixed affine-jacobian coordinates over short weierstrass curves |
FR3015726B1 (fr) * | 2013-12-24 | 2016-01-08 | Morpho | Procede de traitement comparatif securise |
US12010231B2 (en) * | 2021-06-23 | 2024-06-11 | Pqsecure Technologies, Llc | Computer processing architecture and method for supporting multiple public-key cryptosystems based on exponentiation |
CN116647318A (zh) * | 2022-02-16 | 2023-08-25 | 瑞昱半导体股份有限公司 | 防御密码系统时间攻击的方法及密码系统处理电路 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH11161169A (ja) * | 1997-06-20 | 1999-06-18 | Certicom Corp | 楕円曲線上の有限体演算の加速方法 |
JPH11305660A (ja) * | 1997-10-10 | 1999-11-05 | Certicom Corp | エルガマル・ライクなプロトコルのためのセッション・パラメータ生成方法 |
JP2001505325A (ja) * | 1997-09-16 | 2001-04-17 | コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ | タイミング攻撃を阻止する標準化されたモジュラべき乗を計算することにより復号メカニズムを実行する方法と装置 |
JP2002508523A (ja) * | 1998-03-25 | 2002-03-19 | サーティコム コーポレーション | 楕円曲線上の高速有限体演算 |
Family Cites Families (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5197024A (en) | 1989-06-14 | 1993-03-23 | Pickett Lester C | Method and apparatus for exponential/logarithmic computation |
US5600324A (en) * | 1992-05-11 | 1997-02-04 | Rockwell International Corporation | Keyless entry system using a rolling code |
DE69326072T2 (de) | 1993-11-02 | 1999-12-23 | Bull S.A., Louveciennes | Verfahren zur Prüfung eines sequentiellen endlichen Automaten |
US5504817A (en) * | 1994-05-09 | 1996-04-02 | Yeda Research And Development Co. Ltd. At The Weizmann Institute Of Science | Method and apparatus for memory efficient variants of public key encryption and identification schemes for smart card applications |
US5553012A (en) | 1995-03-10 | 1996-09-03 | Motorola, Inc. | Exponentiation circuit utilizing shift means and method of using same |
US5623527A (en) | 1996-01-30 | 1997-04-22 | Hewlett-Packard Company | Method and apparatus for determining an integer power of a floating point number |
CA2228493C (en) * | 1997-02-03 | 2005-05-03 | Nippon Telegraph And Telephone Corporation | Scheme for carrying out modular calculations based on redundant binary calculation |
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 |
US5987131A (en) * | 1997-08-18 | 1999-11-16 | Picturetel Corporation | Cryptographic key exchange using pre-computation |
US6304658B1 (en) * | 1998-01-02 | 2001-10-16 | Cryptography Research, Inc. | Leak-resistant cryptographic method and apparatus |
US6041122A (en) * | 1998-02-27 | 2000-03-21 | Intel Corporation | Method and apparatus for hiding crytographic keys utilizing autocorrelation timing encoding and computation |
EP2280502B1 (en) * | 1998-06-03 | 2018-05-02 | Cryptography Research, Inc. | Using unpredictable information to Resist Discovery of Secrets by External Monitoring |
DE69940117D1 (de) * | 1998-06-03 | 2009-01-29 | Cryptography Res Inc | Gesicherte moduläre potenzierung mit leckminimierung für chipkarten und andere kryptosysteme |
JP4216475B2 (ja) * | 1998-07-02 | 2009-01-28 | クリプターグラフィー リサーチ インコーポレイテッド | 漏洩抵抗力を有する暗号索引付き鍵の更新方法及びデバイス |
-
1998
- 1998-07-21 CA CA002243761A patent/CA2243761C/en not_active Expired - Lifetime
-
1999
- 1999-07-21 AU AU48917/99A patent/AU4891799A/en not_active Abandoned
- 1999-07-21 DE DE69942094T patent/DE69942094D1/de not_active Expired - Lifetime
- 1999-07-21 WO PCT/CA1999/000658 patent/WO2000005837A1/en active Application Filing
- 1999-07-21 JP JP2000561725A patent/JP4699610B2/ja not_active Expired - Lifetime
- 1999-07-21 AT AT99932571T patent/ATE460027T1/de not_active IP Right Cessation
- 1999-07-21 EP EP99932571A patent/EP1097541B1/en not_active Expired - Lifetime
-
2001
- 2001-01-18 US US09/761,700 patent/US7020281B2/en not_active Expired - Lifetime
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH11161169A (ja) * | 1997-06-20 | 1999-06-18 | Certicom Corp | 楕円曲線上の有限体演算の加速方法 |
JP2001505325A (ja) * | 1997-09-16 | 2001-04-17 | コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ | タイミング攻撃を阻止する標準化されたモジュラべき乗を計算することにより復号メカニズムを実行する方法と装置 |
JPH11305660A (ja) * | 1997-10-10 | 1999-11-05 | Certicom Corp | エルガマル・ライクなプロトコルのためのセッション・パラメータ生成方法 |
JP2002508523A (ja) * | 1998-03-25 | 2002-03-19 | サーティコム コーポレーション | 楕円曲線上の高速有限体演算 |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2006522375A (ja) * | 2002-12-12 | 2006-09-28 | エイアールエム リミテッド | データ処理システムにおける処理動作マスキング |
Also Published As
Publication number | Publication date |
---|---|
WO2000005837A1 (en) | 2000-02-03 |
EP1097541A1 (en) | 2001-05-09 |
DE69942094D1 (de) | 2010-04-15 |
US20010033655A1 (en) | 2001-10-25 |
CA2243761C (en) | 2009-10-06 |
CA2243761A1 (en) | 2000-01-21 |
US7020281B2 (en) | 2006-03-28 |
JP4699610B2 (ja) | 2011-06-15 |
ATE460027T1 (de) | 2010-03-15 |
EP1097541B1 (en) | 2010-03-03 |
AU4891799A (en) | 2000-02-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP2002521724A (ja) | タイミングアタック防止暗号システム | |
US7603560B2 (en) | Method and apparatus for digital signature authentication | |
JP2002521724A5 (ja) | ||
US6307935B1 (en) | Method and apparatus for fast elliptic encryption with direct embedding | |
CN109039640B (zh) | 一种基于rsa密码算法的加解密硬件系统及方法 | |
Fan et al. | Attacking OpenSSL implementation of ECDSA with a few signatures | |
JP2002528771A (ja) | 耐パワーシグニチャーアタック暗号法 | |
KR20060116612A (ko) | 이진 필드 ecc에서 랜덤 포인트 표현을 이용하여 파워해독의 복잡도를 증가시키기 위한 암호화 방법 및 장치 | |
JP2008293034A (ja) | タイミング攻撃を阻止する標準化されたモジュラべき乗を計算することにより復号メカニズムを実行する方法と装置 | |
KR20070008012A (ko) | 멱지수를 숨기는 dpa 대책의 고속 계산을 위한 암호화장치 및 방법 | |
US6252960B1 (en) | Compression and decompression of elliptic curve data points | |
Koppermann et al. | 18 seconds to key exchange: Limitations of supersingular isogeny Diffie-Hellman on embedded devices | |
JP2004512570A (ja) | 非安全な暗号加速器を用いる方法と装置 | |
EP3776305B1 (en) | Using cryptographic blinding for efficient use of montgomery multiplication | |
WO2022233605A1 (en) | Blind rotation for use in fully homomorphic encryption | |
Kotukh et al. | Method of Security Improvement for MST3 Cryptosystem Based on Automorphism Group of Ree Function Field | |
JP2009042787A (ja) | 楕円曲線上の有限体演算の加速方法 | |
CN111740821B (zh) | 建立共享密钥的方法及装置 | |
JP4616169B2 (ja) | モンゴメリ乗算剰余における変換パラメータの計算装置、方法およびそのプログラム | |
US7113593B2 (en) | Recursive cryptoaccelerator and recursive VHDL design of logic circuits | |
US7657029B2 (en) | Systems and methods for generating random addition chains | |
JP4598269B2 (ja) | 楕円曲線上の高速有限体演算 | |
Gulen et al. | Side-Channel Resistant 2048-Bit RSA Implementation for Wireless Sensor Networks and Internet of Things | |
JP5297918B2 (ja) | 暗号化数値二進変換システム及び方法とプログラム | |
EP0356127A2 (en) | A RSA computation method for efficient batch processing |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20060720 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20070125 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20100112 |
|
RD02 | Notification of acceptance of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7422 Effective date: 20100121 |
|
A524 | Written submission of copy of amendment under article 19 pct |
Free format text: JAPANESE INTERMEDIATE CODE: A524 Effective date: 20100324 |
|
RD04 | Notification of resignation of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7424 Effective date: 20100514 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20100927 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20101220 |
|
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: 20110201 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20110303 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 4699610 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
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 |
|
EXPY | Cancellation because of completion of term |