JP2002528771A - 耐パワーシグニチャーアタック暗号法 - Google Patents

耐パワーシグニチャーアタック暗号法

Info

Publication number
JP2002528771A
JP2002528771A JP2000578723A JP2000578723A JP2002528771A JP 2002528771 A JP2002528771 A JP 2002528771A JP 2000578723 A JP2000578723 A JP 2000578723A JP 2000578723 A JP2000578723 A JP 2000578723A JP 2002528771 A JP2002528771 A JP 2002528771A
Authority
JP
Japan
Prior art keywords
point
doubling
points
bit
attack
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
Application number
JP2000578723A
Other languages
English (en)
Other versions
JP2002528771A5 (ja
JP4582912B2 (ja
Inventor
ヴァンストーン,スコット,エー.
ギャラント,ロバート,ピー.
Original Assignee
サーティコム コーポレーション
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 サーティコム コーポレーション filed Critical サーティコム コーポレーション
Publication of JP2002528771A publication Critical patent/JP2002528771A/ja
Publication of JP2002528771A5 publication Critical patent/JP2002528771A5/ja
Application granted granted Critical
Publication of JP4582912B2 publication Critical patent/JP4582912B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

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/724Finite field arithmetic
    • G06F7/725Finite field arithmetic over elliptic curves
    • 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/7261Uniform execution, e.g. avoiding jumps, or using formulae with the same power profile

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)
  • Complex Calculations (AREA)
  • Emergency Protection Circuit Devices (AREA)
  • Dc Digital Transmission (AREA)
  • Control Of Electric Motors In General (AREA)
  • Control Of Eletrric Generators (AREA)
  • Executing Machine-Instructions (AREA)
  • Compositions Of Oxide Ceramics (AREA)

Abstract

(57)【要約】 本発明は、体上に定義された楕円曲線上の点Pの倍数kを算出する方法であって、以下のステップを含む。すなわち、上記ナンバーkを二進ベクトルkI として表し、点P1 およびP2 の順序対を形成し、点P1 およびP2 は最大でPだけ異なり、そして、順次各ビット列ki を選択し、上記ki のそれぞれに対して、ki が0のとき、点P1 ′、P2 ′の新しいセットを算出し、一番目の点P1 を二倍算することによって上記点P1 ′を得、そしてP1 およびP2 を加算することによって上記点P2 ′を得る。あるいは、ki が1のとき、点P1 ′、P2 ′の新しいセットを演算し、二番目の点P2 を二倍算することによって、上記点P 2 ′を得、そして点P1 およびP2 を加算することによって上記点P1 ′を得る。それによって、上記二倍算あるいは加算が、常に上記ビット列bi のそれぞれに対して同じ順序で実行され、これにより、この方法におけるタイミングアタックを極力減少させることができる。本発明の実施形態は、乗算可能な群および加算可能な群の両方に適用される。

Description

【発明の詳細な説明】
本発明は、暗号システムにおけるパワーシグニチャーアタック(power signat
ure attack)をできるかぎり減少させる方法および装置に関するものである。
【0001】 〔発明の背景〕 暗号システムは、通常、それなくしては、その機構を破壊することが不可能な
特定の情報を機密に保持することによって、その安全性を維持している。この機
密情報は、通常、暗号化プロセッサ中の保護領域に記憶される必要があり、これ
によって、アタッカーが直接それにアクセスすることを困難にしている。しかし
ながら、この機密情報を入手するために、様々な手法あるいはアタックが試行さ
れている。これらの一つにタイミングあるいはパワーシグニチャーアタックがあ
る。
【0002】 タイミングアタック(あるいは、「サイドチャネルアッタク(side channel a
ttack )」)は、明らかに、暗号化動作期間中に遂行されたコンピュータの逐次
演算の結果に基づくものである。このアタックは、通常、暗号化アルゴリズムの
処理の一面を利用する。
【0003】 例えば、最近の、RSAおよび楕円曲線(EC)等の公開かぎ暗号化手法は、
以下の数学的群上で作用する。すなわち、RSAの
【0004】
【数1】
【0005】 、有限体
【0006】
【数2】
【0007】 における離散対数系、あるいはこれら有限体(finite field)上のEC群(EC g
roup)である。この群演算(group operation )は、RSAでは、乗算モジュロ
n(multiplication modulo n )、ECでは、ポイント加算(addition of poin
ts)と呼ばれ、スカラ演算を実行するための特定の方法で逐次的に繰り返される
。RSAでは、演算子は指数(exponent)と呼ばれ、演算はべき乗(exponentia
tion)と呼ばれ、そして、乗算法は一般的に、繰り返し二乗算−乗算(square-a
nd-multiply )として知られている。したがって、ナンバー
【0008】
【数3】
【0009】 および整数0≦k<pが与えられると、上記指数は、その二進表現は
【0010】
【数4】
【0011】 であるが、値ak mod nとして、「二乗算−乗算」アルゴリズム(Handbook
of Applied Cryptography P.615参照)の繰り返し使用によって算出される。同
様に、g(x)∈Fp mおよび整数0≦k≦pm −1が与えられると、g(x) k mod f(x)がこの方法で算出される。
【0012】 一方、ECでは、演算子はスカラ乗数(scalar multiplier )であり、その演
算はポイントスカラ乗算(scalar multiplication of a point)と呼ばれ、その
方法は、「二倍算−加算(double-and-add)」として知られている。こうして、
kが正の整数で、Pが楕円曲線ポイントである場合には、kPは、「二倍算−加
算」法で求められる。これら両方法とも従来公知であり、これ以上の説明は省略
する。
【0013】 前述のように、アタッカーが機密キーを一旦保持すれば(長期あるいはセッシ
ョンにかかわらず)、アタックされた構成要素に対する署名および暗号解読機密
メッセージを偽造することができる。このように、システム内の機密キーの機密
性と保全性を維持することが最重要である。
【0014】 機密キーを獲得するための多くの技術が提案されている。暗号化動作は、逐次
的に動作される専用、あるいは汎用のプロセッサにおいて行われる。最近のアタ
ック方法は、例えば、Paul Kochersの記事「Timing attacks on implementation
s of Diffie-Hellman,RSA,DSS and other systems 」に述べられているように、
公開文書で提案されている。これらのアタックは、これらのプロセッサのタイミ
ング分析、すなわち、「ブラックボックス」動作のタイミング分析に基づくもの
である。例を挙げれば、アタッカーは、機密キー動作中のプロセッサの瞬時の電
力使用を補足することによって、パワーシグニチャー(power signature )を獲
得する。パワーシグニチャーは各クロックサイクル毎のゲート動作の数に関連す
る。上記のパラグラフで述べた各基本動作は、個別のタイミングパターンを発生
する。瞬時の電力使用によらないパワーシグニチャー獲得のための他の方法も存
在する。
【0015】 忍耐を要する注意深い、端から端までの波形分析によって、加算−二倍算ある
いは二乗算−乗算の演算の順序を分解することができる。標準アルゴリズムを使
用すると、指数あるいはスカラ乗算のいずれかのビット毎に、それぞれ、二倍算
あるいは二乗算のどちらかが発生する。したがって、二倍算波形が互いに隣接す
る箇所は、ゼロをもつビット位置を表し、加算波形が存在する箇所は1をもつビ
ットを示す。したがって、これらのタイミング測定が分析され、機密キーの全体
が発見されると、当該システムが危険にさらされることになる。
【0016】 前述の「二乗算−乗算」あるいは「二倍算−加算」技術に加えて、kPを算出
する他の方法として、例えば、「二進ラダー(binary ladder )」あるいはモン
ゴメリー(Montgomery)法("Speeding the Pollard and Elliptic Curve Metho
ds of Factorization" by Peter L. Montgomery 参照)が挙げられる。この方法
では、一対の点(iP,(i+1)P)のx座標が演算される。モンゴメリー法
は、例によってより明確に示されるように、モジュラ乗算を実行するための能率
的な方法である。群E(Fp )および楕円曲線上の点Pが与えられると、モンゴ
メリ法は他の点kPを算出するため使用される。順序対である点(iP,(i+
1)P)が与えられると、それから、kの二進表現である各ビットに、ビットi
が0ならば、次に算出される点セットは(2iP,(2i+1)P)となり、ビ
ットiが1ならば、次の点セットは((2i+1)P,(2i+2)P)となる
。すなわち、この対の一番目のものは、ビットが0であるか1であるかによって
、二倍算あるいは加算することによって得られる。
【0017】 プロセッサ中では、二倍算および加算の各々は独特なパワーシグニチャーを発
生する乗算演算を伴う。図1(a)に概略して示すこれらパワーシグニチャーを
観察することによって、アタッカーは、0の列(0s)および1の列(1s)の
シーケンスを引出し、そして、使用されたスカラあるいは指数を引き出す。
【0018】 モンゴメリ法は、前述のようなストレートな「二倍算−加算」による極めて高
い能率性のため、EC暗号システムに好適に使用される。
【0019】 上記のようなモンゴメリ法に基くアタックは、RSA機密キー動作が行われて
いる際に特に重大である。ダン・ボネー等(Dan Boneh et al.)によって出版さ
れた最近の文書(題名:"An Attack On RSA Given A Small Fraction Of The Pr
ivate Key Bits" )によれば、低い公開指数(low public exponent )を有する
RSAに対しては、機密キービット列の1/4が与えられると、敵は機密キー全
体を確定できることが示されている。このアタックに上述のパワーシグニチャー
アッタクを組み合わせると、RSA法は非常に攻撃されやすいものになる。
【0020】 そこで、本発明の目的は、特に、機密キー動作においてモンゴメリ法を使用す
る場合に、タイミングアッタク成功の危険を極力減少させることができるシステ
ムを提供することにある。
【0021】 〔本発明の概要〕 本発明によれば、体(field )上に定義された楕円曲線上の点Pの倍数k(mu
ltiple k)を算出する方法が提供されており、この方法は、以下のステップを含
んでいる。すなわち、 a)ナンバーkをビット列ki の二進ベクトル(binary vector )として表し
; b)点P1 およびP2 の順序対を形成し、点P1 およびP2 は最大でPだけ異
なり;そして、 c)順次上記各ビット列ki を選択し、上記ki のそれぞれに対して; i)ki が0のとき、 ii)点P1 ′、P2 ′の新しいセットを算出し、上記点P1 ′は一番
目の点P1 を二倍算して得られたものであり;そして、 iii)上記点P2 ′は点P1 およびP2 を加算して得られたものであ
り; あるいは、ki が1のとき、 iv)点P1 ′、P2 ′の新しいセットを算出し、上記点P2 ′は二番目の
点P2 を二倍算して得られたものであり;そして、 v)上記点P1 ′は点P1 およびP2 を加算して得られたものである。 これにより、上記二倍算あるいは加算が、常に上記ビット列bi の各々に対して
同じ順序で実行され、これによって上記方法におけるタイミングアタックを極小
化する。
【0022】 本発明の他の態様においては、上記体は、F2 m あるいはFp である。
【0023】 本発明のさらに他の態様においては、上記方法を実行するプロセッサのハード
ウェアが備えられている。
【0024】 〔好適な実施形態の詳細な説明〕 本発明の好ましい実施形態についての上記および他の特徴点は、添付した図面
を参照した以下の詳細な説明によって明白になるであろう。
【0025】 図2に示すように、F2 m あるいはFp の体(field )上に定義された楕円曲
線上の点の倍数(multiple)を算出するための一般化されたアルゴリズムは、符
号20によって一般的に示される。本実施形態では、点Pは本システムのパラメ
ータである。このアルゴリズムは、点kPの倍数を算出し、ここで、スカラkは
機密キーか他の機密値の場合がある。このスカラkは、レジスタ中でビット列b I 24を有する二進ベクトルとして表される。一対の要素(elements)(a,b
)が形成され、ここで、aおよびbは、最大でPだけ異なる楕円曲線上の点であ
るか、あるいは、群Fp の場合には、aおよびbは倍数gだけ異なる要素gであ
る。
【0026】 本実施形態では、楕円曲線法を考慮するため、この要素aおよびbは、順序対
である点iPおよび(i+1P)のx座標に相当する。楕円曲線点のx座標を得
てそれを利用するための改良モンゴメリ法(An improved Montgomery method )
は、当発明に参照のため取り入れられた、本出願人による継続中の米国特許出願
No.09/047,518に述べられている。スカラkの二進表現の一番目の
ビットで始まるビットbi が評価される。このビットの値によって、二つのアル
ゴリズム26あるいは28の一つが選択される。ブロック25aに示されたよう
に、このビットが0である場合には、入力対(a,b)の一番目の要素aは二倍
算され、出力対(a′,b′)の一番目の要素aに記憶される。一方、入力の一
番目と二番目の要素が加算されa+b、出力対(a′,b′)の二番目の要素b
′に配置される。ブロック25bに示されたように、このビットが1である場合
には、入力対(a, b)の二番目の要素bは二倍算され、出力対(a′,b′)
の二番目の要素bに記憶される。一方、一番目と二番目の入力要素が加算され、
すなわち、a+b、出力対(a′,b′)の一番目の要素a′に配置される。こ
れらのステップは、スカラkのすべてのビットに対して繰り返される。
【0027】 こうして、図1(b)に示すように、「二倍算」の演算に引き続いて「加算」
の演算を各ビットに対して実行することにより、一貫したパワーシグニチャー波
形が生成されるため、アタックを試みる者にほとんど情報を与えない。この動作
は、反対の順序で遂行されてもよい。すなわち、一番目に「加算」の演算、つい
で「二倍算」の演算を実行する。RSA法では、同様の演算は、「二乗算と乗算
」である。
【0028】 より詳細には、「二進ラダー」法を使用してkPを算出するとすれば、いくつ
かの計算後、x座標(iP,(i+1)P)を得る、すなわち、図4に概略して
示すように、kの処理されたiビット列を得る。処理すべき次のビットが0の場
合には、x座標(の順位対)(2iP,(2i+1P)P)を形成しなければな
らない。次のbi+bが1の場合には、x座標(の順位対)((2i+1)P,
(2i+2)P)を形成しなければならない。
【0029】 「二倍算」式は、入力にかかわらず、おおよそ同じ量の電力(および時間)を
必要とすると考えられる。加算式は、入力にかかわらず、同じ量の電力(および
時間)を必要とすると考えられる。しかしながら、二倍算式の実行には、加算式
の実行と異なる量(通常のモンゴメリ式使用の場合には、より少ない量)の電力
が必要とされる。
【0030】 このことから、パワーバーをモニターすることによって、「二倍算」と「加算
」とを区別することができる。ここで、これらの式を一貫した順序で実行すれば
、処理中の1のパワーシグニチャーおよび処理中の0のパワーシグニチャーは、
区別不可能となる。各々が「二倍算」のパワーシグニチャーと、それに続く「加
算」のパワーシグニチャーからなる。
【0031】 両方の場合において、評価の順序を逆転しても、パワーシグニチャーは、区別
不可能である。
【0032】 このことから、楕円曲線上のkPを算出する本方法は、電力消費の統計量を通
じて整数kを明示することを避けるため、より好適である。「モンゴメリ」、「
二倍算」および「加算」式を使用すると、本方法は、特に反転をさける射影形式
を用いる場合にも有効になる。
【0033】 効率の面においては、「二進ラダー」法の各ステップにおいて、二つの独立し
た演算が実行されねばならないことが、注目される。すなわち、「加算」式の結
果は「二倍算」式に対して必要とされず、その逆も成り立つ。このことは、能率
的な並列的ハードウエア処理を考慮に入れる。
【0034】 そこで、図3を参照して、本方法の並列的ハードウエア処理の概略を符号30
によって示す。この処理においては、第一、第二専用プロセッサが備えられてい
る。第一プロセッサ32は、「二倍算」もしくは「二乗算」またはその両方の演
算を行い、一方、第二プロセッサ34は、「加算」もしくは「乗算」またはその
両方の演算を行う。主プロセッサ36は、32と34のどちらの専用プロセッサ
が起動されるかを決定する。
【0035】 各プロセッサ32および34が同時に駆動される(ただし、回路が使用される
時期は異なる)。これら回路の入力および出力は、上述の場合にしたがって、す
なわち、ビットbi =0あるいはビットbi =1 を使用して、操作される。この
簡単な例は、直列的処理に比べてほぼ2倍のスピードアップをもたらす。少なく
とも従来の射影モンゴメリ式の場合には、加算回路は二倍算回路より時間が多く
かかり、より複雑であることが注目される。二倍算回路を加算回路より速く終了
させる必要はないので、より遅く設定してもよい。実際には、このことは二倍算
回路をより安く構成できることを意味する。
【0036】 本発明について、ある特定の実施形態に基づいて説明したが、特許請求の範囲
として記載された本発明の精神および範囲内において、本実施形態が様々に変形
されることは明白であろう。
【0037】 本発明において、排他的独占権を求める具体的内容は、特許請求の範囲に記載
した通りである。
【図面の簡単な説明】
【図1】 (a)および(b)は、プロセッサのパワー使用シグニチャー(processor po
wer usage signature )を示す概略図である。
【図2】 本発明の一実施形態による方法を示すフロー図である。
【図3】 本発明の一実施形態による方法を実行する対称プロセッサ(symmetric proces
sor )を示す概略図である。
【図4】 二進の整数kを示す概略図である。
───────────────────────────────────────────────────── フロントページの続き (81)指定国 EP(AT,BE,CH,CY, DE,DK,ES,FI,FR,GB,GR,IE,I T,LU,MC,NL,PT,SE),OA(BF,BJ ,CF,CG,CI,CM,GA,GN,GW,ML, MR,NE,SN,TD,TG),AP(GH,GM,K E,LS,MW,SD,SL,SZ,TZ,UG,ZW ),EA(AM,AZ,BY,KG,KZ,MD,RU, TJ,TM),AL,AM,AT,AU,AZ,BA, BB,BG,BR,BY,CH,CN,CU,CZ,D E,DK,EE,ES,FI,GB,GD,GE,GH ,GM,HR,HU,ID,IL,IN,IS,JP, KE,KG,KP,KR,KZ,LC,LK,LR,L S,LT,LU,LV,MD,MG,MK,MN,MW ,MX,NO,NZ,PL,PT,RO,RU,SD, SE,SG,SI,SK,SL,TJ,TM,TR,T T,UA,UG,US,UZ,VN,YU,ZW (72)発明者 ギャラント,ロバート,ピー. カナダ,オンタリオ州 エル5エム 5エ ヌ1,ミシソーガ,ローズブッシュ ロー ド 4788 Fターム(参考) 5J104 AA25 AA44 JA25

