JPH1069222A - Ic card - Google Patents

Ic card

Info

Publication number
JPH1069222A
JPH1069222A JP8224971A JP22497196A JPH1069222A JP H1069222 A JPH1069222 A JP H1069222A JP 8224971 A JP8224971 A JP 8224971A JP 22497196 A JP22497196 A JP 22497196A JP H1069222 A JPH1069222 A JP H1069222A
Authority
JP
Japan
Prior art keywords
card
cpu
processing
encryption
calculation
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
Application number
JP8224971A
Other languages
Japanese (ja)
Inventor
Kazuyoshi Irisawa
和義 入澤
Tokio Handa
富己男 半田
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Dai Nippon Printing Co Ltd
Original Assignee
Dai Nippon Printing Co Ltd
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 Dai Nippon Printing Co Ltd filed Critical Dai Nippon Printing Co Ltd
Priority to JP8224971A priority Critical patent/JPH1069222A/en
Publication of JPH1069222A publication Critical patent/JPH1069222A/en
Pending legal-status Critical Current

Links

Abstract

PROBLEM TO BE SOLVED: To provide an IC card capable of preventing the contents of key information used for ciphering processing or deciphering processing when response information for a command is transmitted from being estimated. SOLUTION: In this IC card provided with a CPU and a memory accessible by the CPU, performing the ciphering processing or deciphering processing of the data by using the key information stored in the memory based on an external command and transmitting the response information related to the result to the outside, the delay processing delaying (S314-S316) the transmission time of the response information is executed so as to make lose a correlation with the contents of the key information while or before/after executing the ciphering processing or deciphering processing.

Description

【発明の詳細な説明】DETAILED DESCRIPTION OF THE INVENTION

【0001】[0001]

【発明の属する技術分野】本発明は、外部からの命令に
従いデータを暗号化又は復号化するICカードに関する
ものである。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to an IC card for encrypting or decrypting data according to an external command.

【0002】[0002]

【従来の技術】ICカードは、磁気カードに代わる新し
い情報記憶媒体として、近年注目を集めている。特に、
CPUを内蔵したICカードは、単なる情報記憶媒体と
しての機能だけでなく、情報処理機能をも有し、高度な
セキュリティを実現できることから、高度情報化社会の
種々の分野における利用が期待されている。一般にIC
カードでは、EEPROMなどの不揮発性メモリが内蔵
されており、このEEPROM内にファイルとして情報
が記憶される。EEPROMへのアクセスは、ICカー
ドに外部よりコマンドを与え、そのコマンドを内蔵のC
PUが解釈・実行することにより行われる。各ファイル
には、予め所定のアクセス条件が設定されており、CP
Uは、コマンドの引数がアクセス条件を満足している場
合に限りファイルへアクセスする。これによりICカー
ドは、正当な権限を有さない第三者が不正にEEPRO
Mのデータを改竄する又は盗むことを防止している。
2. Description of the Related Art In recent years, an IC card has attracted attention as a new information storage medium replacing a magnetic card. Especially,
An IC card having a built-in CPU has not only a function as an information storage medium but also an information processing function and can realize a high level of security, and is therefore expected to be used in various fields of a highly information-oriented society. . Generally IC
The card has a built-in nonvolatile memory such as an EEPROM, and information is stored as a file in the EEPROM. To access the EEPROM, an external command is given to the IC card, and the command is stored in the built-in C card.
This is performed by the PU interpreting and executing. Each file has a predetermined access condition set in advance.
U accesses the file only when the command argument satisfies the access condition. As a result, the IC card can be illegally EEPRO
M data is prevented from being falsified or stolen.

【0003】さらに、ICカードシステムでは、ICカ
ードとリーダ・ライタとの間でデータの送受信を行う場
合は、そのデータを暗号化する。これは、リーダ・ライ
タとICカードとの間の通信信号を第三者が不正に取得
した場合においても、その内容が盗まれることを防止す
るためである。図8は、リーダ・ライタ等の外部機器か
らICカードへの情報の伝達を示す図である。外部機器
は、平文Aに所定の暗号化処理を加えて暗号文Xを取得
し、これをICカードに送信する。ICカードでは、外
部機器が用いた暗号化処理に対応する復号化処理を行う
ことにより暗号文Xを復号化する。復号化処理が終了す
ると、ICカードは、処理が終了した旨のレスポンス情
報を編集し、これを外部機器に送信する。また、外部機
器は、レスポンス情報を受信して一連の処理を終了す
る。
Further, in the IC card system, when data is transmitted and received between the IC card and the reader / writer, the data is encrypted. This is to prevent the contents of the communication signal between the reader / writer and the IC card from being stolen even if the information is illegally acquired by a third party. FIG. 8 is a diagram illustrating transmission of information from an external device such as a reader / writer to an IC card. The external device performs a predetermined encryption process on the plaintext A to obtain the ciphertext X, and transmits this to the IC card. The IC card decrypts the ciphertext X by performing a decryption process corresponding to the encryption process used by the external device. When the decryption processing is completed, the IC card edits the response information indicating that the processing has been completed, and transmits this to the external device. Further, the external device receives the response information and ends a series of processing.

【0004】平文の暗号化は、通常、平文と所定の鍵情
報とを変数とする数式を計算することにより実行され
る。このような暗号化手法として、現在提案されている
代表的なものに、例えばR.L.Rivest、A.S
hamir、and L.M.Adleman.”A
method for obtaining digi
tal signatures and public
−key cryptosystems”(Commu
nications of the ACM、Vol.
21、No.2:pp.120−126、Feb.、1
978)に論及されているRSA暗号がある。RSA暗
号は、平文を暗号化する際に使用する鍵情報と、暗号文
を復号化する際に使用する鍵情報とが異なる、いわゆる
非対称鍵方式の暗号化方法である。非対称な2種類の鍵
情報のうち、一方はICカードのEEPROM等に第三
者に対し秘密に格納される秘密鍵として、他方は第三者
に広く公表される公開鍵として利用される。
[0004] Normally, plaintext encryption is performed by calculating a mathematical expression using plaintext and predetermined key information as variables. Typical examples of such encryption methods currently proposed include, for example, R.I. L. Rivest, A .; S
Hamir, and L.M. M. Adleman. "A
method for observing digit
tal signatures and public
-Key cryptosystems "(Commu
nations of the ACM, Vol.
21, no. 2: pp. 120-126, Feb. , 1
978). The RSA encryption is a so-called asymmetric key encryption method in which key information used when encrypting a plaintext is different from key information used when decrypting an encrypted text. Of the two types of asymmetric key information, one is used as a secret key secretly stored in a EEPROM or the like of an IC card for a third party, and the other is used as a public key widely disclosed to a third party.

