JP2021061633A - Computer system, verification method of secret information, and computer - Google Patents

Computer system, verification method of secret information, and computer Download PDF

Info

Publication number
JP2021061633A
JP2021061633A JP2021000451A JP2021000451A JP2021061633A JP 2021061633 A JP2021061633 A JP 2021061633A JP 2021000451 A JP2021000451 A JP 2021000451A JP 2021000451 A JP2021000451 A JP 2021000451A JP 2021061633 A JP2021061633 A JP 2021061633A
Authority
JP
Japan
Prior art keywords
information
feature data
template
arithmetic unit
error
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2021000451A
Other languages
Japanese (ja)
Other versions
JP7021375B2 (en
Inventor
高橋 健太
Kenta Takahashi
健太 高橋
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.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP2021000451A priority Critical patent/JP7021375B2/en
Publication of JP2021061633A publication Critical patent/JP2021061633A/en
Application granted granted Critical
Publication of JP7021375B2 publication Critical patent/JP7021375B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Collating Specific Patterns (AREA)
  • Storage Device Security (AREA)

Abstract

To provide a technique of a biometric cipher capable of satisfying both efficiency and safety.SOLUTION: The computer system includes a computer. The computer generates feature data based on bio-information obtained from a user, generates error feature data showing the error that occurs in bio-information and steady-state feature data showing the part other than the error that occurs in bio-information based on the feature data, generates a template based on error feature data of the bio-information, generates first secret information used for cryptographic processing based on the steady-state feature data of the bio-information, and generate first verification information based on the first secret information.SELECTED DRAWING: Figure 1

Description

本発明は、ユーザの生体情報に基づいて、認証、暗号、及び署名などの処理を行うシス
テムに関する。
The present invention relates to a system that performs processing such as authentication, encryption, and signature based on the biometric information of a user.

指紋、静脈、顔、及び虹彩などの生体情報に基づいて個人の認証などを行う生体認証技
術が広く利用されている。従来の生体認証技術では、以下のような処理が行われる。まず
、ユーザ登録時には、端末は、ユーザの生体情報から抽出した特徴データをテンプレート
としてシステムに登録する。ユーザ認証時には、端末は、テンプレートと、再度ユーザの
生体情報から抽出した特徴データとを比較して、類似度が十分大きい場合、すなわち、二
つの特徴データの距離が十分近い場合、認証の成功と判定し、類似度が小さい場合には認
証の失敗と判定する。
Biometric authentication technology that authenticates an individual based on biometric information such as fingerprints, veins, faces, and irises is widely used. In the conventional biometric authentication technology, the following processing is performed. First, at the time of user registration, the terminal registers the feature data extracted from the user's biological information in the system as a template. At the time of user authentication, the terminal compares the template with the feature data extracted from the user's biometric information again, and if the similarity is sufficiently large, that is, if the distance between the two feature data is sufficiently close, the authentication is successful. Judgment is made, and if the similarity is small, it is judged that the authentication has failed.

生体情報は、一般には取り替えることのできない情報である。そのため、生体情報の漏
えいは大きな問題となる。この問題に対し、生体情報を秘匿したまま認証する、テンプレ
ート保護型の生体認証技術が研究開発されている。その中で、生体情報から鍵データを生
成し、暗号学的な認証処理、暗号化処理、復号化処理、及び署名生成処理などの処理を行
う、バイオメトリック暗号と呼ばれる技術が注目されている。
Biological information is generally irreplaceable information. Therefore, leakage of biological information becomes a big problem. To solve this problem, template-protected biometric authentication technology that authenticates biometric information while keeping it confidential has been researched and developed. Among them, a technique called biometric encryption, which generates key data from biometric information and performs processing such as cryptographic authentication processing, encryption processing, decryption processing, and signature generation processing, is attracting attention.

バイオメトリック暗号では、端末は、生体情報の登録時に、生体情報の特徴データXを
変換し、秘密鍵Kを埋め込むことによって、保護テンプレートTを生成する。その後、端
末は、新たに取得した生体情報の特徴データX’及び保護テンプレートTを用いて秘密鍵
Kを復元する。秘密鍵の復元が成功した場合、端末は、当該秘密鍵Kを用いて暗号学的な
認証処理、暗号化処理、復号化処理、及び電子署名生成処理を実行できる。
In the biometric encryption, the terminal generates the protection template T by converting the feature data X of the biometric information and embedding the private key K at the time of registering the biometric information. After that, the terminal restores the private key K by using the newly acquired feature data X'of the biometric information and the protection template T. If the restoration of the private key is successful, the terminal can perform cryptographic authentication processing, encryption processing, decryption processing, and electronic signature generation processing using the private key K.

安全性の要件から、バイオメトリック暗号において、保護テンプレートTを用いた特徴
データXの復元又は推定は十分困難でなくてはならない。一方、特徴データX’が特徴デ
ータXに十分類似している場合、秘密鍵の復元処理が成功するようにしなければならない
Due to security requirements, it must be sufficiently difficult to restore or estimate feature data X using protection template T in biometric cryptography. On the other hand, if the feature data X'is sufficiently similar to the feature data X, the private key restoration process must be successful.

バイオメトリック暗号の具体的な実現方法として、例えば、非特許文献1に記載されて
いる方法が提案されている。非特許文献1では、生体情報から抽出された特徴データは、
式(1)に示すようなn次元実数ベクトルXであって、各要素とも±δまでの誤差が許さ
れる。すなわち、値の誤差が±δの範囲であれば本人として受理される。また、秘密鍵は
式(2)に示すような整数ベクトルとして表現できるものとする。秘密鍵の各要素s_i
はそれぞれqビット整数とする。ここで、添字iは1からnまでの値であり、qは任意の
整数である。したがって、要素s_iは0以上、かつ、2−1以下の整数である。
As a specific method for realizing biometric encryption, for example, the method described in Non-Patent Document 1 has been proposed. In Non-Patent Document 1, the feature data extracted from the biological information is
It is an n-dimensional real number vector X as shown in the equation (1), and an error of up to ± δ is allowed for each element. That is, if the error of the value is in the range of ± δ, it is accepted as the person. Further, the private key can be expressed as an integer vector as shown in the equation (2). Each element of the private key s_i
Are q-bit integers, respectively. Here, the subscript i is a value from 1 to n, and q is an arbitrary integer. Therefore, the element s_i is an integer of 0 or more and 2 q -1 or less.

Figure 2021061633
Figure 2021061633

Figure 2021061633
Figure 2021061633

生体情報の登録時のテンプレートTは式(3)に示すようなベクトルとして表現でき、
要素t_iは式(4)に基づいて算出される。ここで、添字iは1からnまでの値である
The template T at the time of registration of biometric information can be expressed as a vector as shown in the equation (3).
The element t_i is calculated based on the equation (4). Here, the subscript i is a value from 1 to n.

Figure 2021061633
Figure 2021061633

Figure 2021061633
Figure 2021061633

新たに取得した生体情報の特徴データX’は式(5)に示すようなベクトルとして表現
できる。
The newly acquired feature data X'of the biological information can be expressed as a vector as shown in the equation (5).

Figure 2021061633
Figure 2021061633

秘密鍵の検証時には、端末は、保存されたテンプレートT及び特徴データX’を用いて
、式(7)に示す演算を実行することによって式(6)で表現される秘密鍵S’の各要素
の値を算出する。これによって、秘密鍵S’が復元される。ここで、添字iは1からnま
での値である。また、記号「[ ]」は、括弧内の値の小数部分を切り捨てて、整数部分
を取り出す演算を表す。
At the time of verification of the private key, the terminal uses the saved template T and the feature data X'to execute the operation shown in the equation (7) to execute each element of the private key S'represented by the equation (6). Calculate the value of. As a result, the private key S'is restored. Here, the subscript i is a value from 1 to n. The symbol "[]" represents an operation in which the fractional part of the value in parentheses is truncated and the integer part is extracted.

Figure 2021061633
Figure 2021061633

Figure 2021061633
Figure 2021061633

ここで、式(8)を満たす場合、復元された秘密鍵S’は秘密鍵Sと一致するため、端
末は、秘密鍵が正しく復元されたものと判定し、秘密鍵の検証を行ったユーザを、システ
ムに登録されたユーザ本人として受理する。
Here, when the equation (8) is satisfied, the restored private key S'matches the private key S. Therefore, the terminal determines that the private key has been restored correctly, and the user who verifies the private key. Is accepted as the user registered in the system.

Figure 2021061633
Figure 2021061633

非特許文献1で用いられるテンプレートTを用いて特徴データX及び秘密鍵Sを一意に
求めることはできないため、非特許文献1の方法を用いることによって、一定の効果を有
するテンプレートの保護を実現できる。
Since the feature data X and the private key S cannot be uniquely obtained by using the template T used in Non-Patent Document 1, the protection of the template having a certain effect can be realized by using the method of Non-Patent Document 1. ..

Gang Zheng, et.al., “Cryptographic Key Generation from Biometric Data Using Lattice Mapping”, In 18th International Conference on Pattern Recognition (ICPR'06), 2006.Gang Zheng, et.al., “Cryptographic Key Generation from Biometric Data Using Lattice Mapping”, In 18th International Conference on Pattern Recognition (ICPR'06), 2006.

しかし、非特許文献1の方法では、安全性及び効率性に課題がある。 However, the method of Non-Patent Document 1 has problems in safety and efficiency.

安全性に関して、テンプレートTを用いて特徴データX及び秘密鍵Sの候補を絞り込む
ことができるという問題がある。具体的には、秘密鍵Sの要素s_iがqビットの整数で
あるという制約から、t_iを知っている攻撃者は、式(4)に基づいて特徴データXの
要素x_iの候補を式(9)に示す範囲に絞り込むことができる。
Regarding security, there is a problem that the candidates for the feature data X and the private key S can be narrowed down by using the template T. Specifically, due to the restriction that the element s_i of the secret key S is an integer of q bits, an attacker who knows t_i selects a candidate for the element x_i of the feature data X based on the equation (4) (9). ) Can be narrowed down to the range shown in).

Figure 2021061633
Figure 2021061633

さらに、特徴データの要素x_iが取り得る値は式(10)に示す範囲であり、攻撃者
が当該範囲を知っている場合、要素x_iの候補は式(9)及び式(10)の共通範囲に
絞り込むことができる。
Further, the value that the element x_i of the feature data can take is the range shown in the equation (10), and if the attacker knows the range, the candidate of the element x_i is the common range of the equations (9) and (10). Can be narrowed down to.

Figure 2021061633
Figure 2021061633

例えば、要素x_i=x_max、かつ、要素s_i=0である場合、式(4)より要
素t_iは式(11)に示すような値となる。そのため、テンプレートTを知っている攻
撃者は、式(9)から要素x_iが式(12)を満たすことが分かる。
For example, when the element x_i = x_max and the element s_i = 0, the element t_i has a value as shown in the equation (11) according to the equation (4). Therefore, an attacker who knows the template T can know from the equation (9) that the element x_i satisfies the equation (12).

Figure 2021061633
Figure 2021061633

Figure 2021061633
Figure 2021061633

したがって、式(10)及び式(12)から、要素x_iの範囲は式(13)に示すよ
うになるため、攻撃者は、要素x_i=x_maxとなることが分かる。また、攻撃者は
、式(4)から要素s_i=0も分かる。
Therefore, from the equations (10) and (12), the range of the element x_i is shown in the equation (13), so that the attacker knows that the element x_i = x_max. The attacker also knows the element s_i = 0 from the equation (4).

Figure 2021061633
Figure 2021061633

前述の仮定以外の場合においても、要素x_iの範囲が確率的に絞り込まれる可能性が
ある。したがって、十分な安全性を確保するためには、|x_min|及び|x_max
|に対して2が十分大きくなるように、qの値を大きくし、また、秘密鍵Sの要素s_
iを、0以上かつ2−1以下の範囲で一様ランダムに生成する必要である。
In cases other than the above assumptions, the range of element x_i may be stochastically narrowed down. Therefore, in order to ensure sufficient safety, | x_min | and | x_max
Increase the value of q so that 2 q is sufficiently larger than |, and also increase the element s_ of the secret key S.
It is necessary to generate i uniformly and randomly in the range of 0 or more and 2 q -1 or less.

しかし、qを大きくした場合、テンプレートTのサイズも増大し、効率性の課題が生じ
る。具体的には、特徴データXの要素x_iの小数部分の表現桁数が2進数表示でr桁と
した場合、テンプレートTの要素t_iは、整数部分がqビットとなり、小数部分がrビ
ットとなる。したがって、テンプレートTのデータサイズは、n(q+r)ビットとなる
However, when q is increased, the size of the template T also increases, which poses an efficiency problem. Specifically, when the number of expressed digits of the fractional part of the element x_i of the feature data X is r digits in binary display, the integer part of the element t_i of the template T is q bits and the fractional part is r bits. .. Therefore, the data size of the template T is n (q + r) bits.

q=256、r=52(doubleの仮数部桁数)、n=1000とした場合、テン
プレートTのデータサイズは38.5KBとなる。一本の指の指紋から一つのテンプレー
トTを生成する場合、一ユーザに対して10個のテンプレートTが生成される。1億人分
のテンプレートTがシステムに登録された場合、データサイズは合計で38.5TBとな
る。認証用のデータと、登録されたN個の全てのテンプレートとの照合を行う認証方法で
ある1:n認証を実現しようとした場合、38.5TBのデータにアクセスする必要があ
るため、認証処理において、当該データを格納する記憶領域へのアクセス時間が支配的と
なる。
When q = 256, r = 52 (the number of mantissa copies of double), and n = 1000, the data size of the template T is 38.5 KB. When one template T is generated from the fingerprint of one finger, ten template Ts are generated for one user. If template T for 100 million people is registered in the system, the total data size will be 38.5 TB. When trying to realize 1: n authentication, which is an authentication method that collates the authentication data with all the registered N templates, it is necessary to access 38.5 TB of data, so the authentication process In, the access time to the storage area for storing the data becomes dominant.

