JP5573293B2 - Authentication device, encryption device, token device, authentication method, and authentication program - Google Patents
Authentication device, encryption device, token device, authentication method, and authentication program Download PDFInfo
- Publication number
- JP5573293B2 JP5573293B2 JP2010078569A JP2010078569A JP5573293B2 JP 5573293 B2 JP5573293 B2 JP 5573293B2 JP 2010078569 A JP2010078569 A JP 2010078569A JP 2010078569 A JP2010078569 A JP 2010078569A JP 5573293 B2 JP5573293 B2 JP 5573293B2
- Authority
- JP
- Japan
- Prior art keywords
- public key
- encryption
- authentication
- user
- encrypted
- 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
Links
- 238000000034 method Methods 0.000 title claims description 73
- 238000012795 verification Methods 0.000 claims description 19
- 230000005540 biological transmission Effects 0.000 claims description 18
- 230000006870 function Effects 0.000 description 38
- 238000012545 processing Methods 0.000 description 30
- 230000003287 optical effect Effects 0.000 description 22
- 238000010586 diagram Methods 0.000 description 11
- 238000004364 calculation method Methods 0.000 description 8
- 230000004044 response Effects 0.000 description 8
- 239000007787 solid Substances 0.000 description 3
- 238000004458 analytical method Methods 0.000 description 2
- 210000000554 iris Anatomy 0.000 description 2
- 238000004519 manufacturing process Methods 0.000 description 2
- 210000003462 vein Anatomy 0.000 description 2
- 238000004891 communication Methods 0.000 description 1
- 238000012790 confirmation Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 210000000887 face Anatomy 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
Images
Landscapes
- Collating Specific Patterns (AREA)
Description
本発明は、情報を認証する認証装置、暗号化装置、トークンデバイス、認証方法、および認証プログラムに関する。 The present invention relates to an authentication device, an encryption device, a token device, an authentication method, and an authentication program for authenticating information.
近年、社会において様々なシステムを用いる場合に、利用者が正規のユーザであることを認証する必要がある局面が多い。認証を行う際には、個人ごとに固有の情報である生体認証を利用した方式が普及している。生体認証の対象としては、指紋・静脈・虹彩・顔・音声などである。また、生体情報は、個人に関する機密情報のため、暗号化することが好ましい。このとき、準同型暗号を使用して、暗号化された状態にて、生体情報の一致判定をする技術が開示されている(たとえば、下記特許文献1を参照。)。 In recent years, when various systems are used in society, there are many situations where it is necessary to authenticate that a user is an authorized user. When performing authentication, a method using biometric authentication, which is unique information for each individual, has become widespread. Biometric authentication targets include fingerprints, veins, irises, faces, and voices. Moreover, since biometric information is confidential information regarding an individual, it is preferable to encrypt it. At this time, there is disclosed a technique for performing biometric information matching determination in an encrypted state using homomorphic encryption (for example, see Patent Document 1 below).
特許文献1は、少なくとも2つのデータの類似性の指標を暗号化された状態で計算する方法およびシステムに関するものである。確認方法として、認証装置は、生体情報を示すビットシーケンスX=(x1、・・・、xn)と、認証を行う際の生体情報を示すビットシーケンスY=(y1、・・・、yn)に対して、共通の公開鍵pkで暗号化したデータEpk(X)、Epk(Y)を用意する。この際Eは、下記準同型性を満たす、Paillier暗号やEl Gamal暗号を用いる。 Patent Document 1 relates to a method and system for calculating an index of similarity between at least two data in an encrypted state. As a confirmation method, the authentication apparatus uses a bit sequence X = (x1,..., Xn) indicating biometric information and a bit sequence Y = (y1,..., Yn) indicating biometric information when performing authentication. On the other hand, data Epk (X) and Epk (Y) encrypted with a common public key pk are prepared. At this time, E uses a Palier cipher or an El Gamal cipher that satisfies the following homomorphism.
E(x+y)=E(x)E(y) E (x + y) = E (x) E (y)
続けて、認証装置が、ハミング距離dH(X、Y)が一定値T以下かをEpk(dH(X、Y))を準同型性の性質に基づいて式を変形し、さらに、非特許文献1によるセキュア計算によって、生体情報を暗号化した状態で判断する。 Subsequently, the authentication device modifies the equation based on the homomorphic property of Epk (dH (X, Y)) whether the Hamming distance dH (X, Y) is equal to or less than a certain value T, and Judgment is made in a state where the biometric information is encrypted by secure calculation according to 1.
しかしながら、上述した従来技術において、特許文献1の認証システムでは、秘密鍵skは、システム設計者、運用者によって管理される。したがって、特許文献1の認証システムは、ユーザの関与しないところで秘密鍵skが漏えいする可能性があるという問題があった。 However, in the prior art described above, in the authentication system of Patent Document 1, the secret key sk is managed by the system designer and the operator. Therefore, the authentication system of Patent Document 1 has a problem that the secret key sk may be leaked without the user's involvement.
また、暗号化された生体情報が漏えいした場合、第三者が、その情報を用いて正規のユーザになりすますことが可能である。そこで、生体情報の再登録を行うことで、漏えいした生体情報を無効にする必要がある。しかし、漏えいした生体情報Xと、再登録した生体情報X’によるハミング距離dH(X、X’)は閾値Tより小さい。したがって、生体情報の再登録を行っても、漏えいした生体情報Xで認証に成功してしまう。このことから、暗号化された生体情報でも、一旦漏えいしてしまうと、その後、なりすましを防ぐことは困難になるという問題があった。 Further, when the encrypted biometric information is leaked, a third party can use the information to impersonate a legitimate user. Therefore, it is necessary to invalidate the leaked biometric information by re-registering the biometric information. However, the Hamming distance dH (X, X ′) based on the leaked biological information X and the re-registered biological information X ′ is smaller than the threshold T. Therefore, even if the biometric information is re-registered, the authentication is successful with the leaked biometric information X. For this reason, even if encrypted biometric information is once leaked, there is a problem that it is difficult to prevent spoofing thereafter.
本発明は、上述した従来技術による問題点を解消するため、暗号化された生体情報が漏えいしても、秘密鍵と生体情報を漏えいしない暗号化装置、トークンデバイス、認証システム、暗号化方法、および暗号化プログラムを提供することを目的とする。 In order to solve the above-described problems caused by the prior art, the present invention provides an encryption device, a token device, an authentication system, an encryption method, which does not leak a secret key and biometric information even if encrypted biometric information leaks. And to provide an encryption program.
上述した課題を解決し、目的を達成するため、開示の認証装置は、暗号化装置から準同型暗号による暗号化情報を受信し、認証を行う認証装置であって、暗号化装置から、利用者の公開鍵を用いて準同型暗号によって暗号化された生体情報と、利用者の識別情報と、利用者の公開鍵とを受信し、利用者の識別情報と、利用者の公開鍵を用いて準同型暗号によって暗号化された利用者の生体情報と、利用者の公開鍵とを利用者ごとに対応づけて記憶するデータベースから、受信手段によって受信された識別情報に基づいて、データベースに記憶されている公開鍵と暗号化された生体情報とを検索し、検索された公開鍵と暗号化された生体情報と、受信した公開鍵と暗号化された生体情報とを基に利用者の認証を行うことを要件とする。 In order to solve the above-described problems and achieve the object, the disclosed authentication device receives authentication information by homomorphic encryption from the encryption device, and performs authentication, from the encryption device to the user. The biometric information encrypted by homomorphic encryption using the public key, the user identification information, and the user public key are received, and the user identification information and the user public key are used. Based on the identification information received by the receiving means from the database that stores the biometric information of the user encrypted by the homomorphic encryption and the public key of the user for each user, the information is stored in the database. The public key and the encrypted biometric information are searched, and the user is authenticated based on the searched public key and the encrypted biometric information, and the received public key and the encrypted biometric information. It is a requirement to do.
本認証装置、暗号化装置、トークンデバイス、認証方法、および認証プログラムによれば、暗号化された生体情報が漏えいしても、異なる公開鍵による暗号化された生体情報を登録でき、秘密鍵と生体情報を漏えいしないことができるという効果を奏する。 According to the authentication device, encryption device, token device, authentication method, and authentication program, even if the encrypted biometric information leaks, the biometric information encrypted with a different public key can be registered. There is an effect that biological information can not be leaked.
以下に添付図面を参照して、本発明にかかる認証装置、暗号化装置、トークンデバイス、認証方法、および認証プログラムの好適な実施の形態を詳細に説明する。 Exemplary embodiments of an authentication device, an encryption device, a token device, an authentication method, and an authentication program according to the present invention will be described below in detail with reference to the accompanying drawings.
図1は、本実施の形態にかかる認証システム100を示すブロック図である。認証システム100は、認証装置101と、暗号化装置103と、トークンデバイス104と、で構成する。サービス102は、認証システム100によって認証成功した際に暗号化装置103にアクセスされる。認証装置101とサービス102と暗号化装置103とは、ネットワーク105にてそれぞれ接続されている。暗号化装置103は、生体情報読取デバイス106と、トークン読取デバイス107が接続されている。認証装置101の内部には、暗号化生体情報テーブル108が存在する。
FIG. 1 is a block diagram showing an
認証システム100は、利用者がサービス102を利用する際の認証処理を司る。アクセスを行った利用者が正規のユーザか否かを確認し、正規のユーザであれば認証し、暗号化装置103がサービス102に接続する許可をする。
The
認証装置101は、利用者がサービス102を利用する際の認証処理を行う。具体的には、たとえば、認証装置101は、登録時点の準同型暗号によって暗号化された生体情報と、アクセスを行った利用者の生体情報が一致するか否かを確認する。
The
サービス102は、ソフトウェアの機能を、ネットワーク105を経由して提供する。具体的には、たとえば、認証システム100が銀行が提供するサービスに対する認証システムである場合、暗号化装置103は、認証成功後、サービス102を構築している銀行のサーバ群に接続する。サーバ群は、利用者に対して、預金の入出金管理、振り込み等を行う機能を、ネットワーク105を経由して提供する。
The
暗号化装置103は、利用者の生体情報とトークンデバイス104から情報を取得し、生体情報を暗号化して認証装置101に送信する。また、認証成功後には、サービス102から提供されるソフトウェアの操作を行う。暗号化装置103の具体例としては、たとえば、銀行でのATM(Automated Teller Machine)である。
The
トークンデバイス104は、認証処理の助けとなる物理デバイスである。具体的には、情報の記憶、演算を行うための集積回路を組み込んだスマートカードなどである。トークンデバイス104の実装は、暗号方式によって様々な形態がある。たとえば、実装の1つとして、トークンデバイス104はユーザの識別番号を記録し、認証時にユーザの識別番号を出力する形式であってもよい。
The
ネットワーク105は、LAN(Local Area Network)、WAN(Wide Area Network)、インターネットなどの通信網である。または、セキュリティ強固のために、ネットワーク105は、専用回線であってもよい。
The
生体情報読取デバイス106は、利用者の生体情報を、デジタル情報として取り込むためのデバイスである。また、トークン読取デバイス107は、トークンデバイス104を読み取るためのデバイスである。たとえば、トークンデバイス104がスマートカードであればカードリーダとなる。
The biometric
(暗号化装置103のハードウェア構成)
図2は、暗号化装置103のハードウェア構成を示すブロック図である。図2において、暗号化装置103は、CPU(Central Processing Unit)201と、ROM(Read‐Only Memory)202と、RAM(Random Access Memory)203と、を備えている。また、記憶装置として暗号化装置103は、磁気ディスクドライブ204と、磁気ディスク205と、光ディスクドライブ206と、光ディスク207と、を備えている。また、ユーザやその他の機器との入出力装置として暗号化装置103は、ディスプレイ208と、I/F(Interface)209と、キーボード210と、マウス211と、スキャナ212と、カードリーダ213と、を備えている。また、各構成部はバス200によってそれぞれ接続されている。
(Hardware configuration of encryption apparatus 103)
FIG. 2 is a block diagram illustrating a hardware configuration of the
ここで、CPU201は、暗号化装置の全体の制御を司る。ROM202は、ブートプログラムなどのプログラムを記憶している。RAM203は、CPU201のワークエリアとして使用される。磁気ディスクドライブ204は、CPU201の制御にしたがって磁気ディスク205に対するデータのリード/ライトを制御する。磁気ディスク205は、磁気ディスクドライブ204の制御で書き込まれたデータを記憶する。
Here, the
光ディスクドライブ206は、CPU201の制御にしたがって光ディスク207に対するデータのリード/ライトを制御する。光ディスク207は、光ディスクドライブ206の制御で書き込まれたデータを記憶したり、光ディスク207に記憶されたデータをコンピュータに読み取らせたりする。
The
ディスプレイ208は、カーソル、アイコンあるいはツールボックスをはじめ、文書、画像、機能情報などのデータを表示する。このディスプレイ208は、たとえば、CRT、TFT液晶ディスプレイ、プラズマディスプレイなどを採用することができる。 The display 208 displays data such as a document, an image, and function information as well as a cursor, an icon, or a tool box. As the display 208, for example, a CRT, a TFT liquid crystal display, a plasma display, or the like can be adopted.
I/F209は、ネットワーク105を介して認証装置101などの他の装置に接続される。そして、I/F209は、ネットワーク105と内部のインターフェースを司り、外部装置からのデータの入出力を制御する。I/F209には、たとえばモデムやLANアダプタなどを採用することができる。
The I /
キーボード210は、文字、数字、各種指示などの入力のためのキーを備え、データの入力を行う。また、キーボード210は、タッチパネル式の入力パッドやテンキーなどであってもよい。マウス211は、カーソルの移動や範囲選択、あるいはウィンドウの移動やサイズの変更などを行う。マウス211はポインティングデバイスとして同様に機能を備えるものであれば、トラックボールやジョイスティックなどであってもよい。
The
スキャナ212は、生体情報読取デバイス106の一つの例であり、生体情報を光学的方法、電圧などで読み取り、暗号化装置103内にたとえば画像データを取り込む。取り込む生体情報としては、指紋、静脈等である。また、虹彩、顔を生体情報とする場合には、生体情報読取デバイス106としてカメラを採用し、画像データとして取り込んでもよい。また、音声を生体情報とする場合には、生体情報読取デバイス106としてマイクを採用し、音声データとして取り込んでもよい。
The
カードリーダ213は、トークン読取デバイス107の一つの例であり、トークンデバイス104がスマートカードであることを想定した際のデバイスである。カードリーダ213は、トークンデバイス104を読み取り、暗号化装置103内にユーザ識別子情報等を取り込む。
The
(認証システム100の機能的構成)
次に、認証システム100の機能的構成について説明する。図3は、認証システム100の機能的構成を示すブロック図である。暗号化装置103は、取得部301と、暗号化部302と、送信部303と、受信部307と、生成指示部308と、復号指示部312と、判断部315と、署名生成指示部316と、署名検証部318と、を含む構成である。トークンデバイス104は、生成部309、送信部310と、取得部313と、復号部314と、署名生成部317と、記憶部319と、判断部320と、を含む構成である。認証装置101は、受信部304と、検索部305と、実行部306と、更新部311と、を含む構成である。
(Functional configuration of authentication system 100)
Next, a functional configuration of the
暗号化装置103での制御部となる機能(取得部301〜署名検証部318)は、具体的には、たとえば、記憶装置に記憶されたプログラムをCPU201が実行することにより、その機能を実現する。記憶装置とは、図2に示したROM202、RAM203、磁気ディスク205、光ディスク207などである。または、I/F209を経由して他のCPUが実行することにより、その機能を実現してもよい。
Specifically, the functions (
同様に、トークンデバイス104での制御部となる機能(生成部309〜署名生成部317、判断部320)も、具体的には、たとえば、記憶装置に記憶されたプログラムをトークンデバイス104のCPUが実行することにより、その機能を実現する。記憶装置とは、トークンデバイス104に内蔵されているROM、RAM、フラッシュROMなどである。または、外部の装置が制御部となる機能を実行した後に、トークンデバイス104は、実行された結果を格納する状態であってもよい。
Similarly, the functions (the generation unit 309 to the
同様に、認証装置101での制御部となる機能(受信部304〜実行部306、更新部311)も、具体的には、たとえば、記憶装置に記憶されたプログラムを認証装置101のCPUが実行することにより、その機能を実現する。記憶装置とは、認証装置101に内蔵されているROM、RAM、磁気ディスク、光ディスクなどである。または、ネットワーク105を経由して他のCPUが実行することにより、その機能を実現してもよい。
Similarly, the functions (
また、各機能を結ぶ線分の種別として、実線の矢印で示す処理順序は、認証システム100における認証処理の処理順序を示している。具体的には、取得部301、暗号化部302、送信部303、受信部304、検索部305、実行部306、受信部307、判断部315までの一連の処理が、認証処理の処理順序となる。また、認証装置101は、検索部305にて暗号化生体情報テーブル108にアクセスする。また認証システム100は、取得部301の処理が実行される際に、トークンデバイス104によって記憶部319と、判断部320の機能を実行する。
In addition, the processing order indicated by solid arrows as the types of line segments that connect the functions indicates the processing order of authentication processing in the
同様に、点線の矢印で示す処理順序は、認証システム100における生体情報の再登録処理の処理順序の一部を示している。具体的には、点線の矢印で示される生成指示部308〜送信部310、実線の矢印で示される取得部301〜検索部305、更新部311までの一連の処理が、生体情報の再登録処理の処理順序となる。また、認証装置101は、更新部311にて暗号化生体情報テーブル108にアクセスする。
Similarly, the processing order indicated by the dotted arrows indicates a part of the processing order of the biometric information re-registration processing in the
同様に、一点鎖線の矢印で示す処理は、認証システム100における暗号化された生体情報にランダム性を持つ場合の処理順序を示している。具体的には、実線の矢印で示される取得部301〜受信部307、一点鎖線の矢印で示される復号指示部312〜送信部310、取得部301、判断部315までの一連の処理が、暗号化された生体情報がランダム性を持つ場合の処理順序となる。
Similarly, the processing indicated by the one-dot chain line arrow indicates the processing order when the encrypted biometric information in the
同様に、破線の矢印で示す処理順序は、認証システム100におけるトークンデバイス104の検証処理の処理順序の一部を示している。具体的には、破線の矢印で示される署名生成指示部316〜送信部310、取得部301、署名検証部318までの一連の処理が、トークンデバイス104の検証処理の処理順序となる。
Similarly, the processing order indicated by the dashed arrows indicates a part of the processing order of the verification processing of the
取得部301は、利用者の識別情報と公開鍵および秘密鍵の組み合わせとを記憶するトークンデバイス104から、識別情報と公開鍵とを取得する機能を有する。また、取得部301は、生成指示部308によって、公開鍵と秘密鍵の生成を指示した場合に、識別情報と生成された公開鍵を取得してもよい。また、取得部301は、復号指示部312によって認証結果の復号を指示した場合に、復号された認証結果を取得してもよい。また、取得部301は、署名生成指示部316によって電子署名の生成を指示した場合に、生成された電子署名を取得してもよい。利用者とは、認証システム100を利用するユーザである。
The
具体的には、たとえば、暗号化装置103は、利用者の識別情報として、ユーザUiのユーザ識別子Uiと、公開鍵pkiを取得する。なお、取得されたデータは、RAM203、磁気ディスク205、光ディスク207などの記憶領域に記憶される。
Specifically, for example, the
暗号化部302は、取得部301によって取得された公開鍵によって、利用者の生体情報を準同型暗号によって暗号化する機能を有する。また、暗号化部302は、利用者の生体情報を準同型暗号によってランダム性を持つように暗号化してもよい。準同型暗号の具体例としては、たとえば、Paillier暗号やEl Gamal暗号である。また、ランダム性を持つような暗号化とは、暗号化アルゴリズム自体にランダム性を持たせることにより、入力が同じ平文に対し、異なる暗号文を出力する暗号化である。ランダム性を持つ暗号化アルゴリズムの具体例は、RSA−OAEP(RSA Optimal Asymmetric Encryption Padding)暗号、RSAES−PKCS1−v1_5暗号等である。
The
具体的には、たとえば、暗号化装置103は、スキャナ212によって読み取った生体情報Miを、準同型暗号Eを用いて公開鍵pkiによって暗号化し、Epki(Mi)を得る。なお、暗号化されたデータは、RAM203、磁気ディスク205、光ディスク207などの記憶領域に記憶される。
Specifically, for example, the
送信部303は、識別情報と公開鍵と暗号化部302によって暗号化された生体情報とを認証装置101に送信する機能を有する。具体的には、たとえば、暗号化装置103は、ユーザ識別子Uiと、公開鍵pkiと、準同型暗号によって暗号化された生体情報Epki(Mi)を、認証装置101に送信する。なお、送信されたデータは、RAM203、磁気ディスク205、光ディスク207などの記憶領域に記憶されてもよい。
The
受信部304は、暗号化装置103から送信された識別情報と公開鍵と準同型暗号によって暗号化された生体情報を受信する機能を有する。具体的には、たとえば、認証装置101は、ユーザ識別子Uiと、公開鍵pkiと、準同型暗号によって暗号化された生体情報Epki(Mi)を受信する。なお、受信されたデータは、認証装置101内のRAM、磁気ディスク、光ディスクなどの記憶領域に記憶される。
The receiving
検索部305は、データベースから、受信部304によって受信された識別情報に基づいて、データベースに記憶されている公開鍵と暗号化された生体情報とを検索する機能を有する。データベースとは、利用者の識別情報ごとに、準同型暗号によって暗号化された利用者の生体情報と利用者の生体情報を暗号化した公開鍵とを記憶する暗号化生体情報テーブル108である。
The
具体的には、たとえば、認証装置101は、暗号化生体情報テーブル108から、受信された識別情報がユーザ識別子Uiである場合に、ユーザUiの準同型暗号によって暗号化された生体情報と、生体情報を暗号化した公開鍵を検索する。なお、検索され、発見されたデータは、認証装置101内のRAM、磁気ディスク、光ディスクなどの記憶領域に記憶される。
Specifically, for example, when the received identification information is the user identifier Ui from the encrypted biometric information table 108, the
実行部306は、検索部305によってデータベース内に受信された識別情報に関連した公開鍵と暗号化された生体情報が検索された場合、受信部304によって受信された生体情報と検索された生体情報が一致するかを判断する関数を実行する機能を有する。関数とは、暗号化されていない生体情報の一致を判断する生体認証アルゴリズムfに対応した、準同型暗号によって暗号化された生体情報の一致を判断する暗号化生体認証アルゴリズムFのことである。
When the
生体認証アルゴリズムfの具体例としては、たとえば、ハミング距離が一定の値以下であるか否かを判断するアルゴリズムである。他の具体例としては、ハミング距離で判断する以外にレーベンシュタイン距離にて判断してもよい。また、準同型暗号Eが、加法、乗法の両方の演算が可能な完全準同型暗号であれば、生体認証アルゴリズムfは任意のアルゴリズムを使用できる。 As a specific example of the biometric authentication algorithm f, for example, an algorithm for determining whether the Hamming distance is equal to or less than a certain value. As another specific example, it may be determined by the Levenshtein distance in addition to the determination by the Hamming distance. In addition, if the homomorphic encryption E is a completely homomorphic encryption capable of both addition and multiplication operations, the biometric authentication algorithm f can use any algorithm.
完全準同型暗号とは、すべてのロジック回路による演算に対して準同型性を満たす暗号である(下記参考文献1参照)。
(参考文献1:Craig Gentry “Fully homomorphic encryption using ideal lattices”Proceedings of the 41st Annual ACM Symposium on Theory of Computing, 2009, p169−178)
Completely homomorphic encryption is encryption that satisfies homomorphism for operations by all logic circuits (see Reference 1 below).
(Reference 1: Craig Gentry “Fully homotypic usage using ideals”, Proceedings of the 41st Annual ACM Symposium on Theory of 9 Computation, 9-1
ここで、鍵ペア:(pk、sk)と、平文Mの公開鍵pkによる暗号化:C=Epk(M)、暗号文Cの秘密鍵skによる復号:M=Dsk(C)とする平文M1、・・・、Mnを入力とする関数をf(M1、・・・、Mn)とする。完全準同型暗号は、下記を満たす関数Fの存在と、その効率的実行を保証する。 Here, the plaintext M1 with the key pair: (pk, sk) and the plaintext M encrypted with the public key pk: C = Epk (M), the decryption of the ciphertext C with the private key sk: M = Dsk (C) ,..., A function having Mn as an input is defined as f (M1,..., Mn). Fully homomorphic encryption guarantees the existence of a function F that satisfies the following and its efficient execution.
Dsk(F(pk、Epk(M1)、・・・、Epk(Mn)))
=f(M1、・・・、Mn)
Dsk (F (pk, Epk (M1), ..., Epk (Mn)))
= F (M1, ..., Mn)
また、生体認証アルゴリズムfの具体例としては、生体情報が指紋情報であれば、指紋の一致を比較するアルゴリズムとして、マニューシャ法、パターンマッチング法、周波数解析法などを適用してもよい。生体情報が指紋以外の生体情報であった場合にも、それぞれの生体情報の特徴にあったアルゴリズムを使用してもよい。 As a specific example of the biometric authentication algorithm f, if the biometric information is fingerprint information, a minutia method, a pattern matching method, a frequency analysis method, or the like may be applied as an algorithm for comparing fingerprint matches. Even when the biometric information is biometric information other than fingerprints, an algorithm suitable for the characteristics of each biometric information may be used.
実行部306の具体例としては、たとえば、認証装置101は、受信部304によって暗号化された生体情報Epki(M’i)と公開鍵pkiを受信しており、検索部305によって、登録時点の暗号化された生体情報Epki(Mi)を検索したとする。このとき、認証装置101は、実行部306によってF(pki、Epki(Mi)、Epki(M’i))を実行する。
As a specific example of the
実行の結果となる認証結果は、認証成功となるOK、または認証失敗となるNGがそれぞれ暗号化された値、Epki(OK)、Epki(NG)となる。認証装置101は、認証結果をEpki(OK)と比較し、一致した場合にOKとして暗号化装置103に送信する。また、暗号化部302にて、生体情報にランダム性を持つように暗号化された場合は、認証成功したかはわからないため、暗号化された認証結果を暗号化装置103に送信する。暗号化生体認証アルゴリズムFの出力値となる認証結果は、暗号化装置103に送信される。また認証結果は、認証装置101内のRAM、磁気ディスク、光ディスクなどの記憶領域に記憶されてもよい。
The authentication result, which is the execution result, is an OK value indicating successful authentication or an encrypted value of NG indicating an authentication failure, Epki (OK) and Epki (NG). The
受信部307は、実行部306によって実行された認証結果を受信する機能を有する。具体的には、たとえば、暗号化装置103は、OK、NGなどを受信する。受信後、暗号化装置103は、受信した結果を、判断部315へ送信する。また、暗号化部302にて、生体情報がランダム性を持つように暗号化された場合、暗号化装置103は、暗号化された認証結果を復号指示部312へ送信する。また、受信されたデータは、RAM203、磁気ディスク205、光ディスク207などの記憶領域に記憶されてもよい。
The receiving
生成指示部308は、トークンデバイス104に、現在使用している公開鍵および秘密鍵の組み合わせとは異なる公開鍵および秘密鍵の組み合わせの生成を指示する機能を有する。具体的には、たとえば、暗号化装置103は、トークンデバイス104内に公開鍵および秘密鍵の組み合わせとして公開鍵pki、秘密鍵skiがあるときに、前述の鍵の組み合わせとは異なる、新たな公開鍵と秘密鍵を生成するよう指示をする。また、指示内容となる電文データは、RAM203、磁気ディスク205、光ディスク207などの記憶領域に記憶されてもよい。
The
生成部309は、公開鍵と秘密鍵との組み合わせを生成する機能を有する。具体的には、たとえば、トークンデバイス104は、公開鍵pki、秘密鍵skiを生成する。また、公開鍵pki、秘密鍵skiが生成された後に、再度生成する場合、トークンデバイス104は、公開鍵pki’、秘密鍵ski’を生成する。なお、生成された公開鍵と秘密鍵は、トークンデバイス104内のフラッシュROMなどの不揮発性の記憶領域に記憶される。
The generation unit 309 has a function of generating a combination of a public key and a secret key. Specifically, for example, the
送信部310は、判断部320によって準同型暗号による暗号化を要求されたと判断された場合、記憶部319によって記憶された識別情報と生成部309によって生成された公開鍵とを要求元に送信する機能を有する。また、送信部310は、復号指示を受けた場合、復号結果を指示元に送信してもよい。具体的には、たとえば、要求元となる暗号化装置103が、準同型暗号による暗号化を要求した場合に、トークンデバイス104は、ユーザ識別子Uiと公開鍵pkiを暗号化装置103に送信する。なお、送信されたデータは、トークンデバイス104内のRAM、フラッシュROMなどの記憶領域に記憶されてもよい。
When the
更新部311は、検索部305によってデータベースに受信された識別情報に関連した公開鍵と暗号化された生体情報とが検索された場合、受信部304によって受信された公開鍵と暗号化された生体情報とでデータベースを更新する機能を有する。また、更新部311は、暗号化装置から生体情報の更新情報と利用者の識別情報と更新指示を受信した場合、データベースを更新してもよい。
When the
具体的には、たとえば、認証装置101は、受信部304によって暗号化された生体情報Epki(Mi’)と公開鍵pki’を受信しており、検索部305によって、登録時点の暗号化された生体情報Epki(Mi)と公開鍵pkiを検索したとする。このとき、認証装置101は、Epki(Mi’)とpki’とで暗号化生体情報テーブル108を更新する。なお、認証装置101は、更新時に、古いデータとなるEpki(Mi)と公開鍵pkiに対して新しいデータとなるEpki(Mi’)とpki’を上書きすることで、古いデータを削除してもよい。
Specifically, for example, the
復号指示部312は、トークンデバイス104に、秘密鍵によって暗号化された認証結果の復号を指示する機能を有する。具体的には、たとえば、暗号化装置103は、受信部307からEpki(認証結果)を取得し、Epki(認証結果)を、復号するようにトークンデバイス104に指示をする。なお、指示内容となる電文データは、RAM203、磁気ディスク205、光ディスク207などの記憶領域に記憶されてもよい。
The
取得部313は、復号指示部312によって復号指示された場合、復号する対象となるデータを取得する機能を有する。また、取得部313は、署名生成指示部316によって署名生成指示された場合、電子署名の対象となる値を取得してもよい。具体的には、たとえば、トークンデバイス104は、暗号化装置103から、Epki(認証結果)を復号するように指示を受けた場合に、Epki(認証結果)を取得する。なお、取得されたデータは、トークンデバイス104内のRAM、フラッシュROMなどの記憶領域に記憶される。
The
復号部314は、復号指示部312によって復号指示されたデータを復号する機能を有する。具体的には、たとえば、トークンデバイス104は、復号するように指示を受けたEpki(認証結果)を、秘密鍵を使用して復号する。なお、復号されたデータは、トークンデバイス104内のRAM、フラッシュROMなどの記憶領域に記憶される。
The
判断部315は、取得部301によって復号された認証結果を取得するとともに、復号された認証結果に基づいて、認証が成功したか否かを判断する機能を有する。また、判断部315は、受信部307によって暗号化されていない認証結果を取得した場合も、認証結果に基づいて、認証が成功したか否か判断してもよい。
The determination unit 315 has a function of acquiring the authentication result decrypted by the
署名生成指示部316は、トークンデバイス104に、秘密鍵によって任意の値に対する電子署名の生成を指示する機能を有する。具体的には、たとえば、暗号化装置103は、任意の値を生成し、生成された値をトークンデバイス104に送信する。なお、送信されたデータは、RAM203、磁気ディスク205、光ディスク207などの記憶領域に記憶される。
The signature
署名生成部317は、任意の値に対する電子署名を生成する機能を有する。具体的には、たとえば、トークンデバイス104は、取得部313によって取得された任意の値に対して、トークンデバイス104内に格納されている秘密鍵を使用して、電子署名を生成する。また、電子署名に使用する鍵ペアは、生体情報の暗号化に使用した鍵ペアとは異なる鍵ペアであってもよい。なお、生成された電子署名は、送信部310によって暗号化装置103に送信される。なお、送信されたデータは、RAM203、磁気ディスク205、光ディスク207などの記憶領域に記憶されてもよい。
The
署名検証部318は、取得部301によって生成された任意の値に対する電子署名を取得するとともに、任意の値に対する電子署名の正当性を、公開鍵によって検証する機能を有する。具体的には、たとえば、暗号化装置103は、署名生成指示部316にて生成した値と、電子署名を公開鍵で復号した値が一致することで、電子署名の正当性を検証する。なお、検証結果は、RAM203、磁気ディスク205、光ディスク207などの記憶領域に記憶される。
The
記憶部319は、利用者の識別情報を記憶する機能を有する。具体的には、たとえば、トークンデバイス104は、ユーザ識別子Uiを記憶する。なお、ユーザ識別子Uiは、トークンデバイス104内のROM、フラッシュROMなどの不揮発性の記憶領域に記憶される。
The storage unit 319 has a function of storing user identification information. Specifically, for example, the
判断部320は、準同型暗号による暗号化を要求されたか否かを判断する機能を有する。具体的には、たとえば、トークンデバイス104は、暗号化装置103の取得部301によって識別情報と公開鍵の取得要求を受けた場合、取得要求となる電文データを読み込む。続けて、トークンデバイス104は、電文データのフォーマットに従って電文データに準同型暗号であるという値が設定されていた場合に、準同型暗号であることを判断する。また、認証システム100が常に準同型暗号による暗号化しか行わない場合は、トークンデバイス104は、常に準同型暗号による暗号化として判断してもよい。なお、判断結果は、トークンデバイス104内のROM、RAM、フラッシュROMなどの記憶領域に記憶される。
The
図4は、認証システム100での公開鍵および秘密鍵の所在を示す説明図である。トークンデバイス104は、公開鍵401と秘密鍵402を生成し、準同型暗号による暗号化の要求を受けた際に公開鍵401のみ外部に出力する。公開鍵401を取得した暗号化装置103は、公開鍵401によって、生体情報を暗号化し、公開鍵401により暗号化された生体情報403を得る。生体情報はたとえば、図4で示すように指紋を読み取った画像である。
FIG. 4 is an explanatory diagram showing the location of the public key and the secret key in the
暗号化を行った後、暗号化装置103は、ネットワーク105を経由して、公開鍵401と公開鍵401により暗号化された生体情報403を認証装置101へ送信する。認証装置101は2つの情報を受信して、登録済であり、準同型暗号によって暗号化された生体情報と比較するアルゴリズムを実行する。このように、秘密鍵402はトークンデバイス104の中にしか存在しないため、秘密鍵402が外部に漏れる心配がない。
After the encryption, the
図5は、暗号化された生体情報の認証処理の概要を示す説明図である。符号501にて示すブロック図は、暗号化された生体情報にランダム性を持たせない場合の認証処理の概要を示す。ユーザUiの認証処理を行う場合、暗号化装置103は、公開鍵401にて暗号化を行うと、暗号化されたユーザUiの生体情報として、Epki(M’i)を得る。暗号化後、暗号化装置103は、暗号化された生体情報を認証装置101に送信する。認証装置101は、Epki(M’i)を受信し、暗号化生体情報テーブル108に記憶されている、登録時点の生体情報と比較をする。比較方法としては、生体認証アルゴリズムfを実行することで比較をし、その出力値によって一致しているかを判断する。
FIG. 5 is an explanatory diagram showing an outline of an authentication process for encrypted biometric information. A block diagram denoted by
生体認証アルゴリズムfは、完全準同型暗号を用いる場合には、任意のアルゴリズムを使用できる。生体認証アルゴリズムfの具体例としては、たとえば、ハミング距離が所定の閾値以下である場合に、認証成功とするアルゴリズムである。また、アルゴリズムFは、準同型暗号Eにおいて生体認証アルゴリズムfに対応する暗号化生体認証アルゴリズムとする。 As the biometric authentication algorithm f, any algorithm can be used when using a completely homomorphic encryption. A specific example of the biometric authentication algorithm f is, for example, an algorithm that succeeds in authentication when the Hamming distance is equal to or less than a predetermined threshold. The algorithm F is an encrypted biometric algorithm corresponding to the biometric algorithm f in the homomorphic encryption E.
生体認証アルゴリズムfの他の例としては、完全準同型暗号であれば、生体情報が指紋等の画像データであった場合に、比較を行う2つの画像が入力された際に、それぞれの画像の中で、特徴点を抽出し照合するマニューシャ法としてもよい。また、生体認証アルゴリズムfは、前述方法以外にも、パターンマッチング法や、周波数解析法等でもよい。指紋以外の生体情報であった場合にも、それぞれの生体情報の特徴にあったアルゴリズムを使用してもよい。認証装置101は、実行部306によって下記式(1)を実行する。
As another example of the biometric authentication algorithm f, in the case of complete homomorphic encryption, when biometric information is image data such as a fingerprint, when two images to be compared are input, Among them, a minutiae method for extracting and collating feature points may be used. Further, the biometric algorithm f may be a pattern matching method, a frequency analysis method, or the like other than the above-described method. Even in the case of biometric information other than fingerprints, an algorithm suitable for the characteristics of each biometric information may be used. The
F(pki、Epki(Mi)、Epki(M’i))…(1) F (pki, Epki (Mi), Epki (M'i)) (1)
完全準同型の性質より、式(1)は、下記式(2)に変形される。 Due to the completely homomorphic nature, the formula (1) is transformed into the following formula (2).
Epki(f(Mi、M’i))…(2) Epki (f (Mi, M'i)) (2)
生体認証アルゴリズムfの出力値となる認証結果502は、ハミング距離が所定の閾値以下であれば“OK”、異なれば“NG”の2つの値のうち、どちらかを出力する。生体認証アルゴリズムfの出力値は固定となるため、認証装置101は、“OK”を公開鍵pkiによって暗号化した値Epki(OK)を算出し、式(2)の出力値とEpki(OK)を比較し、一致した場合に認証成功とする。
The authentication result 502 that is an output value of the biometric authentication algorithm f outputs either “OK” if the Hamming distance is equal to or less than a predetermined threshold value, or “NG” if it is different. Since the output value of the biometric authentication algorithm f is fixed, the
このように、暗号化された生体情報にランダム性を持たせない場合の認証処理では、秘密鍵402を使用することなく認証することができる。したがって、認証システム100は、ユーザUiが関与しないところで、ユーザUiの生体情報Miが漏えいすることのないシステムとなる。認証システム100では、ユーザUiが秘密鍵402の管理を正しく行うことで、第三者がEpki(Mi)を復号することができず、ユーザUiの生体情報Miが漏えいすることがない。
In this way, in the authentication process when the encrypted biometric information is not given randomness, authentication can be performed without using the
また、暗号化された生体情報Epki(Mi)が、万一漏えいした場合を想定する。この場合、認証システム100は、生体情報の再登録処理を行う。トークンデバイス104は、新たな鍵ペア(pki’、ski’)を生成する。暗号化装置103は、ユーザUiの新たな登録時点の生体情報Mi’を読み取り、新たな公開鍵pki’と、公開鍵pki’による暗号化生体情報Epki’(Mi’)をユーザUiのエントリーとして認証装置101に送信する。認証装置101は、受信した公開鍵pki’と暗号化生体情報Epki’(Mi’)とで暗号化生体情報テーブル108を更新する。
Further, it is assumed that the encrypted biometric information Epki (Mi) leaks. In this case, the
既に登録されていたEpki(Mi)は、削除してもよい。このように、認証システム100は、一旦登録した生体情報をキャンセルすることができる。生体情報をキャンセルできるシステムを、キャンセラブル生体認証と呼ぶ。一度キャンセルし、再登録した状態では、第三者が、漏えいした古い暗号化生体情報Epki(Mi)を、ユーザUiになりすますために使用したとしても、認証装置101は、公開鍵pkiとpki’が異なるため、認証結果はNGとなる。
Epki (Mi) that has already been registered may be deleted. Thus, the
また、暗号化された生体情報がランダム性を持つ場合の認証処理では、キャンセラブル生体認証であることに加えて、平文Miに対して、暗号文を変えることができる。これにより、同じ平文が入力された場合でも、暗号文が毎回異なることにより、同じ平文が入力されているということが第三者に対して漏れることがない。 Further, in the authentication process when the encrypted biometric information has randomness, the ciphertext can be changed with respect to the plaintext Mi in addition to the cancelable biometric authentication. Thereby, even when the same plaintext is input, the fact that the same plaintext is input is not leaked to a third party because the ciphertext is different every time.
また、暗号化された生体情報がランダム性を持つ場合の認証処理では、トークンデバイス104の復号部314にて暗号化された認証結果を復号するが、秘密鍵402を暗号化装置103に送信し、暗号化装置103にて復号を行ってもよい。トークンデバイス104にて復号する処理では、Epki(認証結果)に対して、適当な値、たとえば“OK”を返す処理が組み込まれた偽装されたトークンデバイス104が第三者によって用意された場合にも、認証OKとなる。しかし、暗号化装置103にて復号を行うことにより、トークンデバイス104にて復号を行わないようにすることができる。
Further, in the authentication process when the encrypted biometric information has randomness, the authentication result encrypted by the
また、認証システム100は、トークンデバイス104の復号部314にて復号する際に、復号を行う前後のいずれかにて、トークンデバイス104に電子署名を生成させ、暗号化装置103にて署名を検証するという検証処理を行ってもよい。
In addition, when the
具体的には、暗号化装置103にて任意の値を生成し、トークンデバイス104に送信する。トークンデバイス104は、生体情報認証処理で使用されている公開鍵401、秘密鍵402とは異なる署名用の鍵ペアを生成しておき署名を行う。トークンデバイス104では、任意の値に対する電子署名の生成を署名用の秘密鍵で行い、暗号化装置103に送信する。最後に暗号化装置103では、生成された電子署名を署名用の公開鍵にて検証し、トークンデバイス104が偽装されていないことが確認できる。任意の値については、生成の度に異なる値を用いることで、より安全に運用できる。前述の検証処理は、図10にて詳細に記述する。
Specifically, the
図6は、暗号化生体情報テーブル108の記憶内容の一例を示す説明図である。暗号化生体情報テーブル108は、ユーザ識別子、公開鍵、暗号化生体情報という3つのフィールドで構成する。ユーザ識別子フィールドは、ユーザを識別する識別情報であり、暗号化生体情報テーブル108のレコードを一意に決める値を格納する。公開鍵フィールドは、トークンデバイス104から送信された公開鍵を格納する。暗号化生体情報フィールドは、ユーザ識別子に格納されたユーザの生体情報を、公開鍵フィールドに設定された公開鍵を使用して暗号化した値を格納する。
FIG. 6 is an explanatory diagram showing an example of the stored contents of the encrypted biometric information table 108. The encrypted biometric information table 108 includes three fields: a user identifier, a public key, and encrypted biometric information. The user identifier field is identification information for identifying a user, and stores a value that uniquely determines a record in the encrypted biometric information table 108. The public key field stores the public key transmitted from the
図7は、鍵生成処理のフローチャートである。鍵生成処理は、トークンデバイス104にて実行される。また、外部の装置が鍵生成処理を行い、トークンデバイス104内に公開鍵、秘密鍵を格納してもよい。トークンデバイス104は、鍵ペア(pki、ski)を生成する(ステップS701)。鍵ペアとは、公開鍵pkiと秘密鍵skiである。続けて、トークンデバイス104は、指定されたユーザ識別子Uiと鍵ペア(pki、ski)を記憶領域に格納する(ステップS702)。
FIG. 7 is a flowchart of the key generation process. The key generation process is executed by the
図8は、生体情報登録処理のフローチャートである。生体情報登録処理は、暗号化装置103と、認証装置101とで実行される。また、図8〜図10での破線の矢印は、複数の装置間でのメッセージのやりとりを示す。暗号化装置103は、認証装置101と登録セッションを確立する(ステップS801)。具体的な処理としては、暗号化装置103は、登録セッション接続要求を認証装置101に送信し、認証装置101の応答を待つ。登録セッション接続要求を受けた認証装置101は、暗号化装置103と登録セッションを確立する(ステップS802)。
FIG. 8 is a flowchart of the biometric information registration process. The biometric information registration process is executed by the
登録セッション確立後、暗号化装置103は、生体情報Miをトークン読取デバイス107から、ユーザ識別子Ui、公開鍵pkiをトークンデバイス104から取得する(ステップS803)。このとき、トークンデバイス104は、暗号化装置103からの取得要求となる電文データから、準同型暗号による暗号化を行うことを判断し、公開鍵pkiを送信する。取得後、暗号化装置103は、公開鍵を用いて準同型暗号による暗号化情報Epki(Mi)を算出する(ステップS804)。算出後、暗号化装置103は、認証装置101へUi、pki、Epki(Mi)を送信する(ステップS805)。送信後、暗号化装置103は、認証装置101からの応答があるまで待機する。
After the registration session is established, the
次に認証装置101は、暗号化装置103から識別子Ui、公開鍵pki、暗号化情報Epki(Mi)を受信する(ステップS806)。受信した識別子Uiを用いて、認証装置101は、暗号化生体情報テーブル108のユーザ識別子フィールドがUiであるレコードが存在するかを検索する(ステップS807)。検索されたレコードが存在する場合(ステップS807:Yes)、認証装置101は、上書き可能か否かの問い合わせを暗号化装置103に送信する(ステップS808)。暗号化装置103は、上書き可能問い合わせを受け付けたかを確認する(ステップS809)。
Next, the
上書き可能問い合わせを受けた場合(ステップS809:Yes)、暗号化装置103は、ユーザの指示を受けた後、上書き可能か否かの指示を認証装置101に送信する(ステップS810)。実際の処理としては、上書き可能問い合わせを受け付けた場合、暗号化装置103は、ディスプレイ208に上書き可能問い合わせを示す内容を表示し、ユーザに対し、上書きを許可するか否かを問い合わせる。上書き可能か否かの指示を暗号化装置103に送信後、または、上書き問い合わせを受け付けていない場合(ステップS809:No)、暗号化装置103は、認証装置101からの応答があるまで待機する。
When receiving an overwritable inquiry (step S809: Yes), the
ステップS808の処理後、認証装置101は、上書き可能指示を受け付けたかを確認する(ステップS811)。上書き可能指示が、更新指示となる。また、暗号化装置103は、ステップS805の処理にて、更新指示を含めて送信してもよい。更新指示が送信内容に含まれていた場合、認証装置101は、ステップS807〜ステップS812を実行せず、ステップS813の処理を行ってもよい。
After the process of step S808, the
上書き可能指示を受け付けた場合(ステップS811:Yes)、認証装置101は、暗号化生体情報テーブル108のユーザ識別子フィールドがUiであるレコードに、受信したpki、Epki(Mi)を登録する(ステップS813)。登録終了後、または、上書き可能指示を受け付けていない場合(ステップS811:No)、認証装置101は、暗号化装置103との登録セッションを終了する(ステップS814)。暗号化装置103も、認証装置101からの登録セッション終了を受け付けて、認証装置101との登録セッションを終了する(ステップS815)。
When an overwritable instruction is received (step S811: Yes), the
ステップS807の処理にて、ユーザ識別子フィールドがUiであるレコードが存在しない場合(ステップS807:No)、認証装置101は、暗号化生体情報テーブル108に、ユーザ識別子フィールドがUiであるレコードを追加する(ステップS812)。追加後、認証装置101は、ステップS813の処理に移行する。
If there is no record whose user identifier field is Ui in the process of step S807 (step S807: No), the
また、ステップS811の処理で、上書き可能指示を受け付けていない場合(ステップS811:No)、認証装置101は、ステップS814の処理に移行する。また、上書き可能指示を受け付けていない場合としては、上書きを許可しない指示であった場合、または、暗号化装置103から一定時間応答が返ってこない場合にも、上書き可能指示を受け付けていない場合に該当する。
Further, when the overwritable instruction is not received in the process of step S811 (step S811: No), the
図9は、生体情報認証処理のフローチャートである。生体情報認証処理も生体情報登録処理と同様に、暗号化装置103と、認証装置101とで実行される。暗号化装置103は、認証装置101と認証セッションを確立する(ステップS901)。具体的な処理としては、暗号化装置103は、認証セッション接続要求を認証装置101に送信し、認証装置101の応答を待つ。認証セッション接続要求を受けた認証装置101は、暗号化装置103と認証セッションを確立する(ステップS902)。
FIG. 9 is a flowchart of the biometric information authentication process. Similarly to the biometric information registration process, the biometric information authentication process is executed by the
認証セッション確立後、暗号化装置103は、生体情報M’iをトークン読取デバイス107から、ユーザ識別子Ui、公開鍵pkiをトークンデバイス104から取得する(ステップS903)。このとき、トークンデバイス104は、暗号化装置103からの取得要求となる電文データから、準同型暗号による暗号化を行うことを判断し、公開鍵pkiを送信する。取得後、暗号化装置103は、公開鍵を用いて準同型暗号による暗号化情報Epki(M’i)を算出する(ステップS904)。算出後、暗号化装置103は、認証装置101へUi、pki、Epki(M’i)を送信する(ステップS905)。送信後、暗号化装置103は、認証装置101からの応答があるまで待機する。
After the authentication session is established, the
次に認証装置101は、暗号化装置103から識別子Ui、公開鍵pki、暗号化情報Epki(M’i)を受信する(ステップS906)。受信した識別子Uiを用いて、認証装置101は、暗号化生体情報テーブル108のユーザ識別子フィールドがUiであるレコードが存在するかを検索する(ステップS907)。検索されたレコードが存在する場合(ステップS907:Yes)、認証装置101は、存在したレコードを選択する(ステップS908)。存在しなかった場合(ステップS907:No)、認証装置101は、暗号化装置103に“NG”を送信する(ステップS913)。
Next, the
レコードを選択後、認証装置101は、受信したpkiと選択したレコードのpkiとが一致するかを確認する(ステップS909)。一致しない場合(ステップS909:No)、認証装置101は、ステップS913の処理に移行する。一致する場合(ステップS909:Yes)、認証装置101は、F(pki、Epki(Mi)、Epki(M’i))を算出する(ステップS910)。算出後、認証装置101は、算出結果がEpki(OK)に一致するかを確認する(ステップS911)。一致しなかった場合(ステップS911:No)、認証装置101は、ステップS913の処理に移行する。一致する場合(ステップS911:Yes)、認証装置101は、暗号化装置103に“OK”を送信する(ステップS912)。
After selecting the record, the
“OK”か“NG”を受け付けた暗号化装置103は、受け付けた内容が“OK”か否かを確認する(ステップS914)。受け付けた内容が“OK”の場合(ステップS914:Yes)、暗号化装置103は、ユーザUiに、サービス102へのアクセスを許可する(ステップS915)。アクセスを許可した場合、または、受け付けた内容が“OK”でない場合(ステップS914:No)、暗号化装置103は、認証装置101との認証セッションを終了する(ステップS916)。認証装置101も、暗号化装置103からの認証セッション終了を受け付けて、暗号化装置103との認証セッションを終了する(ステップS917)。
The
図10は、生体情報認証処理にて暗号化された生体情報にランダム性を持つ場合の処理を示すフローチャートである。図10にて図示したフローチャートの前段階として、生体情報認証処理で暗号化された生体情報にランダム性を持つ場合、暗号化装置103は、ステップS904の処理にて、平文となる生体情報M’iに対し、ランダム性を持たせて暗号化を行う。続けて、ステップS911の処理にて、算出結果がEpki(OK)に一致するかの確認を行わず、算出結果となる暗号化された認証結果を暗号化装置103に送信する。
FIG. 10 is a flowchart showing a process when the biometric information encrypted by the biometric authentication process has randomness. As a previous step of the flowchart illustrated in FIG. 10, when the biometric information encrypted by the biometric authentication process has randomness, the
また、図10で図示したフローチャートでは、トークンデバイス104の検証処理を行っている。ステップS1001〜ステップS1008で示す処理がトークンデバイス104の検証処理であり、ステップS1009〜ステップS1015で示す処理が暗号化された認証結果の復号処理となる。また、図10での図示したフローチャートは、ステップS914、ステップS915と置き換えて実行される。
In the flowchart illustrated in FIG. 10, the
暗号化された認証結果を受信後、暗号化装置103は、任意の値を生成し、署名対象に設定し(ステップS1001)、署名対象をトークンデバイス104に送信する(ステップS1002)。トークンデバイス104は、生体情報認証処理で使用されている鍵ペア(pki、ski)とは異なる鍵ペア(pki’’、ski’’)を生成しておき署名を行う。トークンデバイス104は、署名対象を受信し(ステップS1003)、秘密鍵ski’’にて電子署名を生成する(ステップS1004)。生成後、トークンデバイス104は、生成された電子署名を暗号化装置103に送信する(ステップS1005)。送信後、トークンデバイス104は、暗号化装置103の応答があるまで待機する。
After receiving the encrypted authentication result, the
暗号化装置103は、電子署名を受信し(ステップS1006)、受信された電子署名を公開鍵pki’’にて検証する(ステップS1007)。暗号化装置103は、電子署名の正当性を検証できたかを確認する(ステップS1008)。正当性を検証できた場合(ステップS1008:Yes)、暗号化装置103は、暗号化された認証結果をトークンデバイス104に送信する(ステップS1009)。正当性を検証できなかった場合(ステップS1008:No)、暗号化装置103は、ユーザUiにサービス102のアクセスを許可せず、ステップS916の処理に移行する。
The
次に、トークンデバイス104は、暗号化装置103より送信された、暗号化された認証結果を受信する(ステップS1010)。受信後、トークンデバイス104は、受信された認証結果を秘密鍵skiにて復号する(ステップS1011)。復号後、トークンデバイス104は、復号された認証結果を暗号化装置103に送信する(ステップS1012)。
Next, the
暗号化装置103は、復号された認証結果を受信し(ステップS1013)、認証結果に基づいて、認証が成功したかを判断する(ステップS1014)。認証が成功していると判断した場合(ステップS1014:Yes)、暗号化装置103は、ユーザUiに、サービス102へのアクセスを許可し(ステップS1015)、ステップS916の処理に移行する。
The
認証が失敗したと判断した場合(ステップS1014:No)、暗号化装置103は、ユーザUiにサービス102のアクセスを許可せず、ステップS916の処理に移行する。トークンデバイス104からの応答がなくタイムアウトし、認証結果の判断が行えなかった場合も、暗号化装置103は、ステップS1014:Noに移行する。
If it is determined that the authentication has failed (step S1014: No), the
図10にて図示したフローチャートでは、ステップS914、ステップS915と置き換えて実行されていた。しかし、ステップS1001〜ステップS1008で示す検証処理について、たとえば、暗号化装置103は、ステップS903の処理の前に行い、検証処理が失敗した場合、ステップS903の処理を実行せずに終了してもよい。また、暗号化装置103は、ステップS1001〜ステップS1008で示す検証処理を、ステップS1014:Yesの後に行ってもよい。
In the flowchart illustrated in FIG. 10, steps S914 and S915 are executed in substitution. However, for example, the
以上説明したように、認証装置、認証方法、および認証プログラムは、利用者の公開鍵と識別情報と準同型暗号によって暗号化された生体情報とを受信し、受信した識別情報から、データベースに記憶された公開鍵と暗号化された生体情報を検索する。検索後、認証装置は、検索された生体情報と受信した公開鍵と暗号化された生体情報で認証を行う。これにより、認証装置が準同型暗号による暗号化情報のまま認証でき、秘密鍵を外部に出さずに済む。したがって、秘密鍵が漏えいすることがなく、ひいてはユーザの生体情報が流出することをなくすことができる。 As described above, the authentication device, the authentication method, and the authentication program receive the user's public key, identification information, and biometric information encrypted by homomorphic encryption, and store them in the database from the received identification information. Retrieve the public key and the encrypted biometric information. After the search, the authentication device performs authentication using the searched biometric information, the received public key, and the encrypted biometric information. As a result, the authentication apparatus can authenticate the encrypted information using the homomorphic encryption, and the secret key does not have to be taken out. Accordingly, it is possible to prevent the secret key from being leaked and thus the user's biometric information from being leaked.
また、認証装置は、利用者の更新指示を受信した場合、データベースに記憶された利用者の識別情報に対応した暗号化された生体情報と公開鍵とを更新してもよい。これにより、暗号化生体情報が漏えいした場合にも、古い暗号化生体情報をキャンセルし、新しい暗号化生体情報を登録することで、漏えいした暗号化生体情報によるなりすましを防止することができる。 Further, when receiving the user update instruction, the authentication device may update the encrypted biometric information and the public key corresponding to the user identification information stored in the database. Thereby, even when the encrypted biometric information is leaked, the old encrypted biometric information is canceled and the new encrypted biometric information is registered, thereby preventing the spoofed by the leaked encrypted biometric information.
また、認証装置が記憶する公開鍵は、利用者の識別情報と公開鍵および秘密鍵の組み合わせとを記憶するトークンデバイスから、暗号化装置が取得した公開鍵であってもよい。これにより、認証装置が記憶する公開鍵は、漏えいしない秘密鍵と対になった公開鍵であるため、暗号化された生体情報が復号されることがなく、ユーザの生体情報が流出することをなくすことができる。 The public key stored in the authentication device may be a public key acquired by the encryption device from a token device that stores the user identification information and a combination of the public key and the private key. As a result, since the public key stored in the authentication device is a public key paired with a secret key that does not leak, the encrypted biometric information is not decrypted and the user's biometric information leaks out. Can be eliminated.
また、暗号化装置は、識別情報と公開鍵を取得し、公開鍵で生体情報を準同型暗号によって暗号化し、認証装置に送信する。これにより、認証装置が準同型暗号による暗号化情報のまま認証でき、秘密鍵を外部に出さずに済む。したがって、秘密鍵が漏えいすることがなく、ひいてはユーザの生体情報が流出することをなくすことができる。 Also, the encryption device acquires the identification information and the public key, encrypts the biometric information with the homomorphic encryption using the public key, and transmits it to the authentication device. As a result, the authentication apparatus can authenticate the encrypted information using the homomorphic encryption, and the secret key does not have to be taken out. Accordingly, it is possible to prevent the secret key from being leaked and thus the user's biometric information from being leaked.
また、暗号化装置は、トークンデバイスに、公開鍵と秘密鍵を新たに生成し、生成された公開鍵を用いて生体情報を暗号化してもよい。これにより、暗号化された生体情報が流出し、漏えいした場合にも、新しい公開鍵で暗号化された生体情報を再登録することで、漏えいした暗号化生体情報によるなりすましを防止することができる。 In addition, the encryption apparatus may newly generate a public key and a secret key in the token device, and may encrypt the biometric information using the generated public key. Thereby, even if the encrypted biometric information is leaked and leaked, it is possible to prevent spoofing by the leaked encrypted biometric information by re-registering the biometric information encrypted with the new public key. .
また、暗号化装置は、生体情報を暗号化する際に、ランダム性を持たせた準同型暗号による暗号化を行ってもよい。これにより、ユーザの生体情報が流出することをなくすことができるうえに、認証時に、生体情報が同じであっても、常に異なる暗号文を出力するため、生体情報である平文を特定されるリスクを減らすことができる。また、トークンデバイスに対して電子署名を生成させ、暗号化装置は電子署名を検証してもよい。これにより、トークンデバイスのなりすましを防ぐことができる。 In addition, the encryption device may perform encryption using homomorphic encryption with randomness when encrypting biometric information. As a result, the biometric information of the user can be prevented from leaking, and even when the biometric information is the same at the time of authentication, a different ciphertext is always output, so that the plaintext that is biometric information is identified. Can be reduced. Further, the electronic signature may be generated for the token device, and the encryption apparatus may verify the electronic signature. This prevents spoofing of the token device.
また、以上説明したトークンデバイスによれば、識別情報を記憶し、公開鍵と秘密鍵との組み合わせを生成し、準同型暗号による暗号化を要求されたと判断された場合に、識別情報と公開鍵を送信する。これにより、準同型暗号による暗号化であれば、秘密鍵を外部に出さずに済み、秘密鍵が漏えいすることがなく、ひいてはユーザの生体情報が流出することをなくすことができる。 Further, according to the token device described above, the identification information is stored, the combination of the public key and the private key is generated, and it is determined that the encryption by the homomorphic encryption is requested, the identification information and the public key Send. As a result, if encryption is performed using homomorphic encryption, the secret key is not required to be released to the outside, the secret key is not leaked, and the user's biometric information is not leaked.
また、本実施の形態では、暗号化装置とトークンデバイスが別の装置になっていたが、暗号化装置とトークンデバイスが一体となった装置であってもよい。具体的には、たとえば、指紋読み取り装置を備えたパーソナル・コンピュータにおいて、鍵ペアを生成し、ハードディスクに公開鍵と秘密鍵の鍵ペアを格納すればよい。 In the present embodiment, the encryption device and the token device are separate devices. However, the encryption device and the token device may be integrated. Specifically, for example, in a personal computer equipped with a fingerprint reader, a key pair may be generated and a public / private key pair may be stored on a hard disk.
なお、本実施の形態で説明した暗号化方法は、予め用意されたプログラムをパーソナル・コンピュータやワークステーション等のコンピュータで実行することにより実現することができる。本暗号化プログラムは、ハードディスク、フレキシブルディスク、CD−ROM、MO、DVD等のコンピュータで読み取り可能な記録媒体に記録され、コンピュータによって記録媒体から読み出されることによって実行される。また本暗号化プログラムは、インターネット等のネットワークを介して配布してもよい。 Note that the encryption method described in this embodiment can be realized by executing a program prepared in advance on a computer such as a personal computer or a workstation. The encryption program is recorded on a computer-readable recording medium such as a hard disk, a flexible disk, a CD-ROM, an MO, and a DVD, and is executed by being read from the recording medium by the computer. The encryption program may be distributed via a network such as the Internet.
上述した実施の形態に関し、さらに以下の付記を開示する。 The following additional notes are disclosed with respect to the embodiment described above.
(付記1)暗号化装置から準同型暗号による暗号化情報を受信し、認証を行う認証装置であって、
前記暗号化装置から、利用者の公開鍵を用いて準同型暗号によって暗号化された生体情報と、前記利用者の識別情報と、前記利用者の公開鍵とを受信する受信手段と、
任意の利用者の識別情報と、前記任意の利用者の公開鍵を用いて準同型暗号によって暗号化された前記任意の利用者の生体情報と、前記任意の利用者の公開鍵とを前記任意の利用者ごとに対応づけて記憶するデータベースから、前記受信手段によって受信された識別情報に基づいて、前記データベースに記憶されている公開鍵と暗号化された生体情報とを検索する検索手段と、
前記検索された公開鍵と暗号化された生体情報と、前記受信した公開鍵と暗号化された生体情報とを基に前記利用者の認証を行う実行部と、
を備えることを特徴とする認証装置。
(Supplementary Note 1) An authentication device that receives and authenticates encryption information by homomorphic encryption from an encryption device,
Receiving means for receiving biometric information encrypted by homomorphic encryption using a user's public key, the user's identification information, and the user's public key from the encryption device;
The arbitrary user identification information, the arbitrary user's biometric information encrypted by homomorphic encryption using the arbitrary user's public key, and the arbitrary user's public key Search means for searching the public key and encrypted biometric information stored in the database based on the identification information received by the receiving means from the database stored in association with each user
An execution unit that authenticates the user based on the searched public key and encrypted biometric information, and the received public key and encrypted biometric information;
An authentication device comprising:
(付記2)前記暗号化装置から、利用者の公開鍵と前記公開鍵を用いて準同型暗号によって暗号化された前記利用者の生体情報の更新情報と前記利用者の識別情報と更新指示とを受信すると、前記データベースに記憶されている前記利用者の識別情報に対応する暗号化された生体情報と公開鍵とを更新する更新手段を、さらに備えることを特徴とする付記1に記載の認証装置。 (Supplementary Note 2) Update information of the user's biometric information encrypted by homomorphic encryption using the public key of the user and the public key, the identification information of the user, and an update instruction from the encryption device The authentication according to claim 1, further comprising update means for updating the encrypted biometric information corresponding to the identification information of the user stored in the database and the public key when receiving apparatus.
(付記3)前記利用者の公開鍵は、前記利用者の識別情報と公開鍵および秘密鍵の組み合わせとを記憶するトークンデバイスから、前記暗号化装置が取得した公開鍵であることを特徴とする付記1または2に記載の認証装置。 (Supplementary Note 3) The public key of the user is a public key acquired by the encryption apparatus from a token device that stores the identification information of the user and a combination of a public key and a private key. The authentication device according to appendix 1 or 2.
(付記4)準同型暗号による暗号化情報を暗号化したまま認証し前記暗号化情報を更新可能な認証装置に対し通信可能な暗号化装置であって、
利用者の識別情報と公開鍵および秘密鍵の組み合わせとを記憶するトークンデバイスから、前記識別情報と前記公開鍵とを取得する取得手段と、
前記取得手段によって取得された公開鍵によって、前記利用者の生体情報を前記準同型暗号によって暗号化する暗号化手段と、
前記識別情報と前記公開鍵と前記暗号化手段によって暗号化された生体情報とを前記認証装置に送信する送信手段と、
を備えることを特徴とする暗号化装置。
(Appendix 4) An encryption device that can communicate with an authentication device that can authenticate encrypted information by homomorphic encryption and update the encrypted information,
Obtaining means for obtaining the identification information and the public key from a token device that stores the identification information of the user and a combination of a public key and a secret key;
An encryption means for encrypting the biometric information of the user by the homomorphic encryption with the public key acquired by the acquisition means;
Transmitting means for transmitting the identification information, the public key, and the biometric information encrypted by the encryption means to the authentication device;
An encryption device comprising:
(付記5)前記トークンデバイスに、前記公開鍵および前記秘密鍵の組み合わせとは異なる公開鍵および秘密鍵の組み合わせの生成を指示する生成指示手段をさらに備え、
前記取得手段は、
前記トークンデバイスから、前記識別情報と前記生成指示手段によって生成された公開鍵とを取得することを特徴とする付記4に記載の暗号化装置。
(Additional remark 5) It is further provided with the production | generation instruction | indication means which instruct | indicates the production | generation of the combination of the public key and secret key different from the combination of the said public key and the said secret key to the said token device,
The acquisition means includes
The encryption apparatus according to appendix 4, wherein the identification information and the public key generated by the generation instruction unit are acquired from the token device.
(付記6)認証結果に基づいて、認証が成功したか否かを判断する判断手段と、
前記認証装置から前記準同型暗号によって暗号化された認証結果を受信する受信手段と、
前記トークンデバイスに、前記秘密鍵によって前記暗号化された認証結果の復号を指示する復号指示手段と、をさらに備え、
前記暗号化手段は、
前記取得手段によって読み取られた公開鍵によって、前記利用者の生体情報が前記準同型暗号のうちランダム性を持つ準同型暗号によって暗号化し、
前記取得手段は、
前記トークンデバイスから、前記復号指示手段によって復号された認証結果を取得し、
前記判断手段は、
前記取得手段によって復号された認証結果を取得するとともに、前記復号された認証結果に基づいて、認証が成功したか否かを判断することを特徴とする付記4または5に記載の暗号化装置。
(Additional remark 6) Based on an authentication result, the judgment means which judges whether authentication was successful,
Receiving means for receiving an authentication result encrypted by the homomorphic encryption from the authentication device;
Decryption instruction means for instructing the token device to decrypt the authentication result encrypted with the secret key,
The encryption means includes
With the public key read by the acquisition means, the biometric information of the user is encrypted with a homomorphic encryption having randomness among the homomorphic encryption,
The acquisition means includes
Obtaining an authentication result decrypted by the decryption instruction means from the token device;
The determination means includes
The encryption apparatus according to appendix 4 or 5, wherein the authentication result decrypted by the obtaining unit is obtained, and whether or not the authentication is successful is determined based on the decrypted authentication result.
(付記7)電子署名の正当性を検証する署名検証手段と、
前記トークンデバイスに、前記暗号化手段によって前記生体情報を暗号化した秘密鍵および公開鍵の組み合わせとは異なる署名用の秘密鍵および署名用の公開鍵のうち、前記署名用の秘密鍵によって任意の値に対する電子署名の生成を指示する署名生成指示手段と、をさらに備え、
前記取得手段は、
前記トークンデバイスから、前記署名生成指示手段によって生成された前記任意の値に対する電子署名を取得し、
前記署名検証手段は、
前記取得手段によって生成された任意の値に対する電子署名を取得するとともに、前記任意の値に対する電子署名を前記署名用の公開鍵によって検証することを特徴とする付記4〜6のいずれか一つに記載の暗号化装置。
(Appendix 7) Signature verification means for verifying the validity of an electronic signature;
The token device has a signature private key and a signature public key that are different from a combination of a secret key and a public key obtained by encrypting the biometric information by the encryption unit. Signature generation instruction means for instructing generation of an electronic signature for the value,
The acquisition means includes
Obtaining an electronic signature for the arbitrary value generated by the signature generation instruction means from the token device;
The signature verification means includes
The electronic signature for an arbitrary value generated by the acquisition unit is acquired, and the electronic signature for the arbitrary value is verified with the public key for the signature. The encryption device described.
(付記8)利用者の識別情報を記憶する記憶手段と、
公開鍵と秘密鍵との組み合わせを生成する生成手段と、
準同型暗号による暗号化を要求されたか否かを判断する判断手段と、
前記判断手段によって準同型暗号による暗号化を要求されたと判断された場合、前記記憶手段によって記憶された識別情報と前記生成手段によって生成された公開鍵とを要求元に送信する送信手段と、
を備えることを特徴とするトークンデバイス。
(Supplementary Note 8) Storage means for storing user identification information;
Generating means for generating a combination of a public key and a private key;
A determination means for determining whether or not encryption by homomorphic encryption is requested;
A transmission means for transmitting the identification information stored by the storage means and the public key generated by the generation means to the request source when it is determined by the determination means that encryption by homomorphic encryption is requested;
A token device comprising:
(付記9)暗号化装置から準同型暗号による暗号化情報を受信し、認証装置によって実行される認証方法であって、
前記暗号化装置から、利用者の公開鍵を用いて準同型暗号によって暗号化された生体情報と、前記利用者の識別情報と、前記利用者の公開鍵とを受信するステップと、
任意の利用者の識別情報と、前記任意の利用者の公開鍵を用いて準同型暗号によって暗号化された前記任意の利用者の生体情報と、前記任意の利用者の公開鍵とを前記任意の利用者ごとに対応づけて記憶するデータベースから、前記受信した識別情報に基づいて、前記データベースに記憶されている公開鍵と暗号化された生体情報とを検索するステップと、
前記検索された公開鍵と暗号化された生体情報と、前記受信した公開鍵と暗号化された生体情報とを基に前記利用者の認証を行うステップと、
を前記認証装置が実行することを特徴とする認証方法。
(Supplementary Note 9) An authentication method executed by the authentication device by receiving the encryption information by the homomorphic encryption from the encryption device,
Receiving from the encryption device biometric information encrypted by homomorphic encryption using a user's public key, the user's identification information, and the user's public key;
The arbitrary user identification information, the arbitrary user's biometric information encrypted by homomorphic encryption using the arbitrary user's public key, and the arbitrary user's public key Searching a public key stored in the database and encrypted biometric information based on the received identification information from a database stored in association with each user of
Authenticating the user based on the retrieved public key and encrypted biometric information, and the received public key and encrypted biometric information;
The authentication method executes the authentication.
(付記10)暗号化装置から準同型暗号による暗号化情報を受信し、認証を行う認証装置として機能するコンピュータに、
前記暗号化装置から、利用者の公開鍵を用いて準同型暗号によって暗号化された生体情報と、前記利用者の識別情報と、前記利用者の公開鍵とを受信するステップと、
任意の利用者の識別情報と、前記任意の利用者の公開鍵を用いて準同型暗号によって暗号化された前記任意の利用者の生体情報と、前記任意の利用者の公開鍵とを前記任意の利用者ごとに対応づけて記憶するデータベースから、前記受信した識別情報に基づいて、前記データベースに記憶されている公開鍵と暗号化された生体情報とを検索するステップと、
前記検索された公開鍵と暗号化された生体情報と、前記受信した公開鍵と暗号化された生体情報とを基に前記利用者の認証を行うステップと、
を実行させることを特徴とする認証プログラム。
(Supplementary Note 10) A computer functioning as an authentication apparatus that receives encrypted information by homomorphic encryption from an encryption apparatus and performs authentication,
Receiving from the encryption device biometric information encrypted by homomorphic encryption using a user's public key, the user's identification information, and the user's public key;
The arbitrary user identification information, the arbitrary user's biometric information encrypted by homomorphic encryption using the arbitrary user's public key, and the arbitrary user's public key Searching a public key stored in the database and encrypted biometric information based on the received identification information from a database stored in association with each user of
Authenticating the user based on the retrieved public key and encrypted biometric information, and the received public key and encrypted biometric information;
An authentication program characterized by causing
100 認証システム
101 認証装置
103 暗号化装置
104 トークンデバイス
108 暗号化生体情報テーブル
301 取得部
302 暗号化部
303 送信部
304 受信部
305 検索部
306 実行部
307 受信部
308 生成指示部
309 生成部
310 送信部
311 更新部
312 復号指示部
313 取得部
314 復号部
315 判断部
316 署名生成指示部
317 署名生成部
318 署名検証部
319 記憶部
320 判断部
DESCRIPTION OF
Claims (8)
前記暗号化装置から、利用者の公開鍵を用いて準同型暗号によって暗号化された生体情報と、前記利用者の識別情報と、前記利用者の公開鍵とを受信する受信手段と、
複数の利用者の識別情報と、前記複数の利用者の公開鍵を用いて準同型暗号によって暗号化された前記複数の利用者の生体情報と、前記複数の利用者の公開鍵とを前記複数の利用者の各々の利用者に対応づけて記憶するデータベースから、前記受信手段によって受信された識別情報に基づいて、前記データベースに記憶されている公開鍵と暗号化された生体情報とを検索する検索手段と、
公開鍵と前記公開鍵で暗号化された2つの生体情報とが入力されると認証の成否を示す値が前記公開鍵を用いて暗号化された値を出力する関数に前記利用者の公開鍵と前記暗号化装置から受信した暗号化された生体情報と前記データベースに記憶されている前記暗号化された生体情報とを入力することにより得られた値と、前記認証の成否を示す値が前記利用者の公開鍵を用いて暗号化された値との比較結果に基づいて、前記利用者の認証を行う実行部と、
を備えることを特徴とする認証装置。 An authentication device for receiving and authenticating encryption information by homomorphic encryption from an encryption device,
Receiving means for receiving biometric information encrypted by homomorphic encryption using a user's public key, the user's identification information, and the user's public key from the encryption device;
Wherein the identification information of a plurality of users, and the encrypted plurality of user biometric information by the plurality of users homomorphic encryption using the public key of a public key of said plurality of users plurality from a database that stores the user's respective association with the user, based on the received identification information by said receiving means, retrieves the public key and the encrypted biometric information stored in the database Search means;
When a public key and two pieces of biometric information encrypted with the public key are input, a value indicating success or failure of authentication is output to a function that outputs a value encrypted using the public key. And a value obtained by inputting the encrypted biometric information received from the encryption device and the encrypted biometric information stored in the database, and a value indicating the success or failure of the authentication An execution unit for authenticating the user based on a comparison result with a value encrypted using the public key of the user;
An authentication device comprising:
利用者の識別情報と前記利用者の公開鍵および前記利用者の秘密鍵の組み合わせとを記憶するトークンデバイスから、前記利用者の識別情報と前記利用者の公開鍵とを取得する取得手段と、
前記取得手段によって取得された利用者の公開鍵によって、前記利用者の生体情報を前記準同型暗号によって暗号化する暗号化手段と、
前記利用者の識別情報と前記利用者の公開鍵と前記暗号化手段によって暗号化された生体情報とを前記認証装置に送信する送信手段と、
を備えることを特徴とする暗号化装置。 The first encryption information to be authenticated encrypted by the homomorphic encryption using the public key and the public key, and the second encrypted by the homomorphic encryption stored in the database using the public key When the encryption information is input, the output result of the function that outputs the value indicating the success or failure of the authentication using the public key, and the value indicating the success or failure of the authentication uses the public key. An encryption device capable of communicating with an authentication device capable of authenticating based on a comparison result with the encrypted value and updating the second encrypted information,
From the token device that stores the identification information of the user and the combination of public and private keys of the user of said user, an acquisition unit for acquiring the public key of the user identification information of the user,
Encrypting means for encrypting the biometric information of the user by the homomorphic encryption with the public key of the user acquired by the acquiring means;
Transmitting means for transmitting the identification information of the user, the public key of the user, and biometric information encrypted by the encryption means to the authentication device;
An encryption device comprising:
前記トークンデバイスに、前記暗号化手段によって前記生体情報を暗号化した秘密鍵および公開鍵の組み合わせとは異なる署名用の秘密鍵および署名用の公開鍵のうち、前記署名用の秘密鍵によっていずれかの値に対する電子署名の生成を指示する署名生成指示手段と、
をさらに備え、
前記取得手段は、
前記トークンデバイスから、前記署名生成指示手段によって生成された前記いずれかの値に対する電子署名を取得し、
前記署名検証手段は、
前記取得手段によって生成されたいずれかの値に対する電子署名を取得するとともに、前記いずれかの値に対する電子署名を前記署名用の公開鍵によって検証することを特徴とする請求項4に記載の暗号化装置。 Signature verification means for verifying the validity of the electronic signature;
Either the secret key for signature or the public key for signature, which is different from the combination of the secret key and the public key obtained by encrypting the biometric information by the encryption unit, is selected according to the secret key for signature . a signature generation instruction means for instructing the generation of the digital signature for the value,
Further comprising a,
The acquisition means includes
Obtaining an electronic signature for any of the values generated by the signature generation instruction means from the token device;
The signature verification means includes
Obtains the electronic signature for one of the values generated by the acquisition unit, the encryption according to the electronic signature for said one of the values to claim 4, characterized in that the verification by the public key for the signature apparatus.
利用者の識別情報を記憶する記憶手段と、
前記利用者の公開鍵と前記利用者の秘密鍵との組み合わせを生成する生成手段と、
前記暗号化装置から準同型暗号による暗号化を要求されたか否かを判断する判断手段と、
前記判断手段によって準同型暗号による暗号化を要求されたと判断された場合、前記記憶手段によって記憶された識別情報と前記生成手段によって生成された利用者の公開鍵とを前記暗号化装置に送信する送信手段と、
を備えることを特徴とするトークンデバイス。 The first encryption information to be authenticated encrypted by the homomorphic encryption using the public key and the public key, and the second encrypted by the homomorphic encryption stored in the database using the public key When the encryption information is input, the output result of the function that outputs the value indicating the success or failure of the authentication using the public key, and the value indicating the success or failure of the authentication uses the public key. A token device that can communicate with an encryption device that can communicate with an authentication device that authenticates based on a comparison result with an encrypted value,
Storage means for storing user identification information;
Generating means for generating a combination of the user 's public key and the user's private key;
Determining means for determining whether or not encryption by the homomorphic encryption is requested from the encryption device ;
When it is determined by the determination means that encryption by homomorphic encryption is requested, the identification information stored by the storage means and the user's public key generated by the generation means are transmitted to the encryption device . A transmission means;
A token device comprising:
前記暗号化装置から、利用者の公開鍵を用いて準同型暗号によって暗号化された生体情報と、前記利用者の識別情報と、前記利用者の公開鍵とを受信するステップと、
複数の利用者の識別情報と、前記複数の利用者の公開鍵を用いて準同型暗号によって暗号化された前記複数の利用者の生体情報と、前記複数の利用者の公開鍵とを前記複数の利用者の各々の利用者に対応づけて記憶するデータベースから、前記受信した識別情報に基づいて、前記データベースに記憶されている公開鍵と暗号化された生体情報とを検索するステップと、
公開鍵と前記公開鍵で暗号化された2つの生体情報とが入力されると認証の成否を示す値が前記公開鍵を用いて暗号化された値を出力する関数に前記利用者の公開鍵と前記暗号化装置から受信した暗号化された生体情報と前記データベースに記憶されている前記暗号化された生体情報とを入力することにより得られた値と、前記認証の成否を示す値が前記利用者の公開鍵を用いて暗号化された値との比較結果に基づいて、前記利用者の認証を行うステップと、
を前記認証装置が実行することを特徴とする認証方法。 An authentication method for receiving encrypted information by homomorphic encryption from an encryption device and executed by the authentication device,
Receiving from the encryption device biometric information encrypted by homomorphic encryption using a user's public key, the user's identification information, and the user's public key;
Wherein the identification information of a plurality of users, and the encrypted plurality of user biometric information by the plurality of users homomorphic encryption using the public key of a public key of said plurality of users plurality Searching a public key stored in the database and encrypted biometric information based on the received identification information from a database stored in association with each of the users of
When a public key and two pieces of biometric information encrypted with the public key are input, a value indicating success or failure of authentication is output to a function that outputs a value encrypted using the public key. And a value obtained by inputting the encrypted biometric information received from the encryption device and the encrypted biometric information stored in the database, and a value indicating the success or failure of the authentication Authenticating the user based on a comparison result with a value encrypted using the user's public key ;
The authentication method executes the authentication.
前記暗号化装置から、利用者の公開鍵を用いて準同型暗号によって暗号化された生体情報と、前記利用者の識別情報と、前記利用者の公開鍵とを受信するステップと、
複数の利用者の識別情報と、前記複数の利用者の公開鍵を用いて準同型暗号によって暗号化された前記複数の利用者の生体情報と、前記複数の利用者の公開鍵とを前記複数の利用者の各々の利用者に対応づけて記憶するデータベースから、前記受信した識別情報に基づいて、前記データベースに記憶されている公開鍵と暗号化された生体情報とを検索するステップと、
公開鍵と前記公開鍵で暗号化された2つの生体情報とが入力されると認証の成否を示す値が前記公開鍵を用いて暗号化された値を出力する関数に前記利用者の公開鍵と前記暗号化装置から受信した暗号化された生体情報と前記データベースに記憶されている前記暗号化された生体情報とを入力することにより得られた値と、前記認証の成否を示す値が前記利用者の公開鍵を用いて暗号化された値との比較結果に基づいて、前記利用者の認証を行うステップと、
を実行させることを特徴とする認証プログラム。 The computer functioning as an authentication device that receives encrypted information by homomorphic encryption from the encryption device and performs authentication,
Receiving from the encryption device biometric information encrypted by homomorphic encryption using a user's public key, the user's identification information, and the user's public key;
Wherein the identification information of a plurality of users, and the encrypted plurality of user biometric information by the plurality of users homomorphic encryption using the public key of a public key of said plurality of users plurality Searching a public key stored in the database and encrypted biometric information based on the received identification information from a database stored in association with each of the users of
When a public key and two pieces of biometric information encrypted with the public key are input, a value indicating success or failure of authentication is output to a function that outputs a value encrypted using the public key. And a value obtained by inputting the encrypted biometric information received from the encryption device and the encrypted biometric information stored in the database, and a value indicating the success or failure of the authentication Authenticating the user based on a comparison result with a value encrypted using the user's public key ;
An authentication program characterized by causing
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2010078569A JP5573293B2 (en) | 2010-03-30 | 2010-03-30 | Authentication device, encryption device, token device, authentication method, and authentication program |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2010078569A JP5573293B2 (en) | 2010-03-30 | 2010-03-30 | Authentication device, encryption device, token device, authentication method, and authentication program |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2011211593A JP2011211593A (en) | 2011-10-20 |
JP5573293B2 true JP5573293B2 (en) | 2014-08-20 |
Family
ID=44942172
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2010078569A Expired - Fee Related JP5573293B2 (en) | 2010-03-30 | 2010-03-30 | Authentication device, encryption device, token device, authentication method, and authentication program |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP5573293B2 (en) |
Families Citing this family (23)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103380591B (en) * | 2011-02-22 | 2016-03-30 | 三菱电机株式会社 | Similar degree computing system, similar degree calculation element and similar degree computational methods |
KR101388724B1 (en) | 2011-11-11 | 2014-04-25 | 닛본 덴끼 가부시끼가이샤 | Database encryption system, method, and computer-readable recording medium |
US20140247939A1 (en) * | 2011-11-30 | 2014-09-04 | Mitsubishi Electric Corporation | Data processing device and data processing method and program |
JP5707311B2 (en) * | 2011-12-12 | 2015-04-30 | 株式会社日立製作所 | Biometric signature system |
KR101380868B1 (en) | 2012-11-28 | 2014-04-02 | 한국전자통신연구원 | Method for transmitting metering information from smart meter to advanced metering infrastructure server |
JP5963936B2 (en) | 2013-02-25 | 2016-08-03 | 三菱電機株式会社 | Server device, secret search program, recording medium, and secret search system |
US9489501B2 (en) | 2013-09-19 | 2016-11-08 | Fujitsu Limited | Authentication method, authentication device, and system |
JP6151627B2 (en) * | 2013-11-14 | 2017-06-21 | Kddi株式会社 | Biometric authentication system, biometric authentication method, and computer program |
US9503266B2 (en) * | 2014-05-25 | 2016-11-22 | Fujitsu Limited | Relational encryption |
US10248800B2 (en) * | 2014-10-22 | 2019-04-02 | Openeye Scientific Software, Inc. | Secure comparison of information |
KR101683592B1 (en) | 2015-04-14 | 2016-12-07 | 삼성에스디에스 주식회사 | Method and Apparatus for Managing Data, Data Management System Using the Same |
KR101659226B1 (en) * | 2015-05-27 | 2016-09-30 | 인하대학교 산학협력단 | Method and system for remote biometric verification using fully homomorphic encryption |
US10075301B2 (en) * | 2015-07-13 | 2018-09-11 | Fujitsu Limited | Relational encryption for password verification |
US10129028B2 (en) * | 2015-07-13 | 2018-11-13 | Fujitsu Limited | Relational encryption for password verification |
US20170293913A1 (en) * | 2016-04-12 | 2017-10-12 | The Governing Council Of The University Of Toronto | System and methods for validating and performing operations on homomorphically encrypted data |
WO2017221368A1 (en) * | 2016-06-23 | 2017-12-28 | 株式会社日立製作所 | Biometric signature system and biometric certificate registration method |
SE1750282A1 (en) * | 2017-03-13 | 2018-09-14 | Fingerprint Cards Ab | Updating biometric data templates |
CN112313648A (en) * | 2018-06-15 | 2021-02-02 | Capy株式会社 | Authentication system, authentication method, application providing device, authentication device, and authentication program |
US11870892B2 (en) | 2018-10-11 | 2024-01-09 | Nec Corporation | Information processing apparatus, secret calculation method, and program |
US12063293B2 (en) | 2018-12-12 | 2024-08-13 | Nec Corporation | Collation system, client and server |
US11907952B2 (en) * | 2019-03-12 | 2024-02-20 | Cox Communications, Inc. | Secured analytics using encrypted data |
JP2021073788A (en) * | 2021-01-21 | 2021-05-13 | 日本電気株式会社 | Collation system, method, and program |
WO2024171434A1 (en) * | 2023-02-17 | 2024-08-22 | 日本電気株式会社 | Information updating device and method, authentication device and method, and computer-readable medium |
Family Cites Families (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4320519B2 (en) * | 2001-11-09 | 2009-08-26 | ソニー株式会社 | Personal authentication system |
JP2003304242A (en) * | 2002-04-10 | 2003-10-24 | Nippon Telegr & Teleph Corp <Ntt> | Method, device for multiple authentication by single secret key and web service use method using the same method |
JP2005115583A (en) * | 2003-10-07 | 2005-04-28 | Hitachi Ltd | User authentication system |
EP1815637B1 (en) * | 2004-11-16 | 2016-04-20 | Koninklijke Philips N.V. | Securely computing a similarity measure |
JP2006262333A (en) * | 2005-03-18 | 2006-09-28 | Ic Brains Co Ltd | Living body authentication system |
EP1964305B1 (en) * | 2005-12-13 | 2014-07-30 | Koninklijke Philips N.V. | Secure threshold decryption protocol computation |
JP2008097438A (en) * | 2006-10-13 | 2008-04-24 | Hitachi Ltd | User authentication system, authentication server, terminal, and tamper-proof device |
JP4999472B2 (en) * | 2007-01-22 | 2012-08-15 | 三菱電機株式会社 | Information processing apparatus and calculation method |
JP4929136B2 (en) * | 2007-11-27 | 2012-05-09 | 株式会社日立製作所 | Biometric authentication method, apparatus and system |
-
2010
- 2010-03-30 JP JP2010078569A patent/JP5573293B2/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2011211593A (en) | 2011-10-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5573293B2 (en) | Authentication device, encryption device, token device, authentication method, and authentication program | |
US20220191012A1 (en) | Methods For Splitting and Recovering Key, Program Product, Storage Medium, and System | |
US10680808B2 (en) | 1:N biometric authentication, encryption, signature system | |
US10797879B2 (en) | Methods and systems to facilitate authentication of a user | |
CN113545006B (en) | Remote authorized access locked data storage device | |
KR101863953B1 (en) | System and method for providing electronic signature service | |
CN101939754B (en) | Finger sensing apparatus using hybrid matching and associated methods | |
US8490164B2 (en) | User authentication method, user authenticating device and program product | |
CN101159554B (en) | Biometric authentication system, enrollment terminal, authentication terminal and authentication server | |
CN113691502B (en) | Communication method, device, gateway server, client and storage medium | |
KR102578428B1 (en) | Update biometric template protection key | |
KR20010052105A (en) | Cryptographic key generation using biometric data | |
CN101971182B (en) | Finger sensing apparatus with credential release and associated methods | |
US9712499B2 (en) | Method and apparatus for cryptographic processing | |
JPWO2007094165A1 (en) | Identification system and program, and identification method | |
KR20190122655A (en) | Update of Biometric Data Template | |
CN111401901B (en) | Authentication method and device of biological payment device, computer device and storage medium | |
EP2579221A1 (en) | Template delivery type cancelable biometric authentication system and method therefor | |
CN109063523B (en) | Radio frequency identification security authentication method and system | |
EP1758044A2 (en) | Authentication method, authentication apparatus, and computer product | |
JP4763465B2 (en) | Personal authentication apparatus, server apparatus, authentication system, and authentication method | |
JP2018133739A (en) | Secret key copying system, terminal, and secret key copying method | |
KR102070248B1 (en) | User authentication apparatus supporting secure storage of private key and operating method thereof | |
CN115834077B (en) | Control method, control system, electronic device and storage medium | |
JP2007188194A (en) | Authentication system, transform function generation device, transform function generation method, program enabling computer to execute the transform function generation method, and recording medium with the program recorded thereon in computer-executable manner |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20130206 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20140110 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20140128 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20140331 |
|
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: 20140603 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20140616 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 5573293 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
LAPS | Cancellation because of no payment of annual fees |