KR102172230B1 - Cancelable Fingerprint Template Generation Device and Method using Fingerprint Shell - Google Patents

Cancelable Fingerprint Template Generation Device and Method using Fingerprint Shell Download PDF

Info

Publication number
KR102172230B1
KR102172230B1 KR1020180119889A KR20180119889A KR102172230B1 KR 102172230 B1 KR102172230 B1 KR 102172230B1 KR 1020180119889 A KR1020180119889 A KR 1020180119889A KR 20180119889 A KR20180119889 A KR 20180119889A KR 102172230 B1 KR102172230 B1 KR 102172230B1
Authority
KR
South Korea
Prior art keywords
fingerprint
fingerprint template
triangles
generating
generated
Prior art date
Application number
KR1020180119889A
Other languages
Korean (ko)
Other versions
KR20200040068A (en
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 KR1020180119889A priority Critical patent/KR102172230B1/en
Publication of KR20200040068A publication Critical patent/KR20200040068A/en
Application granted granted Critical
Publication of KR102172230B1 publication Critical patent/KR102172230B1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/602Providing cryptographic facilities or services
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/22Matching criteria, e.g. proximity measures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/31User authentication
    • G06F21/32User authentication using biometric data, e.g. fingerprints, iris scans or voiceprints
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06K9/00067
    • G06K9/6215
    • 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

Abstract

지문 템플릿 생성 방법이 개시된다. 상기 지문 템플릿 생성 방법은 (a) 입력 지문 이미지 또는 영상으로부터 추출된 특이점(singular point)들 및 특징점(minutia)들을 입력받는 단계, (b) 상기 특이점들 중 어느 하나의 특이점에 대하여, 상기 어느 하나의 특이점으로부터 상기 특징점들까지의 거리(

Figure 112018099132142-pat00056
) - 여기서, i=1,…,n이고, n은 특징점들의 개수임 - 를 각각 계산하는 단계, (c) 지문 템플릿 생성을 위하여 설정된 비밀키(
Figure 112018099132142-pat00057
)에 대하여,
Figure 112018099132142-pat00058
를 밑변으로 하고
Figure 112018099132142-pat00059
를 빗변으로 하는 직각 삼각형들을 순차적으로 생성하되, 상기 직각 삼각형들 중 어느 하나의 직각 삼각형을 기준으로 다음에 생성되는 직각 삼각형의 밑변과 상기 어느 하나의 직각 삼각형의 빗변이 서로 인접하도록 생성하는 단계, 및 (d) 상기 생성된 직각 삼각형들 각각의 높이에 해당하는 좌표 값들을 추출하여 상기 지문 템플릿을 생성하는 단계를 포함한다.A method of generating a fingerprint template is disclosed. The fingerprint template generation method includes the steps of: (a) receiving singular points and minutia extracted from an input fingerprint image or image, (b) for any one of the singular points, any one of the The distance from the singular points of (
Figure 112018099132142-pat00056
)-Where i=1,... ,n, and n is the number of feature points-each calculating step, (c) a secret key set for generating a fingerprint template (
Figure 112018099132142-pat00057
)about,
Figure 112018099132142-pat00058
As the base
Figure 112018099132142-pat00059
Sequentially generating right-angled triangles having a hypotenuse, but generating the base of the next-generated right-angled triangle and the hypotenuse of the one of the right-angled triangles adjacent to each other based on any one of the right-angled triangles, And (d) generating the fingerprint template by extracting coordinate values corresponding to the heights of each of the generated right triangles.

Description

지문 쉘을 이용한 대체 가능한 지문 템플릿 생성 장치 및 방법{Cancelable Fingerprint Template Generation Device and Method using Fingerprint Shell}[Cancelable Fingerprint Template Generation Device and Method using Fingerprint Shell}

본 발명은 지문 템플릿 생성 장치 및 방법에 관한 것으로서, 보다 구체적으로 불변의 성질을 지닌 지문 정보로부터 인증에 바로 적용할 수 있는 다양한 지문 템플릿을 안전하게 생성할 수 있는 지문 템플릿 생성 장치 및 방법에 관한 것이다.The present invention relates to a fingerprint template generation apparatus and method, and more particularly, to a fingerprint template generation apparatus and method capable of safely generating various fingerprint templates that can be directly applied to authentication from fingerprint information having an immutable property.

지문을 포함한 생체 정보의 가장 큰 장점이자 단점은 일생동안 큰 변화가 없고 대체 불가능하다는 것이다. 이는 생체 정보를 이용하여 인증시 한 번만 등록하면 자주 바꾸지 않아도 되어 장점이 되지만, 한 번 공격자에게 유출되면 비밀번호처럼 새로이 바꿀 수 없기에 안전하게 저장하는 것에 항상 유의할 필요성이 있다. 지문 템플릿은 지문 이미지로부터 특징점(minutiae)을 추출하여 정보화한 것을 의미하는데, 이러한 지문 템플릿을 안전하게 저장하기 위해 기존의 암호화 기법을 적용하여 서버에 저장할 경우 지문 매칭시 서버는 저장되어 있는 지문 템플릿을 복호화한 후에 매칭을 수행하게 되는데, 이때 악의적인 공격자나 악의적인 서버라면 사용자의 원본 지문 정보를 쉽게 얻을 수 있는 문제점이 있다.The biggest advantage and disadvantage of biometric information including fingerprints is that they do not change significantly throughout their lifetime and are irreplaceable. This is an advantage of not having to change often if you register only once when authenticating using biometric information, but once leaked to an attacker, it is necessary to always be careful to store it safely because it cannot be changed as new passwords. The fingerprint template refers to information obtained by extracting minutiae from the fingerprint image.If the fingerprint template is stored in the server by applying an existing encryption technique to securely store the fingerprint template, the server decrypts the stored fingerprint template when matching fingerprints. Matching is performed after doing so, and there is a problem in that a malicious attacker or a malicious server can easily obtain the user's original fingerprint information.

이를 해결하기 위하여, 지문의 특이점(singular point)과 특징점을 활용하여 생성된 정보를 비밀키와 함께 일방향 함수에 넣어 원본의 정보를 알 수 없도록 하는 기법이 있다. 여기서, 비밀키와 함수의 파라미터가 공개된다 하더라도 원래의 지문 정보를 얻을 수 없도록 일방향 함수를 설정해야 한다. 이러한 기법은 안전성을 위해 폐기 가능성, 연결 불가능성, 효율성의 성질을 추가로 만족해야 한다. 폐기 가능성이란 변환된 템플릿이 공격자에게 노출되면 사용자는 새로운 비밀키와 파라미터를 사용하여 동일한 지문 정보이면서 서로 다른 템플릿을 생성할 수 있어야 하는 성질이고, 연결 불가능성은 서로 다른 서버에 저장된 변환된 템플릿을 보고 동일한 사용자를 유추할 수 없어야 하는 성질이고, 효율성은 이러한 기법을 사용하였을 때 안전성을 고려하지 않고 일반적으로 사용되는 매칭의 에러율과 크게 차이가 없어야 하는 성질을 의미한다. 상술한 모든 성질을 만족하는 기법을 대체 가능한 지문 템플릿 생성 기법이라 한다.To solve this problem, there is a technique in which the information of the original is not known by putting the information generated by using the singular point and the feature point of the fingerprint into a one-way function together with a secret key. Here, even if the secret key and function parameters are disclosed, the one-way function must be set so that original fingerprint information cannot be obtained. For safety, these techniques must additionally satisfy the properties of discardability, inability to connect, and efficiency. Revocation possibility is the property that when the converted template is exposed to an attacker, the user should be able to create different templates with the same fingerprint information using a new secret key and parameters, and the inability to connect is to report the converted template stored in different servers. It is a property that the same user should not be inferred, and efficiency means that when this technique is used, there should be no significant difference from the error rate of commonly used matching without considering safety. A technique that satisfies all the above-described properties is called a fingerprint template generation technique that can be substituted.

대체 가능한 지문 템플릿 생성 기법과 관련하여, 비특허문헌 1에서는 특이점과 특징점 간의 거리를 이용하여 지문 쉘을 만드는 알고리즘이 개시되어 있으나 서로 다른 데이터베이스에 저장되어 있는 변환 템플릿만을 이용하여 동일한 생체 정보를 가진 사용자가 구별되는 문제가 있으며, 특허문헌 1에서는 안전한 지문 템플릿 저장에 관한 기술이 개시되어 있으나 사용된 파라미터들을 알게 되면 원본 지문 정보의 유출이 가능하다는 문제점이 있다.Regarding the alternative fingerprint template generation technique, Non-Patent Document 1 discloses an algorithm for creating a fingerprint shell using the distance between a singular point and a feature point, but a user with the same biometric information using only the conversion templates stored in different databases. There is a problem that is distinguished, and Patent Document 1 discloses a technology related to safe fingerprint template storage, but there is a problem in that original fingerprint information can be leaked if the parameters used are known.

대한민국 등록특허 제1720656호Korean Patent No. 1720656

C. Moujahdi, G. Bebis, S. Ghouzali, and M. Rziza, "Fingerprint shell: Secure representation of fingerprint template" Pattern Recognition Letters, 45, pp. 189 - 196, 2014. C. Moujahdi, G. Bebis, S. Ghouzali, and M. Rziza, "Fingerprint shell: Secure representation of fingerprint template" Pattern Recognition Letters, 45, pp. 189-196, 2014.

본 발명의 목적은 개인키 정보를 지문 쉘에 직접 드러나지 않게 하고, 기존의 단순 덧셈 연산에서 지수 연산으로 바꾸어 기존의 지문 쉘을 이용한 기법이 만족하지 못하는 연결 불가능성 성질을 만족할 수 있으므로, 안전한 지문 템플릿 생성 기술의 요건(폐기 가능성, 연결 불가능성, 불가역성, 효율성)을 모두 만족하는 지문 템플릿 생성 장치 및 방법을 제공하는데 있다.It is an object of the present invention to prevent private key information from being directly exposed to a fingerprint shell, and to change the existing simple addition operation to an exponential operation, thereby satisfying the connection impossibility property that is not satisfied by the conventional fingerprint shell technique, a secure fingerprint template It is to provide a fingerprint template generation apparatus and method that satisfies all the requirements of the generation technology (disposability, inability to connect, irreversibility, and efficiency).

본 발명의 일 실시 예에 따른 지문 템플릿 생성 방법은 (a) 입력 지문 이미지 또는 영상으로부터 추출된 특이점(singular point)들 및 특징점(minutia)들을 입력받는 단계, (b) 상기 특이점들 중 어느 하나의 특이점에 대하여, 상기 어느 하나의 특이점으로부터 상기 특징점들까지의 거리(

Figure 112018099132142-pat00001
) - 여기서, i=1,…,n이고, n은 특징점들의 개수임 - 를 각각 계산하는 단계, (c) 지문 템플릿 생성을 위하여 설정된 비밀키(
Figure 112018099132142-pat00002
)에 대하여,
Figure 112018099132142-pat00003
를 밑변으로 하고
Figure 112018099132142-pat00004
를 빗변으로 하는 직각 삼각형들을 순차적으로 생성하되, 상기 직각 삼각형들 중 어느 하나의 직각 삼각형을 기준으로 다음에 생성되는 직각 삼각형의 밑변과 상기 어느 하나의 직각 삼각형의 빗변이 서로 인접하도록 생성하는 단계, 및 (d) 상기 생성된 직각 삼각형들 각각의 높이에 해당하는 좌표 값들을 추출하여 상기 지문 템플릿을 생성하는 단계를 포함할 수 있다.The method for generating a fingerprint template according to an embodiment of the present invention includes the steps of (a) receiving singular points and minutia extracted from an input fingerprint image or image, and (b) receiving one of the singular points. For a singular point, the distance from any one singular point to the feature points (
Figure 112018099132142-pat00001
)-Where i=1,... ,n, and n is the number of feature points-each calculating step, (c) a secret key set for generating a fingerprint template (
Figure 112018099132142-pat00002
)about,
Figure 112018099132142-pat00003
As the base
Figure 112018099132142-pat00004
Sequentially generating right-angled triangles having a hypotenuse, but generating the base of the next-generated right-angled triangle and the hypotenuse of the one of the right-angled triangles adjacent to each other based on any one of the right-angled triangles, And (d) generating the fingerprint template by extracting coordinate values corresponding to the heights of each of the generated right triangles.

본 발명의 일 실시 예에 따른 지문 템플릿 생성 장치는 입력 지문 이미지 또는 영상으로부터 추출된 특이점(singular point)들 및 특징점(minutia)들을 입력받는 입력부, 상기 특이점들 중 어느 하나의 특이점에 대하여, 상기 어느 하나의 특이점으로부터 상기 특징점들까지의 거리(

Figure 112018099132142-pat00005
) - 여기서, i=1,…,n이고, n은 특징점들의 개수임 - 를 각각 계산하는 거리 계산부, 및 지문 템플릿 생성을 위하여 설정된 비밀키(
Figure 112018099132142-pat00006
)에 대하여,
Figure 112018099132142-pat00007
를 밑변으로 하고
Figure 112018099132142-pat00008
를 빗변으로 하는 직각 삼각형들을 순차적으로 생성하되, 상기 직각 삼각형들 중 어느 하나의 직각 삼각형을 기준으로 다음에 생성되는 직각 삼각형의 밑변과 상기 어느 하나의 직각 삼각형의 빗변이 서로 인접하도록 생성하고, 상기 생성된 직각 삼각형들 각각의 높이에 해당하는 좌표 값들을 추출하여 상기 지문 템플릿을 생성하는 템플릿 생성부를 포함할 수 있다.The fingerprint template generation apparatus according to an embodiment of the present invention includes an input fingerprint image or an input unit that receives singular points and minutia extracted from the image, and for any one singular point among the singular points, the The distance from one singular point to the feature points (
Figure 112018099132142-pat00005
)-Where i=1,... ,n, and n is the number of feature points-a distance calculator that calculates each, and a secret key set for generating a fingerprint template (
Figure 112018099132142-pat00006
)about,
Figure 112018099132142-pat00007
As the base
Figure 112018099132142-pat00008
Right-angled triangles with a hypotenuse are sequentially generated, but the base of the next-generated right-angled triangle and the hypotenuse of the one of the right-angled triangles are generated adjacent to each other based on any one of the right-angled triangles, and the A template generator configured to generate the fingerprint template by extracting coordinate values corresponding to the height of each of the generated right triangles may be included.

본 발명의 일 실시 예에 따르면 개인키 정보를 지문 쉘에 직접 드러나지 않게 할 수 있다.According to an embodiment of the present invention, it is possible to prevent personal key information from being directly exposed to the fingerprint shell.

또한, 기존의 기존의 단순 덧셈 연산에서 지수 연산으로 바꾸어 연결 불가능성 성질을 만족할 수 있다.In addition, it is possible to satisfy the connection impossibility property by changing from the existing simple addition operation to an exponential operation.

도 1은 기존의 지문 쉘을 이용한 기법의 일 예를 도시한 것이다.
도 2는 본 발명의 일 실시 예에 따른 지문 템플릿 생성 장치의 블록도이다.
도 3은 본 발명의 일 실시 예에 따른 지문 템플릿 생성 장치 및 방법에 따라 생성된 지문 쉘을 도시한 것이다.
도 4는 본 발명의 일 실시 예에 따른 지문 템플릿 생성 방법의 순서도이다.
1 shows an example of a technique using a conventional fingerprint shell.
2 is a block diagram of an apparatus for generating a fingerprint template according to an embodiment of the present invention.
3 is a diagram illustrating a fingerprint shell generated according to an apparatus and method for generating a fingerprint template according to an embodiment of the present invention.
4 is a flowchart of a method for generating a fingerprint template according to an embodiment of the present invention.

본 명세서에 개시되어 있는 본 발명의 개념에 따른 실시예들에 대해서 특정한 구조적 또는 기능적 설명들은 단지 본 발명의 개념에 따른 실시예들을 설명하기 위한 목적으로 예시된 것으로서, 본 발명의 개념에 따른 실시예들은 다양한 형태로 실시될 수 있으며 본 명세서에 설명된 실시예들에 한정되지 않는다.Specific structural or functional descriptions of the embodiments according to the concept of the present invention disclosed in this specification are exemplified only for the purpose of describing the embodiments according to the concept of the present invention, and embodiments according to the concept of the present invention They may be implemented in various forms and are not limited to the embodiments described herein.

본 발명의 개념에 따른 실시예들은 다양한 변경들을 가할 수 있고 여러 가지 형태들을 가질 수 있으므로 실시예들을 도면에 예시하고 본 명세서에 상세하게 설명하고자 한다. 그러나 이는 본 발명의 개념에 따른 실시예들을 특정한 개시형태들에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 변경, 균등물, 또는 대체물을 포함한다.Since the embodiments according to the concept of the present invention can apply various changes and have various forms, the embodiments will be illustrated in the drawings and described in detail herein. However, this is not intended to limit the embodiments according to the concept of the present invention to specific disclosed forms, and includes changes, equivalents, or substitutes included in the spirit and scope of the present invention.

제1 또는 제2 등의 용어를 다양한 구성요소들을 설명하는데 사용될 수 있지만, 상기 구성요소들은 상기 용어들에 의해 한정되어서는 안 된다. 상기 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만, 예를 들어 본 발명의 개념에 따른 권리 범위로부터 이탈되지 않은 채, 제1 구성요소는 제2 구성요소로 명명될 수 있고, 유사하게 제2 구성요소는 제1 구성요소로도 명명될 수 있다.Terms such as first or second may be used to describe various elements, but the elements should not be limited by the terms. The above terms are only for the purpose of distinguishing one component from other components, for example, without departing from the scope of rights according to the concept of the present invention, the first component may be named as the second component, Similarly, the second component may also be referred to as a first component.

어떤 구성요소가 다른 구성요소에 "연결되어" 있다거나 "접속되어" 있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다. 반면에, 어떤 구성요소가 다른 구성요소에 "직접 연결되어" 있다거나 "직접 접속되어" 있다고 언급된 때에는, 중간에 다른 구성요소가 존재하지 않는 것으로 이해되어야 할 것이다. 구성요소들 간의 관계를 설명하는 표현들, 예를 들어 "~사이에"와 "바로~사이에" 또는 "~에 직접 이웃하는" 등도 마찬가지로 해석되어야 한다.When a component is referred to as being "connected" or "connected" to another component, it is understood that it may be directly connected or connected to the other component, but other components may exist in the middle. Should be. On the other hand, when a component is referred to as being "directly connected" or "directly connected" to another component, it should be understood that there is no other component in the middle. Expressions describing the relationship between components, for example, "between" and "just between" or "directly adjacent to" should be interpreted as well.

본 명세서에서 사용한 용어는 단지 특정한 실시예들을 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 명세서에서, "포함하다" 또는 "가지다" 등의 용어는 설시된 특징, 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것이 존재함으로 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.The terms used in the present specification are only used to describe specific embodiments and are not intended to limit the present invention. Singular expressions include plural expressions unless the context clearly indicates otherwise. In the present specification, terms such as "comprise" or "have" are intended to designate that the specified features, numbers, steps, actions, components, parts, or combinations thereof exist, but one or more other features or numbers, It is to be understood that the presence or addition of steps, actions, components, parts, or combinations thereof, does not preclude the possibility of preliminary exclusion.

다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가진다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥상 가지는 의미와 일치하는 의미를 갖는 것으로 해석되어야 하며, 본 명세서에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다. 이하, 실시예들을 첨부된 도면을 참조하여 상세하게 설명한다.Unless otherwise defined, all terms used herein, including technical or scientific terms, have the same meaning as commonly understood by a person of ordinary skill in the art to which the present invention belongs. Terms as defined in a commonly used dictionary should be interpreted as having a meaning consistent with the meaning in the context of the related technology, and should not be interpreted as an ideal or excessively formal meaning unless explicitly defined in this specification. Does not. Hereinafter, embodiments will be described in detail with reference to the accompanying drawings.

본 발명은 지문 템플릿 생성을 위한 장치 및 방법에 관한 것이다. 이하 본 발명의 설명에 앞서 본 발명과 관련된 용어를 정의하기로 한다.The present invention relates to an apparatus and method for generating a fingerprint template. Hereinafter, prior to the description of the present invention, terms related to the present invention will be defined.

지문 템플릿은 인증이 필요한 사용자의 지문 이미지나 지문 영상으로부터 추출할 수 있는 데이터들의 집합을 의미한다.The fingerprint template refers to a fingerprint image of a user requiring authentication or a set of data that can be extracted from a fingerprint image.

특징점(minutiae)은 지문을 구성하는 릿지(ridge)로부터 얻을 수 있는 끝점(end point)과 분기점(bifurcation point)을 의미한다. 여기서, 끝점은 릿지가 끊어지는 점을 의미하고, 분기점은 릿지가 갈라지는 점을 의미한다.A minutiae means an end point and a bifurcation point that can be obtained from a ridge constituting a fingerprint. Here, the end point means the point where the ridge breaks, and the branch point means the point where the ridge splits.

특이점(singular point)은 지문의 전체적인 모양을 결정하는 정보로서, 중심점(core point)과 델타점(delta point)을 의미한다. 여기서, 중심점은 릿지의 변곡률이 가장 높은 점을 의미하고, 델타는 3개의 릿지가 서로 이웃하는 점을 의미한다.The singular point is information that determines the overall shape of the fingerprint, and refers to a core point and a delta point. Here, the center point means the point where the inflection rate of the ridge is the highest, and the delta means the point where the three ridges are adjacent to each other.

도 1은 기존의 지문 쉘을 이용한 기법의 일 예를 도시한 것이다.1 shows an example of a technique using a conventional fingerprint shell.

도 1을 참조하면, 기존의 지문 쉘을 이용한 지문 템플릿 생성 기법은 지문 쉘을 구성하기 위하여 비밀키(

Figure 112018099132142-pat00009
), 특이점 및 특징점을 필요로 하며, 특이점으로부터 각 특징점까지의 거리(
Figure 112018099132142-pat00010
)를 계산한다는 점에서는 본 발명과 동일하다. 그러나, 기존의 기법은 지문 템플릿을 구성하는 직각 삼각형 생성에 있어서 단순 덧셈 연산을 이용한다는 점에서 차이가 있다.Referring to FIG. 1, a method of generating a fingerprint template using a conventional fingerprint shell uses a secret key (
Figure 112018099132142-pat00009
), a singular point and a feature point are required, and the distance from the singular point to each feature point (
Figure 112018099132142-pat00010
It is the same as the present invention in that) is calculated. However, the conventional technique is different in that a simple addition operation is used to generate a right triangle constituting a fingerprint template.

보다 구체적으로, 기존의 기법은 비밀키(

Figure 112018099132142-pat00011
)를 밑변으로 하고, 비밀키에 특이점으로부터 각 특징점까지의 거리(
Figure 112018099132142-pat00012
)를 더한 값을 빗변으로 하는 직각 삼각형을 순차적으로 생성한다. 이러한 경우 처음 생성되는 직각 삼각형의 밑변에 해당하는 값이 곧 비밀키(
Figure 112018099132142-pat00013
)이고 각 빗변은 비밀키(
Figure 112018099132142-pat00014
)와 특이점으로부터 각 특징점까지의 거리(
Figure 112018099132142-pat00015
) 간의 덧셈 연산에 의한 값이므로, 비밀키(
Figure 112018099132142-pat00016
)를 알아내면 특이점으로부터 각 특징점까지의 거리(
Figure 112018099132142-pat00017
) 값 또한 쉽게 알아낼 수 있어 연결 불가능성을 만족하지 못한다.More specifically, the existing technique is a secret key (
Figure 112018099132142-pat00011
) As the base, and the distance from the singular point to each feature point (
Figure 112018099132142-pat00012
) Is added to the hypotenuse. In this case, the value corresponding to the base of the first right triangle is the secret key (
Figure 112018099132142-pat00013
) And each hypotenuse is a secret key (
Figure 112018099132142-pat00014
) And the distance from the singular point to each feature point (
Figure 112018099132142-pat00015
), so the secret key (
Figure 112018099132142-pat00016
), the distance from the singular point to each feature point (
Figure 112018099132142-pat00017
) The value can also be easily determined, so it is not satisfied with the inability to connect.

도 2는 본 발명의 일 실시 예에 따른 지문 템플릿 생성 장치의 블록도이다.2 is a block diagram of an apparatus for generating a fingerprint template according to an embodiment of the present invention.

도 2를 참조하면, 본 발명의 일 실시 예에 따른 지문 템플릿 생성 장치(10)는 입력부(100), 거리 계산부(200) 및 템플릿 생성부(300)를 포함한다.Referring to FIG. 2, a fingerprint template generation apparatus 10 according to an embodiment of the present invention includes an input unit 100, a distance calculation unit 200, and a template generation unit 300.

입력부(100)는 입력 지문 이미지 또는 영상으로부터 추출된 특이점들 및 특징점들을 입력받는다.The input unit 100 receives singular points and feature points extracted from an input fingerprint image or an image.

또한, 비밀키(

Figure 112018099132142-pat00018
)를 입력받을 수도 있다. 입력된 값에 따라 설정된 비밀키(
Figure 112018099132142-pat00019
)는 추후에 생성된 지문 템플릿에 보안상의 문제가 발생한 경우 다른 값을 입력하여 새로운 비밀키(
Figure 112018099132142-pat00020
)를 설정할 수 있다.Also, the secret key (
Figure 112018099132142-pat00018
) Can also be entered. The secret key set according to the entered value (
Figure 112018099132142-pat00019
) Is for a new private key () by entering a different value if a security problem occurs in the fingerprint template created later.
Figure 112018099132142-pat00020
) Can be set.

