JP6142704B2 - 秘匿データ照合装置、秘匿データ照合プログラムおよび秘匿データ照合方法 - Google Patents

秘匿データ照合装置、秘匿データ照合プログラムおよび秘匿データ照合方法 Download PDF

Info

Publication number
JP6142704B2
JP6142704B2 JP2013145874A JP2013145874A JP6142704B2 JP 6142704 B2 JP6142704 B2 JP 6142704B2 JP 2013145874 A JP2013145874 A JP 2013145874A JP 2013145874 A JP2013145874 A JP 2013145874A JP 6142704 B2 JP6142704 B2 JP 6142704B2
Authority
JP
Japan
Prior art keywords
data
vector
secret
unit
matrix
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
JP2013145874A
Other languages
English (en)
Other versions
JP2015019292A (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.)
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
Priority to JP2013145874A priority Critical patent/JP6142704B2/ja
Priority to US14/317,241 priority patent/US9455984B2/en
Priority to EP14174932.5A priority patent/EP2824602B1/en
Priority to KR1020140084388A priority patent/KR101604539B1/ko
Priority to CN201410323274.4A priority patent/CN104281798B/zh
Publication of JP2015019292A publication Critical patent/JP2015019292A/ja
Application granted granted Critical
Publication of JP6142704B2 publication Critical patent/JP6142704B2/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
    • 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
    • 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
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • G06F17/10Complex mathematical operations
    • G06F17/16Matrix or vector computation, e.g. matrix-matrix or matrix-vector multiplication, matrix factorization
    • 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
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/06Network architectures or network communication protocols for network security for supporting key management in a packet data network
    • H04L63/061Network architectures or network communication protocols for network security for supporting key management in a packet data network for key exchange, e.g. in peer-to-peer networks
    • 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

Description

