WO2019124164A1 - 暗号データ処理システム、及びプログラム - Google Patents

暗号データ処理システム、及びプログラム Download PDF

Info

Publication number
WO2019124164A1
WO2019124164A1 PCT/JP2018/045505 JP2018045505W WO2019124164A1 WO 2019124164 A1 WO2019124164 A1 WO 2019124164A1 JP 2018045505 W JP2018045505 W JP 2018045505W WO 2019124164 A1 WO2019124164 A1 WO 2019124164A1
Authority
WO
WIPO (PCT)
Prior art keywords
information
encryption
registration
encrypted
server
Prior art date
Application number
PCT/JP2018/045505
Other languages
English (en)
French (fr)
Inventor
聖史 入山
眞紀 木原
Original Assignee
学校法人東京理科大学
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 学校法人東京理科大学 filed Critical 学校法人東京理科大学
Priority to US16/955,739 priority Critical patent/US11431686B2/en
Priority to JP2019560999A priority patent/JP7165414B2/ja
Publication of WO2019124164A1 publication Critical patent/WO2019124164A1/ja

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/008Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols involving homomorphic encryption
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/602Providing cryptographic facilities or services
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
    • H04L63/0435Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload wherein the sending and receiving network entities apply symmetric encryption, i.e. same key used for encryption and decryption
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/06Network architectures or network communication protocols for network security for supporting key management in a packet data network
    • H04L63/067Network architectures or network communication protocols for network security for supporting key management in a packet data network using one-time keys
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/12Applying verification of the received information
    • H04L63/123Applying verification of the received information received data contents, e.g. message integrity
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/12Applying verification of the received information
    • H04L63/126Applying verification of the received information the source of the received data
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0894Escrow, recovery or storing of secret information, e.g. secret key escrow or cryptographic key storage
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/14Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using a plurality of keys or algorithms
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3226Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using a predetermined code, e.g. password, passphrase or PIN
    • H04L9/3228One-time or temporary data, i.e. information which is sent for every authentication or authorization, e.g. one-time-password, one-time-token or one-time-key
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3234Cryptographic 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 additional secure or trusted devices, e.g. TPM, smartcard, USB or software token

Definitions

  • the present disclosure relates to a cryptographic data processing system and program, and more particularly to a cryptographic data processing system and program for collating input information.
  • the present disclosure has been made in view of the above circumstances, and it is an object of the present disclosure to provide an encrypted data processing system and a program in which the secrecy when collating input information is improved.
  • a first aspect of the present disclosure is an encrypted data processing system including a server and an encryption device connected via the Internet, wherein the encryption device is configured to input the first data based on a first encryption key. 1 encrypts the information of 1 to generate encrypted information for registration and transmits it to the server, and encrypts the input second information based on the second encryption key to generate encrypted information to be collated And an encryption unit for transmitting to the server, wherein the server collates the encrypted information for registration with the encrypted information to be collated using the encrypted collation function of collating the encrypted information. And a verification unit that transmits the verification result to the encryption device, the encryption device using a decryption function that decrypts the verification result using the first encryption key and the second encryption key. Degree of match between the first information and the second information It is further comprise constituting the matching result decoding unit for obtaining a cryptographic data processing system.
  • a second aspect of the present disclosure is the encrypted data processing system according to the first aspect, wherein the second encryption key is a one-time key.
  • a reader configured to read an output signal of a magnetic card, biological information, or an information terminal of the first information or the second information is used. It is an encryption data processing system used as information obtained by
  • the fourth aspect of the present disclosure includes the first information and the second information in the first to third aspects. Is a cryptographic data processing system that has hashed data.
  • the encryption unit of the encryption device encrypts any registration ID corresponding to the first information for the registration.
  • the registration ID is transmitted to the server in association with the information, and the registration ID is transmitted to the server in association with the encryption information to be compared, and the server receives the registration ID and the encryption information for the registration
  • the server further includes a registration information storage unit that is stored in association with the registration information associated with the registration ID associated with the received encryption information of the verification target, and the verification unit of the server Encryption data processing system for reading out encryption information from the registration information storage unit, collating the read out encrypted information for registration and the encrypted information to be collated, and transmitting the collated result to the encryptor It is.
  • a sixth aspect of the present disclosure is the key storage according to the fifth aspect, wherein the encryption device stores the first encryption key associated with the registration ID and the second encryption key.
  • the verification result decryption unit decrypts the verification result using the first encryption key and the second encryption key corresponding to the registration ID for which the verification result is obtained. It is an encryption data processing system which calculates the coincidence with the 1st information and the 2nd information by a decryption function.
  • a seventh aspect of the present disclosure is a method of processing encrypted data by an encryption device, wherein the encryption device encrypts the input first information based on the first encryption key, and is used for registration.
  • the encrypted information is generated and transmitted to the server, and the input second information is encrypted based on the second encryption key to generate encrypted information to be collated and transmitted to the server, and the server Receiving a verification result in which the encrypted information for registration and the encrypted information to be verified are verified using an encryption verification function for verifying the encrypted information, and the first encryption key and the first encryption key
  • a computer which is an encryption device, encrypts input first information based on a first encryption key, generates encrypted information for registration, and transmits the encrypted information to a server And encrypts the input second information based on the second encryption key, generates encrypted information to be collated, transmits the encrypted information to the server, and collates the encrypted information from the server.
  • a function is used to receive a verification result in which the encrypted information for registration and the encrypted information to be verified are compared, and the verification is performed using the first encryption key and the second encryption key. It is a program characterized by performing processing including: finding a degree of coincidence between the first information and the second information by a decoding function that decodes a result.
  • the encryption data processing system of the present disclosure is an encryption data processing system including a server and an encryption device connected via the Internet, wherein the encryption device is input based on the first encryption key.
  • the first information is encrypted to generate encrypted information for registration and transmitted to the server, and based on the second encryption key, the input second information is encrypted and the encrypted information to be compared is encrypted.
  • the server includes an encryption unit that generates and sends it to a server, and the server collates the encryption information for registration with the encryption information to be collated using a cryptographic collation function that collates the cryptographic information and collates
  • the verification device includes a verification unit that transmits the result to the encryption device, and the encryption device uses the first encryption key and the second encryption key to decrypt the verification result using the first function and the first information. Verification result for finding the degree of coincidence with the second information
  • FIG. 1 is a block diagram showing a configuration of a cryptographic data processing system according to a first embodiment of the present disclosure. It is a figure which shows an example of the information stored in the key storage part 32 of 1st Embodiment.
  • FIG. 6 is a diagram showing an example of information stored in a registration information storage unit 42. It is a figure showing an example of a registration processing routine of an encryption device concerning an embodiment of this indication. It is a figure showing an example of collation processing routine of an encryption device concerning an embodiment of this indication. It is a figure showing an example of the registration processing routine of the server concerning an embodiment of this indication.
  • the technology according to the embodiment of the present disclosure aims at processing speed, safety, and internal memory reduction, and is proposed as one solution to the SSE technology.
  • This technology is a fundamental technology in the field of processing information as it is encrypted, and various applications are possible in practical use.
  • the technology according to the embodiment of the present disclosure is a technology that encrypts two pieces of information and collates the two pieces of information without decrypting the two pieces of information. As a result, protection of biological information, protection of personal information such as a card number, and prevention of falsification of a document can be processed more safely and at high speed.
  • Step 1 registration
  • Step 2 columnlation
  • P is a plaintext space and represents a space of target information.
  • p 1 , p 2 ⁇ P are plaintext 1 and plaintext 2 and represent target information 1 and information 2.
  • K is a key space and represents a key space used in encryption.
  • k 1 and k 2 ⁇ K are the key 1 and the key 2 and represent keys used for encryption.
  • C represents the space of ciphertext.
  • E k P ⁇ C represents an encryption function, and a plaintext and a key k are used to generate a ciphertext.
  • D k C ⁇ P represents a decryption function, and decrypts the ciphertext into plaintext using a key k.
  • the matching function is a function that matches two pieces of information, and returns 0 if they match, and a non-zero integer if they do not match.
  • C ⁇ C ⁇ C is a function that represents an encryption check function, checks two encrypted information, and returns a ciphertext.
  • the cryptographic match function satisfies the following relationship:
  • step 1 registration
  • step 2 columnlation
  • step 1 registration
  • the user uses the generated key k 1 for information 1 (plaintext p 1 ) to calculate the encryption function of the following equation (1), and encrypt information c for registration Send 1 to the server.
  • the communication path with the server may be a public communication path. It is assumed that the key (k 1 ) is generated by a pseudo random number or the like, and the user holds the key (k 1 ) confidentially. Moreover, it issues a unique ID for each registered shall be associated with the encrypted information c 1 for registration.
  • step 2 (collation)
  • the user uses the generated key k 2 on information 2 (plaintext p 2 ) to calculate the encryption function of equation (2) below, and uses the encryption information c for collation Send 2 to the server.
  • the key (k 2 ) is generated by pseudo-random number each time the collation is performed, and the user holds the key (k 2 ) in secret until the collation result is obtained. Further, the ID at the time of registration is associated with the collation information c 2 for comparison.
  • the communication path may be a public communication path.
  • the user calculates the decryption function D of the following equation (4) using the key k 1 and the key k 2 with respect to the encrypted verification result c 3 to obtain the verification result ⁇ .
  • the configuration of the cryptographic data processing system according to the first embodiment of the present disclosure will be described.
  • a case will be described as an example in which an encryption device and a reader are provided on the door of each room in a facility such as a hotel, for managing entry and exit of the room.
  • the cryptographic data processing system 100 includes an input device 2, an encryption device 3, a reading device 4, a control mechanism 5, and a server 6.
  • the encryption device 3 and the server 6 are connected via the network 10 such as the Internet.
  • the input device 2 is, for example, a terminal owned by a hotel manager, and at the time of registration of the encryption information, a magnetic card read by a reading device (not shown) provided on the hotel user who made a reservation for the hotel Information (hereinafter referred to as first information (p 1 )) is transmitted to the encryption device 3 provided on the door of the room assigned to the hotel user.
  • first information (p 1 ) is transmitted to the encryption device 3 provided on the door of the room assigned to the hotel user.
  • the information on the magnetic card read by a reader (not shown) provided on the hotel user side is acquired via the network 10.
  • the reading device 4 is a device installed at the door of each room for reading data of the magnetic card.
  • the reading device 4 reads the information of the magnetic card (hereinafter referred to as second information (p 2 ), for example) held by the hotel user at the time of collation of the encrypted information for collation, and reads the second information Information (p 2 ) is transmitted to the encryption device 3.
  • second information (p 2 ) the information of the magnetic card held by the hotel user at the time of collation of the encrypted information for collation
  • the reader 4 may be a device that reads biological information, an output signal from a smartphone, and the like. In that case, information such as biometric information and an output signal from a smartphone is transmitted to the encryption device 3 as first information and second information.
  • the encryption device 3 includes a communication unit 20, an encryption unit 30, a key storage unit 32, and a comparison result decryption unit 34.
  • the encryption device 3 is provided in each room in the present embodiment.
  • the encryption device 3 can be realized by, for example, a computer.
  • the computer includes a central processing unit (CPU), a memory as a temporary storage area, and a non-volatile storage unit.
  • the computer also includes an input / output interface (I / F), a read / write (R / W) unit that controls reading and writing of data to a storage medium, and a network interface (I / F) connected to a network such as the Internet. And F).
  • the storage unit can be realized by Hard Disk Drive (HDD), Solid State Drive (SSD), flash memory or the like.
  • a program for causing a computer to function as the encryption device 3 is stored in a storage unit as a storage medium.
  • the CPU reads the program from the storage unit, expands it in the memory, and sequentially executes each process of the program.
  • the CPU executes each process of the program to operate as the communication unit 20, the encryption unit 30, and the collation result decryption unit 34 shown in FIG.
  • the communication unit 20 transmits encrypted information for registration and a registration ID together with a registration command to the server 6 via the network 10. Also, the communication unit 20 transmits the verification encryption information and the registration ID together with the verification command. Further, the communication unit 20 receives the encrypted verification result from the server 6 and the registered ID for which the verification has been performed.
  • Encrypting unit 30 receives the first information from the input device 2 (p 1), to generate a first encryption key (k 1), based on the first encryption key (k 1), the ( 1)
  • the first information (p 1 ) is encrypted according to the encryption function E of the equation to generate registration information (c 1 ).
  • the encryption unit 30 also generates a registration ID for each registration of the encryption information.
  • the registration ID may be generated by, for example, “room number + registration number” using a room number set in advance.
  • the registration number is, for example, “A1”, “A2” or the like obtained by hashing the read information (p 1 ), and the information (p 1 ) can be identified.
  • the encryption unit 30 associates the generated encrypted information (c 1 ) with the registration ID, and transmits it to the server 6 together with the registration command. Further, the first encryption key (k 1 ) and the registration ID are associated with each other and stored in the storage table 32A of the key storage unit 32. In addition, since a room number is previously set to each room, it is not necessary to use a room number for registration ID. Moreover, what is used for the production
  • the encryption unit 30 when the encryption unit 30 receives the second information (p 2 ) from the reading device 4, the encryption unit 30 generates (k 2 ) a second encryption key for verification, and the second encryption key for verification (k Based on 2 ), the second information (p 2 ) is encrypted by the encryption function E of the equation ( 2 ) to generate encrypted information (c 2 ) for comparison.
  • the second encryption key for verification is a one-time key, and is effective only at the time of verification.
  • the encryption unit 30 associates the generated encryption information (c 2 ) with the registration ID stored in the key storage unit 32, and transmits it to the server 6 together with the collation command. Further, the second encryption key (k 2 ) for verification is stored in the storage table 32B of the key storage unit 32.
  • the key storage unit 32 stores a first encryption key (k 1 ) associated with the registration ID and a second encryption key (k 2 ) for verification.
  • FIG. 4 shows an example of the storage table 32A of the first encryption key (k 1 ) of the key storage unit 32.
  • the first record stores a registration ID "123A1" and an encryption key.
  • the registration ID "123” represents a room number
  • "A1" represents a registration number.
  • FIG. 4 shows an example of the storage table 32B of the second encryption key (k 2 ) for verification.
  • the storage table 32B has the same configuration as the storage table 32A, but temporarily stores the second encryption key (k 2 ) for collation as a one-time key until the collation result is obtained in the collation result decryption unit 34. It is something to keep in mind. Therefore, the record of the second encryption key for verification (k 2 ) stored as the one-time key after verification is deleted.
  • the verification result decryption unit 34 receives from the server 6 by the decryption function D of the equation (4) using the first encryption key (k 1 ) and the second encryption key for verification (k 2 ).
  • the collation result ⁇ obtained by decrypting the encrypted collation result (c 3 ) the degree of coincidence between the first information and the second information is obtained.
  • the first encryption key and the second encryption key are read out with reference to the records of the registration ID of the storage table 32A and the storage table 32B of the key storage unit 32 corresponding to the collated registration ID received from the server 6 , And may be used for decoding.
  • the collation result decoding unit 34 uses the control mechanism 5 when the decoded collation result is, for example, 0 when the decoded collation result ⁇ is 0 and the first information and the second information match. Notify release and notify to unlock the room door. If the decrypted verification result ⁇ is 1 or more and the first information and the second information do not match, the control mechanism 5 is notified of an error without releasing the lock of the room door. Further, the collation result decryption unit 34 deletes the record of the second encryption key (k 2 ) for collation stored in the storage table 32B of the key storage unit 32 as the one-time key.
  • the control mechanism 5 notifies that the door is unlocked or can not be released by an error sound or the like by the release of the lock or the notification of the error received from the comparison result decryption unit 34.
  • the control mechanism 5 is a functional unit that performs an authentication process based on the collation result of the collation result decoding unit 34.
  • the server 6 is configured to include a communication unit 22, a check unit 40, and a registration information storage unit 42.
  • the server 6 can be configured by a computer in the same manner as the encryption device 3 described above.
  • the CPU operates as the communication unit 22 and the collation unit 40 illustrated in FIG. 3 by executing each process of the program.
  • the communication unit 22 receives the registration command and the encryption information (c 1 ) for registration and the registration ID from the encryption device 30 via the network 10.
  • the registration information storage unit 42 stores encryption information for registration and a registration ID.
  • the communication unit 22 receives the verification information (c 2 ) for verification and the registration ID together with the verification command.
  • the verification unit 40 receives the verification encrypted information (c 2 ) and the registration ID.
  • the communication unit 22 transmits the encrypted collation result (c 3 ) obtained by the collation unit 40 and the registered ID subjected to the collation to the encryption device 3.
  • the registration information storage unit 42 stores the received encrypted information for registration and the registered ID in a format in which the registered ID and the encrypted information are associated with each other.
  • An example of the storage table 42A of the registration information storage unit 42 is shown in FIG. As shown in FIG. 5, in the first record, the registration ID “123A1” and the encryption information are stored.
  • the collation unit 40 reads the encrypted information (c 1 ) for registration of the record having the same room number of the registered ID of the registered information storage unit 42 from the received registered ID, and collates the encrypted information (3).
  • the encrypted information for registration (c 1 ) read out is compared with the encrypted information for verification (c 2 ) using the encryption verification function F of the formula, and the encrypted verification result (c 3 ) Get Then, the encrypted verification result (c 3 ) and the registered ID for which verification has been performed are transmitted to the encryption device 3.
  • the operation of the encryption device 3 will be described with reference to FIGS. 6 and 7.
  • the operation of the server 6 will be described using FIGS. 8 and 9.
  • the encryption device 3 When the encryption device 3 receives the first information (p 1 ) from the input device 2, the encryption device 3 executes the registration processing routine shown in FIG. In addition, when the encryption device 3 receives the second information (p 2 ) from the reading device 4, the encryption device 3 executes the collation process routine shown in FIG. 7.
  • the CPU reads out a predetermined program stored in the storage unit described above and executes each process of the program in the process of each step below. realizable.
  • step S100 the encryption unit 30 generates a first encryption key (k 1 ) using a pseudo random number.
  • step S102 the encryption unit 30 encrypts the first information (p 1 ) by the encryption function E of the equation (1) based on the first encryption key (k 1 ) generated in step S102. To create encrypted information (c 1 ) for registration.
  • step S104 the encryption unit 30 generates a registration ID using a previously set room number.
  • step S106 the encryption unit 30 associates the encrypted information (c 1 ) generated in step S106 with the registration ID generated in step S106 and transmits the information together with the registration command to the server 6, and
  • the key (k 1 ) is associated with the registration ID and stored in the storage table 32A of the key storage unit 32, and the process is ended.
  • step S200 the comparison result decryption unit 34 generates a second encryption key (k 2 ) for comparison using a pseudorandom number.
  • step S202 the collation result decryption unit 34 reads the reading device 4 by the encryption function E of the equation (1) based on the second encryption key (k 2 ) for collation generated in step S200.
  • the second information (p 2 ) is encrypted to generate encrypted information (c 2 ) for comparison.
  • step S204 the collation result decryption unit 34 associates the encrypted information (c 2 ) generated in step S204 with the room number and the registration ID stored in the key storage unit 32, and sends the server 6 together with the collation command. While transmitting, the second encryption key (k 2 ) is stored in the storage table 32B of the key storage unit 32 in association with the registration ID.
  • step S206 the collation result decoding unit 34 determines whether or not the collation result is received from the server 6. If it is received, the process proceeds to step S208, and if it is not received, the step S206 is repeated.
  • step S208 the verification result decryption unit 34 uses the first encryption key (k 1 ) and the second encryption key for verification (k 2 ) stored in the key storage unit 32 to perform the above (4). Degree of coincidence between the first information and the second information by obtaining the collation result ⁇ obtained by decrypting the encrypted collation result (c 3 ) received from the server 6 by the decryption function D) of the equation Ask for
  • step S210 the collation result decoding unit 34 notifies the control mechanism 5 of lock release or an error according to the decoded collation result ⁇ .
  • step S212 the collation result decryption unit 34 deletes the record of the second encryption key (k 2 ) for collation stored in the storage table 32B as the one-time key, and ends the processing.
  • the registration processing routine of the server 6 will be described.
  • the processing of each step below can be realized by the CPU reading out a predetermined program stored in the storage unit described above and executing each process of the program. .
  • the server 6 When the server 6 receives the registration command and the encryption information for registration (c 1 ) and the registration ID, the server 6 executes a registration processing routine shown in FIG.
  • step S300 when the communication unit 22 receives the registration command and the registration encrypted information (c 1 ) and the registration ID, the communication unit 22 causes the registration information storage unit 42 to register the registration encrypted information (c 1 ) and the registration ID. Is stored, and the process ends.
  • the server 6 When the server 6 receives the collation information and the collation information (c 2 ) and the registration ID together with the collation command, the server 6 executes the collation processing routine shown in FIG.
  • step S400 the collation unit 40 reads out the encryption information (c 1 ) for registration of the record of the registration ID of the registration information storage unit 42 that matches the received registration ID.
  • step S402 the collation unit 40 uses the encrypted collation function F of the above equation (3) to collate the encrypted information, and reads the encrypted information for registration (c 1 ) for registration read out and the encrypted information to be collated. (C 2 ) is collated to obtain an encrypted collation result (c 3 ).
  • step S404 the collation unit 40 transmits the encrypted collation result (c 3 ) and the registered ID subjected to the collation to the encryption device 3, and ends the processing.
  • the encryption device installed in each room is the first encryption key , Encrypts the input first information to generate encrypted information for registration and transmits it to the server, and encrypts the input second information based on the second encryption key
  • the server includes an encryption unit that generates encryption information to be collated and transmits it to the server, and the server uses the encryption collating function that collates the encrypted information to encrypt the registration encryption information and the encryption to be collated.
  • the information processing apparatus further includes a verification unit that collates information and transmits a verification result to the encryption device, and the encryption device uses a decryption function to decrypt the verification result using the first encryption key and the second encryption key. , A verification result for finding the degree of coincidence between the first information and the second information By constructing as further comprising a unit, it is possible to improve the secrecy of the time of collating the information entered.
  • the configuration of the cryptographic data processing system according to the second embodiment of the present disclosure will be described.
  • information is read by a reader provided at the door of each room for managing entry and exit of the room, and the information is collected and managed in one encryption apparatus Will be described by way of example.
  • the same parts as those in the first embodiment will be assigned the same reference numerals and explanation thereof will be omitted.
  • the encryption data processing system 200 includes a reading device 204, an encryption device 203, and a server 6, and the encryption device 203 and the server 6 It is connected via a network 10 such as the Internet.
  • the reader 204 is a device provided in each room for reading data of a magnetic card.
  • the hotel manager places the magnetic card of the hotel user over the same device as the reading device 204 installed at the front of the hotel etc.
  • Information (hereinafter referred to as the first information (p 1 )) is read for registration, and the read first information (p 1 ) is associated with the room number of the room assigned to the hotel user Input to the encryption device 203.
  • the first information (p 1 ) and the room number may be transmitted to the encryption device 203 using the input device 2.
  • the reading device 204 assumes that the hotel user holds the magnetic card of the hotel user against the reading device 204, for example, as being installed at the door of the hotel.
  • the information on the magnetic card (hereinafter referred to as second information (p 2 )) is read for comparison, and the read second information is transmitted to the encryption device 203 in association with the room number.
  • the reading device 204 may be any device as long as it reads biological information, an output signal from a smartphone, and the like. In that case, information such as biometric information and an output signal from a smartphone is transmitted to the encryption device 203 as first information and second information.
  • the encryption device 203 includes a communication unit 20, an encryption unit 230, a key storage unit 232, and a collation result decryption unit 234.
  • Encryption unit 230 includes a first information from the reader 204 (p 1), upon receiving a room number, it generates a first cipher key (k 1), based on the first encryption key (k 1) Then, the first information (p 1 ) read by the reading device 204 for registration is encrypted by the encryption function E of the equation ( 1 ) to generate registration information (c 1 ).
  • the encryption unit 230 also generates a registration ID for each registration of the encryption information.
  • the registration ID may be generated by, for example, “room number + registration number” using information corresponding to the room number at the time of registration.
  • the registration number is, for example, “A1” or “A2” or the like obtained by hashing the read information (p 1 ), and management of registration corresponding to a plurality of information (p 1 ) and a plurality of rooms can be performed.
  • the encryption unit 230 associates the generated encrypted information (c 1 ) with the registration ID, and transmits it to the server 6 together with the registration command.
  • the first encryption key (k 1 ) and the registration ID are associated with each other and stored in the storage table 232A of the key storage unit 232.
  • the room ID and the registration ID may be associated with each other and stored in the key storage unit 32 without using the room number as the registration ID.
  • the encryption unit 230 when the encryption unit 230 receives the second information (p 2 ) and the room number from the reading device 204, the encryption unit 230 generates (k 2 ) a second encryption key for verification, and the second for verification And encrypt the second information (p 2 ) read by the reading device 204 for verification by the encryption function E of the equation (2) based on the encryption key (k 2 ) of Generate (c 2 ).
  • the second encryption key for verification is a one-time key, and is effective only at the time of verification.
  • the encryption unit 230 associates the generated encryption information (c 2 ) with the registration ID stored in the key storage unit 32 in correspondence with the room number, and transmits it to the server 6 together with the collation command. The association may be performed using a room number that can be identified from the registration ID.
  • the second encryption key (k 2 ) for verification is stored in the storage table 232B of the key storage unit 32.
  • the key storage unit 232 stores a first encryption key (k 1 ) associated with the registration ID and a second encryption key (k 2 ) for verification.
  • the table configuration is the same as that of the key storage unit 32 of the first embodiment, but in the second embodiment, management of keys corresponding to a plurality of rooms is performed.
  • the collation result decryption unit 234 notifies the control mechanism 5 of the room of the room having the room number corresponding to the registered ID collated according to the collation result decrypted by performing the same processing as the first embodiment. , Unlock the door of the room, or notify of an error.
  • the other configuration of the second embodiment is the same as that of the first embodiment, and hence the description thereof is omitted.
  • the encryption device 203 when the encryption device 203 receives the first information (p 1 ) and the room number from the reading device 204, the encryption device 203 executes the registration processing routine shown in FIG. Further, when the encryption device 203 receives the second information (p 2 ) and the room number from the reading device 204, the encryption device 203 executes the collation processing routine shown in FIG.
  • the information from the reading device in each room is received, aggregated and processed
  • the encrypting device encrypts the input first information based on the first encryption key to generate encrypted information for registration and transmits it to the server, and based on the second encryption key
  • the server further comprises: an encryption unit that encrypts the input second information to generate encrypted information to be collated and transmits the encrypted information to the server, and the server uses the encrypted collation function to collate the encrypted information for registration And a verification unit for collating the encrypted information of and the encrypted information to be collated and transmitting the collation result to the encryption device, the encryption device using the first encryption key and the second encryption key First function and the second information according to a decoding function for decoding the collation result
  • a collation result decoding unit for determining the degree of matching between, it is possible to improve the confidentiality of when matching information entered.
  • the configuration of the cryptographic data processing system according to the third embodiment of the present disclosure will be described.
  • the third embodiment a case where the present invention is applied to entrance and exit of a venue such as an event will be described.
  • the configuration of the third embodiment is the same as that of the second embodiment shown in FIG. 10, but different points in the third embodiment will be described below.
  • the reading device 204 is a device installed at a gate of entry / exit and reading output information of a smartphone of an event participant.
  • the output information of the smartphone read by the reader (not shown) provided on the event participant side is encrypted as the first information (p 1 ) via the network 10 Is sent to the Further, at the time of collation of the encryption information, the reader 4 reads, for example, the output information of the smartphone of the event participant as second information (p 2 ) for collation, and encrypts the read second information. It transmits to the conversion device 3.
  • the encryption unit 230 performs the same process as that of the second embodiment.
  • the registration ID is generated for each reception, and for example, the output information of the smartphone may be hashed and the upper N digits of the hashed data may be generated as the registration ID.
  • a server connected via the Internet And in the encryption data processing system including the encryption device, the encryption device encrypts the input first information based on the first encryption key to generate encryption information for registration and sends it to the server And an encryption unit that encrypts the input second information based on the second encryption key to generate encrypted information to be collated and transmits the encrypted information to the server, the server collates the encrypted information.
  • the encryption device for collating the registration encryption information with the encryption information to be collated using the encryption collation function to be transmitted, and transmitting a collation result to the encryption device; Encryption key and the second dark
  • the encrypted information can be obtained by performing the collation while the information is encrypted and obtaining the collation result for the encrypted information.
  • the original information can not be identified, there is an advantage that authentication can be performed while maintaining confidentiality.
  • the security of the personal authentication can be improved while securing the security.
  • the technology (A) is a technology for the purpose of identification for preventing unauthorized registration.
  • the technique (B) of the present disclosure is a technique for the purpose of authentication in which authentication is performed using encrypted information.
  • points of the technology (A) different from the technology (B) of the present disclosure will be described.
  • the cryptographic processing device calculates the cryptographic data C1 of the first encryption key KA1 ⁇ temporary key Kt ⁇ registration data m A and registers the same in the computing device. Further, the determination device calculates encryption key data Ek (KA2) obtained by encrypting the second key KA2 with the temporary key Kt, and transmits it to the calculation device. Then, the computing device calculates and registers the encrypted data C2 from the encrypted data C1 and the encryption key data Ek (KA2).
  • (A) is characterized in that unauthorized registration is prevented by performing registration processing by performing encryption using a plurality of encryption keys.
  • the collation processing of the information registered in (A) will be described.
  • the cryptographic processing device calculates the cryptographic data C1 ′ of the first encryption key KA1 ⁇ temporary key Kt′ ⁇ authenticated data M A and transmits it to the computing device.
  • the determination device calculates encryption key data Ek ′ (KA2) obtained by encrypting the second key KA2 with the temporary key Kt ′, and transmits the encryption key data Ek ′ (KA2) to the calculation device.
  • the computing device calculates the cryptographic data C2 ′ from the cryptographic data C1 ′ and the cryptographic key data Ek ′ (KA2), collates the registered cryptographic data C2 with the calculated cryptographic data C2 ′, It judges the success and failure of authentication.
  • (A) is a technique aimed at improving security related to registration to the last, and is not a technology that assumes security related to collation.
  • the server performs the collation processing as described above, the success or failure of the collation result is not known, and the first encryption key and the second encryption key are generated by the encryption device.
  • the success or failure of the collation result can be known by decoding the collation result by the server using. That is, since the success or failure of the collation result is not known from the collation result by the server, there is little risk of leakage of the key information, and there is an advantage that high-speed authentication can be performed.
  • the technology of the present disclosure has a significant advantage over the technology of (A).
  • the first information and the second information are encrypted by the encryption function E by the encryption unit.
  • hashing may be performed by modulation code instead of encryption.
  • the encryption verification function F of the verification unit on the server side and the decryption function D of the verification result decryption unit 34 on the encryption apparatus side may be realized as a function corresponding to the modulation code. .

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Theoretical Computer Science (AREA)
  • Computing Systems (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Health & Medical Sciences (AREA)
  • Software Systems (AREA)
  • General Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • Storage Device Security (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

暗号化装置は、第1の暗号鍵に基づいて、第1の情報を暗号化して登録用の暗号化情報をサーバへ送信し、第2の暗号鍵に基づいて、第2の情報を暗号化して照合対象の暗号化情報をサーバへ送信する暗号化部を備え、前記サーバは、暗号化情報を照合する暗号化照合関数を用いて、前記登録用の暗号化情報と、前記照合対象の暗号化情報とを照合し、照合結果を前記暗号化装置へ送信する照合部を備え、前記暗号化装置は、前記第1の暗号鍵及び前記第2の暗号鍵を用いて前記照合結果を復号化する復号化関数により、前記第1の情報と前記第2の情報との一致度合いを求める照合結果復号化部を更に含む、暗号データ処理システムが提供される。

Description

暗号データ処理システム、及びプログラム
 本開示は暗号データ処理システム、及びプログラムに係り、特に、入力された情報を照合するための暗号データ処理システム、及びプログラムに関する。
 従来より、暗号化した情報を処理する技術が開発されている。
 例えば、クライアント端末とデータベースサーバとの間で情報を暗号化して通信する際に、2つの暗号鍵を用いて暗号化することでセキュリティを向上させる技術がある(特開2007-318518号公報)。
 また、登録データを二重に暗号化した暗号データを生成して登録することで、不正な改ざんを防止する技術がある(特開2015-192446号公報)。
 また、照合用生体特徴データと登録生体特徴データとを比較・照合し、所定の一致条件を満たしていれば、暗証番号を、携帯電子装置から管理装置へ送信する技術がある(再公表2001-42938号公報)。
 また、リレーショナル暗号化等の技術を利用して、暗号文と、登録暗号文との近似を照合し、ユーザ認証を行う技術がある(特開2015-225343号公報、特開2017-21330号公報、及び特開2017-21331号公報)。
 しかし、従来は、暗号化された情報を復号することなく照合することはできるものの、照合結果については秘匿性がなかった。
 本開示は、上記事情を鑑みて成されたものであり、入力された情報を照合する際の秘匿性を向上させた暗号データ処理システム、及びプログラムを提供することを目的とする。
 本開示の第1の態様は、インターネットを介して接続されたサーバ及び暗号化装置を含む暗号データ処理システムであって、前記暗号化装置は、第1の暗号鍵に基づいて、入力された第1の情報を暗号化して登録用の暗号化情報を生成してサーバへ送信し、第2の暗号鍵に基づいて、入力された第2の情報を暗号化して照合対象の暗号化情報を生成してサーバへ送信する暗号化部を備え、前記サーバは、暗号化情報を照合する暗号化照合関数を用いて、前記登録用の暗号化情報と、前記照合対象の暗号化情報とを照合し、照合結果を前記暗号化装置へ送信する照合部を備え、前記暗号化装置は、前記第1の暗号鍵及び前記第2の暗号鍵を用いて前記照合結果を復号化する復号化関数により、前記第1の情報と前記第2の情報との一致度合いを求める照合結果復号化部を更に含んで構成されている、暗号データ処理システムである。
 本開示の第2の態様は、上記第1の態様において、前記第2の暗号鍵を、ワンタイムキーとした暗号データ処理システムである。
 本開示の第3の態様は、上記第1又は第2の態様において、前記第1の情報、前記第2の情報を、磁気カード、生体情報、又は情報端末の出力信号を読み取る読取装置を用いて得られた情報とする暗号データ処理システムである。
 本開示の第4の態様は、上記第1~第3の態様において、本開示の第4の態様は、上記第1~第3の態様において、前記第1の情報、及び前記第2の情報はデータをハッシュ化したものとする暗号データ処理システムである。
 本開示の第5の態様は、上記第1~第4の態様において、前記暗号化装置の前記暗号化部は、前記第1の情報に対応する任意の登録IDを、前記登録用の暗号化情報と対応付けてサーバに送信し、前記登録IDを、前記照合対象の暗号化情報と対応付けて前記サーバに送信し、前記サーバは、受信した前記登録ID及び前記登録用の暗号化情報が対応付けられて記憶される登録情報記憶部を更に含み、前記サーバの前記照合部は、受信した前記照合対象の暗号化情報と対応付けられた前記登録IDが対応付けられた前記登録用の暗号化情報を、前記登録情報記憶部から読み出し、前記読み出した前記登録用の暗号化情報と、前記照合対象の暗号化情報とを照合し、照合結果を前記暗号化装置へ送信する暗号データ処理システムである。
 本開示の第6の態様は、上記第5の態様において、前記暗号化装置は、前記登録IDが対応付けられた前記第1の暗号鍵、及び前記第2の暗号鍵が記憶される鍵記憶部を更に含み、前記照合結果復号化部は、前記照合結果が求められた前記登録IDに対応する前記第1の暗号鍵及び前記第2の暗号鍵を用いて、前記照合結果を復号化する復号化関数により、前記第1の情報と前記第2の情報との一致度合いを求める暗号データ処理システムである。
 本開示の第7の態様は、暗号化装置による暗号データ処理方法であって、前記暗号化装置は、第1の暗号鍵に基づいて、入力された第1の情報を暗号化して登録用の暗号化情報を生成してサーバへ送信し、第2の暗号鍵に基づいて、入力された第2の情報を暗号化して照合対象の暗号化情報を生成してサーバへ送信し、前記サーバから、暗号化情報を照合する暗号化照合関数を用いて、前記登録用の暗号化情報と、前記照合対象の暗号化情報とが照合された照合結果を受信し、前記第1の暗号鍵及び前記第2の暗号鍵を用いて前記照合結果を復号化する復号化関数により、前記第1の情報と前記第2の情報との一致度合いを求める、暗号データ処理方法である。
 本開示の第8の態様は、暗号化装置であるコンピュータを、第1の暗号鍵に基づいて、入力された第1の情報を暗号化して登録用の暗号化情報を生成してサーバへ送信し、第2の暗号鍵に基づいて、入力された第2の情報を暗号化して照合対象の暗号化情報を生成してサーバへ送信し、前記サーバから、暗号化情報を照合する暗号化照合関数を用いて、前記登録用の暗号化情報と、前記照合対象の暗号化情報とが照合された照合結果を受信し、前記第1の暗号鍵及び前記第2の暗号鍵を用いて前記照合結果を復号化する復号化関数により、前記第1の情報と前記第2の情報との一致度合いを求める、ことを含む処理を実行させることを特徴とするプログラムである。
 本開示の暗号データ処理システムによれば、インターネットを介して接続されたサーバ及び暗号化装置を含む暗号データ処理システムであって、暗号化装置は、第1の暗号鍵に基づいて、入力された第1の情報を暗号化して登録用の暗号化情報を生成してサーバへ送信し、第2の暗号鍵に基づいて、入力された第2の情報を暗号化して照合対象の暗号化情報を生成してサーバへ送信する暗号化部を備え、サーバは、暗号化情報を照合する暗号化照合関数を用いて、登録用の暗号化情報と、照合対象の暗号化情報とを照合し、照合結果を前記暗号化装置へ送信する照合部を備え、暗号化装置は、第1の暗号鍵及び第2の暗号鍵を用いて照合結果を復号化する復号化関数により、第1の情報と前記第2の情報との一致度合いを求める照合結果復号化部を更に含むように構成することにより、暗号化された情報を復号することなく照合し、入力された情報を照合する際の秘匿性を向上させることができる。
登録処理の概要を示す図である。 照合処理の概要を示す図である。 本開示の第1の実施の形態に係る暗号データ処理システムの構成を示すブロック図である。 第1の実施の形態の鍵記憶部32に格納される情報の一例を示す図である。 登録情報記憶部42に格納される情報の一例を示す図である。 本開示の実施の形態に係る暗号化装置の登録処理ルーチンの一例を示す図である。 本開示の実施の形態に係る暗号化装置の照合処理ルーチンの一例を示す図である。 本開示の実施の形態に係るサーバの登録処理ルーチンの一例を示す図である。 本開示の実施の形態に係るサーバの照合処理ルーチンの一例を示す図である。 本開示の第2及び第3の実施の形態に係る暗号データ処理システムの構成を示すブロック図である。 第2及び第3の実施の形態の鍵記憶部32に格納される情報の一例を示す図である。
 以下、図面を参照して本開示の実施の形態を詳細に説明する。
<本開示の実施の形態に係る概要>
 まず、本開示の実施の形態における技術を提案するに至った背景について説明する。
 近年、暗号化された情報に対して、復号化せずにどうやって検索や処理を行うか(searchable secure encryption, SSE)が問題となっている。日本では、各種企業が研究を行っている。暗号化された情報にタグを付けて処理を行う技術により、処理速度の向上を目的として開発が行われている。しかし、タグ情報そのものは秘匿出来ないため、完全な安全性は担保されていない。また、例えば、RSAで用いられているような準同型暗号関数を用いて技術を開発しているが、処理速度は非常に遅く、実用化が容易でない。世界的な動向としてはsomewhat homomorphic encryptionの一つであるpailler暗号方式等があるが、内部状態として入力の数千倍ものメモリ領域が必要となることや、処理速度などに懸念がある。
 本開示の実施の形態に係る技術は、このような背景を元に、処理速度、安全性、及び内部メモリ削減を目標とし、SSE技術に対する一つのソリューションとして提案されたものである。この技術は情報を暗号化したまま処理するという分野において、根幹をなす技術であり、実用化において様々な応用が可能である。
 本開示の実施の形態に係る技術は、2つの情報を暗号化し、2つの情報を復号化することなく照合する技術である。これにより、生体情報保護、カード番号などの個人情報保護、文書の改ざん防止などを、より安全かつ高速に処理することが可能となる。
<本開示の実施の形態に係る原理>
 まず、本開示の実施の形態における原理を説明する。
 以下に説明するように、本開示の実施の形態の技術は、ステップ1(登録)とステップ2(照合)とに分けられる。
 まず、本開示の実施の形態で用いる表記、及び各関数について説明する。
 Pは、平文空間であり、対象となる情報の空間を表す。p,p∈Pは、平文1と平文2であり、対象となる情報1及び情報2を表す。Kは、鍵空間であり、暗号化で用いられる鍵の空間を表す。k,k∈Kは、鍵1及び鍵2であり、暗号化に用いられる鍵を表す。Cは、暗号文の空間を表す。
 E:P→Cは、暗号化関数を表し、平文と鍵kを用いて暗号文を発生させる。
 D:C→Pは、復号化関数を表し、暗号文を鍵kを用いて平文へ復号化する。
Figure JPOXMLDOC01-appb-M000001

 
は、照合関数を表す。照合関数は、2つの情報を照合し、一致する場合は0、一致しない場合は0以外の整数を返す関数である。
 F:C×C→Cは、暗号化照合関数を表し、暗号化された2つの情報を照合し、暗号文を返す関数である。暗号化照合関数は、次の関係を満たす。
Figure JPOXMLDOC01-appb-M000002

 ただし、
Figure JPOXMLDOC01-appb-M000003

である。
 次にステップ1(登録)、及びステップ2(照合)を説明する。
 ステップ1(登録)の概要図を図1に示す。ステップ1(登録)では、ユーザーは情報1(平文p)に対して、生成された鍵kを用いて、以下(1)式の暗号化関数を計算し、登録用の暗号化情報cをサーバへ送る。
Figure JPOXMLDOC01-appb-M000004

                                 ・・・(1)
 ただし、
Figure JPOXMLDOC01-appb-M000005

は、ビット毎のXOR演算を示す。
 サーバとの通信路は公開通信路で構わない。鍵(k)は擬似乱数などで生成したものとし、ユーザーは鍵(k)を秘匿保持する。また、登録ごとに固有のIDを発行し、登録用の暗号化情報cと対応付けるものとする。
 ステップ2(照合)の概要図を図2に示す。ステップ2(照合)では、ユーザーは情報2(平文p)に対して、生成された鍵kを用いて、以下(2)式の暗号化関数を計算し、照合用の暗号化情報cをサーバへ送る。
Figure JPOXMLDOC01-appb-M000006

                                 ・・・(2)
 鍵(k)は照合の度に擬似乱数などで生成したものとし、ユーザーは鍵(k)を、照合結果を得るまで秘匿保持する。また、登録時のIDを、照合用の暗号化情報cと対応付けるものとする。
 サーバは、以下(3)式の暗号化照合関数Fを計算し、暗号化された照合結果cをユーザーへ返す。
Figure JPOXMLDOC01-appb-M000007

                                                 ・・・(3)
 通信路は公開通信路で構わない。
 そして、ユーザーは暗号化された照合結果cについて鍵k、鍵kを用いて、以下(4)式の復号化関数Dを計算し、照合結果αを得る。
Figure JPOXMLDOC01-appb-M000008

                                               ・・・(4)
 以上が本開示の実施の形態で用いる技術の原理の説明である。
<本開示の第1の実施の形態に係る暗号データ処理システムの構成>
 次に、本開示の第1の実施の形態に係る暗号データ処理システムの構成について説明する。第1の実施の形態では、ホテル等の施設において、部屋の入退出の管理のため、各部屋のドアにそれぞれ暗号化装置及び読取装置を設ける場合を例に説明する。
 図3に示すように、本開示の第1の実施の形態に係る暗号データ処理システム100は、入力装置2と、暗号化装置3と、読取装置4と、制御機構5と、サーバ6とを含み、暗号化装置3及びサーバ6はインターネット等のネットワーク10を介して接続されている。
 入力装置2は、例えば、ホテルの管理者が保有する端末とし、暗号化情報の登録時において、ホテルの予約をしたホテル利用者側に設けられた読取装置(図示省略)で読み取られた磁気カードの情報(以下、第1の情報(p)とする)を、ホテル利用者に割り当てられた部屋のドアに設けられた暗号化装置3に送信する。なお、ホテル利用者側に設けられた読取装置(図示省略)で読み取られた磁気カードの情報は、ネットワーク10を介して取得される。
 読取装置4は、磁気カードのデータを読み取る各部屋のドアに設置された装置である。読取装置4は、暗号化情報の照合時において、例えば、ホテル利用者がかざした磁気カードの情報(以下、第2の情報(p)とする)を照合用に読み取って、読み取った第2の情報(p)を暗号化装置3に送信する。
 なお、読取装置4は、生体情報、スマートフォンからの出力信号等を読み取る装置であってもよい。その場合、生体情報、スマートフォンからの出力信号等の情報を第1の情報及び第2の情報として暗号化装置3に送信する。
 次に、暗号化装置3について説明する。
 暗号化装置3は、通信部20と、暗号化部30と、鍵記憶部32と、照合結果復号化部34と、を含んで構成されている。暗号化装置3は、本実施の形態では、各部屋に備え付けられているものとする。なお、暗号化装置3は、例えば、コンピュータで実現することができる。コンピュータは、Central Processing Unit(CPU)と、一時記憶領域としてのメモリと、不揮発性の記憶部とを備える。また、コンピュータは、入出力インターフェース(I/F)と、記憶媒体に対するデータの読み込み及び書き込みを制御するRead/Write(R/W)部と、インターネット等のネットワークに接続されるネットワークインターフェース(I/F)とを備える。記憶部は、Hard Disk Drive(HDD)、Solid State Drive(SSD)、フラッシュメモリ等によって実現できる。記憶媒体としての記憶部には、コンピュータを暗号化装置3として機能させるためのプログラムが記憶される。CPUは、プログラムを記憶部から読み出してメモリに展開し、プログラムが有する各プロセスを順次実行する。CPUが、プログラムの各プロセスを実行することによって、上記図3に示す、通信部20、暗号化部30、及び照合結果復号化部34として動作する。
 通信部20は、ネットワーク10を介し、サーバ6に、登録用の暗号化情報、及び登録IDを登録コマンドと共に送信する。また、通信部20は、照合用の暗号化情報、及び登録IDを照合コマンドと共に送信する。また、通信部20は、サーバ6から暗号化された照合結果と、照合を行った登録IDとを受信する。
 暗号化部30は、入力装置2から第1の情報(p)を受信すると、第1の暗号鍵(k)を生成し、第1の暗号鍵(k)に基づいて、上記(1)式の暗号化関数Eにより、第1の情報(p)を暗号化して登録用の暗号化情報(c)を生成する。また、暗号化部30は、暗号化情報の登録毎に登録IDを生成する。登録IDは、例えば、予め設定された部屋番号を用いて、「部屋番号+登録番号」などにより生成すればよい。登録番号は、例えば、読み取った情報(p)をハッシュ化した「A1」「A2」等とし、情報(p)を識別できるものとする。そして、暗号化部30は、生成した暗号化情報(c)と、登録IDとを対応付けて登録コマンドと共にサーバ6へ送信する。また、第1の暗号鍵(k)と、登録IDとを対応付けて鍵記憶部32の格納テーブル32Aに保存する。なお、各部屋には予め部屋番号が設定されているため、登録IDには部屋番号を用いなくてもよい。また、登録IDの生成に用いるものは部屋番号に限定されるものではなく、施設情報から抽出された固有の情報であってもよい。固有の情報としては、例えば、位置情報、電話番号等が想定される。
 また、暗号化部30は、読取装置4から第2の情報(p)を受信すると、照合用の第2の暗号鍵を生成(k)し、照合用の第2の暗号鍵(k)に基づいて、上記(2)式の暗号化関数Eにより、第2の情報(p)を暗号化して照合用の暗号化情報(c)を生成する。ここで、照合用の第2の暗号鍵は、ワンタイムキーであり、照合時においてのみ有効である。そして、暗号化部30は、生成した暗号化情報(c)と、鍵記憶部32に保存された登録IDとを対応付けて照合コマンドと共にサーバ6へ送信する。また、照合用の第2の暗号鍵(k)を鍵記憶部32の格納テーブル32Bに保存する。
 鍵記憶部32は、登録IDと対応付いた第1の暗号鍵(k)、及び照合用の第2の暗号鍵(k)を記憶するものである。図4に鍵記憶部32の第1の暗号鍵(k)の格納テーブル32Aの一例を示す。第1レコードには、登録ID「123A1」と暗号鍵が格納されている。登録IDの「123」が部屋番号、「A1」が登録番号を表している。また、図4に照合用の第2の暗号鍵(k)の格納テーブル32Bの一例を示す。格納テーブル32Bは格納テーブル32Aと同様の構成であるが、照合結果復号化部34において照合結果が得られるまで、照合用の第2の暗号鍵(k)をワンタイムキーとして一時的に記憶しておくものである。そのため、照合後はワンタイムキーとして記憶していた照合用の第2の暗号鍵(k)のレコードは削除される。
 照合結果復号化部34は、第1の暗号鍵(k)及び照合用の第2の暗号鍵(k)を用いて、上記(4)式の復号化関数Dにより、サーバ6から受信した、暗号化された照合結果(c)を復号化した照合結果αを得ることにより、第1の情報と第2の情報との一致度合いを求める。第1の暗号鍵及び第2の暗号鍵は、サーバ6から受信した、照合を行った登録IDに対応する鍵記憶部32の格納テーブル32A及び格納テーブル32Bの登録IDのレコードを参照して読み出し、復号化に用いるようにすればよい。
 また、照合結果復号化部34は、復号化した照合結果が、例えば、復号した照合結果αが0であり、第1の情報と第2の情報とが一致する場合には、制御機構5に解除を通知し、部屋のドアのロックを解除するように通知する。復号した照合結果αが1以上であり、第1の情報と第2の情報とが一致しない場合には、部屋のドアのロックを解除せずエラーを制御機構5に通知する。また、照合結果復号化部34は、鍵記憶部32の格納テーブル32Bにワンタイムキーとして記憶していた照合用の第2の暗号鍵(k)のレコードを削除する。
 制御機構5は、照合結果復号化部34から受信したロックの解除又はエラーの通知により、ドアのロックを解除するか、又は解除できないことをエラー音等により通知する。このように、制御機構5は、照合結果復号化部34の照合結果に基づく認証処理を行う機能部である。
 次に、サーバ6について説明する。
 サーバ6は、通信部22と、照合部40と、登録情報記憶部42とを含んで構成されている。なお、サーバ6は、上記暗号化装置3と同様に、コンピュータにより構成することができる。コンピュータによって構成する場合には、CPUが、プログラムの各プロセスを実行することによって、図3に示す、通信部22、及び照合部40として動作する。
 通信部22は、ネットワーク10を介し、暗号化装置30から、登録コマンドと共に登録用の暗号化情報(c)、及び登録IDを受信する。登録コマンドの場合には、登録情報記憶部42に登録用の暗号化情報、及び登録IDを記憶する。また、通信部22は、照合コマンドと共に照合用の暗号化情報(c)、及び登録IDを受信する。照合コマンドの場合には、照合部40に照合用の暗号化情報(c)、及び登録IDを入力する。また、通信部22は、照合部40によって得られた暗号化された照合結果(c)と、照合を行った登録IDとを暗号化装置3に送信する。
 登録情報記憶部42は、受信した登録用の暗号化情報、及び登録IDを、登録IDと暗号化情報とを対応付けた形式で記憶するものである。図5に登録情報記憶部42の格納テーブル42Aの一例を示す。図5に示すように、第1レコードには、登録ID「123A1」と暗号化情報が格納されている。
 照合部40は、受信した登録IDから、登録情報記憶部42の登録IDの部屋番号が一致するレコードの登録用の暗号化情報(c)を読み出し、暗号化情報を照合する上記(3)式の暗号化照合関数Fを用いて、読み出した登録用の暗号化情報(c)と、照合対象の暗号化情報(c)とを照合し、暗号化された照合結果(c)を得る。そして、暗号化された照合結果(c)と、照合を行った登録IDとを暗号化装置3へ送信する。
<本開示の第1の実施の形態に係る暗号データ処理システムの作用>
 次に、本開示の第1の実施の形態に係る暗号データ処理システムの作用について説明する。
 暗号化装置3の作用について図6及び図7を用いて説明する。サーバ6の作用について図8及び図9を用いて説明する。
 暗号化装置3は、入力装置2から第1の情報(p)を受信すると、図6に示す登録処理ルーチンを実行する。また、暗号化装置3は、読取装置4から第2の情報(p)を受信すると、図7に示す照合処理ルーチンを実行する。なお、以下の各ステップの処理は、暗号化装置3をコンピュータによって構成する場合においては、CPUが、上述の記憶部に記憶された所定のプログラムを読み出して、プログラムの各プロセスを実行することによって実現できる。
 まず、図6の登録処理ルーチンを説明する。
 ステップS100では、暗号化部30は、第1の暗号鍵(k)を擬似乱数により生成する。
 ステップS102では、暗号化部30は、ステップS102で生成した第1の暗号鍵(k)に基づいて、上記(1)式の暗号化関数Eにより、第1の情報(p)を暗号化して登録用の暗号化情報(c)を生成する。
 ステップS104では、暗号化部30は、予め設定された部屋番号を用いて、登録IDを生成する。
 ステップS106では、暗号化部30は、ステップS106で生成した暗号化情報(c)と、ステップS106で生成した登録IDとを対応付けて登録コマンドと共にサーバ6へ送信すると共に、第1の暗号鍵(k)を登録IDと対応付けて鍵記憶部32の格納テーブル32Aに保存し、処理を終了する。
 次に、図7の照合処理ルーチンを説明する。
 ステップS200では、照合結果復号化部34は、照合用の第2の暗号鍵(k)を擬似乱数により生成する。
 ステップS202では、照合結果復号化部34は、ステップS200で生成した照合用の第2の暗号鍵(k)に基づいて、上記(1)式の暗号化関数Eにより、読取装置4において読み取った第2の情報(p)を暗号化して照合用の暗号化情報(c)を生成する。
 ステップS204では、照合結果復号化部34は、ステップS204で生成した暗号化情報(c)と、部屋番号及び鍵記憶部32に保存された登録IDとを対応付けて照合コマンドと共にサーバ6へ送信すると共に、第2の暗号鍵(k)を登録IDと対応付けて鍵記憶部32の格納テーブル32Bに保存する。
 ステップS206では、照合結果復号化部34は、サーバ6から照合結果を受信したか否かを判定し、受信していればステップS208へ移行し、受信していなければステップS206を繰り返す。
 ステップS208では、照合結果復号化部34は、鍵記憶部32に保存されている第1の暗号鍵(k)及び照合用の第2の暗号鍵(k)を用いて、上記(4)式の復号化関数Dにより、サーバ6から受信した、暗号化された照合結果(c)を復号化した照合結果αを得ることにより、第1の情報と第2の情報との一致度合いを求める。
 ステップS210では、照合結果復号化部34は、復号化した照合結果αに応じて、制御機構5にロックの解除又はエラーを通知する。
 ステップS212では、照合結果復号化部34は、格納テーブル32Bにワンタイムキーとして記憶していた照合用の第2の暗号鍵(k)のレコードを削除し、処理を終了する。
 次に、サーバ6の作用について説明する。
 サーバ6の登録処理ルーチンについて説明する。なお、以下の各ステップの処理は、サーバ6をコンピュータによって構成する場合においては、CPUが、上述の記憶部に記憶された所定のプログラムを読み出して、プログラムの各プロセスを実行することによって実現できる。
 サーバ6は、登録コマンドと共に登録用の暗号化情報(c)、及び登録IDを受信すると、図8に示す登録処理ルーチンを実行する。
 ステップS300では、通信部22は、登録コマンドと共に登録用の暗号化情報(c)、及び登録IDを受信すると、登録情報記憶部42に登録用の暗号化情報(c)、及び登録IDを記憶し、処理を終了する。
 サーバ6の照合処理ルーチンについて説明する。
 サーバ6は、照合コマンドと共に照合用の暗号化情報(c)、及び登録IDを受信すると、図9に示す照合処理ルーチンを実行する。
 ステップS400では、照合部40は、受信した登録IDに一致する、登録情報記憶部42の登録IDのレコードの登録用の暗号化情報(c)を読み出す。
 ステップS402では、照合部40は、暗号化情報を照合する上記(3)式の暗号化照合関数Fを用いて、読み出した登録用の暗号化情報(c)と、照合対象の暗号化情報(c)とを照合し、暗号化された照合結果(c)を得る。
 ステップS404では、照合部40は、暗号化された照合結果(c)と、照合を行った登録IDとを暗号化装置3へ送信し、処理を終了する。
 以上説明したように、本開示の第1の実施の形態に係る、宿泊施設の入退出に用いられる暗号データ処理システムによれば、各部屋に設置された暗号化装置は、第1の暗号鍵に基づいて、入力された第1の情報を暗号化して登録用の暗号化情報を生成してサーバへ送信し、第2の暗号鍵に基づいて、入力された第2の情報を暗号化して照合対象の暗号化情報を生成してサーバへ送信する暗号化部を備え、サーバは、暗号化情報を照合する暗号化照合関数を用いて、登録用の暗号化情報と、照合対象の暗号化情報とを照合し、照合結果を前記暗号化装置へ送信する照合部を備え、暗号化装置は、第1の暗号鍵及び第2の暗号鍵を用いて照合結果を復号化する復号化関数により、第1の情報と前記第2の情報との一致度合いを求める照合結果復号化部を更に含むように構成することにより、入力された情報を照合する際の秘匿性を向上させることができる。
<本開示の第2の実施の形態に係る暗号データ処理システムの構成>
 次に、本開示の第2の実施の形態に係る暗号データ処理システムの構成について説明する。第2の実施の形態では、ホテル等の施設において、部屋の入退出の管理のため、各部屋のドアに設けられた読取装置で情報を読み取り、一つの暗号化装置に集約して管理する場合を例に説明する。なお、第1の実施の形態と同様となる箇所については同一符号を付して説明を省略する。
 図10に示すように、本開示の第2の実施の形態に係る暗号データ処理システム200は、読取装置204と、暗号化装置203と、サーバ6とを含み、暗号化装置203及びサーバ6はインターネット等のネットワーク10を介して接続されている。
 読取装置204は、各部屋に設けられた、磁気カードのデータを読み取る装置である。暗号化情報の登録時においては、例えば、ホテルのフロント等に設置された、読取装置204と同様の装置に対して、ホテルの管理人が、ホテル利用者の磁気カードをかざして、磁気カードの情報(以下、第1の情報(p)とする)を登録用に読み取って、読み取った第1の情報(p)と、ホテル利用者に割り当てられた部屋の部屋番号とを対応付けて暗号化装置203に入力する。なお、第1の実施の形態と同様に、入力装置2を用いて第1の情報(p)と、部屋番号とを暗号化装置203に送信するようにしてもよい。
 また、読取装置204は、暗号化情報の照合時においては、例えば、ホテルのドアに設置されているものとして、ホテル利用者が、読取装置204に対して、ホテル利用者の磁気カードをかざして、磁気カードの情報(以下、第2の情報(p)とする)を照合用に読み取って、読み取った第2の情報と、部屋番号とを対応付けて暗号化装置203に送信する。
 なお、読取装置204は、生体情報、スマートフォンからの出力信号等を読み取る装置であればどのようなものであってもよい。その場合、生体情報、スマートフォンからの出力信号等の情報を第1の情報及び第2の情報として暗号化装置203に送信する。
 次に、暗号化装置203について説明する。
 暗号化装置203は、通信部20と、暗号化部230と、鍵記憶部232と、照合結果復号化部234と、を含んで構成されている。
 暗号化部230は、読取装置204から第1の情報(p)と、部屋番号と受信すると、第1の暗号鍵(k)を生成し、第1の暗号鍵(k)に基づいて、上記(1)式の暗号化関数Eにより、読取装置204において登録用に読み取った第1の情報(p)を暗号化して登録用の暗号化情報(c)を生成する。また、暗号化部230は、暗号化情報の登録毎に登録IDを生成する。登録IDは、例えば、登録時の部屋番号に対応する情報を用いて、「部屋番号+登録番号」などにより生成すればよい。登録番号は、例えば、読み取った情報(p)をハッシュ化した「A1」「A2」等とし、複数の情報(p)、複数の部屋に対応した登録の管理が行えるものとする。そして、暗号化部230は、生成した暗号化情報(c)と、登録IDとを対応付けて登録コマンドと共にサーバ6へ送信する。また、第1の暗号鍵(k)と、登録IDとを対応付けて鍵記憶部232の格納テーブル232Aに保存する。なお、登録IDには部屋番号を用いずに、部屋番号と、登録IDとを対応付けてそれぞれ鍵記憶部32に保存するようにしてもよい。
 また、暗号化部230は、読取装置204から第2の情報(p)と、部屋番号とを受信すると、照合用の第2の暗号鍵を生成(k)し、照合用の第2の暗号鍵(k)に基づいて、上記(2)式の暗号化関数Eにより、読取装置204において照合用に読み取った第2の情報(p)を暗号化して照合用の暗号化情報(c)を生成する。ここで、照合用の第2の暗号鍵は、ワンタイムキーであり、照合時においてのみ有効である。そして、暗号化部230は、生成した暗号化情報(c)と、鍵記憶部32に当該部屋番号に対応して保存された登録IDとを対応付けて照合コマンドと共にサーバ6へ送信する。対応付けは登録IDから識別できる部屋番号により行えばよい。また、照合用の第2の暗号鍵(k)を鍵記憶部32の格納テーブル232Bに保存する。
 鍵記憶部232は、登録IDと対応付いた第1の暗号鍵(k)、及び照合用の第2の暗号鍵(k)を記憶するものである。図11に示すように、第1の実施の形態の鍵記憶部32と同様のテーブル構成であるが、第2の実施の形態では、複数の部屋に対応した鍵の管理を行う。
 照合結果復号化部234は、第1の実施の形態と同様の処理を行って復号化した照合結果により、照合を行った登録IDに対応する部屋番号の部屋の制御機構5に解除を通知し、部屋のドアのロックの解除、又はエラーを通知する。
 なお、第2の実施の形態の他の構成については第1の実施の形態と同様であるため説明を省略する。
<本開示の第2の実施の形態に係る暗号データ処理システムの作用>
 次に、本開示の第2の実施の形態に係る暗号データ処理システムの作用について説明する。
 第2の実施の形態では、暗号化装置203は、読取装置204から第1の情報(p)と、部屋番号と受信すると、上記図6に示す登録処理ルーチンを実行する。また、暗号化装置203は、読取装置204から第2の情報(p)と、部屋番号とを受信すると、上記図7に示す照合処理ルーチンを実行する。
 なお、第2の実施の形態の他の作用については第1の実施の形態と同様であるため説明を省略する。
 以上説明したように、本開示の第2の実施の形態に係る、宿泊施設の入退出に用いられる暗号データ処理システムによれば、各部屋の読取装置からの情報を受信して集約して処理する暗号化装置は、第1の暗号鍵に基づいて、入力された第1の情報を暗号化して登録用の暗号化情報を生成してサーバへ送信し、第2の暗号鍵に基づいて、入力された第2の情報を暗号化して照合対象の暗号化情報を生成してサーバへ送信する暗号化部を備え、サーバは、暗号化情報を照合する暗号化照合関数を用いて、登録用の暗号化情報と、照合対象の暗号化情報とを照合し、照合結果を前記暗号化装置へ送信する照合部を備え、暗号化装置は、第1の暗号鍵及び第2の暗号鍵を用いて照合結果を復号化する復号化関数により、第1の情報と前記第2の情報との一致度合いを求める照合結果復号化部を更に含むように構成することにより、入力された情報を照合する際の秘匿性を向上させることができる。
<本開示の第3の実施の形態に係る暗号データ処理システムの構成及び作用>
 次に、本開示の第3の実施の形態に係る暗号データ処理システムの構成について説明する。第3の実施の形態では、イベント等の会場の入場、退場に適用する場合について説明する。なお、第3の実施の形態の構成は、上記図10に示す第2の実施の形態と同様であるが、以下に第3の実施形態において異なる点について説明する。
 読取装置204は、入退場のゲートに設置され、イベント参加者のスマートフォンの出力情報を読み取る装置である。暗号化情報の登録時においては、例えば、イベント参加者側に設けられた読取装置(図示省略)で読み取られたスマートフォンの出力情報は、ネットワーク10を介して第1の情報(p)として暗号化装置3に送信される。また、読取装置4は、暗号化情報の照合時においては、例えば、イベント参加者のスマートフォンの出力情報を第2の情報(p)として照合用に読み取って、読み取った第2の情報を暗号化装置3に送信する。
 暗号化部230は、第2の実施の形態と同様の処理を行う。本実施の形態では、登録IDは、受付毎に生成するものとし、例えば、スマートフォンの出力情報をハッシュ化し、ハッシュ化されたデータの上位N桁を、登録IDとして生成すればよい。
 なお、第3の実施の形態の他の構成及び作用は第2の実施の形態と同様であるため説明を省略する。
 以上説明したように、本開示の第3の実施の形態に係る、イベント会場の入退場に用いられる暗号データ処理システムによれば、暗号データ処理システムによれば、インターネットを介して接続されたサーバ及び暗号化装置を含む暗号データ処理システムにおいて、暗号化装置は、第1の暗号鍵に基づいて、入力された第1の情報を暗号化して登録用の暗号化情報を生成してサーバへ送信し、第2の暗号鍵に基づいて、入力された第2の情報を暗号化して照合対象の暗号化情報を生成してサーバへ送信する暗号化部を備え、サーバは、暗号化情報を照合する暗号化照合関数を用いて、登録用の暗号化情報と、照合対象の暗号化情報とを照合し、照合結果を前記暗号化装置へ送信する照合部を備え、暗号化装置は、第1の暗号鍵及び第2の暗号鍵を用いて照合結果を復号化する復号化関数により、第1の情報と前記第2の情報との一致度合いを求める照合結果復号化部を更に含むように構成することにより、入力された情報を照合する際の秘匿性を向上させることができる。
 以上のように、情報を暗号化したまま照合を行い、暗号化された情報について照合結果を得るようにすることで、ネットワーク上でやり取りされる情報を取得されたとしても、暗号化された情報からは元の情報を特定することができないため、秘匿性を保ったまま認証等を行えるというメリットがある。
 また、上述した各実施形態によれば、暗号化された情報を復号することなく照合し、照合結果をリアルタイムに利用できるため、セキュリティを担保しつつ、個人の認証に関する利便性が向上する。
 また、上述した各実施形態によれば、暗号化された情報を用いて、高速に認証を行えるというメリットもある。
 ここで従来の特開2015-192446号公報と本開示の技術との対比したそれぞれの特徴について説明する。以下、特開2015-192446号公報の技術を(A)、本開示の技術を(B)として説明する。
 技術(A)は、不正登録を防止するためのアイデンティフィケーションを目的とした技術である。一方、本開示の技術(B)は、暗号化された情報を用いて認証を行うオーセンティケーションを目的とした技術である。このような目的の相違を前提に、技術(A)について本開示の技術(B)と相違する点を説明する。
 (A)の技術の概要を説明する。(A)の登録処理では、暗号処理装置において第1の暗号鍵KA1∧一時鍵Kt∧登録データmの暗号データC1を計算し、計算装置に登録している。また、判定装置で、一時鍵Ktで第2の鍵KA2を暗号化した暗号鍵データEk(KA2)を計算し、計算装置に送信している。そして、計算装置は、暗号データC1と暗号鍵データEk(KA2)とから暗号データC2を計算して登録している。このように(A)は、複数の暗号鍵を用いて暗号化を行って登録処理を行うことで不正登録を防止していることが特徴である。ここで、(A)で登録した情報の照合処理を行う場合を説明する。
 (A)で照合処理を行う場合、暗号処理装置において第1の暗号鍵KA1∧一時鍵Kt’∧被認証データMの暗号データC1’を計算し、計算装置に送信している。また、判定装置で、一時鍵Kt’で第2の鍵KA2を暗号化した暗号鍵データEk’(KA2)を計算し、計算装置に送信している。そして、計算装置は、暗号データC1’と暗号鍵データEk’(KA2)とから暗号データC2’を計算し、登録されている暗号データC2と、計算された暗号データC2’とを照合し、認証の成功と失敗とを判定している。このように、計算装置による認証の判定情報から、第2の暗号鍵KA2の情報が漏えいするリスクがある。このように(A)は、あくまで登録に係るセキュリティの向上を目的とした技術であり、照合に係るセキュリティを想定した技術ではないといえる。
 一方で、本開示の技術(B)は、上述したようにサーバでは照合処理を行っているものの、照合結果の成否は分からず、暗号化装置で、第1の暗号鍵及び第2の暗号鍵を用いて、サーバによる照合結果の復号化を行うことにより、照合結果の成否が分かる。つまり、サーバによる照合結果から、照合結果の成否が分からないため、鍵の情報が漏えいするリスクが少なく、また、高速に認証が行えるというメリットがある。以上のように、本開示の技術には(A)の技術に対する顕著な優位性があるといえる。
 なお、本開示は、上述した実施の形態に限定されるものではなく、この発明の要旨を逸脱しない範囲内で様々な変形や応用が可能である。
 例えば、上述した各実施の形態では、暗号化部により第1の情報及び第2の情報を暗号化関数Eにより暗号化する場合を例に説明したが、これに限定されるものではない。例えば、暗号化ではなく変調符号によりハッシュ化するようにしてもよい。その場合には、サーバ側の照合部の暗号化照合関数F、及び暗号化装置側の照合結果復号化部34の復号化関数Dは、変調符号に対応した関数として実現するようにすればよい。
 2017年12月22日に出願された日本国特許出願2017-246716の開示はその全体が参照により本明細書に取り込まれる。
 本明細書に記載された全ての文献、特許出願、および技術規格は、個々の文献、特許出願、および技術規格が参照により取り込まれることが具体的かつ個々に記された場合と同程度に、本明細書中に参照により取り込まれる。

Claims (8)

  1.  インターネットを介して接続されたサーバ及び暗号化装置を含む暗号データ処理システムであって、
     前記暗号化装置は、
     第1の暗号鍵に基づいて、入力された第1の情報を暗号化して登録用の暗号化情報を生成してサーバへ送信し、
     第2の暗号鍵に基づいて、入力された第2の情報を暗号化して照合対象の暗号化情報を生成してサーバへ送信する暗号化部を備え、
     前記サーバは、
     暗号化情報を照合する暗号化照合関数を用いて、前記登録用の暗号化情報と、前記照合対象の暗号化情報とを照合し、照合結果を前記暗号化装置へ送信する照合部を備え、
     前記暗号化装置は、前記第1の暗号鍵及び前記第2の暗号鍵を用いて前記照合結果を復号化する復号化関数により、前記第1の情報と前記第2の情報との一致度合いを求める照合結果復号化部を更に含む、
    暗号データ処理システム。
  2.  前記第2の暗号鍵を、ワンタイムキーとした請求項1に記載の暗号データ処理システム。
  3.  前記第1の情報、前記第2の情報を、磁気カード、生体情報、又は情報端末の出力信号を読み取る読取装置を用いて得られた情報とする請求項1又は請求項2に記載の暗号データ処理システム。
  4.  前記第1の情報、及び前記第2の情報はデータをハッシュ化したものとする請求項1~請求項3の何れか1項に記載の暗号データ処理システム。
  5.  前記暗号化装置の前記暗号化部は、前記第1の情報に対応する任意の登録IDを、前記登録用の暗号化情報と対応付けてサーバに送信し、
     前記登録IDを、前記照合対象の暗号化情報と対応付けて前記サーバに送信し、
     前記サーバは、受信した前記登録ID及び前記登録用の暗号化情報が対応付けられて記憶される登録情報記憶部を更に含み、
     前記サーバの前記照合部は、受信した前記照合対象の暗号化情報と対応付けられた前記登録IDが対応付けられた前記登録用の暗号化情報を、前記登録情報記憶部から読み出し、前記読み出した前記登録用の暗号化情報と、前記照合対象の暗号化情報とを照合し、照合結果を前記暗号化装置へ送信する請求項1~請求項4の何れか1項に記載の暗号データ処理システム。
  6.  前記暗号化装置は、前記登録IDが対応付けられた前記第1の暗号鍵、及び前記第2の暗号鍵が記憶される鍵記憶部を更に含み、
     前記照合結果復号化部は、前記照合結果が求められた前記登録IDに対応する前記第1の暗号鍵及び前記第2の暗号鍵を用いて、前記照合結果を復号化する復号化関数により、前記第1の情報と前記第2の情報との一致度合いを求める請求項5に記載の暗号データ処理システム。
  7.  暗号化装置による暗号データ処理方法であって、
     前記暗号化装置は、
     第1の暗号鍵に基づいて、入力された第1の情報を暗号化して登録用の暗号化情報を生成してサーバへ送信し、
     第2の暗号鍵に基づいて、入力された第2の情報を暗号化して照合対象の暗号化情報を生成してサーバへ送信し、
     前記サーバから、暗号化情報を照合する暗号化照合関数を用いて、前記登録用の暗号化情報と、前記照合対象の暗号化情報とが照合された照合結果を受信し、
     前記第1の暗号鍵及び前記第2の暗号鍵を用いて前記照合結果を復号化する復号化関数により、前記第1の情報と前記第2の情報との一致度合いを求める、暗号データ処理方法。
  8.  暗号化装置であるコンピュータを、
     第1の暗号鍵に基づいて、入力された第1の情報を暗号化して登録用の暗号化情報を生成してサーバへ送信し、
     第2の暗号鍵に基づいて、入力された第2の情報を暗号化して照合対象の暗号化情報を生成してサーバへ送信し、
     前記サーバから、暗号化情報を照合する暗号化照合関数を用いて、前記登録用の暗号化情報と、前記照合対象の暗号化情報とが照合された照合結果を受信し、
     前記第1の暗号鍵及び前記第2の暗号鍵を用いて前記照合結果を復号化する復号化関数により、前記第1の情報と前記第2の情報との一致度合いを求める、ことを含む処理を実行させることを特徴とするプログラム。
PCT/JP2018/045505 2017-12-22 2018-12-11 暗号データ処理システム、及びプログラム WO2019124164A1 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
US16/955,739 US11431686B2 (en) 2017-12-22 2018-12-11 Encrypted data processing system and program
JP2019560999A JP7165414B2 (ja) 2017-12-22 2018-12-11 暗号データ処理システム、及びプログラム

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2017246716 2017-12-22
JP2017-246716 2017-12-22

Publications (1)

Publication Number Publication Date
WO2019124164A1 true WO2019124164A1 (ja) 2019-06-27

Family

ID=66993450

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2018/045505 WO2019124164A1 (ja) 2017-12-22 2018-12-11 暗号データ処理システム、及びプログラム

Country Status (3)

Country Link
US (1) US11431686B2 (ja)
JP (1) JP7165414B2 (ja)
WO (1) WO2019124164A1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2021166848A1 (ja) 2020-02-18 2021-08-26 学校法人東京理科大学 暗号認証システム、ユーザ端末、サービスサーバ、及びプログラム

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11582948B2 (en) * 2020-07-21 2023-02-21 Garrity Power Services Llc Cattle tracking system

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2015192352A (ja) * 2014-03-28 2015-11-02 富士通株式会社 プログラム、暗号処理方法、及び暗号処理装置
JP2015192446A (ja) * 2014-03-31 2015-11-02 富士通株式会社 プログラム、暗号処理方法、及び暗号処理装置

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001042938A (ja) 1999-07-30 2001-02-16 Honda Motor Co Ltd 移動車運行制御システムと移動車と移動車運行方法
JP2005130384A (ja) 2003-10-27 2005-05-19 Kddi Corp 生体認証システム及び生体認証方法
JP4850585B2 (ja) 2006-05-26 2012-01-11 西日本電信電話株式会社 共通暗号化及び復号化方法、共通暗号化及び復号化装置、暗号通信システム、プログラム、及び、記録媒体
US8625785B2 (en) * 2008-05-15 2014-01-07 Qualcomm Incorporated Identity based symmetric cryptosystem using secure biometric model
JP6048501B2 (ja) * 2012-07-13 2016-12-21 日本電気株式会社 暗号文照合システムと方法とプログラム
JP6244728B2 (ja) * 2013-08-07 2017-12-13 富士通株式会社 情報処理方法及びプログラム
JP6277734B2 (ja) * 2014-01-20 2018-02-14 富士通株式会社 情報処理プログラム、情報処理装置および情報処理方法
US9503266B2 (en) 2014-05-25 2016-11-22 Fujitsu Limited Relational encryption
JP6451938B2 (ja) 2014-12-09 2019-01-16 日本電気株式会社 暗号文照合システム、方法、およびプログラム
JP6421576B2 (ja) 2014-12-12 2018-11-14 富士通株式会社 暗号処理装置、暗号処理方法、及び暗号処理プログラム
JP6786884B2 (ja) 2015-07-10 2020-11-18 富士通株式会社 関係暗号化
US10075301B2 (en) 2015-07-13 2018-09-11 Fujitsu Limited Relational encryption for password verification

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2015192352A (ja) * 2014-03-28 2015-11-02 富士通株式会社 プログラム、暗号処理方法、及び暗号処理装置
JP2015192446A (ja) * 2014-03-31 2015-11-02 富士通株式会社 プログラム、暗号処理方法、及び暗号処理装置

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2021166848A1 (ja) 2020-02-18 2021-08-26 学校法人東京理科大学 暗号認証システム、ユーザ端末、サービスサーバ、及びプログラム
EP4109813A4 (en) * 2020-02-18 2023-08-02 Tokyo University of Science Foundation ENCRYPTION AUTHENTICATION SYSTEM, USER TERMINAL, SERVICE SERVER AND PROGRAM

Also Published As

Publication number Publication date
JP7165414B2 (ja) 2022-11-04
US20210105255A1 (en) 2021-04-08
JPWO2019124164A1 (ja) 2021-02-12
US11431686B2 (en) 2022-08-30

Similar Documents

Publication Publication Date Title
US10680808B2 (en) 1:N biometric authentication, encryption, signature system
JP4519963B2 (ja) 生体情報の暗号化・復号化方法および装置並びに、生体情報を利用した本人認証システム
US8494154B2 (en) Cryptographic ignition key system
CN101331706A (zh) 安全阈值解密协议计算
JP2005532627A (ja) バイオメトリック識別或いは照合方法とシステム
JP2001527325A (ja) セキュアな暗号方式キーストレージ、証明および使用のための装置および方法
CN1778065B (zh) 基于生物特性身份的加密方法和设备
TWI728587B (zh) 用於安全地執行加密操作的電腦實施的方法、系統及裝置
CN101166095B (zh) 基于公开密钥加密的数据存储和数据检索
CN104881595B (zh) 基于pin码管理的自助远程解锁方法
Chen et al. A novel DRM scheme for accommodating expectations of personal use
WO2019124164A1 (ja) 暗号データ処理システム、及びプログラム
WO2020121458A1 (ja) 照合システム、クライアントおよびサーバ
KR20080028198A (ko) 디지털 개인 정보의 안전한 관리 방법 및 그 시스템
Lokhande et al. Development of an Algorithmic Approach for Hiding Sensitive Data and Recovery of Data based on Fingerprint Identification for Secure Cloud Storage
CN110445756B (zh) 云存储中可搜索加密审计日志的实现方法
JP5300026B2 (ja) Icカードシステムにおけるカード認証システム
JP2003110550A (ja) セキュリティ管理方法およびセキュリティシステム
JP2001203687A (ja) データ伝送方法
AU2021101878A4 (en) Computerized design model for encryption in blockchain transaction systems
Auletta et al. Increasing privacy threats in the cyberspace: The case of italian e-passports
Wani et al. Design and Development of Collaborative Approach for Integrity Auditing and Data Recovery based on Fingerprint Identification for Secure Cloud Storage
TW202418142A (zh) 應用二維碼的認證系統及其方法
JP2002344442A (ja) データ送信装置、データ受信装置および通信システム
CN114070553A (zh) 一种隐私数据匹配方法、系统及存储介质

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

Country of ref document: EP

Kind code of ref document: A1

DPE1 Request for preliminary examination filed after expiration of 19th month from priority date (pct application filed from 20040101)
ENP Entry into the national phase

Ref document number: 2019560999

Country of ref document: JP

Kind code of ref document: A

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 18893063

Country of ref document: EP

Kind code of ref document: A1