本発明は、従来のバイオメトリック暗号技術の課題である安全性及び効率性を向上する
ことを目的とする。具体的には、特徴データの推定が困難であり、かつ、サイズが小さい
テンプレートを生成することを目的とする。
An object of the present invention is to improve security and efficiency, which are problems of conventional biometric cryptography. Specifically, the purpose is to generate a template in which feature data is difficult to estimate and the size is small.

本願において開示される発明の代表的な一例を示せば以下の通りである。すなわち、少
なくとも一つの計算機を含む計算機システムであって、前記少なくとも一つの計算機は、
演算装置及び前記演算装置に接続される記憶装置を有し、前記演算装置は、ユーザから取
得された第1生体情報に基づいて第1特徴データを生成し、前記第1特徴データに基づい
て、前記第1生体情報に発生する誤差を示す誤差特徴データ及び前記第1生体情報に発生
する誤差以外の部分を示す定常特徴データを生成し、前記第1生体情報の誤差特徴データ
に基づいてテンプレートを生成し、前記ユーザの識別情報及び前記テンプレートを対応付
けて前記記憶装置に格納し、前記第1生体情報の定常特徴データに基づいて、暗号学的処
理に用いる第1秘密情報を生成し、前記第1秘密情報に基づいて第1検証情報を生成し、
前記ユーザの識別情報及び前記第1検証情報を対応付けて前記記憶装置に格納し、前記暗
号学的処理の実行要求を受け付けた場合、ユーザから取得された第2生体情報に基づいて
第2特徴データを生成し、前記テンプレート及び前記第2特徴データに基づいて、第2秘
密情報を生成し、前記第2秘密情報に基づいて、第2検証情報を生成し、前記第1検証情
報及び前記第2検証情報を比較することによって、前記第2秘密情報の検証を行い、前記
第2秘密情報の検証の結果に基づいて、前記暗号学的処理を実行することを特徴とする。
A typical example of the invention disclosed in the present application is as follows. That is, it is a calculator system including at least one calculator, and the at least one calculator is
It has a calculation device and a storage device connected to the calculation device, and the calculation device generates first feature data based on the first biometric information acquired from the user, and based on the first feature data, the calculation device generates first feature data. Error feature data showing the error generated in the first biometric information and stationary feature data showing the part other than the error generated in the first biometric information are generated, and a template is created based on the error feature data of the first biometric information. The user's identification information and the template are associated with each other and stored in the storage device, and the first secret information used for cryptographic processing is generated based on the stationary feature data of the first biometric information. Generate the first verification information based on the first secret information,
When the user's identification information and the first verification information are associated and stored in the storage device and the execution request of the cryptographic processing is received, the second feature is based on the second biometric information acquired from the user. Data is generated, second secret information is generated based on the template and the second feature data, second verification information is generated based on the second secret information, and the first verification information and the first (2) The second secret information is verified by comparing the verification information, and the cryptographic processing is executed based on the result of the verification of the second secret information.

本発明によれば、テンプレートのサイズを大幅に削減し、かつ、特徴データの推定が困
難なバイオメトリック暗号技術を実現できる。上記した以外の課題、構成及び効果は、以
下の実施例の説明により明らかにされる。
According to the present invention, it is possible to realize a biometric encryption technique in which the size of the template is significantly reduced and the feature data is difficult to estimate. Issues, configurations and effects other than those mentioned above will be clarified by the description of the following examples.

実施例1の生体認証システムの構成例を示す図である。It is a figure which shows the configuration example of the biometric authentication system of Example 1. FIG. 実施例1の生体認証システムを構成する計算機のハードウェア構成の一例を示す図である。It is a figure which shows an example of the hardware configuration of the computer which comprises the biometric authentication system of Example 1. FIG. 実施例1の登録端末が実行する登録処理を説明するフローチャートである。FIG. 5 is a flowchart illustrating a registration process executed by the registration terminal of the first embodiment. 実施例1の認証端末が実行する検証処理を説明するフローチャートである。It is a flowchart explaining the verification process executed by the authentication terminal of Example 1. FIG. 実施例1のテンプレートTの生成処理及び秘密情報skの生成処理を説明するフローチャートである。It is a flowchart explaining the generation process of the template T of Example 1, and the generation process of a secret information sk. 実施例1の秘密情報sk’の復元処理を説明するフローチャートである。It is a flowchart explaining the restoration process of the secret information sk'of the first embodiment.

以下、本発明に係る実施例を添付図面を用いて説明する。各図において共通の構成につ
いては同一の参照符号が付されている。
Hereinafter, examples of the present invention will be described with reference to the accompanying drawings. The same reference numerals are given to common configurations in each figure.

実施例1の生体認証システムでは、まず、生体認証システムに含まれる計算機が、ユー
ザの生体情報からテンプレート及び復元された秘密情報(秘密鍵)を検証するための検証
情報を生成し、データベースに登録する。計算機は、暗号学的処理の実行に伴う秘密情報
の検証を行う場合、登録されたテンプレート及び新たに取得したユーザの生体情報を用い
て秘密情報を復元する。また、計算機は、復元された秘密情報及び検証情報に基づいて、
秘密情報の検証を行い、検証結果に基づいてユーザ認証処理、暗号化処理、復号化処理、
及び電子署名の生成処理などの暗号学的処理を実行する。
In the biometric authentication system of the first embodiment, first, the computer included in the biometric authentication system generates verification information for verifying the template and the restored secret information (private key) from the biometric information of the user, and registers the verification information in the database. To do. When the computer verifies the confidential information accompanying the execution of the cryptographic process, the computer restores the confidential information using the registered template and the newly acquired biometric information of the user. In addition, the calculator is based on the restored confidential information and verification information.
Confidential information is verified, and user authentication processing, encryption processing, decryption processing, etc. are performed based on the verification result.
And perform cryptographic processing such as electronic signature generation processing.

図1は、実施例1の生体認証システムの構成例を示す図である。図2は、実施例1の生
体認証システムを構成する計算機のハードウェア構成の一例を示す図である。
FIG. 1 is a diagram showing a configuration example of the biometric authentication system of the first embodiment. FIG. 2 is a diagram showing an example of the hardware configuration of the computer constituting the biometric authentication system of the first embodiment.

生体認証システムは、登録端末100、認証端末110、DBサーバ120、及びネッ
トワーク130から構成される。登録端末100、認証端末110、及びDBサーバ12
0は、ネットワーク130を介して互いに接続される。ネットワーク130は、LAN(
Local Area Network)及びWAN(Wide Area Netwo
rk)等が考えられる。なお、本実施例はネットワーク130の種別に限定されない。ま
た、ネットワーク130の接続方式は有線及び無線のいずれでもよい。
The biometric authentication system includes a registration terminal 100, an authentication terminal 110, a DB server 120, and a network 130. Registration terminal 100, authentication terminal 110, and DB server 12
0s are connected to each other via the network 130. The network 130 is a LAN (
Local Area Network) and WAN (Wide Area Network) and WAN (Wide Area Network)
rk) etc. can be considered. Note that this embodiment is not limited to the type of network 130. Further, the connection method of the network 130 may be either wired or wireless.

登録端末100は、ユーザから生体情報を取得し、生体情報を用いてテンプレート及び
検証情報を生成し、また、テンプレート及び検証情報をDBサーバ120に登録する。
The registration terminal 100 acquires biometric information from the user, generates a template and verification information using the biometric information, and registers the template and verification information in the DB server 120.

ここで、登録端末100のハードウェア構成について説明する。図2に示すように登録
端末100は、CPU200、メモリ201、記憶装置202、入力装置203、出力装
置204、及び通信装置205を有する。なお、後述する認証端末110及びDBサーバ
120も同一のハードウェア構成である。
Here, the hardware configuration of the registration terminal 100 will be described. As shown in FIG. 2, the registration terminal 100 includes a CPU 200, a memory 201, a storage device 202, an input device 203, an output device 204, and a communication device 205. The authentication terminal 110 and the DB server 120, which will be described later, also have the same hardware configuration.

CPU200は、登録端末100の演算装置であり、メモリ201に格納されるプログ
ラムを実行する。CPU200がプログラムにしたがって処理を実行することによって、
特定の機能を実現するモジュールとして動作する。以下の説明では、モジュールを主語に
処理を説明する場合、CPU200が当該モジュールを実現するプログラムを実行してい
ることを示す。
The CPU 200 is an arithmetic unit of the registration terminal 100 and executes a program stored in the memory 201. When the CPU 200 executes the process according to the program,
It operates as a module that realizes a specific function. In the following description, when the process is described with the module as the subject, it is shown that the CPU 200 is executing the program that realizes the module.

メモリ201は、登録端末100の主記憶装置であり、CPU200が実行するプログ
ラム及びプログラムが使用するデータを格納する。また、メモリ201は、プログラムが
一時的に使用する一時領域を含む。
The memory 201 is the main storage device of the registration terminal 100, and stores a program executed by the CPU 200 and data used by the program. Further, the memory 201 includes a temporary area temporarily used by the program.

記憶装置202は、登録端末100の副記憶装置であり、データを永続的に格納する。
記憶装置202は、例えば、HDD(Hard Disk Drive)及びSSD(S
olid State Drive)等が考えられる。
The storage device 202 is a sub-storage device of the registration terminal 100 and permanently stores data.
The storage device 202 includes, for example, an HDD (Hard Disk Drive) and an SSD (S).
oil State Drive) and the like can be considered.

入力装置203は、登録端末100に各種データを入力するための装置であり、キーボ
ード、マウス、タッチパネル、及びセンサなどを含む。
The input device 203 is a device for inputting various data to the registration terminal 100, and includes a keyboard, a mouse, a touch panel, a sensor, and the like.

出力装置204は、各種情報を出力するための装置であり、タッチパネル及びディスプ
レイなどを含む。
The output device 204 is a device for outputting various information, and includes a touch panel, a display, and the like.

通信装置205は、ネットワークを介して多の装置と通信するためのインタフェースで
ある。
The communication device 205 is an interface for communicating with a large number of devices via a network.

ここで、登録端末100の機能構成について説明する。登録端末100のメモリ201
は、データ取得モジュール101、特徴データ抽出モジュール102、テンプレート生成
モジュール103、秘密情報生成モジュール104、及び検証情報生成モジュール105
を実現するプログラムを格納する。
Here, the functional configuration of the registration terminal 100 will be described. Memory 201 of registration terminal 100
Data acquisition module 101, feature data extraction module 102, template generation module 103, secret information generation module 104, and verification information generation module 105.
Stores the program that realizes.

データ取得モジュール101は、ユーザから指紋及び静脈などの登録用の生体情報を取
得し、取得した登録用の生体情報を特徴データ抽出モジュール102に出力する。
The data acquisition module 101 acquires registration biometric information such as fingerprints and veins from the user, and outputs the acquired biometric information for registration to the feature data extraction module 102.

特徴データ抽出モジュール102は、登録用の生体情報から登録用の特徴データを抽出
し、抽出した登録用の特徴データをテンプレート生成モジュール103及び秘密情報生成
モジュール104に出力する。
The feature data extraction module 102 extracts the feature data for registration from the biometric information for registration, and outputs the extracted feature data for registration to the template generation module 103 and the secret information generation module 104.

テンプレート生成モジュール103は、登録用の特徴データに基づいてテンプレートを
生成する。テンプレート生成モジュール103は、テンプレートをDBサーバ120に送
信することによって、当該テンプレートをテンプレートDB122に登録する。
The template generation module 103 generates a template based on the feature data for registration. The template generation module 103 registers the template in the template DB 122 by transmitting the template to the DB server 120.

秘密情報生成モジュール104は、登録用の特徴データに基づいて秘密情報を生成する
。秘密情報生成モジュール104は、秘密情報を検証情報生成モジュール105に出力す
る。
The secret information generation module 104 generates secret information based on the feature data for registration. The secret information generation module 104 outputs the secret information to the verification information generation module 105.

検証情報生成モジュール105は、秘密情報に基づいて認証端末110が復元した秘密
情報を検証するための検証情報を生成する。検証情報生成モジュール105は、検証情報
をDBサーバ120に送信することによって、当該検証情報を検証情報DB123に登録
する。
The verification information generation module 105 generates verification information for verifying the secret information restored by the authentication terminal 110 based on the secret information. The verification information generation module 105 registers the verification information in the verification information DB 123 by transmitting the verification information to the DB server 120.

認証端末110は、ユーザから新たに生体情報を取得し、新たに取得した生体情報とテ
ンプレートに基づいて秘密情報を復元し、復元された秘密情報の検証を行う。また、認証
端末110は、復元された秘密情報の検証結果に基づいて、ユーザ認証処理、暗号化処理
、復号化処理、及び電子署名の生成処理などの暗号学的処理を実行する。
The authentication terminal 110 newly acquires biometric information from the user, restores the confidential information based on the newly acquired biometric information and the template, and verifies the restored confidential information. Further, the authentication terminal 110 executes cryptographic processing such as user authentication processing, encryption processing, decryption processing, and electronic signature generation processing based on the verification result of the restored confidential information.

ここで、認証端末110の機能構成について説明する。認証端末110のメモリ201
は、データ取得モジュール111、特徴データ抽出モジュール112、秘密情報復元モジ
ュール113、秘密情報検証モジュール114、及びデータ処理モジュール115を実現
するプログラムを格納する。
Here, the functional configuration of the authentication terminal 110 will be described. Memory 201 of authentication terminal 110
Stores a program that realizes a data acquisition module 111, a feature data extraction module 112, a secret information restoration module 113, a secret information verification module 114, and a data processing module 115.