거리 계산부(200)는 입력부(100)를 통해 입력받은 특이점들과 특징점들 간에 거리(

Figure 112018099132142-pat00021
)를 계산한다. 특이점들과 특징점들 간에 거리는 지문 템플릿을 구성하는 직각 삼각형들을 생성하기 위해 필요한 요소로서, 입력받은 특이점들 중 어느 하나의 특이점을 기준으로 모든 특징점들 간에 계산된다. 따라서, 특징점들의 개수를 n이라고 할 때(여기서, n은 자연수임), 어느 하나의 특이점에 대하여
Figure 112018099132142-pat00022
이다. 이러한 거리값은 지문 이미지가 회전하거나 이동하여도 항상 동일한 값을 유지한다. 거리 계산부(200)는 상기 계산된 특징점들까지의 거리(
Figure 112018099132142-pat00023
) 집합에 포함된 거리값들을 오름차순으로 정렬하여 템플릿 생성부(300)가 쉘 형태의 지문 템플릿을 생성할 수 있도록 한다.The distance calculation unit 200 includes a distance between the singular points and the feature points input through the input unit 100 (
Figure 112018099132142-pat00021
) Is calculated. The distance between the singular points and the feature points is an element necessary to generate right-angled triangles constituting the fingerprint template, and is calculated between all the feature points based on any one singular point among the input singular points. Therefore, when the number of feature points is n (where n is a natural number), for any one singular point
Figure 112018099132142-pat00022
to be. This distance value is always maintained at the same value even if the fingerprint image rotates or moves. The distance calculation unit 200 is the distance to the calculated feature points (
Figure 112018099132142-pat00023
) The distance values included in the set are arranged in ascending order so that the template generator 300 can generate a fingerprint template in the form of a shell.