本発明は、秘匿データ照合装置などに関する。
生体認証とは、人間の身体的特徴や行動的特徴の情報を用いた個人認証技術である。人間の身体的特徴には、例えば、指紋、静脈、虹彩やDNAなどがある。行動的特徴には、例えば、筆跡などがある。生体認証では、テンプレートと呼ばれる生体情報を事前に採取し、照合時にセンサで取得した情報と比較することで認証が行われる。
近年、テンプレートに何らかの変換を施したものをデータベースに格納しておき、照合時に元のテンプレートに復元することなく比較する生体認証技術が着目されている。この生体認証技術は、「テンプレート保護型の生体認証技術」といわれる。テンプレート保護型の生体認証技術を用いたシステムでは、変換後のテンプレートが漏洩したとしても、変換方法を変更することで、漏洩したテンプレートを使用不可にし、漏洩したテンプレートへのアクセスを防ぐことができる。
テンプレート保護型の生体認証技術では、複数のセキュリティ要件が求められている。セキュリティ要件の1つにダイバーシティ(diversity)性がある。Diversity性とは、変換後のテンプレートが複数のデータベース間でクロスマッチングできない性質のことをいう。つまり、同じ生体情報について、複数のデータベースにそれぞれ格納された変換後のテンプレートに共通性が認められないことを意味する。
また、テンプレート保護型の生体認証技術には、キーバインディング(Key binding)手法というテンプレート保護手法が知られている。Key binding手法とは、生体情報を示すテンプレートとユーザ固有の鍵から生成された補助情報をデータベースに格納しておき、照合時に照合用の生体情報がテンプレートと十分に近い場合に、ユーザ固有の鍵を抽出する手法である。Key binding手法では、生体情報を示すテンプレート自体をデータベースに登録しておくことなく、照合することができる。
Key binding手法を実現する技術には、例えば、誤り訂正符号の技術を利用したfuzzy commitmentやfuzzy vaultなどの方式が代表的である。fuzzy commitmentは、量子化した生体情報とランダムな情報との排他的論理和を利用した方式であることが知られている。また、fuzzy vaultは、あらかじめ用意された情報の組を鍵として、任意の秘密情報を秘匿することが知られている。また、fuzzy commitmentやfuzzy vaultによるkey binding手法では、同じ生体情報について、テンプレートとユーザ固有の鍵から生成される補助情報に共通部分があることが知られている(例えば、非特許文献1〜3参照)。
A. K. Jain, K. Nandakumar and A. Nagar, Biometric template security(review article), EURASIP Journal on Advances in Signal Processing, pp.1-17, 2008 A. Juels and M. Wattenberg, "A fuzzy commitment scheme," in Proceedings of 6th ACM Conference on Computer and Communications Security (ACMCCS’99), pp.28-36, 1999 A. Juels and M. Sudan, "A fuzzy vault scheme," in Proceedings of the IEEE International Symposium on Information Theory, p. 408, 2002.
しかしながら、従来のkey binding手法を実現する技術では、テンプレート保護型の生体認証技術のセキュリティ要件の1つであるdiversity性を満たすことができないという問題がある。すなわち、fuzzy commitmentやfuzzy vaultによるkey binding手法では、同じ生体情報について、テンプレートとユーザ固有の鍵から生成される補助情報に共通部分があるため、複数のデータベース間でクロスマッチングできてしまう。すなわち、かかるkey binding手法では、diversity性を満たさない。
なお、上記課題は、生体情報の照合に限らず、位置情報や機密情報等の数値情報の照合であっても、同様に生じる課題である。
1つの側面では、本発明は、テンプレート保護型の生体認証技術におけるkey binding手法において、diversity性を向上させることを目的とする。
1つの側面では、秘匿データ照合装置は、第1のデータと第2のデータとが近似しているかを判定するための閾値と鍵データに関する閾値とを対角成分とする行列に乱数ベクトルを最終列として付加して生成された判定行列であって自装置を搭載するシステム毎に異なる判定行列の行ベクトルの第1の一次結合と、第1の乱数とに基づいて、前記第1のデータと鍵データとを秘匿して得られた第1の秘匿ベクトルを記憶する記憶部と、前記判定行列の行ベクトルの第2の一次結合と、第2の乱数とに基づいて、前記第2のデータを秘匿して得られた第2の秘匿ベクトルを取得する取得部と、前記記憶部に記憶された第1の秘匿ベクトルと、前記取得部によって取得された第2の秘匿ベクトルとの差分から、前記判定行列を法とした際の剰余である剰余ベクトルを算出する算出部と、前記算出部によって算出された剰余ベクトルに基づいて、前記第1のデータと前記第2のデータとが近似しているか否かを判定する判定部と、前記判定部による判定の結果、前記第1のデータと前記第2のデータとが近似していると判定された場合に、前記剰余ベクトルから鍵データを抽出する抽出部と、を有する。
本願の開示するシステムの1つの態様によれば、テンプレート保護型の生体認証技術におけるkey binding手法において、diversity性を向上させることができる。
図1は、実施例に係る秘匿データ照合システムの機能構成の一例を説明する図である。 図2は、実施例に係る近似判定行列を説明する図である。 図3は、実施例に係る秘匿データの登録処理のシーケンスを示す図である。 図4は、実施例に係る秘匿データの照合処理のシーケンスを示す図である。 図5は、秘匿データ照合プログラムを実行するコンピュータの一例を示す図である。
以下に、本願の開示する秘匿データ照合装置、秘匿データ照合プログラムおよび秘匿データ照合方法の実施例を図面に基づいて詳細に説明する。なお、秘匿データ照合装置は、テンプレート保護型の生体認証技術のうちkey binding手法を採用する。また、実施例によりこの発明が限定されるものではない。
[秘匿データ照合システムの構成]
図1は、実施例に係る秘匿データ照合システムの機能構成の一例を説明する図である。図1に示すように、秘匿データ照合システム9は、クライアント端末1,2と、秘匿データ照合装置3とを有する。秘匿データ照合装置3には、データベース330が含まれる。秘匿データ照合装置3とクライアント端末1,2とは、ネットワークで接続されている。
ここで、秘匿データ照合システム9は、クライアントの生体データおよびクライアント固有の鍵データを格子マスキングと呼ばれる特殊な乱数(格子の元)に基づいて秘匿化し、秘匿化して得られた第1の秘匿データをデータベース330に登録する。そして、秘匿データ照合システム9は、生体データについて照合の依頼があったとき、照合対象の生体データを異なる格子の元に基づいて秘匿化し、秘匿化して得られた第2の秘匿データを取得する。そして、秘匿データ照合システム9は、第1の秘匿データと、第2の秘匿データとの差分から、格子理論特有の写像を用いることで、第1の秘匿データに対応する生体データと、第2の秘匿データに対応する生体データとが近似しているか否かを判定する。そして、秘匿データ照合システム9は、近似していると判定した場合、第1の秘匿データから鍵データを抽出し、抽出した鍵データを依頼元に出力する。実施例では、説明の便宜上、クライアント端末1が、生体データを登録するクライアントの端末であるとし、クライアント端末2が、生体データについて照合を依頼する端末であるとする。なお、クライアント端末1は、複数台存在しても良い。クライアント端末2は、複数台存在しても良い。
このような秘匿データ照合システム9における生体データおよびクライアント固有の鍵データの秘匿化、および秘匿化された秘匿データ同士の近似判定の内容について、以下に説明する。
クライアント端末1は、登録依頼部11と、秘匿データ生成部12とを有する。実施例では、鍵112は、例えば、数値で表されるものとする。
登録依頼部11は、生体データ111および鍵112の登録を秘匿データ照合装置3に依頼する。例えば、登録依頼部11は、生体データ111および鍵112を外部の端末から受信する。そして、登録依頼部11は、受信した生体データ111および鍵112の登録を秘匿データ照合装置3に依頼する。なお、外部の端末は、ネットワークを介した端末であっても良い。
ここで、生体データ111は、クライアントの身体的特徴や行動的特徴のデータである。身体的特徴のデータの一例として、指紋、静脈、虹彩およびDNAが挙げられる。行動的特徴のデータの一例として、筆跡が挙げられる。実施例では、生体データ111は、n次元の成分を有するベクトルで表されるものとする。鍵112は、クライアント自身が生体データと共に登録を所望する鍵データである。実施例では、鍵112は、例えば、数値で表されるものとする。
また、登録依頼部11は、登録依頼に対する応答として、後述する近似判定行列331に対応する一次結合(格子の元)を秘匿データ照合装置3から受信し、受信した格子の元を秘匿データ生成部12に出力する。また、登録依頼部11は、生体データ111および鍵112を秘匿化した秘匿ベクトルを秘匿データ生成部12から受け取ると、当該秘匿ベクトルの登録を秘匿データ照合装置3に依頼する。
秘匿データ生成部12は、生体データ111および鍵112を秘匿化した秘匿ベクトルを生成する。
例えば、秘匿データ生成部12は、生体データ111と鍵112に対して、生体データ111と鍵112の結合データの最終成分に「0」を追加したn+2次元ベクトルを生成する。すなわち、秘匿データ生成部12は、生体データ112が有するn次元の成分に、鍵112が有する1次元の成分と、n+2番目の成分として「0」を追加したn+2次元ベクトルを生成する。一例として、生体データ111がn次元の成分を示すTであり、鍵112が1次元の成分を示すKであるとする。すると、秘匿データ生成部12は、n+2次元ベクトルとして、(T、K、0)を生成する。
また、秘匿データ生成部12は、登録依頼部11から一次結合(格子の元)を取得すると、乱数を生成する。そして、秘匿データ生成部12は、一次結合(格子の元)と、乱数との積に、生成したn+2次元ベクトルを加算した秘匿ベクトルを生成する。一例として、乱数がrであり、格子の元がbであるとすると、秘匿ベクトルは、(T、K、0)+r×bで表される。そして、秘匿データ生成部12は、生成した秘匿ベクトルを登録依頼部11に出力する。
クライアント端末2は、照合依頼部21と、秘匿データ生成部22とを有する。
照合依頼部21は、生体データの照合を秘匿データ照合装置3に依頼する。照合を依頼する生体データを照合データ211とする。実施例では、照合データ211は、n次元の成分を有するベクトルで表されるものとする。また、照合依頼部21は、照合依頼に対する応答として、後述する近似判定行列331に対応する一次結合(格子の元)を秘匿データ照合装置3から受信し、受信した格子の元を秘匿データ生成部22に出力する。また、照合依頼部21は、照合データ211を秘匿化した秘匿ベクトルを秘匿データ生成部22から受け取ると、当該秘匿ベクトルの照合を秘匿データ照合装置3に依頼する。なお、秘匿データ照合装置3から受信される格子の元は、登録時にクライアント端末1の登録依頼部11によって受信された格子の元と異なるものである。
秘匿データ生成部22は、照合データ211を秘匿化した秘匿ベクトルを生成する。
例えば、秘匿データ生成部22は、照合データ211の最終成分と最終から1つ前の成分に「0」を追加したn+2次元ベクトルを生成する。すなわち、秘匿データ生成部22は、照合データ211が有するn次元の成分に、n+1番目の成分およびn+2番目の成分としてそれぞれ「0」を追加したn+2次元ベクトルを生成する。一例として、照合データ211がn次元の成分を示すQであるとする。すると、秘匿データ生成部22は、n+2次元ベクトルとして、(Q、0、0)を生成する。
また、秘匿データ生成部22は、照合依頼部21から一次結合(格子の元)を取得すると、乱数を生成する。そして、秘匿データ生成部22は、一次結合(格子の元)と、乱数との積に、生成したn+2次元ベクトルを加算した秘匿ベクトルを生成する。一例として、乱数がrであり、格子の元がbであるとすると、秘匿ベクトルは、(Q、0、0)+r×bで表される。そして、秘匿データ生成部22は、生成した秘匿ベクトルを照合依頼部21に出力する。なお、乱数を生成する手法は、任意の手法を用いることが可能であるものの、各クライアント端末1,2同士で生成する乱数が重複しないように、各種パラメータがそれぞれ異なることが望ましい。
秘匿データ照合装置3は、登録部31と、照合判定部32と、記憶部33とを有する。登録部31は、後述する近似判定行列を生成し、生成した近似判定行列を記憶部33のデータベース330に登録する。また、登録部31は、登録依頼のあった秘匿データを記憶部33のデータベース330に登録する。照合判定部32は、照合依頼のあった照合データを秘匿化した秘匿データと登録した秘匿データとを照合し、近似しているか否かを判定する。
記憶部33は、ハードディスク、光ディスクなどの記憶装置である。なお、記憶部33は、RAM(Random Access Memory)、ROM(Read Only Memory)、フラッシュメモリ、NVSRAM(Non Volatile Static Random Access Memory)などのデータを書き換え可能な半導体メモリであっても良い。
記憶部33は、データベース330を記憶する。データベース330には、近似判定行列331および秘匿データ332が記憶される。なお、近似判定行列331および秘匿データ332は、後述する登録部31によって登録される。また、近似判定行列331の詳細は、後述する。
登録部31は、乱数生成部311と、近似判定行列生成部312と、近似判定行列登録部313と、秘匿データ登録部314とを有する。
乱数生成部311は、近似判定行列331で用いられる乱数を生成し、生成した乱数を近似判定行列生成部312に出力する。ここで、近似判定行列331で用いられる乱数とは、近似判定行列331を生成する際に近似範囲の閾値を示す正方行列に最終列より1つ前の列、最終列として付加する乱数である。近似範囲の閾値とは、クライアントが近似範囲として設定した数値であり、近似範囲のベクトルとしての各次元方向の長さを示す情報である。例えば、乱数生成部311は、近似範囲の閾値が「e、f、g」である場合、e/2≧h、f/2≧i、g/2≧kを満たす乱数「h、i、j」、および任意の乱数「k、l」を生成する。
近似判定行列生成部312は、近似判定を行うための近似判定行列331を生成する。生成される近似判定行列331は、秘匿データ照合装置3が搭載されるシステム毎に異なるように生成されるものとする。
例えば、近似判定行列生成部312は、近似範囲を示す閾値を対角成分とし、他の成分を「0」とする対角行列を生成する。一例として、近似判定行列生成部312は、判定対象となる生体データがn個の成分を有する情報である場合、すなわち生体データ111がn次元の情報である場合には、n×nの対角行列を生成する。また、近似判定行列生成部312は、鍵112の閾値を(n+1)行(n+1)列に設定する。鍵112の閾値とは、クライアントによって設定される鍵自体が採り得る最大値を示す情報である。
そして、近似判定行列生成部312は、生成したn×nの対角行列に、全ての成分が「0」である最終行−1行と最終行を付加した(n+2)×n行列を生成する。そして、近似判定行列生成部312は、対角行列の列の数nに1を加算した数の成分を有する乱数ベクトルを生成する。近似判定行列生成部312は、対角行列の列の数nに2を加算した数(最終列数)の成分を有する乱数ベクトルを生成する。乱数ベクトルの成分には、乱数生成部311によって生成された乱数が設定される。そして、秘匿データ照合装置3は、乱数ベクトルを付加した(n+2)×(n+2)の正方行列を近似判定行列331として生成する。
近似判定行列登録部313は、近似判定行列生成部312によって生成された近似判定行列331をデータベース330に登録する。
ここで、近似判定行列331について、図2を参照して説明する。図2は、実施例に係る近似判定行列を説明する図である。なお、図2に示す例では、生体データ、および近似範囲が3次元の数値によって表される例について説明する。図2に示すように、近似判定行列331に対応する近似判定行列Vは、点線で示す範囲の近似判定用の行列に鍵の閾値と乱数ベクトルとを付加した行列である。
近似判定用の行列は、近似範囲の各次元方向のベクトルとしての長さを指定する閾値を対角要素として有する。例えば、図2に示す例では、近似範囲のx軸方向のベクトルとしての長さが「20」であり、y軸方向のベクトルとしての長さが「10」であり、z軸方向のベクトルとしての長さが「14」である旨を示す。すなわち、図2に示す近似判定用の行列は、x軸方向に「±10」、y軸方向に「±5」、z軸方向に「±7」の範囲内に2つの生体データが含まれるか否かを判定するための行列である。
そして、鍵埋め込み用の4行目に、「0、0、0」が付加される。さらに、4列目に、乱数ベクトル「7、4、5」と鍵の閾値「20000」とを合わせた「7、4、5、20000」が付加される。そして、最終行の5行目に、「0、0、0、0」が付加される。さらに、最終列の5列目に、乱数ベクトル「5、3、−2、−42、123」が付加される。なお、図2に示す例では、近似範囲を3次元の数値で指定したが、実施例はこれに限定されるものではなく、任意の次元の数値を用いることができる。
秘匿データ登録部314は、秘匿データをデータベース330に登録する。登録された秘匿データが、key binding手法において、保護されるテンプレートに相当する。
例えば、秘匿データ登録部314は、クライアント端末1から生体データ111および鍵112の登録依頼があった場合、近似判定行列331に対応する一次結合用の乱数を生成する。一例として、秘匿データ登録部314は、近似判定行列331に対応するn+2個の成分を有する行ベクトルv、v、・・・、vn+2を取得する。そして、秘匿データ登録部314は、各行ベクトルv、v、・・・、vn+2に対して、それぞれ適当な整数d、d、・・・、dn+2を選択する。そして、秘匿データ登録部314は、各行ベクトルと各整数との積の和、すなわちd×v+d×v+・・・+dn+2×vn+2で表されるn+2次元のベクトルを一次結合として算出する。この一次結合が「格子の元」である。なお、秘匿データ登録部314は、生体データ毎に、異なる整数d、d、・・・、dn+2の組を選択し、選択した整数の組と近似判定行列331の各行ベクトルとの積の和である一次結合を算出する。
また、秘匿データ登録部314は、算出した一次結合すなわち格子の元を、登録依頼の応答として、クライアント端末1に配布する。そして、秘匿データ登録部314は、クライアント端末1から秘匿データ332の登録依頼があった場合、登録依頼があった秘匿データ332をデータベース330に登録する。
照合判定部32は、照合依頼受付部321と、演算部322と、近似判定部323と、鍵出力部324とを有する。
照合依頼受付部321は、クライアント端末2から照合依頼を受け付けた場合、近似判定行列331に対応する一次結合用の乱数(格子の元)を生成する。一次結合用の乱数の生成は、秘匿データ登録部314による生成と同様であるので、その説明を省略する。なお、照合依頼受付部321によって生成される格子の元は、登録時に秘匿データ登録部314よって生成された格子の元と異なるように生成される。
また、照合依頼受付部321は、算出した一次結合すなわち格子の元を、照合依頼の応答として、クライアント端末2に配布する。そして、照合依頼受付部321は、クライアント端末2から照合データ211を秘匿化した秘匿ベクトルの照合依頼があった場合、照合依頼があった秘匿ベクトルを演算部322に出力する。
演算部322は、データベース330に登録された秘匿データ332(秘匿ベクトル)と、クライアント端末2から受信した照合データ211を秘匿化した秘匿ベクトルとの差分ベクトルを算出する。そして、演算部322は、算出した差分ベクトルから、近似判定行列331を法とした際の剰余である剰余ベクトルを算出する。一例として、差分ベクトルをz、近似判定行列331をVとした場合、剰余ベクトルは、「z mod V」で表される。そして、演算部322は、算出した剰余ベクトルを近似判定部323に出力する。
近似判定部323は、演算部322から受け取った剰余ベクトルの最終成分が「0」であるか否かを判定し、剰余ベクトルの最終成分が「0」である場合は、登録元の生体データ111と照合データ211とが近似していると判定する。一方、近似判定部323は、剰余ベクトルの最終成分が「0」でない場合は、登録元の生体データ111と照合データ211とが近似していないと判定する。
鍵出力部324は、近似していると判定された場合、剰余ベクトルからn+1成分の鍵112を抽出する。そして、秘匿データ照合装置3は、抽出した鍵112を照合元となるクライアント端末2に送信する。
ここで、照合判定部32が実行する近似判定の原理について説明する。近似判定行列331を近似判定行列Vとして説明する。近似判定行列Vの各行ベクトルv、v、・・・、vn+2の一次結合は、近似判定行列Vの各行ベクトルの一次結合d×v+d×v+・・・+dn+2×vn+2を元とする集合L(格子L)で表すことができる。つまり、近似判定行列Vの各行ベクトルの一次結合は、集合Lの元からなる格子上のいずれかの交点に対応する。
n次元の生体データTおよび鍵Kを秘匿化した秘匿ベクトルHは、集合Lの格子の元bと乱数rを用いて以下の式(1)で表される。なお、[T、K、0]とは、生体データTに鍵Kとn+2番目の成分として「0」を追加したn+2次元ベクトルである。
H=[T、K、0]+r×b・・・式(1)
また、n次元の照合データQを秘匿化した秘匿ベクトルH´は、集合Lの格子の元bと乱数rを用いて以下の式(2)で表される。なお、[Q、0、0]とは、照合データQにn+1番目の成分とn+2番目の成分としてそれぞれ「0」を追加したn+2次元ベクトルである。また、bはbと異なる。
H´=[Q、0、0]+r×b・・・式(2)
このような場合に、秘匿ベクトルHとH´との差分ベクトルzは、以下の式(3)で表される。
z=H−H´=[T−Q、K、0]+r×b−r×b・・・式(3)
ここで、差分ベクトルzが有するr×b−r×bは、集合Lの元と乱数との積同士の差分であるため、集合Lの元に含まれている。つまり、r×b−r×bは、集合Lの元からなる格子上のいずれかの交点に対応する。また、差分ベクトルzから近似判定行列Vの剰余ベクトルを計算した場合(z mod V)は、集合Lによって定まる基本領域P(L)に差分ベクトルzを写像することに対応する。このため、差分ベクトルzから近似判定行列Vの剰余ベクトルを計算した場合は、r×b−r×bが無視されることとなる。このため、z mod Vを算出した場合には、差分ベクトルzのうち、差分ベクトルzの先端以外を含む格子部分を無視し、差分ベクトルzの先端を含む1つの格子のみを基本領域P(L)に写像することとなる。すなわち、以下の式(4)で表される。
z mod V=[T−Q、K、0] mod V・・・式(4)
ベクトル[T−Q、K、0]が基本領域P(L)に含まれる場合、すなわち、生体データTと照合データQとが近似している場合、z mod V=[T−Q、K、0]となる。この結果、生体データTと照合データQとが近似している場合には、z mod Vの最終成分が非常に高い確率で「0」となる。
一方、ベクトル[T−Q、K、0]が基本領域P(L)に含まれない場合、すなわち、生体データTと照合データQとが近似していない場合には、集合Lに属する格子のある元をbとすると、z mod V=[T−Q、K、0]+bとなる。この結果、生体データTと照合データQとが近似していない場合には、z mod Vの最終成分が非常に高い確率で「0」以外の値となる。
このような原理の下、照合判定部32は、秘匿ベクトルの差分zから近似判定行列Vの剰余ベクトルを算出し、算出した剰余ベクトルの最終成分に基づいて、秘匿された生体データの近似判定を行うことができる。そして、照合判定部32は、近似判定の結果、近似していると判定した場合に、秘匿ベクトルHから鍵Kを抽出し、抽出した鍵Kを照合元に出力する。
[秘匿データの登録処理のシーケンス]
次に、秘匿データの登録処理のシーケンスを、図3を参照して説明する。図3は、実施例に係る秘匿データの登録処理のシーケンスを示す図である。なお、図3では、クライアントの生体データ111をT、クライアント固有の鍵112をK、近似判定行列331をV、秘匿ベクトルをHで示すものとする。
秘匿データ照合装置3では、近似判定行列生成部312が、近似判定行列Vを生成する(ステップS11)。そして、近似判定行列登録部313は、生成された近似判定行列Vをデータベース330に登録する(ステップS12)。
クライアント端末1では、登録依頼部11が、登録情報を取得する(ステップS13)。ここでは、登録依頼部11は、登録情報として、生体データTおよび鍵Kを取得する。そして、登録依頼部11は、生体データTおよび鍵Kの登録を、秘匿データ照合装置3に依頼する(ステップS14)。
秘匿データ照合装置3では、クライアント端末1から登録依頼を受け取った秘匿データ登録部314は、乱数格子ベクトルを生成する(ステップS15)。ここでは、秘匿データ登録部314は、近似判定行列Vの各行ベクトルと適当な各整数との積の和で表される一次結合を算出する。算出された一次結合が乱数格子ベクトルbであり、格子の元である。そして、秘匿データ登録部314は、算出した乱数格子ベクトル(格子の元)bをクライアント端末1に送信する(ステップS16)。
クライアント端末1では、秘匿データ生成部12が、登録情報を生成する(ステップS17)。ここでは、秘匿データ生成部12は、生体データTと鍵Kの結合データの最終成分に「0」を追加したベクトル(T、K、0)を生成する。
そして、秘匿データ生成部12は、登録情報を秘匿する(ステップS18)。ここでは、秘匿データ生成部12は、乱数格子ベクトル(格子の元)bと乱数との積に、生成したベクトル(T、K、0)を加算した秘匿ベクトルHを生成する。乱数がrであるとすると、秘匿ベクトルHは、(T、K、0)+r×bで表される。
そして、登録依頼部11は、秘匿データ生成部12によって秘匿された登録情報である秘匿ベクトルHの登録を依頼すべく、当該秘匿ベクトルHを秘匿データ照合装置3に送信する(ステップS19)。この結果、秘匿ベクトルHは、秘匿データ照合装置3のデータベース330に登録される。
[秘匿データの照合処理のシーケンス]
次に、秘匿データの照合処理のシーケンスを、図4を参照して説明する。図4は、実施例に係る秘匿データの照合処理のシーケンスを示す図である。なお、図4では、クライアントの照合データ211をQ、クライアント固有の鍵112をK、近似判定行列331をV、秘匿ベクトルをH´、Hで示すものとする。
クライアント端末2では、照合依頼部21が、照合情報を取得する(ステップS21)。ここでは、照合依頼部21は、照合情報として、照合データQを取得する。そして、照合依頼部21は、照合データQの照合を、秘匿データ照合装置3に依頼する(ステップS22)。
秘匿データ照合装置3では、クライアント端末2から照合依頼を受け取った照合依頼受付部321は、データベース330から近似判定行列Vを取得する(ステップS23)。そして、照合依頼受付部321は、乱数格子ベクトルを生成する(ステップS24)。ここでは、照合依頼受付部321は、読み出した近似判定行列Vの各行ベクトルと適当な各整数との積の和で表される一次結合を算出する。算出された一次結合が乱数格子ベクトルbであり、格子の元である。そして、照合依頼受付部321は、算出した乱数格子ベクトル(格子の元)bをクライアント端末2に送信する(ステップS25)。なお、bとbとは、異なるものである。
クライアント端末2では、秘匿データ生成部22が、秘匿照合情報を生成する(ステップS26)。ここでは、秘匿データ生成部22は、照合データQに「0」を追加したベクトル(Q、0、0)を生成する。そして、秘匿データ生成部22は、乱数格子ベクトル(格子の元)bと乱数との積に、生成したベクトル(Q、0、0)を加算した秘匿ベクトルH´を生成する。乱数がrであるとすると、秘匿ベクトルH´は、(Q、0、0)+r×bで表される。そして、照合依頼部21は、秘匿ベクトルH´の照合を依頼すべく、当該秘匿ベクトルH´を秘匿データ照合装置3に送信する(ステップS27)。
秘匿データ照合装置3では、演算部322が、データベース330から秘匿ベクトルHを取得する(ステップS28)。そして、近似判定部323は、照合を依頼された秘匿ベクトルH´と、取得した秘匿ベクトルHとの差分ベクトルから算出される剰余ベクトルを用いて、秘匿したまま照合処理を行う(ステップS29)。ここでは、近似判定部323は、剰余ベクトルの最終成分が「0」であるか否かを判定する。そして、近似判定部323は、剰余ベクトルの最終成分が「0」である場合、登録元の生体データTと照合データQが近似していると判定する。一方、近似判定部323は、剰余ベクトルの最終成分が「0」でない場合、登録元の生体データTと照合データQが近似していないと判定する。
そして、鍵出力部324は、近似していると判定された場合、剰余ベクトルからユーザ固有の鍵Kを抽出する(ステップS30)。そして、鍵出力部324は、抽出した鍵Kを、照合を依頼したクライアント端末2に送信する(ステップS31)。
これにより、この後、クライアント端末2では、抽出されたクライアント固有の鍵Kを用いて認証チェックを行うことができる。一例として、クライアント端末2では、抽出されたクライアント固有の鍵Kを秘密鍵とすれば、秘密鍵と予め保管された公開鍵とを用いて、公開鍵認証方式に基づく認証チェックを行うことができる。
また、秘匿データ照合装置3は、生体データについて、テンプレート保護型の生体認証技術におけるkey binding手法において、diversity性を満たすことができる。すなわち、秘匿データ照合装置3は、生体データTとクライアント固有の鍵Kに対して、データベース330に登録する秘匿ベクトルHを近似判定行列Vに応じて生成する。仮に、生体データTとクライアント固有の鍵Kに対して、異なる2つの近似判定行列V、Vから、それぞれ秘匿ベクトルH、Hが生成されたとする。bがVの近似判定行列から生成される格子の元とすると、Vの近似判定行列から生成された秘匿ベクトルHは、(T、K、0)+r×bで表せる。bがVの近似判定行列から生成される格子の元とすると、Vの近似判定行列から生成された秘匿ベクトルHは、(T、K、0)+r×bで表せる。そうすると、近似判定行列VとVが異なるため、b、bが異なり、2つの秘匿ベクトルH、Hから共通の情報が得られない。したがって、システム毎に近似判定行列V、Vが異なれば、生体データTとクライアント固有の鍵Kに対して、秘匿ベクトルH、Hがクロスマッチングされることはない。つまり、diversity性が満たされる。
[秘匿データの登録処理および照合処理の具体例]
次に、実施例に係る秘匿データの登録処理および照合処理について、具体例を挙げて説明する。秘匿データ照合システム9は、生体データとして3次元のデータを用いているものとする。例えば、登録時に、クライアント端末1に入力される第1のユーザの生体データTが、[123、512、120]であり、鍵Kが「6497」であるとする。なお、秘匿データ照合装置3によって、図2に示す近似判定行列Vが生成されたとする。
[秘匿データの登録処理の具体例]
クライアント端末1から生体データTおよび鍵Kの登録依頼を受け取った秘匿データ照合装置3は、近似判定行列Vの各行ベクトルをv〜vとする。そして、秘匿データ照合装置3は、各行ベクトルv〜vと適当な各整数との積の和で表される一次結合bを算出する。ここでは、一次結合bは、以下の式(5)で表される。
=2×v+3×v−5×v−v+5×v=[40、30、−70、−199999、686]・・・式(5)
そして、秘匿データ照合装置3は、算出した一次結合bをクライアント端末1に送信する。
一次結合bを受信したクライアント端末1は、一次結合bと乱数との積に、生体データTと鍵Kの結合データの最終成分に「0」を追加したベクトル(T、K、0)を加算した秘匿ベクトルHを生成する。ここでは、クライアントによって選択された乱数rが「7」であるとすると、秘匿ベクトルHは、以下の式(6)で表される。
H=[T、K、0]+r×b=[403、722、−370、133496、4802]・・・式(6)
そして、クライアント端末1は、算出した秘匿ベクトルHを秘匿データ照合装置3に送信する。そして、秘匿ベクトルHは、秘匿データ照合装置3によってデータベース330に登録される。
[秘匿データの照合処理の具体例1]
1つの例として、照合時に、クライアント端末2に入力される第1のユーザの生体データである照合データQ1が、[122、514、124]であるとする。
クライアント端末2から照合データQ1の照合依頼を受け取った秘匿データ照合装置3は、近似判定行列Vの各行ベクトルをv〜vとする。そして、秘匿データ照合装置3は、各行ベクトルv〜vと適当な各整数との積の和で表される一次結合bを算出する。ここでは、一次結合bは、以下の式(7)で表される。
=5×v−2×v+7×v+v=[100、20、98、62、128]・・・式(7)
そして、秘匿データ照合装置3は、算出した一次結合bをクライアント端末2に送信する。
一次結合bを受信したクライアント端末2は、一次結合bと乱数との積に、照合データQ1に「0」を追加したベクトル[Q1、0、0]を加算した秘匿ベクトルH1を生成する。ここでは、クライアントによって選択された乱数rが「123」であるとすると、秘匿ベクトルH1は、以下の式(8)で表される。
H1=[Q1、0、0]+r×b=[12422、−1946、12178、7626、15744]・・・式(8)
そして、クライアント端末2は、算出した秘匿ベクトルH1の照合を依頼すべく、秘匿ベクトルH1を秘匿データ照合装置3に送信する。
続いて、秘匿データ照合装置3は、照合を依頼された秘匿ベクトルH1と、登録された秘匿ベクトルHとの差分ベクトルzから、近似判定行列Vを法とする剰余ベクトルを算出する。ここでは、差分ベクトルz=(H−H1)が算出され、近似判定行列Vを法とする剰余ベクトルが、以下の式(9)のように算出される。
mod V=z−[z×V−1]×V=[1、−2、−4、6497、0]・・・式(9)
そして、秘匿データ照合装置3は、秘匿ベクトルH1から算出された剰余ベクトルの最終成分が「0」であるので、登録元の生体データTと照合データQ1とが近似していると判定する。そして、秘匿データ照合装置3は、剰余ベクトルの最終成分の1つ前の成分の鍵Kを抽出する。ここでは、鍵Kとして「6497」が抽出される。
そして、秘匿データ照合装置3は、照合を依頼したクライアント端末2に「6497」を鍵Kとして送信する。
[秘匿データの照合処理の具体例2]
別の例として、照合時に、クライアント端末2に入力される第2のユーザの生体データである照合データQ2が、[121、555、123]であるとする。
クライアント端末2から照合データQ2の照合依頼を受け取った秘匿データ照合装置3は、近似判定行列Vの各行ベクトルをv〜vとする。そして、秘匿データ照合装置3は、各行ベクトルv〜vと適当な各整数との積の和で表される一次結合bを算出する。ここでは、一次結合bは、前述の式(7)で表される。
そして、秘匿データ照合装置3は、算出した一次結合bをクライアント端末2に送信する。
一次結合bを受信したクライアント端末2は、一次結合bと乱数との積に、照合データQ2に「0」を追加したベクトル[Q2、0、0]を加算した秘匿ベクトルH2を生成する。ここでは、クライアントによって選択された乱数rが「−17」であるとすると、秘匿ベクトルH2は、以下の式(10)で表される。
H2=[Q2、0、0]+r×b=[−1579、895、−1543、−1054、−2176]・・・式(10)
そして、クライアント端末2は、算出した秘匿ベクトルH2の照合を依頼すべく、秘匿ベクトルH2を秘匿データ照合装置3に送信する。
続いて、秘匿データ照合装置3は、照合を依頼された秘匿ベクトルH2と、登録された秘匿ベクトルHとの差分ベクトルzから、近似判定行列Vを法とする剰余ベクトルを算出する。ここでは、差分ベクトルz=(H−H2)が算出され、近似判定行列Vを法とする剰余ベクトルが、以下の式(11)のように算出される。
mod V=z−[z×V−1]×V=[2、−3、−3、6513、12]・・・式(11)
そして、秘匿データ照合装置3は、秘匿ベクトルH2から算出された剰余ベクトルの最終成分が「0」でないので、登録元の生体データTと照合データQ2とが近似していないと判定する。そして、秘匿データ照合装置3は、照合が失敗した旨を、照合を依頼したクライアント端末2に送信する。なお、秘匿データ照合装置3は、照合が失敗した旨の代わりに、剰余ベクトルの最終成分の1つ前の成分「6513」を送信しても良い。
[実施例の効果]
上記実施例によれば、秘匿データ照合装置3は、自装置を搭載するシステム毎に異なる近似判定行列331の行ベクトルの第1の一次結合と、第1の乱数とに基づいて、生体データと鍵とを秘匿して得られた第1の秘匿ベクトルをデータベース330に登録する。そして、秘匿データ照合装置3は、近似判定行列331の行ベクトルの第2の一次結合と、第2の乱数とに基づいて、照合データを秘匿して得られた第2の秘匿ベクトルを取得する。そして、秘匿データ照合装置3は、第1の秘匿ベクトルと第2の秘匿ベクトルとの差分から、近似判定行列331を法とした際の剰余である剰余ベクトルを算出する。そして、秘匿データ照合装置3は、算出された剰余ベクトルに基づいて、生体データと照合データとが近似しているか否かを判定し、近似している場合に、剰余ベクトルから鍵を抽出する。かかる構成によれば、秘匿データ照合装置3は、自装置を搭載するシステム毎に異なる近似判定行列331に対応する一次結合により秘匿化された秘匿ベクトルを用いて、近似判定を行い、近似の場合に鍵を抽出する。このため、他のシステムが、同じデータを別の近似判定行列331を用いて秘匿化しても、それぞれの近似判定行列331から生成された秘匿ベクトルに共通部分がないため、クロスマッチすることはない。したがって、秘匿データ照合装置3は、key binding手法において、diversity性を向上させることができる。
また、上記実施例によれば、秘匿データ照合装置3は、第1の秘匿ベクトルを生成する際に用いられた第1の一次結合と異なる第2の一次結合と、第2の乱数とに基づいて第2の秘匿ベクトルを取得する。かかる構成によれば、秘匿データ照合装置3は、第1の秘匿ベクトルを生成する際に用いられた一次結合と異なる一次結合を用いた第2の秘匿ベクトルを取得するので、秘匿ベクトル間同士の関連性を判別できず、情報の漏洩を防ぐことが可能となる。
また、上記実施例によれば、秘匿データ照合装置3は、抽出された鍵を、照合データの判定依頼元に対して出力する。かかる構成によれば、判定依頼元では、受け取った鍵を利用して、認証チェックを行うことができる。
[その他]
なお、実施例では、秘匿データ照合装置3は、1クライアントに関する生体データ111と鍵112とを秘匿化した秘匿データ332をデータベース330に登録し、登録した秘匿データ332と照合データ211を秘匿した秘匿データを照合する場合を説明した。しかしながら、秘匿データ照合装置3は、複数クライアントに関する生体データ111と鍵データ112とをそれぞれ秘匿化した複数の秘匿データ332をデータベース330に登録しても良い。かかる場合、秘匿データ照合装置3は、照合依頼を受け付けると、登録された秘匿データ332を1つずつ選択し、選択した秘匿データ332と、照合依頼のあった照合データ211を秘匿した秘匿データとを照合すれば良い。そして、秘匿データ照合装置3は、照合の結果、近似していると判定した場合に、照合の際生成される剰余ベクトルから鍵112を抽出し、照合依頼元に送信すれば良い。
また、実施例では、秘匿データ照合装置3は、照合の際生成される剰余ベクトルの最終成分が「0」であるか否かを判定することで、登録元の生体データ111と照合データ211とが近似しているか否かを判定すると説明した。しかしながら、秘匿データ照合装置3は、これに限定されるものでなく、剰余ベクトルの複数成分が「0」であるか否かを判定することで、登録元の生体データ111と照合データ211とが近似しているか否かを判定するようにしても良い。
例えば、近似判定行列生成部312は、判定対象となる生体データがn個の成分を有する情報である場合、すなわち生体データ111がn次元の情報である場合には、n×nの対角行列を生成する。また、近似判定行列生成部312は、n×nの対角行列に、n+1行目の各成分が「0」の行ベクトルを付加する。そして、近似判定行列生成部312は、n次元の乱数ベクトルと鍵112の閾値を合わせた列ベクトルをn+1列目に付加する。そして、近似判定行列生成部312は、n+2行目の各成分が「0」の行ベクトルを付加する。そして、近似判定行列生成部312は、n+2次元の乱数ベクトルをn+2列目に付加した(n+2)×(n+2)の行列を生成する。
さらに、近似判定行列生成部312は、n+3行目の各成分が「0」の行ベクトルを付加する。そして、近似判定行列生成部312は、n+3次元の乱数ベクトルをn+3列目に付加した(n+3)×(n+3)の近似判定行列331を生成するようにしても良い。
すると、秘匿データ照合装置3は、実施例と同様の処理を行うことで、近似判定行列331を法としたn+3次元の剰余ベクトルを算出する。そして、秘匿データ照合装置3は、剰余ベクトルのn+2次元目からn+3次元目までの成分が全て「0」であるか否かを判定することで、近似判定をすることができる。これにより、秘匿データ照合装置3は、近似判定の精度を向上させることができる。なお、同様に、近似判定行列生成部312は、(n+m)×(n+m)(mは3より大きい自然数)の近似判定行列331を生成するようにすれば、近似判定の精度をさらに向上させることができる。
また、実施例では、秘匿データ照合装置3は、生体データ111の近似判定に用いる場合を説明した。しかしながら、秘匿データ照合装置3は、これに限定されるものではなく、機密文章間の秘匿類似判定に用いることができる。例えば、クライアント端末1は、機密文章から特徴を有する文字や文章部分を抽出し、抽出した部分の特徴量を示す特徴量ベクトルを生成する。そして、クライアント端末1は、実施例と同様の処理を行うことで、生成した特徴量ベクトルと鍵を秘匿化した秘匿ベクトルを生成し、秘匿データ照合装置3のデータベース330に登録する。そして、秘匿データ照合装置3は、実施例と同様の処理を行うことで、クライアント端末2によって生成された、照合したい特徴量ベクトルを秘匿化した秘匿ベクトルと登録した秘匿ベクトルとを照合するようにすれば良い。
また、秘匿データ照合装置3は、既知のパーソナルコンピュータ、ワークステーションなどの情報処理装置に、上記した登録部31および照合判定部32などの各機能を搭載することによって実現することができる。
また、図示した装置の各構成要素は、必ずしも物理的に図示の如く構成されていることを要しない。すなわち、装置の分散・統合の具体的態様は図示のものに限られず、その全部または一部を、各種の負荷や使用状況等に応じて、任意の単位で機能的または物理的に分散・統合して構成することができる。例えば、乱数生成部311と近似判定行列生成部312とを1個の部として統合しても良い。一方、近似判定行列生成部312を、近似範囲を示す閾値と鍵の閾値を行列に設定する第1の設定部と、乱数を設定する第2の設定部とを分散しても良い。また、データベース330を秘匿データ照合装置3の外部装置として接続するようにしても良いし、ネットワーク経由で接続するようにしても良い。
また、上記実施例で説明した各種の処理は、あらかじめ用意されたプログラムをパーソナルコンピュータやワークステーションなどのコンピュータで実行することによって実現することができる。そこで、以下では、図1に示した秘匿データ照合装置3と同様の機能を実現する秘匿データ照合プログラムを実行するコンピュータの一例を説明する。図5は、秘匿データ照合プログラムを実行するコンピュータの一例を示す図である。
図5に示すように、コンピュータ200は、各種演算処理を実行するCPU203と、ユーザからのデータの入力を受け付ける入力装置215と、表示装置209を制御する表示制御部207とを有する。また、コンピュータ200は、記憶媒体からプログラムなどを読取るドライブ装置213と、ネットワークを介して他のコンピュータとの間でデータの授受を行う通信制御部217とを有する。また、コンピュータ200は、各種情報を一時記憶するメモリ201と、HDD205を有する。そして、メモリ201、CPU203、HDD205、表示制御部207、ドライブ装置213、入力装置215、通信制御部217は、バス219で接続されている。
ドライブ装置213は、例えばリムーバブルディスク211用の装置である。HDD205は、秘匿データ照合プログラム205aおよび秘匿データ照合関連情報205bを記憶する。
CPU203は、秘匿データ照合プログラム205aを読み出して、メモリ201に展開し、プロセスとして実行する。かかるプロセスは、秘匿データ照合装置3の各機能部に対応する。秘匿データ照合関連情報205bは、近似判定行列331、秘匿データ332に対応する。そして、例えばリムーバブルディスク211が、秘匿データ照合プログラム205aなどの各情報を記憶する。
なお、秘匿データ照合プログラム205aについては、必ずしも最初からHDD205に記憶させておかなくても良い。例えば、コンピュータ200に挿入されるフレキシブルディスク(FD)、CD−ROM、DVDディスク、光磁気ディスク、ICカード等の「可搬用の物理媒体」に当該プログラムを記憶させておく。そして、コンピュータ200がこれらから秘匿データ照合プログラム205aを読み出して実行するようにしても良い。
1,2 クライアント端末
3 秘匿データ照合装置
9 秘匿データ照合システム
11 登録依頼部
111 生体データ
112 鍵
12 秘匿データ生成部
21 照合依頼部
211 照合データ
22 秘匿データ生成部
31 登録部
311 乱数生成部
312 近似判定行列生成部
313 近似判定行列登録部
314 秘匿データ登録部
32 照合判定部
321 照合依頼受付部
322 演算部
323 近似判定部
324 鍵出力部
33 記憶部
330 データベース
331 近似判定行列
332 秘匿データ