データ取得モジュール111は、ユーザから秘密情報を生成するための生体情報を取得
し、取得した生体情報を特徴データ抽出モジュール112に出力する。
The data acquisition module 111 acquires biometric information for generating confidential information from the user, and outputs the acquired biometric information to the feature data extraction module 112.

特徴データ抽出モジュール112は、生体情報から特徴データを抽出し、抽出した特徴
データを秘密情報復元モジュール113に出力する。
The feature data extraction module 112 extracts feature data from biological information and outputs the extracted feature data to the secret information restoration module 113.

秘密情報復元モジュール113は、特徴データ及びテンプレートに基づいて秘密情報を
復元し、復元された秘密情報を秘密情報検証モジュール114に出力する。
The confidential information restoration module 113 restores the confidential information based on the feature data and the template, and outputs the restored confidential information to the confidential information verification module 114.

秘密情報検証モジュール114は、検証情報に基づいて復元された秘密情報の正しさを
検証する。すなわち、登録端末100によって生成された秘密情報と、復元された秘密情
報とが一致するか否かが判定される。
The confidential information verification module 114 verifies the correctness of the restored confidential information based on the verification information. That is, it is determined whether or not the secret information generated by the registration terminal 100 and the restored secret information match.

データ処理モジュール115は、秘密情報を用いて、認証処理、暗号化処理、復号化処
理、及び電子署名生成処理などの暗号学的処理を実行する。
The data processing module 115 uses the confidential information to perform cryptographic processing such as authentication processing, encryption processing, decryption processing, and electronic signature generation processing.

DBサーバ120は、生体認証システムにおいて使用される各種データを管理する。ま
た、DBサーバ120は、データの登録処理及びデータの検索処理などを実行する。
The DB server 120 manages various data used in the biometric authentication system. Further, the DB server 120 executes data registration processing, data search processing, and the like.

ここで、DBサーバ120の機能構成について説明する。DBサーバ120のメモリ2
01は、データベース管理モジュール121を実現するプログラムを格納し、また、テン
プレートDB122及び検証情報DB123を格納する。なお、テンプレートDB122
及び検証情報DB123は、DBサーバ120の記憶装置202に格納されてもよい。
Here, the functional configuration of the DB server 120 will be described. Memory 2 of DB server 120
01 stores the program that realizes the database management module 121, and also stores the template DB 122 and the verification information DB 123. The template DB 122
And the verification information DB 123 may be stored in the storage device 202 of the DB server 120.

データベース管理モジュール121は、データの登録、更新、及び検索を行う。テンプ
レートDB122は、テンプレートを格納するデータベースである。テンプレートDB1
22には、ユーザの識別情報及びテンプレートを対応付けたデータが一つ以上格納される
。例えば、ユーザの識別情報を格納するフィールド及びテンプレートを格納するフィール
ドから構成されるエントリを一つ以上含むテーブル形式のデータベースが考えられる。
The database management module 121 registers, updates, and searches data. The template DB 122 is a database for storing the template. Template DB1
In 22, one or more data associated with the user's identification information and the template are stored. For example, a table-type database containing one or more entries composed of a field for storing user identification information and a field for storing a template can be considered.

検証情報DB123は、検証情報を格納するデータベースである。検証情報DB123
には、ユーザの識別情報及び検証情報を対応付けたデータが一つ以上格納される。例えば
、ユーザの識別情報を格納するフィールド及び検証情報を格納するフィールドから構成さ
れるエントリを一つ以上含むテーブル形式のデータベースが考えられる。
The verification information DB 123 is a database that stores verification information. Verification information DB123
Stores one or more data associated with the user's identification information and verification information. For example, a table-type database containing one or more entries composed of a field for storing user identification information and a field for storing verification information can be considered.

本実施例では、一つのDBサーバ120がテンプレートDB122及び検証情報DB1
23を保持するが、複数のDBサーバ120から構成される分散データベースを用いて管
理してもよい。この場合、各DBサーバ120にテンプレート及び検証情報が分散して格
納される。テンプレート及び検証情報を分散して管理することによって、情報の漏えいリ
スクが減少するため、安全性を高めることができる。
In this embodiment, one DB server 120 is the template DB 122 and the verification information DB 1.
Although 23 is retained, it may be managed by using a distributed database composed of a plurality of DB servers 120. In this case, the template and the verification information are distributed and stored in each DB server 120. By managing templates and verification information in a distributed manner, the risk of information leakage is reduced, and thus safety can be improved.

なお、テンプレートDB122及び検証情報DB123の少なくともいずれかを認証端
末110が保持してもよい。また、ICカード、USBメモリ、データをQRコード(登
録商標)に変換した印刷物などの可搬媒体、又は、スマートフォンなどの個人端末に、テ
ンプレートDB122及び検証情報DB123の少なくともいずれかを格納してもよい。
The authentication terminal 110 may hold at least one of the template DB 122 and the verification information DB 123. Further, even if at least one of the template DB 122 and the verification information DB 123 is stored in a portable medium such as an IC card, a USB memory, a printed matter in which data is converted into a QR code (registered trademark), or a personal terminal such as a smartphone. Good.

本実施例では、登録端末100、認証端末110、及びDBサーバ120を物理的に独
立した計算機として記載しているが、本発明はこれに限定されない。一つの計算機に複数
の機能を統合してもよい。例えば、認証端末110及びDBサーバ120を一つの計算機
を用いて実現してもよい。
In this embodiment, the registration terminal 100, the authentication terminal 110, and the DB server 120 are described as physically independent computers, but the present invention is not limited thereto. Multiple functions may be integrated into one computer. For example, the authentication terminal 110 and the DB server 120 may be realized by using one computer.

なお、登録端末100、認証端末110、及びDBサーバ120の各々が有する各モジ
ュールについては、二つ以上のモジュールを一つのモジュールにまとめてもよいし、一つ
のモジュールを機能毎に複数のモジュールに分けてもよい。
For each module of the registration terminal 100, the authentication terminal 110, and the DB server 120, two or more modules may be combined into one module, or one module may be combined into a plurality of modules for each function. You may divide it.

次に、実施例1の登録処理の詳細を図3を用いて説明する。図3は、実施例1の登録端
末100が実行する登録処理を説明するフローチャートである。
Next, the details of the registration process of the first embodiment will be described with reference to FIG. FIG. 3 is a flowchart illustrating a registration process executed by the registration terminal 100 of the first embodiment.

登録端末100は、ユーザ又はオペレータの操作を受け付けた場合、以下で説明する登
録処理を開始する。まず、登録端末100のデータ取得モジュール101は、入力装置2
03を用いてユーザから登録用の生体情報を取得する(ステップS301)。なお、デー
タ取得モジュール101は、登録処理の開始時又は登録用の生体情報の取得時に、ユーザ
のID及び氏名など、ユーザの識別情報も取得する。
When the registration terminal 100 receives the operation of the user or the operator, the registration terminal 100 starts the registration process described below. First, the data acquisition module 101 of the registration terminal 100 is the input device 2.
The biometric information for registration is acquired from the user using 03 (step S301). The data acquisition module 101 also acquires user identification information such as a user's ID and name at the start of registration processing or acquisition of biometric information for registration.

次に、登録端末100の特徴データ抽出モジュール102は、登録用の生体情報から登
録用の特徴データを抽出する(ステップS302)。例えば、画像及び特徴ベクトルが特
徴データとして抽出される。
Next, the feature data extraction module 102 of the registration terminal 100 extracts the feature data for registration from the biometric information for registration (step S302). For example, an image and a feature vector are extracted as feature data.

次に、登録端末100のテンプレート生成モジュール103は、登録用の特徴データに
基づいてテンプレートTを生成する(ステップS303)。テンプレートTの生成処理の
詳細については後述する。
Next, the template generation module 103 of the registration terminal 100 generates the template T based on the feature data for registration (step S303). The details of the template T generation process will be described later.

次に、登録端末100の秘密情報生成モジュール104は、登録用の特徴データに基づ
いて秘密情報skを生成する(ステップS304)。秘密情報skの生成処理の詳細につ
いては後述する。
Next, the secret information generation module 104 of the registration terminal 100 generates the secret information sk based on the feature data for registration (step S304). The details of the secret information sk generation process will be described later.

次に、登録端末100の検証情報生成モジュール105は、秘密情報skに基づいて検
証情報vkを生成する(ステップS305)。ここで、検証情報vkの生成方法の一例に
ついて説明する。秘密情報skに基づいて検証情報vkを生成する方法として以下の三つ
の方法が考えられる。
Next, the verification information generation module 105 of the registration terminal 100 generates verification information vk based on the secret information sk (step S305). Here, an example of a method of generating the verification information vk will be described. The following three methods can be considered as a method of generating the verification information vk based on the secret information sk.

(生成方法1)検証情報生成モジュール105は、式(14)に示すように、任意の一
方向性関数Hash()を用いて検証情報vkを生成する。一方向性関数Hash()は
、例えば、SHA256及びSHA3等の暗号学的ハッシュ関数が考えられる。
(Generation Method 1) As shown in the equation (14), the verification information generation module 105 generates the verification information vk using an arbitrary one-way function Hash (). As the one-way function Hash (), for example, a cryptographic hash function such as SHA256 and SHA3 can be considered.

Figure 2021061633
Figure 2021061633

(生成方法2)検証情報生成モジュール105は、式(15)に示すように、巡回群G
=<g>及び秘密情報skの集合から整数集合への写像φを用いて検証情報vkを生成す
る。ここでgは、Gの生成元である。
(Generation method 2) As shown in the equation (15), the verification information generation module 105 has a cyclic group G.
The verification information vk is generated using the mapping φ from the set of = <g> and the secret information sk to the integer set. Here, g is a generator of G.

Figure 2021061633
Figure 2021061633

生成された組(sk,vk)は、ElGamal暗号/署名、DSA、Schnorr
署名、又はそれらの楕円曲線版アルゴリズムなど、多くの公開鍵暗号/電子署名アルゴリ
ズムにおける秘密鍵及び公開鍵の組として扱うことができる。
The generated pairs (sk, vk) are ElGamal encryption / signature, DSA, Schnorr.
It can be treated as a set of private and public keys in many public key cryptography / digital signature algorithms, such as signatures or their elliptic curve algorithms.

(生成方法3)検証情報生成モジュール105は、式(16)に示すように、検証情報
を生成するための秘密鍵又はパラメータであるpを変数とする関数Enc()を用いて検
証情報vkを生成する。なお、pは、ユーザ単位又は登録用の生体情報単位に設定しても
よいし、認証端末110単位又は生体認証システム単位に設定してもよい。
(Generation method 3) As shown in Equation (16), the verification information generation module 105 uses the function Enc () with p as a variable, which is a secret key or parameter for generating verification information, to generate verification information vk. Generate. In addition, p may be set in the user unit or the biometric information unit for registration, or may be set in the authentication terminal 110 unit or the biometric authentication system unit.

Figure 2021061633
Figure 2021061633

関数Enc()は、AES又はRSAなどにおける暗号化関数、及び鍵付きハッシュ関
数などである。以上がステップS305の処理の説明である。
The function Enc () is an encryption function in AES or RSA, a hash function with a key, and the like. The above is the description of the process of step S305.

次に、登録端末100のテンプレート生成モジュール103及び検証情報生成モジュー
ル105は、それぞれ、テンプレートT及び検証情報vkをDBサーバ120に登録する
(ステップS306)。その後、登録端末100は、登録処理を終了する。
Next, the template generation module 103 and the verification information generation module 105 of the registration terminal 100 register the template T and the verification information vk in the DB server 120, respectively (step S306). After that, the registration terminal 100 ends the registration process.

具体的には、テンプレート生成モジュール103は、ユーザの識別情報及びテンプレー
トTを含む登録要求をDBサーバ120に送信し、検証情報生成モジュール105は、ユ
ーザの識別情報及び検証情報vkを含む登録要求をDBサーバ120に送信する。
Specifically, the template generation module 103 transmits a registration request including the user identification information and the template T to the DB server 120, and the verification information generation module 105 sends a registration request including the user identification information and the verification information vk. It is transmitted to the DB server 120.

DBサーバ120は、テンプレート生成モジュール103から登録要求を受信した場合
、ユーザの識別情報及びテンプレートTを対応付けたデータをテンプレートDB122に
登録する。また、DBサーバ120は、検証情報生成モジュール105から登録要求を受
信した場合、ユーザの識別情報及び検証情報vkを対応付けたデータを検証情報DB12
3に登録する。
When the DB server 120 receives the registration request from the template generation module 103, the DB server 120 registers the data associated with the user identification information and the template T in the template DB 122. Further, when the DB server 120 receives the registration request from the verification information generation module 105, the DB server 120 converts the data associated with the user identification information and the verification information vk into the verification information DB 12
Register in 3.

次に、実施例1における検証処理の詳細を図4を用いて説明する。図4は、実施例1の
認証端末110が実行する検証処理を説明するフローチャートである。
Next, the details of the verification process in the first embodiment will be described with reference to FIG. FIG. 4 is a flowchart illustrating a verification process executed by the authentication terminal 110 of the first embodiment.

