JP2008181226A - Ic card - Google Patents

Ic card Download PDF

Info

Publication number
JP2008181226A
JP2008181226A JP2007012886A JP2007012886A JP2008181226A JP 2008181226 A JP2008181226 A JP 2008181226A JP 2007012886 A JP2007012886 A JP 2007012886A JP 2007012886 A JP2007012886 A JP 2007012886A JP 2008181226 A JP2008181226 A JP 2008181226A
Authority
JP
Japan
Prior art keywords
card
data
storage unit
security information
divided
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
JP2007012886A
Other languages
Japanese (ja)
Inventor
Hiroki Tomoe
裕樹 友枝
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.)
Toshiba Corp
Original Assignee
Toshiba Corp
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 Toshiba Corp filed Critical Toshiba Corp
Priority to JP2007012886A priority Critical patent/JP2008181226A/en
Publication of JP2008181226A publication Critical patent/JP2008181226A/en
Pending legal-status Critical Current

Links

Images

Abstract

<P>PROBLEM TO BE SOLVED: To provide a tamperproof IC card capable of preventing security information from being easily determined and read, even when the security information in a card is leaked. <P>SOLUTION: This IC card is provided with storage parts 204, 206 for storing prescribed data, and a means I/O for inputting and outputting data from/to the outside, and the prescribed data is stored in the storage parts after divided into a plurality of divided data. <P>COPYRIGHT: (C)2008,JPO&INPIT

Description

本発明は、ICカードの耐タンパ技術に関する。   The present invention relates to a tamper resistant technique for an IC card.

ICカードは、勝手に書き換えることが許されないような個人情報の保持や、データの暗号化や復号化を行う装置である。このため、ICカード内部に格納されているデータは、ディレクトリ、ファイル毎のアクセス権により守られており、不正に外部に出力されたりすることはないようになっている。ICカード自体は電源を持っておらず、ICカード用のリーダライタ(card reader)に差し込まれることにより、また、無線アンテナを備えたものであれば無線アンテナの誘導電流によって、リーダライタから電源の供給を受け、動作可能となる。ICカードが動作可能になると、リーダライタから送信されるコマンドを受信し、そのコマンドに従って、データの転送等の処理を行う。なお、ICカードの細かい仕様に関しては、非特許文献1に記載されているので、詳細な説明は省略する。   An IC card is a device that holds personal information that cannot be rewritten without permission, and that encrypts and decrypts data. For this reason, the data stored in the IC card is protected by the access rights for each directory and file, and is not illegally output to the outside. The IC card itself does not have a power supply, and is inserted into a reader / writer for the IC card (card reader), or if it is equipped with a wireless antenna, the power of the reader / writer is supplied by the induced current of the wireless antenna. Received supply and ready for operation. When the IC card becomes operable, it receives a command transmitted from the reader / writer and performs processing such as data transfer according to the command. Since the detailed specifications of the IC card are described in Non-Patent Document 1, detailed description thereof will be omitted.

このように、ICカードは、プログラムや重要な情報がICカード用チップの中に密閉されており、重要な情報を格納したり、カードの中で暗号処理を行うために用いられるので、ICカードでの暗号を解読する難しさは、暗号アルゴリズムの解読の難しさと同じであると考えられていた。   In this way, since an IC card has a program and important information sealed in an IC card chip, it is used for storing important information and performing cryptographic processing in the card. It was thought that the difficulty of decrypting ciphers was the same as the difficulty of decrypting cryptographic algorithms.

しかし、ICカードが暗号処理を行っている時の消費電力を観測し、これを解析することにより、暗号アルゴリズムを直接的に解読するよりも容易に暗号処理の内容や暗号鍵が推定される可能性がある。消費電力は、オシロスコープを用いて、ICカードのVcc端子とグランド端子の間の電圧変化を測定することによって調べることができる。このように、電力解析による内部秘密情報を取り出す方法は、電力解析(Power Analysis)と呼ばれている。   However, by observing and analyzing the power consumption when the IC card is performing encryption processing, it is possible to estimate the encryption processing content and encryption key more easily than directly decrypting the encryption algorithm. There is sex. The power consumption can be checked by measuring a voltage change between the Vcc terminal and the ground terminal of the IC card using an oscilloscope. In this way, a method for extracting internal secret information by power analysis is called power analysis.