Claims (5)

  1. 第1のデータと第2のデータとが近似しているかを判定するための閾値と鍵データに関する閾値とを対角成分とする行列に乱数ベクトルを最終列として付加して生成された判定行列であって自装置を搭載するシステム毎に異なる判定行列の行ベクトルの第1の一次結合と、第1の乱数とに基づいて、前記第1のデータと鍵データとを秘匿して得られた第1の秘匿ベクトルを記憶する記憶部と、
    前記判定行列の行ベクトルの第2の一次結合と、第2の乱数とに基づいて、前記第2のデータを秘匿して得られた第2の秘匿ベクトルを取得する取得部と、
    前記記憶部に記憶された第1の秘匿ベクトルと、前記取得部によって取得された第2の秘匿ベクトルとの差分から、前記判定行列を法とした際の剰余である剰余ベクトルを算出する算出部と、
    前記算出部によって算出された剰余ベクトルに基づいて、前記第1のデータと前記第2のデータとが近似しているか否かを判定する判定部と、
    前記判定部による判定の結果、前記第1のデータと前記第2のデータとが近似していると判定された場合に、前記剰余ベクトルから鍵データを抽出する抽出部と
    を有することを特徴とする秘匿データ照合装置。
  2. 前記取得部は、前記第1の秘匿ベクトルを生成する際に用いられた第1の一次結合と異なる第2の一次結合と、前記第2の乱数とに基づいて生成された前記第2の秘匿ベクトルを取得する
    ことを特徴とする請求項1に記載の秘匿データ照合装置。
  3. 前記抽出部によって抽出された鍵データを、前記第2のデータの判定依頼元に対して出力する出力部
    を有することを特徴とする請求項1または請求項2に記載の秘匿データ照合装置。
  4. 第1のデータと第2のデータとが近似しているかを判定するための閾値と鍵データに関する閾値とを対角成分とする行列に乱数ベクトルを最終列として付加して生成された判定行列であって自装置を搭載するシステム毎に異なる判定行列の行ベクトルの第1の一次結合と、第1の乱数とに基づいて、前記第1のデータと鍵データとを秘匿して得られた第1の秘匿ベクトルを記憶部に登録し、
    前記判定行列の行ベクトルの第2の一次結合と、第2の乱数とに基づいて、前記第2のデータを秘匿して得られた第2の秘匿ベクトルを取得し、
    前記記憶部に記憶された第1の秘匿ベクトルと、前記取得する処理によって取得された第2の秘匿ベクトルとの差分から、前記判定行列を法とした際の剰余である剰余ベクトルを算出し、
    前記算出する処理によって算出された剰余ベクトルに基づいて、前記第1のデータと前記第2のデータとが近似しているか否かを判定し
    前記判定する処理による判定の結果、前記第1のデータと前記第2のデータとが近似していると判定された場合に、前記剰余ベクトルから鍵データを抽出する
    処理をコンピュータに実行させることを特徴とする秘匿データ照合プログラム。
  5. コンピュータが、
    第1のデータと第2のデータとが近似しているかを判定するための閾値と鍵データに関する閾値とを対角成分とする行列に乱数ベクトルを最終列として付加して生成された判定行列であって自装置を搭載するシステム毎に異なる判定行列の行ベクトルの第1の一次結合と、第1の乱数とに基づいて、前記第1のデータと鍵データとを秘匿して得られた第1の秘匿ベクトルを記憶部に登録し、
    前記判定行列の行ベクトルの第2の一次結合と、第2の乱数とに基づいて、前記第2のデータを秘匿して得られた第2の秘匿ベクトルを取得し、
    前記記憶部に記憶された第1の秘匿ベクトルと、前記取得する処理によって取得された第2の秘匿ベクトルとの差分から、前記判定行列を法とした際の剰余である剰余ベクトルを算出し、
    前記算出する処理によって算出された剰余ベクトルに基づいて、前記第1のデータと前記第2のデータとが近似しているか否かを判定し、
    前記判定する処理による判定の結果、前記第1のデータと前記第2のデータとが近似していると判定された場合に、前記剰余ベクトルから鍵データを抽出する
    各処理を実行することを特徴とする秘匿データ照合方法。
