JP5559018B2 - 情報処理装置、擬似乱数生成装置およびプログラム - Google Patents

情報処理装置、擬似乱数生成装置およびプログラム Download PDF

Info

Publication number
JP5559018B2
JP5559018B2 JP2010267549A JP2010267549A JP5559018B2 JP 5559018 B2 JP5559018 B2 JP 5559018B2 JP 2010267549 A JP2010267549 A JP 2010267549A JP 2010267549 A JP2010267549 A JP 2010267549A JP 5559018 B2 JP5559018 B2 JP 5559018B2
Authority
JP
Japan
Prior art keywords
data
calculating
input
output
auxiliary
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.)
Expired - Fee Related
Application number
JP2010267549A
Other languages
English (en)
Other versions
JP2012119922A (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.)
Toshiba Corp
Original Assignee
Toshiba Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Toshiba Corp filed Critical Toshiba Corp
Priority to JP2010267549A priority Critical patent/JP5559018B2/ja
Publication of JP2012119922A publication Critical patent/JP2012119922A/ja
Application granted granted Critical
Publication of JP5559018B2 publication Critical patent/JP5559018B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Description

本発明の実施形態は、情報処理装置、擬似乱数生成装置およびプログラムに関する。
入力されたデータが誤差を含む場合がある認証システムでは、入力されたデータが所定の誤差範囲内であれば、認証に用いるための誤差のないデータ(認証データ)を計算することが要求される。
そのような計算を実現する技術として、ファジー・エクストラクタ(Fuzzy Extractor)とよばれる擬似乱数生成装置が知られている。
前述の入力されたデータが誤差を含む場合がある認証システムは、システム登録時に受け付けたデータを入力としてファジー・エクストラクタが出力する擬似乱数を認証データとする。そして、認証データを、ファジー・エクストラクタが擬似乱数と共に出力する補助データとともに記憶する。認証する際には、誤差を含む可能性がある入力データと補助データとをファジー・エクストラクタに入力して出力データを計算し、記憶した認証データと出力データとが一致する場合には認証要求を受理し、一致しない場合には棄却する。
Y.Dodis et al.,Fuzzy Extractors: How to Generate Strong Keys from Biometrics and Other Noisy Data. SIAM Journal on Computing Volume 38,Number 1,97-139,2008.
しかしながら、入力されたデータが誤差を含む場合がある認証システムにファジー・エクストラクタを用いる場合には、認証システムが記憶する出力データと補助データとから、入力データを復元することができないという問題がある。
実施形態の情報処理装置は、第1計算部、第2計算部および第3計算部を備える。第1計算部は、第1入力データに基づいて、第1出力データと、第1入力データとの誤差が第1範囲に含まれる第2入力データから第1出力データを計算するための第1補助データとを計算し、第1出力データおよび第1補助データのうち少なくとも1つと、第1入力データとに基づいて、第1出力データから第1入力データを計算するための第2補助データを計算する。第2計算部は、第2入力データと第1補助データとに基づいて第1出力データを計算する。第3計算部は、第1出力データと第2補助データとに基づいて第1入力データを計算する。
第1の実施形態にかかる情報処理装置のブロック図。 第1の実施形態における擬似乱数生成処理のフローチャート。 第1の実施形態における擬似乱数再現処理のフローチャート。 第1の実施形態における逆像計算処理のフローチャート。 第1の実施形態における擬似乱数生成処理のフローチャート。 第1の実施形態における逆像計算処理のフローチャート。 第2の実施形態にかかる情報処理装置のブロック図。 第2の実施形態における擬似乱数生成処理のフローチャート。 第2の実施形態における逆像計算処理のフローチャート。 第3の実施形態における情報処理装置のブロック図。 第3の実施形態における登録処理のフローチャート。 第3の実施形態における認証処理のフローチャート。 第3の実施形態における音声データ復元処理のフローチャート。 第1から第3の実施形態にかかる情報処理装置のハードウェア構成図。
以下に添付図面を参照して、この発明にかかる情報処理装置の好適な実施形態を詳細に説明する。
最初に、非特許文献1のファジー・エクストラクタの構成を説明する。ファジー・エクストラクタは、生成関数(非特許文献1の「Gen」)と再現関数(非特許文献1の「Rep」)の2つの関数からなる。生成関数は、第1入力データを受け付けて、出力データと補助データとを計算する関数である。再現関数は、第1入力データと第2入力データの誤差が所定の範囲内であるとき、第2入力データと補助データとを受け付けて、出力データを再現する関数である。
(第1の実施形態)
第1の実施形態では、生成関数Genと再現関数Repを利用して、擬似乱数の生成(生成部)、擬似乱数の再現(再現部)、および、入力データの復元(逆像計算部)を行う構成例を示す。非特許文献1の生成関数および再現関数と同等の機能を有する関数であれば、非特許文献1で開示されている生成関数および再現関数とは異なる関数を用いて本実施形態を構成しても良い。
図1は、第1の実施形態にかかる情報処理装置100の構成の一例を示すブロック図である。図1に示すように、情報処理装置100は、生成部110と、再現部120と、逆像計算部130とを備えている。生成部110、再現部120、および逆像計算部130は、別々の装置として構成されて、ネットワークを介して接続されても良いし、1つ以上の装置が同一の装置として構成されても良い。例えば、生成部110を、1つの擬似乱数生成装置として構成しても良い。
生成部110は、入出力部113と、第1計算部111とを備えている。入出力部113は、第1入力データを受け付ける受付部として機能し、さらに、第1出力データと第1補助データおよび第2補助データを出力する。
第1計算部111は、ファジー・エクストラクタの生成関数Genを計算するGen計算部111aと、第2補助データ計算部111bとを備えている。Gen計算部111aは、第1入力データから、第1出力データと第1補助データとを計算する。第2補助データ計算部111bは、第1出力データおよび第1補助データのうち少なくとも1つと第1入力データとから、第2補助データを計算する。第2補助データ計算部111bは、暗号化関数Encを計算する機能を備える。暗号化関数Enc(k,m)は、kを暗号化鍵として利用し、平文mを暗号化処理する関数である。暗号化関数Encとしては、例えばAES(Advanced Encryption Standard)やHierocryptなどの共通鍵暗号の他に、RSA暗号や楕円曲線暗号などを用いても良い。
再現部120は、入出力部122と、第2計算部121とを備えている。入出力部122は、第2入力データと第1補助データとを受け付け、第2出力データを出力する。第2計算部121は、ファジー・エクストラクタの再現関数Repを計算する機能を含み、第2入力データと第1補助データとから、第2出力データを計算する。
逆像計算部130は、入出力部132と、第3計算部131とを備えている。入出力部132は、第1出力データまたは第2出力データと、第2補助データとを受け付け、第3出力データを出力する。第3計算部131は、第1出力データまたは第2出力データと、第2補助データとから、第3出力データを計算する。第3計算部131は、生成部110の第2補助データ計算部111bが保持する暗号化関数Encに対応する復号関数Decを計算する機能を備える。
次に、このように構成された第1の実施形態にかかる情報処理装置100による擬似乱数生成処理について図2を用いて説明する。図2は、第1の実施形態における擬似乱数生成処理の全体の流れを示すフローチャートである。
生成部110の入出力部113は、第1入力データxを受け付ける(ステップS101)。次に、生成部110のGen計算部111aは、以下の(1)式に示すように、第1入力データxを生成関数Genに入力し、第1出力データyと第1補助データwを計算する(ステップS102)。
(y,w)=Gen(x)・・・(1)
生成部110の第2補助データ計算部111bは、第1入力データxと、(y,w)のうち計算に必要な成分とを用いて、以下の手順で第2補助データwを計算する。
第2補助データ計算部111bは、(y,w)の少なくとも1つから暗号化鍵kを計算する(ステップS103)。例えば、第2補助データ計算部111bは、第1出力データyまたは第1補助データwそのものであるビット列、第1出力データyと第1補助データwとを連結したビット列、または、第1出力データyと第1補助データwとを算術的に加算したビット列を求める。そして、暗号化関数が必要とする鍵長よりも求めたビット長が長い場合には、求めたビット列の部分列を暗号化鍵kとする。求めたビット列のビット長が鍵長よりも短い場合には0を付与するなどして必要な鍵長の暗号化鍵kを生成する。
第2補助データ計算部111bは、第1入力データxと暗号化鍵kを暗号化関数Encに入力して暗号化処理を行い、第2補助データw=Enc(k,x)を計算する(ステップS104)。入出力部113は、(y,w,w)を出力する(ステップS105)。
なお、後述する逆像計算部130が鍵kを保持する場合には、第2補助データ計算部111bが鍵kに対応する鍵kを保持するように構成しても良い。このとき、第2補助データ計算部111bは鍵kを暗号化鍵kとして用いても良い。このとき、暗号化関数Encが共通鍵暗号方式の関数である場合にはk=kであり、公開鍵暗号方式の関数である場合にはk≠kとなる。また、第2補助データ計算部111bは、鍵kと(y,w)の一部から暗号化鍵kを求めても良い。暗号化鍵kの計算に第1出力データyと第1補助データwの一方または両方を必要としない場合には、第2補助データ計算部111bには暗号化鍵kに必要な情報のみが入力されれば良い。
また、(y,w)の少なくとも1つから暗号化鍵kを計算する方法と、鍵kから暗号化鍵kを計算する方法とのうち、ユーザの指定などに応じて選択したいずれかの方法を用いて暗号化鍵kを計算するように構成しても良い。
次に、第1の実施形態にかかる情報処理装置100による擬似乱数再現処理について図3を用いて説明する。図3は、第1の実施形態における擬似乱数再現処理の全体の流れを示すフローチャートである。
再現部120の入出力部122は、第2入力データxと第1補助データwを受け付ける(ステップS201)。次に、再現部120の第2計算部121は、第2入力データxと第1補助データwとを再現関数Repに入力して第2出力データy=Rep(x,w)を計算する(ステップS202)。最後に再現部120の入出力部122は、第2出力データyを出力する(ステップS203)。
ここで、非特許文献1の生成関数Genと再現関数Repの性質から、第1入力データxと第2入力データxの誤差が所定の範囲(第1範囲)に収まるとき(所定の定数dに対して、第1入力データxと第2入力データxで異なるビットが高々dビットとなるなど)、第2出力データyは第1出力データyと等しい。
次に、第1の実施形態にかかる情報処理装置100による逆像計算処理について図4を用いて説明する。図4は、第1の実施形態における逆像計算処理の全体の流れを示すフローチャートである。
逆像計算部130の入出力部132は、第1出力データyと第1補助データwと第2補助データwとを受け付ける(ステップS301)。逆像計算部130の第3計算部131は、以下の手順で(y,w,w)から第3出力データyを計算する。
第3計算部131は、(y,w,w)から復号鍵kを計算する(ステップS302)。なお、前述したように逆像計算部130が鍵kを保持する場合には、第3計算部131は、鍵kから復号鍵kを計算しても良い。復号鍵kの計算方法は、生成部110の第2補助データ計算部111bが暗号化鍵kを求める計算方法と同様である。次に、逆像計算部130の第3計算部131は、第3出力データy=Dec(k,w)を計算する(ステップS303)。逆像計算部130の入出力部132は、第3出力データyを出力する(ステップS304)。
ここで、(y,w,w)が生成部110により第1入力データxから計算されたデータであるならば、第3出力データyは第1入力データxに一致する。
(変形例1)
変形例1の情報処理装置100は、前述の第1の実施形態と同様に生成部110と再現部120と逆像計算部130とを備えるが、以下の点のみが第1の実施形態と異なる。
第1の実施形態では、生成部110の第2補助データ計算部111bは暗号化関数Encを計算する機能を備え、逆像計算部130の第3計算部131は復号関数Decを計算する機能を備えていた。
変形例1では、生成部110の第2補助データ計算部111bと逆像計算部130の第3計算部131は、ハッシュ関数(ハッシュ関数族)を保持する。
次に、このように構成された第1の実施形態の変形例1にかかる情報処理装置100による擬似乱数生成処理について図5を用いて説明する。図5は、第1の実施形態における擬似乱数生成処理の全体の流れを示すフローチャートである。
ステップS401からステップS402までは図2のステップS101からステップS102までと同様であるため説明を省略する。
生成部110の第2補助データ計算部111bは、第1入力データxと、(y,w)のうち計算に必要な成分とを用いて、以下の手順で第2補助データwを計算する。
第2補助データ計算部111bは、(y,w)の少なくとも1つからハッシュ鍵kを計算する(ステップS403)。上述のように鍵kに対応する鍵kを保持する構成の場合は、鍵kからハッシュ鍵kを計算しても良い。第2補助データ計算部111bは、ハッシュ関数族に含まれる複数のハッシュ関数のうち、計算したハッシュ鍵kに対応するハッシュ関数Hを選択する(ステップS404)。
ハッシュ鍵の計算方法は、第1の実施形態における生成部110の暗号化鍵の計算方法と同様である。後述するように、第2補助データ計算部111bと逆像計算部130の第3計算部131とが予め同一のハッシュ関数Hを保持している場合には、ステップS403およびステップS404は省略されても良い。
第2補助データ計算部111bは、(y,w)の少なくとも1つをハッシュ関数H(・)に入力し、第1ハッシュデータhを計算する(ステップS405)。後述するように、逆像計算部130が鍵kを保持する場合には、対応する鍵kから第1ハッシュデータhを計算してもよい。次に、第2補助データ計算部111bは、第1入力データxと第1ハッシュデータhとから第2補助データw=h(*)xを計算する(ステップS406)。ここで、(*)は所定の二項演算であり、排他的論理和、または、第1ハッシュデータhを暗号化鍵として第1入力データxを暗号化する暗号演算などを用いる。
入出力部113は、(y,w,w)を出力する(ステップS407)。
次に、このように構成された第1の実施形態の変形例1にかかる情報処理装置100による逆像計算処理について図6を用いて説明する。図6は、第1の実施形態における逆像計算処理の全体の流れを示すフローチャートである。
ステップS501は図4のステップS301と同様であるため説明を省略する。逆像計算部130の第3計算部131は、以下の手順で(y,w,w)から第3出力データyを計算する。
第3計算部131は、(y,w)からハッシュ鍵kを計算する(ステップS502)。逆像計算部130が鍵kを保持する構成の場合には鍵kからハッシュ鍵kを計算しても良い。第3計算部131は、ハッシュ鍵kに基づきハッシュ関数Hを選択する(ステップS503)。ハッシュ鍵kの計算方法およびハッシュ関数Hの選択方法は、生成部110の第2補助データ計算部111bによるハッシュ鍵kの計算方法およびハッシュ関数Hの選択方法と同様である。
前述したとおり、逆像計算部130が予めハッシュ関数Hを保持している場合には、ステップS502およびステップS503は省略される。
次に、逆像計算部130の第3計算部131は、(y,w)の少なくとも1つをハッシュ関数H(・)に入力し、第2ハッシュデータhを計算する(ステップS504)。逆像計算部130が鍵kを保持し、前述したとおりに生成部110が鍵kを用いて第1ハッシュデータhを計算する場合には、逆像計算部130は、鍵kを用いて第2ハッシュデータ鍵hを計算してもよい。次に、第3計算部131は、第2補助データwと第2ハッシュデータhとから第3出力データy=h(@)wを計算する(ステップS505)。
ここで、(@)は前述の(*)に対応する二項演算である。なお、(@)は、(*)の出力から(*)の入力を演算するものであればどのような演算であっても良い。例えば、(*)が排他的論理和演算の場合には(@)も排他的論理和演算であり、(*)が暗号化演算である場合には(@)は復号演算である。
第3計算部131の入出力部132は、第3出力データyを出力する(ステップS506)。
ここで、(y,w,w)が生成部110により第1入力データxから計算されたデータであるならば、第3出力データyは第1入力データxに一致する。
このように、第1の実施形態にかかる情報処理装置では、擬似乱数(第1出力データ)を生成するときに入力データの復元に用いる補助データ(第2補助データ)を生成する。そして、逆像計算部により、第1出力データと第2補助データを入力として受け付けて第1入力データを復元することができる。
さらに、第1の実施形態にかかる情報処理装置では、(y,w)に依存して暗号化鍵kや第1ハッシュデータhが計算され、入力xごとに値が異なる。そのため、ある入力xに対応する暗号化鍵kや第1ハッシュデータhの情報が漏えいしたとしても、異なる入力x’に対応する暗号化鍵k’や第1ハッシュデータh’の情報は漏えいせず、安全性は保たれる。一般には、入力ごとに異なる暗号化鍵を用意して記憶する。第1の実施形態にかかる情報処理装置では、(y,w)に依存して暗号化鍵kや第1ハッシュデータhが計算することで暗号化鍵を個別に用意する必要がなく、記憶領域も削減することができる。
(第2の実施形態)
第1の実施形態に示した構成では、再現部120に入力される第2入力データが、第1入力データと所定の誤差の範囲にあるならば、再現部120は生成部110が出力する第1出力データを再現することができる。一方、逆像計算部130の入出力部132には第1出力データが入力されていた。
第2の実施形態では、逆像計算部の入出力部に与えられる入力が、生成部が出力する第1出力データと所定の誤差の範囲(第2範囲)にあるならば、生成部の入力を復元することを可能とする。
図7は、第2の実施形態にかかる情報処理装置200の構成の一例を示すブロック図である。図7に示すように、情報処理装置200は、生成部210と、再現部120と、逆像計算部230とを備えている。第1の実施形態と同様の機能を備える構成部は同一の符号を付し、ここでの説明は省略する。
第1の実施形態と同様に、生成部210、再現部120、および逆像計算部230の各部は別々の装置として構成されて、ネットワークを介して接続されても良いし、1つ以上の装置が同一の装置として構成されても良い。
生成部210は、入出力部213と、第1計算部211とを備えている。入出力部213は、第1入力データを受け付け、第1出力データと第1補助データと第2補助データと第3補助データとを出力する。
第1計算部211は、ファジー・エクストラクタの生成関数Genを計算するGen計算部211aと、第2補助データ計算部211bとを備えている。Gen計算部211aは、第1入力データから、第1出力データと第1補助データとを計算する。さらに、Gen計算部211aは、第1出力データおよび第1補助データの少なくとも1つから中間データ(以下、説明の便宜上、第3中間データという)と第3補助データとを計算する。
Gen計算部211aは、異なる生成関数Genを2種類保持し、前述の2種類の計算をそれぞれ異なるGenで計算しても良い。以下では同一の生成関数Genを用いて計算する構成例を説明する。
第2補助データ計算部211bは、第1の実施形態と同様に暗号化関数Encを計算する機能を備え、第1入力データと第3中間データとから、第2補助データを計算する。
逆像計算部230は、入出力部232と、第3計算部231とを備えている。入出力部232は、第1出力データまたは第2出力データ、第2補助データ、および、第3補助データを受け付け、第3出力データを出力する。
第3計算部231は、Rep計算部231aを備えている。Rep計算部231aは、生成部210のGen計算部211aと同様の生成関数Genに対応する再現関数Repを計算する機能を含む。第3計算部231は、第1出力データまたは第2出力データ、第2補助データ、および第3補助データから、第3出力データを計算する。第3計算部231は、前述の生成部210の第2補助データ計算部211bが保持する暗号化関数Encに対応する復号関数Decを保持する。
次に、このように構成された第2の実施形態にかかる情報処理装置200による擬似乱数生成処理について図8を用いて説明する。図8は、第2の実施形態における擬似乱数生成処理の全体の流れを示すフローチャートである。
ステップS601からステップS602までは、第1の実施形態にかかる情報処理装置100におけるステップS101からステップS102までと同様の処理なので、その説明を省略する。
生成部210のGen計算部211aは、以下の(3)式に示すように、第1出力データyを生成関数Genに入力し、第3中間データzと第3補助データwを計算する(ステップS603)。
(z,w)=Gen(y)・・・(3)
第2補助データ計算部211bは、第1入力データxと(z,w,w)のうち少なくとも第3中間データzおよび第3補助データwを含む成分を入力して、以下の手順で第2補助データwを計算する。
第2補助データ計算部211bは、(z,w,w)のうち少なくとも第3中間データzおよび第3補助データwを含む成分から、第1の実施形態と同様に暗号化鍵kを計算する(ステップS604)。なお、鍵kを保持する構成の場合には鍵kから暗号化鍵kを計算しても良い。
第2補助データ計算部211bは、第1入力データxと暗号化鍵kを暗号化関数Encに入力して暗号化処理を行い、第2補助データw=Enc(k,x)を計算する(ステップS605)。入出力部213は、(y,w,w,w)を出力する(ステップS606)。
再現部120の処理手順は、第1の実施形態の図3と同様であるため、説明を省略する。
次に、このように構成された第2の実施形態にかかる情報処理装置200による逆像計算処理について図9を用いて説明する。図9は、第2の実施形態における逆像計算処理の全体の流れを示すフローチャートである。
逆像計算部230の入出力部232は、第1出力データyと所定の誤差の範囲(第2範囲)内であることが期待される第3入力データxと第1補助データwと第2補助データwと第3補助データwとを受け付ける(ステップS701)。逆像計算部230の第3計算部231は、以下の手順で(x,w,w,w)から第3出力データyを計算する。
第3計算部231のRep計算部231aは、(x,w)を再現関数Repに入力して第4中間データz=Rep(x,w)を計算する(ステップS702)。第3入力データxが第1出力データyとの所定の誤差の範囲内にあれば、第4中間データzは第3中間データzに一致する。
第3計算部231は、第1の実施形態と同様に(z,w,w)のうち少なくとも第4中間データzおよび第3補助データwを含む成分から、第1の実施形態と同様に復号鍵kを計算する(ステップS703)。なお、逆像計算部230が鍵kを保持する構成の場合には鍵kから復号鍵kを計算しても良い。
次に、第3計算部231は、第3出力データy=Dec(k,w)を計算する(ステップS704)。入出力部232は、第3出力データyを出力する(ステップS705)。
ここで、(y,w,w,w)が生成部210により第1入力データxから計算されたデータであり、第3入力データxが第1出力データyと所定の誤差の範囲内にあるならば、第3出力データyは第1入力データxに一致する。
(変形例2)
第1の実施形態における変形例1と同様に、以下の変形例2を構成することができる。第2の実施形態における生成部210の第2補助データ計算部211bおよび逆像計算部230の第3計算部231が、暗号化関数および復号関数の代わりにハッシュ関数(族)を保持し、変形例1と同様の処理により第2補助データおよび第3出力データを計算する。
このように、第2の実施形態にかかる情報処理装置では、入力を復元するときに逆像計算部の入出力部に与えられる入力が、擬似乱数を生成するときに出力された出力データと所定の誤差の範囲にあれば、生成部の入力を復元することができる。
(第3の実施形態)
第3の実施形態では、第1の実施形態に示した構成の適用例として、音声認証システムの構成例を示す。前述した変形例1、第2の実施形態、変形例2を用いても、同様に音声認証システムを構成することができる。
図10は、第3の実施形態の音声認証システムを実現する情報処理装置300の構成の一例を示すブロック図である。図10に示すように、情報処理装置300は、登録処理部310と、認証処理部320と、音声復元部330と、入出力部301と、記憶部340と、を備えている。これらは、それぞれ個別の機器で構成されても良いし、1つ以上が同一の機器で構成されても良い。なお、第1の実施形態と同様の機能を備える構成部は同一の符号を付し、ここでの説明は省略する。
入出力部301は、登録用音声データ、認証用音声データ、登録要求、認証要求、および、音声復元要求を受け付け、登録結果、認証結果、および、登録音声を出力する。
登録処理部310は、第1の実施形態に示す生成部110を内部に保持し、登録用音声データを受け付けて、第1出力データ、第1補助データおよび第2補助データを出力する。
認証処理部320は、第1の実施形態に示す再現部120を内部に保持し、認証用音声データ、第1出力データおよび第1補助データを入力として受け付け、認証結果を出力する。
音声復元部330は、第1の実施形態に示す逆像計算部130を内部に保持し、第1出力データ、第1補助データおよび第2補助データを入力として、第3出力データを出力する。正常に動作する場合には、第3出力データは対応する登録用音声データに一致する。
記憶部340は、第1出力データ、第1補助データおよび第2補助データを保持する。これらの情報は利用者の識別情報とともに保持されても良い。
次に、このように構成された第3の実施形態にかかる情報処理装置300による登録処理について図11を用いて説明する。登録処理とは、登録用音声データから擬似乱数を生成して認証用データベースとして機能する記憶部340に登録する処理である。図11は、第3の実施形態における登録処理の全体の流れを示すフローチャートである。
情報処理装置300の入出力部301は、登録要求と登録用音声データ(第1入力データx)とを受け付ける(ステップS801)。登録処理部310は、登録用音声データを生成部110に入力し、第1出力データy、第1補助データwおよび第2補助データwを計算する(ステップS802)。ステップS802の処理は、図2と同様の処理により実現できる。
登録処理部310は、記憶部340に第1出力データy、第1補助データwおよび第2補助データwを記憶する(ステップS803)。ステップS801で利用者の識別情報が入力される場合には、ステップS803で識別情報を第1出力データyなどとともに記憶部340に保存しても良い。入出力部301は、登録完了通知を出力する(ステップS804)。
次に、このように構成された第3の実施形態にかかる情報処理装置300による認証処理について図12を用いて説明する。認証処理とは、認証用音声データおよび補助データから計算した出力データと、登録処理で記憶部340に保存した出力データ(第1出力データy)とを比較することにより、認証用音声データを認証する処理である。図12は、第3の実施形態における認証処理の全体の流れを示すフローチャートである。
情報処理装置300の入出力部301は、認証要求と認証用音声データ(第1入力データx)とを受け付ける(ステップS901)。認証処理部320は、記憶部340から第1出力データyと第1補助データwとを読み出す(ステップS902)。次に、認証処理部320は、認証用音声データと第1補助データwとを再現部120に入力し、第2出力データyを計算する(ステップS903)。認証処理部320は、第1出力データyと第2出力データyが一致するか否かを検査する(ステップS904)。
検査結果が一致する場合(ステップS904:Yes)、入出力部301は認証に合格したことを表す情報を出力する(ステップS905)。検査結果が一致しない場合(ステップS904:No)、入出力部301は認証に合格しなかったことを表す情報を出力する(ステップS906)。
次に、このように構成された第3の実施形態にかかる情報処理装置300による音声データ復元処理について図13を用いて説明する。音声データ復元処理とは、登録処理で出力されたデータ(第1出力データ等)から、登録用音声データを復元する処理である。図13は、第3の実施形態における音声データ復元処理の全体の流れを示すフローチャートである。
情報処理装置300の入出力部301は、音声復元要求を受け付ける(ステップS1001)。音声復元部330は、記憶部340から第1出力データy、第1補助データwおよび第2補助データwを読み出す(ステップS1002)。次に、音声復元部330は、第1出力データy、第1補助データwおよび第2補助データwを逆像計算部130に入力し、第3出力データyを計算する(ステップS1003)。入出力部301は、第3出力データyを出力する(ステップS1004)。
認証用データベース(記憶部340)に保持されるデータは、第1出力データ、第1補助データおよび第2補助データである。音声復元部330は、これらのデータから登録用音声データを復元することができる。しかし、音声復元部330を備えない機器は、これらのデータから登録用音声データを復元することはできない。そのため、記憶部340の管理者の不注意や、記憶部340に不正アクセスが試みられた場合に、記憶部340の保持するデータが漏洩したとしても、登録用音声データは保護される。したがって、登録用音声データに関わるキーフレーズや声紋の情報は保護される。
このように、第3の実施形態では、上記実施形態に示した構成を適用した音声認証システムを実現することができる。
以上説明したとおり、第1から第3の実施形態によれば、擬似乱数を生成するときに、出力データから入力データを計算(復元)するためのデータ(第2補助データ)を計算し、第2補助データと出力データとから入力データを計算することができる。これにより、擬似乱数を生成したときの入力データを復元することが可能となる。例えば、上記各実施形態の情報処理装置を、ファジー・エクストラクタを用いた認証システムに適用すれば、認証システムが記憶する生体情報に固有なデータから、生体情報を復元することができるようになる。
第1から第3の実施形態に係る発明が適用される場面の一例を説明する。生体情報を用いた認証システムは、上述のとおり、生体情報を読み込み、生体情報に特徴的なデータを計算して認証処理を行う。このとき、以下の2点が要求される。
(1)例えば、生体情報として発話を用いる場合には、発話の速度や声の大小などが一定ではないことや周囲の雑音などにより、読み込まれる生体情報に誤差が含まれる。そのため、生体情報を用いた認証システムでは、入力された生体情報が所定の誤差範囲内であれば、生体情報に固有のデータを出力することが要求される。
(2)生体情報には、発話のほかにも、指紋や虹彩など人間固有の情報が用いられる。しかし、生体情報には、他者の生体情報と類似する点も多く含まれる。一方、認証に用いる生体情報に特徴的なデータは、誤認証を減らすためにも、生体情報に対して一様に定められることが望ましい。理想的には、生体情報に特徴的なデータとしては、生体情報ごとに異なるデータを用いることが望ましい。
生体情報を用いた認証システムにファジー・エクストラクタを用いる場合には、認証システムが記憶する生体情報に固有なデータと補助データとから、生体情報を復元することができない。例えば、発話を用いた認証システムでは、利用者が発話内容や話し方を忘れたとき、認証システムが記憶する情報からそれらを復元することはできない。しかし、第1から第3の実施形態の方法によれば、認証システムが記憶する生体情報に固有なデータから、生体情報を復元することができる。したがって、例えば、発話を用いた認証システムにおいて、利用者が発話内容や話し方を忘れたとき、認証システムが記憶する情報からそれらを復元できるため、認証システムへの再登録や過去の登録状況の消去などが不要となる。
次に、第1から第3の実施形態にかかる情報処理装置のハードウェア構成について図14を用いて説明する。図14は、第1から第3の実施形態にかかる情報処理装置のハードウェア構成を示す説明図である。
第1から第3の実施形態にかかる情報処理装置は、CPU(Central Processing Unit)51などの制御装置と、ROM(Read Only Memory)52やRAM(Random Access Memory)53などの記憶装置と、ネットワークに接続して通信を行う通信I/F54と、各部を接続するバス61を備えている。
第1から第3の実施形態にかかる情報処理装置で実行されるプログラムは、ROM52等に予め組み込まれて提供される。
第1から第3の実施形態にかかる情報処理装置で実行されるプログラムは、インストール可能な形式又は実行可能な形式のファイルでCD−ROM(Compact Disk Read Only Memory)、フレキシブルディスク(FD)、CD−R(Compact Disk Recordable)、DVD(Digital Versatile Disk)等のコンピュータで読み取り可能な記録媒体に記録してコンピュータプログラムプロダクトとして提供されるように構成しても良い。
さらに、第1から第3の実施形態にかかる情報処理装置で実行されるプログラムを、インターネット等のネットワークに接続されたコンピュータ上に格納し、ネットワーク経由でダウンロードさせることにより提供するように構成しても良い。また、第1から第3の実施形態にかかる情報処理装置で実行されるプログラムをインターネット等のネットワーク経由で提供または配布するように構成しても良い。
第1から第3の実施形態にかかる情報処理装置で実行されるプログラムは、コンピュータを前述した情報処理装置の各部(生成部等)として機能させうる。このコンピュータは、CPU51がコンピュータ読取可能な記憶媒体からプログラムを主記憶装置上に読み出して実行することができる。
なお、本実施形態は、上記実施形態そのままに限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を変形して具体化することができる。また、上記実施形態に開示されている複数の構成要素の適宜な組み合わせにより、種々の発明を形成することができる。例えば、実施形態に示される全構成要素からいくつかの構成要素を削除しても良い。さらに、異なる実施形態にわたる構成要素を適宜組み合わせても良い。
100、200、300 情報処理装置
110、210 生成部
111、211 第1計算部
111a、211a Gen計算部
111b、211b 第2補助データ計算部
113、213 入出力部
120 再現部
121 第2計算部
122 入出力部
130、230 逆像計算部
131、231 第3計算部
132、232 入出力部
231a Rep計算部
301 入出力部
310 登録処理部
320 認証処理部
330 音声復元部
340 記憶部

