JP2012155560A - Authentication ic tag, authentication system, host access device, and authentication method - Google Patents

Authentication ic tag, authentication system, host access device, and authentication method Download PDF

Info

Publication number
JP2012155560A
JP2012155560A JP2011014587A JP2011014587A JP2012155560A JP 2012155560 A JP2012155560 A JP 2012155560A JP 2011014587 A JP2011014587 A JP 2011014587A JP 2011014587 A JP2011014587 A JP 2011014587A JP 2012155560 A JP2012155560 A JP 2012155560A
Authority
JP
Japan
Prior art keywords
authentication
tag
state
data
command
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2011014587A
Other languages
Japanese (ja)
Inventor
Hideki Kuroki
秀樹 黒木
Shota Nakajima
章太 中島
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.)
Panasonic Corp
Original Assignee
Panasonic Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Panasonic Corp filed Critical Panasonic Corp
Priority to JP2011014587A priority Critical patent/JP2012155560A/en
Publication of JP2012155560A publication Critical patent/JP2012155560A/en
Pending legal-status Critical Current

Links

Images

Abstract

PROBLEM TO BE SOLVED: To prevent the erroneous operation of an authentication IC tag.SOLUTION: In an authentication IC tag 100 having an authentication processing state and a memory access state, the memory access state is such a state that memory access processing from a host access device 200 to a memory part 104 is executable, and the authentication processing state is such a state that authentication processing using a public key encryption system by the host access device 200 is executable, and that the memory access processing is inhibited. The authentication IC tag 100 includes: a memory part 104; an authentication processing part 106 configured to perform the authentication processing in the authentication processing state; a memory access control part 107 configured to inhibit the memory access processing in the authentication processing state, and to perform the memory access processing in the memory access state; a communication part 101 configured to acquire a command by communicating with the host access device 200; and a processing state transition control part 108 configured to perform the state transition of the authentication IC tag between the authentication processing state and the memory access state on the basis of the command.

Description

本発明は、様々な物品の管理及び模造品の判別を行うための認証処理、又は、個人を認証する電子認証などの認証処理を行う認証ICタグ、認証システム、ホストアクセス装置及び認証方法に関するものである。   The present invention relates to an authentication IC tag, an authentication system, a host access device, and an authentication method for performing an authentication process for managing various articles and discriminating imitations, or an authentication process such as electronic authentication for authenticating an individual. It is.

電子機器及び電子カードの普及に伴い、非正規品又は模造品が非常に増加しており、社会的な問題となっている。この問題を解決する手段の1つとして、暗号鍵を用いた暗号方式での認証システムがある。   With the widespread use of electronic devices and electronic cards, non-genuine or counterfeit products have increased greatly, which has become a social problem. One means for solving this problem is an authentication system using an encryption method using an encryption key.

特に、電子機器などの認証では、ICタグを用いた認証システムが普及している。一般的なICタグを用いた認証システムでは、秘密鍵暗号方式が用いられる。例えば、特許文献1及び特許文献2には、秘密鍵暗号方式を用いた認証を行う技術が開示されている。   In particular, authentication systems using IC tags are widely used for authentication of electronic devices and the like. In an authentication system using a general IC tag, a secret key cryptosystem is used. For example, Patent Literature 1 and Patent Literature 2 disclose a technique for performing authentication using a secret key cryptosystem.

秘密鍵暗号方式を用いた認証では、特許文献1で用いられているDES(Data Encryption Standard)などの方式が用いられる。秘密鍵暗号方式では、暗号鍵と復号鍵とが共通である。   In authentication using a secret key cryptosystem, a scheme such as DES (Data Encryption Standard) used in Patent Document 1 is used. In the secret key cryptosystem, the encryption key and the decryption key are common.

秘密鍵暗号方式を用いた認証は、暗号化及び復号の速度が速いというメリットがある。特に、処理時間が短い点と、暗号文が短い点とにより、秘密鍵暗号方式を用いた認証は、比較的容易に製品に適用可能であり、その応用分野は多岐にわたる。   Authentication using a secret key cryptosystem has the advantage that the speed of encryption and decryption is fast. In particular, due to the short processing time and the short ciphertext, authentication using a secret key cryptosystem can be applied to products relatively easily, and its application fields are diverse.

一方で、秘密鍵暗号方式を用いた認証は、鍵の受け渡しが問題であるというデメリットがある。すなわち、鍵が盗まれると、その鍵で復号が可能となる。また、秘密鍵暗号方式を用いた認証は、相手の数だけ、鍵を作成する必要があるため、不特定多数の認証には不向きであるというデメリットもある。また、暗号文が短いということは、暗号強度が脆弱であるというデメリットにもなる。   On the other hand, authentication using a secret key cryptosystem has a demerit that key delivery is a problem. That is, if a key is stolen, it can be decrypted with the key. In addition, authentication using a secret key cryptosystem has a demerit that it is not suitable for an unspecified number of authentications because it is necessary to create as many keys as the number of counterparts. In addition, the short ciphertext also has the disadvantage that the cryptographic strength is weak.

このように、秘密鍵暗号方式では、暗号鍵と復号鍵とが共通であるために、鍵の配送が難しい点と、暗号文が短いため暗号強度が脆弱であるという課題を有する。   As described above, the secret key cryptosystem has a problem that the key is difficult to distribute because the encryption key and the decryption key are common, and the encryption strength is weak because the ciphertext is short.

近年、秘密鍵に変わる暗号方式として、公開鍵暗号方式がある。公開鍵暗号方式では、暗号化する鍵と復号する鍵とが異なり、それぞれペアでなければ元の情報を復元できない。この公開鍵暗号方式での長所となるのは、鍵が暗号化と復号とで異なるため、「鍵の配送(配布)が容易で管理が楽である」という点がある。   In recent years, there is a public key cryptosystem as an encryption system that changes to a secret key. In the public key cryptosystem, the key to be encrypted is different from the key to be decrypted, and the original information cannot be restored unless they are in pairs. The advantage of this public key cryptosystem is that the key is different between encryption and decryption, so that “key distribution (distribution) is easy and management is easy”.

公開鍵暗号方式の仕組みを利用するには、事前に相手の公開鍵を入手しておく必要はあるが、仮に第三者に公開鍵が入手されても復号されることはなく問題とならない。また、公開鍵暗号方式の暗号文は、秘密鍵暗号方式の暗号方式と比べて長いため、処理時間が長いという短所はあるが、一方で、暗号強度は、秘密鍵暗号方式と比較して強固であるという長所がある。   In order to use the mechanism of the public key cryptosystem, it is necessary to obtain the public key of the other party in advance, but even if the public key is obtained by a third party, it is not decrypted and does not cause a problem. In addition, since the ciphertext of the public key cryptosystem is longer than that of the secret key cryptosystem, there is a disadvantage that the processing time is long. On the other hand, the encryption strength is stronger than that of the secret key cryptosystem. There is an advantage of being.

特開2001−307055号公報Japanese Patent Laid-Open No. 2001-307055 特開2009−171467号公報JP 2009-171467 A

しかしながら、上記従来技術では、認証ICタグが誤動作を起こしてしまうことを防止することができないという課題がある。   However, the above-described conventional technique has a problem that it cannot prevent the authentication IC tag from malfunctioning.

例えば、ホストアクセス装置と認証ICタグとの間の通信時のエラー、又は、ビット化けなどによりコマンド識別子(オペランド)の取りこぼしが発生した場合、認証ICタグは、ホストアクセス装置から送られてきた暗号文を復号しない。このとき、NTRUなどの公開鍵暗号方式で暗号化した暗号文は非常に長いために、公開鍵暗号文中にメモリアクセス命令又はアクセス不許可命令のコマンド識別子と一致するデータが含まれている場合に、認証ICタグは、当該データをコマンド識別子と判定する。そして、認証ICタグは、意図しないメモリアクセス又は返信動作などの誤動作を引き起こす。   For example, if a command identifier (operand) is lost due to an error during communication between the host access device and the authentication IC tag or due to garbled bits, the authentication IC tag is sent to the encryption sent from the host access device. Do not decrypt the sentence. At this time, since the ciphertext encrypted by the public key cryptosystem such as NTRU is very long, the public key ciphertext contains data that matches the command identifier of the memory access instruction or the access disallowed instruction. The authentication IC tag determines that the data is a command identifier. The authentication IC tag causes a malfunction such as an unintended memory access or a reply operation.

特に、認証ICタグとホストアクセス装置とが調歩同期式などの通信方式での通信を行う場合は、ビット単位での区切りは明確であるが、コマンドの始まり及び終わりを示す方法が規定されていない。このため、コマンドの始まり及び終わりが不明確であり、上記のような誤動作が生じやすい。   In particular, when the authentication IC tag and the host access device perform communication using a communication method such as start-stop synchronization, the separation in bit units is clear, but a method for indicating the start and end of a command is not defined. . For this reason, the start and end of the command are unclear, and the above-described malfunction is likely to occur.

そこで、本発明は、上記課題を鑑みてなされたものであって、認証ICタグの誤動作を防止することができる認証ICタグ、認証システム、ホストアクセス装置及び認証方法を提供することを目的とする。   Therefore, the present invention has been made in view of the above problems, and an object thereof is to provide an authentication IC tag, an authentication system, a host access device, and an authentication method that can prevent an authentication IC tag from malfunctioning. .

上記の問題を解決するために、本発明の一態様に係る認証ICタグは、認証処理状態とメモリアクセス状態とを有する認証ICタグであって、前記メモリアクセス状態は、ホストアクセス装置から、所定のデータを格納するためのメモリ部へのメモリアクセス処理が実行可能な状態であり、前記認証処理状態は、前記ホストアクセス装置による公開鍵暗号方式を用いた認証処理が実行可能で、かつ、前記メモリアクセス処理が禁止された状態であり、前記認証ICタグは、前記メモリ部と、前記認証ICタグが前記認証処理状態である場合に、前記認証処理を行う認証部と、前記認証ICタグが前記認証処理状態である場合に、前記メモリアクセス処理を禁止し、前記認証ICタグが前記メモリアクセス状態である場合に、前記メモリアクセス処理を行うメモリアクセス制御部と、前記ホストアクセス装置と通信することで、コマンドを取得する通信部と、前記通信部が取得したコマンドに基づいて、前記認証処理状態と前記メモリアクセス状態との間で前記認証ICタグの状態遷移を行う状態遷移制御部とを備える。   In order to solve the above problem, an authentication IC tag according to an aspect of the present invention is an authentication IC tag having an authentication processing state and a memory access state, and the memory access state is predetermined from a host access device. Is a state in which a memory access process to the memory unit for storing the data is executable, the authentication process state is capable of executing an authentication process using a public key cryptosystem by the host access device, and When the memory access process is prohibited, the authentication IC tag includes the memory unit, an authentication unit that performs the authentication process when the authentication IC tag is in the authentication process state, and the authentication IC tag The memory access process is prohibited when in the authentication process state, and the memory access process is prohibited when the authentication IC tag is in the memory access state. A memory access control unit that performs processing, a communication unit that acquires a command by communicating with the host access device, and between the authentication processing state and the memory access state based on the command acquired by the communication unit And a state transition control unit that performs state transition of the authentication IC tag.

これにより、認証処理状態では、メモリアクセス処理が禁止されているため、認証処理状態のときに受け取ったデータの一部をコマンド識別子と誤検出した場合でも、メモリアクセス処理を防止することができ、認証ICタグの誤動作を防止することができる。なお、特に、認証処理に公開鍵暗号方式を用いる場合は、暗号文データが長くなることが多いので、コマンド識別子の誤検出を起こす確率が高くなる。このため、本発明の一態様に係る認証ICタグによる誤動作の防止という効果は、より格別な効果を奏する。   Thereby, in the authentication processing state, the memory access processing is prohibited, so even when a part of the data received in the authentication processing state is erroneously detected as a command identifier, the memory access processing can be prevented. It is possible to prevent malfunction of the authentication IC tag. In particular, when a public key cryptosystem is used for authentication processing, ciphertext data often becomes long, so the probability of erroneous detection of a command identifier increases. For this reason, the effect of preventing malfunction by the authentication IC tag according to one aspect of the present invention has a more special effect.

また、前記認証部は、前記認証ICタグが前記認証処理状態であり、かつ、前記認証処理を要求する認証要求コマンドを前記通信部が取得した場合に、前記認証処理を行い、前記メモリアクセス制御部は、前記認証ICタグが前記メモリアクセス状態であり、かつ、前記メモリアクセス処理を要求するアクセス要求コマンドを前記通信部が取得した場合に、前記メモリアクセス処理を行い、前記状態遷移制御部は、前記認証処理状態と前記メモリアクセス状態とのいずれかへの状態遷移を要求する遷移要求コマンドを前記通信部が取得した場合に、前記遷移要求コマンドに応じて前記認証ICタグの状態遷移を行ってもよい。   The authentication unit performs the authentication process when the authentication IC tag is in the authentication process state and the communication unit acquires an authentication request command for requesting the authentication process, and performs the memory access control. A unit that performs the memory access process when the authentication IC tag is in the memory access state and the communication unit obtains an access request command that requests the memory access process, and the state transition control unit When the communication unit acquires a transition request command for requesting a state transition to either the authentication processing state or the memory access state, the authentication IC tag performs a state transition in response to the transition request command. May be.

これにより、認証処理、メモリアクセス処理、及び、状態遷移処理のそれぞれを、ホストアクセス装置から各処理に対応するコマンドを受け取った場合に実行する。つまり、遷移要求コマンドを取得した場合に、認証処理が可能な認証処理状態と、メモリアクセス処理が可能なメモリアクセス処理状態との相互の処理状態の切り替え処理を実行し、処理状態を確定しなければ、認証処理もメモリアクセス処理も受け付けない。このため、コマンド識別子の取りこぼしにより、暗号文データ中の一部をコマンド識別子であると誤検出した場合でも、認証ICタグの意図しない動作(誤動作)を防ぐことができる。   Thereby, each of the authentication process, the memory access process, and the state transition process is executed when a command corresponding to each process is received from the host access device. In other words, when the transition request command is acquired, the processing state must be confirmed by executing the switching processing between the authentication processing state in which authentication processing is possible and the memory access processing state in which memory access processing is possible. For example, neither authentication processing nor memory access processing is accepted. For this reason, even if a part of the ciphertext data is erroneously detected as a command identifier by missing the command identifier, an unintended operation (malfunction) of the authentication IC tag can be prevented.

また、前記状態遷移制御部は、前記認証処理又は前記メモリアクセス処理が完了した場合に、前記認証ICタグの状態遷移を行ってもよい。   The state transition control unit may perform state transition of the authentication IC tag when the authentication process or the memory access process is completed.

これにより、既に認証処理又はメモリアクセス処理が正しく実行されている場合には、処理中に状態遷移要求のコマンド識別子を受け取ったとしても、状態遷移を行わないので、認証ICタグの誤動作を防止することができる。   As a result, when the authentication process or the memory access process has already been correctly executed, even if the command identifier of the state transition request is received during the process, the state transition is not performed, so that the authentication IC tag is prevented from malfunctioning. be able to.

また、前記状態遷移制御部は、前記認証処理が完了した場合に、前記認証ICタグの状態を前記認証処理状態のまま維持してもよい。   The state transition control unit may maintain the state of the authentication IC tag in the authentication processing state when the authentication processing is completed.

これにより、認証処理を連続して実行することができる。つまり、状態遷移処理を実行しなければ、認証処理を独立して連続で実行することもできるため、連続した複数回の認証処理を行うことも可能となる。   Thereby, the authentication process can be executed continuously. That is, if the state transition process is not executed, the authentication process can be executed independently and continuously, so that a plurality of continuous authentication processes can be performed.

また、前記認証ICタグは、さらに、前記状態遷移制御部によって前記認証ICタグの状態遷移が行われた場合に、当該状態遷移の結果を示す状態遷移結果データを出力する出力部を備えてもよい。   The authentication IC tag may further include an output unit that outputs state transition result data indicating a result of the state transition when the state transition control unit performs state transition of the authentication IC tag. Good.

これにより、状態遷移処理の完了時に、ホストアクセス装置に、認証ICタグの処理状態を通知することができるため、効率良く認証ICタグの認証処理又はメモリアクセス処理を実行することができる。   Thereby, when the state transition process is completed, the processing status of the authentication IC tag can be notified to the host access device, so that the authentication process or the memory access process of the authentication IC tag can be executed efficiently.

また、前記通信部は、前記ホストアクセス装置から、公開鍵を用いて暗号化された暗号文データとを所定の通信単位で取得し、前記認証部は、前記暗号文データを全て取得した後で、前記認証処理として、前記暗号文データを復号してもよい。   In addition, the communication unit acquires ciphertext data encrypted using a public key from the host access device in a predetermined communication unit, and the authentication unit acquires all the ciphertext data. The ciphertext data may be decrypted as the authentication process.

これにより、暗号文データを全て受信してから復号を行うので、暗号文データの復号が失敗してしまうことを防止することができる。   Accordingly, since decryption is performed after all the ciphertext data is received, it is possible to prevent the decryption of the ciphertext data from failing.

また、前記通信部は、前記ホストアクセス装置から、公開鍵を用いて暗号化された暗号文データとを所定の通信単位で取得し、前記認証部は、前記認証処理として、前記暗号文データを前記通信単位毎に復号してもよい。   Further, the communication unit obtains ciphertext data encrypted using a public key from the host access device in a predetermined communication unit, and the authentication unit obtains the ciphertext data as the authentication process. You may decode for every said communication unit.

これにより、暗号文データを受信する度に復号するので、暗号文データの復号を高速化することができ、認証処理に要する時間を短くすることができる。   Thereby, since it decrypts whenever it receives ciphertext data, the decryption of ciphertext data can be speeded up and the time required for the authentication process can be shortened.

また、前記通信部は、前記ホストアクセス装置との間で物理的な信号線を介して通信してもよい。   The communication unit may communicate with the host access device via a physical signal line.

これにより、接触型の認証ICタグの認証処理を行うことができる。   Thereby, the authentication process of the contact type authentication IC tag can be performed.

また、前記通信部は、前記ホストアクセス装置との間で無線で通信してもよい。   The communication unit may communicate wirelessly with the host access device.

これにより、非接触型の認証ICタグの認証処理を行うことができる。   Thereby, the authentication process of a non-contact type authentication IC tag can be performed.

また、前記通信部は、前記ホストアクセス装置から、公開鍵を用いて暗号化された暗号文データを取得し、前記認証部は、前記認証処理として、前記公開鍵に対応する秘密鍵を用いて前記暗号文データを復号することで、復号文データを生成し、前記通信部は、さらに、前記復号文データを前記ホストアクセス装置へ送信してもよい。   Further, the communication unit obtains ciphertext data encrypted using a public key from the host access device, and the authentication unit uses a secret key corresponding to the public key as the authentication process. Decrypted text data is generated by decrypting the ciphertext data, and the communication unit may further transmit the decrypted text data to the host access device.

これにより、ホストアクセス装置側で、認証ICタグによる暗号文データの復号が正しく行われたか否かを判定することができる。すなわち、ホストアクセス装置は、認証ICタグの認証処理が正しく完了したか否かを判定することができる。   Thereby, it is possible to determine whether or not the decryption of the ciphertext data by the authentication IC tag is correctly performed on the host access device side. That is, the host access device can determine whether or not the authentication processing of the authentication IC tag has been correctly completed.

また、前記通信部は、前記ホストアクセス装置から、公開鍵を用いて平文データが暗号化された暗号文データとを取得し、前記認証部は、前記認証処理として、前記公開鍵に対応する秘密鍵を用いて前記暗号文データを復号することで、復号文データを生成し、前記平文データと前記復号文データとが一致するか否かを判定してもよい。   Further, the communication unit obtains ciphertext data obtained by encrypting plaintext data using a public key from the host access device, and the authentication unit performs a secret corresponding to the public key as the authentication process. Decrypted text data may be generated by decrypting the ciphertext data using a key, and it may be determined whether or not the plaintext data and the decrypted text data match.

これにより、認証ICタグ側で、認証ICタグの認証処理を行うことができる。   As a result, authentication processing of the authentication IC tag can be performed on the authentication IC tag side.

また、本発明の一態様に係るホストアクセス装置は、所定のデータを格納するためのメモリ部を備える認証ICタグを、公開鍵暗号方式を用いて認証する処理である認証処理を行うホストアクセス装置であって、前記認証ICタグの状態を遷移させるための命令を発行する制御部と、前記命令に対応するコマンドを前記認証ICタグに送信する通信部とを備え、前記制御部は、前記認証ICタグの状態を、前記ホストアクセス装置から前記メモリ部へのメモリアクセス処理が禁止され、かつ、前記ホストアクセス装置による前記認証処理が実行可能な認証処理状態と、前記メモリアクセス処理が実行可能なメモリアクセス状態との間で遷移させるための命令を発行する。   The host access device according to one aspect of the present invention performs an authentication process that is a process of authenticating an authentication IC tag including a memory unit for storing predetermined data using a public key cryptosystem. A control unit that issues a command for transitioning the state of the authentication IC tag, and a communication unit that transmits a command corresponding to the command to the authentication IC tag. The status of the IC tag includes an authentication processing state in which memory access processing from the host access device to the memory unit is prohibited and the host access device can execute the authentication processing, and the memory access processing can be executed. Issues an instruction to transition to and from the memory access state.

これにより、認証処理状態とメモリアクセス状態とを有する認証ICタグの状態を遷移させるためのコマンドを生成するので、認証ICタグの状態を遷移させることができる。   Thereby, since the command for changing the state of the authentication IC tag having the authentication processing state and the memory access state is generated, the state of the authentication IC tag can be changed.

また、前記ホストアクセス装置は、さらに、公開鍵を用いて平文データを暗号化することで、暗号文データを生成する暗号化部を備え、前記制御部は、前記認証処理を要求する認証命令、及び、前記メモリアクセス処理を要求するメモリアクセス命令を発行し、前記通信部は、前記制御部によって前記認証命令が発行された場合に、前記認証命令に対応するコマンドを識別するための識別コードと、前記暗号文データとを、前記認証ICタグに送信し、前記制御部によって前記メモリアクセス命令が発行された場合に、前記メモリアクセス命令に対応するコマンドを識別するための識別コードを、前記認証ICタグに送信してもよい。   The host access device further includes an encryption unit that generates ciphertext data by encrypting plaintext data using a public key, and the control unit includes an authentication command that requests the authentication process, And issuing a memory access command for requesting the memory access processing, and the communication unit, when the authentication command is issued by the control unit, an identification code for identifying a command corresponding to the authentication command; The ciphertext data is transmitted to the authentication IC tag, and when the memory access command is issued by the control unit, an identification code for identifying a command corresponding to the memory access command is provided. You may transmit to an IC tag.

これにより、認証処理、メモリアクセス処理、及び、状態遷移処理を認証ICタグに要求することができる。   As a result, authentication processing, memory access processing, and state transition processing can be requested from the authentication IC tag.

また、前記通信部は、前記制御部によって発行された命令に応じて、信号波形を変更してもよい。   The communication unit may change the signal waveform according to a command issued by the control unit.

これにより、認証ICタグとホストアクセス装置との間の通信の信号波形を命令に応じて変更するので、認証ICタグは、信号波形を検出することで、要求されたコマンドを認識することができる。   As a result, the signal waveform of communication between the authentication IC tag and the host access device is changed according to the command, so that the authentication IC tag can recognize the requested command by detecting the signal waveform. .

また、前記ホストアクセス装置は、CPU(Central Processing Unit)を備え、前記CPUは、前記制御部、前記暗号化部及び前記通信部の機能を実行してもよい。   The host access device may include a CPU (Central Processing Unit), and the CPU may execute the functions of the control unit, the encryption unit, and the communication unit.

これにより、ホストアクセス装置の主要な機能は、全てソフトウェア構成で実現することができる。   Thereby, all the main functions of the host access device can be realized by a software configuration.

また、認証ICタグの認証処理を行うホストアクセス装置であって、前記認証ICタグに対する少なくとも1つ以上の命令を発行する制御部と、公開鍵を用いて平文データを暗号化することで、暗号文データを生成する暗号化部と、前記暗号文データを前記認証ICタグに送信する通信部と、前記暗号文データを解析することで、前記1つ以上の命令に対応するコマンドを識別するための識別コードと一致するデータが前記暗号文データに含まれているか否かを判定する解析部と、前記識別コードと一致するデータが前記暗号文データに含まれていると判定された場合に、前記識別コードを変更することで、変更後識別コードを生成する変更部とを備え、前記通信部は、さらに、前記変更後識別コードを前記認証ICタグに送信してもよい。   A host access device that performs authentication processing of an authentication IC tag, wherein the plaintext data is encrypted by encrypting plaintext data using a control unit that issues at least one command for the authentication IC tag and a public key. To identify a command corresponding to the one or more instructions by analyzing the ciphertext data, an encryption unit that generates text data, a communication unit that transmits the ciphertext data to the authentication IC tag, and An analysis unit that determines whether data matching the identification code is included in the ciphertext data, and when it is determined that data matching the identification code is included in the ciphertext data, A changing unit that generates a changed identification code by changing the identification code, and the communication unit may further transmit the changed identification code to the authentication IC tag.

これにより、暗号文データの一部がコマンド識別子と一致した場合に、コマンド識別子を変更するので、変更後のコマンド識別子を用いることで、暗号文データの一部をコマンド識別子であると誤検出することを防止することができる。したがって、認証ICタグの誤動作を防止することができる。   As a result, when a part of the ciphertext data matches the command identifier, the command identifier is changed. By using the changed command identifier, a part of the ciphertext data is erroneously detected as the command identifier. This can be prevented. Therefore, malfunction of the authentication IC tag can be prevented.

また、本発明の一態様に係る認証システムは、上記の認証ICタグのいずれかと、上記のホストアクセス装置のいずれかとを備える。   An authentication system according to an aspect of the present invention includes any one of the above authentication IC tags and any of the above host access devices.