Claims (3)

    【特許請求の範囲】
  1. 【請求項1】 体上に定義された楕円曲線上の点Pの倍数kを算出する方法であって、 a)ナンバーkを二進ベクトルki として表し; b)点P1 およびP2 の順序対を形成し、点P1 およびP2 は最大でPだけ異
    なり;そして、 c)順次上記各ビット列ki を選択し、上記ki のそれぞれに対して; i)ki が0のとき、一番目の点P1 を二倍算して点P1 ′を得;そして
    1 およびP2 を加算して点P2 ′を得ることにより、点P1 ′、P2 ′の新し
    いセットを算出し; あるいは、 ii)ki が1のとき、二番目の点P2 を二倍算して点P2 ′を得;そして
    点P1 およびP2 を加算して点P1 ′を生成することによって、点P1 ′、P2 ′の新しいセットを算出するステップを含み、 それによって、上記二倍算あるいは加算が、常に上記ビット列bi の各々に対し
    て同じ順序で実行され、これにより本方法におけるタイミングアタックを極小化
    する方法。
  2. 【請求項2】 上記体が、F2 m 上で定義されている請求項1に記載の方法。
  3. 【請求項3】 上記体が、Fp 上で定義されている請求項1に記載の方法。
JP2000578723A 1998-10-28 1999-10-05 耐パワーシグニチャーアタック暗号法 Expired - Lifetime JP4582912B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
CA002252078A CA2252078C (en) 1998-10-28 1998-10-28 Power signature attack resistant cryptographic system
CA2,252,078 1998-10-28
PCT/CA1999/000919 WO2000025204A1 (en) 1998-10-28 1999-10-05 Power signature attack resistant cryptography

