JP2007067942A - Ic card, and ic card program - Google Patents

Ic card, and ic card program Download PDF

Info

Publication number
JP2007067942A
JP2007067942A JP2005252500A JP2005252500A JP2007067942A JP 2007067942 A JP2007067942 A JP 2007067942A JP 2005252500 A JP2005252500 A JP 2005252500A JP 2005252500 A JP2005252500 A JP 2005252500A JP 2007067942 A JP2007067942 A JP 2007067942A
Authority
JP
Japan
Prior art keywords
card
encryption
encryption key
key
cryptographic
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
JP2005252500A
Other languages
Japanese (ja)
Inventor
Yasushi Abe
泰史 安部
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 JP2005252500A priority Critical patent/JP2007067942A/en
Publication of JP2007067942A publication Critical patent/JP2007067942A/en
Pending legal-status Critical Current

Links

Images

Landscapes

  • Storage Device Security (AREA)

Abstract

<P>PROBLEM TO BE SOLVED: To provide an IC card which allows a DPA to have tampering resistance. <P>SOLUTION: An IC card comprises a cipher module 100 that is a program for encrypting plain text. The cipher module 100 stores, as a cryptographic key for encrypting plain text, a regular cryptographic key 131 being a regular cryptographic key and (two) dummy keys 132 being dummy cryptographic keys in a cryptographic key table 130. When the cipher module 100 encrypts plain text, the plain text is encrypted using all the cryptographic keys provided to the cryptographic key table 130 at random and outputs cipher text encrypted by the regular cryptographic key 131. Timing to use the regular cryptographic key 131 is made random, so that a correlation between a waveform of current consumption of the IC card and the cryptographic keys is weakened. Thus, the IC card can have tampering resistance. <P>COPYRIGHT: (C)2007,JPO&INPIT

Description

本発明は、ICカードに関する技術であり、更に詳しくは、ICカードに記憶された暗号鍵の不正な解読を防止する技術に関する。   The present invention relates to a technique related to an IC card, and more particularly to a technique for preventing unauthorized decryption of an encryption key stored in an IC card.

データを秘匿に記憶できるICカードには、ユーザ認証の用途やデータ通信の機密性を保持するために、DES(Data Encryption Standard)の暗号演算機能を備えていることが一般的である。DESの暗号演算では、ビット位置転置演算とXOR演算を組み合わせることでデータを暗号化/複合するため、DESの暗号演算はハードウェアで実現しやすく、ICカードの暗号演算機能は、DES用の専用演算回路で実現されることが多い。   In general, an IC card capable of storing data in a secret manner is provided with a DES (Data Encryption Standard) encryption operation function in order to maintain the use of user authentication and the confidentiality of data communication. In DES cryptographic operations, data is encrypted / combined by combining bit position transposition operations and XOR operations, so DES cryptographic operations are easy to implement in hardware, and IC card cryptographic operation functions are dedicated to DES. Often implemented with arithmetic circuits.

ICカードがDES用の暗号演算回路を備えることで、DESの暗号演算機能を実現するソフトウェアを開発する手間が省けると同時に、ソフトウェアで実現するときよりも、暗号演算の高速化が図れるメリットがあるが、その一方で、ハードウェアの特性を用いてDESの暗号鍵が解読できてしまう場合がある。   Since the IC card has a cryptographic operation circuit for DES, it is possible to save time and effort for developing software that realizes the cryptographic operation function of DES, and at the same time, there is a merit that it is possible to speed up the cryptographic operation compared to the case where it is realized by software. On the other hand, there are cases where the DES encryption key can be decrypted using the hardware characteristics.

DPA(Differential Power Analysis )は、ハードウェアの特性を用いてDESの暗号鍵を解読する手法の一つで、DESの暗号演算中にICチップに流れる込む消費電流が、ICカードに記憶された暗号鍵と相関を有する点に着目した手法で、DPAにおいては、暗号化される平文を変化させながら、DESの暗号演算中の消費電流を幾つも測定し、測定したデータを統計処理することで、ICカードに記憶されたDESの暗号鍵を解読する。   DPA (Differential Power Analysis) is a technique for deciphering DES encryption keys using the characteristics of hardware. The current consumed by an IC chip during DES encryption operations is stored in an IC card. By focusing on the point that has a correlation with the key, in DPA, while changing the plaintext to be encrypted, by measuring the current consumption during the DES cryptographic operation, and statistically processing the measured data, Decrypts the DES encryption key stored in the IC card.