Claims (4)

  1. 第1入力データを受付ける受付部と、
    前記第1入力データに基づいて、第1出力データと、前記第1入力データとの誤差が予
    め定められた第1範囲に含まれる第2入力データから前記第1出力データを計算するため
    の第1補助データとを計算し、前記第1出力データおよび前記第1補助データのうち少な
    くとも1つと、前記第1入力データとに基づいて、前記第1出力データから前記第1入力
    データを計算するための第2補助データを計算する第1計算部と、
    前記第2入力データと前記第1補助データとに基づいて前記第1出力データを計算する
    第2計算部と、
    前記第1出力データと前記第2補助データとに基づいて前記第1入力データを計算する
    第3計算部と、
    を備え、
    前記第1計算部は、複数のハッシュ関数のうち、前記第1出力データおよび前記第1補
    助データのうち少なくとも1つに応じて定められる前記ハッシュ関数を選択し、選択され
    た前記ハッシュ関数と前記第1入力データとに基づいて前記第2補助データを計算し、
    前記第3計算部は、複数の前記ハッシュ関数のうち、前記第1出力データおよび前記第
    1補助データのうち少なくとも1つに応じて定められる前記ハッシュ関数を選択し、選択
    されたハッシュ関数と前記第2補助データとに基づいて前記第1入力データを計算する
    とを特徴とする情報処理装置。
  2. 第1入力データを受付ける受付部と、
    前記第1入力データに基づいて、第1出力データと、前記第1入力データとの誤差が予
    め定められた第1範囲に含まれる第2入力データから前記第1出力データを計算するため
    の第1補助データとを計算し、前記第1出力データおよび前記第1補助データのうち少な
    くとも1つと、前記第1入力データとに基づいて、前記第1出力データから前記第1入力
    データを計算するための第2補助データを計算する第1計算部と、
    前記第2入力データと前記第1補助データとに基づいて前記第1出力データを計算する
    第2計算部と、
    前記第1出力データと前記第2補助データとに基づいて前記第1入力データを計算する
    第3計算部と、
    を備え、
    前記第1計算部は、前記第1出力データおよび前記第1補助データのうち少なくとも1
    つに基づいて、前記第1入力データを暗号化するための暗号化鍵を計算し、前記暗号化鍵
    によって前記第1入力データを暗号化した前記第2補助データを計算し、
    前記第3計算部は、前記第1出力データおよび前記第1補助データのうち少なくとも1
    つに基づいて、前記第2補助データを復号するための復号鍵を計算し、前記復号鍵によっ
    て前記第2補助データを復号した前記第1入力データを計算
    さらに、
    前記第1計算部は、前記第1出力データとの誤差が予め定められた第2範囲内の第3入
    力データから前記第1入力データを計算するための第3補助データをさらに計算し、前記
    第1出力データおよび前記第3補助データのうち少なくとも1つと、前記第1入力データ
    とに基づいて前記第2補助データを計算し、
    前記第3計算部は、前記第3入力データと前記第3補助データとから、前記第1出力デ
    ータを計算し、計算した前記第1出力データと前記第2補助データとに基づいて前記第1
    入力データを計算することを特徴とする情報処理装置。
  3. 外部装置と接続された擬似乱数生成装置であって、
    第1入力データを受付ける受付部と、
    前記第1入力データに基づいて、第1出力データと、前記第1入力データとの誤差が予
    め定められた第1範囲に含まれる第2入力データから前記第1出力データを計算するため
    の第1補助データとを計算し、前記第1出力データおよび前記第1補助データのうち少な
    くとも1つと、前記第1入力データとに基づいて、前記第1出力データから前記第1入力
    データを計算するための第2補助データを計算する第1計算部と、
    を備え、
    前記外部装置は、
    前記第2入力データと前記第1補助データとに基づいて前記第1出力データを計算する
    第2計算部と、
    前記第1出力データと前記第2補助データとに基づいて前記第1入力データを計算する
    第3計算部と、を備え、
    前記第1計算部は、複数のハッシュ関数のうち、前記第1出力データおよび前記第1補
    助データのうち少なくとも1つに応じて定められる前記ハッシュ関数を選択し、選択され
    た前記ハッシュ関数と前記第1入力データとに基づいて前記第2補助データを計算し、
    前記第3計算部は、複数の前記ハッシュ関数のうち、前記第1出力データおよび前記第
    1補助データのうち少なくとも1つに応じて定められる前記ハッシュ関数を選択し、選択
    されたハッシュ関数と前記第2補助データとに基づいて前記第1入力データを計算するこ
    を特徴とする擬似乱数生成装置。
  4. 外部装置と接続されたコンピュータを、
    第1入力データを受付ける受付部と、
    前記第1入力データに基づいて、第1出力データと、前記第1入力データとの誤差が予
    め定められた第1範囲に含まれる第2入力データから前記第1出力データを計算するため
    の第1補助データとを計算し、前記第1出力データおよび前記第1補助データのうち少な
    くとも1つと、前記第1入力データとに基づいて、前記第1出力データから前記第1入力
    データを計算するための第2補助データを計算する第1計算部
    として機能させるためのプログラムであって、
    前記外部装置は、
    前記第2入力データと前記第1補助データとに基づいて前記第1出力データを計算する
    第2計算部と、
    前記第1出力データと前記第2補助データとに基づいて前記第1入力データを計算する
    第3計算部と、を備え、
    前記第1計算部は、複数のハッシュ関数のうち、前記第1出力データおよび前記第1補
    助データのうち少なくとも1つに応じて定められる前記ハッシュ関数を選択し、選択され
    た前記ハッシュ関数と前記第1入力データとに基づいて前記第2補助データを計算し、
    前記第3計算部は、複数の前記ハッシュ関数のうち、前記第1出力データおよび前記第
    1補助データのうち少なくとも1つに応じて定められる前記ハッシュ関数を選択し、選択
    されたハッシュ関数と前記第2補助データとに基づいて前記第1入力データを計算するこ
    を特徴とするプログラム。