この電力解析において、反転ビット数(ハミングウェイト)に応じて電力が消費されることから、プログラムカウンタの変化に伴うビットの反転数(ハミング距離)の変化を均一化する提案が成されている(特許文献1参照)。しかし、セキュリティ情報等の重要なデータの解読方法は、日々進歩しており、カードの動作環境の異常や意図的な破壊攻撃により、強引に内部データが出力させられた場合、データ構造などからセキュリティ情報が解読される可能性がある。このため、より強固な耐タンパ性を備えたICカードが要求されている。
特開2004−126841号公報 ISO7816
In this power analysis, since power is consumed according to the number of inverted bits (Humming weight), a proposal has been made to equalize changes in the number of inverted bits (Hamming distance) associated with changes in the program counter ( Patent Document 1). However, methods for decrypting important data such as security information are improving day by day, and if internal data is forcibly output due to abnormalities in the card's operating environment or intentional destructive attacks, security can be determined from the data structure. Information may be deciphered. For this reason, an IC card having stronger tamper resistance is required.
JP 2004-126841 A ISO7816

本発明は、カード内部のセキュリティ情報が漏洩することがあっても、セキュリティ情報が容易に判別、解読できないような耐タンパ性を有するICカードを提供することを目的とする。   It is an object of the present invention to provide an IC card having tamper resistance that prevents security information from being easily discriminated and decoded even if security information inside the card may leak.

本発明の局面に係る発明は、所定のデータを記憶する記憶部と、外部とのデータの入出力を行う手段とを備えたICカードにおいて、前記所定のデータは、複数の分割データに分割された後に前記記憶部に記憶されることを特徴とする。   An invention according to an aspect of the present invention provides an IC card including a storage unit that stores predetermined data and a unit that performs input / output of data to / from the outside, wherein the predetermined data is divided into a plurality of divided data. After that, it is stored in the storage unit.

本発明によれば、カード内部のセキュリティ情報が漏洩することがあっても、セキュリティ情報が容易に判別、解読できないような耐タンパ性を有するICカードを提供できる。   According to the present invention, it is possible to provide an IC card having tamper resistance so that even if security information inside the card leaks, the security information cannot be easily discriminated and decoded.

図面を参照して本発明の実施の形態を説明する。図1は、本発明の一実施形態に係るICカードの概略構成を示す図である。
ICカードは、カード101と、カード101の上に搭載されたICカード用チップ102とを備えている。図1に示すように、一般に、ICカードは、ISO7816(非特許文献1)の規格に定められた位置に、ICカード用チップ102に電源を供給する供給電圧端子Vccと、ICカード用チップ102の接地用端子であるグランド端子GNDと、ICカード用チップ102の動作をリセットするためのリセット端子RSTと、外部とのデータのやりとりを行うための入出力端子I/Oと、ICカード用チップ102の動作クロックの入力用のクロック端子CLKとを備えており、これらの端子を通して、リーダライタから電源の供給を受けて、リーダライタと通信を行うようになっている。
Embodiments of the present invention will be described with reference to the drawings. FIG. 1 is a diagram showing a schematic configuration of an IC card according to an embodiment of the present invention.
The IC card includes a card 101 and an IC card chip 102 mounted on the card 101. As shown in FIG. 1, generally, an IC card has a supply voltage terminal Vcc for supplying power to the IC card chip 102 and a IC card chip 102 at a position defined in the standard of ISO 7816 (Non-Patent Document 1). A ground terminal GND, a reset terminal RST for resetting the operation of the IC card chip 102, an input / output terminal I / O for exchanging data with the outside, and an IC card chip 102 is provided with a clock terminal CLK for inputting an operation clock, and is supplied with power from the reader / writer through these terminals to communicate with the reader / writer.

ICカード用チップ102の構成は、基本的には通常のマイクロコンピュータと同じ構成である。その構成を、図2に示す。ICカード用チップ102は、中央処理装置(CPU)201と、コ・プロセッサ202と、記憶装置204と、入出力(I/O)ポート207とを備え、データバス203で相互に通信可能に接続されている。CPU201は、論理演算や算術演算などを行う装置であり、記憶装置204は、プログラムやデータを格納する装置である。入出力ポート207は、図示しないリーダライタと通信を行う装置である。コ・プロセッサ202は、暗号処理そのもの、または、暗号処理に必要な演算を高速に行う装置である。例えば、RSA暗号の剰余演算を行う為の特別な演算装置や、DES暗号の処理を行う暗号装置などがある。なお、ICカード用プロセッサの中には、コ・プロセッサを持たないものもある。   The configuration of the IC card chip 102 is basically the same as that of a normal microcomputer. The configuration is shown in FIG. The IC card chip 102 includes a central processing unit (CPU) 201, a co-processor 202, a storage device 204, and an input / output (I / O) port 207, which are communicably connected via a data bus 203. Has been. The CPU 201 is a device that performs logical operations and arithmetic operations, and the storage device 204 is a device that stores programs and data. The input / output port 207 is a device that communicates with a reader / writer (not shown). The co-processor 202 is an apparatus that performs cryptographic processing itself or calculations necessary for cryptographic processing at high speed. For example, there are a special arithmetic device for performing a remainder operation of RSA encryption, an encryption device for performing processing of DES encryption, and the like. Some IC card processors do not have a co-processor.

記憶装置204は、プログラム格納部205と、データ格納部206とからなる。プログラムは基本的に書き換えることがないので、プログラム格納部205はROM(Read Only Memory)で構成される。なお、プログラムを更新可能とするために、不揮発性のメモリであるEEPROM(Electrical Erasable Programmable Read Only Memory)で構成されることもあるが、この場合には、EEPROMはデータ格納部206と共有されることがある。データ格納部206には、電源の供給がなくなっても保持することが必要なデータ、例えば、プリペイドガードの残高のデータ、等が記憶される。また、図示しない作業用のメモリとして、電源の供給がなくなってもデータを保持する必要がない高速な揮発性のメモリであるRAM(Random Access Memory)が使用される。   The storage device 204 includes a program storage unit 205 and a data storage unit 206. Since the program is basically not rewritten, the program storage unit 205 is composed of a ROM (Read Only Memory). In order to make the program updatable, it may be composed of an EEPROM (Electrical Erasable Programmable Read Only Memory) which is a nonvolatile memory. In this case, the EEPROM is shared with the data storage unit 206. Sometimes. The data storage unit 206 stores data that needs to be retained even when power is not supplied, such as prepaid guard balance data. Further, a RAM (Random Access Memory), which is a high-speed volatile memory that does not need to retain data even when power is not supplied, is used as a working memory (not shown).

上記のように構成されたICカードに記憶されるセキュリティ情報等の重要なデータの保護方法について説明する。本実施形態では、ICカードに記憶されるセキュリティ情報の保護方法を従来と変えることにより、セキュリティ情報が漏洩することがあった場合でも、容易に判別、解読できないようにしている。具体的には、以下の通りである。   A method for protecting important data such as security information stored in the IC card configured as described above will be described. In the present embodiment, the protection method of security information stored in the IC card is changed from the conventional method, so that even when security information is leaked, it cannot be easily discriminated and deciphered. Specifically, it is as follows.

