JP6821516B2 - 計算機システム、秘密情報の検証方法、及び計算機 - Google Patents

計算機システム、秘密情報の検証方法、及び計算機 Download PDF

Info

Publication number
JP6821516B2
JP6821516B2 JP2017114026A JP2017114026A JP6821516B2 JP 6821516 B2 JP6821516 B2 JP 6821516B2 JP 2017114026 A JP2017114026 A JP 2017114026A JP 2017114026 A JP2017114026 A JP 2017114026A JP 6821516 B2 JP6821516 B2 JP 6821516B2
Authority
JP
Japan
Prior art keywords
information
feature data
template
arithmetic unit
verification
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
JP2017114026A
Other languages
English (en)
Other versions
JP2018207433A (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.)
Hitachi Ltd
Original Assignee
Hitachi 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 Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP2017114026A priority Critical patent/JP6821516B2/ja
Priority to US16/494,652 priority patent/US11227037B2/en
Priority to PCT/JP2018/002213 priority patent/WO2018225291A1/ja
Priority to CN201880014741.1A priority patent/CN110383758B/zh
Priority to EP18813135.3A priority patent/EP3637674A4/en
Publication of JP2018207433A publication Critical patent/JP2018207433A/ja
Application granted granted Critical
Publication of JP6821516B2 publication Critical patent/JP6821516B2/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
    • 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
    • H04L9/0866Generation of secret information including derivation or calculation of cryptographic keys or passwords involving user or device identifiers, e.g. serial number, physical or biometrical information, DNA, hand-signature or measurable physical characteristics
    • 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
    • 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/3252Cryptographic 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 DSA or related signature schemes, e.g. elliptic based signatures, ElGamal or Schnorr schemes

Description

