JP7294431B2 - 情報照合システム、クライアント端末、サーバ、情報照合方法、及び情報照合プログラム - Google Patents

情報照合システム、クライアント端末、サーバ、情報照合方法、及び情報照合プログラム Download PDF

Info

Publication number
JP7294431B2
JP7294431B2 JP2021546103A JP2021546103A JP7294431B2 JP 7294431 B2 JP7294431 B2 JP 7294431B2 JP 2021546103 A JP2021546103 A JP 2021546103A JP 2021546103 A JP2021546103 A JP 2021546103A JP 7294431 B2 JP7294431 B2 JP 7294431B2
Authority
JP
Japan
Prior art keywords
data
proof
commitment
authentication
registration
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
JP2021546103A
Other languages
English (en)
Other versions
JPWO2021053749A1 (ja
JPWO2021053749A5 (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.)
NEC Corp
Original Assignee
NEC Corp
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 NEC Corp filed Critical NEC Corp
Publication of JPWO2021053749A1 publication Critical patent/JPWO2021053749A1/ja
Publication of JPWO2021053749A5 publication Critical patent/JPWO2021053749A5/ja
Application granted granted Critical
Publication of JP7294431B2 publication Critical patent/JP7294431B2/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/3218Cryptographic 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 proof of knowledge, e.g. Fiat-Shamir, GQ, Schnorr, ornon-interactive zero-knowledge proofs
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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/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

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • General Health & Medical Sciences (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Biodiversity & Conservation Biology (AREA)
  • Biomedical Technology (AREA)
  • Health & Medical Sciences (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Storage Device Security (AREA)

Description

本発明は、情報照合システム、クライアント端末、サーバ、情報照合方法、及び情報照合プログラムに関する。
個人認証は、被登録者と被認証者の同一性を確認する手段である。事前に保存される被登録者に関する情報と、認証の都度取得される被認証者に関する情報を突き合わせることによって認証が実施される。
個人認証の一手法である生体認証では顔や指紋や虹彩などの身体的特徴などを利用して認証を行う。より具体的には、生体から特徴量と呼ばれるデータを抽出して認証に用いる。生体から抽出される特徴量は抽出の都度少しずつ異なる。そのため、認証時には、被登録者から抽出された特徴量と、被認証者から抽出された特徴量とを比較し、それらが十分に類似していると認められれば認証成功となる。類似度の判定方法は特徴量抽出の手法に依存するが、一般的な手法では、特徴量はベクトルの形で表され、類似度は2つの特徴量の内積(正規化相関)、ユークリッド距離、ハミング距離等によって算出され、類似度が予め定められた範囲に含まれる場合に十分に類似していると判定する。
パスワード等の記憶による認証やICカード等の所持による認証と比べ、認証情報を入力するために記憶や所持などのユーザの能動的な準備が不要である利便性の高さや、認証情報を他人に使用されにくい安全性の高さなどが生体認証のメリットである。特徴量抽出法などの技術の進展や生体情報を採取できるセンサ機能(例えばカメラなど)を搭載した機器(例えばスマートフォン、タブレット端末など)の普及に伴い、近年、個人認証の手段として、生体認証の利用が進んでいる。
また、生体認証技術においてゼロ知識証明を用いた例が知られている。例えば、特許文献1では、生体認証システム等において、認証サーバに対し、自分が正しい変換パラメータを知っていることを、変換パラメータに関する知識を与えずに証明する変換パラメータ証明機能が開示されている。また、特許文献1では、このような証明を、ゼロ知識証明などを用いて実現可能なことが開示されている(例えば、段落[0042]及び段落[0051]参照)。
特開2008-092413号公報
Taher ElGamal. "A public key cryptosystem and a signature scheme based on discrete logarithms." IEEE transactions on information theory 31.4 (1985): 469-472.
加法準同型公開鍵暗号方式などの暗号方式を利用した情報照合システムでは、入力データを暗号化により秘匿しているため、生体から生成されていないデータを用いた攻撃が想定される。このような生体から生成されていないデータから生成した登録データ又は認証データを用いた攻撃に対して安全な方式が要望される。
例えば、生体から生成されていないデータを入力として、登録するためのデータを生成することや、認証を受けるためのデータを生成することも可能である。上述の加法準同型公開鍵暗号方式を利用した情報照合システム生体では、入力データを暗号化により秘匿していることから、上述の攻撃の例として、生体から生成されていないデータを用いて登録データを生成することにより、多くの生体特徴量と一致して認証受理と判定されうる登録データを生成すること、及び、認証時に利用された生体特徴量に関する情報を取得又は漏洩させるよう試みることなどの攻撃も想定される。また、生体から生成されていないデータを入力として認証を受けるデータを生成することにより、認証受理と判定され得るデータ(認証されるデータ)を生成することや、登録されている生体特徴量に関する情報を取得又は漏洩させるよう試みる攻撃も想定される。
また、このような課題は、生体情報に限らず、予め定められたデータ空間とは別のデータ空間のデータから生成した登録データ又は認証データを用いた攻撃に対しても同様なことが言える。ここで、データ空間とは、例えば、生体情報など、登録するデータ又は認証されるデータを構成するデータ(値)がとり得る値の範囲、性質などをいう。
本発明の目的は、情報の照合において、予め定められたデータ空間とは別のデータ空間のデータから生成した登録データ又は認証データを用いた攻撃に対しても安全な情報照合システム、クライアント端末、サーバ、情報照合方法、及び情報照合プログラムを提供することにある。一例として、本発明の目的のひとつは、生体情報を利用した情報の照合において、生体から生成されていないデータを用いた攻撃に対して安全な方式を提供することにある。
本発明の情報照合システムは、登録のための第1入力データの第1コミットメントと、第1入力データが予め定められた入力データ空間に含まれていることを示す第1証明データとを生成する登録データ生成装置と、第1コミットメントと第1証明データの一部又は全部を記憶する認証用データ記憶装置と、第1コミットメントと第1証明データの検証を行う登録データ検証装置と、第1コミットメントと第1証明データの一部又は全部を登録データとして記憶する登録データ記憶装置と、認証されるための第2入力データの第2コミットメントと、第2入力データが上記予め定められた入力データ空間に含まれていること及び第2入力データと上記登録データ記憶装置の登録データの類似度が予め定められた受理範囲に含まれていることを示す第2証明データとを生成する認証データ生成装置と、第2コミットメントと第2証明データの検証を行う認証データ検証装置と備える。
本発明のクライアント端末は、登録のための第1入力データの第1コミットメントと、第1入力データが予め定められた入力データ空間に含まれていることを示す第1証明データとを含む登録データを生成する登録データ生成部と、第1コミットメントと第1証明データの一部又は全部を記憶する認証用データ記憶部と、認証されるための第2入力データの第2コミットメントと、第2入力データが予め定められた入力データ空間に含まれていること及び第2入力データと登録データの類似度が予め定められた受理範囲に含まれていることを示す第2証明データとを生成する認証データ生成部とを備える。
本発明のサーバは、登録のための第1入力データの第1コミットメントと、第1入力データが予め定められた入力データ空間に含まれていることを示す第1証明データとを入力し、第1コミットメントと第1証明データの検証を行う登録データ検証部と、認証されるための第2入力データの第2コミットメントと、第2入力データが予め定められた入力データ空間に含まれていること及び第2入力データと登録データ記憶部の登録データの類似度が予め定められた受理範囲に含まれていることを示す第2証明データと入力し、第2コミットメントと第2証明データの検証を行う認証データ検証部との少なくとも一方を備える。
本発明の情報照合方法は、登録のための第1入力データの第1コミットメントと、第1入力データが予め定められた入力データ空間に含まれていることを示す第1証明データとを生成する登録データ生成処理と、第1コミットメントと第1証明データの一部又は全部を記憶する認証用データ記憶処理と、第1コミットメントと第1証明データの検証を行う登録データ検証処理と、第1コミットメントと第1証明データの一部又は全部を登録データとして記憶する登録データ記憶処理と、認証されるための第2入力データの第2コミットメントと、第2入力データが上記予め定められた入力データ空間に含まれていること及び第2入力データと上記登録データ記憶部の登録データの類似度が予め定められた受理範囲に含まれていることを示す第2証明データとを生成する認証データ生成処理と、第2コミットメントと第2証明データの検証を行う認証データ検証処理とを含む。
本発明の情報照合プログラムは、登録のための第1入力データの第1コミットメントと、第1入力データが予め定められた入力データ空間に含まれていることを示す第1証明データとを生成する登録データ生成処理と、第1コミットメントと第1証明データの一部又は全部を記憶する認証用データ記憶処理と、第1コミットメントと第1証明データの検証を行う登録データ検証処理と、第1コミットメントと第1証明データの一部又は全部を登録データとして記憶する登録データ記憶処理と、認証されるための第2入力データの第2コミットメントと、第2入力データが上記予め定められた入力データ空間に含まれていること及び第2入力データと上記登録データ記憶部の登録データの類似度が予め定められた受理範囲に含まれていることを示す第2証明データとを生成する認証データ生成処理と、第2コミットメントと第2証明データの検証を行う認証データ検証処理とをコンピュータに実行させる。
本発明によると、情報の照合において、登録及び認証のためのデータの一方のデータ空間と、他方のデータ空間が異なる攻撃に対しても安全な情報照合システム、クライアント端末、サーバ、情報照合方法、及び情報照合プログラムを提供することができる。一例として、本発明によると、生体情報を利用した情報の照合において、生体から生成されていないデータを用いた攻撃に対して安全な方式を提供することが可能である。なお、本発明により、当該効果の代わりに、又は当該効果とともに、他の効果が奏されてもよい。
本発明の実施形態に係る情報照合システムの具体的な構成を示すブロック図である。 本実施形態における登録処理のフローチャートである。 本実施形態における照合処理のフローチャートである。 本実施形態における装置のハードウェア構成を示すブロック図である。 本実施形態における情報照合システムの一例を示すブロック図である。 本実施形態におけるクライアント端末の一例を示すブロック図である。 本実施形態におけるサーバの一例を示すブロック図である。
以下、添付の図面を参照して本発明の実施形態を詳細に説明する。なお、本明細書及び図面において、同様に説明されることが可能な要素については、同一の符号を付することにより重複説明が省略され得る。
説明は、以下の順序で行われる。
1.関連技術
2.本発明の実施形態の概要
3.実施形態
3.1.システムの構成
3.2.登録及び照合の動作
3.3.実施例1
3.4.実施例2
4.その他
<<1.関連技術>>
個人認証は、被登録者と被認証者の同一性を確認する手段である。事前に保存される被登録者に関する情報と、認証の都度取得される被認証者に関する情報を突き合わせることによって認証が実施される。
個人認証の一手法である生体認証では顔や指紋や虹彩などの身体的特徴などを利用して認証を行う。より具体的には、生体から特徴量と呼ばれるデータを抽出して認証に用いる。生体から抽出される特徴量は抽出の都度少しずつ異なる。そのため、認証時には、被登録者から抽出された特徴量と、被認証者から抽出された特徴量とを比較し、それらが十分に類似していると認められれば認証成功となる。類似度の判定方法は特徴量抽出の手法に依存するが、一般的な手法では、特徴量はベクトルの形で表され、類似度は2つの特徴量の内積(正規化相関)、ユークリッド距離、ハミング距離等によって算出され、類似度が予め定められた範囲に含まれる場合に十分に類似していると判定する。
パスワード等の記憶による認証やICカード等の所持による認証と比べ、認証情報を入力するために記憶や所持などのユーザの能動的な準備が不要である利便性の高さや、認証情報を他人に使用されにくい安全性の高さなどが生体認証のメリットである。特徴量抽出法などの技術の進展や生体情報を採取できるセンサ機能(例えばカメラなど)を搭載した機器(例えばスマートフォン、タブレット端末など)の普及に伴い、近年、個人認証の手段として、生体認証の利用が進んでいる。
一方で、生体認証には、生涯不変である生体情報はもし漏洩したとしても変更できないというデメリットもある。また、生体特徴量は、欧州の一般データ保護規則や日本の個人情報保護法において、個人情報に該当すると定められている。個人情報に該当するデータは、保管や外部提供等の取扱いに制限がある。また、法令等による制限だけでなく、社会的に受容されるための配慮も求められることが多い。一般に、個人情報保護の観点から、検証者(例えば認証サーバなど)側がユーザの生体情報に関する情報を保持しない生体認証方式が望ましい。その上で、ユーザが持つ端末(例えばスマートフォンなど)への攻撃も考慮し、ユーザの保持する端末がマルウェア等に乗っ取られた場合であっても生体情報が復元できない方式が望ましい。
そこで、生体情報を秘匿して保存し、秘匿したまま認証結果を判定できる生体認証手法が盛んに研究されている。秘匿したままの判定を実現する手段として、加法準同型性を有する公開鍵暗号方式を利用する手法が知られている。
公開鍵暗号方式は、鍵生成アルゴリズム(KeyGen)、暗号化アルゴリズム(Enc)、及び復号アルゴリズム(Dec)の3つのアルゴリズムで構成される。鍵生成アルゴリズムは、セキュリティパラメータと呼ばれる鍵の強度を表すパラメータを用いて、暗号化鍵ek及び復号鍵dkを生成する。この動作は、セキュリティパラメータをκとすると、次式のように表すことができる。
KeyGen(κ)→(ek,dk)
暗号化アルゴリズムは、暗号化鍵ekにより平文のメッセージmを暗号化した結果である暗号文cを生成する。これは次式のように表すことができる。
Enc(ek,m)→c
復号アルゴリズムは、復号鍵dkにより暗号文cを復号した結果であるm'を生成する。これは次式のように表すことができる。
Dec(dk,c)→m'
公開鍵暗号方式は正しく暗号文を復号できる必要がある。すなわち、鍵生成アルゴリズムで生成された任意の暗号化鍵ek及び復号鍵dkのペアに対し、任意のメッセージmを暗号化鍵ekで暗号化した結果である暗号文cを復号鍵dkによって復号した結果m'はmと等しくなる必要がある。すなわち、KeyGen(κ)→(ek,dk)に対し、任意のmについて
Dec(dk,Enc(ek,m))→m
が成り立つ必要がある。
公開鍵暗号方式では、暗号化鍵を持っていれば誰でも暗号化アルゴリズムを実行可能であるが、復号鍵なしでは復号アルゴリズムは実行できない。
準同型性を有する公開鍵暗号方式(以下では、準同型公開鍵暗号と呼ぶ)は、公開鍵暗号の各アルゴリズムに加え、準同型演算アルゴリズム(Hom)を有する。
準同型演算アルゴリズムは、暗号化鍵ekにより、入力された複数の暗号文c、cに対応するメッセージの演算結果の暗号文を生成する。入力できるメッセージが2つである場合、次式のように表すことができる。
Hom(ek,c,c)→c
例えば、加法準同型性を有する公開鍵暗号の場合、メッセージmの暗号化鍵ekによる暗号文cと、メッセージmの暗号化鍵ekによる暗号文cと、から生成される暗号文cはm+mの暗号文である。すなわち、KeyGen(κ)→(ek,dk)に対し、任意のmとmについて、
Enc(ek,m)→c,Enc(ek,m)→c
とすると、
Dec(dk,Hom(ek,c,c))→m+m
が成り立つ。
加法準同型性を有する公開鍵暗号として、楕円曲線Elgamal暗号などが知られている。非特許文献1に開示されている楕円曲線Elgamal暗号の各アルゴリズムは次のように動作する。
鍵生成アルゴリズムは、まず、セキュリティパラメータκを入力として受け取る。次に、κビットの素数qをランダムに選び、楕円曲線E上の位数がqである群の生成元Gを選ぶ。次に、1以上q未満の整数xを一様ランダムに選択し、H=[x]Gとする。最後に、暗号化鍵ek=(κ,q,E,G,H)及び復号鍵dk=(ek,x)を出力する。
暗号化アルゴリズムは、まず、暗号化鍵ek=(κ,q,G,g,H)及びメッセージmを入力として受け取る。次に、1以上q未満の整数rを一様ランダムに選択し、C:=[r]G、C:=[m]G+[r]Hとする。最後に、暗号文c=(C,C)を出力する。
復号アルゴリズムは、まず、復号鍵dk=(ek,x)及び暗号文c=(C,C)を入力として受け取る。次に、M'=C-[x]Cを計算する。最後に、復号結果m'=Dlog(M')を出力する。ただし、Dlogは、Dlog([x]G)=xとなる関数である。
メッセージmの暗号文c=(C,C)=([r]G,[m]G+[r]H)に対し、楕円Elgamal暗号の復号アルゴリズムにより、暗号文cをmに正しく復号できることを、次式によって確認できる。
M'=C-[x]・C=([m]G+[r]H)-[x]・([r]G)=[m]G+[r]([x]・G)-[x]・([r]G)=[m]G
準同型演算アルゴリズムは、まず、暗号化鍵ek=(κ,q,G,g,h)及び第一の暗号文c=(C1,a,C1,b)及び第二の暗号文c=(C2,a,C2,b)を入力として受け取る。次に、C=C1,a+C2,a,C=C1,b+C2,bを計算する。最後に、準同型演算結果c=(C,C)を出力する。
メッセージmの暗号文(C1,a=[r]G,C1,b=[m]G+[r]H)及びメッセージmの暗号文(C2,a=[s]G,C2,b=[m]G+[s]H)に対し、次の2式が成り立つ。
=[r+s]・G
=[m+m]G+[r+s]H
したがって、cはm+mの暗号文であり、楕円曲線Elgamal暗号は加法準同型性を有する。
加法準同型暗号を利用した情報照合システムの概要を以下に説明する。
情報照合システムでは、入力データはn次元自然数ベクトルとする(nは自然数)。つまり、入力データをx=(x1,x2,・・・,xn)とする。また、入力データxと入力データyの類似度をsim(x,y)と表す。一般的に、sim(x,y)は、両データx、yの二乗ユークリッド距離、ハミング距離、正規化相関などが用いられる。これらは加法準同型性を用いて、暗号化したまま計算できることが知られている。
(登録段階)
入力データx=(x1,x2,・・・,xn)の各xi(i=1~n)を加法準同型暗号で暗号化する。すなわち,{Enc(ek,xi)}を生成し、記憶しておく。
(認証段階)
入力データy=(y1,y2,…,yn)の各yi(i=1~n)と、準同型演算Homを用いて、xとyの暗号化類似度Enc(ek,sim(x,y))を計算する。
暗号化類似度Enc(ek,sim(x,y))を復号し、類似度を得ることで、認証受理又は不受理の判定を行う。
ここで、入力データとして生体特徴量を想定すると、多くの生体認証方式では、入力データの空間が予め定められている。すなわち、各xiの値は、予め定められたa以上b以下の自然数であり、xはn次元ベクトルであることが決められている。例えば、類似度をハミング距離とする生体認証方式では、各xiは0又は1であり、次元数nは1024、2048などと決められている。
一方で、加法準同型暗号の平文空間(暗号化できるメッセージの空間)は、セキュリティパラメータにより決められるものであって、入力データの空間と必ずしも一致しない。例えば、類似度をハミング距離とする情報照合システム(例えば生体認証など)では、各xiは0又は1であるが、用いる加法準同型暗号の平文空間は2048ビットの素数qで割った余りの集合であることがしばしば考えられる。
入力データの空間と、暗号方式の平文空間が一致しないことを利用した攻撃に対しても安全なシステムが要望されている。一般に、このような攻撃が行われていることを検知することは困難である。
前述の例では、類似度としてハミング距離を用いた情報照合システムの場合で説明したが、他の類似度メトリック(例えば、二乗ユークリッド距離や正規化相関など)を用いた場合でも、同様の攻撃が可能であることが知られている。また、前述の例では、加法準同型暗号を用いた場合で説明したが、他の準同型暗号(乗法、Somewhat、完全)や線形マスクを用いた場合でも、同様の攻撃に対して安全であることが望ましい。
<<2.本発明の実施形態の概要>>
まず、本発明の実施形態の概要を説明する。
(1)技術的課題
情報の照合において、登録及び認証のためのデータの一方のデータ空間と、他方のデータ空間が異なる攻撃に対しても安全なシステム等が望ましい。
(2)技術的特徴
本発明の実施形態において、例えば、情報照合システムは、登録のための第1入力データの第1コミットメントと、第1入力データが予め定められた入力データ空間に含まれていることを示す第1証明データとを生成する登録データ生成装置と、第1コミットメントと第1証明データの一部又は全部を記憶する認証用データ記憶装置と、第1コミットメントと第1証明データの検証を行う登録データ検証装置と、第1コミットメントと第1証明データの一部又は全部を登録データとして記憶する登録データ記憶装置と、認証されるための第2入力データの第2コミットメントと、第2入力データが予め定められた入力データ空間に含まれていること及び第2入力データと登録データ記憶装置の登録データの類似度が予め定められた受理範囲に含まれていることを示す第2証明データとを生成する認証データ生成装置と、第2コミットメントと第2証明データの検証を行う認証データ検証装置とを備える。
これにより、情報の照合において、登録及び認証のためのデータの一方のデータ空間と、他方のデータ空間が異なる攻撃に対しても安全なシステムが提供される。
なお、上述した技術的特徴は本発明の実施形態の具体的な一例であり、当然ながら、本発明の実施形態は上述した技術的特徴に限定されない。
本発明を実施するための形態について図面を参照して詳細に説明する。尚、各図面及び明細書記載の各実施形態において、同様の構成要素には同一の符号を付与し、説明を適宜省略する。
<<3.実施形態>>
<3.1.システムの構成>
図5は、本実施形態に係る情報照合システム1の一例を示すブロック図である。また、図1は、本実施形態に係る情報照合システム1の具体的な構成を示すブロック図である。
例えば、図5に示すように、情報照合システム1は、例えば、登録データ生成装置100と、登録データ検証装置200と、登録データ記憶装置300と、認証用データ記憶装置400と、認証データ生成装置500と、認証データ検証装置600を有する。ただし、上記各装置は、別々の装置として実装することも可能であり、一部又は全てを同一の装置内に実装することも可能である。
また、例えば、登録データ生成装置100と、認証用データ記憶装置400と、認証データ生成装置500は同一のクライアント端末内に実装し、登録データ検証装置200と、登録データ記憶装置300と、認証データ検証装置600は各サーバに分けて実装することもでき、これにより、クライアント・サーバ型の認証システムを実現することが可能である。
図6は、本実施形態におけるクライアント端末の一例を示すブロック図である。具体例として図6に示すように、クライアント端末2は、登録データ生成装置100と、認証用データ記憶装置400と、認証データ生成装置500とを有する。
図7は、本実施形態におけるサーバの一例を示すブロック図である。図7に示すように、サーバ3は、登録データ検証装置200と認証データ検証装置600のうち、いずれか一方又は両方の装置を有する。なお、サーバ3は、登録データ記憶装置300を含んでもよいし、登録データ記憶装置300と外部接続されていてもよい。
なお、情報照合システム1を構成する登録データ生成装置100、登録データ検証装置200、登録データ記憶装置300、認証用データ記憶装置400、認証データ生成装置500、及び、認証データ検証装置600は、それぞれ、登録データ生成部、登録データ検証部、登録データ記憶部、認証用データ記憶部、認証データ生成部、及び、認証データ検証部と称されてもよく、ひとつ又は複数のノード(装置)が、上述の各部のひとつ又は複数を有してもよい。
登録データ生成装置100は、例えば、コミットメント生成部101と、証明生成部102と、認証用データ生成部103とを有する。コミットメント生成部101は、入力データ(第1入力データ)と、パラメータとを入力し、入力データに基づくコミットメント(第1コミットメント)を生成する。ここで、入力データは、登録するためのデータ(登録データ)であり、例えば生体情報である。ここでの入力データは、本明細書において、第1入力データ又は入力データxとも称される。パラメータは、例えばコミットメントを求める際に用いるパラメータである。入力されるパラメータの種類は予め定められることができる。証明生成部102は、入力データと、パラメータと、生成されたコミットメントとを入力し、入力データが予め定められた入力データ空間に含まれていることを示す証明データ(第1証明データ)を生成する。ここでのパラメータは、例えばゼロ知識証明により証明データを生成する際に用いるパラメータである。入力されるパラメータの種類は予め定められることができる。証明データは、例えば後述するゼロ知識証明による求めることができる。認証用データ生成部103は、生成されたコミットメントと、生成された証明データと、登録データ検証装置200の登録データ生成部から受信した、登録データの識別子(ID)とを入力し、認証用データを生成する。認証用データは、例えば、登録データの識別子(ID)と、上述の入力データ(第1入力データ)のコミットメント(第1コミットメント)を生成する際に用いた乱数等を含むことができる。
登録データ検証装置200は、例えば、証明検証部201と、登録データ生成部202とを有する。証明検証部201は、パラメータと、登録データ生成装置100から受信したコミットメントと、証明データとを入力し、入力データが入力データ空間に含まれていることを検証する。ここで、パラメータは、例えば、入力データが入力データ空間に含まれていることを検証する際に用いるパラメータである。入力されるパラメータの種類は予め定められることができる。登録データ生成部202は、パラメータと、登録データ生成装置100から受信したコミットメントと、証明データと、検証の結果に基づいて、登録データに対する識別子(ID)と、登録データとを生成する。ここで、入力されるパラメータの種類は予め定められることができる。例えば、登録データとして登録するパラメータでもよい。ここで、登録データは、上述の入力データ(第1入力データ)のコミットメント(第1コミットメント)と証明データ(第1証明データ)の一部又は全部を含むことができる。
登録データ記憶装置300は、登録データの識別子(ID)と、登録データとを入力し、それらを対にして(関連づけて)、すなわち(ID、登録データ)を記憶する。
認証用データ記憶装置400は、登録データ生成装置100の認証用データ生成部103が生成した認証用データを受信し、認証用データを記憶する。
認証データ生成装置500は、例えば、認証要求部501と、コミットメント生成部502と、証明生成部503と、認証データ生成部504とを有する。認証要求部501は、認証用データ記憶装置400から受信(抽出)した認証用データに含まれる識別子(ID)を入力し、識別子(ID)を含む認証要求を生成する。コミットメント生成部502は、認証要求に対して認証データ検証装置600から受信したチャレンジと、パラメータと、認証用データと、入力データ(第2入力データ)とを入力し、コミットメント(第2コミットメント)を生成する。ここで、入力データは、認証を受けるデータであり、登録データと照合されるデータであり、例えば生体情報である。ここでの入力データは、本明細書において、第2入力データ又は入力データyとも称される。証明生成部503は、入力データと、パラメータと、コミットメントとを入力し、入力データが入力データ空間に含まれていること、及び、入力データと登録データとの類似度が予め定められた受理範囲に含まれることを示す証明データ(第2証明データ)を生成する。認証データ生成部504は、コミットメントと、証明データとを入力し、認証データを生成する。
認証データ検証装置600は、例えば、チャレンジ生成部601と、証明検証部602と、認証結果生成部603と、を有する。チャレンジ生成部601は、認証データ生成装置500から受信した認証要求を入力する。また、チャレンジ生成部601は、認証要求に含まれる登録データの識別子(ID)に対応した登録データを、登録データ記憶装置300から受信(抽出)し、所定のパラメータと、登録データからチャレンジを生成する。証明検証部602は、パラメータと、認証データ生成装置500から受信した認証データと、チャレンジとを入力する。また、証明検証部602は、認証データに含まれる証明データを検証し、検証結果を生成する。認証結果生成部603は、検証結果に基づき認証結果を生成する。
<3.2.登録及び照合の動作>
次に、図2及び図3を参照して、本実施形態における情報照合システム1の動作について説明する。図2は、入力データの登録の動作を表し、図3は、入力データと登録データの照合の動作を表す。なお、本実施形態において、データの送付(送信)及び受信は、各装置間で直接的に送受信されてもよいし、一方の装置が適宜の記憶部にデータを記憶し、他方の装置がデータを読み出すなど間接的な手法でデータを伝達してもよい。
初めに、登録の動作を説明する。まず、登録データ生成装置100のコミットメント生成部101は、上述の入力データとパラメータを取得する(ステップA1)。なお、パラメータは、セキュリティパラメータ、受理範囲、及び、入力データのとりうる範囲(空間)を含む公開情報であり、その生成手段は特に限定されない。例えば、登録データ検証装置200又は認証データ検証装置600がパラメータ生成機能を有していてもよいし、情報照合システム1の外部で生成してもよい。
コミットメント生成部101は、上述の入力データと、パラメータとを入力し、コミットメントを生成する(ステップA2)。証明生成部102は、上述の入力データと、パラメータと、コミットメントを入力し、入力データが予め定められた入力データ空間に含まれていることを示す証明データを生成し、コミットメントと証明データを登録データ検証装置200に送付する(ステップA3)。
登録データ検証装置200の証明検証部201は、コミットメントと証明データを登録データ生成装置から受信する(ステップA3)。証明検証部201は、証明データの検証を行う(ステップA4)。例えば、証明検証部201は、所定のパラメータと、コミットメントと、証明データを入力する。証明検証部201は、証明データの検証を行い、検証が失敗(不受理)の場合、処理を停止する。一方、証明検証部201は、検証が成功(受理)の場合、登録データの識別子(ID)を生成し、登録データ生成装置100に送付する。ここで、識別子(ID)は、登録データ固有の識別子であり、生成手段は限定されない。例えば、識別子(ID)の生成の度に増加するカウンター値であってもよいし、乱数値であってもよい。
登録データ生成部202は、コミットメント及び証明データを入力し、登録データを生成する(ステップA5)。登録データ生成部202は、識別子(ID)及び登録データを、登録データ記憶装置300に送付する(ステップA6)。識別子(ID)及び登録データを受信した登録データ記憶装置300は、(ID,登録データ)の対を記憶する(ステップA7)。
登録データ生成装置100の認証用データ生成部103は、ステップA4において登録データ検証装置200から送信された識別子(ID)と、コミットメントと、証明データから、認証用データを生成する(ステップA8)。認証用データ生成部103は、認証用データを認証用データ記憶装置400に送付する(ステップA9)。認証用データを受信した認証用データ記憶装置400は、認証用データを記憶する(ステップA10)。
次に、照合の動作を、図3を用いて説明する。まず、認証データ生成装置500の認証要求部501は、入力データyと、パラメータとを入力し、さらに認証用データ記憶装置400から認証用データを受信する(ステップB1)。認証要求部501は、入力データyと、パラメータと、認証用データから認証要求を生成し、生成された認証要求を認証データ検証装置600に送付する(ステップB2)。
認証データ検証装置600のチャレンジ生成部601は、認証要求に含まれる識別子(ID)に対応した登録データを登録データ記憶装置300から受信(抽出)し、さらに、パラメータを入力してチャレンジを生成し、チャレンジを認証データ生成装置500に送付する(ステップB3)。
認証データ生成装置500のコミットメント生成部502は、チャレンジと、入力データyと、パラメータと、認証用データを入力し、コミットメントを生成する(ステップB4)。証明生成部503は、コミットメントと、チャレンジと、入力データyと、パラメータと、認証用データを入力し、入力データyが予め定められた入力データの空間に含まれることと、及び、入力データyと登録データxの類似度が受理範囲に含まれることを示す証明データを生成する(ステップB5)。認証データ生成部504は、コミットメントと、証明データを入力し、認証データを生成し、認証データを認証データ検証装置600に送付する(ステップB6)。
認証データ検証装置600の証明検証部602は、認証データと、登録データと、チャレンジと、パラメータを入力し、認証データに含まれる証明データの検証を行い、検証結果を生成する(ステップB7)。認証結果生成部603は、検証結果を入力し、認証結果を生成し、出力する(ステップB8)。
<3.3.実施例1>
次に、本実施形態における情報照合システム1の動作の実施例1について説明する。本実施例では、類似度として正規化相関を用いる場合について説明する。入力データは以下の条件を満たすことを仮定する。
(1) 入力データはn次元整数ベクトルである。すなわち、x=(x1,x2,・・・,xn)であり、各xiは整数とする。
(2) 各xiはa以上b以下の整数とする。すなわち、a≦xi≦bを満たす。ここで、a、bは予め定められた値であり、例えば整数でもよい。
(3) xは正規化されている。すなわち、すべての入力データx=(x1,x2,・・・,xn)に対して、(x1)+(x2)+…+(xn)=A(Aは0以上の定数)を満たす。
(4) 入力データx=(x1,x2,・・・,xn)と入力データy=(y1,y2,・・・,yn)が認証受理となるならば、xとyの内積<x,y>=x1y1+x2y2+…+xnynが受理範囲Θに含まれる。
(5) 入力データx=(x1,x2,・・・,xn)と入力データy=(y1,y2,・・・,yn)が認証不受理となるならば、xとyの内積<x,y>=x1y1+x2y2+…+xnynが受理範囲Θに含まれない。
さらに、本実施例では、Fujisaki-Okamotoコミットメントを利用する。コミットメント(Commit,Open)とは、コミットメントフェーズとオープンフェーズの2つからなるプロトコルである。コミットメントフェーズでは、送信者はある値vと乱数rを用いて、コミットメントCom(v,r)を生成し、受信者に送付する。オープンフェーズでは、送信者はv及びrを受信者に送ることにより、コミットメントCom(v,r)をオープンする。ここで、コミットメントは秘匿性及び束縛性を満たすことが望ましい。秘匿性とは、コミットメントCom(v,r)からvに関する情報が得られないという性質である。束縛性とは、Com(v,r)を、v'≠vとしてオープンすることができない、という性質である。Fujisaki-Okamotoコミットメントは、秘匿性及び束縛性を満たすコミットメント方式であることが知られている。
Fujisaki-Okamotoコミットメントを説明する。まず、セキュリティパラメータとしてk,l,t,sが与えられる。現時点では安全性のために、kは1024以上、lは80以上、tは160以上、sは80以上の値が推奨されるが、これら以外の値でもよい。また、パラメータとして、g,h,Nが与えられている。ここでNはkビットの素数p,qの積である。g,hはそれぞれNで割った余りの集合Zからランダムに選ばれた元であり、g=h^x mod Nを満たすxや、h=g^y mod Nを満たすyは公開されていないこととする。ここで,g^xはgのx乗を意味し、mod NはNの剰余を意味する。
(コミットメントフェーズ)
入力をvとし、Com(v,r)=g^v・h^r mod Nをコミットメントとする。
(オープンフェーズ)
v,rを送付する。
次に、本実施例で用いるゼロ知識証明について説明する。まず、ゼロ知識証明とは、ある人(証明者)が他の人(検証者)に、ある命題が真であることを証明する際に、真であること以外の情報を漏らさずに証明する手法をいう。本実施例では、知識のゼロ知識証明、範囲のゼロ知識証明、及び、2乗のゼロ知識証明を用いる。
例として、離散対数の知識のゼロ知識証明を説明する。ここで、証明者はg^x mod Nに対する離散対数xを知っているものとし、g^xを知る検証者にxの知識をゼロ知識証明するものとする。Hをハッシュ関数とする。
(証明段階)
(1) ランダムにwを[1,2^{l+t+s}-1]から選ぶ。
(2) c=H(g^w)を計算する。
(3) D=w+c・sを計算する。
(4) (c,D)を検証者に送る。
(検証段階)
(1) c=H(g^D・(g^x)^{-c})が成り立つことを確認する。成り立っていたら受理、成り立っていなかったら不受理とする。
次に、Fujisaki-Okamotoコミットメントを用いた2乗のゼロ知識証明及び範囲のゼロ知識証明を説明する。
まず、2乗のゼロ知識証明を説明する。証明者は、Com(x^2,r)=g^{x^2}・h^rがxの2乗のコミットメントであることを、Com(x^2,r)を知る検証者にゼロ知識証明する。Hをハッシュ関数とする。
(証明段階)
(1) 乱数r2をランダムに[-2^s・N+1,2^s・N-1]から選び、F=Com(x,r2)=g^{x}・h^{r2} mod Nを計算する。
(2) r3=r-r2・xを計算し、E=F^x・h^{r3} mod Nを計算する。
(3) wを[1,2^{l+t}・N-1]から、ηFを[1,2^{l+t+s}・N-1]から、ηEを[1,2^{l+t+s}・N-1]からそれぞれランダムに選び、WF=g^{w}・h^{ηF} mod N、WE=F^{w}・h^{ηE} mod Nを計算する。さらに、c=H(WF||WE)を計算し、D=w+c・x、DF=ηF+c・r2、DE=ηE+c・r3を計算する。
(4) (F,c,D,DF,DE)を検証者に送付する。
(検証段階)
(1) c=H(g^D・h^{DF}F^{-c} mod N||F^{D}・h^{DE}・E^{-c} mod N)を確認する。等号が成り立っていたら受理、成り立っていなかったら不受理とする。
次に、範囲のゼロ知識証明を説明する。証明者はE=Com(x,r)=g^x・h^r mod Nがa≦x≦bのコミットメントであることを、Com(x,r)及びa,bを知る検証者にゼロ知識証明する。なお、Hをハッシュ関数とする。floor(x)をxの小数点以下切り捨てを意味する関数とする。
(証明段階)
(1) xの知識のゼロ知識証明を行う。
(2) E1=E/g^a mod NとE2=g^b/E mod Nを計算する。また,x1=x-a,x2=b-xとする。
(3) x11=floor(√(x1))、x12=x1-(x11)^2、x21=floor(√(x2))、x22=x2-(x21)^2とする。
(4) r11とr21を[-2^s・N+1,2^s・N-1]から,それぞれランダムに選ぶ。r12=r-r11,r22=-r-r21とする。
(5) E11=Com((x11)^2,r11)、E12=Com((x12),r12)、E21=Com((x21)^2,r21)、E22=Com((x22)^2,r22)とする。
(6) E11,E21を検証者に送る。検証者は、E12=E1/E11、E22=E2/E21を計算する。
(7) E11とE21がそれぞれx11,x21の二乗であることを、二乗のゼロ知識証明を用いて証明する。
(8) w1,w2を[0,2^{t+l}・2√(b-a)]、η1,η2を[-2^{t+l+s}N+1,2^{t+l+s}N-1]からランダムに選ぶ。W1=g^{w1}・h^{η1} mod N,W2=g^{w2}・h^{η2} mod Nを計算する。
(9) c=H(W1,W2)を計算する。
(10) D11=w1+x12・c,D12=η1+r12・c,D21=W2+x22・c,D22=η2+r22・cを計算し、(c,D11,D12,D21,D22)を検証者に送付する。
(検証段階)
(1) 証明のステップ1における知識のゼロ知識証明及びステップ7における二乗のゼロ知識証明をそれぞれ検証する。1つでも不受理があれば、検証の処理を停止する。
(2) c=H(g^{D11}・h^{D12}・E12^{-c},g^{D21}・h^{D22}・E22^{-c})が成立することを確認する。等号が成り立っていたら受理の検証結果,成り立っていなかったら不受理の検証結果を出力する。
次に、本実施例の情報照合システム1の登録の動作について説明する。まず、登録データ生成装置100は、入力として、パラメータと入力データx=(x1,x2,・・・,xn)を受け取る(ステップA1)。
コミットメント生成部101は、i=1,…,nに対して、以下の処理を行う。
(1) Ei=Com(xi,ri),Fi=Com((xi)^2,r'i)を生成する(ステップA2)。すなわち、入力データに基づくコミットメントを生成する。ここで、riは、ステップA1で入力されたパラメータに含まれてもよい。
証明生成部102は、i=1,…,nに対して、以下の処理を行う(ステップA3)。
(1) 次の4つのゼロ知識証明を行う。(1)Eiを用いて、xiの知識証明,(2)Eiを用いて、a≦xi≦bであることのゼロ知識証明,(3)Fiを用いて、xiの二乗のゼロ知識証明。
(2) さらに、F1,…,Fnを用いて、(4)Σ(xi)^2=(x1)^2+(x2)^2+…+(xn)^2=Aであることのゼロ知識証明を生成する。これはF1・F2・…・Fn=g^{Σ(xi)^2}・h^{Σ(r'i)}であるため、F1・F2・…・Fn/g^A=h^{Σ(r'i)}となり、Σ(r'i)の知識のゼロ知識証明を用いて実現できる。
証明生成部102は、コミットメントと証明データを、登録データ検証装置200に送付する(ステップA3)。
コミットメントと証明データを受信した登録データ検証装置200の証明検証部201は、上述の(1)から(3)のゼロ知識証明の検証を行う。1つでも検証不受理であれば検証の処理を停止する。一方、すべて検証受理であれば、証明検証部201は、登録データの識別子(ID)を生成し、識別子(ID)を登録データ生成装置100に送付する(ステップA4)。
登録データ生成部202は、コミットメント{Ei}を登録データとする(ステップA5)。登録データ生成部202は、識別子(ID)と登録データの対(ID,登録データ)を登録データ記憶装置300に送付する(ステップA6)。登録データ記憶装置300は、(ID,登録データ)を記憶する(ステップA7)。
ステップA4において識別子(ID)を受信した登録データ生成装置100の認証用データ生成部103は、(ID,{ri})を認証用データとして生成する(ステップA8)。認証用データ生成部103は、認証用データを認証用データ記憶装置400に送付する(ステップA9)。認証用データ記憶装置400は、認証用データを記憶する(ステップA10)。
次に、本実施例の情報照合システム1の照合の動作について説明する。まず、認証データ生成装置500の認証要求部501は、入力データy=(y1,y2,...,yn)と、パラメータとを入力として受け取り、認証用データ記憶装置400から認証用データ(ID,{ri})を受信(抽出)する(ステップB1)。一例として、入力データyともにログインID又はユーザの識別番号等を入力し、これらに関連づけられて記憶された認証用データを読み出してもよい。
認証要求部501は、認証要求として、登録データの識別子(ID)を含むRequestを認証データ検証装置600に送付する(ステップB2)。
チャレンジ生成部601は、識別子(ID)に対応する登録データ(ID、{Ei})を登録データ記憶装置300から受信(抽出)し、ランダムな値cを用いて、{(Ei)^c},h^cをチャレンジとし、チャレンジを認証データ生成装置500に送付する(ステップB3)。
認証データ生成装置500のコミットメント生成部502は、各i=1,2,…,nに対して、以下の処理を行う。
(1) Com(yi,Ri)=g^{yi}・h^{Ri} mod N、Com((yi)^2,R'i)=g^{(yi)^2}・h^{R'i} mod N、Com(xiyi,R”i)=((Ei)^c)^{yi}・h^{R”i} mod Nを計算する(ステップB4)
証明生成部503は、各i=1,2,…,nに対して以下の処理を行う。
(1) (1)Com(yi,Ri)を用いて、yiの知識のゼロ知識証明,(2)Com(yi,Ri)を用いて、a≦yi≦bの範囲のゼロ知識証明,(3)Com((yi)^2,R'i)を用いて、yiの二乗のゼロ知識証明。
(2) 次に、(4)Σ(yi)^2=(y1)^2+(y2)^2+…+(yn)^2=Aであることのゼロ知識証明を生成する。これは登録の時と同様の方法で実現できる。
(3) 次に、Com(xiyi,R”i)を用いて、(5)<x,y>が受理範囲Θに含まれることのゼロ知識証明を生成する。これも登録の時と同様の方法で実現できる。すなわち、Com(x1y1,R”1)・Com(x2y2,R”2)・…・Com(xnyn,R”n)=g^{c<x,y>}(h^{c})^{Σ(yi・ri)+Σ(R”i)}であるため、h^cに対して、Σ(yi・ri)+Σ(R”i)の知識のゼロ知識証明を生成する(ステップB5)。
認証データ生成部504は、コミットメントと(1)から(5)の証明を証明データとして、認証データ検証装置600に送付する(ステップB6)。
証明検証部602は、(1)から(5)の証明を検証し、すべてが受理であれば検証結果を受理にし、そうでなければ検証結果を不受理にする(ステップB7)。ここで、(4)の検証は、Com((y1)^2,R'1)・Com((y2)^2,R'2)・…・Com((yn)^2,R'n)=g^{Σ(yi)^2}・h^{Σ(R'i)} mod Nであるため、Com((y1)^2,R'1)・Com((y2)^2,R'2)・…・Com((yn)^2,R'n)/g^{A}として、ゼロ知識証明の検証を行うことにより実現できる。同様にして(5)の検証は、受理範囲Θに含まれる値θに対して、Com(x1y1,R”1)・Com(x2y2,R”2)・…・Com(xnyn,R”n)/g^{cθ}として、ゼロ知識証明の検証を行うことにより実現できる。
認証結果生成部603は、検証結果が受理であれば、認証結果を受理とし、そうでなければ認証結果を不受理とする(ステップB8)。
なお、本実施例の説明では、x、yのすべての次元に対して、xi(又はyi)がa≦xi≦bであることを証明しているが、その一部(例えば半分など)を証明するのでもよい。証明させる次元の選び方は限定されない。例えば、証明させる次元を登録データ検証装置200又は認証データ検証装置600がランダムに選んでもよい。
また、本実施例の説明では、各ゼロ知識証明を独立に行うように説明しているが、並列に実行する際によく知られた効率化を行ってもよい。例えば、各ゼロ知識証明の中でハッシュ関数の計算を行っているが、それを1度に合わせて計算してもよい。同様に、各ゼロ知識証明の中でxi又はyiに関する知識の証明を行っているが、それを1度にまとめてしまっても構わない。
さらに、本実施例の説明では、登録データ生成装置100及び認証データ生成装置500がハッシュ関数を用いてcを計算しているが、それを登録データ検証装置200及び認証データ検証装置600が生成した乱数値cと置き換えてもよい。このとき検証時に確認する式は、ハッシュ値の一致を確認するのではなく、cに関係する計算結果の一致を確認するものと変わる。
なお、本実施例の説明では、入力データが入力データの空間に含まれることや、入力データと登録データの類似度が受理範囲に含まれることを、それぞれゼロ知識証明を用いて証明しているが、すべてを秘匿する必要のない場合は、コミットメントのオープンを実行してもよい。例えば入力データの各次元の値の二乗和が定数Aであることは、コミットメントに用いられた乱数を明らかにすることでも容易に検証できる。
<3.4.実施例2>
次に、本実施形態における情報照合システム1の動作の実施例2について説明する。
本実施例では、類似度として二乗ユークリッド距離を用いる場合について説明する。入力データは以下の条件を満たすことを仮定する。
(1) 入力データはn次元整数ベクトルである。すなわち、x=(x1,x2,・・・,xn)であり、各xiは整数とする。
(2) 各xiはa以上b以下の整数とする。すなわち、a≦xi≦bを満たす。
(3) 入力データx=(x1,x2,・・・,xn)と入力データy=(y1,y2,・・・,yn)が認証受理となるならば、xとyのユークリッド距離の二乗d(x,y)=(x1-y1)^2+(x2-y2)^2+…+(xn-yn)^2が受理範囲Θに含まれる。
(4) 入力データx=(x1,x2,・・・,xn)と入力データy=(y1,y2,・・・,yn)が認証不受理となるならば、xとyのユークリッド距離の二乗d(x,y)=(x1-y1)^2+(x2-y2)^2+…+(xn-yn)^2が受理範囲Θに含まれない。
次に、本実施例の情報照合システム1の登録の動作について説明する。まず、登録データ生成装置100は、入力として、パラメータと入力データx=(x1,x2,・・・,xn)を受け取る(ステップA1)。
コミットメント生成部101は、i=1,…,nに対して、以下の処理を行う。すなわち、Ei=Com(xi,ri),Fi=Com((xi)^2,r'i)を生成する(ステップA2)。
証明生成部102は、i=1,…,nに対して、以下の処理を行う(ステップA3)。すなわち、次の3つのゼロ知識証明を行う。(1)Eiを用いて、xiの知識証明,(2)Eiを用いて、a≦xi≦bであることのゼロ知識証明,(3)Fiを用いて、xiの二乗のゼロ知識証明。
証明生成部102は、コミットメントと証明データを登録データ検証装置200に送付する(ステップA3)。
コミットメントと証明データを受信した登録データ検証装置200の証明検証部201は、上述の(1)から(3)のゼロ知識証明の検証を行う。証明検証部201は、1つでも検証不受理であれば検証の処理を停止する。一方、すべて検証受理であれば、証明検証部201は、登録データの識別子(ID)を生成し、識別子(ID)を登録データ生成装置100に送付する(ステップA4)。
登録データ生成部202は、({Ei}、F=F1・F2・…・Fn)を登録データとする(ステップA5)。登録データ生成部202は、識別子(ID)と登録データの対(ID,登録データ)を登録データ記憶装置300に送付する(ステップA6)。登録データ記憶装置300は、(ID,登録データ)を記憶する(ステップA7)。
ステップA4において識別子(ID)を受信した登録データ生成装置100の認証用データ生成部103は、(ID,{ri},r'=Σ(r'i))を認証用データとして生成する(ステップA8)。認証用データ生成部103は、認証用データを認証用データ記憶装置400に送付する(ステップA9)。認証用データ記憶装置400は、認証用データを記憶する(ステップA10)。
次に、本実施例の情報照合システム1の照合の動作について説明する。まず、認証データ生成装置500の認証要求部501は、入力データy=(y1,y2,...,yn)と、パラメータとを入力として受け取り、認証用データ記憶装置400から認証用データ(ID,{ri},r')を受信(抽出)する(ステップB1)。一例として、入力データyともにログインID又はユーザの識別番号等を入力し、これらに関連づけられて記憶された認証用データを読み出してもよい。
認証要求部501は、認証要求として、登録データの識別子(ID)を含むRequestを認証データ検証装置600に送付する(ステップB2)。
チャレンジ生成部601は、識別子(ID)に対応する登録データ(ID、{Ei},F)を登録データ記憶装置300から受信(抽出)し、ランダムな値cを用いて、{(Ei)^c},h^cをチャレンジとし、チャレンジを認証データ生成装置500に送付する(ステップB3)。
認証データ生成装置500のコミットメント生成部502は、各i=1,2,…,nに対して、以下の処理を行う。
(1) Com(yi,Ri)=g^{yi}・h^{Ri} mod N、Com((yi)^2,R'i)=g^{(yi)^2}・h^{R'i} mod N、Com(xiyi,R”i)=((Ei)^c)^{yi}・h^{R”i} mod Nを計算する(ステップB4)。
(2) 次に、証明生成部503は、各i=1,2,…,nに対して以下の処理を行う。
(3) (1)Com(yi,Ri)を用いて、yiの知識のゼロ知識証明,(2)Com(yi,Ri)を用いて、a≦yi≦bの範囲のゼロ知識証明,(3)Com((yi)^2,R'i)を用いて、yiの二乗のゼロ知識証明。
(4) 次に、Com(xiyi,R”i)と、Com((yi)^2,R'i)と、{ri}と、r'を用いて、(4)d(x,y)が受理範囲Θに含まれることのゼロ知識証明を生成する。これは、Com(Σ((xi)^2),r')・Com((y1)^2,R'1)・…・Com((yn)^2,R'n)・(Com((x1y1,R”1)・Com(x2y2,R”2)・…・Com(xnyn,R”n))^{-2/c})=g^{Σ(xi)^2+Σ(yi)^2-2<x,y>}(h)^{r'+Σ(R'i)+Σ(yi・ri)+Σ(R”i)}であるため、hに対して、r'+Σ(R'i)+Σ(yi・ri)+Σ(R”i)の知識のゼロ知識証明を生成する(ステップB5)。
認証データ生成部504は、コミットメントと(1)から(4)の証明を証明データとして、認証データ検証装置600に送付する(ステップB6)。
証明検証部602は、(1)から(4)の証明を検証し、すべてが受理であれば検証結果を受理にし、そうでなければ検証結果を不受理にする(ステップB7)。
認証結果生成部603は、検証結果が受理であれば、認証結果を受理とし、そうでなければ認証結果を不受理とする(ステップB8)。
本実施例の説明では、x、yのすべての次元に対して、xi(又はyi)がa≦xi≦bであることを証明しているが、その一部(例えば半分など)を証明するのでもよい。証明させる次元の選び方は問わない。例えば、証明させる次元を登録データ検証装置200又は認証データ検証装置600がランダムに選んでもよい。
また、本実施例の説明では、各ゼロ知識証明を独立に行うように説明しているが、並列に実行する際によく知られた効率化を行ってもよい。例えば、各ゼロ知識証明の中でハッシュ関数の計算を行っているが、それを1度に合わせて計算してもよい。同様に、各ゼロ知識証明の中でxi又はyiに関する知識の証明を行っているが、それを1度にまとめてしまっても構わない。
さらに、本実施例の説明では、登録データ生成装置100及び認証データ生成装置500がハッシュ関数を用いてcを計算しているが、それを登録データ検証装置200及び認証データ検証装置600が生成した乱数値cと置き換えてもよい。このとき検証時に確認する式は、ハッシュ値の一致を確認するのではなく、cに関係する計算結果の一致を確認するものと変わる。
なお、本実施例の説明では、入力データが入力データの空間に含まれることや、入力データと登録データの類似度が受理範囲に含まれることを、それぞれゼロ知識証明を用いて証明しているが、すべてを秘匿する必要のない場合は、コミットメントのオープンを実行してもよい。
(効果)
上述した本実施形態における効果のひとつは、生体から生成されていないデータを入力データとして、登録データを生成することや、認証データを生成することを不可能にしていることである。また、これにより、より安全な情報照合システム1を実現することが可能になる。また、例えば、ステップA2及びA3によって、入力データが予め定められた入力データの空間にあることをゼロ知識証明を用いて検証できる。
上述した本実施形態では、登録データはFujisaki-Okamotoコミットメントのコミットメントと識別子(ID)である。Fujisaki-Okamotoコミットメントは情報理論的な秘匿性を満たすことが知られており、生体特徴量のコミットメントは乱数と見分けがつかないことが数学的に示されている。したがって、万が一コミットメントが漏洩したとしても、生体特徴量は漏洩しない。また、認証用データは、コミットメント生成時に使用した乱数と識別子IDである。明かに、認証用データから生体特徴量に関する情報は漏洩しない。
<<4.その他>>
図4は、装置のハードウェア構成を示すブロック図である。上述の各装置は、物理的に以下の構成を有することができる。装置10は、例えば、入力部11と、出力部12と、記憶部13と、処理部14とを有する。
入力部11は、データ、情報、信号等を入力する。入力部11は、例えば、他の装置からデータ等を受信するインターフェース、ユーザからの入力を受け付ける操作部、生体情報を読み取る読取装置などでもよい。出力部12は、データ、情報、信号等を出力する。出力部12は、例えば、他の装置へデータ等を送信するインターフェース、画面を表示する表示部などでもよい。記憶部13は、装置10の動作のためのプログラム及びパラメータ、並びに様々なデータを、一時的に又は恒久的に記憶する。処理部14は、例えば、CPU(Central Processing Unit)などの1つ以上のプロセッサで構成される。処理部14は、例えば記憶部13に記憶されたプログラムを実行して、上述の各装置の動作を行ってもよい。プログラムは、上述の各装置の動作をプロセッサに実行させるためのプログラムであってもよい。
上記実施形態の一部又は全部は、以下の付記のようにも記載され得るが、以下には限られない。
(付記1)
登録のための第1入力データの第1コミットメントと、第1入力データが予め定められた入力データ空間に含まれていることを示す第1証明データとを生成する登録データ生成装置と、
前記第1コミットメントと前記第1証明データの一部又は全部を記憶する認証用データ記憶装置と、
前記第1コミットメントと前記第1証明データの検証を行う登録データ検証装置と、
前記第1コミットメントと前記第1証明データの一部又は全部を登録データとして記憶する登録データ記憶装置と、
認証されるための第2入力データの第2コミットメントと、前記第2入力データが前記予め定められた入力データ空間に含まれていること及び前記第2入力データと前記登録データ記憶装置の前記登録データの類似度が予め定められた受理範囲に含まれていることを示す第2証明データとを生成する認証データ生成装置と、
前記第2コミットメントと前記第2証明データの検証を行う認証データ検証装置と
を備えた情報照合システム。
(付記2)
付記1に記載の情報照合システムであって、
前記登録データ生成装置が生成する第1証明データの一部又は全部が、ゼロ知識証明によるデータである
ことを特徴とする情報照合システム。
(付記3)
付記1又は2に記載の情報照合システムであって、
前記認証データ生成装置が生成する前記第2証明データの一部又は全部が、ゼロ知識証明によるデータである
ことを特徴とする情報照合システム。
(付記4)
付記1~3のいずれか1項に記載の情報照合システムであって、
前記登録データ記憶装置に記憶された前記登録データが、前記第1入力データの前記第1コミットメントを含む
ことを特徴とする情報照合システム。
(付記5)
付記1~4のいずれか1項に記載の情報照合システムであって、
前記認証用データ記憶装置に記憶された認証用データが、前記第1入力データの前記第1コミットメントを生成する際に用いた乱数を含む
ことを特徴とする情報照合システム。
(付記6)
付記1~5のいずれか1項に記載の情報照合システムであって、
前記登録データ生成装置が生成する前記第1コミットメントの一部又は全部が、パラメータg、h、N、前記第1入力データx、乱数rに対して、g^x・h^r mod Nである
ことを特徴とする情報照合システム。
(付記7)
付記1~6のいずれか1項に記載の情報照合システムであって、
前記認証データ生成装置が生成する前記第2コミットメントの一部又は全部が、パラメータg、h、N、前記第2入力データy、乱数rに対して、g^y・h^r mod Nである
ことを特徴とする情報照合システム。
(付記8) 登録のための第1入力データの第1コミットメントと、前記第1入力データが予め定められた入力データ空間に含まれていることを示す第1証明データとを含む登録データを生成する登録データ生成部と、
前記第1コミットメントと前記第1証明データの一部又は全部を記憶する認証用データ記憶部と、
認証されるための第2入力データの第2コミットメントと、前記第2入力データが前記予め定められた入力データ空間に含まれていること及び前記第2入力データと前記登録データの類似度が予め定められた受理範囲に含まれていることを示す第2証明データとを生成する認証データ生成部と
を備えたクライアント端末。
(付記9)
登録のための第1入力データの第1コミットメントと、前記第1入力データが予め定められた入力データ空間に含まれていることを示す第1証明データとを入力し、前記第1コミットメントと前記第1証明データの検証を行う登録データ検証部と、
認証されるための第2入力データの第2コミットメントと、前記第2入力データが前記予め定められた入力データ空間に含まれていること及び前記第2入力データと登録データ記憶部の登録データの類似度が予め定められた受理範囲に含まれていることを示す第2証明データと入力し、前記第2コミットメントと前記第2証明データの検証を行う認証データ検証部と
の少なくとも一方を備えたサーバ。
(付記10)
登録のための第1入力データの第1コミットメントと、第1入力データが予め定められた入力データ空間に含まれていることを示す第1証明データとを生成する登録データ生成処理と、
前記第1コミットメントと前記第1証明データの一部又は全部を記憶する認証用データ記憶処理と、
前記第1コミットメントと前記第1証明データの検証を行う登録データ検証処理と、
前記第1コミットメントと前記第1証明データの一部又は全部を登録データとして記憶する登録データ記憶処理と、
認証されるための第2入力データの第2コミットメントと、前記第2入力データが前記予め定められた入力データ空間に含まれていること及び前記第2入力データと登録データ記憶部の前記登録データの類似度が予め定められた受理範囲に含まれていることを示す第2証明データとを生成する認証データ生成処理と、
前記第2コミットメントと前記第2証明データの検証を行う認証データ検証処理と
を含む情報照合方法。
(付記11)
登録のための第1入力データの第1コミットメントと、第1入力データが予め定められた入力データ空間に含まれていることを示す第1証明データとを生成する登録データ生成処理と、
前記第1コミットメントと前記第1証明データの一部又は全部を記憶する認証用データ記憶処理と、
前記第1コミットメントと前記第1証明データの検証を行う登録データ検証処理と、
前記第1コミットメントと前記第1証明データの一部又は全部を登録データとして記憶する登録データ記憶処理と、
認証されるための第2入力データの第2コミットメントと、前記第2入力データが前記予め定められた入力データ空間に含まれていること及び前記第2入力データと登録データ記憶部の前記登録データの類似度が予め定められた受理範囲に含まれていることを示す第2証明データとを生成する認証データ生成処理と、
前記第2コミットメントと前記第2証明データの検証を行う認証データ検証処理と
をコンピュータに実行させる情報照合プログラム。
前述の通り、各実施形態の技術により、カメラ等のセンサで取得した生体情報と、データベースに保存されている一人又は複数人の生体情報とを、両者の持つ生体情報を互いに秘匿したまま、安全に照合することが可能である。センサの管理者(組織)と、データベースの管理者(組織)が異なる場合に、効果的である。
各実施形態の技術は例えば、スマートフォン等を用いてリモートのサーバに対して生体認証を行う際に利用可能である。ユーザ自身が保持するスマートフォンに認証用データを、サーバに登録データをそれぞれ登録し、認証を行う際にスマートフォンで生体情報を採取し、記憶している認証用データを用いて、認証データの生成を行い、サーバがユーザを認証することが可能となる。
スマートフォンを用いたリモート生体認証の利用例として、ネットショッピングや会員サービスの利用などが挙げられる。本技術を用いれば、サーバはユーザの生体情報に関して、同一生体であるか否か以外の情報を得ることなく、スマートフォンの生体認証機能を用いてユーザ認証を行うことが可能である。したがって、サーバからのユーザ情報の漏洩リスクを低減できる。
100 登録データ生成装置(登録データ生成部)
200 登録データ検証装置(登録データ検証部)
300 登録データ記憶装置(登録データ記憶部)
400 認証用データ記憶装置(認証用データ記憶部)
500 認証データ生成装置(認証データ生成部)
600 認証データ検証装置(認証データ検証部)

Claims (9)

  1. 登録のための第1入力データの第1コミットメントと、前記第1入力データが予め定められた入力データ空間に含まれていることのゼロ知識証明を示す第1証明データとを生成する登録データ生成装置と、
    前記第1コミットメントと前記第1証明データの一部又は全部を記憶する認証用データ記憶装置と、
    前記第1コミットメントと前記第1証明データの検証を行う登録データ検証装置と、
    前記第1コミットメントと前記第1証明データの一部又は全部を登録データとして記憶する登録データ記憶装置と、
    認証されるための第2入力データの第2コミットメントと、前記第2入力データが前記予め定められた入力データ空間に含まれていることのゼロ知識証明及び前記第2入力データと前記登録データ記憶装置に記憶されている前記登録データの類似度が予め定められた受理範囲に含まれていることのゼロ知識証明を示す第2証明データとを生成する認証データ生成装置と、
    前記第2コミットメントと前記第2証明データの検証を行う認証データ検証装置と
    を備えた情報照合システム。
  2. 請求項1に記載の情報照合システムであって、
    前記登録データ生成装置が生成する前記第1証明データの一部又は全部が、ゼロ知識証明によるデータである
    ことを特徴とする情報照合システム。
  3. 請求項1又は2に記載の情報照合システムであって、
    前記認証データ生成装置が生成する前記第2証明データの一部又は全部が、ゼロ知識証明によるデータである
    ことを特徴とする情報照合システム。
  4. 請求項1~3のいずれか1項に記載の情報照合システムであって、
    前記登録データ記憶装置に記憶された前記登録データが、前記第1入力データの前記第1コミットメントを含む
    ことを特徴とする情報照合システム。
  5. 請求項1~4のいずれか1項に記載の情報照合システムであって、
    前記認証用データ記憶装置に記憶された認証用データが、前記第1入力データの前記第1コミットメントを生成する際に用いた乱数を含む
    ことを特徴とする情報照合システム。
  6. 請求項1~5のいずれか1項に記載の情報照合システムであって、
    前記登録データ生成装置が生成する前記第1コミットメントの一部又は全部が、パラメータg、h、N、前記第1入力データx、乱数rに対して、g^x・h^r mod Nである
    ことを特徴とする情報照合システム。
  7. 請求項1~6のいずれか1項に記載の情報照合システムであって、
    前記認証データ生成装置が生成する前記第2コミットメントの一部又は全部が、パラメータg、h、N、前記第2入力データy、乱数rに対して、g^y・h^r mod Nである
    ことを特徴とする情報照合システム。
  8. 登録のための第1入力データの第1コミットメントと、前記第1入力データが予め定められた入力データ空間に含まれていることのゼロ知識証明を示す第1証明データとを生成する登録データ生成処理と、
    前記第1コミットメントと前記第1証明データの一部又は全部を記憶する認証用データ記憶処理と、
    前記第1コミットメントと前記第1証明データの検証を行う登録データ検証処理と、
    前記第1コミットメントと前記第1証明データの一部又は全部を登録データとして記憶する登録データ記憶処理と、
    認証されるための第2入力データの第2コミットメントと、前記第2入力データが前記予め定められた入力データ空間に含まれていることのゼロ知識証明及び前記第2入力データと前記登録データの類似度が予め定められた受理範囲に含まれていることのゼロ知識証明を示す第2証明データとを生成する認証データ生成処理と、
    前記第2コミットメントと前記第2証明データの検証を行う認証データ検証処理と
    を含む情報照合方法。
  9. 登録のための第1入力データの第1コミットメントと、前記第1入力データが予め定められた入力データ空間に含まれていることのゼロ知識証明を示す第1証明データとを生成する登録データ生成処理と、
    前記第1コミットメントと前記第1証明データの一部又は全部を記憶する認証用データ記憶処理と、
    前記第1コミットメントと前記第1証明データの検証を行う登録データ検証処理と、
    前記第1コミットメントと前記第1証明データの一部又は全部を登録データとして記憶する登録データ記憶処理と、
    認証されるための第2入力データの第2コミットメントと、前記第2入力データが前記予め定められた入力データ空間に含まれていることのゼロ知識証明及び前記第2入力データと前記登録データの類似度が予め定められた受理範囲に含まれていることのゼロ知識証明を示す第2証明データとを生成する認証データ生成処理と、
    前記第2コミットメントと前記第2証明データの検証を行う認証データ検証処理と
    をコンピュータに実行させる情報照合プログラム。
JP2021546103A 2019-09-18 2019-09-18 情報照合システム、クライアント端末、サーバ、情報照合方法、及び情報照合プログラム Active JP7294431B2 (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2019/036523 WO2021053749A1 (ja) 2019-09-18 2019-09-18 情報照合システム、クライアント端末、サーバ、情報照合方法、及び情報照合プログラム

Publications (3)

Publication Number Publication Date
JPWO2021053749A1 JPWO2021053749A1 (ja) 2021-03-25
JPWO2021053749A5 JPWO2021053749A5 (ja) 2022-05-24
JP7294431B2 true JP7294431B2 (ja) 2023-06-20

Family

ID=74884368

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2021546103A Active JP7294431B2 (ja) 2019-09-18 2019-09-18 情報照合システム、クライアント端末、サーバ、情報照合方法、及び情報照合プログラム

Country Status (3)

Country Link
US (1) US20220321348A1 (ja)
JP (1) JP7294431B2 (ja)
WO (1) WO2021053749A1 (ja)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7432806B2 (ja) * 2022-04-20 2024-02-19 ミガロホールディングス株式会社 情報処理システムおよび情報処理方法
US11727100B1 (en) 2022-06-09 2023-08-15 The Government of the United States of America, as represented by the Secretary of Homeland Security Biometric identification using homomorphic primary matching with failover non-encrypted exception handling
US11902416B2 (en) 2022-06-09 2024-02-13 The Government of the United States of America, as represented by the Secretary of Homeland Security Third party biometric homomorphic encryption matching for privacy protection
US12067750B2 (en) 2022-10-27 2024-08-20 The Government of the United States of America, as represented by the Secretary of Homeland Security Methods and systems for establishing accurate phenotype metrics

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2011148902A1 (ja) 2010-05-28 2011-12-01 日本電気株式会社 匿名認証システム、ユーザ装置、検証装置、匿名認証方法および匿名認証プログラム
WO2012042775A1 (ja) 2010-09-30 2012-04-05 パナソニック株式会社 生体認証システム、通信端末装置、生体認証装置、および生体認証方法
JP2018014622A (ja) 2016-07-21 2018-01-25 株式会社日立製作所 署名検証システム、署名検証方法及びプログラム
US20190020482A1 (en) 2017-07-13 2019-01-17 Pindrop Security, Inc. Zero-knowledge multiparty secure sharing of voiceprints

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5537032B2 (ja) * 2005-12-13 2014-07-02 コーニンクレッカ フィリップス エヌ ヴェ 安全な閾値復号プロトコル計算

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2011148902A1 (ja) 2010-05-28 2011-12-01 日本電気株式会社 匿名認証システム、ユーザ装置、検証装置、匿名認証方法および匿名認証プログラム
WO2012042775A1 (ja) 2010-09-30 2012-04-05 パナソニック株式会社 生体認証システム、通信端末装置、生体認証装置、および生体認証方法
JP2018014622A (ja) 2016-07-21 2018-01-25 株式会社日立製作所 署名検証システム、署名検証方法及びプログラム
US20190020482A1 (en) 2017-07-13 2019-01-17 Pindrop Security, Inc. Zero-knowledge multiparty secure sharing of voiceprints

Also Published As

Publication number Publication date
WO2021053749A1 (ja) 2021-03-25
JPWO2021053749A1 (ja) 2021-03-25
US20220321348A1 (en) 2022-10-06

Similar Documents

Publication Publication Date Title
US12355891B2 (en) Verification of biometric templates for privacy preserving authentication
US12166890B2 (en) Leveraging multiple devices to enhance security of biometric authentication
JP7127543B2 (ja) 照合システム、方法、装置及びプログラム
US10027654B2 (en) Method for authenticating a client device to a server using a secret element
CN101057448B (zh) 安全地计算相似性度量
AU2015308608B2 (en) Methods for secure cryptogram generation
EP3532972B1 (en) Authentication method and system
JP6973385B2 (ja) 認証システム、認証方法およびプログラム
US10873447B2 (en) Efficient concurrent scalar product calculation
CN107248909B (zh) 一种基于sm2算法的无证书安全签名方法
JP7294431B2 (ja) 情報照合システム、クライアント端末、サーバ、情報照合方法、及び情報照合プログラム
CN103124269A (zh) 云环境下基于动态口令与生物特征的双向身份认证方法
JP7259868B2 (ja) システムおよびクライアント
CN101317360A (zh) 使用puf的物理秘密共享和邻近的证明
CN109936456B (zh) 基于私钥池的抗量子计算数字签名方法和系统
WO2020121461A1 (ja) 照合システム、クライアントおよびサーバ
Kurmi et al. A survey of zero-knowledge proof for authentication
JP7231023B2 (ja) 照合システム、クライアントおよびサーバ
Kulkarni et al. Secure hamming distance based biometric authentication
CN103988466A (zh) 群加密方法及设备
US11429702B2 (en) Method of verification of a biometric authentication
CN115442037A (zh) 一种账号管理方法、装置、设备及存储介质
Bringer et al. An application of the Boneh and Shacham group signature scheme to biometric authentication
Sarkar et al. A multi-instance cancelable fingerprint biometric based secure session key agreement protocol employing elliptic curve cryptography and a double hash function
CN110572257A (zh) 基于身份的抗量子计算数据来源鉴别方法和系统

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20220311

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20220311

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20230207

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20230322

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20230522

R151 Written notification of patent or utility model registration

Ref document number: 7294431

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151