KR20230067458A - Authentication method and authentication system using biometric information and functional encryption - Google Patents

Authentication method and authentication system using biometric information and functional encryption Download PDF

Info

Publication number
KR20230067458A
KR20230067458A KR1020220038173A KR20220038173A KR20230067458A KR 20230067458 A KR20230067458 A KR 20230067458A KR 1020220038173 A KR1020220038173 A KR 1020220038173A KR 20220038173 A KR20220038173 A KR 20220038173A KR 20230067458 A KR20230067458 A KR 20230067458A
Authority
KR
South Korea
Prior art keywords
information
personal information
authentication
authenticated
private key
Prior art date
Application number
KR1020220038173A
Other languages
Korean (ko)
Inventor
은희석
이위직
Original Assignee
삼성전자주식회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 삼성전자주식회사 filed Critical 삼성전자주식회사
Priority to US17/984,052 priority Critical patent/US20230145500A1/en
Publication of KR20230067458A publication Critical patent/KR20230067458A/en

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
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/10Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
    • G06V40/12Fingerprints or palmprints
    • G06V40/1347Preprocessing; Feature extraction
    • 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)
    • H04L9/0825Key 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) using asymmetric-key encryption or public key infrastructure [PKI], e.g. key signature or public key certificates
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Theoretical Computer Science (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Biodiversity & Conservation Biology (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Multimedia (AREA)
  • Biomedical Technology (AREA)
  • General Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Human Computer Interaction (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Computer Hardware Design (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Storage Device Security (AREA)

Abstract

장치 및 인증 서버 사이의 인증 방법에서, 장치는 마스터 개인 키 및 마스터 공개 키를 생성하고, 등록 대상 개인 정보, 마스터 개인 키 및 마스터 공개 키를 이용하여 개인 키 및 공개 키를 생성하고, 등록 대상 개인 정보를 이용하여 제1 정보를 생성하며, 개인 키 및 제1 정보를 인증 서버로 전송한다. 개인 키 및 제1 정보를 인증 서버의 보안 영역에 저장한다. 장치는 인증 대상 개인 정보 및 공개 키를 이용하여 암호화된 암호문을 생성하고, 인증 대상 개인 정보를 이용하여 제2 정보를 생성하며, 암호문 및 제2 정보를 인증 서버로 전송한다. 인증 서버는 개인 키, 제1 정보, 암호문 및 제2 정보를 이용하여 인증 대상 개인 정보에 대한 인증을 수행하며, 유클리드 거리를 연산하여 등록 대상 개인 정보 및 인증 대상 개인 정보 사이의 유사도를 연산하고, 유사도에 기초하여 인증을 수행한다.In the authentication method between the device and the authentication server, the device generates a master private key and a master public key, uses the private information to be registered, the master private key and the master public key to generate a private key and a public key, and the individual to be registered First information is generated using the information, and the private key and the first information are transmitted to the authentication server. The private key and first information are stored in the security area of the authentication server. The device generates encrypted ciphertext using the personal information to be authenticated and the public key, generates second information using the personal information to be authenticated, and transmits the ciphertext and the second information to the authentication server. The authentication server performs authentication on the personal information to be authenticated using the private key, the first information, the ciphertext, and the second information, calculates a Euclidean distance to calculate a similarity between the personal information to be registered and the personal information to be authenticated, Authentication is performed based on similarity.

Description

생체 정보 및 함수 암호를 활용한 인증 방법 및 인증 시스템 {AUTHENTICATION METHOD AND AUTHENTICATION SYSTEM USING BIOMETRIC INFORMATION AND FUNCTIONAL ENCRYPTION}Authentication method and authentication system using biometric information and function password {AUTHENTICATION METHOD AND AUTHENTICATION SYSTEM USING BIOMETRIC INFORMATION AND FUNCTIONAL ENCRYPTION}

본 발명은 개인 인증 기술에 관한 것으로서, 더욱 상세하게는 생체 정보 및 함수 암호를 활용한 인증 방법 및 인증 시스템에 관한 것이다.The present invention relates to personal authentication technology, and more particularly, to an authentication method and an authentication system using biometric information and a function password.

생체 인식 기술의 발전에 따라, 홍채, 지문, DNA, 망막, 정맥, 걸음걸이, 얼굴, 음성 등과 같이 개인이 가지고 있는 고유의 생체 정보를 개인 인증에 이용하기 위한 생체 정보 인증 기술들이 연구되고 있다. 그러나, 이러한 생체 정보는 각 개인이 자의에 변경할 수 없거나 변경이 어려우므로 인증 과정에서 유출되는 경우 프라이버시 침해와 직결된다. 따라서, 생체 정보를 이용한 인증을 위해서는 인증 과정에서 생체 정보 유출을 방지하기 위한 기술이 필수적이다.With the development of biometric technology, biometric information authentication technologies for personal authentication using unique biometric information such as iris, fingerprint, DNA, retina, vein, gait, face, voice, etc. are being studied. However, since such biometric information cannot be changed voluntarily by each individual or is difficult to change, it is directly related to invasion of privacy when it is leaked during the authentication process. Therefore, for authentication using biometric information, a technique for preventing leakage of biometric information in the authentication process is essential.

최근에는 개인이 소지하고 있는 장치뿐 아니라, 불특정 다수에 대한 개인 인증이 요구되는 시스템에서 생체 정보의 유출 없이 인증이 가능하도록 하는 다양한 방법들이 연구되고 있다.Recently, various methods for enabling authentication without leakage of biometric information have been studied in a system requiring personal authentication for an unspecified number of people as well as a device possessed by an individual.

본 발명의 일 목적은 생체 정보 및 함수 암호를 활용하여 생체 정보의 유출 없이 효과적으로 개인 인증을 수행할 수 있는 인증 방법을 제공하는 것이다.One object of the present invention is to provide an authentication method capable of effectively performing personal authentication without leakage of biometric information by utilizing biometric information and function encryption.

본 발명의 일 목적은 상기 인증 방법을 수행하는 인증 시스템을 제공하는 것이다.One object of the present invention is to provide an authentication system that performs the above authentication method.

상기 일 목적을 달성하기 위해, 본 발명의 실시예들에 따른 장치 및 인증 서버를 포함하는 인증 시스템에서, 함수 암호(functional encryption)를 활용한 인증 방법에서, 상기 장치에서, 마스터 개인 키 및 마스터 공개 키를 생성한다. 상기 장치에서, 등록 대상 개인 정보, 상기 마스터 개인 키 및 상기 마스터 공개 키를 이용하여 개인 키 및 공개 키를 생성한다. 상기 장치에서, 상기 등록 대상 개인 정보를 이용하여 제1 정보를 생성한다. 상기 장치에서, 상기 개인 키 및 상기 제1 정보를 상기 인증 서버로 전송한다. 상기 개인 키 및 상기 제1 정보를 상기 인증 서버의 보안 영역에 저장한다. 상기 장치에서, 인증 대상 개인 정보 및 상기 공개 키를 이용하여 암호화된 암호문을 생성한다. 상기 장치에서, 상기 인증 대상 개인 정보를 이용하여 제2 정보를 생성한다. 상기 장치에서, 상기 암호문 및 상기 제2 정보를 상기 인증 서버로 전송한다. 상기 인증 서버에서, 상기 개인 키, 상기 제1 정보, 상기 암호문 및 상기 제2 정보를 이용하여 상기 인증 대상 개인 정보에 대한 인증을 수행한다. 상기 인증 대상 개인 정보에 대한 상기 인증을 수행하는데 있어서, 상기 등록 대상 개인 정보 및 상기 인증 대상 개인 정보의 유클리드 거리(Euclidean Distance)를 연산하여 상기 등록 대상 개인 정보 및 상기 인증 대상 개인 정보 사이의 유사도를 연산한다. 상기 유사도에 기초하여 상기 인증을 수행한다.In order to achieve the above object, in an authentication system including a device and an authentication server according to embodiments of the present invention, in an authentication method using functional encryption, in the device, a master private key and a master disclosure generate a key In the device, a private key and a public key are generated using the personal information to be registered, the master private key, and the master public key. In the device, first information is generated using the personal information to be registered. The device transmits the private key and the first information to the authentication server. The private key and the first information are stored in a secure area of the authentication server. In the device, encrypted ciphertext is generated using the personal information to be authenticated and the public key. In the device, second information is generated using the personal information to be authenticated. In the device, the encrypted text and the second information are transmitted to the authentication server. The authentication server performs authentication on the personal information to be authenticated using the private key, the first information, the encrypted text, and the second information. In performing the authentication of the personal information to be authenticated, a similarity between the personal information to be registered and the personal information to be authenticated is calculated by calculating a Euclidean distance between the personal information to be registered and the personal information to be authenticated. calculate The authentication is performed based on the degree of similarity.

상기 일 목적을 달성하기 위해, 본 발명의 실시예들에 따른 장치에서, 함수 암호(functional encryption)를 활용한 인증 방법에서, 마스터 개인 키 및 마스터 공개 키를 생성한다. 등록 대상 개인 정보, 상기 마스터 개인 키 및 상기 마스터 공개 키를 이용하여 개인 키 및 공개 키를 생성한다. 상기 등록 대상 개인 정보를 이용하여 제1 정보를 생성한다. 상기 개인 키 및 상기 제1 정보를 상기 장치의 보안 영역에 저장한다. 인증 대상 개인 정보 및 상기 공개 키를 이용하여 암호화된 암호문을 생성한다. 상기 인증 대상 개인 정보를 이용하여 제2 정보를 생성한다. 상기 개인 키, 상기 제1 정보, 상기 암호문 및 상기 제2 정보를 이용하여 상기 인증 대상 개인 정보에 대한 인증을 수행한다. 상기 인증 대상 개인 정보에 대한 상기 인증을 수행하는데 있어서, 상기 등록 대상 개인 정보 및 상기 인증 대상 개인 정보의 유클리드 거리(Euclidean Distance)를 연산하여 상기 등록 대상 개인 정보 및 상기 인증 대상 개인 정보 사이의 유사도를 연산한다. 상기 유사도에 기초하여 상기 인증을 수행한다.In order to achieve the above object, in an authentication method using functional encryption in an apparatus according to embodiments of the present invention, a master private key and a master public key are generated. A private key and a public key are generated using the personal information to be registered, the master private key, and the master public key. First information is generated using the personal information to be registered. Store the private key and the first information in a secure area of the device. An encrypted ciphertext is generated using the personal information to be authenticated and the public key. Second information is generated using the personal information to be authenticated. Authentication of the personal information to be authenticated is performed using the private key, the first information, the ciphertext, and the second information. In performing the authentication of the personal information to be authenticated, a similarity between the personal information to be registered and the personal information to be authenticated is calculated by calculating a Euclidean distance between the personal information to be registered and the personal information to be authenticated. calculate The authentication is performed based on the degree of similarity.

상기 일 목적을 달성하기 위해, 본 발명의 실시예들에 따른 인증 시스템은 장치 및 인증 서버를 포함한다. 상기 인증 서버는 상기 장치와 통신하고, 함수 암호(functional encryption)를 활용하여 인증을 수행하고, 보안 영역을 포함한다. 상기 장치는, 마스터 개인 키 및 마스터 공개 키를 생성하고, 등록 대상 개인 정보, 상기 마스터 개인 키 및 상기 마스터 공개 키를 이용하여 개인 키 및 공개 키를 생성하고, 상기 등록 대상 개인 정보를 이용하여 제1 정보를 생성하고, 상기 개인 키 및 상기 제1 정보를 상기 인증 서버로 전송하고, 인증 대상 개인 정보 및 상기 공개 키를 이용하여 암호화된 암호문을 생성하고, 상기 인증 대상 개인 정보를 이용하여 제2 정보를 생성하고, 상기 암호문 및 상기 제2 정보를 상기 인증 서버로 전송한다. 상기 인증 서버는, 상기 개인 키 및 상기 제1 정보를 상기 보안 영역에 저장하고, 상기 개인 키, 상기 제1 정보, 상기 암호문 및 상기 제2 정보를 이용하여, 상기 등록 대상 개인 정보 및 상기 인증 대상 개인 정보를 노출하지 않고 상기 등록 대상 개인 정보 및 상기 인증 대상 개인 정보의 유클리드 거리(Euclidean Distance)를 연산하여, 상기 등록 대상 개인 정보 및 상기 인증 대상 개인 정보 사이의 유사도를 연산하고, 상기 유사도에 기초하여 상기 인증 대상 개인 정보에 대한 인증을 수행한다. 상기 장치는, 상기 개인 키 및 상기 제1 정보를 상기 인증 서버로 전송한 이후에, 상기 개인 키 및 상기 제1 정보를 물리적으로 소거하고, 상기 암호문 및 상기 제2 정보를 상기 인증 서버로 전송한 이후에, 상기 암호문 및 상기 제2 정보를 물리적으로 소거한다. 상기 인증 서버는, 상기 인증 대상 개인 정보에 대한 상기 인증을 수행한 이후에, 상기 암호문 및 상기 제2 정보를 물리적으로 소거한다.In order to achieve the above object, an authentication system according to embodiments of the present invention includes a device and an authentication server. The authentication server communicates with the device, performs authentication utilizing functional encryption, and includes a secure realm. The device generates a master private key and a master public key, generates a private key and a public key using personal information to be registered, the master private key and the master public key, and uses the personal information to be registered to generate a master private key and a master public key. 1 information is generated, the private key and the first information are transmitted to the authentication server, an encrypted ciphertext is generated using the authentication target personal information and the public key, and the authentication target personal information is used to generate second authentication target information. information is generated, and the ciphertext and the second information are transmitted to the authentication server. The authentication server stores the private key and the first information in the secure area, and uses the private key, the first information, the cipher text, and the second information to obtain the registration target personal information and the authentication target. Calculate a similarity between the personal information to be registered and the personal information to be authenticated by calculating a Euclidean distance between the personal information to be registered and the personal information to be authenticated without exposing the personal information, and based on the similarity to perform authentication on the personal information to be authenticated. After transmitting the private key and the first information to the authentication server, the device physically erases the private key and the first information, and transmits the cipher text and the second information to the authentication server. Thereafter, the ciphertext and the second information are physically erased. The authentication server physically erases the ciphertext and the second information after performing the authentication of the personal information to be authenticated.

상기와 같은 본 발명의 실시예들에 따른 인증 방법 및 인증 시스템에서는, 함수 암호를 활용하여 인증이 수행될 수 있다. 공개 키를 이용하여 평문을 암호화하여 암호문을 획득하고 개인 키를 이용하여 암호문을 복호화하여 평문을 획득하는 공개 키 암호와 다르게, 함수 암호에서는 공개 키를 이용하여 평문을 암호화하여 암호문을 획득하고 함수와 관련된 비밀 키를 이용하여 암호문을 평문으로 복호화하지 않고 함수 값만을 획득하며 함수 값을 이용하여 인증이 수행될 수 있다. 다시 말하면, 암호화된 생체 정보를 복호화하지 않고 인증이 수행될 수 있다. 따라서, 개인 정보의 노출 없이 효과적으로 개인 인증을 수행할 수 있다.In the authentication method and authentication system according to the embodiments of the present invention as described above, authentication may be performed using a function password. Unlike public key cryptography, in which plaintext is obtained by encrypting plaintext using a public key and plaintext is obtained by decrypting the ciphertext using a private key, function cryptography obtains ciphertext by encrypting plaintext using a public key and obtains ciphertext using a function cipher. Authentication may be performed using a function value by obtaining only a function value without decrypting the ciphertext into plain text using a related secret key. In other words, authentication can be performed without decrypting the encrypted biometric information. Accordingly, personal authentication can be effectively performed without exposing personal information.

또한, 인증 과정에서 유클리드 거리를 연산하여 유사도 측정이 수행될 수 있으며, 특히 생체 정보를 직접적으로 이용하지 않고 유클리드 거리가 연산될 수 있다. 추가적으로, 인증 과정에서 생성되는 정보들 중 저장할 필요성이 없는 일부 정보들이 삭제/소거될 수 있다. 따라서, 보다 안전하고 효과적으로 개인 인증을 수행할 수 있다.Also, similarity measurement may be performed by calculating the Euclidean distance in the authentication process, and in particular, the Euclidean distance may be calculated without directly using biometric information. Additionally, among information generated in the authentication process, some information that does not need to be stored may be deleted/erased. Therefore, personal authentication can be performed more safely and effectively.

도 1은 본 발명의 실시예들에 따른 인증 방법을 나타내는 순서도이다.
도 2는 본 발명의 실시예들에 따른 인증 시스템을 나타내는 블록도이다.
도 3 및 4는 본 발명의 실시예들에 따른 인증 시스템에 포함되는 장치를 나타내는 블록도들이다.
도 5a 및 5b는 본 발명의 실시예들에 따른 인증 시스템에 포함되는 장치의 동작을 설명하기 위한 도면들이다.
도 6은 도 1의 개인 정보 등록 절차를 수행하는 단계의 일 예를 나타내는 순서도이다.
도 7a, 7b, 7c, 7d 및 7e는 도 6의 동작을 설명하기 위한 도면들이다.
도 8은 도 1의 개인 정보 등록 절차를 수행하는 단계의 다른 예를 나타내는 순서도이다.
도 9는 도 8의 동작을 설명하기 위한 도면이다.
도 10은 도 1의 개인 정보 등록 절차를 수행하는 단계의 다른 예를 나타내는 순서도이다.
도 11은 도 10의 동작을 설명하기 위한 도면이다.
도 12는 도 1의 개인 정보 인증 절차를 수행하는 단계의 일 예를 나타내는 순서도이다.
도 13a, 13b, 13c, 13d 및 13e는 도 12의 동작을 설명하기 위한 도면들이다.
도 14는 도 12의 인증 대상 개인 정보에 대한 인증을 수행하는 단계의 일 예를 나타내는 순서도이다.
도 15는 도 1의 개인 정보 인증 절차를 수행하는 단계의 다른 예를 나타내는 순서도이다.
도 16은 도 15의 동작을 설명하기 위한 도면이다.
도 17은 도 1의 개인 정보 인증 절차를 수행하는 단계의 다른 예를 나타내는 순서도이다.
도 18은 도 17의 동작을 설명하기 위한 도면이다.
도 19는 도 1의 개인 정보 인증 절차를 수행하는 단계의 다른 예를 나타내는 순서도이다.
도 20은 도 19의 동작을 설명하기 위한 도면이다.
도 21은 본 발명의 실시예들에 따른 인증 시스템을 나타내는 블록도이다.
도 22는 도 1의 개인 정보 등록 절차를 수행하는 단계의 일 예를 나타내는 순서도이다.
도 23a, 23b, 23c, 23d 및 23e는 도 22의 동작을 설명하기 위한 도면들이다.
도 24는 도 1의 개인 정보 등록 절차를 수행하는 단계의 다른 예를 나타내는 순서도이다.
도 25는 도 1의 개인 정보 인증 절차를 수행하는 단계의 일 예를 나타내는 순서도이다.
도 26a, 26b, 26c, 26d 및 26e는 도 25의 동작을 설명하기 위한 도면들이다.
도 27은 도 1의 개인 정보 인증 절차를 수행하는 단계의 다른 예를 나타내는 순서도이다.
1 is a flowchart illustrating an authentication method according to embodiments of the present invention.
2 is a block diagram illustrating an authentication system according to embodiments of the present invention.
3 and 4 are block diagrams illustrating devices included in an authentication system according to embodiments of the present invention.
5A and 5B are diagrams for explaining the operation of a device included in an authentication system according to embodiments of the present invention.
6 is a flowchart illustrating an example of a step of performing the personal information registration procedure of FIG. 1 .
7a, 7b, 7c, 7d, and 7e are diagrams for explaining the operation of FIG. 6 .
8 is a flowchart illustrating another example of performing the personal information registration procedure of FIG. 1 .
FIG. 9 is a diagram for explaining the operation of FIG. 8 .
10 is a flowchart illustrating another example of performing the personal information registration procedure of FIG. 1 .
FIG. 11 is a diagram for explaining the operation of FIG. 10 .
12 is a flowchart illustrating an example of performing the personal information authentication procedure of FIG. 1 .
13a, 13b, 13c, 13d and 13e are diagrams for explaining the operation of FIG. 12 .
14 is a flowchart illustrating an example of a step of performing authentication on personal information to be authenticated in FIG. 12 .
15 is a flowchart illustrating another example of performing the personal information authentication procedure of FIG. 1 .
FIG. 16 is a diagram for explaining the operation of FIG. 15 .
17 is a flowchart illustrating another example of performing the personal information authentication procedure of FIG. 1 .
FIG. 18 is a diagram for explaining the operation of FIG. 17 .
19 is a flowchart illustrating another example of performing the personal information authentication procedure of FIG. 1 .
FIG. 20 is a diagram for explaining the operation of FIG. 19 .
21 is a block diagram illustrating an authentication system according to embodiments of the present invention.
22 is a flowchart illustrating an example of performing the personal information registration procedure of FIG. 1 .
23a, 23b, 23c, 23d, and 23e are diagrams for explaining the operation of FIG. 22 .
24 is a flowchart illustrating another example of performing the personal information registration procedure of FIG. 1 .
25 is a flowchart illustrating an example of performing the personal information authentication procedure of FIG. 1 .
26a, 26b, 26c, 26d and 26e are diagrams for explaining the operation of FIG. 25 .
27 is a flowchart illustrating another example of performing the personal information authentication procedure of FIG. 1 .

이하, 첨부한 도면들을 참조하여, 본 발명의 바람직한 실시예를 보다 상세하게 설명하고자 한다. 도면상의 동일한 구성요소에 대해서는 동일한 참조부호를 사용하고 동일한 구성요소에 대해서 중복된 설명은 생략한다.Hereinafter, with reference to the accompanying drawings, preferred embodiments of the present invention will be described in more detail. The same reference numerals are used for the same components in the drawings, and redundant descriptions of the same components are omitted.

도 1은 본 발명의 실시예들에 따른 인증 방법을 나타내는 순서도이다.1 is a flowchart illustrating an authentication method according to embodiments of the present invention.

도 1을 참조하면, 본 발명의 실시예들에 따른 인증 방법은, 인증 시스템에 의해 수행된다. 예를 들어, 상기 인증 시스템은 장치 및 인증 서버를 포함할 수 있다. 다른 예에서, 상기 인증 시스템은 장치만을 포함할 수 있다. 상기 인증 시스템의 구성에 대해서는 도 2 내지 4 및 21을 참조하여 후술하도록 한다.Referring to FIG. 1 , an authentication method according to embodiments of the present invention is performed by an authentication system. For example, the authentication system may include a device and an authentication server. In another example, the authentication system may include only a device. The configuration of the authentication system will be described later with reference to FIGS. 2 to 4 and 21 .

본 발명의 실시예들에 따른 인증 방법에서, 함수 암호(functional encryption)를 활용하여, 개인 정보 등록 절차를 수행한다(단계 S100). 상기 함수 암호를 활용하고 유클리드 거리(Euclidean Distance)를 연산하여, 개인 정보 인증 절차를 수행한다(단계 S200). 예를 들어, 상기 인증 시스템이 상기 인증 서버를 포함하는 경우에, 상기 개인 정보 등록 절차 및 상기 개인 정보 인증 절차는 상기 장치 및 상기 인증 서버에서 수행될 수 있다. 다른 예에서, 상기 인증 시스템이 상기 인증 서버를 포함하지 않고 상기 장치만을 포함하는 경우에, 상기 개인 정보 등록 절차 및 상기 개인 정보 인증 절차는 상기 장치에서 수행될 수 있다.In the authentication method according to embodiments of the present invention, a personal information registration procedure is performed using functional encryption (step S100). The function encryption is utilized and a Euclidean distance is calculated to perform a personal information authentication procedure (step S200). For example, when the authentication system includes the authentication server, the personal information registration procedure and the personal information authentication procedure may be performed in the device and the authentication server. In another example, when the authentication system includes only the device without including the authentication server, the personal information registration procedure and the personal information authentication procedure may be performed in the device.

일 실시예에서, 상기 개인 정보 등록 절차 및 상기 개인 정보 인증 절차에서 이용되는 개인 정보(예를 들어, 등록 대상 개인 정보 및 인증 대상 개인 정보)는 생체 정보(biometric information)일 수 있다. 예를 들어, 홍채, 지문, DNA, 망막, 정맥, 걸음걸이, 얼굴, 음성 등과 같이 개인이 가지고 있는 고유의 생체 정보가 상기 개인 정보로서 이용될 수 있다.In one embodiment, personal information (eg, personal information to be registered and personal information to be authenticated) used in the personal information registration procedure and the personal information authentication procedure may be biometric information. For example, unique biometric information possessed by an individual such as iris, fingerprint, DNA, retina, vein, gait, face, voice, etc. may be used as the personal information.

생체 정보를 활용한 인증 기술이 연구되고 있다. 이는 개인 인증을 위해 망막, 지문, 음성, 얼굴 등 개인의 신체적 특징이나 행동적 특성을 추출하여 신원을 확인하는 것을 나타내며, 개인만의 유일무이한 정보를 활용하는 측면에서 명확한 신원 확인이 가능할 수 있다.Authentication technology using biometric information is being researched. This refers to confirming identity by extracting physical or behavioral characteristics of individuals such as retina, fingerprint, voice, and face for personal authentication.

상기와 같은 생체 정보를 활용한 인증 기술에서, 생체 정보를 안전하게 보관하는 것이 중요하다. 예를 들어, 개인 장치 내에서 하드웨어 적으로 안전한 저장 공간에 생체 정보를 암호화하여 보관해야 한다. 생체 정보를 외부 서버에 보관하는 경우 생체 정보 유출 가능성이 존재하며, 인증이 필요한 외부 장치나 외부 시스템에서의 활용 범위가 좁을 수 있다. 또한, 실제 검증 과정에서 원본 생체 정보를 확인해야 하며, 복호화된 생체 정보를 이용하는 측면에서 생체 정보 유출 가능성이 존재할 수 있다.In the authentication technology using biometric information as described above, it is important to safely store biometric information. For example, biometric information must be encrypted and stored in a hardware-safe storage space within a personal device. When biometric information is stored in an external server, there is a possibility of leakage of biometric information, and the range of utilization in an external device or external system requiring authentication may be narrow. In addition, in the actual verification process, the original biometric information must be confirmed, and there may be a possibility of biometric information leakage in terms of using the decrypted biometric information.

본 발명의 실시예들에 따른 인증 방법에서는, 함수 암호를 활용하여 인증이 수행될 수 있다. 공개 키(public key)를 이용하여 평문을 암호화하여 암호문을 획득하고 개인 키(secret key)를 이용하여 암호문을 복호화하여 평문을 획득하는 공개 키 암호와 다르게, 함수 암호에서는 공개 키를 이용하여 평문을 암호화하여 암호문을 획득하고 함수와 관련된 비밀 키를 이용하여 암호문을 평문으로 복호화하지 않고 함수 값만을 획득하며 함수 값을 이용하여 인증이 수행될 수 있다. 다시 말하면, 암호화된 생체 정보를 복호화하지 않고 인증이 수행될 수 있다. 따라서, 개인 정보의 노출 없이 효과적으로 개인 인증을 수행할 수 있다.In the authentication method according to the embodiments of the present invention, authentication may be performed using function encryption. Unlike public key cryptography, which uses a public key to encrypt plaintext to obtain ciphertext and uses a private key to decrypt the ciphertext to obtain plaintext, function cryptography uses a public key to obtain plaintext. The ciphertext may be obtained by encryption, and only the function value may be obtained without decrypting the ciphertext into plaintext using a secret key related to the function, and authentication may be performed using the function value. In other words, authentication can be performed without decrypting the encrypted biometric information. Accordingly, personal authentication can be effectively performed without exposing personal information.

또한, 본 발명의 실시예들에 따른 인증 방법에서는, 인증 과정에서 유클리드 거리를 연산하여 유사도 측정(measure similarity)이 수행될 수 있으며, 특히 생체 정보를 직접적으로 이용하지 않고 유클리드 거리가 연산될 수 있다. 추가적으로, 인증 과정에서 생성되는 정보들 중 저장할 필요성이 없는 일부 정보들이 삭제/소거될 수 있다. 따라서, 보다 안전하고 효과적으로 개인 인증을 수행할 수 있다.In addition, in the authentication method according to embodiments of the present invention, similarity measurement (measure similarity) may be performed by calculating the Euclidean distance in the authentication process, and in particular, the Euclidean distance may be calculated without directly using biometric information. . Additionally, among information generated in the authentication process, some information that does not need to be stored may be deleted/erased. Therefore, personal authentication can be performed more safely and effectively.

도 2는 본 발명의 실시예들에 따른 인증 시스템을 나타내는 블록도이다.2 is a block diagram illustrating an authentication system according to embodiments of the present invention.

도 2를 참조하면, 인증 시스템(10)은 장치(20) 및 인증 서버(50)를 포함한다.Referring to FIG. 2 , the authentication system 10 includes a device 20 and an authentication server 50 .

장치(20)는 사용자가 소유하는 개인 장치이며, 등록 대상 개인 정보를 입력 받아 개인 정보 등록 절차를 수행하고, 인증 대상 개인 정보를 입력 받아 개인 정보 인증 절차를 수행하기 위한 정보를 생성할 수 있다.The device 20 is a personal device owned by a user, and can receive personal information to be registered, perform a personal information registration procedure, receive personal information to be authenticated, and generate information for performing a personal information authentication procedure.

인증 서버(50)는 장치(20)와 물리적으로 이격되며, 상기 개인 정보 등록 절차의 수행 결과 생성된 키를 저장하고, 장치(20)로부터 상기 인증 대상 개인 정보에 대응하는 정보를 수신하고, 상기 수신된 정보 및 상기 저장된 키를 이용하여 상기 개인 정보 인증 절차를 수행할 수 있다.The authentication server 50 is physically separated from the device 20, stores a key generated as a result of performing the personal information registration procedure, receives information corresponding to the personal information to be authenticated from the device 20, and The personal information authentication procedure may be performed using the received information and the stored key.

도 3 및 4는 본 발명의 실시예들에 따른 인증 시스템에 포함되는 장치를 나타내는 블록도들이다.3 and 4 are block diagrams illustrating devices included in an authentication system according to embodiments of the present invention.

도 3을 참조하면, 장치(100)는 시스템 온 칩(system-on-chip, SOC)(110) 및 입출력 장치(120)를 포함할 수 있다.Referring to FIG. 3 , the device 100 may include a system-on-chip (SOC) 110 and an input/output device 120 .

일 실시예에서, 장치(100)가 모바일 장치인 경우에, 시스템 온 칩(110)은 장치(100)에 포함되는 어플리케이션 프로세서(application processor, AP) 등의 구성요소일 수 있다.In one embodiment, when the device 100 is a mobile device, the system on chip 110 may be a component such as an application processor (AP) included in the device 100 .

시스템 온 칩(110)은 버스(111), 프로세서(113), 메모리(115), 통신 인터페이스부(117) 및 입출력 인터페이스부(119)를 포함할 수 있다. 도시의 편의상, 시스템 온 칩(110) 및 이를 포함하는 장치의 다른 구성 요소들은 도 4를 참조하여 상세하게 후술하도록 한다.The system on chip 110 may include a bus 111 , a processor 113 , a memory 115 , a communication interface unit 117 , and an input/output interface unit 119 . For convenience of illustration, the system-on-a-chip 110 and other components of a device including the same will be described later in detail with reference to FIG. 4 .

프로세서(113)는 시스템 온 칩(110)의 전반적인 동작을 제어할 수 있다. 예를 들어, 장치(100)가 모바일 장치인 경우에, 프로세서(113)는 상기 모바일 장치를 구동하기 위한 운영 체제(operating system, OS)를 실행할 수 있고, 인터넷 브라우저, 게임, 동영상, 카메라 등을 제공하는 다양한 어플리케이션들을 실행할 수 있다. 예를 들어, 프로세서(113)는 CPU(central processing unit), 마이크로프로세서(microprocessor) 등을 포함할 수 있다.The processor 113 may control overall operations of the system on chip 110 . For example, when the device 100 is a mobile device, the processor 113 may execute an operating system (OS) for driving the mobile device, and may operate an Internet browser, games, videos, and a camera. You can run various applications provided. For example, the processor 113 may include a central processing unit (CPU), a microprocessor, and the like.

일 실시예에서, 도 4를 참조하여 후술하는 것처럼, 프로세서(113)는 보안 운영 체제 및 비보안 운영 체제에 의해 구동될 수 있다. 시스템 온 칩(110) 및 장치(100)는 상기 보안 운영 체제에 기초하여 보안 모드(trusted execution mode 또는 secure mode)로 동작할 수 있고, 상기 비보안 운영 체제에 기초하여 비보안 모드(non-trusted execution mode, non-secure mode 또는 normal mode)로 동작할 수 있다.In one embodiment, as described below with reference to FIG. 4, processor 113 may be driven by a secure operating system and a non-secure operating system. The system on chip 110 and the device 100 may operate in a secure mode (trusted execution mode or secure mode) based on the secure operating system, and may operate in a non-secure mode (non-trusted execution mode) based on the non-secure operating system. , non-secure mode or normal mode).

실시예에 따라서, 프로세서(113)는 하나의 프로세서 코어를 포함하는 형태(single core)로 구현되거나 복수의 프로세서 코어들을 포함하는 형태(multi-core)로 구현될 수 있다. 예를 들어, 프로세서(113)는 듀얼 코어(dual-core), 쿼드 코어(quad-core), 헥사 코어(hexa-core) 등과 같이 멀티 코어의 형태로 구현될 수 있다. 또한, 실시예에 따라서, 프로세서(113)는 내부 또는 외부에 위치한 캐시 메모리(cache memory)를 더 포함할 수 있다.According to embodiments, the processor 113 may be implemented as a single core or as a multi-core processor. For example, the processor 113 may be implemented in a multi-core form, such as dual-core, quad-core, or hexa-core. Also, according to embodiments, the processor 113 may further include an internal or external cache memory.

메모리(115)는 프로세서(113)에 의해 처리되는 데이터를 저장할 수 있다. 예를 들어, 장치(100)가 모바일 장치인 경우에, 메모리(115)는 상기 모바일 장치를 부팅하기 위한 부트 이미지(boot image), 상기 모바일 장치를 구동하기 위한 운영 체제와 관련된 파일 시스템(file system), 상기 모바일 장치와 연결되는 외부 장치와 관련된 장치 드라이버(device driver), 상기 모바일 장치에서 실행되는 어플리케이션 등을 저장할 수 있다. 예를 들어, 메모리(115)는 휘발성 메모리 및 비휘발성 메모리 중 적어도 하나를 포함할 수 있다.The memory 115 may store data processed by the processor 113 . For example, when the device 100 is a mobile device, the memory 115 stores a boot image for booting the mobile device and a file system related to an operating system for driving the mobile device. ), a device driver related to an external device connected to the mobile device, and an application running on the mobile device. For example, the memory 115 may include at least one of volatile memory and non-volatile memory.

통신 인터페이스부(117)는 장치(100)의 외부(예를 들어, 도 2의 인증 서버(50))와 통신을 수행할 수 있다. 예를 들어, 통신 인터페이스부(117)는 외부와 와이파이(WIFI) 통신, 3G 통신, LTE(Long Term Evolution) 통신, 5G 통신 등과 같은 무선 통신(wireless communication)을 수행할 수 있다.The communication interface unit 117 may communicate with the outside of the device 100 (eg, the authentication server 50 of FIG. 2 ). For example, the communication interface unit 117 may perform wireless communication such as WIFI communication with the outside, 3G communication, Long Term Evolution (LTE) communication, and 5G communication.

입출력 인터페이스부(119)는 장치(100)의 내부에 위치하는 입출력 장치(120)와 통신을 수행할 수 있다. 예를 들어, 입출력 인터페이스부(119)는 입출력 장치(120)와 MIPI(Mobile Industry Processor Interface) 등과 같은 미리 정해진 규격의 통신을 수행할 수 있다.The input/output interface unit 119 may communicate with the input/output device 120 located inside the device 100 . For example, the input/output interface unit 119 may perform communication with the input/output device 120 of a predetermined standard such as MIPI (Mobile Industry Processor Interface).

입출력 장치(120)는 생체 정보 추출기(121)를 포함할 수 있다. 생체 정보 추출기(121)를 통해 본 발명의 실시예들에 따른 인증 방법을 수행하는데 필요한 등록 대상 개인 정보 및 인증 대상 개인 정보가 입력될 수 있다. 예를 들어, 상기 등록 대상 개인 정보 및 상기 인증 대상 개인 정보는 홍채, 지문, DNA, 망막, 정맥, 걸음걸이, 얼굴, 음성 등과 같은 생체 정보일 수 있으나, 본 발명은 이에 한정되지 않으며, 각 개인의 동일성을 입증하기 위해 이용될 수 있는 다양한 형태의 정보들을 포함할 수 있다. 예를 들어, 생체 정보 추출기(121)는 상기 등록 대상 개인 정보 및 상기 인증 대상 개인 정보를 입력 받기 위한 센서, 카메라 등과 같은 다양한 형태의 입력 수단을 포함할 수 있다.The input/output device 120 may include a biometric information extractor 121 . Personal information to be registered and personal information to be authenticated necessary to perform the authentication method according to the embodiments of the present invention may be input through the biometric information extractor 121 . For example, the personal information to be registered and the personal information to be authenticated may be biometric information such as iris, fingerprint, DNA, retina, vein, gait, face, voice, etc., but the present invention is not limited thereto, and each individual It may include various types of information that can be used to prove the identity of . For example, the biometric information extractor 121 may include various types of input means such as sensors and cameras for receiving the personal information to be registered and the personal information to be authenticated.

편의상, 입출력 장치(120)가 생체 정보 추출기(121)만을 포함하는 것으로 도시하였으나, 본 발명은 이에 한정되지 않으며, 키보드, 키패드, 터치패드, 터치스크린, 마우스, 리모트 컨트롤러 등과 같은 입력 수단, 및 디스플레이, 스피커, 프린터 등과 같은 출력 수단을 더 포함할 수 있다.For convenience, the input/output device 120 is illustrated as including only the biometric information extractor 121, but the present invention is not limited thereto, and input means such as a keyboard, keypad, touchpad, touchscreen, mouse, remote controller, and display , It may further include an output means such as a speaker, a printer, and the like.

일 실시예에서, 장치(100)는 휴대폰(mobile phone), 노트북(laptop) 또는 오토모티브(automotive)일 수 있으나, 본 발명은 이에 한정되지 않는다. 실시예에 따라서, 장치(100)는 PC(Personal Computer), 서버 컴퓨터(server computer), 데이터 센터(data center), 워크스테이션(workstation), 디지털 TV(digital television), 셋-탑 박스(set-top box) 등과 같은 임의의 컴퓨팅 장치, 또는 스마트 폰(smart phone), 태블릿(tablet) PC(Personal Computer), PDA(Personal Digital Assistant), PMP(Portable Multimedia Player), 디지털 카메라(digital camera), 캠코더(camcorder), 휴대용 게임 콘솔(portable game console), 음악 재생기(music player), 동영상 재생기(video player), 네비게이션(navigation) 기기, 웨어러블(wearable) 기기, IoT(Internet of Things) 기기, e-북(e-book), VR(Virtual Reality) 기기, AR(Augmented Reality) 기기, 드론(drone) 등과 같은 임의의 모바일 장치일 수 있다.In one embodiment, the device 100 may be a mobile phone, laptop, or automotive, but the present invention is not limited thereto. According to an embodiment, the device 100 may be used in a personal computer (PC), a server computer, a data center, a workstation, a digital television, a set-top box, and the like. top box), or smart phone, tablet PC (Personal Computer), PDA (Personal Digital Assistant), PMP (Portable Multimedia Player), digital camera, camcorder (camcorder), portable game console, music player, video player, navigation device, wearable device, IoT (Internet of Things) device, e-book It may be any mobile device such as an e-book, a Virtual Reality (VR) device, an Augmented Reality (AR) device, or a drone.

도 4를 참조하면, 장치(200)는 시스템 온 칩(201), 생체 정보 추출기(biometric information extractor, BIE)(242), 통신 프로세서(communication processor, CP)(244), 휘발성 메모리(volatile memory, VM)(260), 비휘발성 메모리(nonvolatile memory, NVM)(270) 및 임베디드 보안 장치(embedded Secure Element; eSE)(280)를 포함할 수 있다. 도 4는 장치(200)가 모바일 장치로 구현된 예를 나타낸다.Referring to FIG. 4 , the device 200 includes a system on chip 201, a biometric information extractor (BIE) 242, a communication processor (CP) 244, a volatile memory, VM) 260, a nonvolatile memory (NVM) 270, and an embedded secure element (eSE) 280. 4 shows an example in which the device 200 is implemented as a mobile device.

