JP4962165B2 - 暗号処理装置,暗号処理プログラム及び暗号処理方法 - Google Patents
暗号処理装置,暗号処理プログラム及び暗号処理方法 Download PDFInfo
- Publication number
- JP4962165B2 JP4962165B2 JP2007165154A JP2007165154A JP4962165B2 JP 4962165 B2 JP4962165 B2 JP 4962165B2 JP 2007165154 A JP2007165154 A JP 2007165154A JP 2007165154 A JP2007165154 A JP 2007165154A JP 4962165 B2 JP4962165 B2 JP 4962165B2
- Authority
- JP
- Japan
- Prior art keywords
- secret information
- information
- masked
- random number
- intermediate value
- 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 - Fee Related
Links
Images
Description
請求項10の発明は、コンピュータを、第1の秘密情報と第1の乱数情報とを排他的論理和により加算することによって前記第1の秘密情報をマスクし、第1のマスクされた秘密情報を算出する手段と、第2の秘密情報と第2の乱数情報とを排他的論理和により加算することによって前記第2の秘密情報をマスクし、第2のマスクされた秘密情報を算出する手段と、前記第1のマスクされた秘密情報と前記第2の乱数情報とを用いて、前記マスクされた秘密情報のマスクを除去するための第1の中間値を算出する手段と、前記第2のマスクされた秘密情報と前記第1の乱数情報とを用いて、前記マスクされた秘密情報のマスクを除去するための第2の中間値を算出する手段と、前記第1の乱数情報と前記第2の乱数情報とを用いて、前記マスクされた秘密情報のマスクを除去するための第3の中間値を算出する手段と、前記第1のマスクされた秘密情報と、前記第2のマスクされた秘密情報と、前記第1の中間値と、前記第2の中間値と、前記第3の中間値とを用いて、前記第1の秘密情報と前記第2の秘密情報との論理和の値を算出する手段と、として機能させるための暗号処理プログラムである。
請求項12の発明は、記憶部及び制御部を備える暗号処理装置が、第1の秘密情報と第1の乱数情報とを排他的論理和により加算することによって前記第1の秘密情報をマスクし、第1のマスクされた秘密情報を算出する工程と、前記暗号処理装置が、第2の秘密情報と第2の乱数情報とを排他的論理和により加算することによって前記第2の秘密情報をマスクし、第2のマスクされた秘密情報を算出する工程と、前記暗号処理装置が、前記第1のマスクされた秘密情報と前記第2の乱数情報とを用いて、前記マスクされた秘密情報のマスクを除去するための第1の中間値を算出する工程と、前記暗号処理装置が、前記第2のマスクされた秘密情報と前記第1の乱数情報とを用いて、前記マスクされた秘密情報のマスクを除去するための第2の中間値を算出する工程と、前記暗号処理装置が、前記第1の乱数情報と前記第2の乱数情報とを用いて、前記マスクされた秘密情報のマスクを除去するための第3の中間値を算出する工程と、前記暗号処理装置が、前記第1のマスクされた秘密情報と、前記第2のマスクされた秘密情報と、前記第1の中間値と、前記第2の中間値と、前記第3の中間値とを用いて、前記第1の秘密情報と前記第2の秘密情報との論理和の値を算出する工程と、を備える暗号処理方法である。
(1)マスクされた秘密情報及び/又は中間値を用いて、秘密情報の論理積及び/又は論理和に関する演算を行うので、演算中に秘密情報を用いる必要がなく、秘密情報が漏洩することがない。また、最終的には、中間値によってマスクを除去することができるので、秘密情報にマスク処理をしたまま非線形演算を行っても正しい演算結果を得ることができる。
(2)中間値やマスクされた秘密情報から予測される秘密情報の出現率が等しくなるような演算式を用いて演算を行うので、秘密情報が予測されることがない。
(3)各秘密情報(a,b)を入れ替えても、マスクされた秘密情報を持つ変数(A,B)に各秘密情報(a,b)の変化を反映させれば、演算結果が変わらないような対称な演算式を用いて演算処理を行うので、秘密情報が予測されることがない。
(5)秘密情報の論理積及び/又は論理和に関する演算は、ハッシュ関数,ストリーム暗号及びブロック暗号のうち少なくとも1つの処理の一部又は全部に用いられるので、これらの処理をより安全に行うことができる。
(実施形態)
図1は、本発明による暗号処理装置の実施形態を示す図である。
本実施形態のICカード(暗号処理装置)10は、通信部11と、CPU12と、ROM13と、RAM14と、EEPROM15と、乱数生成部16などとを備え、非線形演算処理におけるサイドチャネル攻撃に対応可能なICカードである。
CPU12は、通信部11を介してリーダライタ20と交信し、ROM13に記憶されているプログラム(制御プログラム,暗号処理プログラムなど)に基づいてICカード10を統括制御する部分である。また、CPU12は、後述する秘密情報、乱数情報、マスクされた秘密情報、中間値などを用いて、秘密情報の論理積や論理和を、秘密情報を漏洩せずに、安全かつ間接的に求める演算を行う。
RAM14は、揮発性のメモリであり、CPU12が制御を行う上で作業領域として使用される。
EEPROM15は、書き換え可能な不揮発性のメモリであり、ICカード10に記録されるデータを格納する。
乱数生成部16は、CPU12の指示により、所定の乱数を発生する部分である。
暗号処理時には、CPU12の指示により、演算用のデータとして、RAM14に秘密情報a,b、乱数情報m1,m2,マスクされた秘密情報A,Bなどが展開される。なお、図2では、秘密情報はa〜z、マスクされた秘密情報はA〜Zの例で示しているが、以下の説明では、2つの秘密情報a,bと、2つのマスクされた秘密情報A,Bの例で説明する。
ここでは、秘密情報aと秘密情報bとのAND演算(論理積)について説明する。なお、以下の演算処理は、ICカード10のCPU12が処理を行わせている。
サイドチャネル攻撃の対策として、秘密情報に乱数をXOR演算(排他的論理和)し、その状態のまま演算を行う必要があるが、非線形処理であるAND演算において、秘密情報に乱数をXOR演算した状態のまま演算を行うと、正しい演算結果を得ることができない。
そこで、マスク処理を保持した状態で、秘密情報aと秘密情報bとのAND演算を行うための方法を提案する。ここでは、以下の式(1.1)の演算結果を求める状況を想定する。なお、以下の説明中、「・」はAND演算(論理積)を示し、「+」はOR演算(論理和)を示し、丸の中に加算の記号は、XOR演算(排他的論理和)を示している。
秘密情報a;第1の秘密情報
秘密情報b;第2の秘密情報
乱数情報m1;第1の乱数情報
乱数情報m2;第2の乱数情報
マスクされた秘密情報A;第1のマスクされた秘密情報
マスクされた秘密情報B;第2のマスクされた秘密情報
中間値Temp1;第1の中間値
中間値Temp2;第2の中間値
中間値Temp3;第3の中間値
result;第1の秘密情報と第2の秘密情報との論理積の値
としている。
,m2とを排他的論理和により加算することによって得られた値であり、中間値Temp
1〜Temp3は、マスクされた秘密情報A,Bのマスクを除去するための値である。
演算結果を読み取られても問題がないようにするため、式(1.2),式(1.3)に示すように、あらかじめそれぞれの秘密情報a,bに乱数情報m1,m2をXOR演算してマスクしておく。これにより、すべての演算の入力値に、異なる乱数情報がXOR演算されることになる。
マスクされた秘密情報A,Bを使用してAND演算を行うと、式(1.4)のようになる。
さらに、式(1.4),式(1.5),式(1.6),式(1.7)は、2つの秘密情報a,bのうちaとbとを入れ替えても演算結果が変わらないような対称な演算式である。
上述したアルゴリズムによって、サイドチャネル攻撃の対策により秘密情報a,bを乱数情報m1,m2でマスク処理したまま演算を行うことが可能となり、DPA攻撃などによる秘密情報a,bの推測を防ぐことが可能となる。
しかし、秘密情報a,bを演算に直接利用していなくとも,途中演算において、秘密情報a,bをマスク処理したデータ同士の演算結果により、秘密情報a,bの推測又は絞り込みが行える可能性もある。
2項間(複数の式)で演算を行うこととした場合、上述したアルゴリズムで実際に計算を行う必要があるのは以下の演算である。
そのため、上記演算から秘密情報a,bが推測できなければ途中演算からの推測はできないと考えられる。
式(1.9)〜式(1.11)のそれぞれの演算について真理値表を作成すると、以下の表1〜表3のようになる。
表1より、マスクされた秘密情報同士の論理積であるA・Bでは、A・B=0の状況下において、秘密情報a,bがそれぞれ0,1になる確率(0,1の出現率)は等しくなることがわかる。
具体的には、A・B=0の場合は、a=0の場合が6通り、a=1の場合が6通り、b=0の場合が6通り、b=1の場合が6通りである。
具体的には、A・B=1の場合は、a=0の場合が2通り、a=1の場合が2通り、b=0の場合が2通り、b=1の場合が2通りである。
このことから、例え、A・Bの値が外部に漏洩したとしても、そのA・Bの値より秘密情報a,bを推測することは不可能であることがわかる。
・m2=0,1の状況下において、秘密情報a=0,1となる確率はそれぞれ等しい。そ
のため、A・m2より秘密情報aを推測することはできない。
同様に、表3より、マスクされた秘密情報と乱数情報との論理積であるB・m1では、
B・m1=0,1の状況下において、秘密情報b=0,1となる確率はそれぞれ等しいた
め、B・m1から秘密情報bを推測することは不可能である。
OR演算も、基本的には、AND演算と同様であり、サイドチャネル攻撃の対策として、マスク処理を保持した状態で演算を行う必要がある。ここでは、以下の式(2.1)の演算結果を求める状況を想定する。
演算結果を読み取られても問題がないようにするため、式(2.2),式(2.3)に示すように、あらかじめそれぞれの秘密情報a,bに乱数情報m1,m2をXOR演算してマスクしておく。
られる危険があるため、式(2.4),式(2.5)に示すように、マスク処理後のマスクされた秘密情報A,BについてNOT処理を施す。
なお、上述したアルゴリズムの安全性に関して、途中演算からの秘密情報a,bの推測については、上述した表1〜表3と同様であり、安全性は確保されている。
上述した各式の通りに、DPA対策を行えば、基本的には問題はないが、所定の場合には、表1〜表3の真理値表が成り立たず、秘密情報a,bを推測することができる可能性がある。
具体的には、式(1.12)〜式(1.14)個別では、秘密情報a,bが漏洩することはないが、それらをXOR演算で加算すると、情報漏えいにつながる可能性がある。
そこで、この解決策として、第3の乱数情報m3を導入し、式(1.7)を以下の式(
1.13)とし、式(1.8)を以下の式(1.14)として演算を行う。
なお、上述した真理値表(表1〜表3)は、必ず成り立つものである。問題は、第3の乱数情報m3をXOR演算で加算しておかないと、中間値Temp1と中間値Temp2
とをXOR処理するなど中間値同士をXOR処理した更なる中間値が秘密情報の漏洩につながる偏りを見せてしまう、ということである。ただ、中間値単独で考えれば情報漏えいの問題はないので、「問題ない値(Temp1,Temp2)を2つXOR演算してなぜ問題がある値になってしまうのか」という点で疑問が生じるが、これは実際コンピュータで計算して確認した結果なので問題ない。これを細かく説明すると、漏洩につながる偏りを見せてしまう原因は、第3の乱数情報m3を使わない場合、中間値Temp1,Tem
p2,Temp3のうち2つをXOR処理したときの値は、第1の乱数情報m1と第2の
乱数情報m2の要素が相殺されてしまうためであり、結果として、値に偏りが生じること
になる。このような問題点に対して、第3の乱数情報m3を導入することで、値に偏りが
生じなくなる。
り高まる。
、式(2.10)を以下の式(2.13)としても、安全性を高めることができる。
(1)マスクされた秘密情報A,Bと、中間値Temp1〜Temp3を用いて、秘密情報a,bのAND演算やOR演算に関する演算を行うので、演算中に秘密情報a,bを用いる必要がなく、秘密情報a,bが漏洩することがない。また、最終的には、中間値Temp1〜Temp3によってマスクを除去することができるので、秘密情報a,bにマスク処理をしたまま非線形演算を行っても正しい演算結果を得ることができる。さらに、暗号演算内のAND演算とOR演算とを、サイドチャネル攻撃などの脅威から守ることができる。
(3)テーブルを使用していないので、メモリ使用量も減らせ、演算のリソース(ハードウェアやソフトウェアの資源)の負担が軽減でき、また、データを保護するマスク用の乱数情報m1,m2を定期的に変えられるため、セキュリティが向上する。
(5)各秘密情報a,bを入れ替えても、マスクされた秘密情報を持つ変数A,Bに各秘密情報a,bの変化を反映させれば、演算結果が変わらないような対称な演算式を用いて演算処理を行うので、秘密情報a,bが予測されることがない。
(7)秘密情報a,bの論理積や論理和に関する演算は、ハッシュ関数やストリーム暗号、ブロック暗号の処理の一部として用いられるので、これらの処理をより安全に行うことができる。
この問題を防ぐために、AND演算部分に上述の手法を適用することにより、サイドチャネル攻撃を防ぐことができる。なお、HMAC−SHA1の他にも、HMACの下位層にあたるHMAC−RIPEMD160などといったハッシュ関数にも適用することができる。
以上説明した実施形態に限定されることなく、種々の変形や変更が可能であって、それらも本発明の範囲内である。
(1)実施形態では、暗号処理装置は、ICカードの例で説明したが、セキュアートークン(代用硬貨)、携帯可能演算装置、ハードウェア、セキュリティ・モジュール、携帯電話機、UIMカード、SIMカード、ICカードの暗号ソフト、PC用のセキュリティチップなどであってもよい。
(2)ICカード用の暗号プログラムとしては、Keyed・Hash暗号(HMAC−SHA1,HMAC−RIPEMD160など)に使用することもできる。
(4)上述したような工程を備える暗号化方法によって暗号処理を行ってもよい。
11 通信部
12 CPU
13 ROM
14 RAM
15 EEPROM
16 乱数生成部
20 リーダライタ
a,b 秘密情報
A,B マスクされた秘密情報
m1,m2 乱数情報
Temp1〜Temp3 中間値
Claims (12)
- 第1の秘密情報と第1の乱数情報とを排他的論理和により加算することによって前記第1の秘密情報をマスクし、第1のマスクされた秘密情報を算出する手段と、
第2の秘密情報と第2の乱数情報とを排他的論理和により加算することによって前記第2の秘密情報をマスクし、第2のマスクされた秘密情報を算出する手段と、
前記第1のマスクされた秘密情報と前記第2の乱数情報とを用いて、前記マスクされた秘密情報のマスクを除去するための第1の中間値を算出する手段と、
前記第2のマスクされた秘密情報と前記第1の乱数情報とを用いて、前記マスクされた秘密情報のマスクを除去するための第2の中間値を算出する手段と、
前記第1の乱数情報と前記第2の乱数情報とを用いて、前記マスクされた秘密情報のマスクを除去するための第3の中間値を算出する手段と、
前記第1のマスクされた秘密情報と、前記第2のマスクされた秘密情報と、前記第1の中間値と、前記第2の中間値と、前記第3の中間値とを用いて、前記第1の秘密情報と前記第2の秘密情報との論理積の値を算出する手段と、
を備える暗号処理装置。 - 第1の秘密情報と第1の乱数情報とを排他的論理和により加算することによって前記第1の秘密情報をマスクし、第1のマスクされた秘密情報を算出する手段と、
第2の秘密情報と第2の乱数情報とを排他的論理和により加算することによって前記第2の秘密情報をマスクし、第2のマスクされた秘密情報を算出する手段と、
前記第1のマスクされた秘密情報と前記第2の乱数情報とを用いて、前記マスクされた秘密情報のマスクを除去するための第1の中間値を算出する手段と、
前記第2のマスクされた秘密情報と前記第1の乱数情報とを用いて、前記マスクされた秘密情報のマスクを除去するための第2の中間値を算出する手段と、
前記第1の乱数情報と前記第2の乱数情報とを用いて、前記マスクされた秘密情報のマスクを除去するための第3の中間値を算出する手段と、
前記第1のマスクされた秘密情報と、前記第2のマスクされた秘密情報と、前記第1の中間値と、前記第2の中間値と、前記第3の中間値とを用いて、前記第1の秘密情報と前記第2の秘密情報との論理和の値を算出する手段と、
を備える暗号処理装置。 - 請求項4に記載の暗号処理装置において、
前記第1のマスクされた秘密情報及び前記第2のマスクされた秘密情報には、最初に否定処理を施して、その後の演算を行うこと、
を特徴とする暗号処理装置。 - 請求項1から請求項7までのいずれか1項に記載の暗号処理装置において、
前記第1の秘密情報と前記第2の秘密情報との論理積又は論理和の算出は、ハッシュ関数,ストリーム暗号及びブロック暗号のうち少なくとも1つの処理の一部又は全部に用いられること、
を特徴とする暗号処理装置。 - コンピュータを、
第1の秘密情報と第1の乱数情報とを排他的論理和により加算することによって前記第1の秘密情報をマスクし、第1のマスクされた秘密情報を算出する手段と、
第2の秘密情報と第2の乱数情報とを排他的論理和により加算することによって前記第2の秘密情報をマスクし、第2のマスクされた秘密情報を算出する手段と、
前記第1のマスクされた秘密情報と前記第2の乱数情報とを用いて、前記マスクされた秘密情報のマスクを除去するための第1の中間値を算出する手段と、
前記第2のマスクされた秘密情報と前記第1の乱数情報とを用いて、前記マスクされた秘密情報のマスクを除去するための第2の中間値を算出する手段と、
前記第1の乱数情報と前記第2の乱数情報とを用いて、前記マスクされた秘密情報のマスクを除去するための第3の中間値を算出する手段と、
前記第1のマスクされた秘密情報と、前記第2のマスクされた秘密情報と、前記第1の中間値と、前記第2の中間値と、前記第3の中間値とを用いて、前記第1の秘密情報と前記第2の秘密情報との論理積の値を算出する手段と、
として機能させるための暗号処理プログラム。 - コンピュータを、
第1の秘密情報と第1の乱数情報とを排他的論理和により加算することによって前記第1の秘密情報をマスクし、第1のマスクされた秘密情報を算出する手段と、
第2の秘密情報と第2の乱数情報とを排他的論理和により加算することによって前記第2の秘密情報をマスクし、第2のマスクされた秘密情報を算出する手段と、
前記第1のマスクされた秘密情報と前記第2の乱数情報とを用いて、前記マスクされた秘密情報のマスクを除去するための第1の中間値を算出する手段と、
前記第2のマスクされた秘密情報と前記第1の乱数情報とを用いて、前記マスクされた秘密情報のマスクを除去するための第2の中間値を算出する手段と、
前記第1の乱数情報と前記第2の乱数情報とを用いて、前記マスクされた秘密情報のマスクを除去するための第3の中間値を算出する手段と、
前記第1のマスクされた秘密情報と、前記第2のマスクされた秘密情報と、前記第1の中間値と、前記第2の中間値と、前記第3の中間値とを用いて、前記第1の秘密情報と前記第2の秘密情報との論理和の値を算出する手段と、
として機能させるための暗号処理プログラム。 - 記憶部及び制御部を備える暗号処理装置が、第1の秘密情報と第1の乱数情報とを排他的論理和により加算することによって前記第1の秘密情報をマスクし、第1のマスクされた秘密情報を算出する工程と、
前記暗号処理装置が、第2の秘密情報と第2の乱数情報とを排他的論理和により加算することによって前記第2の秘密情報をマスクし、第2のマスクされた秘密情報を算出する工程と、
前記暗号処理装置が、前記第1のマスクされた秘密情報と前記第2の乱数情報とを用いて、前記マスクされた秘密情報のマスクを除去するための第1の中間値を算出する工程と、
前記暗号処理装置が、前記第2のマスクされた秘密情報と前記第1の乱数情報とを用いて、前記マスクされた秘密情報のマスクを除去するための第2の中間値を算出する工程と、
前記暗号処理装置が、前記第1の乱数情報と前記第2の乱数情報とを用いて、前記マスクされた秘密情報のマスクを除去するための第3の中間値を算出する工程と、
前記暗号処理装置が、前記第1のマスクされた秘密情報と、前記第2のマスクされた秘密情報と、前記第1の中間値と、前記第2の中間値と、前記第3の中間値とを用いて、前記第1の秘密情報と前記第2の秘密情報との論理積の値を算出する工程と、
を備える暗号処理方法。 - 記憶部及び制御部を備える暗号処理装置が、第1の秘密情報と第1の乱数情報とを排他的論理和により加算することによって前記第1の秘密情報をマスクし、第1のマスクされた秘密情報を算出する工程と、
前記暗号処理装置が、第2の秘密情報と第2の乱数情報とを排他的論理和により加算することによって前記第2の秘密情報をマスクし、第2のマスクされた秘密情報を算出する工程と、
前記暗号処理装置が、前記第1のマスクされた秘密情報と前記第2の乱数情報とを用いて、前記マスクされた秘密情報のマスクを除去するための第1の中間値を算出する工程と、
前記暗号処理装置が、前記第2のマスクされた秘密情報と前記第1の乱数情報とを用いて、前記マスクされた秘密情報のマスクを除去するための第2の中間値を算出する工程と、
前記暗号処理装置が、前記第1の乱数情報と前記第2の乱数情報とを用いて、前記マスクされた秘密情報のマスクを除去するための第3の中間値を算出する工程と、
前記暗号処理装置が、前記第1のマスクされた秘密情報と、前記第2のマスクされた秘密情報と、前記第1の中間値と、前記第2の中間値と、前記第3の中間値とを用いて、前記第1の秘密情報と前記第2の秘密情報との論理和の値を算出する工程と、
を備える暗号処理方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2007165154A JP4962165B2 (ja) | 2007-06-22 | 2007-06-22 | 暗号処理装置,暗号処理プログラム及び暗号処理方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2007165154A JP4962165B2 (ja) | 2007-06-22 | 2007-06-22 | 暗号処理装置,暗号処理プログラム及び暗号処理方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2009005164A JP2009005164A (ja) | 2009-01-08 |
JP4962165B2 true JP4962165B2 (ja) | 2012-06-27 |
Family
ID=40321053
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2007165154A Expired - Fee Related JP4962165B2 (ja) | 2007-06-22 | 2007-06-22 | 暗号処理装置,暗号処理プログラム及び暗号処理方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP4962165B2 (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11115210B2 (en) | 2017-08-07 | 2021-09-07 | Maxim Integrated Products, Inc. | Systems and methods for masking RSA operations |
Families Citing this family (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CA2767189C (en) * | 2009-09-29 | 2015-02-10 | Silverbrook Research Pty Ltd | Communication system, method and device with limited encryption key retrieval |
JP5495825B2 (ja) * | 2010-02-01 | 2014-05-21 | Kddi株式会社 | ストリーム暗号の秘匿計算暗号化装置、ストリーム暗号の秘匿計算復号化装置、暗号化方法、復号化方法およびプログラム |
US8971526B2 (en) * | 2011-07-26 | 2015-03-03 | Crocus-Technology Sa | Method of counter-measuring against side-channel attacks |
JP5951260B2 (ja) * | 2012-01-10 | 2016-07-13 | Kddi株式会社 | 論理演算装置、論理演算方法、およびプログラム |
JP6035459B2 (ja) | 2012-04-02 | 2016-11-30 | 株式会社クリプト・ベーシック | 暗号化装置、復号化装置、及びプログラム |
JP2015102639A (ja) * | 2013-11-22 | 2015-06-04 | Kddi株式会社 | 演算装置、演算方法、コンピュータプログラムおよびストリーム暗号化装置 |
JP6212377B2 (ja) * | 2013-12-17 | 2017-10-11 | Kddi株式会社 | 演算装置、演算方法およびコンピュータプログラム |
JP6360440B2 (ja) * | 2015-01-06 | 2018-07-18 | Kddi株式会社 | 復号装置、方法及びプログラム |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4003723B2 (ja) * | 2003-09-12 | 2007-11-07 | 株式会社日立製作所 | 情報処理装置、耐タンパ処理装置 |
KR101061906B1 (ko) * | 2004-02-19 | 2011-09-02 | 삼성전자주식회사 | 전력분석공격에 안전한 기본 연산 장치 및 방법 |
JP4271077B2 (ja) * | 2004-04-30 | 2009-06-03 | 株式会社東芝 | マスク論理回路及び暗号装置 |
JP4859370B2 (ja) * | 2005-01-19 | 2012-01-25 | 三菱電機株式会社 | 電子素子 |
-
2007
- 2007-06-22 JP JP2007165154A patent/JP4962165B2/ja not_active Expired - Fee Related
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11115210B2 (en) | 2017-08-07 | 2021-09-07 | Maxim Integrated Products, Inc. | Systems and methods for masking RSA operations |
Also Published As
Publication number | Publication date |
---|---|
JP2009005164A (ja) | 2009-01-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4962165B2 (ja) | 暗号処理装置,暗号処理プログラム及び暗号処理方法 | |
US20090097637A1 (en) | Randomized rsa-based cryptographic exponentiation resistant to side channel and fault attacks | |
US11256478B2 (en) | Method for securing a cryptographic process with SBOX against high-order side-channel attacks | |
JPH10154976A (ja) | タンパーフリー装置 | |
EP3596876B1 (en) | Elliptic curve point multiplication device and method for signing a message in a white-box context | |
US6914986B2 (en) | Countermeasure method in an electronic component using a public key cryptography algorithm on an elliptic curve | |
EP3503459B1 (en) | Device and method for protecting execution of a cryptographic operation | |
US9847879B2 (en) | Protection against passive sniffing | |
JP2011072040A (ja) | 誤りに基づく攻撃から電子回路を保護する方法 | |
JP2021144239A (ja) | 暗号アルゴリズム向けのワンタイムの中国剰余定理のべき乗のためのシステムおよび方法 | |
US7286666B1 (en) | Countermeasure method in an electric component implementing an elliptical curve type public key cryptography algorithm | |
US12052348B2 (en) | Computation device using shared shares | |
TWI512610B (zh) | 利用模數的特殊形式之模組約化 | |
WO2012090289A1 (ja) | 暗号処理装置および方法 | |
US9780946B2 (en) | Elliptic curve encryption method comprising an error detection | |
WO2017114739A1 (en) | System and method for hiding a cryptographic secret using expansion | |
US10305678B2 (en) | Imbalanced montgomery ladder | |
EP3166013B1 (en) | Modular exponentiation using randomized addition chains | |
US11968290B2 (en) | Circuit compiling device and circuit evaluation device | |
US20170286063A1 (en) | Non-modular multiplier, method for non-modular multiplication and computational device | |
KR102067065B1 (ko) | 전력 분석 및 전자파 분석에 안전한 메시지 랜덤화 기반의 행렬-벡터 곱 연산 장치, 이를 이용한 암호화 장치 및 방법 | |
US10055194B2 (en) | Operation based on two operands | |
EP4297330A1 (en) | Method and system for protecting cryptographic operations against side-channel attacks | |
EP4372548A1 (en) | Protecting cryptographic operations againt horizontal side-channel analysis attacks | |
US11329796B2 (en) | Protection of an iterative calculation |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20100205 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20111208 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20111220 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20120213 |
|
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: 20120228 |
|
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: 20120312 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 4962165 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: 20150406 Year of fee payment: 3 |
|
LAPS | Cancellation because of no payment of annual fees |