JP6922385B2 - ノイズ存在下におけるパリティ値の同定に基づく、近似関係の関係暗号化 - Google Patents

ノイズ存在下におけるパリティ値の同定に基づく、近似関係の関係暗号化 Download PDF

Info

Publication number
JP6922385B2
JP6922385B2 JP2017089512A JP2017089512A JP6922385B2 JP 6922385 B2 JP6922385 B2 JP 6922385B2 JP 2017089512 A JP2017089512 A JP 2017089512A JP 2017089512 A JP2017089512 A JP 2017089512A JP 6922385 B2 JP6922385 B2 JP 6922385B2
Authority
JP
Japan
Prior art keywords
linear
ciphertext
approximate
relational
encryption
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
JP2017089512A
Other languages
English (en)
Other versions
JP2017201783A (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
Priority claimed from US15/144,713 external-priority patent/US9608819B1/en
Application filed by Fujitsu Ltd filed Critical Fujitsu Ltd
Publication of JP2017201783A publication Critical patent/JP2017201783A/ja
Application granted granted Critical
Publication of JP6922385B2 publication Critical patent/JP6922385B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Description

[関連出願]
本願は、2014年5月25日に出願した米国特許出願第14/287,051号の一部継続出願である、2015年7月10日の出願した米国特許出願第14/797,025号の一部継続出願である。
[技術分野]
本願明細書で議論される実施形態は、ノイズ存在下におけるパリティ値の同定(learning parity with noise:LPN)に基づく関係暗号化に関する。
ユーザ認証の形式は、生体認証を含み得る。生体認証は、通常、ユーザに対して一意であるユーザの生体特徴を測定するステップを含む。測定された生体特徴、又はその表現は、次に、ユーザの同一性を認証する基礎として用いられる。生体特徴は、ユーザの指紋、虹彩、静脈、DAN(deoxyribonucleic acid)のセクション、等を含み得る。生体認証は、パスワードを記憶している必要がなく、ユーザを認証することが可能であるという利点を有し得る。生体特徴は不変であるので、生体認証システムにおいてプライバシが重要である。さらに、生体データは、非常に不均一である。
本願明細書で請求される主題は、上述のような欠点を解決する実施形態や上述のような環境でのみ機能する実施形態に限定されない。むしろ、この背景技術は、単に、本願明細書に記載される複数の実施形態が実施される技術分野の一例を説明するために提供される。
一実施形態の一態様によると、方法は、第1線形暗号文を受信するステップを有する。第1線形暗号文は、関係線形暗号化方式を用いて暗号化される第1バイオメトリックテンプレートを表して良い。関係線形暗号化方式は、雑音存在下におけるパリティ値の同定(learning parity with noise:LPN)に基づいて良い。方法は、第2線形暗号文を受信するステップを有して良い。第2線形暗号文は、関係線形暗号化方式を用いて暗号化される第2バイオメトリックテンプレートを表して良い。方法は、第1線形暗号文と第2線形暗号文との間の線形関係を、線形関係秘密鍵を用いて発見するステップを有して良い。方法は、第1近似ハッシュ値を受信するステップを有して良い。第1近似ハッシュ値は、関係近似ハッシュ方式を用いて暗号化される第1バイオメトリックテンプレートを表して良い。関係近似ハッシュ方式は、関係線形暗号化方式及び誤り訂正符号(ECC)に基づいて良い。方法は、第2近似ハッシュ値を受信するステップを有して良い。第2近似ハッシュ値は、関係近似暗号化方式を用いて暗号化される第2バイオメトリックテンプレートを表して良い。方法は、ハミング距離の観点で第1近似ハッシュ値及び第2近似ハッシュ値の間の近似を検出するステップを有して良い。方法は、近似及び線形関係に基づき、ユーザの同一性を認証するステップを有して良い。
実施形態の目的及び利点が理解され、少なくとも特に特許請求の範囲で指摘された要素、特徴及び組合せを用いて達成されるだろう。
上述の全体的説明及び以下の詳細な説明の両方は、例示及び説明のためであり、本発明の範囲を限定しないことが理解される。
例示的な実施形態は、添付の図面を用いて、更なる特異性及び詳細事項と共に記載され説明される。
幾つかの実施形態が実装され得る例示的な動作環境のブロック図である。 例示的な生体認証環境のブロック図である。 関係暗号化のために構成されるコンピューティングシステムのブロック図である。 生体認証の例示的な方法のフロー図である。 全ての図は本願明細書に記載の少なくとも1つの実施形態に従って構成される。
生体認証の課題は、ユーザが認証の基礎として用いられるバイオメトリック特徴を変更できないことであり得る。例えば、ユーザは、ユーザの指紋又はユーザの虹彩パターンのようなユーザの1又は複数のユニークな特徴を表すバイオメトリックデータを含むバイオメトリックテンプレートを登録して良い。バイオメトリックテンプレートが危険に晒される場合、ユーザは、バイオメトリックテンプレートにより表されるユニークな特徴を変更することができない。したがって、一旦、危険に晒されると、別のバイオメトリックテンプレートが登録されて良く、又は、別のバイオメトリック特徴のバイオメトリックテンプレートが登録されて良い。少なくともこの理由から、生体認証システムは、強力なプライバシ保証の利益を享受し得る。
参照により全体が本願明細書に組み込まれる2014年5月25日に出願した米国特許出願番号第14/287,051号は、関係暗号化と呼ばれる暗号プリミティブを記載している。関係暗号化は、公開鍵の知識だけを有する、意味論的にセキュアな公開鍵暗号化方式である。
さらに、関係暗号化では、準信頼できるエンティティが関係鍵を提供されて良い。関係鍵を使用して、準信頼できるエンティティは、暗号文の間の1又は複数の関係を発見し得るが、暗号文が生成された平文ベクトルを解読し復元することはできない。関係暗号化は、ビットベクトル及びp−aryベクトルの間の線形関係を発見するために、出願番号第14/287,051号において開発された。関係暗号化を用いて、関係暗号化方式は、ハミング距離の観点で暗号文の間の近似を検出するために使用されて良い。関係暗号化は、準信頼できるサーバに認証を実行させながら、生体認証方式のバイオメトリックテンプレートに強力なプライバシ保証を提供する。
出願番号第14/287,051号の関係暗号化は、平文ベクトルが実質的に均一にランダムであるという仮定に基づいて良い。実際に、及び特定の生体情報では、平文ベクトルが実質的に均一にランダムであるというこの仮定は維持できない。出願番号第14/287,051号の関係暗号化は、線形関係ハッシュ及び誤り訂正符号に基づいて良い。
参照により全体が本願明細書に組み込まれる米国特許出願番号第14/797,025号、2016年3月22日出願は、関係暗号化の拡張を記載している。したがって、該拡張は、生体情報の更なる多様性及び更なる実用的分配を超えてセキュアである。例えば、関係暗号化の拡張は、平文ベクトルが高minエントロピを有するという仮定に基づく。出願番号第14/797,025号の関係暗号化の拡張は、線形関係ハッシュ、誤り訂正符号、及びエクストラクタ(extractor)に基づいて良い。
本開示に記載される幾つかの実施形態は、別の例示的な関係暗号化を含む。本願明細書に記載の関係暗号化方式は、暗号学的に困難な、ノイズ存在下におけるパリティ値の同定(learning parity with noise:LPN)問題に基づく。本開示に記載の関係暗号化方式は、高い予測不可能性を有する不均一な生体データよりセキュアである。本願明細書に記載の関係暗号化方式は、出願番号第14/797,025号及び出願番号第14/287,051号に記載の関係暗号化よりも効率的であり得る。本願明細書に記載の関係暗号化方式は、線形関係ハッシュ及び誤り訂正符号に基づいて良く、平文ベクトルが高いminエントロピを有するという仮定に基づいて良い。本発明の実施形態を、添付の図面を参照して以下に説明する。
図1は、本願明細書に記載の少なくとも1つの実施形態により配置される例示的な動作環境100のブロック図を示す。動作環境100では、関係暗号化が実行されて良い。関係暗号化は、第1エンティティ152が、第2エンティティ150により提供される2以上の暗号文の間の1又は複数の関係を決定できるようにする暗号プリミティブを有して良い。特に、関係暗号化は、第1エンティティ152に2以上の暗号文の間の線形関係を発見させ、2以上の暗号文の間の近似を検出させる。さらに、関係暗号化は、第1エンティティ152に暗号文から平文を復元させ、又は特定の本物の暗号文との特定の関係を有する不正暗号文を構築させる。
関係暗号化は、種々の環境において実装されて良い。例えば、関係暗号化は、個人が彼らの位置を非公開に保ちたいと望む社会環境において実施されて良いが、準信頼できるサービスは、位置同士の近似の検出を可能にし得る。さらに、関係暗号化は、画像比較環境において実施されて良い。近似は、画像同士の類似性を決定するために、データベースからの画像の間で検出されて良い。画像のプライバシは維持されて良い。ユーザは、データベースにある画像に触れずに、関係暗号化を用いて画像を検索して良い。さらに、関係暗号化は、私的データ記憶環境において実施されて良い。ユーザは、そのデータを暗号化し、暗号化データをデータベースに通信して良い。分析(例えば、記憶、クラスタリング、等)は、暗号化データが解読されるリスクを伴わず、暗号化データに対して実行され得る。
例えば、第2エンティティ150に関連付けられるユーザ装置102は、1又は複数の平文ベクトル142を受信して良い。平文ベクトル142は、バイオメトリックテンプレート、位置情報、等のような任意のデータセットを有して良い。第2エンティティ150は、第1エンティティ152の認証サーバ140に、平文ベクトル142の暗号化バージョンを含む、第1暗号文又はハッシュ値を通信して良い。後に、ユーザ装置102は、別の平文ベクトル142を受信して良い。第2の平文ベクトル142の暗号化バージョンを含む第2暗号文は、第1エンティティ152の認証サーバ140に通信されて良い。第1エンティティ152は、第1暗号文と第2暗号文との間に線形関係があるか否かを発見して良く、第1暗号文と第2暗号文との間の近似を検出して良い。幾つかの実施形態では、近似は、ハミング距離の観点であって良い。
しかしながら、関係暗号化は、第1エンティティ152が、第1及び第2暗号文から平文ベクトル142を構築することを許さない。さらに、関係暗号化は、第1エンティティ152が、第1暗号文及び/又は第2暗号文と特定の線形関係及び/又は特定の近似を有する第3暗号文を構築することを許さない。図1は、2つの平文ベクトル142と、したがって2つの暗号文と、を有する実施形態を示す。幾つかの実施形態では、2つより多い平文ベクトル142と、したがって2つより多い暗号文とが、動作環境100に含まれる認証サーバ140に通信されて良い。
関係暗号化は、1又は複数の関係鍵を有して良い。関係鍵は、公開及び/又は署名鍵と同様であっても良く、第1エンティティ152に提供され又はそれにより生成されて良い。関係鍵は、暗号文の間の関係の決定を可能にし得るが、暗号文の復号化又は平文ベクトル142の復元を許さない。さらに、関係鍵は、特定の暗号文との特定の関係を有する暗号文の構築を許さない。
幾つかの実施形態では、関係暗号化は、アルゴリズムのタプルを有する関係について、関係ハッシュ方式に従って定められて良い。アルゴリズムは、鍵生成アルゴリズム、第1暗号化アルゴリズム、第1解読アルゴリズム、、第2暗号化アルゴリズム、第2の解読アルゴリズム、及び検証アルゴリズムを有して良い。関係は、3つのセットの部分集合として定められて良い。さらに、関係及びアルゴリズムは、1又は複数の正確性条件を満たして良い。例えば、関係は、以下の例示的な正確性条件を満たして良い。
R⊆XxYxZ
(pkx,skx,pky,sky,skR)←KeyGen(1λ
cx←EncX(pkx,x)
cy←EncY(pky,y)
b←Verify(skR,cx,cy,z)
b≒R(x,y,z)
正確性条件では、Rは関係を表す。演算子⊆は、部分集合演算子を表す。パラメータX、Y、Zはセットを表す。パラメータxは、平文ベクトル142のうちの第1平文ベクトルを表す。パラメータyは、平文ベクトル142のうちの第2平文ベクトルを表す。KeyGenは、鍵生成アルゴリズムを表す。EncXは、第1暗号化アルゴリズムを表す。EncYは、第2暗号化アルゴリズムを表す。Verifyは、検証アルゴリズムを表す。演算子←は、出力演算子を表す。パラメータpkxは、第1公開鍵を表す。パラメータpkyは、第2公開鍵を表す。パラメータskxは、第1秘密鍵を表す。パラメータskyは、第2秘密キーを表す。パラメータskRは、関係秘密鍵を表す。パラメータcxは、第1暗号文を表す。パラメータcyは、第2暗号文を表す。パラメータbは、検証アルゴリズムによる出力を表す。パラメータλは、セキュリティパラメータを表す。パラメータzは、検証エンティティにより選択され得る特定値を表す。演算子≒は、合同演算子を表す。正確性条件では、検証アルゴリズムからの出力は、圧倒的な確率を有する関係と合致する。
関係暗号化方式は、関係鍵が、特定の暗号文との特定の関係を有する暗号文の構築を許さない、及び特定の暗号文からの平文ベクトル142Aの復元を許さない、という意味でセキュアであり得る。例えば、関係暗号化方式は、以下の式が保たれる場合にセキュアであり得る。
1)KeyGen(1λ)を行うアルゴリズムをKx(1λ)として、出力(pkx,skx,pky,sky,skR)及び出力(pkx,skx)を取り入れる。その結果、(Kx,EncX,DecX)はIND−CPAセキュアである。
2)KeyGen(1λ)を行うアルゴリズムをKy(1λ)として、出力(pkx,skx,pky,sky,skR)及び出力(pkx,skx)を取り入れる。その結果、(Ky,EncY,DecY)はIND−CPAセキュアである。
3)KeyGen(1λ)を行うアルゴリズムをKR(1λ)として、出力(pkx,skx,pky,sky,skR)及び出力(pkx,skx,skR)を取り入れる。その結果、EncX(pkx,・)及びEncY(pky,・)は、skRが分かる場合に、一方向性関数である。
上述の式では、pkx,skx,pky,sky,skR,KeyGen,EncX()及びEncY()は、上述の通りである。DecXは、第1解読アルゴリズムを表す。DecYは、第2解読アルゴリズムを表す。Kx()、Ky()、及びKR()は、上記の式において説明した通りである。記号「・」は任意の値を示す。用語「IND−CPA」は、indistinguishability under chosen−plaintext attackの略である。幾つかの他の実施形態では、(Ky,EncY,DecY)及び/又は(Kx,EncX,DecX)は、IND−CCA(indistinguishability under chosen ciphertext attack)(例えば、IND−CCA1又はIND−CCA2)又は任意の他の適切なセキュリティメトリックのような別の計算セキュリティメトリックに従ってセキュアであって良い。
さらに、幾つかの実施形態では、関係暗号化方式は、関係線形暗号化方式を有して良い。関係線形暗号化方式は、以下の例示的な線形関係式に従って関係を定めて良い。
R={(x,y,z)|x+y=z∧x,y,z∈F
線形関係式では、R、x、y、及びzは、上述の通りである。演算子∈は、メンバーシップ演算子を表す。演算子|は、「〜の条件を満たす」(such that)演算子を表す。演算子∧は、論理結合演算子を表す。パラメータFは体(field)を表す。添え字nは、通常、体の次元を表す。体の次元は、本願明細書の別の場所で議論するようなキーのうちの1又は複数の長さを有しても良い。添え字pは、体の基本数(base−number)を表す。例えば、F10 では、体は、10の次元、及び3の基本数を有する。3の基本数は、体の各々の要素が0、1、又は2であることを示す。
さらに、幾つかの実施形態では、関係暗号化方式は、以下の例示的な近似式に従って関係を定める関係近似暗号化方式を有して良い。
δ={(x,y)|dist(x,y)≦δ∧x,y∈F
近似式では、R、x、∧、∈、及びyは、上述の通りである。パラメータδは、親密さ(closeness)を定める距離を表す。演算子distは、ハミング距離を表す。線形関係式におけるように、パラメータFは体を表す。しかしながら、近似式における体は、線形関係式における体とは異なる次元を有しても良い。近似式における体の次元は、線形誤り訂正符号に関連しても良い。
本願明細書で議論する関係暗号化方式は、図1の動作環境100において実施されて良い。関係暗号化方式は、第2エンティティ150が、暗号化情報を第1エンティティ152へ通信することを可能にし、第1エンティティ152が、暗号化情報の間の線形関係を発見し及び/又は暗号化情報の間の近似を決定することを可能にして良い。
動作環境100は、第2エンティティ150に関連付けられるユーザ装置102と、第1エンティティ152に関連付けられる認証サーバ140と、を有して良い。ユーザ装置102及び認証サーバ140は、関係暗号化を実行するために、動作環境100の中に実装されて良い。ユーザ装置102及び認証サーバ140は、ネットワーク107を介して通信するよう構成されて良い。例えば、1又は複数の暗号文、認証メッセージ、及び関係暗号化に関連する他のデータ及び情報は、ネットワーク107を介してユーザ装置102と認証サーバ140との間で通信されて良い。ユーザ装置102、認証サーバ140、及びネットワーク107の各々は、以下に簡単に説明される。
ネットワーク107は、有線又は無線であって良い。ネットワーク107は、スター構成、トークンリング構成若しくは他の構成を含む多数の構成を有して良い。さらに、ネットワーク107は、LAN(local area network)、WAN(wide area network)(例えば、インターネット)、及び/又は複数の装置が通信できる他の相互接続されたデータ経路を有して良い。幾つかの例では、ネットワーク107は、ピアツーピアネットワークを有して良い。ネットワーク107は、種々の異なる通信プロトコルでデータを送信する通信ネットワークの一部に結合され又はそれを含んで良い。幾つかの例では、ネットワーク107は、Bluetooth(登録商標)通信ネットワーク又はSMS(short messaging service)、MMS(multimedia messaging service)、HTTP(hypertext transfer protocol)、Wi−Fi、直接データ接続、WAP(wireless application protocol)、電子メール等を介することを含むデータを送信及び受信するセルラ通信ネットワークを有して良い。
ユーザ装置102は、ネットワーク107を介する、関係暗号化に関連する情報及び/又はデータ(例えば、暗号文、鍵、平文ベクトル142、等)の生成及び通信を可能にするプロセッサ、メモリ、及び通信能力を有する任意のコンピューティング装置を有して良い。ユーザ装置102の幾つかの例は、携帯電話機、スキャニング装置、スマートフォン、タブレットコンピュータ、ラップトップコンピュータ、デスクトップコンピュータ、セットトップボックス、又はコネクテッドデバイス(例えば、スマートウォッチ、スマート眼鏡、スマート歩数計、又は任意の他のコネクテッドデバイス)を有して良い。
ユーザ装置102は、関係暗号化モジュール110を有して良い。関係暗号化モジュール110は、平文ベクトル142を受信し、平文ベクトル142の暗号化に関連する1又は複数の工程を実行するよう構成されて良い。例えば、関係暗号化モジュール110は、平文ベクトル142の暗号化において使用される1又は複数の鍵を生成するよう構成されて良い。さらに、関係暗号化モジュール110は、平文ベクトル142に基づき1又は複数の暗号文を生成して良い。関係暗号化モジュール110により生成される暗号文は、認証サーバ140に通信されて良い。暗号文の間の関係(例えば、線形及び近似)に基づき、第2エンティティ150の同一性が認証されて良く又は認証されなくて良い。
特に、図1の実施形態では、関係暗号化モジュール110は、設定モジュール144、線形暗号化モジュール112、及び近似暗号化モジュール114を有して良い。
設定モジュール144は、1又は複数の鍵及び/又は1又は複数のアルゴリズム(例えば、暗号化アルゴリズム、解読アルゴリズム、及び検証アルゴリズム)を生成する1又は複数の工程を実行するよう構成されて良い。鍵は、関係暗号化モジュール110及び/又は認証サーバ140の関係認証モジュール108において使用されて良い。設定モジュール144により生成され得る鍵の幾つかの例は、線形公開鍵、線形秘密鍵、関係線形鍵、近似公開鍵、近似秘密鍵、及び近似関係秘密鍵、を含み得る。鍵の幾つかの追加の詳細事項は、本開示の別の場所で提供される。
鍵は、ネットワーク107を介して通信されて良い。例えば、図示の実施形態では、設定モジュール144は、ユーザ装置102に含まれて良い。設定モジュール144は、鍵を生成して良く、その何らかの部分を認証サーバ140に通信して良い。認証サーバ140は、鍵を用いて第2エンティティ150の同一性を認証して良く、又は認証しなくて良い。例えば、認証は、平文ベクトル142の暗号文の間の近似及び線形関係に基づいて良い。上述及び他の実施形態では、認証サーバ140は、線形関係秘密鍵を用いて、平文ベクトル142の線形暗号文の間の線形関係を発見して良い。さらに、認証サーバ140は、近似関係秘密鍵を用いて、平文ベクトル142の暗号文の間の近似を検出して良い。
設定モジュール144により生成される鍵の別の部分は、線形暗号化モジュール112及び/又は近似暗号化モジュール114により使用されて良い。例えば、線形暗号化モジュール112は、線形公開鍵及び線形秘密鍵を用いて、平文ベクトル142の線形暗号文を生成して良い。線形公開鍵及び線形秘密鍵は、LPNに基づく工程の実施と共に、IND_CCAセキュア公開鍵暗号化方式に基づいて良い。
追加又は代替で、近似暗号化モジュール114は、設定モジュール144により生成される1又は複数の鍵に基づき、平文ベクトル142のハッシュ値を生成して良い。例えば、平文ベクトル142のハッシュ値は、CPA(chosen−plaintext attack)公開鍵、CPA秘密鍵、線形公開鍵、線形秘密鍵、又はそれらの何らかの組合せに基づき生成されて良い。
幾つかの実施形態では、設定モジュール144は、リモートに配置されて良い。例えば、設定モジュール144は、リモートサーバ(図示しない)に配置されて良い。上述及び他の実施形態では、設定モジュール144は、ユーザ装置102及び/又は認証サーバ140に通信される鍵を生成して良い。
線形暗号化モジュール112は、線形暗号文を構築するために平文ベクトル142を暗号化することに関連する及び/又は線形暗号文を解読することに関連する1又は複数の工程を実行するよう構成されて良い。線形暗号化モジュール112は、関係線形暗号化方式に従い、暗号化及び解読工程を実行して良い。関係線形暗号化方式は、LPN(learning parity with noise)及び/又はLPNの特徴を実装する線形関係ハッシュに基づいて良い。
線形暗号化モジュール112により実施される関係線形暗号化方式は、1又は複数の線形暗号文を生成して良い。例えば、線形暗号化モジュール112は、平文ベクトル142のうちの第1平文ベクトルに基づき第1線形暗号文を、及び平文ベクトル142のうちの第2平文ベクトルに基づき第2線形暗号文を、生成して良い。線形暗号文は、認証サーバ140に通信されて良い。線形暗号文から、認証サーバ140は、線形関係秘密鍵を用いて、平文ベクトル142の間の線形関係を発見して良い。
近似暗号化モジュール114は、近似ハッシュ値を構築するために平文ベクトル142を暗号化することに関連する1又は複数の工程を実行するよう構成されて良い。近似暗号化モジュール114は、関係近似ハッシュ方式に基づき工程を実行して良い。関係近似ハッシュ方式は、関係線形暗号化方式及び誤り訂正符号(ECC)に更に基づいて良い。
例えば、近似暗号化モジュール114は、平文ベクトル142のうちの第1平文ベクトルに基づき第1近似ハッシュ値を、及び平文ベクトル142のうちの第2平文ベクトルに基づき第2近似ハッシュ値を、生成して良い。近似ハッシュ値は、認証サーバ140に通信されて良い。認証サーバ140は、近似関係秘密鍵を用いてハミング距離の観点で近似ハッシュ値の間の近似を検出して良い。
認証サーバ140は、ハードウェアサーバ又はサーバとして機能するよう構成される別のプロセッサに基づくコンピューティング装置を有して良い。認証サーバ140は、関係認証モジュール108及びメモリ122を有して良い。メモリ122は、後述するメモリ308と実質的に同様であって良い。メモリ122の幾つかの追加の詳細事項は、本願明細書の他の場所で提供される。
関係認証モジュール108は、線形暗号文及び/又は近似ハッシュ値、関係秘密鍵、検証アルゴリズム、又はそれらの何らかの組み合わせを、関係暗号化モジュール110又は別のソースから受信するよう構成されて良い。関係認証モジュール108は、暗号文の間の線形関係を発見して良く、及び/又は近似ハッシュ値の間の近似を検出して良い。関係認証モジュール108は、関係秘密鍵及び/又は検証アルゴリズムを用いて、暗号文の間の線形関係を発見し及び近似を検出して良い。
関係認証モジュール108は、線形認証モジュール132、及び近似認証モジュール128を有して良い。図1に示さないが、幾つかの実施形態では、設定モジュール144、又は設定モジュール144に属する1又は複数の工程を実行するよう構成されるモジュールは、関係認証モジュール108に含まれて良い。
線形認証モジュール132は、線形暗号文に関連する1又は複数の工程を実行するよう構成されて良い。例えば、線形認証モジュール132は、線形暗号文のうちの2以上の間の線形関係を発見するよう構成されて良い。
線形関係の発見は、ハミング距離の関数であって良い。例えば、線形認証モジュール132は、第3秘密鍵及び第1線形暗号文の第1要素に適用されるIND_CCAセキュア解読アルゴリズム(DecCPA)、第3秘密鍵及び第2線形暗号文の第1要素に適用されるDecCPA、及び第1整数×第2整数のサイズのランダム2進行列、の和を計算して良い。線形認証モジュール132は、次に、この和と、検証エンティティにより選択され得る特定値(上述の「z」)との積を計算して良い。線形認証モジュール132は、次に、和と特定値との積のハミング距離が、2の値、確率、及び第1整数の積より小さい又はそれに等しいか否かを決定して良い。
近似認証モジュール128は、近似ハッシュ値に関連する1又は複数の工程を実行するよう構成されて良い。例えば、近似認証モジュール128は、2以上の近似ハッシュ値の間の近似を検出するよう構成されて良い。幾つかの実施形態では、近似認証モジュール128は、本開示の他の場所に記載される近似検証アルゴリズムに従い実行されて良い。
関係暗号化モジュール110、線形暗号化モジュール112、近似暗号化モジュール114、設定モジュール144、関係認証モジュール108、線形認証モジュール132、及び近似認証モジュール128は、集合的に、関係モジュールと表されて良い。
関係モジュールは、(例えば、1又は複数の工程を実行する又はその実行を制御する)プロセッサ、マイクロプロセッサ、FPGA(field−programmable gate array)又はASIC(application−specific integrated circuit)を含むハードウェアを用いて実装できる。幾つかの他の例では、関係モジュールは、ハードウェア及びソフトウェアの組み合わせを用いて実装できる。ソフトウェアでの実装は、コンピューティングシステム(例えば、ユーザ装置102及び認証サーバ140)のハードウェアに含まれ得るような1又は複数のトランジスタ又はトランジスタ要素の迅速な起動及び停止を含み得る。追加で、ソフトウェア定義命令は、トランジスタ要素の中の情報に対して作用して良い。ソフトウェア命令の実装は、電子経路を少なくとも一時的に再構成し、コンピューティングハードウェアを変換して良い。
次の部分では、LPN(learning parity with noise)が導入される。LPNの導入に続き、LPNに基づく線形関係ハッシュ方式が記載される。線形関係ハッシュに続き、線形関係ハッシュを実施する関係線形暗号化方式が記載される。関係線形暗号化方式は、線形関係ハッシュ方式及び公開鍵暗号化方式に従い定められて良い。関係線形暗号化方式に続き、関係近似ハッシュ方式が記載される。関係近似ハッシュ方式は、関係線形暗号化方式及び誤り訂正符号(ECC)に基づく。
<LPN(LEARNING PARITY WITH NOISE)>
ブール代数におけるパリティ関数は、入力ベクトルが1の(1’s)奇数を有する場合に「1」を出力して良い。パリティ関数の一例は、2つの入力ベクトルを受け取る「XOR」関数である。パリティ値の同定(Parity learning)は、機械学習における近似を表す問題である。パリティ値の同定問題を解決するアルゴリズムが開発されている。アルゴリズムでは、関数は、幾つかの入力サンプルと、関数が幾つかの場所におけるビットのパリティを計算するという仮定に基づき、推定される。パリティ値の同定では、入力サンプルは、入力(例えば、独立値)、及び該入力に適用される関数の値(例えば、独立値から計算される従属値)を有する。入力サンプルは、アルゴリズムの複雑性を低減し得る、関数の分布に渡り提供されて良い。
LPNは、暗号化及び他の用途において見られるある種のパリティ値の同定である。LPNでは、入力サンプルは、何らかの誤り(例えば、ノイズ)を含み得る。例えば、LPNでは、入力サンプルは、入力(例えば、独立値)、及び何らかの小さな確率で該入力に適用される関数に近い別の値(例えば、独立値から計算される従属値)を有して良い。
本開示に記載される実施形態では、LPNは、以下のLPN式に従い定められて良い。
Figure 0006922385
LPN式において、パラメータτは確率を表す。関数Ber τは、各エントリが確率τ(本開示ではノイズ確率としても参照される)で「1」であるqビットの数を、又はその他の場合に「0」を出力する関数である。以下のパラメータは、整数集合を表す。
Figure 0006922385
体の隣にある添え字「2」は、整数集合の基本数を表す。体の隣にある添え字「n」は、整数集合の次元を表す。
Figure 0006922385
において、整数集合はq×nの次元を有する。パラメータs、A及びrは、整数集合からサンプリングされ、LPN式に従い関連付けられる。
LPNの利点は効率を有する。特に、LPN式は、XORゲート及びANDゲートの観点で実装できる。さらに、sが生体サンプルのような高いminエントロピ分布からサンプリングされる場合でも、LPTはセキュアである。幾つかの実施形態では、確率τは約1/4であって良い。
<線形関係ハッシュ方式>
LPN式は、平文ベクトル142のハッシュ値を生成するために、動作環境100において実装されて良い。線形関係ハッシュは、平文ベクトル142に適用され得る複数の関数を含んで良い。関数は、Hash_KEYGEN関数、Hash(x)関数、Hash(y)関数、及びHash_Verify関数を有して良い。Hash_KEYGEN関数は、ハッシュ鍵を生成するよう構成されて良い。Hash(x)関数及びHash(y)関数は、1又は複数の入力ベクトル(例えば、平文ベクトル142)をハッシングするよう構成されて良い。Hash_Verify関数は、入力ベクトルの間の関係を検証するよう構成されて良い。
線形関係ハッシュは、以下の線形関係ハッシュ式に従い動作環境100において適用されて良い。
Figure 0006922385
線形関係ハッシュ式において、A、Ber τ
Figure 0006922385
Figure 0006922385
線形関係ハッシュ式におけるセキュリティは、上述のLPNに基づいて良い。さらに、線形関係ハッシュ式は、対称的であって良く、実質的に一方向性であって良い。これは、セキュリティを更に向上する。
例えば、線形関係ハッシュ式の一方向性は、以下の一方向性式に従い定められて良い。
Figure 0006922385
が高minエントロピ分布から得られ、e1←Ber τの場合;
Figure 0006922385
任意の多項式時間(つまり実現可能な実行時間の)アルゴリズムがx又は任意のxに近いx’を出力することが、計算的に不可能である。
一方向性式、e1←Ber τ、x、Hash(x)、A、
Figure 0006922385
及びhxは、上述の通りである。高minエントロピ分布は、バイオメトリックテンプレートのような分布を含む。
<関係線形暗号化方式>
線形鍵は、セキュリティパラメータについて生成されて良い。概して、本願明細書で用いられるセキュリティパラメータは、鍵長を表して良い。幾つかの実施形態では、線形鍵の生成は、以下の例示的な線形ビットベクトル鍵式に従い実行されて良い。線形ビットベクトル鍵式の一例は、以下を含む。
Given λ:
整数m、n、及び実数τ∈[0,1]を生成する;
サイズm×nのランダム2進行列Aを生成する;
鍵生成アルゴリズム(Keygen−CPA)、暗号化アルゴリズム(EncCPA)、及び解読アルゴリズム(DecCPA)を含む任意のIND_CCAセキュア公開鍵暗号化方式を決定する;
Keygen−CPAを3回実行して、公開/秘密鍵ペアの3個のセットを生成する;
(pk_1,sk_1),(pk_2,sk_2),及び(pk_3,sk_3);
以下を設定する:
pkxlin:=(A,τ,pk_1,pk_3);skxlin:=sk_1;
pkylin:=(A,τ,pk_2,pk_3);skylin:=sk_2;
skRlin:=(A,τ,pk_3)
線形ビットベクトル鍵式では、←及びλは、概して上述の通りである。さらに、線形ビットベクトル鍵式では、pkxlinは第1線形公開鍵を表し、skxlinは第1線形秘密鍵を表し、pkylinは第2線形公開鍵を表し、skylinは第2線形秘密鍵を表し、skRlinは関係線形秘密鍵を表す。パラメータτは、ノイズ確率を表す。さらに、パラメータpkxlin、skxlin、pkylin、skylin、及びskRlinは、上述の鍵生成アルゴリズム(KeyGen)の出力の少なくとも1つの線形部分を表して良い。幾つかの実施形態では、τは1/4に等しくて良い。
線形暗号化モジュール112は、平文ベクトル142を暗号化して良い。線形暗号化モジュール112は、平文ベクトル142を受信して良い。幾つかの実施形態では、線形暗号化モジュール112は、以下の例示的な線形ビットベクトル暗号化式に従い、平文ベクトル142を暗号化して良い。
m1=<m1 i=1∈F ;m2=<m2 i=1∈F
cx:=EncCPA(pk_3,A×m1+e1),EncCPA(pk_1,m1);
cy:=EncCPA(pk_3,A,m2+e2),EncCPA(pk_2,m2);
e1∈F 、各要素は、確率τで1であり、その他の場合0である;
e2∈F 、各要素は、確率τで1であり、その他の場合0である。
線形ビットベクトル鍵式において、EncCPAは、上述のIND_CCAセキュア公開鍵暗号化方式の暗号化アルゴリズムを表す。演算子+は、ビット毎のXOR演算子を表す。パラメータcxは第1線形暗号文を表し、パラメータcyは第2線形暗号文を表す。パラメータm1は、平文ベクトル142のような、nビットの第1メッセージを表す。パラメータm1は、平文ベクトル142のうちの第1平文ベクトルの要素を表す。パラメータm2は、平文ベクトル142のうちの第2平文ベクトルを表す。パラメータm2は、平文ベクトル142のうちの第2平文ベクトルの要素を表す。パラメータFは体を表す。第1体の隣にある添え字2は、体の基本数を表す。第1体の隣にある添え字nは、第1体要素を含むベクトルの次元を表す。パラメータiは、インデックス変数を表す。線形ビットベクトル鍵式では、インデックス変数は、1から第1体の次元までの範囲を有する。演算子<>は、簡単な表記法を表す。例えば、<b i=1は、b,b,...,bを表す。
線形ビットベクトル暗号化式は、上述の第1暗号化アルゴリズム(EncX)及び第2暗号化アルゴリズム(EncY)を定めて良い。例えば、第1暗号化アルゴリズムは次のように定められて良い。
given:m1及びpkxlin,
ランダム2進行列Aをサンプリングする,
cxを次の通り構成する:
cx:=EncCPA(pk_3,A×m1+e1),EncCPA(pk_1,m1)
同様に、第2暗号化アルゴリズムは次のように定められて良い。
given m2及びpkylin,
ランダム2進行列Aをサンプリングする,
cyを次の通り構成する:
cy:=EncCPA(pk_3,A,m2+e2),EncCPA(pk_2,m2)
第1線形暗号文及び第2線形暗号文は、線形認証モジュール132に通信されて良い。追加又は代替で、第1線形暗号文及び第2線形暗号文は、ネットワーク107を介して、認証サーバ140に通信されて良い。認証サーバ140は、第1線形暗号文及び第2線形暗号文を受信し、第1線形暗号文及び第2線形暗号文を線形認証モジュール132に通信して良い。
幾つかの実施形態では、第1線形暗号文は、第2線形暗号文の通信の前に、線形認証モジュール132に通信されて良い。線形認証モジュール132は、第1線形暗号文を登録暗号文130としてメモリ122に格納して良い。第1線形暗号文を通信した後に、第2線形暗号文は、線形認証モジュール132に通信されて良い。さらに、設定モジュール144は、関係線形秘密鍵を線形認証モジュール132に通信して良い。
認証のために関係暗号化が用いられる幾つかの実施形態では、第1線形暗号文は、登録暗号文130として格納されて良い。登録暗号文130は、第2線形暗号文又は任意の他の後続の線形暗号文との比較の基礎として用いられて良い。関係暗号化を実施する他の実施形態では、第1線形暗号文は、登録暗号文130として格納されなくて良い。例えば、第1線形暗号文及び第2線形暗号文は、それらを格納せずに分析されて良く、又は両者とも格納されて良い。
線形認証モジュール132は、第1線形暗号文と第2線形暗号文との間の線形関係を発見するよう構成されて良い。幾つかの実施形態では、線形認証モジュール132は、以下の例示的な線形ビットベクトル検証式に従って、第1線形暗号文と第2線形暗号文との間の線形関係を発見する。
z=<z i=1∈F
cx_0:=EncCPA(pk_3,A×m1+e1);
cy_0:=EncCPA(pk_3,A×m2+e2);
dist(DecCPA(sk_3,cx_0)+DecCPA(sk_3,cy_0)+A×z)2×τ×m
線形ビットベクトル検証式において、<>,i,n,A,F ,pk_3,m1,e1,τ,m2,e2,sk_3は、上述の通りである。線形ビットベクトル検証式において、distは、mビットベクトルのハミング重みを評価する関数である。パラメータcx_0は、第1線形暗号文の第1成分を表す。パラメータcy_0は、第2線形暗号文の第1成分を表す。パラメータzは、特定ベクトルを表す。パラメータzは、特定ベクトルの要素を表す。演算子+は、ビット毎のXOR演算子を表す。
線形ビットベクトル検証式は、上述の検証アルゴリズム(Verify)を定めて良い。同様に、検証アルゴリズムは次のように定められて良い。
given cy,cx,z,skRlin:=(A,τ,sk_3):
以下の不等式をチェックする:
dist(DecCPA(sk_3,cx_0)+DecCPA(sk_3,cy_0)+A×z)2×τ×m
線形ビットベクトル解読式は、上述の第1解読アルゴリズム(DecX)及び第2解読アルゴリズム(DecY)を定めて良い。例えば、第1解読アルゴリズムは次のように定められて良い。
given:cx及びskxlin,
式に従い第1平文ベクトル142を1ビットずつ構成する:
cx_1=EncCPA(pk_1,m1);
m1=DecCPA(skxlin,cx_1)
第1解読アルゴリズムにおいて、skxlin,EncCPA,pk_1,m1,skxlin,及びDecCPAは、上述の通りである。パラメータcx_1は、第1線形暗号文の第2成分を表す(例えばcx)。
同様に、第2の解読アルゴリズムは次のように定められて良い。
given:cy及びskylin,
式に従い第2平文ベクトル142Bを1ビットずつ構成する:
cy_1=EncCPA(pk_2,m2)
m2=DecCPA(skylin,cy_1)
第2解読アルゴリズムにおいて、skylin,EncCPA,pk_2,m2,及びDecCPAは、上述の通りである。パラメータcy_1は、第2線形暗号文の第2成分である(例えばcy)。
<関係近似ハッシュ方式>
本開示に記載される実施形態において実施される関係近似ハッシュ方式では、暗号文の解読は可能でなくて良い。したがって、関係近似ハッシュ方式は、関係近似暗号化方式の代わりに関係近似ハッシュ方式であって良い。関係近似ハッシュ方式は、近似ハッシュ値の間の近さ(closeness)を決定するために用いられて良い。幾つかの実施形態では、近似は、ハミング距離の観点で与えられて良い。関係近似ハッシュ方式では、設定モジュール144は、鍵を生成する。鍵を用いて、近似暗号化モジュール114は、平文ベクトル142の暗号化及び/又は解読を実行する。近似ハッシュ値は、次に、近似認証モジュール128に通信されて良い。近似認証モジュール128では、近似ハッシュ値の間の近似が検出されて良い。
例えば、設定モジュール144は、CPA(chosen−plaintext attack)鍵生成アルゴリズム及び線形鍵生成アルゴリズムの出力を生成して良い。例えば、設定モジュール144は、本願明細書の別の場所に記載のように、線形鍵を起動(run)する。CPA鍵生成アルゴリズムは、CPA公開鍵及びCPA秘密鍵を出力して良い。線形鍵生成アルゴリズムは、上述のようにpkxlin,skxlin,pkylin,skylin,及びskRlinを出力して良い。
さらに、設定モジュール144は、誤り訂正符号(error correcting code:ECC)を選択して良い。ECCは、線形誤り訂正符号方式であって良い。ECCは、長さ、ランク、及び距離を有して良い。さらに、ECCは、ECC符号化演算子(ENCODE)及びECC復号化演算子(DECODE)も有して良い。設定モジュール144は、次に、第1近似秘密鍵、第2近似秘密鍵、第1近似公開鍵、第2近似公開鍵、及び近似関係秘密鍵(集合的に、「近似鍵」)を生成して良い。近似鍵は、近似ハッシュ値を生成し及び近似ハッシュ値の間の近似を検出するために、平文ベクトル142をハッシングするために使用される。
第1近似秘密鍵は、CPA秘密鍵及び第1線形秘密鍵に基づき定められて良い。第2近似秘密鍵は、CPA秘密鍵及び第2線形秘密鍵に基づき定められて良い。第1近似公開鍵は、ENCODE、DECODE、CPA公開鍵及び第1線形公開鍵に基づき定められて良い。第2近似公開鍵は、ENCODE、DECODE、CPA公開鍵及び第2線形公開鍵に基づき定められて良い。近似関係秘密鍵は、CPA秘密鍵及び線形関係秘密鍵に基づき定められて良い。
幾つかの実施形態では、設定モジュール144は、以下の例示的な近似鍵生成式に従って、近似鍵を生成して良い。
(pkCPA,skCPA)←KeyGen−CPA;
(pkxlin,pkylin,skxlin,skylin,skRlin)←KeyGenLinear;X←Zn×k
pkxprox:=(ENCODE,DECODE,pkCPA,pkxlin,X);
pkyprox:=(ENCODE,DECODE,pkCPA,pkylin,X);
skxprox:=(skCPA,skxlin);
skyprox:=(skCPA,skylin);
skRprox:=(skCPA,skRlin)
近似鍵生成式において、pkxlin,pkylin,skxlin,skylin,skRlin,ENCODE及びDECODEは上述の通りである。演算子←は、ランダムサンプリング演算子を表す。パラメータpkCPAは、CPA公開鍵を表す。パラメータskCPAは、CPA秘密鍵を表す。パラメータKeyGen−CPAは、CPA鍵生成アルゴリズムを表す。パラメータkは、ランクを表す。パラメータpkxproxは、第1近似公開鍵を表す。パラメータpkyproxは、第2近似公開鍵を表す。パラメータXは、ランダム行列を表す。パラメータskxproxは、第1近似秘密鍵を表す。パラメータskyproxは、第2近似秘密鍵を表す。パラメータskRproxは、近似関係秘密鍵を表す。さらに、パラメータpkxprox、skxprox、pkyprox、skyprox、及びskRproxは、上述の鍵生成アルゴリズム(KeyGen)の出力の少なくとも1つの近似部分を表して良い。
第1線形公開鍵は、第1平文ベクトル142Aをハッシングして第1近似ハッシュ値を生成するために、近似暗号化モジュール114により使用されて良い。近似暗号化モジュール114は、平文ベクトル142を受信し、平文ベクトル142を近似暗号化モジュール114に通信して良い。平文ベクトル142は、上述の第1又は第2体のメンバを有して良い。
近似暗号化モジュール114は、第3体から近似乱数(以下のr)をサンプリングして良い。第3体は、基本数と、ECCのランクであって良い次元と、を有して良い。近似暗号化モジュール114は、次に、第1近似ハッシュ値及び第2近似ハッシュ値を構成して良い。第1近似ハッシュ値及び第2近似ハッシュ値の各々は、2つの部分を有して良い。第1近似ハッシュ値の第1部分は、CPA公開鍵と第1平文ベクトル142Aの和とを入力として受信するCPA暗号化アルゴリズム、及び近似乱数を入力として受信するENCODEを有して良い。第1近似ハッシュ値の第2部分は、第1線形公開鍵と近似乱数とを受信する第1線形暗号化アルゴリズムを有して良い。
第2近似ハッシュ値の第1部分は、CPA公開鍵と第2平文ベクトル142Bの和とを入力として受信するCPA暗号化アルゴリズム、及び近似乱数を入力として受信するENCODEを有して良い。第2近似ハッシュ値の第2部分は、第2線形公開鍵と近似乱数とを入力として受信する第2線形暗号化アルゴリズムを有して良い。
幾つかの実施形態では、近似ハッシュ値は、以下の例示的な近似暗号化式に従って生成されて良い。
cxp1:=EncCPA(pkCPA,m1+ENCODE(r));
cxp2:=EncXLinear(pkxlin,);
cxp:=(cxp1,cxp2);
cyp1:=EncCPA(pkCPA,m2+ENCODE(r));
cyp2:=EncXLinear(pkylin,);
cyp:=(cyp1,cyp2)
近似暗号化式において、ENCODE,m1,m2,pkCPA,X,pkxlin,及びpkylinは、上述の通りである。EncCPAは、CPA暗号化アルゴリズムを表す。パラメータrは、kビットの近似乱数を表す。パラメータcxp1は、第1近似ハッシュ値の第1部分を表す。パラメータcxp2は、第1近似ハッシュ値の第2部分を表す。パラメータcxpは、第1近似ハッシュ値を表す。パラメータcyp1は、第2近似ハッシュ値の第1部分を表す。パラメータcyp2は、第2近似ハッシュ値の第2部分を表す。パラメータcypは、第2近似ハッシュ値を表す。パラメータEncXLinearは、第1線形暗号化アルゴリズムを表す。パラメータEncYLinearは、第2線形暗号化アルゴリズムを表す。
第1近似ハッシュ値は、認証サーバ140に通信されて、登録暗号文130として認証サーバ140に格納されて良い。第2近似公開鍵は、第2平文ベクトル142Bをハッシングして第2近似ハッシュ値を生成するために、近似暗号化モジュール114により使用されて良い。第2近似ハッシュ値は、認証サーバ140に通信されて良い。近似関係秘密鍵は、認証サーバ140において使用されて良い。特に、近似関係秘密鍵は、第2近似ハッシュ値と第1近似ハッシュ値との間の近似を検出するために、近似認証サーバ128により使用されて良い。この近似は、登録暗号文130として格納される。
近似認証モジュール128は、第1近似ハッシュ値と第2近似ハッシュ値との間の近似を検出するよう構成されて良い。近似を検出するために、近似認証モジュール128は、公開鍵情報で利用可能なDECODEにアクセスして良い。近似認証モジュール128は、第1近似ハッシュ値のランダム性の和(randomness sum)を復元して良い。第1近似ハッシュ値のランダム性の和は、DECODEとして定められて良い。DECODEは、CPA秘密鍵と第1近似ハッシュ値の第1部分の和とを入力として受信するCPA解読アルゴリズム(DecCPA)と、CPA秘密鍵と第2近似ハッシュ値の第1部分とを入力として受信するCPA解読アルゴリズムと、を入力として受信する。
DECODEがエラーを返す場合、近似認証モジュール128は、拒否を返して良い。さらに、近似認証モジュール128は、線形検証アルゴリズムを出力して良い。線形検証アルゴリズムは、線形関係秘密鍵、第2近似ハッシュ値の第1部分、第2近似ハッシュ値の第2部分、及びランダム性の和を入力として受信する。
したがって、近似検証アルゴリズムは、第1近似ハッシュ値、第2近似ハッシュ値、及び近似秘密鍵を受信するよう定められて良い。近似検証アルゴリズムは、ランダム性の和を復元し、拒否又は線形検証アルゴリズムを出力して良い。線形検証アルゴリズムは、線形関係秘密鍵、第2近似ハッシュ値の第1部分、第2近似ハッシュ値の第2部分、及びランダム性の和を入力として受信する。例えば、近似認証モジュール128は、以下の例示的な近似検証アルゴリズムに従って、1又は複数の演算を実行して良い。
rs:=DECODE(DecCPA(skcpa,cx_1+DecCPA(skcpa,cy_1)));
Output{DECODEが⊥を返す場合、拒否する;
VerifyLinear(skRlin,cs_2,cy_2, rs )}
近似検証アルゴリズムにおいて、skcpa,cx_1,cx_2,cy_1,cy_2,skRlin,X,z,DecCPA,及びDECODEは、上述の通りである。パラメータOutputは、近似認証モジュール128の出力を示す。パラメータZrsは、ランダム性の和を表す。パラメータ⊥は、エラーを表す。VerifyLinearは、線形検証アルゴリズムを表す。
本願明細書に記載の関係近似暗号化方式は、以下の条件が真である場合にセキュアであり得る。
ECCは、(n’,k,2δ)線形誤り訂正方式である;
(KeyGenCPA,EncCPA,DecCPA)は、IND−CPAセキュア暗号化方式である;
(KeyGenLinear,EncXLinear,DecXLinear,EncYLinear,EncYLinear,VerifyLinear)は、F における線形の関係暗号化方式である。
条件の中で、KeyGenCPA,EncCPA,DecCPA,KeyGenLinear,EncXLinear,DecXLinear,EncYLinear,DecYLinear,VerifyLinear,及びFは、上述の通りである。ECCはECCを表す。パラメータn’は、コードワードの長さを表す。パラメータkは、メッセージの長さを表す。パラメータ2δは、最小距離を表す。
本開示の範囲から逸脱することなく動作環境100に対し変更、追加又は省略が行われて良い。本開示は、1又は複数のユーザ装置102、1又は複数の認証サーバ140、1又は複数の第2エンティティ150、1又は複数の第1エンティティ152、又はそれらの任意の組合せを有する動作環境100に適用されて良い。
さらに、本願明細書に記載の実施形態の中の種々のコンポーネントの分割は、分割が全ての実施形態において生じることを意味しない。本開示の利益により、記載のコンポーネントが単一のコンポーネントに統合され又は複数のコンポーネントに分割されても良いことが理解される。
図2は、本願明細書に記載の少なくとも1つの実施形態に従って構成される生体認証システム(バイオメトリックシステム)200のブロック図を示す。生体認証システム200は、認証サービスが提供される図1の例示的な動作環境100に含まれ又はそれを含んで良い。生体認証システム200では、ユーザ206の認証は、認証サーバ140により実行されて良い。生体認証システム200では、図1を参照して議論した関係暗号化は、ユーザ206の同一性を認証するために用いられて良い。
認証サービスは、登録処理及び認証処理を有して良い。登録処理は、認証処理において使用され得る情報及びデータをユーザ206から得るステップを有して良い。認証処理は、時間的に後に(例えば、登録処理に続いて)生じて良い。認証処理では、ユーザ206の同一性は、図1を参照して議論した関係暗号化動作のうちの1又は複数を用いて認証されて良い。概して、ユーザ206の同一性は、本願明細書に記載のように、第1線形暗号文と第2線形暗号文との間の線形を発見することにより、及び第1近似ハッシュ値と第2近似ハッシュ値との間の近似を検出することにより、認証されて良い。第1線形暗号文及び第1近似ハッシュ値は、第1バイオメトリックテンプレートの形式で、ユーザ206により提供されて良い。第1バイオメトリックテンプレートは、図1の平文ベクトル142のうちの第1平文ベクトル及び/又は図2の登録入力に含まれて良い。
ユーザ206及び/又は偽者222(後述する)は、1又は複数のバイオメトリック特徴を有する個人を有して良い。バイオメトリック特徴は、1又は複数のユニークな特徴を有して良い。例えば、バイオメトリック特徴は、畝及び/又畝間のパターンを有する、ユーザ206の指紋を有して良い。幾つかの実施形態では、ユーザ206は、ユーザ装置102と関連付けられて良い。例えば、ユーザ206は、ユーザ装置102を所有し又は定期的に操作して良い。幾つかの実施形態では、ユーザ206は、ユーザ装置102と具体的に関連付けられなくて良い。例えば、ユーザ装置102は、ユーザ206を含む複数のユーザにより公的にアクセス可能であって良い。幾つかの実施形態では、偽者222は、バイオメトリック特徴を表し得る入力を供給するエンティティを有して良い。
幾つかの実施形態では、ユーザ装置102は、センサ298を有してよい。センサ298は、例えばユーザ206を認証するために使用されるバイオメトリック特徴を測定する又はキャプチャするよう構成されるハードウェア装置を有して良い。ユーザ206のバイオメトリック特徴が測定され又はキャプチャされると、ユーザ装置102は、バイオメトリックテンプレートを生成して良い。バイオメトリックテンプレートは、バイオメトリック特徴を表しても良く、ユーザ206のバイオメトリック特徴のユニークな特徴のうちの少なくとも幾つかを有して良い。バイオメトリックテンプレートは、例えば、バイオメトリック特徴のグラフィカル表現及び/又はアルゴリズム表現を有して良い。
センサ298の幾つかの例は、指紋スキャナ、虹彩の画像をキャプチャするよう構成されるカメラ、DNAを測定するよう構成される装置、心拍をキャプチャするよう構成される心拍モニタ、骨格筋により生成される電気的活動をキャプチャするよう構成されるウエアラブル筋電センサ、又はバイオメトリック特徴を測定し又はキャプチャするよう構成される任意の他のセンサ298、を有して良い。
図示の生体認証システム200では、センサ298は、ユーザ装置102に含まれる。他の実施形態では、センサ298は、ユーザ装置102又はそれに含まれるプロセッサに通信可能に結合されて良い。例えば、センサ298は、図1のネットワーク107のようなネットワークを介してユーザ装置102に信号を通信するよう構成されて良い。図2には1個のみのセンサ298が示されるが、幾つかの実施形態では、ユーザ装置102は、1又は複数のセンサ298を有して良い。
関係暗号化モジュール110は、第1線形暗号文及び第1近似ハッシュ値を登録入力232から生成して良い。関係暗号化モジュール110は、次に、第1線形暗号文及び第1近似ハッシュ値を登録データ234として、認証サーバ140に通信して良い。
関係認証モジュール108は、第1線形暗号文及び第1近似ハッシュ値を登録暗号文130として格納して良い。登録暗号文130は、ユーザ206に関連付けられて良い。例えば、ユーザ206は、関連付けられたユーザ識別子を有して良い。幾つかの実施形態では、登録暗号文130は、メモリ122に格納されて良い。
関係暗号化モジュール110は、次に、第1チャレンジ入力236A又は第2チャレンジ入力236B(概して、チャレンジ入力236)を受信して良い。第1チャレンジ入力236A及び第2チャレンジ入力236Bは、ユーザ206又は偽者222による、彼らの同一性を認証させる試みであって良い。第1チャレンジ入力236A及び/又は第2チャレンジ入力236Bは、例えば、センサ298により読み取られた第2バイオメトリックテンプレートを有して良い。第2バイオメトリックテンプレートは、ユーザ206又は偽者222のバイオメトリック特徴のユニークな特徴を表して良い。
関係暗号化モジュール110は、第2線形暗号文及び第1近似ハッシュ値を登録入力236から生成して良い。関係暗号化モジュール110は、次に、第2線形暗号文及び第2近似ハッシュ値を登録データ238として、認証サーバ140に通信して良い。
関係認証モジュール108は、チャレンジデータ238を受信して良い。関係認証モジュール108は、次に、ユーザ206の登録暗号文130を読み出して良い。
関係認証モジュール108は、登録暗号文130として格納された第1線形暗号文とユーザ装置102から受信した第2線形暗号文との間の線形関係を決定して良い。さらに、関係認証モジュール108は、登録暗号文130として格納された第1近似ハッシュ値とユーザ装置102から受信した第2近似ハッシュ値との間の近似関係を決定して良い。
第1線形暗号文が第2線形暗号文と線形関係を有し、及び第1近似ハッシュ値と第2近似ハッシュ値との間の特定の近似が存在することに応答して、認証サーバ140は、第1バイオメトリックテンプレートと第2バイオメトリックテンプレートとの間に概算類似性が存在すると決定して良い。
したがって、ユーザ206により提供される第1チャレンジ入力236Aが、第2線形暗号文及び第2近似ハッシュ値の基礎である場合、第1線形暗号文と第2線形暗号文との間に線形関係が存在し、第1近似ハッシュ値と第2近似ハッシュ値との間に近似が存在し得る。
しかしながら、偽者222により提供される第2チャレンジ入力236Bが、第2線形暗号文及び第2近似ハッシュ値の基礎である場合、第1線形暗号文と第2線形暗号文との間に線形関係が存在せず、第1近似ハッシュ値と第2近似ハッシュ値との間に近似が存在しない。
線形関係及び/又は近似に基づき、関係認証モジュール108は、認証を決定できる。例えば、関係認証モジュール108は、チャレンジデータ238がユーザ206又は偽者222に起因するかを決定して良い。関係認証モジュール108は、線形関係の発見及び/又は近似の検出に基づき、認証信号242を通信して良い。関係暗号化モジュール110は、認証信号242を受信して良い。
本開示の範囲から逸脱することなく生体認証システム200に対し変更、追加又は省略が行われて良い。具体的には、図2に示す実施形態は、1人のユーザ206、1つのユーザ装置102、及び1つの認証サーバ140を有する。しかしながら、本開示は、1又は複数のユーザ206、1又は複数のユーザ装置102、1又は複数の認証サーバ140、又はそれらの任意の組み合わせを有し得る生体認証システム200に適用される。
さらに、本願明細書に記載の実施形態の中の種々のコンポーネントの分割は、分割が全ての実施形態において生じることを意味しない。本開示の利益により、記載のコンポーネントが単一のコンポーネントに統合され又は複数のコンポーネントに分割されて良いことが理解される。例えば、幾つかの実施形態では、関係暗号化モジュール110及び/又はそれに属する1又は複数の機能は、認証サーバ140にあるモジュールにより実行されて良い。
図3は、関係暗号化のために構成される例示的なコンピューティングシステム300を示す。コンピューティングシステム300は、例えば図1の動作環境100において実装されて良い。コンピューティングシステム300の例は、ユーザ装置102又は認証サーバ140を有して良い。コンピューティングシステム300は、1又は複数のプロセッサ304、メモリ308、通信ユニット302、ユーザインタフェース装置314、データ記憶装置301を有して良い。データ記憶装置301は、関係認証モジュール108、関係暗号化モジュール110(集合的に、モジュール108/110)を有する。
プロセッサ304は、任意の適切な特定用途向け又は汎用コンピュータ、コンピューティングエンティティ、又は種々のコンピュータハードウェア若しくはソフトウェアモジュールを有して良く、任意の適切なコンピュータ可読媒体に格納された命令を実行するよう構成され得る処理装置を用いて実施されて良い。例えば、プロセッサ304は、マイクロプロセッサ、マイクロコントローラ、デジタシグナルプロセッサ(DSP)、ASIC、FPGA又はプログラム命令を解釈し及び/若しくは実行し並びに/又はデータを処理するよう構成された任意の他のデジタル若しくはアナログ回路を有して良い。
図3には単一のプロセッサを示したが、プロセッサ304は、より一般的には、本開示で説明される任意の数の工程を個々に又は共同で実行するよう構成される任意の数のプロセッサを有して良い。さらに、プロセッサ304のうちの1又は複数は、1又は複数の異なる電子装置又はコンピューティングシステムに存在して良い。幾つかの実施形態では、プロセッサ304は、プログラム命令を解釈し及び/又は実行し、及び/又はメモリ308、データ記憶装置301又はメモリ308及びデータ記憶装置301に格納されたデータを処理して良い。幾つかの実施形態では、プロセッサ304は、データ記憶装置301からプログラム命令をフェッチし、該プログラム命令をメモリ308にロードして良い。プログラム命令がメモリ308にロードされた後、プロセッサ304は該プログラム命令を実行して良い。
メモリ308及びデータ記憶装置301は、コンピュータ実行可能命令又はデータ構造を伝える又は格納しているコンピュータ可読記憶媒体を含み得る。用語コンピュータ可読媒体は、単一の媒体又は複数の媒体を表して良い。このようなコンピュータ可読媒体は、プロセッサ304のような汎用又は特定目的コンピュータによりアクセスできる任意の利用可能な媒体を含み得る。例として且つ限定ではなく、このようなコンピュータ可読記憶媒体は、RAM、ROM、EEPROM、CD−ROM又は他の光ディスク記憶装置、磁気ディスク記憶装置又は他の磁気記憶装置、フラッシュメモリ装置(例えば、固体メモリ素子)を含む有形又は非一時的コンピュータ可読記憶媒体、又はコンピュータにより実行可能な命令若しくはデータ構造の形式で所望のプログラムコード手段を伝える若しくは格納するために用いられ汎用若しくは特定目的コンピュータによりアクセス可能な他の記憶媒体を有し得る。上述の組合せも、コンピュータ可読記憶媒体の範囲に包含され得る。コンピュータ実行可能命令は、例えば、プロセッサ304に特定の工程又は工程のグループを実行させるよう構成される命令及びデータを含み得る。
コンピュータにより実行可能な命令は、例えば、汎用コンピュータ、特定目的コンピュータ又は特定目的処理リソースに特定の機能又は機能グループを実行させる命令及びデータを有する。本発明の主題は構造的特徴及び/又は方法論的動作に特有の言葉で記載されたが、本発明の主題は、特許請求の範囲に定められる上述の特定の特徴又は動作に限定されないことが理解されるべきである。むしろ、上述の特定の特徴及び動作は、特許請求の範囲の実施の例示的形態として開示されたものである。
通信ユニット302は、通信を受信し及び送信するよう構成されるハードウェアの1又は複数のピースを有して良い。幾つかの実施形態では、通信ユニット302は、通信ハードウェア装置の中でも特に、アンテナ、有線ポート、変調/復調ハードウェア、のうちの1又は複数を有して良い。特に、通信ユニット302は、コンピューティングシステム300の外部から通信を受信するよう、及び該通信をプロセッサ304に提示し又はプロセッサ304からの通信を別の装置若しくはネットワーク(例えば、図1の107)に送信するよう、構成されて良い。
ユーザインタフェース装置314は、ユーザからの入力を受信し及び/又はユーザに出力を提供するよう構成されるハードウェアの1又は複数のピースを有して良い。幾つかの実施形態では、ユーザインタフェース装置314は、ハードウェア装置の中でも特に、スピーカ、マイクロフォン、ディスプレイ、キーボード、タッチスクリーン、ホログラフィックプロジェクション、のうちの1又は複数を有して良い。
モジュール108/110は、データ記憶装置301に格納されたプログラム命令を有して良い。プロセッサ304は、モジュール108/110をメモリ308にロードし、モジュール108/110を実行するよう構成されて良い。代替で、プロセッサ304は、メモリ308にロードしないで、データ記憶装置301からモジュール108/110を1行毎に実行して良い。モジュール108/110を実行するとき、プロセッサ304は、本開示の他の場所に記載したように、関係認証を実行するよう構成されて良い。
本開示の範囲から逸脱することなくコンピューティングシステム300に対し変更、追加又は省略が行われて良い。例えば、幾つかの実施形態では、コンピューティングシステム300は、ユーザインタフェース装置314を有しなくて良い。幾つかの実施形態では、コンピューティングシステム300の異なるコンポーネントは、物理的に別個であって良く、任意の適切なメカニズムにより通信可能に結合されて良い。例えば、データ記憶装置301は、記憶装置に通信可能に結合されるプロセッサ304とメモリ308と通信ユニット302とを含むサーバから分離した、該記憶装置の部分であって良い。
図4は、本願明細書に記載の少なくとも1つの実施形態に従って構成される、生体認証の例示的な方法400のフロー図である。方法400は、図2の生体測定システム200のような生体認証システムの中で又は図1の動作環境100の中で実行されて良い。方法400は、本願明細書に記載された認証サーバ140により幾つかの実施形態においてプログラム制御されて実行されて良い。認証サーバ140は、方法400を実行する又はその実行を制御するためにプロセッサにより実行可能なプログラムコード又は命令を符号化し又は格納している非一時的コンピュータ可読媒体(例えば、図1のメモリ122又は図3のメモリ308)を含んで良く又はそれに通信可能に結合されて良い。追加又は代替で、認証サーバ140は、方法400を実行する又はその実行を制御するためにコンピュータ命令を実行するよう構成されるプロセッサ(例えば、図3のプロセッサ304)を有して良い。別個のブロックとして示したが、所望の実装に依存して、種々のブロックは、更なるブロックに分割され、少ないブロックに結合され、又は除去されて良い。
方法400はブロック402で開始して良い。ブロック402で、第1線形暗号文が受信されて良い。第1線形暗号文は、認証サーバにより受信されて良い。例えば、図1を参照すると、ユーザ装置102は、第1線形暗号文を認証サーバ140に通信して良い。第1線形暗号文は、高minエントロピ分布からサンプリングされ得る第1バイオメトリックテンプレートを表して良い。
第1バイオメトリックテンプレートは、関係線形暗号化方式を用いて暗号化されて良い。関係線形暗号化方式は、LPNに基づく線形関係ハッシュに基づいて良い。さらに、関係線形暗号化方式は、IND_CCAセキュア公開鍵暗号化方式に更に基づいて良い。IND_CCAセキュア公開鍵暗号化方式は、鍵生成アルゴリズム(Keygen−CPA)、暗号化アルゴリズム(EncCPA)、及び解読アルゴリズム(DecCPA)を含んで良い。
ブロック404で、第1近似ハッシュ値が受信されて良い。第1近似ハッシュ値は、認証サーバにより受信されて良い。例えば、図1を参照すると、ユーザ装置102は、第1近似ハッシュ値を認証サーバ140に通信して良い。第1近似ハッシュ値は、関係近似ハッシュ方式を用いて暗号化された第1バイオメトリックテンプレートを表して良い。関係近似ハッシュ方式は、関係線形暗号化方式及びECCに基づいて良い。
ブロック406で、第1線形暗号文及び/又は第1近似ハッシュ値は、登録暗号文として格納されて良い。例えば、第1線形暗号文及び/又は第1近似ハッシュ値は、認証サーバ140のメモリ122のような認証サーバのメモリに格納されて良い。
ブロック408で、第2線形暗号文が受信されて良い。第2線形暗号文は、高minエントロピ分布からサンプリングされ得る第2バイオメトリックテンプレートを表して良い。第2バイオメトリックテンプレートは、関係線形暗号化方式を用いて暗号化されて良い。第1線形暗号文及び/又は第2線形暗号文は、本開示の別の場所に記載される線形ビットベクトル暗号化式に従い暗号化されて良い。
ブロック410で、第2近似ハッシュ値が受信されて良い。第2近似ハッシュ値は、関係近似暗号化方式を用いて暗号化される第2バイオメトリックテンプレートを表して良い。幾つかの実施形態では、第1近似ハッシュ値及び/又は第2近似ハッシュ値は、本開示の別の場所に記載される近似暗号化式に従い生成される。
ブロック412で、第1線形暗号文と第2線形暗号文との間の線形関係が、発見されて良い。線形関係は、線形関係鍵を用いて発見されて良い。幾つかの実施形態では、線形関係の発見は、本開示の他の場所に記載される検証アルゴリズムに従い実行されて良い。さらに、幾つかの実施形態では、発見は、ANDゲート及びORゲートのみを用いて実行されて良い。
ブロック414で、第1近似ハッシュ値と第2近似ハッシュ値との間の近似が検出されて良い。近似は、ハミング距離の観点で決定されて良い。幾つかの実施形態では、近似の検出は、本開示の他の場所に記載される近似検証アルゴリズムに従い実行されて良い。さらに、幾つかの実施形態では、発見は、ANDゲート及びORゲートのみを用いて実行されて良い。ブロック418で、ユーザの同一性は、近似及び線形関係に基づき認証されて良い。
当業者は、上述の及び本願明細書に開示した他の手順及び方法において、その処理及び方法で実行される機能が異なる順序で実施されても良いことを理解するだろう。さらに、概略のステップ及び動作は、単に例として提供され、幾つかのステップ及び動作は、開示の実施形態から逸脱することなく、任意であり、より少ないステップ及び動作に組み合わされ、又は追加ステップ及び動作に拡張されて良い。
本願明細書で用いられるように、用語「モジュール」、「コンポーネント」、及び/又は「エンジン」は、コンピュータシステムで実行されるソフトウェアオブジェクト又はルーチンを表し得る。本願明細書に記載されたのと異なるコンポーネント、モジュール、エンジン及びサービスは、(例えば、別個のスレッドとして)コンピューティングシステムで実行されるオブジェクト又は処理として実施されて良い。本願明細書に記載されたシステム及び方法はソフトウェアで実施されることが望ましいが、ハードウェアによる実装又はソフトウェアとハードウェアの組合せも、可能であり想定される。この説明では、「コンピュータエンティティ」は、本願明細書で先に定められたようにコンピューティングシステム、又はコンピューティングシステムで実行されるモジュール若しくはモジュールの組合せであって良い。
本願明細書に記載された全ての例及び条件文は、教育上の目的で、読者が本発明の原理及び発明者により考案された概念を理解するのを助け、技術を促進させるためであり、これらの特に記載された例及び条件に限定されないものと考えられるべきである。本発明の実施形態が詳細に記載されたが、種々の変更、置換及び修正が本発明の精神及び範囲から逸脱することなく行われうることが理解されるべきである。
以上の実施形態に加えて、更に以下の付記を開示する。
(付記1) LPN(learning parity with noise)に少なくとも部分的に基づく関係線形暗号化方式を用いて暗号化される第1バイオメトリックテンプレートを表す第1線形暗号文を受信するステップと、
前記関係線形暗号化方式を用いて暗号化される第2バイオメトリックテンプレートを表す第2線形暗号文を受信するステップと、
線形関係秘密鍵を用いて、前記第1線形暗号文と前記第2線形暗号文との間の線形関係を発見するステップと、
関係近似ハッシュ方式を用いて暗号化される前記第1バイオメトリックテンプレートを表す第1近似ハッシュ値を受信するステップであって、前記関係近似ハッシュ方式は、前記関係線形暗号化方式及び誤り訂正符号(ECC)に基づく、ステップと、
前記関係近似ハッシュ方式を用いて暗号化される前記第2バイオメトリックテンプレートを表す第2近似ハッシュ値を受信するステップと、
ハミング距離の観点で、前記第1近似ハッシュ値と前記第2近似ハッシュ値との間の近似を検出するステップと、
前記近似及び前記線形関係に基づき、ユーザの同一性を認証するステップと、
を有する方法。
(付記2) 前記関係線形暗号化方式は、鍵生成アルゴリズム、暗号化アルゴリズム、及び解読アルゴリズムを含むIND_CCAセキュア公開鍵暗号化方式に更に基づく、付記1に記載の方法。
(付記3) 前記線形関係を発見するステップは、以下の検証アルゴリズムに従い実行され、
skRlin:=(A,τ,sk_3);
given cy, cx, z,skRlin:
以下の不等式をチェックする:
dist(DecCPA(sk_3,cx_0)+DecCPA(sk_3,cy_0)+A×z)<2×τ×m)、
ここで、cyは前記第1線形暗号文を表し、
cxは前記第2線形暗号文を表し、
skRlinは線形関係秘密鍵を表し、
zは検証エンティティにより選択される特定値を表し、
Aは第1整数×第2整数の次元を有するランダム2進行列を表し、
τはノイズ確率を表し、
sk_3はIND_CCAセキュア公開鍵暗号化方式の秘密鍵を表し、
cx_0は前記第1線形暗号文の第1要素を表し、
cy_0は前記第2線形暗号文の第1要素を表し、
DecCPAは前記解読アルゴリズムを表し、
distはハミング距離演算子を表し、
mは前記第1整数を表す、
付記2に記載の方法。
(付記4) 前記第1線形暗号文は、以下の線形ビットベクトル暗号化式に従い暗号化され、
m1=<m1 i=1∈F
cx:=EncCPA(pk_3,A×m1+e1)、EncCPA(pk_1,m1);
e1∈F 、各々の要素は、確率τで1であり、その他の場合に0であり、
m1はnビットの第1メッセージを表し、
pk_3は前記IND_CCAセキュア公開鍵暗号化方式の公開鍵を表し、
pk_1は前記IND_CCAセキュア公開鍵暗号化方式の別の公開鍵を表し、
iはインデックス変数を表し、
nは第1体の次元を表し、
EncCPAは前記暗号化アルゴリズムを表し、
+演算子はビット毎のXOR演算子を表し、
は基本数2の体を表す、
付記3に記載の方法。
(付記5) 前記ノイズ確率は約0.25に等しい、付記4に記載の方法。
(付記6) 前記第1バイオメトリックテンプレートは高minエントロピ分布からサンプリングされる、付記1に記載の方法。
(付記7) 近似を検出するステップは、以下の近似検証アルゴリズムに従い実行され、
rs:=DECODE(DecCPA(skcpa,cx_1+DecCPA(skcpa,cy_1)));
Output={DECODEが⊥を返す場合、拒否する; VerifyLinear(skRlin,cx_2,cy_2,X○Z)};
ここで、Zrsはランダム性の和を表し、
DECODEはECC復号化演算子を表し、
DecCPAはIND_CCAセキュア公開鍵暗号化方式の解読アルゴリズムを表し、
cx_1は前記第1線形暗号文の第2要素を表し、
cy_1は前記第2線形暗号文の第2要素を表し、
cx_2は前記第1線形暗号文の第3要素を表し、
cy_2は前記第2線形暗号文の第3要素を表し、
skRlinは関係線形鍵を表し、
Xはランダム行列を表し、
skcpaはND_CCAセキュア公開鍵暗号化方式の鍵生成アルゴリズムにより生成されるCPA秘密鍵を表し、
⊥は誤りを表し、
zは検証エンティティにより選択される特定値を表し、
VerifyLinearは線形検証アルゴリズムを表す、
付記1に記載の方法。
(付記8) 前記第1近似ハッシュ値は、以下の近似暗号化式に従い生成され、
cxp1:=EncCPA(pkCPA,m1+ENCODE(r));
cxp2:=EncXLinear(pkxlin,X○r);
cxp:=(cxp1,cxp2)、
ここで、cxpは前記第1近似ハッシュ値を表し、
cxp1は前記第1近似ハッシュ値の第1部分を表し、
cxp2は前記第1近似ハッシュ値の第2部分を表し、
EncCPAはIND_CCAセキュア公開鍵暗号化方式の暗号化アルゴリズムを表し、
m1は前記第1バイオメトリックテンプレートを表し、
pkCPAはND_CCAセキュア公開鍵暗号化方式の鍵生成アルゴリズムにより生成されるCPA公開鍵を表し、
ENCODEはECC符号化演算子を表し、
rは近似乱数を表し、
Xはランダム行列を表し、
EncXLinearは第1線形暗号化アルゴリズムを表す、
付記1に記載の方法。
(付記9) 前記発見するステップ及び前記検出するステップは、ANDゲート及びORゲートのみを使用して実行される、付記1に記載の方法。
(付記10) 前記第1線形暗号文及び第1近似暗号文を登録暗号文として格納するステップ、を更に有する付記1に記載の方法。
(付記11) 非一時的コンピュータ可読媒体であって、工程を実行するために又はその実行を制御するためにプロセッサにより実行可能な符号化されたプログラミングコードを有し、前記工程は、
LPN(learning parity with noise)に少なくとも部分的に基づく関係線形暗号化方式を用いて暗号化される第1バイオメトリックテンプレートを表す第1線形暗号文を受信するステップと、
前記関係線形暗号化方式を用いて暗号化される第2バイオメトリックテンプレートを表す第2線形暗号文を受信するステップと、
線形関係秘密鍵を用いて、前記第1線形暗号文と前記第2線形暗号文との間の線形関係を発見するステップと、
関係近似ハッシュ方式を用いて暗号化される前記第1バイオメトリックテンプレートを表す第1近似ハッシュ値を受信するステップであって、前記関係近似ハッシュ方式は、前記関係線形暗号化方式及び誤り訂正符号(ECC)に基づく、ステップと、
前記関係近似ハッシュ方式を用いて暗号化される前記第2バイオメトリックテンプレートを表す第2近似ハッシュ値を受信するステップと、
ハミング距離の観点で、前記第1近似ハッシュ値と前記第2近似ハッシュ値との間の近似を検出するステップと、
前記近似及び前記線形関係に基づき、ユーザの同一性を認証するステップと、
を有する、非一時的コンピュータ可読媒体。
(付記12) 前記関係線形暗号化方式は、鍵生成アルゴリズム、暗号化アルゴリズム、及び解読アルゴリズムを含むIND_CCAセキュア公開鍵暗号化方式に更に基づく、付記11に記載の非一時的コンピュータ可読媒体。
(付記13) 前記線形関係を発見するステップは、以下の検証アルゴリズムに従い実行され、
skRlin:=(A,τ,sk_3);
given cy,cx,z,skRlin:
以下の不等式をチェックする:
dist(DecCPA(sk_3,cx_0)+DecCPA(sk_3,cy_0)+A×z)<2×τ×m)、
ここで、cyは前記第1線形暗号文を表し、
cxは前記第2線形暗号文を表し、
skRlinは線形関係秘密鍵を表し、
zは検証エンティティにより選択される特定値を表し、
Aは第1整数×第2整数の次元を有するランダム2進行列を表し、
τはノイズ確率を表し、
sk_3はIND_CCAセキュア公開鍵暗号化方式の秘密鍵を表し、
cx_0は前記第1線形暗号文の第1要素を表し、
cy_0は前記第2線形暗号文の第1要素を表し、
DecCPAは前記解読アルゴリズムを表し、
distはハミング距離演算子を表し、
mは前記第1整数を表す、
付記12に記載の非一時的コンピュータ可読媒体。
(付記14) 前記第1線形暗号文は、以下の線形ビットベクトル暗号化式に従い暗号化され、
m1=<m1 i=1∈F
cx:=EncCPA(pk_3,A×m1+e1)、EncCPA(pk_1,m1);
e1∈F 、ここで各々の要素は、確率τで1であり、その他の場合に0であり;
m1はnビットの第1メッセージを表し、
pk_3は前記IND_CCAセキュア公開鍵暗号化方式の公開鍵を表し、
pk_1は前記IND_CCAセキュア公開鍵暗号化方式の別の公開鍵を表し、
iはインデックス変数を表し、
nは第1体の次元を表し、
EncCPAは前記暗号化アルゴリズムを表し、
+演算子はビット毎のXOR演算子を表し、
は基本数2の体を表す、
付記13に記載の非一時的コンピュータ可読媒体。
(付記15) 前記ノイズ確率は約0.25に等しい、
付記14に記載の非一時的コンピュータ可読媒体。
(付記16) 前記第1バイオメトリックテンプレートは高minエントロピ分布からサンプリングされる、付記11に記載の非一時的コンピュータ可読媒体。
(付記17) 前記近似を検出するステップは、以下の近似検証アルゴリズムに従い実行され、
rs:=DECODE(DecCPA(skcpa,cx_1+DecCPA(skcpa,cy_1)));
Output={DECODEが⊥を返す場合、拒否する;
VerifyLinear(skRlin,cx_2,cy_2,X○Z)};
ここで、Zrsはランダム性の和を表し、
DECODEはECC復号化演算子を表し、
DecCPAはIND_CCAセキュア公開鍵暗号化方式の解読アルゴリズムを表し、
cx_1は前記第1線形暗号文の第2要素を表し、
cy_1は前記第2線形暗号文の第2要素を表し、
cx_2は前記第1線形暗号文の第3要素を表し、
cy_2は前記第2線形暗号文の第3要素を表し、
skRlinは関係線形鍵を表し、
Xはランダム行列を表し、
skcpaはND_CCAセキュア公開鍵暗号化方式の鍵生成アルゴリズムにより生成されるCPA秘密鍵を表し、
⊥は誤りを表し、
zは検証エンティティにより選択される特定値を表し、
VerifyLinearは線形検証アルゴリズムを表す、
付記11に記載の非一時的コンピュータ可読媒体。
(付記18) 前記第1近似ハッシュ値は、以下の近似暗号化式に従い生成され、
cxp1:=EncCPA(pkCPA,m1+ENCODE(r));
cxp2:=EncXLinear(pkxlin,X○r);
cxp:=(cxp1,cxp2)、
ここで、cxpは前記第1近似ハッシュ値を表し、
cxp1は前記第1近似ハッシュ値の第1部分を表し、
cxp2は前記第1近似ハッシュ値の第2部分を表し、
EncCPAはIND_CCAセキュア公開鍵暗号化方式の暗号化アルゴリズムを表し、
m1は前記第1バイオメトリックテンプレートを表し、
pkCPAはND_CCAセキュア公開鍵暗号化方式の鍵生成アルゴリズムにより生成されるCPA公開鍵を表し、
ENCODEはECC符号化演算子を表し、
rは近似乱数を表し、
Xはランダム行列を表し、
EncXLinearは第1線形暗号化アルゴリズムを表す、
付記11に記載の非一時的コンピュータ可読媒体。
(付記19) 前記発見するステップ及び前記検出するステップは、ANDゲート及びORゲートのみを使用して実行される、付記11に記載の非一時的コンピュータ可読媒体。
(付記20) 前記工程は、前記第1線形暗号文及び第1近似暗号文を登録暗号文として格納するステップ、を更に有する、付記11に記載の非一時的コンピュータ可読媒体。
100 動作環境
102 ユーザ装置
107 ネットワーク
108 関係認証モジュール
110 関係暗号化モジュール
112 線形暗号化モジュール
114 近似暗号化モジュール
122 メモリ
128 近似認証モジュール
130 登録暗号文
132 線形認証モジュール
140 認証サーバ
142 平文ベクトル
144 設定モジュール
150 第2エンティティ
152 第1エンティティ

