KR101528112B1 - Cloud server for authenticating user to access the data server using biometric trait - Google Patents

Cloud server for authenticating user to access the data server using biometric trait Download PDF

Info

Publication number
KR101528112B1
KR101528112B1 KR1020140162852A KR20140162852A KR101528112B1 KR 101528112 B1 KR101528112 B1 KR 101528112B1 KR 1020140162852 A KR1020140162852 A KR 1020140162852A KR 20140162852 A KR20140162852 A KR 20140162852A KR 101528112 B1 KR101528112 B1 KR 101528112B1
Authority
KR
South Korea
Prior art keywords
user
data
registration
cloud server
ciphertext
Prior art date
Application number
KR1020140162852A
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 KR1020140162852A priority Critical patent/KR101528112B1/en
Application granted granted Critical
Publication of KR101528112B1 publication Critical patent/KR101528112B1/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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/14Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using a plurality of keys or algorithms
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/321Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving a third party or a trusted authority

Abstract

Disclosed is a cloud server for authenticating a user to be accessed to a data server based on biological traits. The disclosed cloud server authenticates the user to be accessed to the data server based on the biological traits by using a homomorphic encryption method, and comprises a registration unit for storing N number of first cryptograms which are encrypted biological traits data for registration corresponded to N number of users, for registration of N (an integer of greater than or equal to 2) number of the users; and an authentication unit for authenticating the user to be authenticated by using a second cryptogram encrypted with the biological traits data for authentication with respect to the user to be authenticated, and N number of the first cryptograms, wherein the authentication unit includes an operation unit for generating N number of third cryptograms by performing addition and subtraction for the first cryptograms and the second cryptogram with respect to the entire of N number of the first cryptograms; and a difference data calculation unit for calculating N number of difference data of the biological traits which is an equal value that the biological traits data for registration and the biological traits data for authentication are subtracted by performing a decryption for N number of the third cryptograms, and if a minimum value among N number of the biological traits difference data is greater than or equal to predetermined threshold, the user to be authenticated is authenticated as a proper user.

Description

생체 특성에 기반해 데이터 서버로 액세스하고자 하는 사용자를 인증하기 위한 클라우드 서버{Cloud server for authenticating user to access the data server using biometric trait}A cloud server for authenticating a user who wishes to access a data server based on biological characteristics,

본 발명의 실시예들은 준동형 암호화 기법을 이용하여, 생체 특성에 기반해 데이터 서버로 액세스하고자 하는 사용자를 인증하기 위한 클라우드 서버에 관한 것이다. Embodiments of the present invention relate to a cloud server for authenticating a user who wishes to access a data server based on biometric characteristics using a perturbative cryptographic technique.

IT 환경이 기존의 컴퓨팅 환경에서 클라우드 컴퓨팅 환경으로 점차 변하고 있다. 기존의 컴퓨팅 환경에서는 개인이 자신의 저장매체와 디지털 데이터를 관리하였지만, 클라우드 컴퓨팅 환경에서는 서비스 제공자가 고객들에게 스토리지와 같은 IT 자원을 제공하고, 고객들은 스마트폰, 태블릿 PC 등의 다양한 매체를 이용하여 인터넷이 가능한 모든 곳에서 데이터, 네트워크, 콘텐츠 등을 사용할 수 있도록 서비스를 제공한다The IT environment is gradually changing from the existing computing environment to the cloud computing environment. In an existing computing environment, an individual manages his / her storage medium and digital data. However, in a cloud computing environment, a service provider provides IT resources such as storage to customers, and customers use various media such as a smart phone and a tablet PC Provide services to enable data, network, content, etc. anywhere on the Internet

하지만, 클라우드 컴퓨팅의 이러한 도입을 활성화하기 위해서는 선결되어야 하는 큰 문제가 있다. 최근 빈번히 발생하는 기업체의 고객 정보 유출 및 개인 사용자들의 위치 정보를 비롯한 여러 개인정보 유출 등의 일련의 사건들을 통해서 현재 서버가 제공하는 데이터 보호 기술에 한계가 있다는 것을 알 수 있다However, there is a big problem that needs to be addressed in order to activate this introduction of cloud computing. It can be seen that there is a limit to the data protection technology provided by the present server through a series of events such as leak of the customer information of the frequently occurring company, location information of the individual users, and leakage of various personal information

특히, 생체 특성(biometric trait), 일례로, 지문, 홍채 등은 사람들을 식별할 수 있는 가장 신뢰할 수 있는 방법 중 하나이지만, 생체 특성이 노출되는 경우, 치명적인 문제가 발생하는 단점이 존재한다. In particular, biometric traits, such as fingerprints, irises, etc., are one of the most reliable methods for identifying people, but there are disadvantages in that when biometric characteristics are exposed, fatal problems occur.

예를 들어, 사용자 A가 사용자 B로 지문을 사용한 인증을 수행하는 경우를 가정하면, 사용자 B는 미리 사용자 A의 지문을 알고 있다. 이 때, 사용자 A가 사용자 B에게 액세스하려는 경우, 사용자 A는 먼저 지문을 이용하여 인증을 수행한다. 만약, 사용자 A의 지문 데이터가 대중에게 공개되면, 누구나 간단히 사용자 A의 지문 데이터를 획득하여 사용자 A로 위장할 수 있다. 이는 사용자의 프라이버시를 침해하고 전체 시스템을 무효화할 수도 있는 문제점이 있다. For example, assuming that the user A performs the authentication using the fingerprint with the user B, the user B knows the fingerprint of the user A in advance. At this time, when the user A intends to access the user B, the user A first performs the authentication using the fingerprint. If the fingerprint data of the user A is disclosed to the public, anyone can simply acquire the fingerprint data of the user A and disguise it as the user A. This may infringe the user's privacy and invalidate the entire system.

상기한 바와 같은 종래기술의 문제점을 해결하기 위해, 본 발명에서는 준동형 암호화 기법을 이용하여, 생체 특성을 노출시키기 않으면서 데이터 서버로 액세스하고자 하는 사용자를 인증하기 위한 클라우드 서버를 제안하고자 한다. In order to solve the problems of the prior art as described above, the present invention proposes a cloud server for authenticating a user who wants to access a data server without exposing biometric characteristics using a cryptogram.

본 발명의 다른 목적들은 하기의 실시예를 통해 당업자에 의해 도출될 수 있을 것이다.Other objects of the invention will be apparent to those skilled in the art from the following examples.

상기한 목적을 달성하기 위해 본 발명의 바람직한 일 실시예에 따르면, 준동형 암호화 기법을 이용하여, 생체 특성에 기반해 데이터 서버로 액세스하고자 하는 사용자를 인증하기 위한 클라우드 서버에 있어서, n(2 이상의 정수)개의 사용자의 등록을 위해, 상기 n개의 사용자와 대응되는 암호화된 등록용 생체 특성 데이터인 n개의 제1 암호문을 저장하는 등록부; 및 인증 받고자 하는 사용자에 대한 인증용 생체 특성 데이터를 암호화한 제2 암호문와 상기 n개의 제1 암호문을 이용하여 상기 인증 받고자 하는 사용자를 인증하는 인증부;를 포함하되, 상기 인증부는, 상기 n개의 제1 암호문 전체에 대하여, 상기 제1 암호문과 상기 제2 암호문 사이의 가감산 연산을 수행함으로써, n개의 제3 암호문들을 생성하는 연산부; 및 상기 n개의 제3 암호문의 복호화를 수행함으로써, 상기 등록용 생체 특성 데이터와 상기 인증용 생체 특성 데이터를 뺀 값인 생체 특성 차이 데이터를 n개 산출하는 차이 데이터 산출부;를 포함하고, 상기 n개의 생체 특성 차이 데이터 중 최소값이 기 설정된 임계값 이상인 경우, 상기 인증 받고자 하는 사용자를 정당한 사용자로 인증하는 것을 특징으로 하는 클라우드 서버가 제공된다. To achieve the above object, according to a preferred embodiment of the present invention, there is provided a cloud server for authenticating a user who wishes to access a data server based on biometric characteristics using a perturbation encryption technique, A registration unit for storing n first ciphertexts, which are encrypted biometrics characteristic data corresponding to the n users, for registration of a plurality of users; And an authentication unit for authenticating the user to be authenticated using a second cipher text in which biometric characteristic data for a user to be authenticated is encrypted and the n first cipher texts, An operation unit for generating n pieces of third ciphertexts by performing an addition / subtraction operation between the first ciphertext and the second ciphertext for the entire first ciphertext; And a difference data calculation unit for calculating n biometric feature difference data by subtracting the registration biometric characteristic data and the authentication biometric characteristic data by decrypting the n third ciphertexts, And authenticates the user to be authenticated as a legitimate user when the minimum value of the biometric characteristic data is equal to or greater than a preset threshold value.