시스템 온 칩(201)은 장치(200)의 전반적인 동작을 제어할 수 있다. 시스템 온 칩(201)은 프로세서(210), 인터럽트 컨트롤러(generic interrupt controller, GIC)(212), 보호 컨트롤러(TrustZone protection controller, TZPC)(250), 제1 내부 메모리(internal read-only memory, IROM)(222), 제2 내부 메모리(internal random access memory, IRAM)(224), 메모리 어댑터(TrustZone memory adapter, TZMA)(226), 제1 인터페이스부(biometric interface, BIF)(232), 제2 인터페이스부(CP interface, CIF)(234), 제1 방화벽(contents firewall, CFW)(236), 제2 방화벽(238), 제1 메모리 컨트롤러(VM controller)(262), 어드레스 공간 보호기(address space protector, ASP)(264), 제2 메모리 컨트롤러(NVM controller)(272), 제3 인터페이스부(eSE interface)(282) 및 버스(203)를 포함할 수 있다.The system on chip 201 may control overall operations of the device 200 . The system-on-chip 201 includes a processor 210, a generic interrupt controller (GIC) 212, a trust zone protection controller (TZPC) 250, and a first internal read-only memory (IROM). ) 222, a second internal random access memory (IRAM) 224, a memory adapter (TrustZone memory adapter, TZMA) 226, a first interface unit (biometric interface, BIF) 232, a second An interface unit (CP interface, CIF) 234, a first firewall (contents firewall, CFW) 236, a second firewall 238, a first memory controller (VM controller) 262, an address space protector A protector (ASP) 264 , a second memory controller (NVM controller) 272 , a third interface unit (eSE interface) 282 and a bus 203 may be included.