Claims (20)

  1. 認証サーバにより実施される方法であって、前記認証サーバが、
    LPN(learning parity with noise)に少なくとも部分的に基づく関係線形暗号化方式を用いて暗号化される第1バイオメトリックテンプレートを表す第1線形暗号文を受信するステップと、
    前記関係線形暗号化方式を用いて暗号化される第2バイオメトリックテンプレートを表す第2線形暗号文を受信するステップと、
    線形関係秘密鍵を用いて、前記第1線形暗号文と前記第2線形暗号文との間の線形関係を発見するステップと、
    関係近似ハッシュ方式を用いて暗号化される前記第1バイオメトリックテンプレートを表す第1近似ハッシュ値を受信するステップであって、前記関係近似ハッシュ方式は、前記関係線形暗号化方式及び誤り訂正符号(ECC)に基づく、ステップと、
    前記関係近似ハッシュ方式を用いて暗号化される前記第2バイオメトリックテンプレートを表す第2近似ハッシュ値を受信するステップと、
    ハミング距離の観点で、前記第1近似ハッシュ値と前記第2近似ハッシュ値との間の近似を検出するステップと、
    前記近似及び前記線形関係に基づき、ユーザの同一性を認証するステップと、
    を有する方法。
  2. 前記関係線形暗号化方式は、鍵生成アルゴリズム、暗号化アルゴリズム、及び解読アルゴリズムを含むIND_CCAセキュア公開鍵暗号化方式に更に基づく、請求項1に記載の方法。
  3. 前記線形関係を発見するステップは、以下の検証アルゴリズムに従い実行され、
    skRlin:=(A,τ,sk_3);
    given cy, cx, z,skRlin:
    以下の不等式をチェックする:
    dist(DecCPA(sk_3,cx_0)+DecCPA(sk_3,cy_0)+A×z)2×τ×m
    ここで、cyは前記第1線形暗号文を表し、
    cxは前記第2線形暗号文を表し、
    skRlinは線形関係秘密鍵を表し、
    zは検証エンティティにより選択される特定値を表し、
    Aは第1整数×第2整数の次元を有するランダム2進行列を表し、
    τはノイズ確率を表し、
    sk_3はIND_CCAセキュア公開鍵暗号化方式の秘密鍵を表し、
    cx_0は前記第1線形暗号文の第1要素を表し、
    cy_0は前記第2線形暗号文の第1要素を表し、
    DecCPAは前記解読アルゴリズムを表し、
    distはハミング距離演算子を表し、
    mは前記第1整数を表す、
    請求項2に記載の方法。
  4. 前記第1線形暗号文は、以下の線形ビットベクトル暗号化式に従い暗号化され、
    m1=<m1 i=1∈F
    cx:=EncCPA(pk_3,A×m1+e1)、EncCPA(pk_1,m1);
    e1∈F 、各々の要素は、確率τで1であり、その他の場合に0であり、
    m1はnビットの第1メッセージを表し、
    pk_3は前記IND_CCAセキュア公開鍵暗号化方式の公開鍵を表し、
    pk_1は前記IND_CCAセキュア公開鍵暗号化方式の別の公開鍵を表し、
    iはインデックス変数を表し、
    nは第1体の次元を表し、
    EncCPAは前記暗号化アルゴリズムを表し、
    +演算子はビット毎のXOR演算子を表し、
    は基本数2の体を表す、
    請求項3に記載の方法。
  5. 前記ノイズ確率は約0.25に等しい、請求項4に記載の方法。
  6. 前記第1バイオメトリックテンプレートは高minエントロピ分布からサンプリングされる、請求項1に記載の方法。
  7. 近似を検出するステップは、以下の近似検証アルゴリズムに従い実行され、
    rs:=DECODE(DecCPA(skcpa,cx_1+DecCPA(skcpa,cy_1)));
    Output={DECODEが⊥を返す場合、拒否する; VerifyLinear(skRlin,cx_2,cy_2, rs )};
    ここで、Zrsはランダム性の和を表し、
    DECODEはECC復号化演算子を表し、
    DecCPAはIND_CCAセキュア公開鍵暗号化方式の解読アルゴリズムを表し、
    cx_1は前記第1線形暗号文の第2要素を表し、
    cy_1は前記第2線形暗号文の第2要素を表し、
    cx_2は前記第1線形暗号文の第3要素を表し、
    cy_2は前記第2線形暗号文の第3要素を表し、
    skRlinは関係線形鍵を表し、
    Xはランダム行列を表し、
    skcpaはND_CCAセキュア公開鍵暗号化方式の鍵生成アルゴリズムにより生成されるCPA秘密鍵を表し、
    ⊥は誤りを表し、
    zは検証エンティティにより選択される特定値を表し、
    VerifyLinearは線形検証アルゴリズムを表す、
    請求項1に記載の方法。
  8. 前記第1近似ハッシュ値は、以下の近似暗号化式に従い生成され、
    cxp1:=EncCPA(pkCPA,m1+ENCODE(r));
    cxp2:=EncXLinear(pkxlin,);
    cxp:=(cxp1,cxp2)、
    ここで、cxpは前記第1近似ハッシュ値を表し、
    cxp1は前記第1近似ハッシュ値の第1部分を表し、
    cxp2は前記第1近似ハッシュ値の第2部分を表し、
    EncCPAはIND_CCAセキュア公開鍵暗号化方式の暗号化アルゴリズムを表し、
    m1は前記第1バイオメトリックテンプレートを表し、
    pkCPAはND_CCAセキュア公開鍵暗号化方式の鍵生成アルゴリズムにより生成されるCPA公開鍵を表し、
    ENCODEはECC符号化演算子を表し、
    rは近似乱数を表し、
    Xはランダム行列を表し、
    EncXLinearは第1線形暗号化アルゴリズムを表す、
    請求項1に記載の方法。
  9. 前記発見するステップ及び前記検出するステップは、ANDゲート及びORゲートのみを使用して実行される、請求項1に記載の方法。
  10. 前記認証サーバが、前記第1線形暗号文及び第1近似暗号文を登録暗号文として格納するステップ、を更に有する請求項1に記載の方法。
  11. 非一時的コンピュータ可読媒体であって、工程を実行するために又はその実行を制御するためにプロセッサにより実行可能な符号化されたプログラミングコードを有し、前記工程は、
    LPN(learning parity with noise)に少なくとも部分的に基づく関係線形暗号化方式を用いて暗号化される第1バイオメトリックテンプレートを表す第1線形暗号文を受信するステップと、
    前記関係線形暗号化方式を用いて暗号化される第2バイオメトリックテンプレートを表す第2線形暗号文を受信するステップと、
    線形関係秘密鍵を用いて、前記第1線形暗号文と前記第2線形暗号文との間の線形関係を発見するステップと、
    関係近似ハッシュ方式を用いて暗号化される前記第1バイオメトリックテンプレートを表す第1近似ハッシュ値を受信するステップであって、前記関係近似ハッシュ方式は、前記関係線形暗号化方式及び誤り訂正符号(ECC)に基づく、ステップと、
    前記関係近似ハッシュ方式を用いて暗号化される前記第2バイオメトリックテンプレートを表す第2近似ハッシュ値を受信するステップと、
    ハミング距離の観点で、前記第1近似ハッシュ値と前記第2近似ハッシュ値との間の近似を検出するステップと、
    前記近似及び前記線形関係に基づき、ユーザの同一性を認証するステップと、
    を有する、非一時的コンピュータ可読媒体。
  12. 前記関係線形暗号化方式は、鍵生成アルゴリズム、暗号化アルゴリズム、及び解読アルゴリズムを含むIND_CCAセキュア公開鍵暗号化方式に更に基づく、請求項11に記載の非一時的コンピュータ可読媒体。
  13. 前記線形関係を発見するステップは、以下の検証アルゴリズムに従い実行され、
    skRlin:=(A,τ,sk_3);
    given cy,cx,z,skRlin:
    以下の不等式をチェックする:
    dist(DecCPA(sk_3,cx_0)+DecCPA(sk_3,cy_0)+A×z)2×τ×m
    ここで、cyは前記第1線形暗号文を表し、
    cxは前記第2線形暗号文を表し、
    skRlinは線形関係秘密鍵を表し、
    zは検証エンティティにより選択される特定値を表し、
    Aは第1整数×第2整数の次元を有するランダム2進行列を表し、
    τはノイズ確率を表し、
    sk_3はIND_CCAセキュア公開鍵暗号化方式の秘密鍵を表し、
    cx_0は前記第1線形暗号文の第1要素を表し、
    cy_0は前記第2線形暗号文の第1要素を表し、
    DecCPAは前記解読アルゴリズムを表し、
    distはハミング距離演算子を表し、
    mは前記第1整数を表す、
    請求項12に記載の非一時的コンピュータ可読媒体。
  14. 前記第1線形暗号文は、以下の線形ビットベクトル暗号化式に従い暗号化され、
    m1=<m1 i=1∈F
    cx:=EncCPA(pk_3,A×m1+e1)、EncCPA(pk_1,m1);
    e1∈F 、ここで各々の要素は、確率τで1であり、その他の場合に0であり;
    m1はnビットの第1メッセージを表し、
    pk_3は前記IND_CCAセキュア公開鍵暗号化方式の公開鍵を表し、
    pk_1は前記IND_CCAセキュア公開鍵暗号化方式の別の公開鍵を表し、
    iはインデックス変数を表し、
    nは第1体の次元を表し、
    EncCPAは前記暗号化アルゴリズムを表し、
    +演算子はビット毎のXOR演算子を表し、
    は基本数2の体を表す、
    請求項13に記載の非一時的コンピュータ可読媒体。
  15. 前記ノイズ確率は約0.25に等しい、
    請求項14に記載の非一時的コンピュータ可読媒体。
  16. 前記第1バイオメトリックテンプレートは高minエントロピ分布からサンプリングされる、請求項11に記載の非一時的コンピュータ可読媒体。
  17. 前記近似を検出するステップは、以下の近似検証アルゴリズムに従い実行され、
    rs:=DECODE(DecCPA(skcpa,cx_1+DecCPA(skcpa,cy_1)));
    Output={DECODEが⊥を返す場合、拒否する;
    VerifyLinear(skRlin,cx_2,cy_2, rs )};
    ここで、Zrsはランダム性の和を表し、
    DECODEはECC復号化演算子を表し、
    DecCPAはIND_CCAセキュア公開鍵暗号化方式の解読アルゴリズムを表し、
    cx_1は前記第1線形暗号文の第2要素を表し、
    cy_1は前記第2線形暗号文の第2要素を表し、
    cx_2は前記第1線形暗号文の第3要素を表し、
    cy_2は前記第2線形暗号文の第3要素を表し、
    skRlinは関係線形鍵を表し、
    Xはランダム行列を表し、
    skcpaはND_CCAセキュア公開鍵暗号化方式の鍵生成アルゴリズムにより生成されるCPA秘密鍵を表し、
    ⊥は誤りを表し、
    zは検証エンティティにより選択される特定値を表し、
    VerifyLinearは線形検証アルゴリズムを表す、
    請求項11に記載の非一時的コンピュータ可読媒体。
  18. 前記第1近似ハッシュ値は、以下の近似暗号化式に従い生成され、
    cxp1:=EncCPA(pkCPA,m1+ENCODE(r));
    cxp2:=EncXLinear(pkxlin,);
    cxp:=(cxp1,cxp2)、
    ここで、cxpは前記第1近似ハッシュ値を表し、
    cxp1は前記第1近似ハッシュ値の第1部分を表し、
    cxp2は前記第1近似ハッシュ値の第2部分を表し、
    EncCPAはIND_CCAセキュア公開鍵暗号化方式の暗号化アルゴリズムを表し、
    m1は前記第1バイオメトリックテンプレートを表し、
    pkCPAはND_CCAセキュア公開鍵暗号化方式の鍵生成アルゴリズムにより生成されるCPA公開鍵を表し、
    ENCODEはECC符号化演算子を表し、
    rは近似乱数を表し、
    Xはランダム行列を表し、
    EncXLinearは第1線形暗号化アルゴリズムを表す、
    請求項11に記載の非一時的コンピュータ可読媒体。
  19. 前記発見するステップ及び前記検出するステップは、ANDゲート及びORゲートのみを使用して実行される、請求項11に記載の非一時的コンピュータ可読媒体。
  20. 前記工程は、前記第1線形暗号文及び第1近似暗号文を登録暗号文として格納するステップ、を更に有する、請求項11に記載の非一時的コンピュータ可読媒体。

JP2017089512A 2016-05-02 2017-04-28 ノイズ存在下におけるパリティ値の同定に基づく、近似関係の関係暗号化 Active JP6922385B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US15/144,713 US9608819B1 (en) 2014-05-25 2016-05-02 Learning parity with noise-based relational encryption for proximity relations
US15/144,713 2016-05-02

Publications (2)

Publication Number Publication Date
JP2017201783A JP2017201783A (ja) 2017-11-09
JP6922385B2 true JP6922385B2 (ja) 2021-08-18

Family

ID=60264684

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2017089512A Active JP6922385B2 (ja) 2016-05-02 2017-04-28 ノイズ存在下におけるパリティ値の同定に基づく、近似関係の関係暗号化

Country Status (1)

Country Link
JP (1) JP6922385B2 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7132506B2 (ja) * 2019-01-07 2022-09-07 富士通株式会社 秘密情報検索システム、秘密情報検索プログラム、および秘密情報検索方法

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006107274A (ja) * 2004-10-07 2006-04-20 Matsushita Electric Ind Co Ltd ハッシュ関数演算システム、暗号化システムおよび不正解析・改竄防止システム
US8689087B2 (en) * 2008-01-11 2014-04-01 Orange Method and entity for probabilistic symmetrical encryption
JP2011150006A (ja) * 2010-01-19 2011-08-04 Hitachi Ltd 暗号化システム、公開鍵暗号化方法、鍵生成装置、計算機および公開鍵秘密鍵生成プログラム
US9438589B2 (en) * 2012-04-19 2016-09-06 Martin Tomlinson Binding a digital file to a person's identity using biometrics
US9503266B2 (en) * 2014-05-25 2016-11-22 Fujitsu Limited Relational encryption

Also Published As

Publication number Publication date
JP2017201783A (ja) 2017-11-09

Similar Documents

Publication Publication Date Title
US9674189B1 (en) Relational encryption
US9660991B2 (en) Relational encryption
JP6488847B2 (ja) リレーショナル暗号化
US9774596B2 (en) Privacy-preserving biometric authentication
US9967101B2 (en) Privacy preserving set-based biometric authentication
US9577831B2 (en) Relational encryption
US9438590B2 (en) Privacy preserving biometric authentication based on error correcting codes
US9608819B1 (en) Learning parity with noise-based relational encryption for proximity relations
JP6852592B2 (ja) ユーザ認証のための暗号プリミティブ
JP2018510593A (ja) バイオメトリックデータを使用する階層型暗号鍵生成のためのシステムおよび方法
Dwivedi et al. A fingerprint based crypto-biometric system for secure communication
JP2017076839A (ja) 暗号処理方法、暗号処理装置、および暗号処理プログラム
JP2016035554A (ja) 完全準同型暗号化方式を使用したコンパクトなファジープライベートマッチング
KR102008101B1 (ko) 함수 암호를 이용한 안전한 바이오 인증 방법
Abidin On privacy-preserving biometric authentication
Barman et al. A novel secure key-exchange protocol using biometrics of the sender and receiver
US10033532B2 (en) Biometric based authenticated key exchange
JP6844411B2 (ja) 関係暗号化
Suresh et al. Two-factor-based RSA key generation from fingerprint biometrics and password for secure communication
JP6786884B2 (ja) 関係暗号化
JP6922385B2 (ja) ノイズ存在下におけるパリティ値の同定に基づく、近似関係の関係暗号化
Vo et al. A hash-based index method for securing biometric fuzzy vaults
Seo et al. Construction of a New Biometric‐Based Key Derivation Function and Its Application
Laguduva et al. Machine learning attacks and countermeasures for PUF-based IoT edge node security
Gunasinghe et al. Privacy preserving biometrics-based and user centric authentication protocol

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20200213

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20201225

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20210126

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20210323

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20210712

R150 Certificate of patent or registration of utility model

Ref document number: 6922385

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150