認証端末110は、ユーザ又はオペレータの操作を受け付けた場合、以下で説明する認
証処理を開始する。まず、認証端末110のデータ取得モジュール111は、入力装置2
03を用いてユーザから検証用の生体情報を取得する(ステップS401)。なお、デー
タ取得モジュール111は、検証処理の開始時又は検証用の生体情報の取得時に、ユーザ
のID及び氏名など、ユーザの識別情報も取得する。
When the authentication terminal 110 receives the operation of the user or the operator, the authentication terminal 110 starts the authentication process described below. First, the data acquisition module 111 of the authentication terminal 110 is the input device 2.
The biometric information for verification is acquired from the user using 03 (step S401). The data acquisition module 111 also acquires user identification information such as a user's ID and name at the start of verification processing or acquisition of biometric information for verification.

次に、認証端末110の特徴データ抽出モジュール112は、検証用の生体情報から検
証用の特徴データを抽出する(ステップS402)。
Next, the feature data extraction module 112 of the authentication terminal 110 extracts verification feature data from the verification biometric information (step S402).

次に、認証端末110の秘密情報復元モジュール113は、DBサーバ120のテンプ
レートDB122からテンプレートTを取得し、テンプレートT及び検証用の特徴データ
に基づいて秘密情報sk’を復元する(ステップS403)。秘密情報sk’の復元処理
(生成処理)の詳細については後述する。
Next, the secret information restoration module 113 of the authentication terminal 110 acquires the template T from the template DB 122 of the DB server 120, and restores the secret information sk'based on the template T and the feature data for verification (step S403). The details of the restoration process (generation process) of the secret information sk'will be described later.

なお、秘密情報復元モジュール113は、テンプレートTを取得する場合、ユーザの識
別情報を含むテンプレートの取得要求をDBサーバ120に送信する。DBサーバ120
は、テンプレートDB122を参照して、ユーザの識別情報が対応付けられたテンプレー
トを検索し、検索結果を認証端末110に送信する。
When the secret information restoration module 113 acquires the template T, the secret information restoration module 113 transmits a template acquisition request including the user's identification information to the DB server 120. DB server 120
Refers to the template DB 122, searches for a template to which the user's identification information is associated, and transmits the search result to the authentication terminal 110.

次に、認証端末110の秘密情報検証モジュール114は、DBサーバ120の検証情
報DB123から検証情報vkを取得し、検証情報vkに基づいて秘密情報sk’の正し
さを検証する(ステップS404)。すなわち、sk’=skが成り立つか否かが判定さ
れる。
Next, the secret information verification module 114 of the authentication terminal 110 acquires the verification information vk from the verification information DB 123 of the DB server 120, and verifies the correctness of the secret information sk'based on the verification information vk (step S404). That is, it is determined whether or not sk'= sk holds.

具体的には、秘密情報検証モジュール114は、秘密情報sk’から検証情報vk’を
生成し、検証情報vk’とDBサーバ120から取得した検証情報vkとが一致するか否
かを判定する。なお、検証情報vk’の生成方法は、検証情報vkの生成方法に応じて以
下のような方法が考えられる。
Specifically, the secret information verification module 114 generates the verification information vk'from the secret information sk', and determines whether or not the verification information vk'and the verification information vk acquired from the DB server 120 match. As the method for generating the verification information vk', the following methods can be considered depending on the method for generating the verification information vk.

(生成方法1)を採用した場合、検証情報vk’は式(17)で与えられ、(生成方法
2)を採用した場合、検証情報vk’は式(18)で与えられ、(生成方法3)を採用し
た場合、検証情報vk’は式(19)で与えられる。なお、式(19)においてpは検証
情報vkの生成時に用いた値と同一の値である。以上がステップS404の処理の説明で
ある。
When (generation method 1) is adopted, the verification information vk'is given by the equation (17), and when (generation method 2) is adopted, the verification information vk'is given by the equation (18), and (generation method 3) is adopted. ) Is adopted, the verification information vk'is given by the equation (19). In equation (19), p is the same value as the value used when the verification information vk was generated. The above is the description of the process of step S404.

Figure 2021061633
Figure 2021061633

Figure 2021061633
Figure 2021061633

Figure 2021061633
Figure 2021061633

次に、認証端末110は、秘密情報sk’の検証結果に基づいて、暗号学的処理を実行
する(ステップS405)。その後、認証端末110は、認証処理を終了する。
Next, the authentication terminal 110 executes cryptographic processing based on the verification result of the secret information sk'(step S405). After that, the authentication terminal 110 ends the authentication process.

次に、テンプレートTの生成処理及び秘密情報skの生成処理の詳細を図5を用いて説
明する。図5は、実施例1のテンプレートTの生成処理及び秘密情報skの生成処理を説
明するフローチャートである。以下の説明ではベクトルの各要素の値は2進法又は10進
法で表現されるものとする。
Next, the details of the template T generation process and the secret information sk generation process will be described with reference to FIG. FIG. 5 is a flowchart illustrating a template T generation process and a secret information sk generation process of the first embodiment. In the following description, the value of each element of the vector shall be expressed in binary or decimal notation.

テンプレート生成モジュール103は、登録用の特徴データに対して変換処理及び正規
化処理の少なくともいずれかを実行することによって、式(20)に示す登録用の正規化
特徴ベクトルXを生成する(ステップS501)。登録用の正規化特徴ベクトルXの各要
素X_iは実数である。なお、特徴データが既に正規化されている場合には、正規化処理
は実行されなくてもよい。
The template generation module 103 generates the normalization feature vector X for registration shown in the equation (20) by executing at least one of the conversion process and the normalization process on the feature data for registration (step S501). ). Each element X_i of the normalization feature vector X for registration is a real number. If the feature data has already been normalized, the normalization process may not be executed.

Figure 2021061633
Figure 2021061633

なお、後述する検証用の正規化特徴ベクトルX’は式(21)のように表す。検証用の
正規化特徴ベクトルX’の各要素X’_iは実数である。
The normalized feature vector X'for verification, which will be described later, is expressed as in Eq. (21). Each element X'_i of the normalized feature vector X'for verification is a real number.

Figure 2021061633
Figure 2021061633

また、二つの特徴ベクトルX、X’の距離を式(22)のように定義する。本実施例で
は、認証端末110は、式(23)を満たす場合、二つの特徴ベクトルX、X’が同一ユ
ーザから取得した生体情報の特徴ベクトルであると判定する。
Further, the distance between the two feature vectors X and X'is defined as in the equation (22). In this embodiment, when the authentication terminal 110 satisfies the equation (23), it is determined that the two feature vectors X and X'are the feature vectors of the biometric information acquired from the same user.

Figure 2021061633
Figure 2021061633

Figure 2021061633
Figure 2021061633

なお、ステップS501では、テンプレート生成モジュール103は、同一のユーザか
ら取得した生体情報については高い確率で式(23)が成立し、また、異なるユーザから
取得した生体情報については高い確率で式(23)が確立しないように、登録用の特徴デ
ータに対して適切な変換処理又はスケーリングを実行する。
In step S501, the template generation module 103 holds the equation (23) with high probability for the biometric information acquired from the same user, and the equation (23) with high probability for the biometric information acquired from different users. ) Is not established, and appropriate conversion processing or scaling is performed on the feature data for registration.

次に、テンプレート生成モジュール103は、登録用の正規化特徴ベクトルXに基づい
て、各要素X_iの整数部分を要素とする整数ベクトルXI、及び、各要素X_iの小数
部分を要素とする小数ベクトルXDを生成する(ステップS502)。整数ベクトルXI
及び小数ベクトルXDはそれぞれ式(24)及び式(25)のように表される。
Next, the template generation module 103 has an integer vector XI having an integer part of each element X_i as an element and a decimal vector XD having a decimal part of each element X_i as an element, based on the normalization feature vector X for registration. Is generated (step S502). Integer vector XI
And the decimal vector XD are expressed as Eqs. (24) and Eq. (25), respectively.

Figure 2021061633
Figure 2021061633

Figure 2021061633
Figure 2021061633

具体的には、テンプレート生成モジュール103は、要素X_iの小数点以下を切り捨
てることによって、整数ベクトルXIを生成する。また、テンプレート生成モジュール1
03は、式(26)の演算を実行することによって小数ベクトルXDを生成する。
Specifically, the template generation module 103 generates an integer vector XI by truncating the decimal point of the element X_i. In addition, template generation module 1
03 generates a decimal vector XD by executing the operation of the equation (26).

Figure 2021061633
Figure 2021061633

次に、テンプレート生成モジュール103は、小数ベクトルXDの各要素XD_iを、
小数点以下k桁に丸める丸め処理を実行し、式(27)に示すような丸め小数ベクトルX
Drを生成する(ステップS503)。
Next, the template generation module 103 sets each element XD_i of the decimal vector XD.
The rounding process of rounding to k digits after the decimal point is executed, and the rounding decimal vector X as shown in equation (27).
Generate Dr (step S503).

Figure 2021061633
Figure 2021061633

具体的には、テンプレート生成モジュール103は、小数点第k+1位以下を丸める。
これによって、小数点第k位までの値を要素とする丸め小数ベクトルXDrが生成される
。例えば、2進数で表現された要素XDr_iがk桁、すなわち、kビットである場合、
丸め小数ベクトルXDrのサイズはnkビットである。
Specifically, the template generation module 103 rounds the k + 1 decimal place and below.
As a result, a rounded decimal vector XDr having a value up to the kth decimal place as an element is generated. For example, when the element XDr_i expressed in binary is k digits, that is, k bits.
The size of the rounded decimal vector XDr is nk bits.

なお、丸め処理の方法としては、切り捨て、切り上げ、最近接丸め、及び偶数丸めなど
が考えられる。
As a method of rounding, rounding down, rounding up, closest rounding, even rounding, and the like can be considered.

このように要素の桁数を小さくすることによって、テンプレートTのサイズをさらに小
さくできる。ただし、丸めるサイズが小さい場合、丸め処理による誤差によって秘密情報
の復元処理が失敗する確率が高くなる。当該確率と丸めるサイズを指定するkとの関係に
ついては後述する。以下の説明では、丸め処理による誤差によって秘密情報の復元処理が
失敗する確率を、エラー確率とも記載する。
By reducing the number of digits of the element in this way, the size of the template T can be further reduced. However, if the rounding size is small, there is a high probability that the confidential information restoration process will fail due to an error due to the rounding process. The relationship between the probability and k that specifies the rounding size will be described later. In the following description, the probability that the confidential information restoration process will fail due to an error due to the rounding process will also be described as an error probability.

次に、テンプレート生成モジュール103は、ソルトを生成する(ステップS504)
Next, the template generation module 103 generates salt (step S504).
..

具体的には、テンプレート生成モジュール103は、ランダムに生成された所定の長さ
(例えば、sビット)の文字列若しくはビット列、又は、任意の数値範囲からランダムに
生成された所定の長さの数値をソルトとして生成する。また、テンプレート生成モジュー
ル103は、ユーザID及びカウンタなど、ユーザ毎又は登録用の生体情報毎に異なる値
を用いてソルトを生成してもよい。ソルトの長さは、総当たり攻撃が困難な大きさ、例え
ば、128以上であればよい。
Specifically, the template generation module 103 is a randomly generated character string or bit string of a predetermined length (for example, s bits), or a numerical value of a predetermined length randomly generated from an arbitrary numerical range. Is generated as a salt. Further, the template generation module 103 may generate a salt by using different values for each user or for each biometric information for registration, such as a user ID and a counter. The length of the salt may be such that a brute force attack is difficult, for example, 128 or more.

次に、テンプレート生成モジュール103は、丸め小数ベクトルXDr及びソルトに基
づいてテンプレートTを生成する(ステップS505)。具体的には、テンプレート生成
モジュール103は、式(28)に示すような丸め小数ベクトルXDr及びソルトの組を
、テンプレートとして生成する。
Next, the template generation module 103 generates a template T based on the rounded decimal vector XDr and the salt (step S505). Specifically, the template generation module 103 generates a set of a rounded decimal vector XDr and a salt as shown in the equation (28) as a template.

Figure 2021061633
Figure 2021061633

なお、必ずしも小数ベクトルXDに対して丸め処理を実行しなくてもよい。また、必ず
しもソルトを用いてテンプレートTを生成しなくてもよい。すなわち、小数ベクトルXD
又は丸め小数ベクトルXDrのみからテンプレートTを生成してもよい。
It is not always necessary to execute the rounding process on the decimal vector XD. Further, it is not always necessary to generate the template T by using salt. That is, the decimal vector XD
Alternatively, the template T may be generated only from the rounded decimal vector XDr.

以上がテンプレートの生成処理の説明である。なお、テンプレート生成モジュール10
3は、テンプレートTをテンプレートDB122に登録するとともに、整数ベクトルXI
及びソルトを秘密情報生成モジュール104に出力する。
The above is the explanation of the template generation process. The template generation module 10
In 3, the template T is registered in the template DB 122, and the integer vector XI is used.
And the salt are output to the secret information generation module 104.

秘密情報生成モジュール104は、整数ベクトルXI及びソルトに基づいて秘密情報s
kを生成する(ステップS511)。
The secret information generation module 104 uses the secret information s based on the integer vector XI and the salt.
Generate k (step S511).

例えば、秘密情報検証モジュール114は、式(29)に示すように、SHA256又
はSHA3などの一方向性関数Hash()に整数ベクトルXI及びソルトを連結したデ
ータを入力することによって、秘密情報skを生成する。式(29)の記号「||」はデ
ータの連結を表す。
For example, as shown in the equation (29), the secret information verification module 114 inputs the secret information sk by inputting the data obtained by concatenating the integer vector XI and the salt into the one-way function Hash () such as SHA256 or SHA3. Generate. The symbol “||” in equation (29) represents a concatenation of data.

Figure 2021061633
Figure 2021061633