템플릿 생성부(300)는 거리 계산부(200)를 통하여 계산된 거리값을 이용하여 직각 삼각형들을 생성하고, 생성된 직각 삼각형들 각각의 높이에 해당하는 좌표 값들을 추출하여 지문 템플릿을 생성한다.The template generation unit 300 generates right-angled triangles using the distance value calculated through the distance calculation unit 200, and extracts coordinate values corresponding to the heights of each of the generated right-angled triangles to generate a fingerprint template.

보다 구체적으로, 템플릿 생성부(300)는 우선 지문 템플릿 생성을 위하여 설정된 비밀키(

Figure 112018099132142-pat00024
)에 대하여
Figure 112018099132142-pat00025
를 밑변으로 하고
Figure 112018099132142-pat00026
를 빗변으로 하는 직각 삼각형들을 순차적으로 생성하되, 상기 직각 삼각형들 중 어느 하나의 직각 삼각형을 기준으로 다음에 생성되는 직각 삼각형의 밑변과 상기 어느 하나의 직각 삼각형의 빗변이 서로 인접하도록 생성한다. 이에 따라, 어느 하나의 특이점에 대한 모든 거리값들에 대하여 n-1개의 직각 삼각형들이 생성된다.More specifically, the template generation unit 300 first, a secret key set for generating a fingerprint template (
Figure 112018099132142-pat00024
)about
Figure 112018099132142-pat00025
As the base
Figure 112018099132142-pat00026
Right-angled triangles are sequentially generated as a hypotenuse, but the base of the next right-angled triangle and the hypotenuse of the one of the right-angled triangles are generated adjacent to each other based on any one of the right-angled triangles. Accordingly, n-1 right triangles are generated for all distance values to any one singular point.