これにより、認証処理状態では、メモリアクセス処理が禁止されているため、認証処理状態に受け取ったデータの一部をコマンド識別子と誤検出した場合でも、メモリアクセス処理を防止することができ、認証ICタグの誤動作を防止することができる。なお、特に、認証処理に公開鍵暗号方式を用いる場合は、暗号文データが長くなることが多いので、コマンド識別子の誤検出を起こす確率が高くなる。このため、本発明の一態様に係る認証システムによる誤動作の防止という効果は、より格別な効果となる。   Accordingly, since the memory access process is prohibited in the authentication process state, the memory access process can be prevented even when a part of the data received in the authentication process state is erroneously detected as a command identifier, and the authentication IC Tag malfunction can be prevented. In particular, when a public key cryptosystem is used for authentication processing, ciphertext data often becomes long, so the probability of erroneous detection of a command identifier increases. For this reason, the effect of preventing malfunction by the authentication system according to one aspect of the present invention is a more special effect.

なお、本発明は、認証ICタグ、ホストアクセス装置及び認証システムとして実現できるだけではなく、当該認証ICタグ、ホストアクセス装置及び認証システムを構成する処理部をステップとする方法として実現することもできる。   The present invention can be realized not only as an authentication IC tag, a host access device, and an authentication system, but also as a method using the processing units constituting the authentication IC tag, the host access device, and the authentication system as steps.

例えば、本発明の一態様に係る認証方法は、認証処理状態とメモリアクセス状態とを有する認証ICタグを認証する認証方法であって、前記メモリアクセス状態の前記認証ICタグは、ホストアクセス装置から、所定のデータを格納するためのメモリ部へのメモリアクセス処理が実行可能であり、前記認証処理状態の前記認証ICタグは、前記ホストアクセス装置による公開鍵暗号方式を用いた認証処理が実行可能で、かつ、前記メモリアクセス処理が禁止され、前記認証方法は、前記認証ICタグが前記認証処理状態である場合に、前記認証処理を行う認証ステップと、前記認証ICタグが前記認証処理状態である場合に、前記メモリアクセス処理を禁止し、前記認証ICタグが前記メモリアクセス状態である場合に、前記メモリアクセス処理を行うメモリアクセスステップと、前記ホストアクセス装置と通信することで、コマンドを取得する通信ステップと、前記コマンドに基づいて、前記認証処理状態と前記メモリアクセス状態との間で前記認証ICタグの状態遷移を行う状態遷移制御ステップとを含む。   For example, an authentication method according to an aspect of the present invention is an authentication method for authenticating an authentication IC tag having an authentication processing state and a memory access state, and the authentication IC tag in the memory access state is transmitted from a host access device. The memory access process to the memory unit for storing predetermined data can be executed, and the authentication IC tag in the authentication process state can execute the authentication process using the public key cryptosystem by the host access device And when the memory access process is prohibited and the authentication IC tag is in the authentication process state, the authentication method performs the authentication process, and the authentication IC tag is in the authentication process state. In some cases, the memory access processing is prohibited, and when the authentication IC tag is in the memory access state, the memory access A memory access step for performing authentication, a communication step for obtaining a command by communicating with the host access device, and the authentication IC tag between the authentication processing state and the memory access state based on the command. A state transition control step for performing state transition.

これにより、認証処理状態の認証ICタグは、メモリアクセス処理が禁止されているため、認証処理状態に受け取ったデータの一部をコマンド識別子と誤検出した場合でも、メモリアクセス処理を防止することができ、認証ICタグの誤動作を防止することができる。なお、特に、認証処理に公開鍵暗号方式を用いる場合は、暗号文データが長くなることが多いので、コマンド識別子の誤検出を起こす確率が高くなる。このため、本発明の一態様に係る認証システムによる誤動作の防止という効果は、より格別な効果となる。   As a result, the authentication IC tag in the authentication processing state is prohibited from the memory access processing, and therefore, even when a part of the data received in the authentication processing state is erroneously detected as a command identifier, the memory access processing can be prevented. And the malfunction of the authentication IC tag can be prevented. In particular, when a public key cryptosystem is used for authentication processing, ciphertext data often becomes long, so the probability of erroneous detection of a command identifier increases. For this reason, the effect of preventing malfunction by the authentication system according to one aspect of the present invention is a more special effect.

本発明によれば、認証ICタグの誤動作を防止することができる。   According to the present invention, it is possible to prevent malfunction of the authentication IC tag.

本発明の実施の形態1に係る公開鍵暗号方式の認証ICタグの構成の一例を示すブロック図である。It is a block diagram which shows an example of a structure of the authentication IC tag of the public key cryptosystem which concerns on Embodiment 1 of this invention. 本発明の実施の形態1に係るコマンド種別の一例を示す図である。It is a figure which shows an example of the command classification which concerns on Embodiment 1 of this invention. 本発明の実施の形態1に係る認証処理部の構成の一例を示すブロック図である。It is a block diagram which shows an example of a structure of the authentication process part which concerns on Embodiment 1 of this invention. 本発明の実施の形態1に係るコマンドフォーマットの一例を示す図である。It is a figure which shows an example of the command format which concerns on Embodiment 1 of this invention. 本発明の実施の形態1に係る認証ICタグの動作の一例を示すフローチャートである。It is a flowchart which shows an example of operation | movement of the authentication IC tag which concerns on Embodiment 1 of this invention. 本発明の実施の形態1に係る認証システムの一例である電子機器の構成の一例を示すブロック図である。It is a block diagram which shows an example of a structure of the electronic device which is an example of the authentication system which concerns on Embodiment 1 of this invention. 本発明の実施の形態1に係る認証システムの動作の一例を示すシーケンス図である。It is a sequence diagram which shows an example of operation | movement of the authentication system which concerns on Embodiment 1 of this invention. 本発明の実施の形態1に係る認証システムの動作の一例を示すシーケンス図である。It is a sequence diagram which shows an example of operation | movement of the authentication system which concerns on Embodiment 1 of this invention. 認証ICタグが誤動作を起こす場合の認証システムの動作を示すシーケンス図である。It is a sequence diagram which shows operation | movement of an authentication system when an authentication IC tag causes a malfunction. 本発明の実施の形態1に係る認証システムの状態遷移の一例を示すフローチャートである。It is a flowchart which shows an example of the state transition of the authentication system which concerns on Embodiment 1 of this invention. 本発明の実施の形態1に係る認証システムの状態遷移の一例を示すフローチャートである。It is a flowchart which shows an example of the state transition of the authentication system which concerns on Embodiment 1 of this invention. 本発明の実施の形態1に係る認証システムの状態遷移の一例を示すフローチャートである。It is a flowchart which shows an example of the state transition of the authentication system which concerns on Embodiment 1 of this invention. 本発明の実施の形態1に係る認証システムの状態遷移の一例を示すフローチャートである。It is a flowchart which shows an example of the state transition of the authentication system which concerns on Embodiment 1 of this invention. 本発明の実施の形態1に係る認証システムにおいてホストアクセス装置側での認証処理を説明するための図である。It is a figure for demonstrating the authentication process by the side of a host access apparatus in the authentication system which concerns on Embodiment 1 of this invention. 本発明の実施の形態2に係る認証システムの一例である電子機器の構成の一例を示すブロック図である。It is a block diagram which shows an example of a structure of the electronic device which is an example of the authentication system which concerns on Embodiment 2 of this invention. 本発明の実施の形態2に係る認証ICタグの構成の一例を示すブロック図である。It is a block diagram which shows an example of a structure of the authentication IC tag which concerns on Embodiment 2 of this invention. 本発明の実施の形態の変形例に係る認証システムの一例である電子機器の構成の一例を示すブロック図である。It is a block diagram which shows an example of a structure of the electronic device which is an example of the authentication system which concerns on the modification of embodiment of this invention. 本発明の実施の形態の変形例に係る認証システムの一例である電子機器の構成の一例を示すブロック図である。It is a block diagram which shows an example of a structure of the electronic device which is an example of the authentication system which concerns on the modification of embodiment of this invention. 本発明の実施の形態の変形例に係る非接触型の認証システムの構成の一例を示す図である。It is a figure which shows an example of a structure of the non-contact-type authentication system which concerns on the modification of embodiment of this invention. 本発明の実施の形態の変形例に係る認証ICタグの構成の一例を示すブロック図である。It is a block diagram which shows an example of a structure of the authentication IC tag which concerns on the modification of embodiment of this invention. 本発明の実施の形態の変形例に係る認証ICタグの動作の一例を示すフローチャートである。It is a flowchart which shows an example of operation | movement of the authentication IC tag which concerns on the modification of embodiment of this invention. 本発明の実施の形態の変形例に係る認証処理部の構成の一例を示すブロック図である。It is a block diagram which shows an example of a structure of the authentication process part which concerns on the modification of embodiment of this invention. 本発明の実施の形態の変形例に係る認証システムにおいて認証ICタグ側での認証処理を説明するための図である。It is a figure for demonstrating the authentication process by the side of an authentication IC tag in the authentication system which concerns on the modification of embodiment of this invention. 本発明の実施の形態の変形例に係る認証ICタグの構成の一例を示すブロック図である。It is a block diagram which shows an example of a structure of the authentication IC tag which concerns on the modification of embodiment of this invention. 本発明の実施の形態の変形例に係るホストアクセス装置によるコマンドフォーマットの変更の一例を示す図である。It is a figure which shows an example of the change of the command format by the host access apparatus which concerns on the modification of embodiment of this invention. 本発明の実施の形態の変形例に係るホストアクセス装置によるコマンドフォーマットの変更の一例を示す図である。It is a figure which shows an example of the change of the command format by the host access apparatus which concerns on the modification of embodiment of this invention.

以下、本発明に係る認証ICタグ、認証システム、ホストアクセス装置及び認証方法の実施の形態について、図面を参照しながら詳細に説明する。   Hereinafter, embodiments of an authentication IC tag, an authentication system, a host access device, and an authentication method according to the present invention will be described in detail with reference to the drawings.

(実施の形態1)
本発明の実施の形態1に係る認証ICタグは、ホストアクセス装置による公開鍵暗号方式を用いた認証処理と、ホストアクセス装置から所定のデータを格納するためのメモリ部へのメモリアクセス処理とを行う。認証ICタグは、取得したコマンドに基づいて、認証処理状態とメモリアクセス状態との間で認証ICタグの状態遷移を行う状態遷移制御部と、認証処理状態である場合に認証処理を行う認証部と、認証処理状態である場合にメモリアクセス処理を禁止し、メモリアクセス状態である場合にメモリアクセス処理を実行するメモリアクセス制御部とを備えることを特徴とする。
(Embodiment 1)
The authentication IC tag according to the first embodiment of the present invention includes an authentication process using a public key cryptosystem by a host access device and a memory access process to a memory unit for storing predetermined data from the host access device. Do. The authentication IC tag includes a state transition control unit that performs a state transition of the authentication IC tag between the authentication processing state and the memory access state based on the acquired command, and an authentication unit that performs an authentication process when the authentication IC state is the authentication processing state And a memory access control unit that prohibits memory access processing when in the authentication processing state and executes memory access processing when in the memory access state.

つまり、本発明の実施の形態1に係る認証ICタグは、認証処理状態とメモリアクセス状態とを有する。認証処理状態は、認証処理を実行可能であるが、メモリアクセス処理を行うことができない状態である。メモリアクセス状態は、メモリアクセス処理を実行可能な状態である。   That is, the authentication IC tag according to the first embodiment of the present invention has an authentication processing state and a memory access state. The authentication processing state is a state in which authentication processing can be executed but memory access processing cannot be performed. The memory access state is a state in which memory access processing can be executed.

図1は、本発明の実施の形態1に係る公開鍵暗号方式の認証ICタグ100の構成の一例を示すブロック図である。図1に示すように、認証ICタグ100は、通信部101と、コマンド識別部102と、識別コード記憶部103と、メモリ部104と、認証制御部105と、認証処理部106と、メモリアクセス制御部107と、処理状態遷移制御部108と、出力データ制御部109と、入出力端子110とを備える。   FIG. 1 is a block diagram showing an example of the configuration of an authentication IC tag 100 of a public key cryptosystem according to Embodiment 1 of the present invention. As shown in FIG. 1, the authentication IC tag 100 includes a communication unit 101, a command identification unit 102, an identification code storage unit 103, a memory unit 104, an authentication control unit 105, an authentication processing unit 106, and a memory access. A control unit 107, a processing state transition control unit 108, an output data control unit 109, and an input / output terminal 110 are provided.

本発明の実施の形態1に係る認証ICタグ100は、認証処理とメモリアクセス処理とを行う。認証処理は、ホストアクセス装置200による公開鍵暗号方式を用いた処理である。メモリアクセス処理は、ホストアクセス装置200によるメモリ部104へのアクセス処理である。   The authentication IC tag 100 according to the first embodiment of the present invention performs an authentication process and a memory access process. The authentication process is a process using a public key cryptosystem by the host access device 200. The memory access process is an access process to the memory unit 104 by the host access device 200.

具体的には、認証ICタグ100は、認証処理状態とメモリアクセス状態とを有する。認証処理状態の認証ICタグ100は、ホストアクセス装置200からメモリ部104へのメモリアクセス処理が禁止され、ホストアクセス装置200による公開鍵暗号方式を用いた認証処理が実行可能である。また、メモリアクセス処理状態の認証ICタグ100は、ホストアクセス装置200による公開鍵暗号方式を用いた認証処理が禁止され、ホストアクセス装置200からメモリ部104へのメモリアクセス処理が実行可能である。   Specifically, the authentication IC tag 100 has an authentication processing state and a memory access state. In the authentication IC tag 100 in the authentication processing state, the memory access processing from the host access device 200 to the memory unit 104 is prohibited, and the host access device 200 can execute the authentication processing using the public key cryptosystem. Further, the authentication IC tag 100 in the memory access processing state is prohibited from authentication processing using the public key cryptosystem by the host access device 200 and can execute memory access processing from the host access device 200 to the memory unit 104.

通信部101は、ホストアクセス装置200と通信することで、データの送受信を行う。具体的には、通信部101は、入出力端子110と接続され、外部のホストアクセス装置200から送信されてきたデータを受け取り、受け取ったデータをコマンド識別部102、認証制御部105、メモリアクセス制御部107及び処理状態遷移制御部108に送信する。   The communication unit 101 transmits and receives data by communicating with the host access device 200. Specifically, the communication unit 101 is connected to the input / output terminal 110, receives data transmitted from the external host access device 200, and receives the received data as a command identification unit 102, an authentication control unit 105, and a memory access control. To the processing unit 107 and the processing state transition control unit 108.

通信部101が受信するデータは、例えば、認証ICタグ100に所定の処理を要求するために、ホストアクセス装置200によって生成されたコマンドである。コマンドは、コマンドを識別するための識別コード(コマンド識別子)を含んでいる。コマンドの詳細については、後で説明する。   The data received by the communication unit 101 is, for example, a command generated by the host access device 200 in order to request the authentication IC tag 100 for predetermined processing. The command includes an identification code (command identifier) for identifying the command. Details of the command will be described later.

また、通信部101は、出力データ制御部109より制御された外部に送信するための出力データを受け取り、入出力端子110を介して外部のホストアクセス装置200に送信する。出力データの詳細については、後で説明する。   Further, the communication unit 101 receives output data to be transmitted to the outside controlled by the output data control unit 109, and transmits it to the external host access device 200 via the input / output terminal 110. Details of the output data will be described later.

コマンド識別部102は、通信部101と接続され、外部のホストアクセス装置200から送信されてきた受信データ中のコマンドの識別を行う。コマンドの識別とは、識別コードを分析することで、認証ICタグ100が要求されている処理の種別を判定することである。   The command identification unit 102 is connected to the communication unit 101 and identifies a command in received data transmitted from the external host access device 200. The identification of the command is to determine the type of processing for which the authentication IC tag 100 is requested by analyzing the identification code.

具体的には、コマンド識別部102は、識別コード記憶部103に登録されているコマンド識別情報を参照することで、受信データに含まれるコマンドが認証処理要求であるか、メモリアクセス要求であるか、処理状態遷移要求であるかを判別する。そして、コマンド識別部102は、認証制御部105、メモリアクセス制御部107及び処理状態遷移制御部108にそれぞれ、動作の指示を発行する。   Specifically, the command identification unit 102 refers to the command identification information registered in the identification code storage unit 103 to determine whether the command included in the received data is an authentication processing request or a memory access request. It is determined whether it is a processing state transition request. Then, the command identification unit 102 issues operation instructions to the authentication control unit 105, the memory access control unit 107, and the processing state transition control unit 108, respectively.

識別コード記憶部103は、コマンドの識別コードを記憶するためのメモリである。具体的には、識別コード記憶部103には、コマンド識別部102に送信するための、図2に示すような識別コード情報が記憶されている。コマンド識別部102は、識別コード記憶部103に記憶されている識別コード情報を適宜参照することができる。なお、識別コード情報は、メモリ部104とアドレス空間を共有しておりメモリアクセス命令で書き換え可能であってもよい。   The identification code storage unit 103 is a memory for storing a command identification code. Specifically, identification code information as shown in FIG. 2 to be transmitted to the command identification unit 102 is stored in the identification code storage unit 103. The command identification unit 102 can refer to the identification code information stored in the identification code storage unit 103 as appropriate. Note that the identification code information may share an address space with the memory unit 104 and be rewritable by a memory access instruction.

メモリ部104は、所定のデータを記憶するためのメモリである。例えば、メモリ部104は、FeRAM(Ferroelectric Random Access Memory:強誘電体メモリ)から構成される。なお、メモリ部104は、FeRAMではなく、EEPROM(Electric Erasable and Programmable ROM)から構成されてもよい。   The memory unit 104 is a memory for storing predetermined data. For example, the memory unit 104 includes a FeRAM (Ferroelectric Random Access Memory). Note that the memory unit 104 may be configured by an EEPROM (Electric Erasable and Programmable ROM) instead of FeRAM.

また、メモリ部104は、例えば、プロテクト領域と非プロテクト領域とに分割されており、プロテクト領域には、外部から参照されてはならない情報が所定のデータとして記憶されていてもよい。例えば、メモリ部104のプロテクト領域には、製品情報、及び、暗号文を復号するための鍵情報などが記憶されている。なお、メモリ部104は、全ての領域がプロテクト領域でもよく、あるいは、全ての領域が非プロテクト領域でもよい。また、記憶すべきデータに応じて、プロテクト領域と非プロテクト領域とを動的に変更することができてもよい。   Further, the memory unit 104 may be divided into a protected area and a non-protected area, for example, and information that should not be referred to from the outside may be stored as predetermined data in the protected area. For example, product information, key information for decrypting ciphertext, and the like are stored in the protected area of the memory unit 104. In the memory unit 104, all areas may be protected areas, or all areas may be non-protected areas. Further, it may be possible to dynamically change the protected area and the non-protected area according to the data to be stored.

認証制御部105は、認証ICタグ100が認証処理状態である場合に、認証処理部106に認証処理を行わせる。具体的には、認証制御部105は、認証ICタグ100が認証処理状態であり、かつ、認証処理を要求する認証要求コマンドを通信部101が取得した場合に、認証処理部106に認証処理を行わせる。   The authentication control unit 105 causes the authentication processing unit 106 to perform authentication processing when the authentication IC tag 100 is in the authentication processing state. Specifically, the authentication control unit 105 performs authentication processing on the authentication processing unit 106 when the authentication IC tag 100 is in the authentication processing state and the communication unit 101 acquires an authentication request command for requesting authentication processing. Let it be done.

例えば、認証制御部105は、コマンド識別部102によって判別された受信データに含まれるコマンドが認証処理要求である場合に、コマンド識別部102より認証処理の指示を受け取る。そして、認証制御部105は、認証処理部106に、暗号文データの復号処理である認証処理を実施するように命令する。また、認証制御部105は、認証処理完了時に、コマンド識別部102、メモリアクセス制御部107及び処理状態遷移制御部108に、完了通知を行う。   For example, the authentication control unit 105 receives an authentication processing instruction from the command identification unit 102 when the command included in the received data determined by the command identification unit 102 is an authentication processing request. Then, the authentication control unit 105 instructs the authentication processing unit 106 to perform authentication processing that is decryption processing of ciphertext data. The authentication control unit 105 also notifies the command identification unit 102, the memory access control unit 107, and the processing state transition control unit 108 when the authentication process is completed.

なお、認証制御部105は、認証ICタグ100がメモリアクセス状態である場合に、認証処理を禁止してもよい。   Note that the authentication control unit 105 may prohibit the authentication process when the authentication IC tag 100 is in the memory access state.

認証処理部106は、認証制御部105の指示で、通信部101から出力された受信データに含まれる暗号文データを復号することで、復号文データを生成する。認証処理部106は、図3に示すように、暗号文復号部106aと、秘密鍵記憶部106bとを備える。   The authentication processing unit 106 generates decrypted text data by decrypting the cipher text data included in the received data output from the communication unit 101 in response to an instruction from the authentication control unit 105. As shown in FIG. 3, the authentication processing unit 106 includes a ciphertext decryption unit 106a and a secret key storage unit 106b.

暗号文復号部106aは、秘密鍵記憶部106bに記憶されている復号鍵(秘密鍵)を用いて、復号処理を実施する。暗号文復号部106aは、公開鍵暗号方式の暗号回路である。公開鍵暗号方式は、上述のNTRUなどを示し、暗号化処理後にハッシュ処理などを行う場合もある。また、復号文データは、出力データ制御部109に出力される。   The ciphertext decryption unit 106a performs a decryption process using the decryption key (secret key) stored in the secret key storage unit 106b. The ciphertext decryption unit 106a is a public key cryptosystem cryptographic circuit. The public key cryptosystem indicates the above-described NTRU and the like, and hash processing may be performed after the encryption processing. The decrypted text data is output to the output data control unit 109.

メモリアクセス制御部107は、認証ICタグ100が認証処理状態である場合に、ホストアクセス装置200からメモリ部104へのメモリアクセス処理を禁止する。また、メモリアクセス制御部107は、認証ICタグ100がメモリアクセス状態である場合に、ホストアクセス装置200からメモリ部104へのメモリアクセス処理を行う。具体的には、メモリアクセス制御部107は、認証ICタグ100がメモリアクセス状態であり、かつ、メモリアクセス処理を要求するアクセス要求コマンドを通信部101が取得した場合に、メモリアクセス処理を行う。   The memory access control unit 107 prohibits memory access processing from the host access device 200 to the memory unit 104 when the authentication IC tag 100 is in the authentication processing state. The memory access control unit 107 performs a memory access process from the host access device 200 to the memory unit 104 when the authentication IC tag 100 is in the memory access state. Specifically, the memory access control unit 107 performs memory access processing when the authentication IC tag 100 is in a memory access state and the communication unit 101 acquires an access request command for requesting memory access processing.

例えば、メモリアクセス制御部107は、コマンド識別部102によって判別された受信データに含まれるコマンドがメモリアクセス要求である場合に、コマンド識別部102よりメモリアクセス処理の指示を受け取る。そして、メモリアクセス制御部107は、メモリ部104へのメモリアクセス処理を実施する。   For example, when the command included in the received data determined by the command identification unit 102 is a memory access request, the memory access control unit 107 receives an instruction for memory access processing from the command identification unit 102. The memory access control unit 107 performs a memory access process to the memory unit 104.

具体的には、アクセス要求コマンドがメモリ部104への書き込み要求である場合は、メモリアクセス制御部107は、受信データ中の書き込みデータを受信データのアドレス領域に書き込みを行う。そして、書き込みアクセスの完了が完了した際に、メモリアクセス制御部107は、出力データ制御部109に書き込み完了信号を出力する。なお、書き込み完了を通知しないことも可能である。   Specifically, when the access request command is a write request to the memory unit 104, the memory access control unit 107 writes the write data in the received data into the address area of the received data. When the write access is completed, the memory access control unit 107 outputs a write completion signal to the output data control unit 109. It is also possible not to notify the completion of writing.

また、アクセス要求コマンドがメモリ部104からの読み出し要求である場合は、メモリアクセス制御部107は、受信データのアドレス領域からの読み出しを行う。そして、読み出しアクセスの完了が完了した際に、メモリアクセス制御部107は、出力データ制御部109に読み出しデータとともに読み出し完了信号を出力する。なお、読み出し完了は、読み出しデータの返信のみを持って暗示的に通知することも可能である。   When the access request command is a read request from the memory unit 104, the memory access control unit 107 reads the received data from the address area. When the completion of the read access is completed, the memory access control unit 107 outputs a read completion signal together with the read data to the output data control unit 109. It should be noted that the completion of reading can be notified implicitly only by returning read data.

処理状態遷移制御部108は、通信部101が取得したコマンドに基づいて、認証処理状態とメモリアクセス状態との間で認証ICタグ100の状態遷移を行う。具体的には、処理状態遷移制御部108は、認証処理状態とメモリアクセス状態とのいずれかへの状態遷移を要求する遷移要求コマンドを通信部101が取得した場合に、遷移要求コマンドに応じて認証ICタグ100の状態遷移を行う。   The processing state transition control unit 108 performs state transition of the authentication IC tag 100 between the authentication processing state and the memory access state based on the command acquired by the communication unit 101. Specifically, the processing state transition control unit 108 responds to the transition request command when the communication unit 101 acquires a transition request command for requesting a state transition to either the authentication processing state or the memory access state. The state transition of the authentication IC tag 100 is performed.

例えば、処理状態遷移制御部108は、コマンド識別部102によって判別された受信データに含まれるコマンドが処理状態遷移要求であった場合に、コマンド識別部102より処理状態遷移処理の指示を受け取る。そして、処理状態遷移制御部108は、処理状態遷移処理を実施する。   For example, the processing state transition control unit 108 receives an instruction for processing state transition processing from the command identification unit 102 when the command included in the received data determined by the command identification unit 102 is a processing state transition request. Then, the process state transition control unit 108 performs a process state transition process.