Publications (3)

Publication Number Publication Date
JP2002528771A true JP2002528771A (ja) 2002-09-03
JP2002528771A5 JP2002528771A5 (ja) 2006-11-24
JP4582912B2 JP4582912B2 (ja) 2010-11-17

Family

ID=4162964

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2000578723A Expired - Lifetime JP4582912B2 (ja) 1998-10-28 1999-10-05 耐パワーシグニチャーアタック暗号法

Country Status (8)

Country Link
US (1) US6738478B1 (ja)
EP (1) EP1044405B1 (ja)
JP (1) JP4582912B2 (ja)
AT (1) ATE268022T1 (ja)
AU (1) AU5964299A (ja)
CA (1) CA2252078C (ja)
DE (1) DE69917592T2 (ja)
WO (1) WO2000025204A1 (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2006118092A1 (ja) * 2005-04-27 2006-11-09 Matsushita Electric Industrial Co., Ltd. 情報セキュリティ装置及び楕円曲線演算装置
JP2009537025A (ja) * 2006-03-31 2009-10-22 アクサルト・エス・アー サイドチャネル攻撃からの保護
WO2012090284A1 (ja) * 2010-12-27 2012-07-05 三菱電機株式会社 演算装置、演算装置の楕円スカラー倍算方法、楕円スカラー倍算プログラム、演算装置の剰余演算方法、剰余演算プログラム、演算装置のゼロ判定方法およびゼロ判定プログラム

Families Citing this family (47)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE19963408A1 (de) * 1999-12-28 2001-08-30 Giesecke & Devrient Gmbh Tragbarer Datenträger mit Zugriffsschutz durch Schlüsselteilung
JP3821631B2 (ja) 2000-05-30 2006-09-13 株式会社日立製作所 楕円曲線暗号におけるスカラー倍計算方法及び装置、並びに記憶媒体
FR2825863B1 (fr) * 2001-06-07 2003-09-19 Gemplus Card Int Procede de securisation d'un calcul d'exponentiation dans un dispositif electronique
DE10151129B4 (de) 2001-10-17 2004-07-29 Infineon Technologies Ag Verfahren und Vorrichtung zum Berechnen eines Ergebnisses einer Exponentiation in einer Kryptographieschaltung
DE10156708B4 (de) * 2001-11-19 2005-09-29 Infineon Technologies Ag Verfahren und Vorrichtung zum Multiplizieren und Verfahren und Vorrichtung zum Addieren auf einer elliptischen Kurve
JP4067818B2 (ja) 2001-12-10 2008-03-26 富士通株式会社 楕円曲線暗号装置、楕円曲線暗号プログラム及び楕円曲線暗号の演算方法
JP4034585B2 (ja) * 2002-01-28 2008-01-16 松下電器産業株式会社 楕円曲線演算装置及び楕円曲線演算方法
FR2838210B1 (fr) * 2002-04-03 2005-11-04 Gemplus Card Int Procede cryptographique protege contre les attaques de type a canal cache
US7555122B2 (en) 2002-12-04 2009-06-30 Wired Communications LLC Method for elliptic curve point multiplication
WO2004055756A1 (ja) * 2002-12-18 2004-07-01 Fujitsu Limited 秘密鍵を用いた耐タンパ楕円曲線暗号処理
US7646872B2 (en) * 2004-04-02 2010-01-12 Research In Motion Limited Systems and methods to securely generate shared keys
CA2594670C (en) * 2005-01-21 2014-12-23 Certicom Corp. Elliptic curve random number generation
CA2542556C (en) 2005-06-03 2014-09-16 Tata Consultancy Services Limited An authentication system executing an elliptic curve digital signature cryptographic process
DE102005042339B4 (de) * 2005-09-06 2007-08-16 Siemens Ag Verfahren zum sicheren Ver- oder Entschlüsseln einer Nachricht
DE602005020702D1 (de) 2005-10-18 2010-05-27 Telecom Italia Spa Verfahren zur skalarmultiplikation in gruppen elliptischer kurven über primkörpern für nebenkanal-attacken-beständige kryptosysteme
DE602005020991D1 (de) * 2005-10-28 2010-06-10 Telecom Italia Spa Verfahren zur skalarmultiplikation in gruppen ellir nebenkanalattacken-beständige kryptosysteme
JP5073669B2 (ja) 2005-11-03 2012-11-14 サーティコム コーポレーション 同時スカラー乗算方法
FR2893796B1 (fr) * 2005-11-21 2008-01-04 Atmel Corp Procede de protection par chiffrement
US9313027B2 (en) 2005-12-29 2016-04-12 Proton World International N.V. Protection of a calculation performed by an integrated circuit
DE102006002891B4 (de) * 2006-01-20 2009-06-04 Siemens Ag Verfahren, Vorrichtung und System zum Verifizieren von auf einer elliptischen Kurve ermittelten Punkten
KR100850202B1 (ko) * 2006-03-04 2008-08-04 삼성전자주식회사 Ecc 패스트 몽고매리 전력 래더 알고리즘을 이용하여dfa 에 대응하는 암호화 방법
WO2007104706A1 (fr) * 2006-03-16 2007-09-20 Gemplus Procede de securisation d'un calcul d'une exponentiation ou d'une multiplication par un scalaire dans un dispositif electronique
DE102006013515A1 (de) * 2006-03-23 2007-10-04 Siemens Ag Kryptographisches Verfahren mit elliptischen Kurven
KR20090006176A (ko) * 2006-04-06 2009-01-14 엔엑스피 비 브이 평문 판정 방법
US20070288740A1 (en) * 2006-06-09 2007-12-13 Dale Jason N System and method for secure boot across a plurality of processors
US20070288739A1 (en) * 2006-06-09 2007-12-13 Dale Jason N System and method for masking a boot sequence by running different code on each processor
US7594104B2 (en) * 2006-06-09 2009-09-22 International Business Machines Corporation System and method for masking a hardware boot sequence
US20070288738A1 (en) * 2006-06-09 2007-12-13 Dale Jason N System and method for selecting a random processor to boot on a multiprocessor system
US20070288761A1 (en) * 2006-06-09 2007-12-13 Dale Jason N System and method for booting a multiprocessor device based on selection of encryption keys to be provided to processors
US7774616B2 (en) * 2006-06-09 2010-08-10 International Business Machines Corporation Masking a boot sequence by providing a dummy processor
US7856101B2 (en) * 2007-02-07 2010-12-21 King Fahd University Of Petroleum And Minerals Method for elliptic curve scalar multiplication
US8243919B2 (en) 2007-03-07 2012-08-14 Research In Motion Limited Method and apparatus for performing elliptic curve scalar multiplication in a manner that counters power analysis attacks
CN101689233B (zh) * 2007-07-05 2013-01-02 Nxp股份有限公司 安全敏感系统中的微处理器
US7991162B2 (en) * 2007-09-14 2011-08-02 University Of Ottawa Accelerating scalar multiplication on elliptic curve cryptosystems over prime fields
WO2009055904A1 (en) * 2007-10-30 2009-05-07 Certicom Corp. Fault detection in exponentiation and point multiplication operations using a montgomery ladder
CA2752750A1 (en) * 2009-02-27 2010-09-02 Certicom Corp. System and method for performing exponentiation in a cryptographic system
US8334705B1 (en) 2011-10-27 2012-12-18 Certicom Corp. Analog circuitry to conceal activity of logic circuitry
US8635467B2 (en) 2011-10-27 2014-01-21 Certicom Corp. Integrated circuit with logic circuitry and multiple concealing circuits
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
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
US9391773B2 (en) 2014-04-04 2016-07-12 Qualcomm Incorporated Elliptic curve point multiplication procedure resistant to side-channel information leakage
US9645794B2 (en) * 2014-09-23 2017-05-09 Texas Instruments Incorporated Homogeneous atomic pattern for double, add, and subtract operations for digital authentication using elliptic curve cryptography
US9590805B1 (en) * 2014-12-23 2017-03-07 EMC IP Holding Company LLC Ladder-based cryptographic techniques using pre-computed points
US9735953B2 (en) * 2015-03-06 2017-08-15 Qualcomm Incorporated Side channel analysis resistant architecture
US10491401B2 (en) 2017-02-21 2019-11-26 Google Llc Verification of code signature with flexible constraints
CN108875416B (zh) * 2018-06-22 2020-05-19 北京智芯微电子科技有限公司 椭圆曲线多倍点运算方法和装置

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH10222065A (ja) * 1997-02-03 1998-08-21 Nippon Telegr & Teleph Corp <Ntt> 冪乗剰余演算方法及び装置

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6252959B1 (en) * 1997-05-21 2001-06-26 Worcester Polytechnic Institute Method and system for point multiplication in elliptic curve cryptosystem
EP0892520A3 (en) * 1997-07-17 2001-10-17 Matsushita Electric Industrial Co., Ltd. Elliptic curve calculation apparatus capable of calculating multiples at high speed
CA2243761C (en) * 1998-07-21 2009-10-06 Certicom Corp. Timing attack resistant cryptographic system
US20020057796A1 (en) * 1998-12-24 2002-05-16 Lambert Robert J. Method for accelerating cryptographic operations on elliptic curves
EP1323027A1 (en) * 2000-08-29 2003-07-02 NTRU Cryptosystems, Inc. Speed enhanced cryptographic method and apparatus
CA2369545C (en) * 2001-12-31 2013-01-08 Certicom Corp. Method and apparatus for elliptic curve scalar multiplication

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH10222065A (ja) * 1997-02-03 1998-08-21 Nippon Telegr & Teleph Corp <Ntt> 冪乗剰余演算方法及び装置

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2006118092A1 (ja) * 2005-04-27 2006-11-09 Matsushita Electric Industrial Co., Ltd. 情報セキュリティ装置及び楕円曲線演算装置
US7940927B2 (en) 2005-04-27 2011-05-10 Panasonic Corporation Information security device and elliptic curve operating device
JP4825199B2 (ja) * 2005-04-27 2011-11-30 パナソニック株式会社 情報セキュリティ装置及び楕円曲線演算装置
JP2009537025A (ja) * 2006-03-31 2009-10-22 アクサルト・エス・アー サイドチャネル攻撃からの保護
WO2012090284A1 (ja) * 2010-12-27 2012-07-05 三菱電機株式会社 演算装置、演算装置の楕円スカラー倍算方法、楕円スカラー倍算プログラム、演算装置の剰余演算方法、剰余演算プログラム、演算装置のゼロ判定方法およびゼロ判定プログラム
KR101439804B1 (ko) 2010-12-27 2014-09-11 미쓰비시덴키 가부시키가이샤 연산 장치, 연산 장치의 타원 스칼라 곱셈 방법, 타원 스칼라 곱셈 프로그램이 기록된 컴퓨터 판독 가능한 기록 매체, 연산 장치의 잉여 연산 방법 및 잉여 연산 프로그램이 기록된 컴퓨터 판독 가능한 기록 매체
US9176707B2 (en) 2010-12-27 2015-11-03 Mitsubishi Electric Corporation Arithmetic apparatus, elliptic scalar multiplication method of arithmetic apparatus, elliptic scalar multiplication program, residue operation method of arithmetic apparatus, and residue operation program

Also Published As

Publication number Publication date
EP1044405A1 (en) 2000-10-18
WO2000025204A1 (en) 2000-05-04
CA2252078C (en) 2009-02-17
US6738478B1 (en) 2004-05-18
AU5964299A (en) 2000-05-15
CA2252078A1 (en) 2000-04-28
ATE268022T1 (de) 2004-06-15
DE69917592D1 (de) 2004-07-01
EP1044405B1 (en) 2004-05-26
DE69917592T2 (de) 2005-06-02
JP4582912B2 (ja) 2010-11-17

Similar Documents

Publication Publication Date Title
JP2002528771A (ja) 耐パワーシグニチャーアタック暗号法
US20210256165A1 (en) Protecting parallel multiplication operations from external monitoring attacks
US6876745B1 (en) Method and apparatus for elliptic curve cryptography and recording medium therefore
US6285760B1 (en) Method and apparatus for digital signature authentication
US7046801B2 (en) Method of calculating multiplication by scalars on an elliptic curve and apparatus using same and recording medium
KR101154695B1 (ko) 암호 처리 연산 장치
JP2009537025A (ja) サイドチャネル攻撃からの保護
US20010033655A1 (en) Timing attack resistant cryptographic system
US20070064930A1 (en) Modular exponentiation with randomized exponent
Trichina et al. Implementation of elliptic curve cryptography with built-in counter measures against side channel attacks
US11824986B2 (en) Device and method for protecting execution of a cryptographic operation
EP0673134B1 (en) Pseudo-random number generator, and communication method and apparatus using encrypted text based upon pseudo-random numbers generated by said generator
US7809133B2 (en) Randomized modular reduction method and hardware therefor
KR20080086476A (ko) 암호 처리 장치, 및 암호 처리 방법, 및 컴퓨터 프로그램
JP2003533752A (ja) 暗号法及び装置
US9419789B2 (en) Method and apparatus for scalar multiplication secure against differential power attacks
Kim et al. Message blinding method requiring no multiplicative inversion for RSA
JP2003521010A (ja) 公開鍵暗号アルゴリズムを用いる電子構成品におけるモジュラべき乗演算アルゴリズム
Cao et al. Two lattice-based differential fault attacks against ECDSA with w NAF algorithm
Leadbitter et al. Attacking DSA under a repeated bits assumption
Gulen et al. Side-Channel Resistant 2048-Bit RSA Implementation for Wireless Sensor Networks and Internet of Things
Hodjat et al. A scalable and high performance elliptic curve processor with resistance to timing attacks
Takemura et al. ECC Atomic Block with NAF against Strong Side-Channel Attacks on Binary Curves
US7403965B2 (en) Encryption/decryption system for calculating effective lower bits of a parameter for Montgomery modular multiplication
US7480380B2 (en) Method for efficient generation of modulo inverse for public key cryptosystems

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20061002

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20061002

RD02 Notification of acceptance of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7422

Effective date: 20100121

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100205

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20100430

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20100512

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20100514

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20100607

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20100614

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100705

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

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

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

Ref document number: 4582912

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130910

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

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