(1)第1の方法
セキュリティ情報を、所定の単位で分割し、分割したセキュリティ情報同士で、なんらかの演算を行い、その演算結果を、セキュリティ情報としてデータ格納部206に格納する。
具体的には、例えば、セキュリティ情報が、128ビットであった場合に、該セキュリティ情報を、64ビット(2個)や、32ビット(4個)や、16ビット(8個)に分割し、分割後のセキュリティ情報(以下、「分割後データ」と称する)同士で、演算(排他的論理和(XOR)等の論理演算や代数演算)を行い、その演算結果をセキュリティ情報としてデータ格納部206に格納する。なお、上記のように、分割の単位や分割数、また、演算方法は、様々な方法を適用可能である。
これにより、セキュリティ情報が流出しても、セキュリティ情報がそのままでは解読できないので、耐タンパ性が向上する。
(1) First method
The security information is divided into predetermined units, and some calculation is performed between the divided security information, and the calculation result is stored in the data storage unit 206 as security information.
Specifically, for example, when the security information is 128 bits, the security information is divided into 64 bits (2), 32 bits (4), or 16 bits (8), An operation (logical operation such as exclusive OR (XOR) or algebraic operation) is performed between the security information after division (hereinafter referred to as “data after division”), and the operation result is used as security information in the data storage unit 206. To store. As described above, various methods can be applied to the division unit, the number of divisions, and the calculation method.
Thereby, even if security information is leaked, the tamper resistance is improved because the security information cannot be decrypted as it is.

(2)第2の方法
セキュリティ情報と他の情報(例えば、乱数やその他のデータ列)との演算(演算内容は第1の方法と同じ)をし、その演算結果をデータ格納部206に格納する。なお、この場合において、他の情報は、データ格納部206の他の領域に格納したり、ICカード用チップ102内の他の部分に専用エリアを設けておき、その領域に格納したりすれば良い。また、乱数は、セキュリティの照合の時点毎に、変更することが好ましい。
(2) Second method
The security information and other information (for example, random numbers and other data strings) are calculated (the calculation content is the same as in the first method), and the calculation result is stored in the data storage unit 206. In this case, other information may be stored in another area of the data storage unit 206, or a dedicated area may be provided in another part of the IC card chip 102 and stored in that area. good. Further, it is preferable that the random number is changed at each time of security verification.

(3)第3の方法
セキュリティ情報を所定の単位で分割し、データ格納部206に分散させて格納する。この場合、重要な情報(例えば、PIN情報)のみをいくつかに分割して、データ格納部206に分散させて格納するようにしても良い。なお、セキュリティ情報の分割方法については、第1の方法と同じである。また、データ格納部206の領域は1つでよい。
(3) Third method
The security information is divided into predetermined units and distributed and stored in the data storage unit 206. In this case, only important information (for example, PIN information) may be divided into several parts and distributed and stored in the data storage unit 206. The security information dividing method is the same as the first method. Further, the data storage unit 206 may have only one area.

(4)第4の方法
セキュリティ情報を所定の単位で分割し、例えばプログラム格納部205や図示しない情報制御部に分割数や分割後データのそれぞれの格納位置のオフセット情報を格納しておき、分割後データを、該オフセット情報に従ってデータ格納部206に格納する。読み出す場合は、オフセット情報から分割後データを読み出して復元すればよい。
(4) Fourth method
The security information is divided into predetermined units, and for example, the program storage unit 205 or an information control unit (not shown) stores the number of divisions and the offset information of each storage position of the divided data, and the divided data is converted into the offset information. And stored in the data storage unit 206. In the case of reading, the data after division may be read from the offset information and restored.

(5)第5の方法
セキュリティ情報を所定の単位で分割すると共にデータ格納部206をいくつかに論理分割しておき、当該領域にエラー検出・訂正情報と共に分割したセキュリティ情報を論理分割した複数の領域に分散して格納する。
(5) Fifth method
The security information is divided into predetermined units and the data storage unit 206 is logically divided into several parts, and the security information divided together with the error detection / correction information is distributed and stored in a plurality of logically divided areas. .

(6)第6の方法
外部から入力されるセキュリティ情報と内部のセキュリティ情報とを照合する場合に、照合する単位や順序を、その照合毎に異なるようにする。ここで、照合する単位は、例えば、4ビットや、8ビットなど任意に変更可能である。また、照合する順序については、MSB(最上位のビット)から照合したり、LSB(最下位のビット)から照合したり、途中のビットから照合したりしても良い。なお、両者を単独で適用しても良いし、組み合わせて適用しても良い。
(6) Sixth method
When collating the security information input from the outside with the internal security information, the unit and order of collation are made different for each collation. Here, the collating unit can be arbitrarily changed, for example, 4 bits or 8 bits. The collating order may be collated from the MSB (most significant bit), collated from the LSB (least significant bit), or collated from an intermediate bit. Both may be applied alone or in combination.