상기 n개의 제1 암호문을 아래의 수학식과 같이 표현될 수 있다.The n first ciphertexts can be expressed as the following equation.

Figure 112014112166837-pat00001
Figure 112014112166837-pat00001

여기서, ki는 n개의 사용자 각각에서 생성된 랜덤 키,

Figure 112014112166837-pat00002
는 n번째 사용자 등록 시 상기 데이터 서버에서 생성된 키 쌍, m1 내지 mn은 상기 n개의 사용자 각각의 등록용 생체 특성 데이터, Enc( )는 준동형 암호화 함수를 각각 의미함. Here, k i is a random key generated from each of n users,
Figure 112014112166837-pat00002
M 1 to m n denote biometric characteristic data for registration of each of the n users, and Enc () denotes a cantilever type encryption function, respectively.

최초의 등록 사용자인 제1 사용자를 등록하는 경우, 상기 등록부는 상기 데이터 서버에서 수신된

Figure 112014112166837-pat00003
(=
Figure 112014112166837-pat00004
, n=1)를 상기 제1 암호문으로서 저장하고 있되, 상기 데이터 서버는 상기 제1 사용자로부터 암호문
Figure 112014112166837-pat00005
를 수신하고, 상기 제1 사용자의 등록 시 생성되는 키 쌍
Figure 112014112166837-pat00006
를 이용하여
Figure 112014112166837-pat00007
를 생성할 수 있다. When registering the first user as the first registered user, the registering unit registers the first user registered in the data server
Figure 112014112166837-pat00003
(=
Figure 112014112166837-pat00004
, n = 1) as the first cipher text, and the data server stores the cipher text
Figure 112014112166837-pat00005
And a key pair generated upon registration of the first user
Figure 112014112166837-pat00006
Using
Figure 112014112166837-pat00007
Lt; / RTI >

상기 제1 사용자를 제외한 차후의 제k(1≤k≤n) 사용자를 등록하는 경우, 상기 등록부는, 제1 사용자 내지 제k-1 사용자 각각의 제1 암호문을 갱신하되, 제k-1 사용자 등록 시 저장되어 있던 제1 암호문과, 키

Figure 112014112166837-pat00008
를 이용하여 0를 암호화한 암호문
Figure 112014112166837-pat00009
를 합을 통해 갱신을 수행하고, 상기 제k-1 사용자 등록 시 저장되어 있던 상기 클라우드 서버의 암호키
Figure 112014112166837-pat00010
를 이용하여 0를 암호화한 암호문
Figure 112014112166837-pat00011
과, 상기 제k 사용자에서 전송된 암호문
Figure 112014112166837-pat00012
와, 키
Figure 112014112166837-pat00013
를 이용하여 0을 암호화한 암호문
Figure 112014112166837-pat00014
를 이용하여 상기 k번째 사용자의 제1 암호문을 저장할 수 있다. Wherein the register updates the first ciphertext of each of the first user to the (k-1) -th user when the k-th user (1? K? N) The first cipher text stored at the time of registration,
Figure 112014112166837-pat00008
A cipher text in which 0 is encrypted
Figure 112014112166837-pat00009
, And updates the encryption key of the cloud server stored at the (k-1) -th user registration
Figure 112014112166837-pat00010
A cipher text in which 0 is encrypted
Figure 112014112166837-pat00011
And a ciphertext transmitted from the k-th user
Figure 112014112166837-pat00012
And a key
Figure 112014112166837-pat00013
A cipher text in which 0 is encrypted using
Figure 112014112166837-pat00014
The first ciphertext of the k-th user can be stored.

상기 연산부는 아래의 수학식을 이용하여 상기 n개의 제3 암호문들을 생성하고, 상기 차이 데이터 산출부는 상기 제k 사용자 등록 시 저장된 상기 클라우드 서버의 암호키

Figure 112014112166837-pat00015
이용하여 상기 n개의 제3 암호문의 복호화를 수행할 수 있다. Wherein the operation unit generates the n third ciphertexts using the following equation, and the difference data calculation unit calculates the ciphertexts using the cryptographic key of the cloud server
Figure 112014112166837-pat00015
Decryption of the n pieces of third ciphertext can be performed by using the first and second ciphertexts.

Figure 112014112166837-pat00016
Figure 112014112166837-pat00016

여기서, mc는 인증 받고자 하는 사용자의 인증용 생체 특성 데이터를 의미함. Here, mc denotes biometric characteristic data for authentication of a user to be authenticated.

본 발명에 따른 클라우드 서버는 준동형 암호화 기법을 이용하여, 생체 특성을 노출시키기 않으면서 데이터 서버로 액세스하고자 하는 사용자를 인증할 수 있는 장점이 있다. The cloud server according to the present invention is advantageous in that it can authenticate a user who wishes to access a data server without exposing biometric characteristics by using a perceptual encryption technique.

도 1은 본 발명의 일 실시예에 따른 생체 정보 기반 식별 시스템의 개략적인 구성을 도시한 도면이다.
도 2는 본 발명의 일 실시예에 따른 클라우드 서버(130)의 개략적인 구성을 도시한 도면이다.
도 3 내지 도 8는 본 발명의 일 실시예에 따른 생체 정보 기반 식별 방법의 전체적인 흐름도를 도시한 도면이다.
FIG. 1 is a diagram showing a schematic configuration of a biometric information based identification system according to an embodiment of the present invention.
2 is a diagram illustrating a schematic configuration of a cloud server 130 according to an embodiment of the present invention.
FIG. 3 to FIG. 8 are diagrams showing an overall flowchart of a biometric information based identification method according to an embodiment of the present invention.

본 발명은 다양한 변경을 가할 수 있고 여러 가지 실시예를 가질 수 있는 바, 특정 실시예들을 도면에 예시하고 상세한 설명에 상세하게 설명하고자 한다. 그러나, 이는 본 발명을 특정한 실시 형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다. 각 도면을 설명하면서 유사한 참조부호를 유사한 구성요소에 대해 사용하였다. While the invention is susceptible to various modifications and alternative forms, specific embodiments thereof are shown by way of example in the drawings and will herein be described in detail. It should be understood, however, that the invention is not intended to be limited to the particular embodiments, but includes all modifications, equivalents, and alternatives falling within the spirit and scope of the invention. Like reference numerals are used for like elements in describing each drawing.

첨부된 도면을 참조하여 본 발명을 설명하기에 앞서, 다음과 같은 기술들이 본 발명에 사용될 수 있다.
Before describing the present invention with reference to the accompanying drawings, the following techniques may be used in the present invention.

1. 핑거코드 기반의 인증(Fingercode-based Identification)1. Fingercode-based Identification

핑거코드는 지문 이미지를 스캔하여 정수 데이터로 변환한 지문 데이터를 의미한다. 사용자는 자신의 지문 이미지를 스캔하여 핑거코드를 추출한다. 핑거코드는 N개의 독립된 특징 코드의 체인으로 구성된다. 일례로, 핑거코드는 8비트의 정수 벡터일 수 있다. The finger code means fingerprint data that is scanned and converted into integer data. The user scans his fingerprint image and extracts the finger code. A finger code consists of a chain of N independent feature codes. For example, the finger code may be an 8-bit integer vector.

만약, 두 개의 핑거코드

Figure 112014112166837-pat00017
Figure 112014112166837-pat00018
가 있는 경우, 두 개의 핑거코드의 유사도는 유클리드 거리를 이용하여 산출될 수 있으며, 이는 수학식 1과 같이 표현될 수 있다.
If two finger codes
Figure 112014112166837-pat00017
and
Figure 112014112166837-pat00018
, The similarity of the two finger codes can be calculated using the Euclidean distance, which can be expressed by Equation (1).

Figure 112014112166837-pat00019
Figure 112014112166837-pat00019

여기서, dist1는 유클리드 거리를 의미하고,

Figure 112014112166837-pat00020
Figure 112014112166837-pat00021
를 의미한다. 만약, 유클리드 거리가 기 설정된 임계값 이하인 경우, 두 개의 핑거코드는 동일한 것으로 가정한다.
Here, dist 1 denotes the Euclidean distance,
Figure 112014112166837-pat00020
The
Figure 112014112166837-pat00021
. If the Euclidean distance is less than or equal to a predetermined threshold value, it is assumed that the two finger codes are the same.