JP2010267549A 2010-11-30 2010-11-30 情報処理装置、擬似乱数生成装置およびプログラム Expired - Fee Related JP5559018B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2010267549A JP5559018B2 (ja) 2010-11-30 2010-11-30 情報処理装置、擬似乱数生成装置およびプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2010267549A JP5559018B2 (ja) 2010-11-30 2010-11-30 情報処理装置、擬似乱数生成装置およびプログラム

Publications (2)

Publication Number Publication Date
JP2012119922A JP2012119922A (ja) 2012-06-21
JP5559018B2 true JP5559018B2 (ja) 2014-07-23

Family

ID=46502286

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2010267549A Expired - Fee Related JP5559018B2 (ja) 2010-11-30 2010-11-30 情報処理装置、擬似乱数生成装置およびプログラム

Country Status (1)

Country Link
JP (1) JP5559018B2 (ja)

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000092046A (ja) * 1998-09-11 2000-03-31 Mitsubishi Electric Corp 遠隔認証システム
JP4035271B2 (ja) * 1999-12-27 2008-01-16 キヤノン株式会社 情報発信装置及び情報受信装置及びそれらの制御方法及び記憶媒体及びシステム
JP2005293490A (ja) * 2004-04-05 2005-10-20 Hitachi Ltd 生体認証システム