DPAに対する耐タンパー性を実現する技術としては、既に様々な技術が開示され、例えば、特許文献1で開示されている暗号化装置は、あるマスクパターンとそのビット反転したマスクパターンが設けられたデータ攪拌部を備え、平文に依存したビットをマスクするマスクパターンをランダムに選択することで、DPAに対する耐タンパー性を実現する技術が開示されている。また、特許文献2においては、暗号化処理実行中に必要な中間データを乱数に依存して変化させることで、DPAに対する耐タンパー性を実現する暗号化装置が開示されている。
特開2000−66585号公報 特開2000−305453号公報
Various techniques have already been disclosed as techniques for realizing tamper resistance against DPA. For example, the encryption apparatus disclosed in Patent Document 1 is a data provided with a mask pattern and a mask pattern obtained by inverting the bit pattern. There has been disclosed a technique for realizing tamper resistance against DPA by randomly selecting a mask pattern that includes a stirring unit and masks bits depending on plain text. Patent Document 2 discloses an encryption device that realizes tamper resistance against DPA by changing intermediate data required during execution of encryption processing depending on a random number.
JP 2000-66585 A JP 2000-305453 A

上述した技術も含め、DPAに対する耐タンパー性を実現する様々な技術が公知になっているが、本発明の目的は、データを暗号化/復号するタイミングを毎回変更し、ICチップの消費電流とICカードに記憶された暗号鍵と相関を無くすことで、DPAに対して耐タンパー性をもたせることのできるICカード、および、ICカード用プログラムを提供することである。   Various techniques for realizing tamper resistance against DPA, including the techniques described above, are known, but the object of the present invention is to change the timing for encrypting / decrypting data every time, An object is to provide an IC card and an IC card program capable of providing tamper resistance to the DPA by eliminating the correlation with the encryption key stored in the IC card.

上述した課題を解決する第1の発明は、データを暗号化/復号する機能を備えたICカードであって、前記ICカードは、複数の暗号鍵を記憶する暗号鍵記憶手段と、前記暗号鍵記憶手段に記憶した暗号鍵を用いてデータを暗号化/復号する暗号処理手段を備え、前記暗号処理手段は、前記暗号鍵記憶手段に記憶されたそれぞれの暗号鍵をランダムの順番で用いてデータを暗号化/復号することを特徴とするICカードである。   A first invention for solving the above-described problem is an IC card having a function of encrypting / decrypting data, wherein the IC card includes an encryption key storage means for storing a plurality of encryption keys, and the encryption key. Encryption processing means for encrypting / decrypting data using the encryption key stored in the storage means, wherein the encryption processing means uses the respective encryption keys stored in the encryption key storage means in a random order. The IC card is characterized by encrypting / decrypting the card.

更に、第2の発明は、第1の発明に記載のICカードにおいて、前記暗号鍵記憶手段に記憶される暗号鍵の一つは、前記ICカードを利用したトランザクションで使用される暗号鍵である正規暗号鍵で、残りの暗号鍵は、前記ICカードを利用したトランザクションで使用されない暗号鍵であるダミー鍵であって、前記暗号処理手段は、前記正規暗号鍵を用いて暗号化/復号したデータを、前記ICカードを利用したトランザクションに使用することを特徴とするICカードである。   Further, according to a second invention, in the IC card according to the first invention, one of the encryption keys stored in the encryption key storage means is an encryption key used in a transaction using the IC card. The remaining encryption key is a dummy key that is an encryption key that is not used in a transaction using the IC card, and the encryption processing means encrypts / decrypts data using the regular encryption key. Is used for a transaction using the IC card.