한편, 직각 삼각형 생성을 위한 거리값들은 오름차순으로 정렬되어 있으므로

Figure 112018099132142-pat00027
를 밑변으로 하고
Figure 112018099132142-pat00028
를 빗변으로 하는 직각 삼각형들을 순차적으로 생성하게 되면 직각 삼각형들이 하나의 쉘을 형성하게 된다.On the other hand, since the distance values for creating a right triangle are arranged in ascending order,
Figure 112018099132142-pat00027
As the base
Figure 112018099132142-pat00028
When the right triangles with the hypotenuse are sequentially generated, the right triangles form one shell.

본 발명의 일 실시 예에 따른 지문 템플릿 생성 장치 및 방법에 따라 생성된 지문 쉘을 도시한 도 3을 참조하면, 쉘은 직각 삼각형의 생성 방향에 따라 다른 형태를 가질 수 있다. 예를 들어, 직각 삼각형이 시계 방향으로 순차적으로 생성되면 시계 방향으로 감겨있는 쉘 형태일 수 있고, 직각 삼각형이 시계 반대 방향으로 순차적으로 생성되면 시계 반대 방향으로 감겨있는 쉘 형태일 수 있다.Referring to FIG. 3 illustrating a fingerprint shell generated according to an apparatus and method for generating a fingerprint template according to an embodiment of the present invention, the shell may have a different shape according to the direction in which a right triangle is generated. For example, when a right triangle is sequentially generated in a clockwise direction, it may be a shell shape wound in a clockwise direction, and when a right triangle is sequentially generated in a counterclockwise direction, it may be a shell shape wound in a counterclockwise direction.

