(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-11-11
(45)【発行日】2024-11-19
(54)【発明の名称】端末装置、暗号化情報変換装置、照合システム、入力情報暗号化方法、暗号化情報変換方法、照合方法、入力情報暗号化プログラム、及び暗号化情報変換プログラム
(51)【国際特許分類】
G06F 21/32 20130101AFI20241112BHJP
G06F 21/60 20130101ALI20241112BHJP
【FI】
G06F21/32
G06F21/60 320
(21)【出願番号】P 2023529418
(86)(22)【出願日】2021-06-25
(86)【国際出願番号】 JP2021024182
(87)【国際公開番号】W WO2022269914
(87)【国際公開日】2022-12-29
【審査請求日】2023-11-15
(73)【特許権者】
【識別番号】000004237
【氏名又は名称】日本電気株式会社
(74)【代理人】
【識別番号】100141519
【氏名又は名称】梶田 邦之
(72)【発明者】
【氏名】森 健吾
(72)【発明者】
【氏名】一色 寿幸
(72)【発明者】
【氏名】中川 紗菜美
(72)【発明者】
【氏名】田宮 寛人
(72)【発明者】
【氏名】奈良 成泰
【審査官】辻 勇貴
(56)【参考文献】
【文献】特開2011-248778(JP,A)
【文献】特開2006-121215(JP,A)
【文献】特開2008-046151(JP,A)
【文献】国際公開第2010/070787(WO,A1)
(58)【調査した分野】(Int.Cl.,DB名)
G06F 21/32
G06F 21/60
(57)【特許請求の範囲】
【請求項1】
照合のために入力される入力情報を暗号化する端末装置であって、
マスタパラメータを記憶する端末側記憶領域
であって、前記マスタパラメータは、前記端末装置に対してユニークに定められている、端末側記憶領域と、
サブパラメータを取得する端末側取得手段と、
前記
マスタパラメータと前記
サブパラメータとに基づいて変換パラメータを生成する変換パラメータ生成処理を行う変換パラメータ生成手段と、
前記変換パラメータを用いて前記入力情報を暗号化することにより暗号化入力情報を生成する暗号化情報生成手段と、を備える、
端末装置。
【請求項2】
前記
マスタパラメータは、第1乱数シードであり、
前記
サブパラメータは、第2乱数シードであり、
前記変換パラメータ生成手段は、
前記変換パラメータ生成処理として、前記第1乱数シード及び前記第2乱数シードを用いて乱数を生成し、
前記暗号化情報生成手段は、
前記変換パラメータとして、前記乱数を用いて前記入力情報を暗号化する、
請求項1に記載の端末装置。
【請求項3】
前記
サブパラメータは、前記変換パラメータが暗号化された暗号化パラメータであり、
前記
マスタパラメータは、前記暗号化パラメータを復号するための秘密鍵であり、
前記変換パラメータ生成手段は、
前記変換パラメータ生成処理として、前記暗号化パラメータを前記秘密鍵によって復号することにより、前記変換パラメータを生成する、
請求項1に記載の端末装置。
【請求項4】
前記端末側記憶領域、前記変換パラメータ生成手段、及び前記暗号化情報生成手段は、前記端末装置の保護領域に実装されている、
請求項1から3のいずれか1項に記載の端末装置。
【請求項5】
前記変換パラメータは、
前記暗号化情報生成手段による暗号化の対象となる情報に含まれる要素の並び順を置き換える置換鍵であり、
前記暗号化情報生成手段は、
前記入力情報に含まれる要素の並び順を、前記置換鍵を用いて置き換えることにより、前記暗号化入力情報を生成する、
請求項1から4のいずれか1項に記載の端末装置。
【請求項6】
前記変換パラメータは、
前記暗号化情報生成手段による暗号化の対象となる情報に含まれる要素に対応するランダムなビット列からなるデータセットであり、
前記暗号化情報生成手段は、
前記入力情報と前記データセットとの論理的排他和を計算することにより、前記暗号化入力情報を生成する、
請求項1から4のいずれか1項に記載の端末装置。
【請求項7】
照合のために入力される入力情報を、第1パラメータ及び第2パラメータに基づいて生成した変換パラメータによって暗号化することにより生成される暗号化入力情報を、更新暗号化入力情報に変換する暗号化情報変換装置であって、
前記第1パラメータを記憶する変換側記憶領域と、
前記暗号化入力情報を生成するために用いられた前記第2パラメータと、前記第2パラメータとは異なる第3パラメータとを取得する変換側取得手段と、
前記第1パラメータ、前記第2パラメータ、及び前記第3パラメータを用いて前記暗号化入力情報を変換するための暗号変換パラメータを生成する暗号変換パラメータ生成手段と、
前記暗号変換パラメータを用いて前記暗号化入力情報を変換することにより、前記更新暗号化入力情報を生成する更新情報生成手段と、を備える、
暗号化情報変換装置。
【請求項8】
前記暗号変換パラメータ生成手段は、
前記第1パラメータ及び前記第2パラメータを用いて前記変換パラメータを生成し、
前記第1パラメータ及び前記第3パラメータを用いて前記変換パラメータとは異なる更新変換パラメータを生成し、
前記変換パラメータと前記更新変換パラメータとを合成することにより、前記暗号変換パラメータを生成する、
請求項7に記載の暗号化情報変換装置。
【請求項9】
前記変換パラメータは、
前記入力情報に含まれる要素の並び順を置き換える第1置換鍵であり、
前記暗号変換パラメータは、
前記暗号化入力情報に含まれる要素の並び順を置き換える第2置換鍵であり、
前記更新情報生成手段は、
前記暗号化入力情報に含まれる要素の並び順を、前記第2置換鍵を用いて置き換えることにより、前記更新暗号化入力情報を生成する、
請求項7又は8に記載の暗号化情報変換装置。
【請求項10】
前記変換パラメータは、
前記入力情報に含まれる要素に対応するランダムなビット列からなる第1データセットであり、
前記暗号変換パラメータは、
前記暗号化入力情報に含まれる要素に対応するランダムなビット列であって、かつ前記第1データセットとは異なる第2データセットであり、
前記更新情報生成手段は、
前記暗号化入力情報と前記第2データセットとの論理的排他和を計算することにより、前記更新暗号化入力情報を生成する、
請求項7又は8に記載の暗号化情報変換装置。
【請求項11】
前記変換側記憶領域、前記暗号変換パラメータ生成手段、及び前記更新情報生成手段は、前記暗号化情報変換装置の保護領域に実装されている、
請求項7から10のいずれか1項に記載の暗号化情報変換装置。
【請求項12】
照合のために入力される入力情報を、第1パラメータ及び第2パラメータを用いて生成した変換パラメータによって暗号化することにより生成される暗号化入力情報を、更新暗号化入力情報に変換する暗号化情報変換装置であって、
前記第1パラメータを含む複数のマスタパラメータを記憶する変換側記憶領域と、
前記暗号化入力情報を生成するために用いられた前記第2パラメータを取得する変換側取得手段と、
複数の前記マスタパラメータと、前記第2パラメータとを用いて前記暗号化入力情報を変換するための暗号変換パラメータを生成する暗号変換パラメータ生成手段と、
前記暗号変換パラメータを用いて前記暗号化入力情報を変換することにより、前記更新暗号化入力情報を生成する更新情報生成手段と、を備える、
暗号化情報変換装置。
【請求項13】
前記暗号変換パラメータ生成手段は、
前記第1パラメータ及び前記第2パラメータを用いて前記変換パラメータを生成し、
前記第1パラメータ以外の前記マスタパラメータと、前記第2パラメータとを用いて、前記変換パラメータとは異なる更新変換パラメータを生成し、
前記変換パラメータと、前記更新変換パラメータとを合成することにより、前記暗号変換パラメータを生成する、
請求項12に記載の暗号化情報変換装置。
【請求項14】
前記変換パラメータは、
前記入力情報に含まれる要素の並び順を置き換える第1置換鍵であり、
前記暗号変換パラメータは、
前記暗号化入力情報に含まれる要素の並び順を置き換える第2置換鍵であり、
前記更新情報生成手段は、
前記暗号化入力情報に含まれる要素の並び順を、前記第2置換鍵を用いて置き換えることにより、前記更新暗号化入力情報を生成する、
請求項12又は13に記載の暗号化情報変換装置。
【請求項15】
前記変換パラメータは、
前記入力情報に含まれる要素に対応するランダムなビット列からなる第1データセットであり、
前記暗号変換パラメータは、
前記暗号化入力情報に含まれる要素に対応するランダムなビット列であって、かつ前記第1データセットとは異なる第2データセットであり、
前記更新情報生成手段は、
前記暗号化入力情報と前記第2データセットとの論理的排他和を計算することにより、前記更新暗号化入力情報を生成する、
請求項12又は13に記載の暗号化情報変換装置。
【請求項16】
前記変換側記憶領域、前記暗号変換パラメータ生成手段、及び前記更新情報生成手段は、前記暗号化情報変換装置の保護領域に実装されている、
請求項12から15のいずれか1項に記載の暗号化情報変換装置。
【請求項17】
請求項1から6のいずれか1項に記載の端末装置と、
照合のために前記端末装置に入力される第1入力情報を、前記暗号化情報生成手段が前記変換パラメータを用いて暗号化することにより生成される第1暗号化入力情報と、照合のために前記端末装置に入力される前記第1入力情報とは異なる第2入力情報を暗号化することにより生成される第2暗号化入力情報とに基づいて、前記第1入力情報と前記第2入力情報とを照合する照合処理を行う照合処理手段と、を備える、
照合システム。
【請求項18】
請求項7から11のいずれか1項に記載の暗号化情報変換装置を備える、
請求項17に記載の照合システム。
【請求項19】
前記暗号化情報変換装置は、前記照合処理手段を有する、
請求項18に記載の照合システム。
【請求項20】
前記照合処理手段は、前記暗号化情報変換装置が備える保護領域に実装されている、
請求項19に記載の照合システム。
【請求項21】
前記端末装置及び前記暗号化情報変換装置に前記第2パラメータ及び前記第3パラメータを送信するパラメータ送信装置を備える、
請求項18から20のいずれか1項に記載の照合システム。
【請求項22】
前記パラメータ送信装置は、
前記第2パラメータと前記第3パラメータとを生成するパラメータ生成手段を有する、
請求項21に記載の照合システム。
【請求項23】
前記変換パラメータ生成手段は、
前記第1パラメータと、前記第3パラメータとに基づいて、前記変換パラメータとは異なる端末側更新変換パラメータを生成可能であり、
前記暗号化情報生成手段は、
前記端末側更新変換パラメータを用いて、前記第2入力情報を暗号化することにより前記第2暗号化入力情報を生成する、
請求項21又は22に記載の照合システム。
【請求項24】
前記暗号変換パラメータ生成手段は、
前記第1パラメータ、前記第2パラメータ、及び前記第3パラメータを用いて前記暗号変換パラメータを生成し、
前記更新情報生成手段は、
前記第1パラメータ、前記第2パラメータ、及び前記第3パラメータを用いて生成された前記暗号変換パラメータによって前記第1暗号化入力情報を前記更新暗号化入力情報に変換し、
前記照合処理手段は、
前記第1暗号化入力情報を変換して生成された前記更新暗号化入力情報と、前記端末側更新変換パラメータを用いて生成された前記第2暗号化入力情報とに基づいて前記照合処理を行う、
請求項23に記載の照合システム。
【請求項25】
前記照合処理手段は、
前記第1暗号化入力情報と前記第2暗号化入力情報とを準同型演算することにより、前記第1入力情報と前記第2入力情報との類似度を暗号化した状態で出力する準同型演算処理手段と、
暗号化した状態で出力された前記類似度を暗号化することにより暗号化類似度情報を生成する暗号化類似度情報生成手段と、を有し、
前記照合システムは、
前記暗号化類似度情報を復号する復号処理手段と、
復号された前記暗号化類似度情報に基づいて前記第1入力情報に対する前記第2入力情報の類似度を判定する類似度判定手段と、を備える、
請求項17から24のいずれか1項に記載の照合システム。
【請求項26】
請求項1から6のいずれか1項に記載の端末装置と、
照合のために前記端末装置に入力される第3入力情報を、前記暗号化情報生成手段が前記変換パラメータを用いて暗号化することにより生成される第3暗号化入力情報と、照合のために前記端末装置に入力される前記第3入力情報とは異なる第4入力情報を暗号化することにより生成される第4暗号化入力情報とに基づいて、前記第3入力情報と前記第4入力情報とを照合する照合処理を行う照合処理手段と、を備える、
照合システム。
【請求項27】
請求項7から11のいずれか1項に記載の暗号化情報変換装置を備える、
請求項26に記載の照合システム。
【請求項28】
前記暗号化情報変換装置は、前記照合処理手段を有する、
請求項27に記載の照合システム。
【請求項29】
前記照合処理手段は、前記暗号化情報変換装置が備える保護領域に実装されている、
請求項28に記載の照合システム。
【請求項30】
前記端末装置及び前記暗号化情報変換装置に前記第2パラメータを送信するパラメータ送信装置を備える、
請求項27から29のいずれか1項に記載の照合システム。
【請求項31】
前記パラメータ送信装置は、
前記第2パラメータを生成するパラメータ生成手段を有する、
請求項30に記載の照合システム。
【請求項32】
前記端末装置は、
前記第1パラメータ及び前記第2パラメータとは異なる第4パラメータを、前記端末側記憶領域に記憶し、
前記変換パラメータ生成手段は、
前記第2パラメータと、前記第4パラメータとに基づいて、前記変換パラメータとは異なる端末側更新変換パラメータを生成可能であり、
前記暗号化情報生成手段は、
前記端末側更新変換パラメータを用いて、前記第4入力情報を暗号化することにより前記第4暗号化入力情報を生成する、
請求項30又は31に記載の照合システム。
【請求項33】
前記暗号化情報変換装置は、
マスタパラメータとして、前記第4パラメータを記憶し、
前記暗号変換パラメータ生成手段は、
前記第1パラメータ、前記第2パラメータ、及び前記第4パラメータを用いて前記暗号変換パラメータを生成し、
前記更新情報生成手段は、
前記第4パラメータに基づいて生成した前記暗号変換パラメータを用いて前記第3暗号化入力情報を変換し、
前記照合処理手段は、
前記更新情報生成手段によって前記第3暗号化入力情報を変換して生成した前記更新暗号化入力情報と、前記端末装置において前記端末側更新変換パラメータを用いて生成された前記第4暗号化入力情報とに基づいて前記照合処理を行う、
請求項32に記載の照合システム。
【請求項34】
前記照合処理手段は、
前記第3暗号化入力情報と前記第4暗号化入力情報とを準同型演算することにより、前記第3入力情報と前記第4入力情報との類似度を暗号化した状態で出力する準同型演算処理手段と、
暗号化した状態で出力された前記類似度を暗号化することにより暗号化類似度情報を生成する暗号化類似度情報生成手段と、を有し、
前記照合システムは、
前記暗号化類似度情報を復号する復号処理手段と、
復号された前記暗号化類似度情報に基づいて前記第3入力情報に対する前記第4入力情報の類似度を判定する類似度判定手段と、を備える、
請求項26から33のいずれか1項に記載の照合システム。
【請求項35】
前記照合処理手段は、
前記照合処理の結果を前記端末装置に送信する、
請求項17から34のいずれか1項に記載の照合システム。
【請求項36】
記憶領域に記憶されている
マスタパラメータと
、サブパラメータとに基づいて変換パラメータを生成する変換パラメータ生成処理を行うこと
であって、前記マスタパラメータは、前記端末装置に対してユニークに定められている、ことと、
照合のために入力される入力情報を、前記変換パラメータを用いて暗号化することにより暗号化入力情報を生成することと、を備える、
入力情報暗号化方法。
【請求項37】
照合のために入力される入力情報を、第1パラメータ及び第2パラメータを用いて生成した変換パラメータによって暗号化することにより生成される暗号化入力情報を、更新暗号化入力情報に変換する暗号化情報変換方法であって、
前記暗号化入力情報を生成するために用いられた前記第2パラメータを取得することと、
前記第2パラメータとは異なる第3パラメータを取得することと、
記憶領域に記憶されている前記第1パラメータと、取得した前記第2パラメータ及び前記第3パラメータとを用いて前記暗号化入力情報を変換するための暗号変換パラメータを生成することと、
前記暗号変換パラメータを用いて前記暗号化入力情報を変換することにより、前記更新暗号化入力情報を生成することと、を備える、
暗号化情報変換方法。
【請求項38】
照合のために入力される入力情報を、第1パラメータ及び第2パラメータを用いて生成した変換パラメータによって暗号化することにより生成される暗号化入力情報を、更新暗号化入力情報に変換する暗号化情報変換方法であって、
前記暗号化入力情報を生成するために用いられた前記第2パラメータを取得することと、
記憶領域に記憶されている前記第1パラメータ以外のマスタパラメータと、前記第2パラメータとを用いて、前記暗号化入力情報を変換するための暗号変換パラメータを生成することと、
前記暗号変換パラメータを用いて前記暗号化入力情報を変換することにより、前記更新暗号化入力情報を生成することと、を備える、
暗号化情報変換方法。
【請求項39】
端末装置の記憶領域に記憶されている第1パラメータと前記第1パラメータとは異なる第2パラメータとに基づいて変換パラメータを生成する変換パラメータ生成処理を行うことと、
照合のために入力される入力情報を、前記変換パラメータを用いて暗号化することにより暗号化入力情報を生成することと、
照合のための第1入力情報を、前記変換パラメータを用いて暗号化することにより生成される第1暗号化入力情報と、照合のために入力される前記第1入力情報とは異なる第2入力情報を暗号化することにより生成される第2暗号化入力情報とに基づいて、前記第1入力情報と前記第2入力情報とを照合する照合処理を行うことと、を備える、
照合方法。
【請求項40】
端末装置の記憶領域に記憶されている第1パラメータと前記第1パラメータとは異なる第2パラメータとに基づいて変換パラメータを生成する変換パラメータ生成処理を行うことと、
照合のために入力される入力情報を、前記変換パラメータを用いて暗号化することにより暗号化入力情報を生成することと、
照合のために入力される第3入力情報を、前記変換パラメータを用いて暗号化することにより生成される第3暗号化入力情報と、照合のために入力される前記第3入力情報とは異なる第4入力情報を暗号化することにより生成される第4暗号化入力情報とに基づいて、前記第3入力情報と前記第4入力情報とを照合する照合処理を行うことと、を備える、
照合方法。
【請求項41】
記憶領域に記憶されている
マスタパラメータと
、サブパラメータとに基づいて変換パラメータを生成する変換パラメータ生成処理を行うこと
であって、前記マスタパラメータは、前記端末装置に対してユニークに定められている、ことと、
照合のために入力される入力情報を、前記変換パラメータを用いて暗号化することにより暗号化入力情報を生成することと、をプロセッサに実行させる、
入力情報暗号化プログラム。
【請求項42】
照合のために入力される入力情報を、第1パラメータ及び第2パラメータを用いて生成した変換パラメータによって暗号化することにより生成される暗号化入力情報を、更新暗号化入力情報に変換する暗号化情報変換プログラムであって、
前記暗号化入力情報を生成するために用いられた前記第2パラメータを取得することと、
前記第2パラメータとは異なる第3パラメータを取得することと、
記憶領域に記憶されている前記第1パラメータと、取得した前記第2パラメータ及び前記第3パラメータとを用いて前記暗号化入力情報を変換するための暗号変換パラメータを生成することと、
前記暗号変換パラメータを用いて前記暗号化入力情報を変換することにより、前記更新暗号化入力情報を生成することと、をプロセッサに実行させる、
暗号化情報変換プログラム。
【請求項43】
照合のために入力される入力情報を、第1パラメータ及び第2パラメータを用いて生成した変換パラメータによって暗号化することにより生成される暗号化入力情報を、更新暗号化入力情報に変換する暗号化情報変換プログラムであって、
前記暗号化入力情報を生成するために用いられた前記第2パラメータを取得することと、
記憶領域に記憶されている前記第1パラメータ以外のマスタパラメータと、前記第2パラメータとを用いて前記暗号化入力情報を変換するための暗号変換パラメータを生成することと、
前記暗号変換パラメータを用いて前記暗号化入力情報を変換することにより、前記更新暗号化入力情報を生成することと、をプロセッサに実行させる、
暗号化情報変換プログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、端末装置、暗号化情報変換装置、照合システム、入力情報暗号化方法、暗号化情報変換方法、照合方法、入力情報暗号化プログラム、及び暗号化情報変換プログラムに関する。
【背景技術】
【0002】
近年、ユーザ認証方式のひとつとして、指紋、静脈、虹彩、及び顔画像等の生体情報を照合することにより認証を行う生体認証技術が広く用いられている。生体認証技術においては、ユーザの生体情報から特徴量を抽出して登録情報として保存し、認証に際し入力されたユーザの生体情報の特徴量と登録情報とを照合して認証可否が判断される。
【0003】
生体認証技術は、ICカード等を利用した認証技術と比較して、紛失及び盗難のリスクが少ないといった利点がある一方で、生体情報が漏洩した場合であっても、生体情報の破棄及び更新を行うことができない。つまり、生体情報の漏洩は、漏洩した生体情報に係る生体の個人情報に関する問題だけではなく、漏洩した生体情報に係る生体の生体情報を用いる認証システムのセキュリティ性を損なうという問題がある。
【0004】
このような問題に対して、ユーザの生体情報の保護を目的として、登録情報を無効化することが可能な「キャンセラブルバイオメトリクス」と呼ばれる技術が提案されている。
【0005】
キャンセラブルバイオメトリクスでは、生体情報から抽出した特徴量の要素を、秘密鍵を用いて並び替えることにより暗号化し、登録情報を生成する。また、認証時に入力された生体情報から抽出された特徴量の要素に対しても、登録時と同じ秘密鍵を用いて暗号化を行うことにより照合情報を生成する。つまり、登録情報を作り変える際には、異なる秘密鍵を用いることにより、生成済みの登録情報を無効化することが可能となる。キャンセラブルバイオメトリクスにおける暗号化は、このような登録情報の性質から、「キャンセラブル変換」と称される。キャンセラブル変換として、例えば、非特許文献1には、指紋等から得られた特徴点の画像をブロック分割して、秘密鍵を用いて分割した画像の並びを入れ替えることにより、登録情報及び照合情報を生成する方法が提案されている。
【先行技術文献】
【非特許文献】
【0006】
【文献】N.K.Ratha,et al.,“Enhancing security and privacy in biometrics-based authentication systems”,IBM Systems Journal 40(3),614-634,2001
【発明の概要】
【発明が解決しようとする課題】
【0007】
上述したように、キャンセラブル変換では、登録時と照合時とにおいて同じ秘密鍵を用いて、生体情報から抽出した特徴量の要素の変換が行われる。したがって、生体情報の漏洩リスクを低減するには、キャンセラブル変換されたままの状態で登録情報と照合情報とを照合することが望ましい。また、登録情報と照合情報とを照合する場合に、従来の生体認証技術と同程度の照合精度が得られるように、キャンセラブル変換を行うことが望ましい。
【0008】
本発明の目的は、上記課題を鑑みてなされたものであり、照合精度の劣化の抑制と情報の漏洩リスクの低減とを両立可能な暗号化処理を実現する端末装置、暗号化情報変換装置、照合システム、入力情報暗号化方法、暗号化情報変換方法、照合方法、入力情報暗号化プログラム、及び暗号化情報変換プログラムを提供することである。
【課題を解決するための手段】
【0009】
本発明の端末装置は、照合のために入力される入力情報を暗号化する端末装置であって、第1パラメータを記憶する端末側記憶領域と、第2パラメータを取得する端末側取得部と、前記第1パラメータと前記第2パラメータとに基づいて変換パラメータを生成する変換パラメータ生成処理を行う変換パラメータ生成部と、前記変換パラメータを用いて前記入力情報を暗号化することにより暗号化入力情報を生成する暗号化情報生成部と、を備える。
【0010】
本発明の暗号化情報変換装置は、照合のために入力される入力情報を、第1パラメータ及び第2パラメータを用いて生成した変換パラメータによって暗号化することにより生成される暗号化入力情報を、更新暗号化入力情報に変換する暗号化情報変換装置であって、前記第1パラメータを記憶する変換側記憶領域と、前記暗号化入力情報を生成するために用いられた前記第2パラメータと、前記第2パラメータとは異なる第3パラメータとを取得する変換側取得部と、前記第1パラメータ、前記第2パラメータ、及び前記第3パラメータを用いて前記暗号化入力情報を変換するための暗号変換パラメータを生成する暗号変換パラメータ生成部と、前記暗号変換パラメータを用いて前記暗号化入力情報を変換することにより、前記更新暗号化入力情報を生成する更新情報生成部と、を備える。
【0011】
本発明の暗号化情報変換装置は、照合のために入力される入力情報を、第1パラメータ及び第2パラメータを用いて生成した変換パラメータによって暗号化することにより生成される暗号化入力情報を、更新暗号化入力情報に変換する暗号化情報変換装置であって、前記第1パラメータを含む複数のマスタパラメータを記憶する変換側記憶領域と、前記暗号化入力情報を生成するために用いられた前記第2パラメータを取得する変換側取得部と、複数の前記マスタパラメータと、前記第2パラメータとを用いて前記暗号化入力情報を変換するための暗号変換パラメータを生成する暗号変換パラメータ生成部と、前記暗号変換パラメータを用いて前記暗号化入力情報を変換することにより、前記更新暗号化入力情報を生成する更新情報生成部と、を備える。
【0012】
本発明の照合システムは、照合のために入力される入力情報を暗号化する端末装置であって、第1パラメータを記憶する端末側記憶領域と、第2パラメータを取得する端末側取得部と、前記第1パラメータと前記第2パラメータとに基づいて変換パラメータを生成する変換パラメータ生成処理を行う変換パラメータ生成部と、前記変換パラメータを用いて前記入力情報を暗号化することにより暗号化入力情報を生成する暗号化情報生成部とを備える端末装置と、照合のために前記端末装置に入力される第1入力情報を、前記暗号化情報生成部が前記変換パラメータを用いて暗号化することにより生成される第1暗号化入力情報と、照合のために前記端末装置に入力される前記第1入力情報とは異なる第2入力情報を暗号化することにより生成される第2暗号化入力情報とに基づいて、前記第1入力情報と前記第2入力情報とを照合する照合処理を行う照合処理部と、を備える。
【0013】
本発明の照合システムは、照合のために入力される入力情報を暗号化する端末装置であって、第1パラメータを記憶する端末側記憶領域と、第2パラメータを取得する端末側取得部と、前記第1パラメータと前記第2パラメータとに基づいて変換パラメータを生成する変換パラメータ生成処理を行う変換パラメータ生成部と、前記変換パラメータを用いて前記入力情報を暗号化することにより暗号化入力情報を生成する暗号化情報生成部と、を備える端末装置と、照合のために前記端末装置に入力される第3入力情報を、前記暗号化情報生成部が前記変換パラメータを用いて暗号化することにより生成される第3暗号化入力情報と、照合のために前記端末装置に入力される前記第3入力情報とは異なる第4入力情報を暗号化することにより生成される第4暗号化入力情報とに基づいて、前記第3入力情報と前記第4入力情報とを照合する照合処理を行う照合処理部と、を備える。
【0014】
本発明の入力情報暗号化方法は、記憶領域に記憶されている第1パラメータと前記第1パラメータとは異なる第2パラメータとに基づいて変換パラメータを生成する変換パラメータ生成処理を行うことと、照合のために入力される入力情報を、前記変換パラメータを用いて暗号化することにより暗号化入力情報を生成することと、を備える。
【0015】
本発明の暗号化情報変換方法は、照合のために入力される入力情報を、第1パラメータ及び第2パラメータを用いて生成した変換パラメータによって暗号化することにより生成される暗号化入力情報を、更新暗号化入力情報に変換する暗号化情報変換方法であって、前記暗号化入力情報を生成するために用いられた前記第2パラメータを取得することと、前記第2パラメータとは異なる第3パラメータを取得することと、記憶領域に記憶されている前記第1パラメータと、取得した前記第2パラメータ及び前記第3パラメータとを用いて前記暗号化入力情報を変換するための暗号変換パラメータを生成することと、前記暗号変換パラメータを用いて前記暗号化入力情報を変換することにより、前記更新暗号化入力情報を生成することと、を備える。
【0016】
本発明の暗号化情報変換方法は、照合のために入力される入力情報を、第1パラメータ及び第2パラメータを用いて生成した変換パラメータによって暗号化することにより生成される暗号化入力情報を、更新暗号化入力情報に変換する暗号化情報変換方法であって、前記暗号化入力情報を生成するために用いられた前記第2パラメータを取得することと、記憶領域に記憶されている前記第1パラメータ以外のマスタパラメータと、前記第2パラメータとを用いて、前記暗号化入力情報を変換するための暗号変換パラメータを生成することと、前記暗号変換パラメータを用いて前記暗号化入力情報を変換することにより、前記更新暗号化入力情報を生成することと、を備える。
【0017】
本発明の照合方法は、端末装置の記憶領域に記憶されている第1パラメータと前記第1パラメータとは異なる第2パラメータとに基づいて変換パラメータを生成する変換パラメータ生成処理を行うことと、照合のために入力される入力情報を、前記変換パラメータを用いて暗号化することにより暗号化入力情報を生成することと、照合のための第1入力情報を、前記変換パラメータを用いて暗号化することにより生成される第1暗号化入力情報と、照合のために入力される前記第1入力情報とは異なる第2入力情報を暗号化することにより生成される第2暗号化入力情報とに基づいて、前記第1入力情報と前記第2入力情報とを照合する照合処理を行うことと、を備える。
【0018】
本発明の照合方法は、端末装置の記憶領域に記憶されている第1パラメータと前記第1パラメータとは異なる第2パラメータとに基づいて変換パラメータを生成する変換パラメータ生成処理を行うことと、照合のために入力される入力情報を、前記変換パラメータを用いて暗号化することにより暗号化入力情報を生成することと、照合のために入力される第3入力情報を、前記変換パラメータを用いて暗号化することにより生成される第3暗号化入力情報と、照合のために入力される前記第3入力情報とは異なる第4入力情報を暗号化することにより生成される第4暗号化入力情報とに基づいて、前記第3入力情報と前記第4入力情報とを照合する照合処理を行うことと、を備える。
【0019】
本発明の入力情報暗号化プログラムは、記憶領域に記憶されている第1パラメータと前記第1パラメータとは異なる第2パラメータとに基づいて変換パラメータを生成する変換パラメータ生成処理を行うことと、照合のために入力される入力情報を、前記変換パラメータを用いて暗号化することにより暗号化入力情報を生成することと、をプロセッサに実行させる。
【0020】
本発明の暗号化情報変換プログラムは、照合のために入力される入力情報を、第1パラメータ及び第2パラメータを用いて生成した変換パラメータによって暗号化することにより生成される暗号化入力情報を、更新暗号化入力情報に変換する暗号化情報変換プログラムであって、前記暗号化入力情報を生成するために用いられた前記第2パラメータを取得することと、前記第2パラメータとは異なる第3パラメータを取得することと、記憶領域に記憶されている前記第1パラメータと、取得した前記第2パラメータ及び前記第3パラメータとを用いて前記暗号化入力情報を変換するための暗号変換パラメータを生成することと、前記暗号変換パラメータを用いて前記暗号化入力情報を変換することにより、前記更新暗号化入力情報を生成することと、をプロセッサに実行させる。
【0021】
本発明の暗号化情報変換プログラムは、照合のために入力される入力情報を、第1パラメータ及び第2パラメータを用いて生成した変換パラメータによって暗号化することにより生成される暗号化入力情報を、更新暗号化入力情報に変換する暗号化情報変換プログラムであって、前記暗号化入力情報を生成するために用いられた前記第2パラメータを取得することと、記憶領域に記憶されている前記第1パラメータ以外のマスタパラメータと、前記第2パラメータとを用いて前記暗号化入力情報を変換するための暗号変換パラメータを生成することと、前記暗号変換パラメータを用いて前記暗号化入力情報を変換することにより、前記更新暗号化入力情報を生成することと、をプロセッサに実行させる。
【発明の効果】
【0022】
本発明によれば、照合精度の劣化の抑制と情報の漏洩リスクの低減とを両立可能な暗号化処理を実現する端末装置、暗号化情報変換装置、照合システム、入力情報暗号化方法、暗号化情報変換方法、照合方法、入力情報暗号化プログラム、及び暗号化情報変換プログラムを提供することができる。なお、本発明により、当該効果の代わりに、又は当該効果とともに、他の効果が奏されてもよい。
【図面の簡単な説明】
【0023】
【
図1】
図1は、第1の実施形態に係る照合システムの運用形態を例示した図である。
【
図2】
図2は、第1の実施形態に係る照合システムに含まれる情報処理装置のハードウェア構成を例示したブロック図である。
【
図3】
図3は、キャンセラブルバイオメトリクスの概要を示す図である。
【
図4】
図4は、第1の実施形態に係る端末装置の機能構成を示す機能ブロック図である。
【
図5】
図5は、第1の実施形態に係る変換処理部における情報の暗号化を説明するための説明図である。
【
図6】
図6は、第1の実施形態に係るサブパラメータ生成装置の機能構成を示す機能ブロック図である。
【
図7】
図7は、第1の実施形態に係る照合装置の機能構成を示す機能ブロック図である。
【
図8】
図8は、第1の実施形態に係る更新情報生成部が暗号化入力情報を変換する過程を説明するための説明図である。
【
図9】
図9は、第1の実施形態に係る特徴量データを暗号化する処理の流れを示すシーケンス図である。
【
図10】
図10は、第1の実施形態に係るデータベースに記憶される情報の構成を例示した図である。
【
図11】
図11は、第1の実施形態の実施例1に係る暗号化情報を照合する処理の流れを示すシーケンス図である。
【
図12】
図12は、第1の実施形態に係る暗号化データ変換処理の流れを示すシーケンス図である。
【
図13】
図13は、第1の実施形態に係る暗号変換パラメータを生成する処理の流れを示すフローチャートである。
【
図14】
図14は、第1の実施形態の実施例2に係る暗号化情報を照合する処理の流れを示すシーケンス図である。
【
図15】
図15は、第1の実施形態の変形例1におけるハミング距離マスクによるキャンセラブル変換を説明するための説明図である。
【
図16】
図16は、第1の実施形態の変形例2に係る暗号変換パラメータを生成する処理の流れを示すフローチャートである。
【
図17】
図17は、第1の実施形態の変形例3に係る端末装置の機能構成を示す機能ブロック図である。
【
図18】
図18は、第2の実施形態に係る照合システムの運用形態の一例を示す図である。
【
図19】
図19は、第2の実施形態に係る判定装置の機能構成を示す機能ブロック図である。
【
図20】
図20は、第2の実施形態に係る照合処理部の内部構成を示す機能ブロック図である。
【
図21】
図21は、第2の実施形態に係る照合システムにおける準同型演算処理を用いた照合処理の概要を示すモデル図である。
【
図22】
図22は、第3の実施形態に係る端末装置の概略的な構成を例示するブロック図である。
【
図23】
図23は、第3の実施形態に係る暗号化情報変換装置の概略的な構成を例示するブロック図である。
【
図24】
図24は、第3の実施形態に係る照合システムの概略的な構成を示す図である。
【発明を実施するための形態】
【0024】
以下、添付の図面を参照して本発明の実施形態を詳細に説明する。なお、本明細書及び図面において、同様に説明されることが可能な要素については、同一の符号を付することにより重複説明が省略され得る。
【0025】
以下に説明される各実施形態は、本発明を実現可能な構成の一例に過ぎない。以下の各実施形態は、本発明が適用される装置の構成や各種の条件に応じて適宜に修正又は変更することが可能である。以下の各実施形態に含まれる要素の組合せの全てが本発明を実現するに必須であるとは限られず、要素の一部を適宜に省略することが可能である。したがって、本発明の範囲は、以下の各実施形態に記載される構成によって限定されるものではない。相互に矛盾のない限りにおいて、実施形態内に記載された複数の構成を組み合わせた構成も採用可能である。
【0026】
説明は、以下の順序で行われる。
1.本発明の実施形態の概要
2.第1の実施形態
2.1.照合システムの運用形態の概要
2.2.情報処理装置のハードウェア構成
2.3.キャンセラブルバイオメトリクスの概要
2.4.端末装置の機能構成
2.5.サブパラメータ生成装置の機能構成
2.6.照合装置の機能構成
2.7.照合システムにおける特徴量データを暗号化する処理の流れ
2.8.照合システムにおいて照合を行う処理の流れ
2.8.1.実施例1
2.8.2.実施例2
2.8.3.第1の実施形態のまとめ
3.第1の実施形態の変形例
3.1.変形例1
3.2.変形例2
3.3.変形例3
4.第2の実施形態
5.第3の実施形態
6.その他の実施形態
【0027】
<1.本発明の実施形態の概要>
まず、本発明の実施形態の概要を説明する。
【0028】
(1)技術的課題
近年、ユーザ認証技術のひとつとして、指紋、静脈、虹彩、及び顔画像等の生体情報を照合することにより認証を行う生体認証技術が広く用いられている。生体認証技術においては、ユーザの生体情報から特徴量を抽出して登録情報として保存し、認証に際し入力されたユーザの生体情報の特徴量と登録情報とを照合して認証可否が判断される。
【0029】
生体認証技術は、ICカード等を利用した認証技術と比較して、紛失及び盗難のリスクが少ないといった利点がある一方で、生体情報が漏洩した場合であっても、生体情報の破棄及び更新を行うことができない。つまり、生体情報の漏洩は、漏洩した生体情報に係る生体の個人情報に関する問題だけではなく、漏洩した生体情報に係る生体の生体情報を用いる認証システムのセキュリティ性を損なうという問題がある。
【0030】
このような問題に対して、ユーザの生体情報の保護を目的として、登録情報を無効化することが可能な「キャンセラブルバイオメトリクス」と呼ばれる技術が提案されている。
【0031】
キャンセラブルバイオメトリクスでは、生体情報から抽出した特徴量の要素を、秘密鍵を用いて並び替えることにより暗号化し、登録情報を生成する。また、認証時に入力された生体情報から抽出された特徴量の要素に対しても、登録時と同じ秘密鍵を用いて暗号化を行うことにより照合情報を生成する。つまり、登録情報を作り変える際には、異なる秘密鍵を用いることにより、生成済みの登録情報を無効化することが可能となる。キャンセラブルバイオメトリクスにおける暗号化は、このような登録情報の性質から、「キャンセラブル変換」と称される。キャンセラブル変換として、例えば、指紋等から得られた特徴点の画像をブロック分割して、秘密鍵を用いて分割した画像の並びを入れ替えることにより、登録情報及び照合情報を生成する方法が提案されている。
【0032】
上述したように、キャンセラブル変換では、登録時と照合時とにおいて同じ秘密鍵を用いて、生体情報から抽出した特徴量の要素の変換が行われる。したがって、生体情報の漏洩リスクを低減するには、キャンセラブル変換されたままの状態で登録情報と照合情報とを照合することが望ましい。また、登録情報と照合情報とを照合する場合に、従来の生体認証技術と同程度の照合精度が得られるように、キャンセラブル変換を行うことが望ましい。
【0033】
以上の事情に鑑み、本実施形態では、照合精度の劣化の抑制と情報の漏洩リスクの低減とを両立可能な暗号化処理を実現する端末装置、暗号化情報変換装置、照合システム、入力情報暗号化方法、暗号化情報変換方法、照合方法、入力情報暗号化プログラム、及び暗号化情報変換プログラムを提供することを目的とする。
【0034】
(2)技術的特徴
本発明の実施形態では、照合のために入力される入力情報を暗号化する端末装置が、第1パラメータを記憶する端末側記憶領域と、第2パラメータを取得する端末側取得部と、前記第1パラメータと前記第2パラメータとに基づいて変換パラメータを生成する変換パラメータ生成処理を行う変換パラメータ生成部と、前記変換パラメータを用いて前記入力情報を暗号化することにより暗号化入力情報を生成する暗号化情報生成部と、を備える。
【0035】
また、本発明の実施形態では、照合のために入力される入力情報を、第1パラメータ及び第2パラメータを用いて生成した変換パラメータによって暗号化することにより生成される暗号化入力情報を、更新暗号化入力情報に変換する暗号化情報変換装置が、前記第1パラメータを記憶する変換側記憶領域と、前記暗号化入力情報を生成するために用いられた前記第2パラメータと、前記第2パラメータとは異なる第3パラメータとを取得する変換側取得部と、前記第1パラメータ、前記第2パラメータ、及び前記第3パラメータを用いて前記暗号化入力情報を変換するための暗号変換パラメータを生成する暗号変換パラメータ生成部と、前記暗号変換パラメータを用いて前記暗号化入力情報を変換することにより、前記更新暗号化入力情報を生成する更新情報生成部と、を備える。
【0036】
これにより、照合精度の劣化の抑制と情報の漏洩リスクの低減とを両立可能な暗号化処理を実現する端末装置、暗号化情報変換装置、照合システム、入力情報暗号化方法、暗号化情報変換方法、照合方法、入力情報暗号化プログラム、及び暗号化情報変換プログラムを提供することができる。なお、上述した技術的特徴は本発明の実施形態の具体的な一例であり、当然ながら、本発明の実施形態は上述した技術的特徴に限定されない。
【0037】
<2.第1の実施形態>
以下、
図1から
図15を参照して、本発明の第1の実施形態を説明する。本実施形態においては、指紋、静脈、虹彩、及び顔画像等のユーザの生体情報を用いた照合システムについて説明する。
【0038】
<2.1.照合システムの運用形態の概要>
図1は、本発明の第1の実施形態に係る照合システム1000Aの運用形態の一例を示す図である。
図1に示すように、照合システム1000Aは、端末装置1、サブパラメータ生成装置2、照合装置3、及びデータベース(Data Base、以後「DB」と称する場合がある)4がネットワーク5を介して接続されて構成されている。照合システム1000Aに入力される入力情報とは、例えば、指紋、静脈、虹彩、及び顔画像等のユーザの生体情報である。また、高い機密性及びセキュリティ性が求められるデータを含む情報も入力情報のひとつである。
【0039】
端末装置1は、照合システム1000Aに入力される入力情報を暗号化するプログラムがインストールされたコンピュータ又はサーバ等の情報処理装置である。端末装置1は、例えば、スマートフォン等の可搬型情報処理端末、ATM(Automatic Teller Machine)、生体情報を検知するセンサが接続されたPC(Personal Computer)等によって実現される。端末装置1が情報を暗号化する処理の詳細については後述する。端末装置1によって暗号化された入力情報(以後、「暗号化入力情報」と記載する場合がある)は、DB4に記憶される。
【0040】
サブパラメータ生成装置2は、ユーザの生体情報を暗号化する際に用いられる変換パラメータを生成するためのサブパラメータを生成するプログラムがインストールされた情報処理装置である。サブパラメータ生成装置2は、サブパラメータとして、例えば、乱数を生成するための第2乱数シード、暗号化パラメータ等を生成する。また、サブパラメータ生成装置2は、ユーザによってサブパラメータ生成装置2に入力される文字列に基づいてサブパラメータを生成してもよい。サブパラメータ生成装置2は、生成したサブパラメータを、ネットワーク5を介して端末装置1及び照合装置3に送信する。サブパラメータ生成装置2は、本実施形態のパラメータ送信装置の一例である。
【0041】
照合装置3は、端末装置1が生成した暗号化情報に基づいて照合システム1000Aの入力情報を照合するプログラムがインストールされた情報処理装置である。照合装置3は、例えば、生体認証技術において、DB4が記憶しているユーザの生体情報の特徴量と、端末装置1から取得したユーザの生体情報の特徴量とを照合する。また、照合装置3は、サブパラメータ生成装置2から受信したサブパラメータに基づいて暗号変換パラメータを生成し、生成した暗号変換パラメータを用いてDB4に記憶されている暗号化入力情報を変換する。つまり、照合装置3は、本実施形態の暗号化情報変換装置の一例である。照合装置3によって変換された暗号化入力情報(以後、「更新暗号化入力情報」と記載する場合がある)を、DB4に記憶するようにしてもよい。なお、照合システム1000Aは、照合装置3が行う照合処理の結果に基づいて、ユーザの認証を行ってもよい。
【0042】
DB4は、情報を記憶する記憶媒体であり、例えば、端末装置1が生成した暗号化入力情報、照合装置3が生成した更新暗号化入力情報等を記憶する。
図1では、照合装置3とDB4とをそれぞれ独立した要素として示しているものの、照合装置3が備えるHDD(Hard Disk Drive)等の記憶媒体にDB4を実装してもよい。
【0043】
なお、
図1では、サブパラメータ生成装置2がネットワーク5に接続されている例を示しているが、必ずしもネットワーク5に接続される必要はない。例えば、USB(Universal Serial Bus)等によって、サブパラメータ生成装置2が、端末装置1、及び照合装置3に接続されていてもよい。また、端末装置1は、暗号化入力情報をDB4に送信するときにDB4に接続されていればよい。さらに、照合装置3は、通信を行う際に、端末装置1又はDB4に接続されていればよい。さらに、サブパラメータ生成装置2は、サブパラメータを送信する際に端末装置1又は照合装置3と接続されていればよい。照合システム1000Aは、端末装置1と同じ要素を備える他の情報処理装置を備えていてもよい。
【0044】
<2.2.情報処理装置のハードウェア構成>
続いて、
図2を参照して、本実施形態に係る端末装置1、サブパラメータ生成装置2、及び照合装置3等の情報処理装置のハードウェア構成について説明する。
図2は、情報処理装置のハードウェア構成を示すブロック図である。
【0045】
情報処理装置は、CPU(Central Processing Unit)11、ROM(Read Only Memory)12、RAM(Random Access Memory)13、記憶媒体14、及びインタフェース(I/F)15がバス21を介して相互に接続されている。また、I/F15には、入力部17、表示部18、センサ19及びネットワーク5が接続されている。なお、入力部17、表示部18、及びセンサ19は、省略可能である。
【0046】
CPU11は、演算手段であり、情報処理装置全体の動作を制御する。RAM13は、情報の高速な読み書きが可能な揮発性の記憶媒体であり、CPU11が情報を処理する際の作業領域として用いられる。ROM12は、読み出し専用の不揮発性記憶媒体であり、ファームウェア等のプログラムが格納されている。記憶媒体14は、HDD等の情報の読み書きが可能な不揮発性の記憶媒体であり、OS(Operating System)や各種の制御プログラム、アプリケーション・プログラム等の情報が格納されている。
【0047】
I/F15は、バス21と各種のハードウェアやネットワーク5等とを接続し制御する。入力部17は、ユーザが情報処理装置に情報を入力するためのキーボードやマウス等の入力装置である。表示部18は、ユーザが情報処理装置の状態を確認するためのLCD(Liquid Crystal Display)等の表示装置である。
【0048】
センサ19は、指紋や静脈、顔画像等、ユーザの生体情報を取得するモジュールである。なお、センサ19は省略可能である。この場合、端末装置1は、ネットワーク5又はI/F15に接続されている情報処理装置を介してユーザの生体情報を取得してもよい。
【0049】
このようなハードウェア構成において、端末装置1のROM12に格納されたプログラムや、端末装置1の記憶媒体14から端末装置1のRAM13にロードされたプログラムに従って端末装置1のCPU11が演算を行うことにより、端末装置1のソフトウェア制御部が構成される。
【0050】
以上のようにして構成されたソフトウェア制御部と、ハードウェアとの組み合わせによって、本実施形態に係る端末装置1のコントローラ100(
図4参照)の機能を実現する機能ブロックが構成される。
【0051】
また、上述のハードウェア構成において、サブパラメータ生成装置2のROM12に格納されたプログラムや、サブパラメータ生成装置2の記憶媒体14からサブパラメータ生成装置2のRAM13にロードされたプログラムに従って、サブパラメータ生成装置2のCPU11が演算を行うことにより、サブパラメータ生成装置2のソフトウェア制御部が構成される。
【0052】
以上のようにして構成されたソフトウェア制御部と、ハードウェアとの組み合わせによって、本実施形態に係るサブパラメータ生成装置2のコントローラ200(
図6参照)の機能を実現する機能ブロックが構成される。
【0053】
また、上述のハードウェア構成において、照合装置3のROM12に格納されたプログラムや、照合装置3の記憶媒体14から照合装置3のRAM13にロードされたプログラムに従って、照合装置3のCPU11が演算を行うことにより、照合装置3のソフトウェア制御部が構成される。
【0054】
以上のようにして構成されたソフトウェア制御部と、ハードウェアとの組み合わせによって、本実施形態に係る照合装置3のコントローラ300(
図7参照)の機能を実現する機能ブロックが構成される。
【0055】
<2.3.キャンセラブルバイオメトリクスの概要>
続いて、
図3を参照して、登録情報を無効化することが可能なキャンセラブルバイオメトリクスの概要について説明する。
図3は、キャンセラブルバイオメトリクスの概要を示す図である。
【0056】
生体認証技術においては、指紋、静脈、虹彩、及び顔画像等、ユーザの生体情報を予め登録しておき、認証に際し入力されたユーザの生体情報との比較結果に基づいて認証可否が判断される。しかし、生体情報が漏洩してしまうと、漏洩した生体情報に係る生体の個人情報に関する問題だけではなく、漏洩した生体情報に係る生体の生体情報を用いる認証システムのセキュリティ性を損なうという問題がある。
【0057】
このような問題に対して、ユーザの生体情報の保護を目的として、生体情報を秘匿した登録情報を用いて認証を行い、登録情報が漏洩した場合には漏洩した登録情報を無効化することが可能な「キャンセラブルバイオメトリクス」と呼ばれる手法が用いられている。
【0058】
ここで、
図3を参照して、キャンセラブルバイオメトリクスの概要について説明する。まず、生体情報を登録する際には、生体情報から特徴量が抽出される。ここでは、説明のために、生体情報から、ベクトルである特徴量データ
【数1】
が抽出されたと仮定する。以後、ベクトルである特徴量データxを単に「特徴量データx」と記載する場合がある。続いて、置換鍵
【数2】
を用いて一方向変換することにより、特徴量データxを暗号化する(式1-1)。以後、ベクトルである置換鍵Kを単に「置換鍵K」、ベクトルである暗号化データTを単に「暗号化データT」と記載する場合がある。置換鍵Kは、ランダムに生成される暗号鍵に相当する。また、変換関数Fは、入力されたデータ(ここでは、特徴量データx)を一方向変換(不可逆変換)する関数である。
【数3】
(式1-1)に示すように暗号化データTは、置換鍵Kを用いた変換関数Fにより、特徴量データxが変換されたデータに相当する。また、暗号化データTは、照合に際し用いられる登録情報のひとつであり、DB4等の記憶装置に記憶される。
【0059】
続いて、認証時の処理について説明する。認証に際し、生体情報から特徴量が抽出される。ここでは、説明のために、認証のために入力された生体情報から、ベクトルである特徴量データ
【数4】
が抽出されたと仮定する。ベクトルである特徴量データyが、本実施形態の入力情報、第2入力情報、及び第4入力情報の一例である。以後、ベクトルである特徴量データyを単に「特徴量データy」と記載する場合がある。続いて、置換鍵Kを用いて一方向変換することにより、特徴量データyを暗号化する(式1-2)。以後、ベクトルである暗号化データT´を単に「暗号化データT´」と記載する場合がある。
【数5】
(式1-2)に示すように暗号化データT´は、暗号化データTと同じ置換鍵Kを用いた変換関数Fにより、特徴量データyが変換されたデータに相当する。また、暗号化データT´が、暗号化データTに対して照合される情報に相当する。なお、キャンセラブルバイオメトリクスでは、特徴量データxが暗号化された暗号化データTと、特徴量データyが暗号化された暗号化データT´とを、暗号化したままの状態で照合する。
【0060】
(式1-1)及び(式1-2)に示すように、キャンセラブルバイオメトリクスでは、登録時及び認証時において、同じ置換鍵Kを用いた変換関数Fによって特徴量データの暗号化を行う。つまり、特徴量データxと特徴量データyとの類似度は、置換鍵Kを用いた変換関数Fによる変換後も保存されることとなる。
【0061】
生体情報として同一人物の右手中指の指紋から特徴量データxと、特徴量データxに近い特徴量データyとを抽出したと仮定する。この場合、暗号化データTは、特徴量データxを変換することにより生成され、暗号化データT´は、特徴量データxに近い特徴量データyを変換することにより生成される。したがって、暗号化データTと暗号化データT´との類似度は、特徴量データxと特徴量データyとの類似度に等しいため、暗号化データTと暗号化データT´とは、互いに近いデータである。
【0062】
ここで、同じ特徴量データxに対して、置換鍵
【数6】
と、置換鍵
【数7】
とを用いて変換関数Fによる変換を行ったと仮定する。以後、ベクトルである置換鍵K
1を単に「置換鍵K
1」、ベクトルである置換鍵K
2を単に「置換鍵K
2」と記載する場合がある。なお、置換鍵K
1≠置換鍵K
2とする。この場合、特徴量データxからは、
【数8】
【数9】
変換鍵K
1を用いた変換関数Fにより、ベクトルであるデータT
1を、また、変換鍵K
2を用いた変換関数Fにより、ベクトルであるデータT
2を生成することができる。以後、ベクトルであるデータT
1を単に「データT
1」、ベクトルであるデータT
2を単に「データT
2」と記載する場合がある。
【0063】
上述したように、変換関数Fは、入力されたデータを一方向変換する関数である。つまり、置換鍵K1≠置換鍵K2である場合、特徴量データxに対して、置換鍵K1を用いたときに変換関数Fが出力するデータT1は、置換鍵K2を用いたときに変換関数Fが出力するデータT2とは異なることとなる。なお、上述したように、キャンセラブルバイオメトリクスでは、照合の際に、置換鍵K1及び置換鍵K2に関する情報を用いない。
【0064】
そして、データT1に対してデータT2を照合すると、いずれのデータも特徴量データxを変換して生成されたデータであるにも関わらず、データT1とデータT2との類似度は、特徴量データx同士の類似度とは一致しない。このように、キャンセラブルバイオメトリクスでは、同じデータに対して、それぞれが異なる置換鍵K1及び置換鍵K2を用いることにより、それぞれが異なるデータT1とデータT2が生成される。このような特性を用いて、キャンセラブルバイオメトリクスでは、置換鍵Kを変更することにより、データベース等に記憶された登録情報を無効化することができる。以後の説明において、キャンセラブルバイオメトリクスにおけるデータの変換手法を、「キャンセラブル変換」と称する場合がある。
【0065】
<2.4.端末装置の機能構成>
続いて、端末装置1の機能構成について説明する。
図4は、端末装置1の機能構成を示す機能ブロック図である。
図4に示すように、端末装置1は、コントローラ100、及びコントローラ100がネットワーク5を介して他の機器と情報をやり取りするためのインタフェースであるネットワークI/F101を含む。
【0066】
コントローラ100は、ネットワークI/F101を介して取得した情報を暗号化するための処理を行う。コントローラ100は、専用のソフトウェア・プログラムが端末装置1等の情報処理装置にインストールされることによって実現されている。コントローラ100は、サブパラメータ取得部110、特徴量算出部120、記憶領域130、パラメータ生成部140、及び変換処理部150を含む。
【0067】
サブパラメータ取得部110は、ネットワークI/F101を介して、サブパラメータ生成装置2が生成したサブパラメータ(例えば、サブパラメータvpi1又はサブパラメータvpi2)を取得する。サブパラメータ取得部110は、本実施形態の端末側取得部の一例である。また、サブパラメータvpi1が第2パラメータの一例である。
【0068】
特徴量算出部120は、端末装置1のセンサ19が取得したユーザの生体情報から特徴量を抽出する処理を行う。なお、ユーザの生体情報に関する特徴量の情報を端末装置1に入力してもよい。この場合、特徴量算出部120を省略してもよい。
【0069】
記憶領域130は、サブパラメータとは異なるパラメータであって、サブパラメータと共に変換パラメータvpを生成するために用いられるマスタパラメータ(例えば、マスタパラメータvpm1)を記憶している。本実施形態においてマスタパラメータとは、端末装置1に対してユニークに定められているパラメータである。マスタパラメータvpm1が、本実施形態の第1パラメータの一例である。記憶領域130は、マスタパラメータとして、乱数を生成するための第1乱数シードを記憶してもよい。また、記憶領域130は、マスタパラメータとして、暗号化パラメータを復号するための秘密鍵を記憶してもよい。記憶領域130は、本実施形態の端末側記憶領域の一例である。
【0070】
なお、端末装置1に相当する要素を備える他の情報処理装置が照合システム1000Aに含まれている場合、端末装置1と他の情報処理装置とにおいて、共通のマスタパラメータ(例えば、マスタパラメータvpm1)を記憶するようにしてもよい。さらに、マスタパラメータは、端末装置1の製品出荷又は端末装置1のアクティベーションを行う際に記憶領域130に記憶するようにしてもよい。
【0071】
パラメータ生成部140は、記憶領域130に記憶されているマスタパラメータ(例えば、マスタパラメータvpm1)と、サブパラメータ生成装置2から取得したサブパラメータとに基づいて、端末装置1に入力された情報を暗号化するための変換パラメータを生成する変換パラメータ生成処理を行う。パラメータ生成部140が変換パラメータを生成する処理の具体的な態様については、後述する。パラメータ生成部140は、本実施形態の変換パラメータ生成部の一例である。
【0072】
なお、パラメータ生成部140が生成した変換パラメータは、記憶領域130に記憶するようにしてもよい。このようにすることにより、サブパラメータ生成装置2との通信を行うことなく、記憶領域130に記憶されている変換パラメータによって、端末装置1に入力される入力情報(例えば、特徴量データx又は特徴量データy)を暗号化することができる。
【0073】
変換処理部150は、パラメータ生成部140が生成した変換パラメータを用いて、端末装置1に入力された情報を暗号化することにより、暗号化入力情報を生成する。変換処理部150は、本実施形態の暗号化情報生成部の一例である。また、暗号化データT及び暗号化データT´は、本実施形態の暗号化入力情報の一例である。ネットワークI/F101は、変換処理部150が生成した暗号化入力情報を、照合装置3に送信する。
【0074】
なお、照合のために、端末装置1のユーザの生体情報等を照合システム1000Aに登録する場合、ネットワークI/F101は、変換処理部150が生成した暗号化入力情報をDB4に送信する。DB4は、端末装置1から受信した暗号化入力情報と、ユーザを識別可能なユーザID等の識別情報とを関連付けて記憶する。ユーザを識別可能なユーザID等の識別情報とは、ユーザ又は端末装置1ごとに予め設定されている識別子等の情報に相当する。
【0075】
ここで、
図5を参照して、変換処理部150が端末装置1に入力された情報を暗号化するときの具体的な態様について説明する。
図5は、変換処理部150における情報の暗号化を説明するための説明図である。
図5では、端末装置1に特徴量データxが入力されたと仮定して説明を行う。特徴量データxが本実施形態の入力情報、第1入力情報、及び第3入力情報の一例である。また、
図5においては、(式2-1)に示すように、特徴量データxが、d次元(次元数がd)のデータセットであると仮定する。
【数10】
【0076】
本実施形態において、変換処理部150は、パラメータ生成部140が生成した変換パラメータvpに基づいて特徴量データxを暗号化する。本実施形態において、パラメータ生成部140は、変換パラメータvpとして、特徴量データxに含まれる各次元の要素の並び順を一方向変換する置換鍵Kを生成する。
【0077】
置換鍵Kには、例えば、特徴量データxの0次元目の要素(x[0])をd-1次元目に並べ、特徴量データxの1次元目の要素(x[1])をd-2次元目に並べ、特徴量データxのd-2次元目の要素(x[d-2])を1次元目に並べ、特徴量データxのd-1次元目の要素(x[d-1])を、0次元目に並べるためのパラメータが定義されている。
【0078】
変換処理部150は、置換鍵Kを用いて特徴量データxを暗号化することにより、暗号化データ
【数11】
を生成する。暗号化データTが、本実施形態の暗号化入力情報の一例である。
【0079】
つまり、変換処理部150は、特徴量データxの0次元目の要素(x[0])は、暗号化データTのd-1次元目(x´[d-1])に並び替える。また、変換処理部150は、特徴量データxの1次元目の要素(x[1])は、暗号化データTのd-2次元目(x´[d-2])に並び替える。また、変換処理部150は、特徴量データxのd-2次元目の要素(x[d-2])は、暗号化データTの1次元目(x´[1])に並び替える。また、変換処理部150は、特徴量データxのd-1次元目の要素(x[d-1])は、暗号化データTの0次元目(x´[0])に並び替える。換言すると、変換処理部150は、置換鍵Kを用いて特徴量データxをパーミュテーションすることにより、暗号化データTを生成する。
【0080】
なお、本実施形態において、特徴量算出部120、記憶領域130、パラメータ生成部140、及び変換処理部150は、端末装置1が備える保護領域102に設けられている。保護領域102とは、Arm社のTrustZone(登録商標)やRISC-V財団のKeyStone等の技術によって、端末装置1のメモリ(ROM12やRAM13)空間上においてコントローラ100上の通常領域とは隔離して構築された、コントローラ100上の通常領域よりもセキュアな空間(Secure World)を指す。端末装置1に構築された保護領域102に機密情報を配置したり、セキュリティ処理を実装したりすることにより、機密情報の流出や端末装置1で行われる各種の処理の改ざんを防止することができる。
【0081】
また、コントローラ100上の通常領域は、非セキュア空間であるため、コントローラ100上の通常領域に設けられている要素は、セキュア空間である保護領域102に直接アクセスすることができない。そこで、本実施形態では、コントローラ100上に保護領域102を設け、保護領域102に特徴量算出部120、記憶領域130、パラメータ生成部140、及び変換処理部150を実装することにより、端末装置1のマスタパラメータvpm1、パラメータ生成部140が生成した変換パラメータvp、及び暗号化データT等の情報の漏洩をより抑制することが可能となる。
【0082】
<2.5.サブパラメータ生成装置の機能構成>
続いて、
図6を参照して、サブパラメータ生成装置2の機能構成について説明する。
図6は、サブパラメータ生成装置2の機能構成を示す機能ブロック図である。
図6に示すように、サブパラメータ生成装置2は、コントローラ200、及びコントローラ200がネットワーク5を介して他の機器と情報をやり取りするためのインタフェースであるネットワークI/F201を含む。
【0083】
コントローラ200は、サブパラメータ(例えば、サブパラメータvpi1、又はサブパラメータvpi2)を生成し、ネットワークI/F101を介して端末装置1及び照合装置3に送信するための処理を行う。コントローラ200は、専用のソフトウェア・プログラムがサブパラメータ生成装置2等の情報処理装置にインストールされることによって実現されている。コントローラ200は、サブパラメータ生成部210、サブパラメータ送信部220、及びサブパラメータ記憶部230を含む。
【0084】
サブパラメータ生成部210は、端末装置1が変換パラメータvpを生成するためのサブパラメータvpi1を生成する。サブパラメータ生成部210は、例えば、サブパラメータvpi1として、乱数を生成するための第2乱数シードを生成する。なお、サブパラメータ生成部210は、サブパラメータvpi1とは異なるサブパラメータ(例えば、サブパラメータvpi2)を生成することも可能である。
【0085】
サブパラメータ送信部220は、サブパラメータ生成部210が生成したサブパラメータvpi1(又はサブパラメータvpi2)を、ネットワークI/F201を介して端末装置1及び/又は照合装置3に送信する。
【0086】
サブパラメータ記憶部230は、サブパラメータ生成部210が生成したサブパラメータvpi1及びサブパラメータvpi2等のサブパラメータを記憶する。なお、サブパラメータ記憶部230は、サブパラメータvpi1(又はサブパラメータvpi2)の宛先となった端末装置1を識別する識別情報、もしくはサブパラメータvpi1(又はサブパラメータvpi2)の宛先となった端末装置1に生体情報を入力したユーザを識別するための識別情報を、サブパラメータvpi1に関連付けて記憶してもよい。
【0087】
<2.6.照合装置の機能構成>
続いて、
図7を参照して、照合装置3の機能構成について説明する。
図7は、照合装置3の機能構成を示す機能ブロック図である。
図7に示すように、照合装置3は、コントローラ300、及びコントローラ300がネットワーク5を介して他の機器と情報をやり取りするためのインタフェースであるネットワークI/F301を含む。
【0088】
コントローラ300は、ネットワークI/F301を介して取得した情報を照合するための処理を行う。コントローラ300は、専用のソフトウェア・プログラムが照合装置3等の情報処理装置にインストールされることによって実現されている。コントローラ300は、サブパラメータ取得部310、記憶領域320、パラメータ生成部330、更新情報生成部340、及び照合処理部350を含む。
【0089】
サブパラメータ取得部310は、ネットワークI/F301を介して、サブパラメータ生成装置2が生成したサブパラメータ(例えば、サブパラメータvpi1及びサブパラメータvpi2)を取得する。サブパラメータ取得部310は、本実施形態の変換側取得部の一例である。
【0090】
記憶領域320は、サブパラメータvpi1及びサブパラメータvpi2とは異なるパラメータであって、変換パラメータvpを生成するために端末装置1において用いられたマスタパラメータと同じパラメータ(例えば、マスタパラメータvpm1)を記憶している。上述したように、マスタパラメータvpm1は、端末装置1に対してユニークに定められているパラメータである。本実施形態において、記憶領域320には、照合装置3に接続される可能性のある端末装置1が記憶しているマスタパラメータを記憶する。つまり、照合装置3に対して、端末装置1及び端末装置1に相当する要素を備える他の情報処理装置が接続されている場合、記憶領域320は、端末装置1のマスタパラメータvpm1を含む複数のマスタパラメータを記憶してもよい。記憶領域320は、本実施形態の変換側記憶領域の一例である。
【0091】
パラメータ生成部330は、記憶領域320に記憶されているマスタパラメータvpm1と、サブパラメータ生成装置2から取得したサブパラメータvpi1及びサブパラメータvpi2とに基づいて、端末装置1から受信した暗号化入力情報を変換するための暗号変換パラメータvp´を生成する。具体的に、パラメータ生成部330は、記憶領域320に記憶されているマスタパラメータvpm1と、サブパラメータ生成装置2から受信したサブパラメータvpi1と、サブパラメータvpi1とは異なるサブパラメータ(例えば、サブパラメータvpi2)とを用いて、暗号変換パラメータvp´を生成する。パラメータ生成部330が暗号変換パラメータvp´を生成する処理の具体的な態様については、後述する。パラメータ生成部330は、本実施形態の暗号変換パラメータ生成部の一例である。
【0092】
更新情報生成部340は、端末装置1から受信した暗号化入力情報を、パラメータ生成部330が生成した暗号変換パラメータvp´を用いて変換することにより、更新暗号化入力情報を生成する。ここで、
図8を参照して、更新情報生成部340が端末装置1から取得した暗号化入力情報を暗号化するときの具体的な態様について説明する。
【0093】
図8は、更新情報生成部340が暗号化入力情報を変換する過程を説明するための説明図である。
図8では、更新情報生成部340が変換パラメータvpを用いて暗号化データTを変換すると仮定して説明を行う。また、
図8においては、(式3-1)に示すように、特徴量データxが、5次元(次元数が5)のデータセットであると仮定する(
図8、左側の最上段参照)。
【数12】
【0094】
上述したように、変換処理部150は、変換パラメータvpを用いて特徴量データxを暗号化することにより、暗号化データTを生成する。本実施形態において、パラメータ生成部140は、変換パラメータvpとして、特徴量データxに含まれる各次元の要素の並び順を一方向変換する置換鍵Kを生成する。
【0095】
置換鍵Kには、例えば、特徴量データxの0次元目の要素(x[0])を4次元目に並べ、特徴量データxの1次元目の要素(x[1])を1次元目に並べ替え、特徴量データxの2次元目の要素を(x[2])を0次元目に並べ替え、特徴量データxの3次元目の要素(x[3])を4次元目に並べ替え、特徴量データxの4次元目の要素(x[4])を2次元目に並べ替えるためのパラメータが定義されている。
【0096】
端末装置1においては、変換処理部150が、置換鍵Kを用いて特徴量データxを暗号化することにより、暗号化データ
【数13】
を生成する(
図8、左側の上から2段目参照)。そして、端末装置1は、暗号化データTを照合装置3に送信する。
【0097】
ここで、暗号化データTを特徴量データxに復号すると仮定する。この場合、置換鍵Kを用いて暗号化データTを逆変換することにより、(式3-2)に示す暗号化データTから(式3-1)に示す特徴量データxを得ることができる(
図8、左側の上から3段目参照)。
【0098】
また、特徴量データxに対して、置換鍵Kとは異なる置換鍵K´(例えば、パラメータvpx)を用いてキャンセラブル変換を行うとする。特徴量データxに対して置換鍵K´を用いたキャンセラブル変換を行うことにより、暗号化データ
【数14】
を生成することができる(
図8、左側の最下段参照)。以後、ベクトルである暗号化データT´´を単に「暗号化データT´´」と記載する場合がある。
【0099】
(式3-2)及び(式3-3)に示すように、特徴量データxに対して置換鍵K´を用いて生成した暗号化データT´´の要素の並び順は、特徴量データxに対して置換鍵Kを用いて生成した暗号化データTの要素の並び順とは異なる。このようにすることにより、キャンセラブル変換では、特徴量データxに対して置換鍵Kを用いて生成した暗号化データTを、特徴量データxに対して置換鍵K´を用いて生成した暗号化データT´´によって無効化することが可能である。
【0100】
しかしながら、暗号化データTを置換鍵Kによって逆変換することにより、暗号化されていないデータである特徴量データxが漏洩するリスクが増大してしまう。このような問題に対して、本実施形態は、更新情報生成部340において暗号化データTを特徴量データxに逆変換することなく、暗号化データTを変換することが可能である。
【0101】
本実施形態において、記憶領域130及び記憶領域320は、マスタパラメータvpm1を記憶している。マスタパラメータvpm1は、端末装置1で変換パラメータvpを生成するために用いられるパラメータである。また、サブパラメータ取得部310は、サブパラメータvpi1をサブパラメータ生成装置2から受信する。サブパラメータvpi1は、変換パラメータvpを生成するためにサブパラメータ生成装置2から端末装置1に送信されたパラメータである。
【0102】
なお、サブパラメータ生成装置2は、サブパラメータvpi1とは異なるサブパラメータ(例えば、サブパラメータvpi2)を照合装置3に送信することができる。パラメータ生成部330は、マスタパラメータvpm1と、サブパラメータvpi1と、サブパラメータvpi2とを用いて、暗号変換パラメータvp´を生成する。暗号変換パラメータvp´は、暗号化データTを更新暗号化データT3に変換するためのパラメータである。
【0103】
更新情報生成部340は、暗号変換パラメータvp´を用いて暗号化データT(
図8、右側の上段参照)を変換することにより、更新暗号化データT3を生成する(
図8、右側の下段参照)。更新暗号化データT3が、本実施形態の更新暗号化入力情報の一例である。
図8に示すように、更新暗号化データT3に含まれる要素の並び順は、暗号化データT´´に含まれる要素の並び順と同じである。
【0104】
また、特徴量データyが特徴量データxに近いデータである場合において、特徴量データyを置換鍵K´によってキャンセラブル変換したと仮定する。この場合、特徴量データyと特徴量データxとが相互に近いデータであるため、特徴量データyは、置換鍵K´により暗号化データT´´に変換される。この場合においても、更新暗号化データT3に含まれる要素の並び順は、置換鍵K´を用いて特徴量データyをキャンセラブル変換して生成される暗号化データT´´に含まれる要素の並び順と同じとなる。
【0105】
つまり、更新情報生成部340は、暗号変換パラメータvp´を用いて暗号化データTを変換することにより、更新暗号化データT3を生成することができる。上述したように、更新暗号化データT3は、置換鍵K´(つまり、変換パラメータvpx)を用いて特徴量データxを暗号化した暗号化データT´´に相当するデータセットである(
図8参照)。このようにすることにより、本実施形態では、照合装置3において暗号化データTを特徴量データxに復号することなく、暗号化データTを無効化することが可能である。
【0106】
照合処理部350は、DB4に記憶されている暗号化入力情報と、端末装置1から取得した暗号化データ(例えば、暗号化データT´、又は暗号化データT´´)とを照合する照合処理を行う。上述したように、端末装置1は、記憶領域130に記憶しているマスタパラメータvpm1と、サブパラメータ生成装置2から受信したサブパラメータvpi1とに基づいて変換パラメータvpを生成する。本実施形態では、照合システム1000Aのメンテナンスやバージョン変更等により、サブパラメータ生成装置2が、サブパラメータvpi1とは異なるサブパラメータ(例えば、サブパラメータvpi2)を、端末装置1に送信する場合がある。このような場合において、端末装置1に入力される情報を暗号化する際には、記憶領域130に記憶しているマスタパラメータvpm1と、サブパラメータ生成装置2から受信したサブパラメータvpi2とに基づいて生成された変換パラメータ(例えば、変換パラメータvpx)が用いられる。
【0107】
上述したように、端末装置1において用いられるサブパラメータが、サブパラメータvpi1からサブパラメータvpi2に変更された場合であっても、パラメータ生成部330は、サブパラメータvpi1及びサブパラメータvpi2と、記憶領域320に記憶しているマスタパラメータvpm1とを用いて暗号変換パラメータvp´を生成する。このようにすることにより、更新情報生成部340は、暗号化データTを更新暗号化データT3に変換することができる。
【0108】
照合処理部350は、端末装置1から、特徴量データyを暗号化したデータ(暗号化データT´又は暗号化データT´´)を取得し、暗号化データTと照合する。上述したように、端末装置1において同じ置換鍵Kを用いて暗号化を行う限り、特徴量データxに近いデータ(例えば、同一人物の右手中指の指紋から抽出された特徴量データy)を置換鍵Kによって暗号化したデータ(暗号化データT´)と、暗号化データTとの類似度は、特徴量データxと特徴量データyとの類似度に一致する。
【0109】
また、一方で、端末装置1において、置換鍵Kとは異なる置換鍵K´を用いて特徴量データyを暗号化したと仮定する。このような場合、特徴量データyを置換鍵K´によって暗号化したデータ(つまり、暗号化データT´´に相当するデータ)と、暗号化データTとの類似度は、特徴量データxと特徴量データyとの類似度に一致しない。
【0110】
照合処理部350は、DB4から取得した暗号化データ(例えば、暗号化データT)と、端末装置1から受信した暗号化データ(例えば、暗号化データT´又は暗号化データT´´)とを照合する照合処理を行う。また、照合処理部350は、照合処理の結果を出力する。照合処理部350による照合処理の結果とは、例えば、暗号化データTと暗号化データT´との類似度、又は暗号化データTと暗号化データT´´との類似度を示す情報に相当する。
【0111】
なお、本実施形態において、記憶領域320、パラメータ生成部330、更新情報生成部340、及び照合処理部350は、照合装置3が備える保護領域302に設けられている。保護領域302とは、保護領域102と同様に、Arm社のTrustZoneやRISC-V財団のKeyStone等の技術によって、照合装置3のメモリ(ROM12やRAM13)空間上においてコントローラ300上の通常領域とは隔離して構築された、コントローラ300上の通常領域よりもセキュアな空間(Secure World)を指す。照合装置3に構築された保護領域302に機密情報を配置したり、セキュリティ処理を実装したりすることにより、機密情報の流出や照合装置3で行われる各種の処理の改ざんを防止することができる。
【0112】
また、コントローラ300上の通常領域は、非セキュア空間であるため、コントローラ300上の通常領域に設けられている要素は、セキュア空間である保護領域302に直接アクセスすることはできない。そこで、本実施形態では、コントローラ300上に保護領域302を設け、保護領域302に記憶領域320、パラメータ生成部330、更新情報生成部340、及び照合処理部350を実装することにより、照合装置3のマスタパラメータ、パラメータ生成部330が生成した暗号変換パラメータvp´、暗号化データT、暗号化データT´、及び暗号化データT´´等の情報の漏洩をより抑制することが可能となる。
【0113】
また、照合処理部350を、照合装置3とは異なる情報処理装置の保護領域に実装するようにしてもよい。
【0114】
<2.7.照合システムにおける特徴量データを暗号化する処理の流れ>
続いて、
図9を参照して、特徴量データxを暗号化する処理の流れを説明する。
図9は、特徴量データxを暗号化する処理の流れを示すシーケンス図である。
図9では、サブパラメータ生成装置2がサブパラメータvpi1を端末装置1に送信する例を示しているが、サブパラメータ生成装置2は、サブパラメータvpi1以外のサブパラメータ(サブパラメータvpi2)を生成して端末装置1に送信してもよい。
【0115】
ステップS11において、サブパラメータ生成部210は、サブパラメータvpi1を生成する。ステップS12において、サブパラメータ送信部220は、端末装置1にサブパラメータvpi1を送信する。
【0116】
ステップS13において、サブパラメータ取得部110は、サブパラメータ生成装置2からサブパラメータvpi1を取得する。端末装置1は、サブパラメータ生成装置2からサブパラメータvpi1を取得することにより、特徴量データxを暗号化することが可能になる。また、サブパラメータ生成装置2は、端末装置1にサブパラメータvpi1を送信する際にオンラインとなっていればよい。
【0117】
ステップS14において、パラメータ生成部140は、サブパラメータvpi1と、記憶領域130に記憶されているマスタパラメータvpm1とに基づいて、変換パラメータvpを生成する。
【0118】
マスタパラメータvpm1が第1乱数シードであり、かつサブパラメータvpi1が第2乱数シードである場合、パラメータ生成部140は、第1乱数シードと第2乱数シードを用いて乱数を生成する。パラメータ生成部140が生成する乱数は、変換パラメータvpの一例である。
【0119】
マスタパラメータvpm1が秘密鍵であり、かつサブパラメータvpi1が暗号化パラメータである場合、パラメータ生成部140は、秘密鍵により暗号化パラメータを復号する。パラメータ生成部140によって復号された暗号化パラメータは、変換パラメータvpの一例である。
【0120】
ステップS15において、変換処理部150は、変換パラメータvpを用いて特徴量データxを暗号化することにより、暗号化データTを生成する。ステップS14において、パラメータ生成部140が変換パラメータvpとして乱数を生成している場合、変換処理部150は、パラメータ生成部140が生成した乱数を用いて特徴量データxを暗号化する。
【0121】
本実施形態において、特徴量データxは、照合のために端末装置1に入力される入力情報の一例である。また、本実施形態において、暗号化データTは、暗号化入力情報の一例である。
【0122】
ステップS16において、ネットワークI/F101は、特徴量データxを抽出したときの端末装置1のユーザを識別可能な識別情報と暗号化データTとをDB4に送信する。ステップS17において、DB4は、端末装置1から受信した暗号化データTと特徴量データxを抽出したときの端末装置1(又は、端末装置1のユーザ)を識別可能な識別情報とを関連付けて記憶する。暗号化データTは、照合装置3が照合を行うための第1暗号化入力情報、及び第3暗号化入力情報の一例である。
【0123】
図10は、DB4に記憶される情報の構成を例示した図である。
図10に示すように、DB4のNo.1のデータには、バージョン情報として“v1”を示す情報と、暗号化データとして“暗号化データT”と、識別情報として“EwFsih”を示す情報とが関連付けて記憶されている。また、DB4のNo.2のデータには、バージョン情報として“v2”を示す情報と、暗号化データとして“暗号化データTR”と、識別情報として“u1WLMо”を示す情報とが関連付けて記憶されている。
【0124】
バージョン情報は、
図10のNo.1のデータでは、サブパラメータvpi1を用いて暗号化データTを生成したことを示す“v1”を、バージョン情報として記憶している。
【0125】
識別情報は、暗号化データを生成するために用いた特徴量データを抽出した端末装置を識別するための情報である。
図10のNo.1のデータでは、端末装置1を用いて暗号化データTを生成したことを示す“EwFsih”を、識別情報として記憶している。
【0126】
端末装置1は、照合のために端末装置1に入力される特徴量データyに対して、変換パラメータvpを用いてステップS15の処理を行うことにより、暗号化データT´を生成する。
【0127】
なお、特徴量データyを暗号化するに際し、パラメータ生成部140は、サブパラメータvpi1とは異なるサブパラメータvpi2を取得してステップS14の処理を行うことにより、変換パラメータvpxを生成する場合がある。この場合、端末装置1は、照合のために端末装置1に入力される特徴量データyに対して、変換パラメータvpxを用いてステップS15の処理を行うことにより、暗号化データT´´を生成する。変換パラメータvpxが、本実施形態の端末側更新変換パラメータの一例である。
【0128】
<2.8.照合システムにおいて照合を行う処理の流れ>
<2.8.1.実施例1>
続いて、照合システム1000Aにおいて照合を行う処理の流れの一例について説明する。実施例1として、照合装置3において暗号化データTを更新暗号化データT3に変換しない、つまり、端末装置1において、変換パラメータvpを用いて特徴量データx及び特徴量データyを暗号化したときの処理の流れについて説明する。
【0129】
暗号化データT´が、実施例1の照合装置3が照合を行うための第2暗号化入力情報、及び第4暗号化入力情報の一例である。また、特徴量データxが、実施例1の第1入力情報、及び第3入力情報の一例であり、特徴量データyが、実施例1の第2入力情報、及び第4入力情報の一例である。
【0130】
図11を参照して、実施例1において暗号化データTと暗号化データT´とを照合する処理の流れについて説明する。
図11は、照合システム1000Aにおいて暗号化データTと暗号化データT´とを照合する処理の流れを示すシーケンス図である。なお、上述したように、暗号化データT´は、サブパラメータvpi1から生成された変換パラメータvpを用いて特徴量データyを暗号化したデータに相当する。また、特徴量データx及び特徴量データyを抽出したときの端末装置1のユーザを識別する識別情報は、同じであると仮定する。
【0131】
ステップS21において、ネットワークI/F101は、暗号化データT´と、特徴量データyを抽出したときの端末装置1のユーザを識別する識別情報とを照合装置3に送信する。ステップS22において、ネットワークI/F301は、端末装置1が送信した暗号化データT´と、特徴量データyを抽出したときの端末装置1のユーザを識別する識別情報とを受信する。
【0132】
ステップS23において、照合処理部350は、暗号化データTをDB4から取得する。暗号化データTは、ステップS22において、暗号化データT´と共に受信した端末装置1のユーザを識別する識別情報に対応する情報に相当する。
【0133】
ステップS24において、照合処理部350は、ステップS22で受信した暗号化データT´と、ステップS23で取得した暗号化データTとを照合する。ステップS25において、照合処理部350は、ステップS25の照合処理の結果を端末装置1に送信する。
【0134】
上述したように、端末装置1では、変換パラメータvpを用いて特徴量データx及び特徴量データyを暗号化して、暗号化データT及び暗号化データT´を生成する。特徴量データxと特徴量データyとは、互いに近いデータである。この場合、照合処理部350は、暗号化データT及び暗号化データT´が近いデータであるとの照合結果を端末装置1に送信する。端末装置1は、照合装置3から受信した照合処理の結果に基づいて、端末装置1のユーザの認証を行ってもよい。
【0135】
続いて、本実施例において、メンテナンスやバージョン変更により、端末装置1がサブパラメータvpi2を用いて変換パラメータvpxを生成して暗号化を行うときの照合システム1000Aにおける暗号化データ変換処理の流れについて説明する。
図12は、暗号化データ変換処理の流れを示すシーケンス図である。
【0136】
ステップS31において、サブパラメータ生成装置2は、照合装置3に対して、サブパラメータvpi1、及びサブパラメータvpi2を送信する。なお、端末装置1は、マスタパラメータvpm1及びサブパラメータvpi1に基づいて変換パラメータvpを生成する。また、端末装置1は、マスタパラメータvpm1及びサブパラメータvpi2に基づいて変換パラメータvpxを生成する。
【0137】
ステップS32において、照合装置3は、サブパラメータvpi1、サブパラメータvpi2及びマスタパラメータvpm1に基づいて、暗号変換パラメータvp´を生成する。
【0138】
ここで、
図13を参照して、暗号変換パラメータvp´を生成する処理の流れについて説明する。
図13は、暗号変換パラメータvp´を生成する処理の流れを示すフローチャートである。
【0139】
ステップS41において、サブパラメータ取得部310は、ネットワークI/F301を介して、サブパラメータ生成装置2からサブパラメータvpi1、及びサブパラメータvpi2を取得する。
【0140】
ステップS42において、パラメータ生成部330は、マスタパラメータvpm1及びサブパラメータvpi1から、パラメータvp1を生成する。第1の実施形態において、端末装置1及び照合装置3が用いるマスタパラメータvpm1は、共通化されている。つまり、ステップS42において生成されるパラメータvp1は、変換パラメータvpに相当するパラメータである。
【0141】
ステップS43において、パラメータ生成部330は、マスタパラメータvpm1及びサブパラメータvpi2から、パラメータvp2を生成する。パラメータvp2は、パラメータvp2を用いて特徴量データxを暗号化することにより、暗号化データT´´を生成することができるパラメータ(置換鍵K´)に相当する(
図8参照)。パラメータvp2が、本実施形態の更新変換パラメータの一例である。
【0142】
ステップS44において、パラメータ生成部330は、パラメータvp1とパラメータvp2とを合成して、暗号変換パラメータvp´を生成する。具体的に、パラメータ生成部330は、パラメータvp1を逆変換したパラメータと、パラメータvp2とを合成することにより、暗号変換パラメータvp´を生成する。
【0143】
図12のシーケンス図に戻って説明を続ける。ステップS33において、更新情報生成部340は、暗号化データTをDB4から取得する。暗号化データTは、ステップS41において受信したサブパラメータvpi1を示すバージョン情報に関連つけられている暗号化データに相当する(
図10参照)。
【0144】
ステップS34において、更新情報生成部340は、暗号変換パラメータvp´を用いて暗号化データTを変換することにより、更新暗号化データT3を生成する。
【0145】
ステップS35において、更新情報生成部340は、更新暗号化データT3をDB4に送信する。ステップS36において、DB4は、更新暗号化データT3により暗号化データTを上書きしてもよい、又は、暗号化データTと更新暗号化データT3とを、端末装置1の識別情報に関連付けて記憶してもよい。
【0146】
<2.8.2.実施例2>
続いて、照合システム1000Aにおいて照合を行う処理の流れの他の例について説明する。実施例2として、照合装置3において暗号化データTを更新暗号化データT3に変換する、つまり、端末装置1において、変換パラメータvpを用いて特徴量データxを暗号化し、かつ、変換パラメータvpxを用いて特徴量データyを暗号化したときの処理の流れについて説明する。
【0147】
なお、暗号化データT´´が、実施例2の照合装置3が照合を行うための第2暗号化入力情報、及び第4暗号化入力情報の一例である。また、特徴量データxが、実施例2の第1入力情報、及び第3入力情報の一例であり、特徴量データyが、実施例2の第2入力情報、及び第4入力情報の一例である。
【0148】
図14を参照して、実施例2において暗号化データTと暗号化データT´´とを照合する処理の流れについて説明する。
図14は、照合システム1000Aにおいて暗号化データTと暗号化データT´´とを照合する処理の流れを示すシーケンス図である。なお、上述したように、暗号化データT´´は、サブパラメータvpi2から生成された変換パラメータvpxを用いて特徴量データyを暗号化したデータに相当する。また、特徴量データx及び特徴量データyを抽出したときの端末装置1のユーザを識別する識別情報は、同じであると仮定する。
【0149】
ステップS51において、ネットワークI/F101は、暗号化データT´´と、特徴量データyを抽出したときの端末装置1のユーザを識別する識別情報とを照合装置3に送信する。ステップS52において、ネットワークI/F301は、端末装置1が送信した暗号化データT´´と、特徴量データyを抽出したときの端末装置1のユーザを識別する識別情報とを受信する。
【0150】
ステップS53において、照合処理部350は、暗号化データTをDB4から取得する。暗号化データTは、ステップS52において、暗号化データT´´と共に受信した端末装置1のユーザを識別する識別情報に対応する情報に相当する。
【0151】
続いて、ステップS54において、サブパラメータ生成装置2は、照合装置3に対して、サブパラメータvpi1、及びサブパラメータvpi2を送信する。
【0152】
ステップS55において、照合装置3は、サブパラメータvpi1、サブパラメータvpi2及びマスタパラメータvpm1に基づいて、暗号変換パラメータvp´を生成する。ステップS55の工程は、ステップS32と同様の工程であるため、重複する説明を省略する。
【0153】
ステップS56において、更新情報生成部340は、暗号変換パラメータvp´を用いて暗号化データTを変換することにより、更新暗号化データT3を生成する。
【0154】
ステップS57において、照合処理部350は、ステップS52で受信した暗号化データT´´と、ステップS56で生成した更新暗号化データT3とを照合する。
【0155】
図8において説明したように、更新暗号化データT3に含まれる要素の並び順は、暗号化データT´´に含まれる要素の並び順と同じであり、更新暗号化データT3は、暗号化データT´´に相当するデータである。この場合、ステップS
58において、照合処理部350は、暗号化データT及び暗号化データT´´が近いデータであるとの照合結果を端末装置1に送信する。
【0156】
なお、端末装置1は、照合装置3から受信した照合処理の結果に基づいて、端末装置1のユーザの認証を行ってもよい。
【0157】
ステップS59において、更新情報生成部340は、更新暗号化データT3をDB4に送信する。なお、暗号化データT´と更新暗号化データT3とが近いデータである場合に、ステップS59の処理を行うようにしてもよい。また、DB4は、更新暗号化データT3により暗号化データTを上書きしてもよい、又は、暗号化データTと更新暗号化データT3とを、端末装置1のユーザの識別情報に関連付けて記憶してもよい。
【0158】
なお、実施例2において、ステップS57の照合処理とステップS56の暗号化データTを変換する処理との順番を入れ替えてもよい。つまり、照合装置3は、暗号化データTと暗号化データT´´との照合処理の結果に基づいて暗号化データTを変換する処理の実行可否を判断するようにしてもよい。
【0159】
なお、ステップS57の照合処理とステップS56の暗号化データTを変換する処理との順番を入れ替えた場合、暗号化データTの生成に用いられた変換パラメータvpと、暗号化データT´´の生成に用いられた変換パラメータvpxとが異なるため、暗号化データT´´は、暗号化データTに対して近いデータではない。ステップS57の照合処理において、特徴量データx及び特徴量データyを抽出したときの端末装置1のユーザを識別する識別情報が同じ場合であって、かつ、暗号化データT´´が、暗号化データTに対して近いデータではない場合に、更新情報生成部340がステップS56の処理を行うようにしてもよい。
【0160】
<2.8.3.第1の実施形態のまとめ>
以上説明したように、本実施形態において、端末装置1は、サブパラメータvpi1とマスタパラメータvpm1とを用いて、入力情報を暗号化するための変換パラメータvpを生成する。マスタパラメータvpm1は、端末装置1の保護領域102に記憶されているため、ネットワークを介した置換鍵の送受信に比べてマスタパラメータvpm1が漏洩するリスクが少ない。また、実施例1においては、端末装置1が用いたサブパラメータvpi1とマスタパラメータvpm1に関する情報が無くとも照合装置3が照合を行うことができるため、情報が漏洩するリスクをより低減することができ、かつ照合精度の劣化の抑制することが可能である。
【0161】
さらに、実施例2では、サブパラメータvpi1の代わりにサブパラメータvpi2を用いて変換パラメータvpxを生成することにより、変換パラメータvp1によって変換した暗号化データTを無効化するため、セキュリティ性をより高めることが可能である。
【0162】
さらに、実施例2において、照合装置3は、暗号変換パラメータvp´を用いて暗号化データTを変換することにより、暗号化データTを特徴量データxに復号することなく更新暗号化データT3に変換することができる。更新暗号化データT3は、変換パラメータvpxによって特徴量データxを暗号化した暗号化データT´´に相当するデータセットであるため、照合処理の精度を維持することができる。このようにすることにより、本実施形態では、照合精度の劣化の抑制と情報の漏洩リスクの低減とを両立可能な暗号化処理を実現することが可能である。
【0163】
<3.第1の実施形態の変形例>
<3.1.変形例1>
続いて、第1の実施形態の変形例1について、
図15を参照して説明する。
図15は、第1の実施形態の第1の変形例としてのハミング距離マスクによるキャンセラブル変換を説明するための説明図である。
【0164】
照合システム1000Aにおけるキャンセラブル変換として、特徴量データxに含まれる要素を並び変える手法(
図5及び
図8参照)以外にも、例えば、ハミング距離マスクと呼ばれる手法により、特徴量データxを暗号化してもよい。ハミング距離マスクによるキャンセラブル変換において、変換処理部150は、特徴量データ
【数15】
の各次元の要素に対し、ランダムなビット列からなるデータセットであるマスク配列
【数16】
の各次元の要素の論理的排他和を計算することにより、暗号化データTを生成する(
図15、右側上段参照)。
【0165】
ハミング距離マスクによるキャンセラブル変換では、特徴量データxの各次元の特徴量データの要素をマスクするランダムなビット列からなるマスク配列rが、本変形例の変換パラメータvpの一例である。また、特徴量データyの各次元の要素に対しても、ランダムなビット列からなるマスク配列rの論理的排他和を計算することにより暗号化データT´を生成する。
【0166】
特徴量データxに対する特徴量データyのハミング距離は、暗号化データT及び暗号化データT´のハミング距離と一致するため、本変形例のキャンセラブル変換においても、照合処理の精度を維持することが可能である。
【0167】
なお、照合装置3において、暗号化データTを更新暗号化データT3に変換する際には、(式4-1)とは異なる配列を持つランダムなビット列からなるデータセットであるマスク配列r´を暗号変換パラメータvp´として用いるとよい。このようにすることにより、暗号化データTを特徴量データxに復号することなく、暗号化データTを更新暗号化データT3に変換することが可能である。なお、この場合において、端末装置1においては、特徴量データyに対してマスク配列r´の論理的排他和を計算することにより、暗号化データT´´が生成されているものとする。
【0168】
<3.2.変形例2>
続いて、第1の実施形態の変形例2について、
図16を参照して説明する。
図16は、第1の実施形態の第2の変形例に係る暗号変換パラメータvp´を生成する処理の流れを示すフローチャートである。
【0169】
照合システム1000Aにおいて暗号変換パラメータvp´を生成する態様として、第1の実施形態では、サブパラメータvpi1及びサブパラメータvpi2と、マスタパラメータvpm1とを用いる例について説明を行った。
【0170】
本変形例では、照合装置3に、端末装置1及び端末装置1に相当する要素を備える他の情報処理装置が接続されている場合において、記憶領域320に記憶されている複数のマスタパラメータ(例えば、マスタパラメータvpm1及びマスタパラメータvpm2)を用いて暗号変換パラメータvp´を生成する例について
図16を参照して説明を行う。また、マスタパラメータvpm2が、端末装置1に相当する要素を備える他の情報処理装置の保護領域に記憶されていると仮定する。
【0171】
なお、
図16のフローチャートは、
図12のステップS32において行われる処理である。また、
図16のフローチャートにおいて、照合装置3は、ステップS31の工程において、サブパラメータvpi1をサブパラメータ生成装置2から受信したと仮定して説明を行う。
【0172】
ステップS61において、サブパラメータ取得部310は、ネットワークI/F301を介して、サブパラメータ生成装置2からサブパラメータvpi1を取得する。
【0173】
ステップS62において、パラメータ生成部330は、マスタパラメータvpm1及びサブパラメータvpi1から、パラメータvp3を生成する。マスタパラメータvpm1は、端末装置1に記憶されているマスタパラメータである。つまり、ステップS62において生成されるパラメータvp3は、変換パラメータvpに相当するパラメータである。
【0174】
ステップS63において、パラメータ生成部330は、マスタパラメータvpm2及びサブパラメータvpi1から、パラメータvp4を生成する。マスタパラメータvpm2は、端末装置1に相当する要素を備える他の情報処理装置に記憶されているマスタパラメータである。つまり、ステップS63において生成されるパラメータvp4は、端末装置1に相当する要素を備える他の情報処理装置において特徴量データを暗号化するための変換パラメータに相当する。また、マスタパラメータvpm2は、本実施形態の第4パラメータの一例である。パラメータvp4が、本実施形態の更新変換パラメータの一例である。
【0175】
ステップS64において、パラメータ生成部330は、パラメータvp3とパラメータvp4とを合成して、暗号変換パラメータvp´を生成する。具体的に、パラメータ生成部330は、パラメータvp3を逆変換したパラメータと、パラメータvp4とを合成することにより、暗号変換パラメータvp´を生成する。ステップS64以降の処理は、第1の実施形態と同じである。
【0176】
なお、第1の実施形態の実施例1を本変形例に対して適用する場合、DB4は、バージョン情報として、暗号化データを生成するために用いたマスタパラメータを識別するための情報を記憶するようにしてもよい(
図10参照)。
【0177】
このように、本変形例の照合装置3は、端末装置1及び端末装置1に相当する要素を備える他の情報処理装置において、同一人物の生体情報が暗号化された場合であっても、マスタパラメータvpm1及びマスタパラメータvpm2と、サブパラメータvpi1とを用いて暗号変換パラメータvp´を生成することができる。本変形例では、第1の実施形態と同様に照合精度の劣化の抑制と情報の漏洩リスクの低減とを両立可能な暗号化処理を実施可能である。さらに、本変形例では、端末装置1によって暗号化された生体情報に対し、端末装置1に相当する要素を備える他の情報処理装置に生体情報を入力することによる照合処理を行うことが可能である。
【0178】
<3.3.変形例3>
続いて、第1の実施形態の変形例3に係る端末装置1の構成について、
図17を参照して説明する。
図17は、第1の実施形態の変形例3に係る端末装置1の機能構成を示す機能ブロック図である。変形例3に係る端末装置1は、第1の実施形態のサブパラメータ生成部210に相当する要素、サブパラメータ記憶部230に相当する要素及びパラメータ生成部330に相当する要素を備える。なお、
図17において、
図4に示す端末装置1の要素と同じ要素には同じ符号を付し、重複する説明を省略する。
【0179】
本変形例に係る端末装置1のコントローラ100は、特徴量算出部120、変換処理部150、サブパラメータ生成部160、パラメータ生成部170、及び記憶領域180を備える。
【0180】
サブパラメータ生成部160は、第1の実施形態に係るサブパラメータ生成部210に相当する要素である。つまり、サブパラメータ生成部160は、変換パラメータvpを生成するためのサブパラメータvpi1を生成する。サブパラメータ生成部160は、例えば、サブパラメータvpi1として、乱数を生成するためのサブ乱数シードを生成する。なお、サブパラメータ生成部160は、サブパラメータvpi1とは異なるサブパラメータvpi2を生成することも可能である。
【0181】
パラメータ生成部170は、第1の実施形態に係るパラメータ生成部140に相当する要素とパラメータ生成部330に相当する要素とを併せ持つ要素である。つまり、パラメータ生成部170は、記憶領域180に記憶されているマスタパラメータvpm1及びサブパラメータvpi1に基づいて、端末装置1に入力された情報を暗号化するための変換パラメータvpを生成する。また、パラメータ生成部170は、記憶領域180に記憶されているマスタパラメータvpm1と、サブパラメータvpi1と、サブパラメータvpi1とは異なるサブパラメータ(例えば、サブパラメータvpi2)とを用いて、暗号変換パラメータvp´を生成する。なお、変換処理部150は、特徴量データxを変換パラメータvpにより暗号化した暗号化データTを、暗号変換パラメータvp´を用いて変換することにより、更新暗号化データT3を生成することが可能である。
【0182】
記憶領域180は、第1の実施形態に係る記憶領域130に相当する要素とサブパラメータ記憶部230に相当する要素とを併せ持つ要素である。つまり、記憶領域180は、変換パラメータvp又は暗号変換パラメータvp´を生成するために用いられるマスタパラメータvpm1と、サブパラメータ生成部160が生成したサブパラメータvpi1及びサブパラメータvpi2等のサブパラメータを記憶する。記憶領域180は、端末装置1を識別する識別情報、又は端末装置1に生体情報を入力したユーザを識別するための識別情報を、サブパラメータvpi1及びサブパラメータvpi2等に関連付けて記憶してもよい。
【0183】
本変形例においては、照合装置3にマスタパラメータvpm1、サブパラメータvpi1及びサブパラメータvpi2を実装していない場合であっても端末装置1において暗号化データT´´を生成する処理、及び暗号化データTを更新暗号化データT3に変換する処理を行うことが可能である。したがって、第1の実施形態と同様に本変形例においても、照合精度の劣化の抑制と情報の漏洩リスクの低減とを両立可能な暗号化処理を実現することが可能である。
【0184】
<4.第2の実施形態>
続いて、
図18から
図21を参照して、本発明の第2の実施形態について説明する。
図18は、本実施形態の照合システム1000Bの運用形態の一例を示す図である。なお、
図18の照合システム1000Bにおいて、
図1の照合システム1000Aと同じ構成には、同じ符号を付し、重複する説明を省略する。
【0185】
図18に示すように、照合システム1000Bは、判定装置6を備える点において照合システム1000Aと異なる。
【0186】
図19は、判定装置6の機能構成を示す機能ブロック図である。判定装置6の機能構成は、
図2において説明した要素と同様のハードウェア構成において、判定装置6のROM12に格納されたプログラムや、判定装置6の記憶媒体14から判定装置6のRAM13にロードされたプログラムに従って、判定装置6のCPU11が演算を行うことにより、判定装置6のソフトウェア制御部が構成される。
【0187】
以上のようにして構成されたソフトウェア制御部と、ハードウェアとの組み合わせによって、本実施形態に係る判定装置6の機能を実現する機能ブロックが構成される。
【0188】
判定装置6は、復号処理部610、及び類似度判定部620を備える。復号処理部610は、暗号文復号パラメータsk´´により、照合装置3から受信した照合処理の結果を復号する。類似度判定部620は、復号処理部610が復号した照合処理の結果に基づいて、特徴量データRと特徴量データSとの類似度を判定する。
【0189】
続いて、
図20を参照して、本実施形態に係る照合処理部350の内部構成について説明する。
図20は、照合処理部350の内部構成を示す機能ブロック図である。
【0190】
図20に示すように、照合処理部350は、準同型演算処理部351、及び暗号文変換処理部352を備える。準同型演算処理部351は、暗号化された情報を暗号化されたままの状態で加減算及び乗算する、いわゆる準同型演算を行う。暗号文変換処理部352は、準同型演算処理部351の演算結果を、暗号文変換パラメータsk´によって暗号化する。
【0191】
続いて、
図21を参照して、照合システム1000Bにおける照合処理の概要について説明する。
図21は、照合システム1000Bにおける準同型演算処理を用いた照合処理の概要を示すモデル図である。
【0192】
端末装置1では、暗号化パラメータpkを用いて、特徴量データR=(x,y)及び特徴量データS=(x´,y´)を暗号化する。なお、特徴量データR=(x,y)及び特徴量データS=(x´,y´)は、同一人物の顔画像であると仮定する。暗号化パラメータpkが、本実施形態の変換パラメータの一例である。
【0193】
パラメータ生成部140は、サブパラメータ生成装置2から受信したサブパラメータvpi1とマスタパラメータvpm1とを用いて暗号化パラメータpkを生成する。特徴量データR=(x,y)を暗号化パラメータpkによって暗号化したデータがEncpk(R)である。また、特徴量データS=(x´,y´)を暗号化パラメータpkによって暗号化したデータがEncpk(S)である。Encpk(R)は、端末装置1からDB4に送信される。また、Encpk(S)は、端末装置1から照合装置3に送信される。
【0194】
照合装置3は、DB4が記憶しているEncpk(R)を取得する。続いて、準同型演算処理部351は、Encpk(R)とEncpk(S)とを準同型演算することにより、Encpk(R)とEncpk(S)との類似度
【数17】
を算出する。
【0195】
暗号文変換処理部352は、Encpk(R)とEncpk(S)との類似度を暗号文変換パラメータsk´によって暗号化し、暗号文
【数18】
を判定装置6に送信する(式5-1)。暗号文変換処理部352は、本変形例の暗号化類似度情報生成部の一例である。(式5-1)に示す暗号文は、Encpk(R)とEncpk(S)との類似度を示す情報が暗号化された暗号化類似度情報に相当する。また、暗号文変換パラメータsk´は、暗号化パラメータpkに依存するパラメータである。
【0196】
復号処理部610は、照合装置3から受信した(式5-1)のEncpk(R)とEncpk(S)との類似度を示す情報を、暗号文復号パラメータsk´´により復号する。暗号文復号パラメータsk´´により、(式5-1)のEncpk(R)とEncpk(S)との類似度を示す情報は、判定装置6において演算可能な平文
【数19】
に復号することができる。なお、暗号文復号パラメータsk´´は、暗号化パラメータpkに依存するパラメータである。
【0197】
類似度判定部620は、(式5-2)に基づいて特徴量データR=(x,y)と特徴量データS=(x´,y´)との類似度を判定する。照合システム1000Bは、類似度判定部620の判定結果に基づいて、端末装置1のユーザの認証を行ってもよい。
【0198】
なお、端末装置1は、特徴量データS=(x´,y´)を暗号化する際に、サブパラメータvpi2とマスタパラメータvpm1とを用いて暗号化パラメータpk´を生成する場合がある。このような場合、パラメータ生成部330は、サブパラメータ生成装置2からサブパラメータvpi2とマスタパラメータvpm1とを受信し、サブパラメータvpi2と、マスタパラメータvpm1とを用いて暗号変換パラメータvp´を生成する。
【0199】
そして、暗号変換パラメータvp´を用いて変換したEncpk(R)と、暗号化パラメータpk´を用いて特徴量データS=(x´,y´)を暗号化したEncpk´(S)とを準同型演算することにより、特徴量データR=(x,y)と特徴量データS=(x´,y´)とを照合することが可能である。
【0200】
以上説明したように、本実施形態では、準同型演算によりEncpk(R)とEncpk(S)とを照合する場合においても、第1の実施形態と同様にEncpk(R)を特徴量データR=(x,y)に復号することなく、Encpk(R)を無効化することが可能である。
【0201】
<5.第3の実施形態>
続いて、
図22から
図24を参照して、本発明の第3の実施形態を説明する。上述した第1の実施形態及び第2の実施形態は、具体的な実施形態であるが、第3の実施形態は、より一般化された実施形態である。
【0202】
図22は、第3の実施形態に係る端末装置1Aの概略的な構成を例示するブロック図である。端末装置1Aは、端末側取得部110A、端末側記憶領域130A、変換パラメータ生成部140A、及び暗号化情報生成部150Aを備える。
【0203】
端末側取得部110Aは、第2パラメータを取得する。端末側記憶領域130Aは、第1パラメータを記憶する。変換パラメータ生成部140Aは、第1パラメータと第2パラメータとに基づいて変換パラメータを生成する変換パラメータ生成処理を行う。暗号化情報生成部150Aは、変換パラメータを用いて入力情報を暗号化することにより暗号化入力情報を生成する。
【0204】
図23は、第3の実施形態に係る暗号化情報変換装置3Aの概略的な構成を例示するブロック図である。暗号化情報変換装置3Aは、変換側取得部310A、変換側記憶領域320A、暗号変換パラメータ生成部330A、及び更新情報生成部340Aを備える。
【0205】
変換側取得部310Aは、暗号化入力情報を生成するために用いられた第2パラメータと、第2パラメータとは異なる第3パラメータとを取得する。変換側記憶領域320Aは、第1パラメータを記憶する。暗号変換パラメータ生成部330Aは、第1パラメータ、第2パラメータ、及び第3パラメータを用いて暗号化入力情報を変換するための暗号変換パラメータを生成する。更新情報生成部340Aは、暗号変換パラメータを用いて暗号化入力情報を変換することにより、更新暗号化入力情報を生成する。
【0206】
なお、変換側取得部310A、変換側記憶領域320A、第1パラメータを含む複数のマスタパラメータを記憶する暗号変換パラメータ生成部330A、及び更新情報生成部340Aを以下のように構成してもよい。例えば、変換側取得部310Aは、暗号化入力情報を生成するために用いられた第2パラメータを取得する。変換側記憶領域320Aは、第1パラメータを含む複数のマスタパラメータを記憶する。暗号変換パラメータ生成部330Aは、複数のマスタパラメータと、第2パラメータとを用いて暗号化入力情報を変換するための暗号変換パラメータを生成する。更新情報生成部340Aは、暗号変換パラメータを用いて暗号化入力情報を変換することにより、更新暗号化入力情報を生成する。
【0207】
照合処理部350Aは、照合のために端末装置1Aに入力される第1入力情報を、暗号化情報生成部150Aが変換パラメータを用いて暗号化することにより生成される第1暗号化入力情報と、照合のために端末装置1Aに入力される第1入力情報とは異なる第2入力情報を暗号化することにより生成される第2暗号化入力情報とに基づいて、第1入力情報と第2入力情報とを照合する照合処理を行う。
【0208】
なお、照合処理部350Aを以下のように構成してもよい。例えば、照合処理部350Aは、照合のために端末装置1Aに入力される第3入力情報を、暗号化情報生成部150Aが変換パラメータを用いて暗号化することにより生成される第3暗号化入力情報と、照合のために端末装置1Aに入力される第3入力情報とは異なる第4入力情報を暗号化することにより生成される第4暗号化入力情報とに基づいて、第3入力情報と第4入力情報とを照合する照合処理を行う。
【0209】
図24は、本発明の第3の実施形態に係る照合システム1000Cの概略的な構成を例示するブロック図である。
図24に示すように、照合システム1000Cは、端末装置1A、及び照合処理部350Aを備える。
【0210】
-第1及び第2の実施形態との関係
一例として、第3の実施形態に係る端末装置1Aが、第1又は第2の実施形態に係る端末装置1の動作を実行してもよい。同様に、一例として、第3の実施形態に係る暗号化情報変換装置3Aが、第1又は第2の実施形態に係る照合装置3の動作を実行してもよい。同様に、一例として、第3の実施形態に係る照合システム1000Cが、第1の実施形態に係る照合システム1000A又は第2の実施形態に係る照合システム1000Bの動作を実行してもよい。以上の場合、第1の実施形態又は第2の実施形態についての説明が第3の実施形態にも適用可能である。なお、第3の実施形態は以上の例に限定されるものではない。
【0211】
<6.その他の実施形態>
以上、本発明の実施形態を説明したが、本発明はこれらの実施形態に限定されるものではない。これらの実施形態は例示にすぎないということ、及び、本発明のスコープ及び精神から逸脱することなく様々な変形が可能であるということは、当業者に理解されるであろう。
【0212】
例えば、本明細書に記載されている処理におけるステップは、必ずしもフローチャート及びシーケンス図に記載された順序に沿って時系列に実行されなくてよい。例えば、処理におけるステップは、フローチャート及びシーケンス図として記載した順序と異なる順序で実行されても、並列的に実行されてもよい。また、処理におけるステップの一部が削除されてもよく、さらなるステップが処理に追加されてもよい。
【0213】
また、本明細書において説明した端末装置の構成要素(端末側記憶領域、端末側取得部、変換パラメータ生成部、及び/又は、暗号化情報生成部)を備える装置(例えば、端末装置を構成する複数の装置(又はユニット)のうちの1つ以上の装置(又はユニット)、又は上記複数の装置(又はユニット)のうちの1つのためのモジュール)が提供されてもよい。本明細書において説明した暗号化情報変換装置の構成要素(変換側記憶領域、変換側取得部、暗号変換パラメータ生成部、及び/又は、更新情報生成部)を備える装置(例えば、暗号化情報変換装置を構成する複数の装置(又はユニット)のうちの1つ以上の装置(又はユニット)、又は上記複数の装置(又はユニット)のうちの1つのためのモジュール)が提供されてもよい。また、上記構成要素の処理を含む方法が提供されてもよく、上記構成要素の処理をプロセッサに実行させるためのプログラムが提供されてもよい。また、当該プログラムを記録したコンピュータに読み取り可能な非一時的記録媒体(Non-transitory computer readable medium)が提供されてもよい。当然ながら、このような装置、モジュール、方法、プログラム、及びコンピュータに読み取り可能な非一時的記録媒体も本発明に含まれる。
【0214】
上記実施形態の一部又は全部は、以下の付記のようにも記載され得るが、以下には限られない。
【0215】
(付記1)
照合のために入力される入力情報を暗号化する端末装置であって、
第1パラメータを記憶する端末側記憶領域と、
第2パラメータを取得する端末側取得部と、
前記第1パラメータと前記第2パラメータとに基づいて変換パラメータを生成する変換パラメータ生成処理を行う変換パラメータ生成部と、
前記変換パラメータを用いて前記入力情報を暗号化することにより暗号化入力情報を生成する暗号化情報生成部と、を備える、
端末装置。
【0216】
(付記2)
前記第1パラメータは、第1乱数シードであり、
前記第2パラメータは、第2乱数シードであり、
前記変換パラメータ生成部は、
前記変換パラメータ生成処理として、前記第1乱数シード及び前記第2乱数シードを用いて乱数を生成し、
前記暗号化情報生成部は、
前記変換パラメータとして、前記乱数を用いて前記入力情報を暗号化する、
付記1に記載の端末装置。
【0217】
(付記3)
前記第2パラメータは、前記変換パラメータが暗号化された暗号化パラメータであり、
前記第1パラメータは、前記暗号化パラメータを復号するための秘密鍵であり、
前記変換パラメータ生成部は、
前記変換パラメータ生成処理として、前記暗号化パラメータを前記秘密鍵によって復号することにより、前記変換パラメータを生成する、
付記1に記載の端末装置。
【0218】
(付記4)
前記端末側記憶領域、前記変換パラメータ生成部、及び前記暗号化情報生成部は、前記端末装置の保護領域に実装されている、
付記1から3のいずれか1項に記載の端末装置。
【0219】
(付記5)
前記変換パラメータは、
前記暗号化情報生成部による暗号化の対象となる情報に含まれる要素の並び順を置き換える置換鍵であり、
前記暗号化情報生成部は、
前記入力情報に含まれる要素の並び順を、前記置換鍵を用いて置き換えることにより、前記暗号化入力情報を生成する、
付記1から4のいずれか1項に記載の端末装置。
【0220】
(付記6)
前記変換パラメータは、
前記暗号化情報生成部による暗号化の対象となる情報に含まれる要素に対応するランダムなビット列からなるデータセットであり、
前記暗号化情報生成部は、
前記入力情報と前記データセットとの論理的排他和を計算することにより、前記暗号化入力情報を生成する、
付記1から4のいずれか1項に記載の端末装置。
【0221】
(付記7)
照合のために入力される入力情報を、第1パラメータ及び第2パラメータに基づいて生成した変換パラメータによって暗号化することにより生成される暗号化入力情報を、更新暗号化入力情報に変換する暗号化情報変換装置であって、
前記第1パラメータを記憶する変換側記憶領域と、
前記暗号化入力情報を生成するために用いられた前記第2パラメータと、前記第2パラメータとは異なる第3パラメータとを取得する変換側取得部と、
前記第1パラメータ、前記第2パラメータ、及び前記第3パラメータを用いて前記暗号化入力情報を変換するための暗号変換パラメータを生成する暗号変換パラメータ生成部と、
前記暗号変換パラメータを用いて前記暗号化入力情報を変換することにより、前記更新暗号化入力情報を生成する更新情報生成部と、を備える、
暗号化情報変換装置。
【0222】
(付記8)
前記暗号変換パラメータ生成部は、
前記第1パラメータ及び前記第2パラメータを用いて前記変換パラメータを生成し、
前記第1パラメータ及び前記第3パラメータを用いて前記変換パラメータとは異なる更新変換パラメータを生成し、
前記変換パラメータと前記更新変換パラメータとを合成することにより、前記暗号変換パラメータを生成する、
付記7に記載の暗号化情報変換装置。
【0223】
(付記9)
前記変換パラメータは、
前記入力情報に含まれる要素の並び順を置き換える第1置換鍵であり、
前記暗号変換パラメータは、
前記暗号化入力情報に含まれる要素の並び順を置き換える第2置換鍵であり、
前記更新情報生成部は、
前記暗号化入力情報に含まれる要素の並び順を、前記第2置換鍵を用いて置き換えることにより、前記更新暗号化入力情報を生成する、
付記7又は8に記載の暗号化情報変換装置。
【0224】
(付記10)
前記変換パラメータは、
前記入力情報に含まれる要素に対応するランダムなビット列からなる第1データセットであり、
前記暗号変換パラメータは、
前記暗号化入力情報に含まれる要素に対応するランダムなビット列であって、かつ前記第1データセットとは異なる第2データセットであり、
前記更新情報生成部は、
前記暗号化入力情報と前記第2データセットとの論理的排他和を計算することにより、前記更新暗号化入力情報を生成する、
付記7又は8に記載の暗号化情報変換装置。
【0225】
(付記11)
前記変換側記憶領域、前記暗号変換パラメータ生成部、及び前記更新情報生成部は、前記暗号化情報変換装置の保護領域に実装されている、
付記7から10のいずれか1項に記載の暗号化情報変換装置。
【0226】
(付記12)
照合のために入力される入力情報を、第1パラメータ及び第2パラメータを用いて生成した変換パラメータによって暗号化することにより生成される暗号化入力情報を、更新暗号化入力情報に変換する暗号化情報変換装置であって、
前記第1パラメータを含む複数のマスタパラメータを記憶する変換側記憶領域と、
前記暗号化入力情報を生成するために用いられた前記第2パラメータを取得する変換側取得部と、
複数の前記マスタパラメータと、前記第2パラメータとを用いて前記暗号化入力情報を変換するための暗号変換パラメータを生成する暗号変換パラメータ生成部と、
前記暗号変換パラメータを用いて前記暗号化入力情報を変換することにより、前記更新暗号化入力情報を生成する更新情報生成部と、を備える、
暗号化情報変換装置。
【0227】
(付記13)
前記暗号変換パラメータ生成部は、
前記第1パラメータ及び前記第2パラメータを用いて前記変換パラメータを生成し、
前記第1パラメータ以外の前記マスタパラメータと、前記第2パラメータとを用いて、前記変換パラメータとは異なる更新変換パラメータを生成し、
前記変換パラメータと、前記更新変換パラメータとを合成することにより、前記暗号変換パラメータを生成する、
付記12に記載の暗号化情報変換装置。
【0228】
(付記14)
前記変換パラメータは、
前記入力情報に含まれる要素の並び順を置き換える第1置換鍵であり、
前記暗号変換パラメータは、
前記暗号化入力情報に含まれる要素の並び順を置き換える第2置換鍵であり、
前記更新情報生成部は、
前記暗号化入力情報に含まれる要素の並び順を、前記第2置換鍵を用いて置き換えることにより、前記更新暗号化入力情報を生成する、
付記12又は13に記載の暗号化情報変換装置。
【0229】
(付記15)
前記変換パラメータは、
前記入力情報に含まれる要素に対応するランダムなビット列からなる第1データセットであり、
前記暗号変換パラメータは、
前記暗号化入力情報に含まれる要素に対応するランダムなビット列であって、かつ前記第1データセットとは異なる第2データセットであり、
前記更新情報生成部は、
前記暗号化入力情報と前記第2データセットとの論理的排他和を計算することにより、前記更新暗号化入力情報を生成する、
付記12又は13に記載の暗号化情報変換装置。
【0230】
(付記16)
前記変換側記憶領域、前記暗号変換パラメータ生成部、及び前記更新情報生成部は、前記暗号化情報変換装置の保護領域に実装されている、
付記12から15のいずれか1項に記載の暗号化情報変換装置。
【0231】
(付記17)
付記1から6のいずれか1項に記載の端末装置と、
照合のために前記端末装置に入力される第1入力情報を、前記暗号化情報生成部が前記変換パラメータを用いて暗号化することにより生成される第1暗号化入力情報と、照合のために前記端末装置に入力される前記第1入力情報とは異なる第2入力情報を暗号化することにより生成される第2暗号化入力情報とに基づいて、前記第1入力情報と前記第2入力情報とを照合する照合処理を行う照合処理部と、を備える、
照合システム。
【0232】
(付記18)
付記7から11のいずれか1項に記載の暗号化情報変換装置を備える、
付記17に記載の照合システム。
【0233】
(付記19)
前記暗号化情報変換装置は、前記照合処理部を有する、
付記18に記載の照合システム。
【0234】
(付記20)
前記照合処理部は、前記暗号化情報変換装置が備える保護領域に実装されている、
付記19に記載の照合システム。
【0235】
(付記21)
前記端末装置及び前記暗号化情報変換装置に前記第2パラメータ及び前記第3パラメータを送信するパラメータ送信装置を備える、
付記18から20のいずれか1項に記載の照合システム。
【0236】
(付記22)
前記パラメータ送信装置は、
前記第2パラメータと前記第3パラメータとを生成するパラメータ生成部を有する、
付記21に記載の照合システム。
【0237】
(付記23)
前記変換パラメータ生成部は、
前記第1パラメータと、前記第3パラメータとに基づいて、前記変換パラメータとは異なる端末側更新変換パラメータを生成可能であり、
前記暗号化情報生成部は、
前記端末側更新変換パラメータを用いて、前記第2入力情報を暗号化することにより前記第2暗号化入力情報を生成する、
付記21又は22に記載の照合システム。
【0238】
(付記24)
前記暗号変換パラメータ生成部は、
前記第1パラメータ、前記第2パラメータ、及び前記第3パラメータを用いて前記暗号変換パラメータを生成し、
前記更新情報生成部は、
前記第1パラメータ、前記第2パラメータ、及び前記第3パラメータを用いて生成された前記暗号変換パラメータによって前記第1暗号化入力情報を前記更新暗号化入力情報に変換し、
前記照合処理部は、
前記第1暗号化入力情報を変換して生成された前記更新暗号化入力情報と、前記端末側更新変換パラメータを用いて生成された前記第2暗号化入力情報とに基づいて前記照合処理を行う、
付記23に記載の照合システム。
【0239】
(付記25)
前記照合処理部は、
前記第1暗号化入力情報と前記第2暗号化入力情報とを準同型演算することにより、前記第1入力情報と前記第2入力情報との類似度を暗号化した状態で出力する準同型演算処理部と、
暗号化した状態で出力された前記類似度を暗号化することにより暗号化類似度情報を生成する暗号化類似度情報生成部と、を有し、
前記照合システムは、
前記暗号化類似度情報を復号する復号処理部と、
復号された前記暗号化類似度情報に基づいて前記第1入力情報に対する前記第2入力情報の類似度を判定する類似度判定部と、を備える、
付記17から24のいずれか1項に記載の照合システム。
【0240】
(付記26)
付記1から6のいずれか1項に記載の端末装置と、
照合のために前記端末装置に入力される第3入力情報を、前記暗号化情報生成部が前記変換パラメータを用いて暗号化することにより生成される第3暗号化入力情報と、照合のために前記端末装置に入力される前記第3入力情報とは異なる第4入力情報を暗号化することにより生成される第4暗号化入力情報とに基づいて、前記第3入力情報と前記第4入力情報とを照合する照合処理を行う照合処理部と、を備える、
照合システム。
【0241】
(付記27)
付記7から11のいずれか1項に記載の暗号化情報変換装置を備える、
付記26に記載の照合システム。
【0242】
(付記28)
前記暗号化情報変換装置は、前記照合処理部を有する、
付記27に記載の照合システム。
【0243】
(付記29)
前記照合処理部は、前記暗号化情報変換装置が備える保護領域に実装されている、
付記28に記載の照合システム。
【0244】
(付記30)
前記端末装置及び前記暗号化情報変換装置に前記第2パラメータを送信するパラメータ送信装置を備える、
付記27から29のいずれか1項に記載の照合システム。
【0245】
(付記31)
前記パラメータ送信装置は、
前記第2パラメータを生成するパラメータ生成部を有する、
付記30に記載の照合システム。
【0246】
(付記32)
前記端末装置は、
前記第1パラメータ及び前記第2パラメータとは異なる第4パラメータを、前記端末側記憶領域に記憶し、
前記変換パラメータ生成部は、
前記第2パラメータと、前記第4パラメータとに基づいて、前記変換パラメータとは異なる端末側更新変換パラメータを生成可能であり、
前記暗号化情報生成部は、
前記端末側更新変換パラメータを用いて、前記第4入力情報を暗号化することにより前記第4暗号化入力情報を生成する、
付記30又は31に記載の照合システム。
【0247】
(付記33)
前記暗号化情報変換装置は、
前記マスタパラメータとして、前記第4パラメータを記憶し、
前記暗号変換パラメータ生成部は、
前記第1パラメータ、前記第2パラメータ、及び前記第4パラメータを用いて前記暗号変換パラメータを生成し、
前記更新情報生成部は、
前記第4パラメータに基づいて生成した前記暗号変換パラメータを用いて前記第3暗号化入力情報を変換し、
前記照合処理部は、
前記更新情報生成部によって前記第3暗号化入力情報を変換して生成した前記更新暗号化入力情報と、前記端末装置において前記端末側更新変換パラメータを用いて生成された前記第4暗号化入力情報とに基づいて前記照合処理を行う、
付記32に記載の照合システム。
【0248】
(付記34)
前記照合処理部は、
前記第3暗号化入力情報と前記第4暗号化入力情報とを準同型演算することにより、前記第3入力情報と前記第4入力情報との類似度を暗号化した状態で出力する準同型演算処理部と、
暗号化した状態で出力された前記類似度を暗号化することにより暗号化類似度情報を生成する暗号化類似度情報生成部と、を有し、
前記照合システムは、
前記暗号化類似度情報を復号する復号処理部と、
復号された前記暗号化類似度情報に基づいて前記第3入力情報に対する前記第4入力情報の類似度を判定する類似度判定部と、を備える、
付記26から33のいずれか1項に記載の照合システム。
【0249】
(付記35)
前記照合処理部は、
前記照合処理の結果を前記端末装置に送信する、
付記17から34のいずれか1項に記載の照合システム。
【0250】
(付記36)
記憶領域に記憶されている第1パラメータと前記第1パラメータとは異なる第2パラメータとに基づいて変換パラメータを生成する変換パラメータ生成処理を行うことと、
照合のために入力される入力情報を、前記変換パラメータを用いて暗号化することにより暗号化入力情報を生成することと、を備える、
入力情報暗号化方法。
【0251】
(付記37)
照合のために入力される入力情報を、第1パラメータ及び第2パラメータを用いて生成した変換パラメータによって暗号化することにより生成される暗号化入力情報を、更新暗号化入力情報に変換する暗号化情報変換方法であって、
前記暗号化入力情報を生成するために用いられた前記第2パラメータを取得することと、
前記第2パラメータとは異なる第3パラメータを取得することと、
記憶領域に記憶されている前記第1パラメータと、取得した前記第2パラメータ及び前記第3パラメータとを用いて前記暗号化入力情報を変換するための暗号変換パラメータを生成することと、
前記暗号変換パラメータを用いて前記暗号化入力情報を変換することにより、前記更新暗号化入力情報を生成することと、を備える、
暗号化情報変換方法。
【0252】
(付記38)
照合のために入力される入力情報を、第1パラメータ及び第2パラメータを用いて生成した変換パラメータによって暗号化することにより生成される暗号化入力情報を、更新暗号化入力情報に変換する暗号化情報変換方法であって、
前記暗号化入力情報を生成するために用いられた前記第2パラメータを取得することと、
記憶領域に記憶されている前記第1パラメータ以外のマスタパラメータと、前記第2パラメータとを用いて、前記暗号化入力情報を変換するための暗号変換パラメータを生成することと、
前記暗号変換パラメータを用いて前記暗号化入力情報を変換することにより、前記更新暗号化入力情報を生成することと、を備える、
暗号化情報変換方法。
【0253】
(付記39)
端末装置の記憶領域に記憶されている第1パラメータと前記第1パラメータとは異なる第2パラメータとに基づいて変換パラメータを生成する変換パラメータ生成処理を行うことと、
照合のために入力される入力情報を、前記変換パラメータを用いて暗号化することにより暗号化入力情報を生成することと、
照合のための第1入力情報を、前記変換パラメータを用いて暗号化することにより生成される第1暗号化入力情報と、照合のために入力される前記第1入力情報とは異なる第2入力情報を暗号化することにより生成される第2暗号化入力情報とに基づいて、前記第1入力情報と前記第2入力情報とを照合する照合処理を行うことと、を備える、
照合方法。
【0254】
(付記40)
端末装置の記憶領域に記憶されている第1パラメータと前記第1パラメータとは異なる第2パラメータとに基づいて変換パラメータを生成する変換パラメータ生成処理を行うことと、
照合のために入力される入力情報を、前記変換パラメータを用いて暗号化することにより暗号化入力情報を生成することと、
照合のために入力される第3入力情報を、前記変換パラメータを用いて暗号化することにより生成される第3暗号化入力情報と、照合のために入力される前記第3入力情報とは異なる第4入力情報を暗号化することにより生成される第4暗号化入力情報とに基づいて、前記第3入力情報と前記第4入力情報とを照合する照合処理を行うことと、を備える、
照合方法。
【0255】
(付記41)
記憶領域に記憶されている第1パラメータと前記第1パラメータとは異なる第2パラメータとに基づいて変換パラメータを生成する変換パラメータ生成処理を行うことと、
照合のために入力される入力情報を、前記変換パラメータを用いて暗号化することにより暗号化入力情報を生成することと、をプロセッサに実行させる、
入力情報暗号化プログラム。
【0256】
(付記42)
照合のために入力される入力情報を、第1パラメータ及び第2パラメータを用いて生成した変換パラメータによって暗号化することにより生成される暗号化入力情報を、更新暗号化入力情報に変換する暗号化情報変換プログラムであって、
前記暗号化入力情報を生成するために用いられた前記第2パラメータを取得することと、
前記第2パラメータとは異なる第3パラメータを取得することと、
記憶領域に記憶されている前記第1パラメータと、取得した前記第2パラメータ及び前記第3パラメータとを用いて前記暗号化入力情報を変換するための暗号変換パラメータを生成することと、
前記暗号変換パラメータを用いて前記暗号化入力情報を変換することにより、前記更新暗号化入力情報を生成することと、をプロセッサに実行させる、
暗号化情報変換プログラム。
【0257】
(付記43)
照合のために入力される入力情報を、第1パラメータ及び第2パラメータを用いて生成した変換パラメータによって暗号化することにより生成される暗号化入力情報を、更新暗号化入力情報に変換する暗号化情報変換プログラムであって、
前記暗号化入力情報を生成するために用いられた前記第2パラメータを取得することと、
記憶領域に記憶されている前記第1パラメータ以外のマスタパラメータと、前記第2パラメータとを用いて前記暗号化入力情報を変換するための暗号変換パラメータを生成することと、
前記暗号変換パラメータを用いて前記暗号化入力情報を変換することにより、前記更新暗号化入力情報を生成することと、をプロセッサに実行させる、
暗号化情報変換プログラム。
【産業上の利用可能性】
【0258】
照合精度の劣化の抑制と情報の漏洩リスクの低減とを両立可能な暗号化処理を実現する端末装置、暗号化情報変換装置、照合システム、入力情報暗号化方法、暗号化情報変換方法、照合方法、入力情報暗号化プログラム、及び暗号化情報変換プログラムを提供する。
【符号の説明】
【0259】
1、1A 端末装置
2 サブパラメータ生成装置
3 照合装置
3A 暗号化情報変換装置
4 DB
5 ネットワーク
6 判定装置
102 保護領域
110 サブパラメータ取得部
110A 端末側取得部
120 特徴量算出部
130 記憶領域
130A 端末側記憶領域
140 パラメータ生成部
140A 変換パラメータ生成部
150 変換処理部
150A 暗号化情報生成部
160 サブパラメータ生成部
170 パラメータ生成部
180 記憶領域
210 サブパラメータ生成部
220 サブパラメータ送信部
230 サブパラメータ記憶部
302 保護領域
310 サブパラメータ取得部
310A 変換側取得部
320 記憶領域
320A 変換側記憶領域
330 パラメータ生成部
330A 暗号変換パラメータ生成部
340、340A 更新情報生成部
350、350A 照合処理部
351 準同型演算処理部
352 暗号文変換処理部
610 復号処理部
620 類似度判定部
1000A、1000B、1000C 照合システム