WO2019231140A1 - 생체 정보를 이용한 서비스 수행을 위한 시스템 및 그의 제어 방법 - Google Patents

생체 정보를 이용한 서비스 수행을 위한 시스템 및 그의 제어 방법 Download PDF

Info

Publication number
WO2019231140A1
WO2019231140A1 PCT/KR2019/005729 KR2019005729W WO2019231140A1 WO 2019231140 A1 WO2019231140 A1 WO 2019231140A1 KR 2019005729 W KR2019005729 W KR 2019005729W WO 2019231140 A1 WO2019231140 A1 WO 2019231140A1
Authority
WO
WIPO (PCT)
Prior art keywords
server
encrypted data
information
biometric information
user identification
Prior art date
Application number
PCT/KR2019/005729
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
Priority claimed from KR1020190008005A external-priority patent/KR102596874B1/ko
Application filed by 삼성전자주식회사 filed Critical 삼성전자주식회사
Priority to US17/058,572 priority Critical patent/US11546163B2/en
Priority to CN201980036606.1A priority patent/CN112204549A/zh
Priority to EP19811938.0A priority patent/EP3757830B1/en
Publication of WO2019231140A1 publication Critical patent/WO2019231140A1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3226Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using a predetermined code, e.g. password, passphrase or PIN
    • H04L9/3231Biological data, e.g. fingerprint, voice or retina
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/31User authentication
    • G06F21/32User authentication using biometric data, e.g. fingerprints, iris scans or voiceprints
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/602Providing cryptographic facilities or services
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6218Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
    • G06F21/6245Protecting personal data, e.g. for financial or medical purposes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6218Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
    • G06F21/6272Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database by registering files or documents with a third party
    • 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
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/0861Network architectures or network communication protocols for network security for authentication of entities using biometrical features, e.g. fingerprint, retina-scan
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/008Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols involving homomorphic encryption
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/0819Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s)
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0861Generation of secret information including derivation or calculation of cryptographic keys or passwords
    • H04L9/0866Generation of secret information including derivation or calculation of cryptographic keys or passwords involving user or device identifiers, e.g. serial number, physical or biometrical information, DNA, hand-signature or measurable physical characteristics
    • 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/3236Cryptographic 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 cryptographic hash functions
    • H04L9/3242Cryptographic 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 cryptographic hash functions involving keyed hash functions, e.g. message authentication codes [MACs], CBC-MAC or HMAC
    • 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/3247Cryptographic 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/21Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/2117User registration
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/42Anonymization, e.g. involving pseudonyms
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/76Proxy, i.e. using intermediary entity to perform cryptographic operations

Definitions

  • the present disclosure relates to a system for performing a service using biometric information and a control method thereof, and more particularly, to a system capable of performing a service using only biometric information of a user while protecting biometric information of a user. will be.
  • the present disclosure has been made in accordance with the above-described needs, and relates to a system and a control method thereof capable of providing various services by only protecting biometric information of a user and inputting biometric information.
  • a control method of a system including an electronic device, a first server, and a second server, including: obtaining, by the electronic device, first biometric information; A. Acquiring and transmitting the first encrypted data obtained by encrypting the first biometric information using the obtained first biometric information and the first encryption key and transmitting the first encrypted data to the first server; The second encrypted data obtained by encrypting the first encrypted data and the first user identification information corresponding to the first biometric information are obtained by using the received first encrypted data and the second encryption key.
  • the system further includes a third server that provides a service, when the first server receives a biometric information registration command for using the service of the third server, the first server, the authentication information and Transmitting biometric information issuing request information to the third server, verifying the validity of the received authentication information by the third server, and when the received authentication information is valid, the third server performs the authentication. Transmitting information and the biometric information issuing request information to the second server, and transmitting, by the second server, the second encrypted data and the first user identification information corresponding to the authentication information to the third server. And registering, by the third server, the second encrypted data and the first user identification information received from the second server.
  • the electronic device when the electronic device obtains second biometric information and the electronic device receives a command for inputting biometric information for service execution, the obtained second biometric information and the first encryption key are obtained. Acquiring and transmitting the third encrypted data obtained by encrypting the first biometric information to the first server, wherein the first server receives the third encrypted data and the second encryption key received from the electronic device. Acquiring the fourth encrypted data obtained by encrypting the third encrypted data using the third encrypted data, and transmitting the fourth encrypted data to the third server, wherein the third server sends the encrypted data corresponding to the received fourth encrypted data to the third server. Determining whether or not the present server exists, and when encrypted data corresponding to the fourth encrypted data exists in the third server, the third server performs the service. The method may further include performing a service corresponding to a command for inputting biometric information.
  • a system including an electronic device, a first server, and a second server obtains first biometric information, and obtains the obtained first biometric information and An electronic device for acquiring first encrypted data obtained by encrypting the first biometric information using a first encryption key, receiving the first encrypted data from the electronic device, and using the first encrypted data and the second encryption key.
  • a second server for acquiring authentication information based on encrypted data, and transmitting the authentication information to the first server, wherein the first server receives the second server from the second server.
  • Authentication information may be registered as the authentication information for the biometric information.
  • the system further includes a third server that provides a service, wherein the first server receives a biometric information registration command for using the service of the third server, and the authentication information and the biometric information issuing request information Transmitting to the third server, the third server confirms the validity of the received authentication information, and if the received authentication information is valid, sends the authentication information and the biometric information issuing request information to the second server.
  • the second server transmits the second encrypted data and the first user identification information corresponding to the authentication information received from the third server, to the third server.
  • the second encrypted data and the first user identification information received from the second server may be registered.
  • the electronic device when a command for inputting biometric information for service execution is input, the electronic device obtains second biometric information and encrypts the first biometric information by using the obtained second biometric information and a first encryption key. Acquires the third encrypted data and transmits the third encrypted data to the first server, and the first server encrypts the third encrypted data using the third encrypted data and the second encryption key received from the electronic device. Acquire and transmit the encrypted data to the third server, and the third server determines whether the encrypted data corresponding to the received fourth encrypted data exists in the third server, and determines the fourth encrypted data. If the encrypted data corresponding to the third server exists in the third server, a service corresponding to a command for inputting biometric information for performing the service may be performed.
  • the control method of the third server for achieving the above object, if a user command for registering biometric information for using the service is input, authentication information from the first server And receiving the biometric information issuing request information, and if the received authentication information is valid, transmitting the authentication information and the biometric information issuing request information to a second server, encrypted from the second server at the first server. And receiving and storing second encrypted data and first user identification information corresponding to the second encrypted data.
  • the biometric information registration command for performing a service when the biometric information registration command for performing a service is input, receiving the fourth encrypted data in which the biometric information is encrypted from the first server, wherein the encrypted data corresponding to the fourth encrypted data is stored. Determining whether it exists in a third server; And when the encrypted data corresponding to the fourth encrypted data exists in the third server, performing the service.
  • the third server for achieving the above object, if a user command for registering the biometric information for using the memory, the communication unit and the service is inputted through the communication unit; And a processor configured to receive authentication information and biometric information issuance request information from a server, and determine whether the received authentication information is valid, wherein the processor issuing the authentication information and the biometric information when the authentication information is valid.
  • the request information is transmitted to the second server through the communication unit, and the second encrypted data encrypted by the first server and the first user identification information corresponding to the second encrypted data are received from the second server through the communication unit. Can be stored in the memory.
  • the processor receives fourth encrypted data encrypted with biometric information from the first server through the communication unit, and encrypts data corresponding to the fourth encrypted data. May be determined to exist in the memory, and if the encrypted data corresponding to the fourth encrypted data exists in the memory, the service may be performed.
  • the system according to the present disclosure may provide various services only by inputting biometric information while simultaneously protecting biometric information.
  • FIG. 1 is a system diagram illustrating an authentication system according to an embodiment of the present disclosure.
  • FIG. 2 is a system diagram for briefly describing an operation of a system according to an exemplary embodiment of the present disclosure.
  • 3A to 3D are block diagrams schematically illustrating configurations of an electronic device, a first server, a second server, and a third server according to an embodiment of the present disclosure.
  • FIG. 4 is an exemplary diagram for describing various modules included in an electronic device, a first server, a second server, and a third server according to an embodiment of the present disclosure.
  • FIG. 5 is a sequence diagram illustrating a biometric information registration process according to an embodiment of the present disclosure.
  • FIG. 6 is a sequence diagram illustrating a biometric information registration process for using a service according to various embodiments of the present disclosure.
  • FIG. 7 is a sequence diagram illustrating a user authentication process for providing a service according to an embodiment of the present disclosure.
  • FIGS. 8A and 8B are sequence diagrams illustrating a biometric information registration process, a biometric information registration process for using a service, and a user authentication process for providing a service according to various embodiments of the present disclosure.
  • FIG. 9 is a flowchart illustrating a control method of a third server according to an embodiment of the present disclosure.
  • Embodiments of the present disclosure may be variously modified and have various embodiments, and specific embodiments will be illustrated in the drawings and described in detail in the written description. However, this is not intended to limit the scope to the specific embodiment, it should be understood to include all transformations, equivalents, and substitutes included in the spirit and technical scope of the invention. In describing the embodiments, when it is determined that the detailed description of the related known technology may obscure the gist, the detailed description thereof will be omitted.
  • first and second may be used to describe various components, but the components should not be limited by the terms. The terms are only used to distinguish one component from another.
  • a "module” or “unit” performs at least one function or operation, and may be implemented in hardware or software or in a combination of hardware and software.
  • a plurality of “modules” or a plurality of “units” may be integrated into at least one module except for "modules” or “units”, which need to be implemented with specific hardware, and are implemented with at least one processor (not shown). Can be.
  • the embodiment according to the present disclosure mainly describes an embodiment of encrypting the biometric information of the user, but is not limited thereto. That is, the technical idea of the present disclosure may be applied not only to the user's biometric information but also to various user information such as other identification information (resident registration number, ID, etc.), password, and pattern.
  • the encryption according to the present disclosure may be applied to various encryption methods.
  • FIG. 1 is a system diagram illustrating an authentication system according to an embodiment of the present disclosure.
  • the system 1000 includes an electronic device 100, a first server 200, a second server 300, and a third server 400.
  • the electronic device 100 is a device for obtaining biometric information of a user.
  • the electronic device 100 may be various devices for recognizing a user's biometric information, such as a device for fingerprint recognition, a device for iris recognition, a device for palm vein recognition, or a device for face recognition.
  • the electronic device 100 may be various devices capable of generating or obtaining various information as well as biometric information of the user.
  • the electronic device 100 may obtain first biometric information of the user and generate first encrypted data using the obtained first biometric information and the first encryption key.
  • the electronic device 100 may obtain second biometric information of the user and generate third encrypted data using the obtained second biometric information and the first encryption key. That is, the first encrypted data and the third encrypted data may be data encrypted using the same first encryption key.
  • the first encrypted data is encrypted data necessary for registering encrypted data of the user's biometric information in the second server 300 and the third server 400, and the third encrypted data is provided by the third server 400.
  • the data may be encrypted data about the second biometric information input by the user.
  • the electronic device 100 may transmit a message authentication code (MAC) for validating the third encrypted data together with the third encrypted data to the first server 200. You can also send.
  • MAC message authentication code
  • the first server 200 is a device that receives data for encryption from the electronic device 100 and registers biometric information by communicating with the second server 300 and the service server 300.
  • the first server 200 may be a server or an electronic device in various forms.
  • the first server 200 may be a user terminal device.
  • the first server 200 may be a server to which the user has access.
  • the first server 200 may be a personal cloud server having a user's access right.
  • the first server 200 may be configured as an independent server accessible by the same manager as the manager of the third server 400.
  • the first server 200 may be a server managed independently of the electronic device 100, the second server 300, and the third server 400. That is, the first server 200 may be various servers independent of the electronic device 100, the second server 300, and the third server 400.
  • the first server 200 may generate second encrypted data using the first encrypted data and the second encryption key received from the electronic device 100. In this case, the first server 200 may also obtain the first user identification information.
  • the first user identification information is information for identifying a user with respect to the second encrypted data, and may be received from, for example, a user terminal device.
  • the first server 200 may generate fourth encrypted data by using the third encrypted data and the second encryption key, and may acquire second user identification information corresponding to the fourth encrypted data. .
  • the first server 200 may transmit the second encrypted data and the first user identification information to the second server 300 or transmit at least one of the fourth encrypted data and the second user identification information to the second server 300. have.
  • the first server 200 receives the message authentication code from the electronic device 100, the first server 200 transmits the fourth encrypted data, the second user identification information, and the message authentication code to the third server 400. ) Can be sent.
  • the second server 300 is an apparatus for authenticating encrypted biometric information required for the third server 400 to provide a service.
  • the second server 300 is a server for authenticating the reliability of the encrypted biometric information, and may be a server managed by a national authority or various certification authorities.
  • the second server 300 receives second encrypted data and first user identification information from the first server 200, and determines whether the received second encrypted data is encrypted data corresponding to the first user identification information. Can be.
  • the second server 200 When the received second encrypted data is encrypted data corresponding to the first user identification information, the second server 200 generates authentication information for authenticating the second encrypted data and the first user identification information and generates a first server ( 200).
  • the generated authentication information may include a signature value of the second server 300.
  • the second server 300 transmits the encrypted data to the third server 400, or transmits the encrypted data to the encrypted data and the encrypted data.
  • the corresponding user identification information may be transmitted to the third server 400.
  • the second server 300 may transmit second encrypted data and first user identification information corresponding to the received authentication information to the third server 400. have.
  • the authentication information transmitted from the second server 300 to the third server 400 may be authentication information received from the first server 200.
  • the third server 400 is a component that can register encrypted biometric information and user identification information for service use.
  • the third server 400 may provide a service. That is, the third server 400 may be a server managed by a service provider for providing a service.
  • the third server 400 may receive authentication information and biometric information issuing request information from the first server 200. When the received authentication information is valid, the third server 400 may transmit the authentication information and the biometric information issuing request information to the second server 300. The third server 400 may receive encrypted data and user identification information corresponding to the authentication information transmitted from the second server 300. In detail, the third server 400 may receive and store second encrypted data and user identification information from the second server 300.
  • the third server 400 may determine the validity of the received encrypted data. If the received encrypted data is valid, the third server 400 may perform a service corresponding to the service information.
  • the service information is related to the type of service to be provided by the third server 400 and may be, for example, a service for paying a specific amount of money or a service for determining user information.
  • the third server 400 determines whether there is encrypted data (eg, second encrypted data) corresponding to the fourth encrypted data. It can be determined. If there is encrypted data corresponding to the fourth encrypted data, the third server 400 may perform a service corresponding to the service information.
  • encrypted data eg, second encrypted data
  • the third server 400 may receive encrypted data, user identification information and service information corresponding to the encrypted data from the first server 200.
  • the third server 400 may receive fourth encrypted data, second user identification information and service information corresponding to the fourth encrypted data from the first server 200.
  • the third server 400 obtains user identification information (eg, first user identification information) corresponding to the second user identification information, and encrypts data (eg, second encryption) corresponding to the obtained user identification information. Data) may be determined as encrypted data corresponding to the fourth encrypted data.
  • the third server 400 may perform a service corresponding to the service information.
  • the third server 400 does not decrypt the second encrypted data and the fourth encrypted data, and the first biometric information corresponding to the second encrypted data and the second biometric information corresponding to the fourth encrypted data are not identical to each other. It may be determined whether the biometric information.
  • the electronic device 100, the first server 200, the second server 300, and the third server 400 may be implemented as one single independent server, but is not limited thereto.
  • at least two of the electronic device 100, the first server 200, the second server 300, and the third server 400 may be implemented as one server as needed.
  • Each of the electronic device 100, the first server 200, the second server 300, and the third server 400 may include a cloud server or a plurality of distributed servers.
  • FIG. 2 is a system diagram for briefly describing an operation of a system according to an exemplary embodiment of the present disclosure.
  • the system 1000 including the electronic device 100, the first server 200, the second server 300, and the third server 400 may include 1) biometric information registration process 500 and 2) service use.
  • the service may be provided through the biometric information registration process 600 and 3) the user authentication process 700 for providing the service.
  • the biometric information registration process 500 is performed by the electronic device 100, the first server 200, and the second server 300
  • the biometric information registration process 600 for service use is performed by the first server ( 200, the second server 300 and the third server 400 are performed
  • the user authentication process 700 for providing a service is performed by the electronic device 100, the first server 200, and the third server 400. It can be performed by).
  • the electronic device 100 obtains first biometric information and obtains first encrypted data obtained by encrypting the first biometric information by using the obtained first biometric information and the first encryption key. can do.
  • the first server 200 receives the first encrypted data from the electronic device 100, and transmits the first encrypted data to the second encrypted data and the first biometric information encrypted using the first encrypted data and the second encryption key. Corresponding first user identification information may be obtained.
  • the second server 300 may receive second encrypted data from the first server 200, obtain authentication information based on the second encrypted data, and transmit the obtained authentication information to the first server 200.
  • the authentication information may include a signature value of the second server 300.
  • the first server 200 may register the authentication information received from the second server as the authentication information for the biometric information.
  • the first server 200 may register authentication information received from the second server as authentication information about the first biometric information corresponding to the first encrypted data or the first biometric information corresponding to the second encrypted data. have.
  • the first user identification information may be obtained by the first server 200.
  • the first user identification information may be obtained through a method in which a user directly registers with the first server 200.
  • the biometric information registration process 500 may operate in conjunction with the electronic device 100, the first server 200, and the second server 300.
  • the electronic device 100 may obtain first biometric information (S510).
  • the electronic device 100 may request the user to input the biometric information of the user.
  • the electronic device 100 may display a guide screen for guiding input of biometric information.
  • the electronic device 100 may output an audio signal for requesting biometric information input.
  • a control signal for inputting biometric information may be received from various devices.
  • a control signal for inputting biometric information may be received from the first server 200 or the second server 300.
  • the control signal may further include information about a device for transmitting the encrypted data encrypting the biometric information.
  • the biometric information input signal may be generated inside the electronic device 100.
  • the electronic device 100 may receive information on a device for transmitting encrypted data that encrypts the biometric information.
  • the electronic device 100 may obtain first encrypted data obtained by encrypting the first biometric information using the first encryption key (S520).
  • the first encrypted data may be encrypted using a public key encryption method such as an Elgamal encryption method, a Diffie Hellman encryption method, an elliptic curve encryption method, or the like. That is, the encryption method using the first encryption key has a feature that the first encryption key can be regarded as plain text in encryption using the second encryption key in the encryption method using the second encryption key described later.
  • the first encryption key has a feature that can be regarded as plain text in the encryption method using the second encryption key, as well as the encryption method, the first encryption key is considered to be plain text in the encryption method using the second encryption key.
  • the first encrypted data may be generated by various encryption schemes that may be used.
  • the first encrypted data is encrypted using a public key encryption method such as an Elgamal encryption method, a Diffie Hellman encryption method, an elliptic curve encryption method, and the like, and thus, the first biometric information in the user authentication process 700 for service provision. It is possible to determine whether and the second biometric information is biometric information for the same user.
  • the electronic device 100 may transmit the obtained first encrypted data to the first server 200 (S530).
  • the first server 200 may obtain second encrypted data obtained by encrypting the first encrypted data using the second encryption key and first user identification information about the first biometric information (S540).
  • the second encrypted data may be, for example, encrypted data by an inner product encryption (IPE).
  • IPE inner product encryption
  • the encryption method by IPE has a characteristic of confirming the identity of the input biometric information without decrypting the encrypted data.
  • various encryption methods having a homogeneous property that can be operated in the encrypted state can be used to generate the second encrypted data according to the present disclosure.
  • the first server 200 may receive first user identification information regarding the first encrypted data. For example, the first server 200 may directly receive first user identification information from a user.
  • the first server 200 may obtain first user identification information based on biometric information previously registered in an external certification authority and user identification information matched with the previously registered biometric information.
  • the first server 200 when the first server 200 is a user terminal device or a server to which the user has access authority, the first server 200 stores only one user identification information, and at least one corresponding to the stored user identification information. Encrypted data can be stored.
  • the first server 200 when the first server 200 is a server to which the user does not have access authority, the first server 200 may match and store at least one encrypted data for each of the at least one user identification information.
  • the first server 200 may transmit the second encrypted data and the first user identification information to the second server 300 (S550).
  • the second server 300 may determine whether the first user identification information is user identification information corresponding to the second encrypted data (S560). In an embodiment, the second server 300 may transmit a request for confirming whether the first user identification information is user identification information corresponding to the second encrypted data to the user terminal device corresponding to the first user identification information. have. For example, the second server 300 transmits to the user terminal device a text message or a telephone request and an authentication number for inquiring whether the first user identification information is user identification information corresponding to the second encrypted data, and from the user. When the authentication number transmitted by the input authentication numbering second server 300 is the same, the second server 300 may determine that the first user identification information is user identification information corresponding to the second encrypted data. In another embodiment, whether the second encrypted data corresponds to the first user identification information may be determined in a face-to-face manner.
  • the second server 300 may obtain authentication information corresponding to the second encrypted data and the first user identification information (S570).
  • the obtained authentication information may include unique signature value information of the second server 300.
  • the second server 300 may transmit the obtained authentication information to the first server 200 (S580).
  • the first server 200 may register the obtained authentication information (S590).
  • the system 1000 encrypts the user's biometric information, matches the encrypted user biometric information with the user identification information, and authenticates that the encrypted biometric information and the user identification information are legitimate for service use. May be obtained from the second server 300 and stored in the first server 200.
  • the first server 200 may receive a user command for registering biometric information for service use of the third server 400.
  • a user command for registering biometric information for service use may be received from the third server 400 or from another external device.
  • the first server 200 may transmit the authentication information and the biometric information issue request information registered in the biometric information registration process 500 to the third server 400.
  • the third server 400 may determine the validity of the received authentication information. In detail, the third server 400 may determine whether the signature value of the authentication information is the signature value of the second server 300 to determine the validity of the authentication information. When the authentication information received from the first server 200 is valid, the third server 400 may transmit the authentication information and the biometric information issue request information to the second server 300.
  • the second server 300 receives the second encrypted data and the first user identification information corresponding to the authentication information based on the authentication information and the biometric information issuing request information received from the first server 200. Can be sent to.
  • the third server 400 may register the second encrypted data and the first user identification information received from the second server 300.
  • the third server 400 may register and match the second encrypted data received from the second server 300 and the first user identification information.
  • the biometric information registration process 600 for using the service may operate in conjunction with the first server 200, the second server 300, and the third server 400.
  • the first server 200 may receive a biometric information registration command for using the service (S610).
  • the biometric information registration command for using the service may be received from the third server 400 or the user terminal device.
  • the first server 200 may transmit authentication information and biometric information issue request information corresponding to the biometric information registration command for using the service to the third server 400 (S620).
  • the third server 400 may determine the validity of the authentication information received from the first server 200 (S630). In detail, the third server 400 may determine whether the signature value included in the authentication information is the signature value of the second server 300 to determine the validity of the authentication information.
  • the third server 400 may transmit the authentication information and the biometric information issuing request information to the second server 300 (S640).
  • the second server 300 may obtain second encrypted data and first user identification information corresponding to the received authentication information (S650).
  • the second server 300 transmits the obtained second encrypted data and the first user identification information to the third server 400 (S660), and the third server 400 obtains the second server 300 obtained from the second server 300.
  • the encrypted data and the first user identification information may be registered (S670). That is, the third server 400 may match and store the second encrypted data obtained from the second server 300 and the first user identification information.
  • the electronic device 100 when a command for inputting biometric information for service execution is input, the electronic device 100 obtains second biometric information, and obtains the obtained second biometric information and the first biometric information.
  • the third encryption data obtained by encrypting the second biometric information using the first encryption key may be obtained and transmitted to the first server 200.
  • the first server 200 may obtain fourth encrypted data obtained by encrypting the third encrypted data using the third encrypted data and the second encryption key received from the electronic device 100, and transmit the fourth encrypted data to the third server 400. have.
  • the electronic device 100 may transmit a message authentication code to the first server 200 together with the third encrypted data.
  • the first server 200 transmits the message authentication code received from the electronic device 100 to the third server 400 together with the fourth encrypted data, and the third server 400 receives the first server 200.
  • the validity of the fourth encrypted data may be determined based on the message authentication code received from the message.
  • the third server 400 may determine whether encrypted data corresponding to the fourth encrypted data received from the first server 200 exists in the third server 400. .
  • the third server 400 compares the plurality of encrypted data and the fourth encrypted data stored in the third server 400 to determine whether there is encrypted data including biometric information corresponding to the second biometric information. Can be determined.
  • the third server 400 when the first server 200 matches the second encrypted user information and the second user identification information corresponding to the second biometric information and transmits the second user identification information to the third server 400, the third server 400. Obtains user identification information identical to the second user identification information among the plurality of user identification information stored in the third server 400, and encrypts the data matched with the same user identification information as the fourth encrypted data and the second user identification information. The comparison may determine whether the biometric information corresponding to the same user identification information as the second biometric information and the second user identification information is the same.
  • the third server 400 may determine whether there is encrypted data corresponding to the fourth encrypted data without decrypting the fourth encrypted data and the plurality of encrypted data stored in the third server 400. By determining whether there is encrypted data corresponding to the fourth encrypted data, the third server 400 may perform a service without information on the second biometric information.
  • the third server 400 may perform a service corresponding to a command for inputting biometric information for performing a service.
  • the user authentication process 700 for providing a service may operate in conjunction with the electronic device 100, the first server 200, and the third server 400.
  • the electronic device 100 may obtain second biometric information (S710).
  • the electronic device 100 may request the user to input the biometric information of the user.
  • the electronic device 100 may display a guide screen for guiding input of biometric information.
  • the electronic device 100 may output an audio signal for requesting biometric information input.
  • a control signal for inputting biometric information may be received from various devices.
  • a control signal for inputting biometric information may be received from the first server 200 or the second server 300.
  • control signal may further include information about a device for transmitting the encrypted data encrypting the biometric information.
  • biometric information input signal may be generated inside the electronic device 100.
  • the electronic device 100 may receive information on a device for transmitting encrypted data that encrypts the biometric information.
  • the electronic device 100 may obtain third encrypted data obtained by encrypting the second biometric information using the first encryption key (S720).
  • the third encrypted data may be encrypted using a public key encryption method such as an Elgamal encryption method, a Diffie Hellman encryption method, an elliptic curve encryption method, or the like.
  • the electronic device 100 may transmit the obtained third encrypted data to the first server 200 (S730).
  • the first server 200 may obtain fourth encrypted data obtained by encrypting the third encrypted data using the second encryption key (S740).
  • the fourth encrypted data may be, for example, encrypted data by an inner product encryption (IPE).
  • the first server 200 may obtain second user identification information regarding the second biometric information together with the fourth encrypted data. At this time, the first server 200 directly receives the second user identification information on the fourth encrypted data from the user, or receives the biometric information previously registered in the external certification authority and the user identification information matched to the previously registered biometric information. Based on the second user identification information can be obtained.
  • the first server 200 may transmit the fourth encrypted data to the third server 400 (S750). Meanwhile, when the fourth encrypted data and the second user identification information are obtained together, the first server 200 may transmit the fourth encrypted data and the second user identification information to the third server 400.
  • the third server 400 may determine whether there is encrypted data corresponding to the fourth encrypted data (S760). Specifically, the third server 400 may determine the encrypted data of the same user as the user corresponding to the fourth encrypted data by comparing each of the plurality of encrypted data stored in the third server 400 with the fourth encrypted data. . In this case, the third server 400 may determine whether there is encrypted data corresponding to the fourth encrypted data without decrypting each of the plurality of stored encrypted data and the fourth encrypted data.
  • the third server 400 may determine the same user identification information as the second user identification information.
  • the same user identification information as the second user identification information may be first user identification information.
  • the third server 400 may determine whether the fourth encrypted data and the second encrypted data are encrypted data for the same user. As described above, the third server 400 may determine whether the fourth encrypted data and the second encrypted data are encrypted data for the same user without decrypting the fourth encrypted data and the second encrypted data.
  • the third server 400 may perform a service (S770).
  • the third server 400 may perform a service corresponding to the fourth encrypted data.
  • the service may be an offline payment service. If there is encrypted data corresponding to the fourth encrypted data, the third server 400 may perform a payment service for a product corresponding to the fourth encrypted data. In another embodiment, the service may be a car rental service. If there is encrypted data corresponding to the fourth encrypted data, the third server 400 may provide a service for transferring control authority for the vehicle corresponding to the fourth encrypted data to the user.
  • 3A to 3D are block diagrams schematically illustrating configurations of an electronic device, a first server, a second server, and a third server according to an embodiment of the present disclosure.
  • FIG. 3A is a block diagram schematically illustrating a configuration of an electronic device 100 according to an embodiment of the present disclosure.
  • the electronic device 100 includes a sensing unit 110, a communication unit 120, a memory 130, and a processor 140.
  • the detector 110 is a component for obtaining biometric information of various users.
  • the detector 110 may include various components.
  • the detection unit 110 may include a fingerprint recognition sensor for recognizing a user's fingerprint, an iris recognition sensor for recognizing a user's iris, a camera for recognizing a user's face, a microphone for recognizing a user's voice, and the like. It may be at least one of the configuration.
  • the communication unit 120 is a configuration for communicating with the first server 200 and the third server 400.
  • the communication unit 120 communicating with the first server 200 and the third server 400 includes communicating through a third device (eg, a repeater, a hub, an access point, a server, or a gateway). can do.
  • a third device eg, a repeater, a hub, an access point, a server, or a gateway.
  • the communicator 120 may include a configuration for using various communication schemes.
  • the communication unit 120 may communicate with various external devices through a wireless communication or a wired communication method.
  • the wireless communication may be, for example, LTE, LTE Advance (LTE-A), code division multiple access (CDMA), wideband CDMA (WCDMA), universal mobile telecommunications system (UMTS), wireless broadband (WiBro), or global network (GSM).
  • LTE Long Term Evolution
  • LTE-A LTE Advance
  • CDMA code division multiple access
  • WCDMA wideband CDMA
  • UMTS universal mobile telecommunications system
  • WiBro wireless broadband
  • GSM global network
  • the wireless communication may include, for example, wireless fidelity (WiFi), Bluetooth, Bluetooth low power (BLE), Zigbee, near field communication (NFC), magnetic secure transmission, and radio. It may include at least one of a frequency (RF) or a body area network (BAN).
  • RF frequency
  • Wired communication may include, for example, at least one of a universal serial bus (USB), a high definition multimedia interface (HDMI), a standard standard232 (RS-232), a power line communication, a plain old telephone service (POTS), and the like.
  • the communication unit 120 may include at least one of a telecommunication network, for example, a computer network (for example, LAN or WAN), the Internet, or a telephone network, in which a wireless or wired communication is performed.
  • the communication unit 220 of the first server 200, the communication unit 320 of the second server 300, and the communication unit 420 of the third server 400, which will be described later, may also be applied to one of the various communication methods described above. Of course.
  • the communication unit 120 may transmit encrypted data obtained by encrypting the biometric information with the first encryption key to at least one of the first server 200 and the third server 400.
  • the memory 130 is a component for storing instructions or data related to at least one other component of the electronic device 100.
  • the memory 130 may include at least one of an internal memory and an external memory.
  • the internal memory may be, for example, volatile memory (for example, DRAM, SRAM, or SDRAM), nonvolatile memory (for example, one time programmable ROM (OTPROM), PROM, EPROM, EEPROM, mask ROM, flash ROM, flash memory). Or a hard drive, or a solid state drive (SSD)
  • the external memory may be a flash drive, for example, compact flash, secure digital (SD), micro-SD, It may include a Mini-SD, an extreme digital (xD), a multi-media card (MMC), a memory stick, etc.
  • the external memory may be functionally or physically connected to the server 100 through various interfaces.
  • the memory 210 of the first server 200, the memory 310 of the second server 300, and the memory 410 of the third server 400 may also be applied to any one of the above-described various communication methods. .
  • the memory 130 may store the biometric information obtained through the sensor 110 or may store an encryption key for encrypting the biometric information.
  • the processor 140 is electrically connected to the memory 130 to control an overall operation and function of the electronic device 100.
  • the processor 140 may include one or more of a central processing unit, an application processor, and a communication processor (CP).
  • the processor 140 may include an application specific integrated circuit (ASIC), an embedded processor, a microprocessor, hardware control logic, a hardware finite state machine (FSM), a digital signal processor, DSP).
  • ASIC application specific integrated circuit
  • FSM hardware finite state machine
  • DSP digital signal processor
  • the processor 140 may further include an interface such as a bus for communicating with each component.
  • the processor 140 may control, for example, a plurality of hardware or software components connected to the processor 140 by running an operating system or an application program, and may perform various data processing and operations.
  • the processor 140 may be implemented with, for example, a system on chip (SoC).
  • SoC system on chip
  • the processor 140 may further include a graphic processing unit (GPU) and / or an image signal processor.
  • the processor 140 may load and process instructions or data received from at least one of other components (eg, nonvolatile memory) into the volatile memory, and store the result data in the nonvolatile memory.
  • the processor 232 of the first server 200, the processor 330 of the second server 300, and the processor 430 of the third server 400, which will be described later, may also be applied to one of the various communication methods described above. Of course.
  • the processor 140 may convert the information detected by the detector 110 into biometric information suitable for encryption.
  • the processor 140 may transmit the first encrypted data obtained by encrypting the first biometric information detected by the detection unit 110 using a first encryption key through the communication unit 120. 200).
  • the first encrypted data may be encrypted using a public key encryption method such as an Elgamal encryption method, a Diffie Hellman encryption method, an elliptic curve encryption method, or the like.
  • the processor 140 may transmit the third encrypted data obtained by encrypting the second biometric information detected by the detector 110 with the first encryption key through the communication unit 120. It may transmit to the first server 200.
  • the third encrypted data may be encrypted by a public key encryption method such as an Elgamal encryption method, a Diffie Hellman encryption method, an elliptic curve encryption method, or the like.
  • the processor 140 may transmit the user authentication code to the first server 200 through the communication unit 120 together with the third encrypted data.
  • the processor 140 may obtain the message authentication code by encrypting the second biometric information using the secret key of the electronic device 100.
  • the secret key for acquiring the message authentication code may be the first encryption key, but is not limited thereto and may be a separate secret key. That is, the first server 200 may decrypt the message authentication code. You cannot decrypt the message authentication code because you do not have a valid encryption key. Therefore, the processor 140 may prevent the forgery or the tampering of the third encrypted data in the first server 200 by using the message authentication code.
  • the first server 200 includes a memory 210, a communication unit 220, and a processor 230.
  • the memory 210 is a component for storing instructions or data related to at least one other component of the first server 200.
  • the memory 210 may store the first encrypted data or the third encrypted data received from the electronic device 100.
  • the memory 210 may store encrypted data and user identification information authenticated by the second server 200.
  • the communication unit 220 is a component for communicating with the electronic device 100, the second server 300, and the third server 400. As described above, the communication unit 220 receives the first encrypted data or the third encrypted data from the electronic device 100, transmits the second encrypted data and the first user identification information to the second server 200, The fourth encryption data may be transmitted to the third server 400 or, if necessary, the message authentication code received from the electronic device 100 may be transmitted to the third server 400.
  • the processor 230 is configured to be electrically connected to the memory 210 to control the overall operation and function of the first server 200.
  • the processor 230 may encrypt the first encrypted data received from the electronic device 100 with the second encrypted data using the second encryption key.
  • the second encrypted data may be, for example, encrypted data by an inner product encryption (IPE).
  • IPE inner product encryption
  • the third server 400 does not decrypt the second encrypted data and the fourth encrypted data, and the first biometric information corresponding to the second encrypted data and the second living body corresponding to the fourth encrypted data are not decrypted. There is an effect that it is possible to check whether the information is the biometric information of the same user.
  • the processor 230 may receive first user identification information regarding the first encrypted data.
  • the processor 230 may match and store the second encrypted data and the first user identification information, and transmit the matched second encrypted data and the first user identification information to the second server 300.
  • the processor 230 may receive authentication information regarding the second encrypted data and the first user identification information from the second server 300. The received authentication information may be used in the biometric information registration process 600 for service use.
  • the processor 230 may transmit the received authentication information to the third server 400. .
  • the processor 230 may transmit the biometric information issuing request information requesting to register the biometric information corresponding to the authentication information to the third server 400 together with the authentication information to the third server 400.
  • the processor 230 may encrypt the third encrypted data received from the electronic device 100 with the fourth encrypted data using the second encryption key.
  • the fourth encrypted data may be encrypted data by an inner product encryption (IPE).
  • IPE inner product encryption
  • the processor 230 may transmit the obtained fourth encrypted data to the third server 400. In this case, if necessary, the processor 230 may transmit the fourth encrypted data and the second user identification information corresponding to the fourth encrypted data to the third server 400 together. Further, when the message authentication code is received from the electronic device 100, the processor 230 may transmit the fourth encrypted data, the second user identification information corresponding to the fourth encrypted data, and the message authentication code received from the electronic device 100. May be transmitted together to the third server 400. When the message authentication code is transmitted to the third server 400, the processor 230 may encrypt the received message authentication code and transmit the encrypted message authentication code to the third server. By using the message authentication code, the system 1000 can prevent a situation in which encrypted data is maliciously forged or tampered by the first server 200.
  • the third server 400 may attach a message authentication code. It can be determined that the encrypted data and the encrypted data received from the first server 200 are different data.
  • FIG. 3C is a block diagram schematically illustrating a configuration of a second server 300 according to an embodiment of the present disclosure.
  • the second server 300 includes a memory 310, a communication unit 320, and a processor 330.
  • the memory 310 is a component for storing instructions or data related to at least one other component of the second server 300. In addition, the memory 310 may match and store the second encrypted data and the first user identification information received from the first server 200.
  • the communication unit 320 is a configuration for communicating with the first server 200 and the third server 400. As described above, the communication unit 320 receives the second encrypted data and the first user identification information from the first server 200 or transmits the second encrypted data and the first user identification information to the third server 400. Can be.
  • the processor 330 is electrically connected to the memory 310 to control the overall operation and function of the second server 300.
  • the processor 330 may obtain second encrypted data and first user identification information from the first server 200. In this case, the processor 330 may determine whether the first user identification information is user identification information corresponding to the second encrypted data. The method of determining whether the first user identification information is user identification information corresponding to the second encrypted data may vary. For example, the processor 330 may transmit a request for confirming whether the first user identification information is user identification information corresponding to the second encrypted data to the user terminal device corresponding to the first user identification information. When the first user identification information from the user terminal device receives the message that the user identification information corresponding to the second encrypted data, the processor 330 determines that the first user identification information is the user identification information corresponding to the second encrypted data. can do. However, the present invention is not limited to the above-described embodiment. For example, whether the second encrypted data corresponds to the first user identification information may be confirmed by face to face.
  • the processor 330 may obtain authentication information about the second encrypted data and the first user identification information.
  • the authentication information may include index information for authenticating the signature value of the second server 300, the second encrypted data, and the first user identification information.
  • the authentication information does not include the second encrypted data and the first user identification information, but includes index information for authenticating the second encrypted data and the first user identification information and a signature value of the second server 300. can do.
  • the present invention is not limited thereto. That is, according to various embodiments of the present disclosure, the authentication information may include second encrypted data and first user identification information.
  • the processor 330 may obtain the authentication information by encrypting the second encrypted data and the first user identification information. Meanwhile, the signature value of the second server 300 may be information for confirming whether the authentication information received by the third server 400 has been received from the second server 300 without forgery or tampering, as described below. have. The processor 330 may transmit the obtained authentication information to the first server 200.
  • the processor 330 may receive authentication information from the third server 400, and may obtain encryption data and user identification information corresponding to the received authentication information. have. If there is no forgery or tampering caused by an external attack or the like, the processor 330 may obtain the second encrypted data and the first user identification information from the encrypted data and the user identification information corresponding to the authentication information. In one embodiment, when the authentication information includes only index information for the encrypted data and the user identification information, the processor 330 may extract the second encrypted data and the first user identification information from the index information for the encrypted data and the user identification information. Can be obtained. In another embodiment, when the authentication information is encrypted data and encrypted data of the user identification information, the processor 330 may decrypt the authentication information to obtain the second encrypted data and the first user identification information.
  • 3D is a block diagram schematically illustrating a configuration of a third server 400 according to an embodiment of the present disclosure.
  • the third server 400 includes a memory 410, a communication unit 420, and a processor 430.
  • the memory 410 is a component for storing instructions or data related to at least one other component of the third server 400.
  • the memory 410 may store authentication information and biometric information issue request information received from the first server 200.
  • the memory 410 may store second encrypted data and first user identification information received from the second server 300.
  • the memory 410 may store at least one of the third encrypted data and the second user identification information received from the first server 200.
  • the communication unit 420 is configured to communicate with the first server 200 and the second server 300. As described above, the communication unit 220 receives the authentication information and the biometric information issuance request information from the first server 200, or receives the second encrypted data and the first user identification information from the second server 300, At least one of the third encrypted data and the second user identification information may be received from the first server 200.
  • the processor 430 is configured to be electrically connected to the memory 410 to control the overall operation and function of the third server 400.
  • the processor 430 requests for issuing authentication information and biometric information from the first server 200. Information can be received.
  • the processor 430 may determine whether the received authentication information is valid. In detail, the processor 430 may determine whether the signature value included in the authentication information is the signature value of the second server 300 to determine the validity of the authentication information. That is, when the signature value included in the authentication information is generated by the second server 300, the processor 430 may determine that the authentication information is valid. When the signature value included in the information is not generated by the second server 300, the processor 430 may determine that the authentication information is not valid.
  • the processor 430 may transmit the authentication information and the biometric information issuing request information received from the first server 200 to the second server 300.
  • the processor 430 may receive the second encrypted data and the first user identification information corresponding to the authentication information from the second server and store it in the memory 410.
  • the third server 400 may improve security by acquiring only the second encrypted data without receiving the first biometric information and the first encrypted data.
  • the processor 430 may receive fourth encrypted data from the first server 200.
  • the processor 430 may determine whether encrypted data corresponding to the fourth encrypted data exists in the memory 410.
  • the processor 430 may compare each of the plurality of encrypted data stored in the memory 410 with the fourth encrypted data to determine whether the encrypted data corresponding to the fourth encrypted data is stored in the memory 410. can do.
  • the processor 430 may receive fourth encrypted data and second user identification information corresponding to the fourth encrypted data from the first server 200.
  • the processor 430 may obtain the same user identification information as the second user identification information.
  • the second user identification information may be the same as the first user identification information.
  • the processor 430 determines whether the fourth encrypted data corresponding to the second user identification information and the second encrypted data corresponding to the first user identification information (same as the second user identification information) are encrypted data for the biometric information of the same user. It can be determined.
  • the processor 430 may compare the fourth encrypted data with the plurality of encrypted data stored in the memory 410 without decryption.
  • the processor 430 may compare the fourth encrypted data and the second encrypted data stored in the memory 410 without decryption.
  • the second encrypted data and the fourth encrypted data have a homomorphic property that can be operated while the data is encrypted, and used to obtain the first encrypted data and the third encrypted data.
  • the first encryption key has a feature that can be regarded as plain text in the encryption method using the second encryption key. Therefore, the processor 430 uses the features of the first encryption scheme and the features of the second encryption scheme, and thus, the first biometric information corresponding to the second encrypted data and the second biometric information corresponding to the fourth encrypted data without decryption. Information can be compared.
  • the processor 430 may perform a service when the encrypted data corresponding to the fourth encrypted data exists in the memory 410.
  • the electronic device 100 obtains biometric information of a user through a biometric information acquisition module and obtains first encrypted data obtained by encrypting biometric information through a first encryption module.
  • the first server 200 may encrypt the first encrypted data into the second encrypted data through the second encryption module.
  • the second server 300 may generate authentication information about the second encrypted data and the first user identification information through the authentication information generation module.
  • the third server 400 may obtain encrypted data including the same biometric information as the second biometric information corresponding to the fourth encrypted data through the biometric information comparison module.
  • the various modules shown in FIG. 4 may be implemented as software modules or at least one hardware chip.
  • the software modules may be computer readable non-transitory computer readable media. ) Can be stored.
  • the software module may be provided by an operating system (OS) or by a predetermined application.
  • OS operating system
  • OS operating system
  • OS operating system
  • others may be provided by a predetermined application.
  • FIGS. 8A and 8B are sequence diagrams illustrating a biometric information registration process, a biometric information registration process for using a service, and a user authentication process for providing a service according to various embodiments of the present disclosure.
  • the electronic device 100 and the first server 200 may be implemented as one electronic device 150.
  • the electronic device 150 may be implemented as, for example, a user terminal device.
  • the electronic device 150 may be an electronic device that operates in a normal mode and a secure mode.
  • the secure mode may mean a data processing architecture having secured security
  • the normal mode may mean a general data processing architecture. Normal Mode
  • the normal OS or the secure mode may operate in the secure OS, and the normal mode and the secure mode may operate independently of each other. Therefore, even if an external attack by hacking or the like occurs in the normal mode, data in the secure mode can be protected.
  • FIG. 8A is a sequence diagram illustrating the operation of the system 1000 in the biometric information registration process 500.
  • the electronic device 150 may obtain first biometric information in the normal mode (S811).
  • the electronic device 150 may obtain first encrypted data obtained by encrypting the first biometric information using the first encryption key in the normal mode (S812).
  • the electronic device 150 may obtain second encrypted data obtained by encrypting the first encrypted data using the second encryption key and first user identification information about the first biometric information (S813).
  • the electronic device 150 may transmit the second encrypted data and the first user identification information acquired in the secure mode to the second server 300 (S814).
  • the second server 300 determines whether the first user identification information received from the electronic device 150 is user identification information corresponding to the second encrypted data (S815), and the first user identification information corresponds to the second encrypted data. In the case of the user identification information, authentication information corresponding to the second encrypted data and the first user identification information may be obtained (S816). The second server 300 may transmit the obtained authentication information to the electronic device 150. That is, the operation of the second server 300 is the same as described with reference to FIG. 5.
  • the electronic device 150 may register authentication information received from the first server 200 (S818). In detail, the electronic device 150 may register authentication information received from the first server 200 in the secure mode.
  • 8B is a sequence diagram illustrating an operation of the system 1000 in a user authentication process 700 for providing a service.
  • the electronic device 150 may obtain second biometric information in the normal mode (S821).
  • the electronic device 150 may obtain third encrypted data obtained by encrypting the second biometric information using the first encryption key in the normal mode (S822).
  • the electronic device 150 may obtain fourth encrypted data obtained by encrypting the third encrypted data using the second encryption key in the secure mode (S823). Furthermore, the electronic device 150 may of course acquire second user identification information on the second biometric information together with the fourth encrypted data.
  • the electronic device 150 may transmit the fourth encrypted data acquired in the secure mode to the third server 400 (S824). Furthermore, of course, the electronic device 150 may transmit the second user identification information regarding the second biometric information together with the fourth encrypted data.
  • the third server 400 may determine whether there is encrypted data corresponding to the obtained fourth encrypted data (S825), and if there is encrypted data corresponding to the fourth encrypted data, the third server 400 may perform a service ( S826). That is, the operation of the third server 400 is the same as that described with reference to FIG. 7.
  • FIGS. 8A and 8B have described only an embodiment in which the electronic device 100 and the first server 200 are implemented as one device, the present disclosure is not limited thereto.
  • the first server 200 and the third server 400 are implemented as one device, or the electronic device 100 and the third server 400 are implemented as one device, or Of course, the device 100 and the second server 300 may be implemented as a single device.
  • FIG. 9 is a flowchart illustrating a control method of a third server according to an embodiment of the present disclosure.
  • the third server 400 may receive authentication information and biometric information issuing request information from the first server 200 (S910). .
  • the third server 400 may transmit the authentication information and the biometric information issuing request information to the second server 300 (S920). As described above, the third server 400 may determine whether the signature value of the authentication information is the signature value of the second server 300 to determine the validity of the authentication information.
  • the third server 400 may receive and store second encrypted data encrypted by the first server 200 and first user identification information corresponding to the second encrypted data from the second server 300 (S930). As described above, the third server 400 may store the second encrypted data and the first user identification information, and perform encryption if the encrypted data corresponding to the stored data is input.
  • the term “part” or “module” as used in the present disclosure includes a unit composed of hardware, software, or firmware, and for example, may be used interchangeably with terms such as logic, logic block, component, or circuit. Can be.
  • the "unit” or “module” may be an integrally formed part or a minimum unit or part of performing one or more functions.
  • the module may be configured as an application-specific integrated circuit (ASIC).
  • ASIC application-specific integrated circuit
  • Various embodiments of the present disclosure may be implemented in software that includes instructions stored in a machine-readable storage media.
  • the device may include an electronic device according to the disclosed embodiments (for example, the electronic device 100.)
  • the processor When the command is executed by the processor, the processor directly, Alternatively, other components may be used to perform functions corresponding to the instructions under the control of the processor, and the instructions may include code that is acquired or executed by a compiler or an interpreter. It may be provided in the form of a non-transitory storage medium, where 'non-transitory' means that the storage medium does not contain a signal. Only it means that the material (tangible) data is not case that the permanently or temporarily stored in the storage medium.
  • a method may be provided included in a computer program product.
  • the computer program product may be traded between the seller and the buyer as a product.
  • the computer program product may be distributed online in the form of a device-readable storage medium (eg compact disc read only memory (CD-ROM)) or through an application store (eg Play StoreTM).
  • a storage medium such as a server of a manufacturer, a server of an application store, or a memory of a relay server, or may be temporarily obtained.
  • Each component (eg, a module or a program) according to various embodiments may be composed of a singular or plural number of objects, and some of the aforementioned subcomponents may be omitted, or other subcomponents may be omitted. It may be further included in various embodiments. Alternatively or additionally, some components (eg, modules or programs) may be integrated into one entity to perform the same or similar functions performed by each corresponding component prior to integration. According to various embodiments, operations performed by a module, program, or other component may be executed sequentially, in parallel, repeatedly, or heuristically, or at least some of the operations may be executed in a different order, omitted, or another operation may be added. Can be.

Landscapes

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

Abstract

생체 정보를 이용한 서비스 수행을 위한 시스템이 개시된다. 본 개시에 따른 시스템은 전자 장치, 제1 서버 및 제2 서버를 포함하고, 시스템의 제어 방법은, 전자 장치가 제1 생체 정보를 획득하는 단계, 전자 장치가, 획득된 제1 생체 정보 및 제1 암호키를 이용하여 제1 생체 정보를 암호화 한 제1 암호화 데이터를 획득하여 제1 서버로 전송하는 단계, 제1 서버가, 전자 장치로부터 수신한 제1 암호화 데이터 및 제2 암호키를 이용하여 제1 암호화 데이터를 암호화한 제2 암호화 데이터 및 제1 생체 정보에 대응되는 제1 사용자 식별 정보를 획득하고, 제2 서버로 전송하는 단계, 제2 서버가, 제1 서버로부터 수신한 제2 암호화 데이터 및 생체 정보에 대응되는 제1 사용자 식별 정보를 매칭하여 저장하는 단계, 제2 서버가, 매칭된 제2 암호화 데이터 및 제1 사용자 식별 정보를 바탕으로 인증 정보를 획득하여 제1 서버로 전송하는 단계 및 제1 서버가, 생체 정보에 대한 인증 정보를 등록하는 단계를 포함한다.

Description

생체 정보를 이용한 서비스 수행을 위한 시스템 및 그의 제어 방법
본 개시는 생체 정보를 이용한 서비스 수행을 위한 시스템 및 그의 제어 방법에 관한 것으로, 보다 상세하게는 사용자의 생체 정보를 보호함과 동시에, 사용자의 생체 정보만을 이용하여 서비스를 수행할 수 있는 시스템에 관한 것이다.
근래에는 사용자 정보를 보호하면서 사용자 정보를 이용한 다양한 서비스를 제공하는 기술들이 연구되고 있다. 예를 들어, 사용자 정보를 이용한 결제 시스템, 사용자 정보를 이용한 대여 시스템 등의 서비스가 제공되고 있다.
예를 들어, 종래에는 서비스 이용을 위하여 오프라인 결제를 이용하기 위하여는 사용자는 현금을 이용하여 비용을 지불하거나 신용 카드를 이용하여 비용을 지불하여야 하였다. 따라서, 사용자가 현금 또는 신용 카드를 소지하지 않고 있는 경우에는 서비스 이용을 위하여 오프라인 결제를 할 수 없는 문제점이 존재하였다.
이에 따라, 근래에는 사용자의 생체 정보를 이용하여 다양한 서비스를 제공하는 기술들이 연구되고 있다. 그러나 사용자 생체 정보는 사용자가 가진 고유한 정보라는 점에서 생체 정보를 변경하는 것이 불가능하다는 특징이 존재한다. 따라서, 외부 공격에 의해 사용자의 생체 정보가 도난 당하는 경우, 사용자는 변경 불가능한 정보를 타인에게 노출시키게 되어 생체 정보를 보호하기 위한 방법의 필요성이 대두되고 있다.
본 개시는 상술한 필요성에 따라 안출된 것으로, 사용자의 생체 정보를 보호하고, 생체 정보를 입력하는 것만으로 다양한 서비스를 제공받을 수 있는 시스템 및 그의 제어 방법에 관한 것이다.
상술한 목적을 달성하기 위한 본 개시의 일 실시예에 따른 전자 장치, 제1 서버 및 제2 서버를 포함하는 시스템의 제어방법은, 상기 전자 장치가 제1 생체 정보를 획득하는 단계, 상기 전자 장치가, 획득된 제1 생체 정보 및 제1 암호키를 이용하여 상기 제1 생체 정보를 암호화 한 제1 암호화 데이터를 획득하여 상기 제1 서버로 전송하는 단계, 상기 제1 서버가, 상기 전자 장치로부터 수신한 상기 제1 암호화 데이터 및 제2 암호키를 이용하여 상기 제1 암호화 데이터를 암호화한 제2 암호화 데이터 및 상기 제1 생체 정보에 대응되는 제1 사용자 식별 정보를 획득하고, 상기 제2 서버로 전송하는 단계, 상기 제2 서버가, 상기 제1 서버로부터 수신한 상기 제2 암호화 데이터 및 상기 생체 정보에 대응되는 제1 사용자 식별 정보를 매칭하여 저장하는 단계, 상기 제2 서버가, 상기 매칭된 제2 암호화 데이터 및 상기 제1 사용자 식별 정보를 바탕으로 인증 정보를 획득하여 상기 제1 서버로 전송하는 단계 및 상기 제1 서버가, 상기 생체 정보에 대한 상기 인증 정보를 등록하는 단계를 포함한다.
이때, 상기 시스템은 서비스를 제공하는 제3 서버를 더 포함하고, 상기 제1 서버로 상기 제3 서버의 서비스를 이용하기 위한 생체 정보 등록 명령 이 수신되면, 상기 제1 서버가, 상기 인증 정보 및 생체 정보 발급 요청 정보를 상기 제3 서버로 전송하는 단계, 상기 제3 서버가, 상기 수신한 인증 정보의 유효성을 확인하는 단계, 상기 수신한 인증 정보가 유효한 경우, 상기 제3 서버가, 상기 인증 정보 및 상기 생체 정보 발급 요청 정보를 상기 제2 서버로 전송하는 단계, 상기 제2 서버가 상기 인증 정보에 대응되는 상기 제2 암호화 데이터 및 상기 제1 사용자 식별 정보를 상기 제3 서버로 전송하는 단계 및 상기 제3 서버가, 상기 제2 서버로부터 수신한 상기 제2 암호화 데이터 및 상기 제1 사용자 식별 정보를 등록하는 단계를 더 포함할 수 있다.
이때, 상기 제어 방법은, 상기 전자 장치가 제2 생체 정보를 획득하는 단계, 상기 전자 장치가, 서비스 수행을 위한 생체 정보 입력을 위한 명령이 입력되면, 획득된 제2 생체 정보 및 제1 암호키를 이용하여 상기 제1 생체 정보를 암호화 한 제3 암호화 데이터를 획득하여 상기 제1 서버로 전송하는 단계, 상기 제1 서버가, 상기 전자 장치로부터 수신한 상기 제3 암호화 데이터 및 제2 암호키를 이용하여 상기 제3 암호화 데이터를 암호화한 제4 암호화 데이터를 획득하여 상기 제3 서버로 전송하는 단계, 상기 제3 서버가, 상기 수신한 제4 암호화 데이터에 대응되는 암호화 데이터가 상기 제3 서버에 존재하는지 여부를 판단하는 단계 및 상기 제4 암호화 데이터에 대응되는 암호화 데이터가 상기 제3 서버에 존재하는 경우, 상기 제3 서버가, 상기 서비스 수행을 위한 생체 정보 입력을 위한 명령에 대응되는 서비스를 수행하는 단계를 더 포함할 수 있다.
한편, 상술한 목적을 달성하기 위한 본 개시의 또 다른 실시예에 따른 전자 장치, 제1 서버 및 제2 서버를 포함하는 시스템은, 제1 생체 정보를 획득하고, 상기 획득된 제1 생체 정보 및 제1 암호키를 이용하여 상기 제1 생체 정보를 암호화 한 제1 암호화 데이터를 획득하는 전자 장치, 상기 전자 장치로부터 상기 제1 암호화 데이터를 수신하고, 상기 제1 암호화 데이터 및 제2 암호키를 이용하여 상기 제1 암호화 데이터를 암호화한 제2 암호화 데이터 및 상기 제1 생체 정보에 대응되는 제1 사용자 식별 정보를 획득하는 제1 서버, 상기 제1 서버로부터 상기 제2 암호화 데이터를 수신하고, 상기 제2 암호화 데이터를 바탕으로 인증 정보를 획득하며, 상기 인증 정보를 상기 제1 서버로 전송하는 제2 서버를 포함하며, 상기 제1 서버는, 상기 제2 서버로부터 수신한 인증 정보를 상기 생체 정보에 대한 상기 인증 정보로 등록할 수 있다.
이때, 상기 시스템은 서비스를 제공하는 제3 서버를 더 포함하고, 상기 제1 서버는 상기 제3 서버의 서비스를 이용하기 위한 생체 정보 등록 명령을 수신하고, 상기 인증 정보 및 생체 정보 발급 요청 정보를 상기 제3 서버로 전송하고, 상기 제3 서버는, 상기 수신한 인증 정보의 유효성을 확인하고, 상기 수신한 인증 정보가 유효한 경우, 상기 인증 정보 및 상기 생체 정보 발급 요청 정보를 상기 제2 서버로 전송하고, 상기 제2 서버는, 상기 제3 서버로부터 수신한 인증 정보에 대응되는 상기 제2 암호화 데이터 및 상기 제1 사용자 식별 정보를 상기 제3 서버로 전송하고, 상기 제3 서버는, 상기 제2 서버로부터 수신한 상기 제2 암호화 데이터 및 상기 제1 사용자 식별 정보를 등록할 수 있다.
이때, 상기 전자 장치는, 서비스 수행을 위한 생체 정보 입력을 위한 명령이 입력되면, 제2 생체 정보를 획득하고, 획득된 제2 생체 정보 및 제1 암호키를 이용하여 상기 제1 생체 정보를 암호화한 제3 암호화 데이터를 획득하여 상기 제1 서버로 전송하고, 상기 제1 서버는, 상기 전자 장치로부터 수신한 상기 제3 암호화 데이터 및 제2 암호키를 이용하여 상기 제3 암호화 데이터를 암호화한 제4 암호화 데이터를 획득하여 상기 제3 서버로 전송하고, 상기 제3 서버는, 상기 수신한 제4 암호화 데이터에 대응되는 암호화 데이터가 상기 제3 서버에 존재하는지 여부를 판단하고, 상기 제4 암호화 데이터에 대응되는 암호화 데이터가 상기 제3 서버에 존재하는 경우, 상기 서비스 수행을 위한 생체 정보 입력을 위한 명령에 대응되는 서비스를 수행할 수 있다.
한편, 상술한 목적을 달성하기 위한 본 개시의 또 다른 실시예에 따른 제3 서버의 제어 방법은, 서비스를 이용을 위한 생체 정보를 등록하기 위한 위한 사용자 명령이 입력되면, 제1 서버로부터 인증 정보 및 생체 정보 발급 요청 정보를 수신하는 단계, 상기 수신한 인증 정보가 유효한 경우, 상기 인증 정보 및 생체 정보 발급 요청 정보를 제2 서버로 전송하는 단계, 상기 제2 서버로부터 상기 제1 서버에서 암호화된 제2 암호화 데이터 및 상기 제2 암호화 데이터에 대응되는 제1 사용자 식별 정보를 수신하여 저장하는 단계를 포함한다.
이때, 상기 제어 방법은, 서비스 수행을 위한 생체 정보 등록 명령이 입력되면, 상기 제1 서버로부터 생체 정보가 암호화된 제4 암호화 데이터를 수신하는 단계, 상기 제4 암호화 데이터에 대응되는 암호화 데이터가 상기 제3 서버에 존재하는지 판단하는 단계; 및 상기 제4 암호화 데이터에 대응되는 암호화 데이터가 상기 제3 서버에 존재하는 경우, 상기 서비스를 수행하는 단계를 더 포함할 수 있다.
한편, 상술한 목적을 달성하기 위한 본 개시의 또 다른 실시예에 따른 제3 서버는, 메모리, 통신부 및 서비스를 이용을 위한 생체 정보를 등록하기 위한 위한 사용자 명령이 입력되면, 상기 통신부를 통해 제1 서버로부터 인증 정보 및 생체 정보 발급 요청 정보를 수신하고, 상기 수신한 인증 정보가 유효한지 여부를 판단하는 프로세서를 포함하고, 상기 프로세서는, 상기 인증 정보가 유효한 경우, 상기 인증 정보 및 생체 정보 발급 요청 정보를 상기 통신부를 통해 제2 서버로 전송하고, 상기 제2 서버로부터 상기 제1 서버에서 암호화된 제2 암호화 데이터 및 상기 제2 암호화 데이터에 대응되는 제1 사용자 식별 정보를 상기 통신부를 통해 수신하여 상기 메모리에 저장할 수 있다.
이때, 상기 프로세서는, 서비스 수행을 위한 생체 정보 등록 명령이 입력되면, 상기 제1 서버로부터 생체 정보가 암호화된 제4 암호화 데이터를 상기 통신부를 통해 수신하고, 상기 제4 암호화 데이터에 대응되는 암호화 데이터가 상기 메모리에 존재하는지 판단하고, 상기 제4 암호화 데이터에 대응되는 암호화 데이터가 상기 메모리에 존재하는 경우, 상기 서비스를 수행할 수 있다.
상술한 본 개시의 다양한 실시예에 따르면, 본 개시에 따른 시스템은 생체 정보를 안전하게 보호함과 동시에 생체 정보를 입력하는 것만으로도 다양한 서비스를 제공할 수 있게 된다.
도 1은 본 개시의 일 실시예에 따른 인증 시스템을 설명하기 위한 시스템도이다.
도 2는 본 개시의 일 실시예에 따른 시스템의 동작을 간략히 설명하기 위한 시스템도이다.
도 3a 내지 3d는 본 개시의 일 실시예에 따른 전자 장치, 제1 서버, 제2 서버 및 제3 서버의 구성을 간략히 도시한 블록도이다.
도 4는 본 개시의 일 실시예에 따른 전자 장치, 제1 서버, 제2 서버 및 제3 서버에 포함된 다양한 모듈을 설명하기 위한 예시도이다.
도 5는 본 개시의 일 실시예에 따른 생체 정보 등록 과정을 설명하기 위한 시퀀스도이다.
도 6은 본 개시의 다양한 실시예에 따른 서비스 이용을 위한 생체 정보 등록 과정을 설명하기 위한 시퀀스도이다.
도 7은 본 개시의 일 실시예에 따른 서비스 제공을 위한 사용자 인증 과정을 설명하기 위한 시퀀스도이다.
도 8a 및 8b는 본 개시의 다양한 실시예에 따른 생체 정보 등록 과정, 서비스 이용을 위한 생체 정보 등록 과정 및 서비스 제공을 위한 사용자 인증 과정을 설명하기 위한 시퀀스도이다.
도 9는 본 개시의 일 실시예에 따른 제3 서버의 제어 방법을 설명하기 위한 흐름도이다.
본 명세서에서 사용되는 용어에 대해 간략히 설명하고, 본 개시에 대해 구체적으로 설명하기로 한다.
본 개시의 실시 예에서 사용되는 용어는 본 개시에서의 기능을 고려하면서 가능한 현재 널리 사용되는 일반적인 용어들을 선택하였으나, 이는 당 분야에 종사하는 기술자의 의도 또는 판례, 새로운 기술의 출현 등에 따라 달라질 수 있다. 또한, 특정한 경우는 출원인이 임의로 선정한 용어도 있으며, 이 경우 해당되는 개시의 설명 부분에서 상세히 그 의미를 기재할 것이다. 따라서 본 개시에서 사용되는 용어는 단순한 용어의 명칭이 아닌, 그 용어가 가지는 의미와 본 개시의 전반에 걸친 내용을 토대로 정의되어야 한다.
본 개시의 실시 예들은 다양한 변환을 가할 수 있고 여러 가지 실시 예를 가질 수 있는바, 특정 실시 예들을 도면에 예시하고 상세한 설명에 상세하게 설명하고자 한다. 그러나 이는 특정한 실시 형태에 대해 범위를 한정하려는 것이 아니며, 발명된 사상 및 기술 범위에 포함되는 모든 변환, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다. 실시 예들을 설명함에 있어서 관련된 공지 기술에 대한 구체적인 설명이 요지를 흐릴 수 있다고 판단되는 경우 그 상세한 설명을 생략한다.
제1, 제2 등의 용어는 다양한 구성요소들을 설명하는데 사용될 수 있지만, 구성요소들은 용어들에 의해 한정되어서는 안 된다. 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용된다.
단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 출원에서, "포함하다" 또는 "구성되다" 등의 용어는 명세서 상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
본 개시에서 "모듈" 혹은 "부"는 적어도 하나의 기능이나 동작을 수행하며, 하드웨어 또는 소프트웨어로 구현되거나 하드웨어와 소프트웨어의 결합으로 구현될 수 있다. 또한, 복수의 "모듈" 혹은 복수의 "부"는 특정한 하드웨어로 구현될 필요가 있는 "모듈" 혹은 "부"를 제외하고는 적어도 하나의 모듈로 일체화되어 적어도 하나의 프로세서(미도시)로 구현될 수 있다.
아래에서는 첨부한 도면을 참고하여 본 개시의 실시 예에 대하여 본 개시가 속하는 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있도록 상세히 설명한다. 그러나 본 개시는 여러 가지 상이한 형태로 구현될 수 있으며 여기에서 설명하는 실시 예에 한정되지 않는다. 그리고 도면에서 본 개시를 명확하게 설명하기 위해서 설명과 관계없는 부분은 생략하였으며, 명세서 전체를 통하여 유사한 부분에 대해서는 유사한 도면 부호를 붙였다.
한편, 본 개시에 따른 실시예에서는 사용자의 생체 정보를 암호화 하는 실시예에 대하여 주로 설명하나, 이에 한정되는 것은 아니다. 즉, 사용자의 생체 정보 뿐만 아니라 기타 식별 정보(주민등록 번호, ID 등), 패스워드, 패턴 등 다양한 사용자 정보에도 본 개시의 기술적 사상이 적용될 수 있음은 물론이다. 또한 본 개시에 따른 암호화는 다양한 암호화 방법이 적용될 수 있음은 물론이다.
도 1은 본 개시의 일 실시예에 따른 인증 시스템을 설명하기 위한 시스템도이다.
도 1에 도시된 바와 같이, 시스템(1000)은 전자 장치(100), 제1 서버(200), 제2 서버(300) 및 제3 서버(400)를 포함한다.
전자 장치(100)는 사용자의 생체 정보를 획득하기 위한 장치이다. 예를 들어, 전자 장치(100)는 지문 인식을 위한 장치, 홍채 인식을 위한 장치, 손바닥 정맥 인식을 위한 장치, 얼굴 인식을 위한 장치 등 사용자의 생체 정보를 인식하기 위한 다양한 장치일 수 있다. 나아가, 전자 장치(100)는 사용자의 생체 정보 뿐만 아니라, 다양한 정보를 생성 또는 획득할 수 있는 다양한 장치일 수 있음은 물론이다.
전자 장치(100)는 사용자의 제1 생체 정보를 획득하고, 획득한 제1 생체 정보 및 제1 암호키를 이용하여 제1 암호화 데이터를 생성할 수 있다. 같은 방법으로 전자 장치(100)는 사용자의 제2 생체 정보를 획득하고, 획득한 제2 생체 정보 및 제1 암호키를 이용하여 제3 암호화 데이터를 생성할 수 있다. 즉, 제1 암호화 데이터 및 제3 암호화 데이터는 동일한 제1 암호키를 이용하여 암호화된 데이터일 수 있다. 이때, 제1 암호화 데이터는 사용자의 생체 정보에 대한 암호화 데이터를 제2 서버(300) 및 제3 서버(400)에 등록하는데 필요한 암호화 데이터이고, 제3 암호화 데이터는 제3 서버(400)가 제공하는 서비스를 이용하고자 할 때, 사용자가 입력한 제2 생체 정보에 대한 암호화 데이터일 수 있다.
한편, 본 개시의 다양한 실시예에 따라 전자 장치(100)는 제3 암호화 데이터 와 함께 제3 암호화 데이터의 유효성을 검증하기 위한 메시지 인증 코드(Message Authorization Code, MAC)를 제1 서버(200)로 전송할 수도 있다.
제1 서버(200)는 전자 장치(100)로부터 암호화 하기 위한 데이터를 수신하고, 제2 서버(300) 및 서비스 서버(300)와 통신하여 생체 정보를 등록하기 위한 장치이다. 이때, 제1 서버(200)는 다양한 형태의 서버 또는 전자 장치일 수 있다. 예를 들어, 제1 서버(200)는 사용자 단말 장치일 수 있다. 또는, 제1 서버(200)는 사용자에게 접근 권한이 있는 서버일 수 있다. 예를 들어, 제1 서버(200)는 사용자에게 접근 권한이 있는 개인 클라우드 서버 등일 수 있다. 또는, 제1 서버(200)는 제3 서버(400)의 관리자와 동일한 관리자가 접근할 수 있는 독립된 서버로 구성될 수 있다. 또는, 제1 서버(200)는 전자 장치(100), 제2 서버(300) 및 제3 서버(400)와 독립적으로 관리되는 서버일 수 있다. 즉, 제1 서버(200)는 전자 장치(100), 제2 서버(300) 및 제3 서버(400)와 독립된 다양한 서버일 수 있다.
제1 서버(200)는 전자 장치(100)로부터 수신한 제1 암호화 데이터 및 제2 암호키를 이용하여 제2 암호화 데이터를 생성할 수 있다. 이때, 제1 서버(200)는 제1 사용자 식별 정보를 함께 획득할 수 있다. 제1 사용자 식별 정보는 제2 암호화 데이터에 대한 사용자를 식별하기 위한 정보로, 예를 들어 사용자 단말 장치로부터 수신할 수 있다.
같은 방법으로, 제1 서버(200)는 제3 암호화 데이터 및 제2 암호키를 이용하여 제4 암호화 데이터를 생성할 수 있으며, 제4 암호화 데이터에 대응되는 제2 사용자 식별 정보를 획득할 수 있다. 제1 서버(200)는 제2 암호화 데이터 및 제1 사용자 식별 정보를 제2 서버(300)로 전송하거나 제4 암호화 데이터 및 제2 사용자 식별 정보 중 적어도 하나를 제2 서버(300)로 전송할 수 있다. 한편, 제1 서버(200)가 전자 장치(100)로부터 메시지 인증 코드를 수신한 경우, 제1 서버(200)는 제4 암호화 데이터, 제2 사용자 식별 정보 및 메시지 인증 코드를 제3 서버(400)로 전송할 수 있다.
제2 서버(300)는 제3 서버(400)가 서비스를 제공하기 위해 필요한 암호화된 생체 정보를 인증해 주기 위한 장치이다. 제2 서버(300)는 암호화된 생체 정보에 대한 신뢰도를 인증하기 위한 서버로, 국가기관 또는 다양한 인증 기관이 관리하는 서버일 수 있다.
제2 서버(300)는 제1 서버(200)로부터 제2 암호화 데이터 및 제1 사용자 식별 정보를 수신하고, 수신한 제2 암호화 데이터가 제1 사용자 식별 정보에 대응되는 암호화 데이터인지 여부를 판단할 수 있다. 수신한 제2 암호화 데이터가 제1 사용자 식별 정보에 대응되는 암호화 데이터인 경우, 제2 서버(200)는 제2 암호화 데이터 및 제1 사용자 식별 정보를 인증하기 위한 인증 정보를 생성하여 제1 서버(200)로 전송할 수 있다. 이때, 생성된 인증 정보는 제2 서버(300)의 서명값이 포함될 수 있다.
한편, 제3 서버(400)로부터 서비스 이용을 위한 암호화 데이터를 요청하는 제어 신호가 수신되면, 제2 서버(300)는 암호화 데이터를 제3 서버(400)로 전송하거나, 암호화 데이터 및 암호화 데이터에 대응되는 사용자 식별 정보를 제3 서버(400)로 전송할 수 있다. 구체적으로, 제3 서버(400)로부터 인증 정보를 수신하면, 제2 서버(300)는 수신한 인증 정보에 대응되는 제2 암호화 데이터 및 제1 사용자 식별 정보를 제 3서버(400)로 전송할 수 있다. 이때, 후술하는 바와 같이, 제2 서버(300)가 제3 서버(400)로 전송하는 인증 정보는 제1 서버(200)로부터 수신한 인증 정보일 수 있다.
제3 서버(400)는 서비스 이용을 위한 암호화된 생체 정보 및 사용자 식별 정보를 등록할 수 있는 구성이다. 또한, 제3 서버(400)는 서비스 이용을 위한 암호화된 생체 정보를 수신한 경우, 서비스를 제공할 수 있는 구성이다. 즉, 제3 서버(400)는 서비스를 제공하기 위한 서비스 제공자가 관리하는 서버일 수 있다.
제3 서버(400)는 제1 서버(200)로부터 인증 정보 및 생체 정보 발급 요청 정보를 수신할 수 있다. 제3 서버(400)는 수신한 인증 정보가 유효한 경우, 인증 정보 및 생체 정보 발급 요청 정보를 제2 서버(300)로 전송할 수 있다. 제3 서버(400)는 제2 서버(300)로부터 전송한 인증 정보에 대응되는 암호화 데이터 및 사용자 식별 정보를 수신할 수 있다. 구체적으로, 제3 서버(400)는 제2 서버(300)로부터 제2 암호화 데이터 및 사용자 식별 정보를 수신하여 저장할 수 있다.
한편, 제1 서버(200)로부터 서비스 이용을 위한 암호화된 데이터 및 서비스 정보를 수신하면, 제3 서버(400)는 수신된 암호화 데이터의 유효성을 판단할 수 있다. 수신된 암호화 데이터가 유효한 경우, 제3 서버(400)는 서비스 정보에 대응되는 서비스를 수행할 수 있다. 이때, 서비스 정보란, 제3 서버(400)가 제공할 서비스의 종류와 관련된 것으로, 예를 들어 특정 금액을 결제하기 위한 서비스, 사용자 정보를 판단하기 위한 서비스 등일 수 있다.
예를 들어, 제1 서버(200)로부터 제4 암호화 데이터 및 서비스 정보를 수신한 경우, 제3 서버(400)는 제4 암호화 데이터에 대응되는 암호화 데이터(예컨대, 제2 암호화 데이터)가 존재하는지 여부를 판단할 수 있다. 제4 암호화 데이터에 대응되는 암호화 데이터가 존재하면, 제3 서버(400)는 서비스 정보에 대응되는 서비스를 수행할 수 있다.
또 다른 실시예로, 제3 서버(400)는 제1 서버(200)로부터 암호화 데이터, 암호화 데이터에 대응되는 사용자 식별 정보 및 서비스 정보를 수신할 수 있다. 예를 들어, 제3 서버(400)는 제1 서버(200)로부터 제4 암호화 데이터, 제4 암호화 데이터에 대응되는 제2 사용자 식별 정보 및 서비스 정보를 수신할 수 있다. 이 경우, 제3 서버(400)는 제2 사용자 식별 정보에 대응되는 사용자 식별 정보(예컨대, 제1 사용자 식별 정보)를 획득하고, 획득한 사용자 식별 정보에 대응되는 암호화 데이터(예컨대, 제2 암호화 데이터)가 제4 암호화 데이터에 대응되는 암호화 데이터인지 여부를 판단할 수 있다. 획득한 사용자 식별 정보에 대응되는 암호화 데이터(예컨대, 제2 암호화 데이터)가 제4 암호화 데이터에 대응되는 암호화 데이터인 경우, 제3 서버(400)는 서비스 정보에 대응되는 서비스를 수행할 수 있다.
이때, 제3 서버(400)는 제2 암호화 데이터 및 제4 암호화 데이터를 복호화 하지 않고, 제2 암호화 데이터에 대응되는 제1 생체 정보와 제4 암호화 데이터에 대응되는 제2 생체 정보가 동일한 사용자의 생체 정보인지 여부를 판단할 수 있다.
한편, 전자 장치(100), 제1 서버(200), 제2 서버(300) 및 제3 서버(400) 각각은 독립된 하나의 단일 서버로 구현될 수 있으나, 이에 한정되는 것은 아니다. 예를 들어, 전자 장치(100), 제1 서버(200), 제2 서버(300) 및 제3 서버(400) 중 적어도 두개는 필요에 따라 하나의 서버로 구현될 수도 있다.. 또 다른 예로, 전자 장치(100), 제1 서버(200), 제2 서버(300) 및 제3 서버(400) 각각은 클라우드 서버 또는 복수개의 분산 서버를 포함할 수 있다.
도 2는 본 개시의 일 실시예에 따른 시스템의 동작을 간략히 설명하기 위한 시스템도이다.
전자 장치(100), 제1 서버(200), 제2 서버(300) 및 제3 서버(400)를 포함하는 시스템(1000)은 1) 생체 정보 등록 과정(500), 2) 서비스 이용을 위한 생체 정보 등록 과정(600) 및 3) 서비스 제공을 위한 사용자 인증 과정(700)을 통해 서비스를 제공할 수 있다. 구체적으로 생체 정보 등록 과정(500)은 전자 장치(100), 제1 서버(200) 및 제2 서버(300)에 의해 수행되고, 서비스 이용을 위한 생체 정보 등록 과정(600)은 제1 서버(200), 제2 서버(300) 및 제3 서버(400)에 의해 수행되며, 서비스 제공을 위한 사용자 인증 과정(700)은 전자 장치(100), 제1 서버(200) 및 제3 서버(400)에 의해 수행될 수 있다.
이하에서는 도2 및 도 5 내지 도 7을 이용하여 1) 생체 정보 등록 과정(500), 2) 서비스 이용을 위한 생체 정보 등록 과정(600) 및 3) 서비스 제공을 위한 사용자 인증 과정(700)의 동작을 상세히 설명한다.
생체 정보 등록 과정(500)에서, 전자 장치(100)는 제1 생체 정보를 획득하고, 획득된 제1 생체 정보 및 제1 암호키를 이용하여 제1 생체 정보를 암호화한 제1 암호화 데이터를 획득할 수 있다.
제1 서버(200)는 전자 장치(100)로부터 제1 암호화 데이터를 수신하고, 제1 암호화 데이터 및 제2 암호키를 이용하여 제1 암호화 데이터를 암호화한 제2 암호화 데이터 및 제1 생체 정보에 대응되는 제1 사용자 식별 정보를 획득할 수 있다.
제2 서버(300)는 제1 서버(200)로부터 제2 암호화 데이터를 수신하고, 제2 암호화 데이터를 바탕으로 인증 정보를 획득하고, 획득된 인증 정보를 제1 서버(200)로 전송할 수 있다. 이때, 인증 정보는 제2 서버(300)의 서명값을 포함할 수 있다.
제1 서버(200)는 제2 서버로부터 수신한 인증 정보를 생체 정보에 대한 인증 정보로 등록할 수 있다. 구체적으로, 제1 서버(200)는 제2 서버로부터 수신한 인증 정보를 제1 암호화 데이터에 대응되는 제1 생체 정보 또는 제2 암호화 데이터에 대응되는 제1 생체 정보에 대한 인증 정보로 등록할 수 있다.
이때, 제1 사용자 식별 정보는 제1 서버(200)에 의해 획득될 수 있다. 예를 들어, 제1 사용자 식별 정보는, 사용자가 직접 제1 서버(200)에 등록하는 방법을 통해 획득될 수 있다.
구체적으로, 도 5에 도시된 바와 같이, 생체 정보 등록 과정(500)은 전자 장치(100), 제1 서버(200) 및 제2 서버(300)이 연동되어 동작할 수 있다.
먼저, 전자 장치(100)는 제1 생체 정보를 획득할 수 있다(S510). 구체적으로, 전자 장치(100)는 사용자의 생체 정보를 입력 받기 위한 제어 신호를 수신하면, 전자 장치(100)는 사용자에게 사용자의 생체 정보를 입력할 것을 요청할 수 있다. 예를 들어, 전자 장치(100)가 디스플레이를 포함하는 경우, 전자 장치(100)는 생체 정보 입력을 안내하는 가이드 화면을 표시할 수 있다. 또 다른 예로, 전자 장치(100)가 스피커를 포함하는 경우, 전자 장치(100)는 생체 정보 입력을 요청하는 오디오 신호를 출력할 수 있다.
한편, 생체 정보를 입력하는 제어 신호는 다양한 장치로부터 수신될 수 있다. 예를 들어, 생체 정보를 입력하는 제어 신호는 제1 서버(200) 또는 제2 서버(300)로부터 수신될 수 있다. 이 경우, 제어 신호는 생체 정보를 암호화한 암호화 데이터를 전송할 장치에 대한 정보를 더 포함할 수 있다. 또 다른 예로, 생체 정보 입력 신호는 전자 장치(100) 내부에서 생성될 수 있다. 이 경우, 전자 장치(100)는 생체 정보를 암호화한 암호화 데이터를 전송할 장치에 대한 정보를 입력 받을 수 있다.
전자 장치(100)는 제1 암호키를 이용하여 제1 생체 정보를 암호화한 제1 암호화 데이터를 획득할 수 있다(S520). 이때, 제1 암호화 데이터는 예를 들어, Elgamal 암호화 방식, Diffie Hellman 암호화 방식, 타원 곡선 암호화 방식 등의 공개키 암호화 방식에 의해 암호화 될 수 있다. 즉, 제1 암호키를 이용한 암호화 방식은 후술하는 제2 암호키를 이용한 암호화 방식에서 제1 암호키가 제2 암호키를 이용한 암호화에서의 평문으로 간주될 수 있는 특징이 있다.
즉, 제1 암호키는 제2 암호키를 이용한 암호화 방식에서 평문으로 간주될 수 있는 특징이 존재하며, 상기 암호화 방식 뿐만 아니라, 제1 암호키가 제2 암호키를 이용한 암호화 방식에서 평문으로 간주될 수 있는 다양한 암호화 방식에 의해 제1 암호화 데이터가 생성될 수 있음은 물론이다. 후술하는 바와 같이, 제1 암호화 데이터는 Elgamal 암호화 방식, Diffie Hellman 암호화 방식, 타원 곡선 암호화 방식 등의 공개키 암호화 방식에 의해 암호화 됨으로써, 서비스 제공을 위한 사용자 인증 과정(700)과정에서 제1 생체 정보와 제2 생체 정보가 동일한 사용자에 대한 생체 정보 인지 여부를 판단할 수 있다.
전자 장치(100)는 획득된 제1 암호화 데이터를 제1 서버(200)로 전송할 수 있다(S530).
제1 서버(200)는 제2 암호키를 이용하여 제1 암호화 데이터를 암호화한 제2 암호화 데이터 및 제1 생체 정보에 대한 제1 사용자 식별 정보를 획득할 수 있다(S540). 이때, 제2 암호화 데이터는 예를 들어, 내적 암호화 방식(Inner Product Encryption, IPE)에 의한 암호화 데이터일 수 있다. IPE에 의한 암호화 방식은 암호화된 데이터를 복호화 하는 과정 없이 입력된 생체 정보의 동일성을 확인할 수 있는 특성이 있다. 상술한 IPE에 의한 암호화 방식 외에도, 데이터가 암호화된 상태에서 연산이 가능한 동형적(Homomorphic) 성질을 가지는 다양한 암호화 방법이 본 개시에 따른 제2 암호화 데이터를 생성하는데 사용될 수 있음은 물론이다. 한편, 제1 서버(200)는 제1 암호화 데이터에 대한 제1 사용자 식별 정보를 입력 받을 수 있다. 예를 들어, 제1 서버(200)는 제1 사용자 식별 정보를 사용자로부터 직접 입력 받을 수 있다. 또 다른 예로, 제1 서버(200)는 외부의 인증 기관에 기 등록된 생체 정보 및 기 등록된 생체 정보에 매칭된 사용자 식별 정보를 바탕으로 제1 사용자 식별 정보를 획득할 수 있다. 이때, 제1 서버(200)가 사용자 단말 장치 또는 사용자에게 접근 권한이 있는 서버일 경우, 제1 서버(200)는 하나의 사용자 식별 정보만을 저장하고 있으며, 저장된 사용자 식별 정보에 대응되는 적어도 하나의 암호화 데이터를 저장할 수 있다. 그러나 제1 서버(200)가 사용자에게 접근 권한이 없는 서버인 경우, 제1 서버(200)는 적어도 하나의 사용자 식별 정보 각각에 대한 적어도 하나의 암호화 데이터를 매칭하여 저장할 수 있다.
제1 서버(200)는 제2 암호화 데이터 및 제1 사용자 식별 정보를 제2 서버(300)로 전송할 수 있다(S550).
제2 서버(300)는 제1 사용자 식별 정보가 제2 암호화 데이터에 대응되는 사용자 식별 정보인지 여부를 판단할 수 있다(S560). 일 실시예로, 제2 서버(300)는 제1 사용자 식별 정보에 대응되는 사용자 단말 장치로 제1 사용자 식별 정보가 제2 암호화 데이터에 대응되는 사용자 식별 정보인지 여부를 확인하기 위한 요청을 전송할 수 있다. 예를 들어, 제2 서버(300)는 제1 사용자 식별 정보가 제2 암호화 데이터에 대응되는 사용자 식별 정보인지 여부를 문의하는 문자 메시지 또는 전화 요청 및 인증 번호를 사용자 단말 장치로 전송하고, 사용자로부터 입력된 인증 번호화 제2 서버(300)가 전송한 인증 번호가 동일한 경우, 제2 서버(300)는 제1 사용자 식별 정보가 제2 암호화 데이터에 대응되는 사용자 식별 정보라고 판단할 수 있다. 또 다른 실시예로, 제2 암호화 데이터가 제1 사용자 식별 정보에 대응되는 구성인지 여부는 면대면(Face to Face) 방식으로 확인될 수도 있다.
제1 사용자 식별 정보가 제2 암호화 데이터에 대응되는 사용자 식별 정보인 경우, 제2 서버(300)는 제2 암호화 데이터 및 제1 사용자 식별 정보에 대응되는 인증 정보를 획득할 수 있다(S570). 이때, 획득된 인증 정보는 제2 서버(300)의 고유한 서명값 정보를 포함할 수 있다.
제2 서버(300)는 획득한 인증 정보를 제1 서버(200)로 전송할 수 있다(S580). 제1 서버(200)는 획득한 인증 정보를 등록할 수 있다(S590).
상술한 과정을 통해, 시스템(1000)는 사용자의 생체 정보를 암호화 하고, 암호화된 사용자 생체 정보를 사용자 식별 정보와 함께 매칭하며, 암호화된 생체 정보 및 사용자 식별 정보가 서비스 이용에 적법한 정보라는 인증 정보를 제2 서버(300)로부터 획득하여 제1 서버(200)에 저장할 수 있다.
한편, 서비스 이용을 위한 생체 정보 등록 과정(600)에서, 제1 서버(200)는 제3 서버(400)의 서비스 이용을 위해 생체 정보를 등록하기 위한 사용자 명령을 수신할 수 있다. 이때, 서비스 이용을 위해 생체 정보를 등록하기 위한 사용자 명령은 제3 서버(400)로부터 수신하거나 기타 외부 장치로부터 수신할 수 있다. 제1 서버(200)는 생체 정보 등록 과정(500)에서 등록된 인증 정보 및 생체 정보 발급 요청 정보를 제3 서버(400)로 전송할 수 있다.
제3 서버(400)는 수신한 인증 정보의 유효성을 판단할 수 있다. 구체적으로, 제3 서버(400)는 인증 정보의 서명값이 제2 서버(300)의 서명값인지 여부를 판단하여 인증 정보의 유효성을 판단할 수 있다. 제1 서버(200)로부터 수신한 인증 정보가 유효한 경우, 제3 서버(400)는 인증 정보 및 생체 정보 발급 요청 정보를 제2 서버(300)로 전송할 수 있다.
제2 서버(300)는 제1 서버(200)로부터 수신한 인증 정보 및 생체 정보 발급 요청 정보를 바탕으로, 인증 정보에 대응되는 제2 암호화 데이터 및 제1 사용자 식별 정보를 제3 서버(400)로 전송할 수 있다.
제3 서버(400)는 제2 서버(300)로부터 수신한 제2 암호화 데이터 및 제1 사용자 식별 정보를 등록할 수 있다. 구체적으로, 제3 서버(400)는 제2 서버(300)로부터 수신한 제2 암호화 데이터 및 제1 사용자 식별 정보를 매칭하여 등록할 수 있다.
구체적으로 도 6에 도시된 바와 같이, 서비스 이용을 위한 생체 정보 등록 과정(600)는 제1 서버(200), 제2 서버(300) 및 제3 서버(400)가 연동되어 동작할 수 있다.
먼저, 제1 서버(200)는 서비스 이용을 위한 생체 정보 등록 명령을 수신할 수 있다(S610). 예를 들어, 서비스 이용을 위한 생체 정보 등록 명령은 제3 서버(400) 또는 사용자 단말 장치로부터 수신될 수 있다.
제1 서버(200)는 서비스 이용을 위한 생체 정보 등록 명령에 대응되는 인증 정보 및 생체 정보 발급 요청 정보를 제3 서버(400)로 전송할 수 있다(S620).
제 3 서버(400)는 제1 서버(200)로부터 수신한 인증 정보의 유효성을 판단할 수 있다(S630). 구체적으로, 제3 서버(400)는 인증 정보에 포함된 서명값이 제2 서버(300)의 서명값인지 여부를 판단하여 인증 정보의 유효성을 판단할 수 있다.
인증 정보가 유효한 경우, 제3 서버(400)는 인증 정보 및 생체 정보 발급 요청 정보를 제2 서버(300)로 전송할 수 있다(S640).
제2 서버(300)는 수신한 인증 정보에 대응되는 제2 암호화 데이터 및 제1 사용자 식별 정보를 획득할 수 있다(S650). 제2 서버(300)는 획득한 제2 암호화 데이터 및 제1 사용자 식별 정보를 제3 서버(400)로 전송하고(S660), 제3 서버(400)는 제2 서버(300)로부터 획득한 제2 암호화 데이터 및 제1 사용자 식별 정보를 등록할 수 있다(S670). 즉, 제3 서버(400)는 제2 서버(300)로부터 획득한 제2 암호화 데이터 및 제1 사용자 식별 정보를 매칭하여 저장할 수 있다.
한편, 서비스 제공을 위한 사용자 인증 과정(700)에서, 서비스 수행을 위한 생체 정보 입력을 위한 명령이 입력되면, 전자 장치(100)는 제2 생체 정보를 획득하고, 획득된 제2 생체 정보 및 제1 암호키를 이용하여 제2 생체 정보를 암호화 한 제3 암호화 데이터를 획득하여 제1 서버(200)로 전송할 수 있다.
제1 서버(200)는 전자 장치(100)로부터 수신한 제3 암호화 데이터 및 제2 암호키를 이용하여 제3 암호화 데이터를 암호화한 제4 암호화 데이터를 획득하여 제3 서버(400)로 전송할 수 있다.
이때, 전자 장치(100)는 제3 암호화 데이터와 함께 메시지 인증 코드를 제1 서버(200)로 전송할 수 있다. 제1 서버(200)는 제4 암호화 데이터와 함께 전자 장치로(100)부터 수신한 메시지 인증 코드를 제3 서버(400)로 전송하고, 제3 서버(400)는, 제1 서버(200)로부터 수신한 메시지 인증 코드를 바탕으로, 제4 암호화 데이터의 유효성을 판단할 수 있다.
제4 암호화 데이터가 유효한 경우, 제3 서버(400)는 제1 서버(200)오부터 수신한 제4 암호화 데이터에 대응되는 암호화 데이터가 제3 서버(400)에 존재하는지 여부를 판단할 수 있다.
일 실시예로, 제3 서버(400)는 제3 서버(400)에 저장된 복수의 암호화 데이터와 제4 암호화 데이터를 비교하여 제2 생체 정보에 대응되는 생체 정보를 포함하는 암호화 데이터가 존재하는지 여부를 판단할 수 있다.
또 다른 실시예로, 제1 서버(200)가 제4 암호화 데이터 및 제2 생체 정보에 대응되는 제2 사용자 식별 정보를 매칭하여 제3 서버(400)로 전송한 경우, 제3 서버(400)는 제3 서버(400)에 저장된 복수의 사용자 식별 정보 중, 제2 사용자 식별 정보와 동일한 사용자 식별 정보를 획득하고, 제4 암호화 데이터와 제2 사용자 식별 정보와 동일한 사용자 식별 정보와 매칭된 암호화 데이터를 비교하여, 제2 생체 정보와 제2 사용자 식별 정보와 동일한 사용자 식별 정보에 대응되는 생체 정보가 동일한지 여부를 판단할 수도 있다.
한편, 제3 서버(400)는, 제4 암호화 데이터 및 제3 서버(400)에 저장된 복수의 암호화 데이터를 복호화 하지 않고 제4 암호화 데이터에 대응되는 암호화 데이터가 존재하는지 여부를 판단할 수 있다. 제4 암호화 데이터에 대응되는 암호화 데이터가 존재하는지 여부를 판단함으로써, 제3 서버(400)는 제2 생체 정보에 대한 정보가 없이도 서비스를 수행할 수 있다.
제4 암호화 데이터에 대응되는 암호화 데이터가 제3 서버(400)에 존재하는 경우, 제3 서버(400)는 서비스 수행을 위한 생체 정보 입력을 위한 명령에 대응되는 서비스를 수행할 수 있다.
구체적으로, 도 7에 도시된 바와 같이, 서비스 제공을 위한 사용자 인증 과정(700)은 전자 장치(100), 제1 서버(200) 및 제3 서버(400)가 연동되어 동작할 수 있다.
먼저, 전자 장치(100)는 제2 생체 정보를 획득할 수 있다(S710). 구체적으로, 전자 장치(100)는 사용자의 생체 정보를 입력 받기 위한 제어 신호를 수신하면, 전자 장치(100)는 사용자에게 사용자의 생체 정보를 입력할 것을 요청할 수 있다. 예를 들어, 전자 장치(100)가 디스플레이를 포함하는 경우, 전자 장치(100)는 생체 정보 입력을 안내하는 가이드 화면을 표시할 수 있다. 또 다른 예로, 전자 장치(100)가 스피커를 포함하는 경우, 전자 장치(100)는 생체 정보 입력을 요청하는 오디오 신호를 출력할 수 있다. 한편, 생체 정보를 입력하는 제어 신호는 다양한 장치로부터 수신될 수 있다. 예를 들어, 생체 정보를 입력하는 제어 신호는 제1 서버(200) 또는 제2 서버(300)로부터 수신될 수 있다. 이 경우, 제어 신호는 생체 정보를 암호화한 암호화 데이터를 전송할 장치에 대한 정보를 더 포함할 수 있다. 또 다른 예로, 생체 정보 입력 신호는 전자 장치(100) 내부에서 생성될 수 있다. 이 경우, 전자 장치(100)는 생체 정보를 암호화한 암호화 데이터를 전송할 장치에 대한 정보를 입력 받을 수 있다.
전자 장치(100)는 제1 암호키를 이용하여 제2 생체 정보를 암호화한 제3 암호화 데이터를 획득할 수 있다(S720). 이때, 제3 암호화 데이터는 예를 들어, Elgamal 암호화 방식, Diffie Hellman 암호화 방식, 타원 곡선 암호화 방식 등의 공개키 암호화 방식에 의해 암호화 될 수 있다.
전자 장치(100)는 획득된 제3 암호화 데이터를 제1 서버(200)로 전송할 수 있다(S730).
제1 서버(200)는 제2 암호키를 이용하여 제3 암호화 데이터를 암호화한 제4 암호화 데이터를 획득할 수 있다(S740). 이때, 제4 암호화 데이터는 예를 들어, 내적 암호화 방식(inner Product Encryption, IPE)에 의한 암호화 데이터일 수 있다.
한편, 제1 서버(200)는 제2 생체 정보에 대한 제2 사용자 식별 정보를 제4 암호화 데이터와 함께 획득할 수 있다. 이때, 제1 서버(200)는 제4 암호화 데이터에 대한 제2 사용자 식별 정보를 사용자로부터 직접 입력 받거나, 외부의 인증 기관에 기 등록된 생체 정보 및 기 등록된 생체 정보에 매칭된 사용자 식별 정보를 바탕으로 제2 사용자 식별 정보를 획득할 수 있다.
제1 서버(200)는 제4 암호화 데이터를 제3 서버(400)로 전송할 수 있다(S750). 한편, 제4 암호화 데이터 및 제2 사용자 식별 정보를 함께 획득하는 경우, 제1 서버(200)는 제4 암호화 데이터와 제2 사용자 식별 정보를 제3 서버(400)로 전송할 수 있다.
제3 서버(400)는 제4 암호화 데이터에 대응되는 암호화 데이터가 존재하는지 여부를 판단할 수 있다(S760). 구체적으로, 제3 서버(400)는 제3 서버(400)에 저장된 복수의 암호화 데이터 각각을 제4 암호화 데이터와 비교하여 제4 암호화 데이터에 대응되는 사용자와 동일한 사용자의 암호화 데이터를 판단할 수 있다. 이때, 제3 서버(400)는 저장된 복수의 암호화 데이터 각각과 제4 암호화 데이터를 복호화 하지 않고, 제4 암호화 데이터에 대응되는 암호화 데이터가 존재하는지 여부를 판단할 수 있다.
한편, 제4 암호화 데이터 및 제2 사용자 식별 정보를 함께 수신한 경우, 제3 서버(400)는 제2 사용자 식별 정보와 동일한 사용자 식별 정보를 판단할 수 있다. 제1 생체 정보 및 제2 생체 정보가 동일한 사용자의 생체 정보인 경우, 제2 사용자 식별 정보와 동일한 사용자 식별 정보는 제1 사용자 식별 정보일 것이다. 이 경우, 제3 서버(400)는 제4 암호화 데이터와 제2 암호화 데이터가 동일한 사용자에 대한 암호화 데이터인지 여부를 판단할 수 있다. 상술한 바와 같이, 제3 서버(400)는 제4 암호화 데이터와 제2 암호화 데이터를 복호화 하지 않고, 제4 암호화 데이터와 제2 암호화 데이터가 동일한 사용자에 대한 암호화 데이터인지 여부를 판단 할 수 있다.
제4 암호화 데이터에 대응되는 암호화 데이터가 존재하면, 제3 서버(400)는 서비스를 수행할 수 있다(S770). 구체적으로, 제3 서버(400)는 제4 암호화 데이터에 대응되는 서비스를 수행할 수 있다. 일 실시예로, 서비스는 오프라인 결제 서비스일 수 있다. 제4 암호화 데이터에 대응되는 암호화 데이터가 존재하면, 제 3 서버(400)는 제4 암호화 데이터에 대응되는 제품에 대한 결제 서비스를 수행할 수 있다. 또 다른 실시예로, 서비스는 차량 대여 서비스일 수 있다. 제4 암호화 데이터에 대응되는 암호화 데이터가 존재하면, 제 3 서버(400)는 제4 암호화 데이터에 대응되는 차량에 대한 제어 권한을 사용자에게 양도하는 서비스를 제공할 수 있다.
이하에서는 도 3a 내지 도 3d를 이용하여 전자 장치(100), 제1 서버(200), 제2 서버(300) 및 제3 서버(400)의 각각의 동작에 대하여 상세히 살펴본다.
도 3a 내지 3d는 본 개시의 일 실시예에 따른 전자 장치, 제1 서버, 제2 서버 및 제3 서버의 구성을 간략히 도시한 블록도이다.
도 3a는 본 개시의 일 실시예에 따른 전자 장치(100)의 구성을 간략히 도시한 블록도이다. 도 3a에 도시된 바와 같이, 전자 장치(100)는 감지부(110), 통신부(120), 메모리(130) 및 프로세서(140)를 포함한다.
감지부(110)는 다양한 사용자의 생체 정보를 획득하기 위한 구성이다. 다양한 사용자의 생체 정보를 획득하기 위하여 감지부(110)는 다양한 구성을 포함할 수 있다. 예를 들어, 감지부(110)는 사용자의 지문을 인식하기 위한 지문 인식 센서, 사용자의 홍채를 인식하기 위한 홍채 인식 센서, 사용자의 얼굴을 인식하기 위한 카메라, 사용자의 목소리를 인식하기 위한 마이크 등의 구성 중 적어도 하나일 수 있다.
통신부(120)는 제1 서버(200) 및 제3 서버(400)와 통신하기 위한 구성이다. 이 경우, 통신부(120)가 제1 서버(200) 및 제3 서버(400)와 통신 연결되는 것은 제3 기기(예로, 중계기, 허브, 엑세스 포인트, 서버 또는 게이트웨이 등)를 거쳐서 통신하는 것을 포함할 수 있다.
통신부(120)는 다양한 통신 방식을 이용하기 위한 구성을 포함할 수 있다. 예를 들어, 통신부(120)는 무선 통신 또는 유선 통신의 방식을 통해 다양한 외부 기기와 통신할 수 있다. 무선 통신은, 예를 들면, LTE, LTE-A(LTE Advance), CDMA(code division multiple access), WCDMA(wideband CDMA), UMTS(universal mobile telecommunications system), WiBro(Wireless Broadband), 또는 GSM(Global System for Mobile Communications) 등 중 적어도 하나를 사용하는 셀룰러 통신을 포함할 수 있다. 일 실시예에 따르면, 무선 통신은, 예를 들면, WiFi(wireless fidelity), 블루투스, 블루투스 저전력(BLE), 지그비(Zigbee), NFC(near field communication), 자력 시큐어 트랜스미션(Magnetic Secure Transmission), 라디오 프리퀀시(RF), 또는 보디 에어리어 네트워크(BAN) 중 적어도 하나를 포함할 수 있다. 유선 통신은, 예를 들면, USB(universal serial bus), HDMI(high definition multimedia interface), RS-232(recommended standard232), 전력선 통신, 또는 POTS(plain old telephone service) 등 중 적어도 하나를 포함할 수 있다. 나아가, 통신부(120)는 무선 통신 또는 유선 통신이 수행되는 네트워크는 텔레커뮤니케이션 네트워크, 예를 들면, 컴퓨터 네트워크(예: LAN 또는 WAN), 인터넷, 또는 텔레폰 네트워크 중 적어도 하나를 포함할 수 있다. 후술하는 제1 서버(200)의 통신부(220), 제2 서버(300)의 통신부(320) 및 제3 서버(400)의 통신부(420) 또한 상술한 다양한 통신 방식 중 하나가 적용될 수 있음은 물론이다.
상술한 바와 같이, 통신부(120)는 생체 정보를 제1 암호키로 암호화한 암호화 데이터를 제1 서버(200) 및 제3 서버(400) 중 적어도 하나로 전송할 수 있다.
메모리(130)는 전자 장치(100)의 적어도 하나의 다른 구성요소에 관계된 명령 또는 데이터를 저장하기 위한 구성이다. 메모리(130)는, 내장 메모리 및 외장 메모리 중 적어도 하나를 포함할 수 있다. 내장 메모리는, 예를 들면, 휘발성 메모리(예: DRAM, SRAM, 또는 SDRAM 등), 비휘발성 메모리(예: OTPROM(one time programmable ROM), PROM, EPROM, EEPROM, mask ROM, flash ROM, 플래시 메모리, 하드 드라이브, 또는 솔리드 스테이트 드라이브(SSD) 중 적어도 하나를 포함할 수 있다. 외장 메모리는 플래시 드라이브(flash drive), 예를 들면, CF(compact flash), SD(secure digital), Micro-SD, Mini-SD, xD(extreme digital), MMC(multi-media card) 또는 메모리 스틱 등을 포함할 수 있다. 외장 메모리는 다양한 인터페이스를 통하여 서버(100)와 기능적으로 또는 물리적으로 연결될 수 있다. 후술하는 제1 서버(200)의 메모리(210), 제2 서버(300)의 메모리(310) 및 제3 서버(400)의 메모리(410) 또한 상술한 다양한 통신 방식 중 하나가 적용될 수 있음은 물론이다.
구체적으로, 메모리(130)는 감지부(110)를 통해 획득된 생체 정보를 저장하거나 생체 정보를 암호화 하기 위한 암호키를 저장할 수 있다.
프로세서(140)는 메모리(130)와 전기적으로 연결되어 전자 장치(100)의 전반적인 동작 및 기능을 제어하기 위한 구성이다. 구체적으로, 프로세서(140)는, 중앙처리장치, 어플리케이션 프로세서, 또는 커뮤니케이션 프로세서(communication processor(CP)) 중 하나 또는 그 이상을 포함할 수 있다. 또한, 프로세서(140)는 주문형 집적 회로(application specific integrated circuit, ASIC), 임베디드 프로세서, 마이크로프로세서, 하드웨어 컨트롤 로직, 하드웨어 유한 상태 기계(hardware finite state machine, FSM), 디지털 신호 프로세서(digital signal processor, DSP), 중 적어도 하나로 구현될 수 있다. 도시하진 않았으나, 프로세서(140)는 각 구성들과 통신을 위한 버스(bus)와 같은 인터페이스를 더 포함할 수 있다. 프로세서(140)는, 예를 들면, 운영 체제 또는 응용 프로그램을 구동하여 프로세서(140)에 연결된 다수의 하드웨어 또는 소프트웨어 구성요소들을 제어할 수 있고, 각종 데이터 처리 및 연산을 수행할 수 있다. 프로세서(140)는, 예를 들면, SoC(system on chip) 로 구현될 수 있다. 일 실시예에 따르면, 프로세서(140)는 GPU(graphic processing unit) 및/또는 이미지 신호 프로세서를 더 포함할 수 있다. 프로세서(140)는 다른 구성요소들(예: 비휘발성 메모리) 중 적어도 하나로부터 수신된 명령 또는 데이터를 휘발성 메모리에 로드하여 처리하고, 결과 데이터를 비휘발성 메모리에 저장할 수 있다. 후술하는 제1 서버(200)의 프로세서(232), 제2 서버(300)의 프로세서(330) 및 제3 서버(400)의 프로세서(430) 또한 상술한 다양한 통신 방식 중 하나가 적용될 수 있음은 물론이다.
프로세서(140)는 감지부(110)를 통해 감지된 정보를 암호화에 적합한 생체 정보로 변환할 수 있다. 프로세서(140)는, 생체 정보 등록 과정(500)에서, 감지부(110)에 의해 감지된 제1 생체 정보를 제1 암호키로 암호화한 제1 암호화 데이터를 통신부(120)를 통해 제1 서버(200)로 전송할 수 있다. 상술한 바와 같이, 제1 암호화 데이터는 예를 들어, Elgamal 암호화 방식, Diffie Hellman 암호화 방식, 타원 곡선 암호화 방식 등의 공개키 암호화 방식에 의해 암호화 될 수 있다.
또한, 프로세서(140)는 서비스 제공을 위한 사용자 인증 과정(700)에서, 감지부(110)에 의해 감지된 제2 생체 정보를 제1 암호키로 암호화한 제3 암호화 데이터를 통신부(120)를 통해 제1 서버(200)로 전송할 수 있다. 상술한 바와 같이, 제3 암호화 데이터는 Elgamal 암호화 방식, Diffie Hellman 암호화 방식, 타원 곡선 암호화 방식 등의 공개키 암호화 방식에 의해 암호화 될 수 있다.
이때, 서비스 제공을 위한 사용자 인증 과정(700)에서, 프로세서(140)는 제3 암호화 데이터와 함께, 사용자 인증 코드를 통신부(120)를 통해 제1 서버(200)로 전송할 수 있다. 예를 들어, 프로세서(140)는 제2 생체 정보를 전자 장치(100)의 비밀키를 이용하여 암호화 하여 메시지 인증 코드를 획득할 수 있다. 이때, 메시지 인증 코드를 획득하기 위한 비밀키는 제1 암호키일 수 있으나, 이에 한정되는 것은 아니며, 별도의 비밀키일 수 있음은 물론이다.즉, 제1 서버(200)는 메시지 인증 코드를 복호화 할 수 있는 암호키를 가지고 있지 않아 메시지 인증 코드를 복호화 할 수 없다. 따라서, 프로세서(140)는 메시지 인증 코드를 이용하여 제1 서버(200)에서의 제3 암호화 데이터의 위조 또는 변조를 방지할 수 있는 효과가 있다.
도 3b는 본 개시의 일 실시예에 따른 제1 서버(200)의 구성을 간략히 도시한 블록도이다. 도 3b에 도시된 바와 같이, 제1 서버(200)는 메모리(210), 통신부(220) 및 프로세서(230)를 포함한다.
메모리(210)는 제1 서버(200)의 적어도 하나의 다른 구성요소에 관계된 명령 또는 데이터를 저장하기 위한 구성이다. 또한, 메모리(210)는 전자 장치(100)로부터 수신한 제1 암호화 데이터 또는 제3 암호화 데이터를 저장할 수 있다. 또한, 메모리(210)는 제2 서버(200)로부터 인증된 암호화 데이터 및 사용자 식별 정보를 저장할 수 있다.
통신부(220)는 전자 장치(100), 제2 서버(300) 및 제3 서버(400)와 통신하기 위한 구성이다. 상술한 바와 같이, 통신부(220)는 전자 장치(100)로부터 제1 암호화 데이터 또는 제3 암호화 데이터를 수신하거나, 제2 서버(200)로 제2 암호화 데이터 및 제1 사용자 식별 정보를 전송하거나, 제3 서버(400)로 제4 암호화 데이터를 전송하거나, 필요에 따라 제3 서버(400)로 전자 장치(100)로부터 수신한 메시지 인증 코드를 전송할 수 있다.
프로세서(230)는 메모리(210)와 전기적으로 연결되어 제1 서버(200)의 전반적인 동작 및 기능을 제어하기 위한 구성이다.
구체적으로, 생체 정보 등록 과정(500)에서, 프로세서(230)는 전자 장치(100)로부터 수신한 제1 암호화 데이터를 제2 암호키를 이용하여 제2 암호화 데이터로 암호화 할 수 있다. 이때, 제2 암호화 데이터는 예를 들어, 내적 암호화 방식(inner Product Encryption, IPE)에 의한 암호화 데이터일 수 있다. IPE 방식의 암호화를 사용함으로써, 제3 서버(400)는 제2 암호화 데이터 및 제4 암호화 데이터를 복호화 하지 않고 제2 암호화 데이터에 대응되는 제1 생체 정보와 제4 암호화 데이터에 대응되는 제2 생체 정보가 동일한 사용자의 생체 정보인지 여부를 확인할 수 있다는 효과가 존재한다. 또한, 프로세서(230)는 제1 암호화 데이터에 대한 제1 사용자 식별 정보를 입력 받을 수 있다. 프로세서(230)는 제2 암호화 데이터와 제1 사용자 식별 정보를 매칭하여 저장할 수 있으며, 매칭된 제2 암호화 데이터 및 제1 사용자 식별 정보를 제2 서버(300)로 전송할 수 있다. 프로세서(230)는 제2 서버(300)로부터 제2 암호화 데이터 및 제1 사용자 식별 정보에 대한 인증 정보를 수신할 수 있다. 수신한 인증 정보는 서비스 이용을 위한 생체 정보 등록 과정(600)에서 사용될 수 있다.
즉, 서비스 이용을 위한 생체 정보 등록 과정(600)에서, 서비스 이용을 위한 생체 정보 등록을 위한 사용자 명령이 입력되면, 프로세서(230)는 수신한 인증 정보를 제3 서버(400)로 전송할 수 있다. 이때, 프로세서(230)는 인증 정보와 함께, 인증 정보에 대응되는 생체 정보를 제3 서버(400)에 등록시켜줄 것을 요청하는 생체 정보 발급 요청 정보를 함께 제3 서버(400)로 전송할 수 있다.
한편, 서비스 제공을 위한 사용자 인증 과정(700)에서, 프로세서(230)는 전자 장치(100)로부터 수신한 제3 암호화 데이터를 제2 암호키를 이용하여 제4 암호화 데이터로 암호화 할 수 있다. 이때, 상술한 바와 같이, 제4 암호화 데이터는 내적 암호화 방식(Inner Product Encryption, IPE)에 의한 암호화 데이터일 수 있다. 상술한 제2 암호키를 이용한 암호화 과정을 통해서, 제3 서버(400)가 외부 공격에 의해 데이터가 해킹 되더라도, 암호화된 데이터가 노출될 뿐, 사용자의 생체 정보는 보호할 수 있는 효과가 존재한다.
프로세서(230)는 획득한 제4 암호화 데이터를 제3 서버(400)로 전송할 수 있다. 이때, 필요에 따라 프로세서(230)는 제4 암호화 데이터 및 제4 암호화 데이터에 대응되는 제2 사용자 식별 정보를 제3 서버(400)로 함께 전송할 수 있다. 나아가, 전자 장치(100)로부터 메시지 인증 코드를 수신한 경우, 프로세서(230)는 제4 암호화 데이터, 제4 암호화 데이터에 대응되는 제2 사용자 식별 정보와 전자 장치(100)로부터 수신한 메시지 인증 코드를 제3 서버(400)로 함께 전송할 수 있다. 메시지 인증 코드를 제3 서버(400)로 전송하는 경우, 필요에 따라, 프로세서(230)는 수신한 메시지 인증 코드를 암호화 하여 제3 서버로 전송할 수도 있다. 메시지 인증 코드를 사용함으로써, 시스템(1000)은 제1 서버(200)에 의해 암호화 데이터가 악의적으로 위조 또는 변조 되는 상황을 방지할 수 있다. 구체적으로, 제1 서버(200)가 전자 장치(100)로부터 수신한 제3 암호화 데이터가 아닌 다른 암호화 데이터를 제3 서버(400)로 전송하는 경우, 제3 서버(400)는 메시지 인증 코드에 대한 암호화 데이터와 제1 서버(200)로부터 수신한 암호화 데이터가 다른 데이터임을 판단할 수 있다.
또한, 제1 서버(200)가 제1 암호화 데이터 및 제3 암호화 데이터를 제2 암호키를 이용하여 암호화 함으로써, 전자 장치(100) 또는 제3 서버(400) 중 어느 하나가 해킹 당한 경우에도, 사용자의 생체 정보를 보호할 수 있는 효과가 존재한다.
도 3c는 본 개시의 일 실시예에 따른 제2 서버(300)의 구성을 간략히 도시한 블록도이다. 도 3c에 도시된 바와 같이, 제2 서버(300)는 메모리(310), 통신부(320) 및 프로세서(330)를 포함한다.
메모리(310)는 제2 서버(300)의 적어도 하나의 다른 구성요소에 관계된 명령 또는 데이터를 저장하기 위한 구성이다. 또한, 메모리(310)는 제1 서버(200)로부터 수신한 제2 암호화 데이터 및 제1 사용자 식별 정보를 매칭하여 저장할 수 있다.
통신부(320)는 제1 서버(200) 및 제3 서버(400)와 통신하기 위한 구성이다. 상술한 바와 같이, 통신부(320)는 제1 서버(200)로부터 제2 암호화 데이터 및 제1 사용자 식별 정보를 수신하거나, 제3 서버(400)로 제2 암호화 데이터 및 제1 사용자 식별 정보를 전송할 수 있다.
프로세서(330)는 메모리(310)와 전기적으로 연결되어 제2 서버(300)의 전반적인 동작 및 기능을 제어하기 위한 구성이다.
구체적으로, 생체 정보 등록 과정(500)에서, 프로세서(330)는 제1 서버(200)로부터 제2 암호화 데이터 및 제1 사용자 식별 정보를 획득할 수 있다. 이때, 프로세서(330)는 제1 사용자 식별 정보가 제2 암호화 데이터에 대응되는 사용자 식별 정보인지 여부를 판단할 수 있다. 제1 사용자 식별 정보가 제2 암호화 데이터에 대응되는 사용자 식별 정보인지 판단하는 방법은 다양할 수 있다. 예를 들어, 프로세서(330)는 제1 사용자 식별 정보에 대응되는 사용자 단말 장치로 제1 사용자 식별 정보가 제2 암호화 데이터에 대응되는 사용자 식별 정보인지 여부를 확인하기 위한 요청을 전송할 수 있다. 사용자 단말 장치로부터 제1 사용자 식별 정보가 제2 암호화 데이터에 대응되는 사용자 식별 정보라는 메시지를 수신한 경우, 프로세서(330)는 제1 사용자 식별 정보가 제2 암호화 데이터에 대응되는 사용자 식별 정보라고 판단할 수 있다. 다만, 상술한 실시예에 한정되는 것은 아니며, 제2 암호화 데이터가 제1 사용자 식별 정보에 대응되는 구성인지 여부는 예를 들어 면대면(Face to Face)으로 확인될 수도 있다.
제2 암호화 데이터가 제1 사용자 식별 정보에 대응되는 암호화 데이터라고 판단된 경우, 프로세서(330)는 제2 암호화 데이터 및 제1 사용자 식별 정보에 대한 인증 정보를 획득할 수 있다. 이때, 인증 정보는 제2 서버(300)의 서명값과 제2 암호화 데이터 및 제1 사용자 식별 정보를 인증하기 위한 인덱스 정보를 포함할 수 있다. 구체적으로, 인증 정보는, 제2 암호화 데이터 및 제1 사용자 식별 정보를 포함하지 않고, 제2 암호화 데이터 및 제1 사용자 식별 정보를 인증하기 위한 인덱스 정보 및 제2 서버(300)의 서명값을 포함할 수 있다. 다만, 이에 한정되는 것은 아니다. 즉, 본 개시에 따른 다양한 실시예에 따라, 인증 정보는 제2 암호화 데이터 및 제1 사용자 식별 정보를 포함할 수도 있다. 인증 정보는 제2 암호화 데이터 및 제1 사용자 식별 정보를 포함하는 경우, 프로세서(330)는 제2 암호화 데이터 및 제1 사용자 식별 정보를 암호화 하여 인증 정보를 획득할 수 있다. 한편, 제2 서버(300)의 서명값은 후술하는 바와 같이, 제3 서버(400)가 수신한 인증 정보가 제2 서버(300)로부터 위조 또는 변조 없이 수신되었는지 여부를 확인하기 위한 정보일 수 있다. 프로세서(330)는 획득된 인증 정보를 제1 서버(200)로 전송할 수 있다.
한편, 서비스 이용을 위한 생체 정보 등록 과정(600)에서, 프로세서(330)는 제3 서버(400)로부터 인증 정보를 수신하고, 수신된 인증 정보에 대응되는 암호화 데이터 및 사용자 식별 정보를 획득할 수 있다. 외부 공격 등에 의한 위조, 변조가 없는 경우라면, 프로세서(330)는 인증 정보에 대응되는 암호화 데이터 및 사용자 식별 정보로 제2 암호화 데이터 및 제1 사용자 식별 정보를 획득할 수 있다. 일 실시예로, 인증 정보가 암호화 데이터 및 사용자 식별 정보에 대한 인덱스 정보만을 포함하는 경우, 프로세서(330)는 암호화 데이터 및 사용자 식별 정보에 대한 인덱스 정보로부터 제2 암호화 데이터 및 제1 사용자 식별 정보를 획득할 수 있다. 또 다른 실시예로, 인증 정보가 암호화 데이터 및 사용자 식별 정보를 암호화한 데이터인 경우, 프로세서(330)는 인증 정보를 복호화 하여 제2 암호화 데이터 및 제1 사용자 식별 정보를 획득할 수 있다.
도 3d는 본 개시의 일 실시예에 따른 제3 서버(400)의 구성을 간략히 도시한 블록도이다. 도 3d에 도시된 바와 같이, 제3 서버(400)는 메모리(410), 통신부(420) 및 프로세서(430)를 포함한다.
메모리(410)는 제3 서버(400)의 적어도 하나의 다른 구성요소에 관계된 명령 또는 데이터를 저장하기 위한 구성이다. 메모리(410)는 제1 서버(200)로부터 수신한 인증 정보 및 생체 정보 발급 요청 정보를 저장할 수 있다. 또한, 메모리(410)는 제2 서버(300)로부터 수신한 제2 암호화 데이터 및 제1 사용자 식별 정보를 저장할 수 있다. 또한, 메모리(410)는 제1 서버(200)로부터 수신한 제3 암호화 데이터 및 제2 사용자 식별 정보 중 적어도 하나를 저장할 수 있다.
통신부(420)는 제1 서버(200) 및 제2 서버(300)와 통신하기 위한 구성이다. 상술한 바와 같이, 통신부(220)는 인증 정보 및 생체 정보 발급 요청 정보를 제1 서버(200)로부터 수신하거나, 제2 암호화 데이터 및 제1 사용자 식별 정보를 제2 서버(300)로부터 수신하거나, 제3 암호화 데이터 및 제2 사용자 식별 정보 중 적어도 하나를 제1 서버(200)로부터 수신할 수 있다.
프로세서(430)는 메모리(410)와 전기적으로 연결되어 제3 서버(400)의 전반적인 동작 및 기능을 제어하기 위한 구성이다.
서비스 이용을 위한 생체 정보 등록 과정(600)에서, 서비스를 이용을 위한 생체 정보를 등록하기 위한 위한 사용자 명령이 입력되면, 프로세서(430)는 제1 서버(200)로부터 인증 정보 및 생체 정보 발급 요청 정보를 수신할 수 있다.
프로세서(430)는 수신한 인증 정보가 유효한지 여부를 판단할 수 있다. 구체적으로, 프로세서(430)는 인증 정보에 포함된 서명값이 제2 서버(300)의 서명값인지를 판단하여 인증 정보의 유효성을 판단할 수 있다. 즉, 인증 정보에 포함된 서명값이 제2 서버(300)에서 생성된 경우, 프로세서(430)는 인증 정보가 유효하다고 판단할 수 있다. 정보에 포함된 서명값이 제2 서버(300)에서 생성된 것이 아닌 경우, 프로세서(430)는 인증 정보가 유효하지 않다고 판단할 수 있다.
인증 정보가 유효한 경우, 프로세서(430)는 제1 서버(200)로부터 수신한 인증 정보 및 생체 정보 발급 요청 정보를 제2 서버(300)로 전송할 수 있다. 프로세서(430)는 제2 서버로부터 인증 정보에 대응되는 제2 암호화 데이터 및 제1 사용자 식별 정보를 수신하여 메모리(410)에 저장할 수 있다. 상술한 과정을 통해, 제3 서버(400)는 제1 생체 정보 및 제1 암호화 데이터를 수신하지 않고 제2 암호화 데이터만을 획득하여 보안성을 향상시킬 수 있다.
서비스 제공을 위한 사용자 인증 과정(700)에서, 프로세서(430)는 서비스 수행을 위한 명령이 입력되면, 제1 서버(200)로부터 제4 암호화 데이터를 수신할 수 있다. 프로세서(430)는 제4 암호화 데이터에 대응되는 암호화 데이터가 메모리(410)에 존재하는지 여부를 판단할 수 있다.
일 실시예로, 프로세서(430)는 메모리(410)에 저장된 복수의 암호화 데이터 각각을 제4 암호화 데이터와 비교하여 제4 암호화 데이터에 대응되는 암호화 데이터가 메모리(410)에 저장되어 있는지 여부를 판단할 수 있다.
또 다른 실시예로, 프로세서(430)는 제1 서버(200)로부터 제4 암호화 데이터와 제4 암호화 데이터에 대응되는 제2 사용자 식별 정보를 수신할 수 있다. 프로세서(430)는 제2 사용자 식별 정보와 동일한 사용자 식별 정보를 획득할 수 있다. 제1 생체 정보와 제2 생체 정보가 동일한 사용자의 생체 정보인 경우, 제2 사용자 식별 정보는 제1 사용자 식별 정보와 동일할 것이다. 프로세서(430)는 제2 사용자 식별 정보에 대응되는 제4 암호화 데이터와 (제2 사용자 식별 정보와 동일한)제1 사용자 식별 정보에 대응되는 제2 암호화 데이터가 동일한 사용자의 생체 정보에 대한 암호화 데이터인지 여부를 판단할 수 있다.
이때, 프로세서(430)는 제4 암호화 데이터와 메모리(410)에 저장된 복수의 암호화 데이터를 복호화 없이 비교할 수 있다. 예를 들어, 프로세서(430)는 제4 암호화 데이터 및 메모리(410)에 저장된 제2 암호화 데이터를 복호화 없이 비교할 수 있다. 구체적으로, 제2 암호화 데이터 및 제4 암호화 데이터는 상술한 바와 같이, 데이터가 암호화된 상태에서 연산이 가능한 동형적(Homomorphic) 성질을 가지며, 제1 암호화 데이터 및 제3 암호화 데이터를 획득하기 위해 사용된 제1 암호키는 제2 암호키를 이용한 암호화 방법에서 평문으로 간주될 수 있는 특징이 존재한다. 따라서, 프로세서(430)는 상술한 제1 암호화 방식의 특징 및 제2 암호화 방식의 특징을 이용하여, 복호화 없이 제2 암호화 데이터에 대응되는 제1 생체 정보와 제4 암호화 데이터에 대응되는 제2 생체 정보를 비교할 수 있다.
프로세서(430)는 제4 암호화 데이터에 대응되는 암호화 데이터가 메모리(410)에 존재하면, 서비스를 수행할 수 있다.
한편, 전자 장치(100), 제1 서버(200), 제2 서버(300) 및 제3 서버(400)에서 수행되는 다양한 기능들은 다양한 모듈을 통해 수행될 수 있다. 예를 들어, 도 4에 도시된 바와 같이, 전자 장치(100)는 생체 정보 획득 모듈을 통해 사용자의 생체 정보를 획득하고, 제1 암호화 모듈을 통해 생체 정보를 암호화 한 제1 암호화 데이터를 획득할 수 있다. 제1 서버(200)는 제2 암호화 모듈을 통해 제1 암호화 데이터를 제2 암호화 데이터로 암호화 할 수 있다. 제2 서버(300)는 인증 정보 생성 모듈을 통해 제2 암호화 데이터 및 제1 사용자 식별 정보에 대한 인증 정보를 생성할 수 있다. 제3 서버(400)는 생체 정보 비교 모듈을 통해 제4 암호화 데이터에 대응되는 제2 생체 정보와 동일한 생체 정보를 포함하는 암호화 데이터를 획득할 수 있다.
도 4에 도시된 다양한 모듈은 소프트웨어 모듈로 구현되거나 적어도 하나의 하드웨어 칩 형태로 구현될 수 있다. 도 4에 도시된 다양한 모듈이 소프트웨어 모듈(또는, 인스트럭션(instruction) 포함하는 프로그램 모듈)로 구현되는 경우, 소프트웨어 모듈은 컴퓨터로 읽을 수 있는 판독 가능한 비일시적 판독 가능 기록 매체(non-transitory computer readable media)에 저장될 수 있다. 이 경우, 소프트웨어 모듈은 OS(Operating System)에 의해 제공되거나, 소정의 어플리케이션에 의해 제공될 수 있다. 또는, 소프트웨어 모듈 중 일부는 OS(Operating System)에 의해 제공되고, 나머지 일부는 소정의 어플리케이션에 의해 제공될 수 있다.
도 8a 및 8b는 본 개시의 다양한 실시예에 따른 생체 정보 등록 과정, 서비스 이용을 위한 생체 정보 등록 과정 및 서비스 제공을 위한 사용자 인증 과정을 설명하기 위한 시퀀스도이다.
구체적으로, 본 개시의 다양한 실시예에 따라, 전자 장치(100), 제1 서버(200), 제2 서버(300) 및 제3 서버(400) 중 적어도 두개는 하나의 장치로 구현될 수 있다. 예를 들어, 도 8a 및 도 8b에 의하면, 전자 장치(100) 및 제1 서버(200)이 하나의 전자 장치(150)로 구현될 수도 있다. 이 경우, 전자 장치(150)는 예를 들어 사용자 단말 장치로 구현될 수 있다. 이때, 전자 장치(150)는 노멀 모드 및 시큐어 모드에서 동작하는 전자 장치일 수 있다. 구체적으로, 시큐어 모드는 보안성을 확보한 데이터 처리 아키텍처를 의미하고, 노멀 모드는 일반적인 데이터 처리 아키텍처를 의미할 수 있다. 노멀 모드 노멀 OS에서 동작하고 또는 시큐어 모드는 시큐어 OS에서 동작할 수 있으며, 노멀 모드 및 시큐어 모드는 서로 독립적으로 동작할 수 있다. 따라서, 노멀 모드에서 해킹 등에 의한 외부 공격이 발생하는 경우라고 하더라도, 시큐어 모드에서의 데이터는 보호될 수 있다는 장점이 있다.
구체적으로, 도 8a는 생체 정보 등록 과정(500)에서의 시스템(1000)의 동작을 설명하기 위한 시퀀스도이다.
먼저, 전자 장치(150)는 노멀 모드에서 제1 생체 정보를 획득할 수 있다(S811). 전자 장치(150)는 노멀 모드에서 제1 암호키를 이용하여 제1 생체 정보를 암호화한 제1 암호화 데이터 획득할 수 있다(S812).
전자 장치(150)는 시큐어 모드에서 제2 암호키를 이용하여 제1 암호화 데이터를 암호화한 제2 암호화 데이터 및 제1 생체 정보에 대한 제1 사용자 식별 정보를 획득할 수 있다(S813). 전자 장치(150)는 시큐어 모드에서 획득된 제2 암호화 데이터 및 제1 사용자 식별 정보를 제2 서버(300)로 전송할 수 있다(S814).
제2 서버(300)는 전자 장치(150)로부터 수신한 제1 사용자 식별 정보가 제2 암호화 데이터에 대응되는 사용자 식별 정보인지 판단하고(S815), 제1 사용자 식별 정보가 제2 암호화 데이터에 대응되는 사용자 식별 정보인 경우, 제2 암호화 데이터 및 제1 사용자 식별 정보에 대응되는 인증 정보 획득할 수 있다(S816). 제2 서버(300)는 획득한 인증 정보를 전자 장치(150)로 전송할 수 있다. 즉, 제2 서버(300)의 동작은 도 5에서 설명한 것과 동일하다.
전자 장치(150)는 제1 서버(200)로부터 수신한 인증 정보를 등록할 수 있다(S818). 구체적으로, 전자 장치(150)는 제1 서버(200)로부터 수신한 인증 정보를 시큐어 모드에서 등록할 수 있다.
도 8b는 서비스 제공을 위한 사용자 인증 과정(700) 에서의 시스템(1000)의 동작을 설명하기 위한 시퀀스도이다.
먼저, 전자 장치(150)는 노멀 모드에서 제2 생체 정보를 획득할 수 있다(S821). 전자 장치(150)는 노멀 모드에서 제1 암호키를 이용하여 제2 생체 정보를 암호화한 제3 암호화 데이터 획득할 수 있다(S822).
전자 장치(150)는 시큐어 모드에서 제2 암호키를 이용하여 제3 암호화 데이터를 암호화한 제4 암호화 데이터를 획득할 수 있다(S823). 나아가, 전자 장치(150)는 제2 생체 정보에 대한 제2 사용자 식별 정보를 제4 암호화 데이터와 함께 획득할 수 있음은 물론이다.
전자 장치(150)는 시큐어 모드에서 획득된 제4 암호화 데이터를 제3 서버(400)로 전송할 수 있다(S824). 나아가, 전자 장치(150)는 제2 생체 정보에 대한 제2 사용자 식별 정보를 제4 암호화 데이터와 함께 전송할 수 있음은 물론이다.
제3 서버(400)는 획득한 제4 암호화 데이터에 대응되는 암호화 데이터가 존재하는지 여부를 판단하고(S825), 제4 암호화 데이터에 대응되는 암호화 데이터가 존재하는 경우, 서비스를 수행할 수 있다(S826). 즉, 제3 서버(400)의 동작은 도 7에서 설명한 것과 동일하다.
한편, 도 8a 및 도 8b는 전자 장치(100) 및 제1 서버(200)가 하나의 장치로 구현되는 실시예에 대하여만 설명하였으나 이에 한정되는 것은 아니다. 예를 들어, 필요에 따라, 제1 서버(200) 및 제3 서버(400)가 하나의 장치로 구현되거나, 전자 장치(100) 및 제3 서버(400)가 하나의 장치로 구현되거나, 전자 장치(100) 및 제2 서버(300)가 하나의 장치로 구현될 수도 있음은 물론이다.
도 9는 본 개시의 일 실시예에 따른 제3 서버의 제어 방법을 설명하기 위한 흐름도이다.
먼저, 제3 서버(400)는 서비스 이용을 위한 생체 정보를 등록하기 위한 위한 사용자 명령이 입력되면, 제1 서버(200)로부터 인증 정보 및 생체 정보 발급 요청 정보를 수신할 수 있다.(S910).
수신한 인증 정보가 유효한 경우, 제3 서버(400)는 인증 정보 및 생체 정보 발급 요청 정보를 제2 서버(300)로 전송할 수 있다(S920). 상술한 바와 같이, 제3 서버(400)는 인증 정보의 서명값이 제2 서버(300)의 서명값인지 여부를 판단하여 인증 정보의 유효성을 판단할 수 있다
제3 서버(400)는 제2 서버(300)로부터 제1 서버(200)에서 암호화된 제2 암호화 데이터 및 제2 암호화 데이터에 대응되는 제1 사용자 식별 정보를 수신하여 저장할 수 있다(S930). 상술한 바와 같이, 제3 서버(400)는 제2 암호화 데이터 및 제1 사용자 식별 정보를 저장하고, 저장된 데이터에 대응되는 암호화 데이터가 입력되면, 서비스를 수행할 수 있다.
한편, 본 개시에서 사용된 용어 "부" 또는 "모듈"은 하드웨어, 소프트웨어 또는 펌웨어로 구성된 유닛을 포함하며, 예를 들면, 로직, 논리 블록, 부품, 또는 회로 등의 용어와 상호 호환적으로 사용될 수 있다. "부" 또는 "모듈"은, 일체로 구성된 부품 또는 하나 또는 그 이상의 기능을 수행하는 최소 단위 또는 그 일부가 될 수 있다. 예를 들면, 모듈은 ASIC(application-specific integrated circuit)으로 구성될 수 있다.
본 개시의 다양한 실시예들은 기기(machine)(예: 컴퓨터)로 읽을 수 있는 저장 매체(machine-readable storage media에 저장된 명령어를 포함하는 소프트웨어로 구현될 수 있다. 기기는, 저장 매체로부터 저장된 명령어를 호출하고, 호출된 명령어에 따라 동작이 가능한 장치로서, 개시된 실시예들에 따른 전자 장치(예: 전자 장치(100))를 포함할 수 있다. 상기 명령이 프로세서에 의해 실행될 경우, 프로세서가 직접, 또는 상기 프로세서의 제어하에 다른 구성요소들을 이용하여 상기 명령에 해당하는 기능을 수행할 수 있다. 명령은 컴파일러 또는 인터프리터에 의해 획득 또는 실행되는 코드를 포함할 수 있다. 기기로 읽을 수 있는 저장매체는, 비일시적(non-transitory) 저장매체의 형태로 제공될 수 있다. 여기서, '비일시적'은 저장매체가 신호(signal)를 포함하지 않으며 실재(tangible)한다는 것을 의미할 뿐 데이터가 저장매체에 반영구적 또는 임시적으로 저장됨을 구분하지 않는다.
일시예에 따르면, 본 문서에 개시된 다양한 실시예들에 따른 방법은 컴퓨터 프로그램 제품(computer program product)에 포함되어 제공될 수 있다. 컴퓨터 프로그램 제품은 상품으로서 판매자 및 구매자 간에 거래될 수 있다. 컴퓨터 프로그램 제품은 기기로 읽을 수 있는 저장 매체(예: compact disc read only memory (CD-ROM))의 형태로, 또는 어플리케이션 스토어(예: 플레이 스토어TM)를 통해 온라인으로 배포될 수 있다. 온라인 배포의 경우에, 컴퓨터 프로그램 제품의 적어도 일부는 제조사의 서버, 어플리케이션 스토어의 서버, 또는 중계 서버의 메모리와 같은 저장 매체에 적어도 일시 저장되거나, 임시적으로 획득될 수 있다.
다양한 실시예들에 따른 구성 요소(예: 모듈 또는 프로그램) 각각은 단수 또는 복수의 개체로 구성될 수 있으며, 전술한 해당 서브 구성 요소들 중 일부 서브 구성 요소가 생략되거나, 또는 다른 서브 구성 요소가 다양한 실시예에 더 포함될 수 있다. 대체적으로 또는 추가적으로, 일부 구성 요소들(예: 모듈 또는 프로그램)은 하나의 개체로 통합되어, 통합되기 이전의 각각의 해당 구성 요소에 의해 수행되는 기능을 동일 또는 유사하게 수행할 수 있다. 다양한 실시예들에 따른, 모듈, 프로그램 또는 다른 구성 요소에 의해 수행되는 동작들은 순차적, 병렬적, 반복적 또는 휴리스틱하게 실행되거나, 적어도 일부 동작이 다른 순서로 실행되거나, 생략되거나, 또는 다른 동작이 추가될 수 있다.

Claims (15)

  1. 전자 장치, 제1 서버 및 제2 서버를 포함하는 시스템의 제어방법에 있어서,
    상기 전자 장치가 제1 생체 정보를 획득하는 단계;
    상기 전자 장치가, 획득된 제1 생체 정보 및 제1 암호키를 이용하여 상기 제1 생체 정보를 암호화 한 제1 암호화 데이터를 획득하여 상기 제1 서버로 전송하는 단계;
    상기 제1 서버가, 상기 전자 장치로부터 수신한 상기 제1 암호화 데이터 및 제2 암호키를 이용하여 상기 제1 암호화 데이터를 암호화한 제2 암호화 데이터 및 상기 제1 생체 정보에 대응되는 제1 사용자 식별 정보를 획득하고, 상기 제2 서버로 전송하는 단계;
    상기 제2 서버가, 상기 제1 서버로부터 수신한 상기 제2 암호화 데이터 및 상기 생체 정보에 대응되는 제1 사용자 식별 정보를 매칭하여 저장하는 단계;
    상기 제2 서버가, 상기 매칭된 제2 암호화 데이터 및 상기 제1 사용자 식별 정보를 바탕으로 인증 정보를 획득하여 상기 제1 서버로 전송하는 단계; 및
    상기 제1 서버가, 상기 생체 정보에 대한 상기 인증 정보를 등록하는 단계;를 포함하는 제어 방법.
  2. 제 1항에 있어서,
    상기 시스템은 서비스를 제공하는 제3 서버를 더 포함하고,
    상기 제1 서버로 상기 제3 서버의 서비스를 이용하기 위한 생체 정보 등록 명령 이 수신되면, 상기 제1 서버가, 상기 인증 정보 및 생체 정보 발급 요청 정보를 상기 제3 서버로 전송하는 단계;
    상기 제3 서버가, 상기 수신한 인증 정보의 유효성을 확인하는 단계;
    상기 수신한 인증 정보가 유효한 경우, 상기 제3 서버가, 상기 인증 정보 및 상기 생체 정보 발급 요청 정보를 상기 제2 서버로 전송하는 단계;
    상기 제2 서버가 상기 인증 정보에 대응되는 상기 제2 암호화 데이터 및 상기 제1 사용자 식별 정보를 상기 제3 서버로 전송하는 단계; 및
    상기 제3 서버가, 상기 제2 서버로부터 수신한 상기 제2 암호화 데이터 및 상기 제1 사용자 식별 정보를 등록하는 단계; 를 포함하는 제어 방법.
  3. 제2항에 있어서,
    상기 전자 장치가 제2 생체 정보를 획득하는 단계;
    상기 전자 장치가, 서비스 수행을 위한 생체 정보 입력을 위한 명령이 입력되면, 획득된 제2 생체 정보 및 제1 암호키를 이용하여 상기 제1 생체 정보를 암호화 한 제3 암호화 데이터를 획득하여 상기 제1 서버로 전송하는 단계;
    상기 제1 서버가, 상기 전자 장치로부터 수신한 상기 제3 암호화 데이터 및 제2 암호키를 이용하여 상기 제3 암호화 데이터를 암호화한 제4 암호화 데이터를 획득하여 상기 제3 서버로 전송하는 단계;
    상기 제3 서버가, 상기 수신한 제4 암호화 데이터에 대응되는 암호화 데이터가 상기 제3 서버에 존재하는지 여부를 판단하는 단계; 및
    상기 제4 암호화 데이터에 대응되는 암호화 데이터가 상기 제3 서버에 존재하는 경우, 상기 제3 서버가, 상기 서비스 수행을 위한 생체 정보 입력을 위한 명령에 대응되는 서비스를 수행하는 단계;를 포함하는 제어 방법.
  4. 제3항에 있어서,
    상기 제4 암호화 데이터에 대응되는 암호화 데이터가 상기 제3 서버에 존재하는지 여부를 판단하는 단계는,
    상기 제3 서버가, 상기 제3 서버에 저장된 복수의 암호화 데이터와 상기 수신한 제4 암호화 데이터를 비교하여 상기 제2 생체 정보에 대응되는 생체 정보를 포함하는 암호화 데이터가 존재하는지 여부를 판단하는 단계; 를 포함하는 제어 방법.
  5. 제3항에 있어서,
    상기 제1 서버가 상기 제4 암호화 데이터를 획득하여 상기 제3 서버로 전송하는 단계는,
    상기 제4 암호화 데이터와 상기 제2 생체 정보에 대응되는 제2 사용자 식별 정보를 매칭하여 상기 제3 서버로 전송하는 단계;를 포함하는 것을 특징으로 하는 제어 방법.
  6. 제5항에 있어서,
    상기 제4 암호화 데이터에 대응되는 암호화 데이터가 상기 제3 서버에 존재하는지 여부를 판단하는 단계는,
    상기 제3 서버가, 상기 제3 서버에 저장된 복수의 사용자 식별 정보 중, 상기 제2 사용자 식별 정보와 동일한 사용자 식별 정보를 획득하는 단계;
    상기 제4 암호화 데이터와 상기 제2 사용자 식별 정보와 동일한 사용자 식별 정보와 매칭된 암호화 데이터를 비교하여, 상기 제2 생체 정보와 상기 제2 사용자 식별 정보와 동일한 사용자 식별 정보에 대응되는 생체 정보가 동일한지 판단하는 단계; 를 포함하는 제어 방법.
  7. 제3항에 있어서,
    상기 3 암호화 데이터를 획득하여 상기 제1 서버로 전송하는 단계는,
    상기 제3 암호화 데이터와 함께 메시지 인증 코드를 상기 제1 서버로 전송하는 단계; 를 포함하고,
    상기 제4 암호화 데이터를 획득하여 상기 제3 서버로 전송하는 단계는,
    상기 제4 암호화 데이터와 함께 상기 전자 장치로부터 수신한 상기 메시지 인증 코드를 상기 제3 서버로 전송하는 단계; 를 포함하고,
    상기 제어 방법은,
    상기 제3 서버가, 상기 제1 서버로부터 수신한 상기 메시지 인증 코드를 바탕으로, 상기 제4 암호화 데이터의 유효성을 판단하는 단계; 를 포함하는 제어 방법.
  8. 제 3항에 있어서,
    상기 암호화 데이터가 상기 제3 서버에 존재하는지 여부를 판단하는 단계는,
    상기 제4 암호화 데이터 및 상기 제3 서버에 저장된 복수의 암호화 데이터를 복호화 하지 않고 상기 제4 암호화 데이터에 대응되는 암호화 데이터를 판단하는 것을 특징으로 하는 제어 방법.
  9. 제1항에 있어서,
    상기 제1 사용자 식별 정보는 상기 제1 서버에 의해 획득되는 것을 특징으로 하는 제어 방법.
  10. 제2항에 있어서,
    상기 제2 서버가 인증 정보를 획득하여 상기 제1 서버로 전송하는 단계는,
    상기 매칭된 제2 암호화 데이터 및 상기 제1 사용자 식별 정보를 상기 제2 서버의 서명값을 바탕으로 상기 인증 정보를 획득하고,
    상기 제3 서버가, 상기 수신한 인증 정보의 유효성을 확인하는 단계는,
    상기 서명값을 바탕으로 상기 인증 정보의 유효성을 판단하는 것을 특징으로 하는 제어 방법.
  11. 제1 생체 정보를 획득하고, 상기 획득된 제1 생체 정보 및 제1 암호키를 이용하여 상기 제1 생체 정보를 암호화 한 제1 암호화 데이터를 획득하는 전자 장치;
    상기 전자 장치로부터 상기 제1 암호화 데이터를 수신하고, 상기 제1 암호화 데이터 및 제2 암호키를 이용하여 상기 제1 암호화 데이터를 암호화한 제2 암호화 데이터 및 상기 제1 생체 정보에 대응되는 제1 사용자 식별 정보를 획득하는 제1 서버;
    상기 제1 서버로부터 상기 제2 암호화 데이터를 수신하고, 상기 제2 암호화 데이터를 바탕으로 인증 정보를 획득하며, 상기 인증 정보를 상기 제1 서버로 전송하는 제2 서버;를 포함하며,
    상기 제1 서버는, 상기 제2 서버로부터 수신한 인증 정보를 상기 생체 정보에 대한 상기 인증 정보로 등록하는 시스템.
  12. 제 11항에 있어서,
    상기 시스템은 서비스를 제공하는 제3 서버를 더 포함하고,
    상기 제1 서버는 상기 제3 서버의 서비스를 이용하기 위한 생체 정보 등록 명령을 수신하고, 상기 인증 정보 및 생체 정보 발급 요청 정보를 상기 제3 서버로 전송하고,
    상기 제3 서버는, 상기 수신한 인증 정보의 유효성을 확인하고, 상기 수신한 인증 정보가 유효한 경우, 상기 인증 정보 및 상기 생체 정보 발급 요청 정보를 상기 제2 서버로 전송하고,
    상기 제2 서버는, 상기 제3 서버로부터 수신한 인증 정보에 대응되는 상기 제2 암호화 데이터 및 상기 제1 사용자 식별 정보를 상기 제3 서버로 전송하고,
    상기 제3 서버는, 상기 제2 서버로부터 수신한 상기 제2 암호화 데이터 및 상기 제1 사용자 식별 정보를 등록하는 것을 특징으로 하는 시스템.
  13. 제12항에 있어서,
    상기 전자 장치는, 서비스 수행을 위한 생체 정보 입력을 위한 명령이 입력되면, 제2 생체 정보를 획득하고, 획득된 제2 생체 정보 및 제1 암호키를 이용하여 상기 제1 생체 정보를 암호화 한 제3 암호화 데이터를 획득하여 상기 제1 서버로 전송하고,
    상기 제1 서버는, 상기 전자 장치로부터 수신한 상기 제3 암호화 데이터 및 제2 암호키를 이용하여 상기 제3 암호화 데이터를 암호화한 제4 암호화 데이터를 획득하여 상기 제3 서버로 전송하고,
    상기 제3 서버는, 상기 수신한 제4 암호화 데이터에 대응되는 암호화 데이터가 상기 제3 서버에 존재하는지 여부를 판단하고, 상기 제4 암호화 데이터에 대응되는 암호화 데이터가 상기 제3 서버에 존재하는 경우, 상기 서비스 수행을 위한 생체 정보 입력을 위한 명령에 대응되는 서비스를 수행하는 것을 특징으로 하는 시스템.
  14. 제13항에 있어서,
    상기 제3 서버는 상기 제3 서버에 저장된 복수의 암호화 데이터와 상기 수신한 제4 암호화 데이터를 비교하여 상기 제2 생체 정보에 대응되는 생체 정보를 포함하는 암호화 데이터가 존재하는지 여부를 판단하는 것을 특징으로 하는 시스템.
  15. 제3 서버의 제어 방법에 있어서,
    서비스를 이용을 위한 생체 정보를 등록하기 위한 위한 사용자 명령이 입력되면, 제1 서버로부터 인증 정보 및 생체 정보 발급 요청 정보를 수신하는 단계;
    상기 수신한 인증 정보가 유효한 경우, 상기 인증 정보 및 생체 정보 발급 요청 정보를 제2 서버로 전송하는 단계;
    상기 제2 서버로부터 상기 제1 서버에서 암호화된 제2 암호화 데이터 및 상기 제2 암호화 데이터에 대응되는 제1 사용자 식별 정보를 수신하여 저장하는 단계;를 포함하는 제어 방법.
PCT/KR2019/005729 2018-05-31 2019-05-13 생체 정보를 이용한 서비스 수행을 위한 시스템 및 그의 제어 방법 WO2019231140A1 (ko)

Priority Applications (3)

Application Number Priority Date Filing Date Title
US17/058,572 US11546163B2 (en) 2018-05-31 2019-05-13 System for performing service by using biometric information, and control method therefor
CN201980036606.1A CN112204549A (zh) 2018-05-31 2019-05-13 利用生物信息执行服务的系统及其控制方法
EP19811938.0A EP3757830B1 (en) 2018-05-31 2019-05-13 System for performing service by using biometric information, and control method therefor

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
KR20180062943 2018-05-31
KR10-2018-0062943 2018-05-31
KR1020190008005A KR102596874B1 (ko) 2018-05-31 2019-01-22 생체 정보를 이용한 서비스 수행을 위한 시스템 및 그의 제어 방법
KR10-2019-0008005 2019-01-22

Publications (1)

Publication Number Publication Date
WO2019231140A1 true WO2019231140A1 (ko) 2019-12-05

Family

ID=68698277

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/KR2019/005729 WO2019231140A1 (ko) 2018-05-31 2019-05-13 생체 정보를 이용한 서비스 수행을 위한 시스템 및 그의 제어 방법

Country Status (2)

Country Link
EP (1) EP3757830B1 (ko)
WO (1) WO2019231140A1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115987661A (zh) * 2022-12-28 2023-04-18 中国联合网络通信集团有限公司 云服务器数据自存储方法、装置、设备及存储介质

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2014219711A (ja) * 2013-05-01 2014-11-20 富士通株式会社 生体認証システム、生体認証方法、および生体認証装置
KR20150115593A (ko) * 2014-07-11 2015-10-14 크루셜텍 (주) 사용자 인증 방법, 서버 및 사용자 단말
KR20160099922A (ko) * 2015-02-13 2016-08-23 크루셜텍 (주) 사용자 인증서 발급과 사용자 인증을 위한 방법, 장치 및 컴퓨터 프로그램
KR20170039642A (ko) * 2017-04-03 2017-04-11 삼성전자주식회사 전자 장치, 인증 대행 서버 및 결제 시스템
KR20170095029A (ko) * 2016-02-12 2017-08-22 라온시큐어(주) 모바일 단말기를 통한 간편 인증 방법, 이를 위한 인증 어플리케이션, 컴퓨터 프로그램 및 인증 서비스 장치

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6384314B2 (ja) * 2014-12-22 2018-09-05 富士通株式会社 情報処理方法、情報処理プログラムおよび情報処理装置
JP6504013B2 (ja) * 2015-10-13 2019-04-24 富士通株式会社 暗号処理方法、暗号処理装置、および暗号処理プログラム

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2014219711A (ja) * 2013-05-01 2014-11-20 富士通株式会社 生体認証システム、生体認証方法、および生体認証装置
KR20150115593A (ko) * 2014-07-11 2015-10-14 크루셜텍 (주) 사용자 인증 방법, 서버 및 사용자 단말
KR20160099922A (ko) * 2015-02-13 2016-08-23 크루셜텍 (주) 사용자 인증서 발급과 사용자 인증을 위한 방법, 장치 및 컴퓨터 프로그램
KR20170095029A (ko) * 2016-02-12 2017-08-22 라온시큐어(주) 모바일 단말기를 통한 간편 인증 방법, 이를 위한 인증 어플리케이션, 컴퓨터 프로그램 및 인증 서비스 장치
KR20170039642A (ko) * 2017-04-03 2017-04-11 삼성전자주식회사 전자 장치, 인증 대행 서버 및 결제 시스템

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
See also references of EP3757830A4 *

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115987661A (zh) * 2022-12-28 2023-04-18 中国联合网络通信集团有限公司 云服务器数据自存储方法、装置、设备及存储介质

Also Published As

Publication number Publication date
EP3757830B1 (en) 2022-03-23
EP3757830A4 (en) 2021-06-09
EP3757830A1 (en) 2020-12-30

Similar Documents

Publication Publication Date Title
WO2015093734A1 (ko) 빠른 응답 코드를 이용한 인증 시스템 및 방법
WO2016171295A1 (ko) 유비쿼터스 환경에서 인증
WO2019093573A1 (ko) 생체정보 기반의 전자서명 인증 시스템 및 그의 전자서명 인증 방법
WO2018012747A1 (ko) 앱 위변조 탐지 가능한 2채널 인증 대행 시스템 및 그 방법
WO2021010766A1 (ko) 블록 체인을 이용한 전자 인증 장치 및 그 방법
WO2017222183A1 (ko) 거래 승인 처리 방법 및 카드사 서버
WO2018030707A1 (ko) 인증 시스템 및 방법과 이를 수행하기 위한 사용자 단말, 인증 서버 및 서비스 서버
WO2017065389A1 (ko) 블록체인을 기반으로 하는 공인인증서 발급시스템과 이를 이용한 블록체인을 기반으로 하는 공인인증서 발급방법 및 블록체인을 기반으로 하는 공인인증서 인증시스템과 이를 이용한 블록체인을 기반으로 하는 공인인증서 인증방법
WO2020218627A1 (ko) 차량용 디지털 키 공유 서비스 방법 및 시스템
WO2014104507A1 (ko) 안전 로그인 시스템과 방법 및 이를 위한 장치
WO2011149214A2 (ko) 오티피를 생성하기 위해 홍채정보를 이용한 쓰리-팩터 사용자 인증방식과 무선통신단말기의 오티피 인증모듈을 이용한 안전한 상호인증시스템
WO2022102930A1 (ko) 브라우저 기반 보안 pin 인증을 이용한 did 시스템 및 그것의 제어방법
WO2019225921A1 (ko) 디지털 키를 저장하기 위한 방법 및 전자 디바이스
WO2020050424A1 (ko) 블록체인 기반의 모바일 단말 및 IoT 기기 간의 다중 보안 인증 시스템 및 방법
KR102596874B1 (ko) 생체 정보를 이용한 서비스 수행을 위한 시스템 및 그의 제어 방법
WO2020022700A1 (ko) 디지털 키를 처리 및 인증하는 보안 요소 및 그 동작 방법
WO2020091525A1 (ko) 생체 인증을 이용한 결제 방법 및 그 전자 장치
WO2021071116A1 (ko) 브라우저의 웹스토리지를 이용한 간편인증 방법 및 시스템
WO2015037887A1 (ko) 스마트 칩 인증 서버 및 그 방법
WO2021080316A1 (ko) 권한 정보에 기초한 인증서를 사용하여 액세스 컨트롤하는 방법 및 장치
WO2021235893A1 (ko) 전자 디바이스 및 전자 디바이스가 레인징 기반 서비스를 제공하는 방법
WO2017111483A1 (ko) 생체 정보 기반 인증 장치, 이와 연동하는 제어 서버 및 어플리케이션 서버, 그리고 이들의 동작 방법
WO2020190099A1 (en) Electronic device for managing personal information and operating method thereof
WO2020032351A1 (ko) 익명 디지털 아이덴티티 수립 방법
WO2019231140A1 (ko) 생체 정보를 이용한 서비스 수행을 위한 시스템 및 그의 제어 방법

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

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 2019811938

Country of ref document: EP

Effective date: 20200923

NENP Non-entry into the national phase

Ref country code: DE