WO2021070275A1 - 情報照合システム及び情報照合方法 - Google Patents

情報照合システム及び情報照合方法 Download PDF

Info

Publication number
WO2021070275A1
WO2021070275A1 PCT/JP2019/039781 JP2019039781W WO2021070275A1 WO 2021070275 A1 WO2021070275 A1 WO 2021070275A1 JP 2019039781 W JP2019039781 W JP 2019039781W WO 2021070275 A1 WO2021070275 A1 WO 2021070275A1
Authority
WO
WIPO (PCT)
Prior art keywords
information
key
collation
secret
concealment
Prior art date
Application number
PCT/JP2019/039781
Other languages
English (en)
French (fr)
Inventor
春菜 福田
寿幸 一色
成泰 奈良
寛人 田宮
利彦 岡村
Original Assignee
日本電気株式会社
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 日本電気株式会社 filed Critical 日本電気株式会社
Priority to PCT/JP2019/039781 priority Critical patent/WO2021070275A1/ja
Priority to US17/763,306 priority patent/US20220345302A1/en
Priority to JP2021550997A priority patent/JP7259979B2/ja
Publication of WO2021070275A1 publication Critical patent/WO2021070275A1/ja

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0861Generation of secret information including derivation or calculation of cryptographic keys or passwords
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/31User authentication
    • G06F21/32User authentication using biometric data, e.g. fingerprints, iris scans or voiceprints
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/602Providing cryptographic facilities or services
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6218Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
    • G06F21/6245Protecting personal data, e.g. for financial or medical purposes
    • G06F21/6254Protecting personal data, e.g. for financial or medical purposes by anonymising data, e.g. decorrelating personal data from the owner's identification
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/008Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols involving homomorphic encryption
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0861Generation of secret information including derivation or calculation of cryptographic keys or passwords
    • H04L9/0869Generation of secret information including derivation or calculation of cryptographic keys or passwords involving random numbers or seeds
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/14Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using a plurality of keys or algorithms
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3226Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using a predetermined code, e.g. password, passphrase or PIN
    • H04L9/3231Biological data, e.g. fingerprint, voice or retina
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/21Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/2117User registration