処理状態遷移制御部108は、認証ICタグ100の処理状態が認証処理状態である場合で、次に実施する処理をメモリアクセス処理に変更したい場合に、処理状態を切り替える。また、処理状態遷移制御部108は、認証ICタグ100の処理状態がメモリアクセス処理状態である場合に、次に実施する処理を認証処理に変更する場合にも、処理状態を切り替える。なお、処理状態遷移処理を実施しない場合は、前回の処理と今回の処理とは、同じとなる。例えば、前回の処理が認証処理である場合は、今回の処理は認証処理となる。なお、メモリアクセス処理の場合も同様となる。   The processing state transition control unit 108 switches the processing state when the processing state of the authentication IC tag 100 is the authentication processing state and the next processing to be performed is changed to the memory access processing. In addition, when the processing state of the authentication IC tag 100 is the memory access processing state, the processing state transition control unit 108 switches the processing state even when the processing to be performed next is changed to the authentication processing. When the process state transition process is not performed, the previous process and the current process are the same. For example, when the previous process is an authentication process, the current process is an authentication process. The same applies to the memory access process.

また、処理状態遷移制御部108は、受信データ中の特定のコード(遷移判定コード)が遷移状態の許可又は不許可を表すコードと一致するか否かを判定することで、遷移を実施するか否かを判定する。遷移処理が許可された場合は、処理状態遷移制御部108は、認証ICタグ100を認証処理状態からメモリアクセス状態へ遷移させる。あるいは、処理状態遷移制御部108は、認証ICタグ100をメモリアクセス状態から認証状態へ遷移させる。   Whether the processing state transition control unit 108 performs the transition by determining whether or not a specific code (transition determination code) in the received data matches a code indicating permission or non-permission of the transition state. Determine whether or not. When the transition process is permitted, the process state transition control unit 108 causes the authentication IC tag 100 to transition from the authentication process state to the memory access state. Alternatively, the processing state transition control unit 108 causes the authentication IC tag 100 to transition from the memory access state to the authentication state.

遷移処理が不許可である場合は、処理状態遷移制御部108は、認証ICタグ100を現在の処理状態に留める。なお、認証ICタグ100が現在の処理状態に留まった場合は、認証ICタグ100は、再度、現行の処理と同種の処理を実行することが可能となる。つまり、処理状態遷移制御部108は、認証処理が完了した場合に、認証ICタグ100の状態を認証処理状態のまま維持する。また、処理状態遷移制御部108は、メモリアクセス処理が完了した場合に、認証ICタグ100の状態をメモリアクセス状態のまま維持してもよい。   If the transition process is not permitted, the process state transition control unit 108 keeps the authentication IC tag 100 in the current process state. If the authentication IC tag 100 remains in the current processing state, the authentication IC tag 100 can again execute the same type of processing as the current processing. That is, the processing state transition control unit 108 maintains the state of the authentication IC tag 100 in the authentication processing state when the authentication processing is completed. Further, the processing state transition control unit 108 may maintain the state of the authentication IC tag 100 in the memory access state when the memory access processing is completed.

さらに、遷移処理を実行しない場合も、認証ICタグ100は、現行の処理と同種の処理を再度実行可能となる。つまり、遷移処理を実行しない場合は、認証ICタグ100は、現行の処理を連続で実行することが可能となる。例えば、1度目の認証処理を実行後、2度目の認証処理を実行することが可能となる。   Further, even when the transition process is not executed, the authentication IC tag 100 can execute the same type of process as the current process again. That is, when the transition process is not executed, the authentication IC tag 100 can continuously execute the current process. For example, after executing the first authentication process, the second authentication process can be executed.

遷移処理を実行した場合、処理状態遷移制御部108は、実行結果を示す遷移状態信号を出力データ制御部109へ出力する。実行結果は、認証処理からメモリアクセス処理への遷移、及び、メモリアクセス処理から認証処理への遷移のいずれであるかによって、異なる。したがって、実行結果の値を判別することによって、外部のホストアクセス装置200は、認証ICタグ100の処理状態を把握することが可能となる。   When the transition process is executed, the process state transition control unit 108 outputs a transition state signal indicating the execution result to the output data control unit 109. The execution result differs depending on whether the transition is from the authentication process to the memory access process or from the memory access process to the authentication process. Therefore, by determining the value of the execution result, the external host access device 200 can grasp the processing state of the authentication IC tag 100.

また、処理状態遷移制御部108は、遷移処理が不許可である場合も遷移結果を出力してもよい。遷移処理が不許可の場合の実行結果は、認証ICタグ100の現在の処理状態となる。   Further, the process state transition control unit 108 may output the transition result even when the transition process is not permitted. The execution result when the transition process is not permitted is the current processing state of the authentication IC tag 100.

出力データ制御部109は、出力部の一例であり、認証処理部106、メモリアクセス制御部107及び処理状態遷移制御部108より出力される各出力データを選択して、通信部101へ送信する。具体的には、出力データ制御部109は、認証処理部106による認証結果を示す認証結果信号、メモリアクセス制御部107によってメモリ部104から読み出されたデータを示す記憶データ読み出し信号、及び、処理状態遷移制御部108による状態遷移の結果を示す遷移状態信号のいずれかを選択して、選択したデータを通信部101へ送信する。例えば、出力データ制御部109は、認証ICタグ100の状態遷移が行われた場合に、通信部101を介して、状態遷移の結果を示す状態遷移結果データをホストアクセス装置200に出力する。   The output data control unit 109 is an example of an output unit, selects each output data output from the authentication processing unit 106, the memory access control unit 107, and the processing state transition control unit 108, and transmits it to the communication unit 101. Specifically, the output data control unit 109 includes an authentication result signal indicating an authentication result by the authentication processing unit 106, a stored data read signal indicating data read from the memory unit 104 by the memory access control unit 107, and a process One of the transition state signals indicating the result of the state transition by the state transition control unit 108 is selected, and the selected data is transmitted to the communication unit 101. For example, when the state transition of the authentication IC tag 100 is performed, the output data control unit 109 outputs state transition result data indicating the state transition result to the host access apparatus 200 via the communication unit 101.

入出力端子110は、通信部101と接続している。通信部101は、入出力端子110を介して、外部のホストアクセス装置200から入力される受信データを受信し、また、出力データ制御部109から出力された出力データを外部のホストアクセス装置200へ送信する。   The input / output terminal 110 is connected to the communication unit 101. The communication unit 101 receives reception data input from the external host access device 200 via the input / output terminal 110, and outputs output data output from the output data control unit 109 to the external host access device 200. Send.

次に、識別コード記憶部103に記憶されているコマンド種別、及び、コマンドに対応する動作について説明する。図2は、本発明の実施の形態1に係るコマンド種別の一例を示す図である。   Next, the command type stored in the identification code storage unit 103 and the operation corresponding to the command will be described. FIG. 2 is a diagram showing an example of command types according to Embodiment 1 of the present invention.

図2に示す例では、コマンド種別には、認証処理、遷移処理、メモリアクセス処理、及び、処理状態確認処理がある。つまり、コマンド識別部102は、受信したコマンドが、認証要求コマンド、遷移要求コマンド、アクセス要求コマンド、及び、状態確認要求コマンドのいずれであるかを判定する。   In the example illustrated in FIG. 2, the command types include authentication processing, transition processing, memory access processing, and processing status confirmation processing. That is, the command identification unit 102 determines whether the received command is an authentication request command, a transition request command, an access request command, or a status confirmation request command.

認証要求コマンドは、認証処理を要求するコマンドである。例えば、コマンド識別部102は、受信データに識別コード“A0”が含まれている場合に、受信データに含まれるコマンドが認証要求コマンドであると判定する。そして、コマンド識別部102は、認証要求コマンドを取得したことを認証制御部105に通知する。   The authentication request command is a command that requests authentication processing. For example, when the identification code “A0” is included in the received data, the command identification unit 102 determines that the command included in the received data is an authentication request command. Then, the command identification unit 102 notifies the authentication control unit 105 that the authentication request command has been acquired.

認証制御部105は、受信データに含まれる暗号文データ“X0”を復号するように、認証処理部106を制御する。認証処理部106は、公開鍵に対応する秘密鍵を用いて暗号文データ“X0”を復号することで、復号文データを生成し、生成した復号文データ(認証結果信号)を出力データ制御部109に出力する。そして、出力データ制御部109は、通信部101を介して、復号文データを認証結果データ“B0”として出力する。   The authentication control unit 105 controls the authentication processing unit 106 to decrypt the ciphertext data “X0” included in the received data. The authentication processing unit 106 decrypts the ciphertext data “X0” using the secret key corresponding to the public key to generate decrypted text data, and outputs the generated decrypted text data (authentication result signal) to the output data control unit Output to 109. Then, the output data control unit 109 outputs the decrypted text data as authentication result data “B0” via the communication unit 101.

遷移要求コマンドは、状態遷移処理を要求するコマンドである。例えば、コマンド識別部102は、受信データに識別コード“S0”が含まれている場合に、受信データに含まれるコマンドが遷移要求コマンドであると判定する。そして、コマンド識別部102は、遷移要求コマンドを取得したことを処理状態遷移制御部108に通知する。   The transition request command is a command for requesting state transition processing. For example, when the received data includes the identification code “S0”, the command identifying unit 102 determines that the command included in the received data is a transition request command. Then, the command identification unit 102 notifies the processing state transition control unit 108 that the transition request command has been acquired.

処理状態遷移制御部108は、受信データに含まれる遷移判定コード“S1”を取得し、取得した遷移判定コード“S1”が状態遷移処理の可否のいずれを示しているかを判定する。具体的には、処理状態遷移制御部108は、遷移判定コード“S1”が状態遷移処理の許可を示すコードに一致する場合は、状態遷移を行う。また、処理状態遷移制御部108は、遷移判定コード“S1”が状態遷移処理の不許可を示すコードに一致する場合は、状態遷移を行わない。すなわち、処理状態遷移制御部108は、認証ICタグ100の状態を現在の状態のまま維持させる。   The process state transition control unit 108 acquires the transition determination code “S1” included in the received data, and determines whether the acquired transition determination code “S1” indicates whether the state transition process is possible. Specifically, the process state transition control unit 108 performs a state transition when the transition determination code “S1” matches a code indicating permission of the state transition process. Further, the process state transition control unit 108 does not perform the state transition when the transition determination code “S1” matches the code indicating that the state transition process is not permitted. That is, the processing state transition control unit 108 maintains the state of the authentication IC tag 100 as it is.

例えば、遷移判定コード“S1”がメモリアクセス状態から認証処理状態への遷移を許可するコードに一致している場合、処理状態遷移制御部108は、認証ICタグ100を認証処理状態へ変更する。また、遷移判定コード“S1”が認証処理状態からメモリアクセス状態への遷移を許可するコードに一致している場合、処理状態遷移制御部108は、認証ICタグ100をメモリアクセス状態変更する。   For example, when the transition determination code “S1” matches the code that permits the transition from the memory access state to the authentication processing state, the processing state transition control unit 108 changes the authentication IC tag 100 to the authentication processing state. When the transition determination code “S1” matches the code that permits the transition from the authentication processing state to the memory access state, the processing state transition control unit 108 changes the authentication IC tag 100 to the memory access state.

処理状態遷移制御部108は、遷移結果データ(遷移状態信号)を出力データ制御部109に出力する。出力データ制御部109は、通信部101を介して遷移結果データを出力する。例えば、遷移処理の結果(又は、遷移不許可の結果)、認証ICタグ100がメモリアクセス状態である場合、出力データ制御部109は、メモリアクセス状態であることを示す遷移結果データ“T0”を出力する。また、認証ICタグ100が認証処理状態である場合、出力データ制御部109は、認証処理状態であることを示す遷移結果データ“T1”を出力する。   The processing state transition control unit 108 outputs transition result data (transition state signal) to the output data control unit 109. The output data control unit 109 outputs transition result data via the communication unit 101. For example, if the result of the transition process (or the result of the transition not permitted) or the authentication IC tag 100 is in the memory access state, the output data control unit 109 displays the transition result data “T0” indicating that it is in the memory access state. Output. When the authentication IC tag 100 is in the authentication processing state, the output data control unit 109 outputs transition result data “T1” indicating that it is in the authentication processing state.

アクセス要求コマンドは、メモリアクセス処理を要求するコマンドである。例えば、コマンド識別部102は、受信データに識別コード“M0”が含まれている場合に、受信データに含まれるコマンドがアクセス要求コマンドであると判定する。そして、コマンド識別部102は、アクセス要求コマンドを取得したことをメモリアクセス制御部107に通知する。   The access request command is a command for requesting memory access processing. For example, when the identification code “M0” is included in the received data, the command identification unit 102 determines that the command included in the received data is an access request command. Then, the command identification unit 102 notifies the memory access control unit 107 that the access request command has been acquired.

例えば、アクセス要求コマンドが書き込み要求である場合、メモリアクセス制御部107は、受信データに含まれるメモリアドレス“AD”及び書き込みデータ“WT”を取得する。そして、メモリアクセス制御部107は、取得したメモリアドレス“AD”が示すメモリ部104内の領域に、書き込みデータ“WT”を書き込む。   For example, when the access request command is a write request, the memory access control unit 107 acquires a memory address “AD” and write data “WT” included in the received data. Then, the memory access control unit 107 writes the write data “WT” in the area in the memory unit 104 indicated by the acquired memory address “AD”.

また、アクセス要求コマンドが読み出し要求である場合、メモリアクセス制御部107は、受信データに含まれるメモリアドレス“AD”を取得し、取得したメモリアドレス“AD”が示すメモリ部104内の領域に格納されているデータを読み出す。そして、メモリアクセス制御部107は、読み出したデータを、記憶データ読み出し信号(メモリデータ“N0”)として出力データ制御部109に出力する。出力データ制御部109は、通信部101を介して、メモリデータ“N0”を出力する。   When the access request command is a read request, the memory access control unit 107 acquires the memory address “AD” included in the received data and stores it in the area in the memory unit 104 indicated by the acquired memory address “AD”. Read the stored data. Then, the memory access control unit 107 outputs the read data to the output data control unit 109 as a storage data read signal (memory data “N0”). The output data control unit 109 outputs memory data “N0” via the communication unit 101.

状態確認要求コマンドは、認証ICタグ100の現在の状態を確認するためのコマンドである。例えば、コマンド識別部102は、受信データに識別コード“ST0”が含まれている場合に、受信データに含まれるコマンドが状態確認要求コマンドであると判定する。そして、コマンド識別部102は、状態確認要求コマンドを取得したことを処理状態遷移制御部108に通知する。   The state confirmation request command is a command for confirming the current state of the authentication IC tag 100. For example, if the identification code “ST0” is included in the received data, the command identification unit 102 determines that the command included in the received data is a state confirmation request command. Then, the command identification unit 102 notifies the processing state transition control unit 108 that the state confirmation request command has been acquired.

処理状態遷移制御部108は、認証ICタグ100の現在の状態を示す信号を出力データ制御部109に出力する。そして、出力データ制御部109は、認証ICタグ100の現在の状態を示す状態通知データを、通信部101を介して出力する。例えば、認証ICタグ100がメモリアクセス状態である場合、出力データ制御部109は、メモリアクセス状態であることを示す状態通知データ“T0”を出力する。また、認証ICタグ100が認証処理状態である場合、出力データ制御部109は、認証処理状態であることを示す状態通知データ“T1”を出力する。   The processing state transition control unit 108 outputs a signal indicating the current state of the authentication IC tag 100 to the output data control unit 109. Then, the output data control unit 109 outputs status notification data indicating the current status of the authentication IC tag 100 via the communication unit 101. For example, when the authentication IC tag 100 is in the memory access state, the output data control unit 109 outputs state notification data “T0” indicating that it is in the memory access state. When the authentication IC tag 100 is in the authentication processing state, the output data control unit 109 outputs state notification data “T1” indicating that it is in the authentication processing state.

続いて、本発明の実施の形態1に係るコマンドフォーマットの一例について説明する。図4は、本発明の実施の形態1に係るコマンドフォーマットの一例を示す図である。   Subsequently, an example of a command format according to Embodiment 1 of the present invention will be described. FIG. 4 is a diagram showing an example of a command format according to Embodiment 1 of the present invention.

図4に示すように、コマンドは、識別コードと処理対象データとを含んでいる。なお、図4は、識別コード“A0”、すなわち、認証要求コマンドの一例を示している。認証ICタグ100は、識別コード“A0”に続いて、暗号文データ“X0”を受信する。   As shown in FIG. 4, the command includes an identification code and processing target data. FIG. 4 shows an example of the identification code “A0”, that is, an authentication request command. The authentication IC tag 100 receives the ciphertext data “X0” following the identification code “A0”.

なお、暗号文データ“X0”は、例えば、NTRU暗号方式によって、秘匿に送信すべき対象である平文データが暗号化されたデータである。NTRU暗号方式については、例えば、特許文献3(特開2003−195755号公報)に開示されている。NTRU暗号方式で暗号化された暗号文データは、暗号強度を確保するために4000ビット程度のビット長で用いられるのが一般的である。   The ciphertext data “X0” is, for example, data obtained by encrypting plaintext data to be transmitted in a secret manner by the NTRU encryption method. The NTRU encryption method is disclosed in, for example, Patent Document 3 (Japanese Patent Laid-Open No. 2003-195755). Ciphertext data encrypted by the NTRU encryption method is generally used with a bit length of about 4000 bits in order to ensure encryption strength.

なお、公開鍵暗号方式には、NTRUの他にRSA及びECCといった方式があるので、これらの暗号方式を用いてもよい。   Since public key cryptosystems include systems such as RSA and ECC in addition to NTRU, these cryptosystems may be used.

続いて、本発明の実施の形態1に係る認証ICタグ100の動作の一例について説明する。図5は、本発明の実施の形態1に係る認証ICタグ100の動作の一例を示すフローチャートである。なお、図5は、認証ICタグ100は、初期状態が認証処理状態である場合の例について示している。   Next, an example of the operation of the authentication IC tag 100 according to Embodiment 1 of the present invention will be described. FIG. 5 is a flowchart showing an example of the operation of the authentication IC tag 100 according to Embodiment 1 of the present invention. FIG. 5 shows an example in which the authentication IC tag 100 is in the authentication processing state in the initial state.

まず、認証ICタグ100は、認証要求コマンドの受信待ち状態にある(S101)。すなわち、認証ICタグ100は、認証要求コマンドの識別コードを受信するまで、何もせず待機している。受信待ち状態にある場合に通信部101が識別コードを含むデータを取得した場合、コマンド識別部102は、識別コードを解析することで、認証ICタグ100に要求されている処理を判定する。これにより、認証ICタグ100は、暗号文取得状態となる。   First, the authentication IC tag 100 is in a waiting state for receiving an authentication request command (S101). That is, the authentication IC tag 100 stands by without doing anything until the identification code of the authentication request command is received. When the communication unit 101 acquires data including an identification code while waiting for reception, the command identification unit 102 analyzes the identification code to determine a process requested by the authentication IC tag 100. As a result, the authentication IC tag 100 enters a ciphertext acquisition state.

なお、この待機期間に、例えば、アクセス要求コマンドを受信したとしても、認証ICタグ100は、メモリアクセス処理を実行しない。また、待機期間に、例えば、遷移要求コマンドを受信した場合、認証ICタグ100は、状態遷移処理を行ってもよい(S107以降の処理)。あるいは、認証処理が完了していないので、遷移要求コマンドを受信したとしても、認証ICタグ100は、状態遷移を禁止してもよい。   Note that, for example, even if an access request command is received during this waiting period, the authentication IC tag 100 does not execute the memory access process. Further, for example, when a transition request command is received during the standby period, the authentication IC tag 100 may perform state transition processing (processing after S107). Alternatively, since the authentication process has not been completed, even if a transition request command is received, the authentication IC tag 100 may prohibit state transition.

認証要求コマンドの識別コードを取得した場合、通信部101は、暗号文データの受信を行う(S102)。なお、外部のホストアクセス装置200は、接触又は非接触のインターフェイスに関わらず、規定のビット単位でデータを送受信する。言い換えると、通信部101は、ホストアクセス装置200から、公開鍵を用いて暗号化された暗号文データを所定の通信単位で取得する。例えば、調歩同期式などの通信方式で通信する場合、1回の通信で送信可能なデータは8ビットとなる。   When the identification code of the authentication request command is acquired, the communication unit 101 receives ciphertext data (S102). The external host access device 200 transmits and receives data in a specified bit unit regardless of a contact or non-contact interface. In other words, the communication unit 101 acquires ciphertext data encrypted using the public key from the host access device 200 in a predetermined communication unit. For example, when communicating by a communication method such as start-stop synchronization, data that can be transmitted in one communication is 8 bits.

このように、認証ICタグ100の通信部101は、Nビット単位で認証要求コマンドを受信する。認証に必要な暗号文は、例えば、4000ビット程度のビット長であるため、認証ICタグ100は、複数回に分けて暗号文データを受け取る。具体的には、8ビット単位での通信である場合は、暗号文データの送受信だけで、500回の通信を実施する。   As described above, the communication unit 101 of the authentication IC tag 100 receives the authentication request command in units of N bits. Since the ciphertext necessary for authentication has a bit length of about 4000 bits, for example, the authentication IC tag 100 receives the ciphertext data in a plurality of times. Specifically, in the case of communication in units of 8 bits, communication is performed 500 times only by transmitting / receiving ciphertext data.

認証ICタグ100は、全ての暗号文データの受信が完了するまで(S103でNo)、認証要求コマンドの分割された暗号文データの受信を繰り返す。具体的には、4000ビットの暗号文データを全て取得するまで、分割された暗号文データの受信を繰り返す。例えば、通信部101は、暗号文取得状態から、分割された暗号文データを8ビット単位で受け取ると、分割された暗号文データを内部の記憶領域に保持するとともに、受け取り回数をカウントする。そして、通信部101は、必要なビット数を受け取るまでのカウント数まで、分割された暗号文データを取得し続ける。   The authentication IC tag 100 repeats reception of the ciphertext data obtained by dividing the authentication request command until reception of all the ciphertext data is completed (No in S103). Specifically, the reception of the divided ciphertext data is repeated until all 4000-bit ciphertext data is acquired. For example, when receiving the divided ciphertext data in units of 8 bits from the ciphertext acquisition state, the communication unit 101 holds the divided ciphertext data in the internal storage area and counts the number of times of reception. Then, the communication unit 101 continues to acquire the divided ciphertext data up to the count number until the necessary number of bits is received.

認証処理に必要な暗号文データを受け取った後、認証処理部106は、受け取った暗号文データに対する認証処理を実施する(S104)。具体的には、認証処理部106は、公開鍵に対応する秘密鍵を用いて暗号文データを復号することで、復号文データを生成する。   After receiving the ciphertext data necessary for the authentication process, the authentication processing unit 106 performs an authentication process on the received ciphertext data (S104). Specifically, the authentication processing unit 106 generates decrypted text data by decrypting the cipher text data using a secret key corresponding to the public key.

そして、認証処理が完了した後(S105)、具体的には、復号文データの生成が完了した後、出力データ制御部109は、通信部101を介して、復号文データを認証結果としてホストアクセス装置200に通知する(S106)。ここで、ホストアクセス装置200は、例えば、認証ICタグ100から送信された復号文データと、自装置が保持している平文データとを比較することで、認証が成功したか否かを判定する。そして、認証が成功していると判定した場合に、遷移要求コマンドを認証ICタグ100に送信する。なお、ホストアクセス装置200の詳細な動作については、後で説明する。   After the authentication process is completed (S105), specifically, after the generation of the decrypted text data is completed, the output data control unit 109 performs host access using the decrypted text data as an authentication result via the communication unit 101. The apparatus 200 is notified (S106). Here, for example, the host access apparatus 200 determines whether or not the authentication is successful by comparing the decrypted text data transmitted from the authentication IC tag 100 with the plain text data held by the host apparatus. . If it is determined that the authentication is successful, a transition request command is transmitted to the authentication IC tag 100. The detailed operation of the host access device 200 will be described later.

通信部101は、遷移要求コマンドを受信する(S107)。具体的には、コマンド識別部102が、受信されたコマンドの識別コードを解析し、コマンドが遷移要求コマンドであることを確認する。そして、処理状態遷移制御部108は、遷移判定コードが認証処理状態からメモリアクセス状態への遷移を許可するコードに一致しているか否かを判定する(S108)。   The communication unit 101 receives the transition request command (S107). Specifically, the command identification unit 102 analyzes the received command identification code and confirms that the command is a transition request command. Then, the processing state transition control unit 108 determines whether or not the transition determination code matches the code that permits the transition from the authentication processing state to the memory access state (S108).

遷移判定コードが認証処理状態からメモリアクセス状態への遷移を許可するコードに一致しない場合(S108でNo)、処理状態遷移制御部108は、状態遷移を行わない。すなわち、認証ICタグ100は、認証処理状態を維持、つまり、認証要求コマンドの受信待ち状態を維持する。   When the transition determination code does not match the code that permits the transition from the authentication processing state to the memory access state (No in S108), the processing state transition control unit 108 does not perform the state transition. That is, the authentication IC tag 100 maintains an authentication processing state, that is, a state waiting for receiving an authentication request command.

遷移判定コードが認証処理状態からメモリアクセス状態への遷移を許可するコードに一致する場合(S108でYes)、処理状態遷移制御部108は、認証ICタグ100の状態遷移を行う(S109)。具体的には、処理状態遷移制御部108は、認証ICタグ100を認証処理状態からメモリアクセス状態へ遷移させる。   When the transition determination code matches the code that permits the transition from the authentication processing state to the memory access state (Yes in S108), the processing state transition control unit 108 performs the state transition of the authentication IC tag 100 (S109). Specifically, the processing state transition control unit 108 causes the authentication IC tag 100 to transition from the authentication processing state to the memory access state.

