JP2016111687A - プライバシーを保護する集合ベースのバイオメトリック認証 - Google Patents

プライバシーを保護する集合ベースのバイオメトリック認証 Download PDF

Info

Publication number
JP2016111687A
JP2016111687A JP2015207567A JP2015207567A JP2016111687A JP 2016111687 A JP2016111687 A JP 2016111687A JP 2015207567 A JP2015207567 A JP 2015207567A JP 2015207567 A JP2015207567 A JP 2015207567A JP 2016111687 A JP2016111687 A JP 2016111687A
Authority
JP
Japan
Prior art keywords
registration
registered
verification
obfuscated
data
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2015207567A
Other languages
English (en)
Other versions
JP6555073B2 (ja
Inventor
ハートロフ・ジェシー
Hartloff Jesse
マンダル・アヴラディップ
Mandal Avradip
ロイ・アルナブ
Roy Arnab
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.)
Fujitsu Ltd
Original Assignee
Fujitsu 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 Fujitsu Ltd filed Critical Fujitsu Ltd
Publication of JP2016111687A publication Critical patent/JP2016111687A/ja
Application granted granted Critical
Publication of JP6555073B2 publication Critical patent/JP6555073B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • 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
    • 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
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/10Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/10Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
    • G06V40/12Fingerprints or palmprints
    • G06V40/1347Preprocessing; Feature extraction
    • G06V40/1353Extracting features related to minutiae or pores
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/50Maintenance of biometric data or enrolment thereof
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/0861Network architectures or network communication protocols for network security for authentication of entities using biometrical features, e.g. fingerprint, retina-scan
    • 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/30Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy
    • H04L9/3006Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy underlying computational problems or public-key parameters
    • H04L9/3026Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy underlying computational problems or public-key parameters details relating to polynomials generation, e.g. generation of irreducible polynomials
    • 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/30Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy
    • H04L9/304Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy based on error correction codes, e.g. McEliece
    • 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
    • H04L9/3249Cryptographic 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 using RSA or related signature schemes, e.g. Rabin scheme
    • 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/3271Cryptographic 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 challenge-response
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/50Maintenance of biometric data or enrolment thereof
    • G06V40/53Measures to keep reference information secret, e.g. cancellable biometrics
    • 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/16Obfuscation or hiding, e.g. involving white box

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Computing Systems (AREA)
  • Multimedia (AREA)
  • Human Computer Interaction (AREA)
  • General Engineering & Computer Science (AREA)
  • Health & Medical Sciences (AREA)
  • Computer Hardware Design (AREA)
  • General Health & Medical Sciences (AREA)
  • Biomedical Technology (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Biodiversity & Conservation Biology (AREA)
  • Software Systems (AREA)
  • Mathematical Physics (AREA)
  • Pure & Applied Mathematics (AREA)
  • Mathematical Optimization (AREA)
  • Mathematical Analysis (AREA)
  • Algebra (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Collating Specific Patterns (AREA)

Abstract

【課題】プライバシーを保護する集合ベースのバイオメトリック認証を提供する。【解決手段】本方法では、登録バイオメトリック測定から登録特徴点の集合を抽出する。また、誤り訂正符号から一つまたは複数の登録符号語をランダムに選択する。特徴点の前記集合の、前記一つまたは複数の登録符号語を使って難読化された難読化バージョンを記述する難読化登録特徴点データを決定する。前記一つまたは複数の登録符号語の、ランダム登録多項式を使って難読化された難読化バージョンを記述する難読化登録符号語データを決定する。前記難読化登録特徴点データおよび前記難読化登録符号語データを含む登録バイオメトリック・テンプレートを決定する。前記登録バイオメトリック・テンプレートを含む登録データを決定する。前記登録データは、前記一つまたは複数の登録符号語および前記ランダム登録多項式を秘密に保つように構成してもよい。【選択図】図1A

Description

本項で論じる実施形態は、プライバシーを保護する集合ベースのバイオメトリック認証に関する。
電子装置およびサービスについてセキュリティが重要になることがある。セキュリティの重要性が増すにつれて、革新者は新しいまたは異なる形の認証に目を向ける。一つの形の認証は、バイオメトリック認証を含みうる。バイオメトリック認証は、一意的なバイオメトリック特性を介してユーザーの素性を測定し、認証することを含みうる。一意的なバイオメトリック特性は、ユーザーの指紋、虹彩、静脈、DNAなどの一つまたは複数を含みうる。バイオメトリック認証は、ユーザーがパスワードを覚えることなく認証されることができるという利点をもちうる。
ある実施形態のある側面によれば、方法が、登録バイオメトリック測定から登録特徴点の集合を抽出することを含む。本方法は、誤り訂正符号から一つまたは複数の登録符号語をランダムに選択することをも含む。本方法は、前記一つまたは複数の登録符号語を使って難読化された(obfuscated)特徴点の前記集合の難読化バージョンを記述する難読化登録特徴点データを決定することをも含む。本方法は、ランダムな登録多項式を使って難読化された前記一つまたは複数の登録符号語の難読化バージョンを記述する難読化登録符号語データを決定することをも含む。本方法は、前記難読化登録特徴点データおよび前記難読化登録符号語データを含む登録バイオメトリック・テンプレートを決定することをも含む。本方法は、前記登録バイオメトリック・テンプレートを含む登録データを決定することをも含む。前記登録データは、前記一つまたは複数の登録符号語および前記ランダムな登録多項式を秘密に保つよう構成されていてもよい。
これらの実施形態の目的および利点は、少なくとも請求項において具体的に指摘される要素、特徴および組み合わせによって実現され、達成されるであろう。
上記の概括的な記述および以下の詳細な説明は例示および説明するものであって、特許請求される発明を制約するものではないことは理解されるものとする。
例示的な実施形態について、付属の図面を使ってさらに具体的かつ詳細に記述し、説明する。
例示的なバイオメトリック認証システムのブロック図である。 例示的なバイオメトリック認証システムのブロック図である。 クライアント・モジュールまたは認証モジュールが集合ベースのバイオメトリック認証を提供するよう実装されうる例示的な動作環境のブロック図である。 集合ベースのバイオメトリック認証を提供するための例示的なシステムのブロック図である。 ユーザーを認証するために使われる例示的なデータのブロック図である。 ユーザーを認証するために使われる例示的なデータのブロック図である。 集合ベースのバイオメトリック認証のための登録データを決定する方法の例示的な流れ図である。 ユーザーを認証するための秘密鍵を決定する方法の例示的な流れ図である。
本稿で論じられる実施形態は、集合ベースのバイオメトリック認証を提供することに関する。
バイオメトリック認証では、ユーザーはユーザーのバイオメトリック特性を変えることができないことがありうる。たとえば、ユーザーは、該ユーザーの一つまたは複数の一意的な特徴(たとえば指紋、虹彩パターンなど)を記述するバイオメトリック・データを含むバイオメトリック・テンプレートを登録してもよい。バイオメトリック・テンプレートが危殆化され、ユーザーが該バイオメトリック・テンプレートによって記述される一意的な特性を変更できなとしたら、バイオメトリック認証はそのユーザーにとって実効のないものとなる。このため、バイオメトリック認証システムは強力なプライバシー保証を必要とする。
バイオメトリック認証システムのための強力なプライバシー保護保証を提供しようと試みるシステムは存在する。
一つのそのようなシステムは「リレーショナル・ハッシュ」と称されることがある。リレーショナル・ハッシュ・アプローチは、虹彩または手のひら静脈のバイオメトリック測定を行なうために当該システムの一部として使われるプリミティブを含む。リレーショナル・ハッシュ・アプローチに含まれるバイオメトリック測定は、ハミング距離を含む。このアプローチには、攻撃に弱くする既知の脆弱性がある。特に、リレーショナル・ハッシュ・アプローチは、リプレイ攻撃に特に弱い。リレーショナル・ハッシュ・アプローチは、多数の制限もあって、そのため実際配備のためには望ましくない。たとえば、リレーショナル・ハッシュ・アプローチは、指紋測定を含むバイオメトリック測定のためには使えない。リレーショナル・ハッシュ・アプローチはまた、バイオメトリック特徴の距離測定のための誤り耐性のある集合交わりを使わない。
もう一つのアプローチは、「ファジー・ボールト(fuzzy vault)」として知られている。このアプローチは、指紋テンプレート・セキュリティのために実装されてもよい。このアプローチには、攻撃に弱くする多数の既知の脆弱性がある。たとえば、ファジー・ボールト・アプローチは、リプレイ攻撃または複数事例攻撃(multiple instance attack)によって打ち負かされうる。このアプローチはまた、大きなテンプレート・サイズを含む制限があり、そのため実際配備のためにはそれほど望ましくない。
もう一つのアプローチは、バイオトークンの使用である。しかしながら、このアプローチは、独自仕様の指紋テンプレート・セキュリティ・システムの使用を含む。このアプローチが独自仕様である性質のため、実際配備のためにはそれほど望ましくないかもしれない。たとえば、このアプローチの基礎になる技術は、このアプローチがユーザーによって与えられるバイオメトリック・データの秘密を保つことを確証するための検査および吟味に対してオープンでないことがありうる。
これらおよび他のシステムの欠点は、集合ベースのバイオメトリック認証を使うことで克服されうる。図1Aを参照して下記でより詳細に説明するように、バイオメトリック認証システムは、クライアントおよび認証サーバーを含みうる。クライアントは、後述する該クライアントの機能を提供するよう構成されたコードおよびルーチンを含むクライアント・モジュールを含んでいてもよい。認証サーバーは、後述する該認証サーバーの機能を提供するよう構成されたコードおよびルーチンを含む認証モジュールを含んでいてもよい。クライアントは、登録ユーザーおよび検証ユーザーによって操作されうる。登録ユーザーおよび検証ユーザーは同じ人物であってもよい。認証サーバーは、バイオメトリック認証サービスを提供してもよい。バイオメトリック認証サービスは二つのプロセスを含んでいてもよい:(1)登録プロセスおよび(2)検証プロセスである。登録ユーザーは、登録プロセスを使ってバイオメトリック認証サービスに登録しうる。のちに、認証サーバーが、検証プロセスの間に、検証ユーザーが登録ユーザーと同じであるかどうかを判定してもよい。
ここで、いくつかの実施形態に基づく、バイオメトリック認証サービスによって提供される登録プロセスおよび検証プロセスの例について述べる。登録プロセスを記述するために使われる記号のグラフィックな描写が図3Aに描かれている。検証プロセスを記述するために使われる記号のグラフィックな描写が図3Bに描かれている。登録プロセスおよび検証プロセスを参照して下記に記述されるユーザー、クライアント・モジュール、認証サーバーおよび認証モジュールは、図1A〜図5を参照して下記に記述するものと同じであってもよい。
クライアントは登録プロセスを開始しうる。登録プロセスにおいて、クライアントの登録ユーザーは認証サーバーに登録する。クライアントは、登録バイオメトリック・テンプレートおよび公開鍵を認証サーバーに提供してもよい。登録バイオメトリック・テンプレートは、難読化特徴点データの集合および難読化符号語データの集合を含んでいてもよい。登録バイオメトリック・テンプレートは「{T=(yii),…,(ynn)}」によって表わされてもよい。ここで、記号「yi」は、難読化登録特徴点データを表わし、記号「γi」は難読化登録符号語データを表わし、記号「T」は登録バイオメトリック・テンプレートを表わす。記号「yn」は、難読化登録特徴点データの集合内に含まれる難読化登録特徴点データが任意の正の整数個あってもよいことを表わしていてもよい。記号「γn」は、難読化登録符号語データの集合内に含まれる難読化登録符号語データが任意の正の整数個あってもよいことを表わしていてもよい。いくつかの実装では、難読化登録符号語データの集合は、難読化登録特徴点データの集合に対応していてもよい。たとえば、いくつかの実装では、登録バイオメトリック・テンプレートは、各難読化登録特徴点について一つの難読化登録符号語を含んでいてもよい。
登録バイオメトリック・テンプレートに含まれる難読化登録特徴点データは、登録ユーザーによって与えられた登録バイオメトリック入力の一つまたは複数の難読化登録特徴点の集合を記述していてもよい。たとえば、登録ユーザーは、登録バイオメトリック入力をクライアントに与えてもよい。登録バイオメトリック入力は、登録ユーザーのバイオメトリック測定値を含んでいてもよい。クライアント・モジュールは、登録バイオメトリック入力を受け取り、登録バイオメトリック入力の一つまたは複数の特徴点を記述する特徴点データを決定し、特徴点データの難読化バージョンを記述する難読化特徴点データを決定してもよい。
登録バイオメトリック入力は、指紋スキャン、網膜スキャンまたは登録ユーザーに関連する他の任意のバイオメトリック入力を含んでいてもよい。登録バイオメトリック入力は、「B=b1…bn」によって表わされてもよい。ここで、記号「b1」は、登録バイオメトリック入力の第一の特徴を記述する登録特徴点データを表わし、記号「b1…bn」は、登録バイオメトリック入力に含まれる任意の正の整数個の特徴を記述する登録特徴点データの集合を表わし、記号「B」は登録バイオメトリック入力を表わす。
難読化登録特徴点データは、一つまたは複数の符号語を使ってクライアント・モジュールによって決定されてもよい。クライアント・モジュールは、誤り訂正符号(ECC: Error Correction Code)から一つまたは複数の符号語をランダムに選択してもよい。ECCは線形誤り訂正符号スキームまたは他の任意の誤り訂正符号スキームでありうる。いくつかの実装では、クライアント・モジュールは各特徴点について一つの符号語を選択してもよい。次いで符号語は、登録バイオメトリック入力に含まれる前記一つまたは複数の特徴点を難読化するために使われてもよい。たとえば、クライアント・モジュールは、バイオメトリック入力を受け取り、登録特徴点データを決定し、ECCから一つまたは複数の符号語をランダムに選択し、前記一つまたは複数の符号語を使って、前記一つまたは複数の符号語および前記登録特徴点データに基づく難読化特徴点データを決定してもよい。
難読化特徴点データは
Figure 2016111687
によって表わされてもよい。ここで、記号「bi」は登録特徴点データの難読化されていないバージョンを表わし、記号「ci」は前記一つまたは複数のランダムに選択された登録符号語を表わし、記号「yi」は難読化された登録特徴点データを表わす。丸囲みの+記号は排他的OR関数を表わす。
認証サーバーは、難読化登録特徴点データ(数1)を含む登録バイオメトリック・テンプレートを受領しうるが、登録バイオメトリック・テンプレートに含まれる難読化された登録特徴点データに基づいて、登録特徴点データ(bi)の難読化されていないバージョンを判別することはできない。たとえば、登録特徴点データが前記一つまたは複数の登録符号語によって難読化
Figure 2016111687
され、前記一つまたは複数の登録符号語がECCからランダムに選択されて認証サーバーから秘密に保たれるのであれば、認証サーバーは、難読化された特徴点データ(yi)から特徴点データ(bi)の難読化されていないバージョンをデコードすることはできない。
クライアント・モジュールは、ランダム登録多項式を使って前記一つまたは複数のランダムに選択された登録符号語を秘密に保ってもよい。クライアント・モジュールは、前記ランダム登録多項式を決定してもよい。前記ランダム登録多項式は記号「ps」によって表わされてもよい。クライアントは、ランダム登録多項式の難読化されていないバージョンを認証サーバーに提供しないことによって、ランダム登録多項式を認証サーバーから秘密に保ってもよい。
クライアント・モジュールは、前記一つまたは複数のランダムに選択された符号語および前記ランダム多項式に基づいて、難読化された登録符号語データを生成してもよい。難読化された登録符号語データは「γi=ps(ci)」によって表わされてもよい。ここで、記号「ps」はランダム登録多項式を表わし、記号「ci」は前記一つまたは複数のランダムに選択された登録符号語を表わし、記号「γi」は難読化された登録符号語データを表わす。
認証サーバーは、難読化された登録符号語データ(γi=ps(ci))を含む登録バイオメトリック・テンプレートへのアクセスをもちうるが、ランダム登録多項式(ps)は認証サーバーには知られていない秘密なので、認証サーバーは、難読化された登録符号語データに含まれる前記一つまたは複数のランダムに選択された登録符号語(ci)を決定することはできない。このように、前記一つまたは複数のランダムに選択された登録符号語は認証サーバーから秘密にされる。さらに、前記一つまたは複数のランダムに選択された登録符号語は認証サーバーから秘密にされるので、認証サーバーは、難読化された特徴点データ
Figure 2016111687
から登録特徴点データ(bi)の難読化されていないバージョンを決定することもできない。このように、登録ユーザーの登録バイオメトリック入力に関連付けられた登録特徴点データの難読化されていないバージョンは、認証サーバーから秘密に保たれる。
登録バイオメトリック・テンプレートに加えて、クライアントは、公開鍵を認証サーバーに提供してもよい。公開鍵は、クライアント・モジュールによって、前記ランダム登録多項式に基づいて生成されてもよい。たとえば、ランダム登録多項式は、公開鍵の生成にシードを与えるために使われてもよい。公開鍵は、「kpu=public(ps)」によって表わされてもよい。ここで、記号「ps」はランダム登録多項式を表わし、記号「kpu」は公開鍵を表わす。
登録バイオメトリック・テンプレートおよび公開鍵に加えて、クライアントはユーザーIDも認証サーバーに提供してもよい。ユーザーIDは、登録ユーザーの登録バイオメトリック入力に関連付けられた登録特徴点データの難読化されていないバージョンは含まないものの、登録ユーザーについての一意的な識別子を含んでいてもよい。認証サーバーは、ユーザーIDを登録バイオメトリック・テンプレートおよび公開鍵と関連付けてもよい。登録バイオメトリック・テンプレート、公開鍵およびユーザーIDは認証サーバーに提供され、前記一つまたは複数のランダムな登録符号語および前記ランダム登録多項式は認証サーバーから秘密にされる。
クライアントは、認証サーバーに検証要求を与えることによって検証プロセスを開始してもよい。検証要求は、登録ユーザーについてのユーザーIDを含んでいてもよい。たとえば、検証ユーザーは登録ユーザーとして認証されることを望むことがありうる。よって、検証ユーザーは検証プロセスを開始するためにクライアントに要求入力を与えてもよい。クライアント・モジュールは、検証ユーザーからの該要求入力に応じて、クライアントのメモリからユーザー識別データ(「ユーザーID」)を取り出し、前記検証要求を生成し、前記検証要求を認証サーバーに送ってもよい。
検証要求を受け取るのに応じて、認証サーバーはクライアントに対して検証チャレンジを与えてもよい。検証チャレンジは、前記登録バイオメトリック・テンプレートおよび乱数値を含んでいてもよい。検証チャレンジに含まれるデータは「(T,r)」によって表わされてもよい。ここで、記号「T」は登録バイオメトリック・テンプレートを表わし、記号「r」は乱数値を表わす。
検証ユーザーは、登録ユーザーであると認証されるために、検証バイオメトリック入力をクライアントに与えてもよい。のちにより詳細に説明するように、クライアント・モジュールは、検証バイオメトリック入力から決定される検証特徴点データを使って、登録プロセスの間に生成された公開鍵に関連付けられた秘密鍵を復元してもよい。秘密鍵は、検証ユーザーが登録ユーザーであることを認証するために認証サーバーによって使用されてもよい。
クライアント・モジュールは、検証ユーザーによって与えられた検証バイオメトリック入力を受領し、検証バイオメトリック入力の一つまたは複数の特徴点を記述する検証特徴点データを決定してもよい。検証バイオメトリック入力は、登録プロセスの間に登録ユーザーによって与えられるのと同様の型であってもよい。たとえば、登録ユーザーが登録プロセスの間に登録バイオメトリック入力として指紋スキャンを提供したのであれば、検証ユーザーは検証プロセスの間に指紋スキャンを提供するようクライアント・モジュールによって要求されうる。
検証バイオメトリック入力は「B'=b1'…bn'」によって表わされてもよい。ここで、記号「b1'」は、検証バイオメトリック入力の第一の特徴を記述する登録特徴点データを表わし、記号「b1'…bn'」は、検証バイオメトリック入力に含まれる任意の正の整数個の特徴を記述する検証特徴点データの集合を表わし、記号「B'」は検証バイオメトリック入力を表わす。
検証特徴点データの集合に含まれる各特徴点について、クライアント・モジュールは、一つまたは複数の検証符号語を決定してもよい。いくつかの実装では、クライアント・モジュールは、検証チャレンジに含まれていた登録バイオメトリック・テンプレート「{T=(yii),…,(ynn)}」に含まれる難読化登録特徴点データ(yi)に基づいて前記一つまたは複数の検証符号語を決定してもよい。たとえば、クライアント・モジュールは、
Figure 2016111687
に従って前記一つまたは複数の検証符号語を決定してもよい。ここで、記号「yi」は登録バイオメトリック・テンプレートに含まれる難読化登録特徴点データ(yi)を表わし、記号「b'j」は検証バイオメトリック入力に含まれる一つまたは複数の特徴の難読化されていないバージョンを記述する検証特徴点データを表わし、記号「ci'」は難読化登録特徴点データ(yi)および検証特徴点データ(b'j)に基づいて決定された検証符号語を表わす。クライアント・モジュールは前記一つまたは複数の検証符号語を、記号「S」によって表わされるデコードのための候補集合に加えてもよい。
クライアントは、デコードのための候補集合を修正するかどうかを決定するために重み付けプロセスを適用してもよい。本段落が記述する重み付けプロセスは、図3Bにおいて要素345を参照してグラフィックに描かれている。クライアント・モジュールは、前記一つまたは複数の検証符号語(c'j)、難読化登録特徴点データ(yi)および検証特徴点データ(b'j)に基づいて重みを決定してもよい。たとえば、クライアント・モジュールは
Figure 2016111687
に従って重みを決定してもよい。クライアント・モジュールは、その重みをユーザーまたは管理者によって与えられる閾値と比較してもよい。重みが閾値未満であれば、クライアント・モジュールは、登録バイオメトリック・テンプレートからの難読化登録符号語データ(γi)を決定し、該難読化登録符号データおよび前記一つまたは複数の検証符号語(c'i)をデコードのための候補集合(S)に「(c'ii)」として加えてもよい。
いくつかの実装では、クライアント・モジュールは、デコードのための候補集合から検証多項式を決定するためのデコーダを含んでいてもよい。たとえば、クライアント・モジュールは、ウェルチ・バールカンプ(Welch-Berlekamp)デコーダを提供するよう構成されたコードおよびルーチンを含んでいてもよい。クライアント・モジュールは、デコードのための前記候補集合を前記デコーダを使ってデコードして、検証多項式を決定してもよい。検証多項式は、下記では記号「ps'」によって表わされてもよい。
クライアント・モジュールは、検証多項式(ps')を使って前記秘密鍵を決定してもよい。秘密鍵は、「kpr=private(ps')」によって表わされてもよい。ここで、記号「ps'」は検証多項式を表わし、記号「kpr」は秘密鍵を表わす。
クライアント・モジュールは、秘密鍵を使って、検証において受領された乱数値に署名してもよい。署名された乱数値は「d=sign(kpr,r)」によって表わされてもよい。ここで、記号「kpr」は秘密鍵を表わし、記号「r」は乱数値を表わし、記号「d」は署名された乱数値を表わす。
クライアント・モジュールは、認証サーバーに対してチャレンジ回答を与えてもよい。チャレンジ回答は、検証チャレンジに応答してもよい。チャレンジ回答は、署名された乱数値を含んでいてもよい。認証モジュールは、乱数値に署名するのに使われた秘密鍵が登録鍵の間に受領された公開鍵に対応するかどうかを検証してもよい。秘密鍵が公開鍵に対応していれば、検証ユーザーは認証モジュールによって登録ユーザーとして認証される。秘密鍵が公開鍵に対応しない場合には、検証ユーザーは認証モジュールによって登録ユーザーとして認証されない。
上記で説明したように、ユーザーのバイオメトリック入力の特徴のような枢要なデータが、クライアントと認証サーバーとの間で伝送されるときに難読化されてもよい。よって、クライアントと認証との間の通信は暗号化のようなセキュリティを必要としなくてもよい。認証サーバーは、登録特徴点データまたは検証特徴点データの難読化されていないバージョンへのアクセスをもたなくてもよい。よって、ユーザーのバイオメトリック測定値を複製するために必要なデータが認証サーバーから漏れることはない。たとえば認証サーバー自身が信用できない相手であることがありうるので、これは有益である。
本発明の実施形態について、付属の図面を参照して説明する。
図1Aは、本稿に開示される少なくとも一つの実施形態に従って構成された、例示的な登録プロセスを提供する例示的なバイオメトリック認証システム100のブロック図である。バイオメトリック認証システム100はクライアント102および認証サーバー140を含んでいてもよい。クライアント102は一または複数のユーザー106A、106B(まとめて「ユーザー106」と称される;個々には「ユーザー106A」または「ユーザー106B」と称される)によってアクセス可能であってもよい。ユーザー106はクライアント102の人間のユーザーまたは人間でないユーザーでバイオメトリック特徴を有するものを含みうる。ユーザー106は、認証サーバー140にアクセスするためにクライアント102を使ってもよい。たとえば、ユーザー106Aは、認証サーバー140の認証モジュール108によって提供されるバイオメトリック認証サービスにアクセスするためにクライアント102を使ってもよい。ユーザー106は、異なる時点において、クライアント102にアクセスする異なる人間または同じ人間を含んでいてもよい。下記で説明するように、認証サーバー140はバイオメトリック認証サービスを提供してもよい。バイオメトリック認証サービスは、ユーザー106が同じ人物であるか異なる人々であるかを判別するために使用されてもよい。たとえば、登録プロセスの間にはユーザー106は「登録ユーザー106」と称されてもよく、検証プロセスの間にはユーザー106は「検証ユーザー106」と称されてもよい。検証プロセスは、登録ユーザー106および検証ユーザー106が同じ人であるか異なる人であるかを判定してもよい。
認証サーバー140は、プロセッサ・ベースのコンピューティング装置を含んでいてもよい。たとえば、認証サーバー140は、ハードウェア・サーバー装置またはサーバーとして機能するよう構成された他の任意のプロセッサ・ベースのコンピューティング装置を含んでいてもよい。
認証サーバー140は認証モジュール108を含む。認証モジュール108は、バイオメトリック認証サービスを提供するよう構成されたコードおよびルーチンを含んでいてもよい。認証モジュール108は、認証サーバー140の、または認証サーバー140にとってアクセス可能なメモリまたは他のコンピュータ可読媒体上に記憶されてもよい。認証モジュール108は、本稿に記載される動作の一つまたは複数を実行するために、認証サーバー140のプロセッサによって実行可能であってもよい。認証モジュール108は、図1A〜図5を参照して下記でより詳細に述べる。
クライアント102は、プロセッサ・ベースのコンピューティング装置を含んでいてもよい。たとえば、クライアント102は、携帯電話、スマートフォン、タブレット・コンピュータ、ラップトップ・コンピュータ、デスクトップ・コンピュータ、セットトップボックスまたは接続された装置(たとえばスマートウォッチ、スマート眼鏡、スマート万歩計(登録商標)または他の任意の接続された装置)を含みうる。
クライアント102はクライアント・モジュール110および一つまたは複数のセンサー198を含んでいてもよい。センサー198は、クライアント102に通信上結合されたハードウェア装置を含んでいてもよい。代替的に、センサー198はクライアント102のコンポーネントを含んでいてもよい。クライアント・モジュール110は、クライアント102の、またはクライアント102にとってアクセス可能なメモリまたは他のコンピュータ可読媒体上に記憶されたコードおよびルーチンを含んでいてもよい。クライアント・モジュール110は、本稿に記載される動作の一つまたは複数を実行するために、クライアント102のプロセッサによって実行可能であってもよい。
いくつかの実施形態では、認証モジュール108は、クライアント・モジュール110の機能の一部または全部を提供するよう構成される。いくつかの実施形態では、認証モジュール108またはクライアント・モジュール110は、フィールド・プログラマブル・ゲート・アレイ(FPGA)または特定用途向け集積回路(ASIC)を含むハードウェアを使って実装されてもよい。いくつかの他の事例では、認証モジュール108またはクライアント・モジュール110は、ハードウェアとソフトウェアの組み合わせを使って実装されてもよい。このように、認証モジュール108またはクライアント・モジュール110は、ハードウェア装置として実装されてもよい。
クライアント102は、センサー198を含んでいてもよい。図1Aでは一つのセンサー198しか描かれていないが、一般にはクライアント102は一つまたは複数のセンサー198を含みうる。センサー198は、ユーザー106の一つまたは複数の生体特徴を測定するよう構成されたハードウェア装置を含んでいてもよい。測定は、バイオメトリック測定を含んでいてもよい。バイオメトリック測定は、ユーザー106の一意的な特徴を記述してもよい。たとえば、センサー198は、指紋スキャナ、虹彩の画像を捕捉するよう構成されたカメラ、ユーザー106のDNAを測定するよう構成された装置、ユーザー106の心拍数を捕捉するよう構成された心拍数モニタ、ユーザー106の骨格筋によって生成される電気活動を捕捉するよう構成されたウェアラブル筋電図センサーまたはユーザー106に関連するバイオメトリック測定値を捕捉するよう構成された他の任意のセンサー198のうちの一つまたは複数を含みうる。
クライアント・モジュール110は、登録データ189および確証データ179を決定するよう構成されたコードおよびルーチンを含んでいてもよい。登録データ189および確証データ179は下記でより詳細に述べる。
いくつかの実装では、クライアント・モジュール110は、センサー198からの登録入力193を受領し、該登録入力193に基づいて登録バイオメトリック・テンプレートを決定するよう構成されたコードおよびルーチンを含んでいてもよい。登録バイオメトリック・テンプレートの決定については上記したので、その説明はここでは繰り返さない。
いくつかの実装では、クライアント・モジュール110は、登録バイオメトリック・テンプレートに関連付けられた公開鍵を決定するよう構成されたコードおよびルーチンを含んでいてもよい。公開鍵の決定については上記したので、その説明はここでは繰り返さない。
認証モジュール108によって提供されるバイオメトリック認証サービスは:(1)登録プロセスおよび(2)検証プロセスを含みうる。認証モジュール108によって提供されるバイオメトリック認証サービスについての登録プロセスについてこれからある実施形態に基づいて記述する。認証モジュール108によって提供される検証プロセスは、ある実施形態に従って図1Bを参照して後述する。
図1Aの要素195および193を参照するに、認証モジュール108によって提供されるバイオメトリック認証サービスについての登録プロセスが開始されうる。登録ユーザー106が登録入力193を提供195してもよい。登録入力は登録バイオメトリック入力を含んでいてもよい。登録バイオメトリック入力は、登録ユーザー106のバイオメトリック測定値を含んでいてもよい。登録ユーザー106のバイオメトリック測定値は登録ユーザー106の一意的な特徴の測定値を含んでいてもよい。たとえば、バイオメトリック測定は、指紋スキャン、網膜スキャンまたは登録ユーザー106に関連する他の何らかのバイオメトリック測定を含んでいてもよい。
クライアント102は、登録入力193を受領195してもよい。クライアント・モジュール110は、登録ユーザー106について登録バイオメトリック・テンプレート、公開鍵およびユーザーIDを決定してもよい。登録バイオメトリック・テンプレートはクライアント・モジュール110によって、登録ユーザー106によって提供された登録入力193に基づいて決定されてもよい。クライアント102は、登録データ189を認証サーバー140に提供191してもよい。登録データ189は、登録ユーザー106についての登録バイオメトリック・テンプレート、公開鍵およびユーザーIDを含んでいてもよい。登録バイオメトリック・テンプレートは図1Aの要素189において記号「T」によって表わされていてもよい。公開鍵は図1Aの要素189において記号「kpu」によって表わされていてもよい。ユーザーIDは図1Aの要素189において記号「User ID」によって表わされていてもよい。
認証サーバー140は登録データ189を受領191してもよい。認証モジュール108は、登録データ189を、認証サーバー140のまたは認証サーバー140にとってアクセス可能であるメモリまたは他のコンピュータ可読媒体上に記憶してもよい。
認証サーバー140はクライアント102に確証要求185を提供187してもよい。確証要求は、登録データ189に含まれる登録バイオメトリック・テンプレートの署名を含んでいてもよい。
クライアント102は、確証要求185を受領187してもよい。クライアント102は、登録ユーザー106に対して登録バイオメトリック・テンプレートの署名を呈示してもよい。登録ユーザー106は確証入力181をクライアント102に提供183してもよい。確証入力181は、確証要求185に含まれる署名を確証する入力を含んでいてもよい。確証入力181は、認証サーバー140が、認証モジュール108によって提供される認証サービスへの登録ユーザー106の正当な登録を受領したことを確証する入力をも含んでいてもよい。
クライアント102は確証入力181を受領183する。クライアント102は、認証サーバー140に確証データ179を提供180する。確証入力181は、確証要求185に含まれる署名を確証するデータを含んでいてもよい。確証入力181は、認証モジュール108によって提供される認証サービスへの登録ユーザー106の正当な登録を確証するデータを含んでいてもよい。
認証サーバー140は確証データ179を受領180する。認証モジュール108は、確証データ179の受領180に基づいて、登録ユーザー106が認証モジュール108によって提供される認証サービスへの正当な登録者であることを判定してもよい。
図1Bは、本稿に記載される少なくとも一つの実施形態に従って構成される、例示的な検証プロセスを提供する例示的なバイオメトリック認証システム100のブロック図である。クライアント102、クライアント・モジュール110、ユーザー106、認証サーバー140および認証モジュール108は、図1Aに関して上記したのと同じであってもよく、よってこれらの記述はここでは繰り返さない。
検証ユーザー106はクライアントに対して要求入力175を提供177してもよい。要求入力は、検証プロセスを開始する指示を含んでいてもよい。
クライアント102は、要求入力175を受領177する。クライアント102は検証要求171を認証サーバー140に提供173する。検証要求171は、図1Aを参照して上記した登録データ189に含まれるユーザーIDを含んでいてもよい。
図1Bを参照するに、認証サーバー140は検証要求171を受領173してもよい。認証モジュール108は、検証要求171に含まれるユーザーIDに基づいて、検証ユーザー106が登録ユーザー106として認証されることを要求していることを判別してもよい。認証サーバー140は、検証チャレンジ167をクライアントに提供169してもよい。検証チャレンジは、登録ユーザー106に関連付けられた登録バイオメトリック・テンプレートおよび乱数値を含んでいてもよい。図1Bの要素167において、登録バイオメトリック・テンプレートは記号「T」によって表わされてもよく、乱数値は記号「r」によって表わされてもよい。登録バイオメトリック・テンプレートは図1Aを参照して上記した登録データ189に含まれる登録バイオメトリック・テンプレートと同じであってもよい。
上記の機能に加えて、クライアント・モジュール110は、検証要求171およびチャレンジ回答159を判別するよう構成されたコードおよびルーチンを含んでいてもよい。検証要求171およびチャレンジ回答159についてはのちにより詳細に述べる。
図1Bを参照するに、クライアント102は検証チャレンジ167を受領169してもよい。クライアント102は、クライアント102に検証バイオメトリック入力を与えるよう検証ユーザー106に促してもよい。検証ユーザー106はクライアント102に回答入力163を提供165してもよい。回答入力163は検証バイオメトリック入力を含んでいてもよい。検証バイオメトリック入力は、図1Bの要素163において記号「B'」によって表わされてもよい。クライアント・モジュール110は、検証バイオメトリック入力に含まれるデータに少なくとも部分的に基づく秘密鍵を決定してもよい。秘密鍵は、図1Bの要素159では記号「kpr」によって表わされていてもよい。秘密鍵は、図1Aを参照して上記した登録データ189に含まれている公開鍵に対応していてもよい。たとえば、秘密鍵と公開鍵は暗号学的な鍵ペアをなしてもよい。
図1Bを参照するに、クライアント・モジュール110は秘密鍵を使って乱数値に署名してもよい。クライアント102は、認証サーバー140に対してチャレンジ回答159を提供161してもよい。チャレンジ回答159は署名された乱数値を含んでいてもよい。署名された乱数値は図1Bの要素159では「d=sign(kpr,r)」によって表わされていてもよい。要素159を参照するに、記号「kpr」は秘密鍵を表わし、記号「r」は乱数値を表わし、記号「d」は署名された乱数値を表わす。
認証サーバー140は、チャレンジ回答159を受領161してもよい。認証モジュール108はチャレンジ回答を解析して、秘密鍵が公開鍵に対応し、それにより検証ユーザー106が登録ユーザー106と同じ人物であることを示すかどうかを判定してもよい。
図1Cは、集合ベースのバイオメトリック認証を提供するようクライアント・モジュール110または認証モジュール108が実装されうる例示的な動作環境160のブロック図である。図示した動作環境160はクライアント102、クライアント・モジュール110、ユーザー106、認証サーバー140、認証モジュール108およびネットワーク107を含む。
図1Cは、クライアント102および認証サーバー140に通信上結合された一つのネットワーク107を示しているが、実際上、一つまたは複数のネットワーク107がこれらのエンティティに通信上結合されていてもよい。
ネットワーク107は、通常の型のネットワーク、有線または無線のネットワークを含んでいてもよく、および/または星形構成、トークンリング構成または他の構成を含む数多くの異なる構成を有していてもよい。さらに、ネットワーク107は、ローカル・エリア・ネットワーク(LAN)、広域ネットワーク(WAN)(たとえばインターネット)および/またはそれを通じて複数の装置が通信しうる他の相互接続されたデータ経路を含んでいてもよい。いくつかの事例では、ネットワーク107はピアツーピア・ネットワークを含んでいてもよい。ネットワーク107は、多様な異なる通信プロトコルにおいてデータを送るための遠隔通信ネットワークに結合されるまたはその諸部分を含んでいてもよい。いくつかの事例では、ネットワーク107は、ショートメッセージングサービス(SMS)、マルチメディアメッセージングサービス(MMS)、ハイパーテキスト転送プロトコル(HTTP)、直接データ接続、WAP、電子メールなどを含む、データを送受信するためのブルートゥース通信ネットワークまたはセルラー通信ネットワークを含む。
クライアント102、クライアント・モジュール110、ユーザー106、認証サーバー140および認証モジュール108は図1Aおよび図1Bに関して述べたものと同じであってもよく、よってこれらの説明はここでは繰り返さない。図1A〜1Cを組み合わせて参照するに、クライアント102は登録データ189、確証データ179、検証要求171およびチャレンジ回答159を認証サーバー140にネットワーク107を介して送信してもよい。同様に、認証サーバー140は確証要求185および検証チャレンジ167をクライアント102にネットワーク107を介して送信してもよい。
図2は、本稿に記載される少なくとも一つの実施形態に従って構成された、集合ベースのバイオメトリック認証を提供するための例示的なシステム200のブロック図である。図2のシステム200は、図1A〜図1Cを参照して上記したクライアント102の例であってもよい。
システム200は、処理装置202、ネットワーク・インターフェース204およびメモリ206を含んでいてもよい。システム200のさまざまなコンポーネントはバス220を介して互いに通信上結合されていてもよい。
処理装置202は、算術論理ユニット、マイクロプロセッサ、汎用コントローラまたは計算を実行して表示装置に電子的な表示信号を与える他の何らかのプロセッサ・アレイを含んでいてもよい。処理装置202は、複雑命令セット・コンピュータ(CISC)アーキテクチャ、縮小命令セット・コンピュータ(RISC)アーキテクチャまたは命令セットの組み合わせを実装するアーキテクチャを含むさまざまなコンピューティング・アーキテクチャを含んでいてもよい。図2は、単一の処理装置202を含んでいるが、複数の処理装置202が含まれていてもよい。他のプロセッサ、オペレーティング・システム、センサー、ディスプレイおよび物理的構成が可能である。
ネットワーク・インターフェース204はシステム200が、図1Cのネットワーク107と通信するまたは該ネットワーク107を通じて通信することを可能にするためのハードウェアを含んでいてもよい。ネットワーク・インターフェース204は、ネットワーク・インターフェース204がその機能を提供することを可能にするよう構成されたコードおよびルーチンを含んでいてもよい。
メモリ206は、処理装置202によって実行されうる命令および/またはデータを記憶してもよい。命令および/またはデータは、本稿に記載される技術を実行するためのコードを含んでいてもよい。メモリ206は、動的ランダム・アクセス・メモリ(DRAM)デバイス、静的ランダム・アクセス・メモリ(SRAM)デバイス、フラッシュ・メモリまたは他の何らかのメモリ・デバイスを含みうる。いくつかの事例では、メモリ206は、ハードディスクドライブ、フロッピー(登録商標)ディスクドライブ、CD-ROMデバイス、DVD-ROMデバイス、DVD-RAMデバイス、DVD-RWデバイス、フラッシュ・メモリ・デバイスまたはより持続的に情報を記憶するための他の何らかの大容量記憶デバイスを含む不揮発性メモリまたは同様の持続性記憶デバイスをも含む。
描かれる実施形態では、メモリ206はクライアント・モジュール110、登録データ189、確証データ179、検証要求171およびチャレンジ回答159を記憶してもよい。システム200のこれらのコンポーネントは図1A〜1Cを参照して上記で述べたので、その記述はここでは繰り返さない。
図3Aは、ユーザー106を認証するために使われる例示的データ300のブロック図である。要素305は登録バイオメトリック・テンプレートを含む。要素310は、登録ユーザーのバイオメトリック測定を含む登録バイオメトリック入力を含む。要素315は、難読化された登録特徴点データを含む。要素320は難読化された登録符号語データを含む。要素325は、ランダム登録多項式に基づいて決定された公開鍵を含む。要素302は、いくつかの実施形態に基づく、要素305〜325によって使用される記号および各記号についての例示的な記述を含む。
いくつかの実装では、図1A〜図2のクライアント・モジュール110は、ユーザー106を認証するために使われる例示的なデータ300の一つまたは複数を決定するよう構成されたコードおよびルーチンを含む。
図3Bは、ユーザー106を認証するために使われる例示的データ399のブロック図である。要素330は検証チャレンジに含まれるデータを含む。要素335は、検証ユーザーのバイオメトリック測定を含む検証バイオメトリック入力を含む。要素340は、登録バイオメトリック・テンプレートに含まれる難読化された登録特徴点データおよび検証バイオメトリック入力に含まれる検証特徴点データに基づいて決定される検証符号語を含む。検証符号語は、デコードのための候補集合に含まれてもよい。要素345は、デコードのための候補集合を修正するかどうかを決定するための重み付けプロセスを含んでいてもよい。クライアント・モジュールは、検証多項式を決定するための候補集合をデコードしてもよい。要素350は、検証多項式に基づいて決定される秘密鍵を含む。要素397は、いくつかの実施形態に基づく、要素330〜350によって使用される記号および各記号についての例示的な記述を含む。
いくつかの実装では、図1A〜図2のクライアント・モジュール110は、ユーザー106を認証するために使われる例示的なデータ399の一つまたは複数を決定するよう構成されたコードおよびルーチンを含む。
図4は、本稿に記載される少なくとも一つの実施形態に基づいて構成された、登録バイオメトリック・連符レートおよび公開鍵を決定する方法400の例示的な流れ図を示している。方法400は、全体的にまたは部分的に、図1Aおよび1Bのバイオメトリック認証システム100および/または図2のシステム200のようなシステムによって実行されてもよい。たとえば、図2の処理装置202は、図4の方法400のブロックの一つまたは複数によって表わされる機能および動作を実行するようメモリ206上に記憶されるコンピュータ命令を実行するようプログラムされていてもよい。離散的なブロックとして示されているが、さまざまなブロックは、所望される実装に依存して、追加的なブロックに分割されたり、より少数のブロックに組み合わされたり、なくされたりしてもよい。
方法400はブロック402で始まってもよい。ブロック402では、登録バイオメトリック入力が受領されてもよい。バイオメトリック入力は、登録ユーザーに関連付けられたバイオメトリック測定を含んでいてもよい。
ブロック404では、ランダム登録多項式が決定されてもよい。登録多項式は、ランダムに一様に選定されてもよい。ブロック404は、公開鍵を決定することも含んでいてもよい。公開鍵はランダム登録多項式に基づいて決定されてもよい。たとえば、ランダム登録多項式は、公開鍵を生成するためのシードとして使われてもよい。
ブロック406では、バイオメトリック入力に含まれる登録バイオメトリック測定から特徴点の集合が抽出されてもよい。特徴点の集合は、登録特徴点データによって記述されてもよい。特徴点は対として記憶されてもよい。特徴点データの対を使うことで、絶対的な参照枠ではなく、互いに対するそれらの特徴点についての識別情報が与えられる。それは回転および/または並進不変性を与えうる。
ブロック408では、一つまたは複数の登録符号語がECCからランダムに選択されうる。いくつかの実装では、ブロック408は、特徴点の集合に含まれる各特徴点についてECCから一つの登録符号語をランダムに選択することを含んでいてもよい。前記一つまたは複数の登録符号語は次いで、難読化された登録特徴点データを形成することによって特徴点データを難読化するために使われてもよい。登録符号語は、特徴点データに基づいて検証プロセスの間に有益に誤り訂正を提供してもよい。
ブロック410では、登録バイオメトリック・テンプレートが構築されてもよい。登録バイオメトリック・テンプレートは、「T=bi XOR ci, ps(ci)」に従って構築されてもよい。ここで、記号「bi」は、登録特徴点データの難読化されていないバージョンを記述する登録特徴点データを表わし、記号「ci」はECCから選択されたランダムな符号語を表わし、記号「ps」はランダム登録多項式を表わし、記号「T」は登録バイオメトリック・テンプレートを表わす。各特徴点についてその対応する登録符号語とのXOR関数を使うことは、有益なことに、特徴点データを難読化し、バイオメトリック入力のプライバシーを保護する。
ブロック410の登録バイオメトリック・テンプレートは、一つまたは複数の登録符号語によって秘密に保たれるランダム登録多項式の難読化されたバージョンをも提供する。このようにして、登録符号語のうちの十分なものが知られれば、ランダム登録多項式は決定されうる。このようにして、登録バイオメトリック・テンプレートは、ランダム登録多項式の秘密の共有分〔シェア〕をもつテンプレート点をも含む。
ブロック412では、バイオメトリック登録バイオメトリック・テンプレートおよび公開鍵が出力されうる。バイオメトリック・テンプレートおよび公開鍵は、集合ベースの認証サーバーに登録ユーザーを登録するための登録データに含まれてもよい。登録データは、登録ユーザーについてのユーザーIDをも含んでいてもよい。登録データに含まれるバイオメトリック・データは難読化され、前記一つまたは複数の登録符号語またはランダム登録多項式を知らない者が発見することはできないので、登録データは、安全でない通信を介して送信されてもよい。登録データのバイオメトリック・データは、前記一つまたは複数の登録符号語またはランダム登録多項式なしでは発見できないので、登録データは、そのデータに公衆がアクセスできるサーバーに記憶されてもよい。たとえば、登録データは、バイオメトリックに基づく公開鍵インフラストラクチャー(PKI)スキームを実装する公共サーバー上に記憶されてもよい。
いくつかの実装では、方法400の一つまたは複数のステップは、システム200の処理装置202によって実行されてもよい。処理装置202は、方法400の前記一つまたは複数のステップを実行するようプログラムされてもよい。
図5は、本稿に記載される少なくとも一つの実施形態に基づいて構成される、検証ユーザーを認証するための秘密鍵を決定する方法500の例示的な流れ図を示している。
方法500はブロック502において始まってもよい。ブロック502では、登録バイオメトリック・テンプレートが受領されてもよい。ブロック502は、検証ユーザーから登録バイオメトリック入力を受領することを含んでいてもよい。
ブロック504では、検証バイオメトリックから特徴点の集合が抽出されてもよい。ブロック506では、検証バイオメトリック入力から抽出された各特徴点について、難読化された特徴点データが決定されてもよい。難読化された特徴点データは、「yj=bj' XOR bi XOR ci」に基づいて、難読化された特徴点データをデコードすることによって決定されてもよい。項「bj' XOR bi」はこれら二つのテンプレート点の間の差に決定されうる。この差が、登録ユーザーの登録の際に使われた誤り訂正符号の誤り訂正機能の範囲内であれば、「yj」は「ci」にデコードされうる。その結果、検証ユーザーは登録ユーザーとして認証される。しかしながら、テンプレート点「bj'」と「bi」の間の差が前記誤り訂正符号の誤り訂正機能より大きければ、「yj」は正しくない符号語にデコードされ、結果として検証ユーザーは登録ユーザーとして認証されない。
ブロック508では、デコードのための候補集合を生成するために重みが決定されてもよい。記号「(yj XOR ci')」は誤差ベクトルを含みうる。各誤差ベクトルの重みが決定および解析されて、テンプレート点のどの対が登録バイオメトリック・テンプレートについての正しいマッチであるかを決定する。
ブロック510において、重みが閾値より低いとの判定がされる。これは、テンプレート点のそれらの対が登録バイオメトリック・テンプレートについての正しいマッチであることを示す。
ブロック512では、検証多項式が復元される。検証多項式は、クライアント・モジュールに含まれるウェルチ・バールカンプ・デコーダを使って復元される。ウェルチ・バールカンプ・デコーダは、ブロック506で復元される正しい検証符号語の数から誤った検証符号語の数を引いたものがランダム登録多項式の次数より大きい場合にかつその場合にのみランダム登録多項式と等しい検証多項式を返しうる。
ブロック514では、秘密鍵が決定または出力されうる。秘密鍵は、ブロック512で決定される検証多項式に基づいて決定されてもよい。
いくつかの実装では、方法500の一つまたは複数のステップは、システム200の処理装置202によって実行されてもよい。処理装置202は、方法500の前記一つまたは複数のステップを実行するようプログラムされてもよい
本稿に記載される実施形態は、さまざまなコンピュータ・ハードウェアまたはソフトウェア・モジュールを含む特殊目的または汎用のコンピュータの使用を含みうる。これについて下記でより詳細に述べる。
本稿に記載される実施形態は、コンピュータ実行可能命令またはデータ構造を担持するまたは記憶しているコンピュータ可読媒体を使って実装されてもよい。そのようなコンピュータ可読媒体は、汎用または特殊目的コンピュータによってアクセスされうるいかなる利用可能な媒体であってもよい。限定ではなく例として、そのようなコンピュータ可読媒体は、ランダム・アクセス・メモリ(RAM)、読み出し専用メモリ(ROM)、電気的に消去可能なプログラム可能な読み出し専用メモリ(EEPROM)、コンパクトディスク読み出し専用メモリ(CD-ROM)または他の光ディスク記憶、磁気ディスク記憶または他の磁気記憶デバイス、フラッシュ・メモリ・デバイス(たとえば半導体メモリ・デバイス)またはコンピュータ実行可能命令またはデータ構造の形の所望されるプログラム・コードを担持または記憶するために使用されることができ、汎用または特殊目的コンピュータによってアクセスされうる他の任意の記憶媒体を含む非一時的なコンピュータ可読記憶媒体を含みうる。上記の組み合わせもコンピュータ可読媒体の範囲内に含まれてもよい。
コンピュータ実行可能命令はたとえば、汎用コンピュータ、特殊目的コンピュータまたは特殊目的処理装置(たとえば一つまたは複数のプロセッサ)にある種の機能または機能群を実行させる命令およびデータを含む。手段が構造的な特徴および/または方法論的な工程に固有の言辞で記述されていたとしても、付属の請求項において定義される主題は必ずしも上記で記述した特定の特徴または工程に限定されないことは理解されるものとする。さらに、上記で記述した特定の特徴および工程は、請求項を実装する例示的な形として開示されている。
本稿での用法では、用語「モジュール」または「コンポーネント」は、該モジュールまたはコンポーネントの動作を実行するよう構成された個別的なハードウェア実装および/またはコンピューティング・システムの汎用ハードウェア(たとえばコンピュータ可読媒体、処理装置など)に記憶されうるおよび/または実行されうるソフトウェア・オブジェクトおよび/またはソフトウェア・ルーチンを指しうる。いくつかの実施形態では、本稿に記載される種々のコンポーネント、モジュール、エンジンおよびサービスは、コンピューティング・システム上で(たとえば別個のスレッドとして)実行されるオブジェクトまたはプロセスとして実装されてもよい。本稿に記載されるシステムおよび方法のいくつかは一般に(汎用ハードウェアに記憶されるおよび/または実行される)ソフトウェアで実装されるものとして記述されるが、個別的なハードウェア実装またはソフトウェアおよび個別的ハードウェア実装の組み合わせも可能であり、考えられている。本稿において、「コンピューティング・エンティティ」は、本稿で先に定義した任意のコンピューティング・システムまたはコンピューティング・システム上で走る任意のモジュールまたはモジュレットの組み合わせであってよい。
本稿に記載されるすべての例および条件付きの言辞は、本発明および発明者によって当技術分野の発展のために寄与される概念の理解において読者を助ける教育目的を意図されており、そのような特定的に挙げられる例および条件に限定することなく解釈されるものとする。本発明の実施形態について詳細に述べてきたが、本発明の精神および範囲から外れることなく、これにさまざまな変化、代替および変更をなすことができることは理解しておくべきである。
以上の実施例を含む実施形態に関し、さらに以下の付記を開示する。
(付記1)
登録バイオメトリック測定から登録特徴点の集合を抽出する段階と;
誤り訂正符号から一つまたは複数の登録符号語をランダムに選択する段階と;
特徴点の前記集合の、前記一つまたは複数の登録符号語を使って難読化された難読化バージョンを記述する難読化登録特徴点データを決定する段階であって、特徴点の前記集合は前記一つまたは複数の登録符号語なしでは前記難読化登録特徴点データからは決定できない、段階と;
前記一つまたは複数の登録符号語の、ランダム登録多項式を使って難読化された難読化バージョンを記述する難読化登録符号語データを決定する段階であって、前記一つまたは複数の符号語は、前記ランダム登録多項式なしでは前記難読化登録符号語データからは決定できない、段階と;
前記難読化登録特徴点データおよび前記難読化登録符号語データを含む登録バイオメトリック・テンプレートを決定する段階と;
前記一つまたは複数の登録符号語および前記ランダム登録多項式を秘密に保つ登録データであって、前記登録バイオメトリック・テンプレートを含む登録データを、前記決定を行なうようプログラムされたプロセッサ・ベースのコンピューティング装置を使って決定する段階とを含む、
方法。
(付記2)
前記ランダム登録多項式に基づく公開鍵を生成する段階をさらに含み、前記登録データは前記公開鍵を含み、前記公開鍵は前記ランダム登録多項式を難読化する、付記1記載の方法。
(付記3)
前記登録データは、前記登録データをサードパーティーによってアクセスできるようにするサーバーに送信される、付記1記載の方法。
(付記4)
前記サーバーが、バイオメトリックに基づく公開鍵インフラストラクチャー(PKI)スキームを実装する、付記3記載の方法。
(付記5)
前記登録データが安全でない通信を介して送信される、付記1記載の方法。
(付記6)
前記登録データが登録ユーザーに関連付けられており、前記登録データは前記登録ユーザーに関連付けられたクライアントによって決定される、付記1記載の方法。
(付記7)
付記2記載の方法であって、さらに:
前記登録データおよび乱数値を含む検証チャレンジを受領するのに応答して検証バイオメトリック測定から検証特徴点の集合を抽出する段階であって、前記登録データは登録ユーザーに関連付けられており、前記検証バイオメトリック測定は前記登録ユーザーとして認証されようと試行する検証ユーザーに関連付けられている、段階と;
前記登録データを解析して、前記登録データの前記登録バイオメトリック・テンプレートに含まれる前記難読化登録特徴点データを決定する段階と;
検証特徴点の前記集合および前記難読化登録特徴点データに基づいて一つまたは複数の検証符号語を決定する段階とを含む、
方法。
(付記8)
付記7記載の方法であって、さらに:
前記登録データを解析して、前記登録データに含まれる前記公開鍵を決定する段階と;
前記一つまたは複数の検証符号語に基づいて検証多項式を決定する段階とを含む、
方法。
(付記9)
付記8記載の方法であって、さらに:
前記検証多項式に基づいて秘密鍵を決定する段階と;
前記秘密鍵を用いて前記乱数値に署名することによってチャレンジ回答を決定する段階とを含み、
前記秘密鍵が前記公開鍵に対応して鍵対をなすかどうかに基づいて前記検証ユーザーは前記登録ユーザーとして認証される、
方法。
(付記10)
コンピュータ命令を有する非一時的なコンピュータ可読媒体であって、前記コンピュータ命令は:
ランダム登録多項式を決定する段階と;
登録バイオメトリック測定から登録特徴点の集合を抽出する段階と;
線形誤り訂正符号から一つまたは複数の登録符号語をランダムに選択する段階と;
特徴点の前記集合の、前記一つまたは複数の登録符号語を使って難読化された難読化バージョンを記述する難読化登録特徴点データを決定する段階であって、特徴点の前記集合は前記一つまたは複数の登録符号語なしでは前記難読化登録特徴点データからは決定できない、段階と;
前記一つまたは複数の登録符号語の、前記ランダム登録多項式を使って難読化された難読化バージョンを記述する難読化登録符号語データを決定する段階であって、前記一つまたは複数の符号語は、前記ランダム登録多項式なしでは前記難読化登録符号語データからは決定できない、段階と;
前記難読化登録特徴点データおよび前記難読化登録符号語データを含む登録バイオメトリック・テンプレートを決定する段階と;
前記ランダム登録多項式に基づいて公開鍵を決定する段階であって、前記公開鍵は前記ランダム登録多項式を難読化する、段階と;
前記一つまたは複数の登録符号語および前記ランダム登録多項式を秘密に保つ登録データであって、前記登録バイオメトリック・テンプレートおよび前記公開鍵を含む登録データを、決定する段階とを含む
動作を実行するまたは該動作の実行を制御するよう処理装置によって実行可能である、
非一時的なコンピュータ可読媒体。
(付記11)
前記登録データは、前記登録データをサードパーティーによってアクセスできるようにするサーバーに送信される、付記10記載の非一時的なコンピュータ可読媒体。
(付記12)
前記登録データが暗号化されない通信を介して送信される、付記10記載の非一時的なコンピュータ可読媒体。
(付記13)
前記登録データが登録ユーザーに関連付けられており、前記登録データは前記登録ユーザーに関連付けられたクライアントによって決定される、付記10記載の非一時的なコンピュータ可読媒体。
(付記14)
付記10記載の非一時的なコンピュータ可読媒体であって、前記動作がさらに:
前記登録データおよび乱数値を含む検証チャレンジを受領するのに応答して検証バイオメトリック測定から検証特徴点の集合を抽出する段階であって、前記登録データは登録ユーザーに関連付けられており、前記検証バイオメトリック測定は前記登録ユーザーとして認証されようと試行する検証ユーザーに関連付けられている、段階と;
前記登録データを解析して、前記登録データの前記登録バイオメトリック・テンプレートに含まれる前記難読化登録特徴点データを決定する段階と;
検証特徴点の前記集合および前記難読化登録特徴点データに基づいて一つまたは複数の検証符号語を決定する段階と;
前記登録データを解析して、前記登録データに含まれる前記公開鍵を決定する段階と;
前記一つまたは複数の検証符号語に基づいて検証多項式を決定する段階とを含む、
非一時的なコンピュータ可読媒体。
(付記15)
付記14記載の非一時的なコンピュータ可読媒体であって、さらに:
前記検証多項式に基づいて秘密鍵を決定する段階と;
前記秘密鍵を用いて前記乱数値に署名することによってチャレンジ回答を決定する段階とを含み、
前記秘密鍵が前記公開鍵に対応して鍵対をなすかどうかに基づいて前記検証ユーザーは前記登録ユーザーとして認証される、
非一時的なコンピュータ可読媒体。
(付記16)
前記動作がネットワークのクライアント側で実行される、付記15記載の非一時的なコンピュータ可読媒体。
(付記17)
前記動作が前記登録ユーザーに関連付けられたクライアントによって実行され、前記登録ユーザーの前記検証ユーザーとしての認証は前記登録ユーザーに関連付けられた前記クライアントによって実行される、付記15記載の非一時的なコンピュータ可読媒体。
(付記18)
登録データおよび乱数値を含む検証チャレンジを受領するのに応答して検証バイオメトリック測定から検証特徴点の集合を抽出する段階であって、前記登録データは登録ユーザーに関連付けられており、前記検証バイオメトリック測定は前記登録ユーザーとして認証されようと試行する検証ユーザーに関連付けられている、段階と;
前記登録データを解析して、前記登録データの登録バイオメトリック・テンプレートに含まれる難読化登録特徴点データを決定する段階であって、前記難読化登録特徴点データは、前記登録ユーザーに関連付けられた登録バイオメトリック・テンプレートから抽出された特徴点の集合の難読化されたバージョンを記述する、段階と;
検証特徴点の前記集合および前記難読化登録特徴点データに基づいて一つまたは複数の検証符号語を決定する段階と;
前記登録データを解析して、前記登録データに含まれる公開鍵を決定する段階と;
前記一つまたは複数の検証符号語に基づいて検証多項式を決定する段階とを含む、
方法。
(付記19)
付記18記載の方法であって、さらに:
前記検証多項式に基づいて秘密鍵を決定する段階と;
前記秘密鍵を用いて前記乱数値に署名することによってチャレンジ回答を決定する段階とを含み、
前記秘密鍵が前記公開鍵に対応して鍵対をなすかどうかに基づいて前記検証ユーザーは前記登録ユーザーとして認証される、
方法。
(付記20)
付記18記載の方法であって、前記登録データは登録バイオメトリック・テンプレートを含み、前記登録バイオメトリック・テンプレートは、一つまたは複数の登録符号語の難読化されたバージョンを記述する難読化登録符号語データを含み、前記難読化登録符号語データは、前記一つまたは複数の登録符号語の難読化されていないバージョンなしでは特徴点の前記集合が決定できないよう、前記難読化登録特徴点データに含まれる特徴点の前記集合を難読化するために使われる、方法。
100 バイオメトリック認証システム
102 クライアント
106 ユーザー
107 ネットワーク
108 認証モジュール
110 クライアント・モジュール
140 認証サーバー
159 チャレンジ回答
163 回答入力
167 検証チャレンジ:Tおよびr
171 検証要求:ユーザーID
175 要求入力
179 確証データ
181 確証入力:署名の確証および正当な登録の確証
185 確証要求:Tの署名
189 登録データ
193 登録入力:登録バイオメトリック入力
198 センサー
202 処理装置
204 ネットワーク・インターフェース
206 メモリ

Claims (20)

  1. 登録バイオメトリック測定から登録特徴点の集合を抽出する段階と;
    誤り訂正符号から一つまたは複数の登録符号語をランダムに選択する段階と;
    特徴点の前記集合の、前記一つまたは複数の登録符号語を使って難読化された難読化バージョンを記述する難読化登録特徴点データを決定する段階であって、特徴点の前記集合は前記一つまたは複数の登録符号語なしでは前記難読化登録特徴点データからは決定できない、段階と;
    前記一つまたは複数の登録符号語の、ランダム登録多項式を使って難読化された難読化バージョンを記述する難読化登録符号語データを決定する段階であって、前記一つまたは複数の符号語は、前記ランダム登録多項式なしでは前記難読化登録符号語データからは決定できない、段階と;
    前記難読化登録特徴点データおよび前記難読化登録符号語データを含む登録バイオメトリック・テンプレートを決定する段階と;
    前記一つまたは複数の登録符号語および前記ランダム登録多項式を秘密に保つ登録データであって、前記登録バイオメトリック・テンプレートを含む登録データを、前記決定を行なうようプログラムされたプロセッサ・ベースのコンピューティング装置を使って決定する段階とを含む、
    方法。
  2. 前記ランダム登録多項式に基づく公開鍵を生成する段階をさらに含み、前記登録データは前記公開鍵を含み、前記公開鍵は前記ランダム登録多項式を難読化する、請求項1記載の方法。
  3. 前記登録データは、前記登録データをサードパーティーによってアクセスできるようにするサーバーに送信される、請求項1記載の方法。
  4. 前記サーバーが、バイオメトリックに基づく公開鍵インフラストラクチャー(PKI)スキームを実装する、請求項3記載の方法。
  5. 前記登録データが安全でない通信を介して送信される、請求項1記載の方法。
  6. 前記登録データが登録ユーザーに関連付けられており、前記登録データは前記登録ユーザーに関連付けられたクライアントによって決定される、請求項1記載の方法。
  7. 請求項2記載の方法であって、さらに:
    前記登録データおよび乱数値を含む検証チャレンジを受領するのに応答して検証バイオメトリック測定から検証特徴点の集合を抽出する段階であって、前記登録データは登録ユーザーに関連付けられており、前記検証バイオメトリック測定は前記登録ユーザーとして認証されようと試行する検証ユーザーに関連付けられている、段階と;
    前記登録データを解析して、前記登録データの前記登録バイオメトリック・テンプレートに含まれる前記難読化登録特徴点データを決定する段階と;
    検証特徴点の前記集合および前記難読化登録特徴点データに基づいて一つまたは複数の検証符号語を決定する段階とを含む、
    方法。
  8. 請求項7記載の方法であって、さらに:
    前記登録データを解析して、前記登録データに含まれる前記公開鍵を決定する段階と;
    前記一つまたは複数の検証符号語に基づいて検証多項式を決定する段階とを含む、
    方法。
  9. 請求項8記載の方法であって、さらに:
    前記検証多項式に基づいて秘密鍵を決定する段階と;
    前記秘密鍵を用いて前記乱数値に署名することによってチャレンジ回答を決定する段階とを含み、
    前記秘密鍵が前記公開鍵に対応して鍵対をなすかどうかに基づいて前記検証ユーザーは前記登録ユーザーとして認証される、
    方法。
  10. コンピュータ命令を有する非一時的なコンピュータ可読媒体であって、前記コンピュータ命令は:
    ランダム登録多項式を決定する段階と;
    登録バイオメトリック測定から登録特徴点の集合を抽出する段階と;
    線形誤り訂正符号から一つまたは複数の登録符号語をランダムに選択する段階と;
    特徴点の前記集合の、前記一つまたは複数の登録符号語を使って難読化された難読化バージョンを記述する難読化登録特徴点データを決定する段階であって、特徴点の前記集合は前記一つまたは複数の登録符号語なしでは前記難読化登録特徴点データからは決定できない、段階と;
    前記一つまたは複数の登録符号語の、前記ランダム登録多項式を使って難読化された難読化バージョンを記述する難読化登録符号語データを決定する段階であって、前記一つまたは複数の符号語は、前記ランダム登録多項式なしでは前記難読化登録符号語データからは決定できない、段階と;
    前記難読化登録特徴点データおよび前記難読化登録符号語データを含む登録バイオメトリック・テンプレートを決定する段階と;
    前記ランダム登録多項式に基づいて公開鍵を決定する段階であって、前記公開鍵は前記ランダム登録多項式を難読化する、段階と;
    前記一つまたは複数の登録符号語および前記ランダム登録多項式を秘密に保つ登録データであって、前記登録バイオメトリック・テンプレートおよび前記公開鍵を含む登録データを、決定する段階とを含む
    動作を実行するまたは該動作の実行を制御するよう処理装置によって実行可能である、
    非一時的なコンピュータ可読媒体。
  11. 前記登録データは、前記登録データをサードパーティーによってアクセスできるようにするサーバーに送信される、請求項10記載の非一時的なコンピュータ可読媒体。
  12. 前記登録データが暗号化されない通信を介して送信される、請求項10記載の非一時的なコンピュータ可読媒体。
  13. 前記登録データが登録ユーザーに関連付けられており、前記登録データは前記登録ユーザーに関連付けられたクライアントによって決定される、請求項10記載の非一時的なコンピュータ可読媒体。
  14. 請求項10記載の非一時的なコンピュータ可読媒体であって、前記動作がさらに:
    前記登録データおよび乱数値を含む検証チャレンジを受領するのに応答して検証バイオメトリック測定から検証特徴点の集合を抽出する段階であって、前記登録データは登録ユーザーに関連付けられており、前記検証バイオメトリック測定は前記登録ユーザーとして認証されようと試行する検証ユーザーに関連付けられている、段階と;
    前記登録データを解析して、前記登録データの前記登録バイオメトリック・テンプレートに含まれる前記難読化登録特徴点データを決定する段階と;
    検証特徴点の前記集合および前記難読化登録特徴点データに基づいて一つまたは複数の検証符号語を決定する段階と;
    前記登録データを解析して、前記登録データに含まれる前記公開鍵を決定する段階と;
    前記一つまたは複数の検証符号語に基づいて検証多項式を決定する段階とを含む、
    非一時的なコンピュータ可読媒体。
  15. 請求項14記載の非一時的なコンピュータ可読媒体であって、さらに:
    前記検証多項式に基づいて秘密鍵を決定する段階と;
    前記秘密鍵を用いて前記乱数値に署名することによってチャレンジ回答を決定する段階とを含み、
    前記秘密鍵が前記公開鍵に対応して鍵対をなすかどうかに基づいて前記検証ユーザーは前記登録ユーザーとして認証される、
    非一時的なコンピュータ可読媒体。
  16. 前記動作がネットワークのクライアント側で実行される、請求項15記載の非一時的なコンピュータ可読媒体。
  17. 前記動作が前記登録ユーザーに関連付けられたクライアントによって実行され、前記登録ユーザーの前記検証ユーザーとしての認証は前記登録ユーザーに関連付けられた前記クライアントによって実行される、請求項15記載の非一時的なコンピュータ可読媒体。
  18. 登録データおよび乱数値を含む検証チャレンジを受領するのに応答して検証バイオメトリック測定から検証特徴点の集合を抽出する段階であって、前記登録データは登録ユーザーに関連付けられており、前記検証バイオメトリック測定は前記登録ユーザーとして認証されようと試行する検証ユーザーに関連付けられている、段階と;
    前記登録データを解析して、前記登録データの登録バイオメトリック・テンプレートに含まれる難読化登録特徴点データを決定する段階であって、前記難読化登録特徴点データは、前記登録ユーザーに関連付けられた登録バイオメトリック・テンプレートから抽出された特徴点の集合の難読化されたバージョンを記述する、段階と;
    検証特徴点の前記集合および前記難読化登録特徴点データに基づいて一つまたは複数の検証符号語を決定する段階と;
    前記登録データを解析して、前記登録データに含まれる公開鍵を決定する段階と;
    前記一つまたは複数の検証符号語に基づいて検証多項式を決定する段階とを含む、
    方法。
  19. 請求項18記載の方法であって、さらに:
    前記検証多項式に基づいて秘密鍵を決定する段階と;
    前記秘密鍵を用いて前記乱数値に署名することによってチャレンジ回答を決定する段階とを含み、
    前記秘密鍵が前記公開鍵に対応して鍵対をなすかどうかに基づいて前記検証ユーザーは前記登録ユーザーとして認証される、
    方法。
  20. 請求項18記載の方法であって、前記登録データは登録バイオメトリック・テンプレートを含み、前記登録バイオメトリック・テンプレートは、一つまたは複数の登録符号語の難読化されたバージョンを記述する難読化登録符号語データを含み、前記難読化登録符号語データは、前記一つまたは複数の登録符号語の難読化されていないバージョンなしでは特徴点の前記集合が決定できないよう、前記難読化登録特徴点データに含まれる特徴点の前記集合を難読化するために使われる、方法。
JP2015207567A 2014-12-04 2015-10-21 プライバシーを保護する集合ベースのバイオメトリック認証 Active JP6555073B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US14/560,435 2014-12-04
US14/560,435 US9967101B2 (en) 2014-12-04 2014-12-04 Privacy preserving set-based biometric authentication

Publications (2)

Publication Number Publication Date
JP2016111687A true JP2016111687A (ja) 2016-06-20
JP6555073B2 JP6555073B2 (ja) 2019-08-07

Family

ID=53835315

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2015207567A Active JP6555073B2 (ja) 2014-12-04 2015-10-21 プライバシーを保護する集合ベースのバイオメトリック認証

Country Status (4)

Country Link
US (1) US9967101B2 (ja)
EP (1) EP3043290B1 (ja)
JP (1) JP6555073B2 (ja)
CN (1) CN105681269B (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2017229070A (ja) * 2016-06-24 2017-12-28 富士通株式会社 ユーザ認証のための暗号プリミティブ
JP2022500902A (ja) * 2018-09-05 2022-01-04 デ−アイデンティフィケーション リミテッド 非特定化されたデータに基づいてアイデンティティ認証を実行するためのシステムおよび方法

Families Citing this family (29)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR3054905B1 (fr) * 2016-08-04 2019-10-18 Safran Identity & Security Procede de generation de cle et procede de controle d'acces
CN106341227B (zh) * 2016-10-27 2019-08-09 北京瑞卓喜投科技发展有限公司 基于服务器解密密文的重置保护口令的方法、装置及系统
US10255416B2 (en) 2017-01-25 2019-04-09 Ca, Inc. Secure biometric authentication with client-side feature extraction
EP3586257B1 (en) * 2017-02-22 2022-10-26 Fingerprint Cards Anacatum IP AB Biometrics-based remote login
EP3602365B1 (en) * 2017-03-24 2024-02-14 Visa International Service Association Authentication system using secure multi-party computation
DE102017106855A1 (de) * 2017-03-30 2018-10-04 Bundesrepublik Deutschland, Vertreten Durch Das Bundesministerium Des Innern, Vertreten Durch Das Bundesamt Für Sicherheit In Der Informationstechnik Biometrie-gestützte Objektbindung
US11095639B2 (en) * 2017-05-11 2021-08-17 Synergex Group Methods, systems, and media for authenticating users using biometric signatures
EP3622429B1 (en) * 2017-07-27 2022-10-12 Fingerprint Cards Anacatum IP AB Methods and devices of enabling authentication of a user of a client device over a secure communication channel based on biometric data
CN109923545B (zh) * 2017-09-13 2022-03-08 指纹卡安娜卡敦知识产权有限公司 允许基于生物识别数据通过安全通信信道进行对客户端设备的用户的认证的方法和设备
US10305690B1 (en) * 2017-11-29 2019-05-28 Fingerprint Cards Ab Two-step central matching
US11789699B2 (en) 2018-03-07 2023-10-17 Private Identity Llc Systems and methods for private authentication with helper networks
US10938852B1 (en) 2020-08-14 2021-03-02 Private Identity Llc Systems and methods for private authentication with helper networks
US11210375B2 (en) 2018-03-07 2021-12-28 Private Identity Llc Systems and methods for biometric processing with liveness
US11170084B2 (en) 2018-06-28 2021-11-09 Private Identity Llc Biometric authentication
US11394552B2 (en) 2018-03-07 2022-07-19 Private Identity Llc Systems and methods for privacy-enabled biometric processing
US11265168B2 (en) 2018-03-07 2022-03-01 Private Identity Llc Systems and methods for privacy-enabled biometric processing
US11502841B2 (en) 2018-03-07 2022-11-15 Private Identity Llc Systems and methods for privacy-enabled biometric processing
US11138333B2 (en) * 2018-03-07 2021-10-05 Private Identity Llc Systems and methods for privacy-enabled biometric processing
US10721070B2 (en) 2018-03-07 2020-07-21 Private Identity Llc Systems and methods for privacy-enabled biometric processing
US11392802B2 (en) 2018-03-07 2022-07-19 Private Identity Llc Systems and methods for privacy-enabled biometric processing
US11489866B2 (en) 2018-03-07 2022-11-01 Private Identity Llc Systems and methods for private authentication with helper networks
CN108322480B (zh) * 2018-03-19 2020-11-20 王锐 智能家居中信息认证方法
GB201804818D0 (en) * 2018-03-26 2018-05-09 Data Signals Ltd Method and apparatus for data obfuscation
US20190327092A1 (en) 2018-04-23 2019-10-24 Avago Technologies General Ip (Singapore) Pte. Ltd. Methods and systems for secure biometric authentication
US10951607B2 (en) * 2018-05-14 2021-03-16 GM Global Technology Operations LLC Authentication methods and systems
US11042620B2 (en) * 2019-03-05 2021-06-22 King Abdulaziz University Securing electronic documents with fingerprint/biometric data
US12039079B2 (en) 2022-04-08 2024-07-16 Bank Of America Corporation System and method to secure data pipelines using asymmetric encryption
CN114826778B (zh) * 2022-06-21 2022-09-27 杭州安恒信息技术股份有限公司 一种鉴权方法、装置、设备及介质
US20240048382A1 (en) 2022-08-03 2024-02-08 1080 Network, Llc Systems, methods, and computing platforms for executing credential-less network-based communication exchanges

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010177998A (ja) * 2009-01-29 2010-08-12 Nippon Telegr & Teleph Corp <Ntt> ユーザ認証方法、ユーザ認証システム、ユーザ端末、ユーザ認証装置、ユーザ端末用プログラム及びユーザ認証装置用プログラム
JP2011253378A (ja) * 2010-06-02 2011-12-15 Waseda Univ 認証装置及び認証方法
US20120303966A1 (en) * 2009-11-12 2012-11-29 Morpho Cards Gmbh Method of assigning a secret to a security token, a method of operating a security token, storage medium and security token

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7003670B2 (en) * 2001-06-08 2006-02-21 Musicrypt, Inc. Biometric rights management system
US20050206501A1 (en) * 2004-03-16 2005-09-22 Michael Farhat Labor management system and method using a biometric sensing device
CN1965279A (zh) * 2004-06-09 2007-05-16 皇家飞利浦电子股份有限公司 生物统计模板的秘密保护体系
US8316236B2 (en) * 2007-08-31 2012-11-20 Cisco Technology, Inc. Determining security states using binary output sequences
US8452969B2 (en) * 2009-09-16 2013-05-28 GM Global Technology Operations LLC Flexible broadcast authentication in resource-constrained systems: providing a tradeoff between communication and computational overheads
EP2624160B1 (en) * 2010-09-30 2018-12-26 Panasonic Corporation Biometric authentication system, communication terminal device, biometric authentication device, and biometric authentication method
CN102394896A (zh) * 2011-12-13 2012-03-28 甘肃农业大学 基于令牌的隐私保护型指纹认证方法和系统
US9208302B2 (en) * 2012-09-28 2015-12-08 Intel Corporation Multi-factor authentication using biometric data

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010177998A (ja) * 2009-01-29 2010-08-12 Nippon Telegr & Teleph Corp <Ntt> ユーザ認証方法、ユーザ認証システム、ユーザ端末、ユーザ認証装置、ユーザ端末用プログラム及びユーザ認証装置用プログラム
US20120303966A1 (en) * 2009-11-12 2012-11-29 Morpho Cards Gmbh Method of assigning a secret to a security token, a method of operating a security token, storage medium and security token
JP2011253378A (ja) * 2010-06-02 2011-12-15 Waseda Univ 認証装置及び認証方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
大木 哲史,他: "電界通信を用いた本人認証へのバイオメトリック暗号技術の適用", 電子情報通信学会技術研究報告, vol. 109, no. 39, JPN6019011541, 14 May 2009 (2009-05-14), pages 79 - 84, ISSN: 0004011242 *

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2017229070A (ja) * 2016-06-24 2017-12-28 富士通株式会社 ユーザ認証のための暗号プリミティブ
JP2022500902A (ja) * 2018-09-05 2022-01-04 デ−アイデンティフィケーション リミテッド 非特定化されたデータに基づいてアイデンティティ認証を実行するためのシステムおよび方法
JP7434291B2 (ja) 2018-09-05 2024-02-20 デ-アイデンティフィケーション リミテッド 非特定化されたデータに基づいてアイデンティティ認証を実行するためのシステムおよび方法

Also Published As

Publication number Publication date
US9967101B2 (en) 2018-05-08
JP6555073B2 (ja) 2019-08-07
EP3043290B1 (en) 2020-05-27
EP3043290A1 (en) 2016-07-13
US20160164682A1 (en) 2016-06-09
CN105681269B (zh) 2019-05-14
CN105681269A (zh) 2016-06-15

Similar Documents

Publication Publication Date Title
JP6555073B2 (ja) プライバシーを保護する集合ベースのバイオメトリック認証
US11811936B2 (en) Public/private key biometric authentication system
US9438590B2 (en) Privacy preserving biometric authentication based on error correcting codes
US11343099B2 (en) System and method for securing personal information via biometric public key
JP6852592B2 (ja) ユーザ認証のための暗号プリミティブ
JP6702874B2 (ja) クライアント側のスコアベース認証を与える方法及び装置
US11140155B2 (en) Methods, computer readable media, and systems for authentication using a text file and a one-time password
US11115203B2 (en) System and method for securing personal information via biometric public key
US10985924B2 (en) Verification of client identities based on non-distributed data
SE540649C2 (en) Method and system for secure password storage
KR102658914B1 (ko) 사용자 인증 방법 및 장치
Kreshan THREE-FACTOR AUTHENTICATION USING SMART PHONE

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20180706

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20190228

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20190409

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20190514

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20190624

R150 Certificate of patent or registration of utility model

Ref document number: 6555073

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150