다음으로, 템플릿 생성부(300)는 생성된 지문 쉘을 구성하는 직각 삼각형들 각각의 높이에 해당하는 좌표 값들을 추출하여 지문 템플릿을 생성한다. 좌표 값은 예를 들면

Figure 112018099132142-pat00029
와 같이 직각 좌표계의 값일 수 있다. 지문 템플릿은 모든 특이점들에 대하여 각각 생성될 수 있으며, 지문 인증을 위해 필요한 시도 횟수에 따라 생성될 수 있다.Next, the template generating unit 300 generates a fingerprint template by extracting coordinate values corresponding to the heights of each of the right triangles constituting the generated fingerprint shell. The coordinate value is for example
Figure 112018099132142-pat00029
It may be a value of a rectangular coordinate system as shown in FIG. The fingerprint template may be generated for all singularities, and may be generated according to the number of attempts required for fingerprint authentication.

여기에, 지문 템플릿 생성 장치(10)는 지문 템플릿 생성을 위하여 설정된 비밀키(

Figure 112018099132142-pat00030
)와 지문 템플릿을 저장하는 저장부(400)를 더 포함할 수 있다. 저장부(400)는 지문 인증을 위해 등록된 지문 템플릿을 저장하여 추후에 지문 인증시에 인증 요청에 따라 생성된 지문 템플릿과 대조할 수 있도록 한다.Here, the fingerprint template generating device 10 is a private key set for generating a fingerprint template (
Figure 112018099132142-pat00030
) And a storage unit 400 for storing the fingerprint template. The storage unit 400 stores a fingerprint template registered for fingerprint authentication, so that it can be compared with a fingerprint template generated according to an authentication request at the time of fingerprint authentication later.

도 4는 본 발명의 일 실시 예에 따른 지문 템플릿 생성 방법의 순서도이다. 이하에서는 앞서 설명한 부분과 중복되는 부분에 대한 상세한 설명은 생략하기로 한다.4 is a flowchart of a method for generating a fingerprint template according to an embodiment of the present invention. Hereinafter, detailed descriptions of portions overlapping with the previously described portions will be omitted.

도 4를 참조하면, 본 발명의 일 실시 예에 따른 지문 템플릿 생성 방법은 특이점들 및 특징점들을 입력받는 단계(S100), 특이점들과 특징점들 간에 거리를 계산하는 단계(S200), 지문 쉘을 생성하는 단계(S300) 및 지문 템플릿을 생성하는 단계(S400)를 포함한다.Referring to FIG. 4, in the fingerprint template generation method according to an embodiment of the present invention, the step of receiving singular points and feature points (S100), calculating the distance between the singular points and the feature points (S200), and generating a fingerprint shell And generating a fingerprint template (S400).

S100 단계는 입력 지문 이미지 또는 영상으로부터 추출된 특이점들 및 특징점들을 입력받는다.In step S100, singular points and feature points extracted from an input fingerprint image or image are received.

S200 단계는 S100 단계를 통하여 입력받은 특이점들 중 어느 하나의 특이점에 대하여, 상기 어느 하나의 특이점으로부터 상기 특징점들까지의 거리(

Figure 112018099132142-pat00031
)를 각각 계산하는 단계이다. 여기에, S200 단계는 지문 쉘 생성 단계를 위하여 계산된 특징점들까지의 거리(
Figure 112018099132142-pat00032
)를 오름차순으로 정렬하는 단계를 더 포함할 수 있다.In step S200, for any one of the singular points input through step S100, the distance from the one singular point to the feature points (
Figure 112018099132142-pat00031
) Are each calculated. Here, step S200 is the distance to the feature points calculated for the step of generating the fingerprint shell (
Figure 112018099132142-pat00032
) May further include sorting in ascending order.