JP2013145874A 2013-07-11 2013-07-11 秘匿データ照合装置、秘匿データ照合プログラムおよび秘匿データ照合方法 Active JP6142704B2 (ja)

Priority Applications (5)

Application Number Priority Date Filing Date Title
JP2013145874A JP6142704B2 (ja) 2013-07-11 2013-07-11 秘匿データ照合装置、秘匿データ照合プログラムおよび秘匿データ照合方法
US14/317,241 US9455984B2 (en) 2013-07-11 2014-06-27 Secret data matching device, secret data matching method, and recording medium
EP14174932.5A EP2824602B1 (en) 2013-07-11 2014-06-30 Secret data matching device, secret data matching program, and secret data matching method
KR1020140084388A KR101604539B1 (ko) 2013-07-11 2014-07-07 은닉 데이터 대조 장치, 은닉 데이터 대조 방법 및 기록 매체
CN201410323274.4A CN104281798B (zh) 2013-07-11 2014-07-08 秘密数据匹配装置以及秘密数据匹配方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2013145874A JP6142704B2 (ja) 2013-07-11 2013-07-11 秘匿データ照合装置、秘匿データ照合プログラムおよび秘匿データ照合方法

Publications (2)

Publication Number Publication Date
JP2015019292A JP2015019292A (ja) 2015-01-29
JP6142704B2 true JP6142704B2 (ja) 2017-06-07

