JP2021170757A - 認証検証システム、被認証装置、認証装置、認証検証方法、認証検証プログラム及びコンピュータで読み取り可能な記録媒体並びに記録した機器 - Google Patents
認証検証システム、被認証装置、認証装置、認証検証方法、認証検証プログラム及びコンピュータで読み取り可能な記録媒体並びに記録した機器 Download PDFInfo
- Publication number
- JP2021170757A JP2021170757A JP2020087024A JP2020087024A JP2021170757A JP 2021170757 A JP2021170757 A JP 2021170757A JP 2020087024 A JP2020087024 A JP 2020087024A JP 2020087024 A JP2020087024 A JP 2020087024A JP 2021170757 A JP2021170757 A JP 2021170757A
- Authority
- JP
- Japan
- Prior art keywords
- authentication
- information
- verification
- unit
- authenticated
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/30—Authentication, i.e. establishing the identity or authorisation of security principals
- G06F21/44—Program or device authentication
-
- G—PHYSICS
- G09—EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
- G09C—CIPHERING OR DECIPHERING APPARATUS FOR CRYPTOGRAPHIC OR OTHER PURPOSES INVOLVING THE NEED FOR SECRECY
- G09C1/00—Apparatus or methods whereby a given sequence of signs, e.g. an intelligible text, is transformed into an unintelligible sequence of signs by transposing the signs or groups of signs or by replacing them by others according to a predetermined system
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Mobile Radio Communication Systems (AREA)
Abstract
【課題】簡単な処理により、脆弱性や攻撃に対応したセキュアな認証を実現できるようにする。【解決手段】被認証装置1は、暗号情報を含む認証要求を認証期間内に繰り返して認証装置2に送信する送信部14と、ユニーク情報と検証値を暗号鍵によって暗号化することで暗号情報を生成する暗号化部13と、ユニーク情報を生成する取得部11と、検証値を生成して前記認証装置の認証後に正当な認証であったかを検証する検証部15と、生成した検証値を保存する記憶部12とを備え、認証装置2は、被認証装置1から送信された暗号鍵によって暗号化された暗号情報を含む認証要求を認証期間内に繰り返して受信する受信部21と、暗号情報を復号して復号情報を取得する復号部23と、復号できた暗号情報を含む認証期間内に受信された複数の認証要求を用いて被認証装置1が正当かどうかを判断し認証判断後に検証値を含む検証データを被認証装置1に送信する認証部24と、前記認証部による判断結果を出力する出力部25とを備える。【選択図】図1
Description
本発明は、認証検証システム、被認証装置、認証装置、認証検証方法、認証検証プログラム及びコンピュータで読み取り可能な記録媒体並びに記録した機器に関する。
従来、スマートフォンなどの個人携帯端末を用いて認証を行い、クレジットカードなどを用いた支払を行うことができるシステムが知られている。そのようなシステムにより、ユーザは、自分の個人携帯端末を用いることによって、商品やサービス等の支払を行うことができる(例えば、特許文献1参照)。
そのような認証では、ユーザの利便性の向上や、処理負荷の低減のため、より簡単な処理によって認証を行うことができるようにすることが求められている。その一方で、なりすまし等を防止しつつ、スマートフォンが持つ逆コンパイルなどの脆弱性や攻撃に対応したセキュアな認証を実現できることも求められている。
本発明は、上記課題を解決するためになされたものであり、簡単な処理により、セキュアな認証を実現することができる認証検証システム、被認証装置、認証装置、認証検証方法、認証検証プログラム及びコンピュータで読み取り可能な記録媒体並びに記録した機器を提供する上で、スマートフォンが持つ逆コンパイルなどの脆弱性や攻撃に対応することを目的とする。
上記目的を達成するため、本発明である認証検証システムは、認証を受けようとする被認証装置と、被認証装置を認証する認証装置と、を備える認証システムであって、
被認証装置は、暗号情報を含む認証要求を、認証期間内に繰り返して認証装置に送信する送信部と、ユニーク情報と検証値を暗号鍵によって暗号化することで暗号情報を生成する暗号化部と、ユニーク情報を生成する取得部と、検証値を生成して、認証装置の認証後に、正当な認証であったかを検証する検証部と、生成した検証値を保存する記憶部と、を備え、認証装置は、被認証装置から送信された、暗号鍵によって暗号化された暗号情報を含む認証要求を、認証期間内に繰り返して受信する受信部と、暗号情報を復号して復号情報を取得する復号部と、復号できた暗号情報を含む、認証期間内に受信された複数の認証要求を用いて、被認証装置が正当かどうかを判断し、認証判断後に検証値を含む検証データを被認証装置に送信する認証部と、認証部による判断結果を出力する出力部と、を備えるものである。
被認証装置は、暗号情報を含む認証要求を、認証期間内に繰り返して認証装置に送信する送信部と、ユニーク情報と検証値を暗号鍵によって暗号化することで暗号情報を生成する暗号化部と、ユニーク情報を生成する取得部と、検証値を生成して、認証装置の認証後に、正当な認証であったかを検証する検証部と、生成した検証値を保存する記憶部と、を備え、認証装置は、被認証装置から送信された、暗号鍵によって暗号化された暗号情報を含む認証要求を、認証期間内に繰り返して受信する受信部と、暗号情報を復号して復号情報を取得する復号部と、復号できた暗号情報を含む、認証期間内に受信された複数の認証要求を用いて、被認証装置が正当かどうかを判断し、認証判断後に検証値を含む検証データを被認証装置に送信する認証部と、認証部による判断結果を出力する出力部と、を備えるものである。
このような構成により、複数のユニーク情報が暗号化された暗号情報をそれぞれ含む複数の認証要求を認証装置に送信することができる。そして、その複数の認証要求を用いて、認証装置において、簡単な処理により、セキュアな認証を実現することができるようになる。また、暗号鍵が攻撃者に盗まれた場合の対策として認証の正当性を検証する機構も取り入れるこことで、安全性をより高めることができるようになる。
また、本発明による認証検証システムでは、検証値は、検証値を生成した時刻と、乱数値かハッシュ関数値のいずれかを含んでもよい。
このような構成により、暗号鍵が盗まれたとしても、攻撃者が推定することが困難な情報を含む検証値を簡単に取得することができる。
また、本発明による認証検証システムでは、暗号鍵は、共通鍵暗号の鍵であってもよい。
このような構成により、被認証装置ごとに共通鍵暗号の異なる鍵を用いている場合には、攻撃者は、正当な被認証装置から送信された認証要求を受信し、その受信した認証要求を認証装置に送信することによる攻撃しか行うことができないことになる。したがって、攻撃の行われたことをより検出しやすくなる。
また、本発明による被認証装置では、検証部は、記憶部に保存された検証値と認証装置から送信された検証値が整合するかを確認して正当かを判断してもよい。
このような構成により、簡単な処理により認証の正当性を検証することができる。
また、本発明による認証検証システムは、さらに、
認証装置の認証後に、認証部からの検証値を受信して被認証装置の検証部に送信し、また認証結果や検証結果を受信するために、被認証装置、及び認証装置との通信を行うための回線通信部と、認証及び検証結果に応じてシステムの挙動をコントロールするサーバ認証部と、を備えるシステムサーバを備えるものである。
認証装置の認証後に、認証部からの検証値を受信して被認証装置の検証部に送信し、また認証結果や検証結果を受信するために、被認証装置、及び認証装置との通信を行うための回線通信部と、認証及び検証結果に応じてシステムの挙動をコントロールするサーバ認証部と、を備えるシステムサーバを備えるものである。
このような構成により、システムサーバ上のユーザデータなどとの照合が可能となり、不正利用されているユーザへの通知や利用停止などの措置を速やかに取ることができるようになる。
また、本発明による認証装置では、認証部は、認証期間に受信された複数の認証要求からそれぞれ取得された複数の復号情報に含まれる検証値どうしの比較を行い、整合性が見られない場合に、前記被認証装置が正当でないと判断してもよい。
このような構成により、検証値そのものの妥当性も確認することで、場合によっては被認証側の確認を待たなくとも攻撃者の存在をより早急に察知できるようになる。
また、本発明による被認証装置では、送信部は、ユニーク情報と、検証値とを異なる手段で送信してもよい。
このような構成により、送信する情報量の削減をすることができるようになる。例えば、検証値の送信頻度をユニーク値よりも小さくしシステムへの負荷を下げることができる。
また、本発明による認証装置では、受信部は、間欠的に認証要求を受信してもよい。
このような構成により、認証要求の受信に関する負荷を軽減することができ、認証装置の消費電力を低減することができるようになる。
また、本発明による認証検証方法は、認証を受けようとする被認証装置と、被認証装置を認証する認証装置と、を備える認証システムにおいて、被認証装置の認証を検証する認証検証方法であって、被認証装置が、暗号情報を含む認証要求を、認証期間内に繰り返して認証装置に送信するステップと、被認証装置が、ユニーク情報と検証値を暗号鍵によって暗号化することで暗号情報を生成するステップと、被認証装置が、ユニーク情報を生成するステップと、被認証装置が、検証値を生成して、認証装置の認証後に、正当な認証であったかを検証するステップと、被認証装置が、生成した検証値を保存するステップと、認証装置が、被認証装置から送信された、暗号鍵によって暗号化された暗号情報を含む認証要求を、認証期間内に繰り返して受信するステップと、認証装置が、暗号情報を復号して復号情報を取得するステップと、認証装置が、復号できた暗号情報を含む、認証期間内に受信された複数の認証要求を用いて、被認証装置が正当かどうかを判断し、認証判断後に検証値を含む検証データを被認証装置に送信するステップと、認証装置が、認証部による判断結果を出力するステップと、を備えるものである。
本発明による認証検証システム、被認証装置、認証装置、認証検証方法、認証検証プログラム及びコンピュータで読み取り可能な記録媒体並びに記録した機器によれば、簡単な処理により、スマートフォンが持つ逆コンパイルなどの脆弱性や攻撃に対応したセキュアな認証を実現することができる。
以下、本発明による認証検証システム、被認証装置、認証装置、認証検証方法、認証検証プログラム及びコンピュータで読み取り可能な記録媒体並びに記録した機器について、実施の形態を用いて説明する。なお、以下の実施の形態において、同じ符号を付した構成要素及びステップは同一または相当するものであり、再度の説明を省略することがある。本実施の形態による被認証装置は、複数のユニーク情報を暗号化した暗号情報を含む複数の認証要求を認証装置に送信する。また、本実施の形態による認証装置は、被認証装置から送信された複数の認証要求を用いて、被認証装置の認証を行う。また、本実施の形態による被認証装置は、検証値を認証装置に送信する。本実施の形態による認証装置は、受信した検証値を検証データとしてシステムサーバを介して、被認証装置にて認証の検証を行う。
図1は、本実施の形態による被認証装置1、認証装置2、及びシステムサーバ3の構成を示すブロック図である。本実施の形態による被認証装置1は、取得部11と、記憶部12と、暗号化部13と、送信部14と、検証部15と、回線通信部16とを備える。本実施の形態による認証装置2は、受信部21と、記憶部22と、復号部23と、認証部24と、出力部25と、回線通信部26とを備える。システムサーバ3は、サーバ認証部35と、回線通信部36とを備える。被認証装置1は、例えば、スマートフォンや、タブレット端末、PDA(Personal Digital Assistant)、ノートパソコン、トランシーバ等の通信機能を備えた携帯情報端末であってもよく、その他の機器であってもよい。認証装置2は、例えば、自動改札機、イベント等の会場へ入場するためのゲート、自動販売機、ホテルや貸し会議室のドアを施錠・解錠する制御装置、キャッシュレジスタ等であってもよく、スマートフォン等の通信機能を備えた携帯情報端末であってもよい。システムサーバ3は、例えば、クラウド上に設置のサーバシステムでもよいし、認証装置2内に設置されていてもよい。本実施の形態では、被認証装置1及び認証装置2が通信機能を有する携帯情報端末である場合について主に説明する。なお、図1では、1個の被認証装置1と、1個の認証装置2との間で通信を行う場合について示しているが、そうでなくてもよい。複数の被認証装置1と、1個の認証装置2との間で通信が行われてもよい。その通信は通常、無線通信である。
まず、本実施の形態による被認証装置1について説明する。
取得部11は、ユニーク情報を取得する。各ユニーク情報は、例えば、異なる情報であってもよい。この場合には、取得部11が複数のユニーク情報を取得すると、その複数のユニーク情報は、それぞれ異なるものとなる。ユニーク情報は、後述するように、暗号化されて認証要求に含められ、送信される。したがって、各ユニーク情報が異なる情報である場合には、ユニーク情報は、認証要求に固有の情報であると言うこともできる。また、通常、ユニークな情報と、ユニークではない情報とから構成される情報(例えば、上位側ビットがユニークな情報であり、下位側ビットがユニークではない情報など)は、結果として、ユニーク情報となる。したがって、ユニーク情報は、そのように、ユニークな情報とユニークではない情報とから構成されてもよい。ユニーク情報と、そのユニーク情報に含まれるユニークな情報とを区別するため、以下、ユニーク情報に含まれるユニークな情報を、「ユニーク部分」と呼ぶこともある。また、ユニーク情報に含まれるユニークではない情報を、「非ユニーク部分」と呼ぶこともある。なお、非ユニーク部分は、必ずユニークな情報であるとは言えない情報であり、後述する位置情報のように、認証要求ごとに変化し得る情報であってもよい。
取得部11は、ユニーク情報を取得する。各ユニーク情報は、例えば、異なる情報であってもよい。この場合には、取得部11が複数のユニーク情報を取得すると、その複数のユニーク情報は、それぞれ異なるものとなる。ユニーク情報は、後述するように、暗号化されて認証要求に含められ、送信される。したがって、各ユニーク情報が異なる情報である場合には、ユニーク情報は、認証要求に固有の情報であると言うこともできる。また、通常、ユニークな情報と、ユニークではない情報とから構成される情報(例えば、上位側ビットがユニークな情報であり、下位側ビットがユニークではない情報など)は、結果として、ユニーク情報となる。したがって、ユニーク情報は、そのように、ユニークな情報とユニークではない情報とから構成されてもよい。ユニーク情報と、そのユニーク情報に含まれるユニークな情報とを区別するため、以下、ユニーク情報に含まれるユニークな情報を、「ユニーク部分」と呼ぶこともある。また、ユニーク情報に含まれるユニークではない情報を、「非ユニーク部分」と呼ぶこともある。なお、非ユニーク部分は、必ずユニークな情報であるとは言えない情報であり、後述する位置情報のように、認証要求ごとに変化し得る情報であってもよい。
ユニーク情報は、例えば、乱数値を含んでもよく、カウント値を含んでもよく、時刻を含んでもよく、ワンタイムパスワードを含んでもよく、その他のユニークな情報を含んでもよい。乱数値は、例えば、乱数表や、乱数を発生させる関数などを用いて生成されてもよい。カウント値は、例えば、あらかじめ決められた間隔で数値をインクリメントまたはデクリメントした値であってもよい。なお、認証要求ごとに異なるユニーク情報が用いられる場合には、その乱数値やカウント値は、重複がないことが好適である。時刻は、例えば、図示しない時計部から取得された時分秒や、分秒などであってもよい。また、認証要求ごとに異なるユニーク情報が用いられる場合には、その時刻の精度は、後述する認証要求の送信間隔よりも短い時間間隔の精度であることが好適である。そのようにすることで、例えば、ユニーク情報を認証要求に固有の情報とすることができる。例えば、認証要求の送信間隔が10ミリ秒程度である場合には、時刻の精度は、1ミリ秒であってもよい。なお、複数の認証要求について重複したユニーク情報が用いられてもよい場合には、乱数値やカウントに重複があってもよく、時刻の精度は、送信間隔よりも長い時間間隔の精度であってもよい。この場合であっても、後述するように、認証期間内には、異なるユニーク情報に対応する複数の認証要求が送信される必要があるため、そのような複数の認証要求を送信することができるユニーク情報の取得が行われることが好適である。
取得部11は、ユニーク情報を生成してもよく、他の構成要素や装置から受け取ってもよい。ユニーク情報が、ユニーク部分と非ユニーク部分とから構成される場合には、取得部11は、乱数値やカウント値、時刻、ワンタイムパスワードなどのユニーク部分を取得し、そのユニーク部分と、自装置である被認証装置1のIDや送信先の認証装置2のID、自装置である被認証装置1の位置情報などの非ユニーク部分とを用いて、ユニーク情報を生成してもよい。自装置のIDは、例えば、記憶部12から読み出されて用いられてもよい。また、送信先の認証装置2のIDは、例えば、後述する送信指示に含まれていてもよく、記憶部12から読み出されて用いられてもよい。自装置の位置情報は、後述するように、位置取得部によって取得されてもよい。また、取得部11は、例えば、認証装置2からユニーク情報を受信してもよい。その場合には、そのユニーク情報を暗号化した暗号情報を含む認証要求が被認証装置1から認証装置2に送信されることによって、チャレンジ・レスポンス認証が行われることになる。この場合には、認証装置2において、上記のようなユニーク情報が生成されてもよい。なお、取得部11は、例えば、認証装置2からユニーク部分を受信し、そのユニーク部分を用いて、ユニーク情報を生成してもよい。この場合にも、ユニーク情報に含まれるユニーク部分を用いて、チャレンジ・レスポンス認証を行うことができる。
記憶部12では、例えば、被認証装置1のIDが記憶されている。このIDは、被認証装置1の識別子であり、被認証装置1に固有な情報である。また、記憶部12では、例えば、後述する共通鍵暗号の鍵や、認証装置2の識別子であるID等が記憶されていてもよい。また、ユニーク情報に乱数値やカウント値が含まれる場合には、乱数値を取得するための乱数表や関数、カウント値を生成するための最新のカウント値等が記憶部12で記憶されていてもよい。
記憶部12に情報が記憶される過程は問わない。例えば、記録媒体を介して情報が記憶部12で記憶されるようになってもよく、通信回線等を介して送信された情報が記憶部12で記憶されるようになってもよく、または、入力デバイスを介して入力された情報が記憶部12で記憶されるようになってもよい。記憶部12は、不揮発性の記録媒体によって実現されることが好適であるが、揮発性の記録媒体によって実現されてもよい。記録媒体は、例えば、半導体メモリや磁気ディスク、光ディスクなどであってもよい。
暗号化部13は、ユニーク情報と後述する検証部15で生成された検証値とを暗号鍵によって暗号化して暗号情報を生成する。暗号鍵は、例えば、共通鍵暗号の鍵であってもよく、または、認証要求の送信先の認証装置2に対応する公開鍵暗号の公開鍵であってもよい。暗号鍵が共通鍵暗号の鍵である場合には、共通鍵暗号の鍵は、被認証装置1に固有の鍵であってもよいし、認証装置2に固有の共通鍵であってもよいし、被認証装置1と認証装置2のペアに固有の共通鍵であってもよい。この場合には、被認証装置1ごとに共通鍵暗号の鍵は異なることになる。また、後述するように、この共通鍵暗号の鍵を、認証装置2も保持している。また、暗号鍵が公開鍵暗号の公開鍵である場合には、送信先の認証装置2の公開鍵暗号の公開鍵は、例えば、後述する送信指示に含まれていてもよい。なお、ユニーク情報をシステム共通の暗号鍵で暗号化してもよく、この暗号鍵は共通鍵であってもよいし、公開鍵および秘密鍵であってもよい。
送信部14は、暗号化部13で生成された暗号情報を含む認証要求を、認証期間内に繰り返して認証装置2に送信する。なお、複数のユニーク情報が暗号化された暗号情報をそれぞれ含む複数の認証要求が、認証期間内に送信されるものとする。上記のように、例えば、各ユニーク情報が異なる情報である場合には、正当な被認証装置1から送信される認証要求ごとに、異なるユニーク情報が暗号化された暗号情報が含まれることになる。一方、例えば、ユニーク情報に重複が存在する場合には、正当な被認証装置1から送信される少なくとも2個の認証要求に、同じユニーク情報が暗号化された暗号情報が含まれることもあり得る。この場合であっても、認証期間内には、異なるユニーク情報に対応する複数の認証要求が送信されるものとする。なお、認証期間に送信される複数の認証要求が、同じユニーク情報が暗号化された暗号情報をそれぞれ含む場合に、例えば、同じユニーク情報が暗号化された暗号情報を含む認証要求の個数は決まっていてもよい。例えば、あらかじめ決められた個数の認証要求に、同じユニーク情報が暗号化された暗号情報が含まれ、その決められた個数の認証要求ごとに、暗号情報に対応するユニーク情報が異なるものとなってもよい。また、認証要求には、暗号情報以外の情報が含まれていてもよい。例えば、認証要求の送信元の被認証装置1のIDが、その認証要求に含まれていてもよい。また、暗号情報に対応する各検証値は、正当な被認証装置1から送信される認証要求ごとに、異なる検証データが含まれていることが望ましい。なお、暗号情報に対応する認証要求と検証値は、送信手段が異なっていてもよい。
検証部15は、認証後の検証のための検証値を生成する。検証値は、検証値を生成した時刻と、例えば、乱数などの値を含む。生成された検証値は、暗号化部13で暗号化されて送信部14から認証装置2に送信され、復号される。後述の検証データとして回線通信部26から送信され、システムサーバ3を経由して回線通信部16で受信される。再度検証部15で被認証装置1自身が送信した検証値か検証される。例えば、認証装置2から送信されてきた、検証値を生成した時刻や乱数などの値が、保存されているものと一致するかなど、整合を確認する。なお、検証値を生成した時刻に該当する期間に保存された、乱数などの値のみ、一致するかどうかを確認してもよい。また、利用者が利用した認証であったかなどが検証されてもよい。検証値は、認証されるごとに送信される。また、例えば記憶部12などに、例えば、一日など、一定期間保存されてよく、保存される内容は、検証値を含んでいてよい。検証部15は、検証された検証結果をシステムサーバ3に送信する。なお、検証値に含まれる値は乱数でもよいし、暗号数理的性質を持つ何らかの暗号学的ハッシュ関数値でもよい。また、被認証装置1に保存されるデータ量を節約するために、生成した時刻のみ送信毎に異なるように送信し、検証値として生成される乱数などの値は送信毎に異ならず、1秒などの一定期間ごとに間引き、異なるものでもよい。この時、被認証装置1に保存する検証値は、間引かれた乱数などの値の更新タイミングの、検証値が生成した時刻だけを保存してもよい。なお、ユニーク情報と検証値に重なる情報があり、同じパケットで送信する場合、重なるデータを省略してもよい。
回線通信部16は、システムサーバ3と通信するために利用されてもよいし、ほかの用途に利用されてもよい。システムサーバ3との通信では、検証値を含む検証データや検証結果、自身のID、暗号鍵などシステムの維持に必要な情報を通信してもよい。なお、この回線通信部16とシステムサーバ3の回線通信部36とは、専用回線で構築されていることが望ましく、通信手段は、例えば、携帯回線網や、有線回線網などでもよい。
認証期間は、通常、あらかじめ決められた時間的な長さである。1個目の認証要求の送信から認証期間が開始されてもよい。そのため、送信部14は、例えば、1個目の認証要求の送信からタイマによる計時を開始し、あらかじめ決められた認証期間が経過すると、認証要求の送信を終了してもよい。認証期間は特に限定されるものではないが、例えば、200ミリ秒から10秒程度の範囲内の時間であってもよい。なお、後述するように、認証期間が終了するまでは認証装置2における認証の処理が開始されないため、認証期間は短いほうが好適である。そのため、認証時間は、3秒以下であることが好適であり、1秒以下であることがさらに好適である。なお、送信部14は、例えば、被認証装置1が所定の送信指示を受信した際に、認証要求の送信を開始してもよい。その送信指示は、例えば、認証装置2の付近に配置された発信機から送信されるビーコンであってもよい。
送信部14は、通常、所定の時間間隔を空けて繰り返して認証要求を送信する。その時間間隔は、例えば、一定であってもよく、または、不定であってもよい。前者の場合には、その時間間隔は、設定されたものであってもよく、そうでなくてもよい。また、その時間間隔が不定の場合であっても、平均の時間間隔は設定できてもよい。例えば、認証要求がBluetooth(登録商標)の低消費電力(LE:Low Energy)によって通信される場合には、時間間隔は不定であるが、平均の時間間隔は決まっていることになる。いずれの場合であっても、その時間間隔は、送信部14が認証要求を送信する通信規格で定めされた最低の通信間隔以上の間隔となる。また、例えば、認証装置2が間欠的な受信を行う場合であっても、複数の認証要求のうち、少なくともいずれかの認証要求が認証装置2で受信されるように送信されることが好適である。そのため、例えば、認証要求の送信周期は、認証装置2の受信周期と異なっていてもよく、ランダムな送信間隔で認証要求の送信が行われてもよい。また、送信部14が認証期間に送信する認証要求の個数は、決まっていてもよく、または、そうでなくてもよい。後者の場合であっても、認証期間が決まっており、認証要求が所定の時間間隔を空けて送信されることによって、通常、認証期間内に送信される認証要求の個数、または個数の範囲は決まることになる。
送信部14が認証要求を送信する無線の通信規格は問わない。認証要求は、例えば、Bluetoothの低消費電力(以下、「BLE」と呼ぶこともある。)によって通信されてもよく、BluetoothのBR(Basic Rate)/EDR(Enhanced Data Rate)によって通信されてもよく、無線LAN(IEEE802.11)によって通信されてもよく、ZigBee(登録商標)などのIEEE802.15.4によって通信されてもよく、その他の無線の通信規格によって通信されてもよい。認証要求は、例えば、BLEや、BluetoothのBR/EDR、無線LANなどの近距離無線通信によって送受信されることが好適である。本実施の形態では、認証要求BLEによって通信される場合について主に説明する。
送信部14は、例えば、認証要求をブロードキャストで送信してもよく、ユニキャストで通信してもよい。通信相手を特定しないで認証要求を送信できることから、ブロードキャストで認証要求を送信することが好適である。本実施の形態では、送信部14が認証要求をブロードキャストで送信する場合について主に説明する。
なお、送信部14は、送信を行うための無線の送信デバイス(例えば、アンテナなど)を含んでもよく、または含まなくてもよい。また、送信部14は、ハードウェアによって実現されてもよく、または送信デバイスを駆動するドライバ等のソフトウェアによって実現されてもよい。
次に、本実施の形態による認証装置2について説明する。
受信部21は、被認証装置1から送信された、暗号鍵によって暗号化された暗号情報を含む認証要求を、認証期間内に繰り返して受信する。なお、認証要求の送信元は、通常、上記説明の被認証装置1である。一方、後述するように、攻撃者の装置が、被認証装置1から送信された認証要求を受信し、その受信した認証要求を再度、送信することや、ユニーク情報を独自に取得して暗号情報を生成し、その暗号情報を含む認証要求を送信することもあり得る。その場合に、受信部21は、認証要求が、正当な被認証装置1から送信されたのか、攻撃者の装置から送信されたのかを、その認証要求の受信時に判断することはできない。したがって、認証要求を送信した装置を、被認証装置1と呼ぶことにする。そして、後述するように、複数の認証要求が受信された後に、認証部24は、それらの認証要求を用いて、送信元が本来の被認証装置1、すなわち正当な被認証装置1であるのか、攻撃者の装置、すなわち正当でない被認証装置1であるのかを判断することになる。
受信部21は、被認証装置1から送信された、暗号鍵によって暗号化された暗号情報を含む認証要求を、認証期間内に繰り返して受信する。なお、認証要求の送信元は、通常、上記説明の被認証装置1である。一方、後述するように、攻撃者の装置が、被認証装置1から送信された認証要求を受信し、その受信した認証要求を再度、送信することや、ユニーク情報を独自に取得して暗号情報を生成し、その暗号情報を含む認証要求を送信することもあり得る。その場合に、受信部21は、認証要求が、正当な被認証装置1から送信されたのか、攻撃者の装置から送信されたのかを、その認証要求の受信時に判断することはできない。したがって、認証要求を送信した装置を、被認証装置1と呼ぶことにする。そして、後述するように、複数の認証要求が受信された後に、認証部24は、それらの認証要求を用いて、送信元が本来の被認証装置1、すなわち正当な被認証装置1であるのか、攻撃者の装置、すなわち正当でない被認証装置1であるのかを判断することになる。
受信部21は、間欠的に認証要求を受信してもよい。間欠的な受信とは、情報を受信する期間と、情報を受信しない期間とが交互に繰り返されることであってもよい。例えば、認証要求がBLE通信によって、ブロードキャストで送信される場合には、そのような間欠的な受信が行われることになる。間欠的な受信を行うことによって、消費電力を低減することができる。なお、間欠的な受信が行われる場合に、例えば、情報を受信する期間の長さと、情報を受信しない期間の長さとは一定であってもよく、または、不定であってもよい。本実施の形態では、受信部21が、間欠的な受信を行う場合について主に説明する。
なお、受信部21は、受信を行うための無線の受信デバイス(例えば、アンテナなど)を含んでもよく、または含まなくてもよい。また、受信部21は、ハードウェアによって実現されてもよく、または受信デバイスを駆動するドライバ等のソフトウェアによって実現されてもよい。
記憶部22では、復号鍵が記憶される。例えば、暗号鍵が共通鍵暗号の鍵である場合には、復号鍵は、その共通鍵暗号の鍵である。この場合には、被認証装置1ごとに復号鍵(共通鍵暗号の鍵)が記憶部22で記憶されていてもよい。記憶部22では、例えば、被認証装置1のIDと、そのIDで識別される被認証装置1の共通鍵暗号の鍵とを含む鍵対応情報が複数、記憶されていてもよい。また、例えば、暗号鍵が公開鍵暗号の公開鍵である場合には、復号鍵は、その公開鍵暗号の公開鍵とペアになる秘密鍵である。また、ユニーク情報に乱数値やカウント値が含まれる場合には、乱数値を取得するための乱数表や関数、カウント値を生成するための最新のカウント値等が記憶部22で記憶されていてもよい。また、記憶部22では、後述する処理で用いられる、受信回数の閾値や、受信の確率が閾値より低い受信間隔を示す情報などが記憶されていてもよい。
記憶部22に情報が記憶される過程は問わない。例えば、記録媒体を介して情報が記憶部22で記憶されるようになってもよく、通信回線等を介して送信された情報が記憶部22で記憶されるようになってもよく、または、入力デバイスを介して入力された情報が記憶部22で記憶されるようになってもよい。記憶部22は、不揮発性の記録媒体によって実現されることが好適であるが、揮発性の記録媒体によって実現されてもよい。記録媒体は、例えば、半導体メモリや磁気ディスク、光ディスクなどであってもよい。
復号部23は、復号鍵を用いて暗号情報を復号して復号情報を取得する。例えば、復号鍵が共通鍵暗号の鍵であり、認証要求に、その認証要求の送信元の被認証装置1のIDが含まれる場合には、復号部23は、そのIDに対応付けられている共通鍵暗号の鍵を記憶部22から読み出し、その読み出した共通鍵暗号の鍵を用いて暗号情報を復号してもよい。また、例えば、復号鍵が秘密鍵である場合には、復号部23は、秘密鍵を記憶部22から読み出し、その読み出した秘密鍵を用いて暗号情報を復号してもよい。正当な被認証装置1から送信された認証要求に含まれる暗号情報が復号された復号情報はユニーク情報と検証値となる。したがって、暗号情報を復号できなかった場合や、復号した復号情報が、あらかじめ決められたユニーク情報と検証値の形式に合わなかった場合などには、その暗号情報を含む認証要求を送信した装置が、正当な被認証装置1ではないと判断することができる。
認証部24は、復号鍵によって復号できた暗号情報を含む、認証期間内に受信された複数の認証要求を用いて、被認証装置1が正当かどうかを判断する。復号鍵が共通鍵暗号の鍵である場合には、認証期間に受信された複数の認証要求のうち、一の共通鍵暗号の鍵を用いて復号できた暗号情報を含んでいる複数の認証要求を用いて、被認証装置1の認証が行われることになる。上記のように、共通鍵暗号の鍵が被認証装置1ごとに異なる場合には、一の共通鍵暗号の鍵を用いて復号できた暗号情報を含む複数の認証要求は、一の被認証装置1から送信されたと考えることができ、その複数の認証要求を用いて認証を行うことによって、その被認証装置1についての認証を行うことができることになる。一方、復号鍵が秘密鍵である場合には、認証期間に受信された複数の認証要求のうち、認証装置2の秘密鍵を用いて復号できた暗号情報を含んでいる複数の認証要求を用いて、被認証装置1の認証が行われることになる。ここで、復号鍵が秘密鍵である場合には、秘密鍵を用いて復号できた暗号情報を含んでいる複数の認証要求に、複数の被認証装置1から送信された認証要求が含まれることがあり得る。そのため、例えば、認証要求に、その認証要求の送信元の被認証装置1のIDが含まれる場合には、認証部24は、認証期間内に受信された、同じIDを含む複数の認証要求を用いて、被認証装置1が正当かどうかを判断してもよい。なお、複数の認証要求を用いて、被認証装置1が正当かどうかを判断するとは、複数の認証要求そのものを用いることであってもよく、複数の認証要求に関連する情報を用いることであってもよい。複数の認証要求に関連する情報は、例えば、複数の認証要求からそれぞれ取得された複数の復号情報であってもよく、複数の認証要求の受信間隔であってもよく、複数の認証要求の個数であってもよく、複数の認証要求に関連するその他の情報であってもよい。また、認証要求に、その認証要求の送信元の被認証装置1のIDが含まれる場合には、通常、一の共通鍵暗号の鍵によって復号できる暗号情報を有している認証要求には、同じIDが含まれることになる。したがって、暗号鍵が共通鍵暗号の鍵である場合には、認証部24は、認証期間内に受信された、同じIDを含む複数の認証要求を用いて、被認証装置1が正当かどうかを判断してもよい。認証部24は、ある被認証装置1から1個目の認証要求が受信されてから、あらかじめ決められた認証期間内に、その被認証装置1から受信された複数の認証要求を用いて、被認証装置1の認証を行ってもよい。
なお、認証部24は、例えば、ある認証期間に受信された複数の認証要求のすべてが、正当ではない被認証装置1から送信された場合に、その被認証装置1が正当ではないと判断する。また、認証部24は、例えば、ある認証期間に受信された複数の認証要求に、正当ではない装置から送信された認証要求が含まれる場合にも、その複数の認証要求を送信した被認証装置1が正当ではないと判断する。すなわち、複数の認証要求が、正当な被認証装置1と、正当ではない被認証装置1とから送信された場合にも、その複数の認証要求の送信元の被認証装置1は、正当ではないと判断されることになる。この場合には、認証要求の送信元に、少なくとも攻撃者の装置が含まれることになり、仮に正当な被認証装置1が送信元に含まれるとしても、両者を区別することはできないため、両者共に正当でないと判断することになる。
また、認証部24は、認証後に認証内容と検証値を含めた検証データとして、回線通信部26を通じてシステムサーバ3を経由して送信する。なお、認証後の代わりに認証期間終了後であってもよい。また、検証データに認証内容を含めず、検証値だけでも良い。
回線通信部26は、システムサーバ3と通信するために利用されてもよいし、ほかの用途に利用されてもよい。システムサーバ3との通信では、後述する検証データの送信や、被認証装置1のID、暗号鍵などシステムの維持に必要な情報を通信してもよい。なお、この回線通信部26とシステムサーバ3の回線通信部36とは、専用回線で構築されていることが望ましく、通信手段は、例えば、携帯回線網や、有線回線網などでもよい。
次に、本実施の形態によるシステムサーバ3について説明する。
システムサーバ3は、被認証装置1が認証装置2に認証されたことを、検証するものであり、システムの維持や保全をするためのものである。なお、そのほかの用途として利用してもよい。サーバ認証部35は、一般回路通信部36を経由する認証装置2から送信される検証データを被認証装置1に送信し、被認証装置1で検証された検証結果を用いて、システム全体の維持を決定する。例えば、被認証装置1から不正利用や不正利用の可能性を検証結果として受け取った場合、被認証装置1の暗号鍵を削除して停止したり、更新して新たなものを発行することなどができる。また、不正利用の検証をシステム管理者や被認証装置1の利用者、認証装置2の管理者に促すことができる。なお、システムサーバ3は、被認証装置1と認証装置2と独立している方が望ましいが、認証装置2内に設置されていてもよく、認証装置2が、システムサーバ3のサーバ認証部の機能を保有していてもよい。
システムサーバ3は、被認証装置1が認証装置2に認証されたことを、検証するものであり、システムの維持や保全をするためのものである。なお、そのほかの用途として利用してもよい。サーバ認証部35は、一般回路通信部36を経由する認証装置2から送信される検証データを被認証装置1に送信し、被認証装置1で検証された検証結果を用いて、システム全体の維持を決定する。例えば、被認証装置1から不正利用や不正利用の可能性を検証結果として受け取った場合、被認証装置1の暗号鍵を削除して停止したり、更新して新たなものを発行することなどができる。また、不正利用の検証をシステム管理者や被認証装置1の利用者、認証装置2の管理者に促すことができる。なお、システムサーバ3は、被認証装置1と認証装置2と独立している方が望ましいが、認証装置2内に設置されていてもよく、認証装置2が、システムサーバ3のサーバ認証部の機能を保有していてもよい。
[検証値と検証データとの整合に基づいた判断]
認証部24は、例えば、複数の復号情報に所定数以上の重複が存在する場合に、被認証装置1が正当でないと判断してもよいし、例えば、認証要求が所定の期間にあらかじめ決められた回数を超えて受信された場合に、被認証装置1が正当でないと判断してもよい。また、例えば、認証期間における認証要求の受信間隔に、確率が閾値より低い受信間隔が含まれる場合に、被認証装置1が正当でないと判断してもよいし、例えば、認証期間に受信された複数の認証要求からそれぞれ取得された複数の復号情報が、ユニーク情報と整合しない場合に、被認証装置1が正当でないと判断してもよい。また、認証部24は、複数の復号情報がユニーク情報と整合するかどうかを、例えば、複数の復号情報の集合について判断してもよい。例えば、ユニーク情報がカウント値である場合には、認証部24は、受信された順番に応じた複数の復号情報が、カウント値のルールに合うときに、複数の復号情報がユニーク情報と整合すると判断し、そうでないときに、複数の復号情報がユニーク情報と整合しないと判断してもよい。具体的には、複数の復号情報が、受信された順番に、「2」「4」「6」「8」…であり、ユニーク情報の生成ルールが、2ずつのインクリメントである場合に、複数の復号情報は、ユニーク情報の生成ルールに合っているため、認証部24は、複数の復号情報がユニーク情報と整合すると判断する。一方、例えば、複数の復号情報が、受信された順番に、「2」「4」「6」「6」「8」…であり、ユニーク情報の生成ルールが、2ずつのインクリメントである場合には、複数の復号情報は、ユニーク情報の生成ルールに合っていないため、認証部24は、複数の復号情報がユニーク情報と整合しないと判断する。また、例えば、ユニーク情報が時刻である場合には、認証部24は、複数の復号情報について、復号情報である時刻と、その復号情報に対応する認証要求の受信時刻との差である時刻差をそれぞれ取得し、取得した複数の時刻差が一定であるときに、複数の復号情報がユニーク情報と整合すると判断し、取得した複数の時刻差が一定でないときに、複数の復号情報がユニーク情報と整合しないと判断してもよい。このようにすることで、被認証装置1の時計部と、認証装置2の時計部とが完全に同期していない場合でも、復号情報が、時刻であるユニーク情報と整合しているかどうかを適切に判断することができる。被認証装置1と認証装置2とは通常、短距離で無線通信が行われ、その無線通信に起因する遅延が、複数の認証要求について略一定であると考えられるからである。なお、複数の時刻差が一定であるとは、例えば、複数の時刻差の最大値と最小値との差が、あらかじめ決められた閾値より小さいことであってもよく、複数の時刻差のばらつき(例えば、分散や標準偏差など)が、あらかじめ決められた閾値より小さいことであってもよい。また、例えば、ユニーク情報が時刻である場合には、認証部24は、受信の順番に応じて復号情報である時刻が増加しないとき、例えば、時点Aに受信された認証要求に対応する復号情報である時刻の方が、時点Aの後である時点Bに受信された認証要求に対応する復号情報である時刻よりも後の時点を示すときに、複数の復号情報がユニーク情報と整合しないと判断してもよい。その場合には、時刻Bに受信された認証要求は、時刻Aに受信された認証要求よりも以前に送信された認証要求を、攻撃者の装置がコピーして送信したものと考えられるからである。
認証部24は、例えば、複数の復号情報に所定数以上の重複が存在する場合に、被認証装置1が正当でないと判断してもよいし、例えば、認証要求が所定の期間にあらかじめ決められた回数を超えて受信された場合に、被認証装置1が正当でないと判断してもよい。また、例えば、認証期間における認証要求の受信間隔に、確率が閾値より低い受信間隔が含まれる場合に、被認証装置1が正当でないと判断してもよいし、例えば、認証期間に受信された複数の認証要求からそれぞれ取得された複数の復号情報が、ユニーク情報と整合しない場合に、被認証装置1が正当でないと判断してもよい。また、認証部24は、複数の復号情報がユニーク情報と整合するかどうかを、例えば、複数の復号情報の集合について判断してもよい。例えば、ユニーク情報がカウント値である場合には、認証部24は、受信された順番に応じた複数の復号情報が、カウント値のルールに合うときに、複数の復号情報がユニーク情報と整合すると判断し、そうでないときに、複数の復号情報がユニーク情報と整合しないと判断してもよい。具体的には、複数の復号情報が、受信された順番に、「2」「4」「6」「8」…であり、ユニーク情報の生成ルールが、2ずつのインクリメントである場合に、複数の復号情報は、ユニーク情報の生成ルールに合っているため、認証部24は、複数の復号情報がユニーク情報と整合すると判断する。一方、例えば、複数の復号情報が、受信された順番に、「2」「4」「6」「6」「8」…であり、ユニーク情報の生成ルールが、2ずつのインクリメントである場合には、複数の復号情報は、ユニーク情報の生成ルールに合っていないため、認証部24は、複数の復号情報がユニーク情報と整合しないと判断する。また、例えば、ユニーク情報が時刻である場合には、認証部24は、複数の復号情報について、復号情報である時刻と、その復号情報に対応する認証要求の受信時刻との差である時刻差をそれぞれ取得し、取得した複数の時刻差が一定であるときに、複数の復号情報がユニーク情報と整合すると判断し、取得した複数の時刻差が一定でないときに、複数の復号情報がユニーク情報と整合しないと判断してもよい。このようにすることで、被認証装置1の時計部と、認証装置2の時計部とが完全に同期していない場合でも、復号情報が、時刻であるユニーク情報と整合しているかどうかを適切に判断することができる。被認証装置1と認証装置2とは通常、短距離で無線通信が行われ、その無線通信に起因する遅延が、複数の認証要求について略一定であると考えられるからである。なお、複数の時刻差が一定であるとは、例えば、複数の時刻差の最大値と最小値との差が、あらかじめ決められた閾値より小さいことであってもよく、複数の時刻差のばらつき(例えば、分散や標準偏差など)が、あらかじめ決められた閾値より小さいことであってもよい。また、例えば、ユニーク情報が時刻である場合には、認証部24は、受信の順番に応じて復号情報である時刻が増加しないとき、例えば、時点Aに受信された認証要求に対応する復号情報である時刻の方が、時点Aの後である時点Bに受信された認証要求に対応する復号情報である時刻よりも後の時点を示すときに、複数の復号情報がユニーク情報と整合しないと判断してもよい。その場合には、時刻Bに受信された認証要求は、時刻Aに受信された認証要求よりも以前に送信された認証要求を、攻撃者の装置がコピーして送信したものと考えられるからである。
また、認証部24によって認証された場合、認証部24は、認証内容と検証値を含めた検証データとして、回線通信部26を通じてシステムサーバ3を経由して被認証装置1に送信する。検証値を含む検証データは、認証要求に含まれる検証値を選んでもよいし、認証期間中の複数の認証要求に含まれる検証値からランダムに一つ選んでもよいし、認証期間中の複数の認証要求の最初に受信したものに含まれる検証値を選んでもよい。また、検証データは認証期間や認証期間終了後に複数回送ってもよいし、一度だけ送ってもよい。なお、認証部24によって認証された場合でなくても、検証データを送信してもよい。なお、認証部24は、システムサーバ3を経由せず、直接、被認証装置1に送信してもよい。
なお、認証部24は、複数の復号情報が検証値と整合するかどうかを、例えば、複数の復号情報の集合について判断してもよい。例えば、認証部24は、複数の復号情報に含まれる検証値を生成した時刻について、検証値に含まれる検証値を生成した時刻と、その検証値を受信した時刻との差である時刻差をそれぞれ取得し、取得した複数の時刻差が一定であるときに、複数の復号情報が検証値と整合すると判断し、取得した複数の時刻差が一定でないときに、複数の復号情報が検証値と整合しないと判断してもよい。このようにすることで、被認証装置1の時計部と、認証装置2の時計部とが完全に同期していない場合でも、復号情報が、検証値に含まれる検証値を生成した時刻と整合しているかどうかを適切に判断することができる。被認証装置1と認証装置2とは通常、短距離で無線通信が行われ、その無線通信に起因する遅延が、複数の認証要求について略一定であると考えられるからである。なお、複数の時刻差が一定であるとは、例えば、複数の時刻差の最大値と最小値との差が、あらかじめ決められた閾値より小さいことであってもよく、複数の時刻差のばらつき(例えば、分散や標準偏差など)が、あらかじめ決められた閾値より小さいことであってもよい。また、例えば、認証部24は、受信の順番に応じて検証値に含まれる検証値を生成した時刻が増加しないとき、例えば、時点Aに受信された検証値に含まれる検証値を生成した時刻の方が、時点Aの後である時点Bに受信された検証値に含まれる検証値を生成した時刻よりも後の時点を示すときに、複数の復号情報が検証値と整合しないと判断してもよい。その場合には、時刻Bに受信された検証値は、時刻Aに受信された検証値よりも以前に送信された検証値を、攻撃者の装置がコピーして送信したものと考えられるからである。
出力部25は、認証部24による判断結果を出力する。この判断結果は、被認証装置1が正当であるか、正当でないのかの判断結果、すなわち被認証装置1が認証されたのか、認証されなかったのかを示す情報である。出力部25は、認証部24による判断結果を、認証結果に応じて処理を行う構成や装置等に出力することが好適である。
システムサーバ3は認証装置2から受け取った検証データを、対象の被認証装置1に、例えば5分程度で回線通信部26、回線通信部36、および回線通信部16を経由して送信する。送信できなかった場合、例えば、3日程度の閾値を設けて送信を繰り返す。閾値までに送信できなかった場合、被認証装置1が利用されていないと判断し、システムサーバ3に不正利用の可能性を検証結果として通知する。例えば、安全のため一時利用停止の処理を行ってもよい。
被認証装置1は、検証データを受信した場合、検証値を保持しているデータと照合する。照合した結果、一致しなかった場合、システムサーバ3に不正利用を検証結果として通知する。例えば、安全のため利用停止の処理を行ってもよい。一致した場合、利用者の利用を確認してもよい。利用していないことが分かった場合、システムサーバ3に不正利用の可能性を検証結果として通知してもよい。利用を確認した場合、システムサーバ3に正当利用を検証結果として通知してもよい。なお、判断結果の確認のためには被認証装置1、および対象アプリケーションにログインをすることが必要となるため、被認証装置1が利用者の手元にない場合など、利用を制限することが可能となる。
ここで、この利用者の利用の確認の出力は、例えば、表示デバイス(例えば、液晶ディスプレイや有機ELディスプレイなど)への表示でもよく、所定の機器への通信回線を介した送信でもよく、プリンタによる印刷でもよく、スピーカによる音声出力でもよく、バイブレーションで通知してもよく、記録媒体への蓄積でもよく、他の構成要素への引き渡しでもよい。なお、出力部25は、出力を行うデバイス(例えば、表示デバイスや通信デバイス、プリンタなど)を含んでもよく、または含まなくてもよい。また、出力部25は、ハードウェアによって実現されてもよく、または、それらのデバイスを駆動するドライバ等のソフトウェアによって実現されてもよい。
次に、被認証装置1の動作について図2のフローチャートを用いて説明する。図2は、被認証装置1が認証要求の送信を開始すると判断した後の処理である認証要求送信方法について示すフローチャートである。上記のように、被認証装置1は、例えば、所定の送信指示を受信した際に、認証要求の送信を開始すると判断してもよい。
(ステップS101)送信部14は、認証期間を開始させる。送信部14は、例えば、認証期間の終了を検知するために、タイマによる計時を開始してもよい。
(ステップS102)送信部14は、認証要求を送信するかどうか判断する。そして、認証要求を送信する場合には、ステップS103に進み、そうでない場合には、ステップS107に進む。例えば、認証要求を所定の時間間隔で送信する場合には、送信部14は、その所定の時間間隔ごとに、認証要求を送信すると判断してもよい。
(ステップS103)取得部11は、ユニーク情報を取得する。このユニーク情報の取得は、例えば、ユニーク部分の取得と、取得したユニーク部分と、非ユニーク部分との結合とによって行われてもよい。
(ステップS104)検証部15は、認証後の検証のための検証値を生成する。検証値は、検証値を生成した時刻と、例えば、乱数などの値からなる。また、生成される検証値は送信毎に異なってもよいし、1秒などの一定期間ごとに異なるものでもよい。
(ステップS105)暗号化部13は、暗号鍵を用いて、ステップS103で取得されたユニーク情報と検証値とを暗号化して、暗号情報を生成する。
(ステップS106)送信部14は、ステップS105で生成された暗号情報を含む認証要求を送信する。なお、認証要求には、暗号情報以外の情報が含まれていてもよい。そして、ステップS102に戻る。
(ステップS107)送信部14は、認証要求の送信を終了するかどうか判断する。そして、終了する場合には、認証要求を送信する一連の処理が終了となり、そうでない場合には、ステップS102に戻る。なお、送信部14は、例えば、ステップS101で開始された認証期間が終了した場合に、認証要求の送信を終了すると判断してもよい。具体的には、送信部14は、ステップS101で計時を開始したタイマの値が、認証期間の時間的な長さを超えた場合に、認証要求の送信を終了すると判断し、そうでない場合に、終了しないと判断してもよい。
なお、図2のフローチャートでは、ユニーク情報の取得と、暗号情報の生成と、認証要求の送信とが繰り返される場合について示しているが、そうでなくてもよい。例えば、複数のユニーク情報が取得され、その複数のユニーク情報をそれぞれ暗号化した複数の暗号情報が生成された後に、各暗号情報を含む認証要求の送信が繰り返されてもよい。また、同じユニーク情報が暗号化された暗号情報が、複数の認証要求に含まれる場合には、ユニーク情報の重複数だけ、ユニーク情報の取得や、暗号情報の生成が行われず、同じユニーク情報や、同じ暗号情報が繰り返して用いられてもよい。また、ステップS101やステップS107における認証期間の管理は、送信部14以外の構成要素、例えば、取得部11等によって行われてもよい。また、図2のフローチャートにおける処理の順序は一例であり、同様の結果を得られるのであれば、各ステップの順序を変更してもよい。
次に、認証装置2の動作について図3のフローチャートを用いて説明する。図3は、認証装置2による複数の認証要求を用いた被認証装置1の認証に関する処理である認証方法について示すフローチャートである。
(ステップS201)受信部21は、認証要求を受信したかどうか判断する。そして、認証要求を受信した場合には、ステップS202に進み、そうでない場合には、ステップS203に進む。なお、受信部21が間欠的に認証要求を受信する場合には、受信部21は、受信期間にのみ認証要求を受信し、受信期間ではない期間には、認証要求を受信しなくてもよい。
(ステップS202)復号部23は、ステップS201で受信された認証要求に含まれる暗号情報を、復号鍵を用いて復号し、復号情報を取得する。そして、ステップS201に戻る。復号部23は、その復号情報を、認証要求の送信元である被認証装置1のIDに対応付けて記憶部22に蓄積してもよい。また、復号部23は、復号情報を、その復号情報に対応する認証要求の受信時刻に対応付けて記憶部22に蓄積してもよい。なお、ステップS201で受信された認証要求に含まれる暗号情報が、復号鍵を用いて復号できない場合には、復号部23は、復号を行うことなく、ステップS201に戻ってもよい。また、この場合には、認証部24は、復号できない暗号情報を含んでいる認証要求の送信元である被認証装置1について、正当ではないと判断してもよい。
(ステップS203)認証部24は、認証の処理を行うかどうか判断する。そして、認証の処理を行う場合には、ステップS204に進み、そうでない場合には、ステップS201に戻る。認証部24は、例えば、ある共通鍵暗号の鍵で復号できた暗号情報を含む1個目の認証要求が受信されてから認証期間が経過した際に、その共通鍵暗号の鍵で復号できた暗号情報を含む複数の認証要求を用いた認証の処理を行うと判断してもよい。また、認証部24は、例えば、あるIDの被認証装置1から1個目の認証要求を受信してから認証期間が経過した際に、そのIDの被認証装置1から送信された複数の認証要求を用いた認証の処理を行うと判断してもよい。
(ステップS204)認証部24は、複数の認証要求からそれぞれ取得された複数の復号情報に所定数以上の重複が存在するかどうか判断する。そして、複数の復号情報に所定数以上の重複が存在する場合には、ステップS209に進み、そうでない場合には、ステップS205に進む。
(ステップS205)認証部24は、所定の期間における認証要求の受信回数が、あらかじめ決められた閾値の回数を超えているかどうか判断する。そして、認証要求の受信回数があらかじめ決められた閾値の回数を超えている場合には、ステップS209に進み、そうでない場合には、ステップS206に進む。
(ステップS206)認証部24は、認証期間における認証要求の受信間隔に、確率が閾値より低い受信間隔が含まれるかどうか判断する。そして、認証要求の受信間隔に、確率が閾値より低い受信間隔が含まれる場合には、ステップS209に進み、そうでない場合には、ステップS207に進む。
(ステップS207)認証部24は、認証期間に受信された複数の認証要求にそれぞれ対応する複数の復号情報が、ユニーク情報と整合するかどうか判断する。そして、複数の復号情報がユニーク情報と整合する場合には、ステップS208に進み、整合しない場合には、ステップS209に進む。
なお、ステップS204からステップS207までの処理は、例えば、復号鍵によって復号できた暗号情報を含む、認証期間内に受信された複数の認証要求について行われるものとする。すなわち、ステップS204からステップS207までの処理は、例えば、あるIDの被認証装置1から認証期間内に受信された複数の認証要求について行われてもよい。
(ステップS208)認証部24は、複数の認証要求を送信した被認証装置1が正当であると判断する。すなわち、その被認証装置1が認証されたことになる。
(ステップS209)認証部24は、複数の認証要求を送信した被認証装置1が正当でないと判断する。すなわち、その被認証装置1が認証されなかったことになる。
(ステップS210)出力部25は、ステップS208,S209の判断結果を出力する。
(ステップS211)認証部24は、復号情報に含まれている検証値を一つ選ぶ。
(ステップS212)認証部24は、検証値を認証内容と共に検証データとしてシステムサーバ3に送信する。そして、ステップS201に戻る。なお、直接、被認証装置1に送信してもよい。
なお、図3のフローチャートでは、認証の処理において、ステップS204からステップS207までの各処理を行う場合について示しているが、そうでなくてもよい。それらの処理のうち、1以上の処理を行わなくてもよい。ただし、その場合であっても、複数の認証要求を用いた認証の処理、例えば、ステップS204からステップS206までの少なくともいずれかの処理は行われることが好適である。また、図3のフローチャートにおける処理の順序は一例であり、同様の結果を得られるのであれば、各ステップの順序を変更してもよい。例えば、ステップS204からステップS207までの各処理を異なる順序にしてもよい。また、ステップS211、ステップS212は認証期間や認証期間終了後に複数回実行してもよいし、一度だけ実行してもよい。また、図3のフローチャートにおいて、電源オフや処理終了の割り込みにより処理は終了する。
次に、システムサーバ3の動作について図4のフローチャートを用いて説明する。図4は、認証装置2に送信された検証データを受信し、被認証装置1に検証データを送信する方法について示すフローチャートである。
(ステップS301)サーバ認証部35は、認証装置2から送信される検証データを受信したかどうか判断する。そして、検証データを受信した場合には、ステップS302に進み、そうでない場合には、ステップS301に戻る。
(ステップS302)回線通信部36は、検証データを対応する被認証装置1に送信する。
(ステップS303)サーバ認証部35は、検証データを対応する被認証装置1に送信できたかを確認する。そして、できた場合には、ステップS301に戻り、そうでない場合には、ステップS304に進む。
(ステップS304)サーバ認証部35は、検証データを対応する被認証装置1に送信した時刻が、最初に送信した時刻から経過した時間が閾値内かどうか判断する。そして、閾値時間内の場合には、ステップS302に進み、そうでない場合には、ステップS305に進む。
(ステップS305)サーバ認証部35は、検証データを対応する被認証装置1に送信できなかったことで、不正利用の可能性を検証結果として出力する。なお、さらに検証データを対応する被認証装置1に再送してもよいし、不正利用を防止するため、暗号鍵を削除して利用を停止してもよい。
なお、図4フローチャートにおけるS301は同じ検証内容に対し検証データが複数くる場合に、複数回実行してもよいし、一度だけ実行してもよい。また、システムサーバ3のフローを認証装置2で実行してもよく、認証装置2が、直接、被認証装置1と通信してもよい。
次に、被認証装置1の検証動作について図5のフローチャートを用いて説明する。図5は、システムサーバ3による検証データを用いた被認証装置1の検証に関する処理方法について示すフローチャートである。
(ステップS111)回線通信部16は、検証データを受信したかどうか判断する。そして、検証データを受信した場合には、ステップS112に進み、そうでない場合には、ステップS111に戻る。
(ステップS112)検証部15は、検証データ内の検証値を保持データと照合する。
(ステップS113)検証部15は、検証データ内の検証値を保持データと一致するかどうか判断する。そして、一致した場合には、ステップS114に進み、そうでない場合には、ステップS116に進む。
(ステップS114)検証部15は、被認証装置1の利用者に対し検証データ内の認証内容との正当性を利用者に確認させる。正当性が確認された場合にはステップS115に進み、そうでない場合にはステップS117に進む。
(ステップS115)回線通信部16は回線通信部36に対して、検証結果として利用の正当性が認められた旨を送信し、ステップS111へ戻る。
(ステップS116)回線通信部16は回線通信部36に対して、不正利用である旨を検証結果として送信し、ステップS111へ戻る。
(ステップS117)回線通信部16は回線通信部36に対して、不正利用の可能性を検証結果として送信し、ステップS111へ戻る。
次に、システムサーバ3の動作について図6のフローチャートを用いて説明する。図6は、被認証装置1からの検証結果に基づくシステムサーバ3の動作を示すフローチャートである。
(ステップS311)
回線通信部36は、検証結果を受信したかどうか判断する。そして、検証結果を受信した場合には、ステップS312に進み、そうでない場合には、ステップS311に戻る。
回線通信部36は、検証結果を受信したかどうか判断する。そして、検証結果を受信した場合には、ステップS312に進み、そうでない場合には、ステップS311に戻る。
(ステップS312)
サーバ認証部35は、検証結果が不正利用であるか判断する。そして、不正利用である場合には、ステップS314に進み、そうでない場合には、ステップS313に進む。
サーバ認証部35は、検証結果が不正利用であるか判断する。そして、不正利用である場合には、ステップS314に進み、そうでない場合には、ステップS313に進む。
(ステップS313)
サーバ認証部35は、検証結果が不正利用の可能性があるか判断する。そして、不正利用の可能性有である場合には、ステップS314に進み、そうでない場合には、ステップS311へ戻る。
サーバ認証部35は、検証結果が不正利用の可能性があるか判断する。そして、不正利用の可能性有である場合には、ステップS314に進み、そうでない場合には、ステップS311へ戻る。
(ステップS314)サーバ認証部35は、不正利用を防止するための処置をとる。例えば、被認証装置1の暗号鍵を削除して停止したり、更新して新たなものを発行することなどができる。また、不正利用の検証をシステム管理者や被認証装置1の利用者、認証装置2の管理者に促すことができる。この後、ステップS311へ戻る。
(ステップS315)サーバ認証部35は、不正利用の可能性を考慮し、一部の利用を停止するなど不正利用防止のための処置をとる。この後、ステップS311へ戻る。
なお、図6のフローチャートでは、検証の処理において、ステップS312からステップS315までの各処理を行う場合について示しているが、そうでなくてもよい。それらの処理のうち、1以上の処理を行わなくてもよい。ただし、その場合であっても、検証の処理、例えば、ステップS312およびステップS314か、ステップS313およびステップS315か、の少なくともいずれかの処理は行われることが好適である。また、図6のフローチャートにおける処理の順序は一例であり、同様の結果を得られるのであれば、各ステップの順序を変更してもよい。例えば、ステップS312とステップS313の各処理を異なる順序にしてもよい。また、ステップS314、ステップS315は都度実行してもよいし、一定時間経過後にバッチ処理として対象被認証装置1群に対して実行してもよい。
次に、本実施の形態による被認証装置1及び認証装置2の動作について、具体例を用いて説明する。この具体例では、認証装置2の受信部21は、間欠的に認証要求を受信するものとする。すなわち、受信部21は、受信期間にのみ認証要求を受信し、それ以外の期間には、被認証装置1から送信された認証要求を受信しないものとする。
また、この具体例では、正当な被認証装置1は、認証期間に10個の認証要求を送信するものとする。上記のように、受信部21は、間欠的な受信を行うため、認証部24は、ある被認証装置1から認証期間に受信された認証要求の個数が、閾値「7」を超える場合に、その被認証装置1が正当でないと判断するものとする。
また、この具体例では、ユニーク情報が時刻であるとする。そして、認証部24は、復号情報である時刻と、その復号情報に対応する認証要求が受信された時刻との差があらかじめ決められた閾値を超えている場合に、その認証要求を送信した被認証装置1が正当ではないと判断するものとする。また、ユニーク情報は、共通鍵暗号の鍵によって暗号化されるものとする。
また、この具体例では、送信される認証要求ごとに、異なるユニーク情報が暗号化された暗号情報が含まれる場合について主に説明し、認証期間に送信される複数の認証要求に、同じユニーク情報が暗号化された暗号情報が含まれる場合については後述する。
正当な被認証装置1のみから認証要求が送信される場合について、図7を用いて説明する。図7で示されるように、時刻t1〜t10に、それぞれユニーク情報である時刻t1〜t10を暗号化した情報を含む認証要求が、被認証装置1から認証装置2に送信されるものとする。
具体的には、被認証装置1の送信部14は、認証装置2から送信された、認証装置2のIDを含む送信指示を受信すると、タイマによる計時を開始する(ステップS101)。なお、その時点の時刻はt1であったとする。また、被認証装置1は、例えば、記憶部12で記憶されている認証装置2のIDと、送信指示に含まれるIDとが一致することによって、送信指示が認証装置2から送信されたと判断してもよい。また、1個目の認証要求の送信であるため、送信部14は、時間待ちを行わないですぐに認証要求を送信すると判断し、図示しない経路で、取得部11に、ユニーク情報の取得の指示を渡す(ステップS102)。その指示を受け取ると、取得部11は、その時点の時刻t1であるユニーク情報を取得して暗号化部13に渡す(ステップS103)。ユニーク情報である時刻t1を受け取ると、暗号化部13は、記憶部12で記憶されている被認証装置1のIDを取得すると共に、送信指示または記憶部12から認証装置2のIDを取得し、時刻t1と、被認証装置1のIDと、認証装置2のIDとを、記憶部12で記憶されている共通鍵暗号の鍵を用いて暗号化して暗号情報を生成し、送信部14に渡す(ステップS105)。暗号情報を受け取ると、送信部14は、その暗号情報と、記憶部12から取得した被認証装置1のIDとを含む認証要求をBLE通信のブロードキャストによって送信する(ステップS106)。このような認証要求の送信が繰り返されることによって、時刻t10までに10個の認証要求が被認証装置1から認証装置2に送信される(ステップS102〜S106)。なお、時刻t10に10個目の認証要求が送信された直後に、時刻t1に開始されたタイマの値が、認証期間の時間的な長さを超えたとすると、認証要求の送信の処理が終了される(ステップS107)。
認証装置2の受信部21が間欠的な受信を行っているとすると、図7で示されるように、時刻t2,t4,t5,t7,t8,t10に送信された認証要求のみが認証装置2で受信されることになる。そして、各認証要求が受信されると(ステップS201)、復号部23は、認証要求に含まれる被認証装置1のIDを取得し、そのIDに対応付けられている共通鍵暗号の鍵を、記憶部22から取得する。そのようにして取得した共通鍵暗号の鍵を用いて、復号部23は、受信された認証要求に含まれる暗号情報を復号して復号情報を取得する(ステップS202)。そして、復号部23は、復号情報に含まれる被認証装置1のIDが、認証要求に平文で含まれる被認証装置1のIDと一致するかどうか、また、復号情報に含まれる認証装置2のIDが、自装置のIDと一致するかどうか判断する。この場合には、いずれにおいてもIDが一致したものとする。すると、復号部23は、その復号情報を、認証要求に含まれる被認証装置1のID、及びその認証要求の受信時刻に対応付けて記憶部22に蓄積する。なお、いずれか一方のIDが一致しなかった場合には、復号部23は、その復号情報を記憶部22に蓄積しなくてもよい。このような処理が、認証要求が受信されるごとに繰り返される。
認証部24は、記憶部22において記憶されている復号情報について、被認証装置1のIDごとに、最も古い受信時刻から現在の時刻までの期間が、認証期間の時間的な長さを超えたかどうか判断する。そして、最も古い受信時刻から現在の時刻までの期間が、認証期間の時間的な長さを超えたIDが存在する場合には、認証部24は、そのIDの被認証装置1について、認証の処理を行うと判断し、そのIDに対応付けられて記憶されている複数の復号情報や受信時刻を用いて認証の処理を行う(ステップS203)。
具体的には、認証部24は、復号情報に重複が存在するかどうか判断する(ステップS204)。この場合には、各復号情報は、異なる時刻を含んでいるため、各復号情報は重複しないことになる。そのため、認証部24は、受信回数が閾値を超えているかどうか判断する(ステップS205)。この具体例では、上記のように、閾値は「7」に設定されていたとする。すると、図7で示されるように、受信回数「6」が、閾値「7」を超えていないと判断される。
次に、認証部24は、記憶部22で記憶されている受信時刻を用いて、ある認証要求が受信されてから次の認証要求が受信されるまでの時間間隔である受信間隔をそれぞれ取得する。そして、その受信間隔に、記憶部22で記憶されている、確率が閾値より低い受信間隔が含まれているかどうか判断する(ステップS206)。この場合には、確率が閾値より低い受信間隔は含まれていなかったとする。そのため、認証部24は、復号情報がユニーク情報に整合するかどうか判断する(ステップS207)。なお、ここでは、復号情報のうち、ユニーク部分である時刻が、受信時刻と整合するかどうかが判断されるものとする。具体的には、上記のように、復号情報に含まれる時刻と、その復号情報に対応する認証要求の受信時刻との差が、あらかじめ決められた閾値より小さい場合に、認証部24は、その復号情報がユニーク情報に整合していると判断するものとする。そして、認証部24は、各復号情報について、そのような判断を行う。この具体例では、すべての復号情報がユニーク情報に整合していると判断されたとする。すると、認証部24は、複数の認証要求を送信した被認証装置1が正当であると判断する(ステップS208)。そして、出力部25は、その判断結果を出力する(ステップS209)。なお、一連の判断が終了した後に、記憶部22で記憶されている、判断対象の被認証装置1のIDに対応する復号情報等が削除されてもよく、または、その復号情報等について処理済みである旨のフラグ等が設定されてもよい。後者の場合には、処理済みである旨のフラグ等が設定されている復号情報等は、それ以降の認証の処理では用いられないものとする。
以上のように、本実施の形態による被認証装置1及び認証要求送信方法によれば、ユニーク情報が暗号化された暗号情報を含む複数の認証要求を、認証装置2に送信することができる。また、例えば、暗号化が共通鍵暗号の鍵を用いて行われる場合には、より高速に暗号化を行うことができるようになる。また、ユニーク情報が、乱数値やカウンタ値、時刻等を含むものである場合には、低負荷でユニーク情報を生成することができるというメリットもある。また、そのようなユニーク情報を用いることによって、ユニーク情報の情報量を少なくすることもでき、その結果として、認証要求に含まれる情報量を少なくすることもできる。したがって、例えば、BLE通信などのように、ペイロード長に制限のある通信規格でも、認証要求を送信できるようになる。また、上記説明のように、ユーザによる操作を介することなく、認証を行うこともでき、ユーザの利便性を向上させることができる。
また、本実施の形態による認証装置2及び認証方法によれば、被認証装置1から送信された複数の認証要求を用いることによって、簡単な処理により、セキュアな認証を実現することができる。暗号情報において、ユニーク情報が共通鍵暗号の鍵を用いて暗号化されている場合には、その暗号情報を復号する処理を高速に行うことができる。また、共通鍵暗号の鍵が漏洩していない場合や、ユニーク情報の種類が知られていない場合には、攻撃者の装置は、正当な被認証装置1から受信した認証要求を認証装置2に送信することによって攻撃を行うことしかできないことになる。そのため、例えば、複数の復号情報に所定数以上の重複が存在するかどうかの判断処理や、所定の期間の受信回数が閾値を超えているかどうかの判断処理、認証要求の受信間隔に、確率が閾値より低い間隔が含まれているかどうかの判断処理、認証要求から取得された復号情報がユニーク情報に整合するかどうかの判断処理などの簡単な処理によって、認証要求の送信元に攻撃者の装置が含まれているかどうかを検出することができるようになる。このようにして、なりすましによる攻撃に対応することができるようになり、セキュアな認証を実現することができる。また、複数の認証要求を用いて被認証装置1が正当であるかどうかを判断するため、1個の認証要求だけでは検出することができない不正についても、検出することができるようになり、安全性を向上させることができる。また、認証装置2が、BLE通信のように、間欠的に認証要求を受信する場合においても、上記認証を適切に行うことができる。また、そのような間欠的な認証要求の受信を行うことによって、認証装置2における消費電力を低減することもできる。
なお、本実施の形態では、認証部24が、復号情報の重複に関する判断、認証要求の受信回数に関する判断、認証要求の受信間隔に関する判断、復号情報とユニーク情報との整合性に関する判断によって被認証装置1が正当であるかどうか判断する場合について説明したが、認証部24は、それらの判断のうち、少なくとも1個以上の判断によって被認証装置1が正当であるかどうかを判断してもよい。
また、上記実施の形態による被認証装置1や認証装置2は、他の認証方法を補完するために用いられてもよい。例えば、顔認証だけでは安全性に問題がある場合に、顔認証と、上記実施の形態における認証とを組み合わせて用いるようにしてもよい。従来、顔認証だけでは安全性に問題がある場合に、別途、ICカードを用いた認証などを併用することが行われていたが、上記実施の形態による認証と顔認証とを組み合わせて用いることによって、ICカード等を用いないでもよいことになり、ユーザの利便性が向上することになる。なお、上記実施の形態による被認証装置1や認証装置2は、例えば、顔認証以外の生体認証や、生体認証以外の認証と組み合わせて用いられてもよい。
また、上記実施の形態において、被認証装置1は、例えば、ユーザが保持するものであってもよく、または、移動体に搭載されるものであってもよい。後者の場合には、例えば、移動体に関する認証を行うこともできるようになる。移動体は、例えば、走行する走行体や、飛行する飛行体であってもよい。
また、上記実施の形態において、各処理または各機能は、単一の装置または単一のシステムによって集中処理されることによって実現されてもよく、または、複数の装置または複数のシステムによって分散処理されることによって実現されてもよい。
また、上記実施の形態において、各構成要素間で行われる情報の受け渡しは、例えば、その情報の受け渡しを行う2個の構成要素が物理的に異なるものである場合には、一方の構成要素による情報の出力と、他方の構成要素による情報の受け付けとによって行われてもよく、または、その情報の受け渡しを行う2個の構成要素が物理的に同じものである場合には、一方の構成要素に対応する処理のフェーズから、他方の構成要素に対応する処理のフェーズに移ることによって行われてもよい。
また、上記実施の形態において、各構成要素が実行する処理に関係する情報、例えば、各構成要素が受け付けたり、取得したり、選択したり、生成したり、送信したり、受信したりした情報や、各構成要素が処理で用いる閾値や数式、アドレス等の情報等は、上記説明で明記していなくても、図示しない記録媒体において、一時的に、または長期にわたって保持されていてもよい。また、その図示しない記録媒体への情報の蓄積を、各構成要素、または、図示しない蓄積部が行ってもよい。また、その図示しない記録媒体からの情報の読み出しを、各構成要素、または、図示しない読み出し部が行ってもよい。
また、上記実施の形態において、各構成要素等で用いられる情報、例えば、各構成要素が処理で用いる閾値やアドレス、各種の設定値等の情報がユーザによって変更されてもよい場合には、上記説明で明記していなくても、ユーザが適宜、それらの情報を変更できるようにしてもよく、または、そうでなくてもよい。それらの情報をユーザが変更可能な場合には、その変更は、例えば、ユーザからの変更指示を受け付ける図示しない受付部と、その変更指示に応じて情報を変更する図示しない変更部とによって実現されてもよい。その図示しない受付部による変更指示の受け付けは、例えば、入力デバイスからの受け付けでもよく、通信回線を介して送信された情報の受信でもよく、所定の記録媒体から読み出された情報の受け付けでもよい。
また、上記実施の形態において、被認証装置1に含まれる2以上の構成要素が通信デバイスや入力デバイス等を有する場合に、2以上の構成要素が物理的に単一のデバイスを有してもよく、または、別々のデバイスを有してもよい。認証装置2についても同様である。
また、上記実施の形態において、各構成要素は専用のハードウェアにより構成されてもよく、または、ソフトウェアにより実現可能な構成要素については、プログラムを実行することによって実現されてもよい。例えば、ハードディスクや半導体メモリ等の記録媒体に記録されたソフトウェア・プログラムをCPU等のプログラム実行部が読み出して実行することによって、各構成要素が実現され得る。その実行時に、プログラム実行部は、記憶部や記録媒体にアクセスしながらプログラムを実行してもよい。なお、上記実施の形態における被認証装置1を実現するソフトウェアは、以下のようなプログラムである。つまり、このプログラムは、コンピュータに、ユニーク情報を取得するステップと、検証値を生成して認証装置の認証後に正当な認証であったかを検証するステップと、ユニーク情報と検証値を暗号鍵によって暗号化して暗号情報を生成するステップと、暗号情報を含む認証要求を、認証期間内に繰り返して認証装置に送信するステップと、生成した検証値を保存するステップと、を実行させ、複数のユニーク情報が暗号化された暗号情報をそれぞれ含む複数の認証要求が、認証期間内に送信される、プログラムである。
また、上記実施の形態における認証装置2を実現するソフトウェアは、以下のようなプログラムである。つまり、このプログラムは、コンピュータに、被認証装置から送信された、暗号鍵によって暗号化された暗号情報を含む認証要求を、被認証装置から送信された、暗号鍵によって暗号化された暗号情報を含む認証要求を認証期間内に繰り返して受信するステップと、暗号情報を復号して復号情報を取得するステップと、復号できた暗号情報を含む、認証期間内に受信された複数の認証要求を用いて、被認証装置が正当かどうかを判断するステップと、被認証装置が正当かどうかを判断するステップにおける判断結果を出力するステップと、を実行させ、正当な被認証装置は、複数のユニーク情報を暗号化した暗号情報をそれぞれ含む複数の認証要求を認証期間内に送信する、プログラムである。
なお、上記プログラムにおいて、情報を送信する送信ステップや、情報を受信する受信ステップ、情報を出力するステップなどでは、ハードウェアでしか行われない処理、例えば、送信ステップや受信ステップにおけるモデムやインターフェースカードなどで行われる処理は少なくとも含まれない。
また、このプログラムは、サーバなどからダウンロードされることによって実行されてもよく、所定の記録媒体(例えば、CD−ROMなどの光ディスクや磁気ディスク、半導体メモリなど)に記録されたプログラムが読み出されることによって実行されてもよい。また、このプログラムは、プログラムプロダクトを構成するプログラムとして用いられてもよい。
また、このプログラムを実行するコンピュータは、単数であってもよく、複数であってもよい。すなわち、集中処理を行ってもよく、または分散処理を行ってもよい。
図8は、上記プログラムを実行して、上記実施の形態による被認証装置1、認証装置2を実現するコンピュータシステム900の一例を示す図である。上記実施の形態は、コンピュータハードウェア及びその上で実行されるコンピュータプログラムによって実現されうる。
図8において、コンピュータシステム900は、MPU(Micro Processing Unit)911と、ブートアッププログラム等のプログラムや、アプリケーションプログラム、システムプログラム、及びデータが記憶されるフラッシュメモリ等のROM912と、MPU911に接続され、アプリケーションプログラムの命令を一時的に記憶すると共に、一時記憶空間を提供するRAM913と、タッチパネル914と、無線通信モジュール915と、MPU911、ROM912等を相互に接続するバス916とを備える。なお、無線通信モジュール915に代えて、有線通信モジュールを備えていてもよい。また、タッチパネル914に代えて、ディスプレイと、マウスやキーボード等の入力デバイスとを備えていてもよい。
コンピュータシステム900に、上記実施の形態による被認証装置1、認証装置2の機能を実行させるプログラムは、無線通信モジュール915を介してROM912に記憶されてもよい。プログラムは実行の際にRAM913にロードされる。なお、プログラムは、ネットワークから直接、ロードされてもよい。
プログラムは、コンピュータシステム900に、上記実施の形態による被認証装置1、認証装置2の機能を実行させるオペレーティングシステム(OS)、またはサードパーティプログラム等を必ずしも含んでいなくてもよい。プログラムは、制御された態様で適切な機能やモジュールを呼び出し、所望の結果が得られるようにする命令の部分のみを含んでいてもよい。コンピュータシステム900がどのように動作するのかについては周知であり、詳細な説明は省略する。
また、本発明は、以上の実施の形態に限定されることなく、種々の変更が可能であり、それらも本発明の範囲内に包含されるものであることは言うまでもない。
以上のように、本発明による認証検証システム、被認証装置、認証装置、認証検証方法、認証検証プログラム及びコンピュータで読み取り可能な記録媒体並びに記録した機器は、例えば、キャッシュレジスタや自動改札機等における支払いや、チケットの提示等における認証に用いることができる。
Claims (11)
- 認証を受けようとする被認証装置と、
前記被認証装置を認証する認証装置と、
を備える認証システムであって、
前記被認証装置は、
暗号情報を含む認証要求を、認証期間内に繰り返して前記認証装置に送信する送信部と、ユニーク情報と検証値を暗号鍵によって暗号化することで前記暗号情報を生成する暗号化部と、
前記ユニーク情報を生成する取得部と、
前記検証値を生成して、前記認証装置の認証後に、正当な認証であったかを検証する検証部と、
前記生成した検証値を保存する記憶部と、
を備え、
前記認証装置は、
前記被認証装置から送信された、暗号鍵によって暗号化された暗号情報を含む認証要求を、認証期間内に繰り返して受信する受信部と、
前記暗号情報を復号して復号情報を取得する復号部と、
復号できた暗号情報を含む、前記認証期間内に受信された複数の認証要求を用いて、前記被認証装置が正当かどうかを判断し、認証判断後に検証値を含む検証データを前記被認証装置に送信する認証部と、
前記認証部による判断結果を出力する出力部と、
を備える認証検証システム。 - 前記検証値は、検証値を生成した時刻と、乱数値かハッシュ関数値のいずれかを含む、請求項1記載の認証検証システム。
- 前記暗号鍵は、共通鍵暗号の鍵である、請求項1または請求項2記載の認証検証システム。
- 前記検証部は、前記記憶部に保存された検証値と前記認証装置2から送信された検証値が整合するかを確認して正当かを判断する、請求項1から請求項3のいずれか記載の認証検証システム。
- 請求項1から請求項4に記載の認証検証システムであって、さらに、
前記認証装置の認証後に、前記認証部からの検証値を受信して前記被認証装置の前記検証部に送信し、また認証結果や検証結果を受信するために、前記被認証装置、及び前記認証装置との通信を行うための回線通信部と、
認証及び検証結果に応じてシステムの挙動をコントロールするサーバ認証部と、
を備えるシステムサーバを備える認証検証システム。 - 前記認証部は、前記認証期間に受信された複数の認証要求からそれぞれ取得された複数の復号情報に含まれる前記検証値どうしの比較を行い、整合性が見られない場合に、前記被認証装置が正当でないと判断する、請求項1から請求項5のいずれか記載の認証検証システム。
- 前記送信部は、前記ユニーク情報と、前記検証値とを異なる手段で送信する、請求項1から請求項6のいずれか記載の認証検証システム。
- 前記受信部は、間欠的に認証要求を受信する、請求項1から請求項7のいずれか記載の認証装置。
- 認証を受けようとする被認証装置と、
前記被認証装置を認証する認証装置と、
を備える認証システムにおいて、前記被認証装置の認証を検証する認証検証方法であって、
前記被認証装置が、暗号情報を含む認証要求を、認証期間内に繰り返して前記認証装置に送信するステップと、
前記被認証装置が、ユニーク情報と検証値を暗号鍵によって暗号化することで前記暗号情報を生成するステップと、
前記被認証装置が、前記ユニーク情報を生成するステップと、
前記被認証装置が、前記検証値を生成して、前記認証装置の認証後に、正当な認証であったかを検証するステップと、
前記被認証装置が、前記生成した検証値を保存するステップと、
前記認証装置が、前記被認証装置から送信された、暗号鍵によって暗号化された暗号情報を含む認証要求を、認証期間内に繰り返して受信するステップと、
前記認証装置が、前記暗号情報を復号して復号情報を取得するステップと、
前記認証装置が、復号できた暗号情報を含む、前記認証期間内に受信された複数の認証要求を用いて、前記被認証装置が正当かどうかを判断し、認証判断後に検証値を含む検証データを前記被認証装置に送信するステップと、
前記認証装置が、前記認証部による判断結果を出力するステップと、
を備える認証検証方法。 - 認証を受けようとする被認証装置と、
前記被認証装置を認証する認証装置と、
を備える認証システムにおいて、前記被認証装置の認証を検証する認証検証プログラムであって、
前記被認証装置が、暗号情報を含む認証要求を、認証期間内に繰り返して前記認証装置に送信するステップと、
前記被認証装置が、ユニーク情報と検証値を暗号鍵によって暗号化することで前記暗号情報を生成するステップと、
前記被認証装置が、前記ユニーク情報を生成するステップと、
前記被認証装置が、前記検証値を生成して、前記認証装置の認証後に、正当な認証であったかを検証するステップと、
前記被認証装置が、前記生成した検証値を保存するステップと、
前記認証装置が、前記被認証装置から送信された、暗号鍵によって暗号化された暗号情報を含む認証要求を、認証期間内に繰り返して受信するステップと、
前記認証装置が、前記暗号情報を復号して復号情報を取得するステップと、
前記認証装置が、復号できた暗号情報を含む、前記認証期間内に受信された複数の認証要求を用いて、前記被認証装置が正当かどうかを判断し、認証判断後に検証値を含む検証データを前記被認証装置に送信するステップと、
前記認証装置が、前記認証部による判断結果を出力するステップと、
をシステムに実行させる、認証検証プログラム。 - 請求項10に記載のプログラムを記録したコンピュータで読み取り可能な記録媒体または記録した機器。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2020087024A JP2021170757A (ja) | 2020-04-14 | 2020-04-14 | 認証検証システム、被認証装置、認証装置、認証検証方法、認証検証プログラム及びコンピュータで読み取り可能な記録媒体並びに記録した機器 |
PCT/JP2021/015368 WO2021210594A1 (ja) | 2020-04-14 | 2021-04-13 | 認証検証システム、被認証装置、認証装置、認証検証方法、認証検証プログラム及びコンピュータで読み取り可能な記録媒体並びに記録した機器 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2020087024A JP2021170757A (ja) | 2020-04-14 | 2020-04-14 | 認証検証システム、被認証装置、認証装置、認証検証方法、認証検証プログラム及びコンピュータで読み取り可能な記録媒体並びに記録した機器 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2021170757A true JP2021170757A (ja) | 2021-10-28 |
Family
ID=78084557
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2020087024A Pending JP2021170757A (ja) | 2020-04-14 | 2020-04-14 | 認証検証システム、被認証装置、認証装置、認証検証方法、認証検証プログラム及びコンピュータで読み取り可能な記録媒体並びに記録した機器 |
Country Status (2)
Country | Link |
---|---|
JP (1) | JP2021170757A (ja) |
WO (1) | WO2021210594A1 (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP7496177B1 (ja) | 2024-01-17 | 2024-06-06 | Sinumy株式会社 | 被認証装置、認証装置、認証要求出力方法、認証方法、及びプログラム |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114900337B (zh) * | 2022-04-19 | 2024-04-05 | 贵州电网有限责任公司 | 一种适用于电力芯片的认证加密方法及*** |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3634279B2 (ja) * | 2001-03-15 | 2005-03-30 | 日本電信電話株式会社 | 複数icカード間及び同一icカード内のアプリケーション連携方法 |
WO2007026745A1 (ja) * | 2005-08-30 | 2007-03-08 | Matsushita Electric Industrial Co., Ltd. | 無線機器監視システム |
BR112021006914A2 (pt) * | 2018-10-15 | 2021-07-20 | Paylessgate Corporation | dispositivo autenticado, dispositivo de autenticação, método de transmissão de solicitação de autenticação, método de autenticação e programa |
-
2020
- 2020-04-14 JP JP2020087024A patent/JP2021170757A/ja active Pending
-
2021
- 2021-04-13 WO PCT/JP2021/015368 patent/WO2021210594A1/ja active Application Filing
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP7496177B1 (ja) | 2024-01-17 | 2024-06-06 | Sinumy株式会社 | 被認証装置、認証装置、認証要求出力方法、認証方法、及びプログラム |
Also Published As
Publication number | Publication date |
---|---|
WO2021210594A1 (ja) | 2021-10-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8112787B2 (en) | System and method for securing a credential via user and server verification | |
JP4599852B2 (ja) | データ通信装置および方法、並びにプログラム | |
CN102510333B (zh) | 一种授权认证方法及*** | |
CN102215221B (zh) | 从移动设备对计算机的安全远程唤醒、引导及登录的方法和*** | |
EP2937805B1 (en) | Proximity authentication system | |
CN104798083B (zh) | 用于验证访问请求的方法和*** | |
US20050221853A1 (en) | User authentication using a mobile phone SIM card | |
KR102604688B1 (ko) | 피인증장치, 인증장치, 인증 요청 송신방법, 인증방법, 및 프로그램 | |
US20160014112A1 (en) | Wireless communication of a user identifier and encrypted time-sensitive data | |
JP5380583B1 (ja) | デバイス認証方法及びシステム | |
US20050250472A1 (en) | User authentication using a wireless device | |
WO2021210594A1 (ja) | 認証検証システム、被認証装置、認証装置、認証検証方法、認証検証プログラム及びコンピュータで読み取り可能な記録媒体並びに記録した機器 | |
JP2009212731A (ja) | カード発行システム、カード発行サーバ、カード発行方法およびプログラム | |
JP4833745B2 (ja) | センサノードのデータ保護方法、センサノードを配布するための計算機システム及びセンサノード | |
JP7368890B2 (ja) | 被認証装置、認証装置、認証要求送信方法、認証方法、及びプログラム | |
KR20120072032A (ko) | 모바일 단말의 상호인증 시스템 및 상호인증 방법 | |
WO2014187208A1 (zh) | 一种备份电子签名令牌中私钥的方法和*** | |
KR20200043855A (ko) | Dim을 이용한 드론 인증 방법 및 장치 | |
WO2014187209A1 (zh) | 一种备份电子签名令牌中信息的方法和*** | |
EP3732843A1 (en) | Systems and methods for providing authentication and/or authorization | |
RU2791273C2 (ru) | Устройство для получения-аутентификации, устройство для аутентификации, способ для передачи запроса аутентификации, способ для аутентификации и программа | |
US20240223370A1 (en) | Method for authentication of a service provider device to a user device | |
JP2014134878A (ja) | 認証システム、認証装置、及び認証方法 | |
KR101737925B1 (ko) | 도전-응답 기반의 사용자 인증 방법 및 시스템 | |
JP2004247815A (ja) | Icチップ制御システム、通信端末及びコンピュータプログラム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20200608 |