S300 단계는 비밀키와 S200 단계에서 계산된 상기 어느 하나의 특이점으로부터 상기 특징점들까지의 거리(

Figure 112018099132142-pat00033
)를 이용하여 직각 삼각형들로 구성되는 지문 쉘을 생성하는 단계이다. 보다 구체적으로, 기 설정된 비밀키(
Figure 112018099132142-pat00034
)에 대하여
Figure 112018099132142-pat00035
를 밑변으로 하고
Figure 112018099132142-pat00036
를 빗변으로 하는 직각 삼각형들을 시계 방향 또는 시계 반대 방향으로 순차적으로 생성한다. 이때, 직각 삼각형들 중 어느 하나의 직각 삼각형을 기준으로 다음에 생성되는 직각 삼각형의 밑변과 상기 어느 하나의 직각 삼각형의 빗변이 서로 인접하도록 생성하여 직각 삼각형들이 지문 쉘을 형성할 수 있도록 한다.Step S300 includes the secret key and the distance from the one singular point calculated in step S200 to the feature points (
Figure 112018099132142-pat00033
) To create a fingerprint shell composed of right triangles. More specifically, a preset secret key (
Figure 112018099132142-pat00034
)about
Figure 112018099132142-pat00035
As the base
Figure 112018099132142-pat00036
Right-angled triangles with a hypotenuse are sequentially generated in a clockwise or counterclockwise direction. At this time, based on any one of the right-angled triangles, the base of the next right-angled triangle and the hypotenuse of the one of the right-angled triangles are created to be adjacent to each other, so that the right-angled triangles can form a fingerprint shell.

S400 단계는 S300 단계에서 생성된 지문 쉘을 구성하는 직각 삼각형들 각각의 높이에 해당하는 좌표 값들을 추출하여 지문 템플릿을 생성한다. 즉, 지문 템플릿은 모든 특이점 및 특징점들에 대하여 지문 쉘을 형성하도록 생성된 직각 삼각형들 각각의 좌표 값들의 집합일 수 있다.In step S400, a fingerprint template is generated by extracting coordinate values corresponding to the heights of each of the right triangles constituting the fingerprint shell generated in step S300. That is, the fingerprint template may be a set of coordinate values of each of right-angled triangles generated to form a fingerprint shell for all singular points and feature points.

앞서 설명한 S200 단계 내지 S400 단계는 지문 템플릿 생성을 위하여 기 설정된 비밀키(

Figure 112018099132142-pat00037
)에 대하여 수행된다.Steps S200 to S400 described above are a secret key set in advance for generating a fingerprint template (
Figure 112018099132142-pat00037
).

만일 저장부(400)나 별도의 데이터베이스에 저장된 비밀키(

Figure 112018099132142-pat00038
)나 지문 템플릿이 유출될 경우 새로운 비밀키(
Figure 112018099132142-pat00039
)를 설정하는 단계를 더 포함할 수 있다. 이에 따라 새로운 비밀키(
Figure 112018099132142-pat00040
)가 설정될 경우, 상기 설정된 새로운 비밀키(
Figure 112018099132142-pat00041
)에 대하여 S200 단계 내지 S400 단계가 반복하여 수행되어 전혀 다른 새로운 지문 템플릿을 생성할 수 있다.If the secret key stored in the storage unit 400 or a separate database (
Figure 112018099132142-pat00038
) Or fingerprint template leaked, a new private key (
Figure 112018099132142-pat00039
) May further include setting. Accordingly, the new secret key (
Figure 112018099132142-pat00040
) Is set, the set new secret key (
Figure 112018099132142-pat00041
), steps S200 to S400 are repeatedly performed to create a completely different fingerprint template.

상술한 본 발명의 일 실시 예에 따른 지문 템플릿 생성 장치 및 방법에 의하여 생성된 지문 템플릿 간의 매칭은 하우스도르프 거리(Hausdorff distance)를 이용하여 수행될 수 있다. 하우스도르프 거리는 두 집합의 비일치도(mismatch)를 측정하는 비선형 척도로서 일반적인 거리 함수를 이용하는 최대최소 기법이다. 두 점들의 집합 A,B에 대하여 하우스도르프 거리는 아래의 수학식 1에 의하여 정의된다.Matching between the fingerprint templates generated by the apparatus and method for generating a fingerprint template according to an embodiment of the present invention may be performed using a Hausdorff distance. The Hausdorff distance is a nonlinear measure that measures the mismatch of two sets, and is a maximum and minimum method using a general distance function. For a set of two points A and B, the Hausdorff distance is defined by Equation 1 below.

Figure 112018099132142-pat00042
Figure 112018099132142-pat00042

여기서,

Figure 112018099132142-pat00043
는 유클리디안 거리이다.here,
Figure 112018099132142-pat00043
Is the Euclidean street.

상기 수학식 1에 따라 하우스도르프 거리를 계산하여 등록된 지문 템플릿과 인증 대상 지문 템플릿 간에 유사성을 판단하여 지문 인증이 수행될 수 있다. 한편, 지문 템플릿 간에 매칭은 상술한 하우스도르프 거리를 이용한 기법 외에 두 객체 간에 유사성을 판단할 수 있는 다양한 기법이 사용될 수 있다.Fingerprint authentication may be performed by calculating the Hausdorff distance according to Equation 1 and determining similarity between the registered fingerprint template and the fingerprint template to be authenticated. Meanwhile, for matching between fingerprint templates, various techniques capable of determining similarity between two objects may be used in addition to the technique using the aforementioned Hausdorff distance.

이상에서 설명된 장치는 하드웨어 구성요소, 소프트웨어 구성요소, 및/또는 하드웨어 구성요소 및 소프트웨어 구성요소의 조합으로 구현될 수 있다. 예를 들어, 실시예들에서 설명된 장치 및 구성요소는, 예를 들어, 프로세서, 콘트롤러, ALU(arithmetic logic unit), 디지털 신호 프로세서(digital signal processor), 마이크로컴퓨터, FPA(field programmable array), PLU(programmable logic unit), 마이크로프로세서, 또는 명령(instruction)을 실행하고 응답할 수 있는 다른 어떠한 장치와 같이, 하나 이상의 범용 컴퓨터 또는 특수 목적 컴퓨터를 이용하여 구현될 수 있다. 처리 장치는 운영 체제(OS) 및 상기 운영 체제상에서 수행되는 하나 이상의 소프트웨어 애플리케이션을 수행할 수 있다. 또한, 처리 장치는 소프트웨어의 실행에 응답하여, 데이터를 접근, 저장, 조작, 처리 및 생성할 수도 있다. 이해의 편의를 위하여, 처리 장치는 하나가 사용되는 것으로 설명된 경우도 있지만, 해당 기술분야에서 통상의 지식을 가진 자는, 처리 장치가 복수 개의 처리 요소(processing element) 및/또는 복수 유형의 처리 요소를 포함할 수 있음을 알 수 있다. 예를 들어, 처리 장치는 복수 개의 프로세서 또는 하나의 프로세서 및 하나의 콘트롤러를 포함할 수 있다. 또한, 병렬 프로세서(parallel processor)와 같은, 다른 처리 구성(processing configuration)도 가능하다.The apparatus described above may be implemented as a hardware component, a software component, and/or a combination of a hardware component and a software component. For example, the devices and components described in the embodiments include, for example, a processor, a controller, an arithmetic logic unit (ALU), a digital signal processor, a microcomputer, a field programmable array (FPA), It can be implemented using one or more general purpose computers or special purpose computers, such as a programmable logic unit (PLU), a microprocessor, or any other device capable of executing and responding to instructions. The processing device may execute an operating system (OS) and one or more software applications executed on the operating system. In addition, the processing device may access, store, manipulate, process, and generate data in response to the execution of software. For the convenience of understanding, although it is sometimes described that one processing device is used, one of ordinary skill in the art, the processing device is a plurality of processing elements and/or a plurality of types of processing elements. It can be seen that it may include. For example, the processing device may include a plurality of processors or one processor and one controller. In addition, other processing configurations are possible, such as a parallel processor.