Definitions

  • the present invention relates to an information collation system and an information collation method.
  • Personal authentication is a means of confirming the identity of the registered person and the authenticated person. Personal authentication is performed by comparing the information about the registered person stored in advance with the information about the person to be authenticated that is acquired each time the authentication is performed.
  • Biometrics which is a method of personal authentication, uses physical features such as the face, fingerprints, and iris to authenticate. More specifically, data called a feature amount is extracted from a living body and used for authentication. The feature amount extracted from the living body is slightly different each time it is extracted. Therefore, at the time of authentication, the feature amount extracted from the registered person is compared with the feature amount extracted from the authenticated person, and if it is recognized that they are sufficiently similar, the authentication is successful.
  • the method of determining the similarity depends on the feature extraction method, but the feature is usually expressed in the form of a vector, and the similarity is calculated by the inner product of the two features, the Euclidean distance, the Hamming distance, etc., and the similarity is determined. Is sufficiently similar when is included in a predetermined range.
  • biometric authentication Compared to authentication by memorizing passwords and authentication by possession of IC cards, etc., it is more convenient that the user does not need to actively prepare for memory and possession to enter authentication information, and authentication information is given to others.
  • the advantage of biometric authentication is that it is difficult to use and has high safety. With the progress of technologies such as feature extraction method, biometric authentication has been increasingly used as a means of personal authentication in recent years.
  • biometric authentication has the disadvantage that biometric information, which is immutable throughout life, cannot be changed even if it is leaked.
  • biometric features are stipulated as personal information in the General Data Protection Regulation of Europe and the Personal Information Protection Law of Japan. There are restrictions on the handling of data that corresponds to personal information, such as storage and external provision. In addition to restrictions imposed by laws and regulations, consideration is often required for social acceptance.
  • biometric authentication methods that can conceal and store biometric information and judge the authentication result while concealing it are being actively researched. Furthermore, in order to take advantage of biometric authentication, a method that does not require the user to memorize or possess other than biometric information is desirable. As a means for realizing the determination while keeping it secret, a method using a public key cryptosystem having additive homomorphism is known.
  • the public key cryptosystem is composed of three algorithms: a key generation algorithm (KeyGen), an encryption algorithm (Enc), and a decryption algorithm (Dec).
  • KeyGen key generation algorithm
  • Enc encryption algorithm
  • Dec decryption algorithm
  • the key generation algorithm generates an encryption key ek and a decryption key dk using parameters called security parameters that represent the strength of the key. This operation can be expressed as the following equation, where the security parameter is ⁇ . KeyGen ( ⁇ ) ⁇ (ek, dk)
  • the encryption algorithm generates the ciphertext c, which is the result of encrypting the plaintext message m with the encryption key ek. This can be expressed as the following equation. Enc (ek, m) ⁇ c
  • the decryption algorithm generates m', which is the result of decrypting the ciphertext c with the decryption key dk. This can be expressed as the following equation. Dec (dk, c) ⁇ m'
  • the ciphertext c which is the result of encrypting an arbitrary message m with the encryption key ek, is decrypted with the decryption key dk for the pair of the arbitrary encryption key ek and the decryption key dk generated by the key generation algorithm.
  • the result m' should be equal to m. That is, for KeyGen ( ⁇ ) ⁇ (ek, dk), Dec (dk, Enc (ek, m)) ⁇ m for any m. Must hold.
  • a public key cryptosystem having homomorphism (hereinafter referred to as homomorphic public key cryptography) has a homomorphic arithmetic algorithm (HomeAd) in addition to each algorithm of public key cryptography.
  • HomeAd homomorphic arithmetic algorithm
  • the homomorphism algorithm uses an encryption key to generate a ciphertext of the operation result of a message corresponding to a plurality of input ciphertexts.
  • HomeAdd (ek, c 1 , c 2 ) ⁇ c
  • ciphertext ciphertext c 1 by the encryption key ek messages m 1 is produced from c is a ciphertext of m 1 + m 2. That is, for KeyGen ( ⁇ ) ⁇ (ek, dk), for arbitrary m 1 and m 2 . Enc (ek, m 1 ) ⁇ c 1 , Enc (ek, m 2 ) ⁇ c 2 Then Dec (dk, HomeAdd (ek, c 1 , c 2 )) ⁇ m 1 + m 2 Is established.
  • the ciphertext c by the ciphertext ek of the message m and the scalar value s are used to obtain a ciphertext of s ⁇ m. Can calculate statements.
  • Elliptic curve ElGamal encryption and the like are known as public key cryptography having additive homomorphism.
  • Each algorithm of the elliptic curve ElGamal encryption disclosed in Non-Patent Document 1 operates as follows.
  • c is a ciphertext of m 1 + m 2
  • the elliptic curve ElGamal encryption has additive homomorphism.
  • biometric information is sensitive information and there is a risk in management by the business operator, and the business operator does not want to manage it. Further, in order to realize versatility in which the same payment method can be used by a plurality of businesses, it is inconvenient to use biometric information managed by the businesses for verification at the time of payment. Therefore, there is a demand for realizing cashless payment in the form of storing the registered biometric information in a terminal such as a customer's smartphone.
  • a method that can determine the authentication result between a terminal such as a smartphone and a device in a store without disclosing the biometric information. That is, a method is desired in which the biological features stored in the customer's smartphone and the biological features extracted by the device of the business operator can be collated while being kept secret from each other. Such a method can be realized as follows by using, for example, an additive homomorphic public key cryptosystem.
  • the store equipment encrypts the feature amount of the target customer extracted by the sensor by the additive homomorphic public key cryptosystem and sends it to the customer's smartphone (step 1).
  • the customer's smartphone calculates the ciphertext of similarity by the additive homomorphic calculation of the stored feature amount and the received encrypted feature amount.
  • the calculated encryption similarity is sent to the store equipment (step 2).
  • Store equipment decrypts the encryption similarity and obtains the similarity. If the degree of similarity is included in a predetermined range, it is determined that the target customer is the owner of the smartphone, and the account is charged for payment (step 3).
  • Taher ElGamal "A public key cryptosystem and a signature scheme based on discrete logarithms.” IEEE transactions on information theory 31.4 (1985): 469-472.
  • step 2 it cannot be guaranteed that the feature amount used by the smartphone (the feature amount stored above) is correct in step 2, so that the illegal settlement by spoofing is performed.
  • the feature amount used by the smartphone the feature amount stored above
  • step 3 the attacker is determined to be the owner of the smartphone, and the account of the owner of the smartphone is charged.
  • An object of the present invention is to provide an information collation system and an information collation method for solving the above-mentioned problems.
  • the common key generation device includes a common key generation device, a storage information generation device, a collation information concealment device, a concealment similarity calculation device, and a decryption device.
  • a common key is generated, the storage information generator acquires the registration information and an identifier capable of distinguishing the registration information, generates a first individual key from the common key and the identifier, and together with the common key.
  • the first individual key is used to generate stored information obtained by linearly converting the registered information, and the collation information concealment device acquires collation information and conceals the collation information using an encryption key.
  • the information is generated, the secret similarity calculation device calculates the secret similarity from the stored information and the secret collation information, and the decryption device generates a second individual key from the common key and the identifier.
  • An information matching system that calculates the similarity between the registered information and the matching information from the secret similarity, the decryption key corresponding to the encryption key, the common key, and the second individual key. Provided.
  • the common key generation device, the storage information generation device, the collation information concealment device, the concealment similarity calculation device, and the decryption device are common in the information collation system.
  • the step in which the key generation device generates a common key the storage information generation device acquires registration information and an identifier capable of distinguishing the registration information, and generates a first individual key from the common key and the identifier.
  • the step of generating the stored information obtained by linearly converting the registered information using the common key and the first individual key, and the collation information concealment device acquire the collation information and use the encryption key.
  • a second individual key is generated from the above and the identifier, and the registration information is obtained from the secret similarity, the decryption key corresponding to the encryption key, the common key, and the second individual key.
  • An information matching method including a step of calculating the similarity of the matching information is provided.
  • an information collation system and an information collation method capable of collating two pieces of information without disclosing each other and making it impossible to collate using information other than the registered information. ..
  • other effects may be produced in place of or in combination with the effect.
  • the information collation system includes a common key generation device 11, a storage information generation device 12, a collation information concealment device 13, a concealment similarity calculation device 14, and a decoding device 15 (FIG. 1). reference).
  • the common key generator 11 generates a common key.
  • the storage information generation device 12 acquires the registration information and the identifier capable of distinguishing the registration information, generates the first individual key from the common key and the identifier, and also uses the common key and the first individual key to generate the registration information. Generates stored information that is linearly converted from.
  • the collation information concealment device 13 acquires the collation information and uses the encryption key to generate the concealment collation information in which the collation information is concealed.
  • the secret similarity calculation device 14 calculates the secret similarity from the stored information and the secret collation information.
  • the decryption device 15 generates a second individual key from the common key and the identifier, and also registers information from the secret similarity, the decryption key corresponding to the encryption key, the common key, and the second individual key. And the similarity of the collation information is calculated.
  • the concealed collation information is transmitted to the concealment similarity calculation device 14. Therefore, the confidential similarity calculation device 14 cannot know the content of the collation information. Further, the confidential similarity calculation device 14 calculates the confidential similarity in which the similarity between the registered information and the collation information is concealed.
  • the secret similarity calculation device 14 transmits the calculated secret similarity to the decoding device 15. Therefore, the decoding device 15 cannot know the stored information (the stored information in which the registered information is linearly converted). Therefore, the registration information and the collation information are not disclosed to each other in the confidential similarity calculation device 14 and the decoding device 15, but the information can be collated. Further, in the above information collation system, the storage information generation device 12 generates the storage information by using the registration information and the common key.
  • the storage information for another registration information is not generated. .. Therefore, verification using registered information other than the registered information when the stored information is generated cannot be performed.
  • the two pieces of information can be collated without disclosing each other, and the collation using information other than the registered information is impossible.
  • FIG. 2 is a block diagram showing the configuration of the information collation system 100 according to the first embodiment.
  • the information collation system 100 includes a common key generation device 110, a storage information generation device 140, a collation information concealment device 150, a concealment similarity calculation device 160, and a decoding device 170.
  • each of the above-mentioned devices included in the information collation system 100 may be configured as a separate device, or may be mounted in the same device as appropriate depending on the application.
  • the concealment similarity calculation device 160 is used as a client, and the common key generation device 110, the storage information generation device 140, the collation information concealment device 150, and the decoding device 170 are separately mounted on the server. By doing so, it can be realized as a client server system.
  • Each device shown in FIG. 2 (common key generation device 110, storage information generation device 140, collation information concealment device 150, concealment similarity calculation device 160, decoding device 170) is connected by wire or wirelessly and can communicate with each other. It is configured. For example, each device included in the information collation system 100 is connected as shown in FIG.
  • the common key generator 110 is Random number acquisition unit 111 that acquires random numbers, A common key generation unit 112 that generates a common key using the random numbers acquired by the random number acquisition unit 111, It has a common key output unit 113 that outputs a common key generated by the common key generation unit 112.
  • the storage information generator 140 Registration information acquisition unit 141 to acquire registration information and An identifier acquisition unit 142 that acquires an identifier, and The common key acquisition unit 143 that acquires the common key output by the common key generation device 110, and An individual key generation unit 144 that generates an individual key from the identifier acquired by the identifier acquisition unit 142 and the common key acquired by the common key acquisition unit 143.
  • a storage information generation unit 147 that generates storage information from the registration information acquired by the registration information acquisition unit 141 and the individual key generated by the individual key generation unit 144. It has a storage information output unit 148 that outputs the storage information generated by the storage information generation unit 147.
  • the collation information concealment device 150 The collation information acquisition unit 151 that acquires the collation information, and The matching random number acquisition unit 152 that acquires the matching random number, and A matching random number transmission unit 153 that transmits the matching random number acquired by the matching random number acquisition unit 152, and a matching random number transmission unit 153.
  • a secret collation information generation unit 154 that generates secret collation information from the collation information acquired by the collation information acquisition unit 151 and the collation random number acquired by the collation random number acquisition unit 152. It has a secret collation information transmission unit 155 that transmits secret collation information generated by the secret collation information generation unit 154.
  • the confidential similarity calculation device 160 is The secret verification information receiving unit 161 that receives the secret verification information, and A storage information acquisition unit 162 that acquires an identifier and storage information, and The secret similarity calculation unit 163 that calculates the secret similarity from the secret verification information received by the secret verification information receiving unit 161 and the stored information acquired by the storage information acquisition unit 162, It has an identifier acquired by the storage information acquisition unit 162 and a secret similarity transmission unit 164 for transmitting the secret similarity calculated by the secret similarity calculation unit 163.
  • the decoding device 170 The matching random number receiving unit 171 that receives the matching random number and The secret similarity receiving unit 172 that receives the identifier and the secret similarity, and The collation information acquisition unit 173 that acquires the collation information, and The common key acquisition unit 174 that acquires the common key, An individual key generation unit 175 that generates an individual key from the identifier received by the secret similarity receiving unit 172 and the common key acquired by the common key acquisition unit 174. From the matching random number received by the matching random number receiving unit 171, the secret similarity received by the secret similarity receiving unit 172, the matching information acquired by the matching information acquisition unit 173, and the individual key generated by the individual key generation unit 175.
  • the similarity calculation unit 176 that calculates the similarity
  • a collation result determination unit 177 that determines a collation result based on the similarity calculated by the similarity calculation unit 176, and a collation result determination unit 177. It has a collation result output unit 178 that outputs a collation result determined by the collation result determination unit 177.
  • the common key generation device 110 of the information verification system 100 operates.
  • the operation in the common key generation phase of the present embodiment will be described in detail with reference to FIG.
  • the random number acquisition unit 111 of the common key generation device 110 acquires a random number (step A1).
  • the means for acquiring the random numbers does not matter. For example, it may be generated by using the random number generation function provided inside the common key generation device 110, or the random number generated outside the common key generation device 110 may be acquired from the external device.
  • the common key generation unit 112 generates a common key using the random numbers acquired by the random number acquisition unit 111 (step A2).
  • the common key output unit 113 outputs the common key generated by the common key generation unit 112 (step A3).
  • the output common key is stored by an appropriate means because it is used by the storage information generation device 140 in the storage information generation phase and by the decoding device 170 in the collation phase.
  • the storage information generation device 140 of the information collation system 100 operates.
  • the operation in the storage information generation phase of the present embodiment will be described in detail with reference to FIG.
  • the registration information acquisition unit 141 of the storage information generation device 140 acquires the registration information (step B1).
  • the means of acquiring the registration information does not matter.
  • the registration information acquisition unit 141 may acquire registration information from the outside by using an input means such as a sensor attached to the storage information generation device 140.
  • the identifier acquisition unit 142 acquires the identifier (step B2).
  • This identifier is associated with the registration information.
  • the identifier may be an identifier representing the target person.
  • the identifiers are an identifier representing the target person and the number of times the storage information generation phase is executed. It may be a combination of identifiers related to.
  • the common key acquisition unit 143 acquires the common key output by the common key generator 110 in step A3 (step B3).
  • the means for obtaining the common key does not matter.
  • the common key may be stored in advance in the storage means provided inside the storage information generation device 140, or the common key may be acquired each time from the storage means outside the storage information generation device 140.
  • the individual key generation unit 144 generates an individual key from the identifier acquired by the identifier acquisition unit 142 in step B2 and the common key acquired by the common key acquisition unit 143 in step B3 (step B4).
  • the storage information generation unit 147 generates storage information from the registration information acquired by the registration information acquisition unit 141 in step B1 and the individual key generated by the individual key generation unit 144 in step B4 (step B5). ..
  • the storage information output unit 148 outputs a set of the identifier acquired by the identifier acquisition unit 142 in step B2 and the storage information generated by the storage information generation unit 147 in step B5 (step B6).
  • the output identifier and the stored information are stored by an appropriate means because they are used by the confidential similarity calculation device 160 in the collation phase.
  • the collation information concealment device 150 In the collation phase of the present embodiment, the collation information concealment device 150, the concealment similarity calculation device 160, and the decoding device 170 of the information collation system 100 operate.
  • the operation in the collation phase of the present embodiment will be described in detail with reference to FIG.
  • the collation information acquisition unit 151 of the collation information concealment device 150 acquires the collation information (step C1).
  • the means of acquiring the registration information does not matter.
  • the registration information may be acquired from the outside by using an input means such as a sensor attached to the collation information concealment device 150.
  • the matching random number acquisition unit 152 acquires a random number (step C2).
  • this random number is referred to as a matching random number.
  • the means of acquiring random numbers does not matter.
  • a random number may be generated by using the random number generation function provided inside the collation information concealment device 150, or a random number generated outside the collation information concealment device 150 may be acquired.
  • a part or all of the collation random numbers may not be changed each time the collation phase is executed, but may be stored and reused inside or outside the collation information concealment device 150.
  • the matching random number transmission unit 153 transmits the matching random number acquired in step C2 to the decoding device 170 (step C3).
  • the matching random number receiving unit 171 of the decoding device 170 receives the matching random number transmitted from the matching information concealment device 150 in step C3 (step C4).
  • the concealment collation information generation unit 154 of the collation information concealment device 150 conceals the collation information acquired by the collation information acquisition unit 151 in step C1 by using the collation random number acquired by the collation random number acquisition unit 152 in step C2. Then, the confidential collation information is generated (step C5).
  • the secret collation information transmission unit 155 transmits the secret collation information generated by the secret collation information generation unit 154 in step C5 to the secret similarity calculation device 160 (step C6).
  • the secret collation information receiving unit 161 of the secret similarity calculation device 160 receives the secret collation information transmitted by the collation information concealment device 150 in step C6 (step C7).
  • the storage information acquisition unit 162 acquires a set of the identifier and the storage information output by the storage information generation device 140 in step B6 (step C8).
  • the means of acquiring the identifier and stored information does not matter.
  • the identifier and the storage information may be stored in advance in the storage means provided inside the secret similarity calculation device 160, or even if these information are acquired each time from the storage means outside the secret similarity calculation device 160. Good.
  • the confidential similarity calculation unit 163 calculates the confidential similarity from the confidential collation information received by the confidential collation information receiving unit 161 in step C7 and the stored information acquired by the stored information acquisition unit 162 in step C8. (Step C9).
  • the secret similarity transmission unit 164 transmits the identifier acquired by the storage information acquisition unit 162 in step C8 and the secret similarity calculated by the secret similarity calculation unit 163 in step C9 to the decoding device 170 ( Step C10).
  • the secret similarity receiving unit 172 of the decoding device 170 receives the identifier and the secret similarity transmitted by the secret similarity calculation device 160 in step C10 (step C11).
  • a plurality of confidential similarity calculation devices 160 may be provided for one decoding device 170. In that case, a plurality of sets of identifiers and confidential similarity are received in step C11.
  • the collation information acquisition unit 173 acquires the collation information acquired by the collation information concealment device 150 in step C1 (step C12).
  • the means for acquiring the collation information does not matter.
  • the collation information may be acquired from the collation information concealment device 150, or the collation information may be acquired at the same time as step C1 by the same means as the collation information concealment device 150.
  • the common key acquisition unit 174 acquires the common key output by the common key generator 110 in step A3 (step C13).
  • the means for obtaining the common key does not matter.
  • the common key may be stored in advance in the storage means provided inside the decoding device 170, or the common key may be acquired each time from the storage means outside the decoding device 170.
  • the individual key generation unit 175 generates an individual key from the identifier received by the secret similarity receiving unit 172 in step C11 and the common key acquired by the common key acquisition unit 174 in step C13 (step C14). ..
  • an individual key is generated for each of the identifiers received in step C11.
  • the similarity calculation unit 176 includes the matching random number received by the matching random number receiving unit 171 in step C4, the secret similarity received by the secret similarity receiving unit 172 in step C11, and the matching information acquisition unit 173 in step C12.
  • the similarity is calculated from the collation information acquired by the above, the common key acquired by the common key acquisition unit 174 in step C13, and the individual key generated by the individual key generation unit 175 in step C14 (step C15).
  • the collation result determination unit 177 determines the collation result based on the similarity calculated by the similarity calculation unit 176 in step C15 (step C16).
  • the collation result is determined from the plurality of similarity calculated in step C15.
  • the identifier with the highest degree of similarity may be used as the collation result, or the pair of identifiers and the degree of similarity may be arranged in descending order of similarity as the collation result.
  • the collation result output unit 178 outputs the collation result determined by the collation result determination unit 177 in step C16 (step C17).
  • each step is not limited to the above-mentioned order. For example, before the acquisition of the collation information in step C1, steps that do not depend on the collation information (transmission of an identifier among steps C2, C3, C4, C8, and C10, reception of an identifier among C11, C13, and C14) are executed. You may.
  • a hash function is used.
  • the hash function there is no limitation on the hash function to be used, but it is assumed that the storage information generation device 140 and the decoding device 170 have knowledge of the hash function to be used in advance.
  • the hash function used is referred to as Hash.
  • the random number acquisition unit 111 of the common key generator 110 acquires two random numbers a and K of 1 or more and less than q (step A1).
  • the common key generation unit 112 uses the set of random numbers (a, K) acquired by the random number acquisition unit 111 as the common key (step A2).
  • the common key output unit 113 outputs the common key (a, K) generated by the common key generation unit 112 (step A3).
  • the identifier acquisition unit 142 acquires the identifier ID (step B2).
  • the common key acquisition unit 143 acquires the common keys (a, K) output by the common key generator 110 in step A3 (step B3).
  • the storage information output unit 148 outputs a set of the identifier ID acquired by the identifier acquisition unit 142 in step B2 and the storage information z ID generated by the storage information generation unit 147 in step B5 (step B6).
  • the matching random number acquisition unit 152 executes the key generation algorithm of the random number r of 1 or more and less than q and the ECElgamal encryption, and acquires the encryption key ek and the decryption key dk (step C2).
  • the collation random number transmission unit 153 transmits (r, ek, dk) acquired in step C2 to the decoding device 170 as a collation random number (step C3).
  • the matching random number receiving unit 171 of the decoding device 170 receives the matching random numbers (r, ek, dk) transmitted from the matching information concealment device 150 in step C3 (step C4).
  • the secret collation information transmission unit 155 transmits the secret collation information (ek, Y) generated by the secret collation information generation unit 154 in step C5 to the secret similarity calculation device 160 (step C6).
  • the secret collation information receiving unit 161 of the secret similarity calculation device 160 receives the secret collation information (ek, Y) transmitted by the collation information concealment device 150 in step C6 (step C7).
  • the storage information acquisition unit 162 acquires a set (ID, z ID ) of the identifier and the storage information output by the storage information generation device 140 in step B6 (step C8).
  • the confidential similarity transmission unit 164 The identifier ID acquired by the storage information acquisition unit 162 in step C8 and The pair with the secret similarity Z ID calculated by the secret similarity calculation unit 163 in step C9 is transmitted to the decoding device 170 (step C10).
  • the secret similarity receiving unit 172 of the decoding device 170 receives a set (ID, Z ID ) of the identifier and the secret similarity transmitted by the secret similarity calculation device 160 in step C10 (step C11).
  • the common key acquisition unit 174 acquires the common keys (a, K) output by the common key generator 110 in step A3 (step C13).
  • the collation result determination unit 177 collates by confirming whether or not the similarity s calculated by the similarity calculation unit 176 in step C15 matches any of the T values ⁇ 1 , ..., and ⁇ ⁇ . The result is determined (step C16).
  • the collation result output unit 178 outputs the collation result determined by the collation result determination unit 177 in step C16 (step C17).
  • r is selected each time the matching phase is performed to bring about the effect of preventing retransmission attacks, but this is not an essential configuration in the disclosure of the present application. Further, it can be replaced by a communication path encryption means such as SSL / TLS.
  • (ek, dk) is not selected each time the matching phase is executed, but the same value may be used each time. .. Further, a matching random number may be generated in the common key generation phase and the random number may be distributed in advance.
  • the above-described embodiment has an effect that the registered information and the collation information can be collated without disclosing each other, and an effect that the collation cannot be performed using the registered information other than the registered information used in the storage information generation phase.
  • the reason why the registration information and the collation information can be collated without disclosing each other is that, in the collation phase, the collation information concealment device 150 transmits (sends) the concealment collation information concealing the collation information to the concealment similarity calculation device 160.
  • the collation information is not disclosed to the concealment similarity calculation device 160, and the concealment similarity calculation device 160 calculates the concealment similarity, which is a value obtained by concealing the similarity between the registration information and the collation information, and the decoding device 170. This is because the stored information is not disclosed to the decoding device 170 because it is sent to the decoding device 170.
  • the reason why the collation cannot be performed using the registration information other than the registration information used in the storage information generation phase is that the storage information generation device 140 generates the storage information using the registration information and the common key in the storage information generation phase. Therefore, without the common key, it is not possible to generate the stored information for another registration information.
  • FIG. 7 is a block diagram showing a configuration of the information collation system 200 according to the second embodiment.
  • the information collation system 200 includes a common key generation device 110, a registration information concealment device 220, a registration assistance device 230, a storage information generation device 240, a collation information concealment device 150, a concealment similarity calculation device 160, and the concealment similarity calculation device 160. It has a decoding device 170.
  • Each of the above-mentioned devices included in the information collation system 200 may be configured as a separate device, or may be mounted in the same device as appropriate depending on the application.
  • the information collation system 200 uses the registration information concealment device 220, the storage information generation device 240, and the concealment similarity calculation device 160 as clients, the common key generation device 110, the registration auxiliary device 230, and the collation information concealment. It is also possible to realize it as a client server system by separately mounting the conversion device 150 and the decoding device 170 on the server.
  • Each device shown in FIG. 7 (common key generation device 110, collation information concealment device 150, concealment similarity calculation device 160, decryption device 170, registration information concealment device 220, registration auxiliary device 230, storage information generation device 240) It is connected by wire or wirelessly and is configured to be able to communicate with each other. For example, each device included in the information collation system 200 is connected as shown in FIG.
  • the common key generation device 110, the collation information concealment device 150, the concealment similarity calculation device 160, and the decryption device 170 are the devices having the same name and the same number in the information collation system 100 according to the first embodiment. Since it is configured in the same manner, the description thereof will be omitted.
  • the registration information concealment device 220 Registration information acquisition unit 221 to acquire registration information and An identifier acquisition unit 222 that acquires an identifier, and The concealment key acquisition unit 223 that acquires the concealment key and the concealment release key, The concealment key transmission unit 224 that transmits the concealment release key acquired by the concealment key acquisition unit 223, and The secret registration information generation unit 225 that generates the secret registration information in which the registration information acquired by the registration information acquisition unit 221 is concealed by the concealment key acquired by the concealment key acquisition unit 223. It has an identifier acquired by the identifier acquisition unit 222 and a secret registration information transmission unit 226 that transmits a set of the secret registration information generated by the secret registration information generation unit 225.
  • the registration auxiliary device 230 The secret registration information receiving unit 231 that receives the set of the identifier and the secret registration information, and The common key acquisition unit 232 that acquires the common key, An individual key generation unit 233 that generates an individual key from the identifier received by the secret registration information reception unit 231 and the common key acquired by the common key acquisition unit 232, and Secret registration information generation unit that generates secret storage information from the secret registration information received by the secret registration information receiving unit 231, the common key acquired by the common key acquisition unit 232, and the individual key generated by the individual key generation unit 233. 234 and It has an identifier received by the secret registration information receiving unit 231 and a secret storage information transmission 235 that transmits a set of secret storage information generated by the secret storage information generation unit 234.
  • the storage information generator 240 The secret release key receiver 245 that receives the secret release key, and The secret storage information receiving unit 246 that receives the set of the identifier and the secret storage information, and A storage information generation unit 247 that generates storage information by releasing the concealment of the secret storage information received by the secret storage information receiving unit 246 using the secret release key received by the secret release key receiving unit 245. It has a storage information output unit 248 that outputs the storage information generated by the storage information generation unit 247.
  • the common key generation device 110 of the information verification system 200 operates. Further, in the storage information generation phase of the present embodiment, the collation information concealment device 150, the concealment similarity calculation device 160, and the decoding device 170 of the information collation system 200 operate. Since each operation is the same as that of the first embodiment, the description thereof will be omitted.
  • the registration information concealment device 220, the registration assistance device 230, and the storage information generation device 240 of the information collation system 200 operate.
  • the operation in the storage information generation phase of the present embodiment will be described in detail with reference to FIG.
  • the registration information acquisition unit 221 of the registration information concealment device 220 acquires the registration information (step D1).
  • the means of acquiring the registration information does not matter.
  • the registration information may be acquired from the outside by using an input means such as a sensor attached to the registration information concealment device 220.
  • the identifier acquisition unit 222 acquires the identifier (step D2).
  • This identifier is associated with the registration information.
  • the identifier may be an identifier representing the target person.
  • the identifiers are an identifier representing the target person and the number of times the storage information generation phase is executed. It may be a combination of identifiers related to.
  • the concealment key acquisition unit 223 acquires the encryption key (concealment key) and the decryption key (concealment release key) of the public key cryptosystem having additive homomorphism (step D3).
  • the means for generating and acquiring the encryption key and the decryption key are not limited.
  • the above two keys may be generated by using the key generation function provided inside the registration information concealment device 220, or the two keys generated outside the registration information concealment device 220 may be acquired. Good.
  • the concealment release key transmission unit 224 transmits the decryption key acquired by the concealment key acquisition unit 223 to the storage information generation device 240 (step D4).
  • the secret release key receiving unit 245 of the storage information generation device 240 receives the decryption key (secret release key) from the registered information concealment device 220 (step D5).
  • the secret registration information generation unit 225 uses the value obtained by encrypting the registration information acquired by the registration information acquisition unit 221 with the encryption key (confidential key) acquired by the secret key acquisition unit 223 as the secret registration information. (Step D6).
  • the secret registration information transmission unit 226 transmits a set of the identifier acquired by the identifier acquisition unit 222 and the secret registration information generated by the secret registration information generation unit 225 to the registration assisting device 230 (step D7).
  • the secret registration information receiving unit 231 of the registration auxiliary device 230 receives a set of the identifier and the secret registration information from the registration information concealment device 220 (step D8).
  • the common key acquisition unit 232 acquires the common key output by the common key generator 110 in step A3 (step D9).
  • the means for obtaining the common key does not matter.
  • the common key may be stored in advance in the storage means provided inside the registration assisting device 230, or the common key may be acquired each time from the storage means outside the registration assisting device 230.
  • the individual key generation unit 233 generates an individual key from the identifier acquired by the secret registration information receiving unit 231 in step D8 and the common key acquired by the common key acquisition unit 232 in step D9 (step D10). ..
  • the secret storage information generation unit 234 has the secret registration information acquired by the secret registration information receiving unit 231 in step D8, the common key acquired by the common key acquisition unit 232 in step D9, and the individual key generation unit in step D10. Confidential storage information is generated from the individual key generated by 233 (step D11).
  • the secret storage information transmission 235 transmits a set of the identifier received by the secret registration information receiving unit 231 and the secret storage information generated by the secret storage information generation unit 234 in step D11 to the storage information generation device 240 ( Step D12).
  • the secret storage information receiving unit 246 receives the set of the identifier and the secret storage information from the registration assisting device 230 (step D13).
  • the storage information generation unit 247 secretizes the secret storage information received by the secret storage information receiving unit 246 in step D13, and sets the decryption key (secret release key) received by the secret release key receiving unit 245 in step D5.
  • the stored information is generated by releasing the information using the device (step D14).
  • the storage information output unit 248 outputs a set of the identifier received by the secret storage information reception unit 246 in step D13 and the storage information generated by the storage information generation unit 247 in step D14 (step D15).
  • each step is not limited to the above-mentioned order. For example, before the acquisition of the registration information in step D1, steps that do not depend on the registration information (transmission of an identifier among steps D2, D3, D4, D5, D7, reception of an identifier among D8, D9, D10) are executed. You may.
  • a hash function is used.
  • the hash function there is no limitation on the hash function to be used, but it is assumed that the registration assisting device 230 and the decoding device 170 have knowledge of the hash function to be used in advance.
  • the hash function used is referred to as Hash.
  • the identifier acquisition unit 222 acquires the identifier ID (step D2).
  • the concealment key acquisition unit 223 executes the key generation algorithm of the ECElgamal encryption and acquires the encryption key ek'and the decryption key dk' (step D3).
  • the concealment release key transmission unit 224 transmits the decryption key dk'acquired by the concealment key acquisition unit 223 to the storage information generation device 240 (step D4).
  • the concealment release key receiving unit 245 of the storage information generation device 240 receives the decryption key dk'from the registration information concealment device 220 (step D5).
  • the secret registration information transmission unit 226 transmits a set of the identifier ID acquired by the identifier acquisition unit 222 and the secret registration information (ek', X) generated by the secret registration information generation unit 225 to the registration assisting device 230. (Step D7).
  • the secret registration information receiving unit 231 of the registration auxiliary device 230 receives a set (ID, (ek', X)) of the identifier and the secret registration information from the registration information concealment device 220 (step D8).
  • the common key acquisition unit 232 acquires the common keys (a, K) output by the common key generator 110 in step A3 (step D9).
  • the storage information output unit 248 outputs a set (ID, z ID ) of the identifier ID received by the secret storage information reception unit 246 in step D13 and the storage information zID generated by the storage information generation unit 247 in step D14. (Step D15).
  • the above-described embodiment also has the effect of safely generating stored information.
  • the reason is that the registration information is concealed when it is transmitted to the outside of the registration information concealment device 220, and the common key is handled by the registration auxiliary device 230, which is different from the registration information concealment device 220 that handles the registration information, and the stored information is stored. This is to generate.
  • the technique of the present invention conceals the information generated from the registered information and stored in the client terminal and the information newly acquired by the server terminal which does not have the information for each client terminal, and further conceals the information. , It is possible to collate while preventing the client terminal from using information other than the stored information.
  • the technology of the present invention can be used as a payment method by biometric authentication, which does not require presentation or reading of a terminal such as a card or smartphone.
  • a mobile terminal such as a customer's smartphone is used as a client terminal, and a payment terminal installed in each store is used as a server terminal. Since it is not necessary to store the information for each customer in the payment terminal, it is possible to identify the customer who makes the payment even if the customer who visits the store cannot be specified in advance.
  • the technique of the present invention can be used, for example, as an entrance gate for determining whether or not a person is authorized by biometric authentication.
  • the mobile terminal owned by the person who wishes to enter is used as a client terminal, and the gate terminal is used as a server terminal. Since it is not necessary to store the information for each customer in the gate terminal, it is possible to identify the person who wants to enter even if it is not possible to specify in advance which gate the person who wants to enter will pass through.
  • the usable examples of the technology of the present invention are not limited to the above examples.
  • FIG. 10 is a diagram showing an example of the hardware configuration of the confidential similarity calculation device 160.
  • the confidential similarity calculation device 160 can be configured by an information processing device (so-called computer), and includes the configuration illustrated in FIG.
  • the confidential similarity calculation device 160 includes a processor 31, a memory 32, an input / output interface 33, a communication interface 34, and the like.
  • the components such as the processor 31 are connected by an internal bus or the like so that they can communicate with each other.
  • the configuration shown in FIG. 10 is not intended to limit the hardware configuration of the confidential similarity calculation device 160.
  • the confidential similarity calculation device 160 may include hardware (not shown), or may not include an input / output interface 33 if necessary.
  • the number of processors 31 and the like included in the confidential similarity calculation device 160 is not limited to the example of FIG. 10, and for example, a plurality of processors 31 may be included in the confidential similarity calculation device 160.
  • the processor 31 is, for example, a programmable device such as a CPU (Central Processing Unit), an MPU (Micro Processing Unit), or a DSP (Digital Signal Processor). Alternatively, the processor 31 may be a device such as an FPGA (Field Programmable Gate Array) or an ASIC (Application Specific Integrated Circuit). The processor 31 executes various programs including an operating system (OS).
  • OS operating system
  • the memory 32 is a RAM (RandomAccessMemory), a ROM (ReadOnlyMemory), an HDD (HardDiskDrive), an SSD (SolidStateDrive), or the like.
  • the memory 32 stores an OS program, an application program, and various data.
  • the input / output interface 33 is an interface of a display device or an input device (not shown).
  • the display device is, for example, a liquid crystal display or the like.
  • the input device is, for example, a device that accepts user operations such as a keyboard and a mouse.
  • the communication interface 34 is a circuit, a module, or the like that communicates with another device.
  • the communication interface 34 includes a NIC (Network Interface Card) and the like.
  • the function of the confidential similarity calculation device 160 is realized by various processing modules.
  • the processing module is realized, for example, by the processor 31 executing a program stored in the memory 32.
  • the program can also be recorded on a computer-readable storage medium.
  • the storage medium may be a non-transient such as a semiconductor memory, a hard disk, a magnetic recording medium, or an optical recording medium. That is, the present invention can also be embodied as a computer program product.
  • the program can be downloaded via a network or updated using a storage medium in which the program is stored.
  • the processing module may be realized by a semiconductor chip.
  • the common key generation device 110, the storage information generation device 140, and the like can also be configured by an information processing device like the secret similarity calculation device 160, and its basic hardware configuration is different from that of the secret similarity calculation device 160. Since there are no points, the description is omitted.
  • the configuration, operation, and the like of the information collation system described in the above embodiment are examples, and are not intended to limit the system configuration and the like.
  • a database server or the like for storing information (for example, confidential collation information) transmitted / received between the devices may be provided, and information may be exchanged via the database server.
  • the common key generator (11, 110) generates a common key and generates a common key.
  • the storage information generator (12, 140, 240) acquires the registration information and an identifier capable of distinguishing the registration information, generates a first individual key from the common key and the identifier, and generates the common key. And the first individual key is used to generate the stored information obtained by linearly converting the registered information.
  • the collation information concealment device (13, 150) acquires the collation information and uses the encryption key to generate the concealment collation information in which the collation information is concealed.
  • the secret similarity calculation device (14, 160) calculates the secret similarity from the stored information and the secret collation information, and calculates the secret similarity.
  • the decryption device (15, 170) generates a second individual key from the common key and the identifier, and also has the secret similarity, the decryption key corresponding to the encryption key, and the common key. An information collation system that calculates the similarity between the registration information and the collation information from the second individual key.
  • the registration information concealment device acquires the registration information and generates concealment registration information in which the registration information is concealed.
  • the registration assisting device generates a third individual key from the common key and an identifier capable of identifying the registration information, and linearly converts the registration information using the common key and the third individual key.
  • Generates secret memory information which is a value that hides the stored information,
  • the information collation system according to Appendix 1, wherein the storage information generation device (12, 140, 240) generates the storage information by releasing the concealment of the secret storage information.
  • the first individual key, the second individual key, and the third individual key are hash values calculated by inputting a value including the common key and an identifier that can identify the registration information.
  • the information collation system according to Appendix 1 or 2 wherein the stored information and the similarity are calculated using the hash value.
  • the collation information concealment device (13, 150) calculates the concealment collation information by encrypting the collation information by a encryption method having homomorphism.
  • the registration information concealment device calculates the concealment registration information by encrypting the registration information by a encryption method having homomorphism.
  • the information collation system according to Appendix 2, wherein the storage information generation device (12, 140, 240) calculates the storage information by decrypting the secret storage information by the encryption method having the homomorphism.
  • a common key generator (11, 110), a storage information generator (12, 140, 240), a collation information concealment device (13, 150), a concealment similarity calculation device (14, 160), and a decryption device.
  • an information collation system including (15, 170), A step in which the common key generator (11, 110) generates a common key, The storage information generator (12, 140, 240) acquires the registration information and an identifier capable of distinguishing the registration information, generates a first individual key from the common key and the identifier, and also generates the common key. A step of generating stored information obtained by linearly converting the registered information using the key and the first individual key, and The step that the collation information concealment device (13, 150) acquires the collation information and generates the concealment collation information that conceals the collation information by using the encryption key. A step in which the secret similarity calculation device (14, 160) calculates the secret similarity from the stored information and the secret collation information.
  • the decryption device (15, 170) generates a second individual key from the common key and the identifier, and also has the secret similarity, the decryption key corresponding to the encryption key, and the common key.
  • An information collation method including the second individual key and a step of calculating the similarity between the registration information and the collation information. Note that the form of Appendix 6 can be expanded to the forms of Appendix 2 to the form of Appendix 5 in the same manner as the form of Appendix 1.

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • General Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • Computer Hardware Design (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Biodiversity & Conservation Biology (AREA)
  • Biomedical Technology (AREA)
  • Medical Informatics (AREA)
  • Databases & Information Systems (AREA)
  • Storage Device Security (AREA)

Abstract

2つの情報を互いに開示せずに照合でき、且つ、登録された情報以外の情報を用いた照合を不可とする、情報照合システムを提供する。共通鍵生成装置は共通鍵を生成する。記憶情報生成装置は登録情報と登録情報を識別可能である識別子を取得し、共通鍵と識別子とから第1の個別鍵を生成すると共に、共通鍵と第1の個別鍵を用いて登録情報を線形変換した記憶情報を生成する。照合情報秘匿化装置は、照合情報を取得し、暗号化鍵を用いて照合情報を秘匿した秘匿照合情報を生成する。秘匿類似度計算装置は記憶情報と秘匿照合情報から秘匿類似度を計算する。復号装置は、共通鍵と識別子とから第2の個別鍵を生成すると共に、秘匿類似度と、暗号化鍵に対応する復号鍵と、共通鍵と、第2の個別鍵と、から登録情報と照合情報の類似度を計算する。

Description

情報照合システム及び情報照合方法
 本発明は、情報照合システム及び情報照合方法に関する。
 個人認証は、被登録者と被認証者の同一性を確認する手段である。事前に保存される被登録者に関する情報と、認証の都度取得される被認証者に関する情報を突き合わせることによって個人認証が実施される。
 個人認証の一手法である生体認証は、生体認証では顔や指紋や虹彩などの身体的特徴などを利用して認証を行う。より具体的には、生体から特徴量と呼ばれるデータを抽出して認証に用いる。生体から抽出される特徴量は抽出の都度少しずつ異なる。そのため、認証時には、被登録者から抽出された特徴量と、被認証者から抽出された特徴量とを比較し、それらが十分に類似していると認められれば認証成功となる。類似度の判定方法は特徴量抽出の手法に依存するが、通常、特徴量はベクトルの形で表され、類似度は2つの特徴量の内積、ユークリッド距離、ハミング距離等によって算出され、類似度があらかじめ定められた範囲に含まれる場合に十分に類似していると判定する。
 パスワード等の記憶による認証やICカード等の所持による認証と比べ、認証情報を入力するために記憶や所持などのユーザの能動的な準備が不要である利便性の高さや、認証情報を他人に使用されにくい安全性の高さなどが生体認証のメリットである。特徴量抽出法などの技術の進展に伴い、近年、個人認証の手段として、生体認証の利用が進んでいる。
 一方で、生体認証には、生涯不変である生体情報はもし漏洩したとしても変更できないというデメリットもある。また、生体特徴量は、欧州の一般データ保護規則や日本の個人情報保護法において、個人情報に該当すると定められている。個人情報に該当するデータは、保管や外部提供等の取扱いに制限がある。また、法令等による制限だけでなく、社会的に受容されるための配慮も求められることが多い。
 そこで、生体情報を秘匿して保存し、秘匿したまま認証結果を判定できる生体認証手法が盛んに研究されている。さらに、生体認証のメリットを活かすため、ユーザによる生体情報以外の記憶や所持が不要である方法が望ましい。秘匿したままの判定を実現する手段として、加法準同型性を有する公開鍵暗号方式を利用する手法が知られている。
 公開鍵暗号方式は鍵生成アルゴリズム(KeyGen)、暗号化アルゴリズム(Enc)、復号アルゴリズム(Dec)の3つのアルゴリズムで構成される。
 鍵生成アルゴリズムは、セキュリティパラメータと呼ばれる鍵の強度を表すパラメータを用いて、暗号化鍵ekおよび復号鍵dkを生成する。この動作は、セキュリティパラメータをκとすると、次式のように表すことができる。
KeyGen(κ)→(ek、dk)
 暗号化アルゴリズムは、暗号化鍵ekにより平文のメッセージmを暗号化した結果である暗号文cを生成する。これは次式のように表すことができる。
Enc(ek、m)→c
 復号アルゴリズムは、復号鍵dkにより暗号文cを復号した結果であるm’を生成する。これは次式のように表すことができる。
Dec(dk、c)→m’
 公開鍵暗号方式は正しく暗号文を復号できる必要がある。すなわち、鍵生成アルゴリズムで生成された任意の暗号化鍵ekおよび復号鍵dkのペアに対し、任意のメッセージmを暗号化鍵ekで暗号化した結果である暗号文cを復号鍵dkによって復号した結果m’はmと等しくなる必要がある。すなわち、KeyGen(κ)→(ek、dk)に対し、任意のmについて
Dec(dk、Enc(ek、m))→m
が成り立つ必要がある。
 公開鍵暗号方式では、暗号化鍵を持っていれば誰でも暗号化アルゴリズムを実行可能であるが、復号鍵なしでは復号アルゴリズムは実行できない。
 準同型性を有する公開鍵暗号方式(以下では、準同型公開鍵暗号と呼ぶ)は、公開鍵暗号の各アルゴリズムに加え、準同型演算アルゴリズム(HomAdd)を有する。
 準同型演算アルゴリズムは、暗号化鍵により、入力された複数の暗号文に対応するメッセージの演算結果の暗号文を生成する。入力できるメッセージが2つである場合、次式のように表すことができる。
HomAdd(ek、c、c)→c
 例えば、加法準同型性を有する公開鍵暗号の場合、メッセージmの暗号化鍵ekによる暗号文cと、メッセージmの暗号化鍵ekによる暗号文cと、から生成される暗号文cはm+mの暗号文である。すなわち、KeyGen(κ)→(ek、dk)に対し、任意のmとmについて、
Enc(ek、m)→c、Enc(ek、m)→c
とすると、
Dec(dk、HomAdd(ek、c、c))→m+m
が成り立つ。
 また、加法準同型性を有する公開鍵暗号の場合、一般に、HomAddに入力できるメッセージの数に限りはなく、例えば、各j=1、…、nについて、メッセージmの暗号化鍵ekによる暗号文をcとすると、
Dec(dk、HomAdd(ek、c、…、c))→m+…+m
が成り立つ。
 また、加法準同型性を有する公開鍵暗号の場合、HomAddを同じ暗号文について繰り返し適用することにより、メッセージmの暗号化鍵ekによる暗号文cと、スカラー値sとから、s×mの暗号文を計算できる。
 このアルゴリズムをHomSclと表すと、
KeyGen(κ)→(ek、dk)に対し、任意のmとsについて、
Enc(ek、m)→c
Dec(dk、HomScl(ek、c、s))→s×m
が成り立つ。
 加法準同型性を有する公開鍵暗号として、楕円曲線Elgamal暗号などが知られている。非特許文献1に開示されている楕円曲線Elgamal暗号の各アルゴリズムは次のように動作する。
 楕円Elgamal暗号の各アルゴリズムは次のように動作する。
 鍵生成アルゴリズムは、まず、セキュリティパラメータκを入力として受け取る。次に、鍵生成アルゴリズムは、κビットの素数qをランダムに選び、楕円曲線E上の位数がqである群の生成元Gを選ぶ。次に、鍵生成アルゴリズムは、1以上q未満の整数xを一様ランダムに選択し、H=[x]Gとする。最後に、鍵生成アルゴリズムは、暗号化鍵ek=(κ、q、E、G、H)および復号鍵dk=(ek、x)を出力する。
 暗号化アルゴリズムは、まず、暗号化鍵ek=(κ、q、G、g、H)およびメッセージmを入力として受け取る。次に、暗号化アルゴリズムは、1以上q未満の整数rを一様ランダムに選択し、C:=[r]G、C:=[m]G+[r]Hとする。最後に、暗号化アルゴリズムは、暗号文c=(C、C)を出力する。
 復号アルゴリズムは、まず、復号鍵dk=(ek、x)および暗号文c=(C、C)を入力として受け取る。次に、復号アルゴリズムは、M’=C-[x]Cを計算する。最後に、復号アルゴリズムは、復号結果m’=Dlog(M’)を出力する。ただし、Dlogは、Dlog([x]G)=xとなる関数である。
 メッセージmの暗号文c=(C、C)=([r]G、[m]G+[r]H)に対し、楕円Elgamal暗号の復号アルゴリズムにより、暗号文cをmに正しく復号できることを、次式によって確認できる。
M’=C-[x]・C=([m]G+[r]H)-[x]・([r]G)=[m]G+[r]([x]・G)-[x]・([r]G)=[m]G
 準同型演算アルゴリズムは、まず、暗号化鍵ek=(κ、q、G、g、h)および第一の暗号文c=(C1、a、C1、b)および第二の暗号文c=(C2、a、C2、b)を入力として受け取る。次に、準同型演算アルゴリズムは、C=C1、a+C2、a、C=C1、b+C2、bを計算する。最後に、準同型演算アルゴリズムは、準同型演算結果c=(C,C)を出力する。
 メッセージmの暗号文(C1、a=[r]G、C1、b=[m]G+[r]H)およびメッセージmの暗号文(C2、a=[s]G、C2、b=[m]G+[s]H)に対し、次の2式が成り立つ。
=[r+s]・G
=[m+m]G+[r+s]H
 したがって、cはm+mの暗号文であり、楕円曲線Elgamal暗号は加法準同型性を有する。
 近年、店舗での決済時に現金を利用しないキャッシュレス化が推進されている。出願時では、顧客の持つクレジットカード等のカードやスマートフォン等の端末を店舗側の機器で読み取る手段が普及している。今後、顧客や店舗の負担をより軽減できる手段として、カードやスマートフォンの提示や読み取りを必要としない、生体認証による決済手段がさらに普及することが予想されている。すなわち、店舗の機器に付属するカメラ等のセンサで読み取った顧客の生体情報を利用して個人認証を行うことにより課金対象(の人や口座、アカウント等)を特定し、課金を行う。この手法によれば、顧客が現金やクレジットカード等の決済手段を提示することなく決済を完了できる。
 前述の通り、生体情報は機微な情報であり事業者による管理にはリスクがあり、事業者は管理を望まない。また、同一の決済手段を複数の事業者で利用できる汎用性を実現するためには、決済時の照合に事業者が管理する生体情報を利用する必要があるのは不便である。そこで、登録される生体情報を顧客のスマートフォン等の端末に格納する形態でキャッシュレス決済を実現することへの要望がある。
 さらに、生体情報の漏洩を防ぐため、スマートフォン等の端末と店舗の機器の間で、生体情報を開示せずに認証結果を判定できる手法が望ましい。すなわち、顧客のスマートフォンに記憶される生体特徴量と、事業者の機器が抽出した生体特徴量とを、互いに秘匿したまま照合できる手法が望まれる。そのような手法は、例えば、加法準同型公開鍵暗号方式を利用すると、上記照合手法は次のように実現できる。
 店舗の機器は、センサで抽出した対象の顧客の特徴量を加法準同型公開鍵暗号方式によって暗号化し、顧客のスマートフォンに送付する(ステップ1)。
 顧客のスマートフォンは、記憶している特徴量と、受け取った暗号化特徴量との加法準同型演算により、類似度の暗号文を算出する。算出された暗号化類似度は店舗の機器に送付される(ステップ2)。
 店舗の機器は、暗号化類似度を復号し、類似度を得る。類似度があらかじめ定められた範囲に含まれれば、対象の顧客がスマートフォンの所有者本人であると判断し、そのアカウントに課金して決済を行う(ステップ3)。
Taher ElGamal. "A public key cryptosystem and a signature scheme based on discrete logarithms." IEEE transactions on information theory 31.4 (1985): 469-472.
 上述の加法準同型公開鍵暗号方式を利用した照合手法では、ステップ2において、スマートフォンが用いる特徴量(前記記憶している特徴量)が正しいものであることを保証できないため、なりすましによる不正な決済が可能となってしまう。例えば、攻撃者があるユーザのスマートフォンを盗んで決済を行う際に、ステップ2において記憶されている特徴量の代わりに自身の特徴量を用いれば、ステップ1で抽出された特徴量と十分に類似しているため、ステップ3で攻撃者がスマートフォンの所有者であると判断され、スマートフォンの持ち主のアカウントに課金される。
 そこで、上述の加法準同型公開鍵暗号方式を利用した手法と同様の照合手法であって、さらに、スマートフォンが用いる特徴量の任意の改ざんを防ぐことができる手法が要望される。本発明の目的は、上述した問題点を解決する情報照合システム及び情報照合方法を提供することにある。
 本発明の第1の視点によれば、共通鍵生成装置と、記憶情報生成装置と、照合情報秘匿化装置と、秘匿類似度計算装置と、復号装置と、を含み、前記共通鍵生成装置は共通鍵を生成し、前記記憶情報生成装置は登録情報と前記登録情報を識別可能である識別子を取得し、前記共通鍵と前記識別子とから第1の個別鍵を生成すると共に、前記共通鍵と前記第1の個別鍵を用いて前記登録情報を線形変換した記憶情報を生成し、前記照合情報秘匿化装置は、照合情報を取得し、暗号化鍵を用いて前記照合情報を秘匿した秘匿照合情報を生成し、前記秘匿類似度計算装置は前記記憶情報と前記秘匿照合情報から秘匿類似度を計算し、前記復号装置は、前記共通鍵と前記識別子とから第2の個別鍵を生成すると共に、前記秘匿類似度と、前記暗号化鍵に対応する復号鍵と、前記共通鍵と、前記第2の個別鍵と、から前記登録情報と前記照合情報の類似度を計算する、情報照合システムが提供される。
 本発明の第2の視点によれば、共通鍵生成装置と、記憶情報生成装置と、照合情報秘匿化装置と、秘匿類似度計算装置と、復号装置と、を含む情報照合システムにおいて、前記共通鍵生成装置が共通鍵を生成するステップと、前記記憶情報生成装置が、登録情報と前記登録情報を識別可能である識別子を取得し、前記共通鍵と前記識別子とから第1の個別鍵を生成すると共に、前記共通鍵と前記第1の個別鍵を用いて前記登録情報を線形変換した記憶情報を生成するステップと、前記照合情報秘匿化装置が、照合情報を取得し、暗号化鍵を用いて前記照合情報を秘匿した秘匿照合情報を生成するステップと、前記秘匿類似度計算装置が、前記記憶情報と前記秘匿照合情報から秘匿類似度を計算するステップと、前記復号装置が、前記共通鍵と前記識別子とから第2の個別鍵を生成すると共に、前記秘匿類似度と、前記暗号化鍵に対応する復号鍵と、前記共通鍵と、前記第2の個別鍵と、から前記登録情報と前記照合情報の類似度を計算するステップと、を含む情報照合方法が提供される。
 本発明の各視点によれば、2つの情報を互いに開示せずに照合でき、且つ、登録された情報以外の情報を用いた照合を不可とする、情報照合システム及び情報照合方法が提供される。なお、本発明により、当該効果の代わりに、又は当該効果と共に、他の効果が奏されてもよい。
一実施形態の概要を説明するための図である。 第1の実施形態に係る情報照合システム(準同型暗号システム)の構成を示すブロック図である。 第1の実施形態に係る情報照合システムに含まれる装置の接続例を示す図である。 第1の実施形態に係る情報照合システムの共通鍵生成フェーズにおける動作を示すフロー図である。 第1の実施形態に係る情報照合システムの記憶情報生成フェーズにおける動作を示すフロー図である。 第1の実施形態に係る情報照合システムの照合フェーズにおける動作を示すフロー図である。 第2の実施形態に係る情報照合システムの構成を示すブロック図である。 第2の実施形態に係る情報照合システムに含まれる装置の接続例を示す図である。 第2の実施形態に係る情報照合システムの記憶情報生成フェーズにおける動作を示すフロー図である。 秘匿類似度計算装置のハードウェア構成の一例を示す図である。
 はじめに、一実施形態の概要について説明する。なお、この概要に付記した図面参照符号は、理解を助けるための一例として各要素に便宜上付記したものであり、この概要の記載はなんらの限定を意図するものではない。なお、本明細書及び図面において、同様に説明されることが可能な要素については、同一の符号を付することにより重複説明が省略され得る。
 一実施形態に係る情報照合システムは、共通鍵生成装置11と、記憶情報生成装置12と、照合情報秘匿化装置13と、秘匿類似度計算装置14と、復号装置15と、を含む(図1参照)。共通鍵生成装置11は共通鍵を生成する。記憶情報生成装置12は登録情報と登録情報を識別可能である識別子を取得し、共通鍵と識別子とから第1の個別鍵を生成すると共に、共通鍵と第1の個別鍵を用いて登録情報を線形変換した記憶情報を生成する。照合情報秘匿化装置13は、照合情報を取得し、暗号化鍵を用いて照合情報を秘匿した秘匿照合情報を生成する。秘匿類似度計算装置14は記憶情報と秘匿照合情報から秘匿類似度を計算する。復号装置15は、共通鍵と識別子とから第2の個別鍵を生成すると共に、秘匿類似度と、暗号化鍵に対応する復号鍵と、共通鍵と、第2の個別鍵と、から登録情報と照合情報の類似度を計算する。
 上記情報照合システムでは、秘匿化された照合情報が秘匿類似度計算装置14に送信されている。従って、秘匿類似度計算装置14は、照合情報の内容を知ることができない。また、秘匿類似度計算装置14は、登録情報と照合情報の類似度が秘匿された秘匿類似度を計算する。秘匿類似度計算装置14は、当該計算された秘匿類似度を復号装置15に送信する。従って、復号装置15は、記憶情報(登録情報が線形変換された記憶情報)を知ることはできない。そのため、秘匿類似度計算装置14と復号装置15には、登録情報と照合情報が互いに開示されないが情報の照合は可能となる。さらに、上記情報照合システムでは、記憶情報生成装置12は登録情報と共通鍵を用いて記憶情報を生成するため、当該共通鍵を用いることができなければ、別の登録情報に対する記憶情報は生成されない。従って、記憶情報が生成された際の登録情報以外の登録情報を用いた照合は行えない。このように、上記情報照合システムでは、2つの情報を互いに開示せずに照合でき、且つ、登録された情報以外の情報を用いた照合は不可となる。
 以下に具体的な実施形態について、図面を参照してさらに詳しく説明する。
[第1の実施形態]
 第1の実施形態について、図面を用いてより詳細に説明する。
 図2は、第1の実施形態に係る情報照合システム100の構成を示すブロック図である。情報照合システム100は、共通鍵生成装置110と、記憶情報生成装置140と、照合情報秘匿化装置150と、秘匿類似度計算装置160と、復号装置170とを有する。ただし、情報照合システム100が備える上記各装置は、別個の装置として構成することも、適宜用途に応じて同一の装置内に実装されることもある。例えば、情報照合システム100は、秘匿類似度計算装置160をクライアントに、共通鍵生成装置110と、記憶情報生成装置140と、照合情報秘匿化装置150と、復号装置170とをサーバに分けて実装することによって、クライアントサーバシステムとして実現することも可能である。
 図2に示す各装置(共通鍵生成装置110、記憶情報生成装置140、照合情報秘匿化装置150、秘匿類似度計算装置160、復号装置170)は有線又は無線により接続され、相互に通信可能に構成されている。例えば、情報照合システム100に含まれる各装置は、図3に示すように接続される。
 共通鍵生成装置110は、
乱数を取得する乱数取得部111と、
乱数取得部111が取得した乱数を用いて共通鍵を生成する共通鍵生成部112と、
共通鍵生成部112が生成した共通鍵を出力する共通鍵出力部113と、を有する。
 記憶情報生成装置140は、
登録情報を取得する登録情報取得部141と、
識別子を取得する識別子取得部142と、
共通鍵生成装置110が出力した共通鍵を取得する共通鍵取得部143と、
識別子取得部142が取得した識別子と、共通鍵取得部143が取得した共通鍵とから、個別鍵を生成する個別鍵生成部144と、
登録情報取得部141が取得した登録情報と、個別鍵生成部144が生成した個別鍵とから、記憶情報を生成する記憶情報生成部147と、
記憶情報生成部147が生成した記憶情報を出力する記憶情報出力部148と、を有する。
 照合情報秘匿化装置150は、
照合情報を取得する照合情報取得部151と、
照合乱数を取得する照合乱数取得部152と、
照合乱数取得部152が取得した照合乱数を送信する照合乱数送信部153と、
照合情報取得部151が取得した照合情報と、照合乱数取得部152が取得した照合乱数とから、秘匿照合情報を生成する秘匿照合情報生成部154と、
秘匿照合情報生成部154が生成した秘匿照合情報を送信する秘匿照合情報送信部155と、を有する。
 秘匿類似度計算装置160は、
秘匿照合情報を受信する秘匿照合情報受信部161と、
識別子と記憶情報とを取得する記憶情報取得部162と、
秘匿照合情報受信部161が受信した秘匿照合情報と、記憶情報取得部162が取得した記憶情報とから、秘匿類似度を計算する秘匿類似度計算部163と、
記憶情報取得部162が取得した識別子と、秘匿類似度計算部163が計算した秘匿類似度とを送信する秘匿類似度送信部164と、を有する。
 復号装置170は、
照合乱数を受信する照合乱数受信部171と、
識別子と秘匿類似度とを受信する秘匿類似度受信部172と、
照合情報を取得する照合情報取得部173と、
共通鍵を取得する共通鍵取得部174と、
秘匿類似度受信部172が受信した識別子と、共通鍵取得部174が取得した共通鍵とから、個別鍵を生成する個別鍵生成部175と、
照合乱数受信部171が受信した照合乱数と、秘匿類似度受信部172が受信した秘匿類似度と、照合情報取得部173が取得した照合情報と、個別鍵生成部175が生成した個別鍵とから、類似度を計算する類似度計算部176と、
類似度計算部176が計算した類似度に基づいて照合結果を決定する照合結果判定部177と、
照合結果判定部177が決定した照合結果を出力する照合結果出力部178と、を有する。
[動作の説明]
 次に、図面を参照して、本実施形態の全体の動作について説明する。本実施形態の動作は、共通鍵生成フェーズ、記憶情報生成フェーズ、照合フェーズの3つのフェーズに分けられる。以下、各フェーズにおける動作を詳細に説明する。
 本実施形態の共通鍵生成フェーズでは、情報照合システム100の共通鍵生成装置110が動作する。図4を参照して、本実施形態の共通鍵生成フェーズにおける動作を詳細に説明する。
 まず、共通鍵生成装置110の乱数取得部111は、乱数を取得する(ステップA1)。なお、乱数の取得手段は問わない。例えば、共通鍵生成装置110の内部に有する乱数生成機能を用いて生成してもよいし、共通鍵生成装置110の外部で生成された乱数を外部装置から取得してもよい。
 次に、共通鍵生成部112は、乱数取得部111が取得した乱数を用いて共通鍵を生成する(ステップA2)。
 最後に、共通鍵出力部113は、共通鍵生成部112が生成した共通鍵を出力する(ステップA3)。出力された共通鍵は、記憶情報生成フェーズにおいて記憶情報生成装置140が、また、照合フェーズにおいて復号装置170が使用するため、適切な手段で記憶される。
 本実施形態の記憶情報生成フェーズでは、情報照合システム100の記憶情報生成装置140が動作する。図5を参照して、本実施形態の記憶情報生成フェーズにおける動作を詳細に説明する。
 まず、記憶情報生成装置140の登録情報取得部141は、登録情報を取得する(ステップB1)。なお、登録情報の取得手段は問わない。例えば、登録情報取得部141は、記憶情報生成装置140に付属するセンサ等の入力手段を用いて外部から登録情報を取得してもよい。
 次に、識別子取得部142は、識別子を取得する(ステップB2)。この識別子は、登録情報に紐づけられるものである。例えば、登録情報が人の生体情報である場合、識別子は対象の人物を表す識別子であってもよい。また、例えば、登録情報が人の生体情報である場合であって、さらに同一人物について複数回記憶情報生成フェーズが実行される場合、識別子は対象人物を表す識別子と、記憶情報生成フェーズの実行回数に関する識別子を合わせたものであってもよい。
 次に、共通鍵取得部143は、ステップA3において共通鍵生成装置110が出力した共通鍵を取得する(ステップB3)。なお、共通鍵の取得手段は問わない。例えば、記憶情報生成装置140の内部に備える記憶手段に共通鍵があらかじめ記憶してもよいし、記憶情報生成装置140の外部の記憶手段から都度、共通鍵が取得されてもよい。
 次に、個別鍵生成部144は、ステップB2において識別子取得部142が取得した識別子と、ステップB3において共通鍵取得部143が取得した共通鍵とから、個別鍵を生成する(ステップB4)。
 次に、記憶情報生成部147は、ステップB1において登録情報取得部141が取得した登録情報と、ステップB4において個別鍵生成部144が生成した個別鍵とから、記憶情報を生成する(ステップB5)。
 最後に、記憶情報出力部148は、ステップB2において識別子取得部142が取得した識別子と、ステップB5において記憶情報生成部147が生成した記憶情報との組を出力する(ステップB6)。出力された識別子と記憶情報は、照合フェーズにおいて秘匿類似度計算装置160が使用するため、適切な手段で記憶される。
 本実施形態の照合フェーズでは、情報照合システム100の照合情報秘匿化装置150と、秘匿類似度計算装置160と、復号装置170とが動作する。図6を参照して、本実施形態の照合フェーズにおける動作を詳細に説明する。
 まず、照合情報秘匿化装置150の照合情報取得部151は、照合情報を取得する(ステップC1)。なお、登録情報の取得手段は問わない。例えば、照合情報秘匿化装置150に付属するセンサ等の入力手段を用いて外部から登録情報を取得してもよい。
 次に、照合乱数取得部152は、乱数を取得する(ステップC2)。以下ではこの乱数を照合乱数と呼ぶ。
 なお、乱数の取得手段は問わない。例えば、照合情報秘匿化装置150の内部に有する乱数生成機能を用いて乱数が生成されてもよいし、照合情報秘匿化装置150の外部で生成された乱数が取得されてもよい。また、照合乱数の一部または全部は照合フェーズ実行の都度変更されるのではなく、照合情報秘匿化装置150の内部または外部に記憶され再利用されてもよい。
 次に、照合乱数送信部153は、ステップC2において取得した照合乱数を復号装置170に送信する(ステップC3)。
 次に、復号装置170の照合乱数受信部171は、ステップC3において照合情報秘匿化装置150から送信された照合乱数を受信する(ステップC4)。
 次に、照合情報秘匿化装置150の秘匿照合情報生成部154は、ステップC1において照合情報取得部151が取得した照合情報を、ステップC2において照合乱数取得部152が取得した照合乱数を用いて秘匿し、秘匿照合情報を生成する(ステップC5)。
 次に、秘匿照合情報送信部155は、ステップC5において秘匿照合情報生成部154が生成した秘匿照合情報を秘匿類似度計算装置160に送信する(ステップC6)。
 なお、1つの照合情報秘匿化装置150に対し、秘匿類似度計算装置160が複数あってもよく、その場合、ステップC6において、秘匿照合情報は複数の秘匿類似度計算装置160に送信される。
 次に、秘匿類似度計算装置160の秘匿照合情報受信部161は、ステップC6において照合情報秘匿化装置150が送信した秘匿照合情報を受信する(ステップC7)。
 次に、記憶情報取得部162は、ステップB6において記憶情報生成装置140が出力した識別子と記憶情報との組を取得する(ステップC8)。
 なお、識別子と記憶情報の取得手段は問わない。例えば、秘匿類似度計算装置160の内部に備える記憶手段にあらかじめ識別子と記憶情報が記憶されていてもよいし、秘匿類似度計算装置160の外部の記憶手段からこれらの情報が都度取得されてもよい。
 次に、秘匿類似度計算部163は、ステップC7において秘匿照合情報受信部161が受信した秘匿照合情報と、ステップC8において記憶情報取得部162が取得した記憶情報とから、秘匿類似度を計算する(ステップC9)。
 次に、秘匿類似度送信部164は、ステップC8において記憶情報取得部162が取得した識別子と、ステップC9において秘匿類似度計算部163が計算した秘匿類似度とを、復号装置170に送信する(ステップC10)。
 次に、復号装置170の秘匿類似度受信部172は、ステップC10において秘匿類似度計算装置160が送信した識別子と秘匿類似度とを受信する(ステップC11)。なお、1つの復号装置170に対し、秘匿類似度計算装置160が複数あってもよく、その場合、ステップC11において、複数組の識別子と秘匿類似度を受信する。
 次に、照合情報取得部173は、ステップC1において照合情報秘匿化装置150が取得した照合情報を取得する(ステップC12)。なお、照合情報の取得手段は問わない。例えば、照合情報は照合情報秘匿化装置150から取得されてもよいし、照合情報秘匿化装置150と同じ手段によってステップC1と同時に照合情報が取得されてもよい。
 次に、共通鍵取得部174は、ステップA3において共通鍵生成装置110が出力した共通鍵を取得する(ステップC13)。なお、共通鍵の取得手段は問わない。例えば、復号装置170の内部に備える記憶手段にあらかじめ共通鍵が記憶されていてもよいし、復号装置170の外部の記憶手段から共通鍵が都度取得されてもよい。
 次に、個別鍵生成部175は、ステップC11において秘匿類似度受信部172が受信した識別子と、ステップC13において共通鍵取得部174が取得した共通鍵とから、個別鍵を生成する(ステップC14)。なお、1つの復号装置170に対して複数の秘匿類似度計算装置160が存在する場合、ステップC11において受信された、各識別子のそれぞれについて個別鍵が生成される。
 次に、類似度計算部176は、ステップC4において照合乱数受信部171が受信した照合乱数と、ステップC11において秘匿類似度受信部172が受信した秘匿類似度と、ステップC12において照合情報取得部173が取得した照合情報と、ステップC13において共通鍵取得部174が取得した共通鍵と、ステップC14において個別鍵生成部175が生成した個別鍵とから、類似度を計算する(ステップC15)。
 なお、1つの復号装置170に対して複数の秘匿類似度計算装置160が存在する場合、ステップC11において受信された識別子と秘匿類似度の各組のそれぞれについて類似度が計算される。
 次に、照合結果判定部177は、ステップC15において類似度計算部176が計算した類似度に基づいて照合結果を決定する(ステップC16)。なお、1つの復号装置170に対して複数の秘匿類似度計算装置160が存在する場合、ステップC15において計算された複数の類似度から照合結果が決定される。例えば、最も類似度が高い識別子を照合結果としたり、類似度が高い順に識別子と類似度の組を並べたものを照合結果としたりしてもよい。
 最後に、照合結果出力部178は、ステップC16において照合結果判定部177が決定した照合結果を出力する(ステップC17)。
 なお、各ステップの実行順序は上述の順序に限らない。例えば、ステップC1の照合情報の取得の前に、照合情報に寄らないステップ(ステップC2、C3、C4,C8、C10のうち識別子の送信、C11のうち識別子の受信、C13、C14)が実行されてもよい。
[第1の実施形態に係る具体例]
 次に、本実施形態における情報照合システム100の動作の具体例について説明する。
 本具体例では、ECElgamal暗号を用いる場合について説明する。楕円曲線E上の、位数がκビットの素数qである群およびその生成元Gが公開されていることを想定する。
 また、本具体例では、ハッシュ関数を用いる。用いるハッシュ関数に制限はないが、記憶情報生成装置140および復号装置170が、あらかじめ、用いるハッシュ関数の知識を有することを想定する。以下では用いるハッシュ関数をHashと表す。
 また、本具体例では、照合情報および登録情報として、ベクトル(次元数をDとする)を用いる場合について説明する。さらに、照合情報と登録情報の類似度を2つのベクトルの内積によって算出する場合について説明する。照合情報および登録情報が十分に類似していると判定されるのは、照合情報と登録情報の内積によって算出される類似度がT個の値θ1、…、θτのいずれかに一致する場合とする。
 本具体例の共通鍵生成フェーズにおける動作を説明する。
 まず、共通鍵生成装置110の乱数取得部111は、2つの1以上q未満の乱数aおよびKを取得する(ステップA1)。
 次に、共通鍵生成部112は、乱数取得部111が取得した乱数の組(a、K)を共通鍵とする(ステップA2)。
 最後に、共通鍵出力部113は、共通鍵生成部112が生成した共通鍵(a、K)を出力する(ステップA3)。
 本具体例の記憶情報生成フェーズにおける動作を説明する。
 まず、記憶情報生成装置140の登録情報取得部141は、登録情報としてD次元のベクトル
x=(x、…、x
を取得する(ステップB1)。
 次に、識別子取得部142は、識別子IDを取得する(ステップB2)。
 次に、共通鍵取得部143は、ステップA3において共通鍵生成装置110が出力した共通鍵(a、K)を取得する(ステップB3)。
 次に、個別鍵生成部144は、
ステップB2において識別子取得部142が取得した識別子IDと、
ステップB3において共通鍵取得部143が取得した共通鍵(a、K)とから、
各j=1、…、Dについてハッシュ値
ID、j=Hash(K、ID、j)
を計算し、
(hID、1、…、hID、D)を個別鍵とする(ステップB4)。
 次に、記憶情報生成部147は、
ステップB1において登録情報取得部141が取得した登録情報x=(x、…、x)と、
ステップB3において共通鍵取得部143が取得した共通鍵(a、K)と、
ステップB4において個別鍵生成部144が生成した個別鍵(hID、1、…、hID、D)とから、
各j=1、…、Dについて
ID、j=a(x-hID、j
を計算し、
ID=(zID、1、…、zID、D)を記憶情報とする(ステップB5)。
 なお、上記記憶情報を生成する際に計算される、
ID、j=a(x-hID、j)s
が登録情報の線形変換に該当する。
 最後に、記憶情報出力部148は、ステップB2において識別子取得部142が取得した識別子IDと、ステップB5において記憶情報生成部147が生成した記憶情報zIDの組を出力する(ステップB6)。
 本具体例の照合フェーズにおける動作を説明する。
 まず、照合情報秘匿化装置150の照合情報取得部151は、照合情報としてD次元のベクトル
y=(y、…、y
を取得する(ステップC1)。
 次に、照合乱数取得部152は、1以上q未満の乱数r、及びECElgamal暗号の鍵生成アルゴリズムを実行し、暗号化鍵ekおよび復号鍵dkを取得する(ステップC2)。
 次に、照合乱数送信部153は、ステップC2において取得した(r、ek、dk)を照合乱数として復号装置170に送信する(ステップC3)。
 次に、復号装置170の照合乱数受信部171は、ステップC3において照合情報秘匿化装置150から送信された照合乱数(r、ek、dk)を受信する(ステップC4)。
 次に、照合情報秘匿化装置150の秘匿照合情報生成部154は、まず、ECElgamal暗号のステップC1において照合情報取得部151が取得した照合情報y=(y、…、y)と、
ステップC2において照合乱数取得部152が取得した値(r、ek、dk)とから、
各j=1、…、Dについて
=Enc(ek、r×y
を計算し、
ekとY=(Y、…、Y)の組を秘匿照合情報とする(ステップC5)。
 次に、秘匿照合情報送信部155は、ステップC5において秘匿照合情報生成部154が生成した秘匿照合情報(ek、Y)を秘匿類似度計算装置160に送信する(ステップC6)。
 次に、秘匿類似度計算装置160の秘匿照合情報受信部161は、ステップC6において照合情報秘匿化装置150が送信した秘匿照合情報(ek、Y)を受信する(ステップC7)。
 次に、記憶情報取得部162は、ステップB6において記憶情報生成装置140が出力した識別子と記憶情報との組(ID、zID)を取得する(ステップC8)。
 次に、秘匿類似度計算部163は、ステップC7において秘匿照合情報受信部161が受信した秘匿照合情報(ek、Y=(Y、…、Y))と、
ステップC8において記憶情報取得部162が取得した記憶情報zID=(zID、1、…、zID、D)とから、
ID=HomAdd(ek、HomScl(ek、Y、zID、1)、…、HomScl(ek、Y、zID、D))
を計算し、ZIDを秘匿類似度とする(ステップC9)。
 なお、各j=1、…、Dについて
=Enc(ek、r・y
及び
ID、j=a(x-hID、j
であることから、
ID=Enc(ek、ar(Σx・y-ΣhID、j・y))
が成り立つ。
 次に、秘匿類似度送信部164は、
ステップC8において記憶情報取得部162が取得した識別子IDと、
ステップC9において秘匿類似度計算部163が計算した秘匿類似度ZIDとの組を、復号装置170に送信する(ステップC10)。
 次に、復号装置170の秘匿類似度受信部172は、ステップC10において秘匿類似度計算装置160が送信した識別子と秘匿類似度との組(ID、ZID)を受信する(ステップC11)。
 次に、照合情報取得部173は、ステップC1において照合情報秘匿化装置150が取得した照合情報y=(y、…、y)を取得する(ステップC12)。
 次に、共通鍵取得部174は、ステップA3において共通鍵生成装置110が出力した共通鍵(a、K)を取得する(ステップC13)。
 次に、個別鍵生成部175は、
ステップC11において秘匿類似度受信部172が受信した識別子IDと、
ステップC13において共通鍵取得部174が取得した共通鍵(a、K)とから、
各j=1、…、Dについてハッシュ値
ID、j=Hash(K、ID、j)
を計算し、
ID=(hID、1、…、hID、D)を個別鍵とする(ステップC14)。
 次に、類似度計算部176は、
ステップC4において照合乱数受信部171が受信した照合乱数(r、ek、dk)と、
ステップC11において秘匿類似度受信部172が受信した秘匿類似度ZIDと、
ステップC12において照合情報取得部173が取得した照合情報y=(y、…、y)と、
ステップC13において共通鍵取得部174が取得した共通鍵(a、K)と、
ステップC14において個別鍵生成部175が生成した個別鍵hID=(hID、1、…、hID、D)とから、
Dec(dk、HomAdd(ek、HomScl(ek、ZID、1/ar)、Enc(ek、ΣhID、j・y)))
により類似度sを計算する(ステップC15)。
 なお、
ID=Enc(ek、ar(Σx・y-ΣhID、j・y))
であることから、
HomScl(ek、ZID、1/ar)=Enc(ek、Σx・y-ΣhID、j・y
が成り立つため、
HomAdd(ek、HomScl(ek、ZID、1/ar)、Enc(ek、ΣhID、j・y))=Enc(ek、Σx・y
となり、
s=Σx・y
が計算される。
 次に、照合結果判定部177は、ステップC15において類似度計算部176が計算した類似度sがT個の値θ、…、θτのいずれかに一致するかどうかを確認することにより照合結果を決定する(ステップC16)。
 最後に、照合結果出力部178は、ステップC16において照合結果判定部177が決定した照合結果を出力する(ステップC17)。
 本具体例のステップC2において生成した照合乱数(r、ek、dk)のうちrは、照合フェーズ実施の都度選ぶことにより、再送攻撃防止の効果をもたらすが、本願開示では必須の構成ではない。また、SSL/TLS等の通信路暗号化手段により代替できる。
 また、本具体例のステップC2において生成した照合乱数(r、ek、dk)のうち(ek、dk)は、照合フェーズ実施の都度選ぶのではなく、毎回同じ値が用いられることも許容される。また、共通鍵生成フェーズにおいて照合乱数を生成しておき当該乱数が予め配布されていてもよい。
[効果の説明]
 上述した本実施形態は、登録情報と照合情報を互いに開示せずに照合できるという効果と、記憶情報生成フェーズで用いた登録情報以外の登録情報を用いた照合を行えないという効果を有する。登録情報と照合情報を互いに開示せずに照合できる理由は、照合フェーズにおいて、照合情報秘匿化装置150は、照合情報を秘匿化した秘匿照合情報を秘匿類似度計算装置160に送信(送付)するため、秘匿類似度計算装置160に対して照合情報は開示されず、秘匿類似度計算装置160は登録情報と照合情報の類似度を秘匿化した値である秘匿類似度を計算して復号装置170に送付するため、復号装置170には記憶情報が開示されないためである。
 また、記憶情報生成フェーズで用いた登録情報以外の登録情報を用いた照合を行えない理由は、記憶情報生成フェーズにおいて、記憶情報生成装置140は登録情報と共通鍵を用いて記憶情報を生成するため、共通鍵がなければ、別の登録情報に対する記憶情報を生成できないためである。
[第2の実施形態]
[構成の説明]
 図7は、第2の実施形態に係る情報照合システム200の構成を示すブロック図である。情報照合システム200は、共通鍵生成装置110と、登録情報秘匿化装置220と、登録補助装置230と、記憶情報生成装置240と、照合情報秘匿化装置150と、秘匿類似度計算装置160と、復号装置170とを有する。情報照合システム200が備える上記各装置は、別個の装置として構成することも、適宜用途に応じて同一の装置内に実装されることもある。例えば、情報照合システム200は、登録情報秘匿化装置220と、記憶情報生成装置240と、秘匿類似度計算装置160とをクライアントに、共通鍵生成装置110と、登録補助装置230と、照合情報秘匿化装置150と、復号装置170とをサーバに分けて実装することによって、クライアントサーバシステムとして実現することも可能である。
 図7に示す各装置(共通鍵生成装置110、照合情報秘匿化装置150、秘匿類似度計算装置160、復号装置170、登録情報秘匿化装置220、登録補助装置230、記憶情報生成装置240)は有線又は無線により接続され、相互に通信可能に構成されている。例えば、情報照合システム200に含まれる各装置は、図8に示すように接続される。
 共通鍵生成装置110と、照合情報秘匿化装置150と、秘匿類似度計算装置160と、復号装置170は、第1の実施形態における情報照合システム100において、同名、同番号を付した各装置と同様に構成されるため、説明を省略する。
 登録情報秘匿化装置220は、
登録情報を取得する登録情報取得部221と、
識別子を取得する識別子取得部222と、
秘匿化鍵と秘匿解除鍵を取得する秘匿化鍵取得部223と、
秘匿化鍵取得部223が取得した秘匿解除鍵を送信する秘匿解除鍵送信部224と、
登録情報取得部221が取得した登録情報を、秘匿化鍵取得部223が取得した秘匿化鍵によって秘匿化した秘匿登録情報を生成する秘匿登録情報生成部225と、
識別子取得部222が取得した識別子と秘匿登録情報生成部225が生成した秘匿登録情報の組を送信する秘匿登録情報送信部226と、を有する。
 登録補助装置230は、
識別子と秘匿登録情報の組を受信する秘匿登録情報受信部231と、
共通鍵を取得する共通鍵取得部232と、
秘匿登録情報受信部231が受信した識別子と、共通鍵取得部232が取得した共通鍵とから、個別鍵を生成する個別鍵生成部233と、
秘匿登録情報受信部231が受信した秘匿登録情報と、共通鍵取得部232が取得した共通鍵と、個別鍵生成部233が生成した個別鍵とから、秘匿記憶情報を生成する秘匿記憶情報生成部234と、
秘匿登録情報受信部231が受信した識別子と、秘匿記憶情報生成部234が生成した秘匿記憶情報の組を送信する秘匿記憶情報送信235と、を有する。
 記憶情報生成装置240は、
秘匿解除鍵を受信する秘匿解除鍵受信部245と、
識別子と秘匿記憶情報の組を受信する秘匿記憶情報受信部246と、
秘匿記憶情報受信部246が受信した秘匿記憶情報の秘匿化を、秘匿解除鍵受信部245が受信した秘匿解除鍵を用いて解除することにより、記憶情報を生成する記憶情報生成部247と、
記憶情報生成部247が生成した記憶情報を出力する記憶情報出力部248と、を有する。
[動作の説明]
 次に、図面を参照して、本実施形態の全体の動作について説明する。本実施形態の動作は、第1の実施形態の動作と同様、共通鍵生成フェーズ、記憶情報生成フェーズ、照合フェーズの3つのフェーズに分けられる。
 本実施形態の共通鍵生成フェーズでは、情報照合システム200の共通鍵生成装置110が動作する。また、本実施形態の記憶情報生成フェーズでは、情報照合システム200の照合情報秘匿化装置150と、秘匿類似度計算装置160と、復号装置170とが動作する。各動作は第1の実施形態と同様であるため、説明を省略する。
 本実施形態の記憶情報生成フェーズでは、情報照合システム200の登録情報秘匿化装置220と、登録補助装置230と、記憶情報生成装置240とが動作する。図9を参照して、本実施形態の記憶情報生成フェーズにおける動作を詳細に説明する。
 まず、登録情報秘匿化装置220の登録情報取得部221は、登録情報を取得する(ステップD1)。なお、登録情報の取得手段は問わない。例えば、登録情報秘匿化装置220に付属するセンサ等の入力手段を用いて外部から登録情報が取得されてもよい。
 次に、識別子取得部222は、識別子を取得する(ステップD2)。この識別子は、登録情報に紐づけられるものである。例えば、登録情報が人の生体情報である場合、識別子は対象の人物を表す識別子であってもよい。また、例えば、登録情報が人の生体情報である場合であって、さらに同一人物について複数回記憶情報生成フェーズが実行される場合、識別子は対象人物を表す識別子と、記憶情報生成フェーズの実行回数に関する識別子を合わせたものであってもよい。
 次に、秘匿化鍵取得部223は、加法準同型性を有する公開鍵暗号方式の暗号化鍵(秘匿化鍵)と復号鍵(秘匿解除鍵)を取得する(ステップD3)。なお、暗号化鍵と復号鍵の生成手段及び取得手段は問わない。例えば、登録情報秘匿化装置220の内部に有する鍵生成機能を用いて上記2つの鍵が生成されてもよいし、登録情報秘匿化装置220の外部で生成された2つの鍵が取得されてもよい。
 次に、秘匿解除鍵送信部224は、秘匿化鍵取得部223が取得した復号鍵を、記憶情報生成装置240に送信する(ステップD4)。
 次に、記憶情報生成装置240の秘匿解除鍵受信部245は、登録情報秘匿化装置220から復号鍵(秘匿解除鍵)を受信する(ステップD5)。
 次に、秘匿登録情報生成部225は、登録情報取得部221が取得した登録情報を、秘匿化鍵取得部223が取得した暗号化鍵(秘匿化鍵)によって暗号化した値を秘匿登録情報とする(ステップD6)。
 次に、秘匿登録情報送信部226は、識別子取得部222が取得した識別子と秘匿登録情報生成部225が生成した秘匿登録情報の組を、登録補助装置230に送信する(ステップD7)。
 次に、登録補助装置230の秘匿登録情報受信部231は、登録情報秘匿化装置220から、識別子と秘匿登録情報の組を受信する(ステップD8)。
 次に、共通鍵取得部232は、ステップA3において共通鍵生成装置110が出力した共通鍵を取得する(ステップD9)。なお、共通鍵の取得手段は問わない。例えば、登録補助装置230の内部に備える記憶手段にあらかじめ共通鍵が記憶されていてもよいし、登録補助装置230の外部の記憶手段から共通鍵が都度取得されてもよい。
 次に、個別鍵生成部233は、ステップD8において秘匿登録情報受信部231が取得した識別子と、ステップD9において共通鍵取得部232が取得した共通鍵とから、個別鍵を生成する(ステップD10)。
 次に、秘匿記憶情報生成部234は、ステップD8において秘匿登録情報受信部231が取得した秘匿登録情報と、ステップD9において共通鍵取得部232が取得した共通鍵と、ステップD10において個別鍵生成部233が生成した個別鍵とから、秘匿記憶情報を生成する(ステップD11)。
 次に、秘匿記憶情報送信235は、秘匿登録情報受信部231が受信した識別子と、ステップD11において秘匿記憶情報生成部234が生成した秘匿記憶情報の組を、記憶情報生成装置240に送信する(ステップD12)。
 次に、秘匿記憶情報受信部246は、登録補助装置230から、識別子と秘匿記憶情報の組を受信する(ステップD13)。
 次に、記憶情報生成部247は、ステップD13において秘匿記憶情報受信部246が受信した秘匿記憶情報の秘匿化を、ステップD5において秘匿解除鍵受信部245が受信した復号鍵(秘匿解除鍵)を用いて解除することにより、記憶情報を生成する(ステップD14)。
 最後に、記憶情報出力部248は、ステップD13において秘匿記憶情報受信部246が受信した識別子とステップD14において記憶情報生成部247が生成した記憶情報の組を出力する(ステップD15)。
 なお、各ステップの実行順序は上述の順序に限らない。例えば、ステップD1の登録情報の取得の前に、登録情報に寄らないステップ(ステップD2、D3、D4、D5、D7のうち識別子の送信、D8のうち識別子の受信、D9、D10)が実行されてもよい。
[第2の実施形態に係る具体例]
 次に、本実施形態における情報照合システム200の動作の具体例について説明する。
 本具体例では、ECElgamal暗号を用いる場合について説明する。楕円曲線E上の、位数がκビットの素数qである群およびその生成元Gが公開されていることを想定する。
 また、本具体例では、ハッシュ関数を用いる。用いるハッシュ関数に制限はないが、登録補助装置230および復号装置170が、あらかじめ、用いるハッシュ関数の知識を有することを想定する。以下では用いるハッシュ関数をHashと表す。
 また、本具体例では、照合情報および登録情報として、ベクトル(次元数をDとする)を用いる場合について説明する。さらに、照合情報と登録情報の類似度を2つのベクトルの内積によって算出する場合について説明する。照合情報および登録情報が十分に類似していると判定されるのは、照合情報と登録情報の内積によって算出される類似度がT個の値θ、…、θτのいずれかに一致する場合とする。
 本具体例の共通鍵生成フェーズおよび照合フェーズにおける動作は、第1の実施形態に係る具体例の共通鍵生成フェーズおよび照合フェーズにおける動作と同様であるため、説明を省略する。
 本具体例の記憶情報生成フェーズにおける動作を説明する。
 まず、登録情報秘匿化装置220の登録情報取得部221は、登録情報としてD次元のベクトル
x=(x、…、x
を取得する(ステップD1)。
 次に、識別子取得部222は、識別子IDを取得する(ステップD2)。
 次に、秘匿化鍵取得部223は、ECElgamal暗号の鍵生成アルゴリズムを実行し、暗号化鍵ek’と復号鍵dk’を取得する(ステップD3)。
 次に、秘匿解除鍵送信部224は、秘匿化鍵取得部223が取得した復号鍵dk’を、記憶情報生成装置240に送信する(ステップD4)。
 次に、記憶情報生成装置240の秘匿解除鍵受信部245は、登録情報秘匿化装置220から復号鍵dk’を受信する(ステップD5)。
 次に、秘匿登録情報生成部225は、
登録情報取得部221が取得した登録情報x=(x、…、x)と、
秘匿化鍵取得部223が取得した暗号化鍵ek’とから
各j=1、…、Dについて
=Enc(ek’、x
を計算し、
ek’とX=(X、…、X)の組を秘匿登録情報とする(ステップD6)。
 次に、秘匿登録情報送信部226は、識別子取得部222が取得した識別子IDと秘匿登録情報生成部225が生成した秘匿登録情報(ek’、X)の組を、登録補助装置230に送信する(ステップD7)。
 次に、登録補助装置230の秘匿登録情報受信部231は、登録情報秘匿化装置220から、識別子と秘匿登録情報の組(ID、(ek’、X))を受信する(ステップD8)。
 次に、共通鍵取得部232は、ステップA3において共通鍵生成装置110が出力した共通鍵(a、K)を取得する(ステップD9)。
 次に、個別鍵生成部233は、
ステップD8において秘匿登録情報受信部231が取得した識別子IDと、
ステップD9において共通鍵取得部232が取得した共通鍵(a、K)とから、
各j=1、…、Dについてハッシュ値
ID、j=Hash(K、ID、j)
を計算し、
ID=(hID、1、…、hID、D)を個別鍵とする(ステップD10)。
 次に、秘匿記憶情報生成部234は、
ステップD8において秘匿登録情報受信部231が取得した秘匿登録情報(ek’、X=(X、…、X))と、
ステップD9において共通鍵取得部232が取得した共通鍵(a、K)と、
ステップD10において個別鍵生成部233が生成した個別鍵hID=(hID、1、…、hID、D)とから、
各j=1、…、Dについて
Z’ID、j=HomScl(ek’、HomAdd(ek’、X、Enc(ek’、-hID、j))、a)
を計算し、
Z’ID=(Z’ID、1、…、Z’ID、D)を秘匿記憶情報とする(ステップD11)。
 なお、各j=1、…、Dについて
=Enc(ek’、x
であることから、
Z’ID、j=Enc(ek’、a(x-hID、j))
が成り立つ。
 なお、上記秘匿記憶情報を生成する際に計算される、
a(x-hID、j
が登録情報を線形変換した記憶情報に該当する。
 次に、秘匿記憶情報送信235は、秘匿登録情報受信部231が受信した識別子IDと、ステップD11において秘匿記憶情報生成部234が生成した秘匿記憶情報Z’ID=(Z’ID、1、…、Z’ID、D)の組を、記憶情報生成装置240に送信する(ステップD12)。
 次に、秘匿記憶情報受信部246は、登録補助装置230から、識別子と秘匿記憶情報の組(ID、Z’ID)を受信する(ステップD13)。
 次に、記憶情報生成部247は、
ステップD5において秘匿解除鍵受信部245が受信した秘匿解除鍵dk’と、
ステップD13において秘匿記憶情報受信部246が受信した秘匿記憶情報Z’ID=(Z’ID、1、…、Z’ID、D)とから、
各j=1、…、Dについて
ID、j=Dec(dk’、Z’ID、j
を計算し、
ID=(zID、1、…、zID、D)を記憶情報とする(ステップD14)。
 なお、各j=1、…、Dについて
Z’ID、j=Enc(ek’、a(x-hID、j))
であることから、
ID、j=a(x-hID、j
が成り立つ。
 最後に、記憶情報出力部248は、ステップD13において秘匿記憶情報受信部246が受信した識別子IDとステップD14において記憶情報生成部247が生成した記憶情報zIDの組(ID、zID)を出力する(ステップD15)。
[効果の説明]
 上述した本実施形態は、実施形態1における効果に加え、記憶情報を安全に生成できるという効果も有する。その理由は、登録情報を登録情報秘匿化装置220の外部に送信する際には秘匿化し、共通鍵は登録情報を取り扱う登録情報秘匿化装置220とは異なる登録補助装置230で取り扱って、記憶情報を生成するためである。
 本発明の技術は、登録された情報から生成され、クライアント端末に保存された情報と、クライアント端末ごとの情報を持たないサーバ端末が新たに取得した情報とを、それらの情報を秘匿し、さらに、クライアント端末が保存された情報以外を用いることを防ぎつつ、照合することができる。
 本発明の技術は、例えば、前述の通り、カードやスマートフォン等の端末の提示や読み取りを必要としない、生体認証による決済手段に利用できる。顧客のスマートフォン等のモバイル端末をクライアント端末として利用し、各店舗に設置された決済端末をサーバ端末として利用する。決済端末に顧客ごとの情報を記憶する必要がないため、店舗に来店する顧客を事前に特定できなくても、決済を行う顧客を特定できる。
 また、本発明の技術は、例えば、生体認証により許可された人かどうかを判断する、入場ゲートに利用できる。入場希望人が持つモバイル端末をクライアント端末として利用し、ゲートの端末をサーバ端末として利用する。ゲート端末に顧客ごとの情報を記憶する必要がないため、入場希望者がどのゲートを通るか事前に特定できていなくても、入場希望者を特定できる。なお、本発明の技術の利用可能例は上記の例に限らない。
 続いて、情報照合システムを構成する各装置のハードウェアについて説明する。図10は、秘匿類似度計算装置160のハードウェア構成の一例を示す図である。
 秘匿類似度計算装置160は、情報処理装置(所謂、コンピュータ)により構成可能であり、図10に例示する構成を備える。例えば、秘匿類似度計算装置160は、プロセッサ31、メモリ32、入出力インターフェイス33及び通信インターフェイス34等を備える。上記プロセッサ31等の構成要素は内部バス等により接続され、相互に通信可能に構成されている。
 但し、図10に示す構成は、秘匿類似度計算装置160のハードウェア構成を限定する趣旨ではない。秘匿類似度計算装置160は、図示しないハードウェアを含んでもよいし、必要に応じて入出力インターフェイス33を備えていなくともよい。また、秘匿類似度計算装置160に含まれるプロセッサ31等の数も図10の例示に限定する趣旨ではなく、例えば、複数のプロセッサ31が秘匿類似度計算装置160に含まれていてもよい。
 プロセッサ31は、例えば、CPU(Central Processing Unit)、MPU(Micro Processing Unit)、DSP(Digital Signal Processor)等のプログラマブルなデバイスである。あるいは、プロセッサ31は、FPGA(Field Programmable Gate Array)、ASIC(Application Specific Integrated Circuit)等のデバイスであってもよい。プロセッサ31は、オペレーティングシステム(OS;Operating System)を含む各種プログラムを実行する。
 メモリ32は、RAM(Random Access Memory)、ROM(Read Only Memory)、HDD(Hard Disk Drive)、SSD(Solid State Drive)等である。メモリ32は、OSプログラム、アプリケーションプログラム、各種データを格納する。
 入出力インターフェイス33は、図示しない表示装置や入力装置のインターフェイスである。表示装置は、例えば、液晶ディスプレイ等である。入力装置は、例えば、キーボードやマウス等のユーザ操作を受け付ける装置である。
 通信インターフェイス34は、他の装置と通信を行う回路、モジュール等である。例えば、通信インターフェイス34は、NIC(Network Interface Card)等を備える。
 秘匿類似度計算装置160の機能は、各種処理モジュールにより実現される。当該処理モジュールは、例えば、メモリ32に格納されたプログラムをプロセッサ31が実行することで実現される。また、当該プログラムは、コンピュータが読み取り可能な記憶媒体に記録することができる。記憶媒体は、半導体メモリ、ハードディスク、磁気記録媒体、光記録媒体等の非トランジェント(non-transitory)なものとすることができる。即ち、本発明は、コンピュータプログラム製品として具現することも可能である。また、上記プログラムは、ネットワークを介してダウンロードするか、あるいは、プログラムを記憶した記憶媒体を用いて、更新することができる。さらに、上記処理モジュールは、半導体チップにより実現されてもよい。
 なお、共通鍵生成装置110、記憶情報生成装置140等も秘匿類似度計算装置160と同様に情報処理装置により構成可能であり、その基本的なハードウェア構成は秘匿類似度計算装置160と相違する点はないので説明を省略する。
[変形例]
 なお、上記実施形態にて説明した情報照合システムの構成、動作等は例示であって、システムの構成等を限定する趣旨ではない。例えば、各装置間で送受信される情報(例えば、秘匿照合情報等)を格納するデータベースサーバ等を設け、当該データベースサーバを介して情報のやり取りが行われてもよい。
 上述の説明で用いた複数のフローチャート(シーケンス図)では、複数の工程(処理)が順番に記載されているが、各実施形態で実行される工程の実行順序は、その記載の順番に制限されない。各実施形態では、例えば各処理を並行して実行する等、図示される工程の順番を内容的に支障のない範囲で変更することができる。また、上述の各実施形態は、内容が相反しない範囲で組み合わせることができる。
 上記の実施形態の一部又は全部は、以下の付記のようにも記載され得るが、以下には限られない。
[付記1]
 共通鍵生成装置(11、110)と、記憶情報生成装置(12、140、240)と、照合情報秘匿化装置(13、150)と、秘匿類似度計算装置(14、160)と、復号装置(15、170)と、を含み、
 前記共通鍵生成装置(11、110)は共通鍵を生成し、
 前記記憶情報生成装置(12、140、240)は登録情報と前記登録情報を識別可能である識別子を取得し、前記共通鍵と前記識別子とから第1の個別鍵を生成すると共に、前記共通鍵と前記第1の個別鍵を用いて前記登録情報を線形変換した記憶情報を生成し、
 前記照合情報秘匿化装置(13、150)は、照合情報を取得し、暗号化鍵を用いて前記照合情報を秘匿した秘匿照合情報を生成し、
 前記秘匿類似度計算装置(14、160)は前記記憶情報と前記秘匿照合情報から秘匿類似度を計算し、
 前記復号装置(15、170)は、前記共通鍵と前記識別子とから第2の個別鍵を生成すると共に、前記秘匿類似度と、前記暗号化鍵に対応する復号鍵と、前記共通鍵と、前記第2の個別鍵と、から前記登録情報と前記照合情報の類似度を計算する、情報照合システム。
[付記2]
 登録情報秘匿化装置と登録補助装置をさらに含み、
 前記登録情報秘匿化装置は前記登録情報を取得し、前記登録情報を秘匿化した秘匿登録情報を生成し、
 前記登録補助装置は、前記共通鍵と前記登録情報を識別可能である識別子とから第3の個別鍵を生成すると共に、前記共通鍵と前記第3の個別鍵を用いて前記登録情報を線形変換した記憶情報を秘匿化した値である秘匿記憶情報を生成し、
 前記記憶情報生成装置(12、140、240)は、前記秘匿記憶情報の秘匿化を解除することにより前記記憶情報を生成する、付記1に記載の情報照合システム。
[付記3]
 前記第1の個別鍵、第2の個別鍵及び第3の個別鍵は、前記共通鍵と、前記登録情報を識別可能である識別子とを含む値を入力して計算されたハッシュ値であり、前記ハッシュ値を用いて前記記憶情報及び前記類似度は計算される、付記1又は2に記載の情報照合システム。
[付記4]
 前記照合情報秘匿化装置(13、150)は、前記照合情報を、準同型性を有する暗号方式によって暗号化することにより前記秘匿照合情報を算出し、
 前記復号装置(15、170)は、前記準同型性を有する暗号方式によって前記秘匿類似度を復号することにより前記類似度を算出する、付記1乃至3のいずれか一つに記載の情報照合システム。
[付記5]
 前記登録情報秘匿化装置は、前記登録情報を、準同型性を有する暗号方式によって暗号化することにより前記秘匿登録情報を算出し、
 前記記憶情報生成装置(12、140、240)は、前記準同型性を有する暗号方式によって前記秘匿記憶情報を復号することにより前記記憶情報を算出する、付記2に記載の情報照合システム。
[付記6]
 共通鍵生成装置(11、110)と、記憶情報生成装置(12、140、240)と、照合情報秘匿化装置(13、150)と、秘匿類似度計算装置(14、160)と、復号装置(15、170)と、を含む情報照合システムにおいて、
 前記共通鍵生成装置(11、110)が共通鍵を生成するステップと、
 前記記憶情報生成装置(12、140、240)が、登録情報と前記登録情報を識別可能である識別子を取得し、前記共通鍵と前記識別子とから第1の個別鍵を生成すると共に、前記共通鍵と前記第1の個別鍵を用いて前記登録情報を線形変換した記憶情報を生成するステップと、
 前記照合情報秘匿化装置(13、150)が、照合情報を取得し、暗号化鍵を用いて前記照合情報を秘匿した秘匿照合情報を生成するステップと、
 前記秘匿類似度計算装置(14、160)が、前記記憶情報と前記秘匿照合情報から秘匿類似度を計算するステップと、
 前記復号装置(15、170)が、前記共通鍵と前記識別子とから第2の個別鍵を生成すると共に、前記秘匿類似度と、前記暗号化鍵に対応する復号鍵と、前記共通鍵と、前記第2の個別鍵と、から前記登録情報と前記照合情報の類似度を計算するステップと、を含む情報照合方法。
 なお、付記6の形態は、付記1の形態と同様に、付記2の形態~付記5の形態に展開することが可能である。
 なお、引用した上記の先行技術文献の各開示は、本書に引用をもって繰り込むものとする。以上、本発明の実施形態を説明したが、本発明はこれらの実施形態に限定されるものではない。これらの実施形態は例示にすぎないということ、及び、本発明のスコープ及び精神から逸脱することなく様々な変形が可能であるということは、当業者に理解されるであろう。
11、110 共通鍵生成装置
12、140、240 記憶情報生成装置
13、150 照合情報秘匿化装置
14、160 秘匿類似度計算装置
15、170 復号装置
31 プロセッサ
32 メモリ
33 入出力インターフェイス
34 通信インターフェイス
100、200 情報照合システム
111 乱数取得部
112 共通鍵生成部
113 共通鍵出力部
141、221 登録情報取得部
142、222 識別子取得部
143 共通鍵取得部
144 個別鍵生成部
147、247 記憶情報生成部
148、248 記憶情報出力部
151 照合情報取得部
152 照合乱数取得部
153 照合乱数送信部
154 秘匿照合情報生成部
155 秘匿照合情報送信部
161 秘匿照合情報受信部
162 記憶情報取得部
163 秘匿類似度計算部
164 秘匿類似度送信部
171 照合乱数受信部
172 秘匿類似度受信部
173 照合情報取得部
174、232 共通鍵取得部
175、233 個別鍵生成部
176 類似度計算部
177 照合結果判定部
178 照合結果出力部
220 登録情報秘匿化装置
223 秘匿化鍵取得部
224 秘匿解除鍵送信部
225 秘匿登録情報生成部
226 秘匿登録情報送信部
230 登録補助装置
231 秘匿登録情報受信部
234 秘匿記憶情報生成部
235 秘匿記憶情報送信部
245 秘匿解除鍵受信部
246 秘匿記憶情報受信部
 
 
 

Claims (6)

  1.  共通鍵生成装置と、記憶情報生成装置と、照合情報秘匿化装置と、秘匿類似度計算装置と、復号装置と、を含み、
     前記共通鍵生成装置は共通鍵を生成し、
     前記記憶情報生成装置は登録情報と前記登録情報を識別可能である識別子を取得し、前記共通鍵と前記識別子とから第1の個別鍵を生成すると共に、前記共通鍵と前記第1の個別鍵を用いて前記登録情報を線形変換した記憶情報を生成し、
     前記照合情報秘匿化装置は、照合情報を取得し、暗号化鍵を用いて前記照合情報を秘匿した秘匿照合情報を生成し、
     前記秘匿類似度計算装置は前記記憶情報と前記秘匿照合情報から秘匿類似度を計算し、
     前記復号装置は、前記共通鍵と前記識別子とから第2の個別鍵を生成すると共に、前記秘匿類似度と、前記暗号化鍵に対応する復号鍵と、前記共通鍵と、前記第2の個別鍵と、から前記登録情報と前記照合情報の類似度を計算する、情報照合システム。
  2.  登録情報秘匿化装置と登録補助装置をさらに含み、
     前記登録情報秘匿化装置は前記登録情報を取得し、前記登録情報を秘匿化した秘匿登録情報を生成し、
     前記登録補助装置は、前記共通鍵と前記登録情報を識別可能である識別子とから第3の個別鍵を生成すると共に、前記共通鍵と前記第3の個別鍵を用いて前記登録情報を線形変換した記憶情報を秘匿化した値である秘匿記憶情報を生成し、
     前記記憶情報生成装置は、前記秘匿記憶情報の秘匿化を解除することにより前記記憶情報を生成する、請求項1に記載の情報照合システム。
  3.  前記第1の個別鍵、第2の個別鍵及び第3の個別鍵は、前記共通鍵と、前記登録情報を識別可能である識別子とを含む値を入力して計算されたハッシュ値であり、前記ハッシュ値を用いて前記記憶情報及び前記類似度は計算される、請求項1又は2に記載の情報照合システム。
  4.  前記照合情報秘匿化装置は、前記照合情報を、準同型性を有する暗号方式によって暗号化することにより前記秘匿照合情報を算出し、
     前記復号装置は、前記準同型性を有する暗号方式によって前記秘匿類似度を復号することにより前記類似度を算出する、請求項1乃至3のいずれか一項に記載の情報照合システム。
  5.  前記登録情報秘匿化装置は、前記登録情報を、準同型性を有する暗号方式によって暗号化することにより前記秘匿登録情報を算出し、
     前記記憶情報生成装置は、前記準同型性を有する暗号方式によって前記秘匿記憶情報を復号することにより前記記憶情報を算出する、請求項2に記載の情報照合システム。
  6.  共通鍵生成装置と、記憶情報生成装置と、照合情報秘匿化装置と、秘匿類似度計算装置と、復号装置と、を含む情報照合システムにおいて、
     前記共通鍵生成装置が共通鍵を生成するステップと、
     前記記憶情報生成装置が、登録情報と前記登録情報を識別可能である識別子を取得し、前記共通鍵と前記識別子とから第1の個別鍵を生成すると共に、前記共通鍵と前記第1の個別鍵を用いて前記登録情報を線形変換した記憶情報を生成するステップと、
     前記照合情報秘匿化装置が、照合情報を取得し、暗号化鍵を用いて前記照合情報を秘匿した秘匿照合情報を生成するステップと、
     前記秘匿類似度計算装置が、前記記憶情報と前記秘匿照合情報から秘匿類似度を計算するステップと、
     前記復号装置が、前記共通鍵と前記識別子とから第2の個別鍵を生成すると共に、前記秘匿類似度と、前記暗号化鍵に対応する復号鍵と、前記共通鍵と、前記第2の個別鍵と、から前記登録情報と前記照合情報の類似度を計算するステップと、を含む情報照合方法。
     
     
PCT/JP2019/039781 2019-10-09 2019-10-09 情報照合システム及び情報照合方法 WO2021070275A1 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
PCT/JP2019/039781 WO2021070275A1 (ja) 2019-10-09 2019-10-09 情報照合システム及び情報照合方法
US17/763,306 US20220345302A1 (en) 2019-10-09 2019-10-09 Information matching system and information matching method
JP2021550997A JP7259979B2 (ja) 2019-10-09 2019-10-09 情報照合システム及び情報照合方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2019/039781 WO2021070275A1 (ja) 2019-10-09 2019-10-09 情報照合システム及び情報照合方法

Publications (1)

Publication Number Publication Date
WO2021070275A1 true WO2021070275A1 (ja) 2021-04-15

Family

ID=75437334

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2019/039781 WO2021070275A1 (ja) 2019-10-09 2019-10-09 情報照合システム及び情報照合方法

Country Status (3)

Country Link
US (1) US20220345302A1 (ja)
JP (1) JP7259979B2 (ja)
WO (1) WO2021070275A1 (ja)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2011052056A1 (ja) * 2009-10-29 2011-05-05 三菱電機株式会社 データ処理装置
US20150012742A1 (en) * 2013-07-07 2015-01-08 Victor Gorelik Active biometric authentication with zero privacy leakage
JP2016131335A (ja) * 2015-01-14 2016-07-21 富士通株式会社 情報処理方法、情報処理プログラムおよび情報処理装置
JP2017076839A (ja) * 2015-10-13 2017-04-20 富士通株式会社 暗号処理方法、暗号処理装置、および暗号処理プログラム

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7818395B2 (en) * 2006-10-13 2010-10-19 Ceelox, Inc. Method and apparatus for interfacing with a restricted access computer system
US9384518B2 (en) * 2012-03-26 2016-07-05 Amerasia International Technology, Inc. Biometric registration and verification system and method
US11496315B1 (en) * 2018-05-08 2022-11-08 T Stamp Inc. Systems and methods for enhanced hash transforms

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2011052056A1 (ja) * 2009-10-29 2011-05-05 三菱電機株式会社 データ処理装置
US20150012742A1 (en) * 2013-07-07 2015-01-08 Victor Gorelik Active biometric authentication with zero privacy leakage
JP2016131335A (ja) * 2015-01-14 2016-07-21 富士通株式会社 情報処理方法、情報処理プログラムおよび情報処理装置
JP2017076839A (ja) * 2015-10-13 2017-04-20 富士通株式会社 暗号処理方法、暗号処理装置、および暗号処理プログラム

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
TAMIYA, HIROTO ET AL.: "Online Secret Biometric Authentication Method in Which Clients Have Templates", PROCEEDINGS OF 2019 SYMPOSIUM ON CRYPTOGRAPHY AND INFORMATION SECURITY (SCIS 2019, 15 January 2019 (2019-01-15), pages 1 - 7 *

Also Published As

Publication number Publication date
US20220345302A1 (en) 2022-10-27
JP7259979B2 (ja) 2023-04-18
JPWO2021070275A1 (ja) 2021-04-15

Similar Documents

Publication Publication Date Title
US11770369B2 (en) System and method for identity verification across mobile applications
CN111466097B (zh) 服务器辅助式隐私保护生物统计比较
EP3665862B1 (en) Use of biometrics and privacy preserving methods to authenticate account holders online
JP5859953B2 (ja) 生体認証システム、通信端末装置、生体認証装置、および生体認証方法
US10873447B2 (en) Efficient concurrent scalar product calculation
WO2017012175A1 (zh) 身份认证方法、身份认证系统、终端和服务器
CN104321777B (zh) 生成公共标识以验证携带识别对象的个人的方法
JP7294431B2 (ja) 情報照合システム、クライアント端末、サーバ、情報照合方法、及び情報照合プログラム
KR20070024569A (ko) 생체 측정 템플릿의 프라이버시 보호를 위한 아키텍처
US9910478B2 (en) Collation system, node, collation method, and computer readable medium
US11429702B2 (en) Method of verification of a biometric authentication
US11810110B2 (en) Method of processing a transaction sent from a proof entity
WO2014185447A1 (ja) 照合システム、ノード、照合方法およびプログラム
JP6791263B2 (ja) 暗号文照合システム及び暗号文照合方法
JPWO2020121458A1 (ja) 照合システム、クライアントおよびサーバ
JP7235055B2 (ja) 認証システム、クライアントおよびサーバ
WO2021070275A1 (ja) 情報照合システム及び情報照合方法
EP3745289B1 (en) Apparatus and method for registering biometric information, apparatus and method for biometric authentication
JP7294437B2 (ja) 情報照合システム及び情報照合方法
JP7280285B2 (ja) 効率的な同時スカラー積計算
RU2776258C2 (ru) Биометрическое сравнение для защиты приватности с помощью сервера

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 19948524

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 2021550997

Country of ref document: JP

Kind code of ref document: A

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 19948524

Country of ref document: EP

Kind code of ref document: A1