上記において、第1から第5の方法では、分割してセキュリティ情報を記憶するようにしているので、データ格納部206に記憶されている情報が格納された順序で外部に流出しても、データとして意味をなさない。従って、正規の出力方法で出力しないと解読できる情報にならないので、セキュリティ情報が容易に判別、解読できないような耐タンパ性を有する向上したICカードを提供できる。   In the above, in the first to fifth methods, since the security information is divided and stored, even if the information stored in the data storage unit 206 is leaked to the outside in the order in which it was stored, the data Does not make sense as. Therefore, since the information cannot be decrypted unless it is output by a regular output method, it is possible to provide an improved IC card having tamper resistance such that security information cannot be easily discriminated and decrypted.

また、第6の方法では、セキュリティ情報の照合する単位や順序を、その照合毎に変えているので、外部から攻撃された場合でも、容易にセキュリティ情報を解読することができない。従って、セキュリティ情報が容易に判別、解読できないような耐タンパ性を有する向上したICカードを提供できる。   Further, in the sixth method, since the unit and order for collating the security information are changed for each collation, the security information cannot be easily deciphered even when attacked from the outside. Accordingly, it is possible to provide an improved IC card having tamper resistance that prevents security information from being easily identified and decoded.

本発明は、上記各実施の形態に限ることなく、その他、実施段階ではその要旨を逸脱しない範囲で種々の変形を実施し得ることが可能である。例えば、上記の第1から第6の方法は、独立した方法として記載したが、適宜組み合わせて適用できる。例えば、第1と第2の方法を組み合わせて、分割後データを演算処理して、更に分散記憶させても良いし、第1と第6の方法を組み合わせて、分割後データを演算処理して記憶させ、照合時にセキュリティ情報を復号してから、第6の方法でセキュリティ情報の照合を行うようにしても良い。さらに、上記各実施形態には、種々の段階の発明が含まれており、開示される複数の構成要件における適宜な組合せにより種々の発明が抽出され得る。   The present invention is not limited to the above-described embodiments, and various modifications can be made without departing from the scope of the invention at the stage of implementation. For example, the first to sixth methods described above are described as independent methods, but can be applied in appropriate combination. For example, the divided data may be processed by combining the first and second methods and further distributed and stored, or the divided data may be calculated by combining the first and sixth methods. The security information may be collated by the sixth method after storing and decrypting the security information at the time of collation. Further, the above embodiments include inventions at various stages, and various inventions can be extracted by appropriately combining a plurality of disclosed constituent elements.

また、例えば各実施形態に示される全構成要件から幾つかの構成要件が削除されても、発明が解決しようとする課題の欄で述べた課題が解決でき、発明の効果で述べられている効果が得られる場合には、この構成要件が削除された構成が発明として抽出され得る。   In addition, for example, even if some structural requirements are deleted from all the structural requirements shown in each embodiment, the problem described in the column of the problem to be solved by the invention can be solved, and the effect described in the effect of the invention Can be obtained as an invention.

本発明の一実施形態に係るICカードの概略構成を示す図である。It is a figure which shows schematic structure of the IC card which concerns on one Embodiment of this invention. ICカード用チップ102の概略構成を示すブロック図である。1 is a block diagram showing a schematic configuration of an IC card chip 102. FIG.

符号の説明Explanation of symbols

Vcc…供給電圧端子
GND…グランド端子
RST…リセット端子
I/O…入出力端子
CLK…クロック端子
101…カード
102…ICカード用チップ
201…中央処理装置(CPU)
202…コ・プロセッサ
203…データバス
204…記憶装置
205…プログラム格納部
206…データ格納部
207…入出力ポート
Vcc ... supply voltage terminal GND ... ground terminal RST ... reset terminal I / O ... input / output terminal CLK ... clock terminal 101 ... card 102 ... chip for IC card 201 ... central processing unit (CPU)
202 ... Co-processor 203 ... Data bus 204 ... Storage device 205 ... Program storage unit 206 ... Data storage unit 207 ... I / O port