また、秘密情報検証モジュール114は、式(30)に示すように、AESなどの暗号
化関数又は鍵付きハッシュ関数などの関数Enc()に、整数ベクトルXI及びソルトを
連結したデータ、並びに、任意のパラメータp’を入力することによって、秘密情報sk
を生成する。
Further, as shown in the equation (30), the confidential information verification module 114 concatenates an integer vector XI and a salt to a function Enc () such as an encryption function such as AES or a hash function with a key, and optionally. Confidential information sk by entering the parameter p'of
To generate.

Figure 2021061633
Figure 2021061633

以上が秘密情報の生成処理の説明である。 The above is the explanation of the secret information generation process.

ここで、本実施例のテンプレートTの特徴について説明する。 Here, the features of the template T of this embodiment will be described.

前述したように丸め小数ベクトルXDrのデータサイズはnkビットである。ソルトの
長さをsビットとした場合、テンプレートTのサイズは、式(28)から(nk+s)ビ
ットとなる。
As described above, the data size of the rounded decimal vector XDr is nk bits. When the length of the salt is s bits, the size of the template T is (nk + s) bits from the equation (28).

ここで、n=1000、k=8、s=128とした場合、テンプレートTのサイズは8
128ビット(1016バイト)であり、約1kBである。非特許文献1に記載の技術に
基づいて生成されたテンプレートのサイズは38.5kBであることから、本実施例のテ
ンプレートは、従来のテンプレートのサイズを約40分の1に圧縮できる。したがって、
従来技術と比較して、テンプレートのサイズを大幅に小さくできるため、生体認証システ
ムの効率性を高めることができる。
Here, when n = 1000, k = 8, and s = 128, the size of the template T is 8.
It is 128 bits (1016 bytes) and is about 1 kB. Since the size of the template generated based on the technique described in Non-Patent Document 1 is 38.5 kB, the template of this embodiment can compress the size of the conventional template to about 1/40. Therefore,
Since the size of the template can be significantly reduced as compared with the conventional technique, the efficiency of the biometric authentication system can be improved.

なお、小数ベクトルXDを用いてテンプレートTを生成する場合であっても、特徴ベク
トルXの整数部分が削除されていることから、従来のテンプレートのサイズより十分小さ
い。
Even when the template T is generated using the decimal vector XD, the size of the conventional template is sufficiently smaller because the integer part of the feature vector X is deleted.

また、テンプレートTに含まれるソルトは生体情報に依存しない値である。そのため、
攻撃者がテンプレートTから生体情報を推定するためには、テンプレートTに含まれる丸
め小数ベクトルXDrから登録用の正規化特徴ベクトルXを推定する以外に方法がない。
Further, the salt contained in the template T is a value that does not depend on biological information. so that,
The only way for an attacker to estimate biometric information from template T is to estimate the normalized feature vector X for registration from the rounded decimal vector XDr contained in template T.

丸め小数ベクトルXDrは、登録用の正規化特徴ベクトルXの小数部分を丸めることに
よって生成されたデータである。より具体的には、丸め小数ベクトルXDrは、特徴ベク
トルXの整数部分及び小数点第k+1位以下が削除されたデータである。生体情報は、同
じユーザから取得した場合であっても誤差が生ずることから、正規化特徴ベクトルXにつ
いても各要素について±0.5程度の範囲内で確率的な誤差が生じる。したがって、小数
部分にはユーザを識別する情報がほとんど含まれていないことから、丸め小数ベクトルX
Drから正規化特徴ベクトルXを推定又は復元するのは十分に困難である。
The rounded decimal vector XDr is data generated by rounding the fractional part of the normalization feature vector X for registration. More specifically, the rounded decimal vector XDr is the data in which the integer part of the feature vector X and the k + 1 decimal place and below are deleted. Since an error occurs in the biometric information even when it is acquired from the same user, a stochastic error also occurs in the range of about ± 0.5 for each element of the normalized feature vector X. Therefore, since the fractional part contains almost no information that identifies the user, the rounded decimal vector X
It is difficult enough to estimate or restore the normalized feature vector X from Dr.

以上のことから、本実施例のテンプレートの生成方法を適応することによって、テンプ
レートのサイズを削減し、かつ、十分な安全性を確保できる。
From the above, by applying the template generation method of this embodiment, the size of the template can be reduced and sufficient safety can be ensured.

なお、本実施例では特徴ベクトルを用いてテンプレートTを生成しているが、特徴ベク
トル以外のデータを用いても同様の特徴を有するテンプレートTを生成できる。すなわち
、登録端末100は、特徴データ又は特徴データを用いて生成されたデータに基づいて、
生体情報に発生する誤差部分のデータである誤差データ及び誤差データ以外のデータであ
る定常データを生成する。登録端末100は、誤差データを用いてテンプレートTを生成
し、また、定常データを用いて秘密情報skを生成する。
In this embodiment, the template T is generated using the feature vector, but the template T having the same features can be generated by using data other than the feature vector. That is, the registration terminal 100 is based on the feature data or the data generated by using the feature data.
It generates error data, which is data of an error portion generated in biological information, and stationary data, which is data other than error data. The registration terminal 100 generates the template T using the error data, and also generates the secret information sk using the stationary data.

次に、秘密情報sk’の復元処理の詳細を図6を用いて説明する。図6は、実施例1の
秘密情報sk’の復元処理を説明するフローチャートである。
Next, the details of the restoration process of the secret information sk'will be described with reference to FIG. FIG. 6 is a flowchart illustrating a restoration process of the secret information sk'of the first embodiment.

秘密情報復元モジュール113は、検証用の特徴データに対して変換処理及び正規化処
理の少なくともいずれかを実行することによって、式(21)に示す検証用の正規化特徴
ベクトルX’を生成する(ステップS601)。なお、特徴データが既に正規化されてい
る場合には、正規化処理は実行されなくてもよい。
The secret information restoration module 113 generates the normalization feature vector X'for verification shown in the equation (21) by executing at least one of the conversion process and the normalization process on the feature data for verification ( Step S601). If the feature data has already been normalized, the normalization process may not be executed.

次に、秘密情報復元モジュール113は、取得したテンプレートTに含まれる丸め小数
ベクトルXDr及び検証用の正規化特徴ベクトルX’に基づいて、式(31)に示す差分
特徴ベクトルXCを算出する(ステップS602)。
Next, the secret information restoration module 113 calculates the difference feature vector XC shown in the equation (31) based on the rounded decimal vector XDr included in the acquired template T and the normalized feature vector X'for verification (step). S602).

Figure 2021061633
Figure 2021061633

具体的には、秘密情報復元モジュール113は、式(32)に示す演算を実行する。 Specifically, the secret information restoration module 113 executes the operation shown in the equation (32).

Figure 2021061633
Figure 2021061633

次に、秘密情報復元モジュール113は、差分特徴ベクトルXCに基づいて、式(33
)に示す復元整数ベクトルXI’を生成する(ステップS603)。
Next, the secret information restoration module 113 is based on the difference feature vector XC, and the equation (33) is used.
) Is generated (step S603).

Figure 2021061633
Figure 2021061633

具体的には、秘密情報復元モジュール113は、式(34)に示す演算を実行する。記
号「[ ]」は、括弧内の値の小数部分を切り捨てて、整数部分を取り出す演算を表す。
Specifically, the secret information restoration module 113 executes the operation shown in the equation (34). The symbol "[]" represents an operation that truncates the fractional part of the value in parentheses and extracts the integer part.

Figure 2021061633
Figure 2021061633

次に、秘密情報復元モジュール113は、復元整数ベクトルXI’及び取得したテンプ
レートTに含まれるソルトに基づいて復元秘密情報sk’を生成する(ステップS604
)。秘密情報の生成方法は、ステップS511と同様の処理である。
Next, the secret information restoration module 113 generates the restoration secret information sk'based on the restoration integer vector XI'and the salt included in the acquired template T (step S604).
). The method of generating the secret information is the same process as in step S511.

ここで、秘密情報sk及び復元秘密情報sk’の検証について説明する。 Here, the verification of the secret information sk and the restored secret information sk'will be described.

ε_iを式(35)で定義する。ここで、ε_iは、丸め小数ベクトルXDrの丸め誤
差を表す値であり、小数点第k+1位以下の値である。したがって、ε_iの絶対値は2
−k未満となる。
ε_i is defined by Eq. (35). Here, ε_i is a value representing the rounding error of the rounding decimal vector XDr, and is a value having a decimal point k + 1 or less. Therefore, the absolute value of ε_i is 2.
It will be less than −k.

Figure 2021061633
Figure 2021061633

式(26)、式(32)、及び式(35)より、式(34)は式(36)のように変形
できる。
From the equations (26), (32), and (35), the equation (34) can be modified as the equation (36).

Figure 2021061633
Figure 2021061633

式(22)で定義した距離が式(37)を満たし、かつ、ε_i=0である場合、式(
38)が必ず成立する。また、式(38)が成立する場合、秘密情報sk、sk’は、整
数ベクトルXI、XI’及びソルトから生成され、かつ、同じ生成方法であることから、
式(39)が成立する。また、式(39)が成り立つ場合、検証情報vk、vk’は一致
する。
When the distance defined by the equation (22) satisfies the equation (37) and ε_i = 0, the equation (
38) is always established. Further, when the equation (38) is satisfied, the secret information sk and sk'are generated from the integer vectors XI and XI'and the salt, and are generated by the same method.
Equation (39) holds. Further, when the equation (39) holds, the verification information vk and vk'are the same.

Figure 2021061633
Figure 2021061633

Figure 2021061633
Figure 2021061633

Figure 2021061633
Figure 2021061633

式(37)が成立する場合、0ではないε_iが十分小さいと高い確率で式(38)が
成立する。逆に、式(38)が成立しないケースは式(40)を満たす場合に限られる。
したがって、エラー確率は、おおよそ2−kに比例するため、丸め処理におけるパラメー
タkの増加に伴って指数関数的に減少する。したがって、kが8から16の間の値の場合
、検証処理の精度は十分高い。

Figure 2021061633
When the equation (37) holds, the equation (38) holds with a high probability if the non-zero ε_i is sufficiently small. On the contrary, the case where the equation (38) does not hold is limited to the case where the equation (40) is satisfied.
Therefore, since the error probability is approximately proportional to 2 −k , it decreases exponentially as the parameter k in the rounding process increases. Therefore, when k is a value between 8 and 16, the accuracy of the verification process is sufficiently high.
Figure 2021061633

ただし、テンプレートTのサイズは、パラメータkの大きさに比例するため、kの値は
検証処理の精度及び効率性のバランスを考慮して決定する必要がある。
However, since the size of the template T is proportional to the size of the parameter k, the value of k needs to be determined in consideration of the balance between the accuracy and efficiency of the verification process.

以上で説明したように、本実施例によれば、テンプレートTのサイズを大幅に削減でき
、また、テンプレートTから元の特徴データXを推定するための攻撃に対する耐性を高め
ることができる。したがって、高い効率性及び安全性が保証されたバイオメトリック暗号
技術を実現できる。
As described above, according to the present embodiment, the size of the template T can be significantly reduced, and the resistance to an attack for estimating the original feature data X from the template T can be increased. Therefore, it is possible to realize a biometric encryption technique in which high efficiency and security are guaranteed.

特許請求の範囲に記載した以外の発明の観点の代表的なものとして、次のものがあげら
れる。
(1)データの秘匿に用いる秘密情報を用いた暗号学的処理を実行する計算機であって、
前記計算機は、
演算装置、前記演算装置に接続される記憶装置、及び前記演算装置に接続されるインタ
フェースを有し、
前記インタフェースを介して、入力された第1生体情報から生成された第1特徴データ
に発生する誤差を示す誤差特徴データに基づいて生成されたテンプレート、及び前記特徴
データの誤差特徴データ以外の部分を示す定常特徴データに基づいて生成された第1検証
情報を管理するデータベースと接続し、
前記演算装置は、
前記暗号学的処理の実行要求を受け付けた場合、ユーザから取得された第2生体情報に
基づいて第2特徴データを生成し、
前記テンプレート及び前記第2特徴データに基づいて、第2秘密情報を生成し、
前記第2秘密情報に基づいて、第2検証情報を生成し、
前記第1検証情報及び前記第2検証情報を比較することによって前記第2秘密情報を検
証し、
前記第2秘密情報の検証の結果に基づいて、前記暗号学的処理を実行することを特徴と
する計算機。
(2)(1)に記載の計算機であって、
前記第1特徴データ及び前記第2特徴データは、実数を要素とする特徴ベクトルであり

前記誤差特徴データは、前記特徴ベクトルの各要素の小数部分を要素とするベクトルで
あり、
前記定常特徴データは、前記特徴ベクトルの各要素の整数部分を要素とするベクトルで
あることを特徴とする計算機。
(3)(2)に記載の計算機であって、
前記演算装置は、
前記第2特徴データ及び前記テンプレートに含まれる前記第1生体情報の誤差特徴デー
タに基づいて、前記第2生体情報の定常特徴データを生成し、
ハッシュ関数、鍵付きハッシュ関数、及び暗号化関数の少なくともいずれかに、前記第
2生体情報の定常特徴データを入力することによって前記第2秘密情報を生成することを
特徴とする計算機。
The following are typical viewpoints of the invention other than those described in the claims.
(1) A computer that executes cryptographic processing using confidential information used to conceal data.
The calculator
It has an arithmetic unit, a storage device connected to the arithmetic unit, and an interface connected to the arithmetic unit.
Through the interface, a template generated based on the error feature data indicating an error generated in the first feature data generated from the input first biometric information, and a part of the feature data other than the error feature data are displayed. Connect to the database that manages the first verification information generated based on the stationary feature data shown.
The arithmetic unit
When the execution request of the cryptographic processing is received, the second feature data is generated based on the second biometric information acquired from the user.
The second secret information is generated based on the template and the second feature data.
The second verification information is generated based on the second secret information, and the second verification information is generated.
The second secret information is verified by comparing the first verification information and the second verification information.
A computer characterized by executing the cryptographic processing based on the result of verification of the second confidential information.
(2) The calculator according to (1).
The first feature data and the second feature data are feature vectors having real numbers as elements.
The error feature data is a vector having a fractional part of each element of the feature vector as an element.
A computer characterized in that the stationary feature data is a vector having an integer portion of each element of the feature vector as an element.
(3) The calculator according to (2).
The arithmetic unit
Based on the second feature data and the error feature data of the first biometric information included in the template, the stationary feature data of the second biometric information is generated.
A computer characterized in that the second secret information is generated by inputting the stationary feature data of the second biometric information into at least one of a hash function, a keyed hash function, and an encryption function.

