JP5233473B2 - 暗号処理装置 - Google Patents
暗号処理装置 Download PDFInfo
- Publication number
- JP5233473B2 JP5233473B2 JP2008192356A JP2008192356A JP5233473B2 JP 5233473 B2 JP5233473 B2 JP 5233473B2 JP 2008192356 A JP2008192356 A JP 2008192356A JP 2008192356 A JP2008192356 A JP 2008192356A JP 5233473 B2 JP5233473 B2 JP 5233473B2
- Authority
- JP
- Japan
- Prior art keywords
- numerical value
- digit
- data
- value
- 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.)
- Active
Links
Images
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/723—Modular exponentiation
-
- 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
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Engineering & Computer Science (AREA)
- Computational Mathematics (AREA)
- Mathematical Analysis (AREA)
- Mathematical Optimization (AREA)
- Pure & Applied Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Computing Systems (AREA)
- Mathematical Physics (AREA)
- General Engineering & Computer Science (AREA)
Description
第1の数値Mを外部から入力する入力部と、
秘密鍵となる数値Dを格納する秘密鍵格納部と、
乱数Rを発生させる乱数発生部と、
発生させた乱数Rを用いて、数値Dを、1つの桁の数値dが「0≦d≦dmax(但し、dmax>k−1)」の範囲内の値をとる冗長なk進数で表現したランダムなn桁のデータに再符号化する再符号化部と、
少なくとも数値Mと再符号化された数値Dとを用いた所定の演算を行うことにより、第2の数値Cを求める演算実行部と、
演算実行部が求めた第2の数値Cを外部へ出力する出力部と、
を設けるようにしたものである。
再符号化部を、
乱数Rを用いて「0≦d≦dmax」の範囲内の値を発生させる処理をn回繰り返すことによりn桁のランダムデータを生成するランダムデータ生成要素と、
生成されたランダムデータが数値Dに等しいか否かを判断する数値確認要素と、
数値確認要素が等しいとの判断を行うまで、ランダムデータ生成要素にランダムデータの生成を繰り返し実行させ、数値確認要素が等しいとの判断を行った際のランダムデータを再符号化したデータとして出力する制御要素と、
によって構成したものである。
再符号化部を、
n桁のデータを保持するレジスタと、
秘密鍵となる数値Dを、1つの桁の数値dが「0≦d≦k−1」の範囲内の値をとる通常のk進数で表現することにより、n桁からなるデータを用意し、用意したデータを初期データとしてレジスタに設定する初期データ設定要素と、
発生させた乱数Rを用いて、レジスタのn桁のうちの任意の1桁を選択桁として選択する桁選択要素と、
発生させた乱数Rを用いて、増加補正もしくは減少補正のいずれかを決定する増減決定要素と、
増減決定要素により増加補正が決定された場合には、選択桁の数値dについてd<dmaxが満たされ、かつ、他の桁の調整によって所定の増加補正分δ(但し、δ≦dmax−d)を相殺することが可能であることを条件として、選択桁に増加補正分δを加え、他の桁を調整して増加補正分δを相殺する補正を行う増加補正実行要素と、
増減決定要素により減少補正が決定された場合には、選択桁の数値dについてd≠0が満たされ、かつ、他の桁の調整によって所定の減少補正分δ(但し、δ≦d)を相殺することが可能であることを条件として、選択桁から減少補正分δを減じ、他の桁を調整して減少補正分δを相殺する補正を行う減少補正実行要素と、
所定の条件が満たされるまで、桁選択要素による桁選択、増減決定要素による増減決定、増加補正実行要素もしくは減少補正実行要素による補正を繰り返し実行し、所定の条件が満たされたときのレジスタ内のn桁のデータを再符号化したデータとして出力する制御要素と、
によって構成したものである。
再符号化部を、
数値Dをm×nビット(m,nは整数)の2進数として保持する数値D保持要素と、
乱数Rを用いて、「E<D」を満足する任意の数値Eをm×nビットの2進数として生成する数値E生成要素と、
数値Eの下位mビットを0に置換することにより、新たな数値Aを生成する数値A生成要素と、
B=D−Aなる演算により、m×nビットの2進数からなる数値Bを生成する数値B生成要素と、
数値Aを構成するビットの下位側から数えて第(m×(i+1))ビット目から下位に向かって連続するmビット分の数値を上位ビット、数値Bを構成するビットの下位側から数えて第(m×i)ビット目から下位に向かって連続するmビット分の数値を下位ビット、とする2mビットからなる数値(但し、i=1〜nとし、数値Aについては、上位側にmビット分の0を補う)を、下位側から数えて第i番目の桁とするn桁のデータを生成し、これを冗長な2 m 進数で表現した数値Dを示すデータとして出力する冗長データ生成要素と、
によって構成したものである。
演算実行部が、M D の項を含む所定の演算式もしくはMに基づいて定まる有理点Pをスカラー値Dでスカラー倍する楕円曲線暗号の演算式に基づく演算を行うことにより、第2の数値Cを求めるようにしたものである。
演算実行部が、M D を所定の数値Zで除したときのべき乗剰余を示す演算式C=M D modZに基づく演算を行うことにより、第2の数値Cを求めるようにしたものである。
再符号化部が、数値Dを、上位桁側から順に、d[n−1],d[n−2],d[n−3],... ,d[2],d[1],d[0]なるn桁のデータに再符号化する処理を行い、
演算実行部が、演算式C=M D modZに基づく演算を、
C=(( .....(((1*M d[n−1] ) k
*M d[n−2] modZ) k
*M d[n−3] modZ) k
.....
*M d[2] modZ) k
*M d[1] modZ) k
*M d[0] modZ
なる等価演算式を用いて、括弧の内側の演算から順番に実行するようにしたものである。
演算実行部が、RSA暗号、Diffie Hellman暗号、EL Gamal暗号、もしくは楕円曲線暗号を生成するための演算を行うことにより、第2の数値Cを求めるようにしたものである。
演算実行部が、再符号化部によって再符号化されたn桁のデータの中から1桁の数値dを抽出して用いる演算を、順番に繰り返し実行することにより第2の数値Cを求めるようにしたものである。
入力部が第1の数値Mを外部から入力するたびに、乱数発生部が新たな乱数Rを発生させ、再符号化部が新たな再符号化を行い、演算実行部が新たに再符号化された数値Dを用いて第2の数値Cを求める演算を行うようにしたものである。
はじめに、説明の便宜上、一般的なRSA暗号演算を例にとって、ICカード内部で行われる暗号処理を説明する。RSA暗号は、桁数が大きい合成数の素因数分解問題が困難であることを安全性の根拠とした公開鍵暗号の一つである。図1に、一般的な公開鍵暗号方式を用いた暗号化および復号化のプロセスを示すブロック図を示す。図示のとおり、暗号化の対象となる平文Mは、鍵Dを用いて暗号化され暗号文Cに変換される。一方、この暗号文Cは別な鍵Eを用いて復号化され平文Mに戻される。通常、鍵D,Eの一方を公開鍵、他方を秘密鍵として用いる。
C=(( .....(((1*Md[n−1])2
*Md[n−2]modZ)2
*Md[n−3]modZ)2
.....
*Md[2]modZ)2
*Md[1]modZ)2
*Md[0]modZ
なる等価演算式を用いて、括弧の内側の演算から順番に実行することによって得られる。ここで、べき乗項として記載されているd[n−1],d[n−2],d[n−3],... ,d[2],d[1],d[0]は、数値Dを2進表現したときのn桁の各ビット(上位桁側から順に並べたもの)であり、「*」は乗算記号である。
C=(( .....(((1*Md[n−1])4
*Md[n−2]modZ)4
*Md[n−3]modZ)4
.....
*Md[2]modZ)4
*Md[1]modZ)4
*Md[0]modZ
なる等価演算式を用いて、括弧の内側の演算から順番に実行することによって得られる。
C=(( .....(((1*Md[n−1])k
*Md[n−2]modZ)k
*Md[n−3]modZ)k
.....
*Md[2]modZ)k
*Md[1]modZ)k
*Md[0]modZ
なる等価演算式を用いて、括弧の内側の演算から順番に実行することによって得られるが、各桁のとる数値に応じて消費電力に差が生じることに変わりはなく、「サイドチャネル攻撃」により、秘密鍵Dを構成する各桁が推定されてしまう可能性がある。
本発明の重要な特徴は、秘密鍵となる数値Dを、冗長なk進数で表現した上で、実際の演算に利用する点にある。いま、図9に示すように、数値Dを任意のk進数で表現することを考えよう。図において、d[n−1],d[n−2],d[n−3],... ,d[2],d[1],d[0]は、それぞれ数値Dをk進表現したときの全n桁の数値列であり、この全n桁の数値列として表現される数値Dの値は、図示のとおり、
D=d[n−1]*kn−1
+d[n−2]*kn−2
+d[n−3]*kn−3
.....
+d[2]*k2
+d[1]*k1
+d[0]*k0
となる。
0≦d[i]≦dmax
であり、通常のk進表現の場合は、dmax=k−1に設定される。たとえば、2進表現の場合であれば、dmax=1に設定されるので、各桁の数値d[i]は0または1のいずれかである。4進表現の場合は、dmax=3に設定されるので、各桁の数値d[i]は0〜3のいずれかになり、7進表現の場合は、dmax=6に設定されるので、各桁の数値d[i]は0〜6のいずれかになる。
0≦d[i]≦1(各桁の値は0〜1)
であるが、冗長2進表現の場合、dmax=3に設定すれば、図10(a) に示すとおり、
0≦d[i]≦3(各桁の値は0〜3)
となる。
0≦d[i]≦3(各桁の値は0〜3)
であるが、冗長4進表現の場合、たとえばdmax=7に設定すれば、図12(b) に示すとおり、
0≦d[i]≦7(各桁の値は0〜7)
となる。
図16は、本発明に係る暗号処理装置100の構成を示すブロック図である。この暗号処理装置100は、たとえば、図3に示す暗号処理装置12としてICカード10に組み込むことができる。もっとも、この図16に示す個々のブロックは、実際には、コンピュータ用のハードウエアおよびこのコンピュータに組み込まれたプログラムによって実現可能な構成要素であり、たとえば、ICカード10に、OSプログラムやアプリケーションプログラムを組み込むことによって実現されることになる。
最後に、図16に示す再符号化部140の具体的な構成例をいくつか示すことにより、再符号化処理の具体的な手順を例示する。もっとも、以下に述べる具体例は、あくまでも実施例として示すものであり、本発明に用いる再符号化部140の構成は、これらの実施例に限定されるものではない。
図17は、図16に示す暗号処理装置の再符号化部140の第1の構成例を示すブロック図である。図示のとおり、この例の場合、再符号化部140Aは、制御要素141A、数値確認要素142A、ランダムデータ生成要素143Aによって構成されている。
図19は、図16に示す暗号処理装置の再符号化部140の第2の構成例を示すブロック図である。図示のとおり、この例の場合、再符号化部140Bは、制御要素141B、レジスタ142B、初期データ設定要素143B、増加補正実行要素144B、減少補正実行要素145B、桁選択要素146B、増減決定要素147Bによって構成されている。
図23は、図16に示す暗号処理装置の再符号化部140の第3の構成例を示すブロック図である。図示のとおり、この例の場合、再符号化部140Cは、冗長データ生成要素141C、数値B生成要素142C、数値A生成要素143C、数値D保持要素144C、数値E生成要素145Cによって構成されている。
以上、図16に示す再符号化部140の具体的な構成例をいくつか例示したが、本発明に用いる再符号化部140の構成は、これらの実施例に限定されるものではなく、この他にも様々な構成例を利用することが可能である。
以上、本発明をいくつかの具体的な実施例に基づいて説明したが、もちろん、本発明はこれらの実施例に限定されるものではない。たとえば、§1,§2で説明したべき乗剰余演算の方法は、一般に「Left to Right Exponentiation」と呼ばれている演算方法(指数を左から右へと順々に処理してゆく演算方法)であるが、この方法の代りに、指数を右から左へと順々に処理してゆく「Right to Left Exponentiation」と呼ばれる演算方法を採ることも可能である。更に、これまで述べた実施例では、MのD乗の項を含むべき乗剰余演算式に本発明を適用した例を述べたが、もちろん、本発明に係る暗号処理装置は、実施例で述べた具体的な演算式への適用に限定されるものではなく、数値Mおよび数値Dが含まれるいかなる演算式にも適用可能である。
[D]*P=P+P+ ... +P(但し、右辺のPはD個)
なる式により、有理点PをD個複写して点加算することによって行われる。具体的には、スカラー値[D]を(n+1)ビットの2進数を用いて、
[D]=d[n]*2n+d[n−1]*2(n−1)+ ...
+d[1]*2+d[0]
なる形で表現し(iビット目の数値d[i]は、0もしくは1)、d[n]=1とし、前述したRSAと類似した方法を採用すれば、
[D]*P=[2]*([2] ... *([2]*([2]*([2]*P
+d[n−1]*P)
+d[n−2]*P)
+d[n−3]*P)
+ ........................
+d[1]*P)
+d[0]*P
なる繰り返し演算によって、有理点PをD倍するスカラー倍算が実行できる。
x3=λ2−x1−x2
y3=λ(x1−x3)−y1
λ=(y2−y1)/(x2−x1) (P≠Qのとき)
λ=(3x1 2+a)/(2y1) (P=Qのとき)
xi,yi,a∈GF(p) (但し、i=1,2,or 3)
Char(GF(p))≠2,3
このような楕円曲線暗号の具体的な演算方法としては、この他にも種々の方法が知られているが、ここでは詳しい説明は省略する。
11:制御ユニット
12:暗号処理装置
20:外部装置
21:認証処理部
22:暗号処理装置
100:暗号処理装置
110:入力部
120:出力部
130:演算実行部
140:再符号化部
140A:再符号化部
141A:制御要素
142A:数値確認要素
143A:ランダムデータ生成要素
140B:再符号化部
141B:制御要素
142B:レジスタ
143B:初期データ設定要素
144B:増加補正実行要素
145B:減少補正実行要素
146B:桁選択要素
147B:増減決定要素
140C:再符号化部
141C:冗長データ生成要素
142C:数値B生成要素
143C:数値A生成要素
144C:数値D保持要素
145C:数値E生成要素
150:秘密鍵格納部
160:乱数発生部
A:再符号化に用いる数値
B:再符号化に用いる数値
C:第2の数値(暗号文)
D:秘密鍵
d:秘密鍵の各桁
dmax:dの最大値
E:公開鍵
M:第1の数値(平文)
R:乱数
S11〜S45:流れ図の各ステップ
Z:定数
Claims (11)
- 外部から与えられた第1の数値Mに対して、秘密鍵となる数値Dを用いた演算を行うことにより第2の数値Cを生成し、これを外部へ出力する処理を行う暗号処理装置であって、
第1の数値Mを外部から入力する入力部と、
秘密鍵となる数値Dを格納する秘密鍵格納部と、
乱数Rを発生させる乱数発生部と、
発生させた乱数Rを用いて、前記数値Dを、1つの桁の数値dが「0≦d≦dmax(但し、dmax>k−1)」の範囲内の値をとる冗長なk進数で表現したランダムなn桁のデータに再符号化する再符号化部と、
少なくとも前記数値Mと再符号化された数値Dとを用いた所定の演算を行うことにより、第2の数値Cを求める演算実行部と、
前記演算実行部が求めた第2の数値Cを外部へ出力する出力部と、
を備え、
前記再符号化部が、
乱数Rを用いて「0≦d≦dmax」の範囲内の値を発生させる処理をn回繰り返すことによりn桁のランダムデータを生成するランダムデータ生成要素と、
生成されたランダムデータが前記数値Dに等しいか否かを判断する数値確認要素と、
前記数値確認要素が等しいとの判断を行うまで、前記ランダムデータ生成要素にランダムデータの生成を繰り返し実行させ、前記数値確認要素が等しいとの判断を行った際のランダムデータを再符号化したデータとして出力する制御要素と、
を有することを特徴とする暗号処理装置。 - 外部から与えられた第1の数値Mに対して、秘密鍵となる数値Dを用いた演算を行うことにより第2の数値Cを生成し、これを外部へ出力する処理を行う暗号処理装置であって、
第1の数値Mを外部から入力する入力部と、
秘密鍵となる数値Dを格納する秘密鍵格納部と、
乱数Rを発生させる乱数発生部と、
発生させた乱数Rを用いて、前記数値Dを、1つの桁の数値dが「0≦d≦dmax(但し、dmax>k−1)」の範囲内の値をとる冗長なk進数で表現したランダムなn桁のデータに再符号化する再符号化部と、
少なくとも前記数値Mと再符号化された数値Dとを用いた所定の演算を行うことにより、第2の数値Cを求める演算実行部と、
前記演算実行部が求めた第2の数値Cを外部へ出力する出力部と、
を備え、
前記再符号化部が、
n桁のデータを保持するレジスタと、
前記数値Dを、1つの桁の数値dが「0≦d≦k−1」の範囲内の値をとる通常のk進数で表現することにより、n桁からなるデータを用意し、用意したデータを初期データとして前記レジスタに設定する初期データ設定要素と、
発生させた乱数Rを用いて、前記レジスタのn桁のうちの任意の1桁を選択桁として選択する桁選択要素と、
発生させた乱数Rを用いて、増加補正もしくは減少補正のいずれかを決定する増減決定要素と、
前記増減決定要素により増加補正が決定された場合には、前記選択桁の数値dについてd<dmaxが満たされ、かつ、他の桁の調整によって所定の増加補正分δ(但し、δ≦dmax−d)を相殺することが可能であることを条件として、前記選択桁に前記増加補正分δを加え、他の桁を調整して前記増加補正分δを相殺する補正を行う増加補正実行要素と、
前記増減決定要素により減少補正が決定された場合には、前記選択桁の数値dについてd≠0が満たされ、かつ、他の桁の調整によって所定の減少補正分δ(但し、δ≦d)を相殺することが可能であることを条件として、前記選択桁から前記減少補正分δを減じ、他の桁を調整して前記減少補正分δを相殺する補正を行う減少補正実行要素と、
所定の条件が満たされるまで、桁選択要素による桁選択、増減決定要素による増減決定、増加補正実行要素もしくは減少補正実行要素による補正を繰り返し実行し、前記所定の条件が満たされたときの前記レジスタ内のn桁のデータを再符号化したデータとして出力する制御要素と、
を有することを特徴とする暗号処理装置。 - 外部から与えられた第1の数値Mに対して、秘密鍵となる数値Dを用いた演算を行うことにより第2の数値Cを生成し、これを外部へ出力する処理を行う暗号処理装置であって、
第1の数値Mを外部から入力する入力部と、
秘密鍵となる数値Dを格納する秘密鍵格納部と、
乱数Rを発生させる乱数発生部と、
発生させた乱数Rを用いて、前記数値Dを、1つの桁の数値dが「0≦d≦dmax(但し、dmax>k−1)」の範囲内の値をとる冗長なk進数で表現したランダムなn桁のデータに再符号化する再符号化部と、
少なくとも前記数値Mと再符号化された数値Dとを用いた所定の演算を行うことにより、第2の数値Cを求める演算実行部と、
前記演算実行部が求めた第2の数値Cを外部へ出力する出力部と、
を備え、
前記再符号化部が、
前記数値Dをm×nビット(m,nは整数)の2進数として保持する数値D保持要素と、
乱数Rを用いて、「E<D」を満足する任意の数値Eをm×nビットの2進数として生成する数値E生成要素と、
前記数値Eの下位mビットを0に置換することにより、新たな数値Aを生成する数値A生成要素と、
B=D−Aなる演算により、m×nビットの2進数からなる数値Bを生成する数値B生成要素と、
数値Aを構成するビットの下位側から数えて第(m×(i+1))ビット目から下位に向かって連続するmビット分の数値を上位ビット、数値Bを構成するビットの下位側から数えて第(m×i)ビット目から下位に向かって連続するmビット分の数値を下位ビット、とする2mビットからなる数値(但し、i=1〜nとし、数値Aについては、上位側にmビット分の0を補う)を、下位側から数えて第i番目の桁とするn桁のデータを生成し、これを冗長な2 m 進数で表現した数値Dを示すデータとして出力する冗長データ生成要素と、
を有することを特徴とする暗号処理装置。 - 請求項1〜3のいずれかに記載の暗号処理装置において、
演算実行部が、MDの項を含む所定の演算式もしくはMに基づいて定まる有理点Pをスカラー値Dでスカラー倍する楕円曲線暗号の演算式に基づく演算を行うことにより、第2の数値Cを求めることを特徴とする暗号処理装置。 - 請求項4に記載の暗号処理装置において、
演算実行部が、MDを所定の数値Zで除したときのべき乗剰余を示す演算式C=MD modZに基づく演算を行うことにより、第2の数値Cを求めることを特徴とする暗号処理装置。 - 請求項5に記載の暗号処理装置において、
再符号化部が、数値Dを、上位桁側から順に、d[n−1],d[n−2],d[n−3],... ,d[2],d[1],d[0]なるn桁のデータに再符号化する処理を行い、
演算実行部が、演算式C=MDmodZに基づく演算を、
C=(( .....(((1*Md[n−1])k
*Md[n−2]modZ)k
*Md[n−3]modZ)k
.....
*Md[2]modZ)k
*Md[1]modZ)k
*Md[0]modZ
なる等価演算式を用いて、括弧の内側の演算から順番に実行することを特徴とする暗号処理装置。 - 請求項1〜3のいずれかに記載の暗号処理装置において、
演算実行部が、RSA暗号、Diffie Hellman暗号、EL Gamal暗号、もしくは楕円曲線暗号を生成するための演算を行うことにより、第2の数値Cを求めることを特徴とする暗号処理装置。 - 請求項1〜7のいずれかに記載の暗号処理装置において、
演算実行部が、再符号化部によって再符号化されたn桁のデータの中から1桁の数値dを抽出して用いる演算を、順番に繰り返し実行することにより第2の数値Cを求めることを特徴とする暗号処理装置。 - 請求項1〜8のいずれかに記載の暗号処理装置において、
入力部が第1の数値Mを外部から入力するたびに、乱数発生部が新たな乱数Rを発生させ、再符号化部が新たな再符号化を行い、演算実行部が新たに再符号化された数値Dを用いて第2の数値Cを求める演算を行うことを特徴とする暗号処理装置。 - 請求項1〜9のいずれかに記載の暗号処理装置を内蔵したICカード。
- 請求項1〜9のいずれかに記載の暗号処理装置としてコンピュータを機能させるためのプログラム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2008192356A JP5233473B2 (ja) | 2008-07-25 | 2008-07-25 | 暗号処理装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2008192356A JP5233473B2 (ja) | 2008-07-25 | 2008-07-25 | 暗号処理装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2010034682A JP2010034682A (ja) | 2010-02-12 |
JP5233473B2 true JP5233473B2 (ja) | 2013-07-10 |
Family
ID=41738702
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2008192356A Active JP5233473B2 (ja) | 2008-07-25 | 2008-07-25 | 暗号処理装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP5233473B2 (ja) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2013014778A1 (ja) * | 2011-07-27 | 2013-01-31 | 富士通株式会社 | 暗号化処理装置および認証方法 |
CN117330941B (zh) * | 2023-11-29 | 2024-02-02 | 珠海智锐科技有限公司 | 新能源bms印刷电路板的性能测试方法及相关装置 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3604518B2 (ja) * | 1996-11-01 | 2004-12-22 | 株式会社ルネサステクノロジ | 除算装置 |
JP3675111B2 (ja) * | 1997-06-12 | 2005-07-27 | ソニー株式会社 | 3入力比較器 |
JPH11330978A (ja) * | 1998-05-15 | 1999-11-30 | Hiroyuki Kawasaki | ディジタル・データの変換方法と圧縮方法とディジタル演算処理装置及びディジタル電子計算機 |
JP4671571B2 (ja) * | 1999-09-29 | 2011-04-20 | 株式会社日立製作所 | 秘密情報の処理装置および秘密情報の処理プログラムを格納するメモリ |
-
2008
- 2008-07-25 JP JP2008192356A patent/JP5233473B2/ja active Active
Also Published As
Publication number | Publication date |
---|---|
JP2010034682A (ja) | 2010-02-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR102136911B1 (ko) | 스칼라 또는 멱수와의 곱셈 연산을 포함하는 암호화 방법 | |
CN109791517B (zh) | 保护并行乘法运算免受外部监测攻击 | |
JP5412274B2 (ja) | サイドチャネル攻撃からの保護 | |
JP5229315B2 (ja) | 共通鍵暗号機能を搭載した暗号化装置及び組込装置 | |
JP4668931B2 (ja) | 電力解析攻撃に対する耐タンパ性を持った暗号化処理装置 | |
US8422671B2 (en) | Methods of encryption and decryption using operand ordering and encryption systems using the same | |
JP5488718B2 (ja) | 暗号処理装置、暗号処理方法、およびプログラム | |
JP2008252299A (ja) | 暗号処理システム及び暗号処理方法 | |
JP4662802B2 (ja) | 計算方法、計算装置及びコンピュータプログラム | |
US20010033655A1 (en) | Timing attack resistant cryptographic system | |
JP2008293034A (ja) | タイミング攻撃を阻止する標準化されたモジュラべき乗を計算することにより復号メカニズムを実行する方法と装置 | |
Agrawal et al. | Elliptic curve cryptography with hill cipher generation for secure text cryptosystem | |
EP3698262B1 (en) | Protecting modular inversion operation from external monitoring attacks | |
US20130243191A1 (en) | Encryption key generating apparatus | |
US6480606B1 (en) | Elliptic curve encryption method and system | |
JP5573964B2 (ja) | 暗号処理装置および方法 | |
US11336425B1 (en) | Cryptographic machines characterized by a Finite Lab-Transform (FLT) | |
US7903814B2 (en) | Enhancing the security of public key cryptosystem implementations | |
Lee et al. | Conditional Re‐encoding Method for Cryptanalysis‐Resistant White‐Box AES | |
KR20040067779A (ko) | 정보 처리방법 | |
EP2738973A1 (en) | System and method for cryptography using multiplicative masking using simultaneous exponentiation techniques | |
JP5233473B2 (ja) | 暗号処理装置 | |
US7974409B2 (en) | Changing the order of public key cryptographic computations | |
JPWO2005013243A1 (ja) | モンゴメリ乗算剰余における変換パラメータの計算装置、方法およびそのプログラム | |
RU2188513C2 (ru) | Способ криптографического преобразования l-битовых входных блоков цифровых данных в l-битовые выходные блоки |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20110520 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20121115 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20121127 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20130122 |
|
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: 20130226 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20130311 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 Ref document number: 5233473 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: 20160405 Year of fee payment: 3 |