JP2005027338A - Authentication method, and information processing apparatus - Google Patents
Authentication method, and information processing apparatus Download PDFInfo
- Publication number
- JP2005027338A JP2005027338A JP2004248312A JP2004248312A JP2005027338A JP 2005027338 A JP2005027338 A JP 2005027338A JP 2004248312 A JP2004248312 A JP 2004248312A JP 2004248312 A JP2004248312 A JP 2004248312A JP 2005027338 A JP2005027338 A JP 2005027338A
- Authority
- JP
- Japan
- Prior art keywords
- information processing
- cipher
- processing apparatus
- key
- data
- 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
Images
Abstract
Description
本発明は、認証方法、および情報処理装置に関し、特に、複数の情報処理装置が相互に認証を行う認証方法、および情報処理装置に関する。 The present invention relates to an authentication method and an information processing device, and more particularly to an authentication method and an information processing device in which a plurality of information processing devices authenticate each other.
情報処理技術の発展に伴い、大量の情報が所定の伝送路を介して通信されている。情報が通信される伝送路には、第三者(送信者および受信者以外の者)が、通信されているデータを盗聴することが可能なものが多い。 With the development of information processing technology, a large amount of information is communicated via a predetermined transmission path. In many transmission paths through which information is communicated, a third party (a person other than the sender and the receiver) can eavesdrop on the data being communicated.
このような伝送路を利用して、情報を第三者に漏洩させずに、通信を行う場合、しばしば、暗号が利用される。暗号を利用し、暗号化されたデータを通信することにより、暗号化されたデータを盗聴することができても、第三者が、そのデータから通信した情報の内容を読み出すことは困難である。 When communication is performed using such a transmission line without leaking information to a third party, encryption is often used. Even if the encrypted data can be eavesdropped by communicating the encrypted data using encryption, it is difficult for a third party to read the content of the communicated information from the data. .
このような暗号を生成する暗号化方法には、所定の鍵を利用して、平文(送信する情報)から、暗号(実際に送信されるデータ)を生成するものが利用されることが多い。 As an encryption method for generating such a cipher, a method for generating a cipher (data to be actually transmitted) from plain text (information to be transmitted) using a predetermined key is often used.
このような、鍵を利用した暗号には、共通鍵暗号と公開鍵暗号の2種類がある。共通鍵暗号においては、暗号化するときの鍵(暗号化鍵データ)と、復号化するときの鍵(復号化鍵データ)が同一である。例えば、共通鍵暗号としては、Feistel暗号の1つであるDES(Data Encryption Standard)方式などがよく利用されている。一方、公開鍵暗号においては、暗号化鍵データと復号化鍵データが異なる。そして、受信者は、送信者のために、それらの鍵のうち、暗号化鍵データを公開するが、復号化鍵データは公開せずに隠しておく(即ち、復号化鍵データは、受信者のみが知っている)。 There are two types of encryption using a key, common key encryption and public key encryption. In common key cryptography, the key for encryption (encryption key data) and the key for decryption (decryption key data) are the same. For example, a DES (Data Encryption Standard) method, which is one of Feistel ciphers, is often used as a common key cipher. On the other hand, in public key cryptography, encryption key data and decryption key data are different. Then, for the sender, the receiver publishes the encryption key data out of those keys, but hides the decryption key data without revealing it (that is, the decryption key data is stored in the receiver). Only know).
図14は、このような鍵(共通鍵)を利用した通信(秘密通信)の一例を示している。送信者101は、送信する情報(平文M)を、鍵Kを利用して暗号Cに暗号化する。そして、送信者101は、暗号Cを、所定の伝送路を介して受信者102に送信する。
FIG. 14 shows an example of communication (secret communication) using such a key (common key). The
受信者102は、暗号Cを受け取り、送信者101が有する鍵Kと同一の鍵Kを利用して、その暗号Cを復号化し、送信者101により送信された情報(平文M)を獲得する。
The
このようにして通信が行われているとき、暗号Cを盗聴しても、第三者が、送信された情報(平文M)を獲得することは困難である。 When communication is performed in this way, it is difficult for a third party to acquire the transmitted information (plain text M) even if the cipher C is wiretapped.
さらに、このような鍵を利用して、通信相手が、正規の受信者であるか否かを判断する(認証する)ことができる。図15は、鍵(共通鍵)を利用した認証の一例を示している。認証する側111は、乱数Mを発生し、その乱数Mを認証される側112に送信する。認証する側111は、認証される側112に、その乱数Mを、鍵Kで暗号Cに暗号化させ、その暗号Cを送信させる。そして、認証する側111は、その暗号Cを受信し、鍵Kで平文M1に復号化する。そして、認証する側111は、乱数Mと平文M1が一致するか否かを判断し、一致する場合、認証される側112を認証する。
Furthermore, it is possible to determine (authenticate) whether or not the communication partner is a legitimate receiver by using such a key. FIG. 15 shows an example of authentication using a key (common key). The
このようにして、送信者(認証する側111)は、受信者(認証される側112)が正規の受信者(送信者が有する鍵と同一の鍵を有する)であるか否かを判断する(認証する)ことができる。 In this way, the sender (authenticating side 111) determines whether or not the receiver (authenticating side 112) is a legitimate receiver (having the same key as the sender has). (Authenticating).
このとき、平文である乱数Mと、それを暗号化した暗号Cを、第三者が盗聴したとしても、平文Mと暗号Cから、鍵Kを生成することは困難であるので、送信者(認証する側111)の鍵Kと同一の鍵Kを有する正規の受信者のみが認証される。 At this time, even if a third party eavesdrops on the random number M that is plaintext and the cipher C that encrypts the random number M, it is difficult to generate the key K from the plaintext M and the cipher C. Only legitimate recipients who have the same key K as the key K of the authenticating side 111) are authenticated.
しかしながら、上述の認証方法においては、所定の送受信者が、他の送受信者を認証するだけであるので、例えば、リーダ/ライタ(R/W)とICカードで構成されるカードシステムに、上述の認証方法を適用した場合、R/Wは、通信相手が正規のICカードであるか否かを判断する(通信相手を認証する)ことができるが、ICカードは、通信相手が正規のR/Wであるか否かを判断することが困難であるという問題を有している。 However, in the above-described authentication method, a predetermined sender / receiver only authenticates other sender / receivers. When the authentication method is applied, the R / W can determine whether or not the communication partner is a regular IC card (authenticate the communication partner). There is a problem that it is difficult to determine whether or not W.
本発明は、このような状況に鑑みてなされたものであり、複数の情報処理装置において、相互に認証を行い、正規の通信相手と通信を行うようにするものである。 The present invention has been made in view of such a situation, and a plurality of information processing apparatuses authenticate each other and communicate with a regular communication partner.
本発明の認証方法は、第1の情報処理装置の暗号化手段により第1の鍵を用いて乱数生成手段により生成された第1の乱数が第1の暗号に暗号化され、暗号化された第1の暗号を、第2の情報処理装置に送信し、第1の情報処理装置から送信された第1の暗号は、第2の情報処理装置の復号手段により第1の鍵を用いて復号された後、第2の情報処理装置の暗号化手段により第2の鍵を用いて第2の暗号に暗号化されるとともに、第2の情報処理装置の乱数生成手段により生成された第2の乱数は、第2の情報処理装置の暗号化手段により第2の鍵を用いて第3の暗号に暗号化され、第2の情報処理装置から第2の暗号および第3の暗号を受信し、受信された第2の暗号および第3の暗号が第1の情報処理装置の復号手段により第2の鍵を用いてそれぞれ第4のデータおよび第5のデータに復号され、復号された第4のデータと第1の乱数を比較し、比較結果が一致した場合、第2の情報処理装置を認証し、第1の情報処理装置の暗号化手段により第5のデータが第1の鍵を用いて暗号化された第4の暗号を第2の情報処理装置に送信し、送信された第4の暗号は、第2の情報処理装置の復号手段により第6のデータに復号され、復号された第6のデータと第2の乱数が比較され、比較結果が一致した場合、第2の情報処理装置により第1の情報処理装置が認証されることを特徴とする。 According to the authentication method of the present invention, the first random number generated by the random number generation unit using the first key is encrypted by the encryption unit of the first information processing apparatus and encrypted. The first cipher is transmitted to the second information processing apparatus, and the first cipher transmitted from the first information processing apparatus is decrypted by using the first key by the decryption means of the second information processing apparatus. Then, the second encryption unit of the second information processing apparatus encrypts the second cipher using the second key and the second information generated by the random number generation unit of the second information processing apparatus. The random number is encrypted into the third cipher by using the second key by the encryption unit of the second information processing apparatus, receives the second cipher and the third cipher from the second information processing apparatus, The received second cipher and third cipher use the second key by the decryption means of the first information processing apparatus. The fourth data and the fifth data are respectively decrypted, and the decrypted fourth data and the first random number are compared. If the comparison results match, the second information processing apparatus is authenticated, and the first data The fourth cipher in which the fifth data is encrypted by using the first key by the encryption unit of the information processing apparatus is transmitted to the second information processing apparatus, and the transmitted fourth cipher is The decryption means of the information processing apparatus 2 decrypts the data into the sixth data, and the decrypted sixth data is compared with the second random number. If the comparison results match, the second information processing apparatus The information processing apparatus is authenticated.
第1の情報処理装置は、第1の暗号を送信してから第2の暗号および第3の暗号を受信するまでの時間を監視するようにすることができる。 The first information processing apparatus can monitor the time from when the first cipher is transmitted until the second cipher and the third cipher are received.
第2の情報処理装置による第2の暗号および第3の暗号の送信から第4の暗号を受信するまでの時間が所定の時間を超えた場合、第2の情報処理装置による第1の情報処理装置の認証は禁止されるようにすることができる。 When the time from the transmission of the second cipher and the third cipher by the second information processing device to the reception of the fourth cipher exceeds a predetermined time, the first information processing by the second information processing device Device authentication may be prohibited.
第2の情報処理装置は、ICカードで構成され、第1の情報処理装置は、ICカードとデータ通信を行うリーダライタで構成されるようにすることができる。 The second information processing apparatus may be configured with an IC card, and the first information processing apparatus may be configured with a reader / writer that performs data communication with the IC card.
本発明の第1の情報処理装置は、送信手段は、乱数生成手段により生成された第1の乱数が暗号化手段により第1の鍵を用いて暗号化された第1の暗号を他の情報処理装置に送信し、受信手段は、他の情報処理装置で第1の暗号が復号された後、暗号化された第2の暗号、および他の情報処理装置で生成された第2の乱数が暗号化された第3の暗号を受信し、認証手段は、受信手段により受信された第2の暗号を第2の鍵を用いて復号した第4のデータと第1の乱数を比較し、比較結果が一致した場合、第3の暗号が復号手段により第2の鍵を用いて復号された第5のデータを、第1の鍵を用いて第4の暗号に暗号化して他の情報処理装置に送信するようにし、比較結果が一致しない場合、処理を終了するようにし、送信される第4の暗号は、他の情報処理装置が、情報処理装置を認証するための暗号データであることを特徴とする。 In the first information processing apparatus according to the present invention, the transmission unit transmits the first cipher, in which the first random number generated by the random number generation unit is encrypted by the encryption unit using the first key, to other information. After the first cipher is decrypted by the other information processing apparatus, the receiving means receives the encrypted second cipher and the second random number generated by the other information processing apparatus. The encrypted third cipher is received, and the authentication means compares the first random number with the fourth data obtained by decrypting the second cipher received by the receiving means with the second key, and compares If the results match, the fifth data obtained by decrypting the third cipher using the second key by the decrypting means is encrypted into the fourth cipher using the first key, and another information processing apparatus is obtained. If the comparison results do not match, the process ends, and the fourth cipher that is sent is Other information processing apparatus, characterized in that it is a cryptographic data for authenticating the information processing apparatus.
認証手段は、送信手段により第1の暗号が送信されてから、受信手段により第2の暗号および第3の暗号が受信されるまでの時間を監視するようにすることができる。 The authentication unit can monitor the time from when the first cipher is transmitted by the transmitting unit to when the second cipher and the third cipher are received by the receiving unit.
他の情報処理装置は、ICカードであるようにすることができる。 The other information processing apparatus can be an IC card.
本発明の第2の情報処理装置は、受信手段は、他の情報処理装置で生成された第1の乱数が暗号化された第1の暗号を受信し、復号手段は、受信手段により受信された第1の暗号を第1の鍵を用いて復号して第2のデータを生成し、暗号化手段は、第2のデータを第2の鍵を用いて第2の暗号に暗号化するとともに、乱数生成手段により生成された第2の乱数を第2の鍵で第3の暗号に暗号化し、送信手段は、暗号化手段により暗号化された第2の暗号および第3の暗号を他の情報処理装置に送信し、受信手段は、他の情報処理装置で、第2の暗号が復号され、第1の乱数と比較され、比較結果が一致した場合に、情報処理装置が認証された結果、第3の暗号が復号されて、暗号化された第4の暗号を受信し、復号手段は、受信手段により受信された第4の暗号を第1の鍵を用いて復号して第6のデータを生成し、認証手段は、第6のデータと乱数生成手段により生成された第2の乱数を比較し、比較結果が一致した場合、他の情報処理装置を認証するようにし、比較結果が一致しない場合、処理を終了するようにすることを特徴とする。 In the second information processing apparatus of the present invention, the receiving means receives the first cipher in which the first random number generated by the other information processing apparatus is encrypted, and the decrypting means is received by the receiving means. The first cipher is decrypted using the first key to generate second data, and the encryption means encrypts the second data into the second cipher using the second key. The second random number generated by the random number generating means is encrypted into a third cipher with the second key, and the transmitting means transmits the second cipher and the third cipher encrypted by the encrypting means to other ciphers. The information is transmitted to the information processing apparatus, and the receiving means is the result of the authentication of the information processing apparatus when the second cipher is decrypted by the other information processing apparatus and compared with the first random number and the comparison result matches. The third cipher is decrypted and the encrypted fourth cipher is received, and the decrypting means receives it by the receiving means. The fourth cipher is decrypted using the first key to generate sixth data, and the authentication means compares the sixth data with the second random number generated by the random number generation means, and compares If the results match, another information processing apparatus is authenticated, and if the comparison results do not match, the process is terminated.
認証手段は、送信手段により第2の暗号および第3の暗号が送信されてから、受信手段により第4の暗号が受信されるまでの時間が所定の時間を超えた場合、他の情報処理装置の認証を禁止するようにすることができる。 When the time from when the second cipher and the third cipher are transmitted by the transmitting unit to when the fourth cipher is received by the receiving unit exceeds a predetermined time, the authenticating unit Authentication can be prohibited.
他の情報処理装置は、リーダライタで構成されるようにすることができる。 The other information processing apparatus can be configured by a reader / writer.
第1の本発明においては、第1の情報処理装置の暗号化手段により第1の鍵を用いて乱数生成手段により生成された第1の乱数が第1の暗号に暗号化され、暗号化された第1の暗号が、第2の情報処理装置に送信される。第1の情報処理装置から送信された第1の暗号は、第2の情報処理装置の復号手段により第1の鍵を用いて復号された後、第2の情報処理装置の暗号化手段により第2の鍵を用いて第2の暗号に暗号化されるとともに、第2の情報処理装置の乱数生成手段により生成された第2の乱数は、第2の情報処理装置の暗号化手段により第2の鍵を用いて第3の暗号に暗号化される。そして、第2の情報処理装置から第2の暗号および第3の暗号が受信され、受信された第2の暗号および第3の暗号が第1の情報処理装置の復号手段により第2の鍵を用いてそれぞれ第4のデータおよび第5のデータに復号され、復号された第4のデータと第1の乱数が比較され、比較結果が一致した場合、第2の情報処理装置が認証され、第1の情報処理装置の暗号化手段により第5のデータが第1の鍵を用いて暗号化された第4の暗号が第2の情報処理装置に送信される。送信された第4の暗号は、第2の情報処理装置の復号手段により第6のデータに復号され、復号された第6のデータと第2の乱数が比較され、比較結果が一致した場合、第2の情報処理装置により第1の情報処理装置が認証される。 In the first aspect of the present invention, the first random number generated by the random number generation means using the first key by the encryption means of the first information processing apparatus is encrypted into the first encryption and encrypted. The first cipher is transmitted to the second information processing apparatus. The first cipher transmitted from the first information processing apparatus is decrypted by the decryption means of the second information processing apparatus using the first key, and then encrypted by the encryption means of the second information processing apparatus. The second random number generated by the random number generation unit of the second information processing apparatus is encrypted by the encryption unit of the second information processing apparatus. Is encrypted to the third cipher using the key. Then, the second cipher and the third cipher are received from the second information processing apparatus, and the received second cipher and the third cipher receive the second key by the decryption means of the first information processing apparatus. The fourth data and the fifth data are respectively decrypted using the decrypted fourth data and the first random number are compared, and if the comparison results match, the second information processing apparatus is authenticated, A fourth cipher in which the fifth data is encrypted using the first key by the encryption unit of the one information processing apparatus is transmitted to the second information processing apparatus. The transmitted fourth cipher is decrypted into the sixth data by the decrypting means of the second information processing device, the decrypted sixth data is compared with the second random number, and the comparison result matches, The first information processing apparatus is authenticated by the second information processing apparatus.
第2の本発明においては、生成された第1の乱数が第1の鍵を用いて暗号化された第1の暗号が他の情報処理装置に送信される。他の情報処理装置で第1の暗号が復号された後、暗号化された第2の暗号、および他の情報処理装置で生成された第2の乱数が暗号化された第3の暗号が受信され、受信された第2の暗号が第2の鍵を用いて復号された第4のデータと、第1の乱数が比較される。そして、比較結果が一致した場合、第3の暗号が第2の鍵を用いて復号された第5のデータが、第1の鍵を用いて第4の暗号に暗号化されて他の情報処理装置に送信されるようにされ、比較結果が一致しない場合、処理が終了されるようにされ、送信される第4の暗号は、他の情報処理装置が、情報処理装置を認証するための暗号データである。 In the second aspect of the present invention, the first cipher in which the generated first random number is encrypted using the first key is transmitted to another information processing apparatus. After the first cipher is decrypted by the other information processing apparatus, the encrypted second cipher and the third cipher obtained by encrypting the second random number generated by the other information processing apparatus are received. Then, the first random number is compared with the fourth data obtained by decrypting the received second cipher using the second key. When the comparison results match, the fifth data obtained by decrypting the third cipher using the second key is encrypted into the fourth cipher using the first key, and other information processing is performed. When the comparison result does not match, the process is terminated, and the transmitted fourth cipher is a cipher for another information processing apparatus to authenticate the information processing apparatus. It is data.
第3の発明においては、他の情報処理装置で生成された第1の乱数が暗号化された第1の暗号が受信され、受信された第1の暗号を第1の鍵を用いて復号して第2のデータが生成され、第2のデータが第2の鍵を用いて第2の暗号に暗号化されるとともに、生成された第2の乱数が第2の鍵で第3の暗号に暗号化され、暗号化された第2の暗号および第3の暗号が他の情報処理装置に送信される。他の情報処理装置で、第2の暗号が復号され、第1の乱数と比較され、比較結果が一致した場合に、情報処理装置が認証された結果、第3の暗号が復号されて、暗号化された第4の暗号が受信され、受信された第4の暗号を第1の鍵を用いて復号して第6のデータが生成され、第6のデータと第2の乱数が比較される。そして、比較結果が一致した場合、他の情報処理装置が認証されるようにされ、比較結果が一致しない場合、処理が終了される。 In the third invention, the first cipher obtained by encrypting the first random number generated by another information processing apparatus is received, and the received first cipher is decrypted by using the first key. Second data is generated, and the second data is encrypted into the second cipher using the second key, and the generated second random number is converted into the third cipher with the second key. The encrypted second cipher and third cipher are transmitted to another information processing apparatus. In another information processing apparatus, the second cipher is decrypted and compared with the first random number. When the comparison result matches, the information processing apparatus is authenticated, and as a result, the third cipher is decrypted and the cipher The encrypted fourth cipher is received, the received fourth cipher is decrypted using the first key, the sixth data is generated, and the sixth data is compared with the second random number . If the comparison result matches, the other information processing apparatus is authenticated, and if the comparison result does not match, the process ends.
本発明によれば、2つの情報処理装置が相互に認証を行うことができる。また、本発明によれば、相互に認証した2つの情報処理装置で通信を行うことができる。 According to the present invention, two information processing apparatuses can authenticate each other. Further, according to the present invention, communication can be performed by two information processing apparatuses that are mutually authenticated.
図1は、R/W1およびICカード2を利用した非接触カードシステムの一例を示している。R/W1およびICカード2は、電磁波を利用して非接触で、データの送受信を行う。
FIG. 1 shows an example of a contactless card system using the R /
例えば、R/W1が、リードコマンドをICカード2に送信すると、ICカード2は、そのリードコマンドを受信し、リードコマンドで指示されたデータをR/W1に送信するようになされている。
For example, when the R /
また、R/W1がデータをICカード2に送信すると、ICカード2は、そのデータを受信し、受信したデータを、内蔵するメモリ84(図6)(記憶手段)に記憶し、そのデータを記憶したことを表す所定の応答信号をR/W1に送信するようになされている。
When the R /
図2は、本発明の一実施例であるR/W1の構成を示している。
FIG. 2 shows a configuration of the R /
R/W1においては、制御部11は、内蔵するプログラムに応じて、各種処理を行うようになされている。例えば、制御部11は、ICカード2に送信するデータを、暗号部12(暗号化手段)に出力するとともに、復号部13(復号化手段)より供給された、ICカード2からの応答データを処理するようになされている。
In R / W1, the
また、制御部11は、メモリ14(記憶手段)から、暗号化または復号化に利用される鍵KA(第2の鍵)または鍵KB(第1の鍵)を読み出し、その鍵KAまたは鍵KBを、暗号部12または復号部13に出力するようになされている。
Further, the
さらに、制御部11は、インタフェース15を介して、メインコンピュータ(図示せず)と通信を行うようになされている。
Further, the
メモリ14は、制御部11における処理に使用されるデータなどを記憶している他、暗号化または復号化において利用される2つの鍵KA,KBを記憶している。
The
暗号部12は、制御部11より供給されたデータを、所定の鍵で暗号化し、暗号化したデータ(暗号)を送信部16(送信手段)に出力するようになされている。
The
送信部16は、暗号部12より供給されたデータ(暗号)を、所定の変調方式(例えば、PSK(Phase Shift Keying)変調方式)で変調し、生成された変調波を、アンテナ部17を介してICカード2に送信するようになされている。
The
受信部18(受信手段)は、アンテナ部17を介して、ICカード2により送信された変調波を受信し、その変調波に対応する復調方式で復調し、復調したデータ(暗号)を復号部13に出力するようになされている。
The receiving unit 18 (receiving unit) receives the modulated wave transmitted from the IC card 2 via the
復号部13は、受信部18より供給されたデータ(暗号)を、所定の鍵で復号化し、復号化したデータを制御部11に出力するようになされている。
The
図3は、図2の暗号部12の一構成例を示している。暗号部12においては、鍵保存部31は、制御部11より供給された鍵Kを保持するようになされている。
FIG. 3 shows a configuration example of the
データランダム化部32は、鍵保存部31から鍵Kを読み出し、その鍵Kで、制御部31より供給されたデータを暗号化し、生成された暗号を送信部16に出力するようになされている。
The
図4は、図3のデータランダム化部32の一構成例を示している。このデータランダム化部32は、複数のインボリューション処理を行うDES方式(例えば、「暗号と情報セキュリティ」辻井 重男、笠原 正雄 編著、1990年、昭晃堂に記載されている)で暗号を生成するようになされている。このデータランダム化部32においては、鍵データ生成回路61は、鍵保存部31から読み出した鍵Kから、16個の鍵データK1乃至K16を算出し、鍵データK1乃至K16を、演算回路62−1乃至62−16にそれぞれ出力するようになされている。
FIG. 4 shows a configuration example of the
レジスタ63は、制御部11より供給された64ビット(8バイト)のデータを保持し、その64ビットのデータのうちの上位32ビットを加算器64−1に出力し、下位32ビットを演算回路62−1および加算器64−2に出力するようになされている。
The
演算回路62−i(i=1,・・・,16)は、レジスタ63の下位32ビット(演算回路62−1の場合)または加算器64−(i−1)(演算回路62−2乃至62−16の場合)より供給された32ビットのデータに対して、鍵データ生成回路61より供給された鍵データKiを利用して、所定の変換を行い、変換後の32ビットのデータを加算器64−iに出力するようになされている。
The arithmetic circuit 62-i (i = 1,..., 16) includes the lower 32 bits of the register 63 (in the case of the arithmetic circuit 62-1) or the adder 64- (i-1) (the arithmetic circuits 62-2 to 6-2). 62-16), the 32-bit data supplied from the key
加算器64−i(i=1,・・・,16)は、レジスタ63の上位32ビット(加算器64−1の場合)、レジスタ63の下位32ビット(加算器64−2の場合)、および、加算器64−(i−2)(加算器64−3乃至64−16の場合)のいずれかより供給された32ビットのデータと、演算回路62−iより供給された32ビットのデータの排他的論理和(ビット毎の排他的論理和)を計算し、その排他的論理和(32ビット)を、加算器64−(i+2)(加算器64−1乃至64−14の場合)、レジスタ65の下位32ビット(加算器64−15の場合)、および、レジスタ65の上位32ビット(加算器64−16の場合)のいずれか、並びに、演算回路62−(i+1)(加算器64−1乃至64−15の場合)に出力するようになされている。 The adder 64-i (i = 1,..., 16) includes the upper 32 bits of the register 63 (in the case of the adder 64-1), the lower 32 bits of the register 63 (in the case of the adder 64-2), And 32-bit data supplied from any of the adders 64- (i-2) (in the case of the adders 64-3 to 64-16) and 32-bit data supplied from the arithmetic circuit 62-i And the exclusive OR (32 bits) is added to the adder 64- (i + 2) (in the case of the adders 64-1 to 64-14), Either the lower 32 bits of the register 65 (in the case of the adder 64-15), the upper 32 bits of the register 65 (in the case of the adder 64-16), and the arithmetic circuit 62- (i + 1) (adder 64) -1 to 64-15) It has been made so.
レジスタ65は、加算器64−15より供給された32ビットのデータを、下位32ビットで保持し、加算器64−16より供給された32ビットのデータを、上位32ビットで保持するとともに、これらの2つの32ビットのデータで構成される64ビットのデータを、暗号として送信部16に出力するようになされている。
The
図5は、図2の復号部13の一構成例を示している。この復号部13においては、鍵保存部41は、制御部11より供給された鍵Kを保持するようになされている。
FIG. 5 shows a configuration example of the
変換部42は、図4のデータランダム化部32と同一の構成を有し、鍵保存部41から鍵Kを読み出し、受信部18より供給されたデータ(DES方式で暗号化された暗号)をレジスタ63に供給した後、図4のデータランダム化部32と同一の動作を行い、そのデータを復号化し、復号化したデータをレジスタ65から制御部11に出力するようになされている。
The
図6は、本発明の一実施例であるICカード2の構成例を示している。 FIG. 6 shows a configuration example of the IC card 2 which is an embodiment of the present invention.
ICカード2においては、制御部81(処理手段)は、R/W1により供給されるコマンドに応じて、各種処理を行うようになされている。制御部81は、R/W1からのコマンドを、復号部83(復号化手段)から受け取り、そのコマンドに対応した処理を行い、その処理の結果に対応する応答データ(R/W1に送信するもの)を、暗号部82(暗号化手段)に出力するようになされている。
In the IC card 2, the control unit 81 (processing means) performs various processes in accordance with commands supplied from the R / W1. The
また、制御部81は、メモリ84から、暗号化または復号化に利用される鍵KAまたは鍵KBを読み出し、その鍵KAまたは鍵KBを、暗号部82または復号部83に出力するようになされている。
The
メモリ84は、RAM(Random Access Memory)部(128キロバイト程度)とROM(Read Only Memory)部(512キロバイト程度)を有している。そのうちのRAM部は、制御部81における処理に使用されるデータなどを一時的に記憶する。一方、ROM部には、暗号化または復号化において利用される2つの鍵KA,KBが、予め記憶されている。
The
暗号部82および復号部83は、図3の暗号部12および図5の復号部13と同様の構成であるので、その説明を省略する。
The
送信部86(送信手段)は、暗号部82より供給されたデータ(暗号)を、所定の変調方式(例えば、PSK(Phase Shift Keying)変調方式)で変調し、生成された変調波を、アンテナ部87を介してR/W1に送信するようになされている。
The transmission unit 86 (transmission means) modulates the data (encryption) supplied from the
受信部88(受信手段)は、アンテナ部87を介して、R/W1により送信された変調波を受信し、その変調波に対応する復調方式で復調し、復調したデータ(暗号)を復号部83に出力するようになされている。
The reception unit 88 (reception unit) receives the modulated wave transmitted by the R / W1 via the
次に、図7および図8のフローチャート、並びに、図9を参照して、R/W1とICカード2の、相互認証を行うときの動作について説明する。
Next, with reference to the flowcharts of FIGS. 7 and 8 and FIG. 9, the operation when the R /
最初に図7のステップS1において、R/W1の制御部11は、64ビットの乱数RA(第1のデータ)を生成し、その乱数RAを暗号部12のデータランダム化部32に出力するとともに、メモリ14から鍵KBを読み出し、暗号部12の鍵保存部31に出力する。
First, in step S1 of FIG. 7, the
図3の暗号部12のデータランダム化部32は、鍵保存部31から鍵KBを読み出す。そして、図4のデータランダム化部32の鍵データ生成回路61は、鍵KBから16個の鍵データK1乃至K16を生成し、演算回路62−1乃至62−16にそれぞれ出力する。
データランダム化部32のレジスタ63は、R/W1より供給された乱数RAの上位32ビットを加算器64−1に出力し、乱数RAの下位32ビットを演算回路62−1および加算器64−2に出力する。演算回路62−1は、その32ビットのデータを鍵データK1を利用して変換し、変換後のデータを加算器64−1に出力する。加算器64−1は、レジスタ63より供給された32ビットのデータと、演算回路62−1より供給された32ビットのデータの排他的論理和(ビット毎の排他的論理和)を計算し、その排他的論理和(32ビット)を、演算回路62−2および加算器64−3に出力する。
The
次に、演算回路62−2は、その32ビットのデータを鍵データK2を利用して変換し、変換後のデータ(32ビット)を加算器64−2に出力する。加算器64−2は、レジスタ63より供給された32ビットのデータと、演算回路62−2より供給された32ビットのデータの排他的論理和を計算し、その排他的論理和を、演算回路62−3および加算器64−4に出力する。
Next, the arithmetic circuit 62-2, the 32-bit data is converted by using the key data K 2, and outputs the converted data (32 bits) to the adder 64-2. The adder 64-2 calculates an exclusive OR of the 32-bit data supplied from the
演算回路62−3乃至62−14および加算器64−3乃至64−14は、順次、演算回路62−2および加算器64−2と同様の動作を行う。即ち、演算回路62−j(j=3,・・・,14)は、加算器64−(j−1)より供給された32ビットのデータを鍵データKjを利用して変換し、変換後のデータを加算器64−jに出力する。加算器64−j(j=3,・・・,14)は、加算器64−(j−2)より供給された32ビットのデータと、演算回路62−jより供給された32ビットのデータの排他的論理和を計算し、その排他的論理和を、演算回路62−(j+1)および加算器64−(j+2)に出力する。 The arithmetic circuits 62-3 to 62-14 and the adders 64-3 to 64-14 sequentially perform the same operations as the arithmetic circuit 62-2 and the adder 64-2. That is, the arithmetic circuit 62-j (j = 3,..., 14) converts the 32-bit data supplied from the adder 64- (j−1) using the key data K j , The subsequent data is output to the adder 64-j. The adder 64-j (j = 3,..., 14) has 32-bit data supplied from the adder 64-(j-2) and 32-bit data supplied from the arithmetic circuit 62-j. And outputs the exclusive OR to the arithmetic circuit 62- (j + 1) and the adder 64- (j + 2).
さらに、演算回路62−15は、加算器64−14より供給された32ビットのデータを鍵データK15を利用して変換し、変換後のデータを加算器64−15に出力する。加算器64−15は、加算器64−13より供給された32ビットのデータと、演算回路62−15より供給された32ビットのデータの排他的論理和を計算し、その排他的論理和を、演算回路62−16およびレジスタ65の下位32ビットに出力する。
Furthermore, the arithmetic circuit 62-15 is a 32-bit data supplied from the adder 64-14 and converted using the key data K 15, and outputs the converted data to the adder 64-15. The adder 64-15 calculates an exclusive OR of the 32-bit data supplied from the adder 64-13 and the 32-bit data supplied from the arithmetic circuit 62-15, and calculates the exclusive OR. , And output to the lower 32 bits of the arithmetic circuit 62-16 and the
そして、演算回路62−16は、その32ビットのデータを鍵データK16を利用して変換し、変換後のデータを加算器64−16に出力する。加算器64−16は、加算器64−14より供給された32ビットのデータと、演算回路62−16より供給された32ビットのデータの排他的論理和を計算し、その排他的論理和を、レジスタ65の上位32ビットに出力する。
The arithmetic circuit 62-16 has its 32-bit data is converted by using the key data K 16, and outputs the converted data to the adder 64-16. The adder 64-16 calculates an exclusive OR of the 32-bit data supplied from the adder 64-14 and the 32-bit data supplied from the arithmetic circuit 62-16, and calculates the exclusive OR. , Output to the upper 32 bits of the
以上のようにして、合計16段の演算を行って暗号を生成する。そして、データランダム化部32のレジスタ65は、生成した暗号C1(第1の暗号)(図9の[RA]B)を送信部16に出力する。
As described above, a total of 16 computations are performed to generate a cipher. Then, the
次に、ステップS2において、R/W1の送信部16は、暗号部12より供給された暗号C1を変調し、生成された変調波を、アンテナ部17を介してICカード2に送信する。
Next, in step S <b> 2, the
このように、R/W1が、ステップS1,S2において処理を行い、変調波を送信するまでの間、ICカード2は、図8のステップS21において待機している。
Thus, until the R /
そして、R/W1から変調波が送信されてくると、ICカード2の受信部88は、アンテナ部87を介して、R/W1の送信部16により送信された変調波を受信し、その変調波を復調し、復調後のデータ(暗号C1)を復号部83に出力する。
When a modulated wave is transmitted from the R / W1, the receiving
次に、ステップS22において、ICカード2の復号部83の変換部42は、予め制御部81より鍵保存部41に供給されている鍵KBで、受信部88より供給された暗号C1を復号化し、復号化したデータ(平文M1)(第2のデータ)を制御部81に出力する。
Next, in step S22, the
ステップS23において、ICカード2の制御部81は、復号部83より供給された平文M1を、暗号部82のデータランダム化部32に出力する。暗号部82のデータランダム化部32は、鍵保存部31に予め記憶されている鍵KAを読み出し、その鍵KAで、ステップS1におけるR/W1の暗号部12のデータランダム化部32と同様に、平文M1を暗号化し、生成された暗号C2(第2の暗号)(図9の[RA]A)を送信部86に出力する。
In step S <b> 23, the
また、制御部81は、乱数RB(第3のデータ)を生成し、その乱数RBを暗号部82のデータランダム化部32に出力する。暗号部82のデータランダム化部32は、鍵保存部31から鍵KAを読み出し、その鍵KAで乱数RBを暗号化し、生成された暗号C3(第3の暗号)(図9の[RB]A)を送信部86に出力する。
Further, the
そして、ステップS24において、ICカード2の送信部86は、暗号C2,C3を変調し、生成された変調波を、アンテナ部87を介してR/W1に送信する。
In step S24, the
このように、ICカード2がステップS21乃至S24の処理を行っている間、R/W1は、図7のステップS3およびステップS4において、ICカード2から暗号C2と暗号C3が送信されてくるまで待機するとともに、暗号C1を送信してからの経過時間を、ステップS3において監視し、ICカード2からC2とC3が送信されてくるまでに所定の時間(ICカード2における処理に通常要する時間より長い時間)が経過した場合、ステップS2に戻り、暗号C1を再送する。
In this way, while the IC card 2 is performing the processing of steps S21 to S24, the R /
そして、ICカード2から暗号C2および暗号C3を含む変調波が送信されてくると、R/W1に受信部18は、アンテナ部17を介して、ICカード2の送信部86により送信された変調波を受信し、その変調波を復調する。そして、受信部18は、復調されたデータ(暗号C2,C3)を、復号部13に出力する。
When the modulated wave including the cipher C 2 and the cipher C 3 is transmitted from the IC card 2, the receiving
次に、ステップS5において、R/W1の復号部13の変換部42は、鍵保存部41に予め供給されている鍵KAを読み出し、受信部18より供給されたデータ(暗号C2,C3)を復号化し、復号化したデータ(平文M2(暗号C2に対応する)(第4のデータ)と平文M3(暗号C3に対応する)(第5のデータ))を制御部11に出力する。
Next, in step S5, the
そして、ステップS6において、R/W1の制御部11は、平文M2と乱数RAが同一であるか否かを判断し、平文M2と乱数RAが同一であると判断した場合、ステップS7において、R/W1は、ICカード2がR/W1の鍵KA,KBと同一の鍵KA,KBを有していると判断し、ICカード2を認証する。
Then, in step S6, the
一方、ステップS6において、平文M2と乱数RAが同一ではないと判断した場合、R/W1は、ICカード2を認証しないので、認証処理を終了する。 On the other hand, in step S6, if the plaintext M 2 and the random number R A is determined not to be the same, R / W1 Because not authenticate the IC card 2, and terminates the authentication process.
ステップS7においてICカード2を認証した後、ステップS8において、R/W1の制御部11は、ステップS5で生成した平文M3を暗号部12に出力する。そして、暗号部12は、ステップS1と同様に、平文M3を鍵KBで暗号化し、生成された暗号C4(第4の暗号)(図9の[RB]B)を送信部16に出力する。
After authenticating the IC card 2 in step S7, in step S8, the
ステップS9において、R/W1の送信部16は、暗号部12より供給された暗号C4を変調し、生成された変調波を、アンテナ部17を介してICカード2に送信する。
In step S <b> 9, the
このように、R/W1が、ステップS4乃至S9において処理を行っている間、ICカード2は、図8のステップS25およびステップS26において、暗号C4が送信されてくるまで待機している。このとき、ICカード2の制御部81は、暗号C2,C3を送信してからの経過時間を監視しており、ステップS26において暗号C2,C3を送信してから所定の時間が経過したと判断した場合、R/W1を認証せずに認証処理を終了する。
Thus, R / W1 is, during a process in steps S4 to S9, IC card 2 in step S25 and step S26 in FIG. 8, waiting until cipher C 4 is transmitted. At this time, the
一方、暗号C4を含む変調波が送信されてくると、ICカード2の受信部88は、R/W1により送信された変調波を、アンテナ部87を介して受信し、その変調波を復調する。そして、受信部88は、復調したデータ(暗号C4)を復号部13に出力する。
On the other hand, when a modulated wave including the cipher C 4 is transmitted, the receiving
次にステップS27において、ICカード2の復号部83の変換部42は、鍵保存部41から読み出した鍵KBで、受信部88より供給されたデータ(暗号C4)を復号化し、復号化したデータ(平文M4)(第6のデータ)を制御部81に出力する。
In step S27, the
そして、ステップS28において、ICカード2の制御部81は、平文M4と乱数RBが同一であるか否かを判断し、平文M4と乱数RBが同一であると判断した場合、ステップS29において、ICカード2は、R/W1がICカード2の鍵KA,KBと同一の鍵KA,KBを有していると判断し、R/W1を認証する。
Then, in step S28, the
一方、ステップS28において、平文M4と乱数RBが同一ではないと判断した場合、ICカード2は、R/W1を認証しないので、認証処理を終了する。 On the other hand, in step S28, if the plaintext M 4 and the random number R B is determined not to be identical, IC card 2 does not authenticate the R / W1, and ends the authentication process.
以上のようにして、R/W1は、図7に示すように、ICカード2に対する認証処理を行い、ICカード2は、図8に示すように、R/W1に対する認証処理を行うことにより、相互に、認証処理を行う。
As described above, the R /
なお、上述の暗号部12,82のデータランダム化部32は、DES方式で暗号化を行っているが、他の方式(例えば、FEAL(Fast Encryption ALgorithm)−8方式)で暗号化を行うようにしてもよい。その場合、復号部13,83の変換部42は、その暗号化方式に対応して復号化を行うようにする。
The
また、FEAL−8方式を利用した場合、35ミリ秒程度(ICカード2における処理にかかる時間は28ミリ秒程度)で相互認証を行うことができる。 When the FEAL-8 method is used, mutual authentication can be performed in about 35 milliseconds (the processing time in the IC card 2 is about 28 milliseconds).
次に、図10および図11のフローチャートを参照して、上述の認証処理後(相互に認証した後)におけるR/W1とICカード2間の通信について説明する。
Next, communication between the R /
図10のステップS41において、R/W1の制御部11は、最初に、上述の認証処理における乱数RAを認識番号IDとして保持するとともに、乱数RB(平文M3)(ICカード2を認証したので、R/W1は、平文M3を乱数RBとする)を新たな鍵KID(第3の鍵)として、暗号部12の鍵保存部31および復号部13の鍵保存部41に出力する。
In step S41 of FIG. 10, the
そして、R/W1の制御部11は、ICカード2に実行させる処理に対応するコマンド(送信コマンド)を、暗号部12のデータランダム化部32に出力する。暗号部12のデータランダム化部32は、鍵保存部31から鍵KIDを読み出し、その鍵KIDで送信コマンドを暗号化し、生成された暗号Ccom(第5の暗号)を送信部16に出力する。
Then, the
また、R/W1の制御部11は、認識番号IDを、暗号部12のデータランダム化部32に出力する。暗号部12のデータランダム化部32は、鍵KIDで認識番号IDを暗号化し、生成された暗号CID(第6の暗号)を送信部16に出力する。
Further, the
ステップS42において、R/W1の送信部16は、暗号部12より供給された暗号Ccom,CIDを変調し、生成された変調波をアンテナ部17を介してICカード2に送信する。
In step S42, the
このように、R/W1が、暗号Ccom,CIDを含む変調波を送信するまでの間、ICカード2は、図11のステップS61において待機している。
Thus, until the R /
なお、ICカード2の制御部81は、上述の認証処理における乱数RBを鍵KIDとして、予め、暗号部82の鍵保存部31および復号部83の鍵保存部41に出力するとともに、乱数RA(平文M1)(R/W1を認証したので、ICカード2は、平文M1を乱数RAとする)を認識番号IDとして保持している。
The
そして、R/W1から暗号Ccom,CIDを含む変調波を送信されてくると、ICカード2の受信部88は、R/W1の送信部16により送信された変調波を、アンテナ部87を介して受信し、その変調波を復調する。そして、受信部88は、復調したデータ(暗号Ccom,CID)を、復号部83に出力する。
When the modulated wave including the cipher Ccom and C ID is transmitted from the R /
ステップS62において、復号部83の変換部42は、鍵保存部41に予め記憶されている鍵KIDで、供給されたデータのうちの暗号CIDを復号化し、復号されたデータ(平文MID)(第7のデータ)を制御部81に出力する。
In step S62, the
そして、ステップS63において、ICカード2の制御部81は、平文MIDの値が認識番号ID以上であるか否かを判断し、平文MIDの値が認識番号IDより小さいと判断した場合、通信処理を終了する。一方、平文MIDの値が認識番号ID以上であると判断した場合、ステップS64において、制御部81は、送信されてきたコマンド(暗号Ccom)を承認し、復号部83に、暗号Ccomを復号化させ、ステップS65において、復号化したコマンドに対応する処理を行い、ステップS66において、その処理結果に対応する応答データ(R/W1に送信するためのもの)を作成する。
In step S63, the
次に、ステップS67において、ICカード2の制御部81は、認識番号IDの値を1だけ増加させた後、認識番号IDおよび応答データを、暗号部82に順次出力する。ステップS68において、暗号部82は、認識番号IDを、鍵KIDで暗号CID(第8の暗号)に暗号化するとともに、応答データを、鍵KIDで暗号Cre(第7の暗号)に暗号化した後、暗号CIDおよび暗号Creを、送信部86に出力する。
Next, in step S67, the
そして、ステップS69において、送信部86は、暗号CIDと暗号Creを変調し、生成した変調波をR/W1に送信する。
In step S69, the
このように、ICカード2がステップS61乃至S69において送信したコマンドに対応する処理を行っている間、R/W1は、ステップS43およびステップS44において待機するとともに、暗号CID,Ccomを送信した時からの経過時間をステップS43において監視する。
As described above, while the IC card 2 performs processing corresponding to the command transmitted in steps S61 to S69, the R /
そして、予め設定されている所定の時間が経過すると、ステップS45に進み、制御部11は、ステップS41で暗号化したコマンドと同一のコマンドを選択し、ステップS46で、認識番号IDの値を1だけ増加させた後、ステップS41に戻り、送信コマンドと認識番号IDを暗号化し、ステップS42において、生成された暗号をICカード2に再送する。
Then, when a predetermined time set in advance elapses, the process proceeds to step S45, where the
一方、ステップS44において、ICカード2からの暗号CIDと暗号Creを含む変調波が送信されてくると、R/W1に受信部18が、その変調波を、暗号CIDと暗号Creに復調し、その暗号CIDと暗号Creを復号部13に出力する。
On the other hand, when a modulated wave including the encrypted C ID and the encrypted Cre is transmitted from the IC card 2 in step S44, the receiving
ステップS47において、復号部13は、暗号CIDを鍵KIDで復号化し、生成された平文MID(第9のデータ)を制御部11に出力する。
In step S <b> 47, the
ステップS48において、制御部11は、平文MIDの値が、認識番号IDより大きいか否かを判断し、平文MIDの値が認識番号ID以下であると判断した場合、ステップS45に進み、ステップS41で送信したコマンドと同一のコマンドを選択し、ステップS46において、認識番号IDの値を1だけ増加させた後、ステップS41に戻り、送信コマンドと認識番号IDを暗号化し、ステップS42において、生成された暗号をICカード2に再送する。
In step S48, the
一方、ステップS48において、平文MIDの値が、認識番号IDより大きいと判断した場合、制御部11は、ステップS49において、復号部13に、暗号Creを復号化させ、ICカード2からの応答データを受け取る。
On the other hand, when it is determined in step S48 that the value of the plaintext M ID is larger than the recognition number ID, the
そして、ステップS50において、R/W1の制御部11は、通信を終了するか否かを判断する。通信を継続する場合、ステップS51に進み、R/W1の制御部11は、次の送信コマンドを選択する。
In step S50, the
そして、ステップS46に進み、認識番号IDの値を1だけ増加させた後、ステップS41に戻り、ステップS41以降で、次の送信コマンドの送信を行う。 In step S46, the value of the identification number ID is incremented by 1. Then, the process returns to step S41, and the next transmission command is transmitted in step S41 and subsequent steps.
以上のようにして、相互認証時に送信した乱数RA,RBを、認識番号IDおよび新たな鍵KIDとして利用して、R/W1は、ICカード2に所定のコマンドを送信し、ICカード2は、そのコマンドに対応する処理を行った後、その処理結果に対応する応答データをR/W1に送信する。このようにすることにより、認識番号および新たな鍵を利用して、通信毎に、通信相手が正規の者であることを確認することができる。また、1回の通信毎に認識番号IDの値を1ずつ増加させているので、現在までの通信回数を知ることができ、処理の経過を把握することができる。
As described above, using the random numbers R A and R B transmitted at the time of mutual authentication as the identification number ID and the new key K ID , the R /
なお、ステップS63において、ICカード2の制御部81は、平文MIDが認識番号ID以上であるか否かを判断しているが、平文MIDの値が認識番号IDに対応する所定の範囲内(例えば、ID乃至ID+16の範囲)の値と同一であるか否かを判断するようにしてもよい。このようにすることにより、例えば、伝送路に障害が生じ、R/W1が放射した電磁波(認識番号の値がID)がICカード2に到達しなかった場合において、ICカード2は、次に送信されてくるデータ(認識番号の値はID+1であるが、送信コマンドは、前回送信したコマンドと同一である)を受信することができる。
In step S63, the
あるいは、ステップS63において、ICカード2の制御部81は、平文MID(64ビット)の例えば下位8ビットの値が、認識番号IDの下位8ビットの値以上であるか否かを判断するようにしてもよい。このように所定の桁数(ビット数)nだけにおいて比較を行うことにより、64ビットにおいて比較を行う場合より、ビット演算量が減少し、処理を速く行うことができる。なお、この場合、認識番号IDの値が2n−1(nは桁数)より大きくなると桁上がりが発生する(比較の結果にエラーが生じる)ので、R/W1とICカード2の間の通信の回数を考慮して、認識番号IDの値が2n−1(nは桁数)より大きくならないように、桁数nを設定する。
Alternatively, in step S63, the
また、同様に、ステップS48において、R/W1の制御部11は、平文MIDの値が認識番号IDに対応する所定の範囲内の値と同一であるか否かを判断するようにしてもよい。また、ステップS48において、R/W1の制御部11は、平文MIDの例えば下位8ビットの値が、認識番号IDの下位8ビットの値より大きいか否かを判断するようにしてもよい。
Similarly, in step S48, the
なお、上記実施例においては、乱数RBを新たな鍵KIDとしているが、図12に示すように乱数RAと乱数RBから新たな鍵KIDを算出し、その鍵KIDを利用して通信を行うようにしてもよい。 In the above embodiment, although the random number R B are the new key K ID, and calculates a new key K ID from the random number R A and the random number R B as shown in FIG. 12, use of the key K ID Then, communication may be performed.
また、R/W1が送信した情報を、ICカード2に、単に記憶しておく場合、図13に示すように、ICカード2は、受信したデータ(鍵KAまたは鍵KBで暗号化されたデータ)を、復号化せずに、そのままメモリ84に記憶させておき、R/W1からのリードコマンドを受け取ったときに、そのデータをメモリ84から読み出し、そのまま送信するようにしてもよい。
Further, the information R / W1 transmits, to the IC card 2, when simply stored, as shown in FIG. 13, the IC card 2 is encrypted with the received data (the key K A or the key K B Data) may be stored in the
1 リーダ/ライタ(R/W), 2 ICカード, 11 制御部, 12 暗号部, 13 復号部, 14 メモリ, 15 インタフェース, 16 送信部, 17 アンテナ部, 18 受信部, 31 鍵保存部, 32 データランダム化部, 41 鍵保存部, 42 変換部, 61 鍵データ生成回路, 62−1乃至62−16 演算回路, 63 レジスタ, 64−1乃至64−16 加算器, 65 レジスタ, 81 制御部, 82 暗号部, 83 復号部, 84 メモリ, 86 送信部, 87 アンテナ部, 88 受信部 1 reader / writer (R / W), 2 IC card, 11 control unit, 12 encryption unit, 13 decryption unit, 14 memory, 15 interface, 16 transmission unit, 17 antenna unit, 18 reception unit, 31 key storage unit, 32 Data randomization unit, 41 key storage unit, 42 conversion unit, 61 key data generation circuit, 62-1 to 62-16 arithmetic circuit, 63 registers, 64-1 to 64-16 adder, 65 registers, 81 control unit, 82 encryption unit, 83 decryption unit, 84 memory, 86 transmission unit, 87 antenna unit, 88 reception unit
Claims (10)
前記第1の情報処理装置および前記第2の情報処理装置は、それぞれ、
乱数を生成する乱数生成手段と、
第1の鍵および第2の鍵を記憶する記憶手段と、
所定のデータを前記第1の鍵または前記第2の鍵を利用して暗号化する暗号化手段と、
暗号化されたデータを前記第2の鍵または前記第1の鍵により復号する復号手段と
を備え、
前記第1の情報処理装置の前記暗号化手段により前記第1の鍵を用いて前記乱数生成手段により生成された第1の乱数が第1の暗号に暗号化され、暗号化された前記第1の暗号を、前記第2の情報処理装置に送信し、
前記第1の情報処理装置から送信された前記第1の暗号は、前記第2の情報処理装置の前記復号手段により前記第1の鍵を用いて復号された後、前記第2の情報処理装置の前記暗号化手段により前記第2の鍵を用いて第2の暗号に暗号化されるとともに、前記第2の情報処理装置の前記乱数生成手段により生成された第2の乱数は、前記第2の情報処理装置の前記暗号化手段により前記第2の鍵を用いて第3の暗号に暗号化され、
前記第2の情報処理装置から前記第2の暗号および前記第3の暗号を受信し、
受信された前記第2の暗号および前記第3の暗号が前記第1の情報処理装置の前記復号手段により前記第2の鍵を用いてそれぞれ第4のデータおよび第5のデータに復号され、復号された前記第4のデータと前記第1の乱数を比較し、比較結果が一致した場合、前記第2の情報処理装置を認証し、
前記第1の情報処理装置の暗号化手段により前記第5のデータが前記第1の鍵を用いて暗号化された第4の暗号を前記第2の情報処理装置に送信し、
送信された前記第4の暗号は、前記第2の情報処理装置の前記復号手段により第6のデータに復号され、復号された前記第6のデータと前記第2の乱数が比較され、比較結果が一致した場合、前記第2の情報処理装置により前記第1の情報処理装置が認証される
ことを特徴とする認証方法。 An authentication method in which a first information processing apparatus performs mutual authentication with a second information processing apparatus,
The first information processing apparatus and the second information processing apparatus are respectively
Random number generating means for generating a random number;
Storage means for storing a first key and a second key;
Encryption means for encrypting predetermined data using the first key or the second key;
Decrypting means for decrypting the encrypted data with the second key or the first key;
The first random number generated by the random number generation means using the first key by the encryption means of the first information processing apparatus is encrypted into a first cipher, and the first encrypted Is transmitted to the second information processing apparatus,
The first cipher transmitted from the first information processing apparatus is decrypted using the first key by the decryption means of the second information processing apparatus, and then the second information processing apparatus The second random number generated by the random number generation means of the second information processing apparatus is encrypted to the second cipher by using the second key by the encryption means. Encrypted by the encryption means of the information processing apparatus to the third cipher using the second key,
Receiving the second cipher and the third cipher from the second information processing apparatus;
The received second cipher and the third cipher are decrypted by the decryption means of the first information processing apparatus into the fourth data and the fifth data, respectively, using the second key. The fourth data and the first random number are compared, and if the comparison result matches, authenticate the second information processing device,
A fourth cipher in which the fifth data is encrypted using the first key by the encryption unit of the first information processing apparatus is transmitted to the second information processing apparatus;
The transmitted fourth cipher is decrypted into sixth data by the decryption means of the second information processing apparatus, the decrypted sixth data is compared with the second random number, and the comparison result If the two match, the first information processing apparatus is authenticated by the second information processing apparatus.
ことを特徴とする請求項1に記載の認証方法。 The first information processing apparatus monitors time from when the first cipher is transmitted to when the second cipher and the third cipher are received. Authentication method.
ことを特徴とする請求項1に記載の認証方法。 When the second information processing apparatus transmits a second cipher and a transmission of the third cipher to a time when the fourth cipher is received exceeds a predetermined time, the second information processing apparatus The authentication method according to claim 1, wherein authentication of the first information processing apparatus is prohibited.
ことを特徴とする請求項1に記載の認証方法。 The authentication according to claim 1, wherein the second information processing apparatus is configured by an IC card, and the first information processing apparatus is configured by a reader / writer that performs data communication with the IC card. Method.
乱数を生成する乱数生成手段と、
所定のデータを、前記第1の鍵または前記第2の鍵を利用して暗号化する暗号化手段と、
暗号化されたデータを復号する復号手段と、
前記暗号化手段により暗号化された暗号を他の情報処理装置に送信する送信手段と、
前記他の情報処理装置から暗号を受信する受信手段と、
前記他の情報処理装置から受信した暗号を復号して生成されたデータに応じて、前記他の情報処理装置を認証する認証手段と
を備える情報処理装置において、
前記送信手段は、前記乱数生成手段により生成された第1の乱数が前記暗号化手段により前記第1の鍵を用いて暗号化された第1の暗号を前記他の情報処理装置に送信し、
前記受信手段は、前記他の情報処理装置で前記第1の暗号が復号された後、暗号化された第2の暗号、および前記他の情報処理装置で生成された第2の乱数が暗号化された第3の暗号を受信し、
前記認証手段は、前記受信手段により受信された前記第2の暗号を前記第2の鍵を用いて復号した第4のデータと前記第1の乱数を比較し、比較結果が一致した場合、前記第3の暗号が前記復号手段により前記第2の鍵を用いて復号された第5のデータを、前記第1の鍵を用いて第4の暗号に暗号化して前記他の情報処理装置に送信するようにし、比較結果が一致しない場合、処理を終了するようにし、
送信される前記第4の暗号は、前記他の情報処理装置が、前記情報処理装置を認証するための暗号データである
ことを特徴とする情報処理装置。 Storage means for storing a first key and a second key;
Random number generating means for generating a random number;
Encryption means for encrypting predetermined data using the first key or the second key;
Decryption means for decrypting the encrypted data;
Transmitting means for transmitting the cipher encrypted by the encrypting means to another information processing apparatus;
Receiving means for receiving encryption from the other information processing apparatus;
In an information processing apparatus comprising: authentication means for authenticating the other information processing apparatus according to data generated by decrypting a cipher received from the other information processing apparatus;
The transmitting unit transmits a first cipher in which the first random number generated by the random number generating unit is encrypted by the encrypting unit using the first key to the other information processing apparatus;
The receiving means encrypts the second encrypted cipher after the first cipher is decrypted by the other information processing apparatus and the second random number generated by the other information processing apparatus. Received the third cipher,
The authentication unit compares the first random number with the fourth data obtained by decrypting the second cipher received by the receiving unit using the second key, and if the comparison result matches, The fifth data obtained by decrypting the third cipher using the second key by the decrypting means is encrypted into the fourth cipher using the first key and transmitted to the other information processing apparatus. If the comparison results do not match, end the process,
The information processing apparatus, wherein the fourth cipher to be transmitted is encrypted data for the other information processing apparatus to authenticate the information processing apparatus.
ことを特徴とする請求項5に記載の情報処理装置。 The authentication unit monitors a time from when the first cipher is transmitted by the transmitting unit to when the second cipher and the third cipher are received by the receiving unit. The information processing apparatus according to claim 5.
ことを特徴とする請求項5に記載の情報処理装置。 The information processing apparatus according to claim 5, wherein the other information processing apparatus is an IC card.
乱数を生成する乱数生成手段と、
所定のデータを、前記第1の鍵または前記第2の鍵を利用して暗号化する暗号化手段と、
暗号化されたデータを復号する復号手段と、
前記暗号化手段により暗号化された暗号を他の情報処理装置に送信する送信手段と、
前記他の情報処理装置から暗号を受信する受信手段と、
前記他の情報処理装置から受信した暗号を復号して生成されたデータに応じて、前記他の情報処理装置を認証する認証手段と
を備える情報処理装置において、
前記受信手段は、前記他の情報処理装置で生成された第1の乱数が暗号化された第1の暗号を受信し、
前記復号手段は、前記受信手段により受信された前記第1の暗号を前記第1の鍵を用いて復号して第2のデータを生成し、
前記暗号化手段は、前記第2のデータを前記第2の鍵を用いて第2の暗号に暗号化するとともに、前記乱数生成手段により生成された第2の乱数を前記第2の鍵で第3の暗号に暗号化し、
前記送信手段は、前記暗号化手段により暗号化された前記第2の暗号および前記第3の暗号を前記他の情報処理装置に送信し、
前記受信手段は、前記他の情報処理装置で、前記第2の暗号が復号され、前記第1の乱数と比較され、比較結果が一致した場合に、前記情報処理装置が認証された結果、前記第3の暗号が復号されて、暗号化された第4の暗号を受信し、
前記復号手段は、前記受信手段により受信された前記第4の暗号を前記第1の鍵を用いて復号して第6のデータを生成し、
前記認証手段は、前記第6のデータと前記乱数生成手段により生成された前記第2の乱数を比較し、比較結果が一致した場合、前記他の情報処理装置を認証するようにし、比較結果が一致しない場合、処理を終了するようにする
ことを特徴とする情報処理装置。 Storage means for storing a first key and a second key;
Random number generating means for generating a random number;
Encryption means for encrypting predetermined data using the first key or the second key;
Decryption means for decrypting the encrypted data;
Transmitting means for transmitting the cipher encrypted by the encrypting means to another information processing apparatus;
Receiving means for receiving encryption from the other information processing apparatus;
In an information processing apparatus comprising: authentication means for authenticating the other information processing apparatus according to data generated by decrypting a cipher received from the other information processing apparatus;
The receiving means receives a first cipher in which a first random number generated by the other information processing apparatus is encrypted,
The decrypting means decrypts the first cipher received by the receiving means using the first key to generate second data;
The encryption means encrypts the second data into a second cipher using the second key, and uses the second key to generate the second random number generated by the random number generation means. 3 encryption,
The transmitting unit transmits the second cipher and the third cipher encrypted by the encrypting unit to the other information processing apparatus;
The receiving means is the second information decrypted by the other information processing device, compared with the first random number, and when the comparison result matches, the information processing device is authenticated, The third cipher is decrypted and the encrypted fourth cipher is received;
The decrypting means decrypts the fourth cipher received by the receiving means using the first key to generate sixth data,
The authentication unit compares the sixth data with the second random number generated by the random number generation unit, and if the comparison result matches, authenticates the other information processing apparatus, and the comparison result is An information processing apparatus characterized in that the processing is terminated if they do not match.
ことを特徴とする請求項8に記載の情報処理装置。 The authenticating means, when a time from when the second cipher and the third cipher are transmitted by the transmitting means until when the fourth cipher is received by the receiving means exceeds a predetermined time The information processing apparatus according to claim 8, wherein authentication of the other information processing apparatus is prohibited.
ことを特徴とする請求項8に記載の情報処理装置。 The information processing apparatus according to claim 8, wherein the other information processing apparatus includes a reader / writer.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2004248312A JP3897177B2 (en) | 2004-08-27 | 2004-08-27 | Authentication method and information processing apparatus |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2004248312A JP3897177B2 (en) | 2004-08-27 | 2004-08-27 | Authentication method and information processing apparatus |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP1996168965A Division JP3709946B6 (en) | 1996-06-28 | 1996-06-28 | Communication method and information processing apparatus |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2005027338A true JP2005027338A (en) | 2005-01-27 |
JP3897177B2 JP3897177B2 (en) | 2007-03-22 |
Family
ID=34191743
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2004248312A Expired - Lifetime JP3897177B2 (en) | 2004-08-27 | 2004-08-27 | Authentication method and information processing apparatus |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP3897177B2 (en) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP2120386A1 (en) | 2008-05-13 | 2009-11-18 | Sony Corporation | Communication device, communication method, reader/writer, and communication system |
JP2010225055A (en) * | 2009-03-25 | 2010-10-07 | Toshiba Corp | Processing device for portable electronic device, portable electronic device, and processing system for portable electronic device |
CN106713237A (en) * | 2015-11-16 | 2017-05-24 | 厦门雅迅网络股份有限公司 | Encryption method of vehicle-mounted terminal and center platform communication |
CN109862040A (en) * | 2019-03-27 | 2019-06-07 | 北京经纬恒润科技有限公司 | A kind of safety certifying method and Verification System |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4666240B2 (en) | 2008-07-14 | 2011-04-06 | ソニー株式会社 | Information processing apparatus, information processing method, program, and information processing system |
-
2004
- 2004-08-27 JP JP2004248312A patent/JP3897177B2/en not_active Expired - Lifetime
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP2120386A1 (en) | 2008-05-13 | 2009-11-18 | Sony Corporation | Communication device, communication method, reader/writer, and communication system |
US9407446B2 (en) | 2008-05-13 | 2016-08-02 | Sony Corporation | Communication device, communication method, reader/writer, and communication system |
US10291398B2 (en) | 2008-05-13 | 2019-05-14 | Sony Corporation | Communication device, communication method, reader/writer, and communication system |
JP2010225055A (en) * | 2009-03-25 | 2010-10-07 | Toshiba Corp | Processing device for portable electronic device, portable electronic device, and processing system for portable electronic device |
CN106713237A (en) * | 2015-11-16 | 2017-05-24 | 厦门雅迅网络股份有限公司 | Encryption method of vehicle-mounted terminal and center platform communication |
CN106713237B (en) * | 2015-11-16 | 2021-03-23 | 厦门雅迅网络股份有限公司 | Encryption method for communication between vehicle-mounted terminal and central platform |
CN109862040A (en) * | 2019-03-27 | 2019-06-07 | 北京经纬恒润科技有限公司 | A kind of safety certifying method and Verification System |
CN109862040B (en) * | 2019-03-27 | 2021-08-24 | 北京经纬恒润科技股份有限公司 | Security authentication method and authentication system |
Also Published As
Publication number | Publication date |
---|---|
JP3897177B2 (en) | 2007-03-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR100500976B1 (en) | Authentication method, communication method and information processing device | |
JPH06266670A (en) | Ciphering virtual terminal initialization device | |
JP2006333095A (en) | Method, system, device, and program for encrypted communication | |
WO1990009009A1 (en) | Data carrier and data communication apparatus using the same | |
EP1992101A2 (en) | Secure data transmission using undiscoverable or black data | |
KR20030095342A (en) | Ic card and cryptographic communication method between ic cards | |
CN101433014A (en) | Communication device and communication system | |
JP2012527190A (en) | System and method for securely identifying and authenticating a device in a symmetric encryption system | |
JP2011521553A (en) | Method and system for verifying shared secrets | |
JPH09312643A (en) | Key sharing method and ciphering communication method | |
JP3897177B2 (en) | Authentication method and information processing apparatus | |
JPH11136234A (en) | User authentication system and user authentication method | |
CN101296077A (en) | Identity authentication system based on bus type topological structure | |
US6826689B1 (en) | Method and system for emulating a secret code between two hardware modules | |
JP3709946B6 (en) | Communication method and information processing apparatus | |
US8130945B2 (en) | Encrypted cryptography system | |
US7607023B2 (en) | Data transfer method, data transfer apparatus, data transmission device, and data reception device | |
JP5792573B2 (en) | Mutual authentication system and mutual authentication method | |
JP2009071481A (en) | Communication control system, terminal, and program | |
JP2002261749A (en) | Communication system | |
US7327845B1 (en) | Transmission of encrypted messages between a transmitter and a receiver utilizing a one-time cryptographic pad | |
JP3182617B2 (en) | Encrypted communication method | |
JP2006270348A (en) | Mutual authentication and key sharing system | |
JP2002023624A (en) | Block cipher communication method and device therefor, and recording medium with block cipher communication program recorded thereon | |
JP2008217497A (en) | Radio communication system communication device, and radio communication method |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
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: 20061130 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20061213 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100105 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110105 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120105 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130105 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130105 Year of fee payment: 6 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
EXPY | Cancellation because of completion of term |