なお、本発明は上記した実施例に限定されるものではなく、様々な変形例が含まれる。
また、例えば、上記した実施例は本発明を分かりやすく説明するために構成を詳細に説明
したものであり、必ずしも説明した全ての構成を備えるものに限定されるものではない。
また、各実施例の構成の一部について、他の構成に追加、削除、置換することが可能であ
る。
The present invention is not limited to the above-described examples, and includes various modifications.
Further, for example, the above-described embodiment describes the configuration in detail in order to explain the present invention in an easy-to-understand manner, and is not necessarily limited to the one including all the described configurations.
In addition, a part of the configuration of each embodiment can be added, deleted, or replaced with another configuration.

また、上記の各構成、機能、処理部、処理手段等は、それらの一部又は全部を、例えば
集積回路で設計する等によりハードウェアで実現してもよい。また、本発明は、実施例の
機能を実現するソフトウェアのプログラムコードによっても実現できる。この場合、プロ
グラムコードを記録した記憶媒体をコンピュータに提供し、そのコンピュータが備えるプ
ロセッサが記憶媒体に格納されたプログラムコードを読み出す。この場合、記憶媒体から
読み出されたプログラムコード自体が前述した実施例の機能を実現することになり、その
プログラムコード自体、及びそれを記憶した記憶媒体は本発明を構成することになる。こ
のようなプログラムコードを供給するための記憶媒体としては、例えば、フレキシブルデ
ィスク、CD−ROM、DVD−ROM、ハードディスク、SSD(Solid Sta
te Drive)、光ディスク、光磁気ディスク、CD−R、磁気テープ、不揮発性の
メモリカード、ROMなどが用いられる。
Further, each of the above configurations, functions, processing units, processing means and the like may be realized by hardware by designing a part or all of them by, for example, an integrated circuit. The present invention can also be realized by a program code of software that realizes the functions of the examples. In this case, a storage medium in which the program code is recorded is provided to the computer, and the processor included in the computer reads the program code stored in the storage medium. In this case, the program code itself read from the storage medium realizes the functions of the above-described embodiment, and the program code itself and the storage medium storing the program code itself constitute the present invention. Examples of the storage medium for supplying such a program code include a flexible disk, a CD-ROM, a DVD-ROM, a hard disk, and an SSD (Solid Sta).
te Drive), optical disks, magneto-optical disks, CD-Rs, magnetic tapes, non-volatile memory cards, ROMs, and the like are used.

また、本実施例に記載の機能を実現するプログラムコードは、例えば、アセンブラ、C
/C++、perl、Shell、PHP、Java(登録商標)等の広範囲のプログラ
ム又はスクリプト言語で実装できる。
Further, the program code that realizes the functions described in this embodiment is, for example, an assembler, C.
It can be implemented in a wide range of programs or scripting languages such as / C ++, perl, Shell, PHP, Java®.

さらに、実施例の機能を実現するソフトウェアのプログラムコードを、ネットワークを
介して配信することによって、それをコンピュータのハードディスクやメモリ等の記憶手
段又はCD−RW、CD−R等の記憶媒体に格納し、コンピュータが備えるプロセッサが
当該記憶手段や当該記憶媒体に格納されたプログラムコードを読み出して実行するように
してもよい。
Further, by distributing the program code of the software that realizes the functions of the examples via the network, it is stored in a storage means such as a hard disk or memory of a computer or a storage medium such as a CD-RW or a CD-R. , The processor provided in the computer may read and execute the program code stored in the storage means or the storage medium.

上述の実施例において、制御線や情報線は、説明上必要と考えられるものを示しており
、製品上必ずしも全ての制御線や情報線を示しているとは限らない。全ての構成が相互に
接続されていてもよい。
In the above-described embodiment, the control lines and information lines show what is considered necessary for explanation, and do not necessarily indicate all the control lines and information lines in the product. All configurations may be interconnected.

100 登録端末
101、111 データ取得モジュール
102、112 特徴データ抽出モジュール
103 テンプレート生成モジュール
104 秘密情報生成モジュール
105 検証情報生成モジュール
110 認証端末
113 秘密情報復元モジュール
114 秘密情報検証モジュール
115 データ処理モジュール
120 DBサーバ
121 データベース管理モジュール
122 テンプレートDB
123 検証情報DB
130 ネットワーク
200 CPU
201 メモリ
202 記憶装置
203 入力装置
204 出力装置
205 通信装置
100 Registration terminal 101, 111 Data acquisition module 102, 112 Feature data extraction module 103 Template generation module 104 Confidential information generation module 105 Verification information generation module 110 Authentication terminal 113 Confidential information restoration module 114 Confidential information verification module 115 Data processing module 120 DB server 121 Database management module 122 Template DB
123 Verification information DB
130 network 200 CPU
201 Memory 202 Storage device 203 Input device 204 Output device 205 Communication device

本発明の代表的な一例を示せば以下の通りである。すなわち、少なくとも一つの計算機を含む計算機システムであって、前記少なくとも一つの計算機は、演算装置及び前記演算装置に接続される記憶装置を有し、前記少なくとも一つの計算機は、ユーザから取得された生体情報に基づいて、前記生体情報に発生する誤差を示す誤差特徴データ及び前記生体情報に発生する誤差以外の部分を示す定常特徴データを生成し、前記誤差特徴データに基づいてテンプレートを生成し、前記定常特徴データに基づいて検証情報を生成し、前記テンプレート及び前記検証情報と、前記ユーザの識別情報と対応付けて、当該計算機又は他の前記計算機のいずれかの前記記憶装置に格納することを特徴とする。 A typical example of the present invention is as follows. That is, a computer system including at least one computer, wherein the at least one computer has a calculation device and a storage device connected to the calculation device, and the at least one computer is a living body acquired from a user. based on the information, the generated constant characteristic data indicating the portion other than the error generated error characteristic data and the biometric information indicating the error generated biometric information to generate a template based on the error characteristic data, the It is characterized in that verification information is generated based on stationary feature data, and the template, the verification information, and the user's identification information are associated with each other and stored in the storage device of the computer or another computer. And.