更に、第3の発明は、ICカードに実装されるICチップを、第1の発明または第2の発明に記載の前記暗号処理手段として動作させるためのICカード用プログラムである。   Furthermore, a third invention is an IC card program for causing an IC chip mounted on an IC card to operate as the encryption processing means according to the first or second invention.

上述した発明によれば、ICカードが複数の暗号鍵を記憶し、それぞれの暗号鍵をランダムの順番で用いてデータを暗号化処理することで、それぞれの暗号鍵が使用される順番、すなわち、暗号鍵が使用されるタイミングはランダムになるため、消費電流の波形と暗号鍵との相関は弱まり、測定した消費電流のデータを統計処理しても、暗号鍵の解読をすることは困難になる。   According to the above-described invention, the IC card stores a plurality of encryption keys and encrypts data using each encryption key in a random order, whereby the order in which each encryption key is used, that is, Since the timing when the encryption key is used is random, the correlation between the waveform of the current consumption and the encryption key is weakened, making it difficult to decipher the encryption key even if statistical processing is performed on the measured current consumption data. .

また、ICカードが記憶する複数の暗号鍵を、ICカードを利用したトランザクションで使用される暗号鍵である正規暗号鍵と、ICカードを利用したトランザクションで使用されない暗号鍵であるダミー鍵とし、ICカードに備えられた暗号処理手段は、正規暗号鍵を用いて暗号化したデータを、ICカードを利用したトランザクションに使用することで、ICカードを利用する端末装置は、複数の暗号鍵を記憶する必要はなく、また、暗号化されたデータを復号する際に、暗号鍵を使用した順番を取得する必要はなくなる。   In addition, a plurality of encryption keys stored in the IC card are used as a regular encryption key that is an encryption key used in a transaction using the IC card and a dummy key that is an encryption key not used in a transaction using the IC card. The encryption processing means provided in the card uses the data encrypted using the regular encryption key for the transaction using the IC card, so that the terminal device using the IC card stores a plurality of encryption keys. It is not necessary, and it is not necessary to acquire the order using the encryption key when decrypting the encrypted data.

ここから、本発明に係るICカードについて、図を参照しながら詳細に説明する。   From here, the IC card according to the present invention will be described in detail with reference to the drawings.

図1は、本発明に係るICカード1の外観図である。図1で示したように、ICカード1はキャッシュカードやクレジットカードと同じ大きさのプラスチック製カードで、ICカード1には、ICチップ20がモールドされたICモジュール1aが実装されている。   FIG. 1 is an external view of an IC card 1 according to the present invention. As shown in FIG. 1, the IC card 1 is a plastic card having the same size as a cash card or a credit card, and an IC module 1 a in which an IC chip 20 is molded is mounted on the IC card 1.

図1においては、ICカード1を接触ICカードとして図示しているが、本発明は何らICカード1の通信方式に依存するものではなく、無線でデータ通信する非接触ICカード、または、接触データ通信と非接触データ通信の2つの通信機能を備えたデュアルインターフェースICカードであってもよい。加えて、ICカード1は、ICモジュール1aの近辺を短冊状に切り取った形状をしているSIM(Subscriber Identity Module)であってもよい。   In FIG. 1, the IC card 1 is illustrated as a contact IC card, but the present invention does not depend on the communication method of the IC card 1, and is a non-contact IC card or contact data for wireless data communication. A dual interface IC card having two communication functions of communication and non-contact data communication may be used. In addition, the IC card 1 may be a SIM (Subscriber Identity Module) having a shape obtained by cutting out the vicinity of the IC module 1a into a strip shape.