処理状態の遷移が完了した後(S110)、出力データ制御部109は、通信部101を介して、状態遷移の結果を示すデータをホストアクセス装置200へ通知する(S111)。状態遷移が完了したので、認証ICタグ100は、アクセス要求コマンドの受信待ち状態にある(S112)。ここで、ホストアクセス装置200は、認証ICタグ100の状態がメモリアクセス状態に遷移したことを確認し、アクセス要求コマンドを送信する。   After the processing state transition is completed (S110), the output data control unit 109 notifies the host access device 200 of data indicating the result of the state transition via the communication unit 101 (S111). Since the state transition is completed, the authentication IC tag 100 is in a waiting state for receiving an access request command (S112). Here, the host access device 200 confirms that the state of the authentication IC tag 100 has changed to the memory access state, and transmits an access request command.

通信部101が受信したコマンドがアクセス要求コマンドである場合(S113でNo)、通信部101は、受信データに含まれるメモリアドレス(及び、書き込みデータ)をメモリアクセス制御部107に出力する。そして、メモリアクセス制御部107は、メモリアドレスが示すメモリ部104の領域からデータを読み出す、又は、当該領域にデータを書き込む(S114)。   When the command received by the communication unit 101 is an access request command (No in S113), the communication unit 101 outputs the memory address (and write data) included in the received data to the memory access control unit 107. Then, the memory access control unit 107 reads data from the area of the memory unit 104 indicated by the memory address, or writes data to the area (S114).

認証ICタグ100がメモリアクセス状態である場合に、通信部101が遷移要求コマンドを受信した場合(S113でYes)、処理状態遷移制御部108は、遷移判定コードの判定(S108)を行い、状態遷移処理を行う。   When the authentication IC tag 100 is in the memory access state and the communication unit 101 receives a transition request command (Yes in S113), the processing state transition control unit 108 determines the transition determination code (S108), and the state Perform transition processing.

以上のように、本発明の実施の形態1に係る認証ICタグ100は、遷移要求コマンドを受信した場合のみ、認証処理状態からメモリアクセス状態への状態遷移、又は、メモリアクセス状態から認証処理状態への状態遷移を行う。   As described above, the authentication IC tag 100 according to the first embodiment of the present invention changes the state from the authentication processing state to the memory access state or the authentication processing state from the memory access state only when the transition request command is received. State transition to.

なお、図5では、認証ICタグ100の初期状態が認証処理状態である場合について説明したが、認証ICタグ100の初期状態がメモリアクセス状態である場合についても同様である。具体的には、図5におけるアクセス要求コマンドの受信待ち状態である場合(S112)から処理が開始される。   Note that FIG. 5 illustrates the case where the initial state of the authentication IC tag 100 is the authentication processing state, but the same applies to the case where the initial state of the authentication IC tag 100 is the memory access state. Specifically, the processing is started from the case of waiting for access request command reception in FIG. 5 (S112).

次に、本発明の実施の形態1に係る認証ICタグ100とホストアクセス装置200とを備える認証システム、及び、ホストアクセス装置200の詳細について説明する。   Next, details of the authentication system including the authentication IC tag 100 and the host access device 200 according to the first embodiment of the present invention and the host access device 200 will be described.

図6は、本発明の実施の形態1に係る認証システムの一例である電子機器300の構成の一例を示すブロック図である。   FIG. 6 is a block diagram showing an example of the configuration of electronic device 300 that is an example of the authentication system according to Embodiment 1 of the present invention.

電子機器300は、本体基板301と、アクセサリ機器302とを備える。電子機器300は、例えば、携帯電話機又はデジタルカメラと電池パック、又は、ゲーム本体とコントローラといった機器であり、電池パック及びコントローラなどがアクセサリ機器302に相当する。本発明の実施の形態1に係る認証システムは、本体機器とアクセサリ機器と間での模造品又は不良品などを判別し、安全性の確保することを目的として使用される。   The electronic device 300 includes a main body substrate 301 and an accessory device 302. The electronic device 300 is, for example, a device such as a mobile phone or a digital camera and a battery pack, or a game main body and a controller, and the battery pack and the controller correspond to the accessory device 302. The authentication system according to Embodiment 1 of the present invention is used for the purpose of discriminating imitation products or defective products between the main device and the accessory device, and ensuring safety.

本体基板301は、アクセサリ機器302に認証アクセスを行うホストアクセス装置200と電器製品としての動作を行うための機器(図示せず)とを備えている。本体基板301は、例えば、携帯電話機、デジタルカメラ、又は、ゲーム本体として機能する処理部などを備える基板である。   The main body substrate 301 includes a host access device 200 that performs authentication access to the accessory device 302 and a device (not shown) for performing an operation as an electrical product. The main body substrate 301 is a substrate including, for example, a mobile phone, a digital camera, or a processing unit that functions as a game main body.

アクセサリ機器302は、認証ICタグ100を備える。例えば、アクセサリ機器302は、電池又はコントローラなどである。また、図6に示すように、認証ICタグ100とホストアクセス装置200とは、2本の信号線303及び304で接続されている。   The accessory device 302 includes the authentication IC tag 100. For example, the accessory device 302 is a battery or a controller. As shown in FIG. 6, the authentication IC tag 100 and the host access device 200 are connected by two signal lines 303 and 304.

信号線303は、認証ICタグ100がホストアクセス装置200から取得する受信データを伝送するための信号線である。また、信号線304は、認証ICタグ100がホストアクセス装置200へ送信する送信データを伝送するための信号線である。   The signal line 303 is a signal line for transmitting reception data acquired by the authentication IC tag 100 from the host access device 200. The signal line 304 is a signal line for transmitting transmission data transmitted from the authentication IC tag 100 to the host access device 200.

ホストアクセス装置200は、図6に示すように、CPU201と、鍵記憶部202と、暗号処理部203と、通信部204と、認証取得部205と、認証結果比較部206とを備えている。ホストアクセス装置200は、公開鍵暗号方式を用いて認証ICタグ100を認証するための認証処理を行う。   As shown in FIG. 6, the host access device 200 includes a CPU 201, a key storage unit 202, an encryption processing unit 203, a communication unit 204, an authentication acquisition unit 205, and an authentication result comparison unit 206. The host access device 200 performs an authentication process for authenticating the authentication IC tag 100 using a public key cryptosystem.

CPU201は、ホストアクセス装置200の処理を制御する制御部であり、認証ICタグ100へ要求する命令を発行する。例えば、CPU201は、認証ICタグ100の状態を遷移させるための命令を発行する。具体的には、CPU201は、認証ICタグ100の状態を、認証処理状態とメモリアクセス処理状態との間で遷移させるための命令を発行する。   The CPU 201 is a control unit that controls processing of the host access device 200, and issues a request to the authentication IC tag 100. For example, the CPU 201 issues a command for changing the state of the authentication IC tag 100. Specifically, the CPU 201 issues a command for changing the state of the authentication IC tag 100 between the authentication processing state and the memory access processing state.

また、CPU201は、認証ICタグ100に認証処理を要求する認証命令を発行する。具体的には、CPU201は、暗号処理部203に対して暗号文データの生成を指示する命令を発行する。また、CPU201は、通信部204を介して、認証ICタグ100に対するメモリアクセス命令を発行する。   Further, the CPU 201 issues an authentication command requesting the authentication IC tag 100 to perform authentication processing. Specifically, the CPU 201 issues a command for instructing the cryptographic processing unit 203 to generate ciphertext data. Further, the CPU 201 issues a memory access command for the authentication IC tag 100 via the communication unit 204.

鍵記憶部202は、平文データの暗号に用いる公開鍵(暗号鍵)を記憶しているメモリである。本実施の形態では、鍵記憶部202は、公開鍵を格納している。NTRU暗号方式では、4000ビット程度の鍵長となる。また、RSA又はECCといった暗号方式の場合は、200ビット程度であってもよい。   The key storage unit 202 is a memory that stores a public key (encryption key) used for encryption of plaintext data. In the present embodiment, the key storage unit 202 stores a public key. In the NTRU cryptosystem, the key length is about 4000 bits. In the case of an encryption method such as RSA or ECC, it may be about 200 bits.

鍵記憶部202は、CPU201の命令を受け、暗号処理部203に暗号鍵を出力する。なお、暗号鍵は、CPU201によって書き換えることができてもよい。   The key storage unit 202 receives an instruction from the CPU 201 and outputs an encryption key to the encryption processing unit 203. The encryption key may be rewritten by the CPU 201.

暗号処理部203は、CPU201からの命令によって、鍵記憶部202に格納されている鍵データを用いて平文データを暗号化することで、暗号文データを生成する。生成された暗号文データは、通信部204を介して、アクセサリ機器302に送信される。そして、認証ICタグ100は、暗号文データをICタグ受信データとして受け取る。   The encryption processing unit 203 generates ciphertext data by encrypting plaintext data using the key data stored in the key storage unit 202 in accordance with an instruction from the CPU 201. The generated ciphertext data is transmitted to the accessory device 302 via the communication unit 204. Then, the authentication IC tag 100 receives the ciphertext data as IC tag reception data.

具体的には、暗号処理部203は、公開鍵暗号方式であるNTRU暗号処理を行う。暗号処理部203は、CPU201からの命令を受け、鍵記憶部202に格納されている暗号鍵を用いて、NTRU暗号方式に基づいて平文データを暗号化することで、暗号文データを生成する。   Specifically, the encryption processing unit 203 performs NTRU encryption processing, which is a public key encryption method. The encryption processing unit 203 receives the command from the CPU 201 and encrypts plaintext data based on the NTRU encryption method using the encryption key stored in the key storage unit 202, thereby generating ciphertext data.

なお、平文データは、秘匿に送信すべき対象のデータであり、例えば、CPU201内のメモリに格納されている。あるいは、平文データは、別途専用の記憶領域に格納されていてもよい。   Note that the plain text data is data to be transmitted in a secret manner, and is stored in a memory in the CPU 201, for example. Alternatively, the plain text data may be separately stored in a dedicated storage area.

通信部204は、本体基板301とアクセサリ機器302とを電気的に接続するインターフェイスである。例えば、通信部204は、電極、コネクタ又は端子台などでよく、あるいは、ランド又はパッドなどの配線パターンでもよい。   The communication unit 204 is an interface that electrically connects the main body substrate 301 and the accessory device 302. For example, the communication unit 204 may be an electrode, a connector, a terminal block, or a wiring pattern such as a land or a pad.

通信部204が行う通信方式としては、SMBus(System Management Bus)(登録商標)などの同期式通信インターフェイス回路、調歩同期式の通信インターフェイス回路などの種々の通信インターフェイス回路を用いることができる。   As a communication method performed by the communication unit 204, various communication interface circuits such as a synchronous communication interface circuit such as SMBus (System Management Bus) (registered trademark) and an asynchronous communication interface circuit can be used.

通信部204は、CPU201によって発行された命令に対応するコマンドを認証ICタグ100に送信する。例えば、通信部204は、CPU201によって認証命令が発行された場合に、認証命令に対応するコマンド(認証要求コマンド)を識別するための識別コードと、暗号文データとを含む認証要求コマンドを、認証ICタグ100に送信する。また、通信部204は、メモリアクセス命令が発行された場合に、メモリアクセス命令に対応するコマンド(アクセス要求コマンド)を識別するための識別コードを含むアクセス要求コマンドを、認証ICタグ100に送信する。   The communication unit 204 transmits a command corresponding to the command issued by the CPU 201 to the authentication IC tag 100. For example, when an authentication command is issued by the CPU 201, the communication unit 204 authenticates an authentication request command including an identification code for identifying a command (authentication request command) corresponding to the authentication command and ciphertext data. Transmit to the IC tag 100. In addition, when a memory access instruction is issued, the communication unit 204 transmits an access request command including an identification code for identifying a command (access request command) corresponding to the memory access instruction to the authentication IC tag 100. .

なお、認証ICタグ100は、少なくとも認証処理部106とメモリ部104とを備え、ホストアクセス装置200から送信される暗号文データを復号し、ICタグ送信データとして、信号線304を介してホストアクセス装置200に返信する。また、ホストアクセス装置200からの送信データがメモリ部104への書き込みアクセスである場合は、認証ICタグ100は、メモリ部104に記憶するデータを送信してもよい。あるいは、ホストアクセス装置200からの送信データがメモリ部104への読み出しアクセスである場合は、認証ICタグ100は、メモリ部104に記憶されているデータを、ICタグ送信データとして送信してもよい。   Note that the authentication IC tag 100 includes at least the authentication processing unit 106 and the memory unit 104, decrypts the ciphertext data transmitted from the host access device 200, and performs host access via the signal line 304 as IC tag transmission data. Reply to device 200. When the transmission data from the host access device 200 is a write access to the memory unit 104, the authentication IC tag 100 may transmit the data stored in the memory unit 104. Alternatively, when the transmission data from the host access device 200 is a read access to the memory unit 104, the authentication IC tag 100 may transmit the data stored in the memory unit 104 as the IC tag transmission data. .

認証取得部205は、認証ICタグ100から送信された復号文データ(平文データ)を、通信部204を介して受け取り、内部のメモリなどに格納する。   The authentication acquisition unit 205 receives the decrypted text data (plain text data) transmitted from the authentication IC tag 100 via the communication unit 204 and stores it in an internal memory or the like.

認証結果比較部206は、CPU201からの命令を受けて、認証取得部205に格納された復号文データと、暗号処理部203で暗号処理される前の平文データとが一致するか否かを判定する。例えば、認証結果比較部206は、内部に論理積演算を行う論理演算子を備える。そして、認証結果比較部206は、論理演算子により各1ビット単位での比較を行い、全ての比較値が1であれば、全ビット一致となるため、平文データと復号文データとが一致したと判定する。   Upon receiving an instruction from the CPU 201, the authentication result comparison unit 206 determines whether the decrypted text data stored in the authentication acquisition unit 205 matches the plaintext data before being encrypted by the encryption processing unit 203. To do. For example, the authentication result comparison unit 206 includes a logical operator that performs a logical product operation. Then, the authentication result comparison unit 206 performs a comparison in units of 1 bit by a logical operator, and if all comparison values are 1, all the bits match, so the plaintext data and the decrypted text data match. Is determined.

一致の可否は、CPU201に送信される。CPU201は、平文データと復号文データとが一致していれば、認証は問題ないと判断し、アクセサリ機器302は正規品であると判断する。また、平文データと復号文データとが一致しなければ、CPU201は、認証処理は問題あり(失敗)と判断し、アクセサリ機器302が非正規品又は模造品であると判断する。   Whether the match is possible is transmitted to the CPU 201. If the plaintext data and the decrypted text data match, the CPU 201 determines that there is no problem with authentication, and determines that the accessory device 302 is a genuine product. If the plaintext data and the decrypted text data do not match, the CPU 201 determines that there is a problem (failure) in the authentication process, and determines that the accessory device 302 is an unauthorized product or a counterfeit product.

続いて、本発明の実施の形態1に係る認証システムの動作について説明する。   Next, the operation of the authentication system according to Embodiment 1 of the present invention will be described.

図7Aは、本発明の実施の形態1に係る認証システムの動作の一例を示すシーケンス図である。図6で示される認証システムにおいて、本体基板301側のホストアクセス装置200よりアクセサリ機器302側の認証ICタグ100に、コマンドを発行することで所望の動作を実現する。なお、認証ICタグ100は、初期状態が認証処理状態であって、メモリアクセス処理は禁止されているものとする。   FIG. 7A is a sequence diagram showing an example of operation of the authentication system according to Embodiment 1 of the present invention. In the authentication system shown in FIG. 6, a desired operation is realized by issuing a command from the host access device 200 on the main body substrate 301 side to the authentication IC tag 100 on the accessory device 302 side. It is assumed that the authentication IC tag 100 is in the authentication processing state in the initial state and the memory access processing is prohibited.

例えば、ホストアクセス装置200は、アクセサリ機器302が模造品でないかを検出するために、認証アクセスを実施する(S201)。ホストアクセス装置200は、認証アクセスとして、コマンド識別子と暗号文データとを含む認証要求コマンドを生成する。そして、ホストアクセス装置200は、コマンド識別子(例えば、“1111”のビット列)と暗号文データ(公開鍵暗号方式で4000ビット程度。例えば、“1234_56bc_4fbc_ABCD_・・・・_AAAA”)とを認証ICタグ100に送信する(S202)。   For example, the host access device 200 performs authentication access in order to detect whether the accessory device 302 is a counterfeit (S201). The host access device 200 generates an authentication request command including a command identifier and ciphertext data as authentication access. Then, the host access device 200 sends a command identifier (for example, a bit string of “1111”) and ciphertext data (about 4000 bits in the public key cryptosystem. For example, “1234_56bc_4fbc_ABCD_... AAAA”) to the authentication IC tag 100. (S202).

認証要求コマンドを受信した認証ICタグ100は、暗号文データと内部で保持している秘密鍵とを用いて認証処理を実施する(S203)。認証ICタグ100は、認証処理の結果を表す認証結果データを生成し(S204)、ホストアクセス装置200に返信する(S205)。   Upon receiving the authentication request command, the authentication IC tag 100 performs an authentication process using the ciphertext data and the private key held therein (S203). The authentication IC tag 100 generates authentication result data representing the result of the authentication process (S204), and returns it to the host access device 200 (S205).

認証結果データは、例えば、ホストアクセス装置200が認証ICタグ100からの認証結果であると判別するためのコマンド識別子(例えば、“2222”)を含んでいる。また、認証結果データは、暗号文データを復号することで生成された復号文データ(例えば、“ABCD・・・AAAA”)も含んでいる。   The authentication result data includes, for example, a command identifier (for example, “2222”) for determining that the host access device 200 is the authentication result from the authentication IC tag 100. The authentication result data also includes decrypted text data (for example, “ABCD... AAAA”) generated by decrypting the cipher text data.

ホストアクセス装置200は、認証結果データを受け取り、認証が成功したか否かを判定する(S206)。例えば、ホストアクセス装置200は、認証ICタグ100から送信された復号文データと、自装置が記憶している平文データとが一致するか否かを判定する。復号文データと平文データとが一致した場合、ホストアクセス装置200は、認証処理が成功したと判定する。復号文データと平文データとが一致しない場合、ホストアクセス装置200は、認証処理が失敗したと判定する。   The host access device 200 receives the authentication result data and determines whether the authentication is successful (S206). For example, the host access device 200 determines whether the decrypted text data transmitted from the authentication IC tag 100 matches the plain text data stored in the self device. When the decrypted text data and the plain text data match, the host access device 200 determines that the authentication process has been successful. When the decrypted text data and the plain text data do not match, the host access device 200 determines that the authentication process has failed.

認証処理が成功した場合は(S206でOK)、ホストアクセス装置200は、認証ICタグ100を正規品であると判断し、詳細な製品情報、例えば、品番、使用頻度などが記憶されたメモリ部104へのアクセスを行う処理への準備を行う(S207)。   If the authentication process is successful (OK in S206), the host access device 200 determines that the authentication IC tag 100 is a genuine product, and stores detailed product information, for example, product number, usage frequency, and the like. Preparation for processing for accessing the access point 104 is performed (S207).

認証処理が失敗した場合は(S206でNG)、ホストアクセス装置200は、認証ICタグ100を非正規品又は模造品と判断し、該当のアクセサリ機器302を使用できなくする(S208)。   If the authentication process fails (NG in S206), the host access device 200 determines that the authentication IC tag 100 is an unauthorized product or a counterfeit product, and disables the corresponding accessory device 302 (S208).

ホストアクセス装置200がメモリアクセス処理を行うためには、認証ICタグ100の処理状態を認証処理状態からメモリアクセス処理状態に切り替える必要がある。なぜなら、認証ICタグ100は、認証処理が成功しただけでは、処理状態は遷移せず、認証処理状態のままであり、メモリアクセス処理は禁止されているためである。   In order for the host access device 200 to perform memory access processing, it is necessary to switch the processing state of the authentication IC tag 100 from the authentication processing state to the memory access processing state. This is because the authentication IC tag 100 does not change the processing state only by the successful authentication processing, remains in the authentication processing state, and the memory access processing is prohibited.

ホストアクセス装置200は、認証ICタグ100の処理状態を切り替えるため、遷移要求コマンドを生成する(S207)。遷移要求コマンドは、コマンド識別子(例えば、“3333”)と遷移判定コードとを含んでいる。ホストアクセス装置200は、生成した遷移要求コマンドを認証ICタグ100に送信する(S209)。   The host access device 200 generates a transition request command to switch the processing state of the authentication IC tag 100 (S207). The transition request command includes a command identifier (for example, “3333”) and a transition determination code. The host access device 200 transmits the generated transition request command to the authentication IC tag 100 (S209).

認証ICタグ100は、コマンド識別子を解析することで、ホストアクセス装置200から送信されたコマンドが、遷移要求コマンドであることを確認し、状態遷移処理を実行する(S210)。そして、認証ICタグ100は、遷移要求コマンドに含まれる遷移判定コードを解析することで、状態遷移の許可又は不許可を判定する(S211)。   The authentication IC tag 100 analyzes the command identifier to confirm that the command transmitted from the host access device 200 is a transition request command, and executes state transition processing (S210). Then, the authentication IC tag 100 analyzes the transition determination code included in the transition request command to determine whether the state transition is permitted or not permitted (S211).

遷移判定コードが不一致であった場合(S211でNG)、認証ICタグ100は、状態遷移を不許可と判断し、認証処理状態を維持する(S212)。遷移判定コードが一致であった場合は(S211でOK)、認証ICタグ100は、処理状態遷移を許可と判断し、認証処理状態からメモリアクセス状態へと遷移する(S213)。   If the transition determination codes do not match (NG in S211), the authentication IC tag 100 determines that the state transition is not permitted and maintains the authentication processing state (S212). If the transition determination codes match (OK in S211), the authentication IC tag 100 determines that the processing state transition is permitted, and transitions from the authentication processing state to the memory access state (S213).

そして、認証ICタグ100は、状態遷移の許可又は不許可に関わらず、遷移結果データをホストアクセス装置200に返信する(S214)。例えば、遷移結果データは、現在の処理状態を示す値であり、メモリアクセス状態であれば“T0”を返信し、認証処理状態であれば“T1”を返信する(図2参照)。例えば、認証ICタグ100は、認証処理状態から、遷移不許可で認証処理状態に回帰した場合は、“T1”を返信する。   Then, the authentication IC tag 100 returns the transition result data to the host access device 200 regardless of whether the state transition is permitted or not (S214). For example, the transition result data is a value indicating the current processing state, and “T0” is returned if the memory is in the access state, and “T1” is returned if the state is the authentication processing state (see FIG. 2). For example, when the authentication IC tag 100 returns from the authentication processing state to the authentication processing state without transition, “T1” is returned.

ホストアクセス装置200は、認証ICタグ100からの状態遷移結果データを受け取り、認証ICタグ100がメモリアクセス状態であることを確認する。そして、ホストアクセス装置200は、アクセス要求コマンドを生成する(S215)。アクセス要求コマンドは、コマンド識別子(例えば、“ABCD”)と、メモリアドレスと、Read/Write属性信号(読み書き判定データ)と、書き込みデータとを含んでいる。なお、書き込みデータは、読み出し要求である場合は、アクセス要求コマンドに含まれない。   The host access device 200 receives the state transition result data from the authentication IC tag 100 and confirms that the authentication IC tag 100 is in the memory access state. Then, the host access device 200 generates an access request command (S215). The access request command includes a command identifier (for example, “ABCD”), a memory address, a Read / Write attribute signal (read / write determination data), and write data. The write data is not included in the access request command when it is a read request.

次に、ホストアクセス装置200は、生成したアクセス要求コマンドを送信する(S216)。認証ICタグ100は、アクセス要求コマンドを受け取り、メモリアクセス処理を実行する(S217)。   Next, the host access device 200 transmits the generated access request command (S216). The authentication IC tag 100 receives the access request command and executes a memory access process (S217).

アクセス要求コマンドがWrite属性の場合、すなわち、メモリ部104への書き込みを要求するコマンドである場合、認証ICタグ100は、該当のメモリアドレスが示す領域に、送信した書き込みデータを書き込む。また、アクセス要求コマンドがRead属性の場合、すなわち、メモリ部104への読み出しを要求するコマンドである場合、認証ICタグ100は、該当のメモリアドレスが示す領域から、データを読み出す。   If the access request command has a write attribute, that is, a command that requests writing to the memory unit 104, the authentication IC tag 100 writes the transmitted write data in the area indicated by the corresponding memory address. If the access request command has a Read attribute, that is, a command requesting reading to the memory unit 104, the authentication IC tag 100 reads data from the area indicated by the corresponding memory address.

そして、認証ICタグ100は、ホストアクセス装置200に、書き込み完了結果、又は、読み出したデータを返信する(S218、S219)。   Then, the authentication IC tag 100 returns a write completion result or read data to the host access device 200 (S218, S219).

なお、メモリアクセス状態から認証処理状態への処理切り替えも同様の手順で実施される。   The process switching from the memory access state to the authentication process state is performed in the same procedure.

ここで、図7Bを用いて、状態遷移を不許可にすることにより、認証処理を連続して行う例について説明する。図7Bは、本発明の実施の形態1に係る認証システムの動作の一例を示すシーケンス図である。図6で示される認証システムにおいて、本体基板301側のホストアクセス装置200よりアクセサリ機器302側の認証ICタグ100に、コマンドを発行することで所望の動作を実現する。なお、認証ICタグ100は、初期状態が認証処理状態であって、メモリアクセス処理は禁止されているものとする。また、以下では、図7Aと同じ処理には同じ参照符号を付し、以下では、説明を省略する。   Here, an example in which authentication processing is continuously performed by disabling state transition will be described with reference to FIG. 7B. FIG. 7B is a sequence diagram showing an example of the operation of the authentication system according to Embodiment 1 of the present invention. In the authentication system shown in FIG. 6, a desired operation is realized by issuing a command from the host access device 200 on the main body substrate 301 side to the authentication IC tag 100 on the accessory device 302 side. It is assumed that the authentication IC tag 100 is in the authentication processing state in the initial state and the memory access processing is prohibited. In the following, the same processes as those in FIG. 7A are denoted by the same reference numerals, and the description thereof is omitted below.

ホストアクセス装置200は、アクセサリ機器302が模造品でないかを検出するために、認証アクセスを実施する(S201〜S206)。認証処理が成功した場合は(S206でOK)、ホストアクセス装置200は、通常、図7Aに示すように、認証ICタグ100を正規品であると判断し、詳細な製品情報、例えば、品番、使用頻度などが記憶されたメモリ部104へのアクセスを行う処理への準備を行う(S207)。   The host access device 200 performs authentication access in order to detect whether the accessory device 302 is a counterfeit product (S201 to S206). If the authentication process is successful (OK in S206), the host access device 200 normally determines that the authentication IC tag 100 is a genuine product as shown in FIG. 7A, and provides detailed product information such as a product number, Preparation for processing for accessing the memory unit 104 in which the frequency of use is stored is made (S207).

このとき、ホストアクセス装置200が、連続して認証処理を試みる場合が存在する。例えば、ホストアクセス装置200は、1回目の認証処理の後にメモリアクセス処理を行わなかった場合に、再度、メモリアクセス処理を行う前に認証処理を行う場合などである。   At this time, there is a case where the host access device 200 continuously tries the authentication process. For example, when the host access device 200 does not perform the memory access process after the first authentication process, the host access apparatus 200 performs the authentication process before performing the memory access process again.

このとき、図7Bに示すように、ホストアクセス装置200は、認証ICタグ100の処理状態を切り替えるため、遷移要求コマンドを生成する(S207a)。遷移要求コマンドは、コマンド識別子(例えば、“3333”)と偽の遷移判定コードとを含んでいる。ホストアクセス装置200は、生成した遷移要求コマンドを認証ICタグ100に送信する(S209a)。   At this time, as shown in FIG. 7B, the host access device 200 generates a transition request command in order to switch the processing state of the authentication IC tag 100 (S207a). The transition request command includes a command identifier (for example, “3333”) and a fake transition determination code. The host access device 200 transmits the generated transition request command to the authentication IC tag 100 (S209a).

認証ICタグ100は、コマンド識別子を解析することで、ホストアクセス装置200から送信されたコマンドが、遷移要求コマンドであることを確認し、状態遷移処理を実行する(S210a)。そして、認証ICタグ100は、遷移要求コマンドに含まれる遷移判定コードを解析することで、状態遷移の許可又は不許可を判定する(S211a)。   The authentication IC tag 100 analyzes the command identifier to confirm that the command transmitted from the host access device 200 is a transition request command, and executes state transition processing (S210a). Then, the authentication IC tag 100 analyzes the transition determination code included in the transition request command to determine whether the state transition is permitted or not permitted (S211a).

図7Bの例では、上述したように、ホストアクセス装置200は、認証ICタグ100を認証状態にするために、偽の遷移判定コードを送信する。認証ICタグ100は、偽の遷移判定コードを受信するので、状態遷移は不許可であると判断し、再度、認証処理状態へ回帰する。   In the example of FIG. 7B, as described above, the host access device 200 transmits a false transition determination code in order to place the authentication IC tag 100 in the authentication state. Since the authentication IC tag 100 receives the false transition determination code, the authentication IC tag 100 determines that the state transition is not permitted, and returns to the authentication processing state again.

そして、認証ICタグ100は、遷移処理は不許可であり、元の状態(具体的には、認証処理状態)に回帰したことを示す遷移結果データをホストアクセス装置200に送信する(S214a)。具体的には、認証ICタグ100は、認証処理状態を示す“T1”を返信する。   Then, the authentication IC tag 100 does not permit the transition process, and transmits transition result data indicating that the process has returned to the original state (specifically, the authentication process state) to the host access device 200 (S214a). Specifically, the authentication IC tag 100 returns “T1” indicating the authentication processing state.

ホストアクセス装置200は、認証ICタグ100から返信された遷移結果データが“T1”であることを検出すると、認証ICタグ100が認証処理状態であることを認識し、再度、認証アクセスを実施する(S201a)。   When the host access device 200 detects that the transition result data returned from the authentication IC tag 100 is “T1”, the host access device 200 recognizes that the authentication IC tag 100 is in the authentication processing state, and performs authentication access again. (S201a).

例えば、ホストアクセス装置200は、認証アクセスとして、コマンド識別子と暗号文データとを含む認証要求コマンドを生成する。そして、ホストアクセス装置200は、コマンド識別子(例えば、“1111”のビット列)と暗号文データ(公開鍵暗号方式で4000ビット程度。例えば、“1234_56bc_4fbc_ABCD_・・・・_AAAA”)とを認証ICタグ100に送信する(S202a)。このとき、1度目の暗号文データと2度目の暗号文データとは、同じものである必要はない。   For example, the host access device 200 generates an authentication request command including a command identifier and ciphertext data as authentication access. Then, the host access device 200 sends a command identifier (for example, a bit string of “1111”) and ciphertext data (about 4000 bits in the public key cryptosystem. For example, “1234_56bc_4fbc_ABCD_... AAAA”) to the authentication IC tag 100. (S202a). At this time, the first ciphertext data and the second ciphertext data do not need to be the same.

認証要求コマンドを受信した認証ICタグ100は、暗号文データと内部で保持している秘密鍵とを用いて認証処理を実施する(S203a)。認証ICタグ100は、認証処理の結果を表す認証結果データを生成し(S204a)、ホストアクセス装置200に返信する(S205a)。   Upon receiving the authentication request command, the authentication IC tag 100 performs an authentication process using the ciphertext data and the private key held inside (S203a). The authentication IC tag 100 generates authentication result data representing the result of the authentication process (S204a), and returns it to the host access device 200 (S205a).

これにより、認証処理を連続して実現することを可能とする。   Thereby, it becomes possible to implement | achieve an authentication process continuously.

なお、図7Bの例では、ホストアクセス装置200は、偽の遷移判定コードを送信したが、認証処理状態に遷移させるための遷移判定コードを送信してもよい。また、ホストアクセス装置200は、遷移判定コードを送信しなくてもよい。認証ICタグ100では、遷移判定コードが受信されないので、状態遷移は不許可であると判断することができる。   In the example of FIG. 7B, the host access device 200 has transmitted a fake transition determination code, but may transmit a transition determination code for shifting to the authentication processing state. Further, the host access device 200 may not transmit the transition determination code. In the authentication IC tag 100, since the transition determination code is not received, it can be determined that the state transition is not permitted.

ここで、従来の認証ICタグが誤動作を起こす例について説明する。図8は、従来の認証ICタグが誤動作を起こす場合の認証システムの動作の一例を示すシーケンス図である。   Here, an example in which a conventional authentication IC tag malfunctions will be described. FIG. 8 is a sequence diagram showing an example of the operation of the authentication system when a conventional authentication IC tag malfunctions.

例えば、ホストアクセス装置が認証アクセスを行う際に、認証ICタグがコマンド識別子“1111”を通信エラーによって取りこぼしてしまうことが考えられる。このとき、ホストアクセス装置は、認証ICタグの通信エラーを検知することはできないため、継続して暗号文データを送信し続ける。   For example, when the host access device performs authentication access, the authentication IC tag may miss the command identifier “1111” due to a communication error. At this time, since the host access device cannot detect the communication error of the authentication IC tag, it continues to transmit the ciphertext data.

暗号文データに、アクセス要求コマンドの識別子である“ABCD”が含まれる場合、認証ICタグは、暗号文データを順次受信する中で、メモリアクセスのコマンド識別子である“ABCD”を暗号文データ中から誤検出する。   When the encrypted text data includes “ABCD” that is an identifier of the access request command, the authentication IC tag sequentially receives “ABCD” that is the command identifier of the memory access while receiving the encrypted text data. False positive from.

誤検出した認証ICタグは、アクセス要求コマンドが送信されたと判断し、メモリアクセス処理を実施し、メモリデータをホストアクセス装置に返信する。   The erroneously detected authentication IC tag determines that an access request command has been transmitted, performs memory access processing, and returns memory data to the host access device.

また、メモリアクセス処理が実施されずに、メモリデータの読み出しが行われない場合であっても、認証ICタグは、メモリアクセス要求を受け付けたと誤認しているので、メモリアクセス処理が失敗したことを示すアクセス不許可命令をホストアクセス装置に返信する。このため、誤動作は、必ず発生する。   Even if the memory access process is not performed and the memory data is not read, the authentication IC tag misidentifies that the memory access request has been received, so that the memory access process has failed. The access disapproval command shown is returned to the host access device. For this reason, a malfunction always occurs.

これに対して、本発明の実施の形態1に係る認証システムでは、認証ICタグ100は、認証処理状態である場合には、たとえ認証コマンド識別子を取りこぼし、暗号文データ中の“ABCD”をアクセス要求のコマンド識別子であると判定した場合であっても、メモリアクセス処理は実行されない。また、認証ICタグ100は、アクセス要求コマンドを受信したと誤認しないので、メモリアクセス処理が失敗したことを示すアクセス不許可命令も返信しない。   On the other hand, in the authentication system according to the first embodiment of the present invention, the authentication IC tag 100 skips the authentication command identifier and accesses “ABCD” in the ciphertext data when it is in the authentication processing state. Even if it is determined that the request is a command identifier, the memory access process is not executed. Further, since the authentication IC tag 100 does not mistakenly recognize that the access request command has been received, it does not return an access non-permission instruction indicating that the memory access process has failed.

このようにして、本発明の実施の形態1に係る認証ICタグ100は、誤動作を防止することができる。特に、公開鍵暗号方式を用いた場合には、暗号文データが長くなるので、暗号文データの中にコマンド識別子と一致するコードが含まれる可能性が高く、誤動作を起こす可能性も高くなる。したがって、公開鍵暗号方式を利用する認証システムでは、本発明に係る認証ICタグ100は、格別な効果を奏する。   Thus, the authentication IC tag 100 according to Embodiment 1 of the present invention can prevent malfunction. In particular, when the public key cryptosystem is used, since the ciphertext data becomes long, there is a high possibility that a code that matches the command identifier is included in the ciphertext data, and there is a high possibility of malfunction. Therefore, in the authentication system using the public key cryptosystem, the authentication IC tag 100 according to the present invention has a special effect.

続いて、本発明の実施の形態1に係る認証システムの動作の一例について説明する。図9A〜図9Dは、本発明の実施の形態1に係る認証システムの状態遷移の一例を示すフローチャートである。   Next, an example of the operation of the authentication system according to Embodiment 1 of the present invention will be described. 9A to 9D are flowcharts showing an example of state transition of the authentication system according to Embodiment 1 of the present invention.

本発明の実施の形態1に係る認証ICタグ100は、電源起動後、又は、リセット解除後の初期状態において、コマンド受付可能状態となる。起動時のコマンド受付状態は、認証処理状態、又は、メモリアクセス状態のいずれかとなるが、いずれの状態から起動されるかは、認証ICタグ100の起動方法によって、切り替えることができる。   The authentication IC tag 100 according to the first embodiment of the present invention is in a command acceptable state in the initial state after the power is turned on or after the reset is released. The command reception state at the time of activation is either the authentication processing state or the memory access state, and it can be switched depending on the activation method of the authentication IC tag 100.

図9Aは、初期状態として、認証ICタグ100が認証要求コマンド受付状態、すなわち、認証処理状態にある場合を示すフローチャートである。以下では、図9Aを用いて、外部のホストアクセス装置200が認証ICタグ100にアクセスする場合の手順を説明する。   FIG. 9A is a flowchart illustrating a case where the authentication IC tag 100 is in an authentication request command reception state, that is, an authentication processing state, as an initial state. Hereinafter, a procedure when the external host access device 200 accesses the authentication IC tag 100 will be described with reference to FIG. 9A.

認証処理状態(S300)では、認証ICタグ100は、認証要求コマンドのみを受け付ける。認証要求コマンド以外のコマンドは、通信エラーなどで誤検出した場合であっても、受け付けない。なお、コマンドを受け付けるとは、取得したコマンドに従った処理を行うことである。つまり、認証処理状態である認証ICタグ100は、認証要求コマンドを受信した場合に、認証処理を行うことはできるが、他のコマンドを受信した場合であっても、メモリアクセス処理又は状態遷移処理を行うことはできない。   In the authentication processing state (S300), the authentication IC tag 100 accepts only an authentication request command. Commands other than the authentication request command are not accepted even if they are erroneously detected due to a communication error or the like. Note that accepting a command means performing processing according to the acquired command. That is, the authentication IC tag 100 in the authentication processing state can perform the authentication processing when receiving the authentication request command, but can perform the memory access processing or the state transition processing even when other commands are received. Can not do.

ホストアクセス装置200は、識別コードと暗号文データとを含む認証要求コマンドを発行し、認証ICタグ100に送信する。認証ICタグ100は、暗号文データの全てを取得して、認証処理を実施し、認証結果をホストアクセス装置200に送信する(S301)。具体的には、認証ICタグ100は、暗号文データを復号することで、復号文データを生成し、生成した復号文データをホストアクセス装置200に送信する。そして、ホストアクセス装置200は、平文データと受信した復号文データとが一致するか否かを判定することで、認証処理が成功したか否かを判定する。   The host access device 200 issues an authentication request command including an identification code and ciphertext data, and transmits it to the authentication IC tag 100. The authentication IC tag 100 acquires all of the ciphertext data, performs authentication processing, and transmits the authentication result to the host access device 200 (S301). Specifically, the authentication IC tag 100 generates decrypted text data by decrypting the cipher text data, and transmits the generated decrypted text data to the host access device 200. Then, the host access device 200 determines whether or not the authentication process is successful by determining whether or not the plaintext data matches the received decrypted text data.

認証処理が成功すると(S301でYes)、認証ICタグ100は、遷移要求コマンド受付状態(遷移処理状態とも記載する)となる(S302)。遷移要求コマンド受付状態では、認証ICタグ100は、遷移要求コマンド又は処理状態確認コマンド(図2参照)を受け付ける。これら以外のコマンドは、通信エラーなどで誤検出した場合であっても、受け付けない。   If the authentication process is successful (Yes in S301), the authentication IC tag 100 enters a transition request command acceptance state (also referred to as a transition process state) (S302). In the transition request command acceptance state, the authentication IC tag 100 accepts a transition request command or a processing state confirmation command (see FIG. 2). Commands other than these are not accepted even if they are erroneously detected due to a communication error or the like.

ホストアクセス装置200は、識別コードと遷移判定コードとを含む遷移要求コマンドを発行し、認証ICタグ100に送信する。認証ICタグ100は、遷移判定コードを全て取得して、遷移判定コードが有効であるか否かを判定する。そして、認証ICタグ100は、遷移判定コードが有効であった場合に、処理状態を切り替え、ホストアクセス装置200に状態遷移結果データを送信する(S303)。なお、遷移判定コードが有効であるとは、認証ICタグ100が受信した遷移判定コードが、遷移処理の許可を示すコードに一致することを意味する。   The host access device 200 issues a transition request command including an identification code and a transition determination code, and transmits it to the authentication IC tag 100. The authentication IC tag 100 acquires all the transition determination codes and determines whether the transition determination code is valid. Then, when the transition determination code is valid, the authentication IC tag 100 switches the processing state and transmits the state transition result data to the host access device 200 (S303). Note that the transition determination code being valid means that the transition determination code received by the authentication IC tag 100 matches a code indicating permission of transition processing.

遷移判定コードが有効である場合(S303でYes)、認証ICタグ100の処理状態が認証処理状態からメモリアクセス許可状態に切り替わる(S304)。メモリアクセス許可状態では、認証ICタグ100は、アクセス要求コマンドのみを受け付ける。アクセス要求コマンド以外のコマンドは、通信エラーなどで誤検出した場合であっても、受け付けない。   When the transition determination code is valid (Yes in S303), the processing state of the authentication IC tag 100 is switched from the authentication processing state to the memory access permission state (S304). In the memory access permission state, the authentication IC tag 100 accepts only an access request command. Commands other than the access request command are not accepted even if they are erroneously detected due to a communication error or the like.

ホストアクセス装置200は、識別コードと、メモリアドレスと、読み書き判定データ(Read/Write属性信号)と、書き込みデータ(書き込み要求の場合)とを含むアクセス要求コマンドを発行し、認証ICタグ100に送信する。認証ICタグ100は、読み書き判定データが書き込み属性である場合は、アクセス要求コマンドに含まれるメモリアドレスが示すメモリ部104の領域に、書き込みデータを書き込む(S305)。また、読み書き判定データが読み出し属性である場合には、アクセス要求コマンドに含まれるメモリアドレスが示すメモリ部104の領域から、データを読み出し、読み出したデータをホストアクセス装置200に送信する(S305)。   The host access device 200 issues an access request command including an identification code, a memory address, read / write determination data (Read / Write attribute signal), and write data (in the case of a write request), and transmits it to the authentication IC tag 100. To do. If the read / write determination data has the write attribute, the authentication IC tag 100 writes the write data to the area of the memory unit 104 indicated by the memory address included in the access request command (S305). If the read / write determination data has the read attribute, the data is read from the area of the memory unit 104 indicated by the memory address included in the access request command, and the read data is transmitted to the host access device 200 (S305).

以上のように、本発明の実施の形態1に係る認証システムでは、認証ICタグ100は、認証処理状態(S300)、遷移要求コマンド受付状態(S302)、メモリアクセス状態(S304)の順に遷移する。各状態では、対応するコマンドのみを受け付け、受け付けたコマンドの処理が完了した場合に、次の状態に遷移する。つまり、各状態では、対応する処理のみが許可されており、他の処理は禁止されているので、認証ICタグ100の誤動作が防止される。   As described above, in the authentication system according to Embodiment 1 of the present invention, the authentication IC tag 100 transitions in the order of the authentication processing state (S300), the transition request command reception state (S302), and the memory access state (S304). . In each state, only the corresponding command is accepted, and transition to the next state is made when processing of the accepted command is completed. That is, in each state, only a corresponding process is permitted and other processes are prohibited, so that the authentication IC tag 100 can be prevented from malfunctioning.

なお、遷移要求コマンド受付状態では、直前の処理状態である認証処理状態が受け付け可能なコマンドを受け付けてもよい。すなわち、遷移要求コマンド受付状態である認証ICタグ100が、認証要求コマンドを受け付けた場合、認証処理を実行してもよい。これにより、本発明の実施の形態1に係る認証システムは、連続して認証処理を行うことができる。   In the transition request command acceptance state, a command that can accept the authentication processing state that is the immediately preceding processing state may be accepted. That is, when the authentication IC tag 100 that is in the transition request command reception state receives the authentication request command, the authentication process may be executed. As a result, the authentication system according to Embodiment 1 of the present invention can continuously perform authentication processing.

続いて、認証ICタグ100の初期状態が、メモリアクセス状態である場合について説明する。   Next, a case where the initial state of the authentication IC tag 100 is a memory access state will be described.

図9Bは、初期状態として、認証ICタグ100がメモリアクセス状態にある場合を示すフローチャートである。以下では、図9Bを用いて、外部のホストアクセス装置200が認証ICタグ100にアクセスする場合の手順を説明する。   FIG. 9B is a flowchart showing a case where the authentication IC tag 100 is in a memory access state as an initial state. Hereinafter, a procedure when the external host access device 200 accesses the authentication IC tag 100 will be described with reference to FIG. 9B.

メモリアクセス状態(S310)では、認証ICタグ100は、アクセス要求コマンドのみを受け付ける。アクセス要求コマンド以外のコマンドは、通信エラーなどで誤検出した場合であっても、受け付けない。   In the memory access state (S310), the authentication IC tag 100 accepts only an access request command. Commands other than the access request command are not accepted even if they are erroneously detected due to a communication error or the like.

ホストアクセス装置200は、識別コードと、メモリアドレスと、読み書き判定データ(Read/Write属性信号)と、書き込みデータ(書き込み要求の場合)とを含むアクセス要求コマンドを発行し、認証ICタグ100に送信する。認証ICタグ100は、読み書き判定データが書き込み属性である場合は、アクセス要求コマンドに含まれるメモリアドレスが示すメモリ部104の領域に、書き込みデータを書き込む(S311)。また、読み書き判定データが読み出し属性である場合は、アクセス要求コマンドに含まれるメモリアドレスが示すメモリ部104の領域からデータを読み出し、読み出したデータをホストアクセス装置200に送信する(S311)。   The host access device 200 issues an access request command including an identification code, a memory address, read / write determination data (Read / Write attribute signal), and write data (in the case of a write request), and transmits it to the authentication IC tag 100. To do. If the read / write determination data has the write attribute, the authentication IC tag 100 writes the write data to the area of the memory unit 104 indicated by the memory address included in the access request command (S311). If the read / write determination data has the read attribute, the data is read from the area of the memory unit 104 indicated by the memory address included in the access request command, and the read data is transmitted to the host access device 200 (S311).

メモリアクセス処理が完了すると(S311でYes)、認証ICタグ100は、遷移要求コマンド受付状態となる(S312)。遷移要求コマンド受付状態では、認証ICタグ100は、遷移要求コマンド又は処理状態確認コマンド(図2参照)を受け付ける。これら以外のコマンドは、通信エラーなどで誤検出した場合であっても、受け付けない。   When the memory access process is completed (Yes in S311), the authentication IC tag 100 enters a transition request command acceptance state (S312). In the transition request command acceptance state, the authentication IC tag 100 accepts a transition request command or a processing state confirmation command (see FIG. 2). Commands other than these are not accepted even if they are erroneously detected due to a communication error or the like.

ホストアクセス装置200は、識別コードと遷移判定コードとを含む遷移要求コマンドを発行し、認証ICタグ100に送信する。認証ICタグ100は、遷移判定コードを全て取得して、遷移判定コードが有効であるか否かを判定する。そして、認証ICタグ100は、遷移判定コードが有効であった場合に、処理状態を切り替え、ホストアクセス装置200に状態遷移結果データを送信する(S313)。なお、遷移判定コードが有効であるとは、認証ICタグ100が受信した遷移判定コードが、遷移処理の許可を示すコードに一致することを意味する。   The host access device 200 issues a transition request command including an identification code and a transition determination code, and transmits it to the authentication IC tag 100. The authentication IC tag 100 acquires all the transition determination codes and determines whether the transition determination code is valid. Then, when the transition determination code is valid, the authentication IC tag 100 switches the processing state and transmits the state transition result data to the host access device 200 (S313). Note that the transition determination code being valid means that the transition determination code received by the authentication IC tag 100 matches a code indicating permission of transition processing.

遷移判定コードが有効である場合(S313でYes)、認証ICタグ100の処理状態がメモリアクセス状態から認証処理状態に切り替わる(S314)。認証処理状態では、認証ICタグ100は、認証要求コマンドのみを受け付ける。認証要求コマンド以外のコマンドは、通信エラーなどで誤検出した場合であっても、受け付けない。   When the transition determination code is valid (Yes in S313), the processing state of the authentication IC tag 100 is switched from the memory access state to the authentication processing state (S314). In the authentication processing state, the authentication IC tag 100 accepts only an authentication request command. Commands other than the authentication request command are not accepted even if they are erroneously detected due to a communication error or the like.

ホストアクセス装置200は、識別コードと暗号文データとを含む認証要求コマンドを発行し、認証ICタグ100に送信する。認証ICタグ100は、暗号文データの全てを取得して、認証処理を実施し、認証結果をホストアクセス装置200に送信する。具体的には、認証ICタグ100は、暗号文データを復号することで、復号文データを生成し、生成した復号文データをホストアクセス装置200に送信する。そして、ホストアクセス装置200は、平文データと受信した復号文データとが一致するか否かを判定することで、認証処理が成功したか否かを判定する(S315)。   The host access device 200 issues an authentication request command including an identification code and ciphertext data, and transmits it to the authentication IC tag 100. The authentication IC tag 100 acquires all of the ciphertext data, performs an authentication process, and transmits an authentication result to the host access device 200. Specifically, the authentication IC tag 100 generates decrypted text data by decrypting the cipher text data, and transmits the generated decrypted text data to the host access device 200. Then, the host access device 200 determines whether or not the authentication process is successful by determining whether or not the plaintext data matches the received decrypted text data (S315).

以上のように、本発明の実施の形態1に係る認証システムでは、認証ICタグ100は、メモリアクセス状態(S310)、遷移要求コマンド受付状態(S312)、認証処理状態(S314)の順に遷移することもできる。図9Aの場合と同様に、各状態では、対応するコマンドのみを受け付け、受け付けたコマンドの処理が完了した場合に、次の処理に遷移する。つまり、各状態では、対応する処理のみが許可されており、他の処理は禁止されているので、認証ICタグ100の誤動作が防止される。   As described above, in the authentication system according to Embodiment 1 of the present invention, the authentication IC tag 100 transitions in the order of the memory access state (S310), the transition request command reception state (S312), and the authentication processing state (S314). You can also. As in the case of FIG. 9A, in each state, only the corresponding command is accepted, and when the processing of the accepted command is completed, the process proceeds to the next process. That is, in each state, only a corresponding process is permitted and other processes are prohibited, so that the authentication IC tag 100 can be prevented from malfunctioning.

なお、遷移要求コマンド受付状態では、直前の処理状態であるメモリアクセス状態が受け付け可能なコマンドを受け付けてもよい。すなわち、遷移要求コマンド受付状態である認証ICタグ100が、アクセス要求コマンドを受け付けた場合、メモリアクセス処理を実行してもよい。これにより、本発明の実施の形態1に係る認証システムは、連続してメモリアクセス処理を行うことができる。   In the transition request command acceptance state, a command that can accept the memory access state that is the immediately preceding processing state may be accepted. That is, when the authentication IC tag 100 that is in the transition request command reception state receives the access request command, the memory access process may be executed. As a result, the authentication system according to Embodiment 1 of the present invention can continuously perform memory access processing.

続いて、認証ICタグ100の初期状態が、認証処理状態である場合の別の例について説明する。   Subsequently, another example when the initial state of the authentication IC tag 100 is the authentication processing state will be described.

図9Cは、初期状態として、認証ICタグ100が認証要求コマンド受付状態、すなわち、認証処理状態にある場合の別の例を示すフローチャートである。以下では、図9Cを用いて、外部のホストアクセス装置200が認証ICタグ100にアクセスする場合の手順の別の例を説明する。   FIG. 9C is a flowchart illustrating another example when the authentication IC tag 100 is in the authentication request command reception state, that is, the authentication processing state, as an initial state. Hereinafter, another example of the procedure when the external host access device 200 accesses the authentication IC tag 100 will be described with reference to FIG. 9C.

図9Cの例では、認証ICタグ100は、遷移処理が許可されなかった場合に、直前の処理状態に復帰する点が、図9Aの例と異なっている。以下では、異なる点を中心に説明し、同じ点は説明を省略する。   The example of FIG. 9C is different from the example of FIG. 9A in that the authentication IC tag 100 returns to the immediately previous processing state when the transition process is not permitted. Below, it demonstrates centering on a different point and abbreviate | omits description about the same point.

遷移要求コマンド受付状態である認証ICタグ100は、遷移要求コマンドを取得した場合に、遷移判定コードが有効であるか否かを判定する。遷移判定コードが有効でない場合、遷移処理は許可されないため(S400でNo)、認証ICタグ100の処理状態は、遷移要求コマンド受付状態の前の状態、具体的には、認証処理状態に戻る。   The authentication IC tag 100 that is in the transition request command reception state determines whether or not the transition determination code is valid when the transition request command is acquired. If the transition determination code is not valid, the transition process is not permitted (No in S400), so the processing state of the authentication IC tag 100 returns to the state before the transition request command reception state, specifically, the authentication processing state.

なお、このとき、認証ICタグ100は、認証ICタグ100の現在の状態が認証処理状態であることを、ホストアクセス装置200に送信することで、遷移処理が不許可であったことを通知する。つまり、認証ICタグ100は、遷移要求コマンドに対する返信データとして、現在の状態が認証処理状態及びメモリアクセス状態のいずれであるかのみを返信する。あるいは、認証ICタグ100は、不許可状態を示すデータを返信してもかまわない。   At this time, the authentication IC tag 100 notifies the host access device 200 that the current state of the authentication IC tag 100 is the authentication processing state, thereby notifying that the transition processing is not permitted. . That is, the authentication IC tag 100 returns only whether the current state is the authentication processing state or the memory access state as return data for the transition request command. Alternatively, the authentication IC tag 100 may return data indicating a non-permitted state.

これにより、ホストアクセス装置200は、現行の処理を連続して行いたい場合は、処理状態の切り替えを不許可にすることにより実現される。なお、認証処理の結果が正しいか正しくないかと、状態遷移処理の許可又は不許可とには全く依存はない。つまり、認証処理は、処理状態切り替えが不許可であっても正しい認証結果を外部に返信する。   Thereby, the host access device 200 is realized by disabling switching of the processing state when the current processing is to be performed continuously. Note that there is no dependence on whether the result of the authentication process is correct or not, and whether or not the state transition process is permitted. That is, the authentication process returns a correct authentication result to the outside even if the process state switching is not permitted.

また、ホストアクセス装置200は、処理状態確認コマンドを発行し、処理状態遷移コマンド受付状態の認証ICタグ100に送信することで、処理状態を遷移せずに、現在の処理状態を確認することも可能である。   In addition, the host access device 200 may check the current processing state without changing the processing state by issuing a processing state confirmation command and transmitting it to the authentication IC tag 100 in the processing state transition command reception state. Is possible.

例えば、認証ICタグ100の現在の処理状態が認証処理状態である場合、認証ICタグ100は、図2に示す返信データ“T1”を返信する。また、現在の処理状態がメモリアクセス状態である場合、認証ICタグ100は、図2に示す返信データ“T0”を返信する。これにより、外部のホストアクセス装置200は、認証ICタグ100の処理状態を確認することができる。   For example, when the current processing state of the authentication IC tag 100 is the authentication processing state, the authentication IC tag 100 returns reply data “T1” shown in FIG. If the current processing state is the memory access state, the authentication IC tag 100 returns reply data “T0” shown in FIG. As a result, the external host access device 200 can confirm the processing state of the authentication IC tag 100.

続いて、認証ICタグ100の初期状態が、メモリアクセス状態である場合の別の例について説明する。   Next, another example in the case where the initial state of the authentication IC tag 100 is the memory access state will be described.

図9Dは、初期状態として、認証ICタグ100がアクセス要求コマンド受付状態、すなわち、メモリアクセス状態にある場合の別の例を示すフローチャートである。以下では、図9Dを用いて、外部のホストアクセス装置200が認証ICタグ100にアクセスする場合の手順の別の例を説明する。   FIG. 9D is a flowchart showing another example when the authentication IC tag 100 is in the access request command reception state, that is, in the memory access state, as an initial state. Hereinafter, another example of the procedure when the external host access device 200 accesses the authentication IC tag 100 will be described with reference to FIG. 9D.

図9Dの例では、認証ICタグ100は、遷移処理が許可されなかった場合に、直前の処理状態に復帰する点が、図9Bの例と異なっている。以下では、異なる点を中心に説明し、同じ点は説明を省略する。   The example of FIG. 9D is different from the example of FIG. 9B in that the authentication IC tag 100 returns to the immediately previous processing state when the transition process is not permitted. Below, it demonstrates centering on a different point and abbreviate | omits description about the same point.

遷移要求コマンド受付状態である認証ICタグ100は、遷移要求コマンドを取得した場合に、遷移判定コードが有効であるか否かを判定する。遷移判定コードが有効でない場合、遷移処理は許可されないため(S400でNo)、認証ICタグ100の処理状態は、遷移要求コマンド受付状態の前の状態、具体的には、メモリアクセス状態に戻る。   The authentication IC tag 100 that is in the transition request command reception state determines whether or not the transition determination code is valid when the transition request command is acquired. If the transition determination code is not valid, the transition process is not permitted (No in S400), so the processing state of the authentication IC tag 100 returns to the state before the transition request command reception state, specifically, the memory access state.

なお、このとき、認証ICタグ100は、認証ICタグ100の現在の状態がメモリアクセス状態であることを、ホストアクセス装置200に送信することで、遷移処理が不許可であったことを通知する。つまり、認証ICタグ100は、遷移要求コマンドに対する返信データとして、現在の状態が認証処理状態及びメモリアクセス状態のいずれであるのかのみを返信する。あるいは、認証ICタグ100は、不許可状態を示すデータを返信してもかまわない。   At this time, the authentication IC tag 100 notifies the host access device 200 that the current state of the authentication IC tag 100 is the memory access state, thereby notifying that the transition process is not permitted. . That is, the authentication IC tag 100 returns only whether the current state is the authentication processing state or the memory access state as return data for the transition request command. Alternatively, the authentication IC tag 100 may return data indicating a non-permitted state.

これにより、図9Cの場合と同様に、ホストアクセス装置200は、現行の処理を連続して行いたい場合は、処理状態の切り替えを不許可にすることにより実現される。   As a result, as in the case of FIG. 9C, the host access device 200 is realized by disabling the switching of the processing state when it is desired to continuously perform the current processing.

なお、認証ICタグ100は、遷移要求コマンド受付状態だけでなく、認証処理状態又はメモリアクセス状態の場合にも、処理状態確認コマンドを受け付けることができてもよい。これにより、ホストアクセス装置200は、認証処理及びメモリアクセスのいずれかの処理を実行する前に、認証ICタグ100の現在の状態を確認することができる。   Note that the authentication IC tag 100 may be able to accept a processing state confirmation command not only in the transition request command acceptance state but also in the authentication processing state or the memory access state. As a result, the host access device 200 can check the current state of the authentication IC tag 100 before executing either the authentication process or the memory access process.

ここで、本発明の実施の形態1に係る認証システムが実行する公開鍵暗号方式の一例について説明する。図10は、本発明の実施の形態1に係る認証システムにおいてホストアクセス装置200側での認証処理を説明するための図である。   Here, an example of a public key cryptosystem executed by the authentication system according to Embodiment 1 of the present invention will be described. FIG. 10 is a diagram for explaining authentication processing on the host access device 200 side in the authentication system according to Embodiment 1 of the present invention.

ホストアクセス装置200では、暗号処理部203は、鍵記憶部202に格納された公開鍵を用いて平文データを暗号化することで、暗号文データを生成する。ホストアクセス装置200は、通信部204を介して、生成した暗号文データを、認証処理を要求するコマンドの識別コードとともに、ICタグ受信データとして認証ICタグ100に送信する。   In the host access device 200, the encryption processing unit 203 generates encrypted text data by encrypting the plain text data using the public key stored in the key storage unit 202. The host access device 200 transmits the generated ciphertext data to the authentication IC tag 100 as IC tag reception data together with the identification code of the command requesting the authentication process via the communication unit 204.

認証ICタグ100では、通信部101を介して、識別コードと暗号文データとを取得する。コマンド識別部102が識別コードを解析することで、認証要求であることを判別すると、認証処理部106は、秘密鍵を用いて暗号文データを復号することで、復号文データを生成する。認証ICタグ100は、通信部101を介して、生成した復号文データを、ICタグ送信データとしてホストアクセス装置200に返信する。   The authentication IC tag 100 acquires an identification code and ciphertext data via the communication unit 101. When the command identification unit 102 analyzes the identification code and determines that the request is an authentication request, the authentication processing unit 106 generates decrypted text data by decrypting the cipher text data using the secret key. The authentication IC tag 100 returns the generated decrypted text data to the host access device 200 as IC tag transmission data via the communication unit 101.

なお、秘密鍵は、例えば、メモリ部104の外部からの読み出し及び書き込みが禁止されている領域に格納されている。あるいは、認証処理部106が、外部からの読み出し及び書き込みが禁止されたメモリを有し、当該メモリ内に秘密鍵を格納していてもよい。   Note that the secret key is stored in an area where reading and writing from the outside of the memory unit 104 are prohibited, for example. Alternatively, the authentication processing unit 106 may have a memory that is prohibited from being read and written from the outside, and may store a secret key in the memory.

ホストアクセス装置200では、通信部204を介して、認証取得部205が復号文データを取得する。そして、認証結果比較部206は、平文データと復号文データとを比較する。平文データと復号文データとが一致していた場合、ホストアクセス装置200は、認証ICタグ100の認証が成功したと判定する。また、平文データと復号文データとが一致しなかった場合、ホストアクセス装置200は、認証ICタグ100の認証が失敗したと判定する。   In the host access device 200, the authentication acquisition unit 205 acquires decrypted text data via the communication unit 204. Then, the authentication result comparison unit 206 compares the plaintext data with the decrypted text data. When the plaintext data and the decrypted text data match, the host access device 200 determines that the authentication IC tag 100 has been successfully authenticated. If the plaintext data and the decrypted text data do not match, the host access device 200 determines that the authentication of the authentication IC tag 100 has failed.

以上のように、本発明の実施の形態1に係る認証システムは、認証ICタグ100とホストアクセス装置200とを備え、ホストアクセス装置200は、公開鍵暗号方式を用いて認証ICタグ100の認証を行う。認証ICタグ100は、認証処理状態とメモリアクセス状態とを有し、ホストアクセス装置200から送信されるコマンドに応じて、認証処理状態とメモリアクセス状態との間で状態遷移を行う。認証処理状態の認証ICタグ100は、ホストアクセス装置200からメモリ部104へのメモリアクセス処理が禁止され、認証処理は許可されている。   As described above, the authentication system according to Embodiment 1 of the present invention includes the authentication IC tag 100 and the host access device 200. The host access device 200 authenticates the authentication IC tag 100 using the public key cryptosystem. I do. The authentication IC tag 100 has an authentication processing state and a memory access state, and performs state transition between the authentication processing state and the memory access state in response to a command transmitted from the host access device 200. In the authentication IC tag 100 in the authentication process state, the memory access process from the host access device 200 to the memory unit 104 is prohibited, and the authentication process is permitted.

これにより、処理状態の遷移を制御することによって、通信エラーなどにより、コマンド識別子を取りこぼすなどの問題が発生した際に、公開鍵で暗号化された暗号文データは非常に長いために、暗号文データ中にコマンド識別子を示すデータが存在していた場合であっても、誤動作を防止することができる。例えば、ホストアクセス装置200からの意図しないメモリアクセスを防ぐことが可能となる。   As a result, when a problem such as missing a command identifier due to a communication error or the like occurs by controlling the transition of the processing state, the ciphertext data encrypted with the public key is very long. Even when there is data indicating a command identifier in the sentence data, malfunction can be prevented. For example, unintended memory access from the host access device 200 can be prevented.

例えば、データ取りこぼしにより、遷移要求コマンドのコマンド識別子と暗号文データの一部とが一致した場合、コマンド識別子に続くデータが遷移判定コードとみなされるが、この遷移判定コードは通常有効ではないので、処理状態不許可となり、現行の処理をもう一度実行可能な状態となるので問題ない。具体的には、遷移判定コードのビット長を十分長くすることで、処理状態の切り替えを防ぐことが可能となる。   For example, if the command identifier of the transition request command and a part of the ciphertext data match due to data loss, the data following the command identifier is regarded as a transition determination code, but this transition determination code is not normally valid. Since the processing state is not permitted and the current processing can be executed again, there is no problem. Specifically, it is possible to prevent the processing state from being switched by sufficiently increasing the bit length of the transition determination code.

このように、本発明の実施の形態1では、認証処理状態においてメモリアクセス処理が禁止されているため、認証処理状態に受け取ったデータの一部をコマンド識別子と誤検出した場合でも、メモリアクセス処理を防止することができ、認証ICタグの誤動作を防止することができる。なお、特に、認証処理に公開鍵暗号方式を用いる場合は、暗号文データが長くなることが多いので、コマンド識別子の誤検出を起こす確率が高くなる。このため、本発明の実施の形態1による認証ICタグの誤動作の防止という効果は、より格別な効果である。   As described above, in the first embodiment of the present invention, since the memory access process is prohibited in the authentication process state, the memory access process is performed even when a part of the data received in the authentication process state is erroneously detected as a command identifier. Can be prevented, and malfunction of the authentication IC tag can be prevented. In particular, when a public key cryptosystem is used for authentication processing, ciphertext data often becomes long, so the probability of erroneous detection of a command identifier increases. For this reason, the effect of preventing the malfunction of the authentication IC tag according to the first embodiment of the present invention is a more special effect.

(実施の形態2)
本発明の実施の形態2に係るホストアクセス装置は、公開鍵を用いて平文データを暗号化することで、暗号文データを生成する暗号化部と、暗号文データを解析することで、コマンドを識別するための識別コードと一致するデータが、暗号文データに含まれているか否かを判定する解析部と、識別コードと一致するデータが暗号文データに含まれていると判定された場合に、識別コードを変更することで、変更後識別コードを生成する変更部とを備えることを特徴とする。
(Embodiment 2)
The host access device according to the second embodiment of the present invention encrypts plaintext data using a public key, and generates a command by analyzing the encrypted data and an encryption unit that generates encrypted data. When it is determined that the data matching the identification code for identification is included in the ciphertext data, and the ciphertext data includes data matching the identification code And a changing unit that generates the changed identification code by changing the identification code.

図11は、本発明の実施の形態2に係る認証システムの一例である電子機器400の構成の一例を示すブロック図である。   FIG. 11 is a block diagram showing an example of the configuration of electronic apparatus 400 that is an example of an authentication system according to Embodiment 2 of the present invention.

電子機器400は、本体基板401と、アクセサリ機器402とを備える。電子機器400は、実施の形態1に係る電子機器300と同様に、例えば、携帯電話機又はデジタルカメラなどである。なお、以下では、実施の形態1と同じ構成については同じ参照符号を付して説明を省略し、異なる点を中心に説明する。   The electronic device 400 includes a main body substrate 401 and an accessory device 402. The electronic device 400 is, for example, a mobile phone or a digital camera, like the electronic device 300 according to the first embodiment. In the following description, the same components as those in the first embodiment are denoted by the same reference numerals, description thereof is omitted, and different points are mainly described.

本体基板401は、アクセサリ機器402に認証アクセスを行うホストアクセス装置500と、電器製品としての動作を行うための機器(図示せず)とを備えている。アクセサリ機器402は、認証ICタグ600を備える。認証ICタグ600の構成の例については、後で説明する。   The main body substrate 401 includes a host access device 500 that performs authentication access to the accessory device 402 and a device (not shown) for performing an operation as an electrical product. The accessory device 402 includes an authentication IC tag 600. An example of the configuration of the authentication IC tag 600 will be described later.

ホストアクセス装置500は、実施の形態1に係るホストアクセス装置200と比較して、新たに、暗号文データ解読部507と、コマンド識別子変更部508とを備える点が異なっている。   The host access device 500 is different from the host access device 200 according to the first embodiment in that a ciphertext data decrypting unit 507 and a command identifier changing unit 508 are newly provided.

暗号文データ解読部507は、解析部の一例であり、暗号文データを解析することで、1つ以上のコマンドを識別するための識別コードと一致するデータが暗号文データに含まれているか否かを判定する。つまり、暗号文データ解読部507は、暗号処理部203によって暗号化された暗号文データを解読し、コマンド識別子と一致するデータが暗号文データに含まれているか否かを検知する。コマンド識別子と一致するデータが検知された場合、暗号文データ解読部507は、コマンド識別子と一致したデータを、コマンド識別子変更部508に送信する。ここで、識別コードは、例えば、図2に示すような認証処理、遷移処理、メモリアクセス処理及び処理状態確認を要求するためのコマンドのそれぞれに対応する識別子である。   The ciphertext data decryption unit 507 is an example of an analysis unit. Whether or not the ciphertext data includes data that matches an identification code for identifying one or more commands by analyzing the ciphertext data. Determine whether. That is, the ciphertext data decrypting unit 507 decrypts the ciphertext data encrypted by the cipher processing unit 203 and detects whether or not the data matching the command identifier is included in the ciphertext data. When data that matches the command identifier is detected, the ciphertext data decrypting unit 507 transmits the data that matches the command identifier to the command identifier changing unit 508. Here, the identification code is, for example, an identifier corresponding to each command for requesting authentication processing, transition processing, memory access processing, and processing status confirmation as shown in FIG.

コマンド識別子変更部508は、識別コードと一致するデータが暗号文データに含まれていると判定された場合に、識別コードを変更することで、変更後識別コードを生成する。具体的には、コマンド識別子変更部508は、暗号文データ解読部507から受け取ったデータから、暗号文データの一部と一致しない新しいコマンド識別子を生成する。そして、コマンド識別子変更部508は、通信部204を介して、認証ICタグ600に送信する。   The command identifier changing unit 508 generates the changed identification code by changing the identification code when it is determined that the data matching the identification code is included in the ciphertext data. Specifically, the command identifier change unit 508 generates a new command identifier that does not match a part of the ciphertext data from the data received from the ciphertext data decryption unit 507. Then, the command identifier changing unit 508 transmits the authentication IC tag 600 via the communication unit 204.

例えば、暗号文データ解読部507は、認証要求コマンドのコマンド識別子が“1111”である場合に、暗号文データ中に“1111”というデータ列が存在していることを検出する。この場合に、コマンド識別子変更部508は、認証要求コマンドのコマンド識別子を“1111”から、例えば、“1234”に変更して、認証ICタグ600に送信する。   For example, when the command identifier of the authentication request command is “1111”, the ciphertext data decrypting unit 507 detects that the data string “1111” exists in the ciphertext data. In this case, the command identifier changing unit 508 changes the command identifier of the authentication request command from “1111” to “1234”, for example, and transmits it to the authentication IC tag 600.

暗号文データ解読部507(又は、CPU201)は、例えば、識別子変更要求コマンドを生成して、認証ICタグ600に送信する。識別子変更要求コマンドは、識別コードの変更を要求するための識別コードと、変更前の識別コードと、変更後の識別コードとを含んでいる。あるいは、識別子変更要求コマンドは、変更前の識別コードの代わりに、変更前の識別コードを特定するための他の情報を含んでいてもよい。   For example, the ciphertext data decrypting unit 507 (or the CPU 201) generates an identifier change request command and transmits it to the authentication IC tag 600. The identifier change request command includes an identification code for requesting a change of the identification code, an identification code before the change, and an identification code after the change. Alternatively, the identifier change request command may include other information for specifying the identification code before the change, instead of the identification code before the change.

なお、ホストアクセス装置500は、例えば、認証ICタグ600から識別子を変更したことを表す通知を受け取った後、CPU201が、通信部204を介して、認証要求コマンドを認証ICタグ600に送信する。   For example, after receiving a notification indicating that the identifier has been changed from the authentication IC tag 600, the host access device 500 transmits an authentication request command to the authentication IC tag 600 via the communication unit 204.

このように、本発明の実施の形態2に係るホストアクセス装置500は、暗号文データの一部に一致しているコマンド識別子を、前もって認証ICタグ600に送信する。このため、認証ICタグ600が、仮に、認証処理コマンドの識別子を通信エラーなどにより取りこぼしたとしても、暗号文データには、認証ICタグ600が認識可能な識別子に一致するデータが含まれていないので、認証ICタグ600の誤動作を防止することができる。   As described above, the host access device 500 according to Embodiment 2 of the present invention transmits a command identifier that matches a part of the ciphertext data to the authentication IC tag 600 in advance. For this reason, even if the authentication IC tag 600 misses the identifier of the authentication processing command due to a communication error or the like, the ciphertext data does not include data that matches the identifier that the authentication IC tag 600 can recognize. Therefore, malfunction of the authentication IC tag 600 can be prevented.

なお、新規のコマンド識別子は、再度、暗号文データ解読部507に送信され、暗号文データ解読部507は、新規のコマンド識別子が暗号文データの別のデータ列と一致しないかを確認してもよい。   The new command identifier is transmitted again to the ciphertext data decryption unit 507, and the ciphertext data decryption unit 507 confirms whether the new command identifier does not match another data string of the ciphertext data. Good.

図12は、本発明の実施の形態2に係る認証ICタグ600の構成の一例を示すブロック図である。本発明の実施の形態2に係る認証ICタグ600は、実施の形態1に係る認証ICタグ100と比較して、新たに、識別コード変更部611を備える点が異なっている。   FIG. 12 is a block diagram showing an example of the configuration of the authentication IC tag 600 according to Embodiment 2 of the present invention. The authentication IC tag 600 according to the second embodiment of the present invention is different from the authentication IC tag 100 according to the first embodiment in that an identification code changing unit 611 is newly provided.

識別コード変更部611は、現在のコマンド識別子を、ホストアクセス装置500から送られてきた新規のコマンド識別子に変更する。例えば、コマンド識別部102が、識別子変更要求コマンドを取得し、変更前の識別コードと変更後の識別コードとを識別コード変更部611に出力する。識別コード変更部611は、識別コード記憶部103に格納されている識別コードであって、変更前の識別コードに一致する識別コードを、変更後の識別コードに置き換える。   The identification code changing unit 611 changes the current command identifier to a new command identifier sent from the host access device 500. For example, the command identification unit 102 acquires the identifier change request command, and outputs the identification code before the change and the identification code after the change to the identification code change unit 611. The identification code changing unit 611 replaces the identification code that is stored in the identification code storage unit 103 and matches the identification code before the change with the identification code after the change.

識別コード変更部611は、識別コードの変更を完了した後、出力データ制御部109及び通信部101を介して、ホストアクセス装置500に、識別子変更処理が完了したことを通知する。   After completing the change of the identification code, the identification code changing unit 611 notifies the host access device 500 that the identifier changing process has been completed via the output data control unit 109 and the communication unit 101.

これにより、認証ICタグ600は、仮に、認証処理コマンドの識別子を通信エラーなどにより取りこぼしたとしても、暗号文データには、認証ICタグ600が認識可能な識別子に一致するデータが含まれていないので、認証ICタグ600の誤動作を防止することができる。   Thereby, even if the authentication IC tag 600 misses the identifier of the authentication processing command due to a communication error or the like, the ciphertext data does not include data that matches the identifier that the authentication IC tag 600 can recognize. Therefore, malfunction of the authentication IC tag 600 can be prevented.

なお、本発明の実施の形態2に係る認証ICタグ600は、処理状態遷移制御部108を備えていなくてもよい。つまり、認証ICタグ600の状態は、従来のように、認証処理状態とメモリアクセス状態とに排他的に分かれていなくてもよい。つまり、本発明の実施の形態2では、ホストアクセス装置200が、生成した暗号文データの内容に基づいてコマンド識別子を変更するので、認証ICタグ600は、暗号文データの一部をコマンド識別子であると誤認することを防止することができる。   Note that the authentication IC tag 600 according to Embodiment 2 of the present invention may not include the processing state transition control unit 108. That is, the state of the authentication IC tag 600 may not be divided into the authentication processing state and the memory access state exclusively as in the conventional case. That is, in the second embodiment of the present invention, since the host access device 200 changes the command identifier based on the contents of the generated ciphertext data, the authentication IC tag 600 uses a part of the ciphertext data as a command identifier. It can be prevented that it is mistaken.

以上、本発明に係る認証ICタグ、ホストアクセス装置、認証システム及び認証方法について、実施の形態に基づいて説明したが、本発明は、これらの実施の形態に限定されるものではない。本発明の趣旨を逸脱しない限り、当業者が思いつく各種変形を当該実施の形態に施したものや、異なる実施の形態における構成要素を組み合わせて構築される形態も、本発明の範囲内に含まれる。   As described above, the authentication IC tag, the host access device, the authentication system, and the authentication method according to the present invention have been described based on the embodiments. However, the present invention is not limited to these embodiments. Unless it deviates from the meaning of this invention, the form which carried out the various deformation | transformation which those skilled in the art can think to the said embodiment, and the form constructed | assembled combining the component in a different embodiment is also contained in the scope of the present invention. .

例えば、図6又は図11に示すホストアクセス装置200及び500は、鍵記憶部202、暗号処理部203、認証結果比較部206、認証取得部205、暗号文データ解読部507及びコマンド識別子変更部508を、ハードウェア構成で実現している。これに対して、図13に示すホストアクセス装置200aのように、これらの処理部をソフトウェアとして実現してもよい。つまり、図13に示すように、ホストアクセス装置200aは、CPU201aと、通信部204とを備えていてもよい。   For example, the host access devices 200 and 500 shown in FIG. 6 or 11 include a key storage unit 202, an encryption processing unit 203, an authentication result comparison unit 206, an authentication acquisition unit 205, a ciphertext data decryption unit 507, and a command identifier change unit 508. Is realized with a hardware configuration. On the other hand, these processing units may be realized as software as in the host access device 200a shown in FIG. That is, as shown in FIG. 13, the host access device 200a may include a CPU 201a and a communication unit 204.

ホストアクセス装置200aは、例えば、所定の演算処理を実行するCPU201aと、所定の制御プログラムが記憶されたROM(図示せず)と、データを一時的に記憶するRAM(図示せず)と、これらの周辺回路などとを備えている。そして、CPU201aは、ROMに記憶された制御プログラムを実行することにより、鍵記憶部202、暗号処理部203、認証取得部205、認証結果比較部206として機能する。   The host access device 200a includes, for example, a CPU 201a that executes predetermined arithmetic processing, a ROM (not shown) that stores a predetermined control program, a RAM (not shown) that temporarily stores data, and these Peripheral circuit and the like. The CPU 201a functions as a key storage unit 202, an encryption processing unit 203, an authentication acquisition unit 205, and an authentication result comparison unit 206 by executing a control program stored in the ROM.

また、図6又は図11に示す電子機器300及び400は、本体基板301又は401とアクセサリ機器302又は402とを2本の信号線303及び304で物理的に接続している。これに対して、図14に示す電子機器300aのように、本体基板301aとアクセサリ機器302aとを1本の信号線303aで物理的に接続していてもよい。すなわち、認証ICタグ100とホストアクセス装置200とは、1本の信号線303aを介してデータの通信を行ってもよい。言い換えると、認証ICタグ100は、入力用の信号線と出力用の信号線とを1本の信号線303aによって兼用していてもよい。   In addition, in the electronic devices 300 and 400 shown in FIG. 6 or FIG. 11, the main body substrate 301 or 401 and the accessory device 302 or 402 are physically connected by two signal lines 303 and 304. On the other hand, like the electronic device 300a shown in FIG. 14, the main body substrate 301a and the accessory device 302a may be physically connected by a single signal line 303a. That is, the authentication IC tag 100 and the host access device 200 may perform data communication via one signal line 303a. In other words, the authentication IC tag 100 may share the input signal line and the output signal line with the single signal line 303a.

また、上記の各実施の形態では、図6又は図11などに示すように、認証ICタグ100とホストアクセス装置200とは、1本以上の物理的な信号線(有線)を介して、通信を行っている。つまり、上記の各実施の形態では、接触型の認証システムについて説明した。これに対して、本発明の実施の形態の変形例に係る認証システムは、非接触型の認証システムとして実現することもできる。   In each of the above embodiments, as shown in FIG. 6 or FIG. 11, the authentication IC tag 100 and the host access device 200 communicate with each other via one or more physical signal lines (wired). It is carried out. That is, in each of the above embodiments, the contact type authentication system has been described. On the other hand, the authentication system according to the modification of the embodiment of the present invention can also be realized as a non-contact type authentication system.

図15は、本発明の実施の形態の変形例に係る非接触型の認証システムの構成の一例を示す図である。   FIG. 15 is a diagram illustrating an example of a configuration of a contactless authentication system according to a modification of the embodiment of the present invention.

図15に示すように、本発明の実施の形態の変形例に係る非接触型の認証システムは、非接触型認証ICタグ700と、非接触型ホストアクセス装置710とを備える。非接触型認証ICタグ700は、認証ICタグ100と、アンテナ701とを備える。非接触型ホストアクセス装置710は、ホストアクセス装置200と、アンテナ711とを備える。   As shown in FIG. 15, the contactless authentication system according to the modification of the embodiment of the present invention includes a contactless authentication IC tag 700 and a contactless host access device 710. The non-contact type authentication IC tag 700 includes the authentication IC tag 100 and an antenna 701. The contactless host access device 710 includes a host access device 200 and an antenna 711.

ホストアクセス装置200と認証ICタグ100とは、無線通信を行う。すなわち、ホストアクセス装置200から送信されるデータは、アンテナ711から無線で送信される。そして、非接触型認証ICタグ700は、送信されたデータをアンテナ701で受信し、認証ICタグ100に送信する。   The host access device 200 and the authentication IC tag 100 perform wireless communication. That is, data transmitted from the host access device 200 is transmitted wirelessly from the antenna 711. The non-contact type authentication IC tag 700 receives the transmitted data with the antenna 701 and transmits it to the authentication IC tag 100.

また、認証ICタグ100から送信されるデータは、アンテナ701から無線で送信される。そして、非接触型ホストアクセス装置710は、送信されたデータをアンテナ711で受信し、ホストアクセス装置200に送信する。   Further, data transmitted from the authentication IC tag 100 is transmitted wirelessly from the antenna 701. Then, the contactless host access device 710 receives the transmitted data by the antenna 711 and transmits it to the host access device 200.

無線通信の方式は、非接触ICカード規格などで用いられる近距離通信規格NFCなど種々の通信インターフェイス回路を用いることができる。また、通信速度及び通信周波数は、一般的な規格に準拠したもので通信可能である。   As a wireless communication system, various communication interface circuits such as the near field communication standard NFC used in the non-contact IC card standard can be used. Further, the communication speed and communication frequency comply with general standards and can be communicated.

例えば、ホストアクセス装置200内のCPU201により発行された命令によって、暗号処理部203が生成した暗号文データは、ホストアクセス装置200の通信部204を経由し、アンテナ711に送られる。そして、アンテナ711は、暗号文データを無線通信により送信し、非接触型認証ICタグ700のアンテナ701が、送信された暗号文データを受信する。   For example, ciphertext data generated by the cryptographic processing unit 203 in accordance with a command issued by the CPU 201 in the host access device 200 is sent to the antenna 711 via the communication unit 204 of the host access device 200. The antenna 711 transmits the ciphertext data by wireless communication, and the antenna 701 of the contactless authentication IC tag 700 receives the transmitted ciphertext data.

なお、アンテナ701及び711は、送信アンテナとして、特定の方向に電波を放射する指向性アンテナである。例えば、アンテナ701及び711は、振幅の変化した、又は、変化していない搬送波を受け取り、電波として空間に放射する。また、アンテナ701及び711は、空間を伝播してきた電波を受信する受信アンテナとしても機能する。   The antennas 701 and 711 are directional antennas that radiate radio waves in a specific direction as transmission antennas. For example, the antennas 701 and 711 receive a carrier wave whose amplitude has changed or has not changed, and radiate it as a radio wave to the space. The antennas 701 and 711 also function as reception antennas that receive radio waves that have propagated through space.

具体的な認証処理、メモリアクセス処理、及び、状態遷移処理などは、上述の実施の形態と同様である。   Specific authentication processing, memory access processing, state transition processing, and the like are the same as those in the above-described embodiment.

このように、本発明の実施の形態の変形例に係る認証システムのように、ホストアクセス装置と認証ICタグとは、非接触型であってもよい。言い換えると、ホストアクセス装置と認証ICタグとは、無線通信を行ってもよい。   As described above, the host access device and the authentication IC tag may be non-contact type as in the authentication system according to the modification of the embodiment of the present invention. In other words, the host access device and the authentication IC tag may perform wireless communication.

また、図16に示すように、認証ICタグは、処理状態に対応する出力データ以外の出力データを固定してもよい。具体的には、認証処理状態である認証ICタグは、メモリアクセス処理が行われた場合に出力する出力データを予め定められた値に固定する。また、メモリアクセス状態である認証ICタグは、認証処理が行われた場合に出力する出力データを予め定められた値に固定する。   Also, as shown in FIG. 16, the authentication IC tag may fix output data other than the output data corresponding to the processing state. Specifically, the authentication IC tag that is in the authentication processing state fixes the output data output when the memory access processing is performed to a predetermined value. Further, the authentication IC tag in the memory access state fixes output data to be output when authentication processing is performed to a predetermined value.

図16は、本発明の実施の形態の変形例に係る認証ICタグ100aの構成の一例を示すブロック図である。認証ICタグ100aは、図1に示す認証ICタグ100と比較して、さらに、セレクタ111a及び111bを備える点が異なっている。   FIG. 16 is a block diagram showing an example of the configuration of an authentication IC tag 100a according to a modification of the embodiment of the present invention. The authentication IC tag 100a is different from the authentication IC tag 100 shown in FIG. 1 in that it further includes selectors 111a and 111b.

セレクタ111aは、処理状態遷移制御部108からの制御に基づいて、認証結果信号及び固定値のいずれかを選択する。具体的には、認証ICタグ100aが認証処理状態である場合は、セレクタ111aは、認証処理結果信号を選択する。また、認証ICタグ100aがメモリアクセス状態である場合は、セレクタ111aは、固定値、例えば、0を選択する。   The selector 111 a selects either the authentication result signal or the fixed value based on the control from the processing state transition control unit 108. Specifically, when the authentication IC tag 100a is in the authentication processing state, the selector 111a selects an authentication processing result signal. Further, when the authentication IC tag 100a is in the memory access state, the selector 111a selects a fixed value, for example, 0.

セレクタ111bは、処理状態遷移制御部108からの制御に基づいて、記憶データ読み出し信号及び固定値のいずれかを選択する。具体的には、認証ICタグ100aがメモリアクセス状態である場合は、セレクタ111bは、記憶データ読み出し信号を選択する。また、認証ICタグ100aが認証処理状態である場合は、セレクタ111bは、固定値、例えば、0を選択する。   The selector 111b selects either the stored data read signal or the fixed value based on the control from the processing state transition control unit 108. Specifically, when the authentication IC tag 100a is in the memory access state, the selector 111b selects a stored data read signal. When the authentication IC tag 100a is in the authentication processing state, the selector 111b selects a fixed value, for example, 0.

このように、認証ICタグ100aは、現行の処理状態でない側の出力を固定する。これにより、例えば、出力データ制御部109が、出力すべきデータの選択を誤っても、外部に出力データが漏洩することを防ぐことができる。   Thus, the authentication IC tag 100a fixes the output on the side that is not in the current processing state. Thereby, for example, even if the output data control unit 109 erroneously selects the data to be output, the output data can be prevented from leaking outside.

また、上記の実施の形態では、認証ICタグは、暗号文データを全て取得した後、復号を行う構成について説明したが、認証ICタグは、暗号文データを取得する度に、復号を行ってもよい。   Further, in the above embodiment, the authentication IC tag has been described to perform the decryption after acquiring all the ciphertext data. However, the authentication IC tag performs the decryption every time the ciphertext data is acquired. Also good.

図17は、本発明の実施の形態の変形例に係る認証ICタグ100の動作の一例を示すフローチャートである。なお、図17は、認証ICタグ100は、初期状態が認証処理状態である場合の例について示している。以下では、図5に示す処理と異なる点を中心に説明し、同じ点は説明を省略する。   FIG. 17 is a flowchart showing an example of the operation of the authentication IC tag 100 according to the modification of the embodiment of the present invention. FIG. 17 shows an example in which the authentication IC tag 100 is in the authentication processing state in the initial state. Below, it demonstrates centering on a different point from the process shown in FIG. 5, and abbreviate | omits description about the same point.

認証要求コマンドの識別コードを取得した場合、通信部101は、暗号文データの受信を行う(S102)。なお、ホストアクセス装置200は、接触/非接触のインターフェイスに関わらず、規定のビット単位でデータを送受信する。言い換えると、通信部101は、ホストアクセス装置200から、公開鍵を用いて暗号化された暗号文データを所定の通信単位で取得する。例えば、調歩同期式などの通信方式で通信する場合、1回の通信で送信可能なデータは8ビットとなる。   When the identification code of the authentication request command is acquired, the communication unit 101 receives ciphertext data (S102). Note that the host access device 200 transmits and receives data in specified bit units regardless of the contact / non-contact interface. In other words, the communication unit 101 acquires ciphertext data encrypted using the public key from the host access device 200 in a predetermined communication unit. For example, when communicating by a communication method such as start-stop synchronization, data that can be transmitted in one communication is 8 bits.

このように、認証ICタグ100の通信部101は、Nビット単位で認証要求コマンドを受信する。認証に必要な暗号文は、例えば、4000ビット程度のビット長であるため、認証ICタグ100は、複数回に分けて暗号文データを受け取る。具体的には、8ビット単位での通信である場合は、暗号文データの送受信だけで、500回の通信を実施する。   As described above, the communication unit 101 of the authentication IC tag 100 receives the authentication request command in units of N bits. Since the ciphertext necessary for authentication has a bit length of about 4000 bits, for example, the authentication IC tag 100 receives the ciphertext data in a plurality of times. Specifically, in the case of communication in units of 8 bits, communication is performed 500 times only by transmitting / receiving ciphertext data.

通信部101は、暗号文データを8ビット単位で受け取ると、受け取った暗号文データを認証処理部106へ送信し、認証処理を逐次実施する(S104a)。つまり、認証処理部106は、暗号文データを通信単位毎に復号する。認証ICタグ100は、暗号文データの受け取り回数又は復号回数をカウントし、必要なビット数を受け取るまでのカウント数まで、分割された暗号文データを取得及び復号し続ける。   When the communication unit 101 receives the ciphertext data in units of 8 bits, the communication unit 101 transmits the received ciphertext data to the authentication processing unit 106 and sequentially executes the authentication processing (S104a). That is, the authentication processing unit 106 decrypts the ciphertext data for each communication unit. The authentication IC tag 100 counts the number of times the ciphertext data is received or decrypted, and continues to acquire and decrypt the divided ciphertext data up to the count number until the necessary number of bits is received.

認証処理が完了した後(S105)の処理は、図5に示す処理と同様に実施される。   The processing after the authentication processing is completed (S105) is performed in the same manner as the processing shown in FIG.

このように、認証ICタグ100は、分割された暗号文データを受け取る度に、逐次復号することもできる。これにより、分割された暗号文データの取得と復号とを並列して実行することができるので、認証処理を高速化することができる。   In this way, the authentication IC tag 100 can also sequentially decrypt the divided ciphertext data each time it is received. Thereby, since acquisition and decryption of the divided ciphertext data can be executed in parallel, the authentication process can be speeded up.

また、上記の実施の形態に係る認証システムでは、ホストアクセス装置が認証処理の成功又は失敗を判定したが、認証ICタグが認証処理の成功又は失敗を判定してもよい。   In the authentication system according to the above-described embodiment, the host access device determines the success or failure of the authentication process, but the authentication IC tag may determine the success or failure of the authentication process.

図18は、本発明の実施の形態の変形例に係る認証ICタグが備える認証処理部806の一例を示すブロック図である。例えば、図1に示す認証ICタグ100が、認証処理部106の代わりに、認証処理部806を備える。   FIG. 18 is a block diagram illustrating an example of the authentication processing unit 806 provided in the authentication IC tag according to the modification of the embodiment of the present invention. For example, the authentication IC tag 100 illustrated in FIG. 1 includes an authentication processing unit 806 instead of the authentication processing unit 106.

本発明の実施の形態の変形例に係る認証システムでは、暗号前の平文データをホストアクセス装置200より受け取る。   In the authentication system according to the modification of the embodiment of the present invention, plaintext data before encryption is received from the host access device 200.

図18に示すように、認証処理部806は、暗号文復号部106aと、秘密鍵記憶部106bと、比較部806cとを備える。   As shown in FIG. 18, the authentication processing unit 806 includes a ciphertext decryption unit 106a, a secret key storage unit 106b, and a comparison unit 806c.

暗号文復号部106aは、秘密鍵記憶部106bに記憶されている復号鍵を用いて、復号処理を実施する。つまり、暗号文復号部106aは、ホストアクセス装置200から送信された暗号文データを、秘密鍵を用いて復号することで、復号文データを生成する。生成された復号文データは、比較部806cに送信される。   The ciphertext decryption unit 106a performs decryption processing using the decryption key stored in the secret key storage unit 106b. That is, the ciphertext decryption unit 106a generates decrypted text data by decrypting the ciphertext data transmitted from the host access device 200 using the secret key. The generated decrypted text data is transmitted to the comparison unit 806c.

比較部806cは、ホストアクセス装置200から送信された平文データと、復号文データとを比較する。例えば、比較部806cは、内部にビット単位での論理積をとる論理演算子を有する。そして、比較部806cは、論理演算子により各1ビット単位での比較を行い、全ての比較値が1であれば、全ビット一致となるため、平文データと復号文データとが一致したと判定する。   The comparison unit 806c compares the plaintext data transmitted from the host access device 200 with the decrypted text data. For example, the comparison unit 806c includes a logical operator that performs a logical product in units of bits. Then, the comparison unit 806c performs a comparison in units of 1 bit by a logical operator, and if all comparison values are 1, all the bits match, so it is determined that the plaintext data and the decrypted text data match. To do.

図19は、本発明の実施の形態の変形例に係る認証システムにおいて認証ICタグ側での認証処理を説明するための図である。   FIG. 19 is a diagram for explaining an authentication process on the authentication IC tag side in the authentication system according to the modification of the embodiment of the present invention.

まず、ホストアクセス装置200にて、暗号処理部203は、秘匿に送信すべき対象である平文データを、公開鍵を用いて暗号化することで、暗号文データを生成する。ホストアクセス装置200は、通信部204を介して、暗号文データをICタグ受信データとして認証ICタグ100に送信する。   First, in the host access device 200, the encryption processing unit 203 generates ciphertext data by encrypting plaintext data, which is a target to be transmitted confidentially, using a public key. The host access device 200 transmits the ciphertext data to the authentication IC tag 100 as IC tag reception data via the communication unit 204.

また、ホストアクセス装置200は、別途、平文データを認証ICタグ100に送信する。平文データは、暗号文データの送信前及び送信後のいずれのタイミングで送信されてもよい。あるいは、暗号文データと同じタイミングで送信されてもよい。   In addition, the host access device 200 separately transmits plaintext data to the authentication IC tag 100. The plaintext data may be transmitted at any timing before and after transmission of the ciphertext data. Alternatively, it may be transmitted at the same timing as the ciphertext data.

認証ICタグ100は、ICタグ受信データとして暗号文データを受け取る。そして、認証処理部106は、秘密鍵を用いて暗号文データを復号することで、復号文データを生成する。   The authentication IC tag 100 receives ciphertext data as IC tag reception data. Then, the authentication processing unit 106 generates decrypted text data by decrypting the cipher text data using the secret key.

認証ICタグ100は、さらに暗号文データ以外に、平文データをホストアクセス装置200より受信する。例えば、認証ICタグ100は、暗号文データの受信と同じコマンドとして、平文データを受け取る。あるいは、暗号文データの後に継続して送信される平分データを受信してもよい。なお、認証ICタグ100は、平文データを予め保持していてもよい。   The authentication IC tag 100 further receives plaintext data from the host access device 200 in addition to the ciphertext data. For example, the authentication IC tag 100 receives plaintext data as the same command as the reception of ciphertext data. Or you may receive the flat data transmitted continuously after ciphertext data. Note that the authentication IC tag 100 may hold plaintext data in advance.

認証ICタグ100では、比較部806cが、平文データと復号文データとが一致するか否かを判定し、判定結果をホストアクセス装置200に送信する。   In the authentication IC tag 100, the comparison unit 806c determines whether the plaintext data and the decrypted text data match, and transmits the determination result to the host access device 200.

このように、認証ICタグ側で認証処理の成功又は失敗の判断を実施することもできる。   In this way, the authentication IC tag can determine whether the authentication process has succeeded or failed.

また、図20に示す認証ICタグ900のように、認証処理、メモリアクセス処理及び状態遷移処理のそれぞれに対応する制御部の代わりに、これらの処理の全てを行う制御部912を備えていてもよい。図20に示す認証ICタグ900は、図1に示す認証ICタグ100と比較して、認証制御部105、メモリアクセス制御部107及び処理状態遷移制御部108の代わりに、認証データ入出力部905、メモリアクセス入出力部907、処理状態遷移入出力部908、制御部912及び遷移処理部913を備える点が異なっている。   Further, like the authentication IC tag 900 shown in FIG. 20, a control unit 912 that performs all of these processes may be provided instead of the control unit corresponding to each of the authentication process, the memory access process, and the state transition process. Good. The authentication IC tag 900 shown in FIG. 20 is different from the authentication IC tag 100 shown in FIG. 1 in that an authentication data input / output unit 905 is used instead of the authentication control unit 105, the memory access control unit 107, and the processing state transition control unit. The memory access input / output unit 907, the processing state transition input / output unit 908, the control unit 912, and the transition processing unit 913 are different.

認証データ入出力部905は、暗号文データの入力、及び、復号文データの出力を行う。なお、認証データ入出力部905を介さず直接、通信部101と出力データ制御部109との間でデータのやり取りを行ってもよい。   The authentication data input / output unit 905 inputs ciphertext data and outputs decrypted text data. Note that data may be exchanged directly between the communication unit 101 and the output data control unit 109 without going through the authentication data input / output unit 905.

メモリアクセス入出力部907は、メモリアクセス制御部107と同様に、メモリアドレスの生成、及び、メモリアクセスのイネーブル信号の生成を実施する。さらに、メモリ部104への書き込みデータを通信部101から受け取り、メモリ部104へ書き込む。また、メモリ部104から読み出したデータを、出力データ制御部109に出力する。   Similar to the memory access control unit 107, the memory access input / output unit 907 generates a memory address and a memory access enable signal. Further, write data to the memory unit 104 is received from the communication unit 101 and written to the memory unit 104. The data read from the memory unit 104 is output to the output data control unit 109.

処理状態遷移入出力部908は、遷移判定コードの入力、及び遷移処理データの出力を行う。なお、処理状態遷移入出力部908を介さず直接、通信部101と出力データ制御部109との間でデータのやり取りを行ってもよい。   The processing state transition input / output unit 908 inputs a transition determination code and outputs transition processing data. Note that data may be exchanged directly between the communication unit 101 and the output data control unit 109 without going through the processing state transition input / output unit 908.

制御部912は、コマンド識別部102よりコマンド識別子の判定結果を入力とし、認証処理部106、認証データ入出力部905、メモリアクセス入出力部907、処理状態遷移入出力部908及び遷移処理部913に対して、それぞれの動作を行うように指示を発行する。例えば、制御部912は、マイクロプロセッサなどのCPUから構成される。   The control unit 912 receives the command identifier determination result from the command identification unit 102 and uses the authentication processing unit 106, the authentication data input / output unit 905, the memory access input / output unit 907, the processing state transition input / output unit 908, and the transition processing unit 913. In response to this, an instruction is issued to perform each operation. For example, the control unit 912 includes a CPU such as a microprocessor.

遷移処理部913は、認証ICタグ900の状態遷移を行う。具体的な処理は、上述した実施の形態1に係る処理状態遷移制御部108が行う処理と同様である。   The transition processing unit 913 performs state transition of the authentication IC tag 900. The specific process is the same as the process performed by the process state transition control unit 108 according to the first embodiment described above.

以上のような構成であっても、誤動作を防止することができる。特に、公開鍵暗号方式を用いた場合には、暗号文データが長くなるので、暗号文データの中にコマンド識別子と一致するコードが含まれる可能性が高く、誤動作を起こす可能性も高くなる。したがって、公開鍵暗号方式を利用する認証システムでは、本発明の実施の形態の変形例に係る認証ICタグ900も、格別な効果を奏する。   Even with the above configuration, malfunction can be prevented. In particular, when the public key cryptosystem is used, since the ciphertext data becomes long, there is a high possibility that a code that matches the command identifier is included in the ciphertext data, and there is a high possibility of malfunction. Therefore, in the authentication system using the public key cryptosystem, the authentication IC tag 900 according to the modification of the embodiment of the present invention also has a special effect.

また、本発明に係るホストアクセス装置は、認証ICタグに送信するコマンドに応じて、コマンドの信号波形を変更してもよい。   Further, the host access device according to the present invention may change the signal waveform of the command according to the command transmitted to the authentication IC tag.

具体的には、調歩同期式などのシリアル方式での通信で、ホストアクセス装置と認証ICタグとの間で認証を実施する場合において、ホストアクセス装置の通信部204は、認証処理とメモリアクセス処理で、同期信号及び通信データのパルス幅を変更する。例えば、通信部204は、図21に示すように、認証要求コマンドのパルス幅がNmsであるのに対して、アクセス要求コマンドは半分のN/2msのパルス幅でデータ通信を行う。   Specifically, in the case where authentication is performed between the host access device and the authentication IC tag by serial communication such as start-stop synchronization, the communication unit 204 of the host access device performs authentication processing and memory access processing. Thus, the pulse width of the synchronization signal and communication data is changed. For example, as shown in FIG. 21, the communication unit 204 performs data communication with the pulse width of the authentication request command being Nms, whereas the access request command is half the pulse width of N / 2 ms.

つまり、認証要求コマンドの受信、及び、これに対する返信などの認証処理に必要な通信は、パルス幅がNmsの信号波形を用いて行われる(図21(a))。また、アクセス要求コマンドの受信、及び、これに対する返信などのメモリアクセス処理に必要な通信は、パルス幅がN/2msの信号波形を用いて行われる(図21(b))。   That is, communication necessary for authentication processing such as reception of an authentication request command and reply to the command is performed using a signal waveform having a pulse width of Nms (FIG. 21A). Further, communication necessary for memory access processing such as reception of an access request command and a reply to the command is performed using a signal waveform having a pulse width of N / 2 ms (FIG. 21B).

なお、調歩同期式などの通信においては、通信部204は、通信データ(例えば、認証要求コマンド)の前に、データ幅を規定するSyncパルスを付与する。   In communication such as start-stop synchronization, the communication unit 204 gives a Sync pulse that defines a data width before communication data (for example, an authentication request command).

受信側である認証ICタグの通信部101は、送信されるSyncパルスのパルス幅を計測して、継続する通信データのビット幅を確定し、ビットの0/1の判定を実施する。例えば、図21において、信号がハイレベルの場合を1、ローレベルの場合を0として判定する。   The communication unit 101 of the authentication IC tag on the receiving side measures the pulse width of the sync pulse to be transmitted, determines the bit width of the continued communication data, and performs 0/1 bit determination. For example, in FIG. 21, the signal is determined to be 1 when the signal is at a high level and 0 when the signal is at a low level.

例えば、4000ビットを送信中に少なくとも500回はSyncパルスを計測することが可能であるため、コマンド識別子を取りこぼしても、暗号文データの途中で、認証処理であることを検出でき、意図しないアクセスを効果的に防ぐことが可能となる。したがって、コマンドの信号波形を変更する場合、実施の形態2のように、認証ICタグは、明示的な状態遷移を行わなくてもよい。   For example, since it is possible to measure Sync pulses at least 500 times during transmission of 4000 bits, even if a command identifier is missed, it can be detected in the middle of ciphertext data, and unintended access Can be effectively prevented. Therefore, when changing the signal waveform of the command, the authentication IC tag does not need to perform an explicit state transition as in the second embodiment.

また、本発明に係るホストアクセス装置は、認証ICタグに送信するコマンドに応じて、コマンド長を変更してもよい。例えば、図22の(a)及び(b)に示すように、ホストアクセス装置の通信部204は、コマンド識別子のビット長を長くするように、コマンドのフォーマットを変更する。これにより、暗号文データの一部とコマンド識別子とが一致する確率を減らすことができる。   Further, the host access device according to the present invention may change the command length according to the command transmitted to the authentication IC tag. For example, as shown in FIGS. 22A and 22B, the communication unit 204 of the host access device changes the command format so as to increase the bit length of the command identifier. Thereby, it is possible to reduce the probability that a part of the ciphertext data matches the command identifier.

また、本発明に係るホストアクセス装置は、図22の(c)に示すように、コマンド識別子にCRC(Cyclic Redundancy Check(巡回冗長検査))を付加してもよい。CRCは、誤り検出符号の一例であり、データの誤りを検出することができる。したがって、コマンド識別子に誤りが発生した場合であっても、認証ICタグの通信部101は、その誤りを検出することにより、誤動作を防止することができる。   The host access apparatus according to the present invention may add a CRC (Cyclic Redundancy Check) to the command identifier as shown in FIG. CRC is an example of an error detection code, and can detect data errors. Therefore, even if an error occurs in the command identifier, the communication unit 101 of the authentication IC tag can prevent malfunction by detecting the error.

また、上記実施の形態1、2及びその変形例に係る認証ICタグ及びホストアクセス装置に含まれる各処理部は、典型的には集積回路であるLSI(Large Scale Integration)として実現される。これらは個別に1チップ化されてもよいし、一部又は全てを含むように1チップ化されてもよい。   Each processing unit included in the authentication IC tag and the host access device according to the first and second embodiments and the modifications thereof is typically realized as an LSI (Large Scale Integration) that is an integrated circuit. These may be individually made into one chip, or may be made into one chip so as to include a part or all of them.

ここでは、LSIとしたが、集積度の違いにより、IC、システムLSI、スーパーLSI、ウルトラLSIと呼称されることもある。   The name used here is LSI, but it may also be called IC, system LSI, super LSI, or ultra LSI depending on the degree of integration.

また、集積回路化はLSIに限るものではなく、専用回路又は汎用プロセッサで実現してもよい。LSI製造後にプログラムすることが可能なFPGA(Field Programmable Gate Array)、又はLSI内部の回路セルの接続や設定を再構成可能なリコンフィギュラブル・プロセッサを利用してもよい。   Further, the circuit integration is not limited to LSI, and may be realized by a dedicated circuit or a general-purpose processor. An FPGA (Field Programmable Gate Array) that can be programmed after manufacturing the LSI or a reconfigurable processor that can reconfigure the connection and setting of circuit cells inside the LSI may be used.

さらには、半導体技術の進歩又は派生する別技術によりLSIに置き換わる集積回路化の技術が登場すれば、当然、その技術を用いて各処理部の集積化を行ってもよい。バイオ技術の適用等が可能性として考えられる。   Further, if integrated circuit technology comes out to replace LSI's as a result of the advancement of semiconductor technology or a derivative other technology, it is naturally also possible to carry out integration of processing units using that technology. Biotechnology can be applied.

また、本発明の実施の形態1、2に係る認証ICタグ及びホストアクセス装置の機能の一部又は全てを、CPU等のプロセッサがプログラムを実行することにより実現してもよい。   Further, some or all of the functions of the authentication IC tag and the host access device according to the first and second embodiments of the present invention may be realized by a processor such as a CPU executing a program.

さらに、本発明は上記プログラムであってもよいし、上記プログラムが記録された記録媒体であってもよい。また、上記プログラムは、インターネット等の伝送媒体を介して流通させることができるのは言うまでもない。   Further, the present invention may be the above program or a recording medium on which the above program is recorded. Needless to say, the program can be distributed via a transmission medium such as the Internet.

また、上記で用いた数字は、全て本発明を具体的に説明するために例示するものであり、本発明は例示された数字に制限されない。また、構成要素間の接続関係は、本発明を具体的に説明するために例示するものであり、本発明の機能を実現する接続関係はこれに限定されない。   Moreover, all the numbers used above are illustrated for specifically explaining the present invention, and the present invention is not limited to the illustrated numbers. In addition, the connection relationship between the components is exemplified for specifically explaining the present invention, and the connection relationship for realizing the function of the present invention is not limited to this.

さらに、上記の実施の形態は、ハードウェア及び/又はソフトウェアを用いて構成されるが、ハードウェアを用いる構成は、ソフトウェアを用いても構成可能であり、ソフトウェアを用いる構成は、ハードウェアを用いても構成可能である。   Furthermore, although the above embodiment is configured using hardware and / or software, the configuration using hardware can also be configured using software, and the configuration using software uses hardware. Can be configured.

また、上記認証ICタグ及びホストアクセス装置の構成は、本発明を具体的に説明するために例示するためのものであり、本発明に係る認証ICタグ及びホストアクセス装置は、上記構成の全てを必ずしも備える必要はない。言い換えると、本発明に係る認証ICタグ及びホストアクセス装置は、本発明の効果を実現できる最小限の構成のみを備えればよい。   The configurations of the authentication IC tag and the host access device are for illustrative purposes only, and the authentication IC tag and the host access device according to the present invention have all the above configurations. It is not always necessary to prepare. In other words, the authentication IC tag and the host access device according to the present invention need only have a minimum configuration capable of realizing the effects of the present invention.

同様に、上記の認証システムによる認証方法は、本発明を具体的に説明するために例示するためのものであり、本発明に係る認証システムによる認証方法は、上記ステップの全てを必ずしも含む必要はない。言い換えると、本発明に係る認証方法は、本発明の効果を実現できる最小限のステップのみを含めばよい。また、上記のステップが実行される順序は、本発明を具体的に説明するために例示するためのものであり、上記以外の順序であってもよい。また、上記ステップの一部が、他のステップと同時(並列)に実行されてもよい。   Similarly, the authentication method using the above authentication system is for illustrating the present invention, and the authentication method using the authentication system according to the present invention does not necessarily include all the above steps. Absent. In other words, the authentication method according to the present invention needs to include only the minimum steps that can realize the effects of the present invention. In addition, the order in which the above steps are executed is for illustration in order to specifically describe the present invention, and may be in an order other than the above. Also, some of the above steps may be executed simultaneously (in parallel) with other steps.

本発明は、認証ICタグの誤動作を防止することができるという効果を奏し、例えば、物品の管理、模造品の判別、及び、個人認証などに用いられる認証ICタグ及び認証システムに利用することができる。   INDUSTRIAL APPLICABILITY The present invention has an effect of preventing malfunction of an authentication IC tag, and can be used for, for example, an authentication IC tag and an authentication system used for article management, discrimination of imitation products, personal authentication, and the like. it can.

100、100a、600、900 認証ICタグ
101、204 通信部
102 コマンド識別部
103 識別コード記憶部
104 メモリ部
105 認証制御部
106、806 認証処理部
106a 暗号文復号部
106b 秘密鍵記憶部
107 メモリアクセス制御部
108 処理状態遷移制御部
109 出力データ制御部
110 入出力端子
200、200a、500 ホストアクセス装置
201、201a CPU
202 鍵記憶部
203 暗号処理部
205 認証取得部
206 認証結果比較部
300、300a、400 電子機器
301、301a、401 本体基板
302、302a、402 アクセサリ機器
303、303a、304 信号線
507 暗号文データ解読部
508 コマンド識別子変更部
611 識別コード変更部
700 非接触型認証ICタグ
701、711 アンテナ
710 非接触型ホストアクセス装置
806c 比較部
905 認証データ入出力部
907 メモリアクセス入出力部
908 処理状態遷移入出力部
912 制御部
913 遷移処理部
100, 100a, 600, 900 Authentication IC tag 101, 204 Communication unit 102 Command identification unit 103 Identification code storage unit 104 Memory unit 105 Authentication control unit 106, 806 Authentication processing unit 106a Ciphertext decryption unit 106b Private key storage unit 107 Memory access Control unit 108 Processing state transition control unit 109 Output data control unit 110 Input / output terminals 200, 200a, 500 Host access devices 201, 201a CPU
202 Key storage unit 203 Cryptographic processing unit 205 Authentication acquisition unit 206 Authentication result comparison unit 300, 300a, 400 Electronic device 301, 301a, 401 Main board 302, 302a, 402 Accessory device 303, 303a, 304 Signal line 507 Ciphertext data decryption Unit 508 command identifier change unit 611 identification code change unit 700 contactless authentication IC tags 701 and 711 antenna 710 contactless host access device 806c comparison unit 905 authentication data input / output unit 907 memory access input / output unit 908 processing state transition input / output Unit 912 Control unit 913 Transition processing unit

Claims (18)

認証処理状態とメモリアクセス状態とを有する認証ICタグであって、
前記メモリアクセス状態は、ホストアクセス装置から、所定のデータを格納するためのメモリ部へのメモリアクセス処理が実行可能な状態であり、
前記認証処理状態は、前記ホストアクセス装置による公開鍵暗号方式を用いた認証処理が実行可能で、かつ、前記メモリアクセス処理が禁止された状態であり、
前記認証ICタグは、
前記メモリ部と、
前記認証ICタグが前記認証処理状態である場合に、前記認証処理を行う認証部と、
前記認証ICタグが前記認証処理状態である場合に、前記メモリアクセス処理を禁止し、前記認証ICタグが前記メモリアクセス状態である場合に、前記メモリアクセス処理を行うメモリアクセス制御部と、
前記ホストアクセス装置と通信することで、コマンドを取得する通信部と、
前記通信部が取得したコマンドに基づいて、前記認証処理状態と前記メモリアクセス状態との間で前記認証ICタグの状態遷移を行う状態遷移制御部とを備える
認証ICタグ。
An authentication IC tag having an authentication processing state and a memory access state,
The memory access state is a state in which a memory access process from a host access device to a memory unit for storing predetermined data can be executed.
The authentication processing state is a state in which authentication processing using a public key cryptosystem by the host access device can be executed, and the memory access processing is prohibited.
The authentication IC tag is:
The memory unit;
An authentication unit that performs the authentication process when the authentication IC tag is in the authentication process state;
A memory access control unit that prohibits the memory access process when the authentication IC tag is in the authentication process state, and performs the memory access process when the authentication IC tag is in the memory access state;
A communication unit for obtaining a command by communicating with the host access device;
An authentication IC tag comprising: a state transition control unit that performs state transition of the authentication IC tag between the authentication processing state and the memory access state based on a command acquired by the communication unit.
前記認証部は、前記認証ICタグが前記認証処理状態であり、かつ、前記認証処理を要求する認証要求コマンドを前記通信部が取得した場合に、前記認証処理を行い、
前記メモリアクセス制御部は、前記認証ICタグが前記メモリアクセス状態であり、かつ、前記メモリアクセス処理を要求するアクセス要求コマンドを前記通信部が取得した場合に、前記メモリアクセス処理を行い、
前記状態遷移制御部は、前記認証処理状態と前記メモリアクセス状態とのいずれかへの状態遷移を要求する遷移要求コマンドを前記通信部が取得した場合に、前記遷移要求コマンドに応じて前記認証ICタグの状態遷移を行う
請求項1記載の認証ICタグ。
The authentication unit performs the authentication process when the authentication IC tag is in the authentication process state and the communication unit acquires an authentication request command for requesting the authentication process,
The memory access control unit performs the memory access process when the authentication IC tag is in the memory access state and the communication unit acquires an access request command for requesting the memory access process,
When the communication unit acquires a transition request command for requesting a state transition to either the authentication processing state or the memory access state, the state transition control unit responds to the authentication IC according to the transition request command. The authentication IC tag according to claim 1, which performs a state transition of the tag.
前記状態遷移制御部は、前記認証処理又は前記メモリアクセス処理が完了した場合に、前記認証ICタグの状態遷移を行う
請求項1又は2記載の認証ICタグ。
The authentication IC tag according to claim 1 or 2, wherein the state transition control unit performs state transition of the authentication IC tag when the authentication process or the memory access process is completed.
前記状態遷移制御部は、前記認証処理が完了した場合に、前記認証ICタグの状態を前記認証処理状態のまま維持する
請求項1〜3のいずれか1項に記載の認証ICタグ。
The authentication IC tag according to any one of claims 1 to 3, wherein the state transition control unit maintains the state of the authentication IC tag in the authentication process state when the authentication process is completed.
前記認証ICタグは、さらに、前記状態遷移制御部によって前記認証ICタグの状態遷移が行われた場合に、当該状態遷移の結果を示す状態遷移結果データを出力する出力部を備える
請求項1〜4のいずれか1項に記載の認証ICタグ。
The said authentication IC tag is further provided with the output part which outputs the state transition result data which shows the result of the said state transition, when the state transition of the said authentication IC tag is performed by the said state transition control part. 5. The authentication IC tag according to any one of 4 above.
前記通信部は、前記ホストアクセス装置から、公開鍵を用いて暗号化された暗号文データとを所定の通信単位で取得し、
前記認証部は、前記暗号文データを全て取得した後で、前記認証処理として、前記暗号文データを復号する
請求項1〜5のいずれか1項に記載の認証ICタグ。
The communication unit acquires ciphertext data encrypted using a public key from the host access device in a predetermined communication unit,
The authentication IC tag according to claim 1, wherein the authentication unit decrypts the ciphertext data as the authentication process after acquiring all the ciphertext data.
前記通信部は、前記ホストアクセス装置から、公開鍵を用いて暗号化された暗号文データとを所定の通信単位で取得し、
前記認証部は、前記認証処理として、前記暗号文データを前記通信単位毎に復号する
請求項1〜5のいずれか1項に記載の認証ICタグ。
The communication unit acquires ciphertext data encrypted using a public key from the host access device in a predetermined communication unit,
The authentication IC tag according to any one of claims 1 to 5, wherein the authentication unit decrypts the ciphertext data for each communication unit as the authentication process.
前記通信部は、前記ホストアクセス装置との間で物理的な信号線を介して通信する
請求項1〜7のいずれか1項に記載の認証ICタグ。
The authentication IC tag according to claim 1, wherein the communication unit communicates with the host access device via a physical signal line.
前記通信部は、前記ホストアクセス装置との間で無線で通信する
請求項1〜7のいずれか1項に記載の認証ICタグ。
The authentication IC tag according to claim 1, wherein the communication unit communicates wirelessly with the host access device.
前記通信部は、前記ホストアクセス装置から、公開鍵を用いて暗号化された暗号文データを取得し、
前記認証部は、前記認証処理として、前記公開鍵に対応する秘密鍵を用いて前記暗号文データを復号することで、復号文データを生成し、
前記通信部は、さらに、前記復号文データを前記ホストアクセス装置へ送信する
請求項1〜9のいずれか1項に記載の認証ICタグ。
The communication unit obtains ciphertext data encrypted using a public key from the host access device,
The authentication unit generates decrypted text data by decrypting the cipher text data using a secret key corresponding to the public key as the authentication process,
The authentication IC tag according to claim 1, wherein the communication unit further transmits the decrypted text data to the host access device.
前記通信部は、前記ホストアクセス装置から、公開鍵を用いて平文データが暗号化された暗号文データとを取得し、
前記認証部は、前記認証処理として、前記公開鍵に対応する秘密鍵を用いて前記暗号文データを復号することで、復号文データを生成し、前記平文データと前記復号文データとが一致するか否かを判定する
請求項1〜9のいずれか1項に記載の認証ICタグ。
The communication unit obtains, from the host access device, ciphertext data obtained by encrypting plaintext data using a public key,
The authentication unit generates decrypted text data by decrypting the ciphertext data using a secret key corresponding to the public key as the authentication process, and the plaintext data and the decrypted text data match. The authentication IC tag according to any one of claims 1 to 9.
所定のデータを格納するためのメモリ部を備える認証ICタグを、公開鍵暗号方式を用いて認証する処理である認証処理を行うホストアクセス装置であって、
前記認証ICタグの状態を遷移させるための命令を発行する制御部と、
前記命令に対応するコマンドを前記認証ICタグに送信する通信部とを備え、
前記制御部は、
前記認証ICタグの状態を、前記ホストアクセス装置から前記メモリ部へのメモリアクセス処理が禁止され、かつ、前記ホストアクセス装置による前記認証処理が実行可能な認証処理状態と、前記メモリアクセス処理が実行可能なメモリアクセス状態との間で遷移させるための命令を発行する
ホストアクセス装置。
A host access device that performs an authentication process, which is a process of authenticating an authentication IC tag including a memory unit for storing predetermined data using a public key cryptosystem,
A control unit that issues a command to transition the state of the authentication IC tag;
A communication unit that transmits a command corresponding to the command to the authentication IC tag,
The controller is
The status of the authentication IC tag includes an authentication processing state in which memory access processing from the host access device to the memory unit is prohibited and the host access device can execute the authentication processing, and the memory access processing is executed. A host access device that issues instructions for transitioning between possible memory access states.
前記ホストアクセス装置は、さらに、公開鍵を用いて平文データを暗号化することで、暗号文データを生成する暗号化部を備え、
前記制御部は、前記認証処理を要求する認証命令、及び、前記メモリアクセス処理を要求するメモリアクセス命令を発行し、
前記通信部は、前記制御部によって前記認証命令が発行された場合に、前記認証命令に対応するコマンドを識別するための識別コードと、前記暗号文データとを、前記認証ICタグに送信し、前記制御部によって前記メモリアクセス命令が発行された場合に、前記メモリアクセス命令に対応するコマンドを識別するための識別コードを、前記認証ICタグに送信する
請求項12記載のホストアクセス装置。
The host access device further includes an encryption unit that generates ciphertext data by encrypting plaintext data using a public key,
The control unit issues an authentication command for requesting the authentication processing, and a memory access command for requesting the memory access processing,
The communication unit transmits an identification code for identifying a command corresponding to the authentication command and the ciphertext data to the authentication IC tag when the authentication command is issued by the control unit, The host access device according to claim 12, wherein when the memory access instruction is issued by the control unit, an identification code for identifying a command corresponding to the memory access instruction is transmitted to the authentication IC tag.
前記通信部は、前記制御部によって発行された命令に応じて、信号波形を変更する
請求項13記載のホストアクセス装置。
The host access device according to claim 13, wherein the communication unit changes a signal waveform according to a command issued by the control unit.
前記ホストアクセス装置は、CPU(Central Processing Unit)を備え、
前記CPUは、前記制御部、前記暗号化部及び前記通信部の機能を実行する
請求項13又は14記載のホストアクセス装置。
The host access device includes a CPU (Central Processing Unit),
The host access device according to claim 13 or 14, wherein the CPU executes functions of the control unit, the encryption unit, and the communication unit.
認証ICタグの認証処理を行うホストアクセス装置であって、
前記認証ICタグに対する少なくとも1つ以上の命令を発行する制御部と、
公開鍵を用いて平文データを暗号化することで、暗号文データを生成する暗号化部と、
前記暗号文データを前記認証ICタグに送信する通信部と、
前記暗号文データを解析することで、前記1つ以上の命令に対応するコマンドを識別するための識別コードと一致するデータが前記暗号文データに含まれているか否かを判定する解析部と、
前記識別コードと一致するデータが前記暗号文データに含まれていると判定された場合に、前記識別コードを変更することで、変更後識別コードを生成する変更部とを備え、
前記通信部は、さらに、
前記変更後識別コードを前記認証ICタグに送信する
ホストアクセス装置。
A host access device that performs authentication processing of an authentication IC tag,
A controller that issues at least one command for the authentication IC tag;
An encryption unit that generates ciphertext data by encrypting plaintext data using a public key;
A communication unit that transmits the ciphertext data to the authentication IC tag;
Analyzing the ciphertext data to determine whether the ciphertext data includes data that matches an identification code for identifying a command corresponding to the one or more instructions;
When it is determined that the data matching the identification code is included in the ciphertext data, the change unit generates a changed identification code by changing the identification code,
The communication unit further includes:
A host access device that transmits the changed identification code to the authentication IC tag.
請求項1〜11のいずれか1項に記載の認証ICタグと、
請求項12〜16のいずれか1項に記載のホストアクセス装置とを備える
認証システム。
The authentication IC tag according to any one of claims 1 to 11,
An authentication system comprising the host access device according to any one of claims 12 to 16.
認証処理状態とメモリアクセス状態とを有する認証ICタグを認証する認証方法であって、
前記メモリアクセス状態の前記認証ICタグは、ホストアクセス装置から、所定のデータを格納するためのメモリ部へのメモリアクセス処理が実行可能であり、
前記認証処理状態の前記認証ICタグは、前記ホストアクセス装置による公開鍵暗号方式を用いた認証処理が実行可能で、かつ、前記メモリアクセス処理が禁止され、
前記認証方法は、
前記認証ICタグが前記認証処理状態である場合に、前記認証処理を行う認証ステップと、
前記認証ICタグが前記認証処理状態である場合に、前記メモリアクセス処理を禁止し、前記認証ICタグが前記メモリアクセス状態である場合に、前記メモリアクセス処理を行うメモリアクセスステップと、
前記ホストアクセス装置と通信することで、コマンドを取得する通信ステップと、
前記コマンドに基づいて、前記認証処理状態と前記メモリアクセス状態との間で前記認証ICタグの状態遷移を行う状態遷移制御ステップとを含む
認証方法。
An authentication method for authenticating an authentication IC tag having an authentication processing state and a memory access state,
The authentication IC tag in the memory access state can execute a memory access process from a host access device to a memory unit for storing predetermined data,
The authentication IC tag in the authentication process state can execute an authentication process using a public key cryptosystem by the host access device, and the memory access process is prohibited.
The authentication method is:
An authentication step of performing the authentication process when the authentication IC tag is in the authentication process state;
A memory access step for prohibiting the memory access process when the authentication IC tag is in the authentication process state, and performing the memory access process when the authentication IC tag is in the memory access state;
A communication step of acquiring a command by communicating with the host access device;
A state transition control step of performing state transition of the authentication IC tag between the authentication processing state and the memory access state based on the command;
JP2011014587A 2011-01-26 2011-01-26 Authentication ic tag, authentication system, host access device, and authentication method Pending JP2012155560A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2011014587A JP2012155560A (en) 2011-01-26 2011-01-26 Authentication ic tag, authentication system, host access device, and authentication method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2011014587A JP2012155560A (en) 2011-01-26 2011-01-26 Authentication ic tag, authentication system, host access device, and authentication method

Publications (1)

Publication Number Publication Date
JP2012155560A true JP2012155560A (en) 2012-08-16

Family

ID=46837212

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2011014587A Pending JP2012155560A (en) 2011-01-26 2011-01-26 Authentication ic tag, authentication system, host access device, and authentication method

Country Status (1)

Country Link
JP (1) JP2012155560A (en)

Similar Documents

Publication Publication Date Title
US9054874B2 (en) System and method for data authentication among processors
US7735132B2 (en) System and method for encrypted smart card PIN entry
CN101159551B (en) Multifunctional information safety equipment and method of use thereof
US8700908B2 (en) System and method for managing secure information within a hybrid portable computing device
CN102722676A (en) System provided with several electronic devices and a security module
EP3584992A1 (en) Internet of things device
JP2014053675A (en) Security chip, program, information processing device, and information processing system
KR100526650B1 (en) Electronic value data communication method, communication system, IC card, portable terminal and communication terminal
JP2007027896A (en) Communication card, secret information processing system, secret information transmission method, and program
JP2011504263A (en) Smart storage devices
CN106465044B (en) Method, apparatus and system for wireless power transmission
US11210678B2 (en) Component for provisioning security data and product including the same
KR20210132721A (en) Secure communication when accessing the network
JP2009129413A (en) Shared management method of portable storage device, and portable storage device
JP2007173911A (en) Data processing apparatus, program, and system
CN109075974B (en) Binding authentication method of fingerprint algorithm library and fingerprint sensor and fingerprint identification system
JP2012155560A (en) Authentication ic tag, authentication system, host access device, and authentication method
JP4394413B2 (en) Information storage device and information processing system
CN105790946B (en) Method, system and related equipment for establishing data channel
JP6203556B2 (en) Information processing system
CN114981828A (en) Technique for controlling an applet for a contactless card
US20190311110A1 (en) Method, first device and system for authenticating to a second device
JP7307883B2 (en) Board set and secure element
KR20190094154A (en) Information processing device and information processing method
JP5217689B2 (en) Communication system, its originating node, receiving node