特許請求の範囲に記載した以外の発明の観点の代表的なものとして、次のものがあげら
れる。
(1)データの秘匿に用いる秘密情報を用いた暗号学的処理を実行する計算機であって、
前記計算機は、
演算装置、前記演算装置に接続される記憶装置、及び前記演算装置に接続されるインタ
フェースを有し、
前記インタフェースを介して、入力された第1生体情報から生成された第1特徴データに発生する誤差を示す誤差特徴データに基づいて生成されたテンプレート、及び前記特徴データの誤差特徴データ以外の部分を示す定常特徴データに基づいて生成された第1検証情報を管理するデータベースと接続し、
前記演算装置は、
前記暗号学的処理の実行要求を受け付けた場合、ユーザから取得された第2生体情報に基づいて第2特徴データを生成し、
前記テンプレート及び前記第2特徴データに基づいて、第2秘密情報を生成し、
前記第2秘密情報に基づいて、第2検証情報を生成し、
前記第1検証情報及び前記第2検証情報を比較することによって前記第2秘密情報を検証し、
前記第2秘密情報の検証の結果に基づいて、前記暗号学的処理を実行することを特徴とする計算機。
(2)(1)に記載の計算機であって、
前記第1特徴データ及び前記第2特徴データは、実数を要素とする特徴ベクトルであり、
前記誤差特徴データは、前記特徴ベクトルの各要素の小数部分を要素とするベクトルであり、
前記定常特徴データは、前記特徴ベクトルの各要素の整数部分を要素とするベクトルであることを特徴とする計算機。
(3)(2)に記載の計算機であって、
前記演算装置は、
前記第2特徴データ及び前記テンプレートに含まれる前記第1生体情報の誤差特徴データに基づいて、前記第2生体情報の定常特徴データを生成し、
ハッシュ関数、鍵付きハッシュ関数、及び暗号化関数の少なくともいずれかに、前記第2生体情報の定常特徴データを入力することによって前記第2秘密情報を生成することを特徴とする計算機。
(4)少なくとも一つの計算機を含む計算機システムであって、
前記少なくとも一つの計算機は、演算装置及び前記演算装置に接続される記憶装置を有し、
前記演算装置は、
ユーザから取得された第1生体情報に基づいて第1特徴データを生成し、
前記第1特徴データに基づいて、前記第1生体情報に発生する誤差を示す誤差特徴データ及び前記第1生体情報に発生する誤差以外の部分を示す定常特徴データを生成し、
前記第1生体情報の誤差特徴データに基づいてテンプレートを生成し、前記ユーザの識別情報及び前記テンプレートを対応付けて前記記憶装置に格納し、
前記第1生体情報の定常特徴データに基づいて、暗号学的処理に用いる第1秘密情報を生成し、前記第1秘密情報に基づいて第1検証情報を生成し、前記ユーザの識別情報及び前記第1検証情報を対応付けて前記記憶装置に格納し、
前記暗号学的処理の実行要求を受け付けた場合、ユーザから取得された第2生体情報に基づいて第2特徴データを生成し、
前記テンプレート及び前記第2特徴データに基づいて、第2秘密情報を生成し、
前記第2秘密情報に基づいて、第2検証情報を生成し、
前記第1検証情報及び前記第2検証情報を比較することによって、前記第2秘密情報の検証を行い、
前記第2秘密情報の検証の結果に基づいて、前記暗号学的処理を実行することを特徴とする計算機システム。
(5)(4)に記載の計算機システムであって、
前記第1特徴データ及び前記第2特徴データは、実数を要素とする特徴ベクトルであり、
前記誤差特徴データは、前記特徴ベクトルの各要素の小数部分を要素とするベクトルであり、
前記定常特徴データは、前記特徴ベクトルの各要素の整数部分を要素とするベクトルであることを特徴とする計算機システム。
(6)(5)に記載の計算機システムであって、
前記演算装置は、
前記誤差特徴データの各要素の値を丸める丸め処理を実行し、
前記丸め処理が実行された前記第1生体情報の誤差特徴データを前記テンプレートとして生成することを特徴とする計算機システム。
(7)(5)に記載の計算機システムであって、
前記演算装置は、
任意の長さのデータ列であるソルトを生成し、
前記丸め処理が実行された第1生体情報の誤差特徴データ及び前記ソルトの組を前記テンプレートとして生成することを特徴とする計算機システム。
(8)(5)に記載の計算機システムであって、
前記演算装置は、
ハッシュ関数、鍵付きハッシュ関数、及び暗号化関数の少なくともいずれかに、前記第1生体情報の定常特徴データを入力することによって前記第1秘密情報を生成し、
前記第2特徴データ及び前記テンプレートに含まれる前記第1生体情報の誤差特徴データに基づいて、前記第2生体情報の定常特徴データを生成し、
前記ハッシュ関数、前記鍵付きハッシュ関数、及び前記暗号化関数の少なくともいずれかに、前記第2生体情報の定常特徴データを入力することによって前記第2秘密情報を生成することを特徴とする計算機システム。
(9)秘密情報を用いて暗号学的処理を実行する計算機システムにおける秘密情報の検証方法であって、
前記計算機システムは、演算装置及び前記演算装置に接続される記憶装置を有する少なくとも一つの計算機を含み、
前記秘密情報の検証方法は、
前記演算装置が、ユーザから取得された第1生体情報に基づいて第1特徴データを生成する第1のステップと、
前記演算装置が、前記第1特徴データに基づいて、前記第1生体情報に発生する誤差を示す誤差特徴データ及び前記第1生体情報に発生する誤差以外の部分を示す定常特徴データを生成する第2のステップと、
前記演算装置が、前記第1生体情報の誤差特徴データに基づいてテンプレートを生成し、前記ユーザの識別情報及び前記テンプレートを対応付けて前記記憶装置に格納する第3のステップと、
前記演算装置が、前記第1生体情報の定常特徴データに基づいて、前記暗号学的処理に用いる第1秘密情報を生成し、前記第1秘密情報に基づいて第1検証情報を生成し、前記ユーザの識別情報及び前記第1検証情報を対応付けて前記記憶装置に格納する第4のステップと、
前記演算装置が、前記暗号学的処理の実行要求を受け付けた場合、ユーザから取得された第2生体情報に基づいて第2特徴データを生成する第5のステップと、
前記演算装置が、前記テンプレート及び前記第2特徴データに基づいて、第2秘密情報を生成する第6のステップと、
前記演算装置が、前記第2秘密情報に基づいて、第2検証情報を生成する第7のステップと、
前記演算装置が、前記第1検証情報及び前記第2検証情報を比較することによって、前記第2秘密情報の検証を行う第8のステップと、
前記演算装置が、前記第2秘密情報の検証の結果に基づいて、前記暗号学的処理を実行する第9のステップとことを特徴とする秘密情報の検証方法。
(10)(9)に記載の秘密情報の検証方法であって、
前記第1特徴データ及び前記第2特徴データは、実数を要素とする特徴ベクトルであり、
前記誤差特徴データは、前記特徴ベクトルの各要素の小数部分を要素とするベクトルであり、
前記定常特徴データは、前記特徴ベクトルの各要素の整数部分を要素とするベクトルであることを特徴とする秘密情報の検証方法。
(11)(10)に記載の秘密情報の検証方法であって、
前記第3のステップは、
前記演算装置が、前記誤差特徴データの各要素の値を丸める丸め処理を実行するステップと、
前記演算装置が、前記丸め処理が実行された前記第1生体情報の誤差特徴データを前記テンプレートとして生成するステップと、を含むことを特徴とする秘密情報の検証方法。
(12)(10)に記載の秘密情報の検証方法であって、
前記第3のステップは、
前記演算装置が、任意の長さのデータ列であるソルトを生成するステップと、
前記演算装置が、前記丸め処理が実行された第1生体情報の誤差特徴データ及び前記ソルトの組を前記テンプレートとして生成するステップと、を含むことを特徴とする秘密情報の検証方法。
(13)(10)に記載の秘密情報の検証方法であって、
前記第4のステップは、前記演算装置が、ハッシュ関数、鍵付きハッシュ関数、及び暗号化関数の少なくともいずれかに、前記第1生体情報の定常特徴データを入力することによって前記第1秘密情報を生成するステップを含み、
前記第6のステップは、
前記演算装置が、前記第2特徴データ及び前記テンプレートに含まれる前記第1生体情報の誤差特徴データに基づいて、前記第2生体情報の定常特徴データを生成するステップと、
前記演算装置が、前記ハッシュ関数、前記鍵付きハッシュ関数、及び前記暗号化関数の少なくともいずれかに、前記第2生体情報の定常特徴データを入力することによって前記第2秘密情報を生成するステップと、を含むことを特徴とする秘密情報の検証方法。
The following are typical viewpoints of the invention other than those described in the claims.
(1) A computer that executes cryptographic processing using confidential information used to conceal data.
The calculator
It has an arithmetic unit, a storage device connected to the arithmetic unit, and an interface connected to the arithmetic unit.
Through the interface, a template generated based on the error feature data indicating an error generated in the first feature data generated from the input first biometric information, and a part of the feature data other than the error feature data are displayed. Connect to the database that manages the first verification information generated based on the stationary feature data shown.
The arithmetic unit
When the execution request of the cryptographic processing is received, the second feature data is generated based on the second biometric information acquired from the user.
The second secret information is generated based on the template and the second feature data.
The second verification information is generated based on the second secret information, and the second verification information is generated.
The second secret information is verified by comparing the first verification information and the second verification information.
A computer characterized by executing the cryptographic processing based on the result of verification of the second confidential information.
(2) The calculator according to (1).
The first feature data and the second feature data are feature vectors having real numbers as elements.
The error feature data is a vector having a fractional part of each element of the feature vector as an element.
A computer characterized in that the stationary feature data is a vector having an integer portion of each element of the feature vector as an element.
(3) The calculator according to (2).
The arithmetic unit
Based on the second feature data and the error feature data of the first biometric information included in the template, the stationary feature data of the second biometric information is generated.
A computer characterized in that the second secret information is generated by inputting the stationary feature data of the second biometric information into at least one of a hash function, a keyed hash function, and an encryption function.
(4) A computer system including at least one computer.
The at least one calculator has an arithmetic unit and a storage device connected to the arithmetic unit.
The arithmetic unit
Generate the first feature data based on the first biometric information acquired from the user,
Based on the first feature data, error feature data showing an error occurring in the first biometric information and stationary feature data showing a portion other than the error occurring in the first biometric information are generated.
A template is generated based on the error feature data of the first biometric information, and the user's identification information and the template are associated and stored in the storage device.
The first secret information used for cryptographic processing is generated based on the stationary feature data of the first biometric information, the first verification information is generated based on the first secret information, and the user's identification information and the user are described. The first verification information is associated with the storage device and stored in the storage device.
When the execution request of the cryptographic processing is received, the second feature data is generated based on the second biometric information acquired from the user.
The second secret information is generated based on the template and the second feature data.
The second verification information is generated based on the second secret information, and the second verification information is generated.
By comparing the first verification information and the second verification information, the second secret information is verified.
A computer system characterized by executing the cryptographic processing based on the result of verification of the second secret information.
(5) The computer system according to (4).
The first feature data and the second feature data are feature vectors having real numbers as elements.
The error feature data is a vector having a fractional part of each element of the feature vector as an element.
A computer system characterized in that the stationary feature data is a vector having an integer portion of each element of the feature vector as an element.
(6) The computer system according to (5).
The arithmetic unit
A rounding process for rounding the value of each element of the error feature data is executed.
A computer system characterized in that error feature data of the first biometric information on which the rounding process is executed is generated as the template.
(7) The computer system according to (5).
The arithmetic unit
Generate a salt that is a data string of arbitrary length
A computer system characterized in that an error feature data of the first biometric information on which the rounding process is executed and a set of the salt are generated as the template.
(8) The computer system according to (5).
The arithmetic unit
The first secret information is generated by inputting the stationary feature data of the first biometric information into at least one of a hash function, a keyed hash function, and an encryption function.
Based on the second feature data and the error feature data of the first biometric information included in the template, the stationary feature data of the second biometric information is generated.
A computer system characterized in that the second secret information is generated by inputting stationary feature data of the second biometric information into at least one of the hash function, the keyed hash function, and the encryption function. ..
(9) A method for verifying confidential information in a computer system that executes cryptographic processing using confidential information.
The computer system includes an arithmetic unit and at least one computer having a storage device connected to the arithmetic unit.
The method for verifying the confidential information is
The first step in which the arithmetic unit generates the first feature data based on the first biometric information acquired from the user, and
Based on the first feature data, the arithmetic unit generates error feature data indicating an error occurring in the first biometric information and stationary feature data indicating a portion other than the error occurring in the first biometric information. 2 steps and
A third step in which the arithmetic unit generates a template based on the error characteristic data of the first biometric information, associates the user's identification information with the template, and stores the template in the storage device.
The computing device generates first secret information used for the cryptographic processing based on the stationary feature data of the first biometric information, and generates first verification information based on the first secret information. A fourth step of associating the user's identification information with the first verification information and storing the first verification information in the storage device, and
When the arithmetic unit receives the execution request of the cryptographic processing, the fifth step of generating the second feature data based on the second biometric information acquired from the user, and the fifth step.
A sixth step in which the arithmetic unit generates the second secret information based on the template and the second feature data.
The seventh step in which the arithmetic unit generates the second verification information based on the second secret information,
An eighth step in which the arithmetic unit verifies the second secret information by comparing the first verification information and the second verification information.
A method for verifying confidential information, which comprises a ninth step in which the arithmetic unit executes the cryptographic process based on the result of verification of the second confidential information.
(10) The method for verifying confidential information described in (9).
The first feature data and the second feature data are feature vectors having real numbers as elements.
The error feature data is a vector having a fractional part of each element of the feature vector as an element.
A method for verifying secret information, wherein the stationary feature data is a vector having an integer portion of each element of the feature vector as an element.
(11) The method for verifying confidential information according to (10).
The third step is
A step in which the arithmetic unit executes a rounding process for rounding the value of each element of the error feature data.
A method for verifying confidential information, wherein the arithmetic unit includes a step of generating error feature data of the first biometric information on which the rounding process is executed as the template.
(12) The method for verifying confidential information according to (10).
The third step is
A step in which the arithmetic unit generates a salt, which is a data string of an arbitrary length,
A method for verifying confidential information, wherein the arithmetic unit includes a step of generating an error feature data of the first biometric information on which the rounding process has been executed and a set of the salt as the template.
(13) The method for verifying confidential information according to (10).
In the fourth step, the arithmetic unit inputs the stationary feature data of the first biometric information to at least one of a hash function, a keyed hash function, and an encryption function to obtain the first secret information. Including steps to generate
The sixth step is
A step in which the arithmetic unit generates stationary feature data of the second biometric information based on the second feature data and the error feature data of the first biometric information included in the template.
A step in which the arithmetic unit generates the second secret information by inputting stationary feature data of the second biometric information into at least one of the hash function, the keyed hash function, and the encryption function. A method for verifying confidential information, which comprises.

Claims (12)

少なくとも一つの計算機を含む計算機システムであって、
前記少なくとも一つの計算機は、演算装置及び前記演算装置に接続される記憶装置を有
し、
前記演算装置は、
ユーザから取得された第1生体情報に基づいて第1特徴データを生成し、
前記第1特徴データに基づいて、前記第1生体情報に発生する誤差を示す誤差特徴デー
タ及び前記第1生体情報に発生する誤差以外の部分を示す定常特徴データを生成し、
前記第1生体情報の誤差特徴データに基づいてテンプレートを生成し、前記ユーザの識
別情報及び前記テンプレートを対応付けて前記記憶装置に格納し、
前記第1生体情報の定常特徴データに基づいて、暗号学的処理に用いる第1秘密情報を
生成し、前記第1秘密情報に基づいて第1検証情報を生成し、前記ユーザの識別情報及び
前記第1検証情報を対応付けて前記記憶装置に格納し、
前記暗号学的処理の実行要求を受け付けた場合、ユーザから取得された第2生体情報に
基づいて第2特徴データを生成し、
前記テンプレート及び前記第2特徴データに基づいて、第2秘密情報を生成し、
前記第2秘密情報に基づいて、第2検証情報を生成し、
前記第1検証情報及び前記第2検証情報を比較することによって、前記第2秘密情報の
検証を行い、
前記第2秘密情報の検証の結果に基づいて、前記暗号学的処理を実行することを特徴と
する計算機システム。
A calculator system that includes at least one calculator
The at least one calculator has an arithmetic unit and a storage device connected to the arithmetic unit.
The arithmetic unit
Generate the first feature data based on the first biometric information acquired from the user,
Based on the first feature data, error feature data showing an error occurring in the first biometric information and stationary feature data showing a portion other than the error occurring in the first biometric information are generated.
A template is generated based on the error feature data of the first biometric information, and the user's identification information and the template are associated and stored in the storage device.
The first secret information used for cryptographic processing is generated based on the stationary feature data of the first biometric information, the first verification information is generated based on the first secret information, and the user's identification information and the user are described. The first verification information is associated with the storage device and stored in the storage device.
When the execution request of the cryptographic processing is received, the second feature data is generated based on the second biometric information acquired from the user.
The second secret information is generated based on the template and the second feature data.
The second verification information is generated based on the second secret information, and the second verification information is generated.
By comparing the first verification information and the second verification information, the second secret information is verified.
A computer system characterized by executing the cryptographic processing based on the result of verification of the second confidential information.
請求項1に記載の計算機システムであって、
前記第1特徴データ及び前記第2特徴データは、実数を要素とする特徴ベクトルであり

前記誤差特徴データは、前記特徴ベクトルの各要素の小数部分を要素とするベクトルで
あり、
前記定常特徴データは、前記特徴ベクトルの各要素の整数部分を要素とするベクトルで
あることを特徴とする計算機システム。
The computer system according to claim 1.
The first feature data and the second feature data are feature vectors having real numbers as elements.
The error feature data is a vector having a fractional part of each element of the feature vector as an element.
A computer system characterized in that the stationary feature data is a vector having an integer portion of each element of the feature vector as an element.
請求項2に記載の計算機システムであって、
前記演算装置は、
前記誤差特徴データの各要素の値を丸める丸め処理を実行し、
前記丸め処理が実行された前記第1生体情報の誤差特徴データを前記テンプレートとし
て生成することを特徴とする計算機システム。
The computer system according to claim 2.
The arithmetic unit
A rounding process for rounding the value of each element of the error feature data is executed.
A computer system characterized in that error feature data of the first biometric information on which the rounding process is executed is generated as the template.
請求項2に記載の計算機システムであって、
前記演算装置は、
任意の長さのデータ列であるソルトを生成し、
前記丸め処理が実行された第1生体情報の誤差特徴データ及び前記ソルトの組を前記テ
ンプレートとして生成することを特徴とする計算機システム。
The computer system according to claim 2.
The arithmetic unit
Generate a salt that is a data string of arbitrary length
A computer system characterized in that an error feature data of the first biometric information on which the rounding process is executed and a set of the salt are generated as the template.
請求項2に記載の計算機システムであって、
前記演算装置は、
ハッシュ関数、鍵付きハッシュ関数、及び暗号化関数の少なくともいずれかに、前記第
1生体情報の定常特徴データを入力することによって前記第1秘密情報を生成し、
前記第2特徴データ及び前記テンプレートに含まれる前記第1生体情報の誤差特徴デー
タに基づいて、前記第2生体情報の定常特徴データを生成し、
前記ハッシュ関数、前記鍵付きハッシュ関数、及び前記暗号化関数の少なくともいずれ
かに、前記第2生体情報の定常特徴データを入力することによって前記第2秘密情報を生
成することを特徴とする計算機システム。
The computer system according to claim 2.
The arithmetic unit
The first secret information is generated by inputting the stationary feature data of the first biometric information into at least one of a hash function, a keyed hash function, and an encryption function.
Based on the second feature data and the error feature data of the first biometric information included in the template, the stationary feature data of the second biometric information is generated.
A computer system characterized in that the second secret information is generated by inputting stationary feature data of the second biometric information into at least one of the hash function, the keyed hash function, and the encryption function. ..
秘密情報を用いて暗号学的処理を実行する計算機システムにおける秘密情報の検証方法
であって、
前記計算機システムは、演算装置及び前記演算装置に接続される記憶装置を有する少な
くとも一つの計算機を含み、
前記秘密情報の検証方法は、
前記演算装置が、ユーザから取得された第1生体情報に基づいて第1特徴データを生成
する第1のステップと、
前記演算装置が、前記第1特徴データに基づいて、前記第1生体情報に発生する誤差を
示す誤差特徴データ及び前記第1生体情報に発生する誤差以外の部分を示す定常特徴デー
タを生成する第2のステップと、
前記演算装置が、前記第1生体情報の誤差特徴データに基づいてテンプレートを生成し
、前記ユーザの識別情報及び前記テンプレートを対応付けて前記記憶装置に格納する第3
のステップと、
前記演算装置が、前記第1生体情報の定常特徴データに基づいて、前記暗号学的処理に
用いる第1秘密情報を生成し、前記第1秘密情報に基づいて第1検証情報を生成し、前記
ユーザの識別情報及び前記第1検証情報を対応付けて前記記憶装置に格納する第4のステ
ップと、
前記演算装置が、前記暗号学的処理の実行要求を受け付けた場合、ユーザから取得され
た第2生体情報に基づいて第2特徴データを生成する第5のステップと、
前記演算装置が、前記テンプレート及び前記第2特徴データに基づいて、第2秘密情報
を生成する第6のステップと、
前記演算装置が、前記第2秘密情報に基づいて、第2検証情報を生成する第7のステッ
プと、
前記演算装置が、前記第1検証情報及び前記第2検証情報を比較することによって、前
記第2秘密情報の検証を行う第8のステップと、
前記演算装置が、前記第2秘密情報の検証の結果に基づいて、前記暗号学的処理を実行
する第9のステップとことを特徴とする秘密情報の検証方法。
A method for verifying confidential information in a computer system that executes cryptographic processing using confidential information.
The computer system includes an arithmetic unit and at least one computer having a storage device connected to the arithmetic unit.
The method for verifying the confidential information is
The first step in which the arithmetic unit generates the first feature data based on the first biometric information acquired from the user, and
Based on the first feature data, the arithmetic unit generates error feature data indicating an error occurring in the first biometric information and stationary feature data indicating a portion other than the error occurring in the first biometric information. 2 steps and
A third arithmetic unit generates a template based on the error feature data of the first biometric information, associates the user's identification information with the template, and stores the template in the storage device.
Steps and
The computing device generates first secret information used for the cryptographic processing based on the stationary feature data of the first biometric information, and generates first verification information based on the first secret information. A fourth step of associating the user's identification information with the first verification information and storing the first verification information in the storage device, and
When the arithmetic unit receives the execution request of the cryptographic processing, the fifth step of generating the second feature data based on the second biometric information acquired from the user, and the fifth step.
A sixth step in which the arithmetic unit generates the second secret information based on the template and the second feature data.
The seventh step in which the arithmetic unit generates the second verification information based on the second secret information,
An eighth step in which the arithmetic unit verifies the second secret information by comparing the first verification information and the second verification information.
A method for verifying confidential information, which comprises a ninth step in which the arithmetic unit executes the cryptographic process based on the result of verification of the second confidential information.
請求項6に記載の秘密情報の検証方法であって、
前記第1特徴データ及び前記第2特徴データは、実数を要素とする特徴ベクトルであり

前記誤差特徴データは、前記特徴ベクトルの各要素の小数部分を要素とするベクトルで
あり、
前記定常特徴データは、前記特徴ベクトルの各要素の整数部分を要素とするベクトルで
あることを特徴とする秘密情報の検証方法。
The method for verifying confidential information according to claim 6.
The first feature data and the second feature data are feature vectors having real numbers as elements.
The error feature data is a vector having a fractional part of each element of the feature vector as an element.
A method for verifying secret information, wherein the stationary feature data is a vector having an integer portion of each element of the feature vector as an element.
請求項7に記載の秘密情報の検証方法であって、
前記第3のステップは、
前記演算装置が、前記誤差特徴データの各要素の値を丸める丸め処理を実行するステッ
プと、
前記演算装置が、前記丸め処理が実行された前記第1生体情報の誤差特徴データを前記
テンプレートとして生成するステップと、を含むことを特徴とする秘密情報の検証方法。
The method for verifying confidential information according to claim 7.
The third step is
A step in which the arithmetic unit executes a rounding process for rounding the value of each element of the error feature data.
A method for verifying confidential information, wherein the arithmetic unit includes a step of generating error feature data of the first biometric information on which the rounding process is executed as the template.
請求項7に記載の秘密情報の検証方法であって、
前記第3のステップは、
前記演算装置が、任意の長さのデータ列であるソルトを生成するステップと、
前記演算装置が、前記丸め処理が実行された第1生体情報の誤差特徴データ及び前記ソ
ルトの組を前記テンプレートとして生成するステップと、を含むことを特徴とする秘密情
報の検証方法。
The method for verifying confidential information according to claim 7.
The third step is
A step in which the arithmetic unit generates a salt, which is a data string of an arbitrary length,
A method for verifying confidential information, wherein the arithmetic unit includes a step of generating an error feature data of the first biometric information on which the rounding process has been executed and a set of the salt as the template.
請求項7に記載の秘密情報の検証方法であって、
前記第4のステップは、前記演算装置が、ハッシュ関数、鍵付きハッシュ関数、及び暗
号化関数の少なくともいずれかに、前記第1生体情報の定常特徴データを入力することに
よって前記第1秘密情報を生成するステップを含み、
前記第6のステップは、
前記演算装置が、前記第2特徴データ及び前記テンプレートに含まれる前記第1生体情
報の誤差特徴データに基づいて、前記第2生体情報の定常特徴データを生成するステップ
と、
前記演算装置が、前記ハッシュ関数、前記鍵付きハッシュ関数、及び前記暗号化関数の
少なくともいずれかに、前記第2生体情報の定常特徴データを入力することによって前記
第2秘密情報を生成するステップと、を含むことを特徴とする秘密情報の検証方法。
The method for verifying confidential information according to claim 7.
In the fourth step, the arithmetic unit inputs the stationary feature data of the first biometric information to at least one of a hash function, a keyed hash function, and an encryption function to obtain the first secret information. Including steps to generate
The sixth step is
A step in which the arithmetic unit generates stationary feature data of the second biometric information based on the error feature data of the first biometric information included in the second feature data and the template.
A step in which the arithmetic unit generates the second secret information by inputting stationary feature data of the second biometric information into at least one of the hash function, the keyed hash function, and the encryption function. A method for verifying confidential information, which comprises.
データの秘匿に用いる秘密情報の生成に用いるテンプレートを生成する計算機であって

前記計算機は、演算装置及び前記演算装置に接続される記憶装置を有し、
前記演算装置は、
ユーザから取得された第1生体情報に基づいて第1特徴データを生成し、
前記第1特徴データに基づいて、前記第1生体情報に発生する誤差を示す誤差特徴デー
タ及び前記第1生体情報に発生する誤差以外の部分を示す定常特徴データを生成し、
前記誤差特徴データの各要素の値を丸める丸め処理を実行し、
任意の長さのデータ列であるソルトを生成し、
前記丸め処理が実行された前記第1生体情報の誤差特徴データ及び前記ソルトに基づい
て、検証対象の第2秘密情報の生成に用いるテンプレートを生成し、前記ユーザの識別情
報及び前記テンプレートを対応付けて前記記憶装置に格納し、
前記第1生体情報の定常特徴データに基づいて第1秘密情報を生成し、前記第1秘密情
報に基づいて、前記第2秘密情報の検証に用いる検証情報を生成し、前記ユーザの識別情
報及び前記検証情報を対応付けて前記記憶装置に格納することを特徴とする計算機。
A computer that generates templates used to generate confidential information used to conceal data.
The calculator has an arithmetic unit and a storage device connected to the arithmetic unit.
The arithmetic unit
Generate the first feature data based on the first biometric information acquired from the user,
Based on the first feature data, error feature data showing an error occurring in the first biometric information and stationary feature data showing a portion other than the error occurring in the first biometric information are generated.
A rounding process for rounding the value of each element of the error feature data is executed.
Generate a salt that is a data string of arbitrary length
Based on the error feature data of the first biometric information and the salt on which the rounding process is executed, a template used for generating the second secret information to be verified is generated, and the user's identification information and the template are associated with each other. And store it in the storage device
The first secret information is generated based on the stationary feature data of the first biometric information, and the verification information used for the verification of the second secret information is generated based on the first secret information. A computer characterized in that the verification information is associated and stored in the storage device.
請求項11に記載の計算機であって、
前記第1特徴データは、実数を要素とする特徴ベクトルであり、
前記誤差特徴データは、前記特徴ベクトルの各要素の小数部分を要素とするベクトルで
あり、
前記定常特徴データは、前記特徴ベクトルの各要素の整数部分を要素とするベクトルで
あることを特徴とする計算機。
The calculator according to claim 11.
The first feature data is a feature vector having a real number as an element.
The error feature data is a vector having a fractional part of each element of the feature vector as an element.
A computer characterized in that the stationary feature data is a vector having an integer portion of each element of the feature vector as an element.
JP2021000451A 2021-01-05 2021-01-05 Computer system, verification method of confidential information, and computer Active JP7021375B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2021000451A JP7021375B2 (en) 2021-01-05 2021-01-05 Computer system, verification method of confidential information, and computer

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2021000451A JP7021375B2 (en) 2021-01-05 2021-01-05 Computer system, verification method of confidential information, and computer

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP2017114026A Division JP6821516B2 (en) 2017-06-09 2017-06-09 Computer system, confidential information verification method, and computer

Publications (2)

Publication Number Publication Date
JP2021061633A true JP2021061633A (en) 2021-04-15
JP7021375B2 JP7021375B2 (en) 2022-02-16

Family

ID=75380541

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2021000451A Active JP7021375B2 (en) 2021-01-05 2021-01-05 Computer system, verification method of confidential information, and computer

Country Status (1)

Country Link
JP (1) JP7021375B2 (en)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002538504A (en) * 1999-02-11 2002-11-12 アールエスエイ セキュリティー インコーポレーテッド Fuzzy commitment method
US20040148509A1 (en) * 2001-03-23 2004-07-29 Yong Dong Wu Method of using biometric information for secret generation
US20150012742A1 (en) * 2013-07-07 2015-01-08 Victor Gorelik Active biometric authentication with zero privacy leakage
JP2016072836A (en) * 2014-09-30 2016-05-09 株式会社日立製作所 Sequential biometric cipher system and sequential biometric cipher processing method

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002538504A (en) * 1999-02-11 2002-11-12 アールエスエイ セキュリティー インコーポレーテッド Fuzzy commitment method
US20040148509A1 (en) * 2001-03-23 2004-07-29 Yong Dong Wu Method of using biometric information for secret generation
US20150012742A1 (en) * 2013-07-07 2015-01-08 Victor Gorelik Active biometric authentication with zero privacy leakage
JP2016072836A (en) * 2014-09-30 2016-05-09 株式会社日立製作所 Sequential biometric cipher system and sequential biometric cipher processing method

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
LI, Q., SUTCU, Y. AND MEMON, N.: "Secure Sketch for Biometric Templates", LECTURE NOTES IN COMPUTERE SCIENCE, vol. 4284, JPN6020014700, 2006, pages 99 - 113, ISSN: 0004690356 *
ZHENG, G., LI, W. AND ZHAN, C.: "Cryptographic Key Generation from Biometric Data Using Lattice Mapping", PROCEEDINGS THE 18TH INTERNATONAL CONFERENCE ON PATTERN RECOGNITION, JPN6020014702, August 2006 (2006-08-01), pages 1 - 4, ISSN: 0004690357 *

Also Published As

Publication number Publication date
JP7021375B2 (en) 2022-02-16

Similar Documents

Publication Publication Date Title
JP6821516B2 (en) Computer system, confidential information verification method, and computer
CN107925581B (en) Biometric authentication system and authentication server
JP6504013B2 (en) Cryptographic processing method, cryptographic processing device, and cryptographic processing program
JP6096893B2 (en) Biometric signature system, registration terminal and signature generation terminal
JP6238867B2 (en) Sequential biometric cryptographic system and sequential biometric cryptographic processing method
JP5753772B2 (en) Biometric authentication system
Agrawal et al. Game-set-MATCH: Using mobile devices for seamless external-facing biometric matching
JP2007189590A (en) Personal authentication device, server device, authentication system and authentication method
CN111475690B (en) Character string matching method and device, data detection method and server
JP2019208133A (en) Biometric authentication system and biometric authentication method
JP7021375B2 (en) Computer system, verification method of confidential information, and computer
Itakura et al. Proposal on a multifactor biometric authentication method based on cryptosystem keys containing biometric signatures
CN112631552A (en) Random number generation and regeneration method based on non-uniform random source and electronic device
WO2021106334A1 (en) Key generation device, key utilization device, and key generation method
Gunasinghe et al. Privacy preserving biometrics-based and user centric authentication protocol
JP4999472B2 (en) Information processing apparatus and calculation method
JP7061083B2 (en) Signature system, signature method and program
JP7320101B2 (en) Computer system, server, terminal, program, and information processing method
WO2023127068A1 (en) Matching system, key generation device, matching device, first transform device, second transform device, and methods therefor
JP2023031772A (en) Biometric authentication system, biometric authentication server, and biometric authentication method
JP2023125727A (en) Template management system and template management method
Yue et al. A Face-Authentication Based Searchable Encryption Scheme For Mobile Device
Begum et al. Data Analytic Framework with Hybrid Security
Kwon et al. A practical method for generating digital signatures using biometrics
JP2018050316A (en) Successive biometric encryption system and successive biometric encryption processing method

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20210204

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20210204

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20220203

R150 Certificate of patent or registration of utility model

Ref document number: 7021375

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150