図2は、ICカード1に埋め込まれるICチップ20のハードウェア構成図である。ICチップ20には、演算機能およびICチップ20が具備するデバイスを制御する機能を備えた中央演算装置21(CPU:Central Processing Unit)、読み出し専用の不揮発性メモリ23(ROM:Read Only Memory、)、電気的に書換え可能な不揮発性メモリとしてEEPROM24(EEPROM:Electrically Erasable Programmable Read-Only Memoryの略)、揮発性メモリとしてランダムアクセスメモリ22(RAM:Random Access Memory)、乱数を生成する乱数生成回路25、DES(DES :Data Encryption Standard)専用の演算回路であるDES演算回路26、および、外部の端末装置とデータ通信するためのI/O回路27を備なえている。   FIG. 2 is a hardware configuration diagram of the IC chip 20 embedded in the IC card 1. The IC chip 20 includes a central processing unit 21 (CPU: Central Processing Unit) having a calculation function and a function for controlling devices included in the IC chip 20, and a read-only nonvolatile memory 23 (ROM: Read Only Memory). EEPROM 24 (EEPROM: Electrically Erasable Programmable Read-Only Memory) as electrically rewritable nonvolatile memory, random access memory 22 (RAM: Random Access Memory) as volatile memory, and random number generation circuit 25 for generating random numbers DES (DES: Data Encryption Standard) dedicated arithmetic circuit 26 and I / O circuit 27 for data communication with an external terminal device.

本発明は、ICカード1に実装されるICチップ20の仕様をなんら限定するものではなく、ICカード1の用途に適した仕様のICチップ20を選択することができる。例えばROM23およびEEPROM24の容量については限定しないし、書換え可能な不揮発性メモリはフラッシュメモリ等のEEPROM以外のメモリであっても構わない。またICチップ20は図示していない他のデバイスを備えていても構わない。   The present invention does not limit the specifications of the IC chip 20 mounted on the IC card 1, and an IC chip 20 having specifications suitable for the application of the IC card 1 can be selected. For example, the capacities of the ROM 23 and the EEPROM 24 are not limited, and the rewritable nonvolatile memory may be a memory other than the EEPROM such as a flash memory. Further, the IC chip 20 may include other devices not shown.

ICカード1が有する本発明に係る機能は、ICカード1に実装されたICカード用プログラムで実現され、このICカード用プログラムは、図2に示したハードウェア資源を利用し、CPU21を動作させるプログラムで、このプログラムコードはROM23またはEEPROM24に記憶される。   The functions of the IC card 1 according to the present invention are realized by an IC card program mounted on the IC card 1, and the IC card program operates the CPU 21 using the hardware resources shown in FIG. This program code is stored in the ROM 23 or the EEPROM 24.

図3は、ICカードに実装され、本発明に係る機能を実現するICカード用プログラムである暗号モジュール100のブロック図である。暗号モジュール100は、DES演算回路26を制御し平文を暗号化/復号するプログラムである暗号演算ルーチン110と、乱数生成回路25を制御し、乱数を生成させる乱数生成ルーチン120とを備え、ICカード1を利用したトランザクションで使用される暗号鍵である正規暗号鍵131と、ICカード1を利用したトランザクションで使用されない暗号鍵である複数のダミー鍵132が記憶された暗号鍵テーブル130を有している。   FIG. 3 is a block diagram of the cryptographic module 100 which is an IC card program that is mounted on an IC card and implements the functions according to the present invention. The cryptographic module 100 includes a cryptographic calculation routine 110, which is a program for controlling the DES arithmetic circuit 26 to encrypt / decrypt plaintext, and a random number generation routine 120 for controlling the random number generation circuit 25 to generate a random number. 1 has an encryption key table 130 in which a regular encryption key 131 which is an encryption key used in a transaction using 1 and a plurality of dummy keys 132 which are encryption keys not used in a transaction using the IC card 1 are stored. Yes.

図4は、暗号モジュール100が有する暗号鍵テーブル130を説明する図である。暗号鍵テーブル130には、正規暗号鍵131と、1つ以上のダミー暗号鍵132(ここでは、2つ)が記憶され、暗号鍵テーブル130に記憶されたそれぞれの暗号鍵には、暗号鍵を識別するための情報である鍵識別番号133が付加されている。図4では、正規暗号鍵131の鍵識別番号133は「0」で、一つのダミー暗号鍵132の鍵識別番号133は「1」で、もう一つのダミー暗号鍵132の鍵識別番号133は「2」である。   FIG. 4 is a diagram illustrating the encryption key table 130 included in the encryption module 100. The encryption key table 130 stores a regular encryption key 131 and one or more dummy encryption keys 132 (two in this case), and each encryption key stored in the encryption key table 130 includes an encryption key. A key identification number 133, which is information for identification, is added. In FIG. 4, the key identification number 133 of the regular encryption key 131 is “0”, the key identification number 133 of one dummy encryption key 132 is “1”, and the key identification number 133 of the other dummy encryption key 132 is “ 2 ”.