소프트웨어는 컴퓨터 프로그램(computer program), 코드(code), 명령(instruction), 또는 이들 중 하나 이상의 조합을 포함할 수 있으며, 원하는 대로 동작하도록 처리 장치를 구성하거나 독립적으로 또는 결합적으로(collectively) 처리 장치를 명령할 수 있다. 소프트웨어 및/또는 데이터는, 처리 장치에 의하여 해석되거나 처리 장치에 명령 또는 데이터를 제공하기 위하여, 어떤 유형의 기계, 구성요소(component), 물리적 장치, 가상 장치(virtual equipment), 컴퓨터 저장 매체 또는 장치, 또는 전송되는 신호 파(signal wave)에 영구적으로, 또는 일시적으로 구체화(embody)될 수 있다. 소프트웨어는 네트워크로 연결된 컴퓨터 시스템 상에 분산되어서, 분산된 방법으로 저장되거나 실행될 수도 있다. 소프트웨어 및 데이터는 하나 이상의 컴퓨터 판독 가능 기록 매체에 저장될 수 있다.The software may include a computer program, code, instructions, or a combination of one or more of these, configuring the processing unit to behave as desired or processed independently or collectively. You can command the device. Software and/or data may be interpreted by a processing device or to provide instructions or data to a processing device, of any type of machine, component, physical device, virtual equipment, computer storage medium or device. , Or may be permanently or temporarily embodyed in a transmitted signal wave. The software may be distributed over networked computer systems and stored or executed in a distributed manner. Software and data may be stored on one or more computer-readable recording media.

실시예에 따른 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 실시예를 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다. 상기된 하드웨어 장치는 실시예의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.The method according to the embodiment may be implemented in the form of program instructions that can be executed through various computer means and recorded in a computer-readable medium. The computer-readable medium may include program instructions, data files, data structures, and the like alone or in combination. The program instructions recorded on the medium may be specially designed and configured for the embodiment, or may be known and usable to those skilled in computer software. Examples of computer-readable recording media include magnetic media such as hard disks, floppy disks, and magnetic tapes, optical media such as CD-ROMs and DVDs, and magnetic media such as floptical disks. -A hardware device specially configured to store and execute program instructions such as magneto-optical media, and ROM, RAM, flash memory, and the like. Examples of program instructions include not only machine language codes such as those produced by a compiler but also high-level language codes that can be executed by a computer using an interpreter or the like. The hardware device described above may be configured to operate as one or more software modules to perform the operation of the embodiment, and vice versa.

이상과 같이 실시예들이 비록 한정된 도면에 의해 설명되었으나, 해당 기술분야에서 통상의 지식을 가진 자라면 상기의 기재로부터 다양한 수정 및 변형이 가능하다. 예를 들어, 설명된 기술들이 설명된 방법과 다른 순서로 수행되거나, 및/또는 설명된 시스템, 구조, 장치, 회로 등의 구성요소들이 설명된 방법과 다른 형태로 결합 또는 조합되거나, 다른 구성요소 또는 균등물에 의하여 대치되거나 치환되더라도 적절한 결과가 달성될 수 있다.As described above, although the embodiments have been described by the limited drawings, various modifications and variations are possible from the above description to those of ordinary skill in the art. For example, the described techniques are performed in a different order from the described method, and/or components such as a system, structure, device, circuit, etc. described are combined or combined in a form different from the described method, or other components Alternatively, even if substituted or substituted by an equivalent, an appropriate result can be achieved.

그러므로, 다른 구현들, 다른 실시예들 및 특허청구범위와 균등한 것들도 후술하는 특허청구범위의 범위에 속한다.Therefore, other implementations, other embodiments, and claims and equivalents fall within the scope of the claims to be described later.

Claims (8)

(a) 입력 지문 이미지 또는 영상으로부터 추출된 특이점(singular point)들 및 특징점(minutia)들을 입력받는 단계;
(b) 상기 특이점들 중 어느 하나의 특이점에 대하여, 상기 어느 하나의 특이점으로부터 상기 특징점들까지의 거리(
Figure 112020028542489-pat00044
) - 여기서, i=1, …, n이고, n은 특징점들의 개수임 - 를 각각 계산하는 단계;
(c) 지문 템플릿 생성을 위하여 설정된 비밀키(
Figure 112020028542489-pat00045
)에 대하여,
Figure 112020028542489-pat00046
를 밑변으로 하고
Figure 112020028542489-pat00047
를 빗변으로 하는 직각 삼각형들을 순차적으로 생성하되, 상기 직각 삼각형들 중 어느 하나의 직각 삼각형을 기준으로 다음에 생성되는 직각 삼각형의 밑변과 상기 어느 하나의 직각 삼각형의 빗변이 서로 인접하도록 생성하는 단계; 및
(d) 상기 생성된 직각 삼각형들 각각의 높이에 해당하는 좌표 값들을 추출하여 상기 지문 템플릿을 생성하는 단계를 포함하고,
상기 (c) 단계는 시계 방향 또는 시계 반대 방향으로 상기 직각 삼각형들을 순차적으로 생성하는,
지문 템플릿 생성 방법.
(a) receiving an input fingerprint image or singular points and minutia extracted from the image;
(b) For any one of the singular points, the distance from the any one singular point to the feature points (
Figure 112020028542489-pat00044
)-Where i=1,… , n, and n is the number of feature points-respectively;
(c) The secret key set to generate the fingerprint template (
Figure 112020028542489-pat00045
)about,
Figure 112020028542489-pat00046
As the base
Figure 112020028542489-pat00047
Sequentially generating right-angled triangles having a hypotenuse, but generating a base of a next-generated right-angled triangle and a hypotenuse of the one of the right-angled triangles adjacent to each other based on any one of the right-angled triangles; And
(d) generating the fingerprint template by extracting coordinate values corresponding to the heights of each of the generated right triangles,
The step (c) sequentially generates the right triangles in a clockwise or counterclockwise direction,
How to create a fingerprint template.
제1항에 있어서,
상기 (b) 단계는
상기 어느 하나의 특이점으로부터 상기 특징점들까지의 거리(
Figure 112018099132142-pat00048
)를 오름차순으로 정렬하는 단계를 더 포함하는 지문 템플릿 생성 방법.
The method of claim 1,
Step (b)
Distance from any of the singular points to the feature points (
Figure 112018099132142-pat00048
), the fingerprint template generation method further comprising the step of sorting in ascending order.
삭제delete 제1항에 있어서,
(e) 새로운 비밀키(
Figure 112018099132142-pat00049
)를 설정하는 단계를 더 포함하고,
상기 설정된 새로운 비밀키(
Figure 112018099132142-pat00050
)에 대하여 상기 (b) 단계 내지 (d) 단계를 수행하는 지문 템플릿 생성 방법.
The method of claim 1,
(e) New secret key (
Figure 112018099132142-pat00049
) Further comprising the step of setting,
The set new secret key (
Figure 112018099132142-pat00050
) To the step (b) to step (d).
입력 지문 이미지 또는 영상으로부터 추출된 특이점(singular point)들 및 특징점(minutia)들을 입력받는 입력부;
상기 특이점들 중 어느 하나의 특이점에 대하여, 상기 어느 하나의 특이점으로부터 상기 특징점들까지의 거리(
Figure 112020028542489-pat00051
) - 여기서, i=1, …, n이고, n은 특징점들의 개수임 - 를 각각 계산하는 거리 계산부; 및
지문 템플릿 생성을 위하여 설정된 비밀키(
Figure 112020028542489-pat00052
)에 대하여,
Figure 112020028542489-pat00053
를 밑변으로 하고
Figure 112020028542489-pat00054
를 빗변으로 하는 직각 삼각형들을 순차적으로 생성하되, 상기 직각 삼각형들 중 어느 하나의 직각 삼각형을 기준으로 다음에 생성되는 직각 삼각형의 밑변과 상기 어느 하나의 직각 삼각형의 빗변이 서로 인접하도록 생성하고, 상기 생성된 직각 삼각형들 각각의 높이에 해당하는 좌표 값들을 추출하여 상기 지문 템플릿을 생성하는 템플릿 생성부를 포함하고,
상기 템플릿 생성부는 시계 방향 또는 시계 반대 방향으로 상기 직각 삼각형들을 순차적으로 생성하는,
지문 템플릿 생성 장치.
An input unit for receiving an input fingerprint image or singular points and minutia extracted from the image;
For any one of the singular points, the distance from the any one singular point to the feature points (
Figure 112020028542489-pat00051
)-Where i=1,… , n, and n is the number of feature points-a distance calculator for calculating each; And
The secret key set to generate the fingerprint template (
Figure 112020028542489-pat00052
)about,
Figure 112020028542489-pat00053
As the base
Figure 112020028542489-pat00054
Right-angled triangles with a hypotenuse are sequentially generated, but the base of the next-generated right-angled triangle and the hypotenuse of the one of the right-angled triangles are generated adjacent to each other based on any one of the right-angled triangles, and the Including a template generator for generating the fingerprint template by extracting coordinate values corresponding to the height of each of the generated right triangles,
The template generation unit sequentially generates the right triangles in a clockwise or counterclockwise direction,
Fingerprint template generation device.
제5항에 있어서,
상기 거리 계산부는 상기 어느 하나의 특이점으로부터 상기 특징점들까지의 거리(
Figure 112018099132142-pat00055
)를 오름차순으로 정렬하는 지문 템플릿 생성 장치.
The method of claim 5,
The distance calculation unit is a distance from any one singular point to the feature points (
Figure 112018099132142-pat00055
A fingerprint template generator that sorts) in ascending order.
삭제delete 제5항에 있어서,
상기 생성된 지문 템플릿을 저장하는 저장부를 더 포함하는 지문 템플릿 생성 장치.
The method of claim 5,
A fingerprint template generation device further comprising a storage unit for storing the generated fingerprint template.
KR1020180119889A 2018-10-08 2018-10-08 Cancelable Fingerprint Template Generation Device and Method using Fingerprint Shell KR102172230B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020180119889A KR102172230B1 (en) 2018-10-08 2018-10-08 Cancelable Fingerprint Template Generation Device and Method using Fingerprint Shell

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020180119889A KR102172230B1 (en) 2018-10-08 2018-10-08 Cancelable Fingerprint Template Generation Device and Method using Fingerprint Shell

Publications (2)

Publication Number Publication Date
KR20200040068A KR20200040068A (en) 2020-04-17
KR102172230B1 true KR102172230B1 (en) 2020-10-30

Family

ID=70460963

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020180119889A KR102172230B1 (en) 2018-10-08 2018-10-08 Cancelable Fingerprint Template Generation Device and Method using Fingerprint Shell

Country Status (1)

Country Link
KR (1) KR102172230B1 (en)

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101720656B1 (en) 2010-06-03 2017-04-03 한국전자통신연구원 Method For Secure Fingerprint Verification
KR102212632B1 (en) * 2014-05-12 2021-02-08 삼성전자주식회사 Fingerprint Recognition method and electronic device performing thereof
KR20160133991A (en) * 2015-05-14 2016-11-23 삼성전자주식회사 Fingerprint enrollment method and fingerprint verification method
KR102011023B1 (en) * 2017-02-02 2019-08-14 고려대학교 산학협력단 Fingerprint Registration and Authentication Method using Triple-Polar Minutiae

Also Published As

Publication number Publication date
KR20200040068A (en) 2020-04-17

Similar Documents

Publication Publication Date Title
JP4886371B2 (en) Biometric authentication method and system
KR102387568B1 (en) Method and apparatus for authentication based on fingerprint recognition
US8332932B2 (en) Keystroke dynamics authentication techniques
US11227037B2 (en) Computer system, verification method of confidential information, and computer
US8699799B2 (en) Fingerprint verification method and apparatus with high security
JP6524899B2 (en) Secret data matching device, secret data matching program, and secret data matching method
KR102427853B1 (en) Method and apparatus for adaptively updating registration database for user authentication
KR102261833B1 (en) Method and apparatus for authentication, and method and apparatus for learning recognizer
CN116010917A (en) Privacy-protected image processing method, identity registration method and identity authentication method
JP5753772B2 (en) Biometric authentication system
EP3440805A1 (en) Method and system for secure password storage
Baghel et al. An enhanced fuzzy vault to secure the fingerprint templates
US8904508B2 (en) System and method for real time secure image based key generation using partial polygons assembled into a master composite image
KR102172230B1 (en) Cancelable Fingerprint Template Generation Device and Method using Fingerprint Shell
JP6791263B2 (en) Ciphertext collation system and ciphertext collation method
KR102181340B1 (en) Method and system for generating cryptographic key using biometrics and fuzzy vault
KR101838432B1 (en) Method and system for authentication using biometrics and functional encryption-inner product
KR102011023B1 (en) Fingerprint Registration and Authentication Method using Triple-Polar Minutiae
KR101949579B1 (en) Method and system for generating key using biometrics
US11706032B2 (en) Method and apparatus for user authentication
KR102347697B1 (en) Device and method for generating cancelable fingerprint template for low-quality images
Zhu et al. A performance-optimization method for reusable fuzzy extractor based on block error distribution of iris trait
KR20210051517A (en) Operating method of electronic device for performing login to a plurality of programs using integrated identification information
Salem et al. Blockchain-based biometric identity management
KR20220107959A (en) Device and method for generating cancellable fingerprint template based on delauney triangulation using a feature that is robust against rotation

Legal Events

Date Code Title Description
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant