JP2016184899A - Authentication device, authenticated device, authentication method, authenticated method, authentication processing program, and authenticated processing program - Google Patents

Authentication device, authenticated device, authentication method, authenticated method, authentication processing program, and authenticated processing program Download PDF

Info

Publication number
JP2016184899A
JP2016184899A JP2015065090A JP2015065090A JP2016184899A JP 2016184899 A JP2016184899 A JP 2016184899A JP 2015065090 A JP2015065090 A JP 2015065090A JP 2015065090 A JP2015065090 A JP 2015065090A JP 2016184899 A JP2016184899 A JP 2016184899A
Authority
JP
Japan
Prior art keywords
random number
authentication
index
authenticated
calculated
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2015065090A
Other languages
Japanese (ja)
Other versions
JP6432417B2 (en
Inventor
半田 富己男
Fukio Handa
富己男 半田
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.)
Dai Nippon Printing Co Ltd
Original Assignee
Dai Nippon Printing Co Ltd
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 Dai Nippon Printing Co Ltd filed Critical Dai Nippon Printing Co Ltd
Priority to JP2015065090A priority Critical patent/JP6432417B2/en
Publication of JP2016184899A publication Critical patent/JP2016184899A/en
Application granted granted Critical
Publication of JP6432417B2 publication Critical patent/JP6432417B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Abstract

PROBLEM TO BE SOLVED: To provide an authentication device, authenticated device, authentication method, authenticated method, authentication processing program, and authenticated processing program that can improve safety against spoofing or the like even if an attacker stores pairs of a challenge and a response.SOLUTION: A communication device T1 and a communication device T2 have stored the same random number table, safely update the random number table on a timely basis by only transmitting and receiving an index, and furthermore hand over a challenge value by index.SELECTED DRAWING: Figure 4

Description

本発明は、チャレンジ−レスポンス方式による機器間の認証方式等の技術分野に関する。   The present invention relates to a technical field such as an authentication method between devices by a challenge-response method.

一般的なチャレンジ−レスポンス方式による認証では、例えば特許文献1に開示されるように、認証者(例えばサーバ)は、被認証者(例えば端末)からの認証要求に応じて、乱数Rを生成し、当該乱数Rをチャレンジとして被認証者に送信し、さらに、当該乱数Rを、鍵記憶部に記憶している暗号鍵(秘密鍵)Kを用いて暗号化して暗号データを算出する。一方、被認証者は、認証者からチャレンジを受信すると、チャレンジに含まれる乱数Rを、鍵記憶部に記憶している暗号鍵Kにより暗号化して、これをレスポンスとして認証者に送信する。そして、認証者は、算出した暗号データと、端末から受信したレスポンスに含まれる暗号データとを比較して、一致する場合に被認証者が正規の証明者であると認証する。   In authentication by a general challenge-response method, for example, as disclosed in Patent Document 1, an authenticator (for example, a server) generates a random number R in response to an authentication request from an authenticated person (for example, a terminal). The random number R is transmitted as a challenge to the person to be authenticated, and the random number R is encrypted using an encryption key (secret key) K stored in the key storage unit to calculate encrypted data. On the other hand, when receiving the challenge from the authenticator, the authenticated person encrypts the random number R included in the challenge with the encryption key K stored in the key storage unit, and transmits this as a response to the authenticator. Then, the authenticator compares the calculated encrypted data with the encrypted data included in the response received from the terminal, and authenticates that the person to be authenticated is a legitimate prover if they match.

特開2003−318894号公報JP 2003-318894 A

しかしながら、認証者と被認証者との間で認証の際にやりとりされるチャレンジとレスポンスの対を、攻撃者が傍受して蓄積しておくことで、チャレンジとして用いる乱数の長さが短い場合には攻撃者が被認証者に成りすますことに成功する可能性があるという問題があった。例えば、攻撃者は、被認証者に成りすまして認証者に認証要求を行う。そして、認証者から送られてきたチャレンジが、上述したように蓄積された中にあれば、攻撃者は、当該チャレンジに対応付けられたレスポンスを特定できるので、認証に成功してしまう。被認証者が認証用の暗号鍵を長期間にわたって使い続けることにより、攻撃者の蓄積量が増加し、成りすましを許してしまう危険性が高まる。また、認証者から送られてきたチャレンジが、上述したように蓄積された中になくても、チャレンジをレスポンスに変換する規則が容易である(例えば、暗号鍵長が短い)場合には、蓄積されたチャレンジを解析することで、認証者から送られてきたチャレンジに対応するレスポンスが推定される可能性もある。   However, when the length of the random number used as a challenge is short because the attacker intercepts and accumulates the challenge and response pairs exchanged during authentication between the authenticator and the person to be authenticated Had the problem that the attacker could succeed in impersonating the person to be authenticated. For example, an attacker impersonates a person to be authenticated and makes an authentication request to the authenticator. Then, if the challenge sent from the authenticator is stored as described above, the attacker can specify the response associated with the challenge, so that the authentication is successful. If the person to be authenticated continues to use the authentication encryption key for a long period of time, the accumulated amount of the attacker increases and the risk of allowing impersonation increases. In addition, even if the challenge sent from the authenticator is not stored as described above, if the rule for converting the challenge into a response is easy (for example, the encryption key length is short), it is stored. By analyzing the challenge, a response corresponding to the challenge sent from the authenticator may be estimated.

そこで、本発明は、上記点に鑑みてなされたものであり、攻撃者がチャレンジとレスポンスの対を蓄積したとしても、成りすまし等に対する安全性を向上させることが可能な認証装置、被認証装置、認証方法、被認証方法、認証処理プログラム、及び被認証処理プログラムを提供することを目的とする。   Therefore, the present invention has been made in view of the above points, and even if an attacker accumulates a pair of challenges and responses, an authentication device, an authenticated device, which can improve the security against impersonation, An object is to provide an authentication method, an authenticated method, an authentication processing program, and an authenticated processing program.

上記課題を解決するために、請求項1に記載の発明は、被認証装置からの認証要求に応じて認証処理を実行する認証装置であって、当該認証装置と前記被認証装置間で共有される乱数テーブルであって複数個の乱数と前記乱数ごとに一意のインデックスとを対応付けた前記乱数テーブルを記憶する第1記憶手段と、前記第1記憶手段に記憶されている前記乱数テーブルにおける所定数の前記インデックスの中の第1の前記インデックスに対応付けられている前記乱数を用いて算出される新たな乱数により、当該所定数の前記インデックスの中の第2の前記インデックスに対応付けられている前記乱数を更新する前記被認証装置から、当該所定数の前記インデックスを含む更新コマンドを受信する第1受信手段と、前記第1受信手段により受信された前記更新コマンドに含まれる前記所定数の前記インデックスの中の第1の前記インデックスに対応付けられている前記乱数を用いて新たな乱数を算出し、当該算出した乱数により、前記乱数テーブルにおいて当該所定数の前記インデックスの中の第2の前記インデックスに対応付けられている前記乱数を更新する第1更新手段と、前記被認証装置から認証要求を受信する第2受信手段と、前記第2受信手段により受信された認証要求に応じて、前記第1記憶手段に記憶されている前記乱数テーブルにおける所定数の第3の前記インデックスを含むチャレンジコマンドを前記被認証装置へ送信する第1送信手段と、前記第2受信手段により受信された認証要求に応じて、前記第1記憶手段に記憶されている前記乱数テーブルにおける前記第3の前記インデックスに対応付けられている前記乱数を用いて第1の値を算出する第1算出手段と、前記チャレンジコマンドに含まれる前記第3の前記インデックスに対応付けられている前記乱数が用いられて算出された第2の値を含むレスポンスを当該被認証装置から受信する第3受信手段と、前記第1算出手段により算出された前記第1の値と、前記第3受信手段により受信された前記レスポンスに含まれる前記第2の値とを用いて、認証処理を実行する認証手段と、を備えることを特徴とする。   In order to solve the above-described problem, the invention described in claim 1 is an authentication apparatus that executes an authentication process in response to an authentication request from an authenticated apparatus, and is shared between the authenticated apparatus and the authenticated apparatus. A random number table that stores the random number table in which a plurality of random numbers are associated with a unique index for each random number; and a predetermined number in the random number table stored in the first storage unit A new random number calculated using the random number associated with the first index in the number of indexes, and associated with the second index in the predetermined number of the indexes. A first receiving means for receiving an update command including the predetermined number of the indexes from the device to be authenticated that updates the random number received by the first receiving means; A new random number is calculated using the random number associated with the first index among the predetermined number of the indexes included in the updated command, and the calculated random number is used in the random number table. First updating means for updating the random number associated with the second index among the predetermined number of the indexes, second receiving means for receiving an authentication request from the device to be authenticated, and the second In response to the authentication request received by the receiving means, a first sending means for sending a challenge command including a predetermined number of third indexes in the random number table stored in the first storage means to the device to be authenticated. And in the random number table stored in the first storage means in response to the authentication request received by the second receiving means. First calculation means for calculating a first value using the random number associated with the index of 3, and the random number associated with the third index included in the challenge command is used. And receiving the response including the calculated second value from the device to be authenticated, the first value calculated by the first calculating unit, and the third receiving unit. And authentication means for executing an authentication process using the second value included in the response.

請求項2に記載の発明は、請求項1に記載の認証装置において、前記認証手段は、前記認証処理において、前記第1の値と前記第2の値とが一致するか否かを判定することを特徴とする。   According to a second aspect of the present invention, in the authentication device according to the first aspect, the authentication unit determines whether or not the first value and the second value match in the authentication process. It is characterized by that.

請求項3に記載の発明は、請求項1に記載の認証装置において、前記認証装置は、乱数を生成する乱数生成手段を更に備え、前記第1送信手段は、前記第3の前記インデックスと、前記乱数生成手段により生成された乱数とを含むチャレンジコマンドを前記被認証装置へ送信し、前記第1算出手段は、前記第3の前記インデックスに対応付けられている前記乱数を用いて算出された値を暗号鍵として、前記乱数生成手段により生成された乱数を暗号化することにより前記第1の値を算出し、前記第3受信手段は、前記チャレンジコマンドに含まれる前記第3の前記インデックスに対応付けられている前記乱数が用いられて算出された値を暗号鍵として、前記チャレンジコマンドに含まれる前記乱数が暗号化されることにより算出された前記第2の値を含むレスポンスを当該被認証装置から受信し、前記認証手段は、前記認証処理において、前記第1の値と前記第2の値とが一致するか否かを判定することを特徴とする。   The invention according to claim 3 is the authentication apparatus according to claim 1, wherein the authentication apparatus further includes random number generation means for generating a random number, and the first transmission means includes the third index, A challenge command including the random number generated by the random number generation means is transmitted to the device to be authenticated, and the first calculation means is calculated using the random number associated with the third index. The first value is calculated by encrypting the random number generated by the random number generation unit using the value as an encryption key, and the third reception unit includes the third index included in the challenge command. The first value calculated by encrypting the random number included in the challenge command, using the value calculated by using the associated random number as an encryption key. And receiving the response including the value from the device to be authenticated, wherein the authentication means determines whether or not the first value and the second value match in the authentication process. .

請求項4に記載の発明は、請求項1に記載の認証装置において、前記認証装置は、乱数を生成する乱数生成手段を更に備え、前記第1送信手段は、前記第3の前記インデックスと、前記乱数生成手段により生成された乱数とを含むチャレンジコマンドを前記被認証装置へ送信し、前記第3受信手段は、前記チャレンジコマンドに含まれる前記第3の前記インデックスに対応付けられている前記乱数が用いられて算出された値を暗号鍵として、前記チャレンジコマンドに含まれる前記乱数が暗号化されることにより算出された前記第2の値を含むレスポンスを当該被認証装置から受信し、前記認証手段は、前記認証処理において、前記第1の値を復号鍵として前記第2の値が復号された値と、前記乱数生成手段により生成された前記乱数とが一致するか否かを判定することを特徴とする。   According to a fourth aspect of the present invention, in the authentication device according to the first aspect, the authentication device further includes a random number generation unit that generates a random number, and the first transmission unit includes the third index. The challenge command including the random number generated by the random number generation means is transmitted to the device to be authenticated, and the third reception means is the random number associated with the third index included in the challenge command A response including the second value calculated by encrypting the random number included in the challenge command is received from the device to be authenticated using the value calculated by using the encryption key as an encryption key, and the authentication In the authentication process, the means uses a value obtained by decrypting the second value using the first value as a decryption key and the random number generated by the random number generating means. And judging whether or not to.

請求項5に記載の発明は、請求項1乃至4の何れか一項に記載の認証装置へ認証要求を送信する被認証装置であって、当該被認証装置と前記認証装置間で共有される乱数テーブルであって複数個の乱数と前記乱数ごとに一意のインデックスとを対応付けた前記乱数テーブルを記憶する第2記憶手段と、前記第2記憶手段に記憶されている前記乱数テーブルにおける所定数の前記インデックスを含む更新コマンドであって、当該所定数の前記インデックスの中の第1の前記インデックスに対応付けられている前記乱数を用いて算出される新たな乱数により、当該所定数の前記インデックスの中の第2の前記インデックスに対応付けられている前記乱数を更新させる更新コマンドを前記認証装置へ送信する第2送信手段と、前記第2記憶手段に記憶されている前記乱数テーブルにおいて前記第1の前記インデックスに対応付けられている前記乱数を用いて新たな乱数を算出し、当該算出した乱数により、前記第2記憶手段に記憶されている前記乱数テーブルにおいて前記第2の前記インデックスに対応付けられている前記乱数を更新する第2更新手段と、前記認証要求を前記認証装置へ送信する第3送信手段と、前記認証装置から前記チャレンジコマンドを受信する第4受信手段と、前記第4受信手段により受信された前記チャレンジコマンドに含まれる前記第3の前記インデックスに対応付けられている前記乱数を用いて前記第2の値を算出する第2算出手段と、前記第2算出手段により算出された前記第2の値を含むレスポンスを前記認証装置へ送信する第4送信手段と、を備えることを特徴とする。   The invention described in claim 5 is a device to be authenticated that transmits an authentication request to the authentication device according to any one of claims 1 to 4, and is shared between the device to be authenticated and the authentication device. A second storage means for storing a random number table in which a plurality of random numbers are associated with a unique index for each random number; and a predetermined number in the random number table stored in the second storage means Update command including the index, and the predetermined number of the indexes by a new random number calculated using the random number associated with the first index among the predetermined number of the indexes A second transmission unit that transmits an update command for updating the random number associated with the second index in the authentication unit to the authentication device; and a second storage unit that stores the update command. In the random number table, a new random number is calculated using the random number associated with the first index, and the random number table stored in the second storage unit by the calculated random number Receiving the challenge command from the authentication device, second update means for updating the random number associated with the second index, third transmission means for transmitting the authentication request to the authentication device, and Fourth receiving means and second calculating means for calculating the second value using the random number associated with the third index included in the challenge command received by the fourth receiving means And a fourth transmission means for transmitting a response including the second value calculated by the second calculation means to the authentication device. And wherein the door.

請求項6に記載の発明は、請求項5に記載の被認証装置において、前記第2算出手段は、前記チャレンジコマンドに含まれる前記第3の前記インデックスに対応付けられている前記乱数を用いて算出した値を暗号鍵として、前記チャレンジコマンドに含まれる前記乱数を暗号化することにより前記第2の値を算出することを特徴とする。   According to a sixth aspect of the present invention, in the authenticated device according to the fifth aspect, the second calculation means uses the random number associated with the third index included in the challenge command. The second value is calculated by encrypting the random number included in the challenge command using the calculated value as an encryption key.

請求項7に記載の発明は、被認証装置からの認証要求に応じて認証処理を実行する認証装置における認証方法であって、当該認証装置と前記被認証装置間で共有される乱数テーブルであって複数個の乱数と前記乱数ごとに一意のインデックスとを対応付けた前記乱数テーブルを第1記憶手段に記憶するステップと、前記第1記憶手段に記憶されている前記乱数テーブルにおける所定数の前記インデックスの中の第1の前記インデックスに対応付けられている前記乱数を用いて算出される新たな乱数により、当該所定数の前記インデックスの中の第2の前記インデックスに対応付けられている前記乱数を更新する前記被認証装置から、当該所定数の前記インデックスを含む更新コマンドを受信するステップと、前記受信された前記更新コマンドに含まれる前記所定数の前記インデックスの中の第1の前記インデックスに対応付けられている前記乱数を用いて新たな乱数を算出し、当該算出した乱数により、前記乱数テーブルにおいて当該所定数の前記インデックスの中の第2の前記インデックスに対応付けられている前記乱数を更新するステップと、前記被認証装置から認証要求を受信するステップと、前記受信された認証要求に応じて、前記第1記憶手段に記憶されている前記乱数テーブルにおける所定数の第3の前記インデックスを含むチャレンジコマンドを前記被認証装置へ送信するステップと、前記受信された認証要求に応じて、前記第1記憶手段に記憶されている前記乱数テーブルにおける前記第3の前記インデックスに対応付けられている前記乱数を用いて第1の値を算出するステップと、前記チャレンジコマンドに含まれる前記第3の前記インデックスに対応付けられている前記乱数が用いられて算出された第2の値を含むレスポンスを当該被認証装置から受信するステップと、前記算出された前記第1の値と、前記レスポンスに含まれる前記第2の値とを用いて、認証処理を実行するステップと、を含むことを特徴とする。   The invention according to claim 7 is an authentication method in an authentication apparatus that executes an authentication process in response to an authentication request from an apparatus to be authenticated, and is a random number table shared between the authentication apparatus and the apparatus to be authenticated. Storing the random number table in which a plurality of random numbers and a unique index for each random number are associated with each other in a first storage unit; and a predetermined number of the random number table stored in the first storage unit The random number associated with the second index in the predetermined number of indexes by a new random number calculated using the random number associated with the first index in the index Receiving an update command including the predetermined number of the indexes from the device to be authenticated, and the received update command A new random number is calculated using the random number associated with the first index among the predetermined number of the included indexes, and the predetermined number of the indexes in the random number table is calculated based on the calculated random number. Updating the random number associated with the second index in the list, receiving an authentication request from the device to be authenticated, and in response to the received authentication request, the first storage means A challenge command including a predetermined number of the third index in the random number table stored in the authentication table, and the first storage means in response to the received authentication request. A first value is calculated using the random number associated with the third index in the random number table. Receiving a response including a second value calculated using the random number associated with the third index included in the challenge command from the authenticated device; and A step of performing an authentication process using the calculated first value and the second value included in the response.

請求項8に記載の発明は、請求項7に記載の認証装置へ認証要求を送信する被認証装置における被認証方法であって、当該被認証装置と前記認証装置間で共有される乱数テーブルであって複数個の乱数と前記乱数ごとに一意のインデックスとを対応付けた前記乱数テーブルを第2記憶手段に記憶するステップと、前記第2記憶手段に記憶されている前記乱数テーブルにおける所定数の前記インデックスを含む更新コマンドであって、当該所定数の前記インデックスの中の第1の前記インデックスに対応付けられている前記乱数を用いて算出される新たな乱数により、当該所定数の前記インデックスの中の第2の前記インデックスに対応付けられている前記乱数を更新させる更新コマンドを前記認証装置へ送信するステップと、前記第2記憶手段に記憶されている前記乱数テーブルにおいて前記第1の前記インデックスに対応付けられている前記乱数を用いて新たな乱数を算出し、当該算出した乱数により、前記第2記憶手段に記憶されている前記乱数テーブルにおいて前記第2の前記インデックスに対応付けられている前記乱数を更新するステップと、前記認証要求を前記認証装置へ送信するステップと、前記認証装置から前記チャレンジコマンドを受信するステップと、前記受信された前記チャレンジコマンドに含まれる前記第3の前記インデックスに対応付けられている前記乱数を用いて前記第2の値を算出するステップと、前記算出された前記第2の値を含むレスポンスを前記認証装置へ送信するステップと、を含むことを特徴とする。   The invention described in claim 8 is an authenticated method in an authenticated apparatus that transmits an authentication request to the authenticated apparatus described in claim 7, and is a random number table shared between the authenticated apparatus and the authenticated apparatus. Storing the random number table in which a plurality of random numbers and a unique index for each random number are associated with each other in a second storage unit; and a predetermined number of the random number table stored in the second storage unit An update command including the index, and a new random number calculated using the random number associated with the first index among the predetermined number of the indexes. Transmitting an update command for updating the random number associated with the second index in the authentication device to the authentication device; and In the random number table stored in the table, a new random number is calculated using the random number associated with the first index, and the calculated random number is stored in the second storage unit. Updating the random number associated with the second index in a random number table; transmitting the authentication request to the authentication device; receiving the challenge command from the authentication device; Calculating the second value using the random number associated with the third index included in the received challenge command; and a response including the calculated second value. And transmitting to the authentication device.

請求項9に記載の発明は、被認証装置からの認証要求に応じて認証処理を実行するコンピュータに、当該認証装置と前記被認証装置間で共有される乱数テーブルであって複数個の乱数と前記乱数ごとに一意のインデックスとを対応付けた前記乱数テーブルを第1記憶手段に記憶するステップと、前記第1記憶手段に記憶されている前記乱数テーブルにおける所定数の前記インデックスの中の第1の前記インデックスに対応付けられている前記乱数を用いて算出される新たな乱数により、当該所定数の前記インデックスの中の第2の前記インデックスに対応付けられている前記乱数を更新する前記被認証装置から、当該所定数の前記インデックスを含む更新コマンドを受信するステップと、前記受信された前記更新コマンドに含まれる前記所定数の前記インデックスの中の第1の前記インデックスに対応付けられている前記乱数を用いて新たな乱数を算出し、当該算出した乱数により、前記乱数テーブルにおいて当該所定数の前記インデックスの中の第2の前記インデックスに対応付けられている前記乱数を更新するステップと、前記被認証装置から認証要求を受信するステップと、前記受信された認証要求に応じて、前記第1記憶手段に記憶されている前記乱数テーブルにおける所定数の第3の前記インデックスを含むチャレンジコマンドを前記被認証装置へ送信するステップと、前記受信された認証要求に応じて、前記第1記憶手段に記憶されている前記乱数テーブルにおける前記第3の前記インデックスに対応付けられている前記乱数を用いて第1の値を算出するステップと、前記チャレンジコマンドに含まれる前記第3の前記インデックスに対応付けられている前記乱数が用いられて算出された第2の値を含むレスポンスを当該被認証装置から受信するステップと、前記算出された前記第1の値と、前記レスポンスに含まれる前記第2の値とを用いて、認証処理を実行するステップと、を実行させることを特徴とする。   According to a ninth aspect of the present invention, there is provided a random number table shared between the authentication device and the device to be authenticated, the computer executing authentication processing in response to an authentication request from the device to be authenticated, and a plurality of random numbers, Storing the random number table in which a unique index is associated with each random number in a first storage unit; and a first of a predetermined number of the indexes in the random number table stored in the first storage unit Updating the random number associated with the second index among the predetermined number of the indexes with a new random number calculated using the random number associated with the index Receiving an update command including the predetermined number of the indexes from an apparatus; and the predetermined command included in the received update command. A new random number is calculated using the random number associated with the first index in the index, and a second of the predetermined number of the indexes in the random number table is calculated based on the calculated random number. Updating the random number associated with the index, receiving an authentication request from the device to be authenticated, and being stored in the first storage unit in response to the received authentication request Transmitting a challenge command including a predetermined number of third indexes in the random number table to the device to be authenticated; and the random number table stored in the first storage unit in response to the received authentication request Calculating a first value using the random number associated with the third index in Receiving a response including a second value calculated using the random number associated with the third index included in the challenge command from the device to be authenticated, and the calculated And executing an authentication process using the first value and the second value included in the response.