暗号モジュール100がデータを暗号化/復号するときは、暗号鍵テーブル130に記憶されたすべての暗号鍵それぞれでデータは暗号化/復号され、データを暗号化/復号する暗号鍵の順番は、乱数生成ルーチン120が生成した乱数で決定される。データを暗号化/復号する暗号鍵の順番を乱数で決定することで、データを暗号化/復号するごとに、正規暗号鍵131を使用する正規暗号処理が実行されるタイミングが異なり、かつ、ダミー暗号鍵を使用するダミー暗号処理に伴う消費電流が発生するため、消費電流の波形と暗号鍵との相関は弱まり、測定した消費電流のデータを統計処理しても、正規暗号鍵131を解読することは困難になる。   When the encryption module 100 encrypts / decrypts data, the data is encrypted / decrypted with all the encryption keys stored in the encryption key table 130, and the order of the encryption keys for encrypting / decrypting the data is a random number. The random number generated by the generation routine 120 is determined. By determining the order of encryption keys for encrypting / decrypting data with a random number, the timing at which normal encryption processing using the normal encryption key 131 is executed each time the data is encrypted / decrypted is different, and dummy Since the consumption current associated with the dummy encryption process using the encryption key is generated, the correlation between the waveform of the consumption current and the encryption key is weakened, and the normal encryption key 131 is decrypted even if the measured consumption current data is statistically processed. It becomes difficult.

ここからは、暗号モジュール100がデータを暗号化する処理の内容についてのみ、手順を追いながら詳細に説明する。暗号モジュール100がデータを暗号化する処理では、暗号モジュール100への入力は平文となり、暗号モジュール100の出力は、平文を正規暗号鍵131で暗号化した暗号文となる。図5は、暗号モジュール100が平文を暗号化する手順を示したフロー図である。   From here, only the content of the process in which the cryptographic module 100 encrypts data will be described in detail while following the procedure. In the process of encrypting data by the cryptographic module 100, the input to the cryptographic module 100 is plain text, and the output of the cryptographic module 100 is a cipher text obtained by encrypting the plain text with the regular cryptographic key 131. FIG. 5 is a flowchart showing a procedure in which the cryptographic module 100 encrypts plain text.

この手順の最初のステップ10は、暗号モジュール100がICカード1の他のモジュールから呼出され、暗号モジュール100に平文が入力されるステップである。このステップにおいては、図外リーダライタから送信されたデータ、もしくは、ROM23またはEERPOM24に記憶されたデータが平文として、暗号モジュール100に入力される。   The first step 10 of this procedure is a step in which the cryptographic module 100 is called from another module of the IC card 1 and plaintext is input to the cryptographic module 100. In this step, data transmitted from an unillustrated reader / writer or data stored in the ROM 23 or the EERPOM 24 is input to the cryptographic module 100 as plain text.

次のステップS11は、暗号モジュール100が平文を暗号化する暗号鍵(以下、WorkKey)を、暗号鍵テーブル130の中からランダムに選択するステップである。このステップでは、暗号モジュール100は乱数生成ルーチン120を動作させ、「0」から「暗号鍵テーブル130に記憶している暗号鍵の数―1」(ここでは、2)までの範囲の乱数を一つ生成する。   The next step S11 is a step in which the cryptographic module 100 randomly selects an encryption key (hereinafter, WorkKey) for encrypting plaintext from the encryption key table 130. In this step, the cryptographic module 100 operates the random number generation routine 120 to set random numbers in the range from “0” to “number of cryptographic keys stored in the cryptographic key table −1” (here, 2). Generate one.

そして、暗号モジュール100は、暗号鍵テーブル130に記憶している暗号鍵の中から、生成した乱数と鍵識別番号133が等しい暗号鍵をWorkKeyとして選択し、選択した暗号鍵の鍵識別番号133(または、生成した乱数)の履歴をRAM22に記憶する。例えば、生成した乱数が「0」ならば、鍵識別番号133が「0」である正規暗号鍵131が選択され、生成した乱数が「1」ならば、鍵識別番号133が「1」であるダミー暗号鍵132が選択される。   Then, the cryptographic module 100 selects, from the cryptographic keys stored in the cryptographic key table 130, a cryptographic key having the same generated random number and key identification number 133 as the WorkKey, and the key identification number 133 ( Alternatively, the history of the generated random number) is stored in the RAM 22. For example, if the generated random number is “0”, the regular encryption key 131 whose key identification number 133 is “0” is selected, and if the generated random number is “1”, the key identification number 133 is “1”. The dummy encryption key 132 is selected.

次のステップS12は、平文をWorkKeyで暗号化するステップである。このステップでは、暗号モジュール100は、暗号演算ルーチン110を動作させ、DES演算回路26を用いて、平文をWorkKeyで暗号化した暗号文を生成する。   The next step S12 is a step of encrypting the plain text with the work key. In this step, the cryptographic module 100 operates the cryptographic calculation routine 110 and uses the DES calculation circuit 26 to generate a ciphertext obtained by encrypting the plaintext with the work key.

次のステップS13は、WorkKeyが正規暗号鍵131であるか確認するステップである。WorkKeyが正規暗号鍵131であるときはステップS14aに進み、WorkKeyが正規暗号鍵131でないときはステップS14bに進む。   The next step S13 is a step of confirming whether the WorkKey is the regular encryption key 131. When the WorkKey is the regular encryption key 131, the process proceeds to step S14a, and when the WorkKey is not the regular encryption key 131, the process proceeds to step S14b.

ステップS14aでは、正規暗号処理の暗号文を格納するメモリバッファ(例えば、RAMの所定領域)に、ステップS12で生成した暗号文を書込み、ステップS15に進む。また、ステップS14bでは、ダミー暗号処理の暗号文を格納するメモリバッファ(例えば、RAMの所定領域)に、ステップS12で生成した暗号文を書込み、ステップS15に進む。   In step S14a, the ciphertext generated in step S12 is written in a memory buffer (for example, a predetermined area of the RAM) that stores the ciphertext of the normal cipher process, and the process proceeds to step S15. In step S14b, the ciphertext generated in step S12 is written in a memory buffer (for example, a predetermined area of the RAM) that stores the ciphertext of the dummy encryption process, and the process proceeds to step S15.

ステップS15は、暗号鍵テーブル130に記憶したすべての暗号鍵を使用したか確認するステップである。暗号鍵テーブル130に記憶したすべての暗号鍵を使用していないときは、ステップS11に戻り、すべての暗号鍵を使用したときはステップS16に進む。   Step S15 is a step of confirming whether all the encryption keys stored in the encryption key table 130 have been used. When all the encryption keys stored in the encryption key table 130 are not used, the process returns to step S11, and when all the encryption keys are used, the process proceeds to step S16.

なお、ステップS15を経由してステップS11に戻り、ランダムに選択した暗号鍵の鍵識別番号133がRAM22の履歴に記憶されていた場合は、選択した暗号鍵を用いずに、RAM22の履歴に記憶されていない鍵識別番号133が選択されるまで、暗号モジュール100は乱数を生成する。   If the key identification number 133 of the randomly selected encryption key is stored in the history of the RAM 22 via the step S15, the selected key is stored in the history of the RAM 22 without using the selected encryption key. The cryptographic module 100 generates random numbers until a key identification number 133 that has not been selected is selected.

すべての暗号鍵を使用したときはステップS16では、暗号モジュール100から他のモジュールに戻り、平文を正規暗号鍵で暗号化した暗号文が他のモジュールに受け渡されるステップである。このステップをもって、暗号モジュール100が平文を暗号化する手順は終了する。   When all the encryption keys have been used, step S16 is a step in which the encryption module 100 returns to the other module, and the ciphertext obtained by encrypting the plaintext with the regular encryption key is delivered to the other module. With this step, the procedure for the encryption module 100 to encrypt the plaintext is completed.