2. 대칭 준동형 암호화 기법(Symmetric Homomorphic Encryption)2. Symmetric Homomorphic Encryption

준동형 암호화 기법은 암호화된 데이터에 대해 복호화하지 않고 연산을 수행할 수 있는 기법을 의미한다. Enc( )가 준동형 암호화 함수인 경우, 주어진 암호키 k에 대해 암호화 함수는 아래의 수학식 2와 같은 연산이 수행된다.
The perturbed cryptography refers to a technique that can perform operations without decrypting the encrypted data. In the case where Enc () is a cantilever type encryption function, an encryption function for a given encryption key k is performed as shown in Equation (2) below.

Figure 112014112166837-pat00022
Figure 112014112166837-pat00022

여기서,

Figure 112014112166837-pat00023
Figure 112014112166837-pat00024
는 오퍼레이터를 나타낸다. here,
Figure 112014112166837-pat00023
Wow
Figure 112014112166837-pat00024
Represents an operator.

특히, 대칭 준동형 암호화 기법은 덧셈 연산, 뺄셈 연산 및 곱셈 연산을 지원한다. 즉, 두 개의 암호문

Figure 112014112166837-pat00025
Figure 112014112166837-pat00026
가 있는 경우, 아래의 수학식 3과 같은 연산이 수행된다.
In particular, the symmetric quadrature encryption scheme supports addition, subtraction, and multiplication operations. That is,
Figure 112014112166837-pat00025
And
Figure 112014112166837-pat00026
The following equation (3) is performed.

Figure 112014112166837-pat00027
Figure 112014112166837-pat00027

공유 키 기반의 준동형 암호화 기법에서, 암호문은 같은 키를 이용하여 암호화되지만, 대칭 준동형 암호화 기법은 동일한 키를 이용하여 암호화하여 암호문을 생성하지 않으며, 각각의 암호문은 개인 비밀 키를 사용하여 암호화된다.
In the cryptographic scheme based on the shared key, the ciphertext is encrypted using the same key, but the symmetric perturbation scheme does not generate the ciphertext by using the same key, and each ciphertext is encrypted using the private secret key do.

이하, 본 발명에 따른 실시예들을 첨부된 도면을 참조하여 상세하게 설명한다. Hereinafter, embodiments according to the present invention will be described in detail with reference to the accompanying drawings.

도 1은 본 발명의 일 실시예에 따른 생체 정보 기반 식별 시스템의 개략적인 구성을 도시한 도면이다. FIG. 1 is a diagram showing a schematic configuration of a biometric information based identification system according to an embodiment of the present invention.

도 1을 참조하면, 본 발명의 일 실시예에 따른 생체 특성 기반 식별 시스템(100)는 사용자 단말(110), 데이터 서버(120) 및 클라우드 서버(130)를 포함한다. Referring to FIG. 1, a biometric characteristic-based identification system 100 according to an embodiment of the present invention includes a user terminal 110, a data server 120, and a cloud server 130.

사용자(110)는 생체 정보 기반 식별 시스템(100)의 일반적인 사용자와 대응되며, 사용자의 생체 특성 데이터(biometric trait), 일례로, 지문 데이터를 이용하여 데이터 서버(120)로 액세스를 위한 식별 내지 인증을 수행한다. 한편, 설명의 편의를 위해, 생체 특성 데이터를 지문 데이터로 가정하여 설명하지만 본 발명이 이에 한정되는 것은 아니다. The user 110 is associated with a general user of the biometric information based identification system 100 and identifies or authenticates the user to access the data server 120 using biometric trait of the user, . On the other hand, for convenience of explanation, the biometric characteristic data is assumed to be fingerprint data, but the present invention is not limited thereto.

클라우드 서버(130)는 사용자 식별 내지 인증을 위한 동작들을 아웃소싱(outsourcing)한다. 즉, 데이터 서버(120)에서 수행하는 사용자 식별 내지 인증을 위한 동작들 중 적어도 일부는 클라우드 서버(130)가 대신 수행한다. 이에 따라, 식별 내지 인증 동작이 빨라지는 장점이 있다. The cloud server 130 outsources operations for user identification or authentication. That is, at least some of the operations for user identification or authentication performed by the data server 120 are performed by the cloud server 130 instead. This has the advantage of speeding up the identification or authentication operation.

한편, 외부에 있는 공격자가 사용자(110)에서 전송되는 생체 특성 데이터를 도청하는 것으로 가정하면, 공격자는 노출된 생체 특성 데이터를 이용하여 식별 과정을 바이패스하고, 데이터 서버(120)에 성공적으로 접근할 수 있다. 이 때, 생체 특성들이 누출되는 경우 이는 폐기될 수 없게 되므로, 생체 정보가 공격자로부터 비밀로 유지되어야 하는 것이 중요하다. 또한, 클라우드 서버(130)가 불법적인 수익을 얻기 위해 외부의 악의적인 사용자와 결탁하여 사용자의 생체 특성 데이터를 추출하는 경우인 내부 공격이 있을 수도 있다. 따라서, 생체 특성 데이터는 소유자인 사용자만이 접근 가능한 것이 합리적이다. On the other hand, assuming that an attacker on the outside eavesdrops on the biometric characteristic data transmitted from the user 110, the attacker bypasses the identification process using the exposed biometric characteristic data, and successfully accesses the data server 120 can do. At this time, when biometric characteristics leak, it can not be discarded, so it is important that biometric information should be kept secret from the attacker. In addition, there may be an internal attack in which the cloud server 130 extracts biometric characteristic data of a user in cooperation with an external malicious user in order to obtain an illegal profit. Therefore, it is reasonable that biometric characteristic data can be accessed only by the user who is the owner.

따라서, 본 발명에서는 사용자(110)의 생체 특성 데이터를 노출시키지 않으면서 사용자의 식별 내지 인증을 수행하는 생체 특성 기반 식별 시스템(100)을 제공하고자 한다. Accordingly, the present invention provides a biometric characteristic-based identification system 100 that performs identification or authentication of a user without exposing the biometric characteristic data of the user 110.