프로세서(210)는 도 3의 프로세서(113)에 대응할 수 있다. 편의상 하나의 프로세서(210)만을 도시하였으나, 실시예에 따라서 시스템 온 칩(201)은 2개 이상의 프로세서들을 포함할 수 있다. 프로세서(210)는 버스(203)를 통해 다른 하드웨어들과 연결될 수 있다. 예를 들어, 프로세서(210)는 ARM 프로세서 코어를 포함할 수 있고, 버스(203)는 AMBA(Advanced Microcontroller Bus Architecture)) 버스일 수 있다.The processor 210 may correspond to the processor 113 of FIG. 3 . For convenience, only one processor 210 is shown, but according to embodiments, the system on chip 201 may include two or more processors. The processor 210 may be connected to other hardware through the bus 203 . For example, processor 210 may include an ARM processor core, and bus 203 may be an Advanced Microcontroller Bus Architecture (AMBA) bus.

인터럽트 컨트롤러(212)는 시스템 온 칩(201) 내의 모든 인터럽트(interrupt resource)들의 보안 속성을 설정할 수 있다. 예를 들어, 인터럽트 컨트롤러(212)는 인터럽트들을 보안 인터럽트(trusted interrupt)(Fast Interrupt reQuest; FIQ) 및 비보안 인터럽트(non-trusted interrupt)(Interrupt ReQuest; IRQ)로 구분할 수 있다. 상기와 같은 보안 속성의 설정은 상기 보안 모드에서만 가능할 수 있다. 상기 보안 모드에서는 상기 보안 인터럽트가 처리될 수 있고, 상기 비보안 모드에서는 상기 비보안 인터럽트가 처리될 수 있다.The interrupt controller 212 may set security attributes of all interrupt resources in the system on chip 201 . For example, the interrupt controller 212 may classify interrupts into a secure interrupt (Fast Interrupt request; FIQ) and a non-secure interrupt (Interrupt Request; IRQ). Setting of the security attributes as described above may be possible only in the security mode. The secure interrupt may be processed in the secure mode, and the non-secure interrupt may be processed in the non-secure mode.

보호 컨트롤러(250)는 시스템 온 칩(201) 내의 모든 하드웨어(hardware resource)들의 보안 속성을 설정할 수 있다. 예를 들어, 보호 컨트롤러(250)는 하드웨어들을 보안 모드용 및 비보안 모드용으로 구분할 수 있다. 상기와 같은 보안 속성의 설정은 상기 보안 모드에서만 가능할 수 있으며, 상기 비보안 모드에서는 불가능하다. 상기 보안 모드에서는 상기 보안 모드용 하드웨어가 동작할 수 있고, 상기 비보안 모드에서는 상기 비보안 모드용 하드웨어가 동작할 수 있다. 실시예에 따라서, 하나의 하드웨어가 상기 보안 모드 및 상기 비보안 모드 모두에서 동작할 수도 있다.The protection controller 250 may set security attributes of all hardware resources in the system on chip 201 . For example, the protection controller 250 may classify hardware into a secure mode and a non-secure mode. Setting of the security attributes as described above may be possible only in the security mode, and not in the non-security mode. The secure mode hardware can operate in the secure mode, and the non-secure mode hardware can operate in the non-secure mode. Depending on embodiments, a piece of hardware may operate in both the secure mode and the non-secure mode.

제1 내부 메모리(222) 및 제2 내부 메모리(224)는 도 3의 메모리(115)에 대응할 수 있다. 예를 들어, 제1 내부 메모리(222)는 적어도 하나의 비휘발성 메모리를 포함할 수 있고, 제2 내부 메모리(224)는 적어도 하나의 휘발성 메모리를 포함할 수 있다.The first internal memory 222 and the second internal memory 224 may correspond to the memory 115 of FIG. 3 . For example, the first internal memory 222 may include at least one non-volatile memory, and the second internal memory 224 may include at least one volatile memory.

메모리 어댑터(226)는 보호 컨트롤러(250)와 연동하여 제2 내부 메모리(224)의 저장 영역을 보안 영역 및 비보안 영역으로 구분할 수 있다. 상기와 같은 저장 영역의 구분은 상기 보안 모드에서만 가능할 수 있다.The memory adapter 226 may divide the storage area of the second internal memory 224 into a secure area and a non-secure area in association with the protection controller 250 . The division of the storage area as described above may be possible only in the security mode.

제1 인터페이스부(232) 및 제2 인터페이스부(234)는 각각 도 3의 입출력 인터페이스부(119) 및 통신 인터페이스부(117)에 대응할 수 있다. 예를 들어, 제1 인터페이스부(232)는 외부의 생체 정보 추출기(242)와 시스템 온 칩(201)을 연결하여 시스템 온 칩(201)이 생체 정보를 수신하도록 할 수 있고, 제2 인터페이스부(234)는 외부의 통신 프로세서(244)와 시스템 온 칩(201)을 연결하여 시스템 온 칩(201)이 무선 통신을 수행하도록 할 수 있다.The first interface unit 232 and the second interface unit 234 may correspond to the input/output interface unit 119 and the communication interface unit 117 of FIG. 3 , respectively. For example, the first interface unit 232 may connect the external biometric information extractor 242 and the system on chip 201 so that the system on chip 201 receives the biometric information, and the second interface unit 234 may connect the external communication processor 244 and the system on chip 201 so that the system on chip 201 performs wireless communication.

방화벽들(236, 238)은 하드웨어들의 접근 가능한 어드레스 공간을 제어할 수 있으며, 상기 보안 모드에서의 정보가 상기 비보안 모드로 유출되는 것을 방지할 수 있다. 예를 들어, 제1 방화벽(236)은 제1 인터페이스부(232)의 접근 가능한 어드레스 공간을 제어할 수 있고, 시스템 온 칩(201)이 생체 정보 추출기(242)와 데이터를 주고받는 경우에 보안 영역 및 비보안 영역 중 적어도 일부에 대한 대한 접근 권한을 제한할 수 있다. 제2 방화벽(238)은 제2 인터페이스부(234)의 접근 가능한 어드레스 공간을 제어할 수 있고, 시스템 온 칩(201)이 통신 프로세서(244)와 데이터를 주고받는 경우에 보안 영역 및 비보안 영역 중 적어도 일부에 대한 대한 접근 권한을 제한할 수 있다.Firewalls 236 and 238 can control the accessible address space of hardware and can prevent information in the secure mode from leaking into the non-secure mode. For example, the first firewall 236 may control an accessible address space of the first interface unit 232, and security is provided when the system on chip 201 exchanges data with the biometric information extractor 242. Access to at least some of the area and non-security area may be restricted. The second firewall 238 may control an accessible address space of the second interface unit 234, and in the case where the system on chip 201 exchanges data with the communication processor 244, a security area and a non-security area are selected. You can restrict access to at least some of them.

제1 메모리 컨트롤러(262)는 외부의 휘발성 메모리(260)의 동작을 제어할 수 있다. 예를 들어, 휘발성 메모리(260)는 DRAM(dynamic random access memory), SRAM(static random access memory) 등과 같은 적어도 하나의 휘발성 메모리를 포함할 수 있다.The first memory controller 262 may control the operation of the external volatile memory 260 . For example, the volatile memory 260 may include at least one volatile memory such as dynamic random access memory (DRAM) or static random access memory (SRAM).

어드레스 공간 보호기(264)는 휘발성 메모리(260)의 저장 영역을 보안 영역 및 비보안 영역으로 구분할 수 있고, 휘발성 메모리(260)에 대한 하드웨어들의 접근을 통제할 수 있다.The address space protector 264 can divide the storage area of the volatile memory 260 into a secure area and a non-secure area, and can control access of hardware to the volatile memory 260 .

제2 메모리 컨트롤러(272)는 외부의 비휘발성 메모리(270)의 동작을 제어할 수 있다. 예를 들어, 비휘발성 메모리(270)는 EEPROM(electrically erasable programmable read-only memory), 플래시 메모리(flash memory), PRAM(phase change random access memory), RRAM(resistance random access memory), NFGM(nano floating gate memory), PoRAM(polymer random access memory), MRAM(magnetic random access memory), FRAM(ferroelectric random access memory) 등과 같은 적어도 하나의 비휘발성 메모리를 포함할 수 있으며, 임베디드 멀티미디어 카드(embedded multimedia card, eMMC), 유니버셜 플래시 스토리지(universal flash storage, UFS) 등과 같이 구현될 수 있다.The second memory controller 272 may control the operation of the external non-volatile memory 270 . For example, the nonvolatile memory 270 includes electrically erasable programmable read-only memory (EEPROM), flash memory, phase change random access memory (PRAM), resistance random access memory (RRAM), nano floating memory (NFGM), and the like. gate memory), polymer random access memory (PoRAM), magnetic random access memory (MRAM), ferroelectric random access memory (FRAM), and the like, and an embedded multimedia card (eMMC). ), universal flash storage (UFS), and the like.

제3 인터페이스부(282)는 외부의 임베디드 보안 장치(280)와 시스템 온 칩(201)을 연결하여 시스템 온 칩(201)이 임베디드 보안 장치(280)와 보안 데이터를 주고받도록 할 수 있다. 시스템 온 칩(201)은 상기 보안 모드에서 임베디드 보안 장치(280)를 이용하여 금융 거래, 상품 구매 등과 같은 다양한 보안 어플리케이션을 실행할 수 있다.The third interface unit 282 may connect the external embedded security device 280 and the system on chip 201 so that the system on chip 201 exchanges security data with the embedded security device 280 . The system on chip 201 may execute various security applications such as financial transactions and product purchases using the embedded security device 280 in the security mode.

시스템 온 칩(201) 및 장치(200)는 본 발명의 실시예들에 따라 상기 보안 모드에서 동작할 수 있다.System on chip 201 and device 200 may operate in the secure mode according to embodiments of the present invention.

일 실시예에서, 도 3 및 4를 참조하여 상술한 상기 보안 모드에서의 동작은 트러스트존(TrustZone) 기술에 기초하여 실행 및 구현될 수 있다.In one embodiment, the operation in the secure mode described above with reference to FIGS. 3 and 4 may be executed and implemented based on TrustZone technology.

한편, 도 4를 참조하여 시스템 온 칩(201)의 인터페이스의 예로서 MIPI, 무선 통신 및 eSE 인터페이스를 설명하였으나, 시스템 온 칩(201)의 인터페이스는 이에 한정되지 않을 수 있다. 예를 들어, 시스템 온 칩(201)은 범용 직렬 버스(universal serial bus) 통신, 이더넷(Ethernet) 통신, 근거리 무선 통신(near field communication, NFC), 무선 식별(radio frequency identification, RFID) 통신, GSM, GPRS, WCDMA, HSxPA 등의 통신을 지원할 수 있는 인터페이스를 더 포함할 수 있다.Meanwhile, with reference to FIG. 4 , MIPI, wireless communication, and eSE interfaces have been described as examples of interfaces of the system-on-chip 201, but the interface of the system-on-chip 201 may not be limited thereto. For example, the system on chip 201 may include universal serial bus communication, Ethernet communication, near field communication (NFC), radio frequency identification (RFID) communication, GSM , GPRS, WCDMA, may further include an interface capable of supporting communication such as HSxPA.

한편, 상세하게 도시하지는 않았으나, 본 발명의 실시예들에 따른 인증 시스템에 포함되는 인증 서버 또한 도 3 및 4를 참조하여 상술한 장치와 유사하게 구현될 수 있다. 예를 들어, 인증 서버는 프로세서, 메모리, 인터페이스부 등을 포함할 수 있고, 보안 운영 체제에 기초하여 보안 모드로 동작하거나 비보안 운영 체제에 기초하여 비보안 모드로 동작할 수 있다.Meanwhile, although not shown in detail, the authentication server included in the authentication system according to the embodiments of the present invention may also be implemented similarly to the device described above with reference to FIGS. 3 and 4 . For example, the authentication server may include a processor, a memory, an interface unit, and the like, and may operate in a secure mode based on a secure operating system or in a non-secure mode based on a non-secure operating system.

도 5a 및 5b는 본 발명의 실시예들에 따른 인증 시스템에 포함되는 장치의 동작을 설명하기 위한 도면들이다.5A and 5B are diagrams for explaining the operation of a device included in an authentication system according to embodiments of the present invention.

도 3, 5a 및 5b를 참조하면, 장치(100)에 포함되는 생체 정보 추출기(121)를 이용하여 등록 대상 개인 정보(X) 및 인증 대상 개인 정보(Y)를 획득하는 동작을 예시하고 있다. 예를 들어, 등록 대상 개인 정보(X) 및 인증 대상 개인 정보(Y)는 사용자의 지문 정보를 포함할 수 있다.Referring to FIGS. 3, 5A and 5B , an operation of acquiring personal information to be registered (X) and personal information to be authenticated (Y) using the biometric information extractor 121 included in the device 100 is illustrated. For example, the personal information to be registered (X) and the personal information to be authenticated (Y) may include user's fingerprint information.

도 5a에 도시된 것처럼, 개인 정보 등록 절차를 수행하는 경우에, 생체 정보 추출기(121)는 지문 인식 윈도우(123)를 통해 사용자의 손가락(125)으로부터 등록 대상 개인 정보(X)를 획득할 수 있다. 예를 들어, 등록 대상 개인 정보(X)는 사용자의 손가락(125)에 포함되는 지문에 대한 제1 영상 신호 또는 제1 지문 이미지를 획득할 수 있다.As shown in FIG. 5A , in the case of performing the personal information registration procedure, the biometric information extractor 121 may acquire the personal information (X) to be registered from the user's finger 125 through the fingerprint recognition window 123. there is. For example, a first video signal or a first fingerprint image of a fingerprint included in the user's finger 125 may be obtained as the personal information (X) to be registered.

도 5b에 도시된 것처럼, 개인 정보 인증 절차를 수행하는 경우에, 생체 정보 추출기(121)는 지문 인식 윈도우(123)를 통해 사용자의 손가락(127)으로부터 인증 대상 개인 정보(Y)를 획득할 수 있다. 예를 들어, 인증 대상 개인 정보(Y)는 사용자의 손가락(127)에 포함되는 지문에 대한 제2 영상 신호 또는 제2 지문 이미지를 획득할 수 있다.As shown in FIG. 5B , in the case of performing the personal information authentication procedure, the biometric information extractor 121 may obtain authentication target personal information Y from the user's finger 127 through the fingerprint recognition window 123. there is. For example, a second video signal or a second fingerprint image of a fingerprint included in the user's finger 127 may be obtained as the personal information Y to be authenticated.

일 실시예에서, 생체 정보로서 추출된 등록 대상 개인 정보(X) 및 인증 대상 개인 정보(Y)는 각각 해당 영역별로 구체적인 크기로 구분된 값으로 표현될 수 있다. 예를 들어, 등록 대상 개인 정보(X)는 복수의 값들(x1, x2, ..., xk, xk+1, ..., xl)(k는 2보다 큰 자연수, l는 k+1보다 큰 자연수)을 포함하고, 인증 대상 개인 정보(Y)는 복수의 값들(y1, y2, ..., yk, yk+1, ..., yl)을 포함할 수 있다. 예를 들어, 복수의 값들(x1~xl, y1~yl)은 지문 이미지에 포함되는 지문의 융(ridge)과 골(valley)에 대응하는 정보를 포함할 수 있다.In one embodiment, the personal information to be registered (X) and the personal information to be authenticated (Y) extracted as biometric information may be expressed as values divided into specific sizes for each corresponding area. For example, personal information (X) to be registered includes a plurality of values (x 1 , x 2 , ..., x k , x k+1 , ..., x l ) (k is a natural number greater than 2, l is a natural number greater than k+1), and the personal information (Y) to be authenticated includes a plurality of values (y 1 , y 2 , ..., y k , y k+1 , ..., y l ) can include For example, the plurality of values (x 1 to x l and y 1 to y l ) may include information corresponding to ridges and valleys of a fingerprint included in a fingerprint image.

일 실시예에서, 등록 대상 개인 정보(X) 및 인증 대상 개인 정보(Y)는 각각 하기의 [수학식 1] 및 [수학식 2]와 같이 표현될 수 있다.In an embodiment, personal information (X) to be registered and personal information (Y) to be authenticated may be expressed as [Equation 1] and [Equation 2], respectively.

[수학식 1][Equation 1]

Figure pat00001
Figure pat00001

[수학식 2][Equation 2]

Figure pat00002
Figure pat00002

다른 실시예에서, 등록 대상 개인 정보(X) 및 인증 대상 개인 정보(Y)는 각각 하기의 [수학식 3] 및 [수학식 4]와 같이 표현될 수 있다.In another embodiment, personal information (X) to be registered and personal information (Y) to be authenticated may be expressed as [Equation 3] and [Equation 4], respectively.

[수학식 3][Equation 3]

Figure pat00003
Figure pat00003

[수학식 4][Equation 4]

Figure pat00004
Figure pat00004

도 6은 도 1의 개인 정보 등록 절차를 수행하는 단계의 일 예를 나타내는 순서도이다. 도 7a, 7b, 7c, 7d 및 7e는 도 6의 동작을 설명하기 위한 도면들이다.6 is a flowchart illustrating an example of a step of performing the personal information registration procedure of FIG. 1 . 7a, 7b, 7c, 7d, and 7e are diagrams for explaining the operation of FIG. 6 .

도 7a, 7b, 7c, 7d 및 7e 및 이후의 도면들에서, 장치(20) 및 인증 서버(50)는 각각 도 2의 장치(20) 및 인증 서버(50)에 대응할 수 있다. 장치(20)에 포함되는 생체 정보 추출기(21) 및 프로세서(23)는 각각 도 3의 생체 정보 추출기(121) 및 프로세서(113)에 대응할 수 있다. 도 3 및 4를 참조하여 상술한 것처럼, 프로세서(23)는 보안 모드 또는 비보안 모드에서 동작할 수 있다. 인증 서버(50)에 포함되는 보안 메모리(51) 및 보안 프로세서(53)는 각각 보안 모드에서 동작하는 메모리 및 프로세서를 나타낼 수 있다.In FIGS. 7a , 7b , 7c , 7d and 7e and subsequent drawings, device 20 and authentication server 50 may correspond to device 20 and authentication server 50 of FIG. 2 , respectively. The biometric information extractor 21 and processor 23 included in the device 20 may correspond to the biometric information extractor 121 and processor 113 of FIG. 3 , respectively. As described above with reference to Figures 3 and 4, the processor 23 can operate in a secure mode or a non-secure mode. The secure memory 51 and the secure processor 53 included in the authentication server 50 may each represent a memory and a processor operating in a secure mode.

도 1, 6, 7a, 7b, 7c, 7d 및 7e를 참조하면, 상기 개인 정보 등록 절차를 수행하는데 있어서(단계 S100), 장치(20)에서(즉, 장치(20)에 포함된 프로세서(23)는), 마스터 개인 키(MSK) 및 마스터 공개 키(MPK)를 생성할 수 있다(단계 S110). 예를 들어, 마스터 개인 키(MSK) 및 마스터 공개 키(MPK)는 하기의 [수학식 5], [수학식 6] 및 [수학식 7]에 기초하여 획득될 수 있다.1, 6, 7a, 7b, 7c, 7d and 7e, in performing the personal information registration procedure (step S100), in the device 20 (ie, the processor 23 included in the device 20) ) may generate a master private key (MSK) and a master public key (MPK) (step S110). For example, the master private key (MSK) and the master public key (MPK) may be obtained based on [Equation 5], [Equation 6], and [Equation 7] below.

[수학식 5][Equation 5]

Figure pat00005
Figure pat00005

[수학식 6][Equation 6]

Figure pat00006
Figure pat00006

[수학식 7][Equation 7]

Figure pat00007
Figure pat00007

이후에, 장치(20)에서(즉, 장치(20)에 포함된 프로세서(23)는), 생체 정보 추출기(21)로부터 등록 대상 개인 정보(X)를 획득할 수 있다. 이후에, 장치(20)에서(즉, 장치(20)에 포함된 프로세서(23)는), 등록 대상 개인 정보(X), 마스터 개인 키(MSK) 및 마스터 공개 키(MPK)를 이용하여 개인 키(SK<X>) 및 공개 키(PKX)를 생성할 수 있다(단계 S120). 예를 들어, 개인 키(SK<X>) 및 공개 키(PKX)는 하기의 [수학식 8], [수학식 9] 및 [수학식 10]에 기초하여 획득될 수 있다.Thereafter, in the device 20 (ie, the processor 23 included in the device 20), the personal information X to be registered may be obtained from the biometric information extractor 21. Then, in the device 20 (ie, the processor 23 included in the device 20), the personal information to be registered (X), the master private key (MSK) and the master public key (MPK) are used to A key (SK <X> ) and a public key (PK X ) may be generated (step S120). For example, the private key (SK <X> ) and the public key (PK X ) may be obtained based on [Equation 8], [Equation 9], and [Equation 10] below.

[수학식 8][Equation 8]

Figure pat00008
Figure pat00008

[수학식 9][Equation 9]

Figure pat00009
Figure pat00009

[수학식 10][Equation 10]

Figure pat00010
Figure pat00010

[수학식 8] 및 [수학식 9]에서, 기호 <>는 내적(inner product)을 나타낸다. 다시 말하면, 개인 키(SK<X>)는 내적을 연산하여 획득될 수 있다.In [Equation 8] and [Equation 9], the symbol <> represents an inner product. In other words, the private key SK <X> can be obtained by computing a dot product.

이후에, 장치(20)에서(즉, 장치(20)에 포함된 프로세서(23)는), 등록 대상 개인 정보(X)를 이용하여 제1 정보(XA)를 생성할 수 있다(단계 S130). 예를 들어, 제1 정보(XA)는 하기의 [수학식 11]에 기초하여 획득될 수 있다.Subsequently, in the device 20 (ie, the processor 23 included in the device 20), first information X A may be generated using the personal information X to be registered (step S130). ). For example, the first information (X A ) may be obtained based on [Equation 11] below.

[수학식 11][Equation 11]

Figure pat00011
Figure pat00011

일 실시예에서, 제1 정보(XA)는 내적을 연산하여 획득될 수 있다. 본 발명의 실시예들에 따르면, 공개 키(PKX) 이외에 단계 S200의 상기 개인 정보 인증 절차를 수행하는데 이용되는 제1 정보(XA)를 추가적으로 생성할 수 있다.In one embodiment, the first information (X A ) may be obtained by calculating a dot product. According to embodiments of the present invention, in addition to the public key (PK X ), first information (X A ) used to perform the personal information authentication procedure of step S200 may be additionally generated.

이후에, 장치(20)에서(즉, 장치(20)에 포함된 프로세서(23)는), 개인 키(SK<X>) 및 제1 정보(XA)를 인증 서버(50)로 전송할 수 있다(단계 S140). 개인 키(SK<X>) 및 제1 정보(XA)를 인증 서버(50)의 보안 영역(즉, 보안 메모리(51))에 저장할 수 있다(단계 S150).After that, the device 20 (that is, the processor 23 included in the device 20) may transmit the private key (SK <X> ) and the first information (X A ) to the authentication server 50. Yes (step S140). The private key (SK <X> ) and the first information (X A ) may be stored in a secure area (ie, secure memory 51) of the authentication server 50 (step S150).

실시예에 따라서, 단계 S110, S120 및 S130의 일부 또는 전부는 장치(20)의 상기 보안 모드에서 수행될 수도 있고 상기 비보안 모드에서 수행될 수도 있다. 또한, 마스터 개인 키(MSK), 마스터 공개 키(MPK), 등록 대상 개인 정보(X), 개인 키(SK<X>), 공개 키(PKX) 및 제1 정보(XA)의 일부 또는 전부는 장치(20)의 저장 영역(예를 들어, 보안 영역 또는 보안 메모리)에 저장될 수도 있다.Depending on embodiments, some or all of steps S110, S120 and S130 may be performed in the secure mode of the device 20 or in the non-secure mode. In addition , part or All may be stored in a storage area (eg, secure area or secure memory) of device 20 .

도 8은 도 1의 개인 정보 등록 절차를 수행하는 단계의 다른 예를 나타내는 순서도이다. 도 9는 도 8의 동작을 설명하기 위한 도면이다. 이하 도 6, 7a, 7b, 7c, 7d 및 7e와 중복되는 설명은 생략한다.8 is a flowchart illustrating another example of performing the personal information registration procedure of FIG. 1 . FIG. 9 is a diagram for explaining the operation of FIG. 8 . Descriptions overlapping those of FIGS. 6, 7a, 7b, 7c, 7d, and 7e will be omitted.

도 1, 8 및 9를 참조하면, 상기 개인 정보 등록 절차를 수행하는데 있어서(단계 S100), 단계 S110, S120, S130, S140 및 S150은 각각 도 6의 단계 S110, S120, S130, S140 및 S150과 실질적으로 동일할 수 있다.1, 8 and 9, in performing the personal information registration procedure (step S100), steps S110, S120, S130, S140 and S150 are respectively steps S110, S120, S130, S140 and S150 of FIG. may be substantially the same.

장치(20)에서 개인 키(SK<X>) 및 제1 정보(XA)를 인증 서버(50)로 전송한 이후에, 즉 단계 S140 이후에, 장치(20)에서 개인 키(SK<X>) 및 제1 정보(XA)를 삭제할 수 있다(단계 S145). 단계 S200의 상기 개인 정보 인증 절차(예를 들어, 도 12의 단계 S240의 인증 동작)는 인증 서버(50)에서 수행되며 개인 키(SK<X>) 및 제1 정보(XA)는 인증 서버(50)의 보안 영역(즉, 보안 메모리(51))에 안전하게 저장되어 있으므로, 장치(20)에서 불필요한 개인 키(SK<X>) 및 제1 정보(XA)를 삭제할 수 있다. 도 9에서, 삭제된 개인 키(SK<X>) 및 제1 정보(XA)를 점선으로 도시하였다.After the device 20 transmits the private key (SK <X> ) and the first information (X A ) to the authentication server 50, that is, after step S140, the device 20 transmits the private key (SK <X > ) and the first information (X A ) may be deleted (step S145). The personal information authentication process of step S200 (for example, the authentication operation of step S240 of FIG. 12) is performed in the authentication server 50, and the private key (SK <X> ) and the first information (X A ) are the authentication server Since they are safely stored in the secure area (ie, the secure memory 51) of (50), unnecessary private keys (SK <X> ) and first information (X A ) can be deleted from the device 20. In FIG. 9 , the deleted private key (SK <X> ) and the first information (X A ) are indicated by dotted lines.

일 실시예에서, 장치(20)에서 개인 키(SK<X>) 및 제1 정보(XA)는 물리적으로 소거될 수 있다. 상술한 것처럼, 개인 키(SK<X>) 및 제1 정보(XA)는 장치(20)의 저장 영역에 저장될 수 있으며, 개인 키(SK<X>) 및 제1 정보(XA)를 프로세서(23)에서 삭제할 뿐만 아니라 상기 저장 영역에서 물리적으로 소거함으로써, 장치(20) 내에서 개인 키(SK<X>) 및 제1 정보(XA)의 복원이 불가능하도록 할 수 있다. 예를 들어, 상기 저장 영역이 플래시 메모리와 같은 비휘발성 메모리에 포함되는 경우에, 소거 전압을 인가하는 소거 동작을 수행하여 개인 키(SK<X>) 및 제1 정보(XA)를 물리적으로 소거할 수 있다.In one embodiment, the private key (SK <X> ) and the first information (X A ) in the device 20 may be physically erased. As described above, the private key SK <X> and the first information X A may be stored in the storage area of the device 20, and the private key SK <X> and the first information X A By not only deleting from the processor 23 but also physically erasing it from the storage area, it is possible to make it impossible to restore the private key (SK <X> ) and the first information (X A ) in the device 20 . For example, when the storage area is included in a nonvolatile memory such as a flash memory, an erase operation of applying an erase voltage is performed to physically store the private key (SK <X> ) and the first information (X A ). can be erased

도 10은 도 1의 개인 정보 등록 절차를 수행하는 단계의 다른 예를 나타내는 순서도이다. 도 11은 도 10의 동작을 설명하기 위한 도면이다. 이하 도 6, 7a, 7b, 7c, 7d, 7e, 8 및 9와 중복되는 설명은 생략한다.10 is a flowchart illustrating another example of performing the personal information registration procedure of FIG. 1 . FIG. 11 is a diagram for explaining the operation of FIG. 10 . Descriptions overlapping those of FIGS. 6, 7a, 7b, 7c, 7d, 7e, 8, and 9 will be omitted.

도 1, 10 및 11을 참조하면, 상기 개인 정보 등록 절차를 수행하는데 있어서(단계 S100), 단계 S110, S120, S130, S140 및 S150은 각각 도 6의 단계 S110, S120, S130, S140 및 S150과 실질적으로 동일할 수 있다.1, 10 and 11, in performing the personal information registration procedure (step S100), steps S110, S120, S130, S140 and S150 are respectively steps S110, S120, S130, S140 and S150 of FIG. may be substantially the same.

장치(20)에서 개인 키(SK<X>), 공개 키(PKX) 및 제1 정보(XA)를 생성한 이후에, 즉 단계 S120 및 S130 이후에, 장치(20)에서 마스터 개인 키(MSK), 마스터 공개 키(MPK) 및 등록 대상 개인 정보(X)를 삭제할 수 있다(단계 S135). 마스터 개인 키(MSK), 마스터 공개 키(MPK) 및 등록 대상 개인 정보(X)는 단계 S200의 상기 개인 정보 인증 절차(예를 들어, 도 12의 단계 S240의 인증 동작)에서 이용되지 않으므로, 불필요한 마스터 개인 키(MSK), 마스터 공개 키(MPK) 및 등록 대상 개인 정보(X)를 장치(20)에서 삭제할 수 있다.After the device 20 generates the private key (SK <X> ), the public key (PK X ) and the first information (X A ), that is, after steps S120 and S130, the device 20 uses the master private key (MSK), master public key (MPK), and personal information (X) to be registered can be deleted (step S135). Since the master private key (MSK), master public key (MPK), and personal information (X) to be registered are not used in the personal information authentication procedure of step S200 (for example, the authentication operation of step S240 of FIG. 12), unnecessary The master private key (MSK), master public key (MPK), and personal information (X) to be registered may be deleted from the device 20 .

일 실시예에서, 장치(20)에서 마스터 개인 키(MSK), 마스터 공개 키(MPK) 및 등록 대상 개인 정보(X)는 물리적으로 소거될 수 있다.In one embodiment, the master private key (MSK), master public key (MPK), and personal information (X) subject to registration may be physically erased from the device 20 .

실시예에 따라서, 도 8의 단계 S145 및 도 10의 단계 S135가 모두 수행될 수도 있다.Depending on the embodiment, both step S145 of FIG. 8 and step S135 of FIG. 10 may be performed.

도 12는 도 1의 개인 정보 인증 절차를 수행하는 단계의 일 예를 나타내는 순서도이다. 도 13a, 13b, 13c, 13d 및 13e는 도 12의 동작을 설명하기 위한 도면들이다.12 is a flowchart illustrating an example of performing the personal information authentication procedure of FIG. 1 . 13a, 13b, 13c, 13d and 13e are diagrams for explaining the operation of FIG. 12 .

도 1, 12, 13a, 13b, 13c, 13d 및 13e를 참조하면, 상기 개인 정보 인증 절차를 수행하는데 있어서(단계 S200), 장치(20)에서(즉, 장치(20)에 포함된 프로세서(23)는), 생체 정보 추출기(21)로부터 인증 대상 개인 정보(Y)를 획득할 수 있다. 또한, 장치(20)에서(즉, 장치(20)에 포함된 프로세서(23)는), 상기 저장 영역에 저장된 공개 키(PKX)를 획득할 수 있다.1, 12, 13a, 13b, 13c, 13d and 13e, in performing the personal information authentication procedure (step S200), in the device 20 (ie, the processor 23 included in the device 20) )), it is possible to obtain the personal information (Y) to be authenticated from the biometric information extractor 21 . In addition, the device 20 (ie, the processor 23 included in the device 20) may obtain the public key (PK X ) stored in the storage area.

이후에, 장치(20)에서(즉, 장치(20)에 포함된 프로세서(23)는), 인증 대상 개인 정보(Y) 및 공개 키(PKX)를 이용하여 암호화된 암호문(CTY)을 생성할 수 있다(단계 S210). 예를 들어, 암호문(CTY)은 하기의 [수학식 12] 및 [수학식 13]에 기초하여 획득될 수 있다.Then, in the device 20 (ie, the processor 23 included in the device 20), the encrypted ciphertext (CT Y ) is generated using the personal information (Y) to be authenticated and the public key (PK X ). It can be created (step S210). For example, the cipher text (CT Y ) may be obtained based on [Equation 12] and [Equation 13] below.

[수학식 12][Equation 12]

Figure pat00012
Figure pat00012

[수학식 13][Equation 13]

Figure pat00013
Figure pat00013

이후에, 장치(20)에서(즉, 장치(20)에 포함된 프로세서(23)는), 인증 대상 개인 정보(Y)를 이용하여 제2 정보(YA)를 생성할 수 있다(단계 S220). 예를 들어, 제2 정보(YA)는 하기의 [수학식 14]에 기초하여 획득될 수 있다.Subsequently, in the device 20 (ie, the processor 23 included in the device 20), second information Y A may be generated using the personal information Y to be authenticated (step S220). ). For example, the second information (Y A ) may be obtained based on the following [Equation 14].

[수학식 14][Equation 14]

Figure pat00014
Figure pat00014

일 실시예에서, 제1 정보(XA)와 유사하게, 제2 정보(YA)는 내적을 연산하여 획득될 수 있다. 본 발명의 실시예들에 따르면, 암호문(CTY) 이외에 상기 개인 정보 인증 절차를 수행하는데 이용되는 제2 정보(YA)를 추가적으로 생성할 수 있다.In one embodiment, similar to the first information (X A ), the second information (Y A ) may be obtained by computing a dot product. According to embodiments of the present invention, second information (Y A ) used to perform the personal information authentication procedure may be additionally generated in addition to the encrypted text (CT Y ).

이후에, 장치(20)에서(즉, 장치(20)에 포함된 프로세서(23)는), 암호문(CTY) 및 제2 정보(YA)를 인증 서버(50)로 전송할 수 있다(단계 S230). 암호문(CTY) 및 제2 정보(YA)는 인증 서버(50)의 보안 프로세서(53)로 제공될 수 있다. 또한, 인증 서버(50)에서(즉, 인증 서버(50)에 포함된 보안 프로세서(53)는), 상기 보안 영역(즉, 보안 메모리(51))에 저장된 개인 키(SK<X>) 및 제1 정보(XA)를 획득할 수 있다.After that, the device 20 (ie, the processor 23 included in the device 20) may transmit the cipher text (CT Y ) and the second information (Y A ) to the authentication server 50 (step S230). The encrypted text (CT Y ) and the second information (Y A ) may be provided to the security processor 53 of the authentication server 50 . In addition, in the authentication server 50 (ie, the security processor 53 included in the authentication server 50), the private key (SK <X> ) stored in the secure area (ie, the secure memory 51) and The first information (X A ) may be obtained.

이후에, 인증 서버(50)에서(즉, 인증 서버(50)에 포함된 보안 프로세서(53)는), 개인 키(SK<X>), 제1 정보(XA), 암호문(CTY) 및 제2 정보(YA)를 이용하여 인증 대상 개인 정보(Y)에 대한 인증(AOP)을 수행할 수 있다(단계 S240). 인증 서버(50)에서(즉, 인증 서버(50)에 포함된 보안 프로세서(53)는), 인증(AOP)의 성공 또는 실패를 나타내는 인증 결과 신호(ARS)를 장치(20)로 전송할 수 있다.After that, in the authentication server 50 (ie, the security processor 53 included in the authentication server 50), the private key (SK <X> ), the first information (X A ), the ciphertext (CT Y ) And it is possible to perform authentication (AOP) on the personal information (Y) to be authenticated using the second information (Y A ) (step S240). The authentication server 50 (ie, the security processor 53 included in the authentication server 50) may transmit an authentication result signal (ARS) indicating success or failure of authentication (AOP) to the device 20. .

실시예에 따라서, 단계 S210 및 S220의 일부 또는 전부는 장치(20)의 상기 보안 모드에서 수행될 수도 있고 상기 비보안 모드에서 수행될 수도 있다. 또한, 인증 대상 개인 정보(Y), 암호문(CTY) 및 제2 정보(YA)의 일부 또는 전부는 장치(20)의 저장 영역(예를 들어, 보안 영역 또는 보안 메모리)에 저장될 수도 있다. 단계 S240은 인증 서버(50)의 상기 보안 모드에서 수행될 수 있다. 암호문(CTY) 및 제2 정보(YA)의 일부 또는 전부는 인증 서버(50)의 보안 메모리(51)에 저장될 수도 있다.Depending on the embodiment, some or all of steps S210 and S220 may be performed in the secure mode of the device 20 or in the non-secure mode. In addition, some or all of the personal information to be authenticated (Y), the password text (CT Y ), and the second information (Y A ) may be stored in a storage area (eg, a secure area or a secure memory) of the device 20. there is. Step S240 may be performed in the security mode of the authentication server 50 . Some or all of the encrypted text (CT Y ) and the second information (Y A ) may be stored in the secure memory 51 of the authentication server 50 .

도 14는 도 12의 인증 대상 개인 정보에 대한 인증을 수행하는 단계의 일 예를 나타내는 순서도이다.14 is a flowchart illustrating an example of a step of performing authentication on personal information to be authenticated in FIG. 12 .

도 12 및 14를 참조하면, 상기 인증 대상 개인 정보에 대한 상기 인증을 수행하는데 있어서(단계 S240), 등록 대상 개인 정보(X) 및 인증 대상 개인 정보(Y)의 유클리드 거리를 연산하여 등록 대상 개인 정보(X) 및 인증 대상 개인 정보(Y) 사이의 유사도(similarity)를 연산하고(단계 S241), 상기 유사도에 기초하여 상기 인증을 수행할 수 있다(단계 S243).12 and 14, in performing the authentication of the personal information to be authenticated (step S240), the Euclidean distance between the personal information to be registered (X) and the personal information to be authenticated (Y) is calculated to determine the individual to be registered. A similarity between the information (X) and the personal information to be authenticated (Y) may be calculated (step S241), and the authentication may be performed based on the similarity (step S243).

구체적으로, 상기 유클리드 거리는 하기의 [수학식 15]에 기초하여 획득될 수 있다. 이 때, 상기 인증은 하기의 [수학식 16]에 기초하여 획득될 수 있다.Specifically, the Euclidean distance may be obtained based on the following [Equation 15]. At this time, the authentication may be obtained based on the following [Equation 16].

[수학식 15][Equation 15]

Figure pat00015
Figure pat00015

[수학식 16][Equation 16]

Figure pat00016
Figure pat00016

상기 유클리드 거리가 0보다 크거나 같고 문턱 값(thr)보다 작은 경우에 상기 인증이 성공한 것으로 판단하고, 상기 유클리드 거리가 문턱 값(thr)보다 크거나 같은 경우에 상기 인증이 실패한 것으로 판단할 수 있다. 다만, 상기의 [수학식 15] 및 [수학식 16]에 기초하여 단계 S241 및 S243을 수행하는 경우에, 등록 대상 개인 정보(X) 및 인증 대상 개인 정보(Y)를 직접적으로 이용해야 한다.When the Euclidean distance is greater than or equal to 0 and less than a threshold value (thr), it is determined that the authentication is successful, and when the Euclidean distance is greater than or equal to the threshold value (thr), it is determined that the authentication has failed. . However, when steps S241 and S243 are performed based on [Equation 15] and [Equation 16], the personal information (X) to be registered and the personal information (Y) to be authenticated must be directly used.

본 발명의 실시예들에 따르면, 등록 대상 개인 정보(X) 및 인증 대상 개인 정보(Y)의 상기 유클리드 거리는, 등록 대상 개인 정보(X) 및 인증 대상 개인 정보(Y)를 노출하지 않고 연산될 수 있다.According to embodiments of the present invention, the Euclidean distance of personal information to be registered (X) and personal information to be authenticated (Y) can be calculated without exposing personal information to be registered (X) and personal information to be authenticated (Y). can

일 실시예에서, 등록 대상 개인 정보(X) 및 인증 대상 개인 정보(Y)의 상기 유클리드 거리는, 등록 대상 개인 정보(X) 및 인증 대상 개인 정보(Y)를 직접 이용하지 않고 개인 키(SK<X>), 제1 정보(XA), 암호문(CTY) 및 제2 정보(YA)만을 이용하여 연산될 수 있다. 예를 들어, 단계 S241 및 S243은 하기의 [수학식 17], [수학식 18], [수학식 19] 및 [수학식 20]에 기초하여 수행될 수 있다.In one embodiment, the Euclidean distance between the personal information to be registered (X) and the personal information to be authenticated (Y) is determined by the private key (SK <X> ), the first information (X A ), the cipher text (CT Y ), and the second information (Y A ). For example, steps S241 and S243 may be performed based on [Equation 17], [Equation 18], [Equation 19], and [Equation 20] below.

[수학식 17][Equation 17]

Figure pat00017
Figure pat00017

[수학식 18][Equation 18]

Figure pat00018
Figure pat00018

[수학식 19][Equation 19]

Figure pat00019
Figure pat00019

[수학식 20][Equation 20]

Figure pat00020
Figure pat00020

다시 말하면, 등록 대상 개인 정보(X) 및 인증 대상 개인 정보(Y)를 직접 이용하여 획득된 유클리드 거리(ED(X,Y))와 문턱 값(thr)을 직접 비교하는 대신에, 개인 키(SK<X>), 제1 정보(XA), 암호문(CTY) 및 제2 정보(YA)를 이용하여 획득된 g<X-Y,X-Y>가 g0, g1, g2, ..., gthr-1 중 어느 하나에 해당하는지를 판단함으로써, 상기 인증을 수행할 수 있다. 예를 들어, 문턱 값(thr)은 실시예에 따라서 다양하게 결정될 수 있다.In other words, instead of directly comparing the Euclidean distance (ED(X,Y)) obtained by directly using the personal information to be registered (X) and the personal information to be authenticated (Y) and the threshold value (thr), the private key ( SK <X> ), g <XY,XY> obtained using the first information (X A ), the cipher text (CT Y ), and the second information (Y A ) is g 0 , g 1 , g 2 , .. ., g thr-1, it is possible to perform the authentication by determining whether. For example, the threshold value thr may be determined in various ways according to embodiments.

본 발명의 실시예들에 따르면, 등록 대상 개인 정보(X) 및 인증 대상 개인 정보(Y)를 직접 이용하지 않고 개인 키(SK<X>), 제1 정보(XA), 암호문(CTY) 및 제2 정보(YA)만을 이용하여 상기 인증을 수행함으로써, 등록 대상 개인 정보(X) 및 인증 대상 개인 정보(Y)의 노출 없이 보다 안전하고 효과적으로 개인 인증을 수행할 수 있다.According to the embodiments of the present invention, the private key (SK <X> ), the first information (X A ), and the cipher text (CT Y ) without directly using the personal information (X) to be registered and the personal information (Y ) to be certified. ) and the second information (Y A ), personal authentication can be performed more safely and effectively without exposing personal information (X) to be registered and personal information (Y) to be authenticated.

도 15는 도 1의 개인 정보 인증 절차를 수행하는 단계의 다른 예를 나타내는 순서도이다. 도 16은 도 15의 동작을 설명하기 위한 도면이다. 이하 도 8, 9, 12, 13a, 13b, 13c, 13d 및 13e와 중복되는 설명은 생략한다.15 is a flowchart illustrating another example of performing the personal information authentication procedure of FIG. 1 . FIG. 16 is a diagram for explaining the operation of FIG. 15 . Descriptions overlapping those of FIGS. 8, 9, 12, 13a, 13b, 13c, 13d, and 13e will be omitted.

도 1, 15 및 16을 참조하면, 상기 개인 정보 인증 절차를 수행하는데 있어서(단계 S200), 단계 S210, S220, S230 및 S240은 각각 도 12의 단계 S210, S220, S230 및 S240과 실질적으로 동일할 수 있다.1, 15 and 16, in performing the personal information authentication procedure (step S200), steps S210, S220, S230 and S240 may be substantially the same as steps S210, S220, S230 and S240 of FIG. 12, respectively. can

장치(20)에서 암호문(CTY) 및 제2 정보(YA)를 인증 서버(50)로 전송한 이후에, 즉 단계 S230 이후에, 장치(20)에서 암호문(CTY) 및 제2 정보(YA)를 삭제할 수 있다(단계 S235). 단계 S240의 상기 인증 동작은 인증 서버(50)에서 수행되므로, 장치(20)에서 불필요한 암호문(CTY) 및 제2 정보(YA)를 삭제할 수 있다.After the device 20 transmits the cipher text (CT Y ) and the second information (Y A ) to the authentication server 50, that is, after step S230, the device 20 transmits the cipher text (CT Y ) and the second information (Y A ) can be deleted (step S235). Since the authentication operation of step S240 is performed in the authentication server 50, the device 20 may delete unnecessary cipher text (CT Y ) and second information (Y A ).

일 실시예에서, 장치(20)에서 암호문(CTY) 및 제2 정보(YA)는 물리적으로 소거될 수 있다.In one embodiment, the ciphertext (CT Y ) and the second information (Y A ) may be physically erased in the device 20 .

도 17은 도 1의 개인 정보 인증 절차를 수행하는 단계의 다른 예를 나타내는 순서도이다. 도 18은 도 17의 동작을 설명하기 위한 도면이다. 이하 도 8, 9, 12, 13a, 13b, 13c, 13d 및 13e와 중복되는 설명은 생략한다.17 is a flowchart illustrating another example of performing the personal information authentication procedure of FIG. 1 . FIG. 18 is a diagram for explaining the operation of FIG. 17 . Descriptions overlapping those of FIGS. 8, 9, 12, 13a, 13b, 13c, 13d, and 13e will be omitted.

도 1, 17 및 18을 참조하면, 상기 개인 정보 인증 절차를 수행하는데 있어서(단계 S200), 단계 S210, S220, S230 및 S240은 각각 도 12의 단계 S210, S220, S230 및 S240과 실질적으로 동일할 수 있다.1, 17 and 18, in performing the personal information authentication procedure (step S200), steps S210, S220, S230 and S240 may be substantially the same as steps S210, S220, S230 and S240 of FIG. 12, respectively. can

인증 서버(50)에서 인증 대상 개인 정보(Y)에 대한 상기 인증을 수행한 이후에, 즉 단계 S240 이후에, 인증 서버(50)에서 암호문(CTY) 및 제2 정보(YA)를 삭제할 수 있다(단계 S245). 단계 S240의 상기 인증 동작이 수행된 이후에 암호문(CTY) 및 제2 정보(YA)는 더 이상 필요하지 않으므로, 불필요한 암호문(CTY) 및 제2 정보(YA)를 인증 서버(50)에서 삭제할 수 있다.After the authentication server 50 performs the authentication of the personal information (Y) to be authenticated, that is, after step S240, the authentication server 50 deletes the ciphertext (CT Y ) and the second information (Y A ). It can (step S245). Since the cipher text (CT Y ) and the second information (Y A ) are no longer needed after the authentication operation of step S240 is performed, the unnecessary cipher text (CT Y ) and the second information (Y A ) are transferred to the authentication server 50 ) can be deleted.

일 실시예에서, 인증 서버(50)에서 암호문(CTY) 및 제2 정보(YA)는 물리적으로 소거될 수 있다.In one embodiment, the cipher text (CT Y ) and the second information (Y A ) may be physically erased in the authentication server 50 .

도 19는 도 1의 개인 정보 인증 절차를 수행하는 단계의 다른 예를 나타내는 순서도이다. 도 20은 도 19의 동작을 설명하기 위한 도면이다. 이하 도 8, 9, 12, 13a, 13b, 13c, 13d 및 13e와 중복되는 설명은 생략한다.19 is a flowchart illustrating another example of performing the personal information authentication procedure of FIG. 1 . FIG. 20 is a diagram for explaining the operation of FIG. 19 . Descriptions overlapping those of FIGS. 8, 9, 12, 13a, 13b, 13c, 13d, and 13e will be omitted.

도 1, 19 및 20을 참조하면, 상기 개인 정보 인증 절차를 수행하는데 있어서(단계 S200), 단계 S210, S220, S230 및 S240은 각각 도 12의 단계 S210, S220, S230 및 S240과 실질적으로 동일할 수 있다.1, 19 and 20, in performing the personal information authentication procedure (step S200), steps S210, S220, S230 and S240 may be substantially the same as steps S210, S220, S230 and S240 of FIG. 12, respectively. can

장치(20)에서 암호문(CTY) 및 제2 정보(YA)를 생성한 이후에, 즉 단계 S210 및 S220 이후에, 장치(20)에서 인증 대상 개인 정보(Y)를 삭제할 수 있다(단계 S225). 인증 대상 개인 정보(Y)는 단계 S240의 상기 인증 동작에서 이용되지 않으므로, 불필요한 인증 대상 개인 정보(Y)를 장치(20)에서 삭제할 수 있다.After generating the encryption text (CT Y ) and the second information (Y A ) in the device 20, that is, after steps S210 and S220, the device 20 may delete the personal information (Y) to be authenticated (step S225). Since the personal information (Y) to be authenticated is not used in the authentication operation of step S240, unnecessary personal information (Y) to be authenticated may be deleted from the device 20.

일 실시예에서, 장치(20)에서 인증 대상 개인 정보(Y)는 물리적으로 소거될 수 있다.In one embodiment, the personal information Y to be authenticated in the device 20 may be physically erased.

실시예에 따라서, 도 15의 단계 S235, 도 17의 단계 S245 및 도 19의 단계 S225 중에서 2개 또는 3개 모두가 수행될 수도 있다.Depending on the embodiment, two or three of steps S235 of FIG. 15 , step S245 of FIG. 17 , and step S225 of FIG. 19 may be performed.

도 21은 본 발명의 실시예들에 따른 인증 시스템을 나타내는 블록도이다.21 is a block diagram illustrating an authentication system according to embodiments of the present invention.

도 21을 참조하면, 인증 시스템(12)은 장치(30)를 포함한다. 인증 시스템(12)은 인증 서버 없이 장치(30)만을 포함할 수 있다.Referring to FIG. 21 , authentication system 12 includes device 30 . Authentication system 12 may include only device 30 without an authentication server.

장치(30)는 사용자가 소유하는 개인 장치이며, 등록 대상 개인 정보를 입력 받아 개인 정보 등록 절차를 수행하고, 상기 개인 정보 등록 절차의 수행 결과 생성된 키를 저장하고, 인증 대상 개인 정보를 입력 받아 개인 정보 인증 절차를 수행하기 위한 정보를 생성하며, 상기 정보 및 상기 키를 이용하여 상기 개인 정보 인증 절차를 수행할 수 있다.The device 30 is a personal device owned by a user, receives personal information to be registered, performs a personal information registration procedure, stores a key generated as a result of performing the personal information registration procedure, and receives personal information to be authenticated. Information for performing a personal information authentication procedure may be generated, and the personal information authentication procedure may be performed using the information and the key.

장치(30)는 도 2의 장치(20)와 유사하며, 도 3 및 4를 참조하여 상술한 것과 유사하게 구현될 수 있다.Device 30 is similar to device 20 of FIG. 2 and may be implemented similarly to that described above with reference to FIGS. 3 and 4 .

도 22는 도 1의 개인 정보 등록 절차를 수행하는 단계의 일 예를 나타내는 순서도이다. 도 23a, 23b, 23c, 23d 및 23e는 도 22의 동작을 설명하기 위한 도면들이다. 이하 도 6, 7a, 7b, 7c, 7d 및 7e와 중복되는 설명은 생략한다.22 is a flowchart illustrating an example of performing the personal information registration procedure of FIG. 1 . 23a, 23b, 23c, 23d, and 23e are diagrams for explaining the operation of FIG. 22 . Descriptions overlapping those of FIGS. 6, 7a, 7b, 7c, 7d, and 7e will be omitted.

도 23a, 23b, 23c, 23d 및 23e 및 이후의 도면들에서, 장치(30)는 도 21의 장치(30)에 대응할 수 있다. 장치(30)에 포함되는 생체 정보 추출기(31), 프로세서(33) 및 보안 메모리(35)는 각각 도 3의 생체 정보 추출기(121), 프로세서(113) 및 메모리(115)에 대응할 수 있다. 프로세서(33)는 보안 모드 또는 비보안 모드에서 동작할 수 있다. 보안 메모리(35)는 보안 모드에서 동작하는 메모리를 나타낼 수 있다.In FIGS. 23A, 23B, 23C, 23D and 23E and subsequent figures, device 30 may correspond to device 30 of FIG. 21 . The biometric information extractor 31, processor 33, and secure memory 35 included in the device 30 may correspond to the biometric information extractor 121, processor 113, and memory 115 of FIG. 3, respectively. The processor 33 may operate in a secure mode or a non-secure mode. Secure memory 35 may represent memory operating in a secure mode.

도 1, 22, 23a, 23b, 23c, 23d 및 23e를 참조하면, 상기 개인 정보 등록 절차를 수행하는데 있어서(단계 S100), 장치(30)에서(즉, 장치(30)에 포함된 프로세서(33)는), 마스터 개인 키(MSK) 및 마스터 공개 키(MPK)를 생성할 수 있다(단계 S110).1, 22, 23a, 23b, 23c, 23d and 23e, in performing the personal information registration procedure (step S100), in the device 30 (ie, the processor 33 included in the device 30) ) may generate a master private key (MSK) and a master public key (MPK) (step S110).

이후에, 장치(30)에서(즉, 장치(30)에 포함된 프로세서(33)는), 생체 정보 추출기(31)로부터 등록 대상 개인 정보(X)를 획득할 수 있다. 이후에, 장치(30)에서(즉, 장치(30)에 포함된 프로세서(33)는), 등록 대상 개인 정보(X), 마스터 개인 키(MSK) 및 마스터 공개 키(MPK)를 이용하여 개인 키(SK<X>) 및 공개 키(PKX)를 생성할 수 있다(단계 S120).Thereafter, in the device 30 (ie, the processor 33 included in the device 30), the personal information X to be registered may be obtained from the biometric information extractor 31. After that, in the device 30 (ie, the processor 33 included in the device 30), the personal information (X) to be registered, the master private key (MSK) and the master public key (MPK) are used to A key (SK <X> ) and a public key (PK X ) may be generated (step S120).

이후에, 장치(30)에서(즉, 장치(30)에 포함된 프로세서(33)는), 등록 대상 개인 정보(X)를 이용하여 제1 정보(XA)를 생성할 수 있다(단계 S130).Subsequently, in the device 30 (ie, the processor 33 included in the device 30), first information X A may be generated using the personal information X to be registered (step S130). ).

이후에, 개인 키(SK<X>) 및 제1 정보(XA)를 장치(30)의 보안 영역(즉, 보안 메모리(35))에 저장할 수 있다(단계 S150a).Thereafter, the private key (SK <X> ) and the first information (X A ) may be stored in a secure area (ie, secure memory 35) of the device 30 (step S150a).

단계 S110, S120 및 S130은 각각 도 6의 단계 S110, S120 및 S130과 실질적으로 동일하고, 단계 S150a는 도 6의 단계 S150과 유사할 수 있다.Steps S110, S120 and S130 are substantially the same as steps S110, S120 and S130 of FIG. 6, respectively, and step S150a may be similar to step S150 of FIG.

도 24는 도 1의 개인 정보 등록 절차를 수행하는 단계의 다른 예를 나타내는 순서도이다. 이하 도 10, 22, 23a, 23b, 23c, 23d 및 23e와 중복되는 설명은 생략한다.24 is a flowchart illustrating another example of performing the personal information registration procedure of FIG. 1 . Descriptions overlapping those of FIGS. 10, 22, 23a, 23b, 23c, 23d and 23e will be omitted.

도 1 및 24를 참조하면, 상기 개인 정보 등록 절차를 수행하는데 있어서(단계 S100), 단계 S110, S120, S130 및 S150a는 각각 도 22의 단계 S110, S120, S130 및 S150a와 실질적으로 동일할 수 있다.1 and 24, in performing the personal information registration procedure (step S100), steps S110, S120, S130 and S150a may be substantially the same as steps S110, S120, S130 and S150a of FIG. 22, respectively. .

장치(20)에서 개인 키(SK<X>), 공개 키(PKX) 및 제1 정보(XA)를 생성한 이후에, 즉 단계 S120 및 S130 이후에, 장치(20)에서 마스터 개인 키(MSK), 마스터 공개 키(MPK) 및 등록 대상 개인 정보(X)를 삭제할 수 있다(단계 S135). 단계 S135는 도 10의 단계 S135와 실질적으로 동일할 수 있다.After the device 20 generates the private key (SK <X> ), the public key (PK X ) and the first information (X A ), that is, after steps S120 and S130, the device 20 uses the master private key (MSK), master public key (MPK), and personal information (X) to be registered can be deleted (step S135). Step S135 may be substantially the same as step S135 of FIG. 10 .

도 25는 도 1의 개인 정보 인증 절차를 수행하는 단계의 일 예를 나타내는 순서도이다. 도 26a, 26b, 26c, 26d 및 26e는 도 25의 동작을 설명하기 위한 도면들이다. 이하 도 12, 13a, 13b, 13c, 13d 및 13e와 중복되는 설명은 생략한다.25 is a flowchart illustrating an example of performing the personal information authentication procedure of FIG. 1 . 26a, 26b, 26c, 26d and 26e are diagrams for explaining the operation of FIG. 25 . Descriptions overlapping those of FIGS. 12, 13a, 13b, 13c, 13d, and 13e will be omitted.

도 1, 25, 26a, 26b, 26c, 26d 및 26e를 참조하면, 상기 개인 정보 인증 절차를 수행하는데 있어서(단계 S200), 장치(30)에서(즉, 장치(30)에 포함된 프로세서(33)는), 생체 정보 추출기(31)로부터 인증 대상 개인 정보(Y)를 획득할 수 있다. 또한, 장치(30)에서(즉, 장치(30)에 포함된 프로세서(33)는), 상기 저장 영역에 저장된 공개 키(PKX)를 획득할 수 있다.1, 25, 26a, 26b, 26c, 26d and 26e, in performing the personal information authentication procedure (step S200), in the device 30 (ie, the processor 33 included in the device 30) )), it is possible to obtain the personal information (Y) to be authenticated from the biometric information extractor 31 . In addition, the device 30 (ie, the processor 33 included in the device 30) may obtain the public key PK X stored in the storage area.

이후에, 장치(30)에서(즉, 장치(30)에 포함된 프로세서(33)는), 인증 대상 개인 정보(Y) 및 공개 키(PKX)를 이용하여 암호화된 암호문(CTY)을 생성할 수 있다(단계 S210).Then, in the device 30 (ie, the processor 33 included in the device 30), the encrypted cipher text (CT Y ) is generated using the personal information (Y) to be authenticated and the public key (PK X ). It can be created (step S210).

이후에, 장치(30)에서(즉, 장치(30)에 포함된 프로세서(33)는), 인증 대상 개인 정보(Y)를 이용하여 제2 정보(YA)를 생성할 수 있다(단계 S220).Subsequently, in the device 30 (ie, the processor 33 included in the device 30), second information Y A may be generated using the personal information Y to be authenticated (step S220). ).

이후에, 장치(30)에서(즉, 장치(30)에 포함된 프로세서(33)는), 상기 보안 영역(즉, 보안 메모리(35))에 저장된 개인 키(SK<X>) 및 제1 정보(XA)를 획득할 수 있다. 이후에, 장치(30)에서(즉, 장치(30)에 포함된 프로세서(33)는), 개인 키(SK<X>), 제1 정보(XA), 암호문(CTY) 및 제2 정보(YA)를 이용하여 인증 대상 개인 정보(Y)에 대한 인증(AOP)을 수행할 수 있다(단계 S240a).Then, in the device 30 (ie, the processor 33 included in the device 30), the private key SK <X> stored in the secure area (ie, the secure memory 35) and the first Information (X A ) can be obtained. Then, in the device 30 (ie, the processor 33 included in the device 30), the private key (SK <X> ), the first information (X A ), the ciphertext (CT Y ) and the second Authentication ( AOP ) on the personal information (Y) to be authenticated may be performed using the information (Y A ) (step S240a).

단계 S210 및 S220은 각각 도 12의 단계 S210 및 S220과 실질적으로 동일하고, 단계 S240a는 도 12의 단계 S240과 유사할 수 있다.Steps S210 and S220 are substantially the same as steps S210 and S220 of FIG. 12 , respectively, and step S240a may be similar to step S240 of FIG. 12 .

도 27은 도 1의 개인 정보 인증 절차를 수행하는 단계의 다른 예를 나타내는 순서도이다. 이하 도 17, 25, 26a, 26b, 26c, 26d 및 26e와 중복되는 설명은 생략한다.27 is a flowchart illustrating another example of performing the personal information authentication procedure of FIG. 1 . Descriptions overlapping those of FIGS. 17, 25, 26a, 26b, 26c, 26d, and 26e will be omitted.

도 1 및 27을 참조하면, 상기 개인 정보 인증 절차를 수행하는데 있어서(단계 S200), 단계 S210, S220 및 S240a는 각각 도 25의 단계 S210, S220 및 S240a와 실질적으로 동일할 수 있다.1 and 27, in performing the personal information authentication procedure (step S200), steps S210, S220 and S240a may be substantially the same as steps S210, S220 and S240a of FIG. 25, respectively.

장치(30)에서 인증 대상 개인 정보(Y)에 대한 상기 인증을 수행한 이후에, 즉 단계 S240a 이후에, 장치(30)에서 암호문(CTY) 및 제2 정보(YA)를 삭제할 수 있다(단계 S245). 단계 S245는 도 17의 단계 S245와 실질적으로 동일할 수 있다.After the device 30 performs the authentication of the personal information Y to be authenticated, that is, after step S240a, the device 30 may delete the passphrase (CT Y ) and the second information (Y A ). (Step S245). Step S245 may be substantially the same as step S245 of FIG. 17 .

한편, 본 발명의 실시예들은 컴퓨터로 판독 가능한 매체에 저장된 컴퓨터로 판독 가능한 프로그램 코드를 포함하는 제품 등의 형태로 구현될 수도 있다. 상기 컴퓨터로 판독 가능한 프로그램 코드는 다양한 컴퓨터 또는 다른 데이터 처리 장치의 프로세서로 제공될 수 있다. 상기 컴퓨터로 판독 가능한 매체는 컴퓨터로 판독 가능한 신호 매체 또는 컴퓨터로 판독 가능한 기록 매체일 수 있다. 상기 컴퓨터로 판독 가능한 기록 매체는 명령어 실행 시스템, 장비 또는 장치 내에 또는 이들과 접속되어 프로그램을 저장하거나 포함할 수 있는 임의의 유형적인 매체일 수 있다. 예를 들어, 상기 컴퓨터로 판독 가능한 매체는 비일시적(non-transitory) 저장 매체의 형태로 제공될 수 있다. 여기서, 비일시적은 저장 매체가 신호(signal)를 포함하지 않으며 실재(tangible)한다는 것을 의미할 뿐 데이터가 저장 매체에 반영구적 또는 임시적으로 저장됨을 구분하지 않는다.Meanwhile, embodiments of the present invention may be implemented in the form of a product including a computer readable program code stored in a computer readable medium. The computer readable program code may be provided to processors of various computers or other data processing devices. The computer-readable medium may be a computer-readable signal medium or a computer-readable recording medium. The computer-readable recording medium may be any tangible medium capable of storing or including a program in or connected to an instruction execution system, equipment, or device. For example, the computer-readable medium may be provided in the form of a non-transitory storage medium. Here, non-temporary means that the storage medium does not contain a signal and is tangible, but does not distinguish whether data is stored semi-permanently or temporarily in the storage medium.

본 발명의 실시예들은 개인 인증을 요구하는 임의의 전자 장치 및 시스템의 설계에 유용하게 이용될 수 있다. 예를 들어, 본 발명의 실시예들은 PC(Personal Computer), 서버 컴퓨터(server computer), 데이터 센터(data center), 워크스테이션(workstation), 노트북(laptop), 핸드폰(cellular), 스마트 폰(smart phone), MP3 플레이어, PDA(Personal Digital Assistant), PMP(Portable Multimedia Player), 디지털 TV, 디지털 카메라, 포터블 게임 콘솔(portable game console), 네비게이션(navigation) 기기, 웨어러블(wearable) 기기, IoT(Internet of Things) 기기, IoE(Internet of Everything) 기기, e-북(e-book), VR(Virtual Reality) 기기, AR(Augmented Reality) 기기, 드론(drone), 오토모티브(automotive) 등과 같은 전자 시스템에 더욱 유용하게 적용될 수 있다.Embodiments of the present invention can be usefully used in the design of any electronic device and system requiring personal authentication. For example, embodiments of the present invention may be used in personal computers (PCs), server computers, data centers, workstations, laptops, cellular phones, and smart phones. phone), MP3 player, PDA (Personal Digital Assistant), PMP (Portable Multimedia Player), digital TV, digital camera, portable game console, navigation device, wearable device, IoT (Internet Electronic systems such as Things of Things (IoT) devices, IoE (Internet of Everything) devices, e-books, VR (Virtual Reality) devices, AR (Augmented Reality) devices, drones, automotive, etc. may be more useful.

상기에서는 본 발명의 바람직한 실시예를 참조하여 설명하였지만, 해당 기술분야의 숙련된 당업자는 하기의 특허청구범위에 기재된 본 발명의 사상 및 영역으로부터 벗어나지 않는 범위 내에서 본 발명을 다양하게 수정 및 변경시킬 수 있음을 이해할 것이다.Although the above has been described with reference to preferred embodiments of the present invention, those skilled in the art can variously modify and change the present invention without departing from the spirit and scope of the present invention described in the claims below. you will understand that you can

Claims (10)

장치 및 인증 서버를 포함하는 인증 시스템에서, 함수 암호(functional encryption)를 활용한 인증 방법으로서,
상기 장치에서, 마스터 개인 키 및 마스터 공개 키를 생성하는 단계;
상기 장치에서, 등록 대상 개인 정보, 상기 마스터 개인 키 및 상기 마스터 공개 키를 이용하여 개인 키 및 공개 키를 생성하는 단계;
상기 장치에서, 상기 등록 대상 개인 정보를 이용하여 제1 정보를 생성하는 단계;
상기 장치에서, 상기 개인 키 및 상기 제1 정보를 상기 인증 서버로 전송하는 단계;
상기 개인 키 및 상기 제1 정보를 상기 인증 서버의 보안 영역에 저장하는 단계;
상기 장치에서, 인증 대상 개인 정보 및 상기 공개 키를 이용하여 암호화된 암호문을 생성하는 단계;
상기 장치에서, 상기 인증 대상 개인 정보를 이용하여 제2 정보를 생성하는 단계;
상기 장치에서, 상기 암호문 및 상기 제2 정보를 상기 인증 서버로 전송하는 단계; 및
상기 인증 서버에서, 상기 개인 키, 상기 제1 정보, 상기 암호문 및 상기 제2 정보를 이용하여 상기 인증 대상 개인 정보에 대한 인증을 수행하는 단계를 포함하고,
상기 인증 대상 개인 정보에 대한 상기 인증을 수행하는 단계는,
상기 등록 대상 개인 정보 및 상기 인증 대상 개인 정보의 유클리드 거리(Euclidean Distance)를 연산하여 상기 등록 대상 개인 정보 및 상기 인증 대상 개인 정보 사이의 유사도를 연산하는 단계; 및
상기 유사도에 기초하여 상기 인증을 수행하는 단계를 포함하는 인증 방법.
In an authentication system including a device and an authentication server, an authentication method utilizing functional encryption, comprising:
generating, in the device, a master private key and a master public key;
generating, in the device, a private key and a public key using the personal information to be registered, the master private key, and the master public key;
In the device, generating first information using the personal information to be registered;
In the device, transmitting the private key and the first information to the authentication server;
storing the private key and the first information in a secure area of the authentication server;
Generating, in the device, encrypted cipher text using personal information to be authenticated and the public key;
In the device, generating second information using the personal information to be authenticated;
In the device, transmitting the encrypted text and the second information to the authentication server; and
In the authentication server, performing authentication on the personal information to be authenticated using the private key, the first information, the cipher text, and the second information,
The step of performing the authentication on the authentication target personal information,
calculating a similarity between the personal information to be registered and the personal information to be authenticated by calculating a Euclidean distance between the personal information to be registered and the personal information to be authenticated; and
and performing the authentication based on the degree of similarity.
제 1 항에 있어서,
상기 등록 대상 개인 정보 및 상기 인증 대상 개인 정보의 상기 유클리드 거리는, 상기 등록 대상 개인 정보 및 상기 인증 대상 개인 정보를 노출하지 않고 연산되는 것을 특징으로 하는 인증 방법.
According to claim 1,
wherein the Euclidean distance between the personal information to be registered and the personal information to be authenticated is calculated without exposing the personal information to be registered and the personal information to be authenticated.
제 1 항에 있어서,
상기 장치에서, 상기 개인 키 및 상기 제1 정보를 상기 인증 서버로 전송한 이후에, 상기 개인 키 및 상기 제1 정보를 삭제하는 단계를 더 포함하는 것을 특징으로 하는 인증 방법.
According to claim 1,
In the device, after transmitting the private key and the first information to the authentication server, the authentication method further comprising the step of deleting the private key and the first information.
제 3 항에 있어서,
상기 장치에서, 상기 개인 키 및 상기 제1 정보는 물리적으로 소거되는 것을 특징으로 하는 인증 방법.
According to claim 3,
In the device, the private key and the first information are physically erased.
제 1 항에 있어서,
상기 장치에서, 상기 암호문 및 상기 제2 정보를 상기 인증 서버로 전송한 이후에, 상기 암호문 및 상기 제2 정보를 삭제하는 단계를 더 포함하는 것을 특징으로 하는 인증 방법.
According to claim 1,
In the device, after transmitting the cipher text and the second information to the authentication server, the authentication method further comprising the step of deleting the cipher text and the second information.
제 5 항에 있어서,
상기 장치에서, 상기 암호문 및 상기 제2 정보는 물리적으로 소거되는 것을 특징으로 하는 인증 방법.
According to claim 5,
In the device, the ciphertext and the second information are physically erased.
제 1 항에 있어서,
상기 인증 서버에서, 상기 인증 대상 개인 정보에 대한 상기 인증을 수행한 이후에, 상기 암호문 및 상기 제2 정보를 삭제하는 단계를 더 포함하는 것을 특징으로 하는 인증 방법.
According to claim 1,
and deleting, in the authentication server, the ciphertext and the second information after performing the authentication of the personal information to be authenticated.
제 1 항에 있어서,
상기 등록 대상 개인 정보 및 상기 인증 대상 개인 정보는 생체 정보인 것을 특징으로 하는 인증 방법.
According to claim 1,
The authentication method, characterized in that the personal information to be registered and the personal information to be authenticated are biometric information.
제 1 항에 있어서,
상기 제1 정보 및 상기 제2 정보는 내적(inner product)을 연산하여 생성되는 것을 특징으로 하는 인증 방법.
According to claim 1,
Wherein the first information and the second information are generated by calculating an inner product.
장치에서, 함수 암호(functional encryption)를 활용한 인증 방법으로서,
마스터 개인 키 및 마스터 공개 키를 생성하는 단계;
등록 대상 개인 정보, 상기 마스터 개인 키 및 상기 마스터 공개 키를 이용하여 개인 키 및 공개 키를 생성하는 단계;
상기 등록 대상 개인 정보를 이용하여 제1 정보를 생성하는 단계;
상기 개인 키 및 상기 제1 정보를 상기 장치의 보안 영역에 저장하는 단계;
인증 대상 개인 정보 및 상기 공개 키를 이용하여 암호화된 암호문을 생성하는 단계;
상기 인증 대상 개인 정보를 이용하여 제2 정보를 생성하는 단계; 및
상기 개인 키, 상기 제1 정보, 상기 암호문 및 상기 제2 정보를 이용하여 상기 인증 대상 개인 정보에 대한 인증을 수행하는 단계를 포함하고,
상기 인증 대상 개인 정보에 대한 상기 인증을 수행하는 단계는,
상기 등록 대상 개인 정보 및 상기 인증 대상 개인 정보의 유클리드 거리(Euclidean Distance)를 연산하여 상기 등록 대상 개인 정보 및 상기 인증 대상 개인 정보 사이의 유사도를 연산하는 단계; 및
상기 유사도에 기초하여 상기 인증을 수행하는 단계를 포함하는 인증 방법.
In a device, as an authentication method using functional encryption,
generating a master private key and a master public key;
generating a private key and a public key using the personal information to be registered, the master private key, and the master public key;
generating first information by using the personal information to be registered;
storing the private key and the first information in a secure area of the device;
generating an encrypted ciphertext using personal information to be authenticated and the public key;
generating second information using the personal information to be authenticated; and
Performing authentication on the personal information to be authenticated using the private key, the first information, the ciphertext, and the second information;
The step of performing the authentication on the authentication target personal information,
calculating a similarity between the personal information to be registered and the personal information to be authenticated by calculating a Euclidean distance between the personal information to be registered and the personal information to be authenticated; and
and performing the authentication based on the degree of similarity.
KR1020220038173A 2021-11-09 2022-03-28 Authentication method and authentication system using biometric information and functional encryption KR20230067458A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US17/984,052 US20230145500A1 (en) 2021-11-09 2022-11-09 Authentication method and authentication system using biometric information and functional encryption

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR20210152785 2021-11-09
KR1020210152785 2021-11-09

Publications (1)

Publication Number Publication Date
KR20230067458A true KR20230067458A (en) 2023-05-16

Family

ID=86545892

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020220038173A KR20230067458A (en) 2021-11-09 2022-03-28 Authentication method and authentication system using biometric information and functional encryption

Country Status (1)

Country Link
KR (1) KR20230067458A (en)

Similar Documents

Publication Publication Date Title
US10705894B2 (en) Electronic device for authenticating application and operating method thereof
US9455968B1 (en) Protection of a secret on a mobile device using a secret-splitting technique with a fixed user share
US10182040B2 (en) Systems and methods for single device authentication
US11681637B2 (en) Memory controller, storage device including the same, and operating method of the memory controller
US9660986B2 (en) Secure access method and secure access device for an application program
EP3087524A1 (en) Virtual machine assurances
JP2007512787A (en) Trusted mobile platform architecture
US11228421B1 (en) Secure secrets to mitigate against attacks on cryptographic systems
US11068419B1 (en) Secure data access between computing devices using host-specific key
EP3312759B1 (en) Secure element (se), a method of operating the se, and an electronic device including the se
CN101103404A (en) Method and portable storage device for allocating secure area in insecure area
JP6756056B2 (en) Cryptographic chip by identity verification
GB2561030A (en) Smart security storage
US11874925B2 (en) Data processing method for coping with ransomware, program for executing the method, and computer-readable recording medium storing the program
US20150227755A1 (en) Encryption and decryption methods of a mobile storage on a file-by-file basis
JP4724107B2 (en) User authentication method using removable device and computer
US10771249B2 (en) Apparatus and method for providing secure execution environment for mobile cloud
KR20170059447A (en) Representation of operating system context in a trusted platform module
US11308238B2 (en) Server and method for identifying integrity of application
CN112528242A (en) System and method for configuring watermarking units using watermarking algorithms for data processing accelerators
CN112528243A (en) System and method for processing data by a data processing accelerator
EP3866385A1 (en) Capability exposure method and device
KR20230067458A (en) Authentication method and authentication system using biometric information and functional encryption
US20230145500A1 (en) Authentication method and authentication system using biometric information and functional encryption
TW200846972A (en) Method for generating and using a key for encryption and decryption in a computer device