なお、暗号モジュール100がデータを復号するときは、暗号モジュール100への入力は暗号文となり、暗号モジュールからの出力は暗号文を復号した平文となることを考慮すれば、上述した内容から、暗号モジュール100がデータを復号するときの処理内容は明らかであるため、本明細書では説明を省く。   Note that when the cryptographic module 100 decrypts data, the input to the cryptographic module 100 is a ciphertext, and the output from the cryptographic module is a plaintext obtained by decrypting the ciphertext. Since the processing content when the module 100 decrypts the data is clear, the description is omitted in this specification.

ICカードの外観図。1 is an external view of an IC card. ICチップのハードウェア構成図。1 is a hardware configuration diagram of an IC chip. FIG. 暗号モジュールのブロック図。The block diagram of a cryptographic module. 暗号鍵テーブルを説明する図。The figure explaining an encryption key table. 暗号モジュールが平文を暗号化する手順を示したフロー図。The flowchart which showed the procedure in which an encryption module encrypts plaintext.

符号の説明Explanation of symbols

1 ICカード
100 暗号モジュール
110 暗号演算ルーチン
120 乱数生成ルーチン
130 暗号鍵テーブル
131 正規鍵、132 ダミー鍵、133 鍵識別番号
20 ICチップ

1 IC Card 100 Cryptographic Module 110 Cryptographic Operation Routine 120 Random Number Generation Routine 130 Cryptographic Key Table 131 Regular Key, 132 Dummy Key, 133 Key Identification Number 20 IC Chip

Claims (3)

データを暗号化/復号する機能を備えたICカードであって、前記ICカードは、複数の暗号鍵を記憶する暗号鍵記憶手段と、前記暗号鍵記憶手段に記憶した暗号鍵を用いてデータを暗号化/復号する暗号処理手段を備え、前記暗号処理手段は、前記暗号鍵記憶手段に記憶されたそれぞれの暗号鍵をランダムの順番で用いてデータを暗号化/復号することを特徴とするICカード。   An IC card having a function of encrypting / decrypting data, wherein the IC card stores data using an encryption key storage means for storing a plurality of encryption keys and an encryption key stored in the encryption key storage means. And an encryption processing means for encrypting / decrypting, wherein the encryption processing means encrypts / decrypts data using the encryption keys stored in the encryption key storage means in a random order. card. 請求項1に記載のICカードにおいて、前記暗号鍵記憶手段に記憶される暗号鍵の一つは、前記ICカードを利用したトランザクションで使用される暗号鍵である正規暗号鍵で、残りの暗号鍵は、前記ICカードを利用したトランザクションで使用されない暗号鍵であるダミー鍵であって、前記暗号処理手段は、前記正規暗号鍵を用いて暗号化/復号したデータを、前記ICカードを利用したトランザクションに使用することを特徴とするICカード。   2. The IC card according to claim 1, wherein one of the encryption keys stored in the encryption key storage means is a regular encryption key that is an encryption key used in a transaction using the IC card, and the remaining encryption keys. Is a dummy key that is an encryption key that is not used in a transaction using the IC card, and the encryption processing means performs a transaction using the IC card on data encrypted / decrypted using the regular encryption key. IC card characterized by being used for ICカードに実装されるICチップを、請求項1または請求項2に記載の前記暗号処理手段として動作させるためのICカード用プログラム。

An IC card program for causing an IC chip mounted on an IC card to operate as the encryption processing means according to claim 1 or 2.

JP2005252500A 2005-08-31 2005-08-31 Ic card, and ic card program Pending JP2007067942A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2005252500A JP2007067942A (en) 2005-08-31 2005-08-31 Ic card, and ic card program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2005252500A JP2007067942A (en) 2005-08-31 2005-08-31 Ic card, and ic card program

Publications (1)

Publication Number Publication Date
JP2007067942A true JP2007067942A (en) 2007-03-15

Family

ID=37929582

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2005252500A Pending JP2007067942A (en) 2005-08-31 2005-08-31 Ic card, and ic card program

Country Status (1)

Country Link
JP (1) JP2007067942A (en)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008306633A (en) * 2007-06-11 2008-12-18 Nec Corp Method and apparatus for managing encryption key in private communication network
JP2009010745A (en) * 2007-06-28 2009-01-15 Nec Corp Method, apparatus and program for updating encryption key
WO2019146198A1 (en) 2018-01-23 2019-08-01 パナソニック株式会社 Nonvolatile memory device and method of writing thereto
WO2023017572A1 (en) * 2021-08-11 2023-02-16 富士通株式会社 Information processing program, information processing method, and information processing device

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003134110A (en) * 2001-10-29 2003-05-09 Mitsubishi Electric Corp Cryptographic communication equipment
JP2004004341A (en) * 2002-05-31 2004-01-08 Toshiba Corp Apparatus and method for modulo exponentiation calculation, and program
JP2004326335A (en) * 2003-04-23 2004-11-18 Toshiba Corp Ic card and encryption processing system

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003134110A (en) * 2001-10-29 2003-05-09 Mitsubishi Electric Corp Cryptographic communication equipment
JP2004004341A (en) * 2002-05-31 2004-01-08 Toshiba Corp Apparatus and method for modulo exponentiation calculation, and program
JP2004326335A (en) * 2003-04-23 2004-11-18 Toshiba Corp Ic card and encryption processing system

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008306633A (en) * 2007-06-11 2008-12-18 Nec Corp Method and apparatus for managing encryption key in private communication network
JP2009010745A (en) * 2007-06-28 2009-01-15 Nec Corp Method, apparatus and program for updating encryption key
WO2019146198A1 (en) 2018-01-23 2019-08-01 パナソニック株式会社 Nonvolatile memory device and method of writing thereto
US11195582B2 (en) 2018-01-23 2021-12-07 Nuvoton Technology Corporation Japan Non-volatile memory device and method of writing to non-volatile memory device
WO2023017572A1 (en) * 2021-08-11 2023-02-16 富士通株式会社 Information processing program, information processing method, and information processing device

Similar Documents

Publication Publication Date Title
JP5984625B2 (en) Semiconductor device and encryption key writing method
CN1808966B (en) Safe data processing method and system
CN106688027A (en) PUF and address dependent data encryption
EP2506176A1 (en) Establishing unique key during chip manufacturing
JPH09238132A (en) Portable terminal communication system and its communication method
US10210776B2 (en) DPA protection of a rijndael algorithm
CA2400220A1 (en) Consumable authentication protocol and system
US8045712B2 (en) Stream ciphering of the content of a memory external to a processor
JP2010211515A (en) Information storage medium, authenticating data generation method and medium authentication system
US20170063524A1 (en) Protection of a rijndael algorithm
JP2007173999A (en) Authentication system and device to be authenticated
JP2007067942A (en) Ic card, and ic card program
WO2002086846A1 (en) Enciphering / deciphering device, enciphering / deciphering method, data enciphering method, and ic card
US20050138403A1 (en) Data encryption in a symmetric multiprocessor electronic apparatus
EP3238365B1 (en) Cryptographic system and method
JP2011010218A (en) Portable electronic device, and method for controlling portable electronic device
JPWO2009118829A1 (en) Cryptographic operation apparatus, cryptographic operation program, and recording medium
JP2006025366A (en) Encryption apparatus and semiconductor integrated circuit
JP2007193800A (en) Device and method for improving security level of card authentication system
CN107465655A (en) Pass through the card certification of contactless reading
KR101565968B1 (en) Memory for protecting data memory system including of the same and driving method for thereof
JP2006024140A (en) Random-number generator
JP7170588B2 (en) Data processing method and data processing system
JP2010141639A (en) Communication system and communication method
JP4321837B2 (en) Portable recording medium with encryption processing function

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20080428

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20090129

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20090217

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20090413

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20091111

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20100407