도 2를 참조하면, 클라우드 서버(130)는 등록부(131) 및 인증부(132)를 포함하며, 인증부(132)는 연산부(1321) 및 차이 데이터 산출부(1322)를 포함한다. 2, the cloud server 130 includes a registration unit 131 and an authentication unit 132. The authentication unit 132 includes an operation unit 1321 and a difference data calculation unit 1322. [

등록부(131)는 n(2 이상의 정수)개의 사용자의 등록을 위해, n개의 사용자와 대응되는 암호화된 등록용 생체 특성 데이터인 n개의 제1 암호문을 저장한다. The registration unit 131 stores n first ciphertexts, which are encrypted biometrics characteristic data corresponding to n users, for registration of n (two or more integers) users.

본 발명의 일 실시예에 따르면, n개의 제1 암호문은 아래의 수학식 4과 같이 표현될 수 있다.
According to an embodiment of the present invention, n first ciphertexts can be expressed as Equation (4) below.

Figure 112014112166837-pat00028
Figure 112014112166837-pat00028

여기서, ki는 n개의 사용자 각각에서 생성된 랜덤 키,

Figure 112014112166837-pat00029
는 n번째 사용자 등록 시, 데이터 서버(120)에서 생성된 키 쌍, m1 내지 mn은 n개의 사용자 각각의 등록용 생체 특성 데이터, Enc()는 준동형 암호화 함수를 각각 의미한다. Here, k i is a random key generated from each of n users,
Figure 112014112166837-pat00029
M 1 to m n denote biometric characteristic data for registration of each of n users, and Enc () denotes a cantilever type encryption function, respectively.

이 때, 최초의 사용자(Initial Client)의 등록과 차후의 사용자(Subsequent Client)의 등록은 서로 다른 방식을 통해 이루어질 수 있다. At this time, the registration of the initial client (Initial Client) and the registration of the subsequent client (subsequent client) can be performed in different ways.

본 발명의 일 실시예에 따르면, 최초의 등록 사용자인 제1 사용자를 등록하는 경우, 등록부(131)는 데이터 서버(120)에서 수신된

Figure 112014112166837-pat00030
(=
Figure 112014112166837-pat00031
, n=1)를 제1 암호문으로서 저장할 수 있다. 이 때, 데이터 서버(120)는 제1 사용자로부터 암호문
Figure 112014112166837-pat00032
를 수신하고, 제1 사용자의 등록 시 생성되는 키 쌍
Figure 112014112166837-pat00033
를 이용하여
Figure 112014112166837-pat00034
를 생성할 수 있다. According to an embodiment of the present invention, when registering the first user as the first registered user, the registering unit 131 registers the first user registered in the data server 120
Figure 112014112166837-pat00030
(=
Figure 112014112166837-pat00031
, n = 1) as the first cipher text. At this time, the data server 120 receives the cipher text
Figure 112014112166837-pat00032
And a key pair generated upon registration of the first user
Figure 112014112166837-pat00033
Using
Figure 112014112166837-pat00034
Lt; / RTI >

또한, 본 발명의 다른 실시예에 따르면, 제1 사용자를 제외한 차후의 제k(1≤k≤n) 사용자를 등록하는 경우, 등록부(131)는 제1 사용자 내지 제k-1 사용자 각각의 제1 암호문을 갱신하고, k번째 사용자의 제1 암호문을 저장할 수 있다. In addition, according to another embodiment of the present invention, when registering the next k (1? K? N) user except for the first user, the registering unit 131 registers 1 ciphertext, and store the first ciphertext of the kth user.

이 때, 제1 사용자 내지 제k-1 사용자의 제1 암호문 갱신의 경우, 등록부(131)는 제k-1 사용자 등록 시 저장되어 있던 제1 암호문과, 키

Figure 112014112166837-pat00035
를 이용하여 0를 암호화한 암호문
Figure 112014112166837-pat00036
를 합을 통해 갱신을 수행할 수 있다. At this time, in the case of updating the first ciphertext of the first user through the (k-1) th user, the registering unit 131 registers the first ciphertext stored in the (k-1)
Figure 112014112166837-pat00035
A cipher text in which 0 is encrypted
Figure 112014112166837-pat00036
The update can be performed through summing.

또한, k번째 사용자의 제1 암호문을 저장의 경우, 등록부(131)는 제k-1 사용자 등록 시 저장되어 있던 클라우드 서버(130)의 암호키

Figure 112014112166837-pat00037
를 이용하여 0를 암호화한 암호문
Figure 112014112166837-pat00038
과, 제k 사용자에서 전송된 암호문
Figure 112014112166837-pat00039
와, 키
Figure 112014112166837-pat00040
를 이용하여 0을 암호화한 암호문
Figure 112014112166837-pat00041
를 이용하여 k번째 사용자의 제1 암호문을 저장할 수 있다. Also, in the case of storing the first ciphertext of the k-th user, the registering unit 131 registers the ciphertext of the cryptographic key of the k-
Figure 112014112166837-pat00037
A cipher text in which 0 is encrypted
Figure 112014112166837-pat00038
And a cipher text transmitted from the k-th user
Figure 112014112166837-pat00039
And a key
Figure 112014112166837-pat00040
A cipher text in which 0 is encrypted using
Figure 112014112166837-pat00041
The first ciphertext of the kth user can be stored.

그리고, 인증부(132)는 인증 받고자 하는 사용자에 대한 인증용 생체 특성 데이터를 암호화한 제2 암호문와 n개의 제1 암호문을 이용하여 인증 받고자 하는 사용자를 인증한다. Then, the authentication unit 132 authenticates the user to be authenticated by using the second cipher text in which the biometric characteristic data for authentication to the user to be authenticated is encrypted and the n first cipher texts.

보다 상세하게, 인증부(132) 내의 연산부(1321)는, n개의 제1 암호문 전체에 대하여, 제1 암호문과 제2 암호문 사이의 가감산 연산을 수행함으로써, n개의 제3 암호문들을 생생할 수 있다. 그리고, 차이 데이터 산출부(1322)는 n개의 제3 암호문의 복호화를 수행함으로써, 등록용 생체 특성 데이터와 상기 인증용 생체 특성 데이터를 뺀 값인 생체 특성 차이 데이터를 n개 산출한다. More specifically, the operation unit 1321 in the authentication unit 132 performs an addition / subtraction operation between the first ciphertext and the second ciphertext with respect to all n first ciphertexts, thereby generating n third ciphertexts have. The difference data calculating unit 1322 calculates n biometric characteristic difference data by subtracting the registration biometric characteristic data and the authentication biometric characteristic data by decrypting n third ciphertexts.

따라서, n개의 생체 특성 차이 데이터 중 최소값이 기 설정된 임계값 이상인 경우, 인증 받고자 하는 사용자를 정당한 사용자로 인증한다. Therefore, when the minimum value among the n biometric characteristic difference data is equal to or greater than a preset threshold value, the user to be authenticated is authenticated as a legitimate user.

본 발명의 일 실시예에 따르면, 연산부(1321)는 아래의 수학식 5를 이용하여 n개의 제3 암호문들을 생성하고, 차이 데이터 산출부(1322)는 상기 제k 사용자 등록 시 저장된 상기 클라우드 서버의 암호키

Figure 112014112166837-pat00042
이용하여 n개의 제3 암호문의 복호화를 수행할 수 있다.
According to an embodiment of the present invention, the operation unit 1321 generates n pieces of third ciphertexts using Equation (5) below, and the difference data calculation unit 1322 calculates Cryptographic key
Figure 112014112166837-pat00042
Decryption of n number of third ciphertexts can be performed.

Figure 112014112166837-pat00043
Figure 112014112166837-pat00043

여기서, mc는 인증 받고자 하는 사용자의 인증용 생체 특성 데이터를 의미한다. Here, m c means biometric characteristic data for authentication of a user to be authenticated.

도 3 내지 도 8는 본 발명의 일 실시예에 따른 생체 정보 기반 식별 방법의 전체적인 흐름도를 도시한 도면이다. FIG. 3 to FIG. 8 are diagrams showing an overall flowchart of a biometric information based identification method according to an embodiment of the present invention.

이하, 도 3 내지 도 8를 참조하여, 각 구성 요소 별 기능 및 각 단계별로 수행되는 과정을 상세하게 설명한다. Hereinafter, the function of each component and the process performed in each step will be described in detail with reference to FIG. 3 to FIG.

단계(310)에서, 사용자(110)는 암호화된 등록용 지문 데이터를 전송하여 사용자 등록을 수행한다. 앞서 설명한 바와 같이, 최초의 사용자의 등록과 차후의 사용자의 등록은 서로 다른 방식을 통해 이루어진다. In step 310, the user 110 transmits the encrypted registration fingerprint data to perform user registration. As described above, the registration of the first user and the registration of the subsequent user are performed in different ways.

이하, 도 4 내지 도 7을 참조하여, 사용자 등록을 상세하게 설명한다. Hereinafter, user registration will be described in detail with reference to FIG. 4 to FIG.

도 4는 최초의 사용자인 제1 사용자의 등록의 세부적인 단계를 도시한 도면이고, 도 5는 도 4에서 전송되는 메시지의 흐름을 나타내는 도면이다. FIG. 4 is a diagram illustrating detailed steps of registration of a first user as a first user, and FIG. 5 is a diagram showing a flow of a message transmitted in FIG.

단계(402)에서, 제1 사용자는 자신의 지문을 스캔하여 등록용 지문 데이터 즉, 핑거코드를 추출한다. In step 402, the first user scans his / her fingerprint and extracts the fingerprint data for registration, i.e., the finger code.

본 발명의 일 실시예에 따르면, 제1 사용자의 지문 데이터 m1는 아래의 수학식 6과 같이 표현될 수 있다.
According to an embodiment of the present invention, the fingerprint data m 1 of the first user may be expressed as Equation (6) below.

Figure 112014112166837-pat00044
Figure 112014112166837-pat00044

여기서, x1k는 고정된 크기의 정수(1≤k≤N)를 나타낸다. Here, x 1k represents an integer of fixed size (1? K? N).

그리고, 단계(404)에서 제1 사용자는 등록용 지문 데이터 m1를 제1 랜덤 키 k1로 암호화하여 데이터 서버(120)로 전송한다. 제1 랜덤 키 k1는 영구적인 것이 아니며, 1회용 키이다. 즉, 제1 사용자가 데이터 서버(120)에 액세스를 원하는 경우, 새로운 암호화 키가 등록용 지문 데이터를 암호화하기 위해 생성된다. In step 404, the first user encrypts the registration fingerprint data m 1 with the first random key k 1 and transmits the encrypted fingerprint data m 1 to the data server 120. The first random key k 1 is not permanent and is a one-time key. That is, when the first user desires to access the data server 120, a new encryption key is generated to encrypt the fingerprint data for registration.

본 발명의 일 실시예에 따르면, 등록용 지문 데이터 m1의 암호화는 아래의 수학식 7과 같이 표현될 수 있다.
According to an embodiment of the present invention, the encryption of the registration fingerprint data m 1 can be expressed as Equation (7) below.

Figure 112014112166837-pat00045
Figure 112014112166837-pat00045

여기서,

Figure 112014112166837-pat00046
는 등록용 지문 데이터 m1를 암호화한 암호문, M는 기 설정된 큰 정수를 각각 의미한다. here,
Figure 112014112166837-pat00046
Denotes a ciphertext obtained by encrypting the registration fingerprint data m 1 , and M denotes a predetermined large integer.

그 후, 단계(406)에서, 데이터 서버(120)는 암호문

Figure 112014112166837-pat00047
를 재암호화(
Figure 112014112166837-pat00048
)하여 클라우드 서버(130)로 전송한다. 이에 따라, 제1 사용자, 데이터 서버(120) 및 클라우드 서버(130)는 단순한 키-교환 프로토콜(simple key-exchange protocol)을 수행하기 위해 그들 사이의 보안 채널을 확립할 수 있다.Then, at step 406, the data server 120 sends a cipher text
Figure 112014112166837-pat00047
Re-encrypt (
Figure 112014112166837-pat00048
And transmits it to the cloud server 130. Accordingly, the first user, the data server 120, and the cloud server 130 can establish a secure channel between them to perform a simple key-exchange protocol.

본 발명의 일 실시예에 따르면, 데이터 서버(120)는 제1 키 쌍

Figure 112014112166837-pat00049
를 이용하여 등록용 지문 데이터 m1를 재암호화하여, 암호문
Figure 112014112166837-pat00050
를 생성할 수 있다. 여기서, 제1 키 쌍
Figure 112014112166837-pat00051
Figure 112014112166837-pat00052
Figure 112014112166837-pat00053
를 의미하는 것으로서, 영구적일 수 있으며, 제1 사용자의 등록 과정에만 사용될 수 있다. According to one embodiment of the present invention, the data server 120 includes a first key pair
Figure 112014112166837-pat00049
And re-encrypts the registration fingerprint data m 1 to generate a cipher text
Figure 112014112166837-pat00050
Lt; / RTI > Here, the first key pair
Figure 112014112166837-pat00051
silver
Figure 112014112166837-pat00052
And
Figure 112014112166837-pat00053
And may be permanent, and may be used only in the registration process of the first user.

계속하여, 단계(408)에서, 제1 사용자는 제1 랜덤 값 r1(

Figure 112014112166837-pat00054
)을 생성하고, 제1 랜덤 키 k1와 제1 랜덤 값 r1의 합인 키
Figure 112014112166837-pat00055
를 데이터 서버(120)로 전송한다. 그리고, 단계(410)에서 데이터 서버(120)는 키 쌍 중 하나인 키
Figure 112014112166837-pat00056
에 키
Figure 112014112166837-pat00057
를 더하여 키
Figure 112014112166837-pat00058
를 클라우드 서버(130)로 전송하며, 단계(412)에서 제1 사용자는 제1 랜덤 값 r1를 직접 클라우드 서버(130)로 전송한다. Subsequently, at step 408, the first user inputs a first random value r 1 (
Figure 112014112166837-pat00054
), And generates a random key k 1 , which is the sum of the first random key k 1 and the first random value r 1
Figure 112014112166837-pat00055
To the data server (120). Then, at step 410, the data server 120 sends a key < RTI ID = 0.0 >
Figure 112014112166837-pat00056
Key
Figure 112014112166837-pat00057
And the key
Figure 112014112166837-pat00058
To the cloud server 130, and in step 412, the first user directly transmits the first random value r 1 to the cloud server 130.

그 후, 단계(414)에서 클라우드 서버(120)는 데이터 서버(120)에서 전송된 키

Figure 112014112166837-pat00059
에서 제1 사용자로부터 전송된 제1 랜덤 값 r1를 뺄셈하여 키
Figure 112014112166837-pat00060
를 획득한다. 이 때, 클라우드 서버(130)는 개인 키들을 알지 못한다. Thereafter, in step 414, the cloud server 120 sends the key < RTI ID = 0.0 >
Figure 112014112166837-pat00059
Lt; RTI ID = 0.0 > r1 < / RTI >
Figure 112014112166837-pat00060
. At this time, the cloud server 130 does not know the private keys.

상기의 과정을 통해 제1 사용자의 등록이 완료되며, 클라우드 서버(130)는 클라우드 암호키

Figure 112014112166837-pat00061
, 제1 암호문인
Figure 112014112166837-pat00062
및 암호문
Figure 112014112166837-pat00063
를 획득한다. 여기서, 클라우드 암호키
Figure 112014112166837-pat00064
는 제1 사용자의 인증 과정에서 클라우드 서버(130)가 사용하는 키를 의미한다. 이 때, 클라우드 암호키
Figure 112014112166837-pat00065
는 다음 사용자 등록 과정에서 폐지되고, 새로운 사용자가 등록되는 경우 업데이트된다. 또한, 제1 암호문
Figure 112014112166837-pat00066
는 등록용 지문 데이터 m1의 암호문이며, 암호문
Figure 112014112166837-pat00067
는 다음 사용자 등록에 사용된다. The registration of the first user is completed through the above process, and the cloud server 130 receives the cloud cryptographic key
Figure 112014112166837-pat00061
, The first cipher text
Figure 112014112166837-pat00062
And ciphertext
Figure 112014112166837-pat00063
. Here, the cloud cryptographic key
Figure 112014112166837-pat00064
Means a key used by the cloud server 130 in the authentication process of the first user. At this time,
Figure 112014112166837-pat00065
Is abolished in the next user registration process and updated when a new user is registered. Also,
Figure 112014112166837-pat00066
Is the cipher text of the registration fingerprint data m 1 ,
Figure 112014112166837-pat00067
Is used for the next user registration.

도 6는 차후의 사용자인 제2 사용자 내지 제n 사용자의 등록의 세부적인 단계를 도시한 도면이고, 도 7는 도 6에서 전송되는 메시지의 흐름을 나타내는 도면이다. FIG. 6 is a view showing detailed steps of registration of a second user to an n-th user, which are the subsequent users, and FIG. 7 is a view showing a flow of a message transmitted in FIG.

보다 상세하게, 도 6 및 도 7에서는 제2 사용자에 대한 등록 과정의 개념을 설명하고 있으며, 이는 제n 사용자의 경우에까지 확장된다. 즉, 제2 사용자에 대한 등록 과정은 제3 사용자 내지 제n 사용자의 등록 과정과 동일하게 적용될 수 있다. More specifically, Figs. 6 and 7 illustrate the concept of the registration process for the second user, which is extended to the case of the n-th user. That is, the registration process for the second user can be applied in the same manner as the registration process for the third to n-th users.

단계(602)에서, 제2 사용자는 자신의 지문을 스캔하여 등록용 지문 데이터 즉, 핑거코드를 추출한다. In step 602, the second user scans the fingerprint of the user and extracts the fingerprint data for registration, that is, the finger code.

본 발명의 일 실시예에 따르면, 제2 사용자의 등록용 지문 데이터 m2는 아래의 수학식 8과 같이 표현될 수 있다.
According to an embodiment of the present invention, the fingerprint data m 2 for registration of the second user can be expressed by the following equation (8).

Figure 112014112166837-pat00068
Figure 112014112166837-pat00068

여기서, x2k는 고정된 크기의 정수(1≤k≤N)를 나타낸다. Here, x 2k represents an integer of fixed size (1? K? N).

그리고, 단계(604)에서 제2 사용자는 등록용 지문 데이터 m2를 제2 랜덤 키 k2로 암호화하여(

Figure 112014112166837-pat00069
) 직접 클라우드 서버(130)로 전송한다. 제2 랜덤 키 k2(
Figure 112014112166837-pat00070
)역시 영구적인 것이 아니며, 1회용 키이다. Then, in step 604, the second user encrypts the registration fingerprint data m 2 with the second random key k 2 (
Figure 112014112166837-pat00069
To the cloud server 130 directly. The second random key k 2 (
Figure 112014112166837-pat00070
) Is not permanent, it is a one-time key.

본 발명의 일 실시예에 따르면, 등록용 지문 데이터 m2의 암호화, 즉 암호문

Figure 112014112166837-pat00071
의 생성은 상기의 수학식 7과 유사하게 수행될 수 있다. According to one embodiment of the present invention, the encryption of the registration fingerprint data m 2 , that is,
Figure 112014112166837-pat00071
May be performed similarly to Equation (7).

그 후, 단계(606)에서, 제2 사용자는 제2 랜덤 값 r2(

Figure 112014112166837-pat00072
)를 선택하여 데이터 서버(120)로 전송한다. Then, at step 606, the second user enters the second random value r 2 (
Figure 112014112166837-pat00072
And transmits the selected data to the data server 120.

계속하여, 단계(608)에서, 데이터 서버(120)는 새로운 제2 키 쌍

Figure 112014112166837-pat00073
를 생성하고, 제1 키 쌍
Figure 112014112166837-pat00074
을 이용하여 키
Figure 112014112166837-pat00075
및 키
Figure 112014112166837-pat00076
를 산출한다. 그 후, 단계(610)에서, 데이터 서버(120)는 직접 제2 사용자에게로 키
Figure 112014112166837-pat00077
를 전송하고, 클라우드 서버(130)로 키
Figure 112014112166837-pat00078
를 전송한다. Subsequently, at step 608, the data server 120 sends a new second key pair
Figure 112014112166837-pat00073
And generates a first key pair
Figure 112014112166837-pat00074
Key
Figure 112014112166837-pat00075
And key
Figure 112014112166837-pat00076
. Thereafter, at step 610, the data server 120 directs the second user
Figure 112014112166837-pat00077
To the cloud server 130,
Figure 112014112166837-pat00078
.

그리고, 단계(612)에서, 제2 사용자는 키

Figure 112014112166837-pat00079
를 산출하고, 이를 클라우드 서버(130)로 전송한다. 이에 따라, 단계(614)에서, 클라우드 서버(130)는 제2 사용자로부터 수신한 정보와 데이터 서버(120)에서 수신한 정보를 이용하여 등록용 지문 데이터 데이터베이스를 아래의 수학식 9와 같이 업데이트한다.
Then, in step 612,
Figure 112014112166837-pat00079
And transmits it to the cloud server 130. Accordingly, in step 614, the cloud server 130 updates the registration fingerprint data database using the information received from the second user and the information received from the data server 120 according to the following equation (9) .

Figure 112014112166837-pat00080
Figure 112014112166837-pat00080

여기서,

Figure 112014112166837-pat00081
는 제1 사용자를 위한 암호문이고,
Figure 112014112166837-pat00082
는 제2 사용자를 위한 암호문이다. 따라서, 등록용 지문 데이터 m1 및 등록용 지문 데이터 m2는 서로 다른 키를 통해 첫번째로 암호화되었지만, 현재는 같은 키로 암호화됨을 확인할 수 있다. here,
Figure 112014112166837-pat00081
Is a cipher text for the first user,
Figure 112014112166837-pat00082
Is a cipher text for the second user. Therefore, it can be confirmed that although the registration fingerprint data m 1 and the registration fingerprint data m 2 are first encrypted through different keys, they are now encrypted with the same key.

한편, 등록용 지문 데이터 데이터베이스가 업데이트된 후에, 클라우드 서버(130)는 업데이트된 키를 통해 안전 채널(secure channel)를 개시한다. 먼저, 클라우드 서버(130)는 랜덤 값

Figure 112014112166837-pat00083
를 생성하고, 정보
Figure 112014112166837-pat00084
를 데이터 서버(120)로 전송한다. 그리고, 데이터 서버(120)는 키
Figure 112014112166837-pat00085
를 삭제하고, 키
Figure 112014112166837-pat00086
를 추가한다. 그 후, 키
Figure 112014112166837-pat00087
는 키
Figure 112014112166837-pat00088
를 제2 사용자에게로 전송한다. 제2 사용자는 키
Figure 112014112166837-pat00089
를 더하여, 최종적인 결과인 키
Figure 112014112166837-pat00090
를 클라우드 서버(130)로 전송한다. 클라우드 서버(130)는
Figure 112014112166837-pat00091
를 뺌으로써 키를 업데이트한다. On the other hand, after the registration fingerprint data database is updated, the cloud server 130 initiates a secure channel through the updated key. First, the cloud server 130 sends a random value
Figure 112014112166837-pat00083
And generates information
Figure 112014112166837-pat00084
To the data server (120). Then, the data server 120 transmits the key
Figure 112014112166837-pat00085
And deletes the key
Figure 112014112166837-pat00086
. Then,
Figure 112014112166837-pat00087
The key
Figure 112014112166837-pat00088
To the second user. The second user is a key
Figure 112014112166837-pat00089
The final result key < RTI ID = 0.0 >
Figure 112014112166837-pat00090
To the cloud server (130). The cloud server 130
Figure 112014112166837-pat00091
To update the key.

동시에, 데이터 서버(120)는 제1 사용자 등록 과정에서 생성된 제1 키 쌍

Figure 112014112166837-pat00092
을 폐지한다. 그리고, 클라우드 서버(130)는
Figure 112014112166837-pat00093
를 키로서 사용한다. At the same time, the data server 120 transmits the first key pair
Figure 112014112166837-pat00092
. Then, the cloud server 130
Figure 112014112166837-pat00093
As a key.

제3 사용자의 등록 과정은 제2 사용자 등록의 과정과 동일한 방식으로 수행된다. 예를 들어, n번째 사용자가 등록용 지문 데이터 mn를 등록하는 경우, 데이터 서버(120)는 제n 키 쌍

Figure 112014112166837-pat00094
를 이용하고, 클라우드 서버(130)는 클라우드 암호키
Figure 112014112166837-pat00095
를 이용한다. 따라서, 등록용 지문 데이터 데이터베이스는 상기의 아래의 수학식 4와 같이 업데이트된다. 이 때, k번째 사용자의 등록 과정에서, 데이터 서버(120)는 k-1번째 사용자의 키 쌍 및 k번째 사용자의키 키 쌍만을 저장하고, 그 이전 키 쌍을 제거한다. The registration process of the third user is performed in the same manner as the process of the second user registration. For example, when the n-th user registers the fingerprint data m n for registration, the data server 120 sends the n-th key pair
Figure 112014112166837-pat00094
And the cloud server 130 uses the cloud cipher key < RTI ID = 0.0 >
Figure 112014112166837-pat00095
. Therefore, the registration fingerprint data database is updated as shown in Equation (4) below. At this time, in the registration process of the k-th user, the data server 120 stores only the k-1-th user key pair and the k-th user key key pair, and removes the previous key pair.

한편, 클라우드 암호키

Figure 112014112166837-pat00096
의 크기는 n이 증가함에 따라 계속 증가되지 않는다. 변조 동작에서,
Figure 112014112166837-pat00097
Figure 112014112166837-pat00098
는 동일하다. 그러므로,
Figure 112014112166837-pat00099
Figure 112014112166837-pat00100
과 동일하다. On the other hand,
Figure 112014112166837-pat00096
Does not continue to increase as n increases. In the modulation operation,
Figure 112014112166837-pat00097
Wow
Figure 112014112166837-pat00098
Are the same. therefore,
Figure 112014112166837-pat00099
The
Figure 112014112166837-pat00100
.

다시, 도 3를 참조하여 생체 정보 기반 식별 방법을 설명한다. 3, a biometric information base identification method will be described.

단계(320)에서, 클라우드 서버(130)는 인증 받고자 하는 사용자의 인증용 생체 특성 데이터를 이용하여 사용자를 인증한다. In step 320, the cloud server 130 authenticates the user using biometric characteristic data for authentication of the user to be authenticated.

도 8는 인증 받고자 하는 사용자의 인증의 세부적인 단계를 도시한 도면이다. 8 is a view showing detailed steps of authentication of a user to be authenticated.

단계(802)에서, 인증 받고자 하는 사용자 uc는 자신의 지문 이미지를 스캔하여 인증용 지문 데이터 mc를 추출한다. 그리고, 단계(804)에서, 사용자 uc는 새로운 랜덤 키 kc를 생성하고, 이를 이용하여 인증용 지문 데이터 mc를 암호화하여 암호문

Figure 112014112166837-pat00101
를 생성하여 직접 클라우드 서버(130)로 전송한다. In step 802, the user u c to be authenticated scans his or her fingerprint image to extract authentication fingerprint data m c . Then, in step 804, the user u c generates a new random key k c , encrypts the authentication fingerprint data m c using the generated random key k c ,
Figure 112014112166837-pat00101
And transmits it to the cloud server 130 directly.

계속하여, 단계(806)에서, 클라우드 서버(130)는 새로운 랜덤 값 r를

Figure 112014112166837-pat00102
에 추가하여 암호문
Figure 112014112166837-pat00103
를 생성하여 데이터 서버(120)로 전송한다(additive homomorphism 알고리즘). Then, at step 806, the cloud server 130 generates a new random value r
Figure 112014112166837-pat00102
In addition,
Figure 112014112166837-pat00103
And transmits it to the data server 120 (additive homomorphism algorithm).

그 후, 단계(808)에서, 데이터 서버(120)는 암호문

Figure 112014112166837-pat00104
를 수신하여 사용자 uc로 전달하고, 단계(810)에서, 사용자 uc는 암호문
Figure 112014112166837-pat00105
를 생성하여 직접 클라우드 서버(130)로 전송한다. 이 결과, 상기의 수학식 5와 같은 n개의 제3 암호문들이 생성된다. Thereafter, in step 808, the data server 120 sends a cipher text
Figure 112014112166837-pat00104
And delivers it to user u c , and in step 810, user u c receives the ciphertext
Figure 112014112166837-pat00105
And transmits it to the cloud server 130 directly. As a result, n third ciphertexts as shown in Equation (5) are generated.

그리고, 단계(812)에서, 클라우드 서버(130)는 클라우드 서버의 암호키

Figure 112014112166837-pat00106
를 이용하여 n개의 제3 암호문을 복호화한다. 이에 따라, n개의 지문 차이 데이터인
Figure 112014112166837-pat00107
,
Figure 112014112166837-pat00108
, …
Figure 112014112166837-pat00109
가 생성된다. Then, in step 812, the cloud server 130 sends the encryption key of the cloud server
Figure 112014112166837-pat00106
Decrypts the n number of third ciphertexts. Thus, n fingerprint difference data
Figure 112014112166837-pat00107
,
Figure 112014112166837-pat00108
, ...
Figure 112014112166837-pat00109
Is generated.

그 후, 단계(814)에서, 클라우드 서버(130)는 n개의 지문 차이 데이터 각각에 대한 유클리드 거리를 산출하고(

Figure 112014112166837-pat00110
), 단계(816)에서, 클라우드 서버(130)는 n개의 지문 차이 데이터의 유클리드 거리 중 최소값을 산출하여 데이터 서버(120)로 전송한다. 그리고, 단계(818)에서, 데이터 서버(120)는 유클리드 거리 중 최소값이 기 설정된 임계값 이상인 경우, 상기 인증 받고자 하는 사용자를 정당한 사용자로 인증한다. Then, at step 814, the cloud server 130 calculates the Euclidean distance for each of the n fingerprint difference data (step < RTI ID = 0.0 >
Figure 112014112166837-pat00110
In step 816, the cloud server 130 calculates the minimum value of the Euclidean distance of n fingerprint difference data and transmits it to the data server 120. [ Then, in step 818, the data server 120 authenticates the user to be authenticated as a legitimate user when the minimum Euclidean distance is equal to or greater than a predetermined threshold value.

정리하면, 본 발명에 따른 생체 특성 기반 식별 시스템(100)에서는, n개의 지문 차이 데이터를 이용하여 사용자 인증을 수행하되, 지문 차이 데이터를 통해서는 지문이 노출될 수 없으므로, 사용자의 프라이버시를 보호할 수 있는 장점이 있다. In summary, in the biometric characteristic-based identification system 100 according to the present invention, the user authentication is performed using n fingerprint difference data. Since the fingerprint can not be exposed through the fingerprint difference data, the user's privacy can be protected There are advantages to be able to.

또한, 본 발명의 실시예들은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 본 발명을 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다. 상기된 하드웨어 장치는 본 발명의 일 실시예들의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.In addition, embodiments of the present invention may be implemented in the form of program instructions that can be executed through various computer means and recorded on 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 those specially designed and constructed for the present invention or may be available to those skilled in the art of computer software. Examples of computer-readable media include magnetic media such as hard disks, floppy disks, and magnetic tape; optical media such as CD-ROMs and DVDs; magnetic media such as floppy disks; Examples of program instructions, such as magneto-optical and ROM, RAM, flash memory and the like, can be executed by a computer using an interpreter or the like, as well as machine code, Includes a high-level language code. The hardware devices described above may be configured to operate as one or more software modules to perform operations of one embodiment of the present invention, and vice versa.

이상과 같이 본 발명에서는 구체적인 구성 요소 등과 같은 특정 사항들과 한정된 실시예 및 도면에 의해 설명되었으나 이는 본 발명의 전반적인 이해를 돕기 위해서 제공된 것일 뿐, 본 발명은 상기의 실시예에 한정되는 것은 아니며, 본 발명이 속하는 분야에서 통상적인 지식을 가진 자라면 이러한 기재로부터 다양한 수정 및 변형이 가능하다. 따라서, 본 발명의 사상은 설명된 실시예에 국한되어 정해져서는 아니되며, 후술하는 특허청구범위뿐 아니라 이 특허청구범위와 균등하거나 등가적 변형이 있는 모든 것들은 본 발명 사상의 범주에 속한다고 할 것이다.As described above, the present invention has been described with reference to particular embodiments, such as specific elements, and limited embodiments and drawings. However, it should be understood that the present invention is not limited to the above- Various modifications and variations may be made thereto by those skilled in the art to which the present invention pertains. Accordingly, the spirit of the present invention should not be construed as being limited to the embodiments described, and all of the equivalents or equivalents of the claims, as well as the following claims, belong to the scope of the present invention .

Claims (5)

준동형 암호화 기법을 이용하여, 생체 특성에 기반해 데이터 서버로 액세스하고자 하는 사용자를 인증하기 위한 클라우드 서버에 있어서,
n(2 이상의 정수)개의 사용자의 등록을 위해, 상기 n개의 사용자와 대응되는 암호화된 등록용 생체 특성 데이터인 n개의 제1 암호문을 저장하는 등록부; 및
인증 받고자 하는 사용자에 대한 인증용 생체 특성 데이터를 암호화한 제2 암호문와 상기 n개의 제1 암호문을 이용하여 상기 인증 받고자 하는 사용자를 인증하는 인증부;를 포함하되,
상기 인증부는, 상기 n개의 제1 암호문 전체에 대하여, 상기 제1 암호문과 상기 제2 암호문 사이의 가감산 연산을 수행함으로써, n개의 제3 암호문들을 생성하는 연산부; 및 상기 n개의 제3 암호문의 복호화를 수행함으로써, 상기 등록용 생체 특성 데이터와 상기 인증용 생체 특성 데이터를 뺀 값인 생체 특성 차이 데이터를 n개 산출하는 차이 데이터 산출부;를 포함하고,
상기 n개의 생체 특성 차이 데이터 중 최소값이 기 설정된 임계값 이상인 경우, 상기 인증 받고자 하는 사용자를 정당한 사용자로 인증하는 것을 특징으로 하는 클라우드 서버.
A cloud server for authenticating a user who wishes to access a data server based on biometric characteristics using a perturbative encryption technique,
a registration unit for storing n first ciphertexts, which are encrypted biometric characteristic data corresponding to the n users, for registration of n (an integer of 2 or more) users; And
And an authentication unit configured to authenticate the user to be authenticated using a second cipher text in which biometric characteristic data for a user to be authenticated is encrypted, and the n first cipher texts,
Wherein the authentication unit comprises: an operation unit for generating n pieces of third ciphertexts by performing an addition / subtraction operation between the first ciphertext and the second ciphertext for the n first ciphertexts; And a difference data calculation unit for calculating n biometric characteristic difference data by subtracting the registration biometric characteristic data and the authentication biometric characteristic data by decrypting the n number of third ciphertexts,
And authenticates the user to be authenticated as a legitimate user when the minimum value among the n biometric characteristic data sets is equal to or greater than a preset threshold value.
제1항에 있어서,
상기 n개의 제1 암호문을 아래의 수학식과 같이 표현되는 것을 특징으로 하는 클라우드 서버.
Figure 112014112166837-pat00111

여기서, ki는 n개의 사용자 각각에서 생성된 랜덤 키,
Figure 112014112166837-pat00112
는 n번째 사용자 등록 시 상기 데이터 서버에서 생성된 키 쌍, m1 내지 mn은 상기 n개의 사용자 각각의 등록용 생체 특성 데이터, Enc( )는 준동형 암호화 함수를 각각 의미함.
The method according to claim 1,
Wherein the n first ciphertexts are expressed by the following equation.
Figure 112014112166837-pat00111

Here, k i is a random key generated from each of n users,
Figure 112014112166837-pat00112
M 1 to m n denote biometric characteristic data for registration of each of the n users, and Enc () denotes a cantilever type encryption function, respectively.
제2항에 있어서,
최초의 등록 사용자인 제1 사용자를 등록하는 경우, 상기 등록부는 상기 데이터 서버에서 수신된
Figure 112014112166837-pat00113
(=
Figure 112014112166837-pat00114
, n=1)를 상기 제1 암호문으로서 저장하고 있되,
상기 데이터 서버는 상기 제1 사용자로부터 암호문
Figure 112014112166837-pat00115
를 수신하고, 상기 제1 사용자의 등록 시 생성되는 키 쌍
Figure 112014112166837-pat00116
를 이용하여
Figure 112014112166837-pat00117
를 생성하는 것을 특징으로 하는 클라우드 서버.
3. The method of claim 2,
When registering the first user as the first registered user, the registering unit registers the first user registered in the data server
Figure 112014112166837-pat00113
(=
Figure 112014112166837-pat00114
, n = 1) as the first cipher text,
Wherein the data server receives a cipher text
Figure 112014112166837-pat00115
And a key pair generated upon registration of the first user
Figure 112014112166837-pat00116
Using
Figure 112014112166837-pat00117
To the cloud server.
제3항에 있어서,
상기 제1 사용자를 제외한 차후의 제k(2≤k≤n) 사용자를 등록하는 경우, 상기 등록부는,
제1 사용자 내지 제k-1 사용자 각각의 제1 암호문을 갱신하되, 제k-1 사용자 등록 시 저장되어 있던 제1 암호문과, 키
Figure 112014112166837-pat00118
를 이용하여 0를 암호화한 암호문
Figure 112014112166837-pat00119
를 합을 통해 갱신을 수행하고,
상기 제k-1 사용자 등록 시 저장되어 있던 상기 클라우드 서버의 암호키
Figure 112014112166837-pat00120
를 이용하여 0를 암호화한 암호문
Figure 112014112166837-pat00121
과, 상기 제k 사용자에서 전송된 암호문
Figure 112014112166837-pat00122
와, 키
Figure 112014112166837-pat00123
를 이용하여 0을 암호화한 암호문
Figure 112014112166837-pat00124
를 이용하여 상기 제k 사용자의 제1 암호문을 저장하는 것을 특징으로 하는 클라우드 서버.
The method of claim 3,
When registering a next k (2? K? N) user excluding the first user,
The first ciphertext of each of the first user to the (k-1) th user is updated, and the first ciphertext stored in the (k-1)
Figure 112014112166837-pat00118
A cipher text in which 0 is encrypted
Figure 112014112166837-pat00119
Lt; RTI ID = 0.0 > a < / RTI &
Wherein the encryption key of the cloud server stored at the (k-1)
Figure 112014112166837-pat00120
A cipher text in which 0 is encrypted
Figure 112014112166837-pat00121
And a ciphertext transmitted from the k-th user
Figure 112014112166837-pat00122
And a key
Figure 112014112166837-pat00123
A cipher text in which 0 is encrypted using
Figure 112014112166837-pat00124
And stores the first cipher text of the k-th user.
제4항에 있어서,
상기 연산부는 아래의 수학식을 이용하여 상기 n개의 제3 암호문들을 생성하고, 상기 차이 데이터 산출부는 상기 제k 사용자 등록 시 저장된 상기 클라우드 서버의 암호키
Figure 112014112166837-pat00125
이용하여 상기 n개의 제3 암호문의 복호화를 수행하는 것을 특징으로 하는 클라우드 서버.

Figure 112014112166837-pat00126

여기서, mc는 인증 받고자 하는 사용자의 인증용 생체 특성 데이터를 의미함.
5. The method of claim 4,
Wherein the operation unit generates the n third ciphertexts using the following equation, and the difference data calculation unit calculates the ciphertexts using the cryptographic key of the cloud server
Figure 112014112166837-pat00125
And decrypts the n pieces of third ciphertext using the decrypted ciphertext.

Figure 112014112166837-pat00126

Here, mc denotes biometric characteristic data for authentication of a user to be authenticated.
KR1020140162852A 2014-11-20 2014-11-20 Cloud server for authenticating user to access the data server using biometric trait KR101528112B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020140162852A KR101528112B1 (en) 2014-11-20 2014-11-20 Cloud server for authenticating user to access the data server using biometric trait

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020140162852A KR101528112B1 (en) 2014-11-20 2014-11-20 Cloud server for authenticating user to access the data server using biometric trait

Publications (1)

Publication Number Publication Date
KR101528112B1 true KR101528112B1 (en) 2015-06-17

Family

ID=53518986

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020140162852A KR101528112B1 (en) 2014-11-20 2014-11-20 Cloud server for authenticating user to access the data server using biometric trait

Country Status (1)

Country Link
KR (1) KR101528112B1 (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2020072882A1 (en) * 2018-10-04 2020-04-09 Visa International Service Association Leveraging multiple devices to enhance security of biometric authentication
CN112715018A (en) * 2018-09-20 2021-04-27 索尼公司 Information processing apparatus, information processing method, and program
CN112715018B (en) * 2018-09-20 2024-04-16 索尼公司 Information processing device, information processing method, and program

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20100106964A1 (en) * 2008-08-07 2010-04-29 Hitachi, Ltd. Authentication terminal, authentication server, and authentication system
WO2013139221A1 (en) * 2012-03-19 2013-09-26 腾讯科技(深圳)有限公司 Authentication method, device and system based on biological characteristics
KR101460541B1 (en) * 2013-07-15 2014-11-11 고려대학교 산학협력단 Public encryption method based on user ID

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20100106964A1 (en) * 2008-08-07 2010-04-29 Hitachi, Ltd. Authentication terminal, authentication server, and authentication system
WO2013139221A1 (en) * 2012-03-19 2013-09-26 腾讯科技(深圳)有限公司 Authentication method, device and system based on biological characteristics
KR101460541B1 (en) * 2013-07-15 2014-11-11 고려대학교 산학협력단 Public encryption method based on user ID

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
김현성 외 1명, 클라우드 컴퓨팅 보안을 위한 준동형 암호 기법 개발 및 응용들, 보안공학연구논문지 제10권 제2호 (2013.04.) *

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112715018A (en) * 2018-09-20 2021-04-27 索尼公司 Information processing apparatus, information processing method, and program
CN112715018B (en) * 2018-09-20 2024-04-16 索尼公司 Information processing device, information processing method, and program
WO2020072882A1 (en) * 2018-10-04 2020-04-09 Visa International Service Association Leveraging multiple devices to enhance security of biometric authentication
US11411738B2 (en) 2018-10-04 2022-08-09 Visa International Service Association Leveraging multiple devices to enhance security of biometric authentication

Similar Documents

Publication Publication Date Title
CN107147652B (en) A kind of safety fusion authentication method of the polymorphic identity of user based on block chain
CN101340279B (en) Method, system and apparatus for data ciphering and deciphering
Gomez-Barrero et al. Privacy-preserving comparison of variable-length data with application to biometric template protection
US20160205098A1 (en) Identity verifying method, apparatus and system, and related devices
WO2018145127A1 (en) Electronic identification verification methods and systems with storage of certification records to a side chain
CN108833361B (en) Identity authentication method and device based on virtual account
CN106161350B (en) Method and device for managing application identifier
US20180294965A1 (en) Apparatus, method and computer program product for authentication
JP2014508456A5 (en)
JP6925686B1 (en) Information processing system, information processing device, information processing method, and information processing program
JP6451938B2 (en) Ciphertext verification system, method, and program
CN111797427A (en) Block chain user identity supervision method and system considering privacy protection
KR20180129475A (en) Method, user terminal and authentication service server for authentication
Torres et al. Effectiveness of fully homomorphic encryption to preserve the privacy of biometric data
CN108809936A (en) A kind of intelligent mobile terminal auth method and its realization system based on Hybrid Encryption algorithm
JP2017524306A (en) Protection against malicious changes in cryptographic operations
ArunPrakash et al. Biometric encoding and biometric authentication (BEBA) protocol for secure cloud in m-commerce environment
JP7323004B2 (en) Data extraction system, data extraction method, registration device and program
JP6671701B1 (en) Arithmetic device, arithmetic method, arithmetic program, and arithmetic system
CN109787747B (en) Anti-quantum-computation multi-encryption cloud storage method and system based on multiple asymmetric key pools
CN112380404B (en) Data filtering method, device and system
CN114501431A (en) Message transmission method and device, storage medium and electronic equipment
KR20200092950A (en) Match the center of the fingerprint in 2 steps
KR101468192B1 (en) Secure User Authentication Scheme Based on Facial Recognition for Smartwork Environment
Fahl et al. Trustsplit: usable confidentiality for social network messaging

Legal Events

Date Code Title Description
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20180406

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20200309

Year of fee payment: 6