【0005】RSA暗号の復号化処理は、式「A=XY
(mod N)」に従い実行される。ここでAは平文、
Xは暗号文、Yは秘密鍵、Nは公開鍵である。上記式か
ら明らかなように、RSA暗号では、べき乗剰余の計算
を行うことにより復号化処理が行われる。したがって、
その計算量は通常非常に大きい。このために、RSA暗
号を実行する場合には、通常、べき乗剰余の計算を軽減
するための計算アルゴリズムが利用される。べき乗剰余
の計算量を軽減する計算アルゴリズムとしては、例えば
「べき乗の2進計算法」が知られている(D.E.Kn
uth.The Art of Computer P
rogaramming、volume 2、Semi
numerical Algorithms.Addi
son−Wesley、2nd edition、19
81、参照)。
[0005] The decryption processing of the RSA encryption is performed by the equation "A = X Y
(Mod N) ". Where A is plaintext,
X is a ciphertext, Y is a secret key, and N is a public key. As is clear from the above equation, in the RSA encryption, the decryption process is performed by calculating the power remainder. Therefore,
The complexity is usually very large. For this reason, when executing the RSA encryption, a calculation algorithm for reducing the calculation of the modular exponentiation is usually used. As a calculation algorithm for reducing the calculation amount of the power-residue, for example, “binary power calculation method” is known (DEKn).
uth. The Art of Computer P
rogaraming, volume 2, Semi
numerical Algorithms. Addi
son-Wesley, 2nd edition, 19
81).

【0006】RSA暗号の計算には、この「べきの2進
計算法」を応用し、さらに剰余演算を少ない計算量で行
うことを可能としたMontgomery法といわれる
計算アルゴリズムが利用される(P.L.Montgo
mery.”ModularMultiplicati
on without Trial Divisio
n”、Mathematics of Computa
tion、Vol.44、No.170、pp.519
−521、Apr.、1985、参照)。Montgo
mery法では、図9に示すアルゴリズムにより、べき
乗剰余の計算「A=XY (mod N)」を実行する。
For the calculation of the RSA encryption, a calculation algorithm called the Montgomery method, which makes it possible to perform the remainder operation with a small amount of calculation by applying the “power binary calculation method”, is used (P. L. Montgo
merge. "ModularMultiplicati
on with Trial Divisio
n ", Mathematicals of Computa
tion, Vol. 44, no. 170, pp. 519
-521, Apr. , 1985). Montgo
In the mery method, the calculation of the power remainder “A = X Y (mod N)” is executed by the algorithm shown in FIG.

【0007】まずN、X、Y及びRの4つの値が入力さ
れる(S902)。ここでは、Xは、Nに対し0<X<
Nの関係を満たす。また、秘密鍵Yは、2進法表示によ
りY=ej j-1 ・・・e2 1 と表現されるものとす
る。ただし、ei は第iビット目の数値を意味する。R
は、Yのビット数jを用いてR=2j と定義される数値
である。次に、入力された数値よりMontgomer
y剰余A* 、B* が求められる(S904)。Mont
gomery剰余とは、nを法とする剰余「a(mod
n)」と一対一に対応するように「a* =ar(mod
n)」と定義される値である。ただし、nはk−bi
tsの整数であり、2k-1 ≦n<2k 、r=2k 、gc
d(r、n)=1、である。
First, four values of N, X, Y and R are inputted (S902). Here, X is 0 <X <for N.
The relationship of N is satisfied. Moreover, the private key Y is the binary representation shall be expressed as Y = e j e j-1 ··· e 2 e 1. However, e i denotes the value of the i-th bit. R
Is a numerical value defined as R = 2 j using the number of bits j of Y. Next, from the input numerical value, Montgomer
The y remainders A * and B * are obtained (S904). Mont
The remainder is a remainder “a (mod
n)) so that “a * = ar (mod
n) ". Where n is k-bi
ts is an integer, 2 k-1 ≤n <2 k , r = 2 k , gc
d (r, n) = 1.

【0008】次に指数Yの各ビットについてMontg
omery積の計算が行われる(S906〜S91
2)。つまり、指数Yがjビットから構成されている場
合には、S910のMontgomery積の計算がj
回反復して実行される。なお、Montgomery積
とは、「MonPro(a* 、b* )=a* *
-1(mod n)」と定義される積である。図10は、
Montgomery積の処理内容を示す流れ図であ
る。Montgomery積には、S1002及びS1
006の2つの演算処理が含まれてい。S1002の演
算処理は、指数Yの各ビットについて、それが1である
か0であるかに関わらず必ず行われる。一方、S100
6の演算処理は、指数Yを構成するビットのうち1であ
るものについてのみ実行される。図9におけるMont
gomery積の反復計算(S906〜S912)が指
数Yを構成する全てのビットについて終了すると、次に
* と1についてのMontgomery積が実行され
る(S914)。この結果、暗号文Xを復号化した平文
Aが取得され、一連の復号化処理が終了する。
Next, Montg for each bit of the exponent Y
The calculation of the primary product is performed (S906 to S91).
2). That is, when the exponent Y is composed of j bits, the calculation of the Montgomery product in S910 is j
It is executed repeatedly. The Montgomery product is defined as “MonPro (a * , b * ) = a * b * r
-1 (mod n) ". FIG.
9 is a flowchart showing processing contents of a Montgomery product. S1002 and S1 for the Montgomery product
006 are included. The calculation process in S1002 is always performed for each bit of the exponent Y, regardless of whether it is 1 or 0. On the other hand, S100
The arithmetic processing of No. 6 is executed only for one of the bits constituting the exponent Y. Mont in FIG.
When the iterative calculation of the goaly product (S906 to S912) is completed for all the bits constituting the exponent Y, the Montgomery product for A * and 1 is executed (S914). As a result, the plaintext A obtained by decrypting the ciphertext X is obtained, and a series of decryption processing ends.

【0009】[0009]

【発明が解決しようとする課題】上記に説明したよう
に、従来のICカードの復号化処理では、2進表示され
た指数Yの各ビット桁に対して、1が立っているもの
と、1が立っていないものとで処理の内容が異なってい
る。すなわち、図10における処理において、該当ビッ
トが1ならばS1002及びS1006の2ステップ、
該当ビットが0ならばS1002の1ステップのみの計
算が行われる。したがって、復号化処理に要する時間
は、べき乗の指数に占める1のビット数に依存し、1の
ビット数が多いほど長くなる。
As described above, in the decoding processing of the conventional IC card, 1 is set for each bit digit of the exponent Y displayed in binary, The content of the processing is different from the one without. That is, in the processing in FIG. 10, if the corresponding bit is 1, two steps of S1002 and S1006,
If the corresponding bit is 0, calculation of only one step of S1002 is performed. Therefore, the time required for the decoding process depends on the number of 1 bits in the exponent of the exponent, and becomes longer as the number of 1 bits increases.

【0010】このために、第三者は、ICカードに暗号
文の復号化を命じるコマンドを送信してからレスポンス
が返信されるまでの時間より、ICカードが復号化処理
に必要とした時間を求め、さらに求めた時間よりべき乗
剰余計算の指数(秘密鍵)Yにおける1のビットと0の
ビットの割合を推定することが可能性であった。つま
り、従来のICカードでは、レスポンスの送信時から秘
密鍵Yの内容が解読され、ICカードのセキュリティが
害される恐れがあるという問題があった。
[0010] For this reason, the third party sets the time required by the IC card for the decryption processing to be shorter than the time from when the command for instructing the IC card to decrypt the ciphertext to when the response is returned. It was possible to estimate the ratio of 1 bit and 0 bit in the exponent (exponent key) Y of the modular exponentiation calculation from the obtained time and the obtained time. That is, the conventional IC card has a problem in that the content of the secret key Y is decrypted from the time of transmitting the response, and the security of the IC card may be harmed.

【0011】そこで、本発明の課題は、外部からのコマ
ンドに対する応答情報の送信時より暗号化処理又は復号
化処理に用いた鍵情報の内容を推測されることのないI
Cカードを提供することである。
[0011] Therefore, an object of the present invention is to prevent the contents of key information used for encryption processing or decryption processing from being inferred from transmission of response information to an external command.
To provide a C card.

【0012】[0012]

【課題を解決するための手段】前記課題を解決するため
に、請求項1に係る発明は、CPUと、前記CPUがア
クセス可能なメモリとを備え、外部命令に従って前記メ
モリに保存されている鍵情報を用いてデータの暗号化処
理又は復号化処理を行い、その結果に関する応答情報を
外部へ送信するICカードにおいて、前記応答情報の送
信時を遅延させる遅延手段を有し、前記暗号化処理又は
復号化処理の実行中又は実行の前後に前記遅延手段を実
行することにより、前記鍵情報の内容と、前記応答情報
の送信時との相関関係を喪失させることを特徴とする。
According to a first aspect of the present invention, there is provided an information processing apparatus comprising a CPU, a memory accessible by the CPU, and a key stored in the memory in accordance with an external command. An IC card that performs data encryption or decryption processing using information and transmits response information relating to the result to the outside has delay means for delaying the transmission of the response information, By executing the delay unit during or before or after execution of the decryption processing, the correlation between the content of the key information and the time of transmitting the response information is lost.

【0013】請求項2に係る発明は、請求項1に記載の
ICカードにおいて、前記遅延手段は、前記CPUが無
作為な時間実行する、前記暗号化処理又は復号化処理と
実質的に無関係な演算処理であることを特徴とする。な
お、「実質的に無関係な処理」とは、その処理を行わな
くとも暗号化処理又は復号化処理を正常に実行すること
が可能な処理をいう。また、「無作為な時間実行する」
とは、一定の時間を要する処理を無作為の回数実行する
こと、又は実行のたびに実行時間が無作為に決定される
処理を1回又は2回以上実行すること等をいう。
According to a second aspect of the present invention, in the IC card according to the first aspect, the delay means is executed by the CPU for a random time and is substantially unrelated to the encryption processing or the decryption processing. It is characterized by arithmetic processing. The “substantially irrelevant process” refers to a process that can normally execute an encryption process or a decryption process without performing the process. Also, "run at random time"
This means that a process that requires a certain time is executed randomly a number of times, or a process whose execution time is randomly determined once or twice or more is executed.

【0014】請求項3に係る発明は、請求項1に記載の
ICカードにおいて、所定時間の経過を通知する計時手
段を有し、前記遅延手段は、前記CPUが前記計時手段
から前記通知があるまで前記暗号化処理又は復号化処理
の開始又は続行を中断することであることを特徴とす
る。請求項4に係る発明は、請求項1から請求項3まで
のいずれか1項に記載のICカードにおいて、前記遅延
手段は、前記鍵情報のビット構成によらず、前記暗号化
処理又は復号化処理に要する時間を一定とすることを特
徴とする。
According to a third aspect of the present invention, in the IC card according to the first aspect of the present invention, the IC card has a timer for notifying the elapse of a predetermined time. Up to this point, the start or continuation of the encryption process or the decryption process is interrupted. According to a fourth aspect of the present invention, in the IC card according to any one of the first to third aspects, the delay unit performs the encryption or decryption regardless of the bit configuration of the key information. It is characterized in that the time required for processing is constant.

【0015】[0015]

【発明の実施の形態】以下、図面等を参照して、本発明
に係る実施形態について、さらに詳しく説明する。 (第1実施形態)本発明に係る第1実施形態は、非対称
鍵方式の暗号化方法であるRSAを利用して平文の暗号
化、又は暗号文の復号化を行うことが可能なICカード
である。本実施形態において、RSAによる暗号化処理
又は復号化処理は、図9に示したMontgomery
法による計算アルゴリズムに従い行われる。図1は、本
実施形態に係るICカードの構成を示す図である。図1
に示されるように、ICカード10は、読み出し専用メ
モリであるROM12、揮発性メモリであるRAM1
4、随時書換え可能な不揮発性メモリであるEEPRO
M16、これらのメモリにアクセスするCPU18、及
びタイマーモジュール20を備えている。なお、タイマ
ーモジュールとは、CPU18の動作とは独立に動作
し、指示された時間が経過するとCPU18に対して割
り込みをかけて通知する計時装置である。
Embodiments of the present invention will be described below in more detail with reference to the drawings. (First Embodiment) A first embodiment according to the present invention relates to an IC card capable of encrypting plaintext or decrypting ciphertext using RSA, which is an asymmetric key encryption method. is there. In the present embodiment, the encryption process or the decryption process by the RSA is performed by the Montgomery shown in FIG.
It is performed according to the calculation algorithm by the method. FIG. 1 is a diagram showing a configuration of an IC card according to the present embodiment. FIG.
As shown in FIG. 1, an IC card 10 includes a ROM 12 that is a read-only memory and a RAM 1 that is a volatile memory.
4. EEPROM that can be rewritten at any time
M16, a CPU 18 for accessing these memories, and a timer module 20 are provided. The timer module is a timepiece that operates independently of the operation of the CPU 18 and notifies the CPU 18 of an interruption when a designated time has elapsed.

【0016】また、ICカード10は、リーダ・ライタ
(不図示)と電気信号等の授受を行うためのI/Oライ
ンを備えている。ICカードをリーダ・ライタに挿入す
ると、リーダ・ライタの接点がこのI/Oラインと接続
され、電気信号の授受が行われる。CPU18は、上記
I/Oラインを介してコマンドを付与される。コマンド
とは、リーダ/ライタからICカードへ送られる情報で
あって、ICカードに所定の動作させるためのものをい
う。CPU18は、コマンドを付与されると、ROM1
2又はEEPROM16に格納されているプログラムを
実行することによりそのコマンドを処理する。
The IC card 10 has an I / O line for exchanging electric signals and the like with a reader / writer (not shown). When the IC card is inserted into the reader / writer, the contact of the reader / writer is connected to this I / O line, and transmission and reception of electric signals are performed. The command is given to the CPU 18 via the I / O line. The command is information sent from the reader / writer to the IC card and is used to cause the IC card to perform a predetermined operation. When the command is given, the CPU 18
2 or by executing a program stored in the EEPROM 16 to process the command.

【0017】図2は、本実施形態で使用されるコマンド
の一つであるRSA_CALCコマンドのフォーマット
を示す図である。RSA_CALCコマンドは、ICカ
ード10に暗号文を復号化させ、その結果取得された平
文をレスポンスとして返信させるコマンドである。RS
A_CALCコマンドの最初の5バイトは、それぞれコ
マンドのクラスを示すCLA、種別を示すINS、コマ
ンドのパラメータP1、P2、及び後に続くDATAの
長さ(バイト数)を示すLCである。第6バイト目以降
のDATAは、復号化されるべき暗号文Xである。ま
た、DATAの後に続く1バイトのデータLEは、レス
ポンスの期待値である。本実施形態では、暗号化又は復
号化されたデータを最大256長バイトを限度として全
てレスポンスとして返信するよう、LEの値を設定して
いる。
FIG. 2 is a diagram showing a format of an RSA_CALC command which is one of the commands used in the present embodiment. The RSA_CALC command is a command that causes the IC card 10 to decrypt the ciphertext and return the resulting plaintext as a response. RS
The first 5 bytes of the A_CALC command are CLA indicating the class of the command, INS indicating the type, parameters P1 and P2 of the command, and LC indicating the length (number of bytes) of the following DATA. DATA after the sixth byte is ciphertext X to be decrypted. The one-byte data LE following the DATA is the expected value of the response. In this embodiment, the value of LE is set so that all of the encrypted or decrypted data is returned as a response with a maximum of 256 bytes.

【0018】図3は、RSA_CALCコマンドを実行
するときのICカード10の動作を示す流れ図である。
RSA_CALCコマンドが受信されると、まず、RS
A_CALCのDATAより暗号文Xが取得され、ま
た、EEPROMの所定アドレスに保存されている公開
鍵N、秘密鍵Y、及び定数Rが読み出される(S30
2)。次に、取得された上記数値よりMontgome
ry剰余A* 及びB* が算出される(S304)。さら
に、カウンターiが2進表示された秘密鍵Yの桁数(ビ
ット数)jにセットされる(S306)。次に、カウン
ターiが0より大であるかが判断される(S308)。
FIG. 3 is a flowchart showing the operation of the IC card 10 when executing the RSA_CALC command.
When the RSA_CALC command is received, first, RS
The ciphertext X is obtained from the data of A_CALC, and the public key N, the secret key Y, and the constant R stored at a predetermined address of the EEPROM are read (S30).
2). Next, Montgome is obtained from the obtained numerical value.
The ry remainders A * and B * are calculated (S304). Further, the counter i is set to the number of digits (number of bits) j of the secret key Y displayed in binary (S306). Next, it is determined whether the counter i is greater than 0 (S308).

【0019】S308の判断の結果、カウンターiが0
より大であると、秘密鍵Yを構成するビットのうち、ま
だMontgomery積の計算を行っていないビット
が存在することが意味される。この場合にCPU18
は、そのときにカウンターiが示す桁のビットについて
Montgomery積の計算を実行する(S31
0)。S310では、図9のS910で説明したのと同
一の処理が行われる。また、CPU18は、S310の
処理を開始すると同時に、所定時間を指定してタイマー
モジュール20を呼び出す(S312)。ここで所定時
間とは、1が立っているビットについてS310のMo
ntgomery積を実行するのに要する時間と等しい
時間又はこれを越える時間をいう。これにより、CPU
18がS310の処理を実行するのと平行して、タイマ
ーモジュール20が所定時間のカウントを行う。
As a result of the determination in S308, the counter i is 0
If the value is larger, it means that there is a bit of the bits constituting the secret key Y for which the Montgomery product has not been calculated yet. In this case, the CPU 18
Executes the Montgomery product calculation for the bit of the digit indicated by the counter i at that time (S31).
0). In S310, the same processing as that described in S910 of FIG. 9 is performed. At the same time as starting the process of S310, the CPU 18 calls the timer module 20 by designating a predetermined time (S312). Here, the predetermined time refers to the bit in which 1 is set, the value of Mo in S310.
The time equal to or longer than the time required to execute the ntgomery product. This allows the CPU
In parallel with 18 executing the process of S310, the timer module 20 counts a predetermined time.

【0020】CPU18は、S310における処理を終
了した後は、タイマーモジュール20からの割り込みが
あるまで待機する(S314)。割り込みがあると、C
PU18は、カウンターiを1だけデクリメントし(S
316)、その後S308からS316までの処理を繰
り返す。一方S308において、カウンターiが「i>
0」という条件を満たさない場合には、秘密鍵Yを構成
するビットの全てについてMontgomery積の計
算がなされたことが意味される。この場合にCPU18
は、次にS318に示すA* と1についてのMontg
omery積の計算を実行し、平文Aを取得する。さら
に、CPU18は、RSA_CALCコマンドが正常に
処理された旨のレスポンス情報を編集し、これをリーダ
・ライタに送信する(S320)。
After ending the processing in S310, the CPU 18 waits until there is an interrupt from the timer module 20 (S314). If there is an interrupt, C
The PU 18 decrements the counter i by 1 (S
316) Then, the processing from S308 to S316 is repeated. On the other hand, in S308, the counter i indicates “i>
If the condition of “0” is not satisfied, it means that the Montgomery product has been calculated for all the bits constituting the secret key Y. In this case, the CPU 18
Is the Montg for A * and 1 shown in S318.
The calculation of the "omery product" is executed to obtain the plaintext A. Further, the CPU 18 edits the response information indicating that the RSA_CALC command has been normally processed, and transmits this to the reader / writer (S320).

【0021】以上説明したように、本実施形態のICカ
ードでは、暗号文の復号化処理を行うべく、S310の
Montgomery積を実行する場合には、同時にタ
イマーモジュールを呼び出すことにより一定の時間を計
測し、その一定時間が経過するまでは、たとえMont
gomery積の計算が終了している場合であっても、
次の処理を実行しないこととしている。これにより、本
実施形態では、復号化処理の計算時間は、秘密鍵Yのビ
ット構成によらず常に一定となり、また、ICカード1
0がRSA_CALCコマンドを受信してからレスポン
スを返信するまでの時間も秘密鍵の内容によらず一定と
なる。よって、本実施形態では、レスポンスが送信され
る時より、秘密鍵のビット構成が推定されることはな
く、極めてセキュリティーの高いICカードを提供する
ことが可能となっている。
As described above, in the IC card of this embodiment, when the Montgomery product of S310 is executed in order to perform the ciphertext decryption processing, the timer module is simultaneously called to measure a certain time. Until the fixed time elapses, even if Mont
Even if the calculation of the goaly product has been completed,
The following processing is not executed. Thus, in the present embodiment, the calculation time of the decryption processing is always constant regardless of the bit configuration of the secret key Y.
The time from when the RS 0 receives the RSA_CALC command until when it returns a response is also constant regardless of the contents of the secret key. Therefore, in the present embodiment, the bit configuration of the secret key is not estimated than when the response is transmitted, and it is possible to provide an IC card with extremely high security.

【0022】(第2実施形態)次に、本発明に係る第2
実施形態について説明する。なお、以下の説明におい
て、第1実施形態と同様な機能を果たす部分には、同一
の符号を付し、重複する説明を適宜省略する。図4は、
本実施形態のICカード30の構成を示す図である。I
Cカード30は、タイマーモジュール20を有さず、コ
プロセッサー32を有し、Montgomery積の計
算をこのコプロセッサー32に実行させる点において第
1実施形態のICカード10と異なっている。また、I
Cカード30は、ICカード10と同様にリーダ・ライ
タからRSA_CALCコマンドを送信されることによ
り暗号文Xを復号化し、コマンド処理が終了するとその
旨のレスポンスをリーダ・ライタに送信する。復号化処
理は、第1実施形態と同様にRSA暗号に基づき行わ
れ、RSA暗号の計算はMontgomery法のアル
ゴリズムに従い実行される。
Second Embodiment Next, a second embodiment according to the present invention will be described.
An embodiment will be described. In the following description, portions that perform the same functions as in the first embodiment will be denoted by the same reference numerals, and redundant description will be omitted as appropriate. FIG.
FIG. 2 is a diagram illustrating a configuration of an IC card 30 according to the embodiment. I
The C card 30 is different from the IC card 10 of the first embodiment in that the C card 30 does not have the timer module 20 but has a coprocessor 32 and causes the coprocessor 32 to execute the calculation of the Montgomery product. Also, I
The C card 30 decrypts the cipher text X by transmitting the RSA_CALC command from the reader / writer similarly to the IC card 10, and transmits a response to that effect to the reader / writer when the command processing is completed. The decryption process is performed based on the RSA encryption as in the first embodiment, and the calculation of the RSA encryption is performed according to the algorithm of the Montgomery method.

【0023】図5は、RSA_CALCコマンドを実行
するときのICカード30の動作を示す流れ図である。
図5中、S502からS508までは、図3のS302
からS308までの内容と同一であり、ICカード30
とICカード10との間に動作の相違はない。S508
においてカウンターiが「i>0」の条件を満たすと、
CPU18は、コプロセッサー32にA* 、B* 、N及
びRの値と、秘密鍵Yの該当ビットの値とを引き渡す。
* 等の値の引渡しを受けたコプロセッサー32は、図
10に示したMontgomery積の計算を実行す
る。本実施形態は、このようにMontgomery積
の計算をコプロセッサーに実行させることにより、復号
化処理をより高速に行うことを可能としている。
FIG. 5 is a flowchart showing the operation of the IC card 30 when executing the RSA_CALC command.
5, steps S502 to S508 correspond to step S302 in FIG.
To S308, and the IC card 30
There is no difference in operation between the IC card 10 and the IC card 10. S508
When the counter i satisfies the condition of “i> 0”,
The CPU 18 transfers the values of A * , B * , N, and R and the value of the corresponding bit of the secret key Y to the coprocessor 32.
The coprocessor 32 that has received the value such as A * executes the calculation of the Montgomery product shown in FIG. The present embodiment allows the coprocessor to perform the calculation of the Montgomery product in this manner, thereby enabling the decoding process to be performed at a higher speed.

【0024】一方、コプロセッサー32がMontgo
mery積の計算を行っている間に、CPU18は、復
号化処理とは無関係な内容のループ計算を所定回数行う
(S512)。ここで所定回数とは、CPU18がS5
12の処理に要する時間が、コプロセッサ32がS51
0の処理に要する最大の時間と等しく又はそれ以上とな
るために十分な回数をいう。S512のループ計算を終
了すると、CPU18はカウンターiを1だけデクリメ
ントし、その後S508からS514の処理を繰り返
す。S508からS514までの処理の繰り返しは、S
508において「i>0」の条件が満たされなくなるま
で、すなわち、秘密鍵Yを構成する全てのビットについ
てS510の処理が行われるまで継続される。一方、S
508において「i>0」の条件が満たされなくなった
場合は、図3のS318、S320と同じ処理が実行さ
れ(S516、S518)、一連の復号化処理が終了さ
れる。
On the other hand, the coprocessor 32 is a Montgo
During the calculation of the "mery" product, the CPU 18 performs a loop calculation having a content unrelated to the decoding process a predetermined number of times (S512). Here, the predetermined number of times means that the CPU 18 determines in S5
The time required for the processing in step S12 is determined by the coprocessor 32 as S51.
It means the number of times sufficient to make it equal to or longer than the maximum time required for processing 0. When the loop calculation of S512 ends, the CPU 18 decrements the counter i by 1, and thereafter repeats the processing of S508 to S514. The repetition of the processing from S508 to S514
The process is continued until the condition of “i> 0” is not satisfied in 508, that is, until the process of S510 is performed on all bits forming the secret key Y. On the other hand, S
If the condition of “i> 0” is no longer satisfied in 508, the same processing as S318 and S320 in FIG. 3 is executed (S516 and S518), and a series of decoding processing ends.

【0025】(第3実施形態)次に、本発明に係る第3
実施形態について説明する。図6は、本実施形態のIC
カード40の構成を示す図である。ICカード40は、
タイマーモジュール20もコプロセッサー32も有さな
い点において第1実施形態のICカード10、及び第2
実施形態のICカード30と異なるものである。
Third Embodiment Next, a third embodiment according to the present invention will be described.
An embodiment will be described. FIG. 6 shows an IC of the present embodiment.
FIG. 3 is a diagram showing a configuration of a card 40. The IC card 40
The IC card 10 of the first embodiment differs from the IC card 10 of the first embodiment in that neither the timer module 20 nor the coprocessor 32 is provided.
This is different from the IC card 30 of the embodiment.

【0026】図7は、RSA_CALCコマンドを実行
するときのICカード40の動作を示す流れ図である。
RSA_CALCコマンドを実行する場合のICカード
40の動作は、S702からS708までは図3に示し
たICカード10の動作S302からS708までの動
作と同一である。S708においてカウンターiが「i
>0」の条件を満たすと、CPU18は、図10に示し
たMontgomery積の計算を実行する(S71
0)。Montgomery積の計算が終了すると、C
PU18は乱数を発生させ(S712)、取得した乱数
に対応する回数だけ所定のループ計算を実行する(S7
14)。所定のループ計算とは、図5のS512におけ
るループ計算と同様に、復号化処理とは無関係な内容の
計算である。
FIG. 7 is a flowchart showing the operation of the IC card 40 when executing the RSA_CALC command.
The operation of the IC card 40 when executing the RSA_CALC command is the same as the operation of the IC card 10 shown in FIG. 3 from S302 to S708 from S702 to S708. In S708, the counter i is set to “i
If the condition of “> 0” is satisfied, the CPU 18 executes the calculation of the Montgomery product shown in FIG. 10 (S71).
0). When the calculation of the Montgomery product is completed, C
The PU 18 generates a random number (S712), and executes a predetermined loop calculation the number of times corresponding to the obtained random number (S7).
14). The predetermined loop calculation is a calculation having contents irrelevant to the decoding process, similarly to the loop calculation in S512 of FIG.

【0027】S714のループ計算を終了すると、CP
U18はカウンターiを1だけデクリメントし、その
後、秘密鍵Yを構成する全てのビットについてMont
gomery積の計算が行われるまでS708からS7
16までの処理を継続する。さらにS708からS71
4までの処理が全て終了すると、図3のS318、S3
20と同じ処理が実行され(S718、S720)、一
連の復号化処理が終了される。
When the loop calculation in S714 is completed, the CP
U18 decrements the counter i by one, and then mounts Mont for all bits constituting the secret key Y.
Until the calculation of the goaly product is performed, from S708 to S7
The processing up to 16 is continued. Further, from S708 to S71
When all of the processes up to step S4 are completed, S318 and S3 in FIG.
20 are executed (S718, S720), and a series of decoding processes ends.

【0028】以上説明したように、本実施形態では、S
710におけるMontgomery積の計算の後にル
ープ計算を実行する。このために復号化処理の終了時、
及びS720におけるレスポンスの送信時は、ループ計
算を行った時間分だけ遅延する。しかも、ループ計算を
実行する回数は乱数により無作為に決定されるために、
遅延する時間の長さは不確定である。したがって、本実
施形態では、レスポンスが送信される時と、S710に
おいて行われるMontogomery積の計算時間と
の間に相関がなく、第三者がレスポンスが送信される時
を観測することにより、秘密鍵Yのビット構成を予測す
ることが不可能となっている。
As described above, in the present embodiment, S
After the calculation of the Montgomery product at 710, a loop calculation is performed. Therefore, at the end of the decryption process,
At the time of transmitting the response in S720 and S720, the response is delayed by the time for performing the loop calculation. Moreover, since the number of times the loop calculation is performed is randomly determined by random numbers,
The length of the delay is uncertain. Therefore, in the present embodiment, there is no correlation between the time when the response is transmitted and the calculation time of the Montgomery product performed in S710. It is impossible to predict the bit configuration of Y.

【0029】(その他の実施形態)なお、本発明は、上
記実施形態に限定されるものではない。上記実施形態
は、例示であり、本発明の特許請求の範囲に記載された
技術的思想と実質的に同一な構成を有し、同様な作用効
果を奏するものは、いかなるものであっても本発明の技
術的範囲に包含される。
(Other Embodiments) The present invention is not limited to the above embodiment. The above embodiment is an exemplification, and has substantially the same configuration as the technical idea described in the scope of the claims of the present invention. It is included in the technical scope of the invention.

【0030】例えば、上記実施形態においては、ICカ
ードに外部から暗号文を与え、これを復号化させる場合
を例に説明をしたが、これは、ICカードに外部から平
文を与え、その平文を暗号化させることであってもよ
い。また、上記実施形態では、RSA暗号を使用するI
Cカードについて説明したが、これは、本発明の技術的
範囲をなんら限定する意味のものではない。本実施形態
の技術的思想は、鍵情報を用いて暗号化又は復号化処理
を行うICカードであって、その暗号化又は復号化処理
に要する時間が鍵情報のビット構成に依存するものに広
く適用可能である。さらに、上記実施形態では、復号化
処理の実行中又は実行後に復号化処理の終了時及びレス
ポンス信号の送信時を遅延させるための処理を行ってい
るが、この種の遅延処理は、復号化処理の実行前に実行
することであってもよい。
For example, in the above-described embodiment, an example has been described in which the ciphertext is externally provided to the IC card and the ciphertext is decrypted. It may be encrypted. Also, in the above embodiment, the IA using the RSA encryption is used.
Although the C card has been described, this does not limit the technical scope of the present invention in any way. The technical idea of the present embodiment is widely applied to an IC card that performs encryption or decryption processing using key information, and the time required for the encryption or decryption processing depends on the bit configuration of the key information. Applicable. Further, in the above-described embodiment, the process for delaying the end of the decoding process and the transmission of the response signal is performed during or after the execution of the decoding process. May be executed before the execution of.

【0031】[0031]

【発明の効果】以上詳しく説明したように、本発明によ
れば、応答情報の送信時は、鍵情報の内容と相関関係を
有さないので、第三者により鍵情報の内容が推測され、
ICカードのセキュリティが害される恐れがない。
As described above in detail, according to the present invention, when the response information is transmitted, there is no correlation with the content of the key information, so that the content of the key information is estimated by a third party,
There is no risk that the security of the IC card is harmed.

【図面の簡単な説明】[Brief description of the drawings]

【図1】本発明の第1実施形態であるICカード10の
構成を示す図である。
FIG. 1 is a diagram showing a configuration of an IC card 10 according to a first embodiment of the present invention.

【図2】RSA_CALCコマンドのフォーマットを示
す図である。
FIG. 2 is a diagram showing a format of an RSA_CALC command.

【図3】RSA_CALCコマンドを実行するときのI
Cカード10の動作を示す流れ図である。
FIG. 3 is a diagram showing an I when executing an RSA_CALC command;
4 is a flowchart showing the operation of the C card 10.

【図4】本発明の第2実施形態であるICカード30の
構成を示す図である。
FIG. 4 is a diagram showing a configuration of an IC card 30 according to a second embodiment of the present invention.

【図5】RSA_CALCコマンドを実行するときのI
Cカード30の動作を示す流れ図である。
FIG. 5 shows I when executing an RSA_CALC command.
4 is a flowchart showing the operation of the C card 30.

【図6】本発明の第3実施形態であるICカード40の
構成を示す図である。
FIG. 6 is a diagram showing a configuration of an IC card 40 according to a third embodiment of the present invention.

【図7】RSA_CALCコマンドを実行するときのI
Cカード40の動作を示す流れ図である。
FIG. 7 is a diagram showing an I when executing an RSA_CALC command;
4 is a flowchart showing the operation of the C card 40.

【図8】リーダ・ライタ等の外部機器からICカードに
情報を伝達する時の様子を示す説明図である。
FIG. 8 is an explanatory diagram showing a state when information is transmitted from an external device such as a reader / writer to an IC card.

【図9】Montgomery法によるべき乗剰余の計
算のアルゴリズムを示す図である。
FIG. 9 is a diagram showing an algorithm for calculating a modular exponentiation by the Montgomery method.

【図10】Montgomery積の処理内容を示す流
れ図である。
FIG. 10 is a flowchart showing processing contents of a Montgomery product.

【符号の説明】[Explanation of symbols]

10 ICカード 12 ROM 14 RAM 16 EEPROM 18 CPU 20 タイマーモジュール 32 コプロセッサー DESCRIPTION OF SYMBOLS 10 IC card 12 ROM 14 RAM 16 EEPROM 18 CPU 20 Timer module 32 Coprocessor

───────────────────────────────────────────────────── フロントページの続き (51)Int.Cl.6 識別記号 庁内整理番号 FI 技術表示箇所 H04L 9/08 H04L 9/00 601Z 9/10 621A 9/30 663A ──────────────────────────────────────────────────続 き Continued on the front page (51) Int.Cl. 6 Identification number Agency reference number FI Technical display location H04L 9/08 H04L 9/00 601Z 9/10 621A 9/30 663A

Claims (4)

【特許請求の範囲】[Claims] 【請求項1】 CPUと、 前記CPUがアクセス可能なメモリとを備え、 外部命令に従って前記メモリに保存されている鍵情報を
用いてデータの暗号化処理又は復号化処理を行い、その
結果に関する応答情報を外部へ送信するICカードにお
いて、 前記応答情報の送信時を遅延させる遅延手段を有し、 前記暗号化処理又は復号化処理の実行中又は実行の前後
に前記遅延手段を実行することにより、前記鍵情報の内
容と、前記応答情報の送信時との相関関係を喪失させる
ことを特徴とするICカード。
1. A CPU comprising: a CPU; and a memory accessible by the CPU, wherein data is encrypted or decrypted using key information stored in the memory in accordance with an external command, and a response relating to the result is performed. An IC card that transmits information to the outside, comprising: a delay unit that delays transmission of the response information; and executing the delay unit during or before or after execution of the encryption or decryption processing. An IC card, wherein the correlation between the content of the key information and the time of transmitting the response information is lost.
【請求項2】 請求項1に記載のICカードにおいて、 前記遅延手段は、前記CPUが無作為な時間実行する、
前記暗号化処理又は復号化処理と実質的に無関係な演算
処理であることを特徴とするICカード。
2. The IC card according to claim 1, wherein the delay unit executes the CPU for a random time.
An IC card, which is an arithmetic process that is substantially unrelated to the encryption process or the decryption process.
【請求項3】 請求項1に記載のICカードにおいて、 所定時間の経過を通知する計時手段を有し、 前記遅延手段は、前記CPUが前記計時手段から前記通
知があるまで前記暗号化処理又は復号化処理の開始又は
続行を中断することであることを特徴とするICカー
ド。
3. The IC card according to claim 1, further comprising a timer for notifying the elapse of a predetermined time, wherein the delayer is configured to execute the encryption processing or the CPU until the CPU receives the notification from the timer. An IC card characterized by interrupting the start or continuation of the decryption process.
【請求項4】 請求項1から請求項3までのいずれか1
項に記載のICカードにおいて、 前記遅延手段は、前記鍵情報のビット構成によらず、前
記暗号化処理又は復号化処理に要する時間を一定とする
ことを特徴とするICカード。
4. One of claims 1 to 3
3. The IC card according to claim 1, wherein the delay unit keeps the time required for the encryption process or the decryption process constant regardless of the bit configuration of the key information.
JP8224971A 1996-08-27 1996-08-27 Ic card Pending JPH1069222A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP8224971A JPH1069222A (en) 1996-08-27 1996-08-27 Ic card

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP8224971A JPH1069222A (en) 1996-08-27 1996-08-27 Ic card

Publications (1)

Publication Number Publication Date
JPH1069222A true JPH1069222A (en) 1998-03-10

Family

ID=16822085

Family Applications (1)

Application Number Title Priority Date Filing Date
JP8224971A Pending JPH1069222A (en) 1996-08-27 1996-08-27 Ic card

Country Status (1)

Country Link
JP (1) JPH1069222A (en)

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000305453A (en) * 1999-04-21 2000-11-02 Nec Corp Ciphering device, deciphering device, and ciphering and deciphering device
JP2003036430A (en) * 2001-07-24 2003-02-07 Dainippon Printing Co Ltd Portable information processor provided with function for guaranteeing processing time
JP2003523549A (en) * 1999-02-25 2003-08-05 エステーミクロエレクトロニクス ソシエテ アノニム A method for securing a series of valid operations performed by an electronic circuit in the course of executing an algorithm
JP2004242214A (en) * 2003-02-07 2004-08-26 Sony Corp Compression cipher device, decoding/decompression device, compression cipher and decoding/decompression device, compression cipher method, decoding/decompression method, compression cipher, and decoding/decompression method
US6907526B2 (en) 2000-01-12 2005-06-14 Renesas Technology Corp. IC card and microprocessor
US6934843B2 (en) 1998-09-22 2005-08-23 Infineon Technologies Ag Method for authenticating at least one subscriber during a data interchange
JP2006345408A (en) * 2005-06-10 2006-12-21 Oki Electric Ind Co Ltd Message authentication system, message transmitter, message receiver, message transmitting method, message receiving method, and program
WO2007088796A1 (en) * 2006-01-31 2007-08-09 Semiconductor Energy Laboratory Co., Ltd. Semiconductor device
JP2007234001A (en) * 2006-01-31 2007-09-13 Semiconductor Energy Lab Co Ltd Semiconductor device

Cited By (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6934843B2 (en) 1998-09-22 2005-08-23 Infineon Technologies Ag Method for authenticating at least one subscriber during a data interchange
JP2003523549A (en) * 1999-02-25 2003-08-05 エステーミクロエレクトロニクス ソシエテ アノニム A method for securing a series of valid operations performed by an electronic circuit in the course of executing an algorithm
JP2000305453A (en) * 1999-04-21 2000-11-02 Nec Corp Ciphering device, deciphering device, and ciphering and deciphering device
US6907526B2 (en) 2000-01-12 2005-06-14 Renesas Technology Corp. IC card and microprocessor
JP2003036430A (en) * 2001-07-24 2003-02-07 Dainippon Printing Co Ltd Portable information processor provided with function for guaranteeing processing time
JP2004242214A (en) * 2003-02-07 2004-08-26 Sony Corp Compression cipher device, decoding/decompression device, compression cipher and decoding/decompression device, compression cipher method, decoding/decompression method, compression cipher, and decoding/decompression method
JP4622208B2 (en) * 2003-02-07 2011-02-02 ソニー株式会社 Compression encryption and decryption restoration apparatus, compression encryption and decryption restoration method
JP2006345408A (en) * 2005-06-10 2006-12-21 Oki Electric Ind Co Ltd Message authentication system, message transmitter, message receiver, message transmitting method, message receiving method, and program
JP4665617B2 (en) * 2005-06-10 2011-04-06 沖電気工業株式会社 Message authentication system, message transmission device, message reception device, message transmission method, message reception method, and program
US8209536B2 (en) 2005-06-10 2012-06-26 Oki Electric Industry Co., Ltd. Message authentication system, message transmission apparatus and message reception apparatus
WO2007088796A1 (en) * 2006-01-31 2007-08-09 Semiconductor Energy Laboratory Co., Ltd. Semiconductor device
JP2007234001A (en) * 2006-01-31 2007-09-13 Semiconductor Energy Lab Co Ltd Semiconductor device

Similar Documents

Publication Publication Date Title
US4670857A (en) Cartridge-controlled system whose use is limited to authorized cartridges
CA2334597C (en) Leak-resistant cryptographic indexed key update
EP1440535B1 (en) Memory encrytion system and method
US9787663B2 (en) Replaying a batch of secure commands in a secure channel
CN100524265C (en) Apparatus and method for operating plural applications between portable storage device and digital device
KR20020025630A (en) The processing device of secret information, program or system thereof
US10243728B2 (en) Verification of the resistance of an electronic circuit to side-channel attacks
JP2005503069A (en) How to protect the amount of secrets
US7894608B2 (en) Secure approach to send data from one system to another
EP3721577A1 (en) Improvements in and relating to remote authentication devices
US20060153372A1 (en) Smart card and method protecting secret key
JPH1069222A (en) Ic card
JP2004304800A (en) Protection of side channel for prevention of attack in data processing device
US11336425B1 (en) Cryptographic machines characterized by a Finite Lab-Transform (FLT)
CN109923829B (en) Agreement on secret values
CN116455572B (en) Data encryption method, device and equipment
CN115567200B (en) Http interface anti-brushing method, system and related equipment
CN101556638A (en) Data processing apparatus
KR20050010745A (en) Data communication system, information processing device and method, recording medium, and program
CN101465726B (en) Decode-proof method for cipher key as well as controller and memory device for implementing the method
JP2005045760A (en) Cipher processing method and device thereof
JP2005204134A (en) Anti-tamper encryption system, memory device, authentication terminal and program
CA2327037A1 (en) Method to detect fault attacks against cryptographic algorithms
CN117171772B (en) Method and device for determining data intersection
US11201732B1 (en) Private and public key exchange method preventing man-in-the-middle attack without electronic certificate and digital signature

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20051213

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20060210

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20060307