Claims (6)

所定のデータを記憶する記憶部と、外部とのデータの入出力を行う手段とを備えたICカードにおいて、
前記所定のデータは、複数の分割データに分割された後に前記記憶部に記憶されることを特徴とするICカード。
In an IC card comprising a storage unit for storing predetermined data and means for inputting / outputting data to / from the outside,
The predetermined data is divided into a plurality of divided data and then stored in the storage unit.
請求項1に記載のICカードにおいて、前記分割データは、前記分割データ同士に所定の演算を施した後に前記記憶部に記憶されることを特徴とするICカード。 2. The IC card according to claim 1, wherein the divided data is stored in the storage unit after a predetermined calculation is performed on the divided data. 請求項1に記載のICカードにおいて、前記分割データは、前記分割データ以外のデータと所定の演算を施した後に前記記憶部に記憶されることを特徴とするICカード。 The IC card according to claim 1, wherein the divided data is stored in the storage unit after performing a predetermined calculation with data other than the divided data. 請求項1に記載のICカードにおいて、前記分割データは、前記記憶部に分散して記憶されることを特徴とするICカード。 2. The IC card according to claim 1, wherein the divided data is distributed and stored in the storage unit. 請求項1に記載のICカードにおいて、前記分割データに誤り訂正情報が付加されていることを特徴とするICカード。 2. The IC card according to claim 1, wherein error correction information is added to the divided data. 所定のデータを記憶する記憶部と、外部とのデータの入出力を行う手段とを備えたICカードにおいて、
前記所定のデータの正当性の照合の際に、照合する単位や順序を、照合の度に変更することを特徴とするICカード。
In an IC card comprising a storage unit for storing predetermined data and means for inputting / outputting data to / from the outside,
An IC card characterized in that the unit and order of collation are changed for each collation when collating the validity of the predetermined data.
JP2007012886A 2007-01-23 2007-01-23 Ic card Pending JP2008181226A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2007012886A JP2008181226A (en) 2007-01-23 2007-01-23 Ic card

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2007012886A JP2008181226A (en) 2007-01-23 2007-01-23 Ic card

Publications (1)

Publication Number Publication Date
JP2008181226A true JP2008181226A (en) 2008-08-07

Family

ID=39725102

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2007012886A Pending JP2008181226A (en) 2007-01-23 2007-01-23 Ic card

Country Status (1)

Country Link
JP (1) JP2008181226A (en)

Similar Documents

Publication Publication Date Title
KR100837270B1 (en) Smart card and data security method thereof
CN111095213B (en) Secure boot method, device, equipment and storage medium for embedded program
CN104156642B (en) A kind of security password input system and method based on safe touch screen control chip
EP2728509B1 (en) Semiconductor Device and Encryption Key Writing Method
US20070297606A1 (en) Multiple key security and method for electronic devices
US20090132831A1 (en) Circuit arrangement with non-volatile memory module and method for en-/decrypting data in the non-volatile memory module
EP2300952B1 (en) A method for adapting and executing a computer program and computer program product and computer architecture therefor
US8402448B2 (en) Compiler system and a method of compiling a source code into an encrypted machine language code
JP2008181225A (en) Ic card
US20050108498A1 (en) Information processing unit
CN101218609B (en) Portable data carrier featuring secure data processing
US20060219796A1 (en) Integrated circuit chip card capable of determining external attack
EP3241143B1 (en) Secure element
TWI402755B (en) Secure memory card with life cycle phases
US10389530B2 (en) Secure method for processing content stored within a component, and corresponding component
JPS63293637A (en) Data protecting microcomputer
JP2007004456A (en) Portable electronic device and data output device of portable electronic device
JP2005149262A (en) Information processor
JP2005045760A (en) Cipher processing method and device thereof
JP2008181226A (en) Ic card
CN114153376A (en) Safety flash memory controller
JPWO2005027403A1 (en) Information processing equipment
US20080187133A1 (en) Encryption code processing circuit, operation device and electronic apparatus
JP5724387B2 (en) Portable device and dynamic data storage position changing method
JP2010092117A (en) Data processing apparatus and method