請求項10に記載の発明は、請求項9に記載の認証装置へ認証要求を送信するコンピュータに、当該被認証装置と前記認証装置間で共有される乱数テーブルであって複数個の乱数と前記乱数ごとに一意のインデックスとを対応付けた前記乱数テーブルを第2記憶手段に記憶するステップと、前記第2記憶手段に記憶されている前記乱数テーブルにおける所定数の前記インデックスを含む更新コマンドであって、当該所定数の前記インデックスの中の第1の前記インデックスに対応付けられている前記乱数を用いて算出される新たな乱数により、当該所定数の前記インデックスの中の第2の前記インデックスに対応付けられている前記乱数を更新させる更新コマンドを前記認証装置へ送信するステップと、前記第2記憶手段に記憶されている前記乱数テーブルにおいて前記第1の前記インデックスに対応付けられている前記乱数を用いて新たな乱数を算出し、当該算出した乱数により、前記第2記憶手段に記憶されている前記乱数テーブルにおいて前記第2の前記インデックスに対応付けられている前記乱数を更新するステップと、前記認証要求を前記認証装置へ送信するステップと、前記認証装置から前記チャレンジコマンドを受信するステップと、前記受信された前記チャレンジコマンドに含まれる前記第3の前記インデックスに対応付けられている前記乱数を用いて前記第2の値を算出するステップと、前記算出された前記第2の値を含むレスポンスを前記認証装置へ送信するステップと、を実行させることを特徴とする。   According to a tenth aspect of the present invention, there is provided a random number table shared between the authentication target device and the authentication device to a computer that transmits an authentication request to the authentication device according to the ninth aspect. Storing the random number table in which a unique index is associated with each random number in a second storage unit, and an update command including a predetermined number of the indexes in the random number table stored in the second storage unit. Then, the new random number calculated using the random number associated with the first index in the predetermined number of indexes is used as the second index in the predetermined number of indexes. A step of transmitting an update command for updating the associated random number to the authentication device; and before storing the random number in the second storage means A new random number is calculated using the random number associated with the first index in the random number table, and the second random number table stored in the second storage unit is calculated based on the calculated random number. Updating the random number associated with the index, transmitting the authentication request to the authentication device, receiving the challenge command from the authentication device, and the received challenge command A step of calculating the second value using the random number associated with the third index included in and transmitting a response including the calculated second value to the authentication device. And executing the step.

本発明によれば、同一のチャレンジに対するレスポンスを異ならせることができ、攻撃者がチャレンジとレスポンスの対を蓄積したとしても、当該蓄積された情報に基づきチャレンジに対応するレスポンスが特定されることを防ぐことができ、成りすまし等に対する安全性を向上させることができる。   According to the present invention, responses to the same challenge can be made different, and even if an attacker accumulates a challenge-response pair, a response corresponding to the challenge is specified based on the accumulated information. It can prevent, and the safety | security with respect to impersonation etc. can be improved.

(A)は、データ通信システムSの概要構成例を示す図であり、(B)は、通信装置Tnの概要構成例を示す図である。(A) is a figure which shows the example of a schematic structure of the data communication system S, (B) is a figure which shows the example of a schematic structure of the communication apparatus Tn. 乱数テーブルの一例を示す図である。It is a figure which shows an example of a random number table. 通信装置T1と通信装置T2とで行われる乱数テーブル更新処理の一例を示すシーケンス図である。It is a sequence diagram which shows an example of the random number table update process performed with communication apparatus T1 and communication apparatus T2. 実施例1において、通信装置T1と通信装置T2とで行われるチャレンジ/レスポンス処理の一例を示すシーケンス図である。In Example 1, it is a sequence diagram which shows an example of the challenge / response process performed by communication apparatus T1 and communication apparatus T2. 実施例2において、通信装置T1と通信装置T2とで行われるチャレンジ/レスポンス処理の一例を示すシーケンス図である。In Example 2, it is a sequence diagram which shows an example of the challenge / response process performed by communication apparatus T1 and communication apparatus T2. 実施例3において、通信装置T1と通信装置T2とで行われるチャレンジ/レスポンス処理の一例を示すシーケンス図である。In Example 3, it is a sequence diagram which shows an example of the challenge / response process performed by communication apparatus T1 and communication apparatus T2.

以下、図面を参照して本発明の実施形態について詳細に説明する。なお、以下に説明する実施形態は、データ通信システムに対して本発明を適用した場合の実施形態である。   Hereinafter, embodiments of the present invention will be described in detail with reference to the drawings. The embodiment described below is an embodiment when the present invention is applied to a data communication system.

先ず、図1を参照して、データ通信システムSの概要構成及び機能について説明する。図1(A)は、データ通信システムSの概要構成例を示す図であり、図1(B)は、通信装置Tnの概要構成例を示す図である。   First, a schematic configuration and functions of the data communication system S will be described with reference to FIG. FIG. 1A is a diagram illustrating a schematic configuration example of the data communication system S, and FIG. 1B is a diagram illustrating a schematic configuration example of the communication device Tn.

図1(A)に示すように、データ通信システムSは、複数の通信装置(エンティティ)Tn(n=1,2,3・・・k)を備えて構成されている。このようなデータ通信システムSでは、通信ネットワークNWを介して、通信装置Tn間でM2M(Machine to Machine)の通信が可能になっている。通信装置Tnの例としては、サーバ、パーソナルコンピュータ、携帯電話機、スマートフォン等の携帯端末、ICカード、センサー機器、アクチュエーター機器、ゲーム機等が挙げられる。センサー機器は、例えば、温度、湿度、照度、振動、電力、または歪み等のセンサーを搭載した通信機器である。アクチュエーター機器は、表示板、照明、ブザー、またはリレー等を搭載した通信機器である。通信ネットワークNWには、例えば、Bluetooth(登録商標)、UWB(ultra wideband)、PAN(personal area network)、インターネット、IoT(Internet of Things)、センサーネットワーク、移動体通信網等が該当する。通信ネットワークNWは、例えば、各場所で複数の通信方式を組み合わせて構成されてもよい。例えば、サーバと携帯電話機とは、インターネット、ゲートウエイ、及び移動体通信網を介して通信を行う。また、例えば、センサー機器とアクチュエーター機器とは、PANを介して近距離無線通信を行う。   As shown in FIG. 1A, the data communication system S includes a plurality of communication devices (entities) Tn (n = 1, 2, 3,... K). In such a data communication system S, M2M (Machine to Machine) communication is possible between the communication devices Tn via the communication network NW. Examples of the communication device Tn include a server, a personal computer, a mobile phone, a mobile terminal such as a smartphone, an IC card, a sensor device, an actuator device, and a game machine. The sensor device is a communication device equipped with a sensor such as temperature, humidity, illuminance, vibration, power, or strain. The actuator device is a communication device equipped with a display board, lighting, buzzer, relay, or the like. Examples of the communication network NW include Bluetooth (registered trademark), UWB (ultra wideband), PAN (personal area network), the Internet, IoT (Internet of Things), sensor network, mobile communication network, and the like. The communication network NW may be configured by combining a plurality of communication methods at each location, for example. For example, the server and the mobile phone communicate with each other via the Internet, gateway, and mobile communication network. Further, for example, the sensor device and the actuator device perform short-range wireless communication via the PAN.

図1(B)に示すように、通信装置Tnは、CPU(Central Processing Unit)10、コプロセッサ11、記憶部12、センサー部13、I/F部14、及び通信部15等を備えて構成される。なお、全ての通信装置Tnの構成が同一である必要はなく、異なっていてもよい。例えば、通信装置T1にはセンサー部13がある構成とし、通信装置T2にはセンサー部13がない構成としてもよい。以下の実施形態においては、通信装置T1を被認証装置(例えば、携帯端末)とし、通信装置T2を認証装置(例えば、サーバ)として説明する。   As shown in FIG. 1B, the communication device Tn includes a CPU (Central Processing Unit) 10, a coprocessor 11, a storage unit 12, a sensor unit 13, an I / F unit 14, a communication unit 15, and the like. Is done. Note that the configurations of all the communication devices Tn do not have to be the same and may be different. For example, the communication device T1 may be configured with the sensor unit 13, and the communication device T2 may be configured without the sensor unit 13. In the following embodiments, the communication device T1 will be described as an authenticated device (for example, a portable terminal), and the communication device T2 will be described as an authentication device (for example, a server).

CPU10は、本発明におけるコンピュータの一例である。コプロセッサ11は、暗号鍵(復号鍵)を用いて暗号化処理及び復号処理を実行する。センサー部13は、例えば、温度、湿度、照度、振動、電力、または歪み等のセンサーを備える。I/F部14は、通信装置Tnの周辺機器と接続するためのインターフェースである。通信部15は、CPU10の制御の下、通信ネットワークNWを介して通信相手と通信を行うためのものである。通信装置T2の記憶部12は、第1記憶手段の一例であり、通信装置T1の記憶部12は、第2記憶手段の一例である。記憶部12は、ROM(Read Only Memory)、RAM(Random Access Memory)、不揮発性メモリ(例えば、フラッシュメモリ)等を備える。なお、記憶部12は、不揮発性メモリの代わりに、HDD(Hard Disk Drive)、またはSSD(Solid State Drive)を備える場合もある。   The CPU 10 is an example of a computer in the present invention. The coprocessor 11 executes encryption processing and decryption processing using an encryption key (decryption key). The sensor unit 13 includes a sensor such as temperature, humidity, illuminance, vibration, power, or strain. The I / F unit 14 is an interface for connecting to peripheral devices of the communication device Tn. The communication unit 15 is for communicating with a communication partner via the communication network NW under the control of the CPU 10. The storage unit 12 of the communication device T2 is an example of a first storage unit, and the storage unit 12 of the communication device T1 is an example of a second storage unit. The storage unit 12 includes a ROM (Read Only Memory), a RAM (Random Access Memory), a nonvolatile memory (for example, a flash memory), and the like. The storage unit 12 may include a hard disk drive (HDD) or a solid state drive (SSD) instead of the nonvolatile memory.

記憶部12には、CPU10、及びコプロセッサ11に実行させるプログラム、及び各種データが記憶されている。通信装置T2の記憶部12に記憶されるプログラムには、CPU10に実行させる認証処理プログラムが含まれる。通信装置T1の記憶部12に記憶されるプログラムには、CPU10に実行させる被認証処理プログラムが含まれる。また、通信装置T1及び通信装置T2の記憶部12に記憶されるプログラムには、コプロセッサ11に実行させる暗号化処理を規定する暗号化処理プログラム、及びコプロセッサ11に実行させる復号処理を規定する復号処理プログラムが含まれる。また、通信装置T1及び通信装置T2の記憶部12には、セキュアな記憶領域が設けられており、この記憶領域には、乱数テーブルが記憶される。乱数テーブルは、複数個の乱数と乱数ごとに一意のインデックス(例えば、自然数)とを対応付けたテーブルである。乱数テーブルは、通信装置T1及び通信装置T2との間で共有されるべきものである。   The storage unit 12 stores programs to be executed by the CPU 10 and the coprocessor 11 and various data. The program stored in the storage unit 12 of the communication device T2 includes an authentication processing program to be executed by the CPU 10. The program stored in the storage unit 12 of the communication device T1 includes an authentication processing program to be executed by the CPU 10. In addition, the programs stored in the storage unit 12 of the communication device T1 and the communication device T2 define an encryption processing program that defines an encryption process to be executed by the coprocessor 11 and a decryption process to be executed by the coprocessor 11. A decryption processing program is included. The storage unit 12 of the communication device T1 and the communication device T2 is provided with a secure storage area, and a random number table is stored in this storage area. The random number table is a table in which a plurality of random numbers and unique indexes (for example, natural numbers) are associated with each random number. The random number table is to be shared between the communication device T1 and the communication device T2.

図2は、乱数テーブルの一例を示す図である。図2の例では、乱数(乱数値)をRn等の文字で表現しているが、実際には、乱数は、例えば、CPU10上の数値表現(0と1)からなる128ビットの値である。乱数テーブルは、例えば通信装置Tnの製造時に予め記憶部12に記憶される。この構成では、乱数自体が、通信ネットワークNWを介して通信装置Tn間でやり取りされないので、セキュリティを向上させることができる。   FIG. 2 is a diagram illustrating an example of a random number table. In the example of FIG. 2, the random number (random number value) is expressed by a character such as Rn. However, in actuality, the random number is a 128-bit value composed of a numerical expression (0 and 1) on the CPU 10, for example. . The random number table is stored in advance in the storage unit 12 when the communication device Tn is manufactured, for example. In this configuration, since the random number itself is not exchanged between the communication devices Tn via the communication network NW, security can be improved.

或いは、乱数テーブルは、例えば通信装置Tnの製造時に記憶部12に記憶させず、通信装置Tnの出荷後、互いに通信を行う通信装置T1と通信装置T2とがそれぞれで生成した乱数及びインデックスを通信相手に送信することで、乱数テーブルを生成するように構成してもよい。例えば、通信装置T1と通信装置T2とが通信を行う場合、初めに、通信装置T1と通信装置T2とは、それぞれ、空の乱数テーブルを記憶部12に生成する。そして、先ず、通信装置T1は、乱数生成器により乱数R1を生成し、生成した乱数R1とインデックス1とを対応付けて通信装置T2へ送信し、且つ、生成した乱数R1とインデックス1とを対応付けて乱数テーブルに登録する。次に、通信装置T2は、通信装置T1から受信した乱数R1とインデックス1とを対応付けて乱数テーブルに登録する。そして、通信装置T2は、乱数生成器により乱数R2を生成し、生成した乱数R2とインデックス2とを対応付けて通信装置T1へ送信し、且つ、生成した乱数R2とインデックス2とを対応付けて乱数テーブルに登録する。次に、通信装置T1は、通信装置T2から受信した乱数R2とインデックス2とを対応付けて乱数テーブルに登録する。このような処理が繰り返し交互に行われる(インデックス3〜nまで)ことで、図2に示すような乱数テーブルが完成する。この構成では、通信装置T1と通信装置T2との間で固有の乱数テーブル(つまり、実際に通信を行う認証装置と被認証装置間で固有の乱数テーブル)を生成することができる。   Alternatively, the random number table is not stored in the storage unit 12 when the communication device Tn is manufactured, for example, and the communication device T1 and the communication device T2 that communicate with each other after the communication device Tn is shipped communicate the random numbers and indexes respectively generated You may comprise so that a random number table may be produced | generated by transmitting to an other party. For example, when the communication device T1 and the communication device T2 perform communication, first, the communication device T1 and the communication device T2 each generate an empty random number table in the storage unit 12. First, the communication device T1 generates a random number R1 by a random number generator, associates the generated random number R1 with the index 1, and transmits the generated random number R1 to the communication device T2, and associates the generated random number R1 with the index 1. And register it in the random number table. Next, the communication device T2 associates the random number R1 received from the communication device T1 with the index 1 and registers them in the random number table. Then, the communication device T2 generates a random number R2 using a random number generator, associates the generated random number R2 with the index 2, and transmits the generated random number R2 to the communication device T1, and associates the generated random number R2 with the index 2. Register in the random number table. Next, the communication device T1 registers the random number R2 received from the communication device T2 and the index 2 in the random number table in association with each other. Such processing is repeatedly and alternately performed (indexes 3 to n), thereby completing the random number table as shown in FIG. With this configuration, it is possible to generate a unique random number table (that is, a unique random number table between the authenticating device and the device to be authenticated) between the communication device T1 and the communication device T2.

そして、通信装置T1のCPU10は、本発明の被認証処理プログラムに従って、乱数テーブル更新処理、及びチャレンジ/レスポンス処理を実行する。通信装置T1のCPU10は、乱数テーブル更新処理において、第2送信手段、及び第2更新手段等として機能する。一方、通信装置T2のCPU10は、本発明の認証処理プログラムに従って、乱数テーブル更新処理、及びチャレンジ/レスポンス処理を実行する。通信装置T2のCPU10は、乱数テーブル更新処理において、第1受信手段、及び第1更新手段等として機能する。具体的には、例えば、通信装置T1のCPU10は、乱数テーブル更新処理において、記憶部12に記憶されている乱数テーブルにおける所定数(例えば、2個以上の任意個)のインデックスを含む乱数テーブル更新コマンド(更新コマンドの一例)を通信装置T2へ送信する。この乱数テーブル更新コマンドは、上記所定数のインデックスの中の第1のインデックスに対応付けられている乱数を用いて算出される新たな乱数により、当該所定数のインデックスの中の第2のインデックスに対応付けられている乱数を更新させるコマンドである。また、通信装置T1のCPU10は、乱数テーブル更新処理において、記憶部12に記憶されている乱数テーブルにおいて第1のインデックスに対応付けられている乱数を用いて新たな乱数を算出し、当該算出した乱数により、記憶部12に記憶されている乱数テーブルにおいて第2のインデックスに対応付けられている乱数を更新する。一方、例えば、通信装置T2のCPU10は、乱数テーブル更新処理において、通信装置T1から受信された乱数テーブル更新コマンドに含まれる上記所定数のインデックスの中の第1のインデックスに対応付けられている乱数を用いて新たな乱数を算出し、当該算出した乱数により、記憶部12に記憶されている乱数テーブルにおいて当該所定数のインデックスの中の第2のインデックスに対応付けられている乱数を更新する。これにより、通信装置T1と通信装置T2との間で、乱数テーブルの共有化が行われる。   And CPU10 of communication apparatus T1 performs a random number table update process and a challenge / response process according to the to-be-authenticated process program of this invention. The CPU 10 of the communication device T1 functions as a second transmission unit, a second update unit, and the like in the random number table update process. On the other hand, the CPU 10 of the communication device T2 executes random number table update processing and challenge / response processing in accordance with the authentication processing program of the present invention. The CPU 10 of the communication device T2 functions as a first reception unit, a first update unit, and the like in the random number table update process. Specifically, for example, the CPU 10 of the communication device T1 updates the random number table including a predetermined number (for example, two or more arbitrary) indexes in the random number table stored in the storage unit 12 in the random number table updating process. A command (an example of an update command) is transmitted to the communication device T2. This random number table update command uses the new random number calculated using the random number associated with the first index in the predetermined number of indexes to the second index in the predetermined number of indexes. This command updates the associated random number. Further, in the random number table update process, the CPU 10 of the communication device T1 calculates a new random number using the random number associated with the first index in the random number table stored in the storage unit 12, and calculates the calculated random number. The random number associated with the second index in the random number table stored in the storage unit 12 is updated with the random number. On the other hand, for example, the CPU 10 of the communication device T2 in the random number table update process, the random number associated with the first index among the predetermined number of indexes included in the random number table update command received from the communication device T1. Is used to calculate a new random number, and the random number associated with the second index among the predetermined number of indexes in the random number table stored in the storage unit 12 is updated with the calculated random number. As a result, the random number table is shared between the communication device T1 and the communication device T2.

また、通信装置T1のCPU10は、チャレンジ/レスポンス処理において、第3送信手段、第4受信手段、第2算出手段、及び第4送信手段等として機能する。一方、通信装置T2のCPU10は、チャレンジ/レスポンス処理において、第1送信手段、第1算出手段、第2受信手段、第3受信手段、認証手段、及び乱数生成手段等として機能する。具体的には、例えば、通信装置T1のCPU10は、チャレンジ/レスポンス処理において、認証要求(例えば、ログインコマンド等)を通信装置T2へ送信する。一方、例えば、通信装置T2のCPU10は、チャレンジ/レスポンス処理において、通信装置T1から受信された認証要求に応じて、記憶部12に記憶されている乱数テーブルにおける所定数(例えば、1個以上の任意個)の第3のインデックスを含むチャレンジコマンドを通信装置T2へ送信する。また、通信装置T2のCPU10は、通信装置T1から受信された認証要求に応じて、記憶部12に記憶されている乱数テーブルにおける上記第3のインデックスに対応付けられている乱数を用いてチャレンジ値(第1の値の一例)を算出する。一方、通信装置T1のCPU10は、通信装置T2から受信されたチャレンジコマンドに含まれる上記第3のインデックスに対応付けられている乱数を用いてレスポンス値(第2の値の一例)を算出する。そして、通信装置T1のCPU10は、算出したレスポンス値を含むレスポンスを通信装置T2へ送信する。一方、通信装置T2のCPU10は、通信装置T2から受信されたレスポンスに含まれるレスポンス値と、上記算出されたチャレンジ値とを用いて、認証処理を実行する。この認証処理において、例えば、レスポンス値とチャレンジ値とが一致するか否かが判定され、一致する場合には認証成功となり、一致しない場合には認証失敗となる。   The CPU 10 of the communication device T1 functions as a third transmission unit, a fourth reception unit, a second calculation unit, a fourth transmission unit, and the like in the challenge / response process. On the other hand, in the challenge / response process, the CPU 10 of the communication device T2 functions as a first transmission unit, a first calculation unit, a second reception unit, a third reception unit, an authentication unit, a random number generation unit, and the like. Specifically, for example, the CPU 10 of the communication device T1 transmits an authentication request (for example, a login command) to the communication device T2 in the challenge / response process. On the other hand, for example, in the challenge / response process, the CPU 10 of the communication device T2 responds to the authentication request received from the communication device T1, and determines a predetermined number (for example, one or more) in the random number table stored in the storage unit 12. An arbitrary number of challenge commands including the third index are transmitted to the communication device T2. In addition, the CPU 10 of the communication device T2 uses the random number associated with the third index in the random number table stored in the storage unit 12 in response to the authentication request received from the communication device T1. (Example of first value) is calculated. On the other hand, the CPU 10 of the communication device T1 calculates a response value (an example of a second value) using a random number associated with the third index included in the challenge command received from the communication device T2. Then, the CPU 10 of the communication device T1 transmits a response including the calculated response value to the communication device T2. On the other hand, the CPU 10 of the communication device T2 executes an authentication process using the response value included in the response received from the communication device T2 and the calculated challenge value. In this authentication process, for example, it is determined whether or not the response value and the challenge value match. If they match, authentication succeeds, and if they do not match, authentication fails.

次に、データ通信システムSの動作について、実施例1〜実施例3に分けて説明する。なお、以下の動作の前提として、通信装置T1(被認証装置)と通信装置T2(認証装置)には、同一の乱数テーブルが記憶されているものとする。
(実施例1)
Next, the operation of the data communication system S will be described separately in the first to third embodiments. As a premise of the following operation, it is assumed that the same random number table is stored in the communication device T1 (authenticated device) and the communication device T2 (authentication device).
Example 1

先ず、図3及び図4を参照して、実施例1について説明する。図3は、通信装置T1と通信装置T2とで行われる乱数テーブル更新処理の一例を示すシーケンス図である。図4は、実施例1において、通信装置T1と通信装置T2とで行われるチャレンジ/レスポンス処理の一例を示すシーケンス図である。   First, Example 1 is demonstrated with reference to FIG.3 and FIG.4. FIG. 3 is a sequence diagram illustrating an example of a random number table update process performed by the communication device T1 and the communication device T2. FIG. 4 is a sequence diagram illustrating an example of challenge / response processing performed by the communication device T1 and the communication device T2 in the first embodiment.

図3に示す例では、通信装置T1から乱数テーブル更新処理が開始される。なお、乱数テーブル更新処理は、例えば、定期的(例えば、3日間隔)、または不定期(例えば、通信装置T1の電源オンのタイミング)に実行される。   In the example shown in FIG. 3, the random number table update process is started from the communication device T1. Note that the random number table update process is executed, for example, periodically (for example, at intervals of 3 days) or irregularly (for example, timing for turning on the communication device T1).

乱数テーブル更新処理が開始されると、通信装置T1のCPU10は、乱数テーブル更新コマンドRUpdate(n,k,l)を生成する(ステップS1)。ここで、n,k,lは、通信装置T2へ渡す引数であり、記憶部12に記憶されている乱数テーブルにおける所定数のインデックスに相当する。また、この例では、“n”は、上述した第2のインデックスに相当し、“k”及び“l”は、第1のインデックスに相当する。なお、RUpdateの引数として決定される第1のインデックスは、3個以上であってもよい。また、n,k,lは、例えば、乱数により任意に決定(例えば、n=1,k=2,l=4、或いは、n=4,k=1,l=2のように決定)される。或いは、n,k,lは、登録順に決定されてもよい。   When the random number table update process is started, the CPU 10 of the communication device T1 generates a random number table update command RUpdate (n, k, l) (step S1). Here, n, k, and l are arguments passed to the communication device T2, and correspond to a predetermined number of indexes in the random number table stored in the storage unit 12. In this example, “n” corresponds to the above-described second index, and “k” and “l” correspond to the first index. The first index determined as an argument of RUpdate may be 3 or more. Also, n, k, l are arbitrarily determined by random numbers, for example (for example, n = 1, k = 2, l = 4 or n = 4, k = 1, l = 2). The Alternatively, n, k, and l may be determined in the order of registration.

次いで、通信装置T1のCPU10は、ステップS1で生成した乱数テーブル更新コマンドRUpdate(n,k,l)を、通信部15及び通信ネットワークNWを介して、通信装置T2へ送信する(ステップS2)。次いで、通信装置T1のCPU10は、インデックスkに対応付けられている乱数Rkと、インデックスlに対応付けられている乱数Rlとを用いて、インデックスnに対応付けるための新たな乱数Rnを算出する(ステップS3)。新たな乱数Rnは、例えば、下記(1)式により算出される。   Next, the CPU 10 of the communication device T1 transmits the random number table update command RUpdate (n, k, l) generated in step S1 to the communication device T2 via the communication unit 15 and the communication network NW (step S2). Next, the CPU 10 of the communication device T1 calculates a new random number Rn to be associated with the index n using the random number Rk associated with the index k and the random number Rl associated with the index l ( Step S3). The new random number Rn is calculated by the following equation (1), for example.

Rn := Rk xor Rl・・・(1)   Rn: = Rk xor Rl (1)

ここで、“xor”は、排他的論理和を表す。また、“(左辺):=(右辺)”は、右辺の計算結果を左辺に代入することを表す。つまり、上記(1)式では、RkとRlとの排他的論理和がRnになる。なお、新たな乱数Rnを、他の算出方法で算出してもよい。例えば、生成される乱数を固定長(例えば、128ビット)としておき、Rk とRlとを乗算した結果の上位128ビットを、新たな乱数Rnとしてもよい。   Here, “xor” represents exclusive OR. Further, “(left side): = (right side)” represents that the calculation result of the right side is substituted into the left side. That is, in the above equation (1), the exclusive OR of Rk and Rl is Rn. The new random number Rn may be calculated by other calculation methods. For example, the generated random number may have a fixed length (for example, 128 bits), and the higher 128 bits obtained by multiplying Rk and Rl may be used as a new random number Rn.

次いで、通信装置T1のCPU10は、ステップS3で算出した新たな乱数Rnにより、通信装置T1の記憶部12に記憶されている乱数テーブルにおいてインデックスnに対応付けられている乱数Rnを更新(変更)する(ステップS4)。   Next, the CPU 10 of the communication device T1 updates (changes) the random number Rn associated with the index n in the random number table stored in the storage unit 12 of the communication device T1 with the new random number Rn calculated in step S3. (Step S4).

一方、通信装置T2のCPU10は、通信装置T1から送信された乱数テーブル更新コマンドRUpdate(n,k,l)を受信すると、乱数テーブル更新コマンドRUpdate(n,k,l)が示すインデックスkに対応付けられている乱数Rkと、インデックスlに対応付けられている乱数Rlとを用いて、通信装置T1と同一の算出方法(例えば、上記(1)式)により、インデックスnに対応付けるための新たな乱数Rnを算出する(ステップS11)。   On the other hand, when the CPU 10 of the communication device T2 receives the random number table update command RUpdate (n, k, l) transmitted from the communication device T1, it corresponds to the index k indicated by the random number table update command RUpdate (n, k, l). Using the random number Rk attached and the random number Rl associated with the index l, a new method for associating with the index n by the same calculation method as the communication device T1 (for example, the above equation (1)) A random number Rn is calculated (step S11).

次いで、通信装置T2のCPU10は、ステップS11で算出した新たな乱数Rnにより、通信装置T2の記憶部12に記憶されている乱数テーブルにおいてインデックスnに対応付けられている乱数Rnを更新(変更)する(ステップS12)。   Next, the CPU 10 of the communication device T2 updates (changes) the random number Rn associated with the index n in the random number table stored in the storage unit 12 of the communication device T2 with the new random number Rn calculated in step S11. (Step S12).

次いで、通信装置T2のCPU10は、更新完了メッセージを、通信部15及び通信ネットワークNWを介して、通信装置T1へ送信する(ステップS13)。一方、通信装置T1のCPU10は、通信装置T2から送信された更新完了メッセージを受信すると、確認回答メッセージを通信装置T2へ返信する(ステップS5)。   Next, the CPU 10 of the communication device T2 transmits an update completion message to the communication device T1 via the communication unit 15 and the communication network NW (step S13). On the other hand, when receiving the update completion message transmitted from the communication device T2, the CPU 10 of the communication device T1 returns a confirmation response message to the communication device T2 (step S5).

次に、図4に示す例では、通信装置T1からチャレンジ/レスポンス処理が開始される。チャレンジ/レスポンス処理は、例えば、通信装置T1のユーザである被認証者からの例えばログイン指示に応じて開始される。   Next, in the example shown in FIG. 4, challenge / response processing is started from the communication device T1. The challenge / response process is started in response to, for example, a login instruction from an authenticated person who is a user of the communication device T1.

チャレンジ/レスポンス処理が開始されると、通信装置T1のCPU10は、認証要求(例えば、ログインコマンド等)を、通信部15及び通信ネットワークNWを介して、通信装置T2へ送信する(ステップS21)。   When the challenge / response process is started, the CPU 10 of the communication device T1 transmits an authentication request (for example, a login command) to the communication device T2 via the communication unit 15 and the communication network NW (step S21).

一方、通信装置T2のCPU10は、通信装置T1から送信された認証要求を受信すると、記憶部12に記憶されている乱数テーブルにおける所定数の第3のインデックスを含むチャレンジコマンドChallenge(k,-l,m)を生成する(ステップS31)。ここで、k,-l,mは、通信装置T1へ渡す引数であり、記憶部12に記憶されている乱数テーブルにおける第3のインデックスに相当する。また、“-l”における“-”は、暗号鍵の安全性を向上させるために否定演算子を用いることを示す。“-l”に代えて“l”であってもよい。なお、Challengeにおける引数として決定されるインデックスは、3個以上であってもよい。また、k,l,mは、例えば、乱数により任意に決定されるか、或いは登録順に決定される。   On the other hand, when the CPU 10 of the communication device T2 receives the authentication request transmitted from the communication device T1, the challenge command Challenge (k, -l) including a predetermined number of third indexes in the random number table stored in the storage unit 12 is received. , m) is generated (step S31). Here, k, -l, m are arguments passed to the communication device T1, and correspond to the third index in the random number table stored in the storage unit 12. In addition, “-” in “-l” indicates that a negation operator is used to improve the security of the encryption key. “L” may be used instead of “-l”. The number of indexes determined as arguments in the challenge may be three or more. In addition, k, l, and m are arbitrarily determined by random numbers, for example, or determined in the order of registration.

次いで、通信装置T2のCPU10は、ステップS31で生成したチャレンジコマンドChallenge(k,-l,m)を、通信部15及び通信ネットワークNWを介して、通信装置T1へ送信する(ステップS32)。   Next, the CPU 10 of the communication device T2 transmits the challenge command Challenge (k, -l, m) generated in step S31 to the communication device T1 via the communication unit 15 and the communication network NW (step S32).

次いで、通信装置T2のCPU10は、インデックスkに対応付けられている乱数Rkと、インデックスlに対応付けられている乱数Rl(“l”に“-”が付加されているので、¬Rlが用いられる)と、インデックスmに対応付けられている乱数Rmとを用いてチャレンジ値Vを算出する(ステップS33)。チャレンジ値Vは、例えば、下記(2)式により算出される。   Next, the CPU 10 of the communication device T2 uses the random number Rk associated with the index k and the random number Rl associated with the index l (“−” is added to “l”, so that ¬Rl is used. The challenge value V is calculated using the random number Rm associated with the index m (step S33). The challenge value V is calculated by the following equation (2), for example.

V := Rk xor ¬Rl xor Rm・・・(2)   V: = Rk xor ¬ Rl xor Rm (2)

ここで、“¬”は、否定演算子を表す。すなわち、¬Rlは、CPU10上の数値表現では全ビットの反転を意味する。上記(2)式では、Rkと¬RlとRmとの排他的論理和がVになる。なお、チャレンジ値Vを、他の算出方法で算出してもよい。例えば、生成される乱数を固定長としておき、Rkと¬RlとRmとを乗算した結果の上位固定長ビットを、チャレンジ値Vとしてもよい。   Here, “¬” represents a negation operator. That is, ¬Rl means inversion of all bits in the numerical expression on the CPU 10. In the above equation (2), the exclusive OR of Rk, ¬Rl, and Rm is V. The challenge value V may be calculated by another calculation method. For example, a random number to be generated may be set to a fixed length, and a higher fixed length bit obtained by multiplying Rk, ¬Rl, and Rm may be used as the challenge value V.

一方、通信装置T1のCPU10は、通信装置T2から送信されたチャレンジコマンドChallenge(k,-l,m)を受信すると、チャレンジコマンドChallenge(k,-l,m)が示すインデックスkに対応付けられている乱数Rkと、インデックスlに対応付けられている乱数Rlの反転値¬Rlと、インデックスmに対応付けられている乱数Rmとを用いて、通信装置T2と同一の算出方法(例えば、上記(2)式)により、レスポンス値Resを算出する(ステップS22)。   On the other hand, when the CPU 10 of the communication device T1 receives the challenge command Challenge (k, -l, m) transmitted from the communication device T2, it is associated with the index k indicated by the challenge command Challenge (k, -l, m). Using the same calculation method as the communication device T2 (for example, the above-described random number Rk, the inverted value ¬R1 of the random number Rl associated with the index l, and the random number Rm associated with the index m). The response value Res is calculated by (Expression (2)) (step S22).

次いで、通信装置T1のCPU10は、ステップS22で算出したレスポンス値Resを含むレスポンスを、通信部15及び通信ネットワークNWを介して、通信装置T2へ送信する(ステップS23)。   Next, the CPU 10 of the communication device T1 transmits a response including the response value Res calculated in step S22 to the communication device T2 via the communication unit 15 and the communication network NW (step S23).

一方、通信装置T2のCPU10は、通信装置T1から送信されたレスポンスを受信すると、当該レスポンスに含まれるレスポンス値Resと、ステップS33で算出されたチャレンジ値Vとを用いて、認証処理を実行する。この認証処理において、通信装置T2のCPU10は、チャレンジ値Vとレスポンス値Resとが一致するか否かを判定する(ステップS34)。チャレンジ値Vとレスポンス値Resとが一致する場合(ステップS34:YES)、通信装置T2のCPU10は、認証成功と判定する(ステップS35)。一方、チャレンジ値Vとレスポンス値Resとが一致しない場合(ステップS34:NO)、通信装置T2のCPU10は、認証失敗と判定する(ステップS36)。そして、通信装置T2のCPU10は、認証成功または認証失敗を示す認証結果メッセージを、通信部15及び通信ネットワークNWを介して、通信装置T1へ送信する(ステップS37)。   On the other hand, when receiving the response transmitted from the communication device T1, the CPU 10 of the communication device T2 executes an authentication process using the response value Res included in the response and the challenge value V calculated in step S33. . In this authentication process, the CPU 10 of the communication device T2 determines whether or not the challenge value V and the response value Res match (step S34). When the challenge value V matches the response value Res (step S34: YES), the CPU 10 of the communication device T2 determines that the authentication is successful (step S35). On the other hand, when the challenge value V and the response value Res do not match (step S34: NO), the CPU 10 of the communication device T2 determines that the authentication has failed (step S36). Then, the CPU 10 of the communication device T2 transmits an authentication result message indicating authentication success or failure to the communication device T1 via the communication unit 15 and the communication network NW (step S37).

以上説明したように、実施例1によれば、通信装置T1と通信装置T2とに同一の乱数テーブルを記憶させておき、当該乱数テーブルをインデックスの送受信だけで適時安全に更新し、しかも、チャレンジ値の受け渡しはインデックスにより行うように構成したので、同一のチャレンジ(つまり、インデックス)に対するレスポンス値を異ならせることができ、攻撃者がチャレンジとレスポンス値の対を蓄積したとしても、当該蓄積された情報に基づきチャレンジに対応するレスポンス値が特定されることを防ぐことができ、成りすまし等に対する安全性を向上させることができる。また、過去の認証処理において利用されたものと同じチャレンジが再利用される場合であっても、成りすまし方法に対する安全性を向上させることが可能となる。   As described above, according to the first embodiment, the same random number table is stored in the communication device T1 and the communication device T2, and the random number table is updated safely and in a timely manner only by transmitting and receiving the index. Since the value is passed by index, response values for the same challenge (ie, index) can be made different, and even if an attacker accumulates a challenge-response value pair, It is possible to prevent the response value corresponding to the challenge from being specified based on the information, and to improve the security against impersonation and the like. Further, even when the same challenge as that used in the past authentication process is reused, it is possible to improve the security against the impersonation method.

(実施例2)
次に、図5を参照して、実施例2について説明する。図5は、実施例2において、通信装置T1と通信装置T2とで行われるチャレンジ/レスポンス処理の一例を示すシーケンス図である。なお、実施例2における乱数テーブル更新処理は、実施例1と同様であり、図3に示すように行われる。
(Example 2)
Next, Example 2 will be described with reference to FIG. FIG. 5 is a sequence diagram illustrating an example of a challenge / response process performed by the communication device T1 and the communication device T2 in the second embodiment. The random number table update process in the second embodiment is the same as that in the first embodiment, and is performed as shown in FIG.

図5に示す例では、実施例1と同様、通信装置T1からチャレンジ/レスポンス処理が開始される。なお、チャレンジ/レスポンス処理は、実施例1と同様、例えば、通信装置T1のユーザである被認証者からの例えばログイン指示に応じて開始される。   In the example illustrated in FIG. 5, the challenge / response process is started from the communication device T1 as in the first embodiment. The challenge / response process is started in response to, for example, a login instruction from an authenticated person who is a user of the communication device T1, as in the first embodiment.

チャレンジ/レスポンス処理が開始されると、通信装置T1のCPU10は、認証要求(例えば、ログインコマンド等)を、通信部15及び通信ネットワークNWを介して、通信装置T2へ送信する(ステップS41)。   When the challenge / response process is started, the CPU 10 of the communication device T1 transmits an authentication request (for example, a login command) to the communication device T2 via the communication unit 15 and the communication network NW (step S41).

一方、通信装置T2のCPU10は、通信装置T1から送信された認証要求を受信すると、乱数Rを生成する(ステップS51)。この乱数Rは、1回だけ使用されるnonce (number used once)であることが望ましい。なお、通信装置T2には、CPU10とは別に、乱数を生成する乱数生成器が備えられていてもよい。この場合、乱数生成器により乱数Rが生成される。次いで、通信装置T2のCPU10は、記憶部12に記憶されている乱数テーブルにおける所定数の第3のインデックスと、ステップS51で生成された乱数Rとを含むチャレンジコマンドChallenge(R,k,-l,m)を生成する(ステップS52)。   On the other hand, upon receiving the authentication request transmitted from the communication device T1, the CPU 10 of the communication device T2 generates a random number R (step S51). The random number R is preferably a nonce (number used once) used only once. Note that the communication device T2 may be provided with a random number generator that generates a random number separately from the CPU 10. In this case, a random number R is generated by a random number generator. Next, the CPU 10 of the communication device T2 includes a challenge command Challenge (R, k, -l) including a predetermined number of third indexes in the random number table stored in the storage unit 12 and the random number R generated in step S51. , m) is generated (step S52).

次いで、通信装置T2のCPU10は、ステップS52で生成したチャレンジコマンドChallenge(R,k,-l,m)を、通信部15及び通信ネットワークNWを介して、通信装置T1へ送信する(ステップS53)。   Next, the CPU 10 of the communication device T2 transmits the challenge command Challenge (R, k, -l, m) generated in step S52 to the communication device T1 via the communication unit 15 and the communication network NW (step S53). .

次いで、通信装置T2のCPU10は、インデックスkに対応付けられている乱数Rkと、インデックスlに対応付けられている乱数Rl(“l”に“-”が付加されているので、¬Rlが用いられる)と、インデックスmに対応付けられている乱数Rmとを用いて値K2を算出し、当該算出した値K2を暗号鍵として、ステップS51で生成された乱数Rを暗号化することによりチャレンジ値Vを算出する(ステップS54)。値K2は、例えば、下記(3)式により算出され、チャレンジ値Vは、例えば、下記(4)式により算出される。   Next, the CPU 10 of the communication device T2 uses the random number Rk associated with the index k and the random number Rl associated with the index l (“−” is added to “l”, so that ¬Rl is used. And a random number Rm associated with the index m, and a challenge value is obtained by encrypting the random number R generated in step S51 using the calculated value K2 as an encryption key. V is calculated (step S54). The value K2 is calculated by, for example, the following formula (3), and the challenge value V is calculated by, for example, the following formula (4).

K2 := Rk xor ¬Rl xor Rm・・・(3)   K2: = Rk xor ¬ Rl xor Rm (3)

V:= E(R,K2)・・・(4)   V: = E (R, K2) (4)

ここで、“E(第1引数,第2引数)”は、第2引数を暗号鍵として用いて第1引数の平文を暗号化する暗号化演算子を表す。   Here, “E (first argument, second argument)” represents an encryption operator that encrypts the plaintext of the first argument using the second argument as an encryption key.

一方、通信装置T1のCPU10は、通信装置T2から送信されたチャレンジコマンドChallenge(R,k,-l,m)を受信すると、チャレンジコマンドChallenge(R,k,-l,m)が示すインデックスkに対応付けられている乱数Rkと、インデックスlに対応付けられている乱数Rlの反転値¬Rlと、インデックスmに対応付けられている乱数Rmとを用いて値K1を算出し、当該算出した値K1を暗号鍵として、チャレンジコマンドChallenge(R,k,-l,m)に含まれる乱数Rを暗号化することによりレスポンス値ResとしてE(R,K1)を算出する(ステップS42)。なお、値K1及びレスポンス値Resは、通信装置T2と同一の算出方法(例えば、上記(3)式及び(4)式)により算出される。   On the other hand, when the CPU 10 of the communication device T1 receives the challenge command Challenge (R, k, -l, m) transmitted from the communication device T2, the index k indicated by the challenge command Challenge (R, k, -l, m). The value K1 is calculated using the random number Rk associated with, the inverted value ¬Rl of the random number Rl associated with the index l, and the random number Rm associated with the index m. E (R, K1) is calculated as the response value Res by encrypting the random number R included in the challenge command Challenge (R, k, -l, m) using the value K1 as the encryption key (step S42). The value K1 and the response value Res are calculated by the same calculation method as the communication device T2 (for example, the above formulas (3) and (4)).

次いで、通信装置T1のCPU10は、ステップS42で算出したレスポンス値Resを含むレスポンスを、通信部15及び通信ネットワークNWを介して、通信装置T2へ送信する(ステップS43)。   Next, the CPU 10 of the communication device T1 transmits a response including the response value Res calculated in step S42 to the communication device T2 via the communication unit 15 and the communication network NW (step S43).

一方、通信装置T2のCPU10は、通信装置T1から送信されたレスポンスを受信すると、当該レスポンスに含まれるレスポンス値Resと、ステップS54で算出されたチャレンジ値Vとを用いて、認証処理を実行する。なお、ステップS55以降の処理は、上記ステップS34以降の処理と同様である。   On the other hand, when receiving the response transmitted from the communication device T1, the CPU 10 of the communication device T2 executes an authentication process using the response value Res included in the response and the challenge value V calculated in step S54. . The processing after step S55 is the same as the processing after step S34.

以上説明したように、実施例2によれば、チャレンジコマンドにインデックスと共に乱数Rを含ませ、当該インデックスを用いて算出された値で当該乱数Rを暗号化してレスポンスを送信するように構成したので、認証処理で比較対象となる値の安全性を向上させることできる。   As described above, according to the second embodiment, since the challenge command includes the random number R together with the index, the random number R is encrypted with the value calculated using the index, and the response is transmitted. The safety of values to be compared in the authentication process can be improved.

(実施例3)
次に、図6を参照して、実施例3について説明する。図6は、実施例3において、通信装置T1と通信装置T2とで行われるチャレンジ/レスポンス処理の一例を示すシーケンス図である。なお、実施例3における乱数テーブル更新処理は、実施例1と同様であり、図3に示すように行われる。
Example 3
Next, Example 3 will be described with reference to FIG. FIG. 6 is a sequence diagram illustrating an example of a challenge / response process performed by the communication device T1 and the communication device T2 in the third embodiment. The random number table update process in the third embodiment is the same as that in the first embodiment, and is performed as shown in FIG.

図6に示す例では、実施例1及び実施例2と同様、通信装置T1のCPU10は、認証要求(例えば、ログインコマンド等)を、通信部15及び通信ネットワークNWを介して、通信装置T2へ送信する(ステップS61)。   In the example illustrated in FIG. 6, as in the first and second embodiments, the CPU 10 of the communication device T1 sends an authentication request (for example, a login command) to the communication device T2 via the communication unit 15 and the communication network NW. Transmit (step S61).

一方、通信装置T2のCPU10は、通信装置T1から送信された認証要求を受信すると、実施例2と同様、乱数R(例えば、nonce)を生成し(ステップS71)、チャレンジコマンドChallenge(R,k,-l,m)を生成し(ステップS72)、生成したチャレンジコマンドChallenge(R,k,-l,m)を通信装置T1へ送信する(ステップS73)。   On the other hand, when receiving the authentication request transmitted from the communication device T1, the CPU 10 of the communication device T2 generates a random number R (for example, nonce) as in the second embodiment (step S71), and executes a challenge command Challenge (R, k , -l, m) is generated (step S72), and the generated challenge command Challenge (R, k, -l, m) is transmitted to the communication device T1 (step S73).

一方、通信装置T1のCPU10は、通信装置T2から送信されたチャレンジコマンドChallenge(R,k,-l,m)を受信すると、実施例2と同様、レスポンス値ResとしてE(R,K1)を算出し(ステップS62)、当該レスポンス値Resを含むレスポンスを通信装置T2へ送信する(ステップS63)。   On the other hand, when the CPU 10 of the communication device T1 receives the challenge command Challenge (R, k, -l, m) transmitted from the communication device T2, as in the second embodiment, E (R, K1) is used as the response value Res. Calculation is performed (step S62), and a response including the response value Res is transmitted to the communication device T2 (step S63).

一方、通信装置T2のCPU10は、通信装置T1から送信されたレスポンスを受信すると、インデックスkに対応付けられている乱数Rkと、インデックスlに対応付けられている乱数Rl(“l”に“-”が付加されているので、¬Rlが用いられる)と、インデックスmに対応付けられている乱数Rmとを用いて値K2を算出し、当該算出した値K2を復号鍵(=暗号鍵)として、当該レスポンスに含まれるレスポンス値Resを復号することによりチャレンジ値Vを算出する(ステップS74)。値K2は、例えば、上記(3)式により算出され、チャレンジ値Vは、例えば、下記(5)式により算出される。   On the other hand, when the CPU 10 of the communication device T2 receives the response transmitted from the communication device T1, the random number Rk associated with the index k and the random number Rl associated with the index l (“−” is added to “−”). ”Rl is used) and a random number Rm associated with the index m is calculated, and the calculated value K2 is used as a decryption key (= encryption key). The challenge value V is calculated by decoding the response value Res included in the response (step S74). The value K2 is calculated by, for example, the above formula (3), and the challenge value V is calculated by, for example, the following formula (5).

V:= D(Res,K2)・・・(5)   V: = D (Res, K2) (5)

ここで、“D(第1引数,第2引数)”は、第2引数を暗号鍵として用いて第1引数の暗号文を復号する復号演算子を表す。正常な場合、実施例3におけるチャレンジ値Vは、通信装置T1に送信されたチャレンジコマンドChallenge(R,k,-l,m)に含まれる乱数Rである。   Here, “D (first argument, second argument)” represents a decryption operator that decrypts the ciphertext of the first argument using the second argument as an encryption key. In the normal case, the challenge value V in the third embodiment is a random number R included in the challenge command Challenge (R, k, -l, m) transmitted to the communication device T1.

次いで、通信装置T2のCPU10は、ステップS74で算出されたチャレンジ値V(値K2を復号鍵としてレスポンス値Resが復号された値)と、ステップS71で生成された乱数Rとが一致するか否かを判定する(ステップS75)。チャレンジ値Vと乱数Rとが一致する場合(ステップS75:YES)、通信装置T2のCPU10は、認証成功と判定する(ステップS76)。一方、チャレンジ値Vと乱数Rとが一致しない場合(ステップS75:NO)、通信装置T2のCPU10は、認証失敗と判定する(ステップS77)。そして、通信装置T2のCPU10は、認証成功または認証失敗を示す認証結果メッセージを通信装置T1へ送信する(ステップS78)。   Next, the CPU 10 of the communication device T2 determines whether or not the challenge value V calculated in step S74 (a value obtained by decrypting the response value Res using the value K2 as a decryption key) matches the random number R generated in step S71. Is determined (step S75). When the challenge value V matches the random number R (step S75: YES), the CPU 10 of the communication device T2 determines that the authentication is successful (step S76). On the other hand, if the challenge value V and the random number R do not match (step S75: NO), the CPU 10 of the communication device T2 determines that the authentication has failed (step S77). Then, the CPU 10 of the communication device T2 transmits an authentication result message indicating success or failure of authentication to the communication device T1 (step S78).

以上説明したように、実施例3によれば、チャレンジコマンドにインデックスと共に乱数Rを含ませ、当該インデックスを用いて算出された値で当該乱数Rを暗号化してレスポンスを送信するように構成したので、認証処理で比較対象となる値の安全性を向上させることができる。   As described above, according to the third embodiment, since the challenge command includes the random number R together with the index, the random number R is encrypted with the value calculated using the index, and the response is transmitted. Thus, it is possible to improve the safety of values to be compared in the authentication process.

10 CPU
11 コプロセッサ
12 記憶部
13 センサー部
14 I/F部
15 通信部
Tn 通信装置
10 CPU
11 Coprocessor 12 Storage unit 13 Sensor unit 14 I / F unit 15 Communication unit Tn Communication device

Claims (10)

被認証装置からの認証要求に応じて認証処理を実行する認証装置であって、
当該認証装置と前記被認証装置間で共有される乱数テーブルであって複数個の乱数と前記乱数ごとに一意のインデックスとを対応付けた前記乱数テーブルを記憶する第1記憶手段と、
前記第1記憶手段に記憶されている前記乱数テーブルにおける所定数の前記インデックスの中の第1の前記インデックスに対応付けられている前記乱数を用いて算出される新たな乱数により、当該所定数の前記インデックスの中の第2の前記インデックスに対応付けられている前記乱数を更新する前記被認証装置から、当該所定数の前記インデックスを含む更新コマンドを受信する第1受信手段と、
前記第1受信手段により受信された前記更新コマンドに含まれる前記所定数の前記インデックスの中の第1の前記インデックスに対応付けられている前記乱数を用いて新たな乱数を算出し、当該算出した乱数により、前記乱数テーブルにおいて当該所定数の前記インデックスの中の第2の前記インデックスに対応付けられている前記乱数を更新する第1更新手段と、
前記被認証装置から認証要求を受信する第2受信手段と、
前記第2受信手段により受信された認証要求に応じて、前記第1記憶手段に記憶されている前記乱数テーブルにおける所定数の第3の前記インデックスを含むチャレンジコマンドを前記被認証装置へ送信する第1送信手段と、
前記第2受信手段により受信された認証要求に応じて、前記第1記憶手段に記憶されている前記乱数テーブルにおける前記第3の前記インデックスに対応付けられている前記乱数を用いて第1の値を算出する第1算出手段と、
前記チャレンジコマンドに含まれる前記第3の前記インデックスに対応付けられている前記乱数が用いられて算出された第2の値を含むレスポンスを当該被認証装置から受信する第3受信手段と、
前記第1算出手段により算出された前記第1の値と、前記第3受信手段により受信された前記レスポンスに含まれる前記第2の値とを用いて、認証処理を実行する認証手段と、
を備えることを特徴とする認証装置。
An authentication device that performs authentication processing in response to an authentication request from a device to be authenticated,
A first storage means for storing a random number table shared between the authentication device and the device to be authenticated, wherein the random number table associates a plurality of random numbers with a unique index for each random number;
Based on the new random number calculated using the random number associated with the first index among the predetermined number of indexes in the random number table stored in the first storage unit, the predetermined number of First receiving means for receiving an update command including the predetermined number of the indexes from the device to be authenticated that updates the random number associated with the second index in the index;
A new random number is calculated using the random number associated with the first index among the predetermined number of the indexes included in the update command received by the first receiving unit, and the calculated A first updating means for updating the random number associated with the second index among the predetermined number of the indexes in the random number table by a random number;
Second receiving means for receiving an authentication request from the device to be authenticated;
In response to the authentication request received by the second receiving means, a challenge command including a predetermined number of third indexes in the random number table stored in the first storage means is transmitted to the device to be authenticated. One transmission means;
In response to the authentication request received by the second receiving means, a first value using the random number associated with the third index in the random number table stored in the first storage means First calculating means for calculating
Third receiving means for receiving a response including a second value calculated by using the random number associated with the third index included in the challenge command from the device to be authenticated;
Authentication means for executing authentication processing using the first value calculated by the first calculation means and the second value included in the response received by the third receiving means;
An authentication device comprising:
前記認証手段は、前記認証処理において、前記第1の値と前記第2の値とが一致するか否かを判定することを特徴とする請求項1に記載の認証装置。   The authentication apparatus according to claim 1, wherein the authentication unit determines whether or not the first value and the second value match in the authentication process. 前記認証装置は、乱数を生成する乱数生成手段を更に備え、
前記第1送信手段は、前記第3の前記インデックスと、前記乱数生成手段により生成された乱数とを含むチャレンジコマンドを前記被認証装置へ送信し、
前記第1算出手段は、前記第3の前記インデックスに対応付けられている前記乱数を用いて算出された値を暗号鍵として、前記乱数生成手段により生成された乱数を暗号化することにより前記第1の値を算出し、
前記第3受信手段は、前記チャレンジコマンドに含まれる前記第3の前記インデックスに対応付けられている前記乱数が用いられて算出された値を暗号鍵として、前記チャレンジコマンドに含まれる前記乱数が暗号化されることにより算出された前記第2の値を含むレスポンスを当該被認証装置から受信し、
前記認証手段は、前記認証処理において、前記第1の値と前記第2の値とが一致するか否かを判定することを特徴とする請求項1に記載の認証装置。
The authentication device further includes random number generation means for generating a random number,
The first transmission unit transmits a challenge command including the third index and the random number generated by the random number generation unit to the device to be authenticated,
The first calculating means encrypts the random number generated by the random number generating means by using the value calculated by using the random number associated with the third index as an encryption key. Calculate the value of 1
The third receiving means uses the value calculated by using the random number associated with the third index included in the challenge command as an encryption key, and the random number included in the challenge command is encrypted. A response including the second value calculated by being converted from the authentication target device,
The authentication apparatus according to claim 1, wherein the authentication unit determines whether or not the first value and the second value match in the authentication process.
前記認証装置は、乱数を生成する乱数生成手段を更に備え、
前記第1送信手段は、前記第3の前記インデックスと、前記乱数生成手段により生成された乱数とを含むチャレンジコマンドを前記被認証装置へ送信し、
前記第3受信手段は、前記チャレンジコマンドに含まれる前記第3の前記インデックスに対応付けられている前記乱数が用いられて算出された値を暗号鍵として、前記チャレンジコマンドに含まれる前記乱数が暗号化されることにより算出された前記第2の値を含むレスポンスを当該被認証装置から受信し、
前記認証手段は、前記認証処理において、前記第1の値を復号鍵として前記第2の値が復号された値と、前記乱数生成手段により生成された前記乱数とが一致するか否かを判定することを特徴とする請求項1に記載の認証装置。
The authentication device further includes random number generation means for generating a random number,
The first transmission unit transmits a challenge command including the third index and the random number generated by the random number generation unit to the device to be authenticated,
The third receiving means uses the value calculated by using the random number associated with the third index included in the challenge command as an encryption key, and the random number included in the challenge command is encrypted. A response including the second value calculated by being converted from the authentication target device,
The authentication unit determines whether or not the value obtained by decrypting the second value using the first value as a decryption key and the random number generated by the random number generation unit match in the authentication process. The authentication apparatus according to claim 1, wherein:
請求項1乃至4の何れか一項に記載の認証装置へ認証要求を送信する被認証装置であって、
当該被認証装置と前記認証装置間で共有される乱数テーブルであって複数個の乱数と前記乱数ごとに一意のインデックスとを対応付けた前記乱数テーブルを記憶する第2記憶手段と、
前記第2記憶手段に記憶されている前記乱数テーブルにおける所定数の前記インデックスを含む更新コマンドであって、当該所定数の前記インデックスの中の第1の前記インデックスに対応付けられている前記乱数を用いて算出される新たな乱数により、当該所定数の前記インデックスの中の第2の前記インデックスに対応付けられている前記乱数を更新させる更新コマンドを前記認証装置へ送信する第2送信手段と、
前記第2記憶手段に記憶されている前記乱数テーブルにおいて前記第1の前記インデックスに対応付けられている前記乱数を用いて新たな乱数を算出し、当該算出した乱数により、前記第2記憶手段に記憶されている前記乱数テーブルにおいて前記第2の前記インデックスに対応付けられている前記乱数を更新する第2更新手段と、
前記認証要求を前記認証装置へ送信する第3送信手段と、
前記認証装置から前記チャレンジコマンドを受信する第4受信手段と、
前記第4受信手段により受信された前記チャレンジコマンドに含まれる前記第3の前記インデックスに対応付けられている前記乱数を用いて前記第2の値を算出する第2算出手段と、
前記第2算出手段により算出された前記第2の値を含むレスポンスを前記認証装置へ送信する第4送信手段と、
を備えることを特徴とする被認証装置。
An authenticated device that transmits an authentication request to the authentication device according to any one of claims 1 to 4,
A second storage means for storing the random number table shared between the authentication target device and the authentication device, wherein the random number table associates a plurality of random numbers with a unique index for each random number;
An update command including a predetermined number of the indexes in the random number table stored in the second storage means, wherein the random number associated with the first index in the predetermined number of the indexes is Second transmission means for transmitting an update command for updating the random number associated with the second index among the predetermined number of the indexes to a new random number calculated by using the second transmission means;
In the random number table stored in the second storage unit, a new random number is calculated using the random number associated with the first index, and the calculated random number is stored in the second storage unit. Second update means for updating the random number associated with the second index in the stored random number table;
Third transmission means for transmitting the authentication request to the authentication device;
Fourth receiving means for receiving the challenge command from the authentication device;
Second calculating means for calculating the second value using the random number associated with the third index included in the challenge command received by the fourth receiving means;
Fourth transmission means for transmitting a response including the second value calculated by the second calculation means to the authentication device;
A device to be authenticated.
前記第2算出手段は、前記チャレンジコマンドに含まれる前記第3の前記インデックスに対応付けられている前記乱数を用いて算出した値を暗号鍵として、前記チャレンジコマンドに含まれる前記乱数を暗号化することにより前記第2の値を算出することを特徴とする請求項5に記載の被認証装置。   The second calculation means encrypts the random number included in the challenge command using a value calculated using the random number associated with the third index included in the challenge command as an encryption key. The device to be authenticated according to claim 5, wherein the second value is calculated as described above. 被認証装置からの認証要求に応じて認証処理を実行する認証装置における認証方法であって、
当該認証装置と前記被認証装置間で共有される乱数テーブルであって複数個の乱数と前記乱数ごとに一意のインデックスとを対応付けた前記乱数テーブルを第1記憶手段に記憶するステップと、
前記第1記憶手段に記憶されている前記乱数テーブルにおける所定数の前記インデックスの中の第1の前記インデックスに対応付けられている前記乱数を用いて算出される新たな乱数により、当該所定数の前記インデックスの中の第2の前記インデックスに対応付けられている前記乱数を更新する前記被認証装置から、当該所定数の前記インデックスを含む更新コマンドを受信するステップと、
前記受信された前記更新コマンドに含まれる前記所定数の前記インデックスの中の第1の前記インデックスに対応付けられている前記乱数を用いて新たな乱数を算出し、当該算出した乱数により、前記乱数テーブルにおいて当該所定数の前記インデックスの中の第2の前記インデックスに対応付けられている前記乱数を更新するステップと、
前記被認証装置から認証要求を受信するステップと、
前記受信された認証要求に応じて、前記第1記憶手段に記憶されている前記乱数テーブルにおける所定数の第3の前記インデックスを含むチャレンジコマンドを前記被認証装置へ送信するステップと、
前記受信された認証要求に応じて、前記第1記憶手段に記憶されている前記乱数テーブルにおける前記第3の前記インデックスに対応付けられている前記乱数を用いて第1の値を算出するステップと、
前記チャレンジコマンドに含まれる前記第3の前記インデックスに対応付けられている前記乱数が用いられて算出された第2の値を含むレスポンスを当該被認証装置から受信するステップと、
前記算出された前記第1の値と、前記レスポンスに含まれる前記第2の値とを用いて、認証処理を実行するステップと、
を含むことを特徴とする認証方法。
An authentication method in an authentication device that executes authentication processing in response to an authentication request from a device to be authenticated,
Storing in the first storage means the random number table shared between the authentication device and the device to be authenticated, wherein the random number table associates a plurality of random numbers with a unique index for each random number;
Based on the new random number calculated using the random number associated with the first index among the predetermined number of indexes in the random number table stored in the first storage unit, the predetermined number of Receiving an update command including the predetermined number of the indexes from the device to be authenticated that updates the random number associated with the second index in the index;
A new random number is calculated using the random number associated with the first index among the predetermined number of the indexes included in the received update command, and the random number is calculated based on the calculated random number. Updating the random number associated with the second of the predetermined number of the indexes in the table;
Receiving an authentication request from the device to be authenticated;
In response to the received authentication request, transmitting a challenge command including a predetermined number of third indexes in the random number table stored in the first storage means to the device to be authenticated;
Calculating a first value using the random number associated with the third index in the random number table stored in the first storage unit in response to the received authentication request; ,
Receiving a response including a second value calculated using the random number associated with the third index included in the challenge command from the device to be authenticated;
Performing an authentication process using the calculated first value and the second value included in the response;
An authentication method comprising:
請求項7に記載の認証装置へ認証要求を送信する被認証装置における被認証方法であって、
当該被認証装置と前記認証装置間で共有される乱数テーブルであって複数個の乱数と前記乱数ごとに一意のインデックスとを対応付けた前記乱数テーブルを第2記憶手段に記憶するステップと、
前記第2記憶手段に記憶されている前記乱数テーブルにおける所定数の前記インデックスを含む更新コマンドであって、当該所定数の前記インデックスの中の第1の前記インデックスに対応付けられている前記乱数を用いて算出される新たな乱数により、当該所定数の前記インデックスの中の第2の前記インデックスに対応付けられている前記乱数を更新させる更新コマンドを前記認証装置へ送信するステップと、
前記第2記憶手段に記憶されている前記乱数テーブルにおいて前記第1の前記インデックスに対応付けられている前記乱数を用いて新たな乱数を算出し、当該算出した乱数により、前記第2記憶手段に記憶されている前記乱数テーブルにおいて前記第2の前記インデックスに対応付けられている前記乱数を更新するステップと、
前記認証要求を前記認証装置へ送信するステップと、
前記認証装置から前記チャレンジコマンドを受信するステップと、
前記受信された前記チャレンジコマンドに含まれる前記第3の前記インデックスに対応付けられている前記乱数を用いて前記第2の値を算出するステップと、
前記算出された前記第2の値を含むレスポンスを前記認証装置へ送信するステップと、
を含むことを特徴とする被認証方法。
An authenticated method in an authenticated device that transmits an authentication request to the authentication device according to claim 7,
Storing in the second storage means the random number table shared between the device to be authenticated and the authentication device, wherein the random number table associates a plurality of random numbers with a unique index for each random number;
An update command including a predetermined number of the indexes in the random number table stored in the second storage means, wherein the random number associated with the first index in the predetermined number of the indexes is Transmitting an update command for updating the random number associated with the second index among the predetermined number of the indexes to the authentication device by using a new random number calculated by using the random number;
In the random number table stored in the second storage unit, a new random number is calculated using the random number associated with the first index, and the calculated random number is stored in the second storage unit. Updating the random number associated with the second index in the stored random number table;
Transmitting the authentication request to the authentication device;
Receiving the challenge command from the authentication device;
Calculating the second value using the random number associated with the third index included in the received challenge command;
Transmitting a response including the calculated second value to the authentication device;
A method to be authenticated, comprising:
被認証装置からの認証要求に応じて認証処理を実行するコンピュータに、
当該認証装置と前記被認証装置間で共有される乱数テーブルであって複数個の乱数と前記乱数ごとに一意のインデックスとを対応付けた前記乱数テーブルを第1記憶手段に記憶するステップと、
前記第1記憶手段に記憶されている前記乱数テーブルにおける所定数の前記インデックスの中の第1の前記インデックスに対応付けられている前記乱数を用いて算出される新たな乱数により、当該所定数の前記インデックスの中の第2の前記インデックスに対応付けられている前記乱数を更新する前記被認証装置から、当該所定数の前記インデックスを含む更新コマンドを受信するステップと、
前記受信された前記更新コマンドに含まれる前記所定数の前記インデックスの中の第1の前記インデックスに対応付けられている前記乱数を用いて新たな乱数を算出し、当該算出した乱数により、前記乱数テーブルにおいて当該所定数の前記インデックスの中の第2の前記インデックスに対応付けられている前記乱数を更新するステップと、
前記被認証装置から認証要求を受信するステップと、
前記受信された認証要求に応じて、前記第1記憶手段に記憶されている前記乱数テーブルにおける所定数の第3の前記インデックスを含むチャレンジコマンドを前記被認証装置へ送信するステップと、
前記受信された認証要求に応じて、前記第1記憶手段に記憶されている前記乱数テーブルにおける前記第3の前記インデックスに対応付けられている前記乱数を用いて第1の値を算出するステップと、
前記チャレンジコマンドに含まれる前記第3の前記インデックスに対応付けられている前記乱数が用いられて算出された第2の値を含むレスポンスを当該被認証装置から受信するステップと、
前記算出された前記第1の値と、前記レスポンスに含まれる前記第2の値とを用いて、認証処理を実行するステップと、
を実行させることを特徴とする認証処理プログラム。
In a computer that executes authentication processing in response to an authentication request from the device to be authenticated,
Storing in the first storage means the random number table shared between the authentication device and the device to be authenticated, wherein the random number table associates a plurality of random numbers with a unique index for each random number;
Based on the new random number calculated using the random number associated with the first index among the predetermined number of indexes in the random number table stored in the first storage unit, the predetermined number of Receiving an update command including the predetermined number of the indexes from the device to be authenticated that updates the random number associated with the second index in the index;
A new random number is calculated using the random number associated with the first index among the predetermined number of the indexes included in the received update command, and the random number is calculated based on the calculated random number. Updating the random number associated with the second of the predetermined number of the indexes in the table;
Receiving an authentication request from the device to be authenticated;
In response to the received authentication request, transmitting a challenge command including a predetermined number of third indexes in the random number table stored in the first storage means to the device to be authenticated;
Calculating a first value using the random number associated with the third index in the random number table stored in the first storage unit in response to the received authentication request; ,
Receiving a response including a second value calculated using the random number associated with the third index included in the challenge command from the device to be authenticated;
Performing an authentication process using the calculated first value and the second value included in the response;
An authentication processing program characterized in that
請求項9に記載の認証装置へ認証要求を送信するコンピュータに、
当該被認証装置と前記認証装置間で共有される乱数テーブルであって複数個の乱数と前記乱数ごとに一意のインデックスとを対応付けた前記乱数テーブルを第2記憶手段に記憶するステップと、
前記第2記憶手段に記憶されている前記乱数テーブルにおける所定数の前記インデックスを含む更新コマンドであって、当該所定数の前記インデックスの中の第1の前記インデックスに対応付けられている前記乱数を用いて算出される新たな乱数により、当該所定数の前記インデックスの中の第2の前記インデックスに対応付けられている前記乱数を更新させる更新コマンドを前記認証装置へ送信するステップと、
前記第2記憶手段に記憶されている前記乱数テーブルにおいて前記第1の前記インデックスに対応付けられている前記乱数を用いて新たな乱数を算出し、当該算出した乱数により、前記第2記憶手段に記憶されている前記乱数テーブルにおいて前記第2の前記インデックスに対応付けられている前記乱数を更新するステップと、
前記認証要求を前記認証装置へ送信するステップと、
前記認証装置から前記チャレンジコマンドを受信するステップと、
前記受信された前記チャレンジコマンドに含まれる前記第3の前記インデックスに対応付けられている前記乱数を用いて前記第2の値を算出するステップと、
前記算出された前記第2の値を含むレスポンスを前記認証装置へ送信するステップと、
を実行させることを特徴とする被認証処理プログラム。
A computer that transmits an authentication request to the authentication device according to claim 9,
Storing in the second storage means the random number table shared between the device to be authenticated and the authentication device, wherein the random number table associates a plurality of random numbers with a unique index for each random number;
An update command including a predetermined number of the indexes in the random number table stored in the second storage means, wherein the random number associated with the first index in the predetermined number of the indexes is Transmitting an update command for updating the random number associated with the second index among the predetermined number of the indexes to the authentication device by using a new random number calculated by using the random number;
In the random number table stored in the second storage unit, a new random number is calculated using the random number associated with the first index, and the calculated random number is stored in the second storage unit. Updating the random number associated with the second index in the stored random number table;
Transmitting the authentication request to the authentication device;
Receiving the challenge command from the authentication device;
Calculating the second value using the random number associated with the third index included in the received challenge command;
Transmitting a response including the calculated second value to the authentication device;
An authenticated processing program characterized by causing the processing to be executed.
JP2015065090A 2015-03-26 2015-03-26 Authentication device, authenticated device, authentication method, authenticated method, authentication processing program, and authenticated processing program Active JP6432417B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2015065090A JP6432417B2 (en) 2015-03-26 2015-03-26 Authentication device, authenticated device, authentication method, authenticated method, authentication processing program, and authenticated processing program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2015065090A JP6432417B2 (en) 2015-03-26 2015-03-26 Authentication device, authenticated device, authentication method, authenticated method, authentication processing program, and authenticated processing program

Publications (2)

Publication Number Publication Date
JP2016184899A true JP2016184899A (en) 2016-10-20
JP6432417B2 JP6432417B2 (en) 2018-12-05

Family

ID=57242060

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2015065090A Active JP6432417B2 (en) 2015-03-26 2015-03-26 Authentication device, authenticated device, authentication method, authenticated method, authentication processing program, and authenticated processing program

Country Status (1)

Country Link
JP (1) JP6432417B2 (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106815510A (en) * 2017-01-18 2017-06-09 珠海市魅族科技有限公司 The method and terminal of a kind of data processing
CN111400698A (en) * 2020-03-24 2020-07-10 中安云科科技发展(山东)有限公司 API authentication method
WO2021171507A1 (en) * 2020-02-27 2021-09-02 日本電気株式会社 Device and method for data distribution, device and method for data request, data distribution system, and computer-readable medium

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008258663A (en) * 2007-03-30 2008-10-23 Nippon Telegraph & Telephone West Corp Information communication system
JP2011223495A (en) * 2010-04-14 2011-11-04 Sony Corp Information processor and method, and program
US20130160083A1 (en) * 2010-08-23 2013-06-20 3M Innovative Properties Company Method and device for challenge-response authentication

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008258663A (en) * 2007-03-30 2008-10-23 Nippon Telegraph & Telephone West Corp Information communication system
JP2011223495A (en) * 2010-04-14 2011-11-04 Sony Corp Information processor and method, and program
US20130160083A1 (en) * 2010-08-23 2013-06-20 3M Innovative Properties Company Method and device for challenge-response authentication

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
松本勉,他: "インターネットを利用した金融サービスの安全性について", 日本銀行金融研究所ディスカッション・ペーパー・シリーズ, vol. No.2002−J−12, JPN6018039518, 2002, pages 1 - 21, ISSN: 0003894548 *

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106815510A (en) * 2017-01-18 2017-06-09 珠海市魅族科技有限公司 The method and terminal of a kind of data processing
WO2021171507A1 (en) * 2020-02-27 2021-09-02 日本電気株式会社 Device and method for data distribution, device and method for data request, data distribution system, and computer-readable medium
JP7343035B2 (en) 2020-02-27 2023-09-12 日本電気株式会社 Data distribution device and method, data request device and method, data distribution system, and program
CN111400698A (en) * 2020-03-24 2020-07-10 中安云科科技发展(山东)有限公司 API authentication method

Also Published As

Publication number Publication date
JP6432417B2 (en) 2018-12-05

Similar Documents

Publication Publication Date Title
Das et al. Design of secure and lightweight authentication protocol for wearable devices environment
JP6399382B2 (en) Authentication system
US9848320B2 (en) Encrypted communications method and encrypted communications system
US8745392B2 (en) Two-way authentication between two communication endpoints using a one-way out-of band (OOB) channel
CN109075968A (en) Method and apparatus for safety equipment certification
JP2018110378A5 (en)
KR101744747B1 (en) Mobile terminal, terminal and method for authentication using security cookie
CN110198295A (en) Safety certifying method and device and storage medium
CN106031120B (en) Key management
CN102281137A (en) Dynamic password authentication method of mutual-authentication challenge response mechanism
CN109309566B (en) Authentication method, device, system, equipment and storage medium
CN103188229A (en) Method and equipment for secure content access
JP2015122620A (en) Authentication system, authentication method, authentication device, and authenticated device
JP6432417B2 (en) Authentication device, authenticated device, authentication method, authenticated method, authentication processing program, and authenticated processing program
CN105704114A (en) Hearing device with service mode and related method
Gajbhiye et al. Design, implementation and security analysis of Bluetooth pairing protocol in NS2
WO2021109668A1 (en) Security authentication method, apparatus, and electronic device
CN107950003A (en) Dual user certification
KR102625879B1 (en) Method for generating key in crypto system using biometric information
CN108075896A (en) Use the system and method for the cryptography structure Self-certified message based on mark
TW201528831A (en) Portable electronic device and secure pairing method thereof
WO2017029708A1 (en) Personal authentication system
CN105828330B (en) Access method and device
WO2016112860A1 (en) Communication method for wireless device, wireless device and server
CN104243416B (en) Encryption communication method, system and relevant device

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20180130

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20180919

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20181009

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20181022

R150 Certificate of patent or registration of utility model

Ref document number: 6432417

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150