JP2013073257A - Mutual authentication system and mutual authentication method - Google Patents

Mutual authentication system and mutual authentication method Download PDF

Info

Publication number
JP2013073257A
JP2013073257A JP2011209605A JP2011209605A JP2013073257A JP 2013073257 A JP2013073257 A JP 2013073257A JP 2011209605 A JP2011209605 A JP 2011209605A JP 2011209605 A JP2011209605 A JP 2011209605A JP 2013073257 A JP2013073257 A JP 2013073257A
Authority
JP
Japan
Prior art keywords
host
result
data
receiving
encrypted 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
Application number
JP2011209605A
Other languages
Japanese (ja)
Other versions
JP5792573B2 (en
Inventor
Taijiro Ito
泰治郎 伊東
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Individual
Original Assignee
Individual
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Individual filed Critical Individual
Priority to JP2011209605A priority Critical patent/JP5792573B2/en
Publication of JP2013073257A publication Critical patent/JP2013073257A/en
Application granted granted Critical
Publication of JP5792573B2 publication Critical patent/JP5792573B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Abstract

PROBLEM TO BE SOLVED: To confirm authenticity of a device connected to a signal transmission line without providing an authentication engine in a master unit.SOLUTION: In a mutual authentication system for transmitting/receiving data between a plurality of devices and a host connected through a transmission line and having the host successively authenticate the plurality of devices, by making mutual authentication be executed between the devices connected to the transmission line and making the host authenticate the device connected to the transmission line on the basis of a result of the mutual authentication, the device connected to the transmission line is authenticated just by connecting one already authenticated device to the transmission line.

Description

本発明は相互認証システム及び相互認証方法に関し、特に、I2Cバスを介して接続された複数のデバイスをホストが認証するために用いて好適な技術に関する。   The present invention relates to a mutual authentication system and a mutual authentication method, and more particularly to a technique suitable for use by a host to authenticate a plurality of devices connected via an I2C bus.

情報処理技術の発展に伴い、大量の情報が所定の伝送路を介して通信されている。情報が通信される伝送路には、第三者(送信者および受信者以外の者)が、通信されているデータを盗聴することが可能なものが多い。   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).

しかしながら、前述の認証方法においては、所定の送受信者が、他の送受信者を認証するだけであるので、例えば、リーダ/ライタ装置(親機)とICカードで構成されるカードシステムに、前述の認証方法を適用した場合、リーダ/ライタ装置は、通信相手が正規のICカードであるか否かを判断する(通信相手を認証する)ことができるが、ICカードは、通信相手が正規のリーダ/ライタ装置であるか否かを判断することが困難であるという問題を有している。   However, in the above-described authentication method, a predetermined transmitter / receiver only authenticates other transmitter / receivers, and therefore, for example, the above-described authentication method is applied to a card system including a reader / writer device (master device) and an IC card. When the authentication method is applied, the reader / writer device can determine whether or not the communication partner is a regular IC card (authenticate the communication partner). / It has a problem that it is difficult to determine whether or not it is a writer device.

前述のような問題点を解消するために、例えば、特許文献1においては、複数の情報処理装置において、相互に平文を送信するとともに、送信されてきた平文を受信し、受信した平文を暗号に暗号化し、平文を送信した装置に、その暗号を送信するとともに、送信されてきた暗号を受信し、その暗号を復号化した平文と最初に送信した平文を比較することで、相互に認証を行うようにした認証方法が提案されている。   In order to solve the above-described problems, for example, in Patent Document 1, a plurality of information processing apparatuses transmit plaintext to each other, receive transmitted plaintext, and encrypt the received plaintext. Encrypt and send the cipher to the device that sent the plaintext, receive the sent cipher and compare the plaintext that was decrypted with the plaintext that was sent first to authenticate each other Such an authentication method has been proposed.

特開平10−020780号公報Japanese Patent Laid-Open No. 10-020780

特許文献1に記載の認証方法においては、リーダ/ライタ装置とICカードとで相互に認証を行うようにしている。このため、リーダ/ライタ装置に専用認証エンジンを具備する必要があった。   In the authentication method described in Patent Document 1, the reader / writer device and the IC card authenticate each other. For this reason, it is necessary to provide the reader / writer device with a dedicated authentication engine.

また、ICカードを使用する各ユーザー向けにユーザー指定の制御用CPUのソフト向けのコードの開発する負担、及び開発した同コードを開示するために発生するセキュリティ上の管理のわずらわしさ(秘密保持の負担)も大きな負担であった。
本発明は前述の問題点に鑑み、親機が認証エンジンを具備することなく、伝送路に接続されたデバイスの真偽を確認できるようにすることを目的とする。
In addition, the burden of developing the code for the control CPU software designated by the user for each user who uses the IC card, and the troublesome security management that occurs to disclose the developed code (confidentiality protection) Burden) was also a heavy burden.
In view of the above-described problems, an object of the present invention is to make it possible to confirm the authenticity of a device connected to a transmission path without the master unit having an authentication engine.

本発明の相互認証システムは、伝送路を介して接続された複数のデバイスとホストとの間でデータの送受信を行い、前記複数のデバイスを前記ホストが順次認証する相互認証システムであって、
前記ホストにおいて、前記伝送路を介して接続された前記複数のデバイスのうち、相互認証させる第1のデバイスと第2のデバイスとを決定するデバイス決定手段と、
前記ホストにおいて、前記デバイス決定手段により決定された、第1及び第2のデバイスを指定して、相互認証を行うように命令する第1、第2のコマンドと、前記第1のデバイスから相互認証結果を読み出すように命令する第3のコマンドを生成するコマンド生成手段と、
前記ホストにおいて、前記コマンド生成手段により生成された、前記第1のコマンドを前記伝送路を介して前記第1、第2のデバイスに送信するホスト側送信手段と、
前記第1のデバイスにおいて、前記ホストが送信する、前記第1のコマンドを受信する第1のデバイス側受信手段と、
前記第2のデバイスにおいて、前記ホストが送信する、前記第1のコマンドを受信する第2のデバイス側受信手段と、
前記第1のデバイスにおいて、第1の乱数データを生成する第1のデバイス側乱数データ生成手段と、
前記第2のデバイスにおいて、第2の乱数データを生成する第2のデバイス側乱数データ生成手段と、
前記第1のデバイスにおいて、前記第1のデバイス側受信手段により受信された前記第1のコマンドに応じて、前記第1の乱数データを、前記第1、第2のデバイスが共通に保持する第1の鍵データを用いて暗号化して、第1の暗号データを生成する第1のデバイス側暗号化手段と、
前記第2のデバイスにおいて、前記第2のデバイス側受信手段により受信された前記第1のコマンドに応じて、前記第2の乱数データを、前記第1の鍵データを用いて第2の暗号データを生成する第2のデバイス側暗号化手段と、
前記第1のデバイスにおいて、前記第1の暗号データを、前記伝送路を介して前記ホストに送信する第1のデバイス側送信手段と、
前記第2のデバイスにおいて、前記第1のデバイスが送信する、前記第1の暗号データを受信する第2のデバイス側受信手段と、
前記第2のデバイスにおいて、前記第2のデバイス側受信手段により受信した、前記第1の暗号データを、前記第1の鍵データを用いて、第1の復号結果を得る第2のデバイス側復号化手段と、
前記第2のデバイスにおいて、前記第2のデバイス側復号化手段により得た前記第1の復号結果と、前記第2の乱数データとの間で演算を行い、第2の演算結果を得る第2のデバイス側演算手段と、
前記第2のデバイスにおいて、前記第2のデバイス側暗号化手段により生成された、前記第2の暗号データを、前記伝送路を介して前記ホストに送信する第2のデバイス側送信手段と、
前記第1のデバイスにおいて、前記第2のデバイスが送信する、前記第2の暗号データを受信する第1のデバイス側受信手段と、
前記第1のデバイスにおいて、前記第1のデバイス側受信手段により受信した、前記第2の暗号データを、前記第1の鍵データを用いて復号し、第2の復号結果を得る第1のデバイス側復号化手段と、
前記第1のデバイスにおいて、前記第1のデバイス側復号化手段により得た、前記第2の復号結果と、前記第1の乱数データとの間で演算を行い、第1の演算結果を得る第1のデバイス側演算手段と、
前記ホストにおいて、前記コマンド生成手段により生成された、前記第2のコマンドを、前記伝送路を介して前記第1、第2のデバイスに送信するホスト側送信手段と、
前記第1のデバイスにおいて、前記ホストが送信する、前記第2のコマンドを受信する第1のデバイス側受信手段と、
前記第2のデバイスにおいて、前記ホストが送信する、前記第2のコマンドを受信する第2のデバイス側受信手段と、
前記第1のデバイスにおいて、前記第1のデバイス側受信手段により受信した、前記第2のコマンドに応じて前記第1の演算結果を、前記第1、第2のデバイスが共通に保持する第2の鍵データを用いて暗号化して、第3の暗号データを生成する第1のデバイス側暗号化手段と、
前記第2のデバイスにおいて、前記第2のデバイス側受信手段により受信した、前記第2のコマンドに応じて、前記第2の演算結果を、前記第2の鍵データにより暗号化して、第4の暗号データを生成する第2のデバイス側暗号化手段と、
前記第1のデバイスにおいて、前記第1のデバイス側受信手段により受信した、前記第2のコマンドに応じて、前記第3の暗号データを、前記伝送路を介して前記ホストに送信する第1のデバイス側送信手段と、
前記第2のデバイスにおいて、前記第1のデバイスが送信する、前記第3の暗号データを受信する第2のデバイス側受信手段と、
前記第2のデバイスにおいて、前記第2のデバイス側受信手段で受信した、前記第3の暗号データを、前記第2の鍵データを用いて復号して第3の復号結果を得る第2のデバイス側復号化手段と、
前記第2のデバイスにおいて、前記第3の復号結果と、前記第2の演算結果との一致/不一致を判定して、前記第1のデバイスを認証する第2のデバイス側認証手段と、
前記第2のデバイスにおいて、前記第2のデバイス側認証手段による判定結果が一致の場合は、前記第1のデバイスが認証されたと判断して、前記第4の暗号データを前記伝送路を介して前記ホストに送信し、
不一致の場合は、前記第1のデバイスは認証されなかったと判断して、前記第2の演算結果とは異なる第3の乱数データを、前記第2のデバイス側乱数データ生成手段で生成し、前記第3の乱数データを、前記第2の鍵データを用いて、前記第2のデバイス側受信手段で受信した前記第2のコマンドに応じて、前記第2のデバイス側暗号化手段で暗号化して第5の暗号データを生成し、前記伝送路を介して前記ホストに送信する第2のデバイス側認証結果送信手段と、
前記第1のデバイスにおいて、前記第2のデバイスが送信する、前記第4の暗号データあるいは、前記第5の暗号データを受信する第1のデバイス側受信手段と、
前記第1のデバイスにおいて、前記第1のデバイス側受信手段で受信した、前記第4の暗号データあるいは、前記第5の暗号データを、前記第2の鍵データを用いて復号して第4の復号結果を得る第1のデバイス側復号化手段と、
前記第1のデバイスにおいて、前記第4の復号結果と、前記第1の演算結果との一致/不一致を判定する第1のデバイス側一致判定手段と、
前記ホストにおいて、前記コマンド生成手段により生成された、前記第3のコマンドを前記伝送路を介して前記第1のデバイスに送信するホスト側送信手段と、
前記第1のデバイスにおいて、前記ホストが送信する前記第3のコマンドを受信する第1のデバイス側受信手段と、
前記第1のデバイスにおいて、前記第1のデバイス側受信手段で受信した、前記第3のコマンドに応じて、前記第1のデバイス側一致判定段で判定した結果を、前記伝送路を介して前記ホストに送信する第1のデバイス側一致判定結果送信手段と、
前記ホストにおいて、前記第1のデバイスから送信された、前記第1のデバイス側一致判定手段での判定結果を受信するホスト側受信手段と、
第1のデバイスにおいて、前記第1のデバイス側一致判定手段で判定した結果により、前記第2のデバイスとの相互認証結果を判定する第1のデバイス側相互認証手段と、
前記ホストにおいて、前記ホスト側受信手段により受信された、前記第1のデバイス側一致判定手段での判定結果に基づいて、前記第1及び第2のデバイスの相互認証結果を判定する認証結果判定手段とを有することを特徴とする。
The mutual authentication system of the present invention is a mutual authentication system in which data is transmitted and received between a plurality of devices and a host connected via a transmission path, and the plurality of devices are sequentially authenticated by the host,
In the host, device determination means for determining a first device and a second device to be mutually authenticated among the plurality of devices connected via the transmission path;
In the host, first and second commands for instructing mutual authentication by designating the first and second devices determined by the device determination means, and mutual authentication from the first device Command generating means for generating a third command for instructing to read the result;
In the host, host side transmission means for transmitting the first command generated by the command generation means to the first and second devices via the transmission path;
In the first device, first device-side receiving means for receiving the first command transmitted by the host;
Second device-side receiving means for receiving the first command transmitted by the host in the second device;
First device-side random number data generating means for generating first random number data in the first device;
In the second device, second device-side random number data generating means for generating second random number data;
In the first device, the first and second devices commonly hold the first random number data in accordance with the first command received by the first device-side receiving means. First device side encryption means for generating first encrypted data by encrypting using one key data;
In the second device, in response to the first command received by the second device-side receiving means, the second random number data is converted into second encrypted data using the first key data. Second device side encryption means for generating
In the first device, first device-side transmission means for transmitting the first encrypted data to the host via the transmission path;
In the second device, second device side receiving means for receiving the first encrypted data transmitted by the first device;
In the second device, a second device-side decryption that obtains a first decryption result from the first encrypted data received by the second device-side receiving means using the first key data And
In the second device, a calculation is performed between the first decryption result obtained by the second device-side decryption means and the second random number data, and a second computation result is obtained. Device side computing means,
In the second device, second device-side transmission means for transmitting the second encrypted data generated by the second device-side encryption means to the host via the transmission path;
A first device-side receiving means for receiving the second encrypted data transmitted by the second device in the first device;
In the first device, the first device that decrypts the second encrypted data received by the first device-side receiving means using the first key data and obtains a second decryption result. Side decryption means;
In the first device, a calculation is performed between the second decoding result obtained by the first device-side decoding means and the first random number data, and a first calculation result is obtained. 1 device side computing means;
Host side transmission means for transmitting the second command generated by the command generation means in the host to the first and second devices via the transmission path;
First device-side receiving means for receiving the second command transmitted by the host in the first device;
Second device-side receiving means for receiving the second command transmitted by the host in the second device;
In the first device, the first and second devices commonly hold the first calculation result according to the second command received by the first device-side receiving unit. First device-side encryption means for generating third encrypted data by encrypting using the key data of
In the second device, in accordance with the second command received by the second device-side receiving means, the second calculation result is encrypted with the second key data, and the fourth device Second device side encryption means for generating encrypted data;
The first device transmits the third encrypted data to the host via the transmission path according to the second command received by the first device-side receiving unit. A device-side transmission means;
In the second device, second device-side receiving means for receiving the third encrypted data transmitted by the first device;
In the second device, a second device that obtains a third decryption result by decrypting the third encrypted data received by the second device-side receiving means using the second key data Side decryption means;
In the second device, a second device-side authentication unit that authenticates the first device by determining whether the third decryption result and the second calculation result match / mismatch,
In the second device, if the determination result by the second device-side authentication means is coincident, it is determined that the first device has been authenticated, and the fourth encrypted data is transmitted via the transmission path. To the host,
In the case of mismatch, it is determined that the first device has not been authenticated, and third random number data different from the second calculation result is generated by the second device-side random number data generation means, Using the second key data, the third random number data is encrypted by the second device side encryption unit according to the second command received by the second device side reception unit. Second device-side authentication result transmitting means for generating fifth encrypted data and transmitting the fifth encrypted data to the host via the transmission path;
In the first device, first device-side receiving means for receiving the fourth encrypted data or the fifth encrypted data transmitted by the second device;
In the first device, the fourth encrypted data or the fifth encrypted data received by the first device-side receiving means is decrypted by using the second key data to obtain a fourth First device side decoding means for obtaining a decoding result;
In the first device, first device side coincidence determining means for determining whether the fourth decoding result and the first calculation result match / do not match;
In the host, host-side transmission means for transmitting the third command generated by the command generation means to the first device via the transmission path;
In the first device, first device-side receiving means for receiving the third command transmitted by the host;
In the first device, the result determined in the first device-side coincidence determination stage in accordance with the third command received by the first device-side receiving means is transmitted via the transmission path. First device-side coincidence determination result transmission means for transmitting to the host;
In the host, host-side receiving means for receiving the determination result in the first device-side coincidence determining means transmitted from the first device;
A first device-side mutual authentication means for determining a mutual authentication result with the second device based on a result determined by the first device-side match determination means in the first device;
In the host, an authentication result determination unit that determines a mutual authentication result of the first and second devices based on a determination result of the first device side match determination unit received by the host side reception unit. It is characterized by having.

本発明の相互認証方法は、伝送路を介して接続された複数のデバイスとホストとの間でデータの送受信を行い、前記複数のデバイスを前記ホストが順次認証する相互認証方法であって、
前記伝送路を介して接続された前記複数のデバイスのうち、相互認証させる第1のデバイスと第2のデバイスとを、前記デバイス決定手段により決定するデバイス決定工程と、
前記ホストにおいて、前記デバイス決定工程で決定した、前記第1、第2のデバイスを指定して、相互認証を行うように命令する、前記第1、第2のコマンドと、前記第1のデバイスから相互認証結果を読み出すように命令する、前記第3のコマンドを、前記コマンド生成手段で生成するコマンド生成工程と、
前記ホストにおいて、前記コマンド生成工程で生成した、前記第1のコマンドを、前記ホスト側送信手段で、前記伝送路を介して前記第1、第2のデバイスとに送信するホスト側送信工程と、
前記第1のデバイスにおいて、前記ホスト側送信工程にて、前記ホストが送信する、前記第1のコマンドを、前記第1のデバイス側受信手段で受信する第1のデバイス側受信工程と、
前記第2のデバイスにおいて、前記ホスト側送信工程にて、前記ホストが送信する、前記第1のコマンドを、前記第2のデバイス側受信手段で受信する第2のデバイス側受信工程と、
前記第1のデバイスにおいて、前記第1の乱数データを、前記第1のデバイス側乱数データ生成手段で生成する第1のデバイス側乱数データ生成工程と、
前記第2のデバイスにおいて、前記第2の乱数データを、前記第2のデバイス側乱数データ生成手段で生成する第2のデバイス側乱数データ生成工程と、
前記第1のデバイスにおいて、前記第1のデバイス側受信工程にて受信した、前記第1のコマンドに応じて、前記第1の乱数データを、前記第1、第2のデバイスが共通に保持する、前記第1の鍵データを用いて、前記第1のデバイス側暗号化手段で、前記第1の暗号データを生成する第1のデバイス側暗号化工程と、
前記第2のデバイスにおいて、前記第2のデバイス側受信工程にて受信した、前記第1のコマンドに応じて、前記第2の乱数データを、前記第1の鍵データを用いて、前記第2のデバイス側暗号化手段で、前記第2の暗号データを生成する第2のデバイス側暗号化工程と、
前記第1のデバイスにおいて、前記第1の暗号データを、前記第1のデバイス側送信手段で、前記伝送路を介して前記ホストに送信する第1のデバイス側送信工程と、
前記第2のデバイスにおいて、前記第1のデバイス側送信工程にて前記第1のデバイスが送信する、前記第1の暗号データを、前記第2のデバイス側受信手段で受信する第2のデバイス側受信工程と、
前記第2のデバイスにおいて、前記第2のデバイス側受信工程にて受信した、前記第1の暗号データを、前記第1の鍵データを用いて、前記第2のデバイス側復号化手段で前記第1の復号結果を得る第2のデバイス側復号化工程と、
前記第2のデバイスにおいて、前記第2のデバイス側復号化工程で得た、前記第1の復号結果と、前記第2の乱数データとの間で、前記第2のデバイス側演算手段で演算を行い、前記第2の演算結果を得る第2のデバイス側演算工程と、
前記第2のデバイスにおいて、前記第2の暗号データを、前記第2のデバイス側送信手段で、前記伝送路を介して前記ホストに送信する第2のデバイス側送信工程と、
前記第1のデバイスにおいて、前記第2のデバイス側送信工程にて、前記第2のデバイスが送信する、前記第2の暗号データを、前記第1のデバイス側受信手段で受信する第1のデバイス側受信工程と、
前記第1のデバイスにおいて、前記第1のデバイス側受信工程にて受信した、前記第2の暗号データを、前記第1の鍵データを用いて、前記第1のデバイス側復号化手段で復号し、前記第2の復号結果を得る第1のデバイス側復号化工程と、
前記第1のデバイスにおいて、前記第1のデバイス側復号化工程にて得た、前記第2の復号結果と、前記第1の乱数データとの間で、前記第1のデバイス側演算手段で演算を行い、前記第1の演算結果を得る第1のデバイス側演算工程と、
ホストにおいて、前記コマンド生成工程で生成した、前記第2のコマンドを、前記ホスト側送信手段で、前記伝送路を介して前記第1、第2のデバイスに送信するホスト側送信工程と、
前記第1のデバイスにおいて、前記ホスト側送信工程にて、前記ホストが送信する、前記第2のコマンドを、前記第1のデバイス側受信手段で受信する第1のデバイス側受信工程と、
前記第2のデバイスにおいて、前記ホスト側送信工程にて、前記ホストが送信する、前記第2のコマンドを、前記第2のデバイス側受信手段で受信する第2のデバイス側受信工程と、
前記第1のデバイスにおいて、前記第1のデバイス側受信工程にて受信した、前記第2のコマンドに応じて、前記第1の演算結果を、前記第1、第2のデバイスが共通に保持する、前記第2の鍵データを用いて、前記第1のデバイス側暗号化手段にて、前記第3の暗号データを生成する第1のデバイス側暗号化工程と、
前記第2のデバイスにおいて、前記第2のデバイス側受信工程にて受信した、前記第2のコマンドに応じて、前記第2の演算結果を、前記第2の鍵データにより、前記第2のデバイス側暗号化手段で暗号化して、前記第4の暗号データを生成する第2のデバイス側暗号化工程と、
前記第1のデバイスにおいて、前記第1のデバイス側暗号化工程にて生成された、前記第3の暗号データを、前記第1のデバイス側送信手段で、前記伝送路を介して前記ホストに送信する第1のデバイス側送信工程と、
前記第2のデバイスにおいて、前記第1のデバイス側送信工程にて、前記第1のデバイスが送信する、前記第3の暗号データを、前記第2のデバイス側受信手段で受信する第2のデバイス側受信工程と、
前記第2のデバイスにおいて、前記第2のデバイス側受信工程にて受信した第3の暗号データを、前記第2の鍵データを用いて、前記第2のデバイス側復号化手段にて復号して前記第3の復号結果を得る第2のデバイス側復号化工程と、
前記第2のデバイスにおいて、前記第2のデバイス側復号化工程で得た、前記第3の復号結果と、前記第2の演算結果の一致/不一致を、前記第2のデバイス側認証手段で判定して、前記第1のデバイスを認証する第2のデバイス側認証工程と、
前記第2のデバイスにおいて、前記第2のデバイス側認証工程での、前記第2のデバイス側認証手段による判定結果が一致の場合は、前記第1のデバイスが認証されたと判断して、前記第4の暗号データを前記伝送路を介して前記ホストに送信し、
不一致の場合は、前記第1のデバイスは認証されなかったと判断して、前記第2の演算結果とは異なる前記第3の乱数データを、前記第2のデバイス側乱数データ生成手段で生成し、前記第3の乱数データを、前記第2の鍵データを用いて、前記第2のデバイス側受信工程にて受信した前記第2のコマンドに応じて、前記第2のデバイス側暗号化手段で、前記第5の暗号データを生成して、前記第2のデバイス側認証結果送信手段により、前記伝送路を介して前記ホストに送信する第2のデバイス側認証結果送信工程と、
前記第1のデバイスにおいて、前記第2のデバイス側認証結果送信工程にて、前記第2のデバイスが生成して、前記伝送路を介して前記ホストに送信する、前記第4の暗号データあるいは、前記第5の暗号データを、前記第1のデバイス側受信手段で受信する第1のデバイス側受信工程と、
前記第1のデバイスにおいて、前記第1のデバイス側受信工程で受信した、前記第4の暗号データあるいは前記第5の暗号データを、前記第2の鍵データを用いて、前記第1のデバイス側復号化手段で復号して、前記第4の復号結果を得る第1のデバイス側復号化工程と、
前記第1のデバイスにおいて、前記第1のデバイス側復号化工程にて得た、前記第4の復号結果と、前記第1の演算結果との一致/不一致を、前記第1のデバイス側一致判定手段で判定する第1のデバイス側一致判定工程と、
前記ホストにおいて、前記コマンド生成工程で生成した、前記第3のコマンドを、前記ホスト側送信手段で、前記伝送路を介して前記第1のデバイスに送信するホスト側送信工程と、
前記第1のデバイスにおいて、前記ホスト側送信工程にて前記ホストが送信する、前記第3のコマンドを、前記第1のデバイス側受信手段で受信する第1のデバイス側受信工程と、
前記第1のデバイスにおいて、前記第1のデバイス側受信工程にて受信した、前記第3のコマンドに応じて、前記第1のデバイス側一致判定手段での判定結果を、前記第1のデバイス側一致結果送信手段で、前記伝送路を介して前記ホストに送信する第1のデバイス側一致判定結果送信工程と、
前記ホストにおいて、前記第1のデバイス側一致判定結果送信工程にて、前記第1のデバイスから送信される、前記第1のデバイス側一致判定手段での判定結果を、前記ホスト側受信手段で受信するホスト側受信工程と、
前記第1のデバイスにおいて、前記第1のデバイス側一致判定手段での判定結果により、前記第2のデバイスとの相互認証結果を判定する第1のデバイス側相互認証結果工程と、
前記ホストにおいて、前記ホスト側受信工程にて受信された前記第1のデバイス側一致判定手段での判定結果に基づいて、前記第1、第2のデバイスの相互認証結果を前記認証結果判定手段で判定する認証結果判定工程とを有し、
前記ホストから送信された第1、第2のコマンドにより第1、第2のデバイスに指定されなかったデバイスは、相互認証動作に参加せず待機していることを特徴とする。
The mutual authentication method of the present invention is a mutual authentication method in which data is transmitted / received between a plurality of devices and a host connected via a transmission path, and the plurality of devices are sequentially authenticated by the host,
A device determining step of determining, by the device determining means, a first device and a second device to be mutually authenticated among the plurality of devices connected via the transmission path;
The host designates the first and second devices determined in the device determination step, and instructs to perform mutual authentication. From the first and second commands and the first device A command generation step of generating the third command by the command generation means, instructing to read a mutual authentication result;
In the host, the host-side transmission step of transmitting the first command generated in the command generation step to the first and second devices via the transmission path by the host-side transmission unit;
In the first device, in the host side transmission step, the first device side reception step of receiving the first command transmitted by the host by the first device side reception unit;
In the second device, in the host-side transmission step, the second device-side reception step of receiving the first command transmitted by the host by the second device-side reception unit;
In the first device, a first device-side random number data generation step of generating the first random number data by the first device-side random number data generation unit;
In the second device, a second device-side random number data generating step of generating the second random number data by the second device-side random number data generating means;
In the first device, the first and second devices commonly hold the first random number data according to the first command received in the first device-side receiving step. A first device-side encryption step of generating the first encrypted data by the first device-side encryption means using the first key data;
In the second device, in response to the first command received in the second device-side receiving step, the second random number data is converted into the second key data using the first key data. A second device side encryption step of generating the second encrypted data by the device side encryption means of
In the first device, a first device-side transmission step of transmitting the first encrypted data to the host via the transmission path by the first device-side transmission unit;
In the second device, the second device side that receives the first encrypted data transmitted by the first device in the first device-side transmission step by the second device-side receiving unit. Receiving process;
In the second device, the first encrypted data received in the second device-side receiving step is processed by the second device-side decrypting means using the first key data. A second device side decoding step of obtaining a decoding result of 1;
In the second device, calculation is performed by the second device side calculation means between the first decoding result obtained in the second device side decoding step and the second random number data. Performing a second device-side calculation step to obtain the second calculation result;
In the second device, a second device-side transmission step of transmitting the second encrypted data to the host via the transmission path by the second device-side transmission unit;
In the first device, in the second device-side transmission step, the first device receives the second encrypted data transmitted by the second device by the first device-side receiving unit. Side reception process;
In the first device, the second encrypted data received in the first device-side receiving step is decrypted by the first device-side decryption means using the first key data. A first device side decoding step for obtaining the second decoding result;
In the first device, calculation is performed by the first device-side calculation means between the second decoding result obtained in the first device-side decoding step and the first random number data. Performing a first device side calculation step for obtaining the first calculation result;
In the host, the host side transmission step of transmitting the second command generated in the command generation step to the first and second devices via the transmission path by the host side transmission means;
In the first device, in the host-side transmission step, the first device-side reception step of receiving the second command transmitted by the host by the first device-side reception unit;
In the second device, in the host-side transmission step, the second device-side reception step of receiving the second command transmitted by the host by the second device-side reception unit;
In the first device, the first and second devices commonly hold the first calculation result according to the second command received in the first device-side receiving step. A first device-side encryption step of generating the third encrypted data by the first device-side encryption means using the second key data;
In the second device, in accordance with the second command received in the second device side receiving step, the second operation result is converted into the second device by the second key data. A second device-side encryption step of generating the fourth encrypted data by encrypting with the side encryption means;
In the first device, the third encrypted data generated in the first device side encryption step is transmitted to the host via the transmission path by the first device side transmission means. A first device side transmission step to perform,
In the second device, the second device that receives the third encrypted data transmitted by the first device in the first device-side transmission step by the second device-side receiving unit. Side reception process;
In the second device, the second device-side decrypting means decrypts the third encrypted data received in the second device-side receiving step by using the second key data. A second device side decoding step for obtaining the third decoding result;
In the second device, the second device-side authentication means determines whether the third decryption result obtained in the second device-side decryption step matches or does not match the second calculation result. A second device-side authentication step for authenticating the first device;
In the second device, if the determination result by the second device-side authentication means in the second device-side authentication step is the same, it is determined that the first device has been authenticated, 4 encrypted data is transmitted to the host via the transmission path,
In the case of mismatch, it is determined that the first device has not been authenticated, and the third random number data different from the second calculation result is generated by the second device-side random number data generation means, In response to the second command received in the second device-side receiving step using the second key data, the third random number data is received by the second device-side encryption means, A second device-side authentication result transmitting step of generating the fifth encrypted data and transmitting the fifth encrypted data to the host via the transmission path by the second device-side authentication result transmitting means;
In the first device, in the second device-side authentication result transmission step, the second device generates and transmits the fourth encrypted data to the host via the transmission path, or A first device-side receiving step of receiving the fifth encrypted data by the first device-side receiving means;
In the first device, the fourth encrypted data or the fifth encrypted data received in the first device side receiving step is converted into the first device side by using the second key data. A first device side decoding step of decoding by a decoding means to obtain the fourth decoding result;
In the first device, whether or not the fourth decoding result obtained in the first device-side decoding step matches the first operation result is determined as the first device-side matching determination. A first device side coincidence determining step determined by means;
In the host, a host-side transmission step of transmitting the third command generated in the command generation step to the first device via the transmission path by the host-side transmission unit;
In the first device, a first device-side receiving step of receiving the third command transmitted by the host in the host-side transmitting step by the first device-side receiving unit;
In the first device, in accordance with the third command received in the first device-side receiving step, the determination result in the first device-side coincidence determining means is displayed on the first device side. A first device-side coincidence determination result transmission step of transmitting to the host via the transmission path by a coincidence result transmission unit;
In the host, in the first device side coincidence determination result transmission step, the determination result in the first device side coincidence determination unit that is transmitted from the first device is received by the host side reception unit. A host-side receiving process,
In the first device, a first device-side mutual authentication result step of determining a mutual authentication result with the second device based on a determination result in the first device-side coincidence determining unit;
In the host, based on the determination result in the first device-side coincidence determining unit received in the host-side receiving step, the mutual authentication result of the first and second devices is determined by the authentication result determining unit. An authentication result determination step for determining,
Devices that are not designated as the first and second devices by the first and second commands transmitted from the host do not participate in the mutual authentication operation and are on standby.

本発明によれば、親機が認証エンジンを具備することなく、伝送路に接続されたデバイスの真偽を確認することが可能となる。   According to the present invention, it is possible to confirm the authenticity of a device connected to a transmission path without the master unit having an authentication engine.

本発明の実施形態を示し、相互認証システムの全体構成例を示す図である。It is a figure which shows embodiment of this invention and shows the example of a whole structure of a mutual authentication system. 本発明の実施形態を示し、親機の構成例を示す図である。It is a figure which shows embodiment of this invention and shows the structural example of a main | base station. 本発明の実施形態を示し、第1のデバイスの構成例を示す図である。It is a figure which shows embodiment of this invention and shows the structural example of a 1st device. 本発明の実施形態を示し、第2のデバイスの構成例を示す図である。It is a figure which shows embodiment of this invention and shows the structural example of a 2nd device. 本発明の実施形態を示し、相互認証を行う手順を説明するタイミングチャートである。It is a timing chart which shows the embodiment of the present invention and explains the procedure of performing mutual authentication.

次に、図面を参照しながら本発明の実施形態を説明する。
(第1の実施形態)
図1は、本発明の実施形態を示し、相互認証システムの概略構成を示す図である。
図1に示したように、本実施形態の相互認証システムにおいては、ホスト(親機)10に対して複数のデバイスA11、デバイスB12、デバイスC13・・・がI2C(Inter-Integrated Circuit)伝送路14を介して接続されている。
Next, embodiments of the present invention will be described with reference to the drawings.
(First embodiment)
FIG. 1 is a diagram showing a schematic configuration of a mutual authentication system according to an embodiment of the present invention.
As shown in FIG. 1, in the mutual authentication system of the present embodiment, a plurality of devices A11, B12, C13... Are connected to a host (master unit) 10 through an I2C (Inter-Integrated Circuit) transmission path. 14 is connected.

ホスト10は、伝送路14に接続されたデバイス11〜13の真偽を判断し、真のデバイスに対してのみアクセス制限を開放する。伝送路14に接続されたデバイスが真のデバイスであるか否かを判断するためには、一般には、ホスト10が認証用の専用認証エンジンを備え、ホスト10と認証対象のデバイスとの間で相互認証アルゴリズムを実行する必要がある。本実施形態においては、ホスト10に認証用の専用認証エンジンを具備することなく、伝送路14に接続されたデバイスの真偽を判断できるようにしている。   The host 10 determines whether the devices 11 to 13 connected to the transmission line 14 are true or false, and releases the access restriction only for the true devices. In order to determine whether or not a device connected to the transmission line 14 is a true device, generally, the host 10 includes a dedicated authentication engine for authentication, and between the host 10 and the device to be authenticated. Mutual authentication algorithm needs to be executed. In the present embodiment, the authenticity of the device connected to the transmission path 14 can be determined without providing the host 10 with a dedicated authentication engine for authentication.

図1に示したように、本実施形態の第1のデバイスA11にはメモリ11aが配設されており、メモリ11aに「第1、第2の鍵データKA、KB」が記憶されている。また、第2のデバイスB12にはメモリ12aが配設されており、メモリ12aに「第1、第2の鍵データKA、KB」が記憶されている。また、第3のデバイスC13にはメモリ13aが配設されており、メモリ13aに「第1、第2の鍵データKA、KB」が記憶されている。   As shown in FIG. 1, a memory 11a is provided in the first device A11 of the present embodiment, and “first and second key data KA, KB” are stored in the memory 11a. In addition, the memory 12a is disposed in the second device B12, and “first and second key data KA, KB” are stored in the memory 12a. In addition, the memory 13a is disposed in the third device C13, and “first and second key data KA, KB” are stored in the memory 13a.

しかしながら、本実施形態のホスト10は伝送路14に接続されたデバイスとの間で相互認証を行わないので、メモリ10aには「第1、第2の鍵データKA、KB」が記憶されていない。図2にホスト10の概略構成例を示す。   However, since the host 10 of the present embodiment does not perform mutual authentication with the device connected to the transmission path 14, the memory 10a does not store "first and second key data KA, KB". . FIG. 2 shows a schematic configuration example of the host 10.

図2に示すように、ホスト10において、制御部21は、内蔵するプログラムに応じて、各種処理を行う。例えば、制御部21は、相互認証を行うデバイスに送信するコマンドを、コマンド生成部23にて生成するように制御し、生成したコマンドを送信部24に出力するよう制御する。   As shown in FIG. 2, in the host 10, the control unit 21 performs various processes according to a built-in program. For example, the control unit 21 controls the command generation unit 23 to generate a command to be transmitted to a device that performs mutual authentication, and controls the generated command to be output to the transmission unit 24.

メモリ22は、制御部21における処理に使用されるデータなどを記憶している。送信部24は、コマンド生成部23より供給されたコマンドを、I/F部25と伝送路14を介して相互認証を行うデバイスに送信する。   The memory 22 stores data used for processing in the control unit 21. The transmission unit 24 transmits the command supplied from the command generation unit 23 to the device that performs mutual authentication via the I / F unit 25 and the transmission path 14.

受信部26は、I/F部25を介して、相互認証を行うデバイスにより送信されたデータを認証結果判定部27に出力する。   The reception unit 26 outputs the data transmitted by the device that performs mutual authentication to the authentication result determination unit 27 via the I / F unit 25.

制御部21からの制御により、認証結果判定部27は、受信部26より供給されたデータに基づいて、伝送路14に接続されたデバイスから送信された認証結果の真偽を判定し、判定結果を制御部21に出力するか、あるいは、受信部26より供給されたデータをそのまま制御部21に出力する。   Under the control of the control unit 21, the authentication result determination unit 27 determines the authenticity of the authentication result transmitted from the device connected to the transmission path 14 based on the data supplied from the reception unit 26, and the determination result Is output to the control unit 21 or the data supplied from the reception unit 26 is output to the control unit 21 as it is.

図3は、本発明の実施形態である第1のデバイスの構成例を示すブロック図である。
第1のデバイスにおいて、制御部31は、ホスト10より供給されるコマンドに応じて、各種処理を行う。具体的には、ホスト10からのコマンドを受信部36から受け取り、そのコマンドに対応した処理を行い、その処理の結果に対応して生成した乱数データや演算結果や応答データやメモリ32からの読み出しデータ等を暗号部33に出力する。
FIG. 3 is a block diagram illustrating a configuration example of the first device according to the embodiment of the present invention.
In the first device, the control unit 31 performs various processes in accordance with commands supplied from the host 10. Specifically, a command from the host 10 is received from the receiving unit 36, processing corresponding to the command is performed, and random number data, calculation results, response data, and reading from the memory 32 generated corresponding to the processing result are read out. Data and the like are output to the encryption unit 33.

メモリ32は、RAM(Random Access Memory)部(とROM(Read Only Memory)部を有している。そのうちのRAM部は、制御部31における処理に使用されるデータなどを一時的に記憶する。一方、ROM部には、デバイス固有のデバイスアドレスと暗号化または復号化において利用される「第1、第2の鍵データKA、KB」等が予め記憶されている。   The memory 32 includes a RAM (Random Access Memory) unit (and a ROM (Read Only Memory) unit. The RAM unit temporarily stores data used for processing in the control unit 31. On the other hand, a device address unique to the device and “first and second key data KA, KB” used for encryption or decryption are stored in advance in the ROM section.

暗号部33は、制御部31より供給された暗号化するべきデータを、所定の鍵で暗号化し、暗号化したデータを送信部34に出力し、制御部31より供給されたデータを暗号化しない場合はそのまま送信部34に出力する。
送信部34は、暗号部33より供給されたデータを、I/F部35を介して伝送路14に出力し、ホスト10に送信する。
The encryption unit 33 encrypts the data to be encrypted supplied from the control unit 31 with a predetermined key, outputs the encrypted data to the transmission unit 34, and does not encrypt the data supplied from the control unit 31. In this case, the data is output to the transmission unit 34 as it is.
The transmission unit 34 outputs the data supplied from the encryption unit 33 to the transmission path 14 via the I / F unit 35 and transmits the data to the host 10.

受信部36は、伝送路14を介して送られてきたデータをI/F部35を介して、受信し、復号部37に出力する。
復号部37は、受信部36より供給されたデータを、制御部21の制御に応じて所定の鍵で復号化し、復号化したデータを制御部31に出力するか、そのまま制御部31に出力する。
The receiving unit 36 receives the data sent via the transmission path 14 via the I / F unit 35 and outputs the data to the decoding unit 37.
The decryption unit 37 decrypts the data supplied from the reception unit 36 with a predetermined key according to the control of the control unit 21, and outputs the decrypted data to the control unit 31 or outputs it to the control unit 31 as it is. .

図4は、本発明の実施形態である第2のデバイスの構成例を示すブロック図である。第2のデバイスの構成は、図3に示した第1のデバイスの構成と全く同一であるが、動作説明を判り易くするため図3、4に分けて説明する。   FIG. 4 is a block diagram showing a configuration example of the second device according to the embodiment of the present invention. The configuration of the second device is exactly the same as the configuration of the first device shown in FIG. 3, but will be described separately in FIGS. 3 and 4 for easy understanding of the operation.

次に、図1を参照しながら本実施形態の相互認証システムの処理の概略を説明する。なお、図5に処理ステップを示す、各ステップで行われるデータ伝送は伝送路14を介して行われる。   Next, the outline of the process of the mutual authentication system of this embodiment will be described with reference to FIG. Note that data transmission performed in each step, which shows processing steps in FIG. 5, is performed via the transmission path 14.

(ステップS1)
ホスト10が、相互認証させる第1、第2のデバイスアドレスを指定し、さらに乱数データとして生成した第1のスクランブルデータX、を附加して、第1の相互認証コマンド1を送信部24からI/F部25を介して伝送路14に送信する。例えば、第1のデバイスA11と第2のデバイスB12とを指定して第1の相互認証コマンド1の送信を行う。
(Step S1)
The host 10 designates the first and second device addresses to be mutually authenticated, further adds the first scrambled data X generated as random number data, and sends the first mutual authentication command 1 from the transmitting unit 24 to the I The data is transmitted to the transmission line 14 via the / F unit 25. For example, the first mutual authentication command 1 is transmitted by designating the first device A11 and the second device B12.

本実施形態においては、第1のデバイスA11が真のデバイスであることが予め確認されている。したがって、第1〜第3の相互認証コマンド1〜3に従って第1のデバイスA11と第2のデバイスB12との間で相互認証を行い、第1のデバイスA11のメモリ11aに記憶されている「第1、第2の鍵データKA、KB」と、第2のデバイスB12のメモリ12aに記憶されている「第1、第2の鍵データKA、KB」とが一致し、相互認証アルゴリズム計算が同じで、動作制御に正しく応答した場合には、第2のデバイスB12は真のデバイスであるとホスト10により認証される。デバイスアドレスを指定されなかったデバイスは相互認証動作に参加せず待機する。   In the present embodiment, it is confirmed in advance that the first device A11 is a true device. Therefore, mutual authentication is performed between the first device A11 and the second device B12 in accordance with the first to third mutual authentication commands 1 to 3, and the “first” stored in the memory 11a of the first device A11. 1 and second key data KA and KB ”and“ first and second key data KA and KB ”stored in the memory 12a of the second device B12 match, and the mutual authentication algorithm calculation is the same. In the case of correctly responding to the operation control, the second device B12 is authenticated by the host 10 as a true device. A device whose device address is not designated waits without participating in the mutual authentication operation.

第1のデバイスA11は、ホスト10が伝送路14に送信する第1の相互認証コマンド1をI/F部35を介して受信部36により受信する。
第2のデバイスB12は、ホスト10が伝送路14に送信する第1の相互認証コマンド1をI/F部45を介して受信部46により受信する。
The first device A <b> 11 receives the first mutual authentication command 1 transmitted from the host 10 to the transmission path 14 by the receiving unit 36 via the I / F unit 35.
The second device B 12 receives the first mutual authentication command 1 transmitted from the host 10 to the transmission path 14 by the receiving unit 46 via the I / F unit 45.

ホスト10から送信された第1の相互認証コマンド1で第1のデバイスとしてデバイスアドレスを指定された第1のデバイスA11は、制御部31が第1の乱数Raを生成する。
ホスト10から送信された第1の相互認証コマンド1で第2のデバイスとしてデバイスアドレスを指定された第2のデバイスB12は、制御部41が第2の乱数Rbを生成する。
第1のデバイスA11は、メモリ11aに記憶している「第1の鍵データKA」とホスト10から送られてきた第1の相互認証コマンド1に附加されて来た第1のスクランブルデータX用いて、第1の乱数Raを暗号部33により暗号化して第1の暗号データを得る。
第2のデバイスB12は、メモリ12aに記憶している「第1の鍵データKA」とホスト10から送られてきた第1の相互認証コマンド1に附加されて来た第1のスクランブルデータXを用いて、第2の乱数Rbを暗号部43により暗号化して第2の暗号データを得る。
In the first device A11 whose device address is designated as the first device by the first mutual authentication command 1 transmitted from the host 10, the control unit 31 generates the first random number Ra.
In the second device B12 whose device address is designated as the second device by the first mutual authentication command 1 transmitted from the host 10, the control unit 41 generates the second random number Rb.
The first device A11 uses the “first key data KA” stored in the memory 11a and the first scrambled data X added to the first mutual authentication command 1 sent from the host 10. The first random number Ra is encrypted by the encryption unit 33 to obtain first encrypted data.
The second device B 12 receives the “first key data KA” stored in the memory 12 a and the first scrambled data X added to the first mutual authentication command 1 sent from the host 10. Then, the second random number Rb is encrypted by the encryption unit 43 to obtain second encrypted data.

(ステップ2)
第1のデバイスA11は、第1の暗号データを送信部34、I/F部35、伝送路14を介してホスト10に送信する。
第2のデバイスB12は、第1のデバイスA11が伝送路14を介してホスト10に送信している第1の暗号データをI/F部45を介して受信部46により受信する。
第2のデバイスB12は、受信した第1の暗号データを自身のメモリ12aに記憶している「第1の鍵データKA」と第1のスクランブルデータXを用いて複号部47で逆演算を行って復号して第1の復号データRa'を得る。
第2のデバイスB12は、制御部41で、第2の乱数Rbと、複号部47で逆演算を行って復号した第1の復号データRa'との間で所定の論理演算を行って第2の演算結果[Rb◆Ra']を得る。
さらに、説明を補足すると論理演算であるので交換の法則が成り立つので、[Rb◆Ra']=[Ra'◆Rb]の関係がある。
論理演算は、排他的OR演算、ビットシフト、ビット順の並び変え、特定ビットのデータ反転等を組み合わせて行うのが望ましい。
(Step 2)
The first device A11 transmits the first encrypted data to the host 10 via the transmission unit 34, the I / F unit 35, and the transmission path 14.
The second device B 12 receives the first encrypted data transmitted from the first device A 11 to the host 10 via the transmission path 14 by the receiving unit 46 via the I / F unit 45.
The second device B12 performs a reverse operation in the decryption unit 47 using the “first key data KA” stored in its own memory 12a and the first scrambled data X, in the received first encrypted data. And decoding is performed to obtain first decoded data Ra ′.
In the second device B12, the control unit 41 performs a predetermined logical operation between the second random number Rb and the first decrypted data Ra ′ decrypted by performing the reverse operation in the decoding unit 47. 2 is obtained [Rb ◆ Ra '].
Furthermore, since the explanation is supplemented by a logical operation, an exchange law is established, and therefore there is a relation of [Rb ◆ Ra ′] = [Ra ′ ◆ Rb].
The logical operation is preferably performed by combining exclusive OR operation, bit shift, bit order rearrangement, data inversion of specific bits, and the like.

(ステップS3)
第2のデバイスB12は、第2の暗号データを送信部44、I/F部45、伝送路14を介してホスト10に送信する。
第2のデバイスB12から伝送路14を介してホスト10に送信する第2の暗号データを第1のデバイスA11がI/F部35を介して受信部36により受信する。
(Step S3)
The second device B 12 transmits the second encrypted data to the host 10 via the transmission unit 44, the I / F unit 45, and the transmission path 14.
The first device A11 receives the second encrypted data transmitted from the second device B12 to the host 10 via the transmission path 14 by the receiving unit 36 via the I / F unit 35.

第1のデバイスA11は、受信した第2の暗号データをメモリ11aに記憶している「第1の鍵データKA」と第1のスクランブルデータXを用いて復号部37により逆演算を行って復号した第2の復号データRb'を得る。
第1のデバイスA11は、制御部31が、第1の乱数Raと、複号部37で逆演算を行って復号した第2の復号データRb'との間で所定の論理演算を行って第1の演算結果[Ra◆Rb']を得る。
The first device A11 decrypts the received second encrypted data using the “first key data KA” stored in the memory 11a and the first scrambled data X by the reverse operation by the decryption unit 37. The second decoded data Rb ′ is obtained.
In the first device A11, the control unit 31 performs a predetermined logical operation between the first random number Ra and the second decrypted data Rb ′ decrypted by performing the reverse operation in the decoding unit 37. 1 operation result [Ra <R> Rb '] is obtained.

(ステップS4)
ホスト10が、相互認証させる第1、第2のデバイスアドレスを再度指定し、さらに、乱数データとして生成した第2のスクランブルデータYを附加して、第2の相互認証コマンド2をI/F部25を介して伝送路14に送信する。アドレスを指定されなかったデバイスは相互認証動作に参加せず待機する。
(Step S4)
The host 10 again designates the first and second device addresses to be mutually authenticated, further adds the second scramble data Y generated as random number data, and sends the second mutual authentication command 2 to the I / F unit. 25 to the transmission line 14. A device whose address is not specified waits without participating in the mutual authentication operation.

第1のデバイスA11はホスト10が伝送路14に送信する第2の相互認証コマンド2をI/F部35を介して受信部36により受信する。
第2のデバイスB12はホスト10が伝送路14に送信する第2の相互認証コマンド2をI/F部45を介して受信部46により受信する。
第1のデバイスA11は、論理演算を行って得た第1の演算結果[Ra◆Rb']を、メモリ11aに記憶している「第2の鍵データKB」とホスト10から送られてきた第1、第2の相互認証コマンド1、2に附加されて来た第1、第2のスクランブルデータX、Yを用いて、暗号部33により暗号化して第3の暗号データを得る。
第2のデバイスB12は、論理演算を行って得た第2の演算結果[Rb◆Ra']を、メモリ12aに記憶している「第2の鍵データKB」とホスト10から送られてきた第1、第2の相互認証コマンド1、2に附加されて来た第1、第2のスクランブルデータX、Yを用いて、暗号部43により暗号化して第4の暗号データを得る。
The first device A11 receives the second mutual authentication command 2 transmitted from the host 10 to the transmission path 14 by the receiving unit 36 via the I / F unit 35.
The second device B 12 receives the second mutual authentication command 2 transmitted from the host 10 to the transmission path 14 by the receiving unit 46 via the I / F unit 45.
The first device A11 has sent the first operation result [Ra ◆ Rb ′] obtained by performing the logical operation from the host 10 and the “second key data KB” stored in the memory 11a. Using the first and second scrambled data X and Y added to the first and second mutual authentication commands 1 and 2, the encryption unit 33 encrypts the third encrypted data.
The second device B12 has received the second operation result [Rb ◆ Ra ′] obtained by performing the logical operation from the host 10 and the “second key data KB” stored in the memory 12a. Using the first and second scrambled data X and Y added to the first and second mutual authentication commands 1 and 2, encryption is performed by the encryption unit 43 to obtain fourth encrypted data.

(ステップS5)
第1のデバイスA11は、第3の暗号データを送信部34、I/F部35、伝送路14を介してホスト10に送信する。
第2のデバイスB12は、第1のデバイスA11が伝送路14を介してホスト10に送信する第3の暗号データをI/F部45を介して受信部46により受信する。
第2のデバイスB12は、受信した第3の暗号データを自身のメモリ12aに記憶している「第2の鍵データKB」と第1、第2のスクランブルデータX、Yを用いて復号部37で逆演算を行って復号して第3の復号データ[Ra◆Rb']'を得る。
第2のデバイスB12は、第2の演算結果[Rb◆Ra']と第3の復号データ [Ra◆Rb']'との一致/不一致を検出する。
(Step S5)
The first device A11 transmits the third encrypted data to the host 10 via the transmission unit 34, the I / F unit 35, and the transmission path 14.
The second device B 12 receives the third encrypted data transmitted from the first device A 11 to the host 10 via the transmission path 14 by the receiving unit 46 via the I / F unit 45.
The second device B12 uses the “second key data KB” stored in its own memory 12a and the first and second scrambled data X and Y to store the received third encrypted data in the decrypting unit 37. Then, the reverse operation is performed to perform decryption to obtain third decrypted data [Ra ◆ Rb ′] ′.
The second device B12 detects a match / mismatch between the second calculation result [Rb ◆ Ra ′] and the third decoded data [Ra ◆ Rb ′] ′.

(ステップS6)
第2のデバイスB12は、第2の演算結果[Rb◆Ra']と第3の復号データ [Ra◆Rb']'が一致している場合は、第4の暗号データを送信部34、I/F部35、伝送路14を介してホスト10に送信する。
さらに第2のデバイスB12は相互認証が成立したと判断し、第2のデバイスB12に対するアクセスに対する所定のアクセス制限を開放する。
第2のデバイスB12は、第2の演算結果[Rb◆Ra']と第3の復号データ [Ra◆Rb']'が一致していない場合は第3の乱数Rcを生成する。
また、第3の乱数Rc=第2の演算結果[Rb◆Ra']になった場合、あるいは、第3の乱数Rc=第3の復号データ[Ra◆Rb']'になった場合は、第3の乱数Rcを再度生成する。
第2のデバイスB12は、メモリ12aに記憶している「第2の鍵データKB」とホスト10から送られてきた第1、第2の相互認証コマンド1、2に附加されて送られて来た第1、第2のスクランブルデータX、Y用いて、第3の乱数Rcを暗号部43により暗号化して第5の暗号データを得る、そして、第5の暗号データを送信部44、I/F部45、伝送路14を介してホスト10に送信する。
この場合は、第2のデバイスB12は相互認証が成立しなかったと判断し、第2のデバイスB12に対するアクセスに対する所定のアクセス制限を開放しない。
(Step S6)
When the second operation result [Rb ◆ Ra ′] and the third decrypted data [Ra ◆ Rb ′] ′ match, the second device B12 sends the fourth encrypted data to the transmission unit 34, I The data is transmitted to the host 10 via the / F unit 35 and the transmission path 14.
Further, the second device B12 determines that mutual authentication has been established, and releases a predetermined access restriction for access to the second device B12.
The second device B12 generates a third random number Rc when the second calculation result [Rb ◆ Ra ′] and the third decrypted data [Ra ◆ Rb ′] ′ do not match.
Further, when the third random number Rc = second calculation result [Rb ◆ Ra ′] or when the third random number Rc = third decrypted data [Ra ◆ Rb ′] ′, The third random number Rc is generated again.
The second device B12 is sent in addition to the “second key data KB” stored in the memory 12a and the first and second mutual authentication commands 1 and 2 sent from the host 10. Using the first and second scrambled data X and Y, the third random number Rc is encrypted by the encryption unit 43 to obtain fifth encrypted data, and the fifth encrypted data is transmitted to the transmission unit 44, I / The data is transmitted to the host 10 via the F unit 45 and the transmission path 14.
In this case, the second device B12 determines that mutual authentication has not been established, and does not release a predetermined access restriction for access to the second device B12.

第1のデバイスA11は、第2のデバイスB12から送信部44、I/F部45伝送路14を介してホスト10に送信する、第4の暗号データ、あるいは第5の暗号データを、I/F部35を介して受信部36により受信している。
第1のデバイスA11は、受信した第4の暗号データ、あるいは第5の暗号データをメモリ11aに記憶している「第2の鍵データKB」と第1、第2のスクランブルデータX、Yを用いて復号部37で逆演算して復号して第4の復号データ [Rb◆Ra']'、あるいは、Rc'を得る。
第1のデバイスA11は、第4の復号データ[Rb'◆Ra]'、あるいはRc'と第1の演算結果[Ra◆Rb']との一致/不一致を判定し第1のデバイス側一致判定データTを得る。
The first device A11 transmits the fourth encrypted data or the fifth encrypted data to be transmitted from the second device B12 to the host 10 via the transmission unit 44 and the I / F unit 45 transmission path 14. The signal is received by the receiving unit 36 via the F unit 35.
The first device A11 uses the received second encrypted data or fifth encrypted data in the memory 11a as the “second key data KB” and the first and second scrambled data X and Y. Then, the decoding unit 37 performs reverse calculation and decoding to obtain fourth decoded data [Rb ◆ Ra ′] ′ or Rc ′.
The first device A11 determines whether or not the fourth decoded data [Rb ′ ◆ Ra] ′ or Rc ′ and the first calculation result [Ra ◆ Rb ′] match or do not match to determine whether the first device matches. Data T is obtained.

(ステップS7)
ホスト10が、第1のデバイスアドレスを指定しさらに、乱数データとして生成した第3のスクランブルデータZを附加して、相互認証の結果を問い合わせる第3の相互認証コマンド3をI/F部25を介して伝送路14に送信する。デバイスアドレスを指定されなかったデバイスは相互認証動作に参加せず待機する。
第1のデバイスA11は、ホスト10が伝送路14に送信する第3の相互認証コマンド3をI/F部35を介して受信部36により受信する。
(Step S7)
The host 10 designates the first device address, adds the third scramble data Z generated as random number data, and sends the third mutual authentication command 3 for inquiring the result of mutual authentication to the I / F unit 25. Via the transmission line 14. A device whose device address is not designated waits without participating in the mutual authentication operation.
The first device A11 receives the third mutual authentication command 3 transmitted from the host 10 to the transmission path 14 by the receiving unit 36 via the I / F unit 35.

(ステップS8)
第1のデバイスA11は、ホスト10から送られてきた第1、第2、第3相互認証コマンド1,2,3に附加されて来た第1〜第3のスクランブルデータX、Y、Zを用いて第1のデバイス側一致判定データTをスクランブルして送信部34、I/F部35、伝送路14を介してホスト10に送信する。
ホスト10は、第1のデバイスA11がスクランブルして送信する第1のデバイス側一致判定データTを、I/F部25、受信部26を介して受信する。
(Step S8)
The first device A11 receives the first to third scrambled data X, Y, and Z added to the first, second, and third mutual authentication commands 1, 2, and 3 sent from the host 10. The first device side coincidence determination data T is scrambled and transmitted to the host 10 via the transmission unit 34, I / F unit 35, and transmission path 14.
The host 10 receives the first device-side coincidence determination data T that is scrambled and transmitted by the first device A11 via the I / F unit 25 and the receiving unit 26.

第1のデバイスA11は、第1のデバイス側一致判定データTが一致を示している場合は、相互認証が成立したと判断し、第1のデバイスA11へのアクセスに対し所定のアクセス制限を開放する。
また、第1のデバイスA11は、第1のデバイス側一致判定データTが一致を示していない場合は相互認証が成立しなかったと判断し、第1のデバイスA11へのアクセスに対する所定のアクセス制限を開放しない。
If the first device-side match determination data T indicates a match, the first device A11 determines that mutual authentication has been established, and releases a predetermined access restriction for access to the first device A11. To do.
Further, the first device A11 determines that mutual authentication has not been established when the first device-side match determination data T does not indicate a match, and restricts the predetermined access restriction for access to the first device A11. Do not open.

ホスト10は、受信部26で受信したスクランブルされた第1のデバイス側一致判定データTを、認証結果判定部27に送る。
ホスト10は、認証結果判定部27でホスト10が送った第1〜第3スクランブルデータX、Y、Zを用いて第1のデバイス側一致判定データTを検出して制御部27に送る。この判定結果に応じて、第のデバイスA11と第2のデバイスB12の相互認証結果を判定し、ホスト10が第1のデバイスA11及び第2のデバイスB12の制限されたエリアにアクセスすることが可能になったか不可のままかを判断する。
The host 10 sends the scrambled first device-side match determination data T received by the reception unit 26 to the authentication result determination unit 27.
The host 10 detects the first device-side coincidence determination data T using the first to third scramble data X, Y, and Z sent from the host 10 by the authentication result determination unit 27 and sends the first device-side match determination data T to the control unit 27. Based on the determination result, the mutual authentication result between the first device A11 and the second device B12 is determined, and the host 10 can access the restricted areas of the first device A11 and the second device B12. It is judged whether it became or is not possible.

前述のようにして、第1のデバイスA11と第2のデバイスB12との間で相互認証することにより、ホスト10が第2のデバイスB12の真偽を認証するための演算処理を行うことなく、第2のデバイスB12が真のデバイスであることを確実に判定することができる。   As described above, by performing mutual authentication between the first device A11 and the second device B12, the host 10 does not perform arithmetic processing for authenticating the authenticity of the second device B12. It can be reliably determined that the second device B12 is a true device.

これにより、専用認証エンジンを具備する場合と比較してホスト10の開発コストの負担を軽減することができる。また、ホスト10の制御用CPUは既に開発済とか、過去の資産を引き継いでホスト10を使いたいユーザーの要求に応えることができる。さらに、ホスト10が「鍵データ」を持たないので、セキュリティ上の管理の煩わしさを不要にできる。さらに、第1のデバイスA11をバージョンアップすれば、ホスト10の制御CPUには負担をかけることなく、新しいセキュリティシステムに更新することができる等、種々の利点が得られる。   Thereby, the burden of the development cost of the host 10 can be reduced as compared with the case where the dedicated authentication engine is provided. Further, the control CPU of the host 10 can be responded to a request from a user who has already been developed or who wants to use the host 10 by taking over past assets. Furthermore, since the host 10 does not have “key data”, the troublesome security management can be eliminated. Furthermore, if the first device A11 is upgraded, various advantages can be obtained, such as updating to a new security system without imposing a burden on the control CPU of the host 10.

10 ホスト
10a メモリ
11 第1のデバイスA
11a メモリ
12 第2のデバイスB
12a メモリ
13 第3のデバイスC
13aメモリ
14 伝送路
21 ホスト側の制御部
22 ホスト側のメモリ
23 ホスト側のコマンド生成部
24 ホスト側の送信部
25 ホスト側のI/F部
26 ホスト側の受信部
27 ホスト側の認証結果判定部
31,41 デバイス側の制御部
32、42 デバイス側のメモリ
33、43 デバイス側の暗号部
34、44 デバイス側の送信部
35、45 デバイス側のI/F部
36、46 デバイス側の受信部
37、47 デバイス側の復号部
S1〜S8 処理手順
10 Host 10a Memory 11 First device A
11a Memory 12 Second device B
12a Memory 13 Third device C
13a memory 14 transmission path 21 host-side control unit 22 host-side memory 23 host-side command generation unit 24 host-side transmission unit 25 host-side I / F unit 26 host-side reception unit 27 host-side authentication result determination Units 31 and 41 Device side control units 32 and 42 Device side memory 33 and 43 Device side encryption units 34 and 44 Device side transmission units 35 and 45 Device side I / F units 36 and 46 Device side reception units 37, 47 Device-side decoding unit S1 to S8

Claims (4)

伝送路を介して接続された複数のデバイスとホストとの間でデータの送受信を行い、前記複数のデバイスを前記ホストが順次認証する相互認証システムにおいて、
前記ホストにおいて、前記伝送路を介して接続された前記複数のデバイスのうち、相互認証させる第1のデバイスと第2のデバイスとを決定するデバイス決定手段と、
前記ホストにおいて、前記デバイス決定手段により決定された、第1及び第2のデバイスを指定して、相互認証を行うように命令する第1、第2のコマンドと、前記第1のデバイスから相互認証結果を読み出すように命令する第3のコマンドを生成するコマンド生成手段と、
前記ホストにおいて、前記コマンド生成手段により生成された、前記第1のコマンドを前記伝送路を介して前記第1、第2のデバイスに送信するホスト側送信手段と、
前記第1のデバイスにおいて、前記ホストが送信する、前記第1のコマンドを受信する第1のデバイス側受信手段と、
前記第2のデバイスにおいて、前記ホストが送信する、前記第1のコマンドを受信する第2のデバイス側受信手段と
前記第1のデバイスにおいて、第1の乱数データを生成する第1のデバイス側乱数データ生成手段と、
前記第2のデバイスにおいて、第2の乱数データを生成する第2のデバイス側乱数データ生成手段と、
前記第1のデバイスにおいて、前記第1のデバイス側受信手段により受信された前記第1のコマンドに応じて、前記第1の乱数データを、前記第1、第2のデバイスが共通に保持する第1の鍵データを用いて暗号化して、第1の暗号データを生成する第1のデバイス側暗号化手段と、
前記第2のデバイスにおいて、前記第2のデバイス側受信手段により受信された前記第1のコマンドに応じて、前記第2の乱数データを、前記第1の鍵データを用いて第2の暗号データを生成する第2のデバイス側暗号化手段と、
前記第1のデバイスにおいて、前記第1の暗号データを、前記伝送路を介して前記ホストに送信する第1のデバイス側送信手段と、
前記第2のデバイスにおいて、前記第1のデバイスが送信する、前記第1の暗号データを受信する第2のデバイス側受信手段と、
前記第2のデバイスにおいて、前記第2のデバイス側受信手段により受信した、前記第1の暗号データを、前記第1の鍵データを用いて、第1の復号結果を得る第2のデバイス側復号化手段と、
前記第2のデバイスにおいて、前記第2のデバイス側復号化手段により得た前記第1の復号結果と、前記第2の乱数データとの間で演算を行い、第2の演算結果を得る第2のデバイス側演算手段と、
前記第2のデバイスにおいて、前記第2のデバイス側暗号化手段により生成された、前記第2の暗号データを、前記伝送路を介して前記ホストに送信する第2のデバイス側送信手段と、
前記第1のデバイスにおいて、前記第2のデバイスが送信する、前記第2の暗号データを受信する第1のデバイス側受信手段と、
前記第1のデバイスにおいて、前記第1のデバイス側受信手段により受信した、前記第2の暗号データを、前記第1の鍵データを用いて復号し、第2の復号結果を得る第1のデバイス側復号化手段と、
前記第1のデバイスにおいて、前記第1のデバイス側復号化手段により得た、前記第2の復号結果と、前記第1の乱数データとの間で演算を行い、第1の演算結果を得る第1のデバイス側演算手段と、
前記ホストにおいて、前記コマンド生成手段により生成された、前記第2のコマンドを、前記伝送路を介して前記第1、第2のデバイスに送信するホスト側送信手段と、
前記第1のデバイスにおいて、前記ホストが送信する、前記第2のコマンドを受信する第1のデバイス側受信手段と、
前記第2のデバイスにおいて、前記ホストが送信する、前記第2のコマンドを受信する第2のデバイス側受信手段と、
前記第1のデバイスにおいて、前記第1のデバイス側受信手段により受信した、前記第2のコマンドに応じて前記第1の演算結果を、前記第1、第2のデバイスが共通に保持する第2の鍵データを用いて暗号化して、第3の暗号データを生成する第1のデバイス側暗号化手段と、
前記第2のデバイスにおいて、前記第2のデバイス側受信手段により受信した、前記第2のコマンドに応じて、前記第2の演算結果を、前記第2の鍵データにより暗号化して、第4の暗号データを生成する第2のデバイス側暗号化手段と、
前記第1のデバイスにおいて、前記第1のデバイス側受信手段により受信した、前記第2のコマンドに応じて、前記第3の暗号データを、前記伝送路を介して前記ホストに送信する第1のデバイス側送信手段と、
前記第2のデバイスにおいて、前記第1のデバイスが送信する、前記第3の暗号データを受信する第2のデバイス側受信手段と、
前記第2のデバイスにおいて、前記第2のデバイス側受信手段で受信した、前記第3の暗号データを、前記第2の鍵データを用いて復号して第3の復号結果を得る第2のデバイス側復号化手段と、
前記第2のデバイスにおいて、前記第3の復号結果と、前記第2の演算結果との一致/不一致を判定して、前記第1のデバイスを認証する第2のデバイス側認証手段と、
前記第2のデバイスにおいて、前記第2のデバイス側認証手段による判定結果が一致の場合は、前記第1のデバイスが認証されたと判断して、前記第4の暗号データを前記伝送路を介して前記ホストに送信し、
不一致の場合は、前記第1のデバイスは認証されなかったと判断して、前記第2の演算結果とは異なる第3の乱数データを、前記第2のデバイス側乱数データ生成手段で生成し、前記第3の乱数データを、前記第2の鍵データを用いて、前記第2のデバイス側受信手段で受信した前記第2のコマンドに応じて、前記第2のデバイス側暗号化手段で暗号化して第5の暗号データを生成し、前記伝送路を介して前記ホストに送信する第2のデバイス側認証結果送信手段と、
前記第1のデバイスにおいて、前記第2のデバイスが送信する、前記第4の暗号データあるいは、前記第5の暗号データを受信する第1のデバイス側受信手段と、
前記第1のデバイスにおいて、前記第1のデバイス側受信手段で受信した、前記第4の暗号データあるいは、前記第5の暗号データを、前記第2の鍵データを用いて復号して第4の復号結果を得る第1のデバイス側復号化手段と、
前記第1のデバイスにおいて、前記第4の復号結果と、前記第1の演算結果との一致/不一致を判定する第1のデバイス側一致判定手段と、
前記ホストにおいて、前記コマンド生成手段により生成された、前記第3のコマンドを前記伝送路を介して前記第1のデバイスに送信するホスト側送信手段と、
前記第1のデバイスにおいて、前記ホストが送信する前記第3のコマンドを受信する第1のデバイス側受信手段と、
前記第1のデバイスにおいて、前記第1のデバイス側受信手段で受信した、前記第3のコマンドに応じて、前記第1のデバイス側一致判定段で判定した結果を、前記伝送路を介して前記ホストに送信する第1のデバイス側一致判定結果送信手段と、
前記ホストにおいて、前記第1のデバイスから送信された、前記第1のデバイス側一致判定手段での判定結果を受信するホスト側受信手段と、
第1のデバイスにおいて、前記第1のデバイス側一致判定手段で判定した結果により、前記第2のデバイスとの相互認証結果を判定する第1のデバイス側相互認証手段と、
前記ホストにおいて、前記ホスト側受信手段により受信された、前記第1のデバイス側一致判定手段での判定結果に基づいて、前記第1及び第2のデバイスの相互認証結果を判定する認証結果判定手段とを有することを特徴とする相互認証システム。
In a mutual authentication system in which data is transmitted and received between a plurality of devices and a host connected via a transmission path, and the plurality of devices are sequentially authenticated by the host,
In the host, device determination means for determining a first device and a second device to be mutually authenticated among the plurality of devices connected via the transmission path;
In the host, first and second commands for instructing mutual authentication by designating the first and second devices determined by the device determination means, and mutual authentication from the first device Command generating means for generating a third command for instructing to read the result;
In the host, host side transmission means for transmitting the first command generated by the command generation means to the first and second devices via the transmission path;
In the first device, first device-side receiving means for receiving the first command transmitted by the host;
A second device-side receiving means for receiving the first command transmitted by the host in the second device; and a first device-side random number for generating first random number data in the first device. Data generation means;
In the second device, second device-side random number data generating means for generating second random number data;
In the first device, the first and second devices commonly hold the first random number data in accordance with the first command received by the first device-side receiving means. First device side encryption means for generating first encrypted data by encrypting using one key data;
In the second device, in response to the first command received by the second device-side receiving means, the second random number data is converted into second encrypted data using the first key data. Second device side encryption means for generating
In the first device, first device-side transmission means for transmitting the first encrypted data to the host via the transmission path;
In the second device, second device side receiving means for receiving the first encrypted data transmitted by the first device;
In the second device, a second device-side decryption that obtains a first decryption result from the first encrypted data received by the second device-side receiving means using the first key data And
In the second device, a calculation is performed between the first decryption result obtained by the second device-side decryption means and the second random number data, and a second computation result is obtained. Device side computing means,
In the second device, second device-side transmission means for transmitting the second encrypted data generated by the second device-side encryption means to the host via the transmission path;
A first device-side receiving means for receiving the second encrypted data transmitted by the second device in the first device;
In the first device, the first device that decrypts the second encrypted data received by the first device-side receiving means using the first key data and obtains a second decryption result. Side decryption means;
In the first device, a calculation is performed between the second decoding result obtained by the first device-side decoding means and the first random number data, and a first calculation result is obtained. 1 device side computing means;
Host side transmission means for transmitting the second command generated by the command generation means in the host to the first and second devices via the transmission path;
First device-side receiving means for receiving the second command transmitted by the host in the first device;
Second device-side receiving means for receiving the second command transmitted by the host in the second device;
In the first device, the first and second devices commonly hold the first calculation result according to the second command received by the first device-side receiving unit. First device-side encryption means for generating third encrypted data by encrypting using the key data of
In the second device, in accordance with the second command received by the second device-side receiving means, the second calculation result is encrypted with the second key data, and the fourth device Second device side encryption means for generating encrypted data;
The first device transmits the third encrypted data to the host via the transmission path according to the second command received by the first device-side receiving unit. A device-side transmission means;
In the second device, second device-side receiving means for receiving the third encrypted data transmitted by the first device;
In the second device, a second device that obtains a third decryption result by decrypting the third encrypted data received by the second device-side receiving means using the second key data Side decryption means;
In the second device, a second device-side authentication unit that authenticates the first device by determining whether the third decryption result and the second calculation result match / mismatch,
In the second device, if the determination result by the second device-side authentication means is coincident, it is determined that the first device has been authenticated, and the fourth encrypted data is transmitted via the transmission path. To the host,
In the case of mismatch, it is determined that the first device has not been authenticated, and third random number data different from the second calculation result is generated by the second device-side random number data generation means, Using the second key data, the third random number data is encrypted by the second device side encryption unit according to the second command received by the second device side reception unit. Second device-side authentication result transmitting means for generating fifth encrypted data and transmitting the fifth encrypted data to the host via the transmission path;
In the first device, first device-side receiving means for receiving the fourth encrypted data or the fifth encrypted data transmitted by the second device;
In the first device, the fourth encrypted data or the fifth encrypted data received by the first device-side receiving means is decrypted by using the second key data to obtain a fourth First device side decoding means for obtaining a decoding result;
In the first device, first device side coincidence determining means for determining whether the fourth decoding result and the first calculation result match / do not match;
In the host, host-side transmission means for transmitting the third command generated by the command generation means to the first device via the transmission path;
In the first device, first device-side receiving means for receiving the third command transmitted by the host;
In the first device, the result determined in the first device-side coincidence determination stage in accordance with the third command received by the first device-side receiving means is transmitted via the transmission path. First device-side coincidence determination result transmission means for transmitting to the host;
In the host, host-side receiving means for receiving the determination result in the first device-side coincidence determining means transmitted from the first device;
A first device-side mutual authentication means for determining a mutual authentication result with the second device based on a result determined by the first device-side match determination means in the first device;
In the host, an authentication result determination unit that determines a mutual authentication result of the first and second devices based on a determination result of the first device side match determination unit received by the host side reception unit. And a mutual authentication system.
前記第1のデバイスは予め認証されたデバイスであることを特徴とする請求項1に記載の相互認証システム。   The mutual authentication system according to claim 1, wherein the first device is a previously authenticated device. 前記伝送路はI2C(Inter-Integrated Circuit)伝送線であることを特徴とする請求項1または2に記載の相互認証システム。   The mutual authentication system according to claim 1, wherein the transmission path is an I2C (Inter-Integrated Circuit) transmission line. 伝送路を介して接続された複数のデバイスとホストとの間でデータの送受信を行い、前記複数のデバイスを前記ホストが順次認証する相互認証方法であって、
前記伝送路を介して接続された前記複数のデバイスのうち、相互認証させる第1のデバイスと第2のデバイスとを、前記デバイス決定手段により決定するデバイス決定工程と、
前記ホストにおいて、前記デバイス決定工程で決定した、前記第1、第2のデバイスを指定して、相互認証を行うように命令する、前記第1、第2のコマンドと、前記第1のデバイスから相互認証結果を読み出すように命令する、前記第3のコマンドを、前記コマンド生成手段で生成するコマンド生成工程と、
前記ホストにおいて、前記コマンド生成工程で生成した、前記第1のコマンドを、前記ホスト側送信手段で、前記伝送路を介して前記第1、第2のデバイスとに送信するホスト側送信工程と、
前記第1のデバイスにおいて、前記ホスト側送信工程にて、前記ホストが送信する、前記第1のコマンドを、前記第1のデバイス側受信手段で受信する第1のデバイス側受信工程と、
前記第2のデバイスにおいて、前記ホスト側送信工程にて、前記ホストが送信する、前記第1のコマンドを、前記第2のデバイス側受信手段で受信する第2のデバイス側受信工程と、
前記第1のデバイスにおいて、前記第1の乱数データを、前記第1のデバイス側乱数データ生成手段で生成する第1のデバイス側乱数データ生成工程と、
前記第2のデバイスにおいて、前記第2の乱数データを、前記第2のデバイス側乱数データ生成手段で生成する第2のデバイス側乱数データ生成工程と、
前記第1のデバイスにおいて、前記第1のデバイス側受信工程にて受信した、前記第1のコマンドに応じて、前記第1の乱数データを、前記第1、第2のデバイスが共通に保持する、前記第1の鍵データを用いて、前記第1のデバイス側暗号化手段で、前記第1の暗号データを生成する第1のデバイス側暗号化工程と、
前記第2のデバイスにおいて、前記第2のデバイス側受信工程にて受信した、前記第1のコマンドに応じて、前記第2の乱数データを、前記第1の鍵データを用いて、前記第2のデバイス側暗号化手段で、前記第2の暗号データを生成する第2のデバイス側暗号化工程と、
前記第1のデバイスにおいて、前記第1の暗号データを、前記第1のデバイス側送信手段で、前記伝送路を介して前記ホストに送信する第1のデバイス側送信工程と、
前記第2のデバイスにおいて、前記第1のデバイス側送信工程にて前記第1のデバイスが送信する、前記第1の暗号データを、前記第2のデバイス側受信手段で受信する第2のデバイス側受信工程と、
前記第2のデバイスにおいて、前記第2のデバイス側受信工程にて受信した、前記第1の暗号データを、前記第1の鍵データを用いて、前記第2のデバイス側復号化手段で前記第1の復号結果を得る第2のデバイス側復号化工程と、
前記第2のデバイスにおいて、前記第2のデバイス側復号化工程で得た、前記第1の復号結果と、前記第2の乱数データとの間で、前記第2のデバイス側演算手段で演算を行い、前記第2の演算結果を得る第2のデバイス側演算工程と、
前記第2のデバイスにおいて、前記第2の暗号データを、前記第2のデバイス側送信手段で、前記伝送路を介して前記ホストに送信する第2のデバイス側送信工程と、
前記第1のデバイスにおいて、前記第2のデバイス側送信工程にて、前記第2のデバイスが送信する、前記第2の暗号データを、前記第1のデバイス側受信手段で受信する第1のデバイス側受信工程と、
前記第1のデバイスにおいて、前記第1のデバイス側受信工程にて受信した、前記第2の暗号データを、前記第1の鍵データを用いて、前記第1のデバイス側復号化手段で復号し、前記第2の復号結果を得る第1のデバイス側復号化工程と、
前記第1のデバイスにおいて、前記第1のデバイス側復号化工程にて得た、前記第2の復号結果と、前記第1の乱数データとの間で、前記第1のデバイス側演算手段で演算を行い、前記第1の演算結果を得る第1のデバイス側演算工程と、
ホストにおいて、前記コマンド生成工程で生成した、前記第2のコマンドを、前記ホスト側送信手段で、前記伝送路を介して前記第1、第2のデバイスに送信するホスト側送信工程と、
前記第1のデバイスにおいて、前記ホスト側送信工程にて、前記ホストが送信する、前記第2のコマンドを、前記第1のデバイス側受信手段で受信する第1のデバイス側受信工程と、
前記第2のデバイスにおいて、前記ホスト側送信工程にて、前記ホストが送信する、前記第2のコマンドを、前記第2のデバイス側受信手段で受信する第2のデバイス側受信工程と、
前記第1のデバイスにおいて、前記第1のデバイス側受信工程にて受信した、前記第2のコマンドに応じて、前記第1の演算結果を、前記第1、第2のデバイスが共通に保持する、前記第2の鍵データを用いて、前記第1のデバイス側暗号化手段にて、前記第3の暗号データを生成する第1のデバイス側暗号化工程と、
前記第2のデバイスにおいて、前記第2のデバイス側受信工程にて受信した、前記第2のコマンドに応じて、前記第2の演算結果を、前記第2の鍵データにより、前記第2のデバイス側暗号化手段で暗号化して、前記第4の暗号データを生成する第2のデバイス側暗号化工程と、
前記第1のデバイスにおいて、前記第1のデバイス側暗号化工程にて生成された、前記第3の暗号データを、前記第1のデバイス側送信手段で、前記伝送路を介して前記ホストに送信する第1のデバイス側送信工程と、
前記第2のデバイスにおいて、前記第1のデバイス側送信工程にて、前記第1のデバイスが送信する、前記第3の暗号データを、前記第2のデバイス側受信手段で受信する第2のデバイス側受信工程と、
前記第2のデバイスにおいて、前記第2のデバイス側受信工程にて受信した第3の暗号データを、前記第2の鍵データを用いて、前記第2のデバイス側復号化手段にて復号して前記第3の復号結果を得る第2のデバイス側復号化工程と、
前記第2のデバイスにおいて、前記第2のデバイス側復号化工程で得た、前記第3の復号結果と、前記第2の演算結果の一致/不一致を、前記第2のデバイス側認証手段で判定して、前記第1のデバイスを認証する第2のデバイス側認証工程と、
前記第2のデバイスにおいて、前記第2のデバイス側認証工程での、前記第2のデバイス側認証手段による判定結果が一致の場合は、前記第1のデバイスが認証されたと判断して、前記第4の暗号データを前記伝送路を介して前記ホストに送信し、
不一致の場合は、前記第1のデバイスは認証されなかったと判断して、前記第2の演算結果とは異なる前記第3の乱数データを、前記第2のデバイス側乱数データ生成手段で生成し、前記第3の乱数データを、前記第2の鍵データを用いて、前記第2のデバイス側受信工程にて受信した前記第2のコマンドに応じて、前記第2のデバイス側暗号化手段で、前記第5の暗号データを生成して、前記第2のデバイス側認証結果送信手段により、前記伝送路を介して前記ホストに送信する第2のデバイス側認証結果送信工程と、
前記第1のデバイスにおいて、前記第2のデバイス側認証結果送信工程にて、前記第2のデバイスが生成して、前記伝送路を介して前記ホストに送信する、前記第4の暗号データあるいは、前記第5の暗号データを、前記第1のデバイス側受信手段で受信する第1のデバイス側受信工程と、
前記第1のデバイスにおいて、前記第1のデバイス側受信工程で受信した、前記第4の暗号データあるいは前記第5の暗号データを、前記第2の鍵データを用いて、前記第1のデバイス側復号化手段で復号して、前記第4の復号結果を得る第1のデバイス側復号化工程と、
前記第1のデバイスにおいて、前記第1のデバイス側復号化工程にて得た、前記第4の復号結果と、前記第1の演算結果との一致/不一致を、前記第1のデバイス側相互認証手段で判定する第1のデバイス側一致判定工程と、
前記ホストにおいて、前記コマンド生成工程で生成した、前記第3のコマンドを、前記ホスト側送信手段で、前記伝送路を介して前記第1のデバイスに送信するホスト側送信工程と、
前記第1のデバイスにおいて、前記ホスト側送信工程にて前記ホストが送信する、前記第3のコマンドを、前記第1のデバイス側受信手段で受信する第1のデバイス側受信工程と、
前記第1のデバイスにおいて、前記第1のデバイス側受信工程にて受信した、前記第3のコマンドに応じて、前記第1のデバイス側一致判定手段での判定結果を、前記第1のデバイス側一致結果送信手段で、前記伝送路を介して前記ホストに送信する第1のデバイス側一致判定結果送信工程と、
前記ホストにおいて、前記第1のデバイス側一致判定結果送信工程にて、前記第1のデバイスから送信される、前記第1のデバイス側一致判定手段での判定結果を、前記ホスト側受信手段で受信するホスト側受信工程と、
前記第1のデバイスにおいて、前記第1のデバイス側一致判定手段での判定結果により、前記第2のデバイスとの相互認証結果を判定する第1のデバイス側相互認証結果工程と、
前記ホストにおいて、前記ホスト側受信工程にて受信された前記第1のデバイス側一致判定手段での判定結果に基づいて、前記第1、第2のデバイスの相互認証結果を前記認証結果判定手段で判定する認証結果判定工程とを有し、
前記ホストから送信された第1、第2のコマンドにより第1、第2のデバイスに指定されなかったデバイスは、相互認証動作に参加せず待機していることを特徴とする相互認証方法。
A mutual authentication method in which data is transmitted and received between a plurality of devices and a host connected via a transmission path, and the host sequentially authenticates the plurality of devices,
A device determining step of determining, by the device determining means, a first device and a second device to be mutually authenticated among the plurality of devices connected via the transmission path;
The host designates the first and second devices determined in the device determination step, and instructs to perform mutual authentication. From the first and second commands and the first device A command generation step of generating the third command by the command generation means, instructing to read a mutual authentication result;
In the host, the host-side transmission step of transmitting the first command generated in the command generation step to the first and second devices via the transmission path by the host-side transmission unit;
In the first device, in the host side transmission step, the first device side reception step of receiving the first command transmitted by the host by the first device side reception unit;
In the second device, in the host-side transmission step, the second device-side reception step of receiving the first command transmitted by the host by the second device-side reception unit;
In the first device, a first device-side random number data generation step of generating the first random number data by the first device-side random number data generation unit;
In the second device, a second device-side random number data generating step of generating the second random number data by the second device-side random number data generating means;
In the first device, the first and second devices commonly hold the first random number data according to the first command received in the first device-side receiving step. A first device-side encryption step of generating the first encrypted data by the first device-side encryption means using the first key data;
In the second device, in response to the first command received in the second device-side receiving step, the second random number data is converted into the second key data using the first key data. A second device side encryption step of generating the second encrypted data by the device side encryption means of
In the first device, a first device-side transmission step of transmitting the first encrypted data to the host via the transmission path by the first device-side transmission unit;
In the second device, the second device side that receives the first encrypted data transmitted by the first device in the first device-side transmission step by the second device-side receiving unit. Receiving process;
In the second device, the first encrypted data received in the second device-side receiving step is processed by the second device-side decrypting means using the first key data. A second device side decoding step of obtaining a decoding result of 1;
In the second device, calculation is performed by the second device side calculation means between the first decoding result obtained in the second device side decoding step and the second random number data. Performing a second device-side calculation step to obtain the second calculation result;
In the second device, a second device-side transmission step of transmitting the second encrypted data to the host via the transmission path by the second device-side transmission unit;
In the first device, in the second device-side transmission step, the first device receives the second encrypted data transmitted by the second device by the first device-side receiving unit. Side reception process;
In the first device, the second encrypted data received in the first device-side receiving step is decrypted by the first device-side decryption means using the first key data. A first device side decoding step for obtaining the second decoding result;
In the first device, calculation is performed by the first device-side calculation means between the second decoding result obtained in the first device-side decoding step and the first random number data. Performing a first device side calculation step for obtaining the first calculation result;
In the host, the host side transmission step of transmitting the second command generated in the command generation step to the first and second devices via the transmission path by the host side transmission means;
In the first device, in the host-side transmission step, the first device-side reception step of receiving the second command transmitted by the host by the first device-side reception unit;
In the second device, in the host-side transmission step, the second device-side reception step of receiving the second command transmitted by the host by the second device-side reception unit;
In the first device, the first and second devices commonly hold the first calculation result according to the second command received in the first device-side receiving step. A first device-side encryption step of generating the third encrypted data by the first device-side encryption means using the second key data;
In the second device, in accordance with the second command received in the second device side receiving step, the second operation result is converted into the second device by the second key data. A second device-side encryption step of generating the fourth encrypted data by encrypting with the side encryption means;
In the first device, the third encrypted data generated in the first device side encryption step is transmitted to the host via the transmission path by the first device side transmission means. A first device side transmission step to perform,
In the second device, the second device that receives the third encrypted data transmitted by the first device in the first device-side transmission step by the second device-side receiving unit. Side reception process;
In the second device, the second device-side decrypting means decrypts the third encrypted data received in the second device-side receiving step by using the second key data. A second device side decoding step for obtaining the third decoding result;
In the second device, the second device-side authentication means determines whether the third decryption result obtained in the second device-side decryption step matches or does not match the second calculation result. A second device-side authentication step for authenticating the first device;
In the second device, if the determination result by the second device-side authentication means in the second device-side authentication step is the same, it is determined that the first device has been authenticated, 4 encrypted data is transmitted to the host via the transmission path,
In the case of mismatch, it is determined that the first device has not been authenticated, and the third random number data different from the second calculation result is generated by the second device-side random number data generation means, In response to the second command received in the second device-side receiving step using the second key data, the third random number data is received by the second device-side encryption means, A second device-side authentication result transmitting step of generating the fifth encrypted data and transmitting the fifth encrypted data to the host via the transmission path by the second device-side authentication result transmitting means;
In the first device, in the second device-side authentication result transmission step, the second device generates and transmits the fourth encrypted data to the host via the transmission path, or A first device-side receiving step of receiving the fifth encrypted data by the first device-side receiving means;
In the first device, the fourth encrypted data or the fifth encrypted data received in the first device side receiving step is converted into the first device side by using the second key data. A first device side decoding step of decoding by a decoding means to obtain the fourth decoding result;
In the first device, a match / mismatch between the fourth decryption result and the first calculation result obtained in the first device-side decryption step is determined as the first device-side mutual authentication. A first device side coincidence determining step determined by means;
In the host, a host-side transmission step of transmitting the third command generated in the command generation step to the first device via the transmission path by the host-side transmission unit;
In the first device, a first device-side receiving step of receiving the third command transmitted by the host in the host-side transmitting step by the first device-side receiving unit;
In the first device, in accordance with the third command received in the first device-side receiving step, the determination result in the first device-side coincidence determining means is displayed on the first device side. A first device-side coincidence determination result transmission step of transmitting to the host via the transmission path by a coincidence result transmission unit;
In the host, in the first device side coincidence determination result transmission step, the determination result in the first device side coincidence determination unit that is transmitted from the first device is received by the host side reception unit. A host-side receiving process,
In the first device, a first device-side mutual authentication result step of determining a mutual authentication result with the second device based on a determination result in the first device-side coincidence determining unit;
In the host, based on the determination result in the first device-side coincidence determining unit received in the host-side receiving step, the mutual authentication result of the first and second devices is determined by the authentication result determining unit. An authentication result determination step for determining,
A mutual authentication method characterized in that devices that are not designated as the first and second devices by the first and second commands transmitted from the host do not participate in the mutual authentication operation and are on standby.
JP2011209605A 2011-09-26 2011-09-26 Mutual authentication system and mutual authentication method Active JP5792573B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2011209605A JP5792573B2 (en) 2011-09-26 2011-09-26 Mutual authentication system and mutual authentication method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2011209605A JP5792573B2 (en) 2011-09-26 2011-09-26 Mutual authentication system and mutual authentication method

Publications (2)

Publication Number Publication Date
JP2013073257A true JP2013073257A (en) 2013-04-22
JP5792573B2 JP5792573B2 (en) 2015-10-14

Family

ID=48477759

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2011209605A Active JP5792573B2 (en) 2011-09-26 2011-09-26 Mutual authentication system and mutual authentication method

Country Status (1)

Country Link
JP (1) JP5792573B2 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108073827A (en) * 2017-12-07 2018-05-25 珠海市横琴新区龙族科技有限公司 Data cable, terminal, data cable encryption system, data cable encryption method

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002215480A (en) * 2001-01-15 2002-08-02 Sony Corp Multiprocessor system and data communication control method in the system
JP2003060635A (en) * 2001-08-13 2003-02-28 Sony Corp Personal authentication system, method therefor, authentication device and computer program
US20050010769A1 (en) * 2003-07-11 2005-01-13 Samsung Electronics Co., Ltd. Domain authentication method for exchanging content between devices
JP2007048103A (en) * 2005-08-11 2007-02-22 Fuji Electric Retail Systems Co Ltd Identification method for non-contact communication medium, and settlement device

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002215480A (en) * 2001-01-15 2002-08-02 Sony Corp Multiprocessor system and data communication control method in the system
JP2003060635A (en) * 2001-08-13 2003-02-28 Sony Corp Personal authentication system, method therefor, authentication device and computer program
US20050010769A1 (en) * 2003-07-11 2005-01-13 Samsung Electronics Co., Ltd. Domain authentication method for exchanging content between devices
JP2007048103A (en) * 2005-08-11 2007-02-22 Fuji Electric Retail Systems Co Ltd Identification method for non-contact communication medium, and settlement device

Also Published As

Publication number Publication date
JP5792573B2 (en) 2015-10-14

Similar Documents

Publication Publication Date Title
US10015159B2 (en) Terminal authentication system, server device, and terminal authentication method
US8396218B2 (en) Cryptographic module distribution system, apparatus, and program
CN113259329B (en) Method and device for data careless transmission, electronic equipment and storage medium
US20070189517A1 (en) Pseudo public key encryption
JP2010226336A (en) Authentication method and authentication apparatus
KR20170035665A (en) Apparatus and method for exchanging encryption key
EP3664360A1 (en) Certificateless public key encryption using pairings
CN109309566B (en) Authentication method, device, system, equipment and storage medium
WO2018048411A1 (en) Establishing shared key data for wireless pairing
CN101296077B (en) Identity authentication system based on bus type topological structure
JP2003101528A (en) Encrypted data transmission/reception method, and system and transmitter for implementing the method
US20220038267A1 (en) Methods and devices for secured identity-based encryption systems with two trusted centers
US20230027010A1 (en) Secret code verification protocol
JP5792573B2 (en) Mutual authentication system and mutual authentication method
JP3897177B2 (en) Authentication method and information processing apparatus
JP2009071481A (en) Communication control system, terminal, and program
US7327845B1 (en) Transmission of encrypted messages between a transmitter and a receiver utilizing a one-time cryptographic pad
JP2006270348A (en) Mutual authentication and key sharing system
JP2000349748A (en) Secret information sharing method
CN108141361B (en) Method and apparatus for establishing a common secret
CN117040825A (en) Authentication method of Internet of things equipment and storage medium
JP2000307565A (en) Communication method, its device and ic card
KR101758232B1 (en) method of encryption or decryption a data block, apparatus for encryption or decryption a data block, and storage medium for storing a program for encryption or decryption a data block
JP2007521525A (en) System for authenticating and authorizing a party in a secure communication network
US20190222417A1 (en) Information processing system, information processing method, and recording medium

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20140822

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20150511

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20150519

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20150619

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: 20150728

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20150806

R150 Certificate of patent or registration of utility model

Ref document number: 5792573

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

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