WO2016072057A1 - 暗号文照合システム、方法、および記録媒体 - Google Patents
暗号文照合システム、方法、および記録媒体 Download PDFInfo
- Publication number
- WO2016072057A1 WO2016072057A1 PCT/JP2015/005366 JP2015005366W WO2016072057A1 WO 2016072057 A1 WO2016072057 A1 WO 2016072057A1 JP 2015005366 W JP2015005366 W JP 2015005366W WO 2016072057 A1 WO2016072057 A1 WO 2016072057A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- data
- result
- verification
- registration
- collation
- Prior art date
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic 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/3247—Cryptographic 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 involving digital signatures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/08—Error detection or correction by redundancy in data representation, e.g. by using checking codes
- G06F11/10—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
- G06F11/1008—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices
- G06F11/1012—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices using codes or arrangements adapted for a specific type of error
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/08—Error detection or correction by redundancy in data representation, e.g. by using checking codes
- G06F11/10—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
- G06F11/1076—Parity data used in redundant arrays of independent storages, e.g. in RAID systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/30—Authentication, i.e. establishing the identity or authorisation of security principals
- G06F21/31—User authentication
- G06F21/32—User authentication using biometric data, e.g. fingerprints, iris scans or voiceprints
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/30—Authentication, i.e. establishing the identity or authorisation of security principals
- G06F21/45—Structures or tools for the administration of authentication
-
- G—PHYSICS
- G09—EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
- G09C—CIPHERING OR DECIPHERING APPARATUS FOR CRYPTOGRAPHIC OR OTHER PURPOSES INVOLVING THE NEED FOR SECRECY
- G09C1/00—Apparatus or methods whereby a given sequence of signs, e.g. an intelligible text, is transformed into an unintelligible sequence of signs by transposing the signs or groups of signs or by replacing them by others according to a predetermined system
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
- H03M13/03—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
- H03M13/05—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
- H03M13/13—Linear codes
- H03M13/15—Cyclic codes, i.e. cyclic shifts of codewords produce other codewords, e.g. codes defined by a generator polynomial, Bose-Chaudhuri-Hocquenghem [BCH] codes
- H03M13/151—Cyclic codes, i.e. cyclic shifts of codewords produce other codewords, e.g. codes defined by a generator polynomial, Bose-Chaudhuri-Hocquenghem [BCH] codes using error location or error correction polynomials
- H03M13/152—Bose-Chaudhuri-Hocquenghem [BCH] codes
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/14—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using a plurality of keys or algorithms
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/30—Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2221/00—Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/21—Indexing 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/2107—File encryption
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L2209/00—Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
- H04L2209/12—Details relating to cryptographic hardware or logic circuitry
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L2209/00—Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
- H04L2209/72—Signcrypting, i.e. digital signing and encrypting simultaneously
Definitions
- the present invention relates to a ciphertext verification system, method, and recording medium that allows ambiguity of encrypted data, and in particular, confidential input data (verification source data) is also subject to verification input data (verification target data).
- the present invention relates to a ciphertext collation system, method, and recording medium when the ambiguity index is a plaintext Hamming distance in a situation where both are encrypted.
- biometric authentication technology based on biometric features such as fingerprints and veins with higher safety has attracted attention.
- Biometric authentication it is necessary to store a template related to biometric information in a database in order to verify authentication information.
- Biometric information such as fingerprints and veins is basically life-long data. If biological information is leaked, the damage will be enormous. For this reason, the biometric information is information that requires the most confidentiality. Therefore, it is necessary to prevent “spoofing” from being performed even if the template is leaked.
- template protection type biometric authentication technology that performs authentication while keeping template information secret is becoming important.
- Patent Document 1 discloses a method in which fingerprint data is expressed as a point on a polynomial, a random point is added to the point, and biometric authentication is performed using data in which the fingerprint data is concealed as a template.
- Patent Document 1 has a problem as to whether biometric information is protected with sufficient strength when biometric authentication is repeated many times.
- Non-Patent Document 1 discloses a method of protecting biological information by masking a template placed on a database with a random BCH (Bose-Chaudhuri-Hocquenghem) codeword.
- the biometric authentication template is generated using the biometric information Z and the confidential information S as follows.
- the secret information S is BCH error correction encoded to generate a code word C.
- H cryptographic hash function
- the above-described technique is a method that does not depend on the method of acquiring the biological information Z. For this reason, in general, it is checked whether the ciphertext is obtained by encrypting the presented data and the data within a certain Hamming distance without decrypting the concealed (encrypted) data. It can be interpreted as a method.
- a method using a searchable encryption using a definite common key encryption or public key encryption is known.
- these methods generally require that a keyword used for search is uniquely determined.
- collation is performed using biometric information as described above, it is known that the same biometric information is not always obtained due to noise included when biometric information is acquired. For this reason, it is difficult to apply the searchable encryption to the biometric information matching method.
- Patent Document 2 discloses a ciphertext collation system that can avoid leakage of the original plaintext and ensure security in ciphertext collation.
- the ciphertext collation system disclosed in Patent Document 2 includes a registration auxiliary data generation unit, a ciphertext subtraction unit, and a coincidence determination unit.
- the registration auxiliary data generation unit encrypts the input data to be concealed and registers the first ciphertext registered in the storage device and the second ciphertext obtained by encrypting the input data to be verified.
- First and second auxiliary data for verifying that the Hamming distance of the plaintext between the first ciphertext and the second ciphertext is equal to or less than a predetermined value is generated.
- the ciphertext subtracting unit takes a difference between the second ciphertext and the first ciphertext registered in the storage device.
- the coincidence determination unit uses the first and second auxiliary data to determine whether the Hamming distance corresponding to the difference between the first ciphertext and the second ciphertext is equal to or less than a predetermined value. judge.
- the problem with the above technology is that when collating the ciphertext in the database with some errors in the collation source data and the collation target data, information on the collation source data is leaked to the database administrator. There is to be. The reason is as follows.
- the input data to be collated is known which is close to the registered input data to be concealed (in fact, the first ciphertext obtained by encrypting the input data is registered in the storage device).
- the accepted second ciphertext (collation data) can be generated without it.
- each element of the registered data has linearity, and therefore the second ciphertext (collation data) that can be accepted can be generated without knowing the input data to be collated. .
- the present invention has been made in view of the above circumstances, and its purpose is not to use input data to be collated that is close to collation source data (confidential input data) even if a plurality of collations are performed.
- An object of the present invention is to provide a ciphertext verification system, method, and recording medium that can guarantee that verification data cannot be created as much as possible.
- the ciphertext matching system encrypts input data to be concealed using a secret key, and generates registration data from the encryption unit that calculates the encrypted data, and the encrypted data and the verification key
- a registration data generation unit that performs registration, a storage device that stores the registration data as a registration template in the storage unit together with an identifier for uniquely identifying the registration data, and data verification in which input data to be verified is encrypted using a random number
- a data collation request generating unit that generates a request, a registration template stored in the storage unit, and a data collation determination unit that collates the data collation request and outputs a determination result, and a registration template corresponding to the determination result
- a collation result generation unit that outputs a collation result including all or part of the data, and a data restoration unit that restores data from the collation result and outputs the restoration result.
- the ciphertext matching system encrypts the input data to be concealed using the signature key, and registers the registered data from the encrypted data and the verification key.
- a registration data generation unit that generates the registration data, a storage device that stores the registration data as a registration template in the storage unit together with an identifier for uniquely identifying the registration data, and the input data to be verified is encrypted using a random number
- a first data verification request generation unit that generates a first data verification request; a registration template stored in the storage unit; and a first data verification request unit that compares the first data verification request and outputs a determination result;
- a first collation result generation unit that outputs a combination of a randomly selected message and a part or all of the registered template corresponding to the determination result as a first collation result
- a decoding unit that decodes the first matching result and outputs the decoding result; a second data matching request generating unit that generates a second data matching request from the decoding result and a message included in the first matching result;
- the ciphertext collation system encrypts the input data to be concealed using the secret key, and registers the registered data from the encrypted data and the public key.
- a registration data generation unit that generates the registration data, a storage device that stores the registration data as a registration template in the storage unit together with an identifier for uniquely identifying the registration data, and the input data to be verified is encrypted using a random number
- a first data verification request generation unit that generates a first data verification request; a registration template stored in the storage unit; and a first data verification request unit that compares the first data verification request and outputs a determination result;
- First matching result generation that outputs a combination of a randomly selected message and a part or all of the registered template corresponding to the determination result as a first matching result
- a decoding unit that decodes the first matching result and outputs the decoding result
- a second data matching request generation unit that generates a second data matching request from the decoding result and the message included in the first matching result
- the input data to be collated sent by the user at the time of collation is used as collation source data (confidential target data).
- collation source data confidential target data
- Input data can be prevented from being generated without knowledge.
- the ciphertext collation system of the present invention generates a data collation request by encrypting input data to be collated transmitted by a user at the time of collation with data obtained by error-correcting a random number. Further, not only the encrypted data stored in the database, but also the input data to be collated sent out by the user for collation is encrypted by an encryption method with high confidentiality. By changing the random number used for encryption each time collation is performed, it becomes impossible to generate input data to be collated that is sent out by the user during collation without knowing the collation source data (confidential input data). .
- the acceptance / rejection is determined based on the similarity, not the perfect match.
- the input data z to be concealed and the input data z ′ to be verified correspond to the present invention.
- the present invention confirms that the input data z to be concealed and the input data z ′ to be collated are kept secret while the input data z ′ to be collated close to the input data z to be concealed is not used. This guarantees that it will not be able to produce accepted verification data. That is, it is a novel feature of the present invention that the latter property can be mathematically guaranteed.
- the present invention uses an error correction code and a digital signature (or an encryption protocol such as public key encryption).
- z (+) ENC (sk) that calculates the exclusive OR of ENC (sk) that is error-correction-encoded signature secret key sk and input data z to be concealed, and verification as registration data Generate key vk.
- z (+) ENC (sk) is defined as equation (1).
- a public key pk is used instead of the verification key vk, and a decryption key dk is used instead of the secret key sk.
- the verification is divided into two phases.
- the client sends exclusive OR z ′ (+) ENC (R) of the input data z ′ to be verified and ENC (R) obtained by error-correcting the random number R to the server.
- the server performs error correction decoding on (1) (+) (z ′ (+) ENC (R)).
- the concealment target input data z and the collation target input data z ′ are close to each other, the decryption is possible, and the decryption result is sk (+) R.
- the server sends this value to the client with a random message M. If decoding is impossible, stop.
- the client calculates the decryption result sk (+) R (+) R using the random number R used in the verification phase 1, and obtains the signature private key sk. Then, the client generates a digital signature ⁇ using the signature private key sk and the message M, and sends it to the server. The server verifies the signature using the verification key vk, and determines whether to accept or not to accept.
- the method according to the present invention can guarantee that the collation data to be accepted cannot be created unless the collation target input data z 'close to the concealment target input data z is used.
- the present invention can be realized as an invention up to the above (collation phase 1). This is because, in the above example, the secret key sk is extracted in the verification phase 1 and is authenticated by the signature in the verification phase 2. In the verification phase 2, the secret key sk received in the verification phase 1 is encrypted in addition to the authentication. This is because it can be used for communication and cryptographic protocols. In other words, in this case, the secret key that is simply encrypted and stored is extracted.
- the ciphertext verification system includes a registered data generation device 100, a storage device 200, a data verification request device 300, and a data verification determination device 400.
- the entity that uses the registered data generation device 100 and the data verification request device 300 is a client.
- An entity that has the storage device 200 and uses the data collation determination device 400 is a server.
- the registered data generation device 100 is realized as a first client
- the data matching request device 300 is realized as a second client.
- the combination of the storage device 200 and the data collation determination device 400 operates as a server.
- the first client and the second client may be separate clients or the same one client.
- the registration data generation device 100 includes a key generation unit 101, an encryption unit 102, and a registration data generation unit 103.
- the key generation unit 101 receives a security parameter and outputs a verification key and a secret key.
- the encryption unit 102 receives the input data to be concealed, the secret key and the verification key, and outputs ciphertext (encrypted data).
- the registration data generation unit 103 receives a verification key and ciphertext (encrypted data) as input, and input data to be verified corresponding to encrypted data output from a data verification request generation unit 301 (described later) of the data verification requesting device 300 is received. Then, the input data to be concealed input to the encryption unit 102 and registration data that is data for determining that the Hamming distance is within a certain number are output.
- the registration data includes encrypted data.
- the ciphertext output by the encryption unit 102 of the registered data generation device 100 is c1 as the first ciphertext obtained by encrypting the first input data m1 with the first key k1, and the second input data.
- c2 is the second ciphertext obtained by encrypting m2 with the second key k2
- the sum (c1 + c2) of the first ciphertext c1 and the second ciphertext c2 is the input data (m1 + m2) Is encrypted with the key (k1 + k2).
- the storage device 200 includes an identifier management unit 201 and a ciphertext storage unit 202.
- the storage device 200 stores the registration data output by the registration data generation device 100, and stores an identifier corresponding to the registration data at the time of verification of the encrypted data.
- the identifier management unit 201 manages an identifier that uniquely identifies registration data input from the registration data generation device 100.
- the ciphertext storage unit 202 stores a registration template including the identifier issued by the identifier management unit 201 and the registration data received from the registration data generation device 100.
- the data verification request device 300 includes a data verification request generation unit 301, a verification result reception unit 302, and a data restoration unit 303.
- the data collation request generation unit 301 receives the input data to be collated, and outputs a data collation request in which the input data to be collated is concealed.
- the verification result receiving unit 302 receives the verification result generated by the data verification determination device 400 in response to the data verification request.
- the data restoration unit 303 receives the collation result received and generates restoration data.
- the data matching determination device 400 includes a registered data receiving unit 401, a data matching request receiving unit 402, a data matching determination unit 403, and a matching result generation unit 404.
- the registration data receiving unit 401 receives a registration template stored in the storage device 200.
- the data verification request receiving unit 402 receives a data verification request from the data verification request device 300.
- the data collation determination unit 403 receives the registration template and the data collation request, collates the collation data that is concealed as the data collation request and the registration data that is concealed as the encryption data, and outputs a determination result.
- the verification result generation unit 404 receives the determination result and the registration template, and outputs a verification result including a part or all of the registration template corresponding to the determination result.
- the collation result includes at least a registration template corresponding to the determination result, or includes a symbol or a message indicating that there is no registration template corresponding to the determination result.
- the operation of the ciphertext verification system according to the first embodiment of the present invention is roughly divided into two phases, that is, a data registration phase and a ciphertext verification phase.
- the data registration phase is a phase in which the input data to be concealed is input to the registration data generation device 100, the input data to be concealed is encrypted, and is registered in the storage device 200.
- the input data to be verified input to the data verification request device 300 is encrypted, and the data verification request generated at that time is close to the registered data in the storage device 200 by the data verification determination device 400.
- This is a phase for determining whether the text is plaintext (having a small Hamming distance).
- a security parameter is first input to the key generation unit 101 of the registration data generation device 100, and a secret key and a verification key are generated (step A1).
- the input data to be concealed, the secret key, and the verification key are input to the encryption unit 102 of the registration data generation device 100 (step A2).
- the encryption unit 102 calculates encrypted data obtained by encrypting the input data from the input data that has been input and the secret key (step A3).
- the registration data generation unit 103 of the registration data generation device 100 generates registration data from the encrypted data and the verification key, and sends it to the storage device 200 (step A4).
- the identifier management unit 201 of the storage device 200 that has received the registration data issues an identifier for uniquely identifying the registration data with respect to the registration data, and stores it as a registration template in the ciphertext storage unit 202 together with the registration data. (Step A5).
- step B1 input data to be verified is input to the data verification requesting device 300 (step B1).
- step B2 the data verification request generation unit 301 generates a data verification request obtained by encrypting the input data, and sends the data verification request to the data verification determination device 400 (step B2).
- the registration data receiving unit 401 of the data matching determination apparatus 400 receives the registration data and its identifier stored in the storage device 200 (step B3).
- the data verification request receiving unit 402 receives a data verification request from the data verification request device 300 (step B4).
- the data collation determination unit 403 performs collation between the registration data and the identifier thereof, and the data collation request as input, and collation data that is concealed as the data collation request and registration data that is concealed as the encryption data.
- the determination result is output (step B5).
- the collation result generation unit 404 receives the determination result and outputs a collation result including a part or all of the registered template corresponding to the determination result (step B6).
- the collation result includes at least a registration template corresponding to the determination result, or includes a symbol or a message indicating that there is no registration template corresponding to the determination result.
- the verification result receiving unit 302 of the data verification request device 300 receives the verification result (step B7).
- the collation result is a symbol or a message that means that there is no registered template corresponding to the determination result, the collation is stopped as a non-collation. If not, go to the next step.
- the data restoration unit 303 receives the collation result, restores the data included in the collation result, and outputs the restoration result (step B8).
- the first embodiment it is possible to ensure that an accepted data collation request cannot be made unless the collation target input data close to the concealment target input data is used. This is because only the person who knows the input data to be concealed can extract the secret key, and only the person who knows the secret key can generate the accepted verification key. As a result, even when collation processing is performed a plurality of times or when the owner of the database performing the collation processing is malicious, the input data to be collated sent by the user at the time of collation is the collation source data (confidential target input data). It is possible to prevent generation without knowing.
- each device may be implemented in one computer system, or each device may be configured as a single unit. Good.
- each unit in each device 100, 200, 300, 400 may be configured by one single device.
- the processing of each unit of each device in FIG. 1 may be realized by a program executed by a computer.
- the difference between the ciphertext matching system described in the first embodiment of the present invention and the ciphertext matching system described in the second embodiment of the present invention is the difference between the entity that receives the matching result corresponding to the data matching request. It is a difference.
- the ciphertext matching system described in the first embodiment of the present invention only the entity that made the data matching request has obtained the result.
- an entity that performs verification processing in response to a data verification request can also obtain the result.
- the ciphertext verification system includes a registered data generation device 100, a storage device 200, a first data verification request device 300A, and a first data verification determination device 400A.
- the second data collation requesting device 500 and the second data collation determining device 600 are included.
- the entity that uses the registered data generation device 100, the first data verification request device 300A, and the second data verification request device 500 is a client.
- An entity that has the storage device 200 and uses the first data matching determination device 400A and the second data matching determination device 600 is a server.
- the registered data generation device 100 is realized as a first client
- a combination of the first data verification request device 300A and the second data verification request device 500 is realized as a second client.
- a combination of the storage device 200, the first data matching determination device 400A, and the second data matching determination device 600 operates as a server.
- the first client and the second client may be separate clients or the same one client.
- the registration data generation device 100 includes a key generation unit 101, an encryption unit 102, and a registration data generation unit 103.
- the key generation unit 101 receives a security parameter and outputs a signature verification key and a signature key.
- the encryption unit 102 receives the input data to be concealed, the signature key and the verification key, and outputs ciphertext (encrypted data).
- the registration data generation unit 103 receives a signature verification key and ciphertext as input, and inputs a verification target corresponding to encrypted data output by a first data verification request generation unit 301A (described later) of the first data verification request device 300A.
- the registration data which is data for determining that the data to be concealed input to the encryption unit 102 and the Hamming distance are within a certain number, is output.
- the ciphertext output by the encryption unit 102 of the registered data generation device 100 is c1 as the first ciphertext obtained by encrypting the first input data m1 with the first key k1, and the second input data.
- c2 is the second ciphertext obtained by encrypting m2 with the second key k2
- the sum c1 + c2 of the first ciphertext c1 and the second ciphertext c2 is the key to the input data (m1 + m2)
- the ciphertext is encrypted with (k1 + k2).
- the storage device 200 includes an identifier management unit 201 and a ciphertext storage unit 202.
- the storage device 200 stores the registration data output by the registration data generation device 100, and stores an identifier corresponding to the registration data at the time of verification of the encrypted data.
- the identifier management unit 201 manages an identifier that uniquely identifies registration data input from the registration data generation device 100.
- the ciphertext storage unit 202 stores an identifier issued by the identifier management unit 201 and a registration template including registration data received from the registration data generation device 100.
- the first data verification request device 300A includes a first data verification request generator 301A.
- the first data collation request generation unit 301A receives input data to be collated and outputs a first data collation request in which the input data is concealed.
- the first data matching determination device 400A includes a registered data receiving unit 401A, a first data matching request receiving unit 402A, a first data matching determination unit 403A, and a first matching result generation unit 404A. It consists of.
- the registration data receiving unit 401A receives the registration template stored in the storage device 200.
- First data verification request receiving unit 402A receives the first data verification request from first data verification request device 300A.
- First data collation determination unit 403A receives the registration template and the first data collation request as input, and collates the collation data concealed as the first data collation request with the registration data concealed as the encryption data. , Output the judgment result.
- First collation result generation unit 404A receives a determination result and a registration template as input, and includes a message M for uniquely identifying a collation request, and a first collation result including a part or all of the registration template corresponding to the determination result Is output.
- the first matching result includes at least a registration template corresponding to the determination result, or includes a symbol or a message meaning that there is no registration template corresponding to the determination result.
- the second data collation requesting device 500 includes a first collation result receiving unit 501, a decrypting unit 502, and a second data collation request generating unit 503.
- the first verification result receiving unit 501 receives the message M and the first verification result from the first data verification determination device 400A.
- the decryption unit 502 receives the first collation result and the input data to be collated, decrypts the encrypted data included in the first collation result, and outputs the decryption result.
- Second data collation request generation unit 503 receives the decryption result and message M included in the first collation result, and generates a second data collation request.
- the second data matching determination apparatus 600 includes a registered data receiving unit 601, a second data matching request receiving unit 602, a second data matching determination unit 603, and a second matching result generation unit 604. It consists of.
- the registration data receiving unit 601 receives a registration template stored in the storage device 200.
- the second data verification request receiving unit 602 receives the second data verification request from the second data verification request device 500.
- the second data matching determination unit 603 receives the registered template and the second data matching request as input and generates a second data matching determination.
- Second collation result generation unit 604 receives the second data collation determination and the registered template, and outputs a second collation result.
- the operation of the ciphertext verification system according to the second embodiment of the present invention is roughly divided into two phases, a data registration phase and a ciphertext verification phase.
- the data registration phase is a phase in which the input data to be concealed is input to the registration data generation device 100, the input data to be concealed is encrypted, and is registered in the storage device 200.
- the ciphertext verification phase encrypts the input data to be verified input to the first data verification requesting device 300A and the second verification requesting device 500, and the first data verification request and the second data verification request generated at that time Is a phase in which the first data matching determination device 400A and the second data matching determination device 600 determine whether the plain text is close to the registered data in the storage device 200 (having a small Hamming distance).
- the operation in each phase will be described in detail.
- a security parameter is first input to the key generation unit 101 of the registration data generation device 100, and a signature key and a verification key are generated (step A1).
- the input data to be concealed, the signature key, and the verification key are input to the encryption unit 102 of the registered data generation apparatus 100 (step A2).
- the encryption unit 102 calculates encrypted data obtained by encrypting the input data from the input data that has been input and the signature key (step A3).
- the registration data generation unit 103 of the registration data generation device 100 generates registration data from the encrypted data and the verification key, and sends it to the storage device 200 (step A4).
- the identifier management unit 201 of the storage device 200 that has received the registration data issues an identifier for uniquely identifying the registration data with respect to the registration data, and stores the identifier in the ciphertext storage unit 202 together with the registration data (step). A5).
- step B1 input data to be verified is input to the first data verification requesting device 300A (step B1).
- step B2 the first data verification request generation unit 301A generates a first data verification request obtained by encrypting input data, and sends the first data verification request to the first data verification determination device 400A (step B2).
- the registration data reception unit 401A of the first data collation determination device 400A receives the registration data and its identifier stored in the storage device 200 (step B3).
- the first data verification request receiving unit 402A receives the first data verification request from the first data verification request device 300A (step B4).
- the first data collation determination unit 403A receives the registration data, its identifier, and the first data collation request as input, and the collation data concealed as the first data collation request and the registration concealed as encrypted data. The data is collated and the determination result is output (step B5).
- the first matching result generation unit 404A receives the determination result and outputs a first matching result including a message M for uniquely specifying the matching request and a part or all of the registered template corresponding to the determination result. (Step B6).
- the first matching result includes at least a registration template corresponding to the determination result, or includes a symbol or a message meaning that there is no registration template corresponding to the determination result.
- first collation result receiving unit 501 of second data collation request apparatus 500 receives message M and the first collation result (step B7).
- the first collation result is a symbol or a message meaning that there is no registered template corresponding to the determination result
- the first collation result is stopped as a collation. If not, go to the next step.
- the decryption unit 502 receives the first collation result, decrypts the encrypted data included in the first collation result, and outputs the decryption result (step B8).
- the second data verification request generation unit 503 receives the decryption result and the message M included in the first verification result, generates a second data verification request, and sends it to the second data verification determination device 600. (Step B9).
- the registration data receiving unit 601 of the second data collation determination device 600 receives the registration data and the identifier stored in the storage device 200 (step B10).
- the second data verification request receiving unit 602 receives the second data verification request (step B11).
- the second data collation determination unit 603 receives the second data collation request and the registered data, and generates a second data collation determination (step B12).
- the second collation result generation unit 604 receives the second data collation determination and the identifier, and outputs a second collation result (step B13).
- the second embodiment it is possible to ensure that an accepted data collation request cannot be made unless the collation target input data close to the concealment target input data is used. This is because only the person who knows the input data to be concealed can extract the signing key, and only the person who knows the signing key can generate the accepted verification key. As a result, even when collation processing is performed a plurality of times or when the owner of the database performing the collation processing is malicious, the input data to be collated sent by the user at the time of collation is the collation source data (confidential target input data). It is possible to prevent generation without knowing.
- the registration data generation device 100, the storage device 200, the first data verification request device 300A, the first data verification determination device 400A, the second data verification request device 500, and the second data verification determination device 600 of FIG. You may mount in a computer system, or you may comprise each apparatus as a single-piece
- the first example is an example of the first embodiment of the present invention.
- the operation of the ciphertext verification system according to the first embodiment of the present invention is roughly divided into two phases, that is, a data registration phase and a ciphertext verification phase.
- security parameter k is input to key generation unit 101 of registration data generating apparatus 100, and secret key x and verification key g ⁇ x are generated (step C1). ).
- the security parameter k is a parameter that determines the length of the secret key.
- G ⁇ x means g raised to the power x.
- the verification key is g ⁇ x.
- H (x) may be used by using the hash function H.
- data that can confirm the uniqueness of the secret key x may be used as the verification key.
- the input data z to be concealed, the secret key x, and the verification key g ⁇ x are input to the encryption unit 102 of the registration data generating apparatus 100 (step C2).
- the input data z to be concealed is N-bit data.
- the encryption unit 102 performs BCH error correction coding on the secret key x from the input data z and the secret key x, and generates ENC (x).
- the encryption unit 102 generates the code ENC (x) of the secret key x, but may instead generate a seed code for generating the secret key x.
- the seed is preferably about 80 bits.
- the identifier management unit 201 of the storage device 200 that has received the registration data issues an identifier ID for uniquely identifying the registration data with respect to the registration data T, and stores it in the ciphertext storage unit 202 together with the registration data. (Step C5).
- step D1 input data z ′ to be verified is input to the first data verification requesting device 300 (step D1).
- the registration data receiving unit 401 of the data matching determination device 400 uses the registration data stored in the storage device 200 and its identifiers ⁇ (T_1, ID_1), (T_2, ID_2) ..., (T_m, ID_m) ⁇ .
- T_i (T_i [0], T_i [1]) is registration data (registration template) generated by the registration data generation device 100.
- T_i (T_i [0], T_i [1]) is registration data (registration template) generated by the registration data generation device 100.
- T_i, ID_i) i is 1 to m).
- the data verification request receiving unit 402 receives the data verification request Q [0] from the data verification request device 300 (step D4).
- DEC (x) means BCH decoding of x.
- the concealment target input data z input when generating the registration data T_i is close to the verification target input data z ′ input when generating the data verification request Q [0] (in terms of Hamming distance).
- the result of (Equation 1) is x (+) R.
- the data matching determination unit 403 outputs, as a determination result, a set ⁇ ID_i ⁇ of identifiers ID_i corresponding to the registration data T_i [0] whose result cannot be decoded (step D5).
- the collation result generation unit 404 receives the determination result ⁇ ID_i ⁇ , and ⁇ (DEC (T_i [0] (+) Q [0]), T_i [1]) ⁇ corresponding to the determination result ⁇ ID_i ⁇ Is output as a verification result (step D6).
- the collation result may be registered data T_i [0] as described in the second embodiment below. In that case, the following (Formula 2) is replaced with (Formula 2) described in the second embodiment.
- the collation result receiving unit 302 of the data collation requesting apparatus 300 receives ⁇ (DEC (T_i [0] (+) Q [0]), T_i [1]) ⁇ as the collation result (step D7).
- the subsequent operation is stopped on the assumption that the encrypted data corresponding to the collation target input data z 'is not registered. If not, proceed to the following steps.
- the collation target input data z 'close to the concealment target input data z is used. This is because only the person who knows the input data z to be concealed can retrieve the secret key x, and only the person who knows the secret key x can generate the accepted verification key g ⁇ x. It is. As a result, even if the matching process is performed multiple times, or even if the database owner that performs the matching process is malicious, the matching target input data z ′ sent by the user at the time of matching is changed to the matching source data (the confidential target input). Data) z can be prevented from being generated without knowing it.
- the second example is an example of the second embodiment of the present invention.
- the electronic signature is composed of three algorithms (signature key generation, signature generation, signature verification). Each will be described below.
- the signature key generation algorithm is a probabilistic algorithm that generates a signature key sk and a verification key vk with the security parameter k as an input, and is described as (sk, vk) ⁇ SigKeyGen (1 ⁇ k).
- the signature generation algorithm is a probabilistic algorithm that receives the signature key sk and the signature target message M and outputs a signature ⁇ for M, and is expressed as ( ⁇ , M) ⁇ Sign (sk, M).
- the signature verification algorithm (Verify) is a deterministic algorithm that receives the verification key vk, signature ⁇ , and signature target message M, and outputs the verification result of the signature, acceptance or rejection, ⁇ accepted, rejected ⁇ ⁇ Verify (vk, ⁇ , M).
- the digital signature method accepts an arbitrary message M, a signature key sk generated by a signature key generation algorithm SigKeyGen (1 ⁇ k), and a verification key vk with probability 1 ⁇ Verify (vk, Sign (sk, M )).
- the electronic signature method generates an accepted signature for an arbitrary attacker who does not know the signature key sk even if the attacker can obtain multiple signatures and message pairs. Satisfies the forgery of being unable to do so.
- Sch Schnorr signatures Cramer-Shoup signatures, etc. are known as electronic signatures that satisfy the inability to forge. Since the present invention operates regardless of the type of signature scheme as long as the forgery is impossible, it will be described as a general electronic signature scheme.
- the operation of the ciphertext verification system according to the second embodiment of the present invention is roughly divided into two phases, that is, a data registration phase and a ciphertext verification phase.
- the security parameter k is input to the key generation unit 101 of the registration data generation apparatus 100, and the signature key sk and verification are performed by the signature key generation algorithm SigKeyGen (1 ⁇ k).
- a key vk is generated (step C1).
- the security parameter k is a parameter that determines the length of the signature key of the electronic signature.
- the input data z to be concealed, the signature key sk, and the verification key vk are input to the encryption unit 102 of the registration data generating apparatus 100 (step C2).
- the input data z to be concealed is N-bit data.
- the encryption unit 102 performs BCH error correction coding on the signature key sk from the input data z and the signature key sk, and generates ENC (sk).
- the encryption unit 102 generates the code ENC (sk) of the signature key sk, but may instead generate a seed code for generating the signature key sk.
- the seed is preferably about 80 bits.
- the identifier management unit 201 of the storage device 200 that has received the registration data issues an identifier ID for uniquely identifying the registration data with respect to the registration data T, and stores it in the ciphertext storage unit 202 together with the registration data. (Step C5).
- step D1 input data z ′ to be verified is input to first data verification requesting apparatus 300A (step D1).
- the registration data receiving unit 401A of the first data matching determination apparatus 400 registers the registration data stored in the storage device 200 and its identifier ⁇ (T_1, ID_1), (T_2, ID_2) ..., (T_m, ID_m). ⁇ Is received (step D3).
- T_i (T_i [0], T_i [1]) is registration data (registration template) generated by the registration data generation device 100.
- T_i, ID_i) i is 1 to m).
- the first data verification request receiving unit 402A receives the first data verification request Q [0] from the first data verification request device 300A (step D4).
- the first data matching determination unit 403A sends the registered data and its identifier ⁇ (T_1, ID_1), (T_2, ID_2)... (T_m, ID_m) ⁇ and the first data matching request Q [0].
- DEC (x) means BCH decoding of x.
- the concealment target input data z input when generating the registration data T_i is close to the verification target input data z ′ input when generating the first data verification request Q [0] (meaning of Hamming distance)
- the value of (Equation 1) is sk (+) R.
- the first data collation determination unit 403A outputs a set ⁇ ID_i ⁇ of identifiers ID_i corresponding to the registered data T_i [0] whose result cannot be decoded as a determination result (step D5).
- the first collation result generation unit 404A outputs the registration data T_i [0] as the first collation result, but the calculation result DEC (T_i [0] of (Equation 1) is the same as in the first embodiment. ] (+) Q [0]). In that case, the following (Formula 2) is the same as (Formula 2) described in the first embodiment.
- first collation result receiving unit 501 of second data collation request device 500 receives message M and first collation result ⁇ T_i [0] ⁇ as the first collation result (step) D7).
- the subsequent operation is stopped assuming that the registration data corresponding to the collation target input data z ′ is not registered. If not, proceed to the subsequent steps.
- the registration data reception unit 601 of the second data collation determination device 600 receives the registration data and identifiers ⁇ (T_1, ID_1),..., (T_m, ID_m) ⁇ stored in the storage device 200 (steps). D10).
- the second data verification request receiving unit 602 receives the second data verification request Q [1] (step D11).
- the registration template ⁇ (T_1, ID_1),..., (T_m, ID_m) ⁇ is input to the second data matching determination unit 603, but is included in the first data matching result. Only registered data may be used.
- the second collation result generation unit 604 receives the second data collation determination ⁇ i ⁇ , the registration data and the identifiers ⁇ (T_1, ID_1),..., (T_m, ID_m) ⁇ as inputs, A set ⁇ ID_i ⁇ of identifiers ID_i corresponding to i included in the collation determination ⁇ i ⁇ is output as a second collation result (step D13).
- the input of the second collation result generation unit 604 is the registration data and the identifier ⁇ (T_1, ID_1),..., (T_m, ID_m) ⁇ , but only the registration data included in the first data collation result is used. It doesn't matter.
- the third example is also an example of the second embodiment of the present invention.
- Public key cryptography consists of three algorithms (key generation, encryption, decryption). Each will be described below.
- the key generation algorithm is a probabilistic algorithm for generating the secret key sk and the encryption key pk with the security parameter k as an input, and is described as (sk, pk) ⁇ KeyGen (1 ⁇ k).
- the encryption algorithm (Encrypt) is a probabilistic algorithm that takes the public key pk and the encryption target message M as input and outputs a ciphertext cipher for M, and is described as cipher ⁇ Encrypt (pk, M).
- the decryption algorithm (Decrypt) is a deterministic algorithm that outputs the plaintext M ′ with the secret key sk and the ciphertext cipher as inputs, and is denoted as M ′ ⁇ Decrypt (sk, cipher).
- the public key cryptosystem uses M ⁇ Decrypt (sk, Encrypt (pk, M) with probability 1 for any message M, secret key sk generated by the key generation algorithm KeyGen (1 ⁇ k), and public key pk. )). Also, for any attacker who does not know the secret key sk, no information about the encrypted data can be obtained even if the attacker can obtain multiple plaintexts for any ciphertext. , Satisfying the property (indistinguishability against selective ciphertext attack).
- C Cramer-Shoup cryptography is known as public key cryptography that satisfies the indistinguishability against selected ciphertext attacks.
- the present invention will be described as a general public key cryptosystem because it operates regardless of the type of public key cryptosystem as long as it satisfies the indistinguishability against a selected ciphertext attack.
- a third embodiment of the present invention using a public key cryptosystem will be described.
- the operation of the ciphertext verification system according to the third embodiment of the present invention is roughly divided into two phases, that is, a data registration phase and a ciphertext verification phase.
- security parameter k is input to key generation unit 101 of registration data generation device 100, and secret key sk and public key are generated by key generation algorithm KeyGen (1 ⁇ k).
- pk is generated (step C1).
- the security parameter k is a parameter that determines the length of the secret key for public key cryptography.
- the input data z to be concealed, the secret key sk, and the public key pk are input to the encryption unit 102 of the registration data generating apparatus 100 (step C2).
- the input data z to be concealed is N-bit data.
- the encryption unit 102 generates ENC (sk) from the input data z and the secret key sk by BCH error correction encoding of the secret key sk.
- the encryption unit 102 generates the code ENC (sk) of the secret key sk, but may alternatively generate a seed code for generating the secret key sk.
- the seed is preferably about 80 bits.
- the identifier management unit 201 of the storage device 200 that has received the registration data issues an identifier ID for uniquely identifying the registration data with respect to the registration data T, and stores it in the ciphertext storage unit 202 together with the registration data. (Step C5).
- step D1 input data z ′ to be verified is input to first data verification requesting device 300A (step D1).
- the registration data receiving unit 401A of the first data matching determination apparatus 400A registers the registration data stored in the storage device 200 and its identifier ⁇ (T_1, ID_1), (T_2, ID_2) ..., (T_m, ID_m). ⁇ Is received (step D3).
- T_i (T_i [0], T_i [1]) is registration data (registration template) generated by the registration data generation device 100.
- T_i, ID_i) i is 1 to m).
- the first data verification request receiving unit 402A receives the first data verification request Q [0] from the first data verification request device 300A (step D4).
- the first data matching determination unit 403A sends the registered data and its identifier ⁇ (T_1, ID_1), (T_2, ID_2)... (T_m, ID_m) ⁇ and the first data matching request Q [0].
- DEC (x) means BCH decoding of x.
- the concealment target input data z input when generating the registration data T_i is close to the verification target input data z ′ input when generating the first data verification request Q [0] (meaning of Hamming distance)
- the value of (Equation 1) is sk (+) R.
- the first data collation determination unit 403A outputs a set ⁇ ID_i ⁇ of identifiers ID_i corresponding to the encrypted data T_i [0] of the registration data whose result cannot be decrypted as a determination result (step D5).
- the first matching result generation unit 404A receives the determination result ⁇ ID_i ⁇ as an input, randomly selects a message M that uniquely identifies the matching request, and discloses the registration data corresponding to the message M and the determination result ⁇ ID_i ⁇ .
- the key set ⁇ T_i [1] ⁇ is output as the first verification result (step D6).
- the first verification result generation unit 404A outputs the public key T_i [1] of the registration data as the first verification result, but the calculation result DEC (Equation 1) (equation 1) is the same as in the first embodiment. T_i [0] (+) Q [0]).
- the following (Formula 2) is the same as (Formula 2) described in the first embodiment.
- first collation result receiving unit 501 of second data collation requesting device 500 receives message M and first collation result ⁇ T_i [1] ⁇ as the first collation result (Ste D7).
- the subsequent operation is stopped on the assumption that the encryption data corresponding to the collation target input data z 'is not registered. If not, proceed to the subsequent steps.
- the registration data reception unit 601 of the second data collation determination device 600 receives the registration data and identifiers ⁇ (T_1, ID_1),..., (T_m, ID_m) ⁇ stored in the storage device 200 (steps). D10).
- the second data verification request receiving unit 602 receives the second data verification request Q [1] (step D11).
- registered data ⁇ (T_1, ID_1),..., (T_m, ID_m) ⁇ is input to the second data matching determination unit 603, but the first data matching result ⁇ T_i Only registered data included in [1] ⁇ may be used.
- the second collation result generation unit 604 receives the second data collation determination ⁇ i ⁇ , the registration data and the identifiers ⁇ (T_1, ID_1),..., (T_m, ID_m) ⁇ as inputs, A set ⁇ ID_i ⁇ of identifiers ID_i corresponding to i included in the collation determination ⁇ i ⁇ is output as a second collation result (step D13).
- the input of the second collation result generation unit 604 is the registration data and the identifiers ⁇ (T_1, ID_1),... Only registered data may be used.
- the accepted data collation requests Q [0] and Q [1] cannot be made. Can be guaranteed. This is because only the person who knows the input data z to be concealed can extract the secret key sk, and only the person who knows the secret key sk can generate the accepted public key pk. .
- the matching target input data z ′ sent by the user at the time of matching is changed to the matching source data (the confidential target input). Data) z can be prevented from being generated without knowing it.
- the present invention uses a message authentication code (MAC) after exchanging keys. It is also possible to perform confirmation using In addition, any method can be applied as long as the verification requester can confirm that x obtained by the verification requester is a correct value.
- MAC message authentication code
- the method described in the present invention is a program that can be executed by a computer, such as a flexible disk, a magnetic disk such as a hard disk, an optical disk such as a CD-ROM or DVD, a magneto-optical disk (MO), a semiconductor memory, or the like. It can be stored in a medium and distributed.
- a computer such as a flexible disk, a magnetic disk such as a hard disk, an optical disk such as a CD-ROM or DVD, a magneto-optical disk (MO), a semiconductor memory, or the like. It can be stored in a medium and distributed.
- the storage format may be any form.
- an operating system running on a computer middleware such as database management software, network software, or the like may execute a part of each process based on an instruction of a program installed in the computer from a recording medium.
- the storage medium in the present invention is not limited to a medium independent of a computer, but also includes a storage medium in which a program transmitted via a LAN or the Internet is downloaded and stored or temporarily stored.
- the number of storage media is not limited to one, and the case where the processing in the above embodiment is executed from a plurality of media is also included in the storage media in the present invention, and the media configuration may be any configuration.
- the computer executes each process based on a program stored in a recording medium, and may have any configuration such as a device including a personal computer or a system in which a plurality of devices are connected to a network. .
- the computer in the present invention is not limited to a personal computer, but includes an arithmetic processing unit included in an information processing device, and is a device or device capable of realizing the functions of the present invention by a program.
- the present invention is not limited to the above-described embodiment as it is, and can be embodied by modifying the constituent elements without departing from the scope of the invention in the implementation stage.
- Various inventions can be formed by appropriately combining a plurality of components. For example, some components may be deleted from all the components shown in the embodiment. Moreover, you may combine a component suitably.
- An encryption unit that encrypts the input data to be concealed using a secret key and calculates the encrypted data
- a registration data generation unit that generates registration data from the encrypted data and the verification key
- a storage device that stores the registration data as a registration template in a storage unit together with an identifier for uniquely identifying the registration data
- a data verification request generating unit that generates a data verification request by encrypting input data to be verified using a random number
- a data collation determination unit that collates the registered template stored in the storage unit with the data collation request and outputs a determination result
- a verification result generation unit that outputs a verification result including a part or all of the registered template corresponding to the determination result
- a data restoration unit for restoring data from the collation result and outputting the restoration result
- Ciphertext matching system including
- Appendix 2 The ciphertext verification system according to appendix 1, further comprising a key generation unit that generates the secret key and the verification key from security parameters.
- the encryption unit calculates the encryption data by taking an exclusive OR of an error correction code generated by error correction encoding the secret key and the input data to be concealed,
- the data collation request generation unit generates an exclusive OR of the input data to be collated and an error correction code obtained by error correction encoding the random number, and generates the data collation request.
- the ciphertext verification system according to Supplementary Note 1 or 2.
- Appendix 4 The ciphertext matching system according to appendix 3, wherein the data matching determination unit performs error correction decoding on an exclusive OR of the encrypted data included in the registration template and the data matching request, and outputs the determination result.
- Appendix 5 The ciphertext verification system according to appendix 4, wherein the verification result generation unit outputs, as the verification result, a result obtained by adding the verification key included in the registered template corresponding to the determination result to the determination result.
- the data restoration unit calculates an exclusive OR of the determination result included in the collation result and the random number, obtains the decryption result, and verifies the decryption result using the verification key.
- Appendix 7 The ciphertext collation system according to appendix 4, wherein the collation result generation unit outputs the cipher data included in the registration template corresponding to the determination result as the collation result.
- Appendix 8 The ciphertext verification system according to appendix 7, wherein the data restoration unit performs error correction decoding on an exclusive OR of the verification result and the input data to be verified to obtain the decryption result.
- An encryption unit that encrypts the input data to be concealed using the signature key and calculates the encrypted data;
- a registration data generation unit that generates registration data from the encrypted data and the verification key;
- a storage device that stores the registration data as a registration template in a storage unit together with an identifier for uniquely identifying the registration data;
- a first data verification request generating unit that generates a first data verification request in which input data to be verified is encrypted using a random number;
- a first data collation determination unit that collates the registered template stored in the storage unit with the first data collation request and outputs a determination result;
- a first matching result generation unit that outputs a combination of a randomly selected message and a part or all of the registered template corresponding to the determination result as a first matching result;
- a decoding unit for decoding the first matching result and outputting the decoding result;
- a second data collation request generator for generating a second data collation request from the decryption result and the message included in the first collation result;
- appendix 10 The ciphertext verification system according to appendix 9, further comprising a key generation unit that generates the signature key and the verification key from a security parameter.
- the encryption unit calculates the encryption data by taking an exclusive OR of the error correction code generated by error correction encoding the signature key and the input data to be concealed,
- the first data verification request generation unit generates the first data verification request by taking an exclusive OR of the input data to be verified and an error correction code obtained by error correction encoding the random number.
- the ciphertext verification system according to appendix 9 or 10.
- the first data verification determination unit performs error correction decoding on the exclusive OR of the encrypted data included in the registration data of the registration template and the first data verification request, and the result is not decryptable.
- the first verification result generation unit outputs a combination of the randomly selected message and the encrypted data included in the registration data of the registration template corresponding to the determination result as the first verification result.
- the ciphertext matching system according to attachment 12.
- Appendix 14 The ciphertext collation according to appendix 13, wherein the decryption unit performs error correction decryption on an exclusive OR of the encrypted data included in the first collation result and the input data to be collated, and obtains the decryption result system.
- Appendix 16 The ciphertext verification system according to appendix 15, wherein the decryption unit calculates an exclusive OR of the determination result included in the first verification result and the random number to obtain the decryption result.
- the second data verification request generation unit generates a signature of the decryption result and the message included in the first verification result, and generates the second verification request.
- the second data collation determination unit verifies the signature of the second collation request, the message, and the registration data of the registration template recorded in the storage unit.
- the ciphertext verification system according to appendix 17, wherein a set of numbers is generated as the second data verification determination.
- An encryption unit that encrypts the input data to be concealed using a secret key and calculates the encrypted data;
- a registration data generation unit that generates registration data from the encrypted data and the public key;
- a storage device that stores the registration data as a registration template in a storage unit together with an identifier for uniquely identifying the registration data;
- a first data verification request generating unit that generates a first data verification request in which input data to be verified is encrypted using a random number;
- a first data collation determination unit that collates the registered template stored in the storage unit with the first data collation request and outputs a determination result;
- a first matching result generation unit that outputs a combination of a randomly selected message and a part or all of the registered template corresponding to the determination result as a first matching result;
- a decoding unit for decoding the first matching result and outputting the decoding result;
- a second data collation request generator for generating a second data collation request from the decryption result and the message included in the first collation result;
- Appendix 22 The ciphertext verification system according to appendix 21, further comprising a key generation unit that generates the secret key and the public key from security parameters.
- the encryption unit calculates the encryption data by taking an exclusive OR of an error correction code generated by error correction encoding the secret key and the input data to be concealed,
- the first data verification request generation unit generates the first data verification request by taking an exclusive OR of the input data to be verified and an error correction code obtained by error correction encoding the random number.
- the ciphertext verification system according to appendix 21 or 22.
- the first data verification determination unit performs error correction decoding on the exclusive OR of the encrypted data included in the registration data of the registration template and the first data verification request, and the result is not decryptable.
- the first verification result generation unit outputs a combination of the randomly selected message and the public key included in the registration data of the registration template corresponding to the determination result as the first verification result;
- the ciphertext matching system according to attachment 24.
- Appendix 26 The ciphertext collation according to appendix 25, wherein the decryption unit performs error correction decryption on an exclusive OR of the public key included in the first collation result and the input data to be collated to obtain the decryption result. system.
- Appendix 28 The ciphertext verification system according to appendix 27, wherein the decryption unit calculates an exclusive OR of the determination result included in the first verification result and the random number to obtain the decryption result.
- the second data collation request generation unit generates the second collation request by encrypting the decryption result and the message included in the first collation result, according to any one of appendices 24 to 28. Ciphertext verification system.
- the second data collation determination unit decrypts the second collation request and the registration data of the registration template recorded in the storage unit, and sets a set of identifier numbers whose results are accepted.
- the ciphertext verification system according to appendix 29, which is generated as the second data verification determination.
- (Appendix 33) 34 The ciphertext matching system according to any one of appendices 1 to 32, wherein the concealment target input data and the collation target input data are biometric information, and the concealment target input data and the collation target input A biometric authentication system for performing biometric authentication by determining whether or not data is similar.
- a first client encrypts input data to be concealed using a secret key, calculates encrypted data, generates registration data from the encrypted data and a verification key, and a server generates the registration data
- a data registration step for storing a registration template in the storage unit together with an identifier for uniquely identifying the registration data
- a second client generates a data verification request by encrypting input data to be verified using a random number, and the server compares the registered template stored in the storage unit with the data verification request.
- Output a determination result, output a collation result including part or all of the registered template corresponding to the determination result, and the second client restores data from the collation result,
- the first client encrypts the input data to be concealed using the signature key, calculates the encrypted data, generates registration data from the encrypted data and the verification key, and the server generates the registration data
- a data registration step for storing the registration data as a registration template in the storage unit together with an identifier for uniquely identifying the registration data
- a second client generates a first data verification request in which input data to be verified is encrypted using a random number, and the server stores the registered template stored in the storage unit and the first data verification request.
- a determination result is output.
- a combination of a randomly selected message and a part or all of the registered template corresponding to the determination result is output as a first verification result.
- a client decrypts the first collation result, outputs a decryption result, generates a second collation request from the decryption result and the message included in the first collation result, and the server 2
- a second data matching determination is generated from the matching request and the registered data of the registered template recorded in the storage unit, and the registration corresponding to the second data matching determination is generated.
- the first client encrypts the input data to be concealed using the secret key, calculates the encrypted data, generates registration data from the encrypted data and the public key, and the server generates the registration data
- a data registration step for storing the registration data as a registration template in the storage unit together with an identifier for uniquely identifying the registration data
- a second client generates a first data verification request in which input data to be verified is encrypted using a random number, and the server stores the registered template stored in the storage unit and the first data verification request.
- a determination result is output.
- a combination of a randomly selected message and a part or all of the registered template corresponding to the determination result is output as a first verification result.
- a client decrypts the first collation result, outputs a decryption result, generates a second collation request from the decryption result and the message included in the first collation result, and the server Generating a second data matching determination from the two matching requests and the registered data of the registered template recorded in the storage unit, and corresponding to the second data matching determination, An identifier of the recording data, and outputs as a second verification result, and the ciphertext verification step, Ciphertext matching method including
- a server storing the registration data as a registration template in a storage unit together with an identifier for uniquely identifying the registration data;
- a first collation result generating step for outputting, as a first collation result, a combination of a message randomly selected by the server and a part or all of the registration template corresponding to the determination result;
- (Appendix 40) An encryption process for encrypting the input data to be concealed using a secret key and calculating the encrypted data; Registration data generation processing for generating registration data from the encrypted data and the verification key; Storing the registration data as a registration template in a storage unit together with an identifier for uniquely identifying the registration data; A data verification request generation process for generating a data verification request in which input data to be verified is encrypted using a random number; A data collation determination process for collating the registration template stored in the storage unit with the data collation request and outputting a determination result; A verification result generation process for outputting a verification result including a part or all of the registered template corresponding to the determination result; Data restoration processing for restoring data from the collation result and outputting the restoration result; A computer-readable recording medium on which a ciphertext matching program is recorded.
- (Appendix 41) An encryption process for encrypting the input data to be concealed using the signature key and calculating the encrypted data; Registration data generation processing for generating registration data from the encrypted data and the verification key; Storing the registration data as a registration template in a storage unit together with an identifier for uniquely identifying the registration data; A first data verification request generation process for generating a first data verification request in which input data to be verified is encrypted using a random number; A first data collation determination process for collating the registered template stored in the storage unit with the first data collation request and outputting a determination result; A first matching result generation process for outputting a combination of a randomly selected message and a part or all of the registered template corresponding to the determination result as a first matching result; A decoding process for decoding the first matching result and outputting the decoding result; A second data collation request generation process for generating a second collation request from the decryption result and the message included in the first collation result; A second data verification determination process for generating a second data verification determination from the
- (Appendix 42) An encryption process for encrypting the input data to be concealed using a secret key and calculating the encrypted data; Registration data generation processing for generating registration data from the encrypted data and the public key; Storing the registration data as a registration template in a storage unit together with an identifier for uniquely identifying the registration data; A first data verification request generation process for generating a first data verification request in which input data to be verified is encrypted using a random number; A first data collation determination process for collating the registered template stored in the storage unit with the first data collation request and outputting a determination result; A first matching result generation process for outputting a combination of a randomly selected message and a part or all of the registered template corresponding to the determination result as a first matching result; A decoding process for decoding the first matching result and outputting the decoding result; A second data collation request generation process for generating a second collation request from the decryption result and the message included in the first collation result; A second data verification determination process for generating a second data verification determination from
- a key generation unit that generates a secret key and a verification key from security parameters;
- An encryption unit that encrypts input data to be concealed using the secret key and calculates encrypted data;
- a registration data generation unit that generates registration data from the encrypted data and the verification key;
- a registration data generation device A registration data generation device.
- An identifier management unit that manages an identifier that uniquely identifies the registration data, using the registration data generated by the registration data generation device according to attachment 43 as an input;
- a storage unit for storing a registration template including the identifier and the registration data;
- a storage device for storing a registration template including the identifier and the registration data.
- a data verification request generating unit that generates a data verification request by encrypting input data to be verified using a random number;
- a collation result receiver for receiving collation results;
- a data restoration unit for restoring data from the collation result and outputting the restoration result;
- a data verification requesting device A data verification request generating unit that generates a data verification request by encrypting input data to be verified using a random number;
- a collation result receiver for receiving collation results;
- a data restoration unit for restoring data from the collation result and outputting the restoration result;
- a data verification requesting device A data verification request generating unit that generates a data verification request by encrypting input data to be verified using a random number;
- a collation result receiver for receiving collation results;
- a data restoration unit for restoring data from the collation result and outputting the restoration result;
- a data verification requesting device A data verification request generating unit that generates a data verification request by encrypting input data to be verified using a random number;
- a registration data receiving unit that receives the registration template stored in the storage device according to attachment 44;
- a data verification request receiving unit that receives the data verification request from the data verification request device according to attachment 45;
- a data collation determination unit that collates the registered template with the data collation request and outputs a determination result;
- a verification result generation unit that outputs a verification result including a part or all of the registered template corresponding to the determination result;
- a data collating apparatus A registration data receiving unit that receives the registration template stored in the storage device according to attachment 44;
- a data verification request receiving unit that receives the data verification request from the data verification request device according to attachment 45;
- a data collation determination unit that collates the registered template with the data collation request and outputs a determination result;
- a verification result generation unit that outputs a verification result including a part or all of the registered template corresponding to the determination result;
- a data collating apparatus
- a key generation unit that generates a signature key and a verification key from security parameters;
- An encryption unit that encrypts input data to be concealed using the signature key and calculates encrypted data;
- a registration data generation unit that generates registration data from the encrypted data and the verification key;
- a registration data generation device A registration data generation device.
- An identifier management unit that manages an identifier that uniquely identifies the registration data, using the registration data generated by the registration data generation device according to attachment 47 as an input;
- a storage unit for storing a registration template including the identifier and the registration data;
- a storage device for storing a registration template including the identifier and the registration data.
- a first data verification request generating unit that generates a first data verification request in which input data to be verified is encrypted using a random number;
- a first verification result receiving unit for receiving the first verification result;
- a decoding unit for decoding the first matching result and outputting the decoding result;
- a second data collation request generating unit that generates a second data collation request from the decryption result and the message included in the first collation result;
- a data verification requesting device
- a registration data receiving unit that receives the registration template from the storage device according to attachment 48;
- a first data verification request receiving unit that receives the first data verification request from the data verification request device according to attachment 49;
- a first data collation determination unit that collates the registered template with the first data collation request and outputs a determination result;
- a first matching result generation unit that outputs a combination of a randomly selected message and a part or all of the registered template corresponding to the determination result as a first matching result; 1st data collation determination apparatus.
- a registration data receiving unit that receives the registration template from the storage device according to attachment 48;
- a second data verification request receiving unit that receives the second data verification request from the data verification request device according to attachment 49;
- a second data matching determination unit that generates a second data matching determination from the second data matching request and the registered data of the registration template;
- a second verification result generation unit that outputs an identifier of the registered data corresponding to the second data verification determination as a second verification result;
- the 2nd data collation determination apparatus which has.
- a key generation unit that generates a secret key and a public key from security parameters;
- An encryption unit that encrypts input data to be concealed using the secret key and calculates encrypted data;
- a registration data generation unit that generates registration data from the encrypted data and the verification key;
- a registration data generation device A registration data generation device.
- An identifier management unit that manages an identifier that uniquely identifies the registration data, using the registration data generated by the registration data generation device according to attachment 52 as an input;
- a storage unit for storing a registration template including the identifier and the registration data;
- a storage device for storing a registration template including the identifier and the registration data.
- a first data verification request generating unit that generates a first data verification request in which input data to be verified is encrypted using a random number;
- a first verification result receiving unit for receiving the first verification result;
- a decoding unit for decoding the first matching result and outputting the decoding result;
- a second data collation request generating unit that generates a second data collation request from the decryption result and the message included in the first collation result;
- a data verification requesting device A data verification request generating unit that generates a first data verification request in which input data to be verified is encrypted using a random number.
- a registration data receiving unit that receives the registration template from the storage device according to attachment 53;
- a first data collation request receiving unit that receives the first data collation request from the data collation requesting device according to appendix 54;
- a first data collation determination unit that collates the registered template with the first data collation request and outputs a determination result;
- a first matching result generation unit that outputs a combination of a randomly selected message and a part or all of the registered template corresponding to the determination result as a first matching result; 1st data collation determination apparatus.
- a registration data receiving unit that receives the registration template from the storage device according to attachment 53;
- a second data collation request receiving unit for receiving the second data collation request from the data collation requesting device according to appendix 54;
- a second data matching determination unit that generates a second data matching determination from the second data matching request and the registered data of the registration template;
- a second verification result generation unit that outputs an identifier of the registered data corresponding to the second data verification determination as a second verification result;
- the 2nd data collation determination apparatus which has.
- a ciphertext verification system comprising a registration data generation device, a storage device, a data verification request device, and a data verification determination device,
- the registration data generation device includes: A key generation unit that receives a security parameter and outputs a secret key and a verification key; and Using the fixed length input data to be concealed and the secret key as input, the first ciphertext encrypted with the first key and the second plaintext encrypted with the second key
- the exclusive OR for each bit of the second ciphertext is the exclusive OR for each bit of the first plaintext and the second plaintext, for each bit of the first key and the second key.
- An encryption unit that outputs a ciphertext such that the ciphertext is encrypted with the exclusive OR of The verification target and the secret key, and the ciphertext as input, the input data to be concealed corresponding to the encrypted data output by the encryption unit is input data to be verified that is input to the data verification request device
- a registration data generation unit that outputs registration data that is data for determining that the Hamming distance is within a certain number,
- the storage device With the registration data output from the registration data generation device as an input, an identifier management unit that manages an identifier that uniquely identifies the registration data;
- the data verification requesting device includes: A data verification request generating unit that outputs the verification target input data and outputs a data verification request that has been concealed to the verification target input data; A verification result receiving unit that receives a verification result generated by the data verification determination device in response to the data verification request; A data restoration unit that restores the
- (Appendix 58) 58 The ciphertext verification system according to appendix 57, wherein the encryption unit of the registration data generation device encodes the secret key sk with a linear error correction code for the secret key sk and plaintext Z. And a ciphertext collating system that outputs the result of calculating the sum of the codeword as the coding result and the plaintext Z on the vector as the ciphertext.
- (Appendix 59) 58 The ciphertext verification system according to appendix 57, wherein the encryption unit of the registered data generation device uses a seed used for generating the secret key sk for the secret key sk and plaintext Z.
- a ciphertext collation characterized by encoding a linear error correction code and calculating the sum of the encoded word codeword and the plaintext Z on the vector as the ciphertext. system.
- a ciphertext verification system comprising a registered data generation device, a storage device, a first data verification request device, a first data verification determination device, a second data verification request device, and a second data verification determination device.
- the registration data generation device includes: A key generation unit that takes a security parameter as an input and outputs a signature verification key and a signature key; Using the fixed length input data to be concealed and the signature key as input, the first plaintext encrypted with the first key and the second plaintext encrypted with the second key.
- the exclusive OR for each bit of the second ciphertext is the exclusive OR for each bit of the first plaintext and the second plaintext, for each bit of the first key and the second key.
- An encryption unit that outputs a ciphertext such that the ciphertext is encrypted with the exclusive OR of Using the verification key, the signature key, and the ciphertext as inputs, the input data to be concealed corresponding to the encrypted data output from the encryption unit is the first data verification request device and the second data verification request.
- a registration data generation unit that outputs registration data that is data for determining that the Hamming distance with the input data to be collated input to the apparatus is within a certain number;
- the storage device With the registration data output from the registration data generation device as an input, an identifier management unit that manages an identifier that uniquely identifies the registration data;
- a storage unit that stores the identifier and a registration template that includes registration data output by the registration data generation device;
- the first data verification requesting device includes: A first data collation request generating unit that outputs the first data collation request in which the collation target input data is concealed with the input data to be collated;
- the first data collation determination device includes: A registration data receiving unit for receiving a registration template stored in the storage device; A first data verification request receiving unit that receives the first data verification request from the first data verification request device; Using the registration template and the first data verification request as input, the verification data that is concealed as the first data verification request and the registration data that is concealed as the encrypted data are collated, and a
- a first data collation determination unit The determination result, the message M that uniquely specifies a matching request using the registration template as input, and part or all of the encryption template corresponding to the determination result, or the registration template corresponding to the determination result does not exist
- a first collation result generation unit that outputs a first collation result including a symbol meaning
- the second data verification requesting device includes: A first verification result receiving unit for receiving the first verification result from the first data verification determination device; A decryption unit that receives the first collation result and the input data to be collated, decrypts the encrypted data included in the first collation result, and outputs the decryption result; A second data collation request generating unit that receives the decryption result and the message M included in the first collation result and generates a second collation request;
- the second data collation determination device includes: A registration data receiving unit for receiving a registration template stored in the storage device; A second data verification request receiving unit for receiving the second verification request from the second data verification request device; A second data matching determination unit that receive
- the ciphertext matching system according to appendix 61 or 62,
- the first verification result includes the message nonce, which is likely to be a different value each time, as a result of calculating the sum of the codeword that is the encoding result of the signature key sk and the plaintext Z.
- the second data verification request includes a signature for the message nonce generated using the signature key sk. Ciphertext verification system characterized by this.
- the ciphertext matching system according to appendix 61 or 62,
- the first verification result is the result of calculating the sum of the codeword that is the encoding result of the signature key sk and the plaintext Z, and the message nonce that is likely to be a different value each time.
- the second data verification request includes a result of decrypting the ciphertext using the signature key sk. Ciphertext verification system characterized by this.
- An example of the use of the present invention is authentication that protects biometric information.
- the input data to be concealed in the data registration phase and the input data to be verified in the ciphertext verification phase are biometric information acquired from fingerprints or veins.
- Whether or not the data is collected from the same person can be determined based on whether or not the hamming distance between the two input data is equal to or less than a certain number, and authentication can be performed.
- the biometric information cannot always stably acquire the same data, but it can be assumed that the data acquired from the same person is similar (data with a small Hamming distance can be acquired). Utilization for certification is considered industrially useful.
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Hardware Design (AREA)
- Software Systems (AREA)
- Quality & Reliability (AREA)
- Mathematical Physics (AREA)
- Algebra (AREA)
- Pure & Applied Mathematics (AREA)
- Probability & Statistics with Applications (AREA)
- Computing Systems (AREA)
- Storage Device Security (AREA)
Abstract
Description
本発明の暗号文照合システムは、照合時にユーザが送出する照合対象の入力データを、乱数を誤り訂正符号化したデータで、暗号化することにより、データ照合要求を生成する。また、データベースに格納される暗号データだけではなく、照合のためにユーザが送出する照合対象の入力データも秘匿強度の高い暗号方式により暗号化される。照合を行うたびに、暗号化に用いる乱数を変更することにより、照合元データ(秘匿対象の入力データ)を知らずに照合時にユーザが送出する照合対象の入力データを生成することが不可能となる。
次に、本発明の第1の実施形態による暗号文照合システムについて図面を参照して詳細に説明する。
図2を参照すると、登録データ生成装置100は、鍵生成部101と、暗号化部102と、登録データ生成部103とから成る。
次に、本発明の動作に関して詳細に説明する。
次に、本発明の第2の実施形態について図面を参照して詳細に説明する。
図7を参照すると、登録データ生成装置100は、鍵生成部101と、暗号化部102と、登録データ生成部103とから成る。
次に、本発明の第2の実施形態の暗号文照合システムの動作に関して詳細に説明する。
DEC(T_i[0](+)Q[0]) ・・・(式1)
を計算する。ここでDEC(x)はxのBCH復号を意味する。登録データT_iを生成する際に入力した秘匿対象の入力データzと、データ照合要求Q[0]を生成する際に入力された照合対象の入力データz’とが近い(ハミング距離の意味で)値であるとき、(式1)の結果はx(+)Rとなる。そうでないときは、復号不可能を意味する記号が出力される。データ照合判定部403は、結果が復号不可能でなかった登録データT_i[0]に対応する識別子ID_iの集合{ID_i}を判定結果として出力する(ステップD5)。
DEC(T_i[0](+)Q[0])(+)R=x ・・・(式2)
を計算する。照合結果{ DEC(T_i[0](+)Q[0])}には(式1)で復号不可能とならなかった要素が含まれているため、(式2)では復号不可能になることはない。
DEC(T_i[0](+)Q[0]) ・・・(式1)
を計算する。ここで、DEC(x)はxのBCH復号を意味する。登録データT_iを生成する際に入力した秘匿対象の入力データzと、第1データ照合要求Q[0]を生成する際に入力された照合対象の入力データz’とが近い(ハミング距離の意味で)値であるとき、(式1)の結果はsk(+)Rとなる。そうでないときは、復号不可能を意味する記号が出力される。第1データ照合判定部403Aは、結果が復号不可能でなかった登録データT_i[0]に対応する識別子ID_iの集合{ID_i}を判定結果として出力する(ステップD5)。
DEC(T_i[0](+)z’)=x’ ・・・(式2)
を計算する(ステップD8)。第1照合結果{T_i[0]}には(式1)で復号不可能とならなかった要素が含まれているため、(式2)では復号不可能になることはない。
Verify(T_i[1], Q[1], M)
を計算する。第2データ照合判定部603は、結果が受理であったiの集合{i}を第2データ照合判定として出力する(ステップD12)。ここで、本第2の実施例では,第2データ照合判定部603に登録テンプレート{(T_1,ID_1), …, (T_m, ID_m)}を入力しているが、第1データ照合結果に含まれる登録データのみを用いても構わない。
DEC(T_i[0](+)Q[0]) ・・・(式1)
を計算する。ここで、DEC(x)はxのBCH復号を意味する。登録データT_iを生成する際に入力した秘匿対象の入力データzと、第1データ照合要求Q[0]を生成する際に入力された照合対象の入力データz’とが近い(ハミング距離の意味で)値であるとき、(式1)の結果はsk(+)Rとなる。そうでないときは、復号不可能を意味する記号が出力される。第1データ照合判定部403Aは、結果が復号不可能でなかった登録データの暗号データT_i[0]に対応する識別子ID_iの集合{ID_i}を判定結果として出力する(ステップD5)。
DEC(T_i[1](+)z’)=x’ ・・・(式2)
を計算する(ステップD8)。第1照合結果{T_i[1]}には(式1)で復号不可能とならなかった要素が含まれているため、(式2)では復号不可能になることはない。
Decrypt (T_i[1], Q[1])
を計算する。第2データ照合判定部603は、結果が受理であったiの集合{i}を第2データ照合判定として出力する(ステップD12)。ここで、本第3の実施例では,第2データ照合判定部603に登録データ{(T_1,ID_1), …, (T_m, ID_m)}を入力しているが、第1データ照合結果{T_i[1]}に含まれる登録データのみを用いても構わない。
また、本発明は、第2の実施例と第3の実施例に記載したように電子署名や公開鍵暗号を用いる以外にも、鍵交換を行った後にメッセージ認証コード(MAC, Message Authentication Codes)を利用して確認を行う方法でもよい。それ以外にも照合要求者が得られたxが正しい値であることを照合処理側で確認できる方法であれば適用可能である。
秘密鍵を用いて秘匿対象の入力データを暗号化して、暗号データを計算する暗号化部と、
前記暗号データと検証鍵とから登録データを生成する登録データ生成部と、
該登録データを、当該登録データを一意に特定するための識別子とともに記憶部に登録テンプレートとして記憶する記憶装置と、
乱数を用いて照合対象の入力データを暗号化したデータ照合要求を生成するデータ照合要求生成部と、
前記記憶部に記憶された前記登録テンプレートと、前記データ照合要求とを照合して、判定結果を出力するデータ照合判定部と、
前記判定結果に対応した前記登録テンプレートの一部または全部を含む照合結果を出力する照合結果生成部と、
前記照合結果からデータを復元して、復元結果を出力するデータ復元部と、
を含む、暗号文照合システム。
セキュリティパラメータから、前記秘密鍵と前記検証鍵とを生成する鍵生成部を更に含む、付記1に記載の暗号文照合システム。
前記暗号化部は、前記秘密鍵を誤り訂正符号化して生成された誤り訂正符号と、前記秘匿対象の入力データとの排他的論理和をとって、前記暗号データを計算し、
前記データ照合要求生成部は、前記照合対象の入力データと、前記乱数を誤り訂正符号化して得られる誤り訂正符号との排他的論理和をとって、前記データ照合要求を生成する、
付記1又は2に記載の暗号文照合システム。
前記データ照合判定部は、前記登録テンプレートに含まれる前記暗号データと前記データ照合要求との排他的論理和を誤り訂正復号して、前記判定結果を出力する、付記3に記載の暗号文照合システム。
前記照合結果生成部は、前記判定結果に、当該判定結果に対応する前記登録テンプレートに含まれる前記検証鍵を付加したものを、前記照合結果として出力する、付記4に記載の暗号文照合システム。
前記データ復元部は、前記照合結果に含まれる前記判定結果と前記乱数との排他的論理和を計算して、前記復号結果を得、前記検証鍵を用いて該復号結果を検証する、付記5に記載の暗号文照合システム。
前記照合結果生成部は、前記判定結果に対応する前記登録テンプレートに含まれる前記暗号データを、前記照合結果として出力する、付記4に記載の暗号文照合システム。
前記データ復元部は、前記照合結果と前記照合対象の入力データとの排他的論理和を誤り訂正復号して、前記復号結果を得る、付記7に記載の暗号文照合システム。
署名鍵を用いて秘匿対象の入力データを暗号化して、暗号データを計算する暗号化部と、
前記暗号データと検証鍵とから登録データを生成する登録データ生成部と、
該登録データを、当該登録データを一意に特定するための識別子とともに記憶部に登録テンプレートとして記憶する記憶装置と、
乱数を用いて照合対象の入力データを暗号化した第1データ照合要求を生成する第1データ照合要求生成部と、
前記記憶部に記憶された前記登録テンプレートと、前記第1データ照合要求とを照合して、判定結果を出力する第1データ照合判定部と、
ランダムに選んだメッセージと、前記判定結果に対応する前記登録テンプレートの一部または全部との組み合わせを、第1照合結果として出力する第1照合結果生成部と、
前記第1照合結果を復号して、復号結果を出力する復号部と、
前記復号結果と前記第1照合結果に含まれる前記メッセージとから、第2データ照合要求を生成する第2データ照合要求生成部と、
前記第2データ照合要求と、前記記憶部に記録されている前記登録テンプレートの前記登録データとから、第2データ照合判定を生成する第2データ照合判定部と、
前記第2データ照合判定に対応する前記登録データの識別子を、第2照合結果として出力する第2照合結果生成部と、
を含む、暗号文照合システム。
セキュリティパラメータから、前記署名鍵と前記検証鍵とを生成する鍵生成部を更に含む、付記9に記載の暗号文照合システム。
前記暗号化部は、前記署名鍵を誤り訂正符号化して生成された誤り訂正符号と、前記秘匿対象の入力データとの排他的論理和をとって、前記暗号データを計算し、
前記第1データ照合要求生成部は、前記照合対象の入力データと、前記乱数を誤り訂正符号化して得られる誤り訂正符号との排他的論理和をとって、前記第1データ照合要求を生成する、
付記9又は10に記載の暗号文照合システム。
前記第1データ照合判定部は、前記登録テンプレートの前記登録データに含まれる前記暗号データと前記第1データ照合要求との排他的論理和を誤り訂正復号して、結果が復号不可能でなかった前記暗号データに対応する識別子の集合を、前記判定結果として出力する、付記11に記載の暗号文照合システム。
前記第1照合結果生成部は、前記ランダムに選んだメッセージと、前記判定結果に対応する前記登録テンプレートの前記登録データに含まれる前記暗号データとの組み合わせを、前記第1照合結果として出力する、付記12に記載の暗号文照合システム。
前記復号部は、前記第1照合結果に含まれる前記暗号データと前記照合対象の入力データとの排他的論理和を誤り訂正復号して、前記復号結果を得る、付記13に記載の暗号文照合システム。
前記第1照合結果生成部は、前記ランダムに選んだメッセージと、前記判定結果との組み合わせを、前記第1照合結果として出力する、付記12に記載の暗号化照合システム。
前記復号部は、前記第1照合結果に含まれる前記判定結果と前記乱数との排他的論理和を計算して、前記復号結果を得る、付記15に記載の暗号文照合システム。
前記第2データ照合要求生成部は、前記復号結果と前記第1照合結果に含まれる前記メッセージとを署名生成して、前記第2照合要求を生成する、付記12乃至16のいずれか1項に記載の暗号文照合システム。
前記第2データ照合判定部は、前記第2照合要求と、前記メッセージと、前記記憶部に記録されている前記登録テンプレートの前記登録データとを署名検証して、結果が受理であった識別子の番号の集合を前記第2データ照合判定として生成する、付記17に記載の暗号文照合システム。
前記第2照合結果生成部は、前記第2データ照合判定に対応する、前記登録テンプレートに対応する前記登録データの識別子を、前記第2照合結果として出力する、付記18に記載の暗号文照合システム。
前記第2照合結果生成部は、前記第2データ照合判定に対応する、前記第1データ照合結果に含まれる前記登録データの識別子を、前記第2照合結果として出力する、付記18に記載の暗号文照合システム。
秘密鍵を用いて秘匿対象の入力データを暗号化して、暗号データを計算する暗号化部と、
前記暗号データと公開鍵とから登録データを生成する登録データ生成部と、
該登録データを、当該登録データを一意に特定するための識別子とともに記憶部に登録テンプレートとして記憶する記憶装置と、
乱数を用いて照合対象の入力データを暗号化した第1データ照合要求を生成する第1データ照合要求生成部と、
前記記憶部に記憶された前記登録テンプレートと、前記第1データ照合要求とを照合して、判定結果を出力する第1データ照合判定部と、
ランダムに選んだメッセージと、前記判定結果に対応する前記登録テンプレートの一部または全部との組み合わせを、第1照合結果として出力する第1照合結果生成部と、
前記第1照合結果を復号して、復号結果を出力する復号部と、
前記復号結果と前記第1照合結果に含まれる前記メッセージとから、第2データ照合要求を生成する第2データ照合要求生成部と、
前記第2データ照合要求と、前記記憶部に記録されている前記登録テンプレートの前記登録データとから、第2データ照合判定を生成する第2データ照合判定部と、
前記第2データ照合判定に対応する前記登録データの識別子を、第2照合結果として出力する第2照合結果生成部と、
を含む、暗号文照合システム。
セキュリティパラメータから、前記秘密鍵と前記公開鍵とを生成する鍵生成部を更に含む、付記21に記載の暗号文照合システム。
前記暗号化部は、前記秘密鍵を誤り訂正符号化して生成された誤り訂正符号と、前記秘匿対象の入力データとの排他的論理和をとって、前記暗号データを計算し、
前記第1データ照合要求生成部は、前記照合対象の入力データと、前記乱数を誤り訂正符号化して得られる誤り訂正符号との排他的論理和をとって、前記第1データ照合要求を生成する、
付記21又は22に記載の暗号文照合システム。
前記第1データ照合判定部は、前記登録テンプレートの前記登録データに含まれる前記暗号データと前記第1データ照合要求との排他的論理和を誤り訂正復号して、結果が復号不可能でなかった前記暗号データに対応する識別子の集合を、前記判定結果として出力する、付記23に記載の暗号文照合システム。
前記第1照合結果生成部は、前記ランダムに選んだメッセージと、前記判定結果に対応する前記登録テンプレートの前記登録データに含まれる前記公開鍵との組み合わせを、前記第1照合結果として出力する、付記24に記載の暗号文照合システム。
前記復号部は、前記第1照合結果に含まれる前記公開鍵と前記照合対象の入力データとの排他的論理和を誤り訂正復号して、前記復号結果を得る、付記25に記載の暗号文照合システム。
前記第1照合結果生成部は、前記ランダムに選んだメッセージと、前記判定結果との組み合わせを、前記第1照合結果として出力する、付記24に記載の暗号化照合システム。
前記復号部は、前記第1照合結果に含まれる前記判定結果と前記乱数との排他的論理和を計算して、前記復号結果を得る、付記27に記載の暗号文照合システム。
前記第2データ照合要求生成部は、前記復号結果と前記第1照合結果に含まれる前記メッセージとを暗号化して、前記第2照合要求を生成する、付記24乃至28のいずれか1項に記載の暗号文照合システム。
前記第2データ照合判定部は、前記第2照合要求と、前記記憶部に記録されている前記登録テンプレートの前記登録データとを復号して、結果が受理であった識別子の番号の集合を前記第2データ照合判定として生成する、付記29に記載の暗号文照合システム。
前記第2照合結果生成部は、前記第2データ照合判定に対応する、前記登録テンプレートに対応する前記登録データの識別子を、前記第2照合結果として出力する、付記30に記載の暗号文照合システム。
前記第2照合結果生成部は、前記第2データ照合判定に対応する、前記第1データ照合結果に含まれる前記登録データの識別子を、前記第2照合結果として出力する、付記30に記載の暗号文照合システム。
付記1乃至32のいずれか1項に記載の暗号文照合システムを備え、前記秘匿対象の入力データおよび前記照合対象の入力データが生体情報であり、前記秘匿対象の入力データと前記照合対象の入力データとが類似している否かを判定することによって生体認証を行うことを特徴とする生体認証システム。
第1のクライアントが、秘密鍵を用いて秘匿対象の入力データを暗号化して、暗号データを計算し、前記暗号データと検証鍵とから登録データを生成し、サーバが、該登録データを、当該登録データを一意に特定するための識別子とともに記憶部に登録テンプレートとして記憶するデータ登録ステップと、
第2のクライアントが、乱数を用いて照合対象の入力データを暗号化したデータ照合要求を生成し、前記サーバが、前記記憶部に記憶された前記登録テンプレートと、前記データ照合要求とを照合して、判定結果を出力し、前記判定結果に対応した前記登録テンプレートの一部または全部を含む照合結果を出力し、前記第2のクライアントが、前記照合結果からデータを復元して、復元結果を出力する、暗号文照合ステップと、
を含む、暗号文照合方法。
第1のクライアントが、秘密鍵を用いて秘匿対象の入力データを暗号化して、暗号データを計算する暗号化ステップと、
前記第1のクライアントが、前記暗号データと検証鍵とから登録データを生成する登録データ生成ステップと、
サーバが、該登録データを、当該登録データを一意に特定するための識別子とともに記憶部に登録テンプレートとして記憶するステップと、
第2のクライアントが、乱数を用いて照合対象の入力データを暗号化したデータ照合要求を生成するデータ照合要求生成ステップと、
前記サーバが、前記記憶部に記憶された前記登録テンプレートと、前記データ照合要求とを照合して、判定結果を出力するデータ照合判定ステップと、
前記サーバが、前記判定結果に対応した前記登録テンプレートの一部または全部を含む照合結果を出力する照合結果生成ステップと、
前記第2のクライアントが、前記照合結果からデータを復元して、復元結果を出力するデータ復元ステップと、
を含む、暗号文照合方法。
第1のクライアントが、署名鍵を用いて秘匿対象の入力データを暗号化して、暗号データを計算し、前記暗号データと検証鍵とから登録データを生成し、サーバが、該登録データを、当該登録データを一意に特定するための識別子とともに記憶部に登録テンプレートとして記憶する、データ登録ステップと、
第2のクライアントが、乱数を用いて照合対象の入力データを暗号化した第1データ照合要求を生成し、前記サーバが、前記記憶部に記憶された前記登録テンプレートと、前記第1データ照合要求とを照合して、判定結果を出力し、ランダムに選んだメッセージと、前記判定結果に対応する前記登録テンプレートの一部または全部との組み合わせを、第1照合結果として出力し、前記第2のクライアントが、前記第1照合結果を復号して、復号結果を出力し、前記復号結果と前記第1照合結果に含まれる前記メッセージとから、第2照合要求を生成し、前記サーバが、前記第2照合要求と、前記記憶部に記録されている前記登録テンプレートの前記登録データとから、第2データ照合判定を生成し、前記第2データ照合判定に対応する前記登録データの識別子を、第2照合結果として出力する、暗号文照合ステップと、
を含む、暗号文照合方法。
第1のクライアントが、署名鍵を用いて秘匿対象の入力データを暗号化して、暗号データを計算する暗号化ステップと、
前記第1のクライアントが、前記暗号データと検証鍵とから登録データを生成する登録データ生成ステップと、
サーバが、該登録データを、当該登録データを一意に特定するための識別子とともに記憶部に登録テンプレートとして記憶するステップと、
第2のクライアントが、乱数を用いて照合対象の入力データを暗号化した第1データ照合要求を生成する第1データ照合要求生成ステップと、
前記サーバが、前記記憶部に記憶された前記登録テンプレートと、前記第1データ照合要求とを照合して、判定結果を出力する第1データ照合判定ステップと、
前記サーバが、ランダムに選んだメッセージと、前記判定結果に対応する前記登録テンプレートの一部または全部との組み合わせを、第1照合結果として出力する第1照合結果生成ステップと、
前記第2のクライアントが、前記第1照合結果を復号して、復号結果を出力する復号ステップと、
前記第2のクライアントが、前記復号結果と前記第1照合結果に含まれる前記メッセージとから、第2照合要求を生成する第2データ照合要求生成ステップと、
前記サーバが、前記第2照合要求と、前記記憶部に記録されている前記登録テンプレートの前記登録データとから、第2データ照合判定を生成する第2データ照合判定ステップと、
前記サーバが、前記第2データ照合判定に対応する前記登録データの識別子を、第2照合結果として出力する第2照合結果生成ステップと、
を含む、暗号文照合方法。
第1のクライアントが、秘密鍵を用いて秘匿対象の入力データを暗号化して、暗号データを計算し、前記暗号データと公開鍵とから登録データを生成し、サーバが、該登録データを、当該登録データを一意に特定するための識別子とともに記憶部に登録テンプレートとして記憶する、データ登録ステップと、
第2のクライアントが、乱数を用いて照合対象の入力データを暗号化した第1データ照合要求を生成し、前記サーバが、前記記憶部に記憶された前記登録テンプレートと、前記第1データ照合要求とを照合して、判定結果を出力し、ランダムに選んだメッセージと、前記判定結果に対応する前記登録テンプレートの一部または全部との組み合わせを、第1照合結果として出力し、前記第2のクライアントが、前記第1照合結果を復号して、復号結果を出力し、前記復号結果と前記第1照合結果に含まれる前記メッセージとから、第2照合要求を生成し、前記サーバが、前記第2照合要求と、前記記憶部に記録されている前記登録テンプレートの前記登録データとから、第2データ照合判定を生成し、前記第2データ照合判定に対応する、前記登録データの識別子を、第2照合結果として出力する、暗号文照合ステップと、
を含む、暗号文照合方法。
第1のクライアントが、秘密鍵を用いて秘匿対象の入力データを暗号化して、暗号データを計算する暗号化ステップと、
前記第1のクライアントが、前記暗号データと公開鍵とから登録データを生成する登録データ生成ステップと、
サーバが、該登録データを、当該登録データを一意に特定するための識別子とともに記憶部に登録テンプレートとして記憶するステップと、
第2のクライアントが、乱数を用いて照合対象の入力データを暗号化した第1データ照合要求を生成する第1データ照合要求生成ステップと、
前記サーバが、前記記憶部に記憶された前記登録テンプレートと、前記第1データ照合要求とを照合して、判定結果を出力する第1データ照合判定ステップと、
前記サーバが、ランダムに選んだメッセージと、前記判定結果に対応する前記登録テンプレートの一部または全部との組み合わせを、第1照合結果として出力する第1照合結果生成ステップと、
前記第2のクライアントが、前記第1照合結果を復号して、復号結果を出力する復号ステップと、
前記第2のクライアントが、前記復号結果と前記第1照合結果に含まれる前記メッセージとから、第2照合要求を生成する第2データ照合要求生成ステップと、
前記サーバが、前記第2照合要求と、前記記憶部に記録されている前記登録テンプレートの前記登録データとから、第2データ照合判定を生成する第2データ照合判定ステップと、
前記サーバが、前記第2データ照合判定に対応する前記登録データの識別子を、第2照合結果として出力する第2照合結果生成ステップと、
を含む、暗号文照合方法。
秘密鍵を用いて秘匿対象の入力データを暗号化して、暗号データを計算する暗号化処理と、
前記暗号データと検証鍵とから登録データを生成する登録データ生成処理と、
該登録データを、当該登録データを一意に特定するための識別子とともに記憶部に登録テンプレートとして記憶する処理と、
乱数を用いて照合対象の入力データを暗号化したデータ照合要求を生成するデータ照合要求生成処理と、
前記記憶部に記憶された前記登録テンプレートと、前記データ照合要求とを照合して、判定結果を出力するデータ照合判定処理と、
前記判定結果に対応した前記登録テンプレートの一部または全部を含む照合結果を出力する照合結果生成処理と、
前記照合結果からデータを復元して、復元結果を出力するデータ復元処理と、
をコンピュータに実行させる、暗号文照合プログラムを記録したコンピュータ読み取り可能な記録媒体。
署名鍵を用いて秘匿対象の入力データを暗号化して、暗号データを計算する暗号化処理と、
前記暗号データと検証鍵とから登録データを生成する登録データ生成処理と、
該登録データを、当該登録データを一意に特定するための識別子とともに記憶部に登録テンプレートとして記憶する処理と、
乱数を用いて照合対象の入力データを暗号化した第1データ照合要求を生成する第1データ照合要求生成処理と、
前記記憶部に記憶された前記登録テンプレートと、前記第1データ照合要求とを照合して、判定結果を出力する第1データ照合判定処理と、
ランダムに選んだメッセージと、前記判定結果に対応する前記登録テンプレートの一部または全部との組み合わせを、第1照合結果として出力する第1照合結果生成処理と、
前記第1照合結果を復号して、復号結果を出力する復号処理と、
前記復号結果と前記第1照合結果に含まれる前記メッセージとから、第2照合要求を生成する第2データ照合要求生成処理と、
前記第2照合要求と、前記記憶部に記録されている前記登録テンプレートの前記登録データとから、第2データ照合判定を生成する第2データ照合判定処理と、
前記第2データ照合判定に対応する前記登録データの識別子を、第2照合結果として出力する第2照合結果生成処理と、
をコンピュータに実行させる、暗号文照合プログラムを記録したコンピュータ読み取り可能な記録媒体。
秘密鍵を用いて秘匿対象の入力データを暗号化して、暗号データを計算する暗号化処理と、
前記暗号データと公開鍵とから登録データを生成する登録データ生成処理と、
該登録データを、当該登録データを一意に特定するための識別子とともに記憶部に登録テンプレートとして記憶する処理と、
乱数を用いて照合対象の入力データを暗号化した第1データ照合要求を生成する第1データ照合要求生成処理と、
前記記憶部に記憶された前記登録テンプレートと、前記第1データ照合要求とを照合して、判定結果を出力する第1データ照合判定処理と、
ランダムに選んだメッセージと、前記判定結果に対応する前記登録テンプレートの一部または全部との組み合わせを、第1照合結果として出力する第1照合結果生成処理と、
前記第1照合結果を復号して、復号結果を出力する復号処理と、
前記復号結果と前記第1照合結果に含まれる前記メッセージとから、第2照合要求を生成する第2データ照合要求生成処理と、
前記第2照合要求と、前記記憶部に記録されている前記登録テンプレートの前記登録データとから、第2データ照合判定を生成する第2データ照合判定処理と、
前記第2データ照合判定に対応する前記登録データの識別子を、第2照合結果として出力する第2照合結果生成処理と、
をコンピュータに実行させる、暗号文照合プログラムを記録したコンピュータ読み取り可能な記録媒体。
セキュリティパラメータから、秘密鍵と検証鍵とを生成する鍵生成部と、
前記秘密鍵を用いて秘匿対象の入力データを暗号化して、暗号データを計算する暗号化部と、
前記暗号データと前記検証鍵とから登録データを生成する登録データ生成部と、
を有する登録データ生成装置。
付記43に記載の登録データ生成装置で生成された前記登録データを入力として、前記登録データを一意に特定する識別子を管理する識別子管理部と、
前記識別子と前記登録データを含む登録テンプレートを記憶する記憶部と、
を有する記憶装置。
乱数を用いて照合対象の入力データを暗号化したデータ照合要求を生成するデータ照合要求生成部と、
照合結果を受信する照合結果受信部と、
前記照合結果からデータを復元して、復元結果を出力するデータ復元部と、
を有するデータ照合要求装置。
付記44に記載の記憶装置に記憶されている前記登録テンプレートを受信する登録データ受信部と、
付記45に記載のデータ照合要求装置から前記データ照合要求を受信するデータ照合要求受信部と、
前記登録テンプレートと前記データ照合要求とを照合して、判定結果を出力するデータ照合判定部と、
前記判定結果に対応した前記登録テンプレートの一部または全部を含む照合結果を出力する照合結果生成部と、
を有するデータ照合装置。
セキュリティパラメータから、署名鍵と検証鍵とを生成する鍵生成部と、
前記署名鍵を用いて秘匿対象の入力データを暗号化して、暗号データを計算する暗号化部と、
前記暗号データと前記検証鍵とから登録データを生成する登録データ生成部と、
を有する登録データ生成装置。
付記47に記載の登録データ生成装置で生成された前記登録データを入力として、前記登録データを一意に特定する識別子を管理する識別子管理部と、
前記識別子と前記登録データを含む登録テンプレートを記憶する記憶部と、
を有する記憶装置。
乱数を用いて照合対象の入力データを暗号化した第1データ照合要求を生成する第1データ照合要求生成部と、
第1照合結果を受信する第1照合結果受信部と、
前記第1照合結果を復号して、復号結果を出力する復号部と、
前記復号結果と前記第1照合結果に含まれるメッセージとから、第2データ照合要求を生成する第2データ照合要求生成部と、
を有するデータ照合要求装置。
付記48に記載の記憶装置から前記登録テンプレートを受信する登録データ受信部と、
付記49に記載のデータ照合要求装置から前記第1データ照合要求を受信する第1データ照合要求受信部と、
前記登録テンプレートと前記第1データ照合要求とを照合して、判定結果を出力する第1データ照合判定部と、
ランダムに選んだメッセージと、前記判定結果に対応する前記登録テンプレートの一部または全部との組み合わせを、第1照合結果として出力する第1照合結果生成部と、
を有する第1データ照合判定装置。
付記48に記載の記憶装置から前記登録テンプレートを受信する登録データ受信部と、
付記49に記載のデータ照合要求装置から前記第2データ照合要求を受信する第2データ照合要求受信部と、
前記第2データ照合要求と前記登録テンプレートの前記登録データとから、第2データ照合判定を生成する第2データ照合判定部と、
前記第2データ照合判定に対応する前記登録データの識別子を、第2照合結果として出力する第2照合結果生成部と、
を有する第2データ照合判定装置。
セキュリティパラメータから、秘密鍵と公開鍵とを生成する鍵生成部と、
前記秘密鍵を用いて秘匿対象の入力データを暗号化して、暗号データを計算する暗号化部と、
前記暗号データと前記検証鍵とから登録データを生成する登録データ生成部と、
を有する登録データ生成装置。
付記52に記載の登録データ生成装置で生成された前記登録データを入力として、前記登録データを一意に特定する識別子を管理する識別子管理部と、
前記識別子と前記登録データを含む登録テンプレートを記憶する記憶部と、
を有する記憶装置。
乱数を用いて照合対象の入力データを暗号化した第1データ照合要求を生成する第1データ照合要求生成部と、
第1照合結果を受信する第1照合結果受信部と、
前記第1照合結果を復号して、復号結果を出力する復号部と、
前記復号結果と前記第1照合結果に含まれるメッセージとから、第2データ照合要求を生成する第2データ照合要求生成部と、
を有するデータ照合要求装置。
付記53に記載の記憶装置から前記登録テンプレートを受信する登録データ受信部と、
付記54に記載のデータ照合要求装置から前記第1データ照合要求を受信する第1データ照合要求受信部と、
前記登録テンプレートと前記第1データ照合要求とを照合して、判定結果を出力する第1データ照合判定部と、
ランダムに選んだメッセージと、前記判定結果に対応する前記登録テンプレートの一部または全部との組み合わせを、第1照合結果として出力する第1照合結果生成部と、
を有する第1データ照合判定装置。
付記53に記載の記憶装置から前記登録テンプレートを受信する登録データ受信部と、
付記54に記載のデータ照合要求装置から前記第2データ照合要求を受信する第2データ照合要求受信部と、
前記第2データ照合要求と前記登録テンプレートの前記登録データとから、第2データ照合判定を生成する第2データ照合判定部と、
前記第2データ照合判定に対応する前記登録データの識別子を、第2照合結果として出力する第2照合結果生成部と、
を有する第2データ照合判定装置。
登録データ生成装置と、記憶装置と、データ照合要求装置と、データ照合判定装置とを備える暗号文照合システムであって、
前記登録データ生成装置は、
セキュリティパラメータを入力とし、秘密鍵および検証鍵を出力する鍵生成部と、
秘匿対象の固定長の入力データと、前記秘密鍵を入力として、第1の平文を第1の鍵で暗号化した第1の暗号文と、第2の平文を第2の鍵で暗号化した第2の暗号文のビットごとの排他的論理和が、前記第1の平文と前記第2の平文のビットごとの排他的論理和を、前記第1の鍵と前記第2の鍵のビットごとの排他的論理和で暗号化した暗号文となるような、暗号文を出力する暗号化部と、
前記検証鍵および前記秘密鍵と、前記暗号文を入力として、前記暗号化部が出力する暗号データに対応する前記秘匿対象の入力データが、前記データ照合要求装置に入力された照合対象の入力データとのハミング距離が一定数以内であることを判断するためのデータである登録データを出力する登録データ生成部とを備え、
前記記憶装置は、
前記登録データ生成装置が出力した登録データを入力として、前記登録データを一意に特定する識別子を管理する識別子管理部と、
前記識別子と、前記登録データ生成装置が出力した登録データとを含む登録テンプレートを記憶する記憶部とを備え、
前記データ照合要求装置は、
前記照合対象の入力データを入力とし、前記照合対象の入力データに秘匿処理を施したデータ照合要求を出力するデータ照合要求生成部と、
前記データ照合要求に対応して前記データ照合判定装置が生成した照合結果を受信する照合結果受信部と、
前記照合結果を入力として、秘密鍵を復元するデータ復元部とを備え、
前記データ照合判定装置は、
前記記憶装置に記憶されている登録テンプレートを受信する登録データ受信部と、
前記データ照合要求装置から前記データ照合要求を受信するデータ照合要求受信部と、
前記登録テンプレートと、前記データ照合要求を入力として、前記データ照合要求として秘匿されている照合データと前記暗号データとして秘匿されている登録データとの照合を行い、判定結果を出力するデータ照合判定部と、
前記判定結果と、前記登録テンプレートを入力として、該判定結果に対応した暗号テンプレートの一部または全部、または該判定結果に対応した登録テンプレートが存在しないことを意味する記号を含む照合結果を出力する照合結果生成部とを備える
ことを特徴とした暗号文照合システム。
付記57に記載の暗号文照合システムであって、前記登録データ生成装置の前記暗号化部は、前記秘密鍵skと平文Zに対して、前記秘密鍵skを線形性を有する誤り訂正符号で符号化し、その符号化結果である符号語と、前記平文Zとのベクトル上の和を計算した結果を、前記暗号文として出力することを特徴とした暗号文照合システム。
付記57に記載の暗号文照合システムであって、前記登録データ生成装置の前記暗号化部は、前記秘密鍵skと平文Zに対して、前記秘密鍵skを生成する際に利用した種seedを線形性を有する誤り訂正符号で符号化し、その符号化結果である符号語と、前記平文Zとのベクトル上の和を計算した結果を、前記暗号文として出力することを特徴とした暗号文照合システム。
登録データ生成装置と、記憶装置と、第1データ照合要求装置と、第1データ照合判定装置と、第2データ照合要求装置と、第2データ照合判定装置とを備える暗号文照合システムであって、
前記登録データ生成装置は、
セキュリティパラメータを入力とし、署名の検証鍵および署名鍵を出力する鍵生成部と、
秘匿対象の固定長の入力データと、前記署名鍵を入力として、第1の平文を第1の鍵で暗号化した第1の暗号文と、第2の平文を第2の鍵で暗号化した第2の暗号文のビットごとの排他的論理和が、前記第1の平文と前記第2の平文のビットごとの排他的論理和を、前記第1の鍵と前記第2の鍵のビットごとの排他的論理和で暗号化した暗号文となるような、暗号文を出力する暗号化部と、
前記検証鍵および前記署名鍵と、前記暗号文を入力として、前記暗号化部が出力する暗号データに対応する前記秘匿対象の入力データが、前記第1データ照合要求装置および前記第2データ照合要求装置に入力された照合対象の入力データとのハミング距離が一定数以内であることを判断するためのデータである登録データを出力する登録データ生成部とを備え、
前記記憶装置は、
前記登録データ生成装置が出力した登録データを入力として、前記登録データを一意に特定する識別子を管理する識別子管理部と、
前記識別子と、前記登録データ生成装置が出力した登録データを含む登録テンプレートを記憶する記憶部とを備え、
前記第1データ照合要求装置は、
前記照合対象の入力データを入力とし、前記照合対象の入力データに秘匿処理を施した第1データ照合要求を出力する第1データ照合要求生成部を備え、
前記第1データ照合判定装置は、
前記記憶装置に記憶されている登録テンプレートを受信する登録データ受信部と、
前記第1データ照合要求装置から前記第1データ照合要求を受信する第1データ照合要求受信部と、
前記登録テンプレートと、前記第1データ照合要求を入力として、前記第1データ照合要求として秘匿されている照合データと前記暗号データとして秘匿されている登録データとの照合を行い、判定結果を出力する第1データ照合判定部と、
前記判定結果と、前記登録テンプレートを入力として、照合要求を一意に特定するメッセージMと、前記判定結果に対応した暗号テンプレートの一部または全部、または前記判定結果に対応した登録テンプレートが存在しないことを意味する記号を含む第1照合結果を出力する第1照合結果生成部とを備え、
前記第2データ照合要求装置は、
前記第1データ照合判定装置から前記第1照合結果を受信する第1照合結果受信部と、
前記第1照合結果と、前記照合対象の入力データを入力とし、前記第1照合結果に含まれる暗号データの復号を行い、復号結果を出力する復号部と、
前記復号結果と、前記第1照合結果に含まれるメッセージMを入力とし、第2照合要求を生成する第2データ照合要求生成部とを備え、
前記第2データ照合判定装置は、
前記記憶装置に記憶されている登録テンプレートを受信する登録データ受信部と、
前記第2データ照合要求装置から前記第2照合要求を受信する第2データ照合要求受信部と、
前記登録テンプレートと前記第2照合要求を入力として、第2データ照合判定を生成する第2データ照合判定部と、
前記第2データ照合判定と、前記登録テンプレートを入力として、第2照合結果を出力する第2照合結果生成部とを備える
ことを特徴とした暗号文照合システム。
付記60に記載の暗号文照合システムであって、前記登録データ生成装置の前記暗号化部は、前記署名鍵skと平文Zに対して、前記署名鍵skを線形性を有する誤り訂正符号で符号化し、その符号化結果である符号語と、前記平文Zとのベクトル上の和を計算した結果を、前記暗号文として出力することを特徴とした暗号文照合システム。
付記60に記載の暗号文照合システムであって、前記登録データ生成装置の前記暗号化部は、前記署名鍵skと平文Zに対して、前記署名鍵skを生成する際に利用した種seedを線形性を有する誤り訂正符号で符号化し、その符号化結果である符号語と、前記平文Zとのベクトル上の和を計算した結果を、前記暗号文として出力することを特徴とした暗号文照合システム。
付記61又は62に記載の暗号文照合システムであって、
前記第1照合結果は、前記署名鍵skの符号化結果である符号語と、前記平文Zとのベクトル上の和を計算した結果と、毎回異なる値である可能性の高い前記メッセージ nonceを含み、
前記第2データ照合要求は、前記署名鍵skを用いて生成した前記メッセージ nonce に対する署名を含む、
ことを特徴とした暗号文照合システム。
付記61又は62に記載の暗号文照合システムであって、
前記第1照合結果は、前記署名鍵skの符号化結果である符号語と、前記平文Zとのベクトル上の和を計算した結果と、毎回異なる値である可能性の高い前記メッセージ nonceを前記検証鍵vkを用いて暗号化した暗号文を含み、
前記第2データ照合要求は、前記署名鍵skを用いて前記暗号文を復号した結果を含む、
ことを特徴とした暗号文照合システム。
101 鍵生成部
102 暗号化部
103 登録データ生成部
200 記憶装置
201 識別子管理部
202 暗号文記憶部
300 データ照合要求装置
300A 第1データ照合要求装置
301 データ照合要求生成部
301A 第1データ照合要求生成部
302 照合結果受信部
303 データ復元部
400 データ照合判定装置
400A 第1データ照合判定装置
401 登録データ受信部
401A 登録データ受信部
402 データ照合要求受信部
402A 第1データ照合要求受信部
403 データ照合判定部
403A 第1データ照合判定部
404 照合結果生成部
404A 第1照合結果生成部
500 第2データ照合要求装置
501 第1照合結果受信部
502 復号部
503 第2データ照合要求生成部
600 第2データ照合判定装置
601 登録データ受信部
602 第2データ照合要求受信部
603 第2データ照合判定部
604 第2照合結果生成部
Claims (10)
- 秘密鍵を用いて秘匿対象の入力データを暗号化して、暗号データを計算する暗号化部と、
前記暗号データと検証鍵とから登録データを生成する登録データ生成部と、
該登録データを、当該登録データを一意に特定するための識別子とともに記憶部に登録テンプレートとして記憶する記憶装置と、
乱数を用いて照合対象の入力データを暗号化したデータ照合要求を生成するデータ照合要求生成部と、
前記記憶部に記憶された前記登録テンプレートと、前記データ照合要求とを照合して、判定結果を出力するデータ照合判定部と、
前記判定結果に対応した前記登録テンプレートの一部または全部を含む照合結果を出力する照合結果生成部と、
前記照合結果からデータを復元して、復元結果を出力するデータ復元部と、
を含む、暗号文照合システム。 - 署名鍵を用いて秘匿対象の入力データを暗号化して、暗号データを計算する暗号化部と、
前記暗号データと検証鍵とから登録データを生成する登録データ生成部と、
該登録データを、当該登録データを一意に特定するための識別子とともに記憶部に登録テンプレートとして記憶する記憶装置と、
乱数を用いて照合対象の入力データを暗号化した第1データ照合要求を生成する第1データ照合要求生成部と、
前記記憶部に記憶された前記登録テンプレートと、前記第1データ照合要求とを照合して、判定結果を出力する第1データ照合判定部と、
ランダムに選んだメッセージと、前記判定結果に対応する前記登録テンプレートの一部または全部との組み合わせを、第1照合結果として出力する第1照合結果生成部と、
前記第1照合結果を復号して、復号結果を出力する復号部と、
前記復号結果と前記第1照合結果に含まれる前記メッセージとから、第2データ照合要求を生成する第2データ照合要求生成部と、
前記第2データ照合要求と、前記記憶部に記録されている前記登録テンプレートの前記登録データとから、第2データ照合判定を生成する第2データ照合判定部と、
前記第2データ照合判定に対応する前記登録データの識別子を、第2照合結果として出力する第2照合結果生成部と、
を含む、暗号文照合システム。 - 秘密鍵を用いて秘匿対象の入力データを暗号化して、暗号データを計算する暗号化部と、
前記暗号データと公開鍵とから登録データを生成する登録データ生成部と、
該登録データを、当該登録データを一意に特定するための識別子とともに記憶部に登録テンプレートとして記憶する記憶装置と、
乱数を用いて照合対象の入力データを暗号化した第1データ照合要求を生成する第1データ照合要求生成部と、
前記記憶部に記憶された前記登録テンプレートと、前記第1データ照合要求とを照合して、判定結果を出力する第1データ照合判定部と、
ランダムに選んだメッセージと、前記判定結果に対応する前記登録テンプレートの一部または全部との組み合わせを、第1照合結果として出力する第1照合結果生成部と、
前記第1照合結果を復号して、復号結果を出力する復号部と、
前記復号結果と前記第1照合結果に含まれる前記メッセージとから、第2データ照合要求を生成する第2データ照合要求生成部と、
前記第2データ照合要求と、前記記憶部に記録されている前記登録テンプレートの前記登録データとから、第2データ照合判定を生成する第2データ照合判定部と、
前記第2データ照合判定に対応する前記登録データの識別子を、第2照合結果として出力する第2照合結果生成部と、
を含む、暗号文照合システム。 - 請求項1乃至3のいずれか1項に記載の暗号文照合システムを備え、前記秘匿対象の入力データおよび前記照合対象の入力データが生体情報であり、前記秘匿対象の入力データと前記照合対象の入力データとが類似している否かを判定することによって生体認証を行うことを特徴とする生体認証システム。
- 第1のクライアントが、秘密鍵を用いて秘匿対象の入力データを暗号化して、暗号データを計算し、前記暗号データと検証鍵とから登録データを生成し、サーバが、該登録データを、当該登録データを一意に特定するための識別子とともに記憶部に登録テンプレートとして記憶するデータ登録ステップと、
第2のクライアントが、乱数を用いて照合対象の入力データを暗号化したデータ照合要求を生成し、前記サーバが、前記記憶部に記憶された前記登録テンプレートと、前記データ照合要求とを照合して、判定結果を出力し、前記判定結果に対応した前記登録テンプレートの一部または全部を含む照合結果を出力し、前記第2のクライアントが、前記照合結果からデータを復元して、復元結果を出力する、暗号文照合ステップと、
を含む、暗号文照合方法。 - 第1のクライアントが、署名鍵を用いて秘匿対象の入力データを暗号化して、暗号データを計算し、前記暗号データと検証鍵とから登録データを生成し、サーバが、該登録データを、当該登録データを一意に特定するための識別子とともに記憶部に登録テンプレートとして記憶する、データ登録ステップと、
第2のクライアントが、乱数を用いて照合対象の入力データを暗号化した第1データ照合要求を生成し、前記サーバが、前記記憶部に記憶された前記登録テンプレートと、前記第1データ照合要求とを照合して、判定結果を出力し、ランダムに選んだメッセージと、前記判定結果に対応する前記登録テンプレートの一部または全部との組み合わせを、第1照合結果として出力し、前記第2のクライアントが、前記第1照合結果を復号して、復号結果を出力し、前記復号結果と前記第1照合結果に含まれる前記メッセージとから、第2照合要求を生成し、前記サーバが、前記第2照合要求と、前記記憶部に記録されている前記登録テンプレートの前記登録データとから、第2データ照合判定を生成し、前記第2データ照合判定に対応する前記登録データの識別子を、第2照合結果として出力する、暗号文照合ステップと、
を含む、暗号文照合方法。 - 第1のクライアントが、秘密鍵を用いて秘匿対象の入力データを暗号化して、暗号データを計算し、前記暗号データと公開鍵とから登録データを生成し、サーバが、該登録データを、当該登録データを一意に特定するための識別子とともに記憶部に登録テンプレートとして記憶する、データ登録ステップと、
第2のクライアントが、乱数を用いて照合対象の入力データを暗号化した第1データ照合要求を生成し、前記サーバが、前記記憶部に記憶された前記登録テンプレートと、前記第1データ照合要求とを照合して、判定結果を出力し、ランダムに選んだメッセージと、前記判定結果に対応する前記登録テンプレートの一部または全部との組み合わせを、第1照合結果として出力し、前記第2のクライアントが、前記第1照合結果を復号して、復号結果を出力し、前記復号結果と前記第1照合結果に含まれる前記メッセージとから、第2照合要求を生成し、前記サーバが、前記第2照合要求と、前記記憶部に記録されている前記登録テンプレートの前記登録データとから、第2データ照合判定を生成し、前記第2データ照合判定に対応する、前記登録データの識別子を、第2照合結果として出力する、暗号文照合ステップと、
を含む、暗号文照合方法。 - 秘密鍵を用いて秘匿対象の入力データを暗号化して、暗号データを計算する暗号化処理と、
前記暗号データと検証鍵とから登録データを生成する登録データ生成処理と、
該登録データを、当該登録データを一意に特定するための識別子とともに記憶部に登録テンプレートとして記憶する処理と、
乱数を用いて照合対象の入力データを暗号化したデータ照合要求を生成するデータ照合要求生成処理と、
前記記憶部に記憶された前記登録テンプレートと、前記データ照合要求とを照合して、判定結果を出力するデータ照合判定処理と、
前記判定結果に対応した前記登録テンプレートの一部または全部を含む照合結果を出力する照合結果生成処理と、
前記照合結果からデータを復元して、復元結果を出力するデータ復元処理と、
をコンピュータに実行させる、暗号文照合プログラムを記録したコンピュータ読み取り可能な記録媒体。 - 署名鍵を用いて秘匿対象の入力データを暗号化して、暗号データを計算する暗号化処理と、
前記暗号データと検証鍵とから登録データを生成する登録データ生成処理と、
該登録データを、当該登録データを一意に特定するための識別子とともに記憶部に登録テンプレートとして記憶する処理と、
乱数を用いて照合対象の入力データを暗号化した第1データ照合要求を生成する第1データ照合要求生成処理と、
前記記憶部に記憶された前記登録テンプレートと、前記第1データ照合要求とを照合して、判定結果を出力する第1データ照合判定処理と、
ランダムに選んだメッセージと、前記判定結果に対応する前記登録テンプレートの一部または全部との組み合わせを、第1照合結果として出力する第1照合結果生成処理と、
前記第1照合結果を復号して、復号結果を出力する復号処理と、
前記復号結果と前記第1照合結果に含まれる前記メッセージとから、第2照合要求を生成する第2データ照合要求生成処理と、
前記第2照合要求と、前記記憶部に記録されている前記登録テンプレートの前記登録データとから、第2データ照合判定を生成する第2データ照合判定処理と、
前記第2データ照合判定に対応する前記登録データの識別子を、第2照合結果として出力する第2照合結果生成処理と、
をコンピュータに実行させる、暗号文照合プログラムを記録したコンピュータ読み取り可能な記録媒体。 - 秘密鍵を用いて秘匿対象の入力データを暗号化して、暗号データを計算する暗号化処理と、
前記暗号データと公開鍵とから登録データを生成する登録データ生成処理と、
該登録データを、当該登録データを一意に特定するための識別子とともに記憶部に登録テンプレートとして記憶する処理と、
乱数を用いて照合対象の入力データを暗号化した第1データ照合要求を生成する第1データ照合要求生成処理と、
前記記憶部に記憶された前記登録テンプレートと、前記第1データ照合要求とを照合して、判定結果を出力する第1データ照合判定処理と、
ランダムに選んだメッセージと、前記判定結果に対応する前記登録テンプレートの一部または全部との組み合わせを、第1照合結果として出力する第1照合結果生成処理と、
前記第1照合結果を復号して、復号結果を出力する復号処理と、
前記復号結果と前記第1照合結果に含まれる前記メッセージとから、第2照合要求を生成する第2データ照合要求生成処理と、
前記第2照合要求と、前記記憶部に記録されている前記登録テンプレートの前記登録データとから、第2データ照合判定を生成する第2データ照合判定処理と、
前記第2データ照合判定に対応する前記登録データの識別子を、第2照合結果として出力する第2照合結果生成処理と、
をコンピュータに実行させる、暗号文照合プログラムを記録したコンピュータ読み取り可能な記録媒体。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US15/524,151 US10484182B2 (en) | 2014-11-05 | 2015-10-26 | Encrypted text verification system, method, and recording medium |
JP2016557449A JP6738061B2 (ja) | 2014-11-05 | 2015-10-26 | 暗号文照合システム、方法、および記録媒体 |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2014-225102 | 2014-11-05 | ||
JP2014225102 | 2014-11-05 |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2016072057A1 true WO2016072057A1 (ja) | 2016-05-12 |
Family
ID=55908804
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/JP2015/005366 WO2016072057A1 (ja) | 2014-11-05 | 2015-10-26 | 暗号文照合システム、方法、および記録媒体 |
Country Status (3)
Country | Link |
---|---|
US (1) | US10484182B2 (ja) |
JP (1) | JP6738061B2 (ja) |
WO (1) | WO2016072057A1 (ja) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9992175B2 (en) * | 2016-01-08 | 2018-06-05 | Moneygram International, Inc. | Systems and method for providing a data security service |
JP6645572B2 (ja) * | 2016-03-31 | 2020-02-14 | 日本電気株式会社 | 生体データ登録支援装置、生体データ登録支援システム、生体データ登録支援方法、生体データ登録支援プログラム |
KR102545867B1 (ko) * | 2018-05-24 | 2023-06-21 | 도르마카바 슈바이츠 아게 | 모바일 디바이스와 리더 디바이스 사이의 데이터 전송을 위한 방법 및 디바이스 |
US11223485B2 (en) * | 2018-07-17 | 2022-01-11 | Huawei Technologies Co., Ltd. | Verifiable encryption based on trusted execution environment |
KR20200100481A (ko) * | 2019-02-18 | 2020-08-26 | 삼성전자주식회사 | 생체 정보를 인증하기 위한 전자 장치 및 그의 동작 방법 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2008092413A (ja) * | 2006-10-04 | 2008-04-17 | Hitachi Ltd | 生体認証システム、登録端末、認証端末、及び認証サーバ |
WO2013080365A1 (ja) * | 2011-12-01 | 2013-06-06 | 株式会社日立製作所 | 秘匿検索方法および秘匿検索装置 |
WO2014092183A1 (ja) * | 2012-12-14 | 2014-06-19 | 日本電気株式会社 | ビット列照合システムと方法とプログラム |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4564348B2 (ja) | 2004-12-10 | 2010-10-20 | 株式会社日立製作所 | 生体情報の特徴量変換方法および生体認証システム |
KR101391152B1 (ko) * | 2007-04-05 | 2014-05-02 | 삼성전자주식회사 | Ums 기기의 컨텐츠를 보호하기 위한 방법 및 장치 |
JP5412414B2 (ja) | 2010-12-08 | 2014-02-12 | 株式会社日立製作所 | 検索可能暗号処理システム |
JP6048501B2 (ja) | 2012-07-13 | 2016-12-21 | 日本電気株式会社 | 暗号文照合システムと方法とプログラム |
WO2014034018A1 (ja) * | 2012-08-30 | 2014-03-06 | 日本電気株式会社 | 再暗号化システム、再暗号化方法および再暗号化プログラム |
JP2015192446A (ja) * | 2014-03-31 | 2015-11-02 | 富士通株式会社 | プログラム、暗号処理方法、及び暗号処理装置 |
-
2015
- 2015-10-26 US US15/524,151 patent/US10484182B2/en active Active
- 2015-10-26 JP JP2016557449A patent/JP6738061B2/ja active Active
- 2015-10-26 WO PCT/JP2015/005366 patent/WO2016072057A1/ja active Application Filing
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2008092413A (ja) * | 2006-10-04 | 2008-04-17 | Hitachi Ltd | 生体認証システム、登録端末、認証端末、及び認証サーバ |
WO2013080365A1 (ja) * | 2011-12-01 | 2013-06-06 | 株式会社日立製作所 | 秘匿検索方法および秘匿検索装置 |
WO2014092183A1 (ja) * | 2012-12-14 | 2014-06-19 | 日本電気株式会社 | ビット列照合システムと方法とプログラム |
Also Published As
Publication number | Publication date |
---|---|
JPWO2016072057A1 (ja) | 2017-10-19 |
JP6738061B2 (ja) | 2020-08-12 |
US20170324563A1 (en) | 2017-11-09 |
US10484182B2 (en) | 2019-11-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11882218B2 (en) | Matching system, method, apparatus, and program | |
JP6931247B2 (ja) | 暗号文照合システム、方法、およびプログラム | |
JP6048501B2 (ja) | 暗号文照合システムと方法とプログラム | |
JP6349841B2 (ja) | 暗号文処理装置、暗号文処理方法、暗号文処理プログラムおよび情報処理装置 | |
JP6738061B2 (ja) | 暗号文照合システム、方法、および記録媒体 | |
JP6451938B2 (ja) | 暗号文照合システム、方法、およびプログラム | |
JP2016114692A (ja) | 暗号処理装置、暗号処理方法、及び暗号処理プログラム | |
JP6229714B2 (ja) | 暗号文照合システムと方法とプログラム | |
WO2014185450A1 (ja) | 照合システム、ノード、照合方法およびプログラム | |
JP2012151756A (ja) | 復号システム、鍵装置、復号方法、及びプログラム | |
JP6229715B2 (ja) | 暗号文照合システムと方法とプログラム | |
JP6229713B2 (ja) | 暗号文照合システムと方法とプログラム | |
JP5799635B2 (ja) | 暗号データ検索システム、装置、方法及びプログラム | |
JPWO2020174515A1 (ja) | 暗号システム、鍵生成装置、鍵生成方法、鍵生成プログラム、および準同型演算装置 | |
WO2023032031A1 (ja) | 認証システム、被認証者装置、認証者装置、認証方法、および認証プログラム | |
JP6528560B2 (ja) | 指標算出システム、指標算出方法、指標算出プログラム、及び、照合システム |
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: 15856900 Country of ref document: EP Kind code of ref document: A1 |
|
ENP | Entry into the national phase |
Ref document number: 2016557449 Country of ref document: JP Kind code of ref document: A |
|
WWE | Wipo information: entry into national phase |
Ref document number: 15524151 Country of ref document: US |
|
NENP | Non-entry into the national phase |
Ref country code: DE |
|
122 | Ep: pct application non-entry in european phase |
Ref document number: 15856900 Country of ref document: EP Kind code of ref document: A1 |