本発明は、ユーザの生体情報に基づいて、認証、暗号、及び署名などの処理を行うシステムに関する。
指紋、静脈、顔、及び虹彩などの生体情報に基づいて個人の認証などを行う生体認証技術が広く利用されている。従来の生体認証技術では、以下のような処理が行われる。まず、ユーザ登録時には、端末は、ユーザの生体情報から抽出した特徴データをテンプレートとしてシステムに登録する。ユーザ認証時には、端末は、テンプレートと、再度ユーザの生体情報から抽出した特徴データとを比較して、類似度が十分大きい場合、すなわち、二つの特徴データの距離が十分近い場合、認証の成功と判定し、類似度が小さい場合には認証の失敗と判定する。
生体情報は、一般には取り替えることのできない情報である。そのため、生体情報の漏えいは大きな問題となる。この問題に対し、生体情報を秘匿したまま認証する、テンプレート保護型の生体認証技術が研究開発されている。その中で、生体情報から鍵データを生成し、暗号学的な認証処理、暗号化処理、復号化処理、及び署名生成処理などの処理を行う、バイオメトリック暗号と呼ばれる技術が注目されている。
バイオメトリック暗号では、端末は、生体情報の登録時に、生体情報の特徴データXを変換し、秘密鍵Kを埋め込むことによって、保護テンプレートTを生成する。その後、端末は、新たに取得した生体情報の特徴データX’及び保護テンプレートTを用いて秘密鍵Kを復元する。秘密鍵の復元が成功した場合、端末は、当該秘密鍵Kを用いて暗号学的な認証処理、暗号化処理、復号化処理、及び電子署名生成処理を実行できる。
安全性の要件から、バイオメトリック暗号において、保護テンプレートTを用いた特徴データXの復元又は推定は十分困難でなくてはならない。一方、特徴データX’が特徴データXに十分類似している場合、秘密鍵の復元処理が成功するようにしなければならない。
バイオメトリック暗号の具体的な実現方法として、例えば、非特許文献1に記載されている方法が提案されている。非特許文献1では、生体情報から抽出された特徴データは、式(1)に示すようなn次元実数ベクトルXであって、各要素とも±δまでの誤差が許される。すなわち、値の誤差が±δの範囲であれば本人として受理される。また、秘密鍵は式(2)に示すような整数ベクトルとして表現できるものとする。秘密鍵の各要素s_iはそれぞれqビット整数とする。ここで、添字iは1からnまでの値であり、qは任意の整数である。したがって、要素s_iは0以上、かつ、2−1以下の整数である。
Figure 0006821516
Figure 0006821516
生体情報の登録時のテンプレートTは式(3)に示すようなベクトルとして表現でき、要素t_iは式(4)に基づいて算出される。ここで、添字iは1からnまでの値である。
Figure 0006821516
Figure 0006821516
新たに取得した生体情報の特徴データX’は式(5)に示すようなベクトルとして表現できる。
Figure 0006821516
秘密鍵の検証時には、端末は、保存されたテンプレートT及び特徴データX’を用いて、式(7)に示す演算を実行することによって式(6)で表現される秘密鍵S’の各要素の値を算出する。これによって、秘密鍵S’が復元される。ここで、添字iは1からnまでの値である。また、記号「[ ]」は、括弧内の値の小数部分を切り捨てて、整数部分を取り出す演算を表す。
Figure 0006821516
Figure 0006821516
ここで、式(8)を満たす場合、復元された秘密鍵S’は秘密鍵Sと一致するため、端末は、秘密鍵が正しく復元されたものと判定し、秘密鍵の検証を行ったユーザを、システムに登録されたユーザ本人として受理する。
Figure 0006821516
非特許文献1で用いられるテンプレートTを用いて特徴データX及び秘密鍵Sを一意に求めることはできないため、非特許文献1の方法を用いることによって、一定の効果を有するテンプレートの保護を実現できる。
Gang Zheng, et.al., "Cryptographic Key Generation from Biometric Data Using Lattice Mapping", In 18th International Conference on Pattern Recognition (ICPR'06), 2006.
しかし、非特許文献1の方法では、安全性及び効率性に課題がある。
安全性に関して、テンプレートTを用いて特徴データX及び秘密鍵Sの候補を絞り込むことができるという問題がある。具体的には、秘密鍵Sの要素s_iがqビットの整数であるという制約から、t_iを知っている攻撃者は、式(4)に基づいて特徴データXの要素x_iの候補を式(9)に示す範囲に絞り込むことができる。
Figure 0006821516
さらに、特徴データの要素x_iが取り得る値は式(10)に示す範囲であり、攻撃者が当該範囲を知っている場合、要素x_iの候補は式(9)及び式(10)の共通範囲に絞り込むことができる。
Figure 0006821516
例えば、要素x_i=x_max、かつ、要素s_i=0である場合、式(4)より要素t_iは式(11)に示すような値となる。そのため、テンプレートTを知っている攻撃者は、式(9)から要素x_iが式(12)を満たすことが分かる。
Figure 0006821516
Figure 0006821516
したがって、式(10)及び式(12)から、要素x_iの範囲は式(13)に示すようになるため、攻撃者は、要素x_i=x_maxとなることが分かる。また、攻撃者は、式(4)から要素s_i=0も分かる。
Figure 0006821516
前述の仮定以外の場合においても、要素x_iの範囲が確率的に絞り込まれる可能性がある。したがって、十分な安全性を確保するためには、|x_min|及び|x_max|に対して2が十分大きくなるように、qの値を大きくし、また、秘密鍵Sの要素s_iを、0以上かつ2−1以下の範囲で一様ランダムに生成する必要である。
しかし、qを大きくした場合、テンプレートTのサイズも増大し、効率性の課題が生じる。具体的には、特徴データXの要素x_iの小数部分の表現桁数が2進数表示でr桁とした場合、テンプレートTの要素t_iは、整数部分がqビットとなり、小数部分がrビットとなる。したがって、テンプレートTのデータサイズは、n(q+r)ビットとなる。
q=256、r=52(doubleの仮数部桁数)、n=1000とした場合、テンプレートTのデータサイズは38.5KBとなる。一本の指の指紋から一つのテンプレートTを生成する場合、一ユーザに対して10個のテンプレートTが生成される。1億人分のテンプレートTがシステムに登録された場合、データサイズは合計で38.5TBとなる。認証用のデータと、登録されたN個の全てのテンプレートとの照合を行う認証方法である1:n認証を実現しようとした場合、38.5TBのデータにアクセスする必要があるため、認証処理において、当該データを格納する記憶領域へのアクセス時間が支配的となる。
本発明は、従来のバイオメトリック暗号技術の課題である安全性及び効率性を向上することを目的とする。具体的には、特徴データの推定が困難であり、かつ、サイズが小さいテンプレートを生成することを目的とする。
本願において開示される発明の代表的な一例を示せば以下の通りである。すなわち、少なくとも一つの計算機を含む計算機システムであって、前記少なくとも一つの計算機は、演算装置及び前記演算装置に接続される記憶装置を有し、前記演算装置は、ユーザから取得された第1生体情報に基づいて第1特徴データを生成し、前記第1特徴データに基づいて、前記第1生体情報に発生する誤差を示す誤差特徴データ及び前記第1生体情報に発生する誤差以外の部分を示す定常特徴データを生成し、前記第1生体情報の誤差特徴データに基づいてテンプレートを生成し、前記ユーザの識別情報及び前記テンプレートを対応付けて前記記憶装置に格納し、前記第1生体情報の定常特徴データに基づいて、暗号学的処理に用いる第1秘密情報を生成し、前記第1秘密情報に基づいて第1検証情報を生成し、前記ユーザの識別情報及び前記第1検証情報を対応付けて前記記憶装置に格納し、前記暗号学的処理の実行要求を受け付けた場合、ユーザから取得された第2生体情報に基づいて第2特徴データを生成し、前記テンプレート及び前記第2特徴データに基づいて、第2秘密情報を生成し、前記第2秘密情報に基づいて、第2検証情報を生成し、前記第1検証情報及び前記第2検証情報を比較することによって、前記第2秘密情報の検証を行い、前記第2秘密情報の検証の結果に基づいて、前記暗号学的処理を実行することを特徴とする。
本発明によれば、テンプレートのサイズを大幅に削減し、かつ、特徴データの推定が困難なバイオメトリック暗号技術を実現できる。上記した以外の課題、構成及び効果は、以下の実施例の説明により明らかにされる。
実施例1の生体認証システムの構成例を示す図である。 実施例1の生体認証システムを構成する計算機のハードウェア構成の一例を示す図である。 実施例1の登録端末が実行する登録処理を説明するフローチャートである。 実施例1の認証端末が実行する検証処理を説明するフローチャートである。 実施例1のテンプレートTの生成処理及び秘密情報skの生成処理を説明するフローチャートである。 実施例1の秘密情報sk’の復元処理を説明するフローチャートである。
以下、本発明に係る実施例を添付図面を用いて説明する。各図において共通の構成については同一の参照符号が付されている。
実施例1の生体認証システムでは、まず、生体認証システムに含まれる計算機が、ユーザの生体情報からテンプレート及び復元された秘密情報(秘密鍵)を検証するための検証情報を生成し、データベースに登録する。計算機は、暗号学的処理の実行に伴う秘密情報の検証を行う場合、登録されたテンプレート及び新たに取得したユーザの生体情報を用いて秘密情報を復元する。また、計算機は、復元された秘密情報及び検証情報に基づいて、秘密情報の検証を行い、検証結果に基づいてユーザ認証処理、暗号化処理、復号化処理、及び電子署名の生成処理などの暗号学的処理を実行する。
図1は、実施例1の生体認証システムの構成例を示す図である。図2は、実施例1の生体認証システムを構成する計算機のハードウェア構成の一例を示す図である。
生体認証システムは、登録端末100、認証端末110、DBサーバ120、及びネットワーク130から構成される。登録端末100、認証端末110、及びDBサーバ120は、ネットワーク130を介して互いに接続される。ネットワーク130は、LAN(Local Area Network)及びWAN(Wide Area Network)等が考えられる。なお、本実施例はネットワーク130の種別に限定されない。また、ネットワーク130の接続方式は有線及び無線のいずれでもよい。
登録端末100は、ユーザから生体情報を取得し、生体情報を用いてテンプレート及び検証情報を生成し、また、テンプレート及び検証情報をDBサーバ120に登録する。
ここで、登録端末100のハードウェア構成について説明する。図2に示すように登録端末100は、CPU200、メモリ201、記憶装置202、入力装置203、出力装置204、及び通信装置205を有する。なお、後述する認証端末110及びDBサーバ120も同一のハードウェア構成である。
CPU200は、登録端末100の演算装置であり、メモリ201に格納されるプログラムを実行する。CPU200がプログラムにしたがって処理を実行することによって、特定の機能を実現するモジュールとして動作する。以下の説明では、モジュールを主語に処理を説明する場合、CPU200が当該モジュールを実現するプログラムを実行していることを示す。
メモリ201は、登録端末100の主記憶装置であり、CPU200が実行するプログラム及びプログラムが使用するデータを格納する。また、メモリ201は、プログラムが一時的に使用する一時領域を含む。
記憶装置202は、登録端末100の副記憶装置であり、データを永続的に格納する。記憶装置202は、例えば、HDD(Hard Disk Drive)及びSSD(Solid State Drive)等が考えられる。
入力装置203は、登録端末100に各種データを入力するための装置であり、キーボード、マウス、タッチパネル、及びセンサなどを含む。
出力装置204は、各種情報を出力するための装置であり、タッチパネル及びディスプレイなどを含む。
通信装置205は、ネットワークを介して多の装置と通信するためのインタフェースである。
ここで、登録端末100の機能構成について説明する。登録端末100のメモリ201は、データ取得モジュール101、特徴データ抽出モジュール102、テンプレート生成モジュール103、秘密情報生成モジュール104、及び検証情報生成モジュール105を実現するプログラムを格納する。
データ取得モジュール101は、ユーザから指紋及び静脈などの登録用の生体情報を取得し、取得した登録用の生体情報を特徴データ抽出モジュール102に出力する。
特徴データ抽出モジュール102は、登録用の生体情報から登録用の特徴データを抽出し、抽出した登録用の特徴データをテンプレート生成モジュール103及び秘密情報生成モジュール104に出力する。
テンプレート生成モジュール103は、登録用の特徴データに基づいてテンプレートを生成する。テンプレート生成モジュール103は、テンプレートをDBサーバ120に送信することによって、当該テンプレートをテンプレートDB122に登録する。
秘密情報生成モジュール104は、登録用の特徴データに基づいて秘密情報を生成する。秘密情報生成モジュール104は、秘密情報を検証情報生成モジュール105に出力する。
検証情報生成モジュール105は、秘密情報に基づいて認証端末110が復元した秘密情報を検証するための検証情報を生成する。検証情報生成モジュール105は、検証情報をDBサーバ120に送信することによって、当該検証情報を検証情報DB123に登録する。
認証端末110は、ユーザから新たに生体情報を取得し、新たに取得した生体情報とテンプレートに基づいて秘密情報を復元し、復元された秘密情報の検証を行う。また、認証端末110は、復元された秘密情報の検証結果に基づいて、ユーザ認証処理、暗号化処理、復号化処理、及び電子署名の生成処理などの暗号学的処理を実行する。
ここで、認証端末110の機能構成について説明する。認証端末110のメモリ201は、データ取得モジュール111、特徴データ抽出モジュール112、秘密情報復元モジュール113、秘密情報検証モジュール114、及びデータ処理モジュール115を実現するプログラムを格納する。
データ取得モジュール111は、ユーザから秘密情報を生成するための生体情報を取得し、取得した生体情報を特徴データ抽出モジュール112に出力する。
特徴データ抽出モジュール112は、生体情報から特徴データを抽出し、抽出した特徴データを秘密情報復元モジュール113に出力する。
秘密情報復元モジュール113は、特徴データ及びテンプレートに基づいて秘密情報を復元し、復元された秘密情報を秘密情報検証モジュール114に出力する。
秘密情報検証モジュール114は、検証情報に基づいて復元された秘密情報の正しさを検証する。すなわち、登録端末100によって生成された秘密情報と、復元された秘密情報とが一致するか否かが判定される。
データ処理モジュール115は、秘密情報を用いて、認証処理、暗号化処理、復号化処理、及び電子署名生成処理などの暗号学的処理を実行する。
DBサーバ120は、生体認証システムにおいて使用される各種データを管理する。また、DBサーバ120は、データの登録処理及びデータの検索処理などを実行する。
ここで、DBサーバ120の機能構成について説明する。DBサーバ120のメモリ201は、データベース管理モジュール121を実現するプログラムを格納し、また、テンプレートDB122及び検証情報DB123を格納する。なお、テンプレートDB122及び検証情報DB123は、DBサーバ120の記憶装置202に格納されてもよい。
データベース管理モジュール121は、データの登録、更新、及び検索を行う。テンプレートDB122は、テンプレートを格納するデータベースである。テンプレートDB122には、ユーザの識別情報及びテンプレートを対応付けたデータが一つ以上格納される。例えば、ユーザの識別情報を格納するフィールド及びテンプレートを格納するフィールドから構成されるエントリを一つ以上含むテーブル形式のデータベースが考えられる。
検証情報DB123は、検証情報を格納するデータベースである。検証情報DB123には、ユーザの識別情報及び検証情報を対応付けたデータが一つ以上格納される。例えば、ユーザの識別情報を格納するフィールド及び検証情報を格納するフィールドから構成されるエントリを一つ以上含むテーブル形式のデータベースが考えられる。
本実施例では、一つのDBサーバ120がテンプレートDB122及び検証情報DB123を保持するが、複数のDBサーバ120から構成される分散データベースを用いて管理してもよい。この場合、各DBサーバ120にテンプレート及び検証情報が分散して格納される。テンプレート及び検証情報を分散して管理することによって、情報の漏えいリスクが減少するため、安全性を高めることができる。
なお、テンプレートDB122及び検証情報DB123の少なくともいずれかを認証端末110が保持してもよい。また、ICカード、USBメモリ、データをQRコード(登録商標)に変換した印刷物などの可搬媒体、又は、スマートフォンなどの個人端末に、テンプレートDB122及び検証情報DB123の少なくともいずれかを格納してもよい。
本実施例では、登録端末100、認証端末110、及びDBサーバ120を物理的に独立した計算機として記載しているが、本発明はこれに限定されない。一つの計算機に複数の機能を統合してもよい。例えば、認証端末110及びDBサーバ120を一つの計算機を用いて実現してもよい。
なお、登録端末100、認証端末110、及びDBサーバ120の各々が有する各モジュールについては、二つ以上のモジュールを一つのモジュールにまとめてもよいし、一つのモジュールを機能毎に複数のモジュールに分けてもよい。
次に、実施例1の登録処理の詳細を図3を用いて説明する。図3は、実施例1の登録端末100が実行する登録処理を説明するフローチャートである。
登録端末100は、ユーザ又はオペレータの操作を受け付けた場合、以下で説明する登録処理を開始する。まず、登録端末100のデータ取得モジュール101は、入力装置203を用いてユーザから登録用の生体情報を取得する(ステップS301)。なお、データ取得モジュール101は、登録処理の開始時又は登録用の生体情報の取得時に、ユーザのID及び氏名など、ユーザの識別情報も取得する。
次に、登録端末100の特徴データ抽出モジュール102は、登録用の生体情報から登録用の特徴データを抽出する(ステップS302)。例えば、画像及び特徴ベクトルが特徴データとして抽出される。
次に、登録端末100のテンプレート生成モジュール103は、登録用の特徴データに基づいてテンプレートTを生成する(ステップS303)。テンプレートTの生成処理の詳細については後述する。
次に、登録端末100の秘密情報生成モジュール104は、登録用の特徴データに基づいて秘密情報skを生成する(ステップS304)。秘密情報skの生成処理の詳細については後述する。
次に、登録端末100の検証情報生成モジュール105は、秘密情報skに基づいて検証情報vkを生成する(ステップS305)。ここで、検証情報vkの生成方法の一例について説明する。秘密情報skに基づいて検証情報vkを生成する方法として以下の三つの方法が考えられる。
(生成方法1)検証情報生成モジュール105は、式(14)に示すように、任意の一方向性関数Hash()を用いて検証情報vkを生成する。一方向性関数Hash()は、例えば、SHA256及びSHA3等の暗号学的ハッシュ関数が考えられる。
Figure 0006821516
(生成方法2)検証情報生成モジュール105は、式(15)に示すように、巡回群G=<g>及び秘密情報skの集合から整数集合への写像φを用いて検証情報vkを生成する。ここでgは、Gの生成元である。
Figure 0006821516
生成された組(sk,vk)は、ElGamal暗号/署名、DSA、Schnorr署名、又はそれらの楕円曲線版アルゴリズムなど、多くの公開鍵暗号/電子署名アルゴリズムにおける秘密鍵及び公開鍵の組として扱うことができる。
(生成方法3)検証情報生成モジュール105は、式(16)に示すように、検証情報を生成するための秘密鍵又はパラメータであるpを変数とする関数Enc()を用いて検証情報vkを生成する。なお、pは、ユーザ単位又は登録用の生体情報単位に設定してもよいし、認証端末110単位又は生体認証システム単位に設定してもよい。
Figure 0006821516
関数Enc()は、AES又はRSAなどにおける暗号化関数、及び鍵付きハッシュ関数などである。以上がステップS305の処理の説明である。
次に、登録端末100のテンプレート生成モジュール103及び検証情報生成モジュール105は、それぞれ、テンプレートT及び検証情報vkをDBサーバ120に登録する(ステップS306)。その後、登録端末100は、登録処理を終了する。
具体的には、テンプレート生成モジュール103は、ユーザの識別情報及びテンプレートTを含む登録要求をDBサーバ120に送信し、検証情報生成モジュール105は、ユーザの識別情報及び検証情報vkを含む登録要求をDBサーバ120に送信する。
DBサーバ120は、テンプレート生成モジュール103から登録要求を受信した場合、ユーザの識別情報及びテンプレートTを対応付けたデータをテンプレートDB122に登録する。また、DBサーバ120は、検証情報生成モジュール105から登録要求を受信した場合、ユーザの識別情報及び検証情報vkを対応付けたデータを検証情報DB123に登録する。
次に、実施例1における検証処理の詳細を図4を用いて説明する。図4は、実施例1の認証端末110が実行する検証処理を説明するフローチャートである。
認証端末110は、ユーザ又はオペレータの操作を受け付けた場合、以下で説明する認証処理を開始する。まず、認証端末110のデータ取得モジュール111は、入力装置203を用いてユーザから検証用の生体情報を取得する(ステップS401)。なお、データ取得モジュール111は、検証処理の開始時又は検証用の生体情報の取得時に、ユーザのID及び氏名など、ユーザの識別情報も取得する。
次に、認証端末110の特徴データ抽出モジュール112は、検証用の生体情報から検証用の特徴データを抽出する(ステップS402)。
次に、認証端末110の秘密情報復元モジュール113は、DBサーバ120のテンプレートDB122からテンプレートTを取得し、テンプレートT及び検証用の特徴データに基づいて秘密情報sk’を復元する(ステップS403)。秘密情報sk’の復元処理(生成処理)の詳細については後述する。
なお、秘密情報復元モジュール113は、テンプレートTを取得する場合、ユーザの識別情報を含むテンプレートの取得要求をDBサーバ120に送信する。DBサーバ120は、テンプレートDB122を参照して、ユーザの識別情報が対応付けられたテンプレートを検索し、検索結果を認証端末110に送信する。
次に、認証端末110の秘密情報検証モジュール114は、DBサーバ120の検証情報DB123から検証情報vkを取得し、検証情報vkに基づいて秘密情報sk’の正しさを検証する(ステップS404)。すなわち、sk’=skが成り立つか否かが判定される。
具体的には、秘密情報検証モジュール114は、秘密情報sk’から検証情報vk’を生成し、検証情報vk’とDBサーバ120から取得した検証情報vkとが一致するか否かを判定する。なお、検証情報vk’の生成方法は、検証情報vkの生成方法に応じて以下のような方法が考えられる。
(生成方法1)を採用した場合、検証情報vk’は式(17)で与えられ、(生成方法2)を採用した場合、検証情報vk’は式(18)で与えられ、(生成方法3)を採用した場合、検証情報vk’は式(19)で与えられる。なお、式(19)においてpは検証情報vkの生成時に用いた値と同一の値である。以上がステップS404の処理の説明である。
Figure 0006821516
Figure 0006821516
Figure 0006821516
次に、認証端末110は、秘密情報sk’の検証結果に基づいて、暗号学的処理を実行する(ステップS405)。その後、認証端末110は、認証処理を終了する。
次に、テンプレートTの生成処理及び秘密情報skの生成処理の詳細を図5を用いて説明する。図5は、実施例1のテンプレートTの生成処理及び秘密情報skの生成処理を説明するフローチャートである。以下の説明ではベクトルの各要素の値は2進法又は10進法で表現されるものとする。
テンプレート生成モジュール103は、登録用の特徴データに対して変換処理及び正規化処理の少なくともいずれかを実行することによって、式(20)に示す登録用の正規化特徴ベクトルXを生成する(ステップS501)。登録用の正規化特徴ベクトルXの各要素X_iは実数である。なお、特徴データが既に正規化されている場合には、正規化処理は実行されなくてもよい。
Figure 0006821516
なお、後述する検証用の正規化特徴ベクトルX’は式(21)のように表す。検証用の正規化特徴ベクトルX’の各要素X’_iは実数である。
Figure 0006821516
また、二つの特徴ベクトルX、X’の距離を式(22)のように定義する。本実施例では、認証端末110は、式(23)を満たす場合、二つの特徴ベクトルX、X’が同一ユーザから取得した生体情報の特徴ベクトルであると判定する。
Figure 0006821516
Figure 0006821516
なお、ステップS501では、テンプレート生成モジュール103は、同一のユーザから取得した生体情報については高い確率で式(23)が成立し、また、異なるユーザから取得した生体情報については高い確率で式(23)が確立しないように、登録用の特徴データに対して適切な変換処理又はスケーリングを実行する。
次に、テンプレート生成モジュール103は、登録用の正規化特徴ベクトルXに基づいて、各要素X_iの整数部分を要素とする整数ベクトルXI、及び、各要素X_iの小数部分を要素とする小数ベクトルXDを生成する(ステップS502)。整数ベクトルXI及び小数ベクトルXDはそれぞれ式(24)及び式(25)のように表される。
Figure 0006821516
Figure 0006821516
具体的には、テンプレート生成モジュール103は、要素X_iの小数点以下を切り捨てることによって、整数ベクトルXIを生成する。また、テンプレート生成モジュール103は、式(26)の演算を実行することによって小数ベクトルXDを生成する。
Figure 0006821516
次に、テンプレート生成モジュール103は、小数ベクトルXDの各要素XD_iを、小数点以下k桁に丸める丸め処理を実行し、式(27)に示すような丸め小数ベクトルXDrを生成する(ステップS503)。
Figure 0006821516
具体的には、テンプレート生成モジュール103は、小数点第k+1位以下を丸める。これによって、小数点第k位までの値を要素とする丸め小数ベクトルXDrが生成される。例えば、2進数で表現された要素XDr_iがk桁、すなわち、kビットである場合、丸め小数ベクトルXDrのサイズはnkビットである。
なお、丸め処理の方法としては、切り捨て、切り上げ、最近接丸め、及び偶数丸めなどが考えられる。
このように要素の桁数を小さくすることによって、テンプレートTのサイズをさらに小さくできる。ただし、丸めるサイズが小さい場合、丸め処理による誤差によって秘密情報の復元処理が失敗する確率が高くなる。当該確率と丸めるサイズを指定するkとの関係については後述する。以下の説明では、丸め処理による誤差によって秘密情報の復元処理が失敗する確率を、エラー確率とも記載する。
次に、テンプレート生成モジュール103は、ソルトを生成する(ステップS504)。
具体的には、テンプレート生成モジュール103は、ランダムに生成された所定の長さ(例えば、sビット)の文字列若しくはビット列、又は、任意の数値範囲からランダムに生成された所定の長さの数値をソルトとして生成する。また、テンプレート生成モジュール103は、ユーザID及びカウンタなど、ユーザ毎又は登録用の生体情報毎に異なる値を用いてソルトを生成してもよい。ソルトの長さは、総当たり攻撃が困難な大きさ、例えば、128以上であればよい。
次に、テンプレート生成モジュール103は、丸め小数ベクトルXDr及びソルトに基づいてテンプレートTを生成する(ステップS505)。具体的には、テンプレート生成モジュール103は、式(28)に示すような丸め小数ベクトルXDr及びソルトの組を、テンプレートとして生成する。
Figure 0006821516
なお、必ずしも小数ベクトルXDに対して丸め処理を実行しなくてもよい。また、必ずしもソルトを用いてテンプレートTを生成しなくてもよい。すなわち、小数ベクトルXD又は丸め小数ベクトルXDrのみからテンプレートTを生成してもよい。
以上がテンプレートの生成処理の説明である。なお、テンプレート生成モジュール103は、テンプレートTをテンプレートDB122に登録するとともに、整数ベクトルXI及びソルトを秘密情報生成モジュール104に出力する。
秘密情報生成モジュール104は、整数ベクトルXI及びソルトに基づいて秘密情報skを生成する(ステップS511)。
例えば、秘密情報検証モジュール114は、式(29)に示すように、SHA256又はSHA3などの一方向性関数Hash()に整数ベクトルXI及びソルトを連結したデータを入力することによって、秘密情報skを生成する。式(29)の記号「||」はデータの連結を表す。
Figure 0006821516
また、秘密情報検証モジュール114は、式(30)に示すように、AESなどの暗号化関数又は鍵付きハッシュ関数などの関数Enc()に、整数ベクトルXI及びソルトを連結したデータ、並びに、任意のパラメータp’を入力することによって、秘密情報skを生成する。
Figure 0006821516
以上が秘密情報の生成処理の説明である。
ここで、本実施例のテンプレートTの特徴について説明する。
前述したように丸め小数ベクトルXDrのデータサイズはnkビットである。ソルトの長さをsビットとした場合、テンプレートTのサイズは、式(28)から(nk+s)ビットとなる。
ここで、n=1000、k=8、s=128とした場合、テンプレートTのサイズは8128ビット(1016バイト)であり、約1kBである。非特許文献1に記載の技術に基づいて生成されたテンプレートのサイズは38.5kBであることから、本実施例のテンプレートは、従来のテンプレートのサイズを約40分の1に圧縮できる。したがって、従来技術と比較して、テンプレートのサイズを大幅に小さくできるため、生体認証システムの効率性を高めることができる。
なお、小数ベクトルXDを用いてテンプレートTを生成する場合であっても、特徴ベクトルXの整数部分が削除されていることから、従来のテンプレートのサイズより十分小さい。
また、テンプレートTに含まれるソルトは生体情報に依存しない値である。そのため、攻撃者がテンプレートTから生体情報を推定するためには、テンプレートTに含まれる丸め小数ベクトルXDrから登録用の正規化特徴ベクトルXを推定する以外に方法がない。
丸め小数ベクトルXDrは、登録用の正規化特徴ベクトルXの小数部分を丸めることによって生成されたデータである。より具体的には、丸め小数ベクトルXDrは、特徴ベクトルXの整数部分及び小数点第k+1位以下が削除されたデータである。生体情報は、同じユーザから取得した場合であっても誤差が生ずることから、正規化特徴ベクトルXについても各要素について±0.5程度の範囲内で確率的な誤差が生じる。したがって、小数部分にはユーザを識別する情報がほとんど含まれていないことから、丸め小数ベクトルXDrから正規化特徴ベクトルXを推定又は復元するのは十分に困難である。
以上のことから、本実施例のテンプレートの生成方法を適応することによって、テンプレートのサイズを削減し、かつ、十分な安全性を確保できる。
なお、本実施例では特徴ベクトルを用いてテンプレートTを生成しているが、特徴ベクトル以外のデータを用いても同様の特徴を有するテンプレートTを生成できる。すなわち、登録端末100は、特徴データ又は特徴データを用いて生成されたデータに基づいて、生体情報に発生する誤差部分のデータである誤差データ及び誤差データ以外のデータである定常データを生成する。登録端末100は、誤差データを用いてテンプレートTを生成し、また、定常データを用いて秘密情報skを生成する。
次に、秘密情報sk’の復元処理の詳細を図6を用いて説明する。図6は、実施例1の秘密情報sk’の復元処理を説明するフローチャートである。
秘密情報復元モジュール113は、検証用の特徴データに対して変換処理及び正規化処理の少なくともいずれかを実行することによって、式(21)に示す検証用の正規化特徴ベクトルX’を生成する(ステップS601)。なお、特徴データが既に正規化されている場合には、正規化処理は実行されなくてもよい。
次に、秘密情報復元モジュール113は、取得したテンプレートTに含まれる丸め小数ベクトルXDr及び検証用の正規化特徴ベクトルX’に基づいて、式(31)に示す差分特徴ベクトルXCを算出する(ステップS602)。
Figure 0006821516
具体的には、秘密情報復元モジュール113は、式(32)に示す演算を実行する。
Figure 0006821516
次に、秘密情報復元モジュール113は、差分特徴ベクトルXCに基づいて、式(33)に示す復元整数ベクトルXI’を生成する(ステップS603)。
Figure 0006821516
具体的には、秘密情報復元モジュール113は、式(34)に示す演算を実行する。記号「[ ]」は、括弧内の値の小数部分を切り捨てて、整数部分を取り出す演算を表す。
Figure 0006821516
次に、秘密情報復元モジュール113は、復元整数ベクトルXI’及び取得したテンプレートTに含まれるソルトに基づいて復元秘密情報sk’を生成する(ステップS604)。秘密情報の生成方法は、ステップS511と同様の処理である。
ここで、秘密情報sk及び復元秘密情報sk’の検証について説明する。
ε_iを式(35)で定義する。ここで、ε_iは、丸め小数ベクトルXDrの丸め誤差を表す値であり、小数点第k+1位以下の値である。したがって、ε_iの絶対値は2−k未満となる。
Figure 0006821516
式(26)、式(32)、及び式(35)より、式(34)は式(36)のように変形できる。
Figure 0006821516
式(22)で定義した距離が式(37)を満たし、かつ、ε_i=0である場合、式(38)が必ず成立する。また、式(38)が成立する場合、秘密情報sk、sk’は、整数ベクトルXI、XI’及びソルトから生成され、かつ、同じ生成方法であることから、式(39)が成立する。また、式(39)が成り立つ場合、検証情報vk、vk’は一致する。
Figure 0006821516
Figure 0006821516
Figure 0006821516
式(37)が成立する場合、0ではないε_iが十分小さいと高い確率で式(38)が成立する。逆に、式(38)が成立しないケースは式(40)を満たす場合に限られる。したがって、エラー確率は、おおよそ2−kに比例するため、丸め処理におけるパラメータkの増加に伴って指数関数的に減少する。したがって、kが8から16の間の値の場合、検証処理の精度は十分高い。
Figure 0006821516
ただし、テンプレートTのサイズは、パラメータkの大きさに比例するため、kの値は検証処理の精度及び効率性のバランスを考慮して決定する必要がある。
以上で説明したように、本実施例によれば、テンプレートTのサイズを大幅に削減でき、また、テンプレートTから元の特徴データXを推定するための攻撃に対する耐性を高めることができる。したがって、高い効率性及び安全性が保証されたバイオメトリック暗号技術を実現できる。
特許請求の範囲に記載した以外の発明の観点の代表的なものとして、次のものがあげられる。
(1)データの秘匿に用いる秘密情報を用いた暗号学的処理を実行する計算機であって、
前記計算機は、
演算装置、前記演算装置に接続される記憶装置、及び前記演算装置に接続されるインタフェースを有し、
前記インタフェースを介して、入力された第1生体情報から生成された第1特徴データに発生する誤差を示す誤差特徴データに基づいて生成されたテンプレート、及び前記特徴データの誤差特徴データ以外の部分を示す定常特徴データに基づいて生成された第1検証情報を管理するデータベースと接続し、
前記演算装置は、
前記暗号学的処理の実行要求を受け付けた場合、ユーザから取得された第2生体情報に基づいて第2特徴データを生成し、
前記テンプレート及び前記第2特徴データに基づいて、第2秘密情報を生成し、
前記第2秘密情報に基づいて、第2検証情報を生成し、
前記第1検証情報及び前記第2検証情報を比較することによって前記第2秘密情報を検証し、
前記第2秘密情報の検証の結果に基づいて、前記暗号学的処理を実行することを特徴とする計算機。
(2)(1)に記載の計算機であって、
前記第1特徴データ及び前記第2特徴データは、実数を要素とする特徴ベクトルであり、
前記誤差特徴データは、前記特徴ベクトルの各要素の小数部分を要素とするベクトルであり、
前記定常特徴データは、前記特徴ベクトルの各要素の整数部分を要素とするベクトルであることを特徴とする計算機。
(3)(2)に記載の計算機であって、
前記演算装置は、
前記第2特徴データ及び前記テンプレートに含まれる前記第1生体情報の誤差特徴データに基づいて、前記第2生体情報の定常特徴データを生成し、
ハッシュ関数、鍵付きハッシュ関数、及び暗号化関数の少なくともいずれかに、前記第2生体情報の定常特徴データを入力することによって前記第2秘密情報を生成することを特徴とする計算機。
なお、本発明は上記した実施例に限定されるものではなく、様々な変形例が含まれる。また、例えば、上記した実施例は本発明を分かりやすく説明するために構成を詳細に説明したものであり、必ずしも説明した全ての構成を備えるものに限定されるものではない。また、各実施例の構成の一部について、他の構成に追加、削除、置換することが可能である。
また、上記の各構成、機能、処理部、処理手段等は、それらの一部又は全部を、例えば集積回路で設計する等によりハードウェアで実現してもよい。また、本発明は、実施例の機能を実現するソフトウェアのプログラムコードによっても実現できる。この場合、プログラムコードを記録した記憶媒体をコンピュータに提供し、そのコンピュータが備えるプロセッサが記憶媒体に格納されたプログラムコードを読み出す。この場合、記憶媒体から読み出されたプログラムコード自体が前述した実施例の機能を実現することになり、そのプログラムコード自体、及びそれを記憶した記憶媒体は本発明を構成することになる。このようなプログラムコードを供給するための記憶媒体としては、例えば、フレキシブルディスク、CD−ROM、DVD−ROM、ハードディスク、SSD(Solid State Drive)、光ディスク、光磁気ディスク、CD−R、磁気テープ、不揮発性のメモリカード、ROMなどが用いられる。
また、本実施例に記載の機能を実現するプログラムコードは、例えば、アセンブラ、C/C++、perl、Shell、PHP、Java(登録商標)等の広範囲のプログラム又はスクリプト言語で実装できる。
さらに、実施例の機能を実現するソフトウェアのプログラムコードを、ネットワークを介して配信することによって、それをコンピュータのハードディスクやメモリ等の記憶手段又はCD−RW、CD−R等の記憶媒体に格納し、コンピュータが備えるプロセッサが当該記憶手段や当該記憶媒体に格納されたプログラムコードを読み出して実行するようにしてもよい。
上述の実施例において、制御線や情報線は、説明上必要と考えられるものを示しており、製品上必ずしも全ての制御線や情報線を示しているとは限らない。全ての構成が相互に接続されていてもよい。
100 登録端末
101、111 データ取得モジュール
102、112 特徴データ抽出モジュール
103 テンプレート生成モジュール
104 秘密情報生成モジュール
105 検証情報生成モジュール
110 認証端末
113 秘密情報復元モジュール
114 秘密情報検証モジュール
115 データ処理モジュール
120 DBサーバ
121 データベース管理モジュール
122 テンプレートDB
123 検証情報DB
130 ネットワーク
200 CPU
201 メモリ
202 記憶装置
203 入力装置
204 出力装置
205 通信装置

Claims (10)

  1. 少なくとも一つの計算機を含む計算機システムであって、
    前記少なくとも一つの計算機は、演算装置及び前記演算装置に接続される記憶装置を有し、
    前記演算装置は、
    ユーザから取得された第1生体情報に基づいて第1特徴データを生成し、
    前記第1特徴データに基づいて、前記第1生体情報に発生する誤差を示す誤差特徴データ及び前記第1生体情報に発生する誤差以外の部分を示す定常特徴データを生成し、
    前記第1生体情報の誤差特徴データに基づいてテンプレートを生成し、前記ユーザの識別情報及び前記テンプレートを対応付けて前記記憶装置に格納し、
    前記第1生体情報の定常特徴データに基づいて、暗号学的処理に用いる第1秘密情報を生成し、前記第1秘密情報に基づいて第1検証情報を生成し、前記ユーザの識別情報及び前記第1検証情報を対応付けて前記記憶装置に格納し、
    前記暗号学的処理の実行要求を受け付けた場合、ユーザから取得された第2生体情報に基づいて第2特徴データを生成し、
    前記テンプレート及び前記第2特徴データに基づいて、第2秘密情報を生成し、
    前記第2秘密情報に基づいて、第2検証情報を生成し、
    前記第1検証情報及び前記第2検証情報を比較することによって、前記第2秘密情報の検証を行い、
    前記第2秘密情報の検証の結果に基づいて、前記暗号学的処理を実行することを特徴とする計算機システム。
  2. 請求項1に記載の計算機システムであって、
    前記第1特徴データ及び前記第2特徴データは、実数を要素とする特徴ベクトルであり、
    前記誤差特徴データは、前記特徴ベクトルの各要素の小数部分を要素とするベクトルであり、
    前記定常特徴データは、前記特徴ベクトルの各要素の整数部分を要素とするベクトルであることを特徴とする計算機システム。
  3. 請求項2に記載の計算機システムであって、
    前記演算装置は、
    前記誤差特徴データの各要素の値を丸める丸め処理を実行し、
    前記丸め処理が実行された前記第1生体情報の誤差特徴データを前記テンプレートとして生成することを特徴とする計算機システム。
  4. 請求項2に記載の計算機システムであって、
    前記演算装置は、
    任意の長さのデータ列であるソルトを生成し、
    前記丸め処理が実行された第1生体情報の誤差特徴データ及び前記ソルトの組を前記テンプレートとして生成することを特徴とする計算機システム。
  5. 請求項2に記載の計算機システムであって、
    前記演算装置は、
    ハッシュ関数、鍵付きハッシュ関数、及び暗号化関数の少なくともいずれかに、前記第1生体情報の定常特徴データを入力することによって前記第1秘密情報を生成し、
    前記第2特徴データ及び前記テンプレートに含まれる前記第1生体情報の誤差特徴データに基づいて、前記第2生体情報の定常特徴データを生成し、
    前記ハッシュ関数、前記鍵付きハッシュ関数、及び前記暗号化関数の少なくともいずれかに、前記第2生体情報の定常特徴データを入力することによって前記第2秘密情報を生成することを特徴とする計算機システム。
  6. 秘密情報を用いて暗号学的処理を実行する計算機システムにおける秘密情報の検証方法であって、
    前記計算機システムは、演算装置及び前記演算装置に接続される記憶装置を有する少なくとも一つの計算機を含み、
    前記秘密情報の検証方法は、
    前記演算装置が、ユーザから取得された第1生体情報に基づいて第1特徴データを生成する第1のステップと、
    前記演算装置が、前記第1特徴データに基づいて、前記第1生体情報に発生する誤差を示す誤差特徴データ及び前記第1生体情報に発生する誤差以外の部分を示す定常特徴データを生成する第2のステップと、
    前記演算装置が、前記第1生体情報の誤差特徴データに基づいてテンプレートを生成し、前記ユーザの識別情報及び前記テンプレートを対応付けて前記記憶装置に格納する第3のステップと、
    前記演算装置が、前記第1生体情報の定常特徴データに基づいて、前記暗号学的処理に用いる第1秘密情報を生成し、前記第1秘密情報に基づいて第1検証情報を生成し、前記ユーザの識別情報及び前記第1検証情報を対応付けて前記記憶装置に格納する第4のステップと、
    前記演算装置が、前記暗号学的処理の実行要求を受け付けた場合、ユーザから取得された第2生体情報に基づいて第2特徴データを生成する第5のステップと、
    前記演算装置が、前記テンプレート及び前記第2特徴データに基づいて、第2秘密情報を生成する第6のステップと、
    前記演算装置が、前記第2秘密情報に基づいて、第2検証情報を生成する第7のステップと、
    前記演算装置が、前記第1検証情報及び前記第2検証情報を比較することによって、前記第2秘密情報の検証を行う第8のステップと、
    前記演算装置が、前記第2秘密情報の検証の結果に基づいて、前記暗号学的処理を実行する第9のステップとことを特徴とする秘密情報の検証方法。
  7. 請求項6に記載の秘密情報の検証方法であって、
    前記第1特徴データ及び前記第2特徴データは、実数を要素とする特徴ベクトルであり、
    前記誤差特徴データは、前記特徴ベクトルの各要素の小数部分を要素とするベクトルであり、
    前記定常特徴データは、前記特徴ベクトルの各要素の整数部分を要素とするベクトルであることを特徴とする秘密情報の検証方法。
  8. 請求項7に記載の秘密情報の検証方法であって、
    前記第3のステップは、
    前記演算装置が、前記誤差特徴データの各要素の値を丸める丸め処理を実行するステップと、
    前記演算装置が、前記丸め処理が実行された前記第1生体情報の誤差特徴データを前記テンプレートとして生成するステップと、を含むことを特徴とする秘密情報の検証方法。
  9. 請求項7に記載の秘密情報の検証方法であって、
    前記第3のステップは、
    前記演算装置が、任意の長さのデータ列であるソルトを生成するステップと、
    前記演算装置が、前記丸め処理が実行された第1生体情報の誤差特徴データ及び前記ソルトの組を前記テンプレートとして生成するステップと、を含むことを特徴とする秘密情報の検証方法。
  10. 請求項7に記載の秘密情報の検証方法であって、
    前記第4のステップは、前記演算装置が、ハッシュ関数、鍵付きハッシュ関数、及び暗号化関数の少なくともいずれかに、前記第1生体情報の定常特徴データを入力することによって前記第1秘密情報を生成するステップを含み、
    前記第6のステップは、
    前記演算装置が、前記第2特徴データ及び前記テンプレートに含まれる前記第1生体情報の誤差特徴データに基づいて、前記第2生体情報の定常特徴データを生成するステップと、
    前記演算装置が、前記ハッシュ関数、前記鍵付きハッシュ関数、及び前記暗号化関数の少なくともいずれかに、前記第2生体情報の定常特徴データを入力することによって前記第2秘密情報を生成するステップと、を含むことを特徴とする秘密情報の検証方法。
JP2017114026A 2017-06-09 2017-06-09 計算機システム、秘密情報の検証方法、及び計算機 Active JP6821516B2 (ja)

Priority Applications (5)

Application Number Priority Date Filing Date Title
JP2017114026A JP6821516B2 (ja) 2017-06-09 2017-06-09 計算機システム、秘密情報の検証方法、及び計算機
US16/494,652 US11227037B2 (en) 2017-06-09 2018-01-25 Computer system, verification method of confidential information, and computer
PCT/JP2018/002213 WO2018225291A1 (ja) 2017-06-09 2018-01-25 計算機システム、秘密情報の検証方法、及び計算機
CN201880014741.1A CN110383758B (zh) 2017-06-09 2018-01-25 计算机系统、秘密信息的验证方法以及计算机
EP18813135.3A EP3637674A4 (en) 2017-06-09 2018-01-25 COMPUTER SYSTEM, PROCESS FOR VERIFYING SECRET INFORMATION AND COMPUTER

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2017114026A JP6821516B2 (ja) 2017-06-09 2017-06-09 計算機システム、秘密情報の検証方法、及び計算機

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2021000451A Division JP7021375B2 (ja) 2021-01-05 2021-01-05 計算機システム、秘密情報の検証方法、及び計算機

Publications (2)

Publication Number Publication Date
JP2018207433A JP2018207433A (ja) 2018-12-27
JP6821516B2 true JP6821516B2 (ja) 2021-01-27

Family

ID=64566458

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2017114026A Active JP6821516B2 (ja) 2017-06-09 2017-06-09 計算機システム、秘密情報の検証方法、及び計算機

Country Status (5)

Country Link
US (1) US11227037B2 (ja)
EP (1) EP3637674A4 (ja)
JP (1) JP6821516B2 (ja)
CN (1) CN110383758B (ja)
WO (1) WO2018225291A1 (ja)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9735958B2 (en) 2015-05-19 2017-08-15 Coinbase, Inc. Key ceremony of a security system forming part of a host computer for cryptographic transactions
JP6821516B2 (ja) * 2017-06-09 2021-01-27 株式会社日立製作所 計算機システム、秘密情報の検証方法、及び計算機
US11394543B2 (en) * 2018-12-13 2022-07-19 Coinbase, Inc. System and method for secure sensitive data storage and recovery
KR20200100481A (ko) * 2019-02-18 2020-08-26 삼성전자주식회사 생체 정보를 인증하기 위한 전자 장치 및 그의 동작 방법
JP7099975B2 (ja) * 2019-03-20 2022-07-12 株式会社日立製作所 認証情報管理サーバ装置、認証情報管理システム及び認証情報管理方法
CN113162898A (zh) * 2021-01-04 2021-07-23 浪潮云信息技术股份公司 一种移动智能终端离线状态下的人员信息采集工具及方法
WO2022162884A1 (ja) * 2021-01-29 2022-08-04 日本電気株式会社 生体認証システム、そのテンプレート更新方法、記録媒体、生体認証クライアント装置及び生体認証サーバ装置
JP2024010408A (ja) * 2022-07-12 2024-01-24 株式会社日立製作所 メッセージ提示システム、提示用装置、及びメッセージ提示方法

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CA2362882A1 (en) 1999-02-11 2000-08-31 Rsa Security Inc. A fuzzy commitment scheme
US7219368B2 (en) 1999-02-11 2007-05-15 Rsa Security Inc. Robust visual passwords
EP1290534A2 (en) * 2000-06-02 2003-03-12 Kinetic Sciences Inc. Method for biometric encryption of e-mail
WO2002078249A1 (en) * 2001-03-23 2002-10-03 Kent Ridge Digital Labs Method of using biometric information for secret generation
EP1403783A3 (en) * 2002-09-24 2005-01-19 Matsushita Electric Industrial Co., Ltd. Audio signal feature extraction
US8014570B2 (en) * 2004-11-16 2011-09-06 Activcard, Inc. Method for improving false acceptance rate discriminating for biometric authentication systems
US8312291B2 (en) 2006-12-28 2012-11-13 Telecom Italia S.P.A. Method and system for biometric authentication and encryption
WO2011030675A1 (ja) * 2009-09-09 2011-03-17 日本電気株式会社 生体認証システム、方法およびプログラム
JP5270514B2 (ja) * 2009-10-23 2013-08-21 株式会社日立製作所 生体認証方法及び計算機システム
CN105981088B (zh) * 2014-01-28 2019-05-03 日本电信电话株式会社 秘密计算方法、秘密计算系统、注册者终端以及记录介质
JP6238867B2 (ja) * 2014-09-30 2017-11-29 株式会社日立製作所 逐次バイオメトリック暗号システムおよび逐次バイオメトリック暗号処理方法
US9672409B2 (en) * 2015-07-03 2017-06-06 Fingerprint Cards Ab Apparatus and computer-implemented method for fingerprint based authentication
JP6723740B2 (ja) 2015-12-25 2020-07-15 宇部エクシモ株式会社 中空構造板
KR102330327B1 (ko) * 2016-11-29 2021-11-24 삼성전자주식회사 압력에 기초한 지문 인식 방법 및 장치
SE1750530A1 (en) * 2017-05-02 2018-11-03 Fingerprint Cards Ab Extracting fingerprint feature data from a fingerprint image
JP6821516B2 (ja) * 2017-06-09 2021-01-27 株式会社日立製作所 計算機システム、秘密情報の検証方法、及び計算機

Also Published As

Publication number Publication date
EP3637674A4 (en) 2020-12-09
CN110383758A (zh) 2019-10-25
US20200019685A1 (en) 2020-01-16
CN110383758B (zh) 2022-03-01
EP3637674A1 (en) 2020-04-15
WO2018225291A1 (ja) 2018-12-13
JP2018207433A (ja) 2018-12-27
US11227037B2 (en) 2022-01-18

Similar Documents

Publication Publication Date Title
JP6821516B2 (ja) 計算機システム、秘密情報の検証方法、及び計算機
CN107925581B (zh) 生物体认证系统以及认证服务器
US10666423B2 (en) Biometric verification of a blockchain database transaction contributor
JP6096893B2 (ja) 生体署名システム、登録端末および署名生成端末
JP6238867B2 (ja) 逐次バイオメトリック暗号システムおよび逐次バイオメトリック暗号処理方法
JP5707311B2 (ja) 生体署名システム
KR102008101B1 (ko) 함수 암호를 이용한 안전한 바이오 인증 방법
KR101845192B1 (ko) 내적 연산 적용을 위한 지문 정보 변경 방법 및 시스템
JP5753772B2 (ja) 生体認証システム
JP7060449B2 (ja) 生体認証システム、生体認証方法、及び生体認証プログラム
JP2007189590A (ja) 個人認証装置及びサーバ装置及び認証システム及び認証方法
KR101838432B1 (ko) 바이오매트릭스와 함수암호-내적을 이용한 인증 방법 및 시스템
JP7021375B2 (ja) 計算機システム、秘密情報の検証方法、及び計算機
WO2021106334A1 (ja) 鍵生成装置、鍵利用装置、及び鍵生成方法
JP4999472B2 (ja) 情報処理装置及び演算方法
Gunasinghe et al. Privacy preserving biometrics-based and user centric authentication protocol
JP7061083B2 (ja) 署名システム、署名方法及びプログラム
WO2023127068A1 (ja) 照合システム、鍵生成装置、照合装置、第1変換装置、第2変換装置、およびそれらの方法
JP7320101B2 (ja) 計算機システム、サーバ、端末、プログラム、及び情報処理方法
WO2023127069A1 (ja) 照合システム、照合方法、および照合プログラム
JP2023031772A (ja) 生体認証システム、生体認証サーバ、及び生体認証方法
KR20180097060A (ko) 바이오매트릭스를 이용하여 키를 생성하는 방법 및 시스템
JP6370459B2 (ja) 逐次バイオメトリック暗号システムおよび逐次バイオメトリック暗号処理方法
JP2023125727A (ja) テンプレート管理システム及びテンプレート管理方法
JP2023023398A (ja) 情報処理装置、情報処理システム、及び情報処理方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20200120

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20200428

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20200623

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20210106

R150 Certificate of patent or registration of utility model

Ref document number: 6821516

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150