JPH08339429A - Portable information recording medium and information processing system using the medium - Google Patents
Portable information recording medium and information processing system using the mediumInfo
- Publication number
- JPH08339429A JPH08339429A JP7168094A JP16809495A JPH08339429A JP H08339429 A JPH08339429 A JP H08339429A JP 7168094 A JP7168094 A JP 7168094A JP 16809495 A JP16809495 A JP 16809495A JP H08339429 A JPH08339429 A JP H08339429A
- Authority
- JP
- Japan
- Prior art keywords
- recording medium
- information recording
- random number
- portable information
- card
- 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.)
- Granted
Links
- 230000010365 information processing Effects 0.000 title claims abstract description 50
- 238000000034 method Methods 0.000 claims abstract description 168
- 230000008569 process Effects 0.000 claims abstract description 125
- 238000012545 processing Methods 0.000 claims description 89
- 230000006870 function Effects 0.000 claims description 56
- 230000015654 memory Effects 0.000 claims description 14
- 238000012795 verification Methods 0.000 claims description 11
- 238000013475 authorization Methods 0.000 abstract description 8
- 230000004044 response Effects 0.000 description 28
- 238000010586 diagram Methods 0.000 description 17
- 230000005540 biological transmission Effects 0.000 description 13
- 238000003780 insertion Methods 0.000 description 5
- 230000037431 insertion Effects 0.000 description 5
- 230000009471 action Effects 0.000 description 1
- 238000012790 confirmation Methods 0.000 description 1
- 239000000463 material Substances 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 230000001960 triggered effect Effects 0.000 description 1
Abstract
Description
【0001】[0001]
【産業上の利用分野】本発明は、携帯可能情報記録媒体
およびこれを用いた情報処理システム、特に、ICカー
ドのように、情報処理機能を有する携帯可能情報記録媒
体を2組用いてセキュリティを高めた情報処理システム
に関する。BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a portable information recording medium and an information processing system using the portable information recording medium. An advanced information processing system.
【0002】[0002]
【従来の技術】磁気カードに代わる次世代の携帯可能情
報記録媒体として、ICカードが注目を集めている。最
近では、半導体集積回路の小型化、低コスト化のための
技術進歩により、実社会の種々のシステムにおいてIC
カードが実用されるに至っている。2. Description of the Related Art IC cards have been attracting attention as a next-generation portable information recording medium replacing magnetic cards. Recently, due to technological advances for miniaturization and cost reduction of semiconductor integrated circuits, ICs have been used in various systems in the real world.
The card has come into practical use.
【0003】特に、CPUを内蔵したICカードでは、
単なる情報記録媒体としての機能に情報処理機能が付加
されるため、高度なセキュリティを必要とする情報処理
システムへの利用が期待されている。セキュリティを確
保するための代表的な手法としては、ICカードの所有
者、発行者、製造者などに固有のPIN(Personal Ide
ntification Number)を設定し、このPINを個々のI
Cカード内部に記録しておき、外部から与えられるPI
Nと内部に記録されているPINとを照合することによ
り、操作者の正当性を確認する方法が一般に利用されて
いる。ただ、このようなPIN照合による方法では、P
IN自体が不正漏洩したような場合には、十分なセキュ
リティが確保できない。In particular, in an IC card with a built-in CPU,
Since an information processing function is added to the function of a mere information recording medium, it is expected to be used in an information processing system that requires high security. A typical method for ensuring security is a PIN (Personal Ideal) unique to the owner, issuer, or manufacturer of the IC card.
ntification number) and set this PIN for each I
PI that is recorded in the C card and given from the outside
A method of confirming the correctness of the operator by collating N with the PIN recorded inside is generally used. However, in such a PIN verification method, P
Sufficient security cannot be secured if the IN itself is leaked.
【0004】そこで、2組の媒体を用いて相互認証を行
うことにより、より高いセキュリティを確保する手法も
実用化されている。たとえば、ICカードに銀行預金の
取引データを記録して預金通帳代わりに用いる情報処理
システムでは、ICカード内部に記録された取引データ
が不正な手段によって改竄されるようなことがあると重
大な問題になる。そこで、個々の預金者に通帳代わりに
手渡す預金者用ICカードについては、単独では取引デ
ータにアクセスすることができないようにし、別個に用
意した銀行用ICカードと併用することによって初めて
アクセスが可能になるような構成にしておけば、セキュ
リティを高めることができる。たとえば、銀行の店舗に
設置されたリーダライタ装置に、同時に2枚のICカー
ドを挿入することができる挿入口を設けておき、一方の
口から預金者用ICカードを挿入し、他方の口から銀行
用ICカードを挿入するようにする。そして、双方にお
いて、相手方が正当なカードであることを認証する処理
を行い、双方ともに肯定的な認証結果が得られた場合に
限って、取引データへのアクセスが可能になるようにす
れば、セキュリティを向上させることができる。Therefore, a method of ensuring higher security by performing mutual authentication using two sets of media has also been put into practical use. For example, in an information processing system in which transaction data of bank deposits is recorded in an IC card and used in place of a passbook, it is a serious problem that transaction data recorded in the IC card may be tampered with by an unauthorized means. become. Therefore, with regard to the depositor IC card that is handed to each depositor instead of a passbook, it is possible to access the transaction data by making it impossible to access the transaction data by itself and using it together with a separately prepared bank IC card. With such a configuration, security can be enhanced. For example, a reader / writer device installed in a bank store is provided with an insertion slot into which two IC cards can be inserted at the same time. An IC card for a depositor is inserted through one opening and the other through the other opening. Insert a bank IC card. Then, if both parties perform processing to authenticate that the other party is a valid card, and only if both parties obtain a positive authentication result, it is possible to access the transaction data, Security can be improved.
【0005】このように、2組の媒体を用いた相互認証
を前提としてシステムを構築すれば、PIN照合のみに
頼っているシステムに比べて非常に高いセキュリティを
確保できる。上述の例では、銀行用ICカードは、銀行
の担当者によって確実な管理がなされるので、盗難など
の被害が発生する可能性は極めて小さい。これに対し
て、預金者用ICカードは、一般の預金者が携帯するた
め、盗難や紛失のおそれがあるが、銀行用ICカードを
併用しなくては、取引データにアクセスすることはでき
ないため、実害の発生を極力抑えることが可能になる。As described above, if the system is constructed on the premise of mutual authentication using two sets of media, it is possible to secure much higher security than a system that relies only on PIN verification. In the above example, the bank IC card is reliably managed by the person in charge of the bank, and therefore the possibility of damage such as theft is extremely small. On the other hand, the IC card for depositors is stolen or lost because it is carried by ordinary depositors, but the transaction data cannot be accessed without using the IC card for banking. It becomes possible to suppress the occurrence of actual damage as much as possible.
【0006】2組の媒体についての相互認証を行う方法
として、秘密のキーと乱数とを用いる方法が提案されて
いる。たとえば、預金者用ICカードと銀行用ICカー
ドとの間で相互認証を行う場合には、次のような処理が
実行される。まず、預金者用ICカードと銀行用ICカ
ードとのそれぞれに、同一の秘密のキーを記録してお
く。この秘密のキーは、一旦書き込んだら、外部には決
して読み出すことができないようにしておく。そして、
まず預金者用ICカード内部で乱数を発生させ、この乱
数を銀行用ICカードに与える。銀行用ICカード側で
は、内部に記録されていた秘密のキーを用いて、与えら
れた乱数を暗号化して認証コードを作成し、作成した認
証コードを預金者用ICカードへと返す。預金者用IC
カード側では、内部に記録されていた秘密のキーを用い
て、先程内部で発生させた乱数を暗号化して認証コード
を作成し、この作成した認証コードと銀行用ICカード
から返された認証コードとが一致するか否かを照合す
る。両者が一致していれば、預金者用ICカードによっ
て銀行用ICカードを認証する処理、別言すれば、預金
者用ICカード自身が、「相手方である銀行用ICカー
ドは正当なものである」と認める処理が完了したことに
なる。この処理と全く逆の処理を行えば、銀行用ICカ
ードによって預金者用ICカードを認証する処理、別言
すれば、銀行用ICカード自身が、「相手方である預金
者用ICカードは正当なものである」と認める処理が完
了することになる。A method using a secret key and a random number has been proposed as a method for performing mutual authentication on two sets of media. For example, when mutual authentication is performed between a depositor IC card and a bank IC card, the following processing is executed. First, the same secret key is recorded in each of the depositor IC card and the bank IC card. Once written, this secret key should never be read out. And
First, a random number is generated inside the depositor's IC card, and this random number is given to the bank IC card. The bank IC card side uses the secret key recorded inside to encrypt the given random number to create an authentication code, and returns the created authentication code to the depositor's IC card. IC for depositors
On the card side, using the secret key recorded inside, the random number generated inside is encrypted to create an authentication code, and the created authentication code and the authentication code returned from the bank IC card It is checked whether and match. If the two match, the process of authenticating the bank IC card with the IC card for depositor, in other words, the IC card for depositor itself said, "The other party IC card for bank is legitimate. Processing that is recognized as “” has been completed. If this processing is completely opposite, the processing for authenticating the depositor's IC card with the bank IC card, in other words, the bank IC card itself will say, "The other party's IC card for the depositor is legitimate. The process of recognizing that the item is "complete" is completed.
【0007】[0007]
【発明が解決しようとする課題】上述のように、2組の
媒体を用いて相互認証を行う情報処理システムでは、P
IN照合のみに頼ったシステムに比べれば、はるかに高
度なセキュリティを確保することが可能である。しかし
ながら、いわゆる「ハッカー」と称される不正利用者の
技術水準も年々高くなってきており、上述したような相
互認証システムは、必ずしも十分なセキュリティを備え
たものとは言えない状況になってきている。As described above, in the information processing system that performs mutual authentication using two sets of media, P
It is possible to ensure a much higher level of security than a system that relies only on IN verification. However, the technical level of the so-called “hacker”, which is an illegal user, is also increasing year by year, and the mutual authentication system described above does not always have sufficient security. There is.
【0008】たとえば、ICカード内部に記録されてい
る秘密のキーそのものを外部に読み出すことはできない
かもしれないが、ICカードに対して何らかの数ととも
に暗号化コマンドを与え、秘密のキーを用いてこの数を
暗号化して認証コードを作成する処理を内部で実行させ
た後、得られた認証コードを外部へ出力させることは可
能である。したがって、どのような数を与えたときに、
どのような認証コードが出力されるかを解析すれば、内
部に記録された秘密のキーを推定することができる。For example, it may be impossible to read out the secret key itself recorded in the IC card to the outside, but an encrypted command is given to the IC card together with some number, and this secret key is used. It is possible to output the obtained authentication code to the outside after internally executing the process of encrypting the number and creating the authentication code. Therefore, when given a number,
By analyzing what kind of authentication code is output, the secret key recorded inside can be estimated.
【0009】また、別な方法として、ICカードに対し
て何らかの認証コードとともに認証コード照合コマンド
を与えて認証コード照合処理を実行させれば、少なくと
も肯定的な照合結果か、否定的な照合結果か、のいずれ
かが得られることになる。そこで、種々の認証コードを
試行錯誤的に与える操作を、肯定的な照合結果が得られ
るまで繰り返し実行すれば、どのような認証コードを与
えたときに、肯定的な照合結果が得られるかを知ること
が可能になり、やはり秘密のキーを推定する材料が得ら
れることになる。As another method, if an authentication code collation command is given to the IC card together with an authentication code and the authentication code collation processing is executed, at least a positive collation result or a negative collation result is obtained. , Or will be obtained. Therefore, by repeating the operation of giving various authentication codes by trial and error until a positive verification result is obtained, what kind of authentication code is given and which positive verification result is obtained. It will be possible to know and still have the material to deduce the secret key.
【0010】そこで本発明は、より高度なセキュリティ
を確保した相互認証が可能な携帯可能情報記録媒体およ
びこれを用いた情報処理システムを提供することを目的
とする。Therefore, it is an object of the present invention to provide a portable information recording medium capable of mutual authentication ensuring a higher degree of security and an information processing system using the portable information recording medium.
【0011】[0011]
(1) 本発明の第1の態様は、情報処理機能を有する第
1の携帯可能情報記録媒体と、情報処理機能を有する第
2の携帯可能情報記録媒体と、の双方を、これら情報記
録媒体に対してアクセスする機能を有するリーダライタ
装置に接続し、第1の携帯可能情報記録媒体が第2の携
帯可能情報記録媒体について正当な媒体であるか否かを
認証する第1の認証処理と、第2の携帯可能情報記録媒
体が第1の携帯可能情報記録媒体について正当な媒体で
あるか否かを認証する第2の認証処理と、を実行し、第
1の認証処理と第2の認証処理の双方において肯定的な
認証結果が得られた場合に、少なくとも第1の携帯可能
情報記録媒体内の特定の記録エリアに対するアクセスが
許可されるように構成された情報処理システムにおい
て、第1の認証処理について肯定的な認証結果が得られ
た場合に限り、第2の認証処理を実行可能としたもので
ある。(1) According to a first aspect of the present invention, both a first portable information recording medium having an information processing function and a second portable information recording medium having an information processing function are provided in the information recording medium. And a first authentication process for authenticating whether or not the first portable information recording medium is a valid medium for the second portable information recording medium by connecting to a reader / writer device having a function of accessing , A second authentication process for authenticating whether or not the second portable information recording medium is a valid medium for the first portable information recording medium, and performing the first authentication process and the second In the information processing system configured to permit access to at least a specific recording area in the first portable information recording medium when a positive authentication result is obtained in both authentication processes, Authentication process The second authentication process can be executed only when a positive authentication result is obtained.
【0012】(2) 本発明の第2の態様は、情報処理機
能を有する第1の携帯可能情報記録媒体と、情報処理機
能を有する第2の携帯可能情報記録媒体と、の双方を、
これら情報記録媒体に対してアクセスする機能を有する
リーダライタ装置に接続し、第1の携帯可能情報記録媒
体が第2の携帯可能情報記録媒体について正当な媒体で
あるか否かを認証する第1の認証処理と、第2の携帯可
能情報記録媒体が第1の携帯可能情報記録媒体について
正当な媒体であるか否かを認証する第2の認証処理と、
が実行できるように構成された情報処理システムに利用
される携帯可能情報記録媒体において、リーダライタ装
置から所定の乱数とともに乱数暗号化コマンドが与えら
れたときに、内部に記録されている所定のキーを利用し
て、与えられた乱数を暗号化して認証コードを作成し、
作成した認証コードをリーダライタ装置に送出する乱数
暗号化処理を実行する機能を設け、リーダライタ装置に
接続した後、相手方の携帯可能情報記録媒体が正当な媒
体であると認証された場合に限り、この乱数暗号化処理
が実行されるように構成したものである。(2) According to a second aspect of the present invention, both a first portable information recording medium having an information processing function and a second portable information recording medium having an information processing function are provided.
A first authentication unit that is connected to a reader / writer device having a function of accessing these information recording media and authenticates whether or not the first portable information recording medium is a valid medium for the second portable information recording medium. Authentication processing, and second authentication processing for authenticating whether or not the second portable information recording medium is a valid medium for the first portable information recording medium.
In a portable information recording medium used in an information processing system configured to be capable of executing a predetermined key stored internally when a random number encryption command is given together with a predetermined random number from a reader / writer device. Create an authentication code by encrypting the given random number using
Only if the portable information recording medium of the other party is authenticated as a legitimate medium after connecting to the reader / writer device, the function is provided to execute the random number encryption process to send the created authentication code to the reader / writer device. The random number encryption process is configured to be executed.
【0013】(3) 本発明の第3の態様は、上述の第2
の態様に係る携帯可能情報記録媒体において、リーダラ
イタ装置に接続されている間だけ記憶内容が保持される
揮発性メモリ内に、相手方認証済情報を記録する領域を
設け、相手方の携帯可能情報記録媒体が正当な媒体であ
ると認証された場合に、この領域に相手方認証済情報を
書き込む処理を行い、リーダライタ装置から乱数暗号化
コマンドが与えられたときに、この領域を参照し、相手
方認証済情報が書き込まれている場合にのみ、乱数暗号
化処理が実行されるように構成したものである。(3) A third aspect of the present invention is the above-mentioned second aspect.
In the portable information recording medium according to this aspect, an area for recording the authenticated information of the other party is provided in the volatile memory that retains the stored content only while being connected to the reader / writer device, and the portable information recording of the other party is performed. When the medium is authenticated as a legitimate medium, the other party authentication information is written in this area, and when a random number encryption command is given from the reader / writer device, this area is referred to and the other party authentication is performed. The random number encryption process is executed only when the completed information is written.
【0014】(4) 本発明の第4の態様は、情報処理機
能を有する第1の携帯可能情報記録媒体と、情報処理機
能を有する第2の携帯可能情報記録媒体と、の双方を、
これら情報記録媒体に対してアクセスする機能を有する
リーダライタ装置に接続し、第1の携帯可能情報記録媒
体が第2の携帯可能情報記録媒体について正当な媒体で
あるか否かを認証する第1の認証処理と、第2の携帯可
能情報記録媒体が第1の携帯可能情報記録媒体について
正当な媒体であるか否かを認証する第2の認証処理と、
が実行できるように構成された情報処理システムに利用
される携帯可能情報記録媒体において、リーダライタ装
置から乱数生成コマンドが与えられたときに、内部で乱
数を生成し、生成した乱数をリーダライタ装置に送出す
る乱数生成処理を実行する機能と、リーダライタ装置か
ら、相手方の携帯可能情報記録媒体内で作成された認証
コードとともに認証コード照合コマンドが与えられたと
きに、内部に記録されている所定のキーを利用して、過
去に実行した乱数生成処理によって生成された乱数を暗
号化して認証コードを作成し、この作成した認証コード
がリーダライタ装置から与えられた認証コードと一致す
るか否かを照合し、照合結果をリーダライタ装置に送出
する認証コード照合処理を実行する機能と、を設け、リ
ーダライタ装置に接続した後、少なくとも1回は乱数生
成処理が実行されており、かつ、最後に実行された乱数
生成処理の後に、まだ1回も認証コード照合処理が実行
されていない場合に限り、認証コード照合処理が実行さ
れるように構成したものである。(4) According to a fourth aspect of the present invention, both a first portable information recording medium having an information processing function and a second portable information recording medium having an information processing function are provided.
A first authentication unit that is connected to a reader / writer device having a function of accessing these information recording media and authenticates whether or not the first portable information recording medium is a valid medium for the second portable information recording medium. Authentication processing, and second authentication processing for authenticating whether or not the second portable information recording medium is a valid medium for the first portable information recording medium.
In a portable information recording medium used in an information processing system configured to execute a random number generation command when a random number generation command is given from the reader / writer device, the generated random number is used as the reader / writer device. And the function of executing the random number generation processing to be sent to the reader / writer device, when the authentication code collation command is given from the reader / writer device together with the authentication code created in the portable information recording medium of the other party, By using the key of, the random number generated by the random number generation process executed in the past is encrypted to create an authentication code, and whether the created authentication code matches the authentication code given by the reader / writer device. And a function for executing an authentication code matching process for sending the matching result to the reader / writer device. Only if the random number generation process is executed at least once after the continuation, and the authentication code comparison process has not been executed even once after the last executed random number generation process. The processing is configured to be executed.
【0015】(5) 本発明の第5の態様は、上述の第4
の態様に係る携帯可能情報記録媒体において、リーダラ
イタ装置に接続されている間だけ記憶内容が保持される
揮発性メモリ内に、乱数生成済情報を記録する領域を設
け、乱数生成処理を実行した後には、この領域に「生成
済」を示す情報を書き込む処理を行い、認証コード照合
処理を実行した後には、この領域に「未生成」を示す情
報を書き込む処理を行い、リーダライタ装置から認証コ
ード照合コマンドが与えられたときに、この領域を参照
し、「生成済」を示す情報が書き込まれている場合にの
み、認証コード照合処理が実行されるように構成したも
のである。(5) The fifth aspect of the present invention is the above-mentioned fourth aspect.
In the portable information recording medium according to this aspect, a region for recording the random number generated information is provided in the volatile memory that retains the stored content only while being connected to the reader / writer device, and the random number generation process is executed. After that, a process of writing information indicating “generated” in this area is performed, and after performing an authentication code matching process, a process of writing information indicating “not generated” in this area is performed and authentication is performed from the reader / writer device. When a code collation command is given, this area is referred to, and the authentication code collation processing is executed only when the information indicating "generated" is written.
【0016】(6) 本発明の第6の態様は、情報処理機
能を有する第1の携帯可能情報記録媒体と、情報処理機
能を有する第2の携帯可能情報記録媒体と、の双方を、
これら情報記録媒体に対してアクセスする機能を有する
リーダライタ装置に接続し、第1の携帯可能情報記録媒
体が第2の携帯可能情報記録媒体について正当な媒体で
あるか否かを認証する第1の認証処理と、第2の携帯可
能情報記録媒体が第1の携帯可能情報記録媒体について
正当な媒体であるか否かを認証する第2の認証処理と、
が実行できるように構成された情報処理システムに利用
される携帯可能情報記録媒体において、リーダライタ装
置から乱数生成コマンドが与えられたときに、内部で乱
数を生成し、生成した乱数をリーダライタ装置に送出す
る乱数生成処理を実行する機能と、リーダライタ装置か
ら、相手方の携帯可能情報記録媒体内で作成された認証
コードとともに認証コード照合コマンドが与えられたと
きに、内部に記録されている所定のキーを利用して、過
去に実行した乱数生成処理によって生成された乱数を暗
号化して認証コードを作成し、この作成した認証コード
がリーダライタ装置から与えられた認証コードと一致す
るか否かを照合し、照合結果をリーダライタ装置に送出
する認証コード照合処理を実行する機能と、を設け、リ
ーダライタ装置から乱数生成コマンドの直後のコマンド
として、認証コード照合コマンドが与えられた場合に限
り、認証コード照合処理が実行されるように構成したも
のである。(6) According to a sixth aspect of the present invention, both a first portable information recording medium having an information processing function and a second portable information recording medium having an information processing function are provided.
A first authentication unit that is connected to a reader / writer device having a function of accessing these information recording media and authenticates whether or not the first portable information recording medium is a valid medium for the second portable information recording medium. Authentication processing, and second authentication processing for authenticating whether or not the second portable information recording medium is a valid medium for the first portable information recording medium.
In a portable information recording medium used in an information processing system configured to execute a random number generation command when a random number generation command is given from the reader / writer device, the generated random number is used as the reader / writer device. And the function of executing the random number generation processing to be sent to the reader / writer device, when the authentication code collation command is given from the reader / writer device together with the authentication code created in the portable information recording medium of the other party, By using the key of, the random number generated by the random number generation process executed in the past is encrypted to create an authentication code, and whether the created authentication code matches the authentication code given by the reader / writer device. And a function for executing an authentication code matching process for sending the matching result to the reader / writer device. As immediately after the command of the random number generation command, only when the authentication code collating command is applied, which is constituted as the authentication code verification process is executed.
【0017】(7) 本発明の第7の態様は、上述の第6
の態様に係る携帯可能情報記録媒体において、リーダラ
イタ装置に接続されている間だけ記憶内容が保持される
揮発性メモリ内に、乱数生成済情報を記録する領域を設
け、乱数生成コマンドに基く処理を実行した後には、こ
の領域に「生成済」を示す情報を書き込む処理を行い、
乱数生成コマンド以外のコマンドに基く処理を実行した
後には、この領域に「未生成」を示す情報を書き込む処
理を行い、リーダライタ装置から認証コード照合コマン
ドが与えられたときに、この領域を参照し、「生成済」
を示す情報が書き込まれている場合にのみ、認証コード
照合処理が実行されるように構成したものである。(7) A seventh aspect of the present invention relates to the above-mentioned sixth aspect.
In the portable information recording medium according to the above aspect, an area for recording the random number generated information is provided in the volatile memory that retains the stored content only while being connected to the reader / writer device, and processing based on the random number generation command is performed. After executing, perform the process to write the information indicating "generated" in this area,
After processing based on a command other than the random number generation command, write information indicating "not generated" in this area, and refer to this area when the reader / writer device gives the authentication code matching command. Then "generated"
The authentication code collating process is executed only when the information indicating is written.
【0018】[0018]
【作 用】本発明に係る情報処理システムは、2組の携
帯可能情報記録媒体をリーダライタ装置に接続して相互
認証を行う場合に、第1の携帯可能情報記録媒体が第2
の携帯可能情報記録媒体について正当な媒体であるか否
かを認証する第1の認証処理を行った結果、肯定的な認
証結果が得られた場合に限り、その逆の認証処理、すな
わち第2の携帯可能情報記録媒体が第1の携帯可能情報
記録媒体について正当な媒体であるか否かを認証する第
2の認証処理を実行可能とする点に特徴がある。[Operation] In the information processing system according to the present invention, when two sets of portable information recording mediums are connected to a reader / writer device to perform mutual authentication, the first portable information recording medium is changed to the second portable information recording medium.
Only when a positive authentication result is obtained as a result of performing the first authentication process for authenticating whether the portable information recording medium is a valid medium, the reverse authentication process, that is, the second The second authentication process for authenticating whether the portable information recording medium is a valid medium for the first portable information recording medium can be executed.
【0019】たとえば、預金者用ICカードを第1の携
帯可能情報記録媒体とし、銀行用ICカードを第2の携
帯可能情報記録媒体とする具体的なシステムを考えてみ
ると、預金者用ICカードが銀行用ICカードを正当で
あると認証する第1の認証処理を行った結果、肯定的な
認証結果が得られた場合に限り、銀行用ICカードが預
金者用ICカードを正当であると認証する第2の認証処
理を実行することが可能になる。したがって、預金者用
ICカードが盗難や紛失の被害に遭ったとしても、正当
な銀行用ICカードがない限り、この預金者用ICカー
ドを正当であると認識するための認証処理は実行されな
いため、預金者用ICカードからは、このような認証処
理の実行に基く応答は一切得られないことになる。すな
わち、預金者用ICカードを正当であると認識するため
の認証処理の一環として、預金者用ICカードに対して
乱数暗号化コマンドを与え、乱数の暗号化によって認証
コードを作成させ、これを外部に送出させる機能をもた
せた場合であっても、銀行用ICカードが正当な媒体で
あると認証された場合に限り、このような機能の実行が
行われるように構成しておけば、正当な銀行用ICカー
ドがない限り、預金者用ICカードにこのような機能の
実行をさせることはできなくなる。Consider, for example, a concrete system in which the depositor IC card is the first portable information recording medium and the bank IC card is the second portable information recording medium. The bank IC card is valid for the depositor's IC card only when a positive authentication result is obtained as a result of the first authentication process for authenticating the bank IC card as the card. It is possible to execute the second authentication process for authenticating Therefore, even if the depositor IC card is stolen or lost, the authentication process for recognizing the depositor IC card as valid is not executed unless there is a valid bank IC card. No response based on the execution of such authentication processing can be obtained from the depositor IC card. That is, as a part of the authentication processing for recognizing the depositor IC card as valid, a random number encryption command is given to the depositor IC card, and an authentication code is created by encrypting the random number. Even if the function for sending the data to the outside is provided, if it is configured so that such a function is executed only when the bank IC card is authenticated as a valid medium, it is legal. Unless there is a proper bank IC card, the depositor IC card cannot execute such a function.
【0020】また、乱数生成コマンドを受けて内部で乱
数を生成し、生成した乱数を相手方の携帯可能情報記録
媒体に与え、相手方の携帯可能情報記録媒体において、
この乱数に基いて認証コードを作成させた後、この相手
方の携帯可能情報記録媒体内において作成された認証コ
ードと自分自身で作成した認証コードとの照合を行う機
能を有する場合に、最後に実行された乱数生成処理の後
に、まだ1回も認証コード照合処理が実行されていない
場合に限り、認証コード照合処理を実行するように構成
しておけば、同一の乱数について多数の認証コードを試
行錯誤的に与えて認証コード照合処理を実行させるよう
なことが不可能になり、不正な試行錯誤行為によるセキ
ュリティ低下を防ぐことができる。また、乱数生成コマ
ンドの直後のコマンドとして、認証コード照合コマンド
が与えられた場合に限り、認証コード照合処理を実行す
るように構成しても、不正な試行錯誤行為を防止するこ
とができる。Further, in response to the random number generation command, a random number is internally generated, and the generated random number is given to the portable information recording medium of the other party.
After creating an authentication code based on this random number, if you have the function to collate the authentication code created in this other party's portable information recording medium with the authentication code created by yourself, execute it last If the authentication code collation process is configured to be executed only after the authentication code collation process has not been executed even once after the generated random number generation process, many authentication codes are tried for the same random number. It becomes impossible to erroneously give and execute the authentication code matching process, and it is possible to prevent a decrease in security due to an illegal trial and error. Further, even if the authentication code collating process is executed only when the authentication code collating command is given as the command immediately after the random number generation command, it is possible to prevent the illegal trial and error.
【0021】[0021]
【実施例】以下、本発明を図示する実施例に基いて説明
する。The present invention will be described below with reference to illustrated embodiments.
【0022】§1. 相互認証を行う一般的な情報処理
システムの基本構成 はじめに、相互認証を行う一般的な情報処理システムの
基本構成を説明する。この情報処理システムは、2組の
携帯可能情報記録媒体を用いたシステムとして、従来か
ら提案されている一般的なシステムである。図1は、こ
のようなシステムの全体構成を示す概念図であり、ここ
では、携帯可能情報記録媒体としてICカードを用いた
例が示されている。 §1. General information processing for mutual authentication
Basic Configuration of System First, the basic configuration of a general information processing system that performs mutual authentication will be described. This information processing system is a general system conventionally proposed as a system using two sets of portable information recording media. FIG. 1 is a conceptual diagram showing the overall configuration of such a system, and here, an example using an IC card as a portable information recording medium is shown.
【0023】図1において、第1のICカード10と第
2のICカード20とは、いずれも情報処理機能を有す
るICカードである。リーダライタ装置30は、これら
のICカードに対してアクセスする機能をもった装置で
あり、通常は、図示されていないコンピュータに接続し
て利用される。リーダライタ装置30には、2つの挿入
口が設けられており、一方の挿入口には第1のICカー
ド10が挿入され、他方の挿入口には第2のICカード
20が挿入される。In FIG. 1, both the first IC card 10 and the second IC card 20 are IC cards having an information processing function. The reader / writer device 30 is a device having a function of accessing these IC cards, and is usually used by connecting to a computer (not shown). The reader / writer device 30 is provided with two insertion ports. The first IC card 10 is inserted into one insertion port and the second IC card 20 is inserted into the other insertion port.
【0024】図2は、第1のICカード10の内部構成
を示すブロック図である。このブロック図に示されてい
るように、ICカード10には、CPU11と、ROM
12と、RAM13と、EEPROM14とが内蔵され
ている。CPU11は、このICカードの情報処理機能
を司る構成要素であり、ROM12内に格納されたプロ
グラムに基いて所定の情報処理を実行する。RAM13
は、CPU11が情報処理を実行する上での作業領域と
して利用されるメモリである。EEPROM14は、こ
のICカード本来の目的である情報記録に利用されるメ
モリであり、ユーザデータや各種キーなどが記録され
る。このICカード10に対しては、リーダライタ装置
30から電源やクロック信号が供給され、カードと外部
とはI/O信号を使い通信を行う。ここで、ROM12
やEEPROM14は、電源の供給が停止しても記録内
容が保持される不揮発性メモリであるが、RAM13
は、電源の供給が停止すると記録内容が失われる揮発性
メモリである。なお、図2には、RAM13内に相手方
認証済フラグおよび乱数生成済フラグが書き込まれた状
態が示されているが、これらのフラグは本発明を適用す
る場合に利用されるフラグであり、その説明は後述す
る。FIG. 2 is a block diagram showing the internal structure of the first IC card 10. As shown in this block diagram, the IC card 10 includes a CPU 11 and a ROM.
12, a RAM 13, and an EEPROM 14 are built in. The CPU 11 is a component that controls the information processing function of this IC card, and executes predetermined information processing based on a program stored in the ROM 12. RAM13
Is a memory used as a work area when the CPU 11 executes information processing. The EEPROM 14 is a memory used for recording information, which is the original purpose of the IC card, and stores user data, various keys, and the like. A power supply and a clock signal are supplied to the IC card 10 from the reader / writer device 30, and the card and the outside communicate with each other using I / O signals. Here, ROM12
The EEPROM 13 and the EEPROM 14 are non-volatile memories that retain recorded contents even when the power supply is stopped.
Is a volatile memory whose recorded contents are lost when power supply is stopped. Note that FIG. 2 shows a state in which the other party authenticated flag and the random number generated flag are written in the RAM 13, but these flags are flags used when the present invention is applied. The description will be given later.
【0025】このICカード10内の各メモリに対する
アクセスは、すべてCPU11によって行われ、リーダ
ライタ装置30のような外部装置から、直接ICカード
10内のメモリをアクセスすることはできない。CPU
11は、外部装置から与えられる所定のコマンドに基い
て、このICカード10全体を統括管理する機能をもっ
ている。たとえば、外部装置からEEPROM14の所
定領域へデータを書き込むためには、CPU11に対し
て所定の書き込みコマンドを与える必要があり、EEP
ROM14の所定領域内のデータを外部へ読み出すため
には、CPU11に対して所定の読出しコマンドを与え
る必要がある。このような書き込みコマンドや読出しコ
マンドを実行する上では、必要に応じて、EEPROM
14内に記録されたキーと、外部装置から与えられたキ
ーとの照合が行われる。All the memories in the IC card 10 are accessed by the CPU 11, and the memories in the IC card 10 cannot be directly accessed from an external device such as the reader / writer device 30. CPU
Reference numeral 11 has a function of centrally managing the entire IC card 10 based on a predetermined command given from an external device. For example, in order to write data to a predetermined area of the EEPROM 14 from an external device, it is necessary to give a predetermined write command to the CPU 11.
In order to read the data in the predetermined area of the ROM 14 to the outside, it is necessary to give a predetermined read command to the CPU 11. When executing such a write command or a read command, an EEPROM is used as necessary.
The key recorded in 14 and the key given from the external device are collated.
【0026】以上、第1のICカード10の内部構成を
説明したが、第2のICカード20もそのハードウエア
構成は全く同じである。ただ、ソフトウエアは、その用
途の相違に基いて若干相違する。The internal structure of the first IC card 10 has been described above, but the hardware structure of the second IC card 20 is exactly the same. However, software is slightly different based on the different uses.
【0027】この情報処理システムの本質的な部分は、
少なくとも第1のICカード10のEEPROM14内
のユーザデータの部分に対するアクセスを行うには、両
ICカード10,20についての相互認証が必要である
という点である。すなわち、まず、両ICカード10,
20をリーダライタ装置30の挿入口に挿入し、リーダ
ライタ装置30に対して両ICカード10,20が電気
的に接続された状態にし、かつ、両者間において、それ
ぞれ相手方のICカードが正当なカードであることが認
証された状態になっていなければ、少なくとも第1のI
Cカード10のEEPROM14内のユーザデータの部
分に対するアクセスは禁止される。The essential part of this information processing system is
The point is that in order to access at least the user data portion in the EEPROM 14 of the first IC card 10, mutual authentication of both IC cards 10 and 20 is required. That is, first, both IC cards 10,
20 is inserted into the insertion port of the reader / writer device 30 so that both IC cards 10 and 20 are electrically connected to the reader / writer device 30, and the IC card of the other party is valid between them. If the card has not been authenticated, then at least the first I
Access to the user data portion in the EEPROM 14 of the C card 10 is prohibited.
【0028】ここでは、理解を容易にするために、第1
のICカード10が預金者用ICカードとして用いら
れ、第2のICカード20が銀行用ICカードとして用
いられる具体的な例について、以下の説明を行うことに
する。預金者用ICカードには、ユーザデータとして銀
行預金に関する取引情報が記録されることになり、預金
者はこのICカードを通帳代わりに利用することにな
る。銀行の支店には、リーダライタ装置30およびこれ
に接続されたコンピュータ(図示されていない)が設置
されており、このリーダライタ装置30には銀行用IC
カードが挿入された状態になっている。預金者が預金者
用ICカードを利用して何らかの取引を行う場合、預金
者用ICカードをこのリーダライタ装置30内に挿入
し、必要に応じてPINなどの暗証キーをコンピュータ
に対して入力する。入力した暗証キーは、リーダライタ
装置30を介して、預金者用ICカードに与えられ、預
金者用ICカードの内部では、EEPROM14内に予
め記録されていた暗証キーと、外部から与えられた暗証
キーとの照合が行われる。Here, in order to facilitate understanding, the first
The following description will be made on a specific example in which the IC card 10 is used as a depositor's IC card and the second IC card 20 is used as a bank IC card. Transaction information relating to bank deposits will be recorded as user data in the depositor's IC card, and the depositor will use this IC card as a passbook. A reader / writer device 30 and a computer (not shown) connected to the reader / writer device 30 are installed in a branch of the bank, and the reader / writer device 30 has a bank IC.
The card is inserted. When the depositor uses the IC card for the depositor to perform some transaction, the IC card for the depositor is inserted into the reader / writer device 30, and a PIN key such as a PIN is input to the computer as necessary. . The input personal identification key is given to the depositor's IC card through the reader / writer device 30. Inside the depositor's IC card, the personal identification key pre-recorded in the EEPROM 14 and the personal identification given from the outside are provided. Matches with the key.
【0029】このシステムでは、このようなPIN照合
が行われるとともに、両ICカード間での相互認証が行
われる。すなわち、預金者用ICカードが、相手方であ
る銀行用ICカードが正当なものであるか否かを認証す
る処理と、逆に、銀行用ICカードが、相手方である預
金者用ICカードが正当なものであるか否かを認証する
処理と、が行われ、双方ともに肯定的な認証結果が得ら
れた場合に、預金者用ICカード内のユーザデータに対
する読出しや書き込みなどのアクセスが許可されること
になる。このような相互認証システムを採ることによ
り、セキュリティを非常に向上させることができる。た
とえば、預金者用ICカードが、盗難もしくは紛失によ
り不正利用者の手に渡った場合を考える。この場合、P
IN照合のみしかセキュリティ手段をもたないシステム
では、何らかの方法でPINが知られてしまうと、不正
利用者によって不正アクセスが行われる可能性がある。
たとえば、不正利用者がリーダライタ装置30と同等の
機能をもった装置を所持していれば、PINさえ知って
いれば、この装置により不正入手した預金者用ICカー
ドに対するアクセスが可能になる。ところが、相互認証
を条件とするシステムでは、銀行用ICカードを不正入
手しない限り、このような不正アクセスを行うことはで
きない。In this system, such PIN verification is performed, and mutual authentication is performed between both IC cards. That is, the IC card for depositor authenticates whether or not the IC card for bank of the other party is valid, and conversely, the IC card for bank is valid for the IC card for depositor of the other party. If a positive authentication result is obtained for both of them, a process of authenticating whether or not the data is authenticated is permitted to access the user data in the IC card for depositor such as reading and writing. Will be. By adopting such a mutual authentication system, security can be greatly improved. For example, consider a case where an IC card for a depositor is taken by an unauthorized user due to theft or loss. In this case, P
In a system having only IN collation as a security measure, if the PIN is known in some way, there is a possibility that an unauthorized user may make an unauthorized access.
For example, if an unauthorized user possesses a device having a function equivalent to that of the reader / writer device 30, if he / she only knows the PIN, the unauthorized access to the depositor IC card becomes possible. However, in a system that requires mutual authentication, such unauthorized access cannot be performed unless the bank IC card is illegally acquired.
【0030】§2. 一般的な相互認証処理 続いて、§1で述べたような相互認証をセキュリティ条
件にもつ情報処理システムにおいて、従来提案されてい
る一般的な相互認証処理を説明する。図3は、このよう
な相互認証をセキュリティ条件にもつICカードにおけ
るCPUの一般的な処理手順を示す流れ図である。前述
したように、ICカードに対する電源供給は、リーダラ
イタ装置側から行われるのが一般的であり、ICカード
をリーダライタ装置に接続すると、電源供給が行われ、
CPUに対してリセットがかかることになる。図3の流
れ図は、このリセット後の処理手順を示すものである。 §2. General Mutual Authentication Process Next , a general mutual authentication process conventionally proposed in the information processing system having the mutual authentication as a security condition as described in §1 will be described. FIG. 3 is a flowchart showing a general processing procedure of a CPU in an IC card having such mutual authentication as a security condition. As described above, the power supply to the IC card is generally performed from the reader / writer device side, and when the IC card is connected to the reader / writer device, the power supply is performed.
The CPU will be reset. The flowchart of FIG. 3 shows the processing procedure after this reset.
【0031】まず、ステップS1において、リセット応
答処理が行われる。これは、ICカードからリーダライ
タ装置に対して、CPUがリセットされたことを示す応
答信号を送信する処理である。続いて、ステップS2に
おいて、ICカードはコマンド受信待ちの状態に入る。
そして、リーダライタ装置から何らかのコマンドが与え
られると、ステップS3で、与えられたコマンドに基い
た分岐処理が行われ、各コマンドに対応した処理がステ
ップS4〜S7において実行される。そして、続くステ
ップS8において、レスポンス送信が行われる。すなわ
ち、何らかの送信データが、ICカードからリーダライ
タ装置側にレスポンスとして送信されることになる。ど
のようなデータが送信されるかは、どのようなコマンド
処理が実行されたかによってそれぞれ異なる。いずれに
せよ、リーダライタ装置からICカードに対して何らか
のコマンドが与えられると、ICカード内のCPUは、
このコマンドに応じた処理を実行し、何らかのレスポン
スを送信し、次のコマンドを待つ、という操作が繰り返
されることになる。First, in step S1, reset response processing is performed. This is a process of transmitting a response signal indicating that the CPU has been reset from the IC card to the reader / writer device. Then, in step S2, the IC card enters a state of waiting for command reception.
When any command is given from the reader / writer device, a branch process based on the given command is performed in step S3, and a process corresponding to each command is executed in steps S4 to S7. Then, in the subsequent step S8, a response is transmitted. That is, some transmission data is transmitted as a response from the IC card to the reader / writer device side. What kind of data is transmitted depends on what kind of command processing is executed. In any case, when a command is given to the IC card from the reader / writer device, the CPU in the IC card
The operation of executing the process according to this command, transmitting some response, and waiting for the next command is repeated.
【0032】各コマンドについての処理内容は、ICカ
ード内のROMにプログラムされており、ステップS3
のコマンド分岐は、対応するコマンドについての各処理
ルーチンへの分岐に相当する。ここでは、相互認証処理
の内容を説明するのが目的であるため、図3の流れ図に
おいては、この相互認証処理に関連した3つのコマン
ド、すなわち、乱数生成コマンド、乱数暗号化コマン
ド、認証コード照合コマンドを、それぞれステップS
4,S5,S6と独立して示し、その他のコマンドをス
テップS7に示した。実際には、このステップS7に示
した「その他のコマンド」の中には、ユーザデータの書
き込みコマンドや読出しコマンドなど、このICカード
を本来の目的に利用するために必要な種々のコマンドが
含まれることになるが、ここでは、これらのコマンドに
ついての説明は省略する。The processing contents for each command are programmed in the ROM in the IC card, and step S3
The command branch of is equivalent to the branch to each processing routine for the corresponding command. Since the purpose of this description is to explain the contents of the mutual authentication process, in the flowchart of FIG. 3, three commands related to this mutual authentication process, that is, a random number generation command, a random number encryption command, and an authentication code collation are given. Command, step S
4, S5 and S6 are shown independently, and other commands are shown in step S7. Actually, the "other commands" shown in step S7 include various commands necessary for using this IC card for its original purpose, such as a user data write command and a user data read command. However, the description of these commands is omitted here.
【0033】続いて、相互認証処理に関連した3つのコ
マンドが与えられた場合の処理内容を簡単に説明する。
まず、ステップS4で行われる乱数生成コマンドは、一
般に、「GENERATE CHALLENGE」と呼ばれているコマンド
である。このコマンドが与えられると、CPUは、内部
で乱数を生成し、生成した乱数を送信データとしてセッ
トする処理を実行する。したがって、後に実行されるス
テップS8では、このセットされた乱数の値が、レスポ
ンスデータとしてリーダライタ装置側へ送信されること
になる。結局、リーダライタ装置から見れば、乱数生成
コマンドをICカードに与えると、乱数値がレスポンス
として戻されることになる。Next, the processing contents when three commands related to the mutual authentication processing are given will be briefly described.
First, the random number generation command executed in step S4 is a command generally called "GENERATE CHALLENGE". When this command is given, the CPU internally executes a process of generating a random number and setting the generated random number as transmission data. Therefore, in step S8 executed later, the value of this set random number is transmitted to the reader / writer device as response data. After all, from the viewpoint of the reader / writer device, when a random number generation command is given to the IC card, the random number value is returned as a response.
【0034】また、ステップS5で行われる乱数暗号化
コマンドは、一般に(ICカードの国際標準規格によれ
ば)、「INTERNAL AUTHENTICATE 」と呼ばれているコマ
ンドである。このコマンドは、所定の乱数とともに与え
られる。このコマンドが与えられると、CPUは、EE
PROM内に記録されている所定のキーを利用して、与
えられた乱数を暗号化して認証コードを作成する。そし
て、この作成した認証コードを送信データとしてセット
する処理を実行する。したがって、後に実行されるステ
ップS8では、このセットされた認証コードの値が、レ
スポンスデータとしてリーダライタ装置側へ送信される
ことになる。The random number encryption command performed in step S5 is a command generally called "INTERNAL AUTHENTICATE" (according to the IC card international standard). This command is given together with a predetermined random number. When this command is given, the CPU
A given key recorded in the PROM is used to encrypt a given random number to create an authentication code. Then, a process of setting the created authentication code as transmission data is executed. Therefore, in step S8 executed later, the value of the set authentication code is transmitted to the reader / writer device side as response data.
【0035】たとえば、リーダライタ装置からICカー
ドに対して、乱数「RND」とともに乱数暗号化コマン
ドを与えたとする。CPUは、EEPROM内に記録さ
れている所定のキー「KEY」を用いて、この乱数「R
ND」を暗号化する処理を行う。この暗号化のアルゴリ
ズムとしては種々の方法が利用されているが、この暗号
化のアルゴリズムを関数「f」として把握すれば、暗号
化によって得られる認証コードAは、A=f(RND,
KEY)で表される値になる。別言すれば、認証コード
Aは、与えられた乱数「RND」と所定のキー「KE
Y」との関数で表されることになる。結局、リーダライ
タ装置から見れば、乱数「RND」とともに乱数暗号化
コマンドをICカードに与えると、A=f(RND,K
EY)で表される認証コードAがレスポンスとして戻さ
れることになる。For example, assume that the reader / writer device gives a random number encryption command together with the random number "RND" to the IC card. The CPU uses the predetermined key "KEY" recorded in the EEPROM to generate this random number "R".
ND ”is encrypted. Although various methods are used as this encryption algorithm, if the encryption algorithm is grasped as a function “f”, the authentication code A obtained by the encryption is A = f (RND,
KEY). In other words, the authentication code A is the given random number “RND” and the predetermined key “KE”.
It will be represented by a function with "Y". After all, from the viewpoint of the reader / writer device, if a random number encryption command is given to the IC card together with the random number “RND”, A = f (RND, K
The authentication code A represented by EY) will be returned as a response.
【0036】更に、ステップS6で行われる認証コード
照合コマンドは、一般に、「EXTERNAL AUTHENTICATE 」
と呼ばれているコマンドである。このコマンドは、所定
の認証コードとともに与えられる。このコマンドが与え
られると、CPUは、EEPROM内に記録されている
所定のキーを利用して、過去に実行した乱数生成処理に
よって生成された乱数を暗号化して認証コードを作成す
る。そして、この作成した認証コードがリーダライタ装
置から与えられた認証コードと一致するか否かを照合
し、照合結果を送信データとしてセットする処理を実行
する。したがって、後に実行されるステップS8では、
このセットされた照合結果が、レスポンスデータとして
リーダライタ装置側へ送信されることになる。Further, the authentication code collation command executed in step S6 is generally "EXTERNAL AUTHENTICATE".
It is a command called. This command is given with a predetermined authorization code. When this command is given, the CPU uses a predetermined key recorded in the EEPROM to encrypt a random number generated by a random number generation process executed in the past to create an authentication code. Then, it is checked whether the created authentication code matches the authentication code given by the reader / writer device, and a process of setting the verification result as transmission data is executed. Therefore, in step S8 executed later,
The set verification result is transmitted to the reader / writer device side as response data.
【0037】たとえば、リーダライタ装置からICカー
ドに対して、認証コード「A」とともに認証コード照合
コマンドを与えたとする。そして、このとき、このIC
カードの内部では、過去に所定の乱数「RND」が生成
されていたとする。この場合、CPUは、EEPROM
内に記録されている所定のキー「KEY」を用いて、過
去に生成した乱数「RND」を暗号化する処理を行い、
認証コード「B」を作成する。すなわち、認証コードB
は、B=f(RND,KEY)で表される値になる。更
に、CPUは、作成した認証コード「B」と、リーダラ
イタ装置から与えられた認証コード「A」とが一致する
か否か照合を行い、その結果を送信データとしてセット
する。結局、リーダライタ装置から見れば、認証コード
「A」とともに認証コード照合コマンドをICカードに
与えると、ICカード内部で作成された認証コード
「B」と認証コード「A」との比較照合が行われ、一致
か不一致を示す照合結果がレスポンスとして戻されるこ
とになる。For example, it is assumed that the reader / writer device gives an authentication code collation command together with the authentication code "A" to the IC card. And at this time, this IC
It is assumed that a predetermined random number "RND" has been generated in the inside of the card. In this case, the CPU is the EEPROM
By using a predetermined key "KEY" recorded in, the process of encrypting the random number "RND" generated in the past,
Create an authentication code “B”. That is, the authentication code B
Becomes a value represented by B = f (RND, KEY). Further, the CPU verifies whether the created authentication code “B” and the authentication code “A” given from the reader / writer device match, and sets the result as transmission data. After all, from the viewpoint of the reader / writer device, when the authentication code collation command is given to the IC card together with the authentication code “A”, the comparison and collation between the authentication code “B” and the authentication code “A” created inside the IC card are performed. The matching result indicating matching or mismatching is returned as a response.
【0038】以上、相互認証処理に関連した3つのコマ
ンドが与えられた場合の処理内容を簡単に説明したが、
続いて、これらのコマンドを用いた具体的な認証処理の
手順を説明する。図4は、第1のICカード10(この
例では預金者用ICカード)による第2のICカード2
0(この例では銀行用ICカード)についての認証処理
の手順を示すダイヤグラムである。いわば、この認証処
理は、預金者用ICカード側のCPUが、相手方の銀行
用ICカードが正当なものであるか否かを認証する処理
ということができる。もっとも、各ICカードのCPU
は、いずれもリーダライタ装置からコマンドが与えられ
ることにより初めて何らかの処理を実施する機能しかも
たないので、このような認証処理を実行するには、リー
ダライタ装置からICカードに対して何らかのコマンド
を与える動作を行わねばならない。図4において〜
で示した動作は、このようなコマンドを与える動作もし
くはそのコマンドに誘発されて実行される動作である。
以下、これらの動作を順に説明する。The processing contents when three commands related to the mutual authentication processing are given have been briefly described above.
Next, a specific authentication processing procedure using these commands will be described. FIG. 4 shows a second IC card 2 using the first IC card 10 (in this example, an IC card for depositors).
9 is a diagram showing a procedure of an authentication process for 0 (in this example, a bank IC card). In other words, this authentication process can be said to be a process in which the CPU on the IC card side for depositors authenticates whether or not the counterpart IC card for bank is valid. However, the CPU of each IC card
Each of them has only the function of performing some processing for the first time when a command is given from the reader / writer device. Therefore, in order to execute such authentication processing, some command is given from the reader / writer device to the IC card. You have to take action. In FIG.
The operation indicated by is an operation that gives such a command or an operation that is triggered by the command.
Hereinafter, these operations will be described in order.
【0039】まず、動作として、リーダライタ装置か
ら預金者用ICカードに対して、乱数生成コマンドを与
える。このコマンドを受け取った預金者用ICカード内
部では、動作として、乱数「RND」の生成が行わ
れ、生成された乱数「RND」は、動作において、リ
ーダライタ装置へレスポンスとして戻される。続いて、
動作として、リーダライタ装置から銀行用ICカード
に対して、乱数暗号化コマンドを与える。前述したよう
に、この乱数暗号化コマンドは、所定の乱数を伴うコマ
ンドである。そこで、リーダライタ装置は、動作とし
て戻された乱数「RND」を、動作において、乱数暗
号化コマンドとともに銀行用ICカードに与える。銀行
用ICカードは、動作として、与えられた乱数「RN
D」の暗号化を実行する。すなわち、EEPROM内に
記録されている所定のキー「KEY」を用いて、関数f
で表される所定のアルゴリズムに基いて乱数「RND」
を暗号化し、A=f(RND,KEY)で表される認証
コードAを作成する。こうして作成された認証コードA
は、動作において、リーダライタ装置へレスポンスと
して戻される。First, as an operation, a random number generation command is given from the reader / writer device to the depositor IC card. In the IC card for depositor receiving this command, a random number "RND" is generated as an operation, and the generated random number "RND" is returned as a response to the reader / writer device in the operation. continue,
As an operation, a random number encryption command is given from the reader / writer device to the bank IC card. As described above, this random number encryption command is a command accompanied by a predetermined random number. Therefore, the reader / writer device gives the returned random number "RND" as an operation to the bank IC card together with the random number encryption command in the operation. The bank IC card operates as a given random number "RN
D "encryption is performed. That is, using the predetermined key "KEY" recorded in the EEPROM, the function f
Random number "RND" based on the predetermined algorithm
Is encrypted, and an authentication code A represented by A = f (RND, KEY) is created. Authentication code A created in this way
In operation, is returned to the reader / writer device as a response.
【0040】次に、動作として、リーダライタ装置か
ら預金者用ICカードに対して、認証コード照合コマン
ドを与える。前述したように、この認証コード照合コマ
ンドは、所定の認証コードを伴うコマンドである。そこ
で、リーダライタ装置は、動作として戻された認証コ
ードAを、動作において、認証コード照合コマンドと
ともに預金者用ICカードに与える。預金者用ICカー
ドは、動作として、過去に生成した乱数、すなわち動
作において生成した乱数「RND」の暗号化を実行す
る。すなわち、EEPROM内に記録されている所定の
キー「KEY」を用いて、関数fで表される所定のアル
ゴリズムに基いて乱数「RND」を暗号化し、B=f
(RND,KEY)で表される認証コードBを作成す
る。そして、こうして作成された認証コードBと、リー
ダライタ装置から与えられた認証コードAとが一致する
か否かの照合を行う。この照合結果(一致を示す「O
K」または不一致を示す「NG」)は、動作におい
て、リーダライタ装置へレスポンスとして戻される。Next, as an operation, the reader / writer device gives an authentication code collation command to the depositor's IC card. As described above, this authentication code matching command is a command accompanied by a predetermined authentication code. Therefore, the reader / writer device gives the authentication code A returned as the operation to the depositor IC card together with the authentication code collation command in the operation. As an operation, the IC card for depositor executes the encryption of the random number generated in the past, that is, the random number “RND” generated in the operation. That is, the random number "RND" is encrypted based on a predetermined algorithm represented by the function f using a predetermined key "KEY" recorded in the EEPROM, and B = f
An authentication code B represented by (RND, KEY) is created. Then, it is checked whether or not the authentication code B created in this way and the authentication code A given from the reader / writer device match. This collation result (“O
In operation, "K" or "NG" indicating disagreement is returned as a response to the reader / writer device.
【0041】以上が認証処理のひととおりの手順であ
る。ここで、預金者用ICカード側で用いられる所定の
キー「KEY」と銀行用ICカード側で用いられる所定
のキー「KEY」とが全く同一になるようにしておき
(別言すれば、両ICカードのEEPROMに、予め全
く同一の「KEY」を書き込んでおくようにしてお
き)、かつ、預金者用ICカード側で用いられる暗号化
のアルゴリズムfと銀行用ICカード側で用いられる暗
号化のアルゴリズムfとが全く同一になるようにしてお
けば(別言すれば、乱数暗号化コマンドの実行ルーチン
として、同一のルーチンを両ICカードのROM内に予
め書き込んでおくようにしておけば)、認証コードAと
認証コードBとは一致するはずである。したがって、動
作において、一致を示す「OK」なる照合結果が得ら
れたとすれば、預金者用ICカードから見て、相手方と
なる銀行用ICカードが正当なものであるとの認証が得
られたことになる。The above is the general procedure of the authentication processing. Here, the predetermined key "KEY" used on the depositor's IC card side and the predetermined key "KEY" used on the bank IC card side are set to be exactly the same (in other words, The same "KEY" is written in advance in the EEPROM of the IC card), and the encryption algorithm f used on the IC card side for the depositor and the encryption used on the IC card side for the bank If it is made to be exactly the same as the algorithm f (in other words, if the same routine is written in advance in the ROMs of both IC cards as the execution routine of the random number encryption command). , The authentication code A and the authentication code B should match. Therefore, in the operation, if a collation result of "OK" indicating a match is obtained, it is verified that the counterpart IC card for the bank is a legitimate one as viewed from the IC card for the depositor. It will be.
【0042】一方、図5は、第2のICカード20(こ
の例では銀行用ICカード)による第1のICカード1
0(この例では預金者用ICカード)についての認証処
理の手順を示すダイヤグラムである。いわば、この認証
処理は、銀行用ICカード側のCPUが、相手方の預金
者用ICカードが正当なものであるか否かを認証する処
理ということができる。この認証処理の手順は、図4に
示した認証処理の手順における両ICカードの役割を全
く入れ替えたものであり、図4のダイヤグラムの左右を
入れ替えたものが図5のダイヤグラムに相当する。した
がって、この図5のダイヤグラムについての詳しい説明
は省略するが、その概要だけを簡単に説明すれば、次の
ようになる。On the other hand, FIG. 5 shows the first IC card 1 using the second IC card 20 (in this example, a bank IC card).
It is a diagram showing the procedure of the authentication process for 0 (IC card for depositor in this example). In other words, this authentication processing can be said to be processing in which the CPU on the bank IC card side authenticates whether or not the counterpart IC card for depositor is valid. The procedure of this authentication process is a completely interchanged role of both IC cards in the procedure of the authentication process shown in FIG. 4, and the diagram of FIG. 4 corresponds to the diagram of FIG. Therefore, a detailed description of the diagram of FIG. 5 is omitted, but a brief description of only the outline is as follows.
【0043】まず、動作として、銀行用ICカードに
対して、乱数生成コマンドを与え、動作として乱数
「RND」を生成させ、動作においてこれをレスポン
スとして戻す。次に、動作として、預金者用ICカー
ドに対して、乱数「RND」とともに乱数暗号化コマン
ドを与え、動作における暗号化により認証コードC=
f(RND,KEY)を作成し、動作においてこれを
レスポンスとして戻す。更に、動作として、銀行用I
Cカードに対して、認証コードCとともに認証コード照
合コマンドを与えると、動作において、D=f(RN
D,KEY)で表される認証コードDが作成され、認証
コードCとの照合が行われ、動作において、照合結果
がレスポンスとして戻される。そして、一致を示す「O
K」なる照合結果が得られたとすれば、銀行用ICカー
ドから見て、相手方となる預金者用ICカードが正当な
ものであるとの認証が得られたことになる。First, as an operation, a random number generation command is given to the bank IC card, a random number "RND" is generated as an operation, and this is returned as a response in the operation. Next, as an operation, a random number encryption command is given together with the random number “RND” to the depositor IC card, and the authentication code C =
f (RND, KEY) is created, and this is returned as a response in the operation. Further, as an operation, for bank I
When the authentication code collation command is given to the C card together with the authentication code C, in operation, D = f (RN
An authentication code D represented by (D, KEY) is created and collated with the authentication code C, and in operation, the collation result is returned as a response. Then, "O" indicating a match
If the collation result of “K” is obtained, it means that the IC card for the depositor, which is the counterpart, is authenticated as seen from the IC card for the bank.
【0044】リーダライタ装置は、図4に示す認証処理
による最終手順で得られた照合結果と、図5に示す認証
処理による最終手順で得られた照合結果と、の双方にお
いて、一致を示す「OK」が得られた場合には、肯定的
な相互認証が行われたものと判断し、ユーザデータへの
アクセス処理など、本来の処理を実行することになり、
預金者用ICカードおよび銀行用ICカードは、このよ
うなアクセス処理を受け入れることになる。The reader / writer device indicates a match in both the collation result obtained in the final procedure of the authentication processing shown in FIG. 4 and the collation result obtained in the final procedure of the authentication processing shown in FIG. If “OK” is obtained, it is determined that the positive mutual authentication is performed, and the original processing such as the access processing to the user data is executed.
The depositor IC card and the bank IC card will accept such access processing.
【0045】§3. 従来の相互認証処理の問題点 以上のように、§2では、従来提案されている一般的な
相互認証システムの処理内容を簡単に説明したが、実
は、このようなシステムでは、必ずしも十分なセキュリ
ティを確保することはできない。ここでは、このような
従来の相互認証システムについて、2つの問題点を指摘
する。後述するように、本発明を適用することにより、
この2つの問題点はいずれも解決される。 §3. Problems of Conventional Mutual Authentication Processing As described above, in §2, the processing contents of the conventionally proposed general mutual authentication system are briefly explained, but in fact, in such a system, sufficient security is not always required. Cannot be secured. Here, two problems are pointed out regarding such a conventional mutual authentication system. As will be described later, by applying the present invention,
Both of these two problems are solved.
【0046】第1の問題点は、乱数暗号化コマンドが不
正使用される問題である。たとえば、預金者用ICカー
ドが不正利用者の手に渡ったとし、この不正利用者が、
リーダライタ装置と同等の機能を備えた不正アクセス装
置を持っていたものとしよう。この場合、確かに、銀行
用ICカードがこの不正利用者の手に渡らない限り、相
互認証を行うことはできないわけであるから、この預金
者用ICカード内のユーザデータに対するアクセスを直
ちに行うことはできない。しかしながら、不正アクセス
装置から預金者用ICカードに対して、乱数暗号化コマ
ンドを与えることは可能である。すなわち、図5におけ
る動作と同等の処理を、不正アクセス装置を用いて行
うことは可能である。このとき、乱数暗号化コマンドと
ともに、何らかの値Xを乱数として与えるようにすれ
ば、預金者用ICカード側では、動作が実行され、Y
=f(X,KEY)で表される認証コードYが作成さ
れ、動作により、この認証コードYが不正アクセス装
置に対してレスポンスとして戻されることになる。すな
わち、不正利用者は、「ある値Xを与えて動作を実行
させると、特定の値Yがレスポンスとして得られる」と
いう事実を知得することができることになる。The first problem is that the random number encryption command is illegally used. For example, suppose that an IC card for a depositor is in the hands of an unauthorized user, and this unauthorized user
Let's assume that you have an unauthorized access device with the same functions as the reader / writer device. In this case, it is true that mutual authentication cannot be performed unless the IC card for bank is in the hands of this unauthorized user. Therefore, immediately access the user data in the IC card for depositor. I can't. However, it is possible to give a random number encryption command from the unauthorized access device to the depositor's IC card. That is, it is possible to perform the same processing as the operation in FIG. 5 using the unauthorized access device. At this time, if some value X is given as a random number together with the random number encryption command, the operation is executed on the IC card side for the depositor and Y
An authentication code Y represented by = f (X, KEY) is created, and the operation returns this authentication code Y to the unauthorized access device as a response. That is, the unauthorized user can know the fact that “a specific value Y is obtained as a response when an operation is performed by giving a certain value X”.
【0047】そこで、Xとして種々の異なる値を用い、
それぞれの場合にどのようなレスポンスYが得られるか
を実際に試してみれば、XとYとの1対1の対応表を作
成することができ、この対応表を解析することにより、
暗号化のアルゴリズムfや暗号化に利用されるキーKE
Yを推定することが可能になる。万一、不正利用者に、
暗号化のアルゴリズムfやキーKEYが知得されると、
銀行用ICカードが偽造されるおそれがあり、セキュリ
ティに重大な支障を来すことになる。Therefore, various different values are used as X,
If you actually try what kind of response Y is obtained in each case, you can create a one-to-one correspondence table of X and Y, and by analyzing this correspondence table,
Encryption algorithm f and key KE used for encryption
It becomes possible to estimate Y. In the unlikely event of an unauthorized user,
Once the encryption algorithm f and the key KEY are known,
The bank IC card may be forged, which seriously hinders security.
【0048】第2の問題点は、認証コード照合コマンド
が不正使用される問題である。やはり預金者用ICカー
ドが不正利用者の手に渡ったとし、この不正利用者が、
リーダライタ装置と同等の機能を備えた不正アクセス装
置を持っていたものとしよう。この場合、不正アクセス
装置から預金者用ICカードに対して、乱数生成コマン
ドを与えることは可能であり、また、認証コード照合コ
マンドを与えることは可能である。すなわち、図4にお
ける動作や動作と同等の処理を、不正アクセス装置
を用いて行うことは可能である。そこで、まず動作に
より乱数生成コマンドを与え、動作によって何らかの
乱数RNDを生成させれば、動作により、生成した乱
数RNDが不正アクセス装置に対してレスポンスとして
戻されることになる。もちろん、この乱数RNDが得ら
れたとしても、銀行用ICカードがない限りは、図4に
おける動作を実行することはできないので、この不正
利用者は、正しい認証コードAを得ることはできない。The second problem is that the authentication code collation command is illegally used. After all, it is assumed that the IC card for the depositor is in the hands of the illegal user, and this illegal user
Let's assume that you have an unauthorized access device with the same functions as the reader / writer device. In this case, a random number generation command can be given to the depositor IC card from the unauthorized access device, and an authentication code collation command can be given. That is, it is possible to use the unauthorized access device to perform the operation shown in FIG. 4 or a process equivalent to the operation. Therefore, if a random number generation command is given by an operation and some random number RND is generated by the operation, the generated random number RND is returned as a response to the unauthorized access device. Of course, even if this random number RND is obtained, the operation in FIG. 4 cannot be executed unless there is a bank IC card, so this unauthorized user cannot obtain the correct authentication code A.
【0049】しかしながら、この不正利用者は、でたら
めな認証コードPを用いて、動作を実行することは可
能である。すなわち、不正アクセス装置を用いて、認証
コード照合コマンドとともに、何らかの認証コードPを
与えるようにすれば、預金者用ICカード側では、動作
が実行され、B=f(RND,KEY)で表される認
証コードBが作成される。そして、この作成された認証
コードBとでたらめた認証コードPとが照合され、動作
により、その照合結果が不正アクセス装置に対してレ
スポンスとして戻されることになる。もちろん、でたら
めな認証コードPを用いたのであるから、多くの場合、
不一致を示す照合結果「NG」が得られることになる。
ところが、でたらめな認証コードPを試行錯誤的にいろ
いろと変えながら(たとえば、0000,0001,0
002,…と1ずつ増やしながら)、動作における認
証コード照合コマンドを与える処理を繰り返し実行して
ゆけば、でたらめな認証コードPが、偶然、正しい認証
コードAに一致する場合に遭遇することになる。However, this unauthorized user can execute the operation by using the random authentication code P. That is, if an unauthorized access device is used and some authentication code P is given together with the authentication code collation command, the operation is executed on the IC card side for the depositor, and is expressed by B = f (RND, KEY). Authentication code B is created. Then, the created authentication code B is collated with the random authentication code P, and the collation result is returned as a response to the unauthorized access device by the operation. Of course, since the random authentication code P was used, in many cases,
The collation result “NG” indicating the disagreement is obtained.
However, while changing the random authentication code P by trial and error (for example, 0000001,0
If the process of giving the authentication code collation command in the operation is repeatedly executed while increasing the number of 002, ... by 1), the random authentication code P happens to coincide with the correct authentication code A. .
【0050】すなわち、「OK」なる照合結果が得られ
るまで、でたらめな認証コードをいろいろと変えて、試
行錯誤的に認証コード照合コマンドを与え続ければ、
「OK」なる照合結果が得られた時点で与えた認証コー
ドが正しい認証コードであることを認識することができ
る。このとき、乱数RNDは、動作によって得られて
いるので、特定の乱数RNDを暗号化することによって
得られる正しい認証コードAを特定することができるこ
とになる。したがって、乱数RNDと認証コードAとの
関係を解析することにより、やはり暗号化のアルゴリズ
ムfや暗号化に利用されるキーKEYを推定することが
可能になる。That is, until the collation result "OK" is obtained, if the random authentication code is changed variously and the authentication code collation command is continuously given by trial and error,
It is possible to recognize that the authentication code given when the collation result "OK" is obtained is the correct authentication code. At this time, since the random number RND has been obtained by the operation, it is possible to specify the correct authentication code A obtained by encrypting the specific random number RND. Therefore, by analyzing the relationship between the random number RND and the authentication code A, it is possible to estimate the encryption algorithm f and the key KEY used for encryption.
【0051】§4. 本発明に係る相互認証処理 本発明に係る相互認証処理では、図2のブロック図に示
すように、RAM13内に、相手方認証済フラグおよび
乱数生成済フラグを格納するための領域が設けられ、相
互認証処理に関連した3つのコマンド、すなわち、乱数
生成コマンド、乱数暗号化コマンド、認証コード照合コ
マンドは、それぞれ図6,図7,図8に示すような処理
手順によって実行される。以下、これらの各処理手順を
順に説明する。なお、これら各処理手順のステップにお
いて、「*」印を付したステップは、前述した第1の問
題点を解決するために付加された本発明特有のステップ
であり、「**」印を付したステップは、前述した第2
の問題点を解決するために付加された本発明特有のステ
ップである。その他のステップは、いずれも従来から行
われている一般的な処理を示すステップである。本発明
に係るICカードでは、ROM内に図6,図7,図8に
示すような処理を行うためのプログラムルーチンが書き
込まれていることになる。 §4. Mutual Authentication Process According to the Present Invention In the mutual authentication process according to the present invention, as shown in the block diagram of FIG. 2, the RAM 13 is provided with an area for storing the other party authenticated flag and the random number generated flag. Three commands related to the authentication process, that is, a random number generation command, a random number encryption command, and an authentication code collation command are executed by the processing procedures shown in FIGS. 6, 7, and 8, respectively. Hereinafter, each of these processing procedures will be described in order. In these steps of each processing procedure, the step marked with "*" is a step peculiar to the present invention added to solve the above-mentioned first problem, and is marked with "**". The step that was performed is the second step described above.
This is a step peculiar to the present invention, which is added to solve the above problem. All the other steps are steps showing general processing that has been conventionally performed. In the IC card according to the present invention, the program routine for performing the processes shown in FIGS. 6, 7, and 8 is written in the ROM.
【0052】まず、図6を参照しながら、本発明に係る
乱数生成コマンドの処理を説明する。この処理は、図4
または図5のダイヤグラムにおける動作〜に対応す
る処理である。すなわち、本発明に係るICカードに対
して、リーダライタ装置から乱数生成コマンド(一般的
なICカードの規格において「GENERATE CHALLENGE」と
呼ばれているコマンド)を与えると、ICカード内部で
は、まずステップS41において、乱数の生成が行わ
れ、続くステップS42において、生成した乱数が送信
データとしてセットされる。ここまでは、従来の一般的
な乱数生成コマンドの処理手順である。本発明の特徴
は、更に、ステップS43において、乱数生成済フラグ
が「ON」の状態になる点である。前述したように、乱
数生成済フラグは、RAM内の所定領域に設定されるフ
ラグであり、「ON」または「OFF」のいずれかの状
態が示されれば足りるので、最低限1ビットの記録領域
があればよい。ただ、この実施例では、1バイト分の領
域を乱数生成済フラグに充てており、16進数で「0
1」の場合に「ON」、それ以外の場合に「OFF」を
示すものとして取り扱っている。なお、揮発性メモリで
あるRAMは、電源投入当時は「01」以外の値をとる
ようになっており、本実施例において、ICカードをリ
ーダライタ装置に接続した当初においては、乱数生成済
フラグは「OFF」の状態になっている。First, the processing of the random number generation command according to the present invention will be described with reference to FIG. This process is shown in FIG.
Alternatively, it is a process corresponding to the operations 1 to 5 in the diagram of FIG. That is, when a random number generation command (a command called "GENERATE CHALLENGE" in the standard of the general IC card) is given from the reader / writer device to the IC card according to the present invention, the step inside the IC card is first performed. In S41, a random number is generated, and in the subsequent step S42, the generated random number is set as transmission data. Up to this point, the processing procedure of the conventional general random number generation command has been described. The feature of the present invention is that the random number generated flag is turned on in step S43. As described above, the random number generated flag is a flag set in a predetermined area in the RAM, and it suffices if the state of "ON" or "OFF" is indicated. There should be an area. However, in this embodiment, a 1-byte area is used as a random number generation completion flag, and a hexadecimal number "0".
If it is "1", it is treated as "ON", and in other cases, it is treated as "OFF". The RAM, which is a volatile memory, takes a value other than "01" when the power is turned on. In the present embodiment, when the IC card is initially connected to the reader / writer device, the random number generated flag is set. Is in the "OFF" state.
【0053】以上の手順で、この乱数生成コマンドの処
理は完了し、この処理ルーチンをコールしたもとのプロ
グラムへと制御が戻ることになる。すなわち、図3の流
れ図では、ステップS4の処理が完了したことになり、
続いてステップS8が実行され、生成した乱数がレスポ
ンスとしてリーダライタ装置へ戻されることになる。With the above procedure, the processing of this random number generation command is completed, and the control returns to the original program that called this processing routine. That is, in the flowchart of FIG. 3, the process of step S4 is completed,
Subsequently, step S8 is executed, and the generated random number is returned to the reader / writer device as a response.
【0054】次に、図7を参照しながら、本発明に係る
乱数暗号化コマンドの処理を説明する。この処理は、図
4または図5のダイヤグラムにおける動作〜に対応
する処理である。すなわち、本発明に係るICカードに
対して、リーダライタ装置から所定の乱数RNDととも
に乱数暗号化コマンド(一般的なICカードの規格にお
いて「INTERNAL AUTHENTICATE 」と呼ばれているコマン
ド)を与えると、ICカード内部では、まずステップS
51において、相手方認証済フラグが「ON」か否かが
判断される。前述したように、相手方認証済フラグは、
RAM内の所定領域に設定されるフラグであり、「O
N」または「OFF」のいずれかの状態が示されれば足
りるので、最低限1ビットの記録領域があればよい。た
だ、この実施例では、乱数生成済フラグと同様に、1バ
イト分の領域を相手方認証済フラグに充てており、16
進数で「01」の場合に「ON」、それ以外の場合に
「OFF」を示すものとして取り扱っている。また、揮
発性メモリであるRAMは、電源投入当時は「01」以
外の値をとるようになっており、本実施例において、I
Cカードをリーダライタ装置に接続した当初において
は、相手方認証済フラグは「OFF」の状態になってい
る。Next, the processing of the random number encryption command according to the present invention will be described with reference to FIG. This process is a process corresponding to the operations 1 to 5 in the diagram of FIG. 4 or FIG. That is, when a random number encryption command (a command called “INTERNAL AUTHENTICATE” in the general IC card standard) is given from the reader / writer device to the IC card according to the present invention together with a predetermined random number RND, the IC Inside the card, first step S
At 51, it is determined whether or not the other party authenticated flag is "ON". As mentioned above, the other party authenticated flag is
This is a flag that is set in a predetermined area in RAM and
Since it suffices to indicate the state of "N" or "OFF", it is sufficient to have a recording area of at least 1 bit. However, in this embodiment, as in the case of the random number generated flag, a 1-byte area is allocated to the partner authenticated flag,
It is treated as "ON" when it is a decimal number "01" and as "OFF" otherwise. The RAM, which is a volatile memory, takes a value other than "01" when the power is turned on.
At the beginning of connecting the C card to the reader / writer device, the other party authenticated flag is in the "OFF" state.
【0055】ステップS51の判断において、相手方認
証済フラグが「ON」であった場合には、続くステップ
S52へと進み、乱数RNDの暗号化が行われる。すな
わち、EEPROM内に記録されている所定のキー「K
EY」を用いて、与えられた乱数「RND」を暗号化す
る処理を行い、その結果として、認証コードAまたはC
を得る。ここで、認証コードAまたはCは、暗号化のア
ルゴリズムを関数「f」として表せば、A=f(RN
D,KEY)あるいはC=f(RND,KEY)で表さ
れる値になる(AとCとの相違は、各カードが認証時に
用いる乱数やKEYの相違から生じる)。If it is determined in step S51 that the other party authenticated flag is "ON", the process proceeds to step S52, in which the random number RND is encrypted. That is, a predetermined key "K" recorded in the EEPROM
EY ”is used to perform the process of encrypting the given random number“ RND ”, and as a result, the authentication code A or C is obtained.
Get. Here, if the authentication code A or C represents the encryption algorithm as a function “f”, A = f (RN
D, KEY) or C = f (RND, KEY) (the difference between A and C is due to the difference in random number and KEY used by each card during authentication).
【0056】一方、ステップS51の判断において、相
手方認証済フラグが「OFF」であった場合には、ステ
ップS52は実行されない。いずれの場合にも、続くス
テップS53において、送信データがセットされること
になる。ここで、ステップS52が実行された場合に
は、ここで得られた認証コードAまたはCが、送信デー
タとしてセットされる。一方、ステップS52が実行さ
れなかった場合には、この実施例では、認証コードが得
られなかったことを示す特定の値が送信データとしてセ
ットされる。On the other hand, if it is determined in step S51 that the other party authenticated flag is "OFF", step S52 is not executed. In either case, the transmission data will be set in the subsequent step S53. Here, when step S52 is executed, the authentication code A or C obtained here is set as transmission data. On the other hand, if step S52 is not executed, in this embodiment, a specific value indicating that the authentication code has not been obtained is set as the transmission data.
【0057】この図7の手順についての本発明の特徴
は、ステップS51の判断処理を付加した点であり、ス
テップS52,S53は、従来の一般的な乱数暗号化コ
マンドの処理手順である。結局、以上の手順で、この乱
数暗号化コマンドの処理は完了し、この処理ルーチンを
コールしたもとのプログラムへと制御が戻ることにな
る。すなわち、図3の流れ図では、ステップS5の処理
が完了したことになり、続いてステップS8が実行さ
れ、「得られた認証コード」もしくは「認証コードが得
られなかったことを示す特定の値」がレスポンスとして
リーダライタ装置へ戻されることになる。The feature of the present invention regarding the procedure of FIG. 7 is that the determination processing of step S51 is added, and steps S52 and S53 are the processing procedure of the conventional general random number encryption command. After all, with the above procedure, the processing of this random number encryption command is completed, and the control returns to the original program that called this processing routine. That is, in the flowchart of FIG. 3, the process of step S5 has been completed, and then step S8 is executed to obtain the "authentication code" or "the specific value indicating that the authentication code was not obtained". Will be returned to the reader / writer device as a response.
【0058】次に、図8を参照しながら、本発明に係る
認証コード照合コマンドの処理を説明する。この処理
は、図4または図5のダイヤグラムにおける動作〜
に対応する処理である。すなわち、本発明に係るICカ
ードに対して、リーダライタ装置から所定の認証コード
AまたはCとともに認証コード照合コマンド(一般的な
ICカードの規格において「EXTERNAL AUTHENTICATE 」
と呼ばれているコマンド)を与えると、ICカード内部
では、まずステップS61において、乱数生成済フラグ
が「ON」か否かが判断される。前述したように、この
乱数生成済フラグは、図6に示すステップS43におい
て「ON」にされるフラグである。このステップS61
の判断において、乱数生成済フラグが「ON」であった
場合には、続くステップS62において、リーダライタ
装置から与えられた認証コードAまたはCを入力する処
理が行われ、更に、ステップS63において、乱数RN
Dの暗号化が行われる。ここで用いる乱数RNDは、過
去に実施した乱数生成コマンドにおけるステップS41
で生成した数値である。すなわち、EEPROM内に記
録されている所定のキー「KEY」を用いて、過去に生
成された乱数「RND」を暗号化する処理を行い、その
結果として、認証コードBまたはDが得られる。ここ
で、認証コードBまたはDは、暗号化のアルゴリズムを
関数「f」として表せば、B=f(RND,KEY)あ
るいはD=f(RND,KEY)で表される値になる。Next, the processing of the authentication code matching command according to the present invention will be described with reference to FIG. This processing is the operation in the diagram of FIG. 4 or FIG.
Is a process corresponding to. That is, for the IC card according to the present invention, an authentication code collation command ("EXTERNAL AUTHENTICATE" in the standard of the general IC card) is issued from the reader / writer together with a predetermined authentication code A or C.
Command), inside the IC card, it is first determined in step S61 whether or not the random number generated flag is "ON". As described above, this random number generated flag is a flag that is turned “ON” in step S43 shown in FIG. This step S61
If the random number generation flag is "ON" in the determination of No., the process of inputting the authentication code A or C given from the reader / writer device is performed in the subsequent step S62, and further, in step S63. Random number RN
Encryption of D is performed. The random number RND used here is the step S41 in the random number generation command executed in the past.
It is the numerical value generated in. That is, the random number "RND" generated in the past is encrypted by using the predetermined key "KEY" recorded in the EEPROM, and as a result, the authentication code B or D is obtained. Here, the authentication code B or D is a value represented by B = f (RND, KEY) or D = f (RND, KEY) when the encryption algorithm is represented as a function “f”.
【0059】続くステップS64では、ステップS62
で入力した認証コードAまたはCと、ステップS63で
作成した認証コードBまたはDとが一致するか否か調べ
る照合処理が行われる。そして、照合の結果、一致して
いれば、続くステップS65において、相手方認証済フ
ラグを「ON」にする処理が行われる。不一致の場合に
は、ステップS65の処理は実行されず、相手方認証済
フラグは「OFF」の状態のままになる。続くステップ
S66において、乱数生成済フラグが「OFF」の状態
になり、ステップS67において、送信データがセット
される。ここでセットされる送信データは、ステップS
64の照合結果の一致「OK」または不一致「NG」を
示すデータである。In the following step S64, step S62
Collation processing is performed to check whether or not the authentication code A or C entered in step S63 and the authentication code B or D created in step S63 match. Then, as a result of the collation, if they match with each other, in the subsequent step S65, a process of setting the other party authenticated flag to "ON" is performed. If they do not match, the process of step S65 is not executed, and the partner authenticated flag remains in the "OFF" state. In the subsequent step S66, the random number generation completed flag is turned off, and the transmission data is set in step S67. The transmission data set here is the step S
It is data indicating the matching “OK” or the mismatching “NG” of the 64 matching results.
【0060】なお、ステップS61で、乱数生成済フラ
グが「OFF」であると判断された場合には、ステップ
S62〜S66の処理は実行されず、直ちにステップS
67で送信データがセットされる。本実施例では、この
場合、照合結果の不一致「NG」を示すデータを送信デ
ータとしてセットするようにしているが、その他のデー
タ、たとえば、照合不能を示すデータをセットするよう
にしてもよい。If it is determined in step S61 that the random number generation completion flag is "OFF", the processes in steps S62 to S66 are not executed and immediately step S61 is performed.
Transmission data is set at 67. In this embodiment, in this case, the data indicating the mismatch “NG” of the matching results is set as the transmission data, but other data, for example, the data indicating the unmatching may be set.
【0061】この図8の手順についての本発明の特徴
は、ステップS61の判断処理を付加した点と、ステッ
プS65およびS66のフラグ操作処理を付加した点で
ある。それ以外のステップは、従来の一般的な認証コー
ド照合コマンドの処理手順である。結局、以上の手順
で、この認証コード照合コマンドの処理は完了し、この
処理ルーチンをコールしたもとのプログラムへと制御が
戻ることになる。すなわち、図3の流れ図では、ステッ
プS6の処理が完了したことになり、続いてステップS
8が実行され、照合結果の一致「OK」または不一致
「NG」、あるいは「照合不能」を示すデータがレスポ
ンスとしてリーダライタ装置へ戻されることになる。The feature of the present invention regarding the procedure of FIG. 8 is that the determination process of step S61 is added and the flag operation process of steps S65 and S66 is added. The other steps are processing procedures of a conventional general authentication code matching command. After all, with the above procedure, the processing of this authentication code collation command is completed, and the control returns to the original program that called this processing routine. That is, in the flowchart of FIG. 3, the process of step S6 is completed, and then step S6 is completed.
8 is executed, and the data indicating the matching “OK” or the mismatching “NG” of the collation result or the data indicating “collation impossible” is returned to the reader / writer device as a response.
【0062】§5. 本発明による問題点の解消 既に§4において述べたように、本発明の特徴は、相互
認証処理に関連した3つのコマンド、すなわち、乱数生
成コマンド、乱数暗号化コマンド、認証コード照合コマ
ンドの処理手順において、それぞれ図6,図7,図8に
「*」印および「**」印を付して示すステップを付加
した点にある。そこで、これらの付加的なステップによ
り、§3で述べた2つの問題点が解消することを示そ
う。 §5. Solution of Problems Due to the Present Invention As already described in §4, the feature of the present invention is that the processing procedure of the three commands related to the mutual authentication processing, that is, the random number generation command, the random number encryption command, and the authentication code matching command. In FIG. 6, steps shown with “*” mark and “**” mark are added to FIGS. 6, 7, and 8, respectively. So let's show that these additional steps solve the two problems described in §3.
【0063】まず、第1の問題点は、乱数暗号化コマン
ドの不正使用の問題である。すなわち、図5における動
作と同等の処理を、不正アクセス装置を用いて行い、
預金者用ICカードに対して、乱数暗号化コマンドとと
もに、何らかの値Xを乱数として与えるようにすれば、
預金者用ICカード側では、動作が実行され、Y=f
(X,KEY)で表される認証コードYが作成され、動
作により、この認証コードYが不正アクセス装置に対
してレスポンスとして戻されることになる。こうして、
XとYとの1対1の対応表を作成することができれば、
この対応表を解析することにより、暗号化のアルゴリズ
ムfや暗号化に利用されるキーKEYを推定することが
可能になることは既に述べたとおりである。First, the first problem is the problem of illegal use of the random number encryption command. That is, a process equivalent to the operation in FIG. 5 is performed using the unauthorized access device,
If some value X is given as a random number to the depositor's IC card along with the random number encryption command,
On the IC card side for the depositor, the operation is executed and Y = f
An authentication code Y represented by (X, KEY) is created, and by operation, this authentication code Y is returned as a response to the unauthorized access device. Thus
If you can create a one-to-one correspondence table between X and Y,
As described above, it is possible to estimate the encryption algorithm f and the key KEY used for encryption by analyzing this correspondence table.
【0064】本発明によれば、図7および図8に「*」
を付したステップが付加されているため、このような不
正アクセスを防止することができる。すなわち、図7に
示す乱数暗号化コマンドの処理手順によれば、まず、ス
テップS51において、相手方認証済フラグが「ON」
であるか否かが判断され、「ON」であった場合のみ、
ステップS52以下の手順が実行される。ここで、相手
方認証済フラグは、ICカードをリーダライタ装置に接
続した当初は「OFF」であり、図8のステップS65
が実行された場合にのみ「ON」になる。これは、図4
に示す動作を実行し、認証コードの照合一致が得られ
た後でなければ、図5に示す動作が実行されないこと
を意味する。別言すれば、預金者用ICカードによる銀
行用ICカードの認証処理(図4)について肯定的な認
証結果が得られた場合に限り、銀行用ICカードによる
預金者用ICカードの認証処理(図5)の実行が可能に
なるような構成になっている。このため、預金者用IC
カードが不正使用者の手に渡ったとしても、銀行用IC
カードがない限り、図4に示す認証処理を行うことはで
きないので、必然的に、図5の動作は実行されないこ
とになる。In accordance with the present invention, the "*" in FIGS.
Since the step marked with is added, such unauthorized access can be prevented. That is, according to the processing procedure of the random number encryption command shown in FIG. 7, first, in step S51, the other party authenticated flag is “ON”.
It is determined whether or not, and only when it is “ON”,
The procedure following step S52 is executed. Here, the other party authenticated flag is “OFF” at the beginning when the IC card is connected to the reader / writer device, and step S65 of FIG.
Is turned on only when is executed. This is shown in Figure 4.
It means that the operation shown in FIG. 5 is not executed until after the operation shown in FIG. In other words, the bank IC card authentication process for the banker's IC card (FIG. 4) is performed only when a positive authentication result is obtained for the banker's IC card authentication process (FIG. 4). The configuration is such that execution of FIG. 5) is possible. Therefore, IC for depositors
Bank IC even if the card is in the hands of an unauthorized user
As long as there is no card, the authentication process shown in FIG. 4 cannot be performed, so the operation of FIG. 5 is inevitably executed.
【0065】なお、念のために述べておくが、図7およ
び図8に「*」を付したステップS51,S65は、相
互認証が行われる2組のICカードのうちのいずれか一
方のICカードのみに適用すべき手順である。なぜな
ら、これらの手順を、預金者用ICカードと銀行用IC
カードとの双方に適用してしまった場合は、相互認証の
いずれもが不可能になってしまうからである。すなわ
ち、預金者用ICカードにより銀行用ICカードを認証
するためには、銀行用ICカードに乱数暗号化コマンド
の処理を実行させる必要があり、逆に、銀行用ICカー
ドにより預金者用ICカードを認証するためには、預金
者用ICカードに乱数暗号化コマンドの処理を実行させ
る必要があるので、両ICカードともに、相手方の認証
が済まない限り乱数暗号化コマンドが実行されないよう
にプログラムされていたとすると、相手方からの認証要
求に応える処理がいずれも拒絶されてしまうためであ
る。Incidentally, as a reminder, steps S51 and S65 marked with "*" in FIGS. 7 and 8 are the ICs of either one of the two IC cards for mutual authentication. This is a procedure that should be applied only to cards. Because these procedures, IC card for depositor and IC for bank
If applied to both the card and the card, mutual authentication will be impossible. That is, in order to authenticate the bank IC card with the depositor IC card, it is necessary to cause the bank IC card to execute the process of the random number encryption command, and conversely, the bank IC card uses the depositor IC card. In order to authenticate, the IC card for depositor needs to execute the processing of the random number encryption command, so both IC cards are programmed so that the random number encryption command is not executed unless the other party's authentication is completed. This is because any processing that responds to the authentication request from the other party will be rejected.
【0066】2組のICカードを用いて相互認証を行う
情報処理システムでは、通常、一方のICカードの管理
が他方のICカードの管理よりも厳重になされるのが一
般的である。たとえば、預金者用ICカードと銀行用I
Cカードとを用いるシステムの場合、銀行用ICカード
は銀行の担当者によって管理されることになるので、一
般大衆が携帯することになる預金者用ICカードに比べ
て、厳重な管理がなされるのが普通であり、この銀行用
ICカードに対して不正なアクセスがなされる可能性は
低いと言える。したがって、このようなシステムに本発
明を適用するには、「*」印を付したステップS51,
S65を、預金者用ICカード側のROM内ルーチンに
のみ付加するようにすればよい。この場合、預金者用I
Cカード内における乱数暗号化コマンドの実行(図5の
動作)は、預金者用ICカード側のRAM内の相手方
認証済フラグが「ON」になった状態、別言すれば、預
金者用ICカードが正当な銀行用ICカードを認証した
状態でなければ、許可されないことになり、預金者用I
Cカードに対する不正アクセスは防止できる。一方、銀
行用ICカード内における乱数暗号化コマンドの実行
(図4の動作)は、銀行用ICカードが正当な預金者
用ICカードを認証したか否かにかかわらず許可される
ので、図4に示す認証処理は何ら支障なく実行できる。
もちろん、銀行用ICカードに対しては、動作を実行
させる不正アクセスは可能であるが、厳重な管理がなさ
れている銀行用ICカードについては、そのような不正
アクセスがなされる可能性は極めて低いために問題には
ならない。In an information processing system for performing mutual authentication using two sets of IC cards, it is general that one IC card is generally managed more strictly than the other IC card. For example, IC card for depositor and I for bank
In the case of a system using the C card, the bank IC card is managed by the person in charge of the bank, and therefore, the IC card for the bank is strictly managed as compared with the IC card for the depositor which is carried by the general public. It can be said that there is a low possibility that unauthorized access will be made to this bank IC card. Therefore, in order to apply the present invention to such a system, step S51 marked with "*",
S65 may be added only to the routine in the ROM on the IC card side for the depositor. In this case, I for depositors
Execution of the random number encryption command in the C card (operation of FIG. 5) is performed in a state where the counterparty authenticated flag in the RAM of the IC card for the depositor is “ON”, in other words, the IC for the depositor. If the card is not a valid bank IC card, it will not be permitted and I
Unauthorized access to the C card can be prevented. On the other hand, execution of the random number encryption command in the bank IC card (operation of FIG. 4) is permitted regardless of whether or not the bank IC card authenticates the legitimate depositor IC card. The authentication process shown in can be executed without any trouble.
Of course, it is possible to make unauthorized access to the bank IC card to execute the operation, but it is extremely unlikely that such illegal access will be made to the bank IC card that is strictly managed. It doesn't matter because.
【0067】次に、第2の問題点は、認証コード照合コ
マンドが不正使用される問題である。すなわち、図4に
おける動作や動作と同等の処理が、不正アクセス装
置によって行われた場合の問題である。動作を実行し
て、乱数RNDを発生させた後、認証コードAの代わり
に、でたらめな認証コードPを用いて、動作を試行錯
誤的に繰り返し実行すれば、いずれは、一致を示す「O
K」なる照合結果が動作として得られることになる。The second problem is that the authentication code collation command is illegally used. That is, this is a problem when the unauthorized access device performs the operation in FIG. 4 or a process equivalent to the operation. After the operation is performed to generate the random number RND, the random authentication code P is used instead of the authentication code A, and the operation is repeatedly performed by trial and error.
The collation result of "K" is obtained as an operation.
【0068】本発明によれば、図7および図8に「*
*」を付したステップが付加されているため、このよう
な不正アクセスを防止することができる。すなわち、図
6に示す乱数生成コマンドの処理手順によれば、乱数R
NDが生成された後、ステップS43において、乱数生
成済フラグが「ON」の状態になる。ところが、図8に
示す認証コード照合コマンドの処理手順によれば、最初
のステップS61において、乱数生成済フラグが「O
N」であることを条件として、以下の処理が実行され、
最後のステップS66において、乱数生成済フラグは
「OFF」の状態になる。このような乱数生成済フラグ
の「ON」/「OFF」の動作を、図4のダイヤグラム
で追ってみると次のようになる。まず、預金者用ICカ
ードに対して、動作を実行して、乱数RNDを生成
(動作)させると、乱数生成済フラグは「ON」の状
態になる。続いて、動作として、認証コード照合コマ
ンドを与えると、その時点では、乱数生成済フラグは
「ON」の状態を維持しているので、預金者用ICカー
ド内において、認証コード照合コマンドの処理(動作
)は支障なく実行される。ただし、動作の実行後に
は、乱数生成済フラグは「OFF」の状態となる。した
がって、続けて、動作として、認証コード照合コマン
ドを再度与えると、その時点では、乱数生成済フラグは
「OFF」の状態になっているので、今度は、認証コー
ド照合コマンドの処理(動作)は実行されない。認証
コード照合コマンドを再度実行するためには、再び、動
作として、乱数生成コマンドを与え、新たな乱数RN
Dを発生させる必要がある。According to the present invention, "*" is added to FIGS.
Since the step with "*" is added, such unauthorized access can be prevented. That is, according to the processing procedure of the random number generation command shown in FIG.
After the ND is generated, in step S43, the random number generation completed flag is turned on. However, according to the processing procedure of the authentication code matching command shown in FIG. 8, in the first step S61, the random number generated flag is set to “O”.
The following processing is executed on condition that it is “N”,
In the final step S66, the random number generated flag is in the "OFF" state. The "ON" / "OFF" operation of such a random number generated flag is traced in the diagram of FIG. 4 as follows. First, when an operation is performed on the depositor's IC card to generate (operate) the random number RND, the random number generated flag is in the “ON” state. Next, as an operation, when an authentication code collation command is given, at that time, the random number generated flag is kept in the “ON” state, so the processing of the authentication code collation command (in the depositor IC card ( Operation) is executed without any trouble. However, after the operation is executed, the random number generated flag is in the “OFF” state. Therefore, subsequently, when the authentication code collation command is given again as the operation, the random number generated flag is in the “OFF” state at that time, so that the processing (operation) of the authentication code collation command is performed this time. Not executed In order to execute the authentication code collation command again, the operation is to give a random number generation command again, and a new random number RN is issued.
It is necessary to generate D.
【0069】このような構成にしておけば、同一の乱数
RNDについて、でたらめな認証コードPを試行錯誤的
に与えて、動作を繰り返し実行することはできなくな
る。もちろん、動作と動作とをそれぞれ交互に繰り
返して実行することは可能であるが、毎回、発生される
乱数RNDは異なるため、動作において一致を示す照
合結果「OK」が偶然得られる可能性は極めて低くな
る。With such a configuration, it is impossible to repeat the operation by giving a random authentication code P to the same random number RND by trial and error. Of course, it is possible to alternately repeat the operation and the operation, but since the random number RND generated each time is different, it is highly possible that the matching result “OK” indicating coincidence in the operation is obtained by chance. Get lower.
【0070】結局、図7および図8に「**」印を付し
たステップを付加すると、ICカードをリーダライタ装
置に接続した後、少なくとも1回は乱数生成処理が実行
されており、かつ、最後に実行された乱数生成処理の後
に、まだ1回も認証コード照合処理が実行されていない
場合に限り、認証コード照合処理が実行できるように構
成することができ、これにより不正アクセスを防止する
ことが可能になる。なお、この「**」印を付したステ
ップは、預金者用ICカードと銀行用ICカードとの双
方に適用してかまわない。After all, if the steps marked with "**" are added to FIGS. 7 and 8, the random number generation process is executed at least once after the IC card is connected to the reader / writer device, and The authentication code matching process can be configured to be executed only when the authentication code matching process has not been executed even once after the last executed random number generation process, thereby preventing unauthorized access. It will be possible. The steps marked with "**" may be applied to both the depositor IC card and the bank IC card.
【0071】さて、最後に、前述した第2の問題点を解
決するための本発明の変形例を述べておく。この変形例
の要点は、リーダライタ装置から乱数生成コマンドの直
後のコマンドとして、認証コード照合コマンドが与えら
れた場合に限り、認証コード照合処理を実行するように
構成するものである。たとえば、図4の認証処理の場
合、預金者用ICカードに対しては、動作により乱数
生成コマンドが与えられ、続いて動作により認証コー
ド照合コマンドが与えられる。そして、この預金者用I
Cカードに対して正当な認証処理が行われる限り、乱数
生成コマンドの次に与えられるコマンドは、認証コード
照合コマンドであり、両コマンドの間に別なコマンドが
介在することはない。したがって、乱数生成コマンドの
直後のコマンドとして、認証コード照合コマンドが与え
られた場合に限り、認証コード照合処理を実行するよう
に構成しても、正当な認証処理を行う上では何ら支障は
生じない。一方、不正アクセス防止の面では、このよう
な構成にしておくことは大きな意味がある。すなわち、
認証コード照合コマンドは、乱数生成コマンドの直後に
与えた場合にだけ実行されるのであるから、でたらめな
認証コードXとともに連続的に認証コード照合コマンド
を与えて試行錯誤を繰り返すような不正アクセスが一切
禁止されるのみならず、乱数生成コマンドと認証コード
照合コマンドとの間に、何らかのコマンドを介在させて
何らかの不正アクセスを行おうとする試みは一切排除さ
れることになる。Finally, a modified example of the present invention for solving the above-mentioned second problem will be described. The essential point of this modification is that the authentication code matching process is executed only when the authentication code matching command is given from the reader / writer device immediately after the random number generation command. For example, in the case of the authentication processing of FIG. 4, a random number generation command is given to the IC card for depositor by an operation, and then an authentication code collation command is given by an operation. And I for this depositor
As long as proper authentication processing is performed on the C card, the command given after the random number generation command is an authentication code collation command, and another command is not interposed between both commands. Therefore, even if the authentication code collation process is executed only when the authentication code collation command is given as the command immediately after the random number generation command, no problem occurs in performing the legitimate authentication process. . On the other hand, in terms of preventing unauthorized access, it is significant to have such a configuration. That is,
The authentication code collation command is executed only when it is given immediately after the random number generation command, so that there is no unauthorized access in which the authentication code collation command is continuously given together with the random authentication code X to repeat trial and error. In addition to being prohibited, any attempt to make any unauthorized access by interposing some command between the random number generation command and the authentication code matching command will be eliminated.
【0072】このようなことを実現するためには、動作
として認証コード照合コマンドを与えたとき、ICカ
ード側では、このコマンドが乱数生成コマンドの直後の
コマンドであることを確認し、別言すれば、このコマン
ドの直前に乱数生成コマンドが与えられていたことを確
認し、そのような確認が得られた場合に限り、動作と
しての認証コード照合処理を実行するように構成すれば
よい。具体的には、上述した「**」印を付したステッ
プを付加した上に、乱数生成コマンド以外のすべてのコ
マンドの処理手順の最後に、乱数生成済フラグを「OF
F」にするステップを追加するようにすればよい。こう
しておけば、乱数生成コマンドを実行した直後には、乱
数生成済フラグは「ON」になるが、その後、他のいか
なるコマンドを実行しても、乱数生成済フラグは「OF
F」になってしまうので、結局、認証コード照合コマン
ドは、乱数生成コマンドの直後にのみ実行可能というこ
とになる。In order to realize such a thing, when an authentication code collation command is given as an operation, the IC card side confirms that this command is a command immediately after the random number generation command, and in other words For example, it may be configured such that it is confirmed that the random number generation command has been given immediately before this command, and only when such confirmation is obtained, the authentication code matching process as the operation is executed. Specifically, in addition to the step marked with "**" described above, the random number generation flag is set to "OF" at the end of the processing procedure of all commands other than the random number generation command.
The step of setting to “F” may be added. By doing so, the random number generation flag is set to “ON” immediately after the random number generation command is executed, but even if any other command is executed thereafter, the random number generation flag is set to “OF”.
Therefore, the authentication code collation command can be executed only immediately after the random number generation command.
【0073】以上、本発明を図示する実施例に基いて説
明したが、本発明はこの実施例に限定されるものではな
く、この他にも種々の態様で実施可能である。たとえ
ば、上述の実施例では、乱数暗号化コマンドの処理が、
常に同一のキー「KEY」に基いて行われるという前提
で話を進めたが、複数のキーを用意しておき、暗号化に
用いるキーを特定する情報をコマンドとともに与えるこ
とも可能である。たとえば、預金者用ICカードのEE
PROM内に、3種類の暗号化用キー「KEY1」,
「KEY2」,「KEY3」を用意しておき、銀行用I
CカードのEEPROM内にも、同じく3種類の暗号化
用キー「KEY1」,「KEY2」,「KEY3」を用
意しておいたとする。この場合、動作における乱数暗
号化コマンドを与えるときに、乱数RNDとキー番号
(3つの暗号化用キーのいずれか1つを特定する情報)
とをコマンドとともにICカードに与えるようにする。
すると、動作において、特定されたキーを用いて乱数
RNDの暗号化処理が実行されることになる。また、動
作における認証コード照合コマンドを与えるときに
も、認証コードとキー番号とをコマンドとともにICカ
ードに与えるようにし、動作において、やはり特定さ
れたキーを用いて乱数RNDの暗号化処理が実行される
ようにする。このようにすれば、複数の暗号化用キーを
用いるシステムが可能になり、本発明はこのようなシス
テムにも同様に適用可能である。Although the present invention has been described above based on the illustrated embodiment, the present invention is not limited to this embodiment, and can be implemented in various modes other than this. For example, in the above embodiment, the processing of the random number encryption command is
Although the description has been made on the assumption that the operation is always performed based on the same key "KEY", it is possible to prepare a plurality of keys and give the information specifying the key used for encryption together with the command. For example, EE for IC cards for depositors
In the PROM, three types of encryption keys "KEY1",
Prepare "KEY2" and "KEY3" in advance.
It is assumed that three types of encryption keys "KEY1", "KEY2", and "KEY3" are also prepared in the EEPROM of the C card. In this case, when giving the random number encryption command in the operation, the random number RND and the key number (information specifying any one of the three encryption keys)
And are given to the IC card together with the command.
Then, in the operation, the encryption process of the random number RND is executed using the specified key. Further, even when the authentication code collation command in the operation is given, the authentication code and the key number are given to the IC card together with the command, and in the operation, the encryption processing of the random number RND is also executed using the specified key. To do so. In this way, a system using a plurality of encryption keys becomes possible, and the present invention is applicable to such a system as well.
【0074】また、上述の実施例では、預金者用ICカ
ードと銀行用ICカードとを用いた情報処理システムに
本発明を適用したが、本発明はどのような情報処理シス
テムに適用してもかまわない。特に、本発明の適用対象
は、ICカードに限定されるものではなく、情報処理機
能を有する携帯可能情報記録媒体に広く適用可能なもの
である。Further, although the present invention is applied to the information processing system using the IC card for depositor and the IC card for bank in the above-mentioned embodiment, the present invention can be applied to any information processing system. I don't care. In particular, the application target of the present invention is not limited to an IC card, but can be widely applied to a portable information recording medium having an information processing function.
【0075】[0075]
【発明の効果】以上のとおり本発明に係る2組の携帯可
能情報記録媒体を用いた情報処理システムによれば、相
手方を正当な媒体であると認証したことを条件として、
相手方からの認証要求に応答する処理を実行するように
したため、また、認証コード照合コマンドが繰り返し実
行されることを禁止するようにしたため、十分なセキュ
リティを確保することが可能になる。As described above, according to the information processing system using the two sets of portable information recording media according to the present invention, it is necessary to authenticate the other party as a legitimate medium.
Since the processing for responding to the authentication request from the other party is executed and the repeated execution of the authentication code matching command is prohibited, sufficient security can be ensured.
【図1】2組のICカードによる相互認証を行う一般的
な情報処理システムの基本構成を説明する図である。FIG. 1 is a diagram illustrating a basic configuration of a general information processing system that performs mutual authentication using two sets of IC cards.
【図2】図1に示された第1のICカード10の内部構
成を示すブロック図である。2 is a block diagram showing an internal configuration of a first IC card 10 shown in FIG.
【図3】相互認証をセキュリティ条件にもつICカード
におけるCPUの一般的な処理手順を示す流れ図であ
る。FIG. 3 is a flow chart showing a general processing procedure of a CPU in an IC card having mutual authentication as a security condition.
【図4】第1のICカード10(預金者用ICカード)
による第2のICカード20(銀行用ICカード)の認
証処理の手順を示すダイヤグラムである。[FIG. 4] First IC card 10 (IC card for depositor)
6 is a diagram showing a procedure of an authentication process of the second IC card 20 (bank IC card) by the.
【図5】第2のICカード20(銀行用ICカード)に
よる第1のICカード10(預金者用ICカード)の認
証処理の手順を示すダイヤグラムである。FIG. 5 is a diagram showing a procedure of authentication processing of the first IC card 10 (IC card for depositor) by the second IC card 20 (IC card for bank).
【図6】本発明に係る乱数生成コマンドの処理手順を説
明する流れ図である。FIG. 6 is a flowchart illustrating a processing procedure of a random number generation command according to the present invention.
【図7】本発明に係る乱数暗号化コマンドの処理手順を
説明する流れ図である。FIG. 7 is a flowchart illustrating a processing procedure of a random number encryption command according to the present invention.
【図8】本発明に係る認証コード照合コマンドの処理手
順を説明する流れ図である。FIG. 8 is a flowchart illustrating a processing procedure of an authentication code matching command according to the present invention.
10…第1のICカード(預金者用ICカード) 11…CPU 12…ROM 13…RAM 14…EEPROM 20…第2のICカード(銀行用ICカード) 30…リーダライタ装置 10 ... 1st IC card (IC card for depositor) 11 ... CPU 12 ... ROM 13 ... RAM 14 ... EEPROM 20 ... 2nd IC card (bank IC card) 30 ... Reader / writer device
Claims (7)
報記録媒体と、情報処理機能を有する第2の携帯可能情
報記録媒体と、の双方を、これら情報記録媒体に対して
アクセスする機能を有するリーダライタ装置に接続し、
第1の携帯可能情報記録媒体が第2の携帯可能情報記録
媒体について正当な媒体であるか否かを認証する第1の
認証処理と、第2の携帯可能情報記録媒体が第1の携帯
可能情報記録媒体について正当な媒体であるか否かを認
証する第2の認証処理と、を実行し、第1の認証処理と
第2の認証処理の双方において肯定的な認証結果が得ら
れた場合に、少なくとも第1の携帯可能情報記録媒体内
の特定の記録エリアに対するアクセスが許可されるよう
に構成された情報処理システムにおいて、 第1の認証処理について肯定的な認証結果が得られた場
合に限り、第2の認証処理を実行可能としたことを特徴
とする情報処理システム。1. A function for accessing both of a first portable information recording medium having an information processing function and a second portable information recording medium having an information processing function to these information recording media. Connect to a reader / writer device that you have,
A first authentication process for authenticating whether or not the first portable information recording medium is a valid medium for the second portable information recording medium, and the second portable information recording medium is the first portable information recording medium. When a second authentication process for authenticating whether the information recording medium is a valid medium or not is executed, and a positive authentication result is obtained in both the first authentication process and the second authentication process. In an information processing system configured to permit access to at least a specific recording area in the first portable information recording medium, when a positive authentication result is obtained for the first authentication process. As far as possible, an information processing system capable of executing the second authentication process.
報記録媒体と、情報処理機能を有する第2の携帯可能情
報記録媒体と、の双方を、これら情報記録媒体に対して
アクセスする機能を有するリーダライタ装置に接続し、
第1の携帯可能情報記録媒体が第2の携帯可能情報記録
媒体について正当な媒体であるか否かを認証する第1の
認証処理と、第2の携帯可能情報記録媒体が第1の携帯
可能情報記録媒体について正当な媒体であるか否かを認
証する第2の認証処理と、が実行できるように構成され
た情報処理システムに利用される携帯可能情報記録媒体
であって、 リーダライタ装置から所定の乱数とともに乱数暗号化コ
マンドが与えられたときに、内部に記録されている所定
のキーを利用して、与えられた乱数を暗号化して認証コ
ードを作成し、作成した認証コードをリーダライタ装置
に送出する乱数暗号化処理を実行する機能を有し、 リーダライタ装置に接続した後、相手方の携帯可能情報
記録媒体が正当な媒体であると認証された場合に限り、
この乱数暗号化処理が実行されるように構成したことを
特徴とする携帯可能情報記録媒体。2. A function of accessing both of a first portable information recording medium having an information processing function and a second portable information recording medium having an information processing function, to the information recording medium. Connect to a reader / writer device that you have,
A first authentication process for authenticating whether or not the first portable information recording medium is a valid medium for the second portable information recording medium, and the second portable information recording medium is the first portable information recording medium. A portable information recording medium used in an information processing system configured to perform a second authentication process for authenticating an information recording medium as to whether it is a valid medium, When a random number encryption command is given together with a predetermined random number, a given key stored inside is used to encrypt the given random number to create an authentication code, and the created authentication code is read by a reader / writer. It has the function of executing the random number encryption process to be sent to the device, and only when the portable information recording medium of the other party is authenticated as a valid medium after connecting to the reader / writer device.
A portable information recording medium characterized in that the random number encryption process is executed.
において、 リーダライタ装置に接続されている間だけ記憶内容が保
持される揮発性メモリ内に、相手方認証済情報を記録す
る領域を設け、相手方の携帯可能情報記録媒体が正当な
媒体であると認証された場合に、前記領域に相手方認証
済情報を書き込む処理を行い、 リーダライタ装置から乱数暗号化コマンドが与えられた
ときに、前記領域を参照し、相手方認証済情報が書き込
まれている場合にのみ、乱数暗号化処理が実行されるよ
うに構成したことを特徴とする携帯可能情報記録媒体。3. The portable information recording medium according to claim 2, wherein an area for recording the other party authenticated information is provided in a volatile memory that retains stored contents only while connected to the reader / writer device. If the portable information recording medium of the other party is authenticated as a valid medium, the process of writing the other party authenticated information in the area is performed, and when the random number encryption command is given from the reader / writer device, A portable information recording medium, characterized in that the random number encryption processing is executed only when the other party authenticated information is written by referring to the area.
報記録媒体と、情報処理機能を有する第2の携帯可能情
報記録媒体と、の双方を、これら情報記録媒体に対して
アクセスする機能を有するリーダライタ装置に接続し、
第1の携帯可能情報記録媒体が第2の携帯可能情報記録
媒体について正当な媒体であるか否かを認証する第1の
認証処理と、第2の携帯可能情報記録媒体が第1の携帯
可能情報記録媒体について正当な媒体であるか否かを認
証する第2の認証処理と、が実行できるように構成され
た情報処理システムに利用される携帯可能情報記録媒体
であって、 リーダライタ装置から乱数生成コマンドが与えられたと
きに、内部で乱数を生成し、生成した乱数をリーダライ
タ装置に送出する乱数生成処理を実行する機能と、 リーダライタ装置から、相手方の携帯可能情報記録媒体
内で作成された認証コードとともに認証コード照合コマ
ンドが与えられたときに、内部に記録されている所定の
キーを利用して、過去に実行した乱数生成処理によって
生成された乱数を暗号化して認証コードを作成し、この
作成した認証コードがリーダライタ装置から与えられた
認証コードと一致するか否かを照合し、照合結果をリー
ダライタ装置に送出する認証コード照合処理を実行する
機能と、 を有し、 リーダライタ装置に接続した後、少なくとも1回は乱数
生成処理が実行されており、かつ、最後に実行された乱
数生成処理の後に、まだ1回も認証コード照合処理が実
行されていない場合に限り、認証コード照合処理が実行
されるように構成したことを特徴とする携帯可能情報記
録媒体。4. A function of accessing both of a first portable information recording medium having an information processing function and a second portable information recording medium having an information processing function. Connect to a reader / writer device that you have,
A first authentication process for authenticating whether or not the first portable information recording medium is a valid medium for the second portable information recording medium, and the second portable information recording medium is the first portable information recording medium. A portable information recording medium used in an information processing system configured to perform a second authentication process for authenticating an information recording medium as to whether it is a valid medium, When a random number generation command is given, a function to generate a random number internally and send the generated random number to the reader / writer device, and the function to execute the random number generation process from the reader / writer device to the portable information recording medium of the other party. When the authentication code collation command is given together with the created authentication code, it is generated by the random number generation process executed in the past by using the predetermined key recorded inside. An authentication code is created by encrypting a random number, checking whether the created authentication code matches the authentication code given by the reader / writer device, and sending the verification result to the reader / writer device. It has a function to execute, and the random number generation process is executed at least once after connecting to the reader / writer device, and the authentication code verification is performed once even after the last executed random number generation process. A portable information recording medium, characterized in that the authentication code matching process is executed only when the process is not executed.
において、 リーダライタ装置に接続されている間だけ記憶内容が保
持される揮発性メモリ内に、乱数生成済情報を記録する
領域を設け、 乱数生成処理を実行した後には、この領域に「生成済」
を示す情報を書き込む処理を行い、 認証コード照合処理を実行した後には、この領域に「未
生成」を示す情報を書き込む処理を行い、 リーダライタ装置から認証コード照合コマンドが与えら
れたときに、前記領域を参照し、「生成済」を示す情報
が書き込まれている場合にのみ、認証コード照合処理が
実行されるように構成したことを特徴とする携帯可能情
報記録媒体。5. The portable information recording medium according to claim 4, wherein an area for recording random number generated information is provided in a volatile memory that retains stored contents only while connected to a reader / writer device. , After performing the random number generation process, "generated" in this area
After performing the process of writing the information indicating the, and executing the authentication code collation process, the process of writing the information indicating "ungenerated" in this area is performed, and when the authentication code collation command is given from the reader / writer device, A portable information recording medium, characterized in that the authentication code matching process is executed only when information indicating "generated" is written by referring to the area.
報記録媒体と、情報処理機能を有する第2の携帯可能情
報記録媒体と、の双方を、これら情報記録媒体に対して
アクセスする機能を有するリーダライタ装置に接続し、
第1の携帯可能情報記録媒体が第2の携帯可能情報記録
媒体について正当な媒体であるか否かを認証する第1の
認証処理と、第2の携帯可能情報記録媒体が第1の携帯
可能情報記録媒体について正当な媒体であるか否かを認
証する第2の認証処理と、が実行できるように構成され
た情報処理システムに利用される携帯可能情報記録媒体
であって、 リーダライタ装置から乱数生成コマンドが与えられたと
きに、内部で乱数を生成し、生成した乱数をリーダライ
タ装置に送出する乱数生成処理を実行する機能と、 リーダライタ装置から、相手方の携帯可能情報記録媒体
内で作成された認証コードとともに認証コード照合コマ
ンドが与えられたときに、内部に記録されている所定の
キーを利用して、過去に実行した乱数生成処理によって
生成された乱数を暗号化して認証コードを作成し、この
作成した認証コードがリーダライタ装置から与えられた
認証コードと一致するか否かを照合し、照合結果をリー
ダライタ装置に送出する認証コード照合処理を実行する
機能と、 を有し、 リーダライタ装置から乱数生成コマンドの直後のコマン
ドとして、認証コード照合コマンドが与えられた場合に
限り、認証コード照合処理が実行されるように構成した
ことを特徴とする携帯可能情報記録媒体。6. A function for accessing both of a first portable information recording medium having an information processing function and a second portable information recording medium having an information processing function, to the information recording medium. Connect to a reader / writer device that you have,
A first authentication process for authenticating whether or not the first portable information recording medium is a valid medium for the second portable information recording medium, and the second portable information recording medium is the first portable information recording medium. A portable information recording medium used in an information processing system configured to perform a second authentication process for authenticating an information recording medium as to whether it is a valid medium, When a random number generation command is given, a function that internally generates a random number and sends the generated random number to the reader / writer device is executed. When the authentication code collation command is given together with the created authentication code, it is generated by the random number generation process executed in the past by using the predetermined key recorded inside. An authentication code is created by encrypting a random number, and the created authentication code is checked to see if it matches the authentication code given by the reader / writer device. It has a function to execute, and is configured such that the authentication code matching process is executed only when the authentication code matching command is given as a command immediately after the random number generation command from the reader / writer device. Portable information recording medium.
において、 リーダライタ装置に接続されている間だけ記憶内容が保
持される揮発性メモリ内に、乱数生成済情報を記録する
領域を設け、 乱数生成コマンドに基く処理を実行した後には、この領
域に「生成済」を示す情報を書き込む処理を行い、 乱数生成コマンド以外のコマンドに基く処理を実行した
後には、この領域に「未生成」を示す情報を書き込む処
理を行い、 リーダライタ装置から認証コード照合コマンドが与えら
れたときに、前記領域を参照し、「生成済」を示す情報
が書き込まれている場合にのみ、認証コード照合処理が
実行されるように構成したことを特徴とする携帯可能情
報記録媒体。7. The portable information recording medium according to claim 6, wherein an area for recording random number generated information is provided in a volatile memory that retains stored contents only while being connected to a reader / writer device. , After executing the processing based on the random number generation command, the processing to write the information indicating "generated" in this area is performed, and after the processing based on the commands other than the random number generation command is executed, When the authentication code collation command is given from the reader / writer device, the area is referred to and the authentication code collation is performed only when the information indicating "generated" is written. A portable information recording medium, characterized in that processing is executed.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP16809495A JP3652409B2 (en) | 1995-06-09 | 1995-06-09 | Portable information recording medium |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP16809495A JP3652409B2 (en) | 1995-06-09 | 1995-06-09 | Portable information recording medium |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH08339429A true JPH08339429A (en) | 1996-12-24 |
JP3652409B2 JP3652409B2 (en) | 2005-05-25 |
Family
ID=15861737
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP16809495A Expired - Lifetime JP3652409B2 (en) | 1995-06-09 | 1995-06-09 | Portable information recording medium |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP3652409B2 (en) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2003501759A (en) * | 1999-06-03 | 2003-01-14 | ジェムプリュス | How to pre-check programs stored in additional chip card of terminal |
WO2007132518A1 (en) * | 2006-05-15 | 2007-11-22 | Renesas Technology Corp. | Master device and data processing system |
-
1995
- 1995-06-09 JP JP16809495A patent/JP3652409B2/en not_active Expired - Lifetime
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2003501759A (en) * | 1999-06-03 | 2003-01-14 | ジェムプリュス | How to pre-check programs stored in additional chip card of terminal |
WO2007132518A1 (en) * | 2006-05-15 | 2007-11-22 | Renesas Technology Corp. | Master device and data processing system |
JP4845152B2 (en) * | 2006-05-15 | 2011-12-28 | ルネサスエレクトロニクス株式会社 | Master device and data processing system |
Also Published As
Publication number | Publication date |
---|---|
JP3652409B2 (en) | 2005-05-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP0973125B1 (en) | Method for managing security for card-type storage medium, and a card-type storage medium and a transaction apparatus therefor | |
US6454173B2 (en) | Smart card technology | |
US5513261A (en) | Key management scheme for use with electronic cards | |
US20050086497A1 (en) | IC card system | |
JPH04143881A (en) | Mutual authenticating system | |
JPH01500932A (en) | How to check external permission data using a portable object such as a memory card | |
JPH0682405B2 (en) | Test program start method | |
JPH06501324A (en) | Smart card validation device and method | |
JPH02170272A (en) | Confidential information verification method | |
US7246375B1 (en) | Method for managing a secure terminal | |
JP2935613B2 (en) | IC card and IC card system | |
JPH02165290A (en) | IC card and its operation method | |
JP2003123032A (en) | IC card terminal and personal authentication method | |
JPH0822517A (en) | Forgery preventing system for hybrid card | |
JP3652409B2 (en) | Portable information recording medium | |
JP3792808B2 (en) | Authentication method and authentication system | |
JPS63248246A (en) | Password collation system | |
JP3128567B2 (en) | IC card system | |
JPH11328325A (en) | Ic card system | |
JP3231466B2 (en) | Information recording medium storing keys | |
JPH09106456A (en) | Personal identification method in card utilization, personal identification system using ic card and ic card used for the system | |
JP4601329B2 (en) | Electronic authentication device primary issuing device, electronic authentication device issuing system, electronic authentication device secondary issuing device, electronic authentication device primary issuing method, electronic authentication device issuing method, and electronic authentication device secondary issuing method | |
JPH07200756A (en) | Portable data carrier processing system | |
JP2002373320A (en) | Portable storage device with illegal access prevention function | |
JPH0997315A (en) | Transaction information processing method, transaction information processing apparatus, and information recording medium |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20040908 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20041026 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20041214 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20050222 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20050223 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090304 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100304 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100304 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110304 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110304 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120304 Year of fee payment: 7 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130304 Year of fee payment: 8 |