Family

ID=51136321

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2013145874A Active JP6142704B2 (ja) 2013-07-11 2013-07-11 秘匿データ照合装置、秘匿データ照合プログラムおよび秘匿データ照合方法

Country Status (5)

Country Link
US (1) US9455984B2 (ja)
EP (1) EP2824602B1 (ja)
JP (1) JP6142704B2 (ja)
KR (1) KR101604539B1 (ja)
CN (1) CN104281798B (ja)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6281425B2 (ja) 2014-06-27 2018-02-21 富士通株式会社 秘匿データ照合装置、秘匿データ更新プログラムおよび秘匿データ更新方法
JP6524899B2 (ja) * 2015-12-02 2019-06-05 富士通株式会社 秘匿データ照合装置、秘匿データ照合プログラムおよび秘匿データ照合方法
CN107294943A (zh) * 2016-04-13 2017-10-24 天津工业大学 一种具有安全威胁监测能力的生物特征模板保护方法
CN110199338B (zh) * 2017-01-20 2022-09-20 日本电信电话株式会社 秘密计算系统、秘密计算装置、秘密计算方法、记录介质
KR102289419B1 (ko) * 2017-06-26 2021-08-12 한국전자통신연구원 바이오메트릭을 이용한 사용자의 인증 방법 및 장치
KR20200100481A (ko) * 2019-02-18 2020-08-26 삼성전자주식회사 생체 정보를 인증하기 위한 전자 장치 및 그의 동작 방법
CN112910933B (zh) * 2021-05-07 2021-07-13 鹏城实验室 认证方法、认证设备以及验证设备