Also Published As

Publication number Publication date
JP2012119922A (ja) 2012-06-21

Similar Documents

Publication Publication Date Title
US8509449B2 (en) Key protector for a storage volume using multiple keys
US10270588B2 (en) Method and system for additive homomorphic encryption scheme with operation error detection functionality
US8804954B2 (en) Secure method for reconstructing a reference measurement of a confidential datum on the basis of a noisy measurement of this datum, notably for the generation of cryptographic keys
EP3644544A1 (en) Method for comparing ciphertext using homomorphic encryption and apparatus for executing thereof
JP6451938B2 (ja) 暗号文照合システム、方法、およびプログラム
EP3637674A1 (en) Computer system, secret information verification method, and computer
JP6142704B2 (ja) 秘匿データ照合装置、秘匿データ照合プログラムおよび秘匿データ照合方法
KR101913644B1 (ko) 메시지 인증이 가능한 부호 기반 암호화 장치 및 방법
JP2007114494A (ja) 秘匿計算方法及び装置
KR102035249B1 (ko) 생체 정보를 이용한 암호화 키 생성 장치 및 방법
KR102132685B1 (ko) 순서 노출 암호화를 위한 장치 및 방법
JP5559018B2 (ja) 情報処理装置、擬似乱数生成装置およびプログラム
CN112631552B (zh) 基于不均匀随机源的随机数生成、再生方法及电子装置
JP5596612B2 (ja) 復号制御システム、および復号制御方法
KR102122773B1 (ko) 복원가능 기능을 가지는 리댁터블 서명 시스템 및 방법
JP4891844B2 (ja) 署名フォーマット変換装置と事前処理装置と署名検証装置、及び署名フォーマット変換方法とプログラムとその記憶媒体
KR20140028233A (ko) 중국인 나머지 정리에 기반한 준동형 암복호화 방법 및 이를 이용한 장치
JP2015154291A (ja) デバイス固有情報生成装置及びデバイス固有情報生成システムとデバイス固有情報生成方法
CN115668334A (zh) 隐匿信息处理系统、加密装置、加密方法和加密程序
US20200358604A1 (en) Apparatus and method for sharing data
JP6598259B2 (ja) デバイス固有情報生成装置及びデバイス固有情報生成システムとデバイス固有情報生成方法
US11522675B2 (en) Apparatus and method for encryption and decryption based on tweak converter to which key table is applied
KR102236242B1 (ko) 퍼지 추출기를 이용한 공개값 생성 방법 및 그 공개값과 2차 입력값을 입력받아 비밀키를 생성하는 방법
JP2005202048A (ja) 暗号通信システム、そのシステムに使用される暗号装置および復号装置、暗号化方法および復号化方法、暗号化プログラムおよび復号化プログラム、ならびに記録媒体
JP6059160B2 (ja) シェア変換システム、シェア変換方法、プログラム

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20130529

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20130611

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20140107

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20140404

A911 Transfer to examiner for re-examination before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20140411

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20140605

LAPS Cancellation because of no payment of annual fees