JP7427533B2 - システム、及び認証装置 - Google Patents

システム、及び認証装置 Download PDF

Info

Publication number
JP7427533B2
JP7427533B2 JP2020100574A JP2020100574A JP7427533B2 JP 7427533 B2 JP7427533 B2 JP 7427533B2 JP 2020100574 A JP2020100574 A JP 2020100574A JP 2020100574 A JP2020100574 A JP 2020100574A JP 7427533 B2 JP7427533 B2 JP 7427533B2
Authority
JP
Japan
Prior art keywords
authentication
public key
user
information
biometric information
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.)
Active
Application number
JP2020100574A
Other languages
English (en)
Other versions
JP2021197574A (ja
Inventor
耕平 岸本
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.)
Tokai Rika Co Ltd
Original Assignee
Tokai Rika 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 Tokai Rika Co Ltd filed Critical Tokai Rika Co Ltd
Priority to JP2020100574A priority Critical patent/JP7427533B2/ja
Priority to US17/914,566 priority patent/US20230205856A1/en
Priority to PCT/JP2021/003574 priority patent/WO2021250930A1/ja
Publication of JP2021197574A publication Critical patent/JP2021197574A/ja
Application granted granted Critical
Publication of JP7427533B2 publication Critical patent/JP7427533B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/31User authentication
    • G06F21/32User authentication using biometric data, e.g. fingerprints, iris scans or voiceprints
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/31User authentication
    • G06F21/33User authentication using certificates
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09CCIPHERING OR DECIPHERING APPARATUS FOR CRYPTOGRAPHIC OR OTHER PURPOSES INVOLVING THE NEED FOR SECRECY
    • G09C1/00Apparatus 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0861Generation of secret information including derivation or calculation of cryptographic keys or passwords
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic 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
    • H04L9/3226Cryptographic 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 using a predetermined code, e.g. password, passphrase or PIN
    • H04L9/3231Biological data, e.g. fingerprint, voice or retina
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic 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
    • H04L9/3236Cryptographic 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 using cryptographic hash functions
    • H04L9/3242Cryptographic 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 using cryptographic hash functions involving keyed hash functions, e.g. message authentication codes [MACs], CBC-MAC or HMAC
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic 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
    • H04L9/3247Cryptographic 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 involving digital signatures
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/84Vehicles

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • General Physics & Mathematics (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Computer Hardware Design (AREA)
  • Power Engineering (AREA)
  • Health & Medical Sciences (AREA)
  • Biodiversity & Conservation Biology (AREA)
  • Biomedical Technology (AREA)
  • General Health & Medical Sciences (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Lock And Its Accessories (AREA)
  • Collating Specific Patterns (AREA)

Description

本発明は、システム、及び認証装置に関する。
近年、車両を利用する際の認証にユーザの生体情報を使用することが検討されている。例えば、下記特許文献1では、予め車両に登録された指紋と、車両を利用しようとするユーザの指紋とを照合し、一致した場合に認証成功を判定して車両の利用を許可する技術が開示されている。
特開2008-174095号公報
しかし、上記特許文献1では、1台の車両が複数人に共用される、いわゆるカーシェアについては検討されていなかった。
そこで、本発明は、上記問題に鑑みてなされたものであり、本発明の目的とするところは、利用対象を複数人が共用するユースケースにおけるセキュリティを向上させることが可能な仕組みを提供することにある。
上記課題を解決するために、本発明のある観点によれば、ユーザにより利用可能な対象である利用対象を予約する前記ユーザである第1のユーザの体に関する情報である生体情報に基づく認証であって、前記第1のユーザの正当性を認証する第1の認証を行う第1の認証部と、前記利用対象を利用する前記ユーザである第2のユーザの前記生体情報に基づく認証であって、前記第2のユーザが前記第1のユーザと同一であることを認証する第2の認証を行う第2の認証部と、を備えるシステムが提供される。
また、上記課題を解決するために、本発明の別の観点によれば、ユーザにより利用可能な対象である利用対象を予約する前記ユーザである第1のユーザの体に関する情報である生体情報に基づく認証であって、前記第1のユーザの正当性を認証する第1の認証を行い、前記利用対象を利用する前記ユーザである第2のユーザの前記生体情報に基づく認証であって、前記第2のユーザが前記第1のユーザと同一であることを認証する第2の認証を行う第2の認証部に対し前記第2の認証のための情報を提供する第1の認証部、を備える認証装置が提供される。
以上説明したように本発明によれば、利用対象を複数人が共用するユースケースにおけるセキュリティを向上させることが可能な仕組みが提供される。
本発明の一実施形態に係るシステムの構成の一例を示すブロック図である。 本実施形態に係るシステムにおいて実行される処理の流れの一例を示すシーケンス図である。 本実施形態の第1の実施例において各装置により実行される処理を示す図である。 本実施形態の第2の実施例において各装置により実行される処理を示す図である。 本実施形態の第3の実施例において各装置により実行される処理を示す図である。 本実施形態の第4の実施例において各装置により実行される処理を示す図である。
以下に添付図面を参照しながら、本発明の好適な実施の形態について詳細に説明する。なお、本明細書及び図面において、実質的に同一の機能構成を有する構成要素については、同一の符号を付することにより重複説明を省略する。
<1.構成例>
図1は、本発明の一実施形態に係るシステム1の構成の一例を示すブロック図である。図1に示すように、システム1は、携帯機100、通信ユニット200、鍵生成センタ300、及びサービスサーバ400を含む。本実施形態における通信ユニット200は、車両202に搭載される。車両202は、ユーザにより利用可能な対象である利用対象の一例である。
システム1は、カーシェアサービスを提供する。ユーザは、携帯機100を使用して、車両202の利用を予約する。そして、ユーザは、予約した時刻において、予約した車両202を利用する。とりわけ、本実施形態に係るシステム1は、ユーザの生体情報に基づいて、予約時の認証(後述する第1の認証)及び利用時の認証(後述する第2の認証)を行う。生体情報とは、ユーザの体に関する情報である。
詳しくは、鍵生成センタ300は、これらの認証において使用される鍵を、ユーザの生体情報に基づいて生成する。そして、サービスサーバ400は、鍵生成センタ300により生成された鍵を使用して、予約時の認証を行う。予約時の認証が成功すると、予約が受け付けられる。他方、通信ユニット200は、利用時の認証を行う。利用時の認証が成功すると、車両202のドア錠がアンロックされたりエンジンが始動可能な状態になったりして、車両202はユーザにより利用可能な状態になる。
以下、各構成要素について順に説明する。
(1)携帯機100
携帯機100は、ユーザに携帯して使用される任意の装置として構成される。任意の装置の一例として、電子キー、スマートフォン、及びウェアラブル端末等が挙げられる。図1に示すように、携帯機100は、無線通信部110、生体情報取得部120、入出力部130、記憶部140、及び制御部150を備える。
無線通信部110は、所定の無線通信規格に準拠した通信を行う機能を有する。例えば、無線通信部110は、鍵生成センタ300、及びサービスサーバ400の各々との間で情報をやり取りするための無線通信を行う。所定の無線通信規格の一例は、セルラー通信、Wi-Fi(登録商標)、及びBLE(Bluetooth Low Energy(登録商標))である。
生体情報取得部120は、ユーザの生体情報を取得する機能を有する。一例として、生体情報取得部120は、画像センサを含んでいてもよい。その場合、生体情報取得部120は、ユーザの顔画像を生体情報として取得してもよい。他の一例として、生体情報取得部120は、指紋センサを含んでいてもよい。その場合、生体情報取得部120は、ユーザの指紋を生体情報として取得してもよい。
入出力部130は、ユーザからの情報の入力を受け付け、ユーザに対し情報を出力する機能を有する。一例として、入出力部130は、ディスプレイを含んでいてもよい。その場合、入出力部130は、画像を出力する。他の一例として、入出力部130は、タッチセンサを有していてもよい。その場合、入出力部130は、タッチセンサへのタッチ操作を受け付ける。
記憶部140は、携帯機100の動作のための各種情報を記憶する機能を有する。記憶部140は、例えば、フラッシュメモリ等の記憶媒体、及び記憶媒体への記録再生を実行する処理装置により構成される。
制御部150は、携帯機100における処理を実行する機能を有する。例えば、制御部150は、無線通信部110を制御して他の装置との間で無線通信を行う。また、制御部150は、生体情報取得部120を制御して、ユーザの生体情報を取得する。また、制御部150は、入出力部130を制御して、ユーザから入力された情報の取得、及びユーザへの情報の出力を行う。また、制御部150は、記憶部140からの情報の読み出し及び記憶部140への情報の書き込みを行う。その他、制御部150は、各種の情報処理を行う。制御部150は、例えばCPU(Central Processing Unit)及びマイクロプロセッサ等の電子回路によって構成される。
(2)通信ユニット200
通信ユニット200は、車両202に対応付けて設けられる。ここでは、通信ユニット200が、車両202の車室内に設置される、又は通信モジュールとして車両202に内蔵される等、通信ユニット200は車両202に搭載されるものとする。図1に示すように、通信ユニット200は、無線通信部210、生体情報取得部220、記憶部230、及び制御部240を備える。
無線通信部210は、所定の無線通信規格に準拠した通信を行う機能を有する。例えば、無線通信部210は、サービスサーバ400との間で情報をやり取りするための無線通信を行う。所定の無線通信規格の一例は、セルラー通信、Wi-Fi、及びBLEである。
生体情報取得部220は、ユーザの生体情報を取得する機能を有する。一例として、生体情報取得部220は、画像センサを含んでいてもよい。その場合、生体情報取得部220は、ユーザの顔画像を生体情報として取得してもよい。他の一例として、生体情報取得部220は、指紋センサを含んでいてもよい。その場合、生体情報取得部220は、ユーザの指紋を生体情報として取得してもよい。
記憶部230は、通信ユニット200の動作のための各種情報を記憶する機能を有する。記憶部230は、例えば、フラッシュメモリ等の記憶媒体、及び記憶媒体への記録再生を実行する処理装置により構成される。
制御部240は、通信ユニット200、及び車両202に搭載された車載機器の動作全般を制御する機能を有する。一例として、制御部240は、無線通信部210を制御して他の装置との間で無線通信を行う。また、制御部240は、生体情報取得部220を制御して、ユーザの生体情報を取得する。また、制御部240は、記憶部230からの情報の読み出し及び記憶部230への情報の書き込みを行う。また、制御部240は、車両202のドア錠を制御するドアロック制御部としても機能し、ドア錠のロック及びアンロックを行う。また、制御部240は、車両202のエンジンを制御するエンジン制御部としても機能し、エンジンの始動/停止を行う。なお、車両202に備えられる動力源は、エンジンの他にモータ等であってもよい。その他、制御部240は、各種の情報処理を行う。制御部240は、例えばECU(Electronic Control Unit)として構成される。
(3)鍵生成センタ300
鍵生成センタ300は、例えば、インターネット上のサーバとして構成される。図1に示すように、鍵生成センタ300は、通信部310、記憶部320、及び制御部330を備える。
通信部310は、他の装置との間で通信を行う機能を有する。例えば、通信部310は、携帯機100及びサービスサーバ400の各々との間で、インターネットを介して通信する。
記憶部320は、鍵生成センタ300の動作のための各種情報を記憶する機能を有する。記憶部320は、例えば、HDD(Hard Disc Drive)等の記憶媒体、及び記憶媒体への記録再生を実行する処理装置により構成される。
制御部330は、鍵生成センタ300における処理を実行する機能を有する。例えば、制御部330は、通信部310を制御して他の装置との間で通信を行う。また、制御部330は、記憶部320からの情報の読み出し及び記憶部320への情報の書き込みを行う。その他、制御部330は、各種の情報処理を行う。制御部330は、例えばCPU(Central Processing Unit)及びマイクロプロセッサ等の電子回路によって構成される。
(4)サービスサーバ400
サービスサーバ400は、例えば、インターネット上のサーバとして構成される。図1に示すように、サービスサーバ400は、通信部410、記憶部420、及び制御部430を備える。
通信部410は、他の装置との間で通信を行う機能を有する。例えば、通信部410は、携帯機100、通信ユニット200、及び鍵生成センタ300の各々との間で、インターネットを介して通信する。
記憶部420は、サービスサーバ400の動作のための各種情報を記憶する機能を有する。記憶部420は、例えば、HDD(Hard Disc Drive)等の記憶媒体、及び記憶媒体への記録再生を実行する処理装置により構成される。
制御部430は、サービスサーバ400における処理を実行する機能を有する。例えば、制御部430は、通信部410を制御して他の装置との間で通信を行う。また、制御部430は、記憶部420からの情報の読み出し及び記憶部420への情報の書き込みを行う。その他、制御部430は、各種の情報処理を行う。制御部430は、例えばCPU(Central Processing Unit)及びマイクロプロセッサ等の電子回路によって構成される。
<2.技術的特徴>
<2.1.基本的特徴>
利用対象を予約するユーザを、第1のユーザとも称する。また、利用対象を利用するユーザを、第2のユーザとも称する。特に言及しない場合、携帯機100を使用するユーザは、第1のユーザであって第2のユーザであるものとする。
(1)登録処理
登録処理とは、ユーザが、カーシェアサービスの利用者であることをシステム1に登録する処理である。以下、登録処理において実行される各処理を説明する。
鍵生成センタ300は、本発明における鍵生成部の一例である。即ち、鍵生成センタ300は、ユーザの生体情報に対応する公開鍵に基づいて秘密鍵を生成する。例えば、携帯機100は、ユーザの生体情報を取得し、取得した生体情報を鍵生成センタ300に送信する。そして、鍵生成センタ300は、受信した生体情報に対応する公開鍵に基づいて、秘密鍵を生成する。
公開鍵及び秘密鍵とは、暗号化及び復号に用いられる暗号鍵のペアである。公開鍵とは、広く公開される暗号鍵である。秘密鍵とは、公開先が限定される暗号鍵である。鍵生成センタ300は、IDベース署名方式の鍵生成関数を用いて、秘密鍵を発行する。IDベース署名方式とは、鍵生成センタ300が、各ユーザを識別する情報に対応した署名用の秘密鍵を発行し、各ユーザに秘密裏に配布する方式である。鍵生成関数とは、公開鍵に対応する秘密鍵を出力する関数である。本実施形態では、鍵生成センタ300は、ユーザの生体情報に対応する秘密鍵を発行する。
鍵生成センタ300は、発行した秘密鍵を携帯機100に送信する。そして、携帯機100は、受信した秘密鍵を記憶する。
サービスサーバ400は、公開鍵を記憶する。サービスサーバ400は、ユーザの生体情報に対応する公開鍵を、当該ユーザの識別情報に対応付けて記憶してもよい。
公開鍵は、生体情報そのものであってもよい。その場合、サービスサーバ400は、生体情報をユーザから携帯機100を介して受信してもよいし、鍵生成センタ300から取得してもよい。
公開鍵は、生体情報に基づいて生成される情報であってもよい。その場合、鍵生成センタ300は、生体情報に基づいて公開鍵を生成する。サービスサーバ400もまた、生体情報に基づいて公開鍵を生成してもよい。他にも、サービスサーバ400は、鍵生成センタ300により生成された公開鍵を取得してもよい。
車両202を予約するユーザである第1のユーザは、登録処理を事前に実行するものとする。以下では、第1のユーザの生体情報に対応する公開鍵に基づいて生成された秘密鍵を、第1の秘密鍵とも称する。
(2)予約処理
予約処理とは、車両202を予約する処理である。以下、予約処理において実行される各処理について説明する。
携帯機100は、本発明における予約部の一例である。即ち、携帯機100は、第1のユーザによる利用対象の予約に関する情報である予約情報に、予約情報及び鍵生成センタ300により生成された秘密鍵に基づいて生成された電子署名を対応付けてサービスサーバ400に送信することで、第1のユーザによる利用対象の予約を行う。予約情報は、例えば、予約する第1のユーザの識別情報、予約対象の車両202を指定する情報、利用開始時刻を示す情報、暗号通貨による支払いを示す情報、及びその他の要望を示す情報を含む。暗号通貨とは、暗号理論に基づいて取引の安全性が確保される、仮想的な通貨である。電子署名とは、署名対象の情報に付与される情報である。電子署名を検証する主体である検証者は、電子署名を生成するために使用された秘密鍵とペアである公開鍵を用いて電子署名を検証する。検証に成功した場合、署名対象の文章が秘密鍵の所有者により作成されたものであることが証明される。他方、検証に失敗した場合、署名対象の文章が秘密鍵の所有者により作成されたものでないことが証明される。つまり、電子署名が秘密鍵に基づいて生成されることで、予約情報が利用登録済みのユーザにより生成されたことを証明することが可能となる。さらに、電子署名が、予約情報に基づいて生成されることで、予約情報が偽造又は改ざんされていないことを証明することが可能となる。以上説明したように、予約情報及び秘密鍵に基づく電子署名を予約情報に付与することで、車両202の予約時のセキュリティを向上させることが可能となる。
サービスサーバ400は、本発明における第1の認証部の一例である。また、サービスサーバ400は、本発明における認証装置の一例である。即ち、サービスサーバ400は、第1のユーザの生体情報に基づく認証であって、第1のユーザの正当性を認証する第1の認証を行う。第1のユーザの生体情報に基づく認証とは、第1の公開鍵を使用した認証である。第1のユーザの正当性を認証するとは、車両202を予約する第1のユーザが、登録処理済みのユーザであることを検証することを指す。かかる構成により、登録処理済みのユーザに限定して予約が可能となるという観点で、車両202の予約時のセキュリティを向上させることが可能となる。
具体的には、サービスサーバ400は、第1のユーザの生体情報に対応する公開鍵である第1の公開鍵を使用して電子署名が正しいか否かを検証する。そして、サービスサーバ400は、電子署名が正しいと検証した場合に認証成功を判定し、電子署名が不正であると検証した場合に認証失敗を判定することを、第1の認証として行う。電子署名が第1の秘密鍵に基づいて生成されるので、サービスサーバ400は、予約情報が利用登録済みのユーザにより生成された場合に認証成功を判定し、そうでない場合に認証失敗を判定する。また、電子署名が予約情報に基づいて生成されるので、サービスサーバ400は、予約情報が偽造又は改ざんされていない場合に認証成功を判定し、そうでない場合に認証失敗を判定する。このように、かかる構成によれば、車両202の予約時のセキュリティを向上させることが可能となる。
サービスサーバ400は、第1の認証において認証成功を判定した場合に、予約を受け付ける。例えば、サービスサーバ400は、認証成功を判定した場合、予約情報において指定された暗号通貨による支払いを受けたことを条件に、予約情報を記憶する。
他方、サービスサーバ400は、第1の認証において認証失敗を判定した場合に、予約を破棄する。具体的には、サービスサーバ400は、認証失敗を判定した場合、予約情報を破棄する。
(3)利用許可処理
利用許可処理とは、車両202の利用を許可する処理である。以下、利用許可処理において実行される各処理について説明する。
通信ユニット200は、本発明における第2の認証部の一例である。即ち、通信ユニット200は、第2のユーザの生体情報に基づく認証であって、第2のユーザが第1のユーザと同一であることを認証する第2の認証を行う。そして、通信ユニット200は、認証成功を判定した場合に、予約情報に対応する条件での車両202の利用を許可し、認証失敗を判定した場合に車両202の利用を禁止する。予約情報に対応する条件での車両202の利用を許可するとは、例えば、予約情報において指定された利用開始時時刻から、暗号通貨による支払額に応じた期間、予約情報において指定された車両202において、ドアロックの解錠、及びエンジン始動が可能にすることを指す。車両202の利用を禁止するとは、例えば、ドアロックの解錠、及びエンジン始動を不可能にすることを指す。かかる構成により、予約した第1のユーザと異なる第三者により車両202が誤って利用されることを防止することができる、という観点で、車両202の利用時のセキュリティを向上させることが可能となる。
具体的には、通信ユニット200は、第1の認証に成功した第1のユーザの生体情報に対応する公開鍵である第1の公開鍵と、第2のユーザの生体情報に対応する公開鍵である第2の公開鍵とが、対応するか否かを判定し、対応する場合に認証成功を判定し、対応しない場合に認証失敗を判定することを、前記第2の認証として行う。例えば、通信ユニット200は、第2の生体情報を取得し、取得した第2の生体情報に対応する第2の公開鍵に基づいて第2の認証を行う。第1の公開鍵と第2の公開鍵とが対応することの一例は、第1の公開鍵と第2の公開鍵とが一致することである。第1の公開鍵と第2の公開鍵とが対応することの一例は、第1の公開鍵に基づいて生成された情報と第2の公開鍵に基づいて生成された情報とが一致することである。かかる構成によれば、第2のユーザの生体情報に基づいて第2の認証が行われるので、ユーザは携帯機100を携帯せずとも、また携帯している場合であっても専用のアプリケーションを立ち上げる等の操作を行わずとも、車両202を利用することが可能となる。その上、ユーザが仮に携帯機100を紛失した場合であっても、携帯機100を不正に取得した第三者によりユーザが予約した車両202が利用されることを防止することも可能となる。
サービスサーバ400は、通信ユニット200に対し、第2の認証のための情報を提供する。第2の認証のための情報の一例は、予約情報、及び第1の公開鍵である。
(4)処理の流れ
図2は、本実施形態に係るシステム1において実行される処理の流れの一例を示すシーケンス図である。本シーケンスには、携帯機100、通信ユニット200、鍵生成センタ300及びサービスサーバ400が関与する。
図2に示すように、まず、システム1は、登録処理を実行する。以下、登録処理に含まれる処理の流れを説明する。
まず、携帯機100の生体情報取得部120は、ユーザの生体情報を取得する。そして、携帯機100の無線通信部110は、取得した生体情報を鍵生成センタ300に送信する(ステップS102)。
鍵生成センタ300の制御部330は、通信部310により生体情報が受信されると、生体情報に対応する公開鍵に基づいて秘密鍵を生成する(ステップS104)。
次に、鍵生成センタ300の通信部310は、生成された秘密鍵を携帯機100に送信する(ステップS106)。そして、携帯機100の制御部150は、無線通信部110により秘密鍵が受信されると、受信された秘密鍵を記憶部140に記憶する(ステップS108)。
他方、サービスサーバ400の制御部430は、ユーザの生体情報に対応する公開鍵を記憶部420に記憶する(ステップS110)。なお、サービスサーバ400は、携帯機100からユーザの生体情報を受信し、受信した生体情報に対応する公開鍵を記憶してもよい。他に、サービスサーバ400は、鍵生成センタ300からユーザの生体情報に対応する公開鍵を受信して記憶してもよい。
図2に示すように、続いて、システム1は、予約処理を実行する。以下、予約処理に含まれる処理の流れを説明する。
まず、携帯機100の入出力部130は、ユーザ(第1のユーザに相当)による予約情報の入力を受け付ける。次いで、携帯機100の制御部150は、ユーザにより入力された予約情報、及び登録処理において記憶した秘密鍵に基づいて、電子署名を生成する。そして、携帯機100の無線通信部110は、予約情報に、生成した電子署名を対応付けてサービスサーバ400に送信する(ステップS112)。
サービスサーバ400の制御部430は、通信部410により予約情報及び電子署名が受信されると、第1の認証及び予約の受け付けを行う(ステップS114)。詳しくは、まず、サービスサーバ400の制御部430は、登録処理において記憶した公開鍵に基づいて電子署名を検証する。そして、サービスサーバ400の制御部430は、検証に成功した場合に認証成功を判定し、予約情報を記憶部420に記憶する。他方、サービスサーバ400の制御部430は、検証に失敗した場合に認証失敗を判定し、予約情報を破棄する。
図2に示すように、続いて、システム1は、利用許可処理を実行する。以下、利用許可処理に含まれる処理の流れを説明する。
まず、通信ユニット200の生体情報取得部220は、ユーザ(第2のユーザに相当)の生体情報を取得する(ステップS116)。例えば、ユーザは、予約した車両202に近づいて、通信ユニット200に生体情報を入力する。
次いで、通信ユニット200の無線通信部210は、現在時刻に対応する予約がなされているかをサービスサーバ400に対し問い合わせ、第2の認証のための情報を取得する(ステップS118)。現在時刻に対応する予約とは、予約情報において指定された利用開始時刻から所定範囲内に現在時刻が含まれる予約である。第2の認証のための情報の一例は、現在時刻に対応する予約を行った第1のユーザの公開鍵である。
次に、通信ユニット200の制御部240は、第2の認証、及び車両202の利用許可を行う(ステップS120)。詳しくは、通信ユニット200の制御部240は、第1の公開鍵と、第2のユーザの生体情報に対応する第2の公開鍵とが対応するか否かを判定する。そして、通信ユニット200の制御部240は、第1の公開鍵と第2の公開鍵とが対応する場合に、認証成功を判定し、車両202の利用を許可する。他方、通信ユニット200の制御部240は、第1の公開鍵と第2の公開鍵とが対応しない場合に、認証失敗を判定し、車両202の利用を禁止する。
以上、システム1において実行される処理の流れの一例を説明した。本実施形態に係るシステム1の種々の実施例について、以下に説明する。
<2.2.第1の実施例>
第1の実施例では、ユーザの生体情報が公開鍵である。とりわけ、第1の公開鍵は、第1のユーザの生体情報である。また、第2の公開鍵は、第2のユーザの生体情報である。そして、生体情報の特徴量に基づいて秘密鍵が生成される。
図3は、本実施形態の第1の実施例において各装置により実行される処理を示す図である。以下、図3を参照しながら第1の実施例について説明する。
登録処理において、図3に示すように、鍵生成センタ300は、ユーザの生体情報から抽出された特徴量に基づいて秘密鍵を生成する。詳しくは、まず、携帯機100は、生体情報取得部120により取得したユーザの生体情報を鍵生成センタ300に送信する。次いで、鍵生成センタ300は、ユーザの生体情報を特徴量抽出関数に入力することで、特徴量を抽出する。特徴量抽出関数とは、入力された情報の特徴量を出力する関数である。特徴量とは、特徴を示す情報である。そして、鍵生成センタ300は、抽出された特徴量を鍵生成関数に入力することで、秘密鍵を生成する。鍵生成関数とは、入力された情報に応じた秘密鍵を出力する関数である。生体情報は同一人物から取得される場合であってもゆらぎが生じ得るところ、かかる構成によれば、生体情報の特徴量に基づいて秘密鍵が生成されるので、当該ゆらぎに起因する認証失敗を防止することが可能となる。そして、鍵生成センタ300は、生成した秘密鍵を携帯機100に送信する。
予約処理において、図3に示すように、サービスサーバ400は、第1のユーザの生体情報から抽出された特徴量に基づいて電子署名が正しいか否かを検証することを、第1の認証として行う。詳しくは、サービスサーバ400は、登録処理において記憶した第1の公開鍵である第1のユーザの生体情報を特徴量抽出関数に入力することで、特徴量を抽出する。次いで、サービスサーバ400は、予約情報、電子署名、及び第1のユーザの生体情報から抽出された特徴量を検証用関数に入力することで、認証成否を判定する。検証用関数とは、入力された予約情報が偽造又は改ざんされておらず、且つ、電子署名の検証のために入力された公開鍵(本実施例では、生体情報の特徴量)が電子署名の生成に使用された秘密鍵に対応する場合に、検証成功を出力し、そうでない場合に検証失敗を判定する関数である。生体情報は同一人物から取得される場合であってもゆらぎが生じ得るところ、かかる構成によれば、生体情報の特徴量に基づいて電子署名が検証されるので、当該ゆらぎに起因する認証失敗を防止することが可能となる。なお、サービスサーバ400は、第1の公開鍵である第1のユーザの生体情報を、後の利用許可処理において通信ユニット200に送信する。
利用許可処理において、図3に示すように、通信ユニット200は、第1のユーザの生体情報から抽出された特徴量と、第2のユーザの生体情報から抽出された特徴量とが、一致するか否かを判定し、一致する場合に認証成功を判定し、不一致である場合に認証失敗を判定することを、第2の認証として行う。詳しくは、通信ユニット200は、サービスサーバ400から取得した第1のユーザの生体情報(第1の公開鍵に相当)を特徴量抽出関数に入力することで、特徴量を抽出する。また、通信ユニット200は、生体情報取得部220により取得した第2のユーザの生体情報(第2の公開鍵に相当)を特徴量抽出関数に入力することで、特徴量を抽出する。そして、通信ユニット200は、抽出したこれらの特徴量が一致するか否かにより、認証成否を判定する。生体情報は同一人物から取得される場合であってもゆらぎが生じ得るところ、かかる構成によれば、生体情報の特徴量の一致/不一致により認証成否が判定されるので、当該ゆらぎに起因する認証失敗を防止することが可能となる。
<2.3.第2の実施例>
第2の実施例では、ユーザの生体情報に基づいて公開鍵が生成される。
図4は、本実施形態の第2の実施例において各装置により実行される処理を示す図である。以下、図4を参照しながら第2の実施例について説明する。
登録処理において、図4に示すように、鍵生成センタ300は、ユーザの生体情報に基づいて公開鍵を生成する。詳しくは、まず、鍵生成センタ300は、ユーザの生体情報を特徴量抽出関数に入力することで、特徴量を抽出する。次いで、鍵生成センタ300は、ユーザの生体情報から抽出された特徴量をハッシュ関数に入力することで得られたハッシュ値を、公開鍵として生成する。そして、鍵生成センタ300は、生成した公開鍵としてのハッシュ値をサービスサーバ400に送信する。なお、ハッシュ関数とは、入力された情報に応じて、入力された情報とは別の情報を出力する関数である。典型的には、ハッシュ関数は、入力された情報のビット長よりも短いビット長の情報を出力する。ハッシュ値とは、ハッシュ関数から出力される情報である。ハッシュ関数としては、SHA-256等の、逆計算が困難な関数が採用されることが望ましい。逆計算とは、出力された情報から入力された情報を計算することである。かかる構成によれば、ハッシュ値が公開鍵となるので、生体情報そのものが公開鍵として広く公開されることを防止し、生体情報を秘匿することが可能となる。
また、鍵生成センタ300は、ハッシュ値を鍵生成関数に入力することで、秘密鍵を生成する。そして、鍵生成センタ300は、生成した秘密鍵を携帯機100に送信する。
予約処理において、図4に示すように、サービスサーバ400は、鍵生成センタ300により生成された第1の公開鍵を使用して電子署名が正しいか否かを検証することを、第1の認証として行う。詳しくは、サービスサーバ400は、予約情報、電子署名、及び登録処理において鍵生成センタ300から取得した第1の公開鍵である第1のユーザの生体情報の特徴量のハッシュ値を検証用関数に入力することで、認証成否を判定する。かかる構成によれば、ハッシュ値を公開鍵として電子署名が検証されるので、生体情報そのものが公開鍵として広く公開されることを防止し、生体情報を秘匿することが可能となる。なお、サービスサーバ400は、第1の公開鍵である第1のユーザの生体情報のハッシュ値を、後の利用許可処理において通信ユニット200に送信する。
利用許可処理において、図4に示すように、通信ユニット200は、鍵生成センタ300により生成された第1の公開鍵と、第2のユーザの生体情報から抽出された特徴量をハッシュ関数に入力することで得られたハッシュ値である第2の公開鍵とが、一致するか否かを判定し、一致する場合に認証成功を判定し、不一致である場合に認証失敗を判定することを、第2の認証として行う。詳しくは、まず、通信ユニット200は、生体情報取得部220により取得した第2のユーザの生体情報を特徴量抽出関数に入力することで、特徴量を抽出する。次いで、通信ユニット200は、第2のユーザの生体情報から抽出された特徴量をハッシュ関数に入力することで得られたハッシュ値を、第2の公開鍵として生成する。そして、通信ユニット200は、サービスサーバ400から取得した第1の公開鍵であるハッシュ値と、生成した第2の公開鍵であるハッシュ値とが、一致するか否かにより、認証成否を判定する。かかる構成によれば、ハッシュ値を公開鍵として認証成否が判定されるので、生体情報そのものが公開鍵として広く公開されることを防止し、生体情報を秘匿することが可能となる。
<2.4.第3の実施例>
第3の実施例では、ユーザの生体情報に基づいて公開鍵が生成される。とりわけ、第3の実施例では、公開鍵の生成の際に、生体情報のゆらぎが補正される。
図5は、本実施形態の第3の実施例において各装置により実行される処理を示す図である。以下、図5を参照しながら第3の実施例について説明する。
登録処理において、図5に示すように、鍵生成センタ300は、特徴量の抽出、公開鍵としてのハッシュ値の生成及びサービスサーバ400への送信、並びに秘密鍵の生成及び携帯機100への送信を行う。これらの処理は、図4を参照しながら説明した第2の実施例における処理と同様である。
本実施例においては、さらに、鍵生成センタ300は、ユーザの生体情報から抽出された特徴量に基づいて、誤り訂正用補助データを生成する。誤り訂正用補助データとは、生体情報のゆらぎを訂正するための情報である。誤り訂正用補助データは、一例として、ファジーエクストラクタ(Fuzzy extractor)により生成されてもよい。ファジーエクストラクタによれば、類似する入力から同一の出力を得ることができる。つまり、同一のユーザから取得されたものの、ゆらぎにより厳密には異なる複数の生体情報から、同一の出力を得ることができる。鍵生成センタ300は、生成した誤り訂正用補助データを、サービスサーバ400に送信する。
なお、ファジーエクストラクタに関する詳細な技術は、例えば非特許文献「Yevgeniy Dodis, Rafail Ostrovsky, Leonid Reyzin, and Adam Smith. Fuzzy extractors: How to generate strong keys from biometrics and other noisy data. SIAM Journal on Computing, 38(1):97-139, 2008.」に開示されている。本非特許文献では、ノイズの多い情報を暗号化アプリケーションで使用可能な鍵情報に変換するための技術が開示されている。特に、ファジーエクストラクタが、入力された入力情報に対しランダムな出力情報を出力する特性、及び互いに異なるものの近しい入力情報が入力された場合に同一の出力情報を出力する特性を有することを指摘している。そして、これらの特性から、ファジーエクストラクタに生体情報を入力することで得られた出力情報を、鍵情報として安全に使用可能であることが指摘されている。
予約処理において、図5に示すように、サービスサーバ400は、予約情報、電子署名、及び登録処理において鍵生成センタ300から取得した第1の公開鍵であるハッシュ値を検証用関数に入力することで、認証成否を判定する。また、サービスサーバ400は、第1の公開鍵である第1のユーザの生体情報のハッシュ値を、後の利用許可処理において通信ユニット200に送信する。これらの処理は、図4を参照しながら説明した第2の実施例における処理と同様である。
本実施例においては、さらに、サービスサーバ400は、鍵生成センタ300から取得した誤り訂正用補助データを、後の利用許可処理において通信ユニット200に送信する。
利用許可処理において、図5に示すように、通信ユニット200は、鍵生成センタ300により生成された誤り訂正用補助データに基づいて第2のユーザの生体情報から抽出された特徴量を訂正する。詳しくは、まず、通信ユニット200は、生体情報取得部220により取得した第2のユーザの生体情報を特徴量抽出関数に入力することで、特徴量を抽出する。次いで、通信ユニット200は、第2のユーザの生体情報から抽出された特徴量、及びサービスサーバ400から取得した誤り訂正用補助データを、誤り訂正関数に入力することで、誤り訂正後の特徴量を生成する。誤り訂正関数とは、誤り訂正対象の情報を、誤り訂正用補助データに従って訂正する関数である。
そして、通信ユニット200は、訂正後の特徴量をハッシュ関数に入力することで得られたハッシュ値を第2の公開鍵として使用して、第1の公開鍵と前記第2の公開鍵とが一致するか否かを判定し、一致する場合に認証成功を判定し、不一致である場合に認証失敗を判定することを、前記第2の認証として行う。詳しくは、通信ユニット200は、誤り訂正後の特徴量をハッシュ関数に入力することで得られたハッシュ値を、第2の公開鍵として生成する。そして、通信ユニット200は、サービスサーバ400から取得した第1の公開鍵であるハッシュ値と、第2の公開鍵としてのハッシュ値とが、一致するか否かにより、認証成否を判定する。
以上、本実施例について説明した。本実施例によれば、誤り訂正用補助データにより、生体情報のゆらぎに起因する認証失敗をより防止することが可能となる。
<2.5.第4の実施例>
第4の実施例では、ユーザの生体情報に基づいて公開鍵が生成される。とりわけ、第4の実施例では、更新可能な公開鍵が生成される。また、第4の実施例では、第3の実施例と同様に、生体情報のゆらぎを補正するための、誤り訂正用補助データを用いた誤り訂正が行われる。
図6は、本実施形態の第4の実施例において各装置により実行される処理を示す図である。以下、図6を参照しながら第4の実施例について説明する。
登録処理において、図6に示すように、鍵生成センタ300は、第1のユーザの生体情報から抽出された特徴量、及び鍵更新用補助データを、ハッシュ関数に入力することで得られたハッシュ値を、第1の公開鍵として生成する。鍵更新用補助データとは、公開鍵を新たに生成する度に変化する情報である。鍵更新用補助データの一例は、乱数である。詳しくは、まず、鍵生成センタ300は、ユーザの生体情報を特徴量抽出関数に入力することで、特徴量を抽出する。次いで、鍵生成センタ300は、ユーザの生体情報から抽出された特徴量、及び鍵更新用補助データをハッシュ関数に入力することで得られたハッシュ値を、公開鍵として生成する。例えば、鍵生成センタ300は、特徴量に鍵更新用補助データを連結したものをハッシュ関数に入力することで、公開鍵としてのハッシュ値を生成する。そして、鍵生成センタ300は、生成した公開鍵としてのハッシュ値をサービスサーバ400に送信する。
また、鍵生成センタ300は、公開鍵の生成に用いた鍵更新用補助データを、サービスサーバ400に送信する。
また、鍵生成センタ300は、ハッシュ値を鍵生成関数に入力することで、秘密鍵を生成する。そして、鍵生成センタ300は、生成した秘密鍵を携帯機100に送信する。
また、鍵生成センタ300は、ユーザの生体情報から抽出された特徴量に基づいて、誤り訂正用補助データを生成する。そして、鍵生成センタ300は、生成した誤り訂正用補助データを、サービスサーバ400に送信する。
予約処理において、図5に示すように、サービスサーバ400は、予約情報、電子署名、及び登録処理において鍵生成センタ300から取得した第1の公開鍵であるハッシュ値を検証用関数に入力することで、認証成否を判定する。また、サービスサーバ400は、第1の公開鍵である第1のユーザの生体情報のハッシュ値、及び鍵生成センタ300から取得した誤り訂正用補助データを、後の利用許可処理において通信ユニット200に送信する。これらの処理は、図5を参照しながら説明した第3の実施例における処理と同様である。
本実施例においては、さらに、サービスサーバ400は、鍵生成センタ300から取得した鍵更新用補助データを、後の利用許可処理において通信ユニット200に送信する。
利用許可処理において、図6に示すように、通信ユニット200は、第2のユーザの生体情報から抽出された特徴量、及び鍵更新用補助データを、ハッシュ関数に入力することで得られたハッシュ値を第2の公開鍵として使用して、第1の公開鍵と第2の公開鍵とが一致するか否かを判定し、一致する場合に認証成功を判定し、不一致である場合に認証失敗を判定することを、第2の認証として行う。詳しくは、まず、通信ユニット200は、生体情報取得部220により取得した第2のユーザの生体情報を特徴量抽出関数に入力することで、特徴量を抽出する。次いで、通信ユニット200は、第2のユーザの生体情報から抽出された特徴量、及びサービスサーバ400から取得した誤り訂正用補助データを、誤り訂正関数に入力することで、誤り訂正後の特徴量を生成する。次に、通信ユニット200は、訂正後の特徴量、及びサービスサーバ400から取得した鍵更新用補助データを、ハッシュ関数に入力することで得られたハッシュ値を、第2の公開鍵として生成する。そして、通信ユニット200は、サービスサーバ400から取得した第1の公開鍵であるハッシュ値と、第2の公開鍵としてのハッシュ値とが、一致するか否かにより、認証成否を判定する。
秘密鍵が携帯機100以外の第三者に漏洩した場合、第三者がユーザに成りすまして、即ち漏洩した秘密鍵を使用して車両202の予約を行うおそれがある。
そこで、秘密鍵の漏洩が疑われる場合、鍵生成センタ300は、公開鍵、及び秘密鍵を更新する。詳しくは、鍵生成センタ300は、過去に秘密鍵を生成するために使用した鍵更新用補助データとは異なる鍵更新用補助データを用いて、公開鍵としてのハッシュ値を新たに生成する。そして、鍵生成センタ300は、新たに生成した公開鍵としてのハッシュ値に基づいて、秘密鍵を新たに生成する。
鍵生成センタ300は、秘密鍵を新たに生成した場合、新たに生成した秘密鍵を携帯機100に送信する。携帯機100は、予約処理においては、新たに生成された秘密鍵を使用して電子署名を生成する。他方、鍵生成センタ300は、公開鍵を新たに生成した場合、新たに生成した公開鍵に対し有効であることを示す情報を対応付け、過去に生成した公開鍵に対し無効であることを示す情報を対応付ける。当該対応付けられた情報は、サービスサーバ400に対し公開(即ち、送信)される。そして、第1のユーザによる予約処理の際には、サービスサーバ400は、有効であることを示す情報が対応付けられた第1の公開鍵を使用して、第1の認証を行う、その際、サービスサーバ400は、有効であることを示す情報が対応付けられた、即ち新たに生成された秘密鍵に基づいて生成された電子署名については、認証成功を判定する。他方、サービスサーバ400は、無効であることを示す情報が対応付けられた、即ち過去に生成された秘密鍵に基づいて生成された電子署名については、認証失敗を判定する。従って、無効な秘密鍵を使用して行われた予約を、高い信頼性で排除することが可能となる。即ち、過去に生成された秘密鍵を不正に取得した第三者がユーザに成りすますことを防止することが可能となる。
鍵生成センタ300は、公開鍵を新たに生成した場合、新たに生成した公開鍵及び過去に生成した公開鍵の各々に対し、有効期間を示す情報を対応付けてもよい。公開鍵の有効期間の始期の一例は、当該公開鍵が生成された時刻である。公開鍵の有効期間の終期の一例は、当該公開鍵の漏洩が疑われる時刻である。当該対応付けられた情報は、サービスサーバ400に対し公開(即ち、送信)される。
他方、サービスサーバ400は、予約情報に対応付けられた時刻を有効期間に含まない第1の公開鍵を使用して行われた第1の認証について、認証失敗を判定する。そして、サービスサーバ400は、認証失敗が判定された予約を破棄する。換言すると、サービスサーバ400は、予約情報に対応付けられた時刻を有効期間に含む第1の公開鍵を使用して行われた第1の認証について、認証成功を維持する。予約情報に対応付けられた時刻の一例は、予約情報及び電子署名を受信した時刻である。かかる時刻を、以下では予約申し込み時刻とも称する。かかる構成によれば、漏洩が疑われた後のタイミングで申し込まれた予約を無効にしつつ、漏洩が疑われる前のタイミングで申し込まれた予約を有効のままにすることができる。従って、セキュリティを向上させつつ、鍵の無効化に伴う再予約の手間を不要にすることが可能となる。
ここで、第1の認証部は、ブロックチェーンにより構成されてもよい。ブロックチェーンとは、ブロックと呼ばれる単位のデータを生成し、ブロック間をリンク付けすることによりデータを管理する技術である。新たに生成されたブロックは、前回生成されたブロックに連結される。そのため、ブロックは、順序付けされながら増加していくこととなる。ブロックチェーンは、過去のデータの変更履歴をすべて記録し、公開する技術として、仮想通貨等の様々な技術に使用されている。ブロックチェーンにおいて、ブロックに含まれるデータに対し各種判断を行う主体は、スマートコントラクトとも称される。
鍵生成センタ300は、生成した公開鍵をブロックチェーンにおけるブロックに書き込んでもよい。そして、第1の認証部としてのスマートコントラクトは、ブロックに書き込まれた公開鍵を使用して、第1の認証を行う。かかる構成によれば、公開鍵の公開及び公開鍵を使用した第1の認証を、より容易に実装することが可能となる。
とりわけ、第1の認証部としてのスマートコントラクトは、公開鍵がブロックに書き込まれた時刻に基づいて当該公開鍵の有効期間を認識してもよい。鍵生成センタ300は、あるユーザの秘密鍵に漏洩が疑われる場合、公開鍵及び秘密鍵を再度発行し、新たに発行した公開鍵を前回発行した公開鍵に書き込まれたブロックの次のブロックに書き込む。よって、ある公開鍵の有効期間は、当該公開鍵がブロックに書き込まれた時刻から、次回発行された公開鍵が次のブロックに書き込まれた時刻までとなる。そして、スマートコントラクトは、予約申し込み時刻を有効期間に含まない第1の公開鍵を使用して行われた第1の認証について、認証失敗を判定する。他方、スマートコントラクトは、予約申し込み時刻を有効期間に含む第1の公開鍵を使用して行われた第1の認証について、認証成功を維持する。かかる構成によれば、ブロックに書き込まれた時刻が各公開鍵の有効期間を示すので、有効期間を別途管理せずに済むという点で、実装を容易にすることが可能となる。
また、携帯機100は、予約情報及び電子署名をブロックチェーンにおけるブロックに書き込んでもよい。そして、第1の認証部としてのスマートコントラクトは、ブロックに書き込まれた予約情報及び電子署名に対し、第1の認証を行う。なお、予約情報及び電子署名が書き込まれるブロックチェーンと、公開鍵が書き込まれるブロックチェーンとは、別々に構成されてもよい。
そして、第1の認証部としてのスマートコントラクトは、予約情報及び電子署名がブロックに書き込まれた時刻を有効期間に含まない第1の公開鍵を使用して行われた第1の認証について、認証失敗を判定する。また、スマートコントラクトは、予約情報及び電子署名がブロックに書き込まれた時刻を有効期間に含む第1の公開鍵を使用して行われた第1の認証について、認証成功を維持する。かかる構成によれば、予約情報及び電子署名がブロックに書き込まれた時刻を予約申し込み時刻として取り扱うことができるので、予約申し込み時刻を別途管理せずに済むという点で、実装を容易にすることが可能となる。
<3.まとめ>
以上、添付図面を参照しながら本発明の好適な実施形態について詳細に説明したが、本発明はかかる例に限定されない。本発明の属する技術の分野における通常の知識を有する者であれば、特許請求の範囲に記載された技術的思想の範疇内において、各種の変更例または修正例に想到し得ることは明らかであり、これらについても、当然に本発明の技術的範囲に属するものと了解される。
例えば、上記実施形態では、利用対象が車両202である例を説明したが、本発明はかかる例に限定されない。利用対象として、車両以外の、航空機、及び船舶等の任意の移動体に搭載されてもよい。ここで、移動体とは、移動する装置である。もちろん、利用対象は、移動体に限定されない。利用対象は、家又はホテルの部屋等であってもよく、例えばドア上の施錠/解錠が認証結果に基づいて実行されてもよい。
例えば、上記では、携帯機100が生体情報取得部120を有する例を説明したが、本発明はかかる例に限定されない。例えば、携帯機100は、生体情報取得部120を有していなくてもよい。その場合、登録処理においては、実店舗においてユーザの生体情報が取得され、鍵生成センタ300に送信されてもよい。
なお、本明細書において説明した各装置による一連の処理は、ソフトウェア、ハードウェア、及びソフトウェアとハードウェアとの組合せのいずれを用いて実現されてもよい。ソフトウェアを構成するプログラムは、例えば、各装置の内部又は外部に設けられる記録媒体(非一時的な媒体:non-transitory media)に予め格納される。そして、各プログラムは、例えば、コンピュータによる実行時にRAMに読み込まれ、CPUなどのプロセッサにより実行される。上記記録媒体は、例えば、磁気ディスク、光ディスク、光磁気ディスク、フラッシュメモリ等である。また、上記のコンピュータプログラムは、記録媒体を用いずに、例えばネットワークを介して配信されてもよい。
また、本明細書においてフローチャート及びシーケンス図を用いて説明した処理は、必ずしも図示された順序で実行されなくてもよい。いくつかの処理ステップは、並列的に実行されてもよい。また、追加的な処理ステップが採用されてもよく、一部の処理ステップが省略されてもよい。
1:システム、 100:携帯機、 110:無線通信部、 120:生体情報取得部、 130:入出力部、 140:記憶部、 150:制御部、 200:通信ユニット、 210:無線通信部、 220:生体情報取得部、 230:記憶部、 240:制御部、 300:鍵生成センタ、 310:通信部、 320:記憶部、 330:制御部、 400:サービスサーバ、 410:通信部、 420:記憶部、 430:制御部

Claims (17)

  1. ユーザにより利用可能な対象である利用対象を予約する前記ユーザである第1のユーザの体に関する情報である生体情報に基づく認証であって、前記第1のユーザの正当性を認証する第1の認証を行う第1の認証部と、
    前記利用対象を利用する前記ユーザである第2のユーザの前記生体情報に基づく認証であって、前記第2のユーザが前記第1のユーザと同一であることを認証する第2の認証を行う第2の認証部と、
    前記第1のユーザの前記生体情報に対応する公開鍵である第1の公開鍵に基づいて秘密鍵を生成する鍵生成部と、
    前記第1のユーザによる前記利用対象の予約に関する情報である予約情報に、前記予約情報及び前記鍵生成部により生成された前記秘密鍵に基づいて生成された電子署名を対応付けて前記第1の認証部に送信することで、前記第1のユーザによる前記利用対象の予約を行う予約部と、
    を備えるシステム。
  2. 前記第1の認証部は、前記第1のユーザの前記生体情報に対応する公開鍵である第1の公開鍵を使用して前記電子署名が正しいか否かを検証し、前記電子署名が正しいと検証した場合に認証成功を判定し、前記電子署名が不正であると検証した場合に認証失敗を判定することを、前記第1の認証として行う、
    請求項に記載のシステム。
  3. 前記第2の認証部は、前記第1の認証に成功した前記第1のユーザの前記生体情報に対応する公開鍵である第1の公開鍵と、前記第2のユーザの前記生体情報に対応する公開鍵である第2の公開鍵とが、対応するか否かを判定し、対応する場合に認証成功を判定し、対応しない場合に認証失敗を判定することを、前記第2の認証として行う、
    請求項に記載のシステム。
  4. 前記第1の公開鍵は、前記第1のユーザの前記生体情報であり、
    前記鍵生成部は、前記第1のユーザの前記生体情報から抽出された特徴量に基づいて前記秘密鍵を生成する、
    請求項に記載のシステム。
  5. 前記第1の公開鍵は、前記第1のユーザの前記生体情報であり、
    前記第1の認証部は、前記第1のユーザの前記生体情報から抽出された特徴量に基づいて前記電子署名が正しいか否かを検証することを、前記第1の認証として行う、
    請求項又はに記載のシステム。
  6. 前記第1の公開鍵は、前記第1のユーザの前記生体情報であり、
    前記第2の公開鍵は、前記第2のユーザの前記生体情報であり、
    前記第2の認証部は、前記第1のユーザの前記生体情報から抽出された特徴量と、前記第2のユーザの前記生体情報から抽出された特徴量とが、一致するか否かを判定し、一致する場合に認証成功を判定し、不一致である場合に認証失敗を判定することを、前記第2の認証として行う、
    請求項のいずれか一項に記載のシステム。
  7. 前記鍵生成部は、前記第1のユーザの前記生体情報に基づいて前記第1の公開鍵を生成し、生成した前記第1の公開鍵を前記第1の認証部に送信する、
    請求項に記載のシステム。
  8. 前記鍵生成部は、前記第1のユーザの前記生体情報から抽出された特徴量をハッシュ関数に入力することで得られたハッシュ値を、前記第1の公開鍵として生成する、
    請求項に記載のシステム。
  9. 前記第1の認証部は、前記鍵生成部により生成された前記第1の公開鍵を使用して前記電子署名が正しいか否かを検証することを、前記第1の認証として行う、
    請求項に記載のシステム。
  10. 前記第2の認証部は、前記鍵生成部により生成された前記第1の公開鍵と、前記第2のユーザの前記生体情報から抽出された特徴量をハッシュ関数に入力することで得られたハッシュ値である前記第2の公開鍵とが、一致するか否かを判定し、一致する場合に認証成功を判定し、不一致である場合に認証失敗を判定することを、前記第2の認証として行う、
    請求項又はに記載のシステム。
  11. 前記鍵生成部は、前記第1のユーザの前記生体情報から抽出された特徴量に基づいて、前記生体情報のゆらぎを訂正するための情報である誤り訂正用補助データを生成し、
    前記第2の認証部は、
    前記鍵生成部により生成された前記誤り訂正用補助データに基づいて前記第2のユーザの前記生体情報から抽出された前記特徴量を訂正し、
    訂正後の前記特徴量を前記ハッシュ関数に入力することで得られたハッシュ値を前記第2の公開鍵として使用して、前記第1の公開鍵と前記第2の公開鍵とが一致するか否かを判定し、一致する場合に認証成功を判定し、不一致である場合に認証失敗を判定することを、前記第2の認証として行う、
    請求項10に記載のシステム。
  12. 前記鍵生成部は、前記第1のユーザの前記生体情報から抽出された特徴量、及び前記第1の公開鍵を新たに生成する度に変化する情報である鍵更新用補助データを、ハッシュ関数に入力することで得られたハッシュ値を、前記第1の公開鍵として生成し、
    前記第2の認証部は、前記第2のユーザの前記生体情報から抽出された前記特徴量、及び前記鍵更新用補助データを、ハッシュ関数に入力することで得られたハッシュ値を前記第2の公開鍵として使用して、前記第1の公開鍵と前記第2の公開鍵とが一致するか否かを判定し、一致する場合に認証成功を判定し、不一致である場合に認証失敗を判定することを、前記第2の認証として行う、
    請求項10又は11に記載のシステム。
  13. 前記鍵生成部は、前記第1の公開鍵を新たに生成した場合、新たに生成した前記第1の公開鍵に対し有効であることを示す情報を対応付け、過去に生成した前記第1の公開鍵に対し無効であることを示す情報を対応付け、
    前記第1の認証部は、有効であることを示す情報が対応付けられた前記第1の公開鍵を使用して、前記第1の認証を行う、
    請求項12に記載のシステム。
  14. 前記鍵生成部は、前記第1の公開鍵を新たに生成した場合、新たに生成した前記第1の公開鍵及び過去に生成した前記第1の公開鍵の各々に対し、有効期間を示す情報を対応付け、
    前記第1の認証部は、前記予約情報に対応付けられた時刻を前記有効期間に含まない前記第1の公開鍵を使用して行われた前記第1の認証について、認証失敗を判定する、
    請求項13に記載のシステム。
  15. 前記鍵生成部は、生成した前記第1の公開鍵をブロックチェーンにおけるブロックに書き込み、
    前記第1の認証部は、前記第1の公開鍵が前記ブロックに書き込まれた時刻に基づいて前記第1の公開鍵の有効期間を認識し、前記予約情報に対応付けられた時刻を前記有効期間に含まない前記第1の公開鍵を使用して行われた前記第1の認証について、認証失敗を判定する、
    請求項13に記載のシステム。
  16. 前記予約部は、前記予約情報及び前記電子署名をブロックチェーンにおけるブロックに書き込み、
    前記第1の認証部は、前記予約情報及び電子署名が前記ブロックに書き込まれた時刻を前記有効期間に含まない前記第1の公開鍵を使用して行われた前記第1の認証について、認証失敗を判定する、
    請求項14又は15に記載のシステム。
  17. ユーザにより利用可能な対象である利用対象を予約する前記ユーザである第1のユーザの体に関する情報である生体情報に基づく認証であって、前記第1のユーザの正当性を認証する第1の認証を行い、
    前記利用対象を利用する前記ユーザである第2のユーザの前記生体情報に基づく認証であって、前記第2のユーザが前記第1のユーザと同一であることを認証する第2の認証を行う第2の認証部に対し前記第2の認証のための情報を提供する第1の認証部、
    を備え、
    前記第1の認証部は、前記第1のユーザによる前記利用対象の予約に関する情報である予約情報に対応付けられた、前記第1のユーザの前記生体情報に対応する公開鍵である第1の公開鍵に基づいて生成された秘密鍵に基づいて生成された電子署名を、前記第1の公開鍵を使用して検証することで前記第1の認証を行う、
    証装置。
JP2020100574A 2020-06-10 2020-06-10 システム、及び認証装置 Active JP7427533B2 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2020100574A JP7427533B2 (ja) 2020-06-10 2020-06-10 システム、及び認証装置
US17/914,566 US20230205856A1 (en) 2020-06-10 2021-02-01 System and authentication device
PCT/JP2021/003574 WO2021250930A1 (ja) 2020-06-10 2021-02-01 システム、及び認証装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2020100574A JP7427533B2 (ja) 2020-06-10 2020-06-10 システム、及び認証装置

Publications (2)

Publication Number Publication Date
JP2021197574A JP2021197574A (ja) 2021-12-27
JP7427533B2 true JP7427533B2 (ja) 2024-02-05

Family

ID=78847164

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2020100574A Active JP7427533B2 (ja) 2020-06-10 2020-06-10 システム、及び認証装置

Country Status (3)

Country Link
US (1) US20230205856A1 (ja)
JP (1) JP7427533B2 (ja)
WO (1) WO2021250930A1 (ja)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003110550A (ja) 2001-09-27 2003-04-11 Hitachi Information Technology Co Ltd セキュリティ管理方法およびセキュリティシステム
JP2007249349A (ja) 2006-03-14 2007-09-27 Nec Corp カードレス・デビット決済システム及び方法並びにその制御プログラム
JP2019075721A (ja) 2017-10-17 2019-05-16 キヤノン株式会社 システム、及びその方法

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8615663B2 (en) * 2006-04-17 2013-12-24 Broadcom Corporation System and method for secure remote biometric authentication
KR102208418B1 (ko) * 2019-08-12 2021-01-27 엘지전자 주식회사 공유차량의 생체인식 장치 및 방법

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003110550A (ja) 2001-09-27 2003-04-11 Hitachi Information Technology Co Ltd セキュリティ管理方法およびセキュリティシステム
JP2007249349A (ja) 2006-03-14 2007-09-27 Nec Corp カードレス・デビット決済システム及び方法並びにその制御プログラム
JP2019075721A (ja) 2017-10-17 2019-05-16 キヤノン株式会社 システム、及びその方法

Also Published As

Publication number Publication date
US20230205856A1 (en) 2023-06-29
WO2021250930A1 (ja) 2021-12-16
JP2021197574A (ja) 2021-12-27

Similar Documents

Publication Publication Date Title
US11108546B2 (en) Biometric verification of a blockchain database transaction contributor
US10680808B2 (en) 1:N biometric authentication, encryption, signature system
JP4996904B2 (ja) 生体認証システム、登録端末、認証端末、及び認証サーバ
KR101250132B1 (ko) 생체 인증 시스템 및 그 방법
EP1791073B1 (en) Processing device, helper data generating device, terminal device, authentication device and biometrics authentication system
US9384338B2 (en) Architectures for privacy protection of biometric templates
JP5710439B2 (ja) テンプレート配信型キャンセラブル生体認証システムおよびその方法
US11449589B2 (en) Updating biometric data templates
WO2012042775A1 (ja) 生体認証システム、通信端末装置、生体認証装置、および生体認証方法
KR20010052105A (ko) 생체 측정 데이터를 이용한 암호키 발생
JP2006209697A (ja) 個人認証システム、この個人認証システムに使用される認証装置、および個人認証方法
BR112014023361A2 (pt) método para gerar uma identidade pública para autenticar um indivíduo que transporta um objeto de identificação, dispositivo eletrônico, e, sistema para autenticar um titular de um objeto de identificação
EP1886204B1 (en) Transaction method and verification method
JP6969216B2 (ja) 開錠制御システム
JPWO2020121458A1 (ja) 照合システム、クライアントおよびサーバ
JP6841781B2 (ja) 認証サーバ装置、認証システム及び認証方法
JP7427533B2 (ja) システム、及び認証装置
WO2022130528A1 (ja) 回復用検証システム、照合システム、回復用検証方法および非一時的なコンピュータ可読媒体
KR100986980B1 (ko) 생체 인증 방법, 클라이언트 및 서버
JP4440513B2 (ja) 資格認証方法
JP5574005B2 (ja) 生体認証方法及びシステム
WO2023073040A1 (en) Authenticating an electronic device
CN116232729A (zh) 一种安全登录和身份认证的去中心化的系统

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20221118

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20231128

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20231222

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20240124

R150 Certificate of patent or registration of utility model

Ref document number: 7427533

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150