Family Cites Families (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2745136B1 (fr) * 1996-02-15 1998-04-10 Thoniel Pascal Procede et dispositif d'identification securisee entre deux terminaux
US6047069A (en) * 1997-07-17 2000-04-04 Hewlett-Packard Company Method and apparatus for preserving error correction capabilities during data encryption/decryption
JP3688099B2 (ja) * 1997-07-22 2005-08-24 富士通株式会社 電子情報配布方法及び記録媒体
WO2008126516A1 (ja) * 2007-04-10 2008-10-23 Naoki Suehiro 送信方法、送信装置、受信方法及び受信装置
US8300742B1 (en) * 2007-11-21 2012-10-30 Bromberg Matthew C Systems and methods for channel based beamforming for stacked carrier multiple access
JP4929136B2 (ja) 2007-11-27 2012-05-09 株式会社日立製作所 生体認証方法、装置およびシステム
JP4548529B2 (ja) * 2008-08-18 2010-09-22 ソニー株式会社 情報記録装置、撮像装置、情報記録方法およびプログラム
US8626184B2 (en) * 2009-04-29 2014-01-07 Blackberry Limited Method and apparatus for reducing transmission of location information
US20100329448A1 (en) * 2009-06-30 2010-12-30 Rane Shantanu D Method for Secure Evaluation of a Function Applied to Encrypted Signals
KR101226151B1 (ko) 2009-08-17 2013-01-24 한국전자통신연구원 바이오 등록 및 인증 장치와 그 방법
JP5270514B2 (ja) * 2009-10-23 2013-08-21 株式会社日立製作所 生体認証方法及び計算機システム
US8903083B2 (en) * 2010-08-16 2014-12-02 International Business Machines Corporation Fast evaluation of many polynomials with small coefficients on the same point
CN102609677A (zh) * 2011-01-21 2012-07-25 北京数字指通软件技术有限公司 一种基于指纹和纠错码的生物特征密码系统
EP2680488B1 (en) 2011-02-22 2019-08-21 Mitsubishi Electric Corporation Similarity calculation system, similarity calculation device, computer program, and similarity calculation method
US8776250B2 (en) * 2011-07-08 2014-07-08 Research Foundation Of The City University Of New York Method of comparing private data without revealing the data
US9197637B2 (en) * 2011-07-08 2015-11-24 Research Foundation Of The City University Of New York Method of comparing private data without revealing the data
CN102831437A (zh) * 2012-08-08 2012-12-19 中国科学院自动化研究所 一种基于样本质量的生物特征识别系统性能预测方法
JP6011259B2 (ja) 2012-11-12 2016-10-19 富士通株式会社 近傍判定方法、近傍判定装置、近傍判定システム、および近傍判定プログラム

Also Published As

Publication number Publication date
CN104281798A (zh) 2015-01-14
KR101604539B1 (ko) 2016-03-17
KR20150007960A (ko) 2015-01-21
US20150304320A1 (en) 2015-10-22
JP2015019292A (ja) 2015-01-29
CN104281798B (zh) 2017-06-23
EP2824602A1 (en) 2015-01-14
EP2824602B1 (en) 2015-10-07
US9455984B2 (en) 2016-09-27

Similar Documents

Publication Publication Date Title
JP6142704B2 (ja) 秘匿データ照合装置、秘匿データ照合プログラムおよび秘匿データ照合方法
JP6281425B2 (ja) 秘匿データ照合装置、秘匿データ更新プログラムおよび秘匿データ更新方法
JP6524899B2 (ja) 秘匿データ照合装置、秘匿データ照合プログラムおよび秘匿データ照合方法
Wu et al. A face based fuzzy vault scheme for secure online authentication
US11227037B2 (en) Computer system, verification method of confidential information, and computer
JP2010108365A (ja) 生体認証方法およびシステム
US11741263B1 (en) Systems and processes for lossy biometric representations
Maiorana et al. User adaptive fuzzy commitment for signature template protection and renewability
Delgado-Mohatar et al. Blockchain meets biometrics: Concepts, application to template protection, and trends
US9009486B2 (en) Biometric authentication apparatus, biometric authentication method, and computer readable storage medium
Nguyen et al. A new biometric template protection using random orthonormal projection and fuzzy commitment
Wang et al. A novel template protection scheme for multibiometrics based on fuzzy commitment and chaotic system
KR101077975B1 (ko) 생체 정보 퍼지 볼트 생성방법 및 생체 정보 퍼지 볼트를 이용한 인증 방법
Bedad et al. Multi-biometric template protection: an overview
Velciu et al. Bio-cryptographic authentication in cloud storage sharing
JP2019208133A (ja) 生体認証システム及び生体認証方法
US11936790B1 (en) Systems and methods for enhanced hash transforms
JPWO2004088591A1 (ja) 照合装置及び登録装置
JP2007234054A (ja) 登録装置
Shahim Cancelable biometrics using hand geometry-based steganographic techniques
KR100738297B1 (ko) 대조 장치 및 등록 장치
Khasikyan A Modified Fuzzy Vault Scheme for Increased Accuracy

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20160405

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20170323

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20170424

R150 Certificate of patent or registration of utility model

Ref document number: 6142704

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150