JP2015513271A - 保護集合内の複数のデータを暗号化する方法 - Google Patents

保護集合内の複数のデータを暗号化する方法 Download PDF

Info

Publication number
JP2015513271A
JP2015513271A JP2014561459A JP2014561459A JP2015513271A JP 2015513271 A JP2015513271 A JP 2015513271A JP 2014561459 A JP2014561459 A JP 2014561459A JP 2014561459 A JP2014561459 A JP 2014561459A JP 2015513271 A JP2015513271 A JP 2015513271A
Authority
JP
Japan
Prior art keywords
data
code
server
alphabet
data item
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2014561459A
Other languages
English (en)
Other versions
JP5714785B2 (ja
Inventor
ブランジェ,ジュリアン
シャバンヌ,エルベ
Original Assignee
モルフォ
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 モルフォ filed Critical モルフォ
Publication of JP2015513271A publication Critical patent/JP2015513271A/ja
Application granted granted Critical
Publication of JP5714785B2 publication Critical patent/JP5714785B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3226Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using a predetermined code, e.g. password, passphrase or PIN
    • H04L9/3231Biological data, e.g. fingerprint, voice or retina
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • 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
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/30Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy
    • H04L9/304Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy based on error correction codes, e.g. McEliece
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/30Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy
    • H04L9/3093Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy involving Lattices or polynomial equations, e.g. NTRU scheme
    • 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

Landscapes

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

Abstract

本発明は、索引付きデータの少なくとも2つを暗号化するサーバ実施方法に関し、データは要素のリストの形式であり、その各要素はアルファベットと呼ばれる索引付き符号の有限集合に属し、本方法は、データが暗号化されて保護集合を形成し、暗号化して保護集合を生成するステップは、以下のステップを備える。すなわち、−サーバが、ベース内の各データに対して、対応する符号化関数をランダムに生成し、−アルファベットの各符号に対して、各データに対して、データを構成するリストの少なくとも1つの要素がアルファベットの符号である場合、サーバは、データに対応する符号化関数を介してアルファベットの前記符号の画像を決定して、データとアルファベットの符号との関数であるコードワード座標を取得し、サーバは、それによって得られたコードワード座標を、アルファベットの要素に対応する索引付き集合に追加し、集合は、所定の基数を有し、次いで、サーバは、エラー誘導ポイントを有するアルファベットの要素に対応する索引付き集合を完成し、サーバは、アルファベットの符号に対応する索引付き集合の要素をランダムに再索引付けし、サーバは、アルファベットの符号に対応する索引付き集合を保護集合に追加することを特徴とする。本発明はまた、個人を識別する方法に関し、本発明による暗号化方法によって暗号化されたデータで実施される。

Description

本発明は、データの暗号化の分野、および暗号化データを候補データ項目と比較して、暗号化データ項目の1つと候補データ項目との間の類似性を評価することに関する。
本発明は、特に、生物測定の分野に適用可能であり、個々の生体情報データを暗号化し、生体情報データの1つを暗号化データと比較することによって、候補となる個人を識別する。
“fuzzy vault”方式という名で知られる、データ項目を暗号化する方法が知られている。この方法については、以下の文献で説明されている。
−Ari Juels and Maghu Sudan,A fuzzy vault scheme.In Proceedings of IEEE International Symposium on Information Theory,ISIT,Lecture Notes in Computer Science,page 408, 2002,および
−Ari Juels and Maghu Sudan,A fuzzy vault scheme.Des.Codes Cryptography,38(2):237−257,2006
“fuzzy vault”方式は、“fuzzy vault”と呼ばれる数学的集合(以下、「保護集合」と称する)において、データ項目Aに関する情報と、ランダムに生成され、データ項目Aとは独立した補足寄生情報とを統合することから成る。この寄生情報は、Aに関連した情報をマスクすることを可能にする。
より正確には、この暗号化は、有限フィールドFの索引付き要素aのリストの形式でのデータ項目Aに適用する。
この方法の間、本明細書で説明しない、ある種の数学的特性を有する多項式pがランダムに生成され、Aの各要素aに対して、要素aのpによる画像が算出される。
次いで、データ項目Aの要素aとpによる画像とから成るペアが、保護集合に加えられる。
最後に、エラー誘導ポイントが保護集合に加えられる。このポイントは、ランダムに生成されたペア(x、x’)であり、xはAの要素ではなく、x’はxのpによる画像ではない。数学的に、
Figure 2015513271
である。
したがって、ペア
Figure 2015513271
の集合は、横座標
Figure 2015513271
がAに属し、
Figure 2015513271
であるか、またはそれらがF\Aに属する場合に取得され、この場合、
Figure 2015513271
が、F\p(A)において選択される。
多数のエラー誘導ポイントを加えることで、データ項目Aおよび多項式pに関するポイントをマスクすることが可能になる。
次に、保護集合を使用して、前記データ項目Aについての情報を取得することなく、第2のデータ項目Bをデータ項目Aと比較する。
これを行うために、復号化アルゴリズムが開発されており、保護集合を用いて、索引付き要素bのリストの形式でのデータ項目Bを比較することを可能にし、ある程度の類似点が所定の閾値を超過する場合に、データ項目Bがデータ項目Aに対応するかどうかを判断する。
特に、多数の要素bが、Aの要素aに対応する場合に、BはAに対応する。後者の要素は、保護集合における定義により位置決めされる。
これらの復号化アルゴリズムの引数は、保護集合の横座標xに対応するデータ項目Bの要素bであり、その結果は、多項式p’である。BがAに十分対応する場合、多項式p’は、データ項目Aを暗号化するために使用された多項式pである。
次いで、この多項式pを、保護集合の横座標xに対応するBのすべての要素bに適用し、どの要素bが、Aの要素aであるかを判断することが可能である。というのも、構造により、ある要素と、pによるこの要素の画像を備えるペアのみがAの要素であるためである。
適切な復号化アルゴリズムの例の1つには、リードソロモン符号を復号化するためのものがある。
したがって、fuzzy vault方式により、データの一方についての情報を取得することなく、2つのデータ項目を比較することが可能となる。
しかしながら、2つのデータ項目の比較に限定され、データバンク内に複数のデータの集合を有するデータ項目の比較に適用することはできない。しかしながら、この種類の比較は、特に、個人の生体認証において、ますます頻繁に使用される。
したがって、fuzzy vault方式の原理を、データバンク内の複数のデータ向けに拡張し、バンク内のデータを所与のサードパーティと、それらについての情報を取得することなく比較することを可能にすることに対する必要性がある。
Ari Juels and Maghu Sudan,A fuzzy vault scheme.In Proceedings of IEEE International Symposium on Information Theory,ISIT,Lecture Notes in Computer Science,page 408,2002 Ari Juels and Maghu Sudan,A fuzzy vault scheme.Des.Codes Cryptography,38(2):237−257,2006
本発明の目的の1つは、上記した問題を克服することである。
この目的は、本発明において、サーバによって実施される少なくとも2つの索引付きデータの集合を暗号化する方法によって実現される。そのデータは、要素のリストの形式であり、その各要素は、アルファベットと呼ばれる索引付き符号の有限集合に属する。
本方法は、データが暗号化されて保護集合を形成することを特徴とし、暗号化および保護集合の生成のステップは、以下のステップを備える:
−サーバは、ベース内の各データ項目に対して、対応する符号化関数をランダムに生成する。
−アルファベットの各符号に対して
○各データ項目に対して
データ項目を構成するリストの少なくとも1つの要素がアルファベットの符号である場合、サーバは、データ項目に対応する符号化関数を介してアルファベットの前記符号の画像を決定し、データ項目およびアルファベットの符号の関数であるコードワード座標を取得する。
サーバは、それにより得られたコードワード座標を、アルファベットの要素に対応する索引付き集合に追加する。その集合は、所定の基数を有する。
○次いで、サーバは、アルファベットの符号に対応する索引付き集合の要素にランダムに再索引付けをする。
○サーバは、アルファベットの符号に対応する索引付き集合を、保護集合に追加する。
有利には、だが任意選択的に、本発明は、さらに、以下の機能の少なくとも1つを備えることができる:
−アルファベットでの各符号に対して、再索引付けステップの前に、サーバは、エラー誘導ポイントを有するアルファベット要素に対応する索引付き集合を完成する。
−ベース内のデータのいずれの要素にも対応しないアルファベットの符号に対して、
○サーバは、前記要素の幾つかをランダムに選択する。
○選択された各要素に対して、その要素のものに対応する索引を有する所定の基数集合を生成し、要素の基数と同じ数のエラー誘導ポイントをこの要素に追加する。
−アルファベットの選択されなかった符号は、空集合と関連する。
−エラー誘導ポイントは、符号化関数の目的地集合間でランダムに生成され、データに対応する符号化関数によってアルファベットの符号の画像を除去したポイントである。
−データに対応する符号化関数は、少なくとも1つのリスト回復アルゴリズムが存在する評価コードと関連づけられる。
−評価コードは、畳込みリードソロモン符号、リードマラー符号、または代数的符号である。
−サーバは、パブリックハッシュ関数によりデータ項目に対応する各符号化関数の画像を算出し、前記画像を保護集合に追加する。
−そのデータは、生体情報データである。
−生体情報データは、個人の指紋に関する情報を備え、前記データは、個人の指紋の詳細についての座標のトリプレット(x,y,θ)のリストの形式である。
−トリプレット(x,y,θ)の各座標は、1バイトでコード化され、アルファベットは、各座標が1バイトでコード化されたトリプレットの、起こり得る構成のすべてを含む。
本発明はさらに、識別対象である個人の生体情報データ項目を取得するのに適切な制御サーバ、およびリスト化された個人の個々の生体情報データを含むベースを管理するサーバを備えるシステムにおいて、個人を識別する方法に関する。
個人を識別するために、対象のデータ項目は、ベース内のN個のデータと比較され、ある程度の類似性を有するベース内の1つまたは複数のデータ項目と、所定の閾値を超過する個人のデータ項目とを識別する。
本方法は、個人のデータ項目をベース内のデータと比較するステップの前に、上記項目の1つによる方法を使用して、管理サーバによって暗号化されることを特徴とする。
有利には、だが任意選択的に、本識別法はまた、以下の特徴の少なくとも1つを備えてもよい:
−識別対象の個人の生体情報データ項目は、要素のリストの形式であり、その各要素は、アルファベットの符号であり、管理サーバが保護集合を制御サーバに通信し、識別対象の個人の生体情報データ項目から、制御サーバは、保護集合を復号化するステップを実施し、復号化ステップは、以下から成るステップを備える:
○個人のデータ項目を構成する要素のリスト内にあるアルファベットの符号に対応する索引付き集合のすべてを備える保護集合の部分集合を選択するステップ。
○個人のデータ項目がベース内のデータ項目に対応する場合、符号化関数の集合が、前記データ項目に対応する符号化関数を含むように、引数が前記選択された部分集合であり、結果が符号化関数の集合であるリスト回復アルゴリズムを使用するステップ。
−取得された1つまたは複数の符号化関数から、制御サーバは、所定の閾値より大きい、ある程度の類似性を有する個人のデータ項目に対応するベース内の1つまたは複数のデータ項目を決定する。
−制御サーバは、パブリックハッシュ関数によりリスト回復アルゴリズムからもたらされる集合の符号化関数の画像を決定し、この画像を、保護集合内に格納されたベース内のデータに対応する符号化関数の画像と比較する。
本発明の他の特徴、目的、および利点は、純粋に例示的で、非限定的であり、添付図面を参照して読み取られる必要のある、以下の説明から明らかになるであろう。
本発明により提案される、暗号化方法のステップを示す図である。 本方法の第1のステップを実施するアルゴリズムを示す図である。 復号化方法のステップを示す図である。 本発明による識別方法の模式的な実施態様を示す図である。 個人の指紋をコーディングするために使用される規則を示す図である。 個人の指紋をコーディングするために使用される規則を示す図である。 個人の指紋をコーディングするために使用される規則を示す図である。
少なくとも1つの例示的実施形態の詳細な説明
データベースDB内の複数のデータAを暗号化する方法の主要ステップを、図1を参照して説明する。
記号および語彙
データベースDBは、n個の秘密データA(j=1..n)を含む。各データ項目Aは、例えば、t個の索引付き要素
Figure 2015513271
i=1..tの要素のリストの形式であり、したがって、Aは、
Figure 2015513271
と書き表される。
あるいは、データAは、互いに異なるサイズとしてもよい。
各Aの要素
Figure 2015513271
は、2進要素またはベクトルであることが好ましく、その各座標は、2進要素である。
本発明は、符号理論に適合し、ある種の数学的対象を使用し、その定義は、ここで再び提供される。
εはアルファベットであり、すなわちN個の符号x...xを含有する集合であり、データ項目Aの各要素は、アルファベットεの符号である。このアルファベットは、データAをコード化する方法に従って定義される。
したがって、例えば、データAの要素が、ある数のビットでコード化された値である場合、アルファベットεは、すべてこの数のビットでコード化された2進符号を備える。1バイトでコード化されたデータAの場合、アルファベットεは、256バイトを備えることが可能である。
評価関数はまた、次の通りに定義される:
−Dを有限集合とする。
−P...Pを、D内の座標のN個の別個のポイントとする。
−Pを、集合Y内の値を有するカルテシアン積D...Dの関数の集合の部分集合とし、Yは、例えば、集合Dとすることができる。
−評価関数evは、以下によって定義することができる。
Figure 2015513271
さらに、Lが、次元kのPの部分集合である場合、C=ev(L)が、Lによって定義される評価コードである。Cが、長さNおよび次元kのYについての評価コードであると言える。
最後に、コードワードは、コードCの要素を意味し、すなわち、評価関数ev(f)による関数fの評価である。
ベース内のデータの暗号化
ベース内のデータAの暗号化100は、図1に示されるステップの実装態様によって、コンピュータサーバにより実行される。
符号化関数の生成
ステップ110の間、サーバは、ベース内の各データ項目Aに対して、対応する符号化関数Fをランダムに生成する。
符号化関数は、コードワードの座標を要素と関連づける関数を意味する。
この場合では、リスト回復アルゴリズムが存在する評価コードと関連づけられた符号化関数Fが選択される。
例えば、リードマラー符号が知られ、ゴッパ符号などの代数的符号、または「畳込みリードソロモン符号」という用語で知られるコードがある。
本発明では、畳込みリードソロモン符号の使用が都合良く、次の通りに定義される:
−Fを、基数qの有限体とし(F=GF(q))、γをFのジェネレータとする。
−リードソロモン符号C[u,k]をm回畳み込んだバージョンは、FRSF,γ,m,N,kで表され、Fについてのブロックサイズ
Figure 2015513271
のコードであり、u=q−1は、mで割り切れる。
−最大k−1次のメッセージp∈F[X]のコーディングが、評価関数ev(f)=f(P,...,P)の適用によりもたらされ、ここで、P=γm(i−1)であり、
Figure 2015513271
である。
畳込みリードソロモン符号型の評価コードの場合、データAに対応する符号化関数Fは、この場合、次の通りに定義される:
−fを、F[X]においてランダムに選択された関数とし、例えば、次数k−1の多項式とすることができる。
−F(x)=f(P)であり、ここで、P=γm(i−1)である。F(x)は、コードワードev(f)のi番目の座標である。
保護集合内のデータの符号化
再び図1を参照すると、符号化ステップ120の間に、符号化関数から、ベース内のデータを暗号化する保護集合LOCK(A)をサーバが生成する。
このために、サーバは、ステップ121の間、アルファベットεにある符号と同数の集合Sを生成する。各集合Sは、アルファベットε内の要素xに対応する。
サーバはまた、2つのセキュリティパラメータlおよびrを定義する。
第1のセキュリティパラメータlは、索引付き集合Sと関連づけられた整数である。この整数は、1つの集合Sから別のものまで様々であるか、またはすべての集合Sに対して同じとすることができる。
第2のセキュリティパラメータrもまた、整数である。その役割は、以下により詳細に説明される。
アルゴリズムが初期化されると、集合Sは、要素を含まなくなる。
その場合、アルファベットε内の各符号xに対して、
−ベース内の各データ項目Aに対し、
○x∈Aの場合、サーバは、ステップ122の間、データ項目Aに対応する符号化関数F、すなわち、F(x)により符号xの画像を算出する。上記のように、この画像は、コードワードの座標、およびデータ項目Aならびにアルファベットεの符号xの関数である。サーバは、この値を、符号xに対応する集合Sに追加する。
−次いで、サーバは、ステップ123の間、索引付き集合Sの基数が事前に決定した整数lに達するまで、索引付き集合Sに寄生またはエラー誘導ポイントを追加する。
エラー誘導ポイントは、データAに対応する符号化関数Fによりアルファベットεの符号の画像を除去された集合Yにおいて、ランダムに選択される。したがって、これらのエラー誘導ポイントは、符号化関数から独立している。
これらのエラー誘導ポイントは、確実なコードワードの識別を妨げる。したがって、これらのエラー誘導ポイントは、アルファベットεの符号およびコードワードからデータAjの符号化関数Fを決定することを妨げる。
整数lは、暗号化方法のセキュリティパラメータである。その値は、後に使用したい復号化アルゴリズムと、許容可能な算出時間とに左右される。畳込みリードソロモン符号の使用が選択された場合、整数lは、典型的に、m未満であり、mは、畳込みリードソロモン符号のパラメータの1つであり、さらに、ベース内のデータAの個数n未満である。
さらに、サーバは、空ではない索引付き集合Sの数のカウンタを保持し、このカウンタは、アルファベットεの符号xがデータAの少なくとも1つの中にある場合に、1ずつインクリメントされる。カウンタ値は、cptと呼ばれる。
これらの第1のステップ122、123の最後では、対応するアルファベットxの符号が、ベース内のいずれのデータA内にない場合、空の索引付き集合Sが残っている可能性がある。
次いで、サーバは、ステップ124の間、索引i,i={icpt+1,…,}をランダムに選択する。索引付き集合
Figure 2015513271
は空であり、各索引付き集合
Figure 2015513271
の基数が値lに達するまで、寄生もしくはエラー誘導ポイントをこれらの集合に追加する。
ここで再び、エラー誘導ポイントは、データ
Figure 2015513271
に対応する符号化関数Fによりアルファベットの符号の画像を除去されたYにおいて選択される。
ステップ123の最後では、N−r個の空集合Sが残る。
したがって、セキュリティパラメータrは、暗号化ステップ120の最後で、空ではない索引付き集合Sの数を表す。
rは正の整数であり、N未満であり、アルファベットε内の符号の数であり、ベース内のデータAの数に従って選択される。rがアルファベット内の符号の数であるNと同じ桁を有するようにrが選択されることが好ましい。r=Nとすることも可能であり、その結果、暗号化ステップ120の間に空集合は残らない。
非限定の例として、Nは、10の桁を有してもよく、その場合、rは、数千からNの値の間であり、Nの値は、数十万程度であるあることが好ましい。
いかなるコードワードも備えていない集合
Figure 2015513271
にエラー誘導ポイントを追加するこのステップ124は、これらの集合
Figure 2015513271
が、アルファベットのどの符号がベース内のデータA内にあるかについての判断を妨げるため、暗号化アルゴリズムでのさらなるセキュリティをもたらす。
ステップ121から124の数学的アルゴリズムが、図1bで添付される。
最後に、ステップ125の間、サーバは、各索引付き集合Sの要素にスクランブルをかける。このスクランブルは、各集合S内の要素のランダムな再索引付けによって実施される。
実際に、最初に集合Sに追加されたコードワードは、これらの集合内のその位置により、それらを識別することが可能となる。したがって、スクランブルすることで、コードワードが、集合S内でランダムな位置を有することが可能となる。
最後に、ステップ126の間、アルファベットの符号と、対応する索引付き集合とから成るペアが、アルファベット内の各符号に対して、保護集合LOCKに追加される。
以下で詳述するように、サーバはまた、ステップ127の間、コードワードを生成するために使用された各符号化関数Fのパブリックハッシュ関数Hashにより、画像を算出し、集合LOCK内の画像Hash(F)を統合することができ、LOCK(A,Hash(F))と書き表される。
復号化
データAが集合LOCK内で暗号化された場合、この集合を使用して、データ項目Bから、データAについて、何らの情報をもたらすことなく、データ項目Bと最も類似するデータ項目Aを決定する。このステップ200は復号化と呼ばれ、そのステップは、図2に示される。
データ項目Bは、t個の要素{b1,…,}のリストであり、その各要素bは、アルファベットε内の符号xである。
復号化を続ける必要があるサーバは、ステップ210の間、集合LOCKに格納された索引付き集合Sの中から選択する。それらの
Figure 2015513271
は、Bに含まれる要素
Figure 2015513271
に対応する。すなわち、集合
Figure 2015513271
において、その索引iは、
Figure 2015513271
であり、e=1,..,tである。
次に、サーバは、ステップ220の間、すべてのペア
Figure 2015513271
を入力として有するリスト回復アルゴリズムを使用する。
このリスト回復アルゴリズムは、データAを暗号化するために選ばれたコードに依存する。コードが畳込みリードソロモン符号である場合、適切なリスト回復アルゴリズムは、Venkatesan Guruswamiによる文献、Linear−algebraic list decoding of folded Reed Solomon Codes,in IEEE Conference on Computational Complexity,pages 77−85.IEEE Computer Society,2011で説明されるGuruswamiリスト符号化アルゴリズムである。
リスト回復アルゴリズムは、所定の閾値を超える索引付き集合Sとある程度の類似性を有するコードワードのリストを結果として供給する。これらのコードワードでは、所定の閾値を超えてデータ項目Bとある程度の類似性を有するデータAの1つまたは複数の符号化関数Fに対応する、1つまたは複数の符号化関数が推定される。
特に、データ項目Bが、データAの1つに対応する場合、このデータ項目Aに対応する符号化関数Fが、リスト回復アルゴリズムの結果から取得される。
このアルゴリズムに起因する関数は、
Figure 2015513271
のような
Figure 2015513271
の比率に対して、前記比率がデータAおよびデータ項目Bとの間の類似性閾値から決定され、これにより、AがBと同様である場合のみ該当する、
Figure 2015513271
が得られる。
このアルゴリズムの結果である関数が、実際に、対応するデータ項目Aの評価関数であるという証拠を取得したい場合、サーバは、検証ステップ230の間、上記したパブリックハッシュ関数Hashによるこの結果の関数の画像を算出し、この結果を、保護アセンブリLOCKに格納されたデータAのそれぞれのハッシュと比較することができる。
最後に、符号化関数Fから、サーバは、データ項目Aを発見することができる。こうするために、すべての符号xの画像が、符号化関数Fにより算出され、F(x)が索引付き集合Sに属するかどうかが判断される。その場合、xはデータ項目Aに属する。次いで、データ項目Aを再構築することが可能である。
生体情報識別への応用
この暗号化アルゴリズムおよび対応する復号化アルゴリズムの優先的用途は、生体情報識別である。
生体情報識別は、図1bに模式的に示す。
個人の識別は、特に、個人に対するデータ項目を、基準となる個人の類似データと比較し、識別対象の個人が、所定の閾値を超えるある程度の類似性を有する基準となる個人の1人に対応するかどうかを判断することから成る。
基準となる個人は、例えば、その場所へのアクセスが承認された個人か、あるいは警察が捜索している個人とすることができる。
例えば、図3において、データ項目Bは、制御サーバSCによって、識別したい個人Iの生体情報特性bの、2進数でコード化されて収集したものである。
例えば、この生体情報特性は、虹彩または指紋とすることができる。
図4を参照して、指紋をコード化する方法を示す。図4aに示す指紋10は、それらを形作る線12についての細部11と称される不規則性によって特徴づけられる。例えば、細部11には、線の終端または二叉分岐がある可能性がある。
指紋10における細部の数、形、および位置により、この指紋が一意のものとなり、それを有する個人に特有とする。したがって、細部を用いて指紋をコード化する。
指紋10のコーディングは、トリプレット(x,y,θ)の集合であり、Xおよびyは、図4a、図4bおよび図4cで識別される直交座標系での細部の横座標および縦座標を示し、θは、X軸に対する線12の向きによって形成される角度である。より正確には、図4bにおいて、示した細部は線の終端であり、θは、途切れる前の線の向きとX軸との角度である。図4cにおいて、細部は、二叉分岐を表し、θは、二叉分岐前の線の向きとX軸との角度である。
x、y、およびθは、それぞれ、1バイトでコード化される。暗号化方法に対して対応するアルファベットεは、すべての可能なトリプレットから成り、その各座標は、1バイトで配位される。256(2)バイトが可能であるため、アルファベットεは、N=256の要素を含む。
再び図3を参照すると、基準となる個人の生体情報データAは、管理サーバSGによって管理されるデータベースDB内に格納される。
管理サーバSGは、データAについて、上記した暗号化方法を使用して、保護集合LOCK(A,...,A)を生成する。
ある個人が識別対象の人物である場合、制御サーバSCは、指紋センサにより、または識別情報ドキュメントに格納されたチップを読み取ることにより、生体情報データ項目Bを取得する。
次いで、制御サーバSCは、上記した復号化アルゴリズムを使用して、どのデータ項目Aが、それが存在する場合は、所定の閾値を超えるある程度の類似性を有する個人のデータ項目Bに対応するかを判断する。
したがって、暗号化アルゴリズムが開発され、複数のデータAが、保護集合内で符号化されることを可能にする。このアルゴリズムは、fuzzy vault方式の拡張版であり、後者は複数のデータをコーディングすることができず、これらのデータが共通の要素を有する場合でもそうである。
このアルゴリズムはまた、エラー誘導ポイントがすべてのデータに追加されるため、データを符号化するための保管場所を最小にすることもできる。
さらに、このアルゴリズムは、すべてのデータに対して、ただ1度の復号化で実現することができ、使用するリスト回復アルゴリズムにより、計算時間を節約することができる。

Claims (14)

  1. サーバによって実施される少なくとも2つの索引付きデータ項目(A)の集合を暗号化する方法であって、データ(A)は、要素
    Figure 2015513271
    のリストの形式であり、各要素は、アルファベットと呼ばれる索引付き符号(x)の有限集合(ε)に属し、
    方法は、データ(A)が暗号化されて保護集合(LOCK(A,…,A))を形成し、暗号化および保護集合の生成のステップは、
    −サーバが、ベース内の各データ項目(A)に対して、対応する符号化関数(F)をランダムに生成し
    −アルファベット(ε)の各符号(x)に対して
    ○各データ項目(A)に対して
    データ項目を構成するリストの少なくとも1つの要素
    Figure 2015513271
    がアルファベットの符号(x)である場合、サーバは、データ項目(A)に対応する符号化関数(F)を介してアルファベットの前記符号(x)の画像を決定し、データ項目およびアルファベットの符号の関数であるコードワード座標F(x)を取得し
    サーバは、それにより得られたコードワード座標F(x)を、アルファベット(x)の要素に対応する索引付き集合(S)に追加し、集合は、所定の基数(l)を有し
    ○次いで、サーバは、アルファベット(ε)の符号(x)に対応する索引付き集合(S)の要素にランダムに再索引付けをし
    ○サーバは、アルファベットの符号(x)に対応する索引付き集合(S)を、保護集合(LOCK(A,…,A))に追加し
    −アルファベット(ε)での各符号(x)に対して、再索引付けステップの前に、サーバは、エラー誘導ポイントを有するアルファベット要素(x)に対応する索引付き集合(S)を完成することを特徴とする、方法。
  2. ベース内のデータのいずれの要素にも対応しないアルファベットの符号(x)に対して、
    −サーバは、前記要素(x)の幾つかをランダムに選択し
    −選択された各要素(xie)に対して、要素(xie)のものに対応する索引を有する所定の基数集合(Sie)を生成し、要素の基数と同じ数のエラー誘導ポイントをこの要素(xie)に追加する、請求項1に記載の方法。
  3. アルファベット(ε)の選択されなかった符号(x)が、空集合と関連づけられる、請求項2に記載の方法。
  4. エラー誘導ポイントが、符号化関数の目的地集合(Y)間でランダムに生成され、データ(A)に対応する符号化関数(F)によってアルファベット(ε)の符号(x)の画像F(x)を除去したポイントである、請求項2から3のいずれか一項に記載の方法。
  5. データ(F)に対応する符号化関数が、少なくとも1つのリスト回復アルゴリズムが存在する評価コードと関連づけられる、請求項1から4のいずれか一項に記載の方法。
  6. 評価コードが、畳込みリードソロモン符号、リードマラー符号、または代数的符号である、請求項5に記載の方法。
  7. サーバが、パブリックハッシュ関数(Hash)によりデータ項目(A)に対応する各符号化関数(F)の画像(Hash(F))を算出し、前記画像を保護集合に追加する、請求項1から6のいずれか一項に記載の方法。
  8. データ(A)が生体情報データである、請求項1から7のいずれか一項に記載の暗号化方法。
  9. 生体情報データ(A)が、個人の指紋に関する情報を備え、前記データは、個人の指紋の詳細についての座標のトリプレット(x,y,θ)のリストの形式である、請求項8に記載の暗号化方法。
  10. トリプレット(x,y,θ)の各座標が、1バイトでコード化され、アルファベットは、各座標が1バイトでコード化されたトリプレットの、起こり得る構成のすべてを含む、請求項1から9のいずれか一項に記載の暗号化方法。
  11. 個人(I)を識別する方法であって、識別対象である個人(I)の生体情報データ項目(B)を取得するのに適切な制御サーバ(SC)、およびリスト化された個人の生体情報データを含むベース(DB)を管理するサーバ(SG)を備えるシステムにおいて、
    個人(I)を識別するために、対象のデータ項目(B)は、ベース内(DB)のN個のデータ(A)と比較され、ある程度の類似性を有するベース内の1つまたは複数のデータ項目(A)と、所定の閾値を超過する個人のデータ項目とを識別し、
    方法は、個人のデータ項目をベース内のデータと比較するステップの前に、請求項1から10のいずれか一項に記載の方法を使用して、管理サーバ(SG)によって暗号化されることを特徴とする、方法。
  12. 識別対象の個人の生体情報データ項目(B)が、要素(b)のリストの形式であり、その各要素(b)は、アルファベット(ε)の符号(x)であり、管理サーバが保護集合(LOCK(A,…,A))を制御サーバ(SC)に通信し、識別対象の個人の生体情報データ項目(B)から、制御サーバ(SC)は、保護集合(LOCK(A,…,A))を復号化するステップを実施し、復号化ステップは、
    −個人(I)のデータ項目(B)を構成する要素(b)のリスト内にあるアルファベット(ε)の符号(x)に対応する索引付き集合(S)のすべてを備える保護集合(LOCK(A,…,A))の部分集合を選択すること
    −個人のデータ項目(B)がベース内のデータ項目(A)に対応する場合、符号化関数の集合が、前記データ項目(A)に対応する符号化関数(F)を含むように、引数が前記選択された部分集合であり、結果が符号化関数の集合であるリスト回復アルゴリズムを使用すること
    から成るステップを備える、請求項11に記載の方法。
  13. 取得された1つまたは複数の符号化関数から、制御サーバが、所定の閾値より大きい、ある程度の類似性を有する個人のデータ項目(B)に対応するベース(DB)内の1つまたは複数のデータ項目(A)を決定する、請求項12に記載の方法。
  14. 制御サーバ(SC)が、パブリックハッシュ関数(Hash)によりリスト回復アルゴリズムからもたらされる集合の符号化関数の画像を決定し、この画像を、保護集合(LOCK(A,…,A))内に含まれたベース内のデータに対応する符号化関数の画像と比較する、請求項12または13のいずれか一項に記載の方法。
JP2014561459A 2012-03-15 2013-03-14 保護集合内の複数のデータを暗号化する方法 Active JP5714785B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
FR1252365 2012-03-15
FR1252365A FR2988249B1 (fr) 2012-03-15 2012-03-15 Procede de cryptage d'une pluralite de donnees en un ensemble securise
PCT/EP2013/055297 WO2013135846A1 (fr) 2012-03-15 2013-03-14 Procede de cryptage d'une pluralite de donnees en un ensemble securise

Publications (2)

Publication Number Publication Date
JP2015513271A true JP2015513271A (ja) 2015-04-30
JP5714785B2 JP5714785B2 (ja) 2015-05-07

Family

ID=47882170

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2014561459A Active JP5714785B2 (ja) 2012-03-15 2013-03-14 保護集合内の複数のデータを暗号化する方法

Country Status (7)

Country Link
US (1) US9356786B2 (ja)
EP (1) EP2826200B1 (ja)
JP (1) JP5714785B2 (ja)
CA (1) CA2867241C (ja)
FR (1) FR2988249B1 (ja)
IL (1) IL234580A (ja)
WO (1) WO2013135846A1 (ja)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR3015724B1 (fr) 2013-12-19 2016-01-22 Morpho Elements secondaires dans un encodage de type fuzzy vault
JP6512965B2 (ja) 2015-07-01 2019-05-15 キヤノン株式会社 画像処理装置および画像処理方法
US10586093B2 (en) * 2017-03-29 2020-03-10 King Abdulaziz University System, device, and method for pattern representation and recognition

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FI20021736A (fi) * 2002-09-30 2004-03-31 Nokia Corp Menetelmä ja järjestely lukituksen toiminnan ohjaamiseksi
KR20060113685A (ko) * 2003-10-29 2006-11-02 코닌클리케 필립스 일렉트로닉스 엔.브이. 물리적 랜덤 함수들을 함께 공유하는 신뢰성 있는 포워드비밀 키의 시스템 및 방법
US8375218B2 (en) * 2004-12-07 2013-02-12 Mitsubishi Electric Research Laboratories, Inc. Pre-processing biometric parameters before encoding and decoding
US7620818B2 (en) * 2004-12-07 2009-11-17 Mitsubishi Electric Research Laboratories, Inc. Biometric based user authentication and data encryption
US20060123239A1 (en) * 2004-12-07 2006-06-08 Emin Martinian Biometric based user authentication with syndrome codes
US7739733B2 (en) * 2005-11-02 2010-06-15 Emc Corporation Storing digital secrets in a vault
KR100949801B1 (ko) * 2008-04-17 2010-03-30 한국전자통신연구원 퍼지볼트 시스템에서의 다항식 복원장치 및 그 방법
WO2011113478A1 (de) * 2010-03-16 2011-09-22 Carlo Trugenberger Authentifizierungssystem, verfahren zur authentifizierung eines objekts, vorrichtung zur erzeugung einer identifikationseinrichtung, verfahren zur erzeugung einer identifikationseinrichtung

Also Published As

Publication number Publication date
FR2988249B1 (fr) 2014-02-28
WO2013135846A1 (fr) 2013-09-19
EP2826200A1 (fr) 2015-01-21
CA2867241A1 (fr) 2013-09-19
JP5714785B2 (ja) 2015-05-07
FR2988249A1 (fr) 2013-09-20
CA2867241C (fr) 2019-12-31
IL234580A (en) 2017-09-28
US20150039899A1 (en) 2015-02-05
EP2826200B1 (fr) 2016-05-11
US9356786B2 (en) 2016-05-31

Similar Documents

Publication Publication Date Title
JP6606169B2 (ja) 情報の暗号化及び復号化
JP6504013B2 (ja) 暗号処理方法、暗号処理装置、および暗号処理プログラム
US8208627B2 (en) Format-preserving cryptographic systems
US20150365229A1 (en) Method of xor homomorphic encryption and secure calculation of a hamming distance
CN110710155A (zh) 渐进式密钥加密算法
US20170149565A9 (en) Format-preserving cryptographic systems
JP6931247B2 (ja) 暗号文照合システム、方法、およびプログラム
US20120321076A1 (en) Cryptographic ignition key system
EP2991264B1 (en) Encrypted text matching system, method and program
Nazari et al. Securing templates in a face recognition system using error-correcting output code and chaos theory
JP6738061B2 (ja) 暗号文照合システム、方法、および記録媒体
JP5714785B2 (ja) 保護集合内の複数のデータを暗号化する方法
Zeroual et al. Lightweight deep learning model to secure authentication in Mobile Cloud Computing
Zhang et al. Vector-based efficient data hiding in encrypted images via multi-MSB replacement
US10922292B2 (en) Metamorphic storage of passcodes
Lakshmi et al. Image encryption algorithms using machine learning and deep learning techniques—A Survey
EP2991266B1 (en) Encrypted text matching system, method, and computer readable medium
CN114065169B (zh) 一种隐私保护生物认证方法和装置、电子设备
WO2017209228A1 (ja) 暗号化情報照合装置、暗号化情報照合方法、及び、暗号化情報照合プログラムが格納された記録媒体
Nazari et al. A face template protection approach using chaos and GRP permutation
Arakala et al. Protection of minutiae‐based templates using biocryptographic constructs in the set difference metric
CN110503430A (zh) 交易处理方法、安全元件及智能卡
Davida et al. Perfectly secure authorization and passive identification for an error tolerant biometric system
Walia et al. Multi Encryption Approach to Provide Security for Cloud Integrated Internet of Things
Sarkar et al. Blockchain-based authenticable (k, n) multi-secret image sharing scheme

Legal Events

Date Code Title Description
A975 Report on accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A971005

Effective date: 20150129

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20150311

R150 Certificate of patent or registration of utility model

Ref document number: 5714785

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

S533 Written request for registration of change of name

Free format text: JAPANESE INTERMEDIATE CODE: R313533

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250