[go: up one dir, main page]

KR20190014679A - System and method for providing information on user's transaction - Google Patents

System and method for providing information on user's transaction Download PDF

Info

Publication number
KR20190014679A
KR20190014679A KR1020170098438A KR20170098438A KR20190014679A KR 20190014679 A KR20190014679 A KR 20190014679A KR 1020170098438 A KR1020170098438 A KR 1020170098438A KR 20170098438 A KR20170098438 A KR 20170098438A KR 20190014679 A KR20190014679 A KR 20190014679A
Authority
KR
South Korea
Prior art keywords
user
information
iris
biometric information
radius
Prior art date
Legal status (The legal status 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 status listed.)
Granted
Application number
KR1020170098438A
Other languages
Korean (ko)
Other versions
KR101992252B1 (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 KR1020170098438A priority Critical patent/KR101992252B1/en
Publication of KR20190014679A publication Critical patent/KR20190014679A/en
Application granted granted Critical
Publication of KR101992252B1 publication Critical patent/KR101992252B1/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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 OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/18File system types
    • G06F16/182Distributed file systems
    • G06K9/00597
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/60Analysis of geometric attributes
    • G06T7/62Analysis of geometric attributes of area, perimeter, diameter or volume
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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/18Eye characteristics, e.g. of the iris
    • 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/06Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
    • H04L9/0643Hash functions, e.g. MD5, SHA, HMAC or f9 MAC

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • General Engineering & Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Computer Hardware Design (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Databases & Information Systems (AREA)
  • Geometry (AREA)
  • Power Engineering (AREA)
  • Software Systems (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Ophthalmology & Optometry (AREA)
  • Human Computer Interaction (AREA)
  • Multimedia (AREA)
  • Measurement Of The Respiration, Hearing Ability, Form, And Blood Characteristics Of Living Organisms (AREA)

Abstract

탈중앙화된 분산 데이터베이스 시스템을 이용하여 사용자 트랜잭션에 대한 정보를 제공하는 시스템 및 방법이 개시된다. 본 발명의 일 실시예에 따른 사용자 트랜잭션에 대한 정보를 제공하는 방법은 빛의 양에 따라 변화하는 동공 반지름 크기를 기초로 하여 인증을 시도하는 사용자의 홍채정보가 실제 살아있는 사람의 홍채정보인지를 검증하는 (a) 단계와, 상기 (a) 단계에서의 검증이 성공적으로 이루어진 경우, 상기 사용자에 대한 인증 절차를 수행하는 (b) 단계와, 상기 인증된 사용자의 요청에 의해 발생하는 트랜잭션에 관한 정보를 피어투피어를 기반으로 하는 탈중앙화된 분산 데이터베이스에 기록하는 (c) 단계 및 상기 기록된 트랜잭션에 관한 정보를 사용자 단말로 전송하는 (d) 단계를 포함한다.A system and method for providing information about a user transaction using a decentralized distributed database system is disclosed. A method of providing information on a user transaction according to an exemplary embodiment of the present invention includes verifying whether iris information of a user attempting authentication based on a pupil radius size that varies according to an amount of light is iris information of a living person (B) performing an authentication procedure for the user when the verification in the step (a) is successfully performed, and (b) To a decentralized distributed database based on a peer-to-peer; and (d) transmitting information about the recorded transaction to a user terminal.

Description

사용자 트랜잭션에 대한 정보를 제공하는 시스템 및 방법{System and method for providing information on user's transaction}SYSTEM AND METHOD FOR PROVIDING INFORMATION ON A USER TRANSACTION [0002]

본 발명은 사용자 트랜잭션에 대한 정보를 제공하는 시스템 및 방법에 관한 것으로, 보다 상세하게는 생체 정보를 통해 인증된 사용자가 서비스 제공자에 의해 제공되는 특정 서비스에 대한 트랜잭션을 발생시킬 때마다 발생된 트랜잭션에 관한 정보를 분산 데이터베이스에 기록하고, 상기 분산 데이터베이스에 기록된 사용자 트랜잭션에 관한 정보를 사용자에게 제공하는 방법에 관한 것이다.The present invention relates to a system and method for providing information on a user transaction, and more particularly, to a system and method for providing information on a user transaction, To a distributed database, and to provide a user with information about a user transaction recorded in the distributed database.

최근 다양한 서비스, 특히 금융 서비스, 송금 서비스, 가상 화폐 또는 암호화 화폐 거래에 관한 서비스 등과 같이 자산(asset) 또는 화폐(currency)를 다양한 형태로 거래하도록 하는 서비스 제공자들이 등장하고 있다.Recently, service providers have been appearing to allow various types of assets or currencies to be traded in various forms, such as various services, particularly financial services, remittance services, virtual currency or services related to encrypted currency transactions.

이러한 서비스들의 경우 사용자에 대한 인증, 외부로부터의 해킹에 따른 사용자의 자산 감소, 사용자 트랜잭션의 기록에 대한 위조 또는 변조 등이 중요한 이슈로 되고 있는데, 경우에 따라서는 서비스 제공자와 사용자들 간에 법적 분쟁에 이르기도 한다.In these cases, authentication of users, reduction of users' assets due to hacking from outside, and falsification or alteration of records of user transactions are important issues. In some cases, legal disputes between service providers and users It also leads.

따라서, 서비스 제공자는 사용자에 대한 인증을 보다 강화하고, 사용자가 해당 서비스에 관한 트랜잭션을 일으킬 때마다 발생하는 모든 정보들을 외부의 해킹으로부터 안전하게 기록하고 저장함으로써 사용자들을 보호할 필요성이 대두되었다.Accordingly, there has been a need to protect users by securely recording and storing all the information that occurs whenever a user makes a transaction with respect to the service, from external hacking, and further strengthens authentication of the user.

본 발명은 상술한 문제점을 해결하기 위해 안출된 것으로, 본 발명은 사용자 트랜잭션에 대한 정보를 안전하게 기록하고 정보의 무결성을 유지하면서 기록된 정보를 사용자에게 제공하는 것을 목적으로 한다.SUMMARY OF THE INVENTION The present invention has been made in order to solve the above problems, and it is an object of the present invention to securely record information on user transactions and to provide recorded information to users while maintaining the integrity of information.

본 발명의 기술적 과제들은 이상에서 언급한 기술적 과제들로 제한되지 않으며, 언급되지 않은 또 다른 기술적 과제들은 아래의 기재로부터 본 발명이 속한 기술분야의 통상의 기술자에게 명확하게 이해될 수 있을 것이다.The technical objects of the present invention are not limited to the above-mentioned technical problems, and other technical subjects not mentioned can be clearly understood by those skilled in the art from the following description.

상술한 본 발명의 일 실시예에 따른 사용자 트랜잭션에 대한 정보를 제공하는 시스템은 생체정보 인증기기와 서비스 제공자를 포함한다.The system for providing information on user transactions according to an embodiment of the present invention includes a biometric information authentication device and a service provider.

상기 생체정보 인증기기는 입력된 사용자의 홍채정보를 검증하는 생체정보 검증부와, 상기 검증된 홍채정보를 기초로 암호화 해시 알고리즘를 사용하여 암호화된 해시값을 생성하는 해시 연산부 및 상기 생성된 해시값을 전송하는 통신부를 포함한다.The biometric information authentication device includes a biometric information verification unit for verifying the input iris information, a hash calculation unit for generating a hash value encrypted using the cryptographic hash algorithm based on the verified iris information, And a communication unit for transmitting the data.

상기 서비스 제공자는 상기 생체정보 인증기기로부터 전송된 해시값을 수신하고, 상기 수신한 해시값을 이미 저장된 해시값과 비교함으로써 상기 사용자에 대한 인증을 수행하는 서비스 에이전트 및 상기 인증된 사용자에 관한 트랜잭션 정보를 수집하여 피어투피어를 기반으로 하는 탈중앙화된 분산 데이터베이스 시스템으로 전송하는 데이터베이스 에이전트를 포함한다.Wherein the service provider receives a hash value transmitted from the biometric information authentication device and compares the received hash value with an already stored hash value to obtain a service agent for performing authentication with respect to the user, To a decentralized distributed database system based on peer-to-peer.

바람직하게는, 상기 데이터베이스 에이전트는 상기 분산 데이터베이스 시스템에 기록된 사용자의 트랜잭션 정보를 사용자 단말로 전송한다.Preferably, the database agent transmits transaction information of a user recorded in the distributed database system to a user terminal.

바람직하게는, 상기 서비스 제공자에 이미 저장된 해시값은 상기 생체정보 인증기기의 상기 해시 연산부에서 사용하는 상기 암호화 해시 알고리즘과 동일한 알고리즘에 의해 생성되어 저장된 해시값이다.Preferably, the hash value already stored in the service provider is a hash value generated and stored by the same algorithm as the cryptographic hash algorithm used in the hash calculator of the biometric information authentication device.

본 발명의 또 다른 실시예에 따른 사용자 트랜잭션에 대한 정보를 제공하는 방법은, 빛의 양에 따라 변화하는 동공 반지름 크기를 기초로 하여 인증을 시도하는 사용자의 홍채정보가 실제 살아있는 사람의 홍채정보인지를 검증하는 (a) 단계와, 상기 (a) 단계에서의 검증이 성공적으로 이루어진 경우, 상기 사용자에 대한 인증 절차를 수행하는 (b) 단계와, 상기 인증된 사용자의 요청에 의해 발생하는 트랜잭션에 관한 정보를 피어투피어를 기반으로 하는 탈중앙화된 분산 데이터베이스에 기록하는 (c) 단계 및 상기 기록된 트랜잭션에 관한 정보를 사용자 단말로 전송하는 (d) 단계를 포함한다.According to another embodiment of the present invention, there is provided a method of providing information on a user transaction, the method comprising the steps of: determining whether iris information of a user attempting authentication based on a pupil radius size varying with an amount of light is iris information (B) performing an authentication procedure for the user when the verification in the step (a) is successfully performed, and (b) verifying a transaction generated by the request of the authenticated user To the decentralized distributed database based on the peer-to-peer; and (d) transmitting information about the recorded transaction to the user terminal.

상술한 사용자 트랜잭션에 대한 정보를 제공하는 방법을 따르면, 사용자의 생체정보에 대한 보안 및 사용자 인증 절차를 강화하면서 서비스 제공자가 제공하는 서비스에 대한 사용자의 트랜잭션 정보를 탈중앙화된 분산 데이터베이스 시스템에 안전하게 기록하고 저장할 수 있는 효과를 달성할 수 있다.According to the method of providing information on the user transaction, the security of the user's biometric information and the user authentication process are strengthened, and the transaction information of the user for the service provided by the service provider is securely recorded in the decentralized distributed database system And an effect that can be stored can be achieved.

도 1은 본 발명의 일실시예에 따른 사용자 트랜잭션에 대한 정보를 제공하는 시스템을 나타내는 블록도이다.
도 2는 본 발명의 일실시예에 따른 생체정보 인증기기의 구성을 나타내는 블록도이다.
도 3은 본 발명의 일실시예에 따라 생체정보를 이용한 사용자 인증 절차를 나타내는 도면이다.
도 4는 본 발명의 다른 일실시예에 따라 생체정보를 이용한 사용자 인증 절차를 나타내는 도면이다.
도 5는 본 발명의 또다른 일실시예에 따라 생체정보를 이용한 사용자 인증 절차를 나타내는 도면이다.
도 6은 본 발명의 일 실시예에 따른 홍채 검증 과정을 설명하기 위한 도면이다.
도 7은 본 발명의 일 실시예에 따라 사용자의 동공 크기 변화를 유도하는 과정을 설명하기 위한 이미지이다.
도 8은 본 발명의 일 실시예에 따라 사용자의 눈 영역을 촬영한 이미지를 수신하는 과정을 설명하기 위한 도면이다.
도 9는 본 발명의 일 실시예에 따라 사용자의 눈 영역을 촬영한 이미지에서 홍채 반지름에 대한 동공 반지름을 설명하기 위한 도면이다.
도 10은 본 발명의 일 실시예에 따라 홍채 반지름에 대한 동공 반지름의 비율의 변화량을 산출하는 과정을 설명하기 위한 도면이다.
도 11은 본 발명의 일 실시예에 따라 반지름 비율의 변화율 데이터를 인덱스화하여 인덱스화된 데이터의 평균값을 산출하는 과정을 설명하기 위한 흐름도이다.
도 12는 본 발명의 일 실시예에 따라 인덱스화된 반지름 비율의 변화율들의 평균값 및 반지름 비율의 최대/최소값을 이용하여 홍채를 검증하는 방법을 설명하기 위한 흐름도이다.
도 13은 본 발명의 일실시예 따라 특정 아이디를 갖는 사용자의 트랜잭션 정보를 모아 놓은 데이터 구조를 나태내는 도면이다.
도 14는 본 발명의 일 실시예에 따른 트랜잭션 정보에 대한 데이터 포맷을 나타내는 도면이다.
도 15는 본 발명의 일 실시예에 따른 서비스 제공자를 하드웨어적인 관점의 블록도를 통해 설명하는 도면이다.
1 is a block diagram illustrating a system for providing information about a user transaction according to an embodiment of the present invention.
2 is a block diagram showing a configuration of a biometric information authentication device according to an embodiment of the present invention.
3 is a diagram illustrating a user authentication procedure using biometric information according to an embodiment of the present invention.
4 is a diagram illustrating a user authentication procedure using biometric information according to another embodiment of the present invention.
5 is a diagram illustrating a user authentication procedure using biometric information according to another embodiment of the present invention.
6 is a view for explaining an iris verification process according to an embodiment of the present invention.
7 is an image for explaining a process of deriving a pupil size change of a user according to an embodiment of the present invention.
8 is a view for explaining a process of receiving an image of a user's eye region according to an embodiment of the present invention.
9 is a diagram for explaining a pupil radius for an iris radius in an image of a user's eye region according to an embodiment of the present invention.
10 is a view for explaining a process of calculating a change amount of the pupil radius with respect to the iris radius according to an embodiment of the present invention.
11 is a flowchart illustrating a process of calculating an average value of indexed data by indexing the rate of change data of the radius ratio according to an embodiment of the present invention.
FIG. 12 is a flowchart illustrating a method of verifying iris using an average value of change rates of the indexed radius ratios and a maximum / minimum value of a radius ratio according to an embodiment of the present invention.
13 is a diagram illustrating a data structure in which transaction information of a user having a specific ID is collected according to an embodiment of the present invention.
14 is a diagram illustrating a data format of transaction information according to an embodiment of the present invention.
15 is a block diagram illustrating a service provider according to an embodiment of the present invention.

이하, 첨부된 도면을 참조하여 본 발명의 바람직한 실시예를 상세히 설명한다. 본 발명의 이점 및 특징, 그리고 그것들을 달성하는 방법은 첨부되는 도면과 함께 상세하게 후술되어 있는 실시예들을 참조하면 명확해질 것이다. 그러나 본 발명은 이하에서 게시되는 실시예들에 한정되는 것이 아니라 서로 다른 다양한 형태로 구현될 수 있으며, 단지 본 실시예들은 본 발명의 게시가 완전하도록 하고, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 발명의 범주를 완전하게 알려주기 위해 제공되는 것이며, 본 발명은 청구항의 범주에 의해 정의될 뿐이다. 명세서 전체에 걸쳐 동일 참조 부호는 동일 구성 요소를 지칭한다.Hereinafter, preferred embodiments of the present invention will be described in detail with reference to the accompanying drawings. BRIEF DESCRIPTION OF THE DRAWINGS The advantages and features of the present invention and the manner of achieving them will become apparent with reference to the embodiments described in detail below with reference to the accompanying drawings. The present invention may, however, be embodied in many different forms and should not be construed as limited to the embodiments set forth herein. Rather, these embodiments are provided so that this disclosure will be thorough and complete, and will fully convey the scope of the invention to those skilled in the art. To fully disclose the scope of the invention to those skilled in the art, and the invention is only defined by the scope of the claims. Like reference numerals refer to like elements throughout the specification.

다른 정의가 없다면, 본 명세서에서 사용되는 모든 용어(기술 및 과학적 용어를 포함)는 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 공통적으로 이해될 수 있는 의미로 사용될 수 있을 것이다. 또 일반적으로 사용되는 사전에 정의되어 있는 용어들은 명백하게 특별히 정의되어 있지 않는 한 이상적으로 또는 과도하게 해석되지 않는다.Unless defined otherwise, all terms (including technical and scientific terms) used herein may be used in a sense commonly understood by one of ordinary skill in the art to which this invention belongs. Also, commonly used predefined terms are not ideally or excessively interpreted unless explicitly defined otherwise.

또한, 본 명세서에서 단수형은 문구에서 특별히 언급하지 않는 한 복수형도 포함될 수 있다. 명세서에서 사용되는 "포함한다(comprises)" 및/또는 "포함하는(comprising)"은 언급된 구성요소, 단계, 동작 및/또는 소자는 하나 이상의 다른 구성요소, 단계, 동작 및/또는 소자의 존재 또는 추가를 배제하지 않는다.Also, the singular forms herein may include plural forms unless specifically stated in the text. It is noted that the terms "comprises" and / or "comprising" used in the specification are intended to be inclusive in a manner similar to the components, steps, operations, and / Or additions.

본 발명의 일 실시예에 따른 사용자 트랜잭션에 대한 정보를 제공하는 시스템과 방법을 보다 이해하기 쉽게 하기 위하여 본 명세서에서는 서비스 제공자를 암호화 화폐를 거래하는 플랫폼을 제공하는 거래소로 하여 보다 상세하게 설명하도록 한다. 그러나, 본 발명은 서비스 제공자가 상기 거래소에만 한정되는 것이 아니라 특정 서비스를 제공하는 서버 또는 플랫폼이라면 본 발명에서의 서비스 제공자에 해당할 수 있다는 것은 본 발명의 명세서를 통해 당업자에게 쉽게 이해될 수 있을 것이다.In order to facilitate understanding of the system and method for providing information on user transactions according to an embodiment of the present invention, the present invention will be described in more detail as an exchange providing a platform for trading encrypted money, . However, it should be understood by those skilled in the art that the present invention can be applied to a service provider in the present invention if the service provider is not limited to the exchange but may be a server or a platform providing a specific service .

한편, 사용자 트랜잭션은 이러한 거래소를 이용하는 사용자들의 로그인과 로그아웃 및 거래소 내에서 발생할 수 있는 다양한 트랜잭션, 예를 들어, 암호화 화폐의 구입 또는 판매, 다른 주소(address)로의 암호화 화폐 전송 등을 포함한다.User transactions, on the other hand, include login and logout of users using these exchanges and various transactions that may occur within the exchange, such as purchase or sale of encrypted currency, transmission of encrypted currency to another address, and the like.

도 1은 본 발명의 일실시예에 따른 사용자 트랜잭션에 대한 정보를 제공하는 시스템을 나타내는 블록도이다.1 is a block diagram illustrating a system for providing information about a user transaction according to an embodiment of the present invention.

도 1을 참조하면, 본 발명의 일실시예에 따른 시스템(100)은 서비스 제공자(120), 분산 데이터베이스 시스템(130), 생체정보 인증기기(110) 및 사용자 단말(150)을 포함한다.Referring to FIG. 1, a system 100 according to an exemplary embodiment of the present invention includes a service provider 120, a distributed database system 130, a biometric information authentication device 110, and a user terminal 150.

서비스 제공자(120)는 사용자에게 특정한 서비스를 제공하는 서버나 플랫폼을 의미하며, 사용자로부터의 서비스 요청이나 이벤트 발생에 따른 트랜잭션을 관리하고 처리하는 서비스 에이전트(service agent)(122)와 발생한 트랜잭션에 대한 정보를 처리하는 데이터베이스 에이전트(database agent)(124)를 포함한다.The service provider 120 refers to a server or a platform that provides a specific service to a user. The service provider 120 includes a service agent 122 that manages and processes a service request from a user or a transaction in response to an event occurrence, And a database agent 124 for processing information.

생체정보 인증기기(110)는 사용자가 서비스 제공자(120)에 의해 제공되는 서비스를 이용하기 위하여 사용자 인증을 수행하는 수단으로서, 생체정보의 예로서 지문, 홍채, 정맥, 얼굴 정보 등이 있다The biometric information authentication device 110 is a means for performing user authentication to use a service provided by the service provider 120 by the user, and examples of the biometric information include a fingerprint, iris, vein, and face information

사용자의 생체정보는 보안을 요구하는 매우 중요한 정보이므로 서비스 제공자(120)가 제어하거나 열람할 수 없도록 해야 한다. 더욱이 사용자가 생체정보 인증기기(110)를 사용하여 인증 절차를 수행하는 동안이라도 사용자의 생체정보는 서비스 제공자(120)에게 절대로 노출되어서는 안 된다. 따라서, 서비스 제공자(120)가 사용자의 원래의 생체정보를 알 수 없는 상황(예를 들어, 인코딩 또는 암호화된 생체정보에 대하여 디코딩 또는 복호화를 통해 원래의 생체정보를 알 수 없는 상황)에서 사용자의 생체정보를 인증할 수 있도록 시스템이 구성되어야 하며 이에 관해서는 후술하기로 한다.Since the user's biometric information is very important information requiring security, the service provider 120 should not be able to control or browse the biometric information. Furthermore, the user's biometric information should never be exposed to the service provider 120 even when the user performs the authentication procedure using the biometric information authentication device 110. Therefore, in a situation where the service provider 120 can not know the original biometric information of the user (for example, the original biometric information can not be known through decoding or decoding of the encoded or encrypted biometric information) The system must be configured to authenticate biometric information, which will be described later.

분산 데이터베이스 시스템(130)은 탈중앙화된(decentralized) 분산 데이터베이스 시스템으로서, 피어 투 피어 네트워크(peer to peer network, 이하 'P2P 네트워크'라 칭함)로 구성된다.The distributed database system 130 is a decentralized distributed database system composed of a peer-to-peer network (hereinafter referred to as a P2P network).

상기 P2P 네트워크를 구성하는 각각의 노드(node)들은 동일한 원장(ledger)을 공유하고, 이러한 원장은 상기 노드(node)들 간의 합의 알고리즘(consensus algorithm)에 의해 갱신되고 유지된다.Each node constituting the P2P network shares the same ledger, and this ledger is updated and maintained by a consensus algorithm between the nodes.

위와 같은 특징을 같는 분산 데이터베이스 시스템의 예로서, 비트코인 블록체인(Bitcoin blockchain) 또는 이더리움 블록체인(Ethereum blockchain) 등이 있으며 본 발명에서의 일실시예에 따른 분산 데이터베이스 시스템은 이러한 블록체인 네트워크로 구성된다.A distributed database system according to an embodiment of the present invention includes a bit-coin block chain or an ethereum block chain as an example of a distributed database system having the above- .

서비스 제공자(120)의 데이터베이스 에이전트(database agent)(124)는 발생된 트랜잭션에 관한 정보를 분산 데이터베이스 시스템(130)에 기록한다. 이 때, 분산 데이터베이스 시스템(130)이 앞서 설명한 블록체인 네트워크인 경우에 데이터베이스 에이전트(database agent)(124)는 블록체인 네트워크에 접속하기 위한 네트워크 인터페이스 기능을 포함할 수 있다. 예를 들어, 비트코인 네트워크에 접근하기 위하여 특정 소프트웨어가 데이터베이스 에이전트(124)의 일부 구성요소로서 설치됨으로써 비트코인 블록체인과의 네트워킹이 가능하게 되는 것이다.The database agent 124 of the service provider 120 records information about the generated transaction in the distributed database system 130. [ At this time, when the distributed database system 130 is the above-described block-chain network, the database agent 124 may include a network interface function for connecting to the block-chain network. For example, specific software is installed as a component of the database agent 124 to access the bit coin network, thereby enabling networking with the bit coin block chain.

이러한 경우에 데이터베이스 에이전트(database agent)(124)를 포함하고 있는 서비스 제공자(120)는 블록체인 네트워크를 구성하는 노드(node)로서의 역할을 수행할 수 있는 것으로 이해될 수 있다.In this case, it can be understood that the service provider 120 including the database agent 124 can serve as a node constituting the block-chain network.

만일 서비스 제공자(120)가 블록체인 네트워크를 구성하는 노드(node)로서의 역할을 수행하지 않는 경우에, 데이터베이스 에이전트(database agent)(124)는 특정 노드들과 통신을 수행할 수 있는 통신 인터페이스를 구비하여 연결된 노드에게 트랜잭션 정보를 전달함으로써 트랜잭션 정보가 블록체인 네트워크 상에 있는 원장에 기록되도록 할 수도 있다.In the case where the service provider 120 does not act as a node constituting a block chain network, the database agent 124 has a communication interface capable of performing communication with specific nodes So that the transaction information is written to the ledger on the block-chain network.

또다른 일실시예로서, 비록 도 1에는 도시되지 않았으나 데이터베이스 에이전트(database agent)(124)와 노드를 이어주는 중계 플랫폼을 통해 서비스 제공자(120)에서 발생된 트랜잭션 정보가 블록체인 네트워크로 전달되어 각각의 노드들이 공유하고 있는 원장에 기록될 수도 있다.In another embodiment, although not shown in FIG. 1, transaction information generated in the service provider 120 via a relay platform connecting a database agent 124 and a node is transferred to a block-chain network, It may also be recorded in the ledger shared by the nodes.

이 때, 상기 원장은 어느 누구에게나 공개되는 퍼블릭 원장(public ledger)이거나 허가 받은 사람들에게만 공개되는 프라이빗 원장(private ledger)일 수도 있는데, 전자의 경우 분산 데이터베이스 시스템(130)은 퍼블릭 블록체인 네트워크(public blockchain network)로 후자의 경우에는 프라이빗 블록체인 네트워크(private blockchain network) 또는 기업형 블록체인 네트워크(enterprise blockchain network)로 이해될 수 있다.In this case, the ledger may be a public ledger that is open to anyone, or a private ledger that is disclosed only to authorized persons. In the former case, the distributed database system 130 may be a public ledger, blockchain network. In the latter case, it can be understood as a private blockchain network or an enterprise blockchain network.

데이터베이스 에이전트(database agent)(124)는 블록체인 네트워크에 기록된 트랜잭션 정보를 획득하여 사용자 단말로 제공할 수 있다.A database agent 124 may obtain the transaction information recorded in the block-chain network and provide it to the user terminal.

블록체인 네트워크의 특징을 고려해 보면 원장에 기록된 트랜잭션 정보는 위조 또는 변조가 거의 불가능하므로 사용자 단말(150)로 전달된 사용자의 트랜잭션 정보에 대해서는 매우 강한 신뢰성을 부여할 수 있다.Considering the characteristics of the block-chain network, since the transaction information recorded in the ledger can hardly be falsified or altered, very strong reliability can be given to the transaction information of the user transmitted to the user terminal 150. [

이하, 도 1 및 이에 따르는 도면들을 참조하여 본 발명의 일실시예에 따른 시스템의 동작을 구체적으로 설명하도록 한다.Hereinafter, operation of the system according to an embodiment of the present invention will be described in detail with reference to FIG. 1 and the accompanying drawings.

사용자가 서비스 제공자(120)가 제공하는 서비스를 이용하기 위해서는 자신의 생체정보를 이용하여 인증을 수행한다.In order to use the service provided by the service provider 120, the user performs authentication using his / her biometric information.

이 때, 생체정보의 예로서 지문 정보, 홍채 정보, 얼굴 정보, 정맥혈 정보, 음성 정보 등이 있는데, 사용자의 생체정보는 자신을 식별할 수 있는 가장 정확하고 유용한 정보이므로 타인에게 노출될 경우에는 해당 사용자는 매우 위험한 상황에 놓여질 수 있게 된다.In this case, examples of the biometric information include fingerprint information, iris information, face information, venous blood information, and audio information. Since the user's biometric information is the most accurate and useful information for identifying himself / herself, The user can be placed in a very dangerous situation.

따라서, 사용자가 생체정보 인증기기(110)를 이용하여 서비스 제공자(120)에 억세스하거나 서비스 제공자(120)가 제공하는 중요한 서비스를 이용하기 위한 인증 절차를 수행하는 경우에는 측정 또는 감지된 사용자의 생체정보가 생체정보 인증기기(110)를 통하여 그대로 서비스 제공자(120)에게 전달되어서는 안된다.Accordingly, when a user accesses the service provider 120 using the biometric information authentication device 110 or performs an authentication procedure for using an important service provided by the service provider 120, Information should not be transmitted to the service provider 120 through the biometric information authentication device 110 as it is.

또한, 사용자의 생체정보가 인코딩되거나 암호화된다고 하더라도 서비스 제공자(120) 또는 악의의 제3자가 인코딩된 사용자의 생체정보를 쉽게 디코딩하거나 암호화된 생체정보를 쉽게 해독할 수 있다면 결국 사용자의 생체정보가 타인에게 노출되는 결과가 되기 때문에 해당 사용자는 매우 위험한 상황에 처하게 될 수도 있게 된다.Even if the user's biometric information is encoded or encrypted, if the biometric information of the user of the service provider 120 or the malicious third party can be easily decoded or the encrypted biometric information can be easily decrypted, The user may be in a very dangerous situation.

따라서, 사용자의 생체정보에 대한 보안을 강화하면서 서비스 제공자(120)에 대한 인증 절차를 수행할 수 있는 방법이 필요한 바, 이하 구체적으로 설명하도록 한다.Accordingly, a method of performing the authentication procedure with respect to the service provider 120 while enhancing the security of the user's biometric information is required, and will be described in detail below.

도 2는 본 발명의 일실시예에 따른 생체정보 인증기기(110)의 구성을 나타내는 블록도이고, 도 3 내지 도 5는 생체정보 인증기기(110)를 통하여 서비스 제공자에 대한 인증을 수행하는 방법을 나타내는 도면이다.FIG. 2 is a block diagram illustrating a configuration of a biometric information authentication device 110 according to an embodiment of the present invention. FIGS. 3 to 5 illustrate a method of performing authentication for a service provider through the biometric information authentication device 110 Fig.

도 2에 도시된 바와 같이 생체정보 인증기기(110)는 생체정보 입력부(111), 생체정보 검증부(113), 해시 연산부(115), 중앙처리부(117), 메모리(118) 및 통신부(119)를 포함한다.2, the biometric information authentication device 110 includes a biometric information input unit 111, a biometric information verification unit 113, a hash calculation unit 115, a central processing unit 117, a memory 118, and a communication unit 119 ).

생체정보 입력부(111)는 사용자로부터 사용자의 생체정보를 입력받는다. 만일 사용자의 생체정보가 지문 정보일 경우 생체정보 입력부(111)는 지문 인식 모듈로 구성될 수 있고 홍채 정보일 경우에는 카메라를 통해 사용자의 홍채 이미지를 획득하고, 획득한 이미지를 특정 데이터로 변환시키는 펌웨어 형태의 모듈로 구성될 수 있다.The biometric information input unit 111 receives the biometric information of the user from the user. If the user's biometric information is fingerprint information, the biometric information input unit 111 may be configured as a fingerprint recognition module. If the user's iris information is iris information, the iris image of the user is acquired through the camera, and the acquired image is converted into specific data It can be configured as a module of firmware type.

생체정보 검증부(113)는 입력된 생체정보가 살아있는 사람의 진정한 생체정보인지 또는 위변조된 생체정보인지를 검증한다. 생체정보 검증부(113)는 생체정보 입력부(111)와 결합한 형태로 구현될 수도 있고, 발명의 일실시예에 따라 검증 기능을 생략할 수도 있다.The biometric information verification unit 113 verifies whether the inputted biometric information is genuine biometric information of a living person or biometric information that is forged. The biometric information verification unit 113 may be combined with the biometric information input unit 111, and the verification function may be omitted according to an embodiment of the present invention.

해시 연산부(115)는 획득한 생체정보를 입력값으로 하여 해시(hash) 연산을 수행하거나, 결과값에 해당하는 해시값을 다시 해시 연산하여 또다른 해시값을 얻는 동작을 수행한다.The hash operation unit 115 carries out a hash operation with the obtained biometric information as an input value, or performs a hash operation on the hash value corresponding to the result value again to obtain another hash value.

중앙처리부(117)는 도 2에 도시된 각 처리 또는 기능 단위들(생체정보 입력부(111), 생체정보 검증부(113), 해시 연산부(115), 통신부(119), 메모리(118))을 제어하고, 해시 연산부(115)에서 해시 연산된 해시값을 기초로 하여 사용자 인증 프로세스를 제어한다.The central processing unit 117 is a processing unit that processes each processing or functional unit (biometric information input unit 111, biometric information verification unit 113, hash calculation unit 115, communication unit 119, memory 118) And controls the user authentication process based on the hash value calculated by the hash operation unit 115. [

통신부(119)는 서비스 제공자(120)에 대하여 데이터를 송수신하는 기능을 수행하며, 통신 채널은 유선 또는 무선 모두 가능하다.The communication unit 119 transmits and receives data to and from the service provider 120, and the communication channel can be either wired or wireless.

이하에서는 생체정보로서 홍채 정보를 예로 들어 설명하기로 하지만, 생체정보가 이에 한정되는 것은 아니다.Hereinafter, the iris information will be described as an example of the biometric information, but the biometric information is not limited thereto.

도 3은 본 발명의 일실시예에 따라 생체정보를 이용한 사용자 인증 절차를 나타내는 도면이다.3 is a diagram illustrating a user authentication procedure using biometric information according to an embodiment of the present invention.

생체정보 인증기기(110)의 생체정보 입력부(111)가 사용자의 홍채 이미지를 획득하여 디지털 정보로 변환함으로써 홍채 정보 Io를 얻게 된다(S310). The biometric information input unit 111 of the biometric information authentication device 110 acquires the iris image of the user and converts it into digital information to obtain the iris information I o (S310).

생체정보 검증부(113)는 홍채 정보 Io를 검증하여 살아있는 사람의 홍채인지 여부를 검증하는데(S312), 홍채 검증 방법의 예로서 한국특허공개공보 제10-2003-0010944호 또는 한국등록특허공보 제10-1601541호를 참조할 수 있으며, 홍채 검증 방법의 또다른 실시예는 후술하기로 한다.The biometric information verification unit 113 verifies the iris information I o and verifies whether it is a living person's iris (S312). As an example of the iris verification method, Korean Patent Laid-Open Publication No. 10-2003-0010944 or Korean Registered Patent Publication 10-1601541, and another embodiment of the iris verification method will be described later.

S312에서의 검증 결과 이상이 없는 경우에 중앙처리부(117)는 해시 연산부(115)로 하여금 홍채 정보 Io에 대한 해시 연산을 수행하도록 명령하고, 해시 연산부(115)는 암호화 해시 알고리즘을 이용하여 홍채 정보 Io에 대한 해시값 H1(Io)을 얻게 된다(S314). 이 때, H1는 해시 함수를 의미한다.When there is no abnormality in the verification result in S312, the central processing unit 117 instructs the hash operation unit 115 to perform a hash operation on the iris information I o , and the hash operation unit 115 uses the cryptographic hash algorithm A hash value H 1 (I o ) for the information I o is obtained (S314). In this case, H 1 means a hash function.

즉, 중앙처리부(117)는 사용자로부터 획득한 홍채 이미지로부터 특정 해시 알고리즘을 이용한 해시값을 얻기 위하여 생체정보 입력부(111), 생체정보 검증부(113) 및 해시 연산부(115)의 동작을 제어하게 되는 것이다.That is, the central processing unit 117 controls operations of the biometric information input unit 111, the biometric information verification unit 113, and the hash calculation unit 115 to obtain a hash value using a specific hash algorithm from the iris image acquired from the user .

이 때, 해시 알고리즘은 임의의 길이를 가진 데이터 입력값을 가지고 고정된 길이의 결정적 결과값을 생산한다. 이러한 결과값은 입력값의 디지털 서명이라고 볼 수 있다. 어떤 특정한 입력값에 대한 해시 결과값은 항상 동일하고 쉽게 계산 가능하며 동일한 해시 알고리즘을 실행하는 어떠한 노드에 의해서도 검증이 가능하다.At this time, the hash algorithm produces a deterministic result of a fixed length with a data input value having an arbitrary length. These results can be thought of as digital signatures of input values. The hash result value for a particular input value is always the same, easily computable, and can be verified by any node executing the same hash algorithm.

암호화 해시 알고리즘의 주요 특성은 사실상 동일한 지문(fingerprint)을 생성하는 두 개의 다른 입력값을 검색하는 것이 사실상 불가능하다는 점이다. 당연히 무작위로 입력값을 대입해 보는 것 이외에 원하는 지문(fingerprint)을 생성하기 위해 위와 같은 방법을 이용해서 입력값을 선택하는 것은 사실상 불가능하다.A key characteristic of the cryptographic hash algorithm is that it is virtually impossible to retrieve two different input values that actually produce the same fingerprint. Of course, in addition to randomly inputting input values, it is practically impossible to select an input value using the above method to generate a desired fingerprint.

본 발명에 이용되는 해시 알고리즘은 이러한 암호화 해시 알고리즘인 것을 특징으로 하며, 암호화 해시 알고리즘을 사용하는 해시 함수의 예로서 이미 알려져 있는 SHA(Secure Hash Algorithm)-256이 있다.The hash algorithm used in the present invention is such a cryptographic hash algorithm, and there is a Secure Hash Algorithm (SHA) -256 already known as an example of a hash function using a cryptographic hash algorithm.

생체정보 인증기기(110)의 중앙처리부(117)는 해시 연산부(115)로부터 제공받은 해시값 H1(Io)을 통신부(119)를 통하여 서비스 제공자(120)로 전송한다(S316).The central processing unit 117 of the biometric information authentication device 110 transmits the hash value H 1 (I o ) provided from the hash calculation unit 115 to the service provider 120 through the communication unit 119 (S316).

한편, 서비스 제공자(120)에서는 이미 사용자의 홍채 정보 Io에 대한 해시값을 저장하고 있는 상태에서 S316 단계를 통하여 생체정보 인증기기(110)로부터 해시값 H1(Io)를 수신하게 되면, 서비스 제공자의 서비스 에이전트(122)는 기저장되어 있는 해시값 H'o(Io)와 생체정보 인증기기(110)로부터 수신한 해시값 H1(Io)을 비교한다(S318). 이 때, 해시 함수 H'o는 생체정보 인증기기(110)의 해시 연산부(115)에서 연산하는 해시 함수 H1와 동일한 해시 함수로 이해될 수 있다.On the other hand, if the service provider 120 receives the hash value H 1 (I o ) from the biometric information authentication device 110 through step S316 while storing the hash value of the user's iris information I o , It compares the service provider's service agent 122 is a hash value stored group H 'o (I o) and a hash value H 1 (I o) received from the biometric information authentication device (110) (S318). At this time, the hash function H 'o may be understood in the same hash function as the hash function H 1 for computing the hash calculation unit 115 of the biometric information authentication device 110.

즉, 서비스 에이전트(122)는 사용자의 홍채 정보 자체를 저장하고 있는 것이 아니라 생체정보 인증기기(110)의 해시 연산부(115)에서 사용하는 동일한 해시 알고리즘에 의해 사용자의 홍채 정보 Io에 대한 해시값을 사전에 등록하여 미리 저장하고 있는 것이다.In other words, the service agent 122 is not storing the user's iris information itself of the user by the same hash algorithm used by the hash calculation unit 115 of the biometric information authentication device 110, an iris information, a hash value for the I o Are pre-registered and stored in advance.

S318 단계에서 두 개의 해시값이 서로 일치하는 것으로 판단되면, 서비스 제공자(120)의 서비스 에이전트(122)는 생체정보 인증기기(110)로 인증이 완료되었다는 메시지 AUT를 전송한다(S320).If it is determined in step S318 that the two hash values match each other, the service agent 122 of the service provider 120 transmits a message AUT indicating that the authentication is completed to the biometric information authentication device 110 (S320).

이로써, 사용자의 생체 정보를 이용한 인증 절차는 종료하게 되고, 사용자는 서비스 제공자(120)에 대한 억세스가 가능하게 된다.Thus, the authentication procedure using the user's biometric information is terminated, and the user can access the service provider 120.

도 3에 도시된 실시예의 경우, 사용자의 홍채 정보 또는 해시값이 생체정보 인증기기(110)의 메모리(118)에 저장되는 것이 아니다. 따라서, 이미 자신의 홍채 정보에 대한 해시값이 서비스 제공자(120)에 저장되어 있는 사용자라면 누구나 생체정보 인증기기(110)를 이용하여 인증 절차를 수행할 수 있으므로 도 3의 실시예에 따른 생체정보 인증기기(110)는 범용성의 특징을 갖는다고 볼 수 있다.3, the iris information or the hash value of the user is not stored in the memory 118 of the biometric information authentication device 110. In this case, Therefore, any user who has already stored the hash value of his or her own iris information in the service provider 120 can perform the authentication procedure using the biometric information authentication device 110, so that the biometric information The authentication device 110 can be considered to have the versatility.

도 4는 본 발명의 다른 일실시예에 따라 생체정보를 이용한 사용자 인증 절차를 나타내는 도면이다.4 is a diagram illustrating a user authentication procedure using biometric information according to another embodiment of the present invention.

생체정보 인증기기(110)의 생체정보 입력부(111)가 사용자의 홍채 이미지를 획득하여 디지털 정보로 변환함으로써 홍채 정보 Io를 얻게 된다(S410). The biometric information input unit 111 of the biometric information authentication device 110 acquires the iris image of the user and converts it into digital information to obtain iris information I o (S410).

생체정보 검증부(113)는 홍채 정보 Io를 검증하여 살아있는 사람의 홍채인지 여부를 검증하는데(S412), 검증 방법은 도 3에 도시된 실시예를 설명할 때 이미 언급하였으므로 여기에서는 생략하기로 한다.The biometric information verification unit 113 verifies whether the iris information I o is a living person's iris (S412). Since the verification method has already been described when explaining the embodiment shown in FIG. 3, do.

S412에서의 검증 결과 이상이 없는 경우에 중앙처리부(117)는 해시 연산부(115)로 하여금 홍채 정보 Io에 대한 해시 연산을 수행하도록 명령하고, 해시 연산부(115)는 암호화 해시 알고리즘을 이용하여 홍채 정보 Io에 대한 해시값 H1(Io)을 얻게 된다(S414). 이 때, H1는 해시 함수를 의미한다.In the case where there is no abnormality in the verification result in S412, the central processing unit 117 instructs the hash operation unit 115 to perform a hash operation on the iris information I o , and the hash operation unit 115 uses the cryptographic hash algorithm A hash value H 1 (I o ) for the information I o is obtained (S414). In this case, H 1 means a hash function.

즉, 중앙처리부(117)는 사용자로부터 획득한 홍채 이미지로부터 특정 해시 알고리즘을 이용한 해시값을 얻기 위하여 생체정보 입력부(111), 생체정보 검증부(113) 및 해시 연산부(115)의 동작을 제어하게 되는 것이다.That is, the central processing unit 117 controls operations of the biometric information input unit 111, the biometric information verification unit 113, and the hash calculation unit 115 to obtain a hash value using a specific hash algorithm from the iris image acquired from the user .

또한, 도 4에 도시된 일실시예에서 사용된 해시 알고리즘은 앞서 설명한 암호화 해시 알고리즘이다.In addition, the hash algorithm used in the embodiment shown in Fig. 4 is the cryptographic hash algorithm described above.

한편, 생체정보 인증기기(110)는 이미 사용자의 홍채 정보 Io에 대한 해시값을 메모리(118)에 저장하고 있는데, 이 때 메모리(118)는 보안성이 강한 메모리로서 중앙처리부(117)에 의해서만 억세스될 수 있도록 하는 것이 바람직하다.On the other hand, the biometric information authentication device 110 stores the hash value of the iris information I o of the user in the memory 118. At this time, the memory 118 is stored in the central processing unit 117 as a highly secure memory So that it can be accessed only by the user.

생체정보 인증기기(110)의 중앙처리부(117)는 S414 단계를 통해 현재 입력된 사용자의 홍채 정보 Io에 대한 해시값 H1(Io)와 기저장되어 있는 해시값 Ho(Io)을 비교한다(S416).The central processing unit 117 of the biometric information authentication device 110 obtains the hash value H 1 (I o ) of the iris information I o of the user currently input through the step S414 and the stored hash value H o (I o ) (S416).

즉, 생체정보 인증기기(110)는 사용자의 홍채 정보 자체를 저장하고 있는 것이 아니라 해시 연산부(115)에서 사용하는 동일한 해시 알고리즘에 의해 사용자의 홍채 정보 Io에 대해 연산된 해시값을 사전에 등록하여 미리 메모리(118)에 저장하고 있는 것이다.That is, the biometric information authentication device 110 does not store the iris information itself of the user, but rather registers the hash value calculated for the iris information I o of the user by the same hash algorithm used in the hash calculation unit 115 in advance And stored in the memory 118 in advance.

따라서, 이미 자신의 홍채 정보에 대한 해시값이 셍체정보 인증기기(110)에 저장되어 있는 사용자만이 이 생체정보 인증기기(110)를 이용하여 인증 절차를 수행할 수 있으므로 도 4의 실시예에 따른 생체정보 인증기기는 특정한 사람만이 사용할 수 있는 특징을 갖는다고 볼 수 있다.Therefore, since only the user who has already stored the hash value of his / her iris information in the digital information authentication device 110 can perform the authentication procedure using the biometric information authentication device 110, The biometric information authentication device according to the present invention can be said to have a characteristic that can be used only by a specific person.

S416 단계에서 두 개의 해시값이 서로 일치하는 것으로 판단되면, 생체정보 인증기기(110)의 중앙처리부(117)는 통신부(119)를 통하여 인증이 완료되었다는 메시지 AUT를 서비스 제공자(120)로 전송한다(S418).If it is determined in step S416 that the two hash values match each other, the central processing unit 117 of the biometric information authentication device 110 transmits a message AUT indicating that authentication has been completed to the service provider 120 through the communication unit 119 (S418).

이로써, 사용자의 생체 정보를 이용한 인증 절차는 종료하게 되고, 사용자는 서비스 제공자(120)에 대한 억세스가 가능하게 된다.Thus, the authentication procedure using the user's biometric information is terminated, and the user can access the service provider 120.

도 5는 본 발명의 또다른 일실시예에 따라 생체정보를 이용한 사용자 인증 절차를 나타내는 도면이다.5 is a diagram illustrating a user authentication procedure using biometric information according to another embodiment of the present invention.

생체정보 인증기기(110)의 생체정보 입력부(111)가 사용자의 홍채 이미지를 획득하여 디지털 정보로 변환함으로써 홍채 정보 Io를 얻게 된다(S510). The biometric information input unit 111 of the biometric information authentication device 110 acquires the iris image of the user and converts it into digital information to obtain the iris information I o (S510).

생체정보 검증부(113)는 홍채 정보 Io를 검증하여 살아있는 사람의 홍채인지 여부를 검증하는데(S512), 검증 방법은 도 3에 도시된 실시예를 설명할 때 이미 언급하였으므로 여기에서는 생략하기로 한다.The biometric information verification unit 113 verifies whether the iris is a living person's iris by verifying the iris information I o (S512). Since the verification method has already been described when explaining the embodiment shown in FIG. 3, do.

S512에서의 검증 결과 이상이 없는 경우에 중앙처리부(117)는 해시 연산부(115)로 하여금 홍채 정보 Io에 대한 해시 연산을 수행하도록 명령하고, 해시 연산부(115)는 암호화 해시 알고리즘을 이용하여 홍채 정보 Io에 대한 해시값 H1(Io)을 얻게 된다(S514). 이 때, H1는 해시 함수를 의미한다.If there is no abnormality in the verification result in S512, the central processing unit 117 instructs the hash operation unit 115 to perform the hash operation on the iris information I o , and the hash operation unit 115 uses the cryptographic hash algorithm A hash value H 1 (I o ) for the information I o is obtained (S514). In this case, H 1 means a hash function.

즉, 중앙처리부(117)는 사용자로부터 획득한 홍채 이미지로부터 특정 해시 알고리즘을 이용한 해시값을 얻기 위하여 생체정보 입력부(111), 생체정보 검증부(113) 및 해시 연산부(115)의 동작을 제어하게 되는 것이다.That is, the central processing unit 117 controls operations of the biometric information input unit 111, the biometric information verification unit 113, and the hash calculation unit 115 to obtain a hash value using a specific hash algorithm from the iris image acquired from the user .

또한, 도 5에 도시된 일실시예에서 사용된 해시 알고리즘은 앞서 설명한 암호화 해시 알고리즘이다.In addition, the hash algorithm used in the embodiment shown in Fig. 5 is the above-described cryptographic hash algorithm.

한편, 생체정보 인증기기(110)는 이미 사용자의 홍채 정보 Io에 대한 해시값을 메모리(118)에 저장하고 있는데, 이 때 메모리(118)는 보안성이 강한 저장 수단으로서 중앙처리부(117)에 의해서만 억세스될 수 있도록 하는 것이 바람직하다.The biometric information authentication device 110 stores the hash value of the iris information I o of the user in the memory 118. The memory 118 stores the hash value of the iris information I o of the user in the central processing unit 117, So that it can be accessed only by the user.

생체정보 인증기기(110)의 중앙처리부(117)는 S514 단계를 통해 현재 입력된 사용자의 홍채 정보 Io에 대한 해시값 H1(Io)와 기저장되어 있는 해시값 Ho(Io)을 비교한다(S516).The central processing unit 117 of the biometric information authentication device 110 obtains the hash value H 1 (I o ) of the iris information I o of the user currently input through the step S514 and the hash value H o (I o ) (S516).

즉, 생체정보 인증기기(110)는 사용자의 홍채 정보 자체를 저장하고 있는 것이 아니라 해시 연산부(115)에서 사용하는 동일한 해시 알고리즘에 의해 사용자의 홍채 정보 Io에 대하여 연산된 해시값을 사전에 등록하여 미리 메모리(118)에 저장하고 있는 것이다.That is, the biometric information authentication device 110 does not store the iris information itself of the user, but registers the hash value calculated for the iris information I o of the user by the same hash algorithm used in the hash calculation unit 115 in advance And stored in the memory 118 in advance.

따라서, 이미 자신의 홍채 정보에 대한 해시값이 셍체정보 인증기기(110)에 저장되어 있는 사용자만이 이 생체정보 인증기기(110)를 이용하여 인증 절차를 수행할 수 있으므로 도 5의 실시예에 따른 생체정보 인증기기는 특정한 사람만이 사용할 수 있는 특징을 갖는다고 볼 수 있다.Therefore, since only the user who has already stored the hash value of his / her iris information in the digital information authentication device 110 can perform the authentication procedure using the biometric information authentication device 110, The biometric information authentication device according to the present invention can be said to have a characteristic that can be used only by a specific person.

S516 단계에서 두 개의 해시값이 서로 일치하는 것으로 판단되면, 생체정보 인증기기(110)의 중앙처리부(117)는 일정한 크기를 갖는 난수 R=random(K)를 발생시킨다(S518).If it is determined in step S516 that the two hash values coincide with each other, the central processing unit 117 of the biometric information authentication device 110 generates a random number R = random (K) having a predetermined size (S518).

이 때, random()은 난수를 발생시키는 기능을 갖는 함수를 의미하고, K는 난수를 발생시키기 위한 입력 파라미터(input parameter)라고 볼 수 있는데, K값은 널(NULL)이 될 수도 있다.In this case, random () means a function having a function of generating a random number, and K can be regarded as an input parameter for generating a random number, and the value of K may be null.

상기 입력 파라미터는 사용자의 홍채 정보 Io, 앞서 설명한 해시값 Ho(Io), H1(Io), 사용자 로그인 정보 등을 기초로 결정될 수 있다.The input parameters may be determined based on the iris information I o of the user, the hash values H o (I o ), H 1 (I o ), user login information, and the like described above.

생체정보 인증기기(110)의 중앙처리부(117)는 생성된 난수 R을 통신부(119)를 통하여 서비스 제공자(120)로 전송한다(S520).The central processing unit 117 of the biometric information authentication device 110 transmits the generated random number R to the service provider 120 through the communication unit 119 (S520).

서비스 제공자(120)의 서비스 에이전트(122)는 수신한 난수 R을 입력값으로 하여 해시 함수 H'2를 이용하여 해시값 H'2(R)을 생성하고(S522), 생성된 해시값 H'2(R)을 생체정보 인증기기(110)로 전송한다(S526).The service agent 122 of the service provider 120 generates a hash value H ' 2 (R) using the hash function H' 2 with the received random number R as an input value (S 522) 2 (R) to the biometric information authentication device 110 (S526).

한편, 생체정보 인증기기(110)의 중앙처리부(117)도 해시 연산부(115)로 하여금 서비스 에이전트(122)가 사용한 동일한 해시 함수를 사용하여 S518 단계에서 생성된 난수 R을 입력값으로 하여 해시값 H2(R)을 생성하도록 한다(S524). 이 때, 해시 함수 H2는 H1과 동일한 해시 함수일 수도 있고, 서로 다른 해시 함수일 수도 있다.Meanwhile, the central processing unit 117 of the biometric information authentication device 110 also uses the same hash function used by the service agent 122, using the random number R generated in step S518 as an input value, H 2 (R) (S524). In this case, the hash function H 2 may be the same hash function as H 1, or may be a different hash function.

생체정보 인증기기(110)의 중앙처리부(117)는 S524 단계를 통해 생성된 해시값 H2(R)와 S522 단계를 통해 생성된 해시값 H'2(R)을 비교한다(S528).It compares the central processing unit 117 is a hash value H 2 (R) and the hash value H '2 (R) generated by the generating step S522 via the step S524 of the biometric information authentication device (110) (S528).

S528 단계에서 두 개의 해시값이 서로 일치하는 것으로 판단되면, 생체정보 인증기기(110)의 중앙처리부(117)는 통신부(119)를 통하여 인증이 완료되었다는 메시지 AUT를 서비스 제공자(120)로 전송한다(S530).If it is determined in step S528 that the two hash values match each other, the central processing unit 117 of the biometric information authentication device 110 transmits a message AUT indicating that the authentication has been completed to the service provider 120 through the communication unit 119 (S530).

이로써, 사용자의 생체 정보를 이용한 인증 절차는 종료하게 되고, 사용자는 서비스 제공자(120)에 대한 억세스가 가능하게 된다.Thus, the authentication procedure using the user's biometric information is terminated, and the user can access the service provider 120.

도 5에 도시된 일실시예의 경우 홍채 정보의 해시값을 비교하는 것 이외에도 생체정보 인증기기(110)에서 발생한 난수 R에 대한 해시값을 생체정보 인증기기(110)와 서비스 제공자(120) 각각에서 연산하여 서로 비교하는 과정이 포함되어 있다.5, the hash value of the random number R generated by the biometric information authentication device 110 is compared with the hash value of the iris information by the biometric information authentication device 110 and the service provider 120, respectively And comparing them to each other.

이러한 동작을 위해서는 생체정보 인증기기(110)와 서비스 제공자(120)가 서로 동일한 해시 알고리즘을 탑재하고 있어야 하므로, 도 5에 도시된 일실시예의 경우에는 생체정보 인증기기(110)가 특정한 사람에게만 유효할 뿐만 아니라 특정한 서비스 제공자(120)에 대해서만 인증 절차가 동작되도록 할 필요가 있는 경우 활용될 수 있는 특징을 갖게 된다.In order to perform this operation, the biometric information authentication device 110 and the service provider 120 must have the same hash algorithm. Therefore, in the embodiment shown in FIG. 5, the biometric information authentication device 110 is valid only for a specific person As well as when the authentication procedure needs to be operated only for a specific service provider 120.

예를 들어, 서비스 제공자(120)가 이러닝(E-learning) 서비스를 제공하는 회사라고 한다면, 서비스 제공자(120)는 자신의 다양한 교육 컨텐츠를 보호하기 위해 회원으로 등록한 사용자들에게 홍채 인증기기와 같은 생체정보 인증기기(110)를 배포함으로써 각각의 회원들로 하여금 배포한 홍채 인증기기가 오로지 정당한 사용자에 의해 자신들의 이러닝 서비스를 사용하는 것에만 사용될 수 있도록 특화할 수 있다.For example, if the service provider 120 is a company providing an e-learning service, the service provider 120 may provide the users who are registered as members with the iris authentication device By distributing the biometric information authentication device 110, the iris authentication devices distributed by the respective members can be specialized so that they can be used only by the legitimate users to use their e-learning services.

한편, 도 6 내지 도 12에서 본 발명의 일실시예에 따른 생체정보 인증기기(110)의 생체정보 검증부(113)가 동작하는 방법에 대한 일실시예를 설명하도록 한다.6 to 12, an embodiment of a method of operating the biometric information verification unit 113 of the biometric information authentication device 110 according to an embodiment of the present invention will be described.

도 6은 본 발명의 일 실시예에 따른 홍채 검증 과정을 설명하기 위한 도면이다.6 is a view for explaining an iris verification process according to an embodiment of the present invention.

홍채 검증 절차를 수행하기 위해 필요한 사용자 눈 영역을 촬영한 이미지는 홍채 촬영 장치(600)에 의해 취득될 수 있다. 이를 위해 본 발명의 일 실시예에 따른 홍채 촬영 장치(600)는 촬영부 및 사용자의 눈 영역에 조명을 조사할 수 있는 조명부를 포함할 수 있다. 한편, 도 6에 도시된 홍채 촬영 장치(600)는 도 1에 도시된 생체정보 인증기기(110)에 대응될 수 있다.An image of the user's eye region necessary for performing the iris verification procedure can be acquired by the iris image capturing apparatus 600. [ To this end, the iris photographing apparatus 600 according to an embodiment of the present invention may include a photographing unit and an illuminating unit that can illuminate the eye region of the user. 6 may correspond to the biometric information authentication device 110 shown in FIG.

사용자는 홍채 촬영 장치(600)를 파지한 상태에서 자신의 눈 영역으로 가져가 홍채 이미지를 촬영할 수 있다. 다만, 홍채 촬영 장치(600)는 도 6에 도시된 실시예 이외에 다른 형태로 구현될 수도 있다.The user can take the iris image pickup device 600 to his or her eye region in a state of holding the iris image pickup device 600 and take an iris image. However, the iris photographing apparatus 600 may be implemented in a form other than the embodiment shown in FIG.

예를 들어, 홍채 촬영 장치(600)가 소정의 공간에 고정 설치되어 있고 사용자로 하여금 홍채 촬영 장치(600)에 접근하도록 하여 이미지가 촬영되도록 할 수도 있다.For example, the iris photographing apparatus 600 may be fixedly installed in a predetermined space, and the user may be allowed to approach the iris photographing apparatus 600 to photograph the image.

홍채 촬영 장치(600)가 사용자의 눈 영역을 촬영할 때, 홍채 촬영 장치(600)에 구비된 조명부의 온-오프 상태가 반복되어 사용자 동공의 크기 변화를 유도할 수 있다.When the iris photographing apparatus 600 photographs the user's eye region, the on-off state of the illumination unit provided in the iris photographing apparatus 600 can be repeated to induce a change in the size of the user's pupil.

조명부의 온-오프 상태에 따라 사용자의 동공 크기의 변화를 유도하는 과정은 이하에서 상세하게 설명하도록 한다.The process of inducing a user to change the pupil size according to the on-off state of the illumination unit will be described in detail below.

도 7은 본 발명의 일 실시예에 따라 사용자의 동공 크기 변화를 유도하는 과정을 설명하기 위한 이미지이다.7 is an image for explaining a process of deriving a pupil size change of a user according to an embodiment of the present invention.

동공은 외부의 빛이 망막의 시신경에 닿을 수 있도록 하는 통로이다. 외부에서 바라볼 때 동공은 흑색을 띄게 되는데 이는 빛이 동공을 통하여 안구 속으로 흡수되어 반사되지 않기 때문이다.The pupil is a pathway through which the external light can reach the optic nerve of the retina. When viewed from the outside, the pupil becomes black because the light is absorbed into the eyeball through the pupil and is not reflected.

동공은 눈으로 들어가는 빛의 양을 조절할 수 있도록 주변 근육 조직에 의해 수축 또는 팽창되어 크기가 변화한다. 구체적으로 도 7에 도시된 바와 같이, 밝은 곳에서는 망막에 도달하는 빛의 양을 줄이기 위해 평소보다 동공의 크기가 줄어들게 된다.The pupil contracts or expands by the surrounding muscle tissue to change the size so that the amount of light entering the eye can be controlled. Specifically, as shown in FIG. 7, in the bright place, the pupil size is reduced more than usual to reduce the amount of light reaching the retina.

반면, 어두운 곳에 있는 경우 망막에 도달하는 빛의 양을 늘리기 위해 동공의 크기가 커지게 된다. On the other hand, in the dark, the size of the pupil increases to increase the amount of light reaching the retina.

이와 같이, 외부 빛의 양에 의해 크기가 변화하는 동공의 성질을 이용하면 홍채 인증을 시도하는 눈이 실제 살아있는 사용자의 눈인지 여부를 확인할 수 있게 된다.As described above, by using the property of the pupil whose size changes according to the amount of external light, it is possible to confirm whether or not the eye in which the iris authentication is attempted is the eye of a real living user.

도 8은 본 발명의 일 실시예에 따라 사용자의 눈 영역을 촬영한 이미지를 수신하는 과정을 설명하기 위한 도면이다.8 is a view for explaining a process of receiving an image of a user's eye region according to an embodiment of the present invention.

이하에서 설명할 홍채 검증 방법은 홍채 검증 방법을 수행하는 프로그램이 설치된 전자 장치에 의해 실행될 수 있다. 본 발명의 일 실시예에 따른 전자 장치는 컴퓨링 리소스가 갖춰진 범용적인 장치로 구현될 수 있다.The iris verification method to be described below can be executed by an electronic device in which a program for performing the iris verification method is installed. An electronic device according to an embodiment of the present invention can be implemented as a general-purpose device equipped with a computing resource.

본 발명의 일 실시예에 따른 홍채 검증 방법은 먼저, 조명부가 턴-온된 상태에서 촬영한 사용자의 눈 영역 이미지와 조명부가 턴-오프된 상태에서 촬영한 사용자의 눈 영역 이미지를 수신한다. 이때, 조명부가 턴-온된 상태에서 촬영한 복수개의 이미지와 조명부가 턴-오프된 상태에서 촬영한 복수개의 이미지가 수신될 수 있다.The iris verification method according to an embodiment of the present invention first receives an eye area image of a user photographed while the illumination unit is turned on and an eye area image of a user photographed while the illumination unit is turned off. At this time, a plurality of images taken while the illumination unit is turned on and a plurality of images taken while the illumination unit is turned off can be received.

이를 위해, 본 발명의 일 실시예에 따른 홍채 촬영 장치(600)는 조명부의 온-오프 상태를 달리하며 복수개의 이미지를 촬영할 수 있다.To this end, the iris photographing apparatus 600 according to an embodiment of the present invention may take a plurality of images with different on-off states of the illuminating unit.

예를 들어, 도 8에 도시된 바와 같이 조명부가 턴-온된 상태에서 4장의 이미지를 연속하여 촬영하고 조명부가 턴-오프된 상태에서 4장의 이미지를 촬영하는 과정을 반복하여 연속하여 촬영된 복수의 이미지를 수신할 수 있다.For example, as shown in FIG. 8, a process of photographing four images continuously in a state in which the illumination unit is turned on and photographing four images in a state in which the illumination unit is turned off is repeated, Images can be received.

본 발명의 일 실시예에 따른 홍채 검증 방법은 총 20장의 이미지를 수신하여 홍채 인증을 시도하는 눈이 실제 살아있는 사용자의 눈인지 여부를 확인할 수 있다.The iris verification method according to an embodiment of the present invention receives a total of 20 images and can confirm whether or not eyes that attempt iris authentication are eyes of a real living user.

도 9는 본 발명의 일 실시예에 따라 사용자의 눈 영역을 촬영한 이미지에서 홍채 반지름에 대한 동공 반지름을 설명하기 위한 도면이다.9 is a diagram for explaining a pupil radius for an iris radius in an image of a user's eye region according to an embodiment of the present invention.

홍채 반지름(910)은 동공의 중심에서부터 홍채와 공막의 경계선까지의 거리를 의미하고, 동공 반지름(920)은 동공의 중심에서부터 동공과 홍채의 경계선까지의 거리를 의미한다.The iris radius (910) means the distance from the center of the pupil to the border of the iris and sclera, and the pupil radius (920) means the distance from the center of the pupil to the border of the pupil and iris.

일반적으로, 홍채의 크기는 외부에서 유입되는 빛의 양과 무관하게 항상 일정한 값을 가지므로 각 프레임별로 홍채 반지름(910)은 유사한 값을 가지게 된다.Generally, iris size is always constant regardless of the amount of light incident from the outside, so that the iris radius 910 has a similar value for each frame.

반면, 동공은 외부에서 유입되는 빛의 양에 따라 크기가 변화하므로, 조명부가 턴-온된 상태에서 촬영된 이미지에서의 동공 반지름(도 9에서의 우측 도면에 기재된 920)과 조명부가 턴-오프된 상태에서 촬영된 이미지에서의 동공 반지름(도 9에서의 좌측 도면에 기재된 920)은 서로 다른 값을 가지게 된다.On the other hand, since the pupil changes in size depending on the amount of light that flows from the outside, the pupil radius (920 in the right side view in Fig. 9) in the image taken in the turned-on state of the illumination unit and the illumination unit turn- The pupil radius (920 shown in the left drawing in Fig. 9) in the image photographed in the state has different values.

본 발명의 일 실시예에 따른 홍채 검증 방법은 상술한 바와 같이 외부에서 유입되는 빛의 양에 따라 동공 반지름(920)의 크기가 변화한다는 성질을 이용하여 사용자 인증을 시도하는 홍채 이미지가 실제 살아있는 사람의 홍채 이미지인지 여부를 판단할 수 있다.The iris verification method according to an embodiment of the present invention uses an iris image feature that the size of the pupil radius 920 changes according to the amount of light incident from outside as described above, It is possible to determine whether or not the image is an iris image.

도 10은 본 발명의 일 실시예에 따라 홍채 반지름에 대한 동공 반지름의 비율의 변화량을 산출하는 과정을 설명하기 위한 도면이다.10 is a view for explaining a process of calculating a change amount of the pupil radius with respect to the iris radius according to an embodiment of the present invention.

본 발명의 일 실시예에 따른 홍채 검증 방법은 먼저 각 이미지에서의 홍채 반지름(910)에 대한 동공 반지름(920)의 비율을 계산한다. 이하에서는 각 이미지에서 계산된 홍채 반지름(910)에 대한 동공 반지름(920)의 비율을 "반지름 비율"이라고 표현하도록 한다.The iris verification method according to an embodiment of the present invention first calculates the ratio of the pupil radius 920 to the iris radius 910 in each image. Hereinafter, the ratio of the pupil radius 920 to the iris radius 910 calculated in each image is expressed as " radius ratio ".

반지름 비율을 수식으로 표현하면,Expressing the radius ratio as an equation,

Figure pat00001
Figure pat00001

이 된다. 여기에서 D는 홍채 반지름(910)이고, R은 동공 반지름(920)이다.. Where D is the iris radius (910) and R is the pupil radius (920).

이후, 조명부가 턴-온된 상태에서 촬영된 이미지에서 산출된 반지름 비율과 조명부가 턴-오프된 상태에서 촬영된 이미지에서 산출된 반지름 비율을 순차적으로 교번하여 비교하여 반지름 비율의 변화율을 산출한다.Thereafter, the radius ratio calculated in the image taken in the turned-on state of the illumination unit and the radius ratio calculated in the photographed image in the turned-off state of the illumination unit are sequentially alternately compared to calculate the rate of change of the radius ratio.

각 이미지에서 산출된 반지름 비율을 순차적으로 교번하여 비교한다는 것의 의미는 조명부가 턴-온된 상태에서 촬영된 이미지와 조명부가 턴-오프된 상태에서 촬영된 이미지가 순서를 변경해가며 나열되도록 한 후 인접한 이미지간의 반지름 비율의 변화율을 산출한다는 것을 의미한다.The meaning of sequentially comparing the radial ratios calculated from the respective images means that the images taken in a state in which the illumination unit is turned on and the images taken in a state in which the illumination unit is turned off are changed in order, Which means that the rate of change of the radius ratio between the two is calculated.

예를 들어, 도 10에 도시된 바와 같은 순서로 이미지들을 나열한 후 조명부가 턴-오프된 상태에서 촬영된 제1 이미지에서의 반지름 비율과 조명 부가 턴-온된 상태에서 촬영된 제2 이미지에서의 반지름 비율을 비교하고, 그 다음으로는 조명부가 턴-온된 상태에서 촬영된 제3 이미지에서의 반지름 비율과 조명부가 턴-오프된 상태에서 촬영된 제4 이미지의 반지름 비율을 비교하는 방식으로 반지름 비율을 순차적으로 비교한다는 것을 의미한다.For example, after the images are arranged in the order as shown in FIG. 10, the ratio of the radii in the first image taken in a state in which the illumination unit is turned off and the radii in the second image taken in the state in which the illumination unit is turned on And then the radius ratio in the third image photographed while the illuminating unit is turned on is compared with the radial ratio of the fourth image photographed when the illuminating unit is turned off, Meaning that they compare sequentially.

이를 수식으로 나타내면,When expressed as an equation,

Figure pat00002
Figure pat00002

이 된다. 이때, Cn은 반지름 비율의 변화율을 의미한다. 또한, n번째 이미지와 n+1번째 이미지는 각각 조명부의 동작 상태를 달리하며 촬영한 이미지일 수 있다.. In this case, C n means the rate of change of the radius ratio. Also, the n-th image and the (n + 1) -th image may be images photographed in different operating states of the illumination units, respectively.

예를 들어, 홀수번째 이미지들이 조명부가 턴-온된 상태에서 촬영된 이미지라면 짝수번째 이미지들은 조명부가 턴-오프된 상태에서 촬영된 이미지들일 수 있다. 반대로, 홀수번째 이미지들이 조명부가 턴-오프된 상태에서 촬영된 이미지라면 짝수번째 이미지들은 조명부가 턴-온된 상태에서 촬영된 이미지들일 수 있다.For example, if the odd-numbered images are images taken while the illumination unit is turned on, the even-numbered images may be images taken with the illumination unit turned off. Conversely, if the odd-numbered images are images taken with the illumination unit turned off, the even-numbered images may be images taken with the illumination unit turned on.

한편, 홍채 촬영 장치(600)의 조명부의 온/오프 상태를 달리하며 촬영한 이미자가 N개라면 상술한 과정을 통해 N-1개의 반지름 비율의 변화율을 산출할 수 있게 된다.On the other hand, if there are N imagers that are photographed with different illumination states of the illumination unit of the iris imaging apparatus 600, the rate of change of N-1 radius ratios can be calculated through the above-described process.

본 발명의 일 실시예에 따른 홍채 검증 방법은 N-1개의 반지름 비율의 변화율 데이터를 인덱스화 한다.The iris verification method according to an embodiment of the present invention indexes change rate data of N-1 radius ratios.

도 11은 본 발명의 일 실시예에 따라 반지름 비율의 변화율 데이터를 인덱스화하여 인덱스화된 데이터의 평균값을 산출하는 과정을 설명하기 위한 흐름도이다.11 is a flowchart illustrating a process of calculating an average value of indexed data by indexing the rate of change data of the radius ratio according to an embodiment of the present invention.

본 발명의 일 실시예에 따른 홍채 검증 방법은 도 10에서 설명한 과정을 통해 산출한 반지름 비율의 변화율 데이터를 인덱스화한다(S1110).The iris verification method according to an embodiment of the present invention indexes the rate of change data of the radius ratio calculated through the process described with reference to FIG. 10 (S1110).

구체적으로, 데이터의 인덱스화는 다음과 같은 수식을 통해 이루어질 수 있다.Specifically, the indexing of the data can be performed by the following equation.

Figure pat00003
Figure pat00003

여기에서, In은 인덱스화된 반지름 비율의 변화율 데이터를 의미한다. 반지름 비율의 변화율 데이터의 수가 n개라면 마찬가지로 n개의 인덱스화된 반지름 비율의 변화율 데이터를 산출할 수 있다.Here, I n means rate of change data of the indexed radius ratio. If the number of change rate data of the radius ratio is n, the change rate data of n indexed radius ratios can be similarly calculated.

Cn은 조명부가 턴-온 또는 턴-오프 되었을 때 동공 반지름의 변화율을 나타내는 척도인 바, 그 값이 클수록 반지름의 변화율이 크다는 것을 의미한다.C n is a measure of the rate of change of the pupil radius when the illumination unit is turned on or turned off, which means that the larger the value, the greater the rate of change of radius.

즉, 반지름의 변화율이 클수록 Cn값이 큰 값을 가지게 되는 바, 수학식 3에 의해 산출된 인덱스화된 데이터 In은 반지름이 변화율이 클수록 작은 값을 가지게 된다.That is, as the rate of change of the radius increases, the value of C n becomes larger, so that the indexed data I n calculated by Equation (3) becomes smaller as the radius of change becomes larger.

이후, 산출된 인덱스화된 반지름 비율의 변화율들의 평균값을 산출한다(S1120)Then, an average value of the calculated rate of change of the indexed radius ratio is calculated (S1120)

여기에서, 인덱스화된 반지름 비율의 변화율들의 평균값을 L1으로 표시하면, L1은 다음과 같은 수식을 통해 산출할 수 있다.Here, if the average value of the rate of change of the indexed radius ratio is represented by L 1 , L 1 can be calculated by the following equation.

Figure pat00004
Figure pat00004

여기에서, N은 인덱스화된 반지름 비율의 변화율 데이터의 개수를 의미한다.Here, N means the number of change rate data of the indexed radius ratio.

상술한 과정을 통해 인덱스화된 데이터의 평균값이 산출되면 이를 이용하여 촬영된 홍채 이미지가 살아있는 사람의 홍채 이미지인지 여부를 판단한다.When the average value of the indexed data is calculated through the above process, it is determined whether or not the imaged iris image is an iris image of a living person.

도 12는 본 발명의 일 실시예에 따라 인덱스화된 반지름 비율의 변화율들의 평균값 및 반지름 비율의 최대/최소값을 이용하여 홍채를 검증하는 방법을 설명하기 위한 흐름도이다.FIG. 12 is a flowchart illustrating a method of verifying iris using an average value of change rates of the indexed radius ratios and a maximum / minimum value of a radius ratio according to an embodiment of the present invention.

도 11에서 설명한 과정을 통해 평균값 L1이 산출되면, 산출된 평균값 L1과 기설정된 제1 임계값을 비교한다(S1210). 비교 결과, 평균값 L1이 기 설정된 제1 임계값 이하인 경우 촬영된 홍채 이미지가 살아있는 사람의 홍채 이미지가 아닌 것으로 판단하여 인증을 거부한다(S1230).When the average value L 1 is calculated through the procedure described with reference to FIG. 11, the calculated average value L 1 is compared with a preset first threshold value (S 1210). If the average value L 1 is equal to or less than the preset first threshold value, it is determined that the photographed iris image is not a live iris image, and authentication is rejected (S 1230).

상술한 바와 같이 인덱스화된 데이터의 평균값 L1과 기설정된 임계값을 비교하는 이유는 동공 반지름의 변화율이 일반적인 사람들의 변화율보다 큰 경우를 배제하기 위한 것이다.As described above, the reason why the average value L 1 of the indexed data is compared with the preset threshold value is to exclude the case where the rate of change of the pupil radius is larger than the rate of change of the general people.

도 11에서 설명한 바와 같이, 인덱스화된 데이터 In은 동공 반지름의 변화율이 클수록 작은 값을 가지게 된다. 반면, 동공 반지름의 변화율이 작을수록 큰 값을 가지게 된다. 따라서, 인덱스화된 데이터 In의 평균값이 큰 값을 가질수록 동공 반지름의 변화율이 작다는 것을 의미한다.As described with reference to FIG. 11, the indexed data I n has a smaller value as the change rate of the pupil radius is larger. On the other hand, the smaller the change rate of the pupil radius, the greater the value. Therefore, the larger the average value of the indexed data I n, the smaller the change rate of the pupil radius.

상술한 바와 같이, L1이 기 설정된 임계값 이하인 경우 인증을 거부하게 되는데, L1이 기 설정된 임계값 이하라는 의미는 그만큼 동공 반지름의 변화율이 크다는 것을 의미하는 바, 동공 반지름의 변화율이 통상적인 경우보다 큰 경우 살아있는 사람의 동공이 외부 빛의 양에 반응하여 크기가 변화한 것이 아니고 인위적으로 크기를 조작한 것이라고 판단하여 인증을 거부하는 것이다.As described above, if L 1 is less than or equal to the predetermined threshold value, the authentication is rejected. If L 1 is less than the predetermined threshold value, it means that the rate of change of the pupil radius is large. As a result, If it is larger than the case, the pupil of the living person reacts to the amount of external light and judges that the size is not changed, artificially manipulates the size, and rejects the authentication.

평균값 L1이 기 설정된 제1 임계값보다 큰 경우 다음 단계로, L2를 기 설정된 제2 임계값과 비교한다(S1220). 여기에서 L2는 Cn의 최대값에 대한 Cn의 최소값의 비율로 산출된 값을 의미한다.If the average value L 1 is greater than the preset first threshold value, the next step is to compare L 2 with a preset second threshold value (S 1220). Where L 2 is a value calculated as a ratio of the minimum value of C n to the maximum value of C n .

이를 수식으로 나타내면,When expressed as an equation,

Figure pat00005
Figure pat00005

이 된다..

비교결과 L2가 기 설정된 제2 임계값 이하이면 인증을 시도하는 홍채가 살아있는 사람의 홍채라고 판단하여 인증 절차를 수행한다(S1240). 반면, L2가 기 설정된 제2 임계값을 초과하면 인증을 거부한다(S1230). If the comparison result L 2 is equal to or less than the predetermined second threshold value, it is determined that the iris to be authenticated is the iris of the living person and the authentication procedure is performed (S 1240). On the other hand, if L 2 exceeds the preset second threshold value, the authentication is denied (S 1230).

Cn의 최대값에 대한 최소값의 비율은 동공 반지름의 변화율이 클수록 작은 값을 가지게 된다. 즉, L2가 크다는 것의 의미는 동공 반지름의 변화율의 작다는 것을 의미한다.The ratio of the minimum value to the maximum value of C n has a smaller value as the rate of change of the pupil radius is larger. That is, the larger L 2 means that the change rate of the pupil radius is small.

동공 반지름의 변화율의 크기가 클수록 Cmax는 큰 값을 가지게 되고 Cmin을 작은 값을 가지게 되는데, L2는 Cmax에 대한 Cmin의 비율로 산출되기 때문이다.As the change rate of the pupil radius increases, C max becomes larger and C min becomes smaller, since L 2 is calculated as the ratio of C min to C max .

상술한 바와 같이, 인덱스화된 동공 반지름의 변화율 및 반지름 비율 변화율의 최대값에 대한 반지름 비율 변화율의 최소값의 비율을 이용하면 인증을 시도하는 홍채 이미지가 살아있는 사람의 홍채 이미지인지 여부를 보다 정확하게 판단할 수 있다는 효과를 달성할 수 있다.As described above, by using the rate of change of the indexed pupil radius and the ratio of the minimum value of the rate of change of the radius ratio to the maximum value of the rate of change of the radius ratio, it is possible to more accurately determine whether the iris image to be authenticated is the living iris image The effect can be achieved.

한편, 도 6 내지 도 12에 도시된 방법 및 관련 연산은 도 2에 도시된 생체정보 검증부(113)에서 동작하는 것으로 이해될 수 있다.6 to 12 can be understood to operate in the biometric information verification unit 113 shown in FIG.

한편, 도 3 내지 도 5에 도시된 실시예들과 같은 다양한 방법으로 사용자의 인증이 이루어지면, 사용자는 서비스 제공자(1200가 제공하는 다양한 서비스들을 이용할 수 있게 된다.Meanwhile, when authentication of the user is performed in various ways such as the embodiments shown in FIGS. 3 to 5, the user can use various services provided by the service provider 1200.

서비스 제공자가 암호화 화폐를 거래하는 거래소라고 할 때, 법정 통화(예를 들어, 한국의 경우에는 '원', 미국의 경우에는 '달러')를 이용하여 비트코인(BTC)이나 이더(ETH)와 같은 암호화 화폐를 구매하거나, 암호화 화폐를 다른 주소(address)으로 전송하거나, 비트코인(BTC)로 이더(ETH)를 구입하는 등의 트랜잭션들은 서비스 제공자(120)가 제공하는 서비스를 이용하는 유형들이 될 수 있다.When a service provider is an exchange traded on an encryption currency, it uses a coin (BTC) or an ETH (ETC) with a legal currency (for example, 'won' Transactions, such as purchasing the same encrypted currency, transferring the encrypted currency to another address, or purchasing an Ether (ETH) with bit coin (BTC), are types that use the service provided by the service provider 120 .

서비스 에이전트(122)는 이렇게 다양한 서비스를 제공하고, 이에 대하여 사용자는 자신이 원하는 서비스를 이용함으로써 트랜잭션을 발생시킨다.The service agent 122 provides various services in this manner, and the user generates a transaction by using the desired service.

이 때, 서비스 에이전트(122)는 사용자가 생체정보 인증기기(110)를 이용하여 인증 절차를 성공적으로 수행하여 서비스 제공자(120)에 억세스하게 된 경우도 하나의 트랜잭션이 발생된 것으로 본다.At this time, the service agent 122 considers that one transaction is generated even when the user successfully accesses the service provider 120 by performing the authentication procedure using the biometric information authentication device 110.

또한, 서비스 에이전트(122)는 사용자가 생체정보 인증기기(110)를 이용하여 인증 절차를 성공적으로 수행하여 서비스 제공자(120)와의 연결을 해제하는 경우도 하나의 트랜잭션이 발생된 것으로 본다.Also, the service agent 122 regards that a transaction is generated when the user successfully performs the authentication procedure using the biometric information authentication device 110 to release the connection with the service provider 120. [

서비스 에이전트(122)는 발생된 트랜잭션에 관한 정보를 데이터베이스 에이전트(124)에 제공한다.The service agent 122 provides information about the generated transaction to the database agent 124.

상기 트랜잭션에 관한 정보, 즉 트랜잭션 정보는 트랜잭션을 발생시킨 사용자의 정보, 트랙잭션이 발생한 시간 및 트랙잭션의 내용 등을 포함할 수 있다.Information on the transaction, that is, transaction information, may include information of a user who generated the transaction, the time when the transaction occurred, and contents of the transaction.

데이터베이스 에이전트(124)는 서비스 에이전트(122)로부터 제공된 트랜잭션 정보를 분산 데이터베이스 시스템(130), 즉 블록체인 네트워크로 전달할 수 있다. 이 때, 데이터베이스 에이전트(124)는 발생된 트랜잭션에 대해 트랜잭션 식별자를 생성함으로써 각각의 트랜잭션을 구별할 수 있도록 하며, 생성된 트랜잭션 식별자도 블록체인 네트워크로 전달될 수 있다. 이러한 경우에 서비스 제공자(120)는 블록체인 네트워크를 구성하는 노드(node)로서의 역할을 수행할 수 있다.The database agent 124 may forward the transaction information provided from the service agent 122 to the distributed database system 130, i. E., The block-chain network. At this time, the database agent 124 can distinguish each transaction by generating a transaction identifier for the generated transaction, and the generated transaction identifier can also be transferred to the block-chain network. In this case, the service provider 120 may serve as a node constituting the block-chain network.

본 발명의 다른 일실시예에 따라 상기 트랜잭션 식별자는 블록체인 네트워크를 구성하는 노드에 의해 생성되거나, 서비스 제공자와 블록체인 네트워크를 이어 주는 중계 플랫폼에서 생성될 수도 있다.According to another embodiment of the present invention, the transaction identifier may be generated by a node constituting a block-chain network or may be generated in a relay platform connecting a service provider and a block-chain network.

상기 트랜잭션 식별자는 발생된 트랜잭션과 관련된 이전 트랜잭션을 참조(reference)하는 정보이거나, 또는 현재 발생된 트랜잭션에 대한 해쉬값일 수도 있다.The transaction identifier may be information referencing a previous transaction associated with the generated transaction, or may be a hash value for the currently generated transaction.

서비스 제공자(120)가 블록체인 네트워크를 구성하는 노드로서의 역할을 수행한다고 가정하여, 트랜잭션 식별자 및 트랜잭션 정보가 블록체인 네트워크로 전달되어 각 노드들의 공유하고 있는 원장(ledger)에 기록되는 과정을 설명하도록 하도록 한다.Assume that the service provider 120 acts as a node constituting a block chain network and describes a process in which a transaction identifier and transaction information are transferred to a block chain network and recorded in a ledger shared by each node .

앞서 설명한 생체정보를 이용한 사용자 인증 단계는 아이디/패스워드에 의한 사용자 인증에 대하여 보완적인 역할을 수행할 수 있다. 이러한 경우 서비스 제공자(120)는 특정 아이디를 갖는 사용자별로 트랜잭션을 한데 모아 관리할 수 있다.The user authentication step using the biometric information described above can play a complementary role to the user authentication by the ID / password. In this case, the service provider 120 can collect and manage transactions for each user having a specific ID.

즉, 도 13에 도시된 바와 같이 서비스 제공자(120)의 데이터베이스 에이전트(124)는 특정 아이디 USER_ID를 갖는 사용자의 모든 트랜잭션(Tx_01, Tx_02, Tx_03, …, Tx_n)을 모아 한꺼번에 관리할 수 있다. 이 때, 데이터베이스 에이전트(124)는 각 사용자의 로그인과 로그아웃을 기준으로 하여 관리할 수 있는데, 이러한 경우 도 13에 도시된 바와 같이 USER_ID를 갖는 사용자의 로그인 정보가 가장 처음에 나타나게 되고, 해당 사용자의 로그아웃 정보가 가장 마지막에 나타내게 된다.That is, as shown in FIG. 13, the database agent 124 of the service provider 120 collectively manages all transactions (Tx_01, Tx_02, Tx_03,..., Tx_n) of the user having the specific ID USER_ID. In this case, the database agent 124 can manage based on the login and logout of each user. In this case, as shown in FIG. 13, the login information of the user having the USER_ID appears first, The logout information of " 0 "

도 13에서는 트랜잭션의 순서를 나타내는 정보(Tx_01, Tx_02, Tx_03, …, Tx_n)와, 각각의 트랜잭션에 대한 내용 그리고 사용자의 트랜잭션이 발생한 시간(Time_01, Time_02, Time_03, …, Time_n)에 대한 정보가 USER_ID를 식별자로 하여 데이터 블록을 구성하고 있음을 알 수 있으며, 이러한 데이터 블록은 데이터베이스 에이전트(124)에 관리되고 처리될 수 있다.13, information on the order of transactions (Tx_01, Tx_02, Tx_03, ..., Tx_n), information on each transaction, and time (Time_01, Time_02, Time_03, ..., Time_n) It can be seen that the data block is constituted by using the USER_ID as an identifier, and this data block can be managed and processed by the database agent 124.

한편, 데이터베이스 에이전트(124)는 사용자에 의해 발생된 트랜잭션이 발생될 때마다 발생된 트랜잭션을 블록체인 네트워크로 전파시키거나, 도 13에 도시된 데이터 블록을 단위로 하여 블록체인 네트워크로 전파시킬 수 있다. 이 때, 블록체인 네트워크는 도 1에 도시된 분산 데이터베이스 시스템(130)에 대응한다.On the other hand, the database agent 124 can propagate the transaction generated every time the transaction generated by the user is generated to the block-chain network or propagate the transaction to the block-chain network in units of the data block shown in Fig. 13 . At this time, the block-chain network corresponds to the distributed database system 130 shown in FIG.

블록체인 네트워크로 전파된 각각의 트랜잭션들은 블록체인 네트워크를 구성하는 각각의 노드들에 의해 검증 과정을 거친 후 후보 블록(candidate block)에 포함되고, 기설정된 합의 알고리즘(consensus algorithm)에 의해 상기 후보 블록이 기존의 블록체인에 연결되는 새로운 블록으로 선정됨으로써 상기 각각의 트랜잭션들이 블록체인 상의 블록, 즉 원장(ledger)에 기록된다.Each of the transactions propagated to the block-chain network is subjected to a verification process by each of the nodes constituting the block-chain network, and is then included in a candidate block, and the consecutive algorithm Is selected as a new block to be connected to an existing block chain so that the respective transactions are recorded in a block on a block chain, that is, a ledger.

이 때, 상기 합의 알고리즘은 블록체인의 종류마다 상이할 수 있는데 예를 들어 비트코인 블록체인 또는 현재의 이더리움 블록체인의 경우 작업 증명(Proof of Work), 향후 이더리움 블록체인의 경우 자산 증명(Proof of Stake)에 의한 합의를 이끌어낸다. 본 발명의 일실시예에 따른 합의 알고리즘은 이러한 기존의 합의 알고리즘을 적용할 수 있다.In this case, the consensus algorithm may be different for each type of block chain. For example, in the bit coin block chain or the current ether block chain, the proof of work may be used. In the future, Proof of Stake. A consensus algorithm according to an embodiment of the present invention can apply this existing consensus algorithm.

블록체인을 구성하는 블록, 즉 원장(ledger)에 기록되는 트랜잭션 정보(1400)는 도 14에 도시된 바와 같이 트랜잭션 식별자 정보(Tx_ID) 필드(1410), 사용자 아이디 또는 식별 정보(USER_ID) 필드(1420), 트랜잭션의 카테고리(Tx_category) 필드(1430), 트랜잭션의 상세 정보(Tx_detail) 필드(1440), 그리고 시간 정보(Time_stamp) 필드(1450)를 포함할 수 있다.The transaction information 1400 recorded in the block constituting the block chain, that is, the ledger, includes a transaction identifier information (Tx_ID) field 1410, a user ID or an identification information (USER_ID) field 1420 A transaction category (Tx_category) field 1430, a transaction detail information (Tx_detail) field 1440, and a time information (Time_stamp) field 1450.

트랜잭션 식별자 정보(Tx_ID) 필드(1410)는 블록체인 네트워크상에서 부여되는 해당 트랜잭션에 대한 식별 정보를 포함하며 트랜잭션 고유 정보라고 할 수 있다. 도 13에 도시된 트랜잭션의 순서를 나타내는 정보 Tx_n는 서비스 제공자(120)에 의해 부여된 번호이므로 도 14에 도시된 트랜잭션 식별자 정보(Tx_ID) 필드에 기재된 정보와는 구별된다.The transaction identifier information (Tx_ID) field 1410 includes identification information for a corresponding transaction given on the block-chain network and can be referred to as transaction-specific information. The information Tx_n indicating the order of the transactions shown in FIG. 13 is distinguished from the information described in the transaction identifier information (Tx_ID) field shown in FIG. 14 because it is a number assigned by the service provider 120.

사용자 아이디 또는 식별 정보(USER_ID) 필드(1420)에 기록되는 정보는 도 13에 도시된 'USER_ID'와 동일한 개념으로 이해될 수 있다. The information recorded in the user ID or the identification information (USER_ID) field 1420 can be understood as the same concept as the 'USER_ID' shown in FIG.

트랜잭션의 카테고리(Tx_category) 필드(1430)는 어떠한 종류의 트랜잭션이 발생하였는지를 나타내는 정보를 포함하는데, 예를 들어 도 13에 도시된 'login', '비트코인 구입', '이더 구입', 'logout'등을 나타내는 정보를 포함할 수 있다.The 'Tx_category' field 1430 of the transaction includes information indicating what kind of transaction has occurred. For example, the 'login', 'bit coin purchase', ' And the like.

트랜잭션의 상세 정보(Tx_detail) 필드(1440)는 트랜잭션의 보다 상세한 내용에 대한 정보를 포함할 수 있다. 예를 들어 '100만원으로 0.5 비트코인을 구입함'과 같은 정보가 이 필드의 정보로 포함될 수 있다.The transaction detail (Tx_detail) field 1440 may include information about a more detailed content of the transaction. For example, information such as " purchasing a 0.5-bit coin for 1 million won " may be included as information in this field.

시간 정보(Time_stamp) 필드(1450)는 트랜잭션 정보가 블록체인 네트워크로 전파될 때 블록체인 네트워크 상에서 발행되는 시간 정보를 나타낸다. 따라서, 도 13에 도시된 사용자의 트랜잭션이 발생한 시간(Time_01, Time_02, Time_03, …, Time_n)에 대한 정보는 서비스 제공자(120)에 의해 발행되는 시간 정보이므로 도 14에 도시된 시간 정보(Time_stamp) 필드(1450)에 포함된 시간 정보와는 구별된다.The Time_stamp field 1450 indicates time information that is issued on the block-chain network when the transaction information is propagated to the block-chain network. Therefore, since the information on the time (Time_01, Time_02, Time_03, ..., Time_n) of the user's transaction shown in FIG. 13 is time information issued by the service provider 120, the time information (Time_stamp) Field 1450. [0213]

블록체인 네트워크에서 새로운 블록이 생성되어 기존의 블록체인에 연결되는 과정이 반복되면서 이미 블록체인에 기록된 사용자의 트랜잭션은 컨펌값(value of confirmation)이 점차 증가하게 되는데, 서비스 제공자(120)의 데이터베이스 에이전트(124)는 일정한 컨펌값에 도달했을 때 그 결과를 유무선 네트워크(140)를 통해 사용자 단말(150)로 전송한다.A new block is generated in the block chain network and is connected to the existing block chain. As a result, the value of confirmation of the transaction of the user already recorded in the block chain gradually increases. The agent 124 transmits the result to the user terminal 150 via the wired / wireless network 140 when a predetermined conform value is reached.

이 때, 사용자 단말(150)은 도 13 또는 도 14에 도시된 정보들을 서비스 제공자(120)의 데이터베이스 에이전트(124)로부터 수신하여 사용자에게 제공한다. 이 때, 도 13 및 도 14에서는 도시되지 않았으나, 사용자의 트랜잭션이 기록된 블록 정보도 사용자 단말(150)을 통해 사용자에게 제공될 수도 있다At this time, the user terminal 150 receives the information shown in FIG. 13 or 14 from the database agent 124 of the service provider 120 and provides the information to the user. 13 and 14, the block information in which the transaction of the user is recorded may also be provided to the user through the user terminal 150

한편, 본 발명은 암호화 화폐를 거래하는 거래소를 예를 들어 설명하고 있으나 이에 한정되지 않는다. 예를 들어, 이러닝(E-learning) 서비스, 중요 업무 관리, 출퇴근 관리, 전자상거래 등과 같은 다양한 영역에 적용될 수 있다.In the meantime, the present invention is described by exemplifying an exchange trading an encrypted currency, but is not limited thereto. For example, it can be applied to various fields such as e-learning service, important business management, commute management, electronic commerce, and the like.

도 15는 본 발명의 일 실시예에 따른 서비스 제공자를 하드웨어적인 관점의 블록도를 통해 설명하는 도면이다.15 is a block diagram illustrating a service provider according to an embodiment of the present invention.

도 15에 도시된 서비스 제공자는(1500)는 도 1에 도시된 서비스 제공자(120)에 대응하며, 프로세서(1510), 스토리지(1520), 메모리(1530), NIC(Network Interface Card, 1540) 및 버스(BUS)(1550)를 포함한다.The service provider 1500 shown in FIG. 15 corresponds to the service provider 120 shown in FIG. 1 and includes a processor 1510, a storage 1520, a memory 1530, a network interface card 1540, And a bus (BUS) 1550.

프로세서(1510)는 생체정보를 이용한 사용자 인증 절차 및 사용자로부터 요청된 서비스를 실행함으로써 다양한 트랜잭션을 발생시키고, 발생된 트랜잭션에 대한 정보를 블록체인과 같은 분산 데이터베이스 시스템에 기록하거나, 상기 분산 데이터베이스 시스템에 기록된 사용자의 트랜잭션 정보를 검색 또는 사용자에게 제공할 수 있는 프로그램을 실행한다. 그러나, 프로세서(1510)에서 실행될 수 있는 프로그램은 이에 한정되지 않으며 다른 범용적인 프로그램도 실행될 수도 있다.The processor 1510 generates various transactions by executing a user authentication procedure using biometric information and a service requested by a user, and records information on the generated transaction in a distributed database system such as a block chain, And executes a program capable of searching or providing the recorded transaction information of the user to the user. However, the program that can be executed by the processor 1510 is not limited thereto, and other general-purpose programs may also be executed.

스토리지(5320)에는 앞서 설명한 프로세서(1510)의 동작을 수행할 수 있는 프로그램 또는 프로세서(1510)의 동작 수행 결과에 따른 정보들이 저장된다.The storage 5320 stores a program capable of performing the operation of the processor 1510 or information according to the operation result of the processor 1510 as described above.

예를 들어, 사용자 인증 절차를 수행하기 위한 프로그램의 경우 도 3 내지 도 5에 도시된 알고리즘이 실행되도록 하는 프로그램이 스토리지(1520)에 저장되거나, 도 13에 도시된 것과 같이 특정 아이디를 갖는 사용자의 모든 트랜잭션(Tx_01, Tx_02, Tx_03, …, Tx_n)이 스토리지(1520)에 저장될 수 있다.For example, in the case of a program for performing the user authentication procedure, a program for causing the algorithm shown in Figs. 3 to 5 to be executed to be stored is stored in the storage 1520, or a user having a specific ID All transactions (Tx_01, Tx_02, Tx_03, ..., Tx_n) can be stored in the storage 1520.

메모리(1530)는 스토리지(1520)에 저장된 프로그램들을 로딩하여, 그 프로그램이 프로세서(1510)에서 실행될 수 있도록 한다.The memory 1530 loads the programs stored in the storage 1520 so that the programs can be executed in the processor 1510. [

NIC(1540)는 분산 데이터베이스 시스템(130) 또는 사용자 단말(150)과의 통신을 수행하는 인터페이스 역할을 수행한다.The NIC 1540 serves as an interface for performing communication with the distributed database system 130 or the user terminal 150.

또한, NIC(1540)에는 다른 보조적인 컴퓨팅 장치가 연결될 수 있는데, 예를 들어, 사용자의 눈 영역을 촬영할 수 있는 촬영부 및 사용자의 눈 영역에 빛을 조사하는 조명부가 포함된 홍채 촬영 장치가 연결될 수 있다.In addition, another auxiliary computing device may be connected to the NIC 1540. For example, an iris imaging device including a photographing portion capable of photographing a user's eye region and a lighting portion irradiating light to a user's eye region is connected .

버스(1550)는 상술한 프로세서(1510), 스토리지(1520), 메모리(1530), NIC(1540)가 연결되는 데이터 이동 통로로서의 역할을 수행한다.The bus 1550 serves as a data movement path through which the processor 1510, the storage 1520, the memory 1530, and the NIC 1540 described above are connected.

한편, 상술한 방법은 컴퓨터에서 실행될 수 있는 프로그램으로 작성 가능하고, 컴퓨터로 읽을 수 있는 기록매체를 이용하여 상기 프로그램을 동작시키는 범용 디지털 컴퓨터에서 구현될 수 있다. 또한, 상술한 방법에서 사용된 데이터의 구조는 컴퓨터로 읽을 수 있는 기록매체에 여러 수단을 통하여 기록될 수 있다. 상기 컴퓨터로 읽을 수 있는 기록매체는 마그네틱 저장매체(예를 들면, 롬, 플로피 디스크, 하드 디스크 등), 광학적 판독 매체(예를 들면, 시디롬, 디브이디 등)와 같은 저장매체를 포함한다.Meanwhile, the above-described method can be implemented in a general-purpose digital computer that can be created as a program that can be executed by a computer and operates the program using a computer-readable recording medium. In addition, the structure of the data used in the above-described method can be recorded on a computer-readable recording medium through various means. The computer-readable recording medium includes a storage medium such as a magnetic storage medium (e.g., ROM, floppy disk, hard disk, etc.), optical reading medium (e.g., CD ROM,

본 실시예와 관련된 기술 분야에서 통상의 지식을 가진 자는 상기된 기재의 본질적인 특성에서 벗어나지 않는 범위에서 변형된 형태로 구현될 수 있음을 이해할 수 있을 것이다. 그러므로 개시된 방법들은 한정적인 관점이 아니라 설명적인 관점에서 고려되어야 한다. 본 발명의 범위는 전술한 설명이 아니라 특허청구범위에 나타나 있으며, 그와 동등한 범위 내에 있는 모든 차이점은 본 발명에 포함된 것으로 해석되어야 할 것이다.It will be understood by those skilled in the art that various changes in form and details may be made therein without departing from the spirit and scope of the invention as defined by the appended claims. Therefore, the disclosed methods should be considered from an illustrative point of view, not from a restrictive point of view. The scope of the present invention is defined by the appended claims rather than by the foregoing description, and all differences within the scope of equivalents thereof should be construed as being included in the present invention.

Claims (9)

입력된 사용자의 홍채정보를 검증하는 생체정보 검증부와,
상기 검증된 홍채정보를 기초로 암호화 해시 알고리즘를 사용하여 암호화된 해시값을 생성하는 해시 연산부와,
상기 생성된 해시값을 전송하는 통신부를 포함하는 생체정보 인증기기; 및
상기 생체정보 인증기기로부터 전송된 해시값을 수신하고, 상기 수신한 해시값을 이미 저장된 해시값과 비교함으로써 상기 사용자에 대한 인증을 수행하는 서비스 에이전트와,
상기 인증된 사용자에 관한 트랜잭션 정보를 수집하여 피어투피어를 기반으로 하는 탈중앙화된 분산 데이터베이스 시스템으로 전송하는 데이터베이스 에이전트를 포함하는 서비스 제공자를 포함하는데,
상기 데이터베이스 에이전트는 상기 분산 데이터베이스 시스템에 기록된 사용자의 트랜잭션 정보를 사용자 단말로 전송하고,
상기 서비스 제공자에 이미 저장된 해시값은 상기 생체정보 인증기기의 상기 해시 연산부에서 사용하는 상기 암호화 해시 알고리즘과 동일한 알고리즘에 의해 생성되어 저장된 해시값인 것을 특징으로 하는, 사용자 트랜잭션에 대한 정보를 제공하는 시스템.
A biometric information verifying unit for verifying the inputted iris information of the user,
A hash calculator for generating an encrypted hash value using the encrypted hash algorithm based on the verified iris information;
And a communication unit for transmitting the generated hash value; And
A service agent for receiving the hash value transmitted from the biometric information authentication device and performing authentication for the user by comparing the received hash value with the already stored hash value;
And a database agent for collecting and transmitting transaction information regarding the authenticated user to a decentralized distributed database system based on peer-to-peer,
Wherein the database agent transmits transaction information of a user recorded in the distributed database system to a user terminal,
Wherein the hash value already stored in the service provider is a hash value generated and stored by the same algorithm as the encryption hash algorithm used in the hash calculator of the biometric information authentication device. .
제1항에 있어서,
상기 생체정보 검증부는 빛의 양에 따라 변화하는 동공 반지름 크기를 기초로 하여 인증을 시도하는 사용자의 홍채정보가 실제 살아있는 사람의 홍채정보인지를 검증하는 것을 특징으로 하는, 사용자 트랜잭션에 대한 정보를 제공하는 시스템.
The method according to claim 1,
Wherein the biometric information verifying unit verifies whether the iris information of the user attempting to authenticate based on the size of the pupil radius varying with the amount of light is iris information of a living person. System.
제2항에 있어서,
상기 생체정보 검증부는,
홍채 촬영 장치의 조명부가 턴-온된 상태에서 촬영된 이미지 및 상기 조명부가 턴-오프된 상태에서 촬영된 이미지를 수신하여, 상기 수신된 각 이미지에서 홍채 반지름에 대한 동공 반지름의 비율인 반지름 비율을 산출하고,
상기 조명부가 턴-온된 상태에서 촬영된 이미지에서의 반지름 비율과 상기 조명부가 턴-오프된 상태에서 촬영된 이미지에서의 반지름 비율을 비교하여 반지름 비율의 변화율을 산출한 후,
상기 반지름 비율의 변화율을 인덱스화하고, 상기 인덱스화된 반지름 비율의 변화율의 평균값을 산출하며,
인덱스화된 반지름 비율의 변화율의 평균값을 기 설정된 제1 임계값과 비교하고, 반지름 비율의 최대 변화율에 대한 반지름 비율의 최소 변화율에 대한 비율을 기 설정된 제2 임계값과 비교하여 홍채를 검증하는 것을 특징으로 하는, 사용자 트랜잭션에 대한 정보를 제공하는 시스템.
3. The method of claim 2,
Wherein the biometric information verification unit comprises:
The imaging apparatus according to any one of claims 1 to 3, wherein the iris image pickup apparatus is configured to receive an image photographed in a turned-on state of the illuminating unit of the iris imaging apparatus and an image photographed in a state in which the illuminating unit is turned off and calculate a ratio of the pupil radius to the iris radius and,
The radius ratio of the image taken when the illumination unit is turned on and the radius ratio of the image taken when the illumination unit is turned off are calculated to calculate the rate of change of the radius ratio,
Indexing a rate of change of the radius ratio, calculating an average value of a rate of change of the indexed radius ratio,
The iris is verified by comparing the average value of the rate of change of the indexed radius ratio with a preset first threshold value and comparing the ratio of the minimum rate of change of the radius ratio to the maximum rate of change of the radius ratio with a preset second threshold value Said system comprising: means for providing information about a user transaction;
제3항에 있어서,
상기 반지름 비율의 변화율을 산출하는 것은,
상기 조명부가 턴-온된 상태에서 촬영된 이미지에서 산출된 반지름 비율과 조명부가 턴-오프된 상태에서 촬영된 이미지에서 산출된 반지름 비율을 순차적으로 교번하여 비교하여 반지름 비율의 변화율을 산출하는 것을 특징으로 하는, 사용자 트랜잭션에 대한 정보를 제공하는 시스템.
The method of claim 3,
The calculation of the rate of change of the radius ratio may be performed,
And a rate of change of the radius ratio is calculated by sequentially alternately comparing the radius ratio calculated in the image taken in the turned-on state of the illumination unit and the calculated ratio of the radius of the image taken in the turned-off state of the illumination unit A system that provides information about user transactions.
제4항에 있어서,
상기 반지름 비율을 순차적으로 교번하여 비교하여 반지름 비율의 변화율을 산출하는 것은,
상기 조명부가 턴-온된 상태에서 촬영된 이미지에서 산출된 반지름 비율에 대한 상기 조명부가 턴-오프된 상태에서 촬영된 이미지에서 산출된 반지름 비율의 비율로 상기 반지름 비율의 변화율을 산출하는 것을 특징으로 하는, 사용자 트랜잭션에 대한 정보를 제공하는 시스템.
5. The method of claim 4,
The calculation of the rate of change of the radius ratio by comparing the radial ratios sequentially alternately,
And calculates the rate of change of the radius ratio at a ratio of the radius ratio calculated in the image taken when the illumination unit is turned off with respect to the radius ratio calculated in the image photographed in the turned-on state of the illumination unit , A system that provides information about user transactions.
제1항에 있어서,
상기 암호화 해시 알고리즘은 SHA(Secure Hash Algorithm)-256인 것을 특징으로 하는, 사용자 트랜잭션에 대한 정보를 제공하는 시스템.
The method according to claim 1,
Wherein the encryption hash algorithm is Secure Hash Algorithm (SHA) -256.
제1항에 있어서,
상기 분산 데이터베이스 시스템은 블록체인 네트워크인 것을 특징으로 하는, 사용자 트랜잭션에 대한 정보를 제공하는 시스템.
The method according to claim 1,
Wherein the distributed database system is a block-chained network.
빛의 양에 따라 변화하는 동공 반지름 크기를 기초로 하여 인증을 시도하는 사용자의 홍채정보가 실제 살아있는 사람의 홍채정보인지를 검증하는 (a) 단계;
상기 (a) 단계에서의 검증이 성공적으로 이루어진 경우, 상기 사용자에 대한 인증 절차를 수행하는 (b) 단계;
상기 인증된 사용자의 요청에 의해 발생하는 트랜잭션에 관한 정보를 피어투피어를 기반으로 하는 탈중앙화된 분산 데이터베이스에 기록하는 (c) 단계; 및
상기 기록된 트랜잭션에 관한 정보를 사용자 단말로 전송하는 (d) 단계를 포함하는 사용자 트랜잭션에 대한 정보를 제공하는 방법.
(A) verifying whether iris information of a user attempting authentication based on a pupil radius size that varies according to an amount of light is iris information of a living person;
(B) performing an authentication procedure for the user when the verification in the step (a) is successfully performed;
(C) recording information about a transaction generated by a request of the authenticated user to a decentralized distributed database based on a peer-to-peer; And
And (d) transmitting information about the recorded transaction to a user terminal.
제8항에 있어서,
상기 (b) 단계는,
암호화 해시 알고리즘을 사용하여 상기 사용자의 생체정보에 대한 해시값을 획득하는 (b-1) 단계; 및
상기 획득한 해시값을 기초로 하여 상기 사용자를 인증하는 (b-2) 단계를 포함하는 것을 특징으로 하는 사용자 트랜잭션에 대한 정보를 제공하는 방법.
9. The method of claim 8,
The step (b)
(B-1) obtaining a hash value of the user's biometric information using a cryptographic hash algorithm; And
And (b-2) authenticating the user based on the obtained hash value.
KR1020170098438A 2017-08-03 2017-08-03 System and method for providing information on user's transaction Expired - Fee Related KR101992252B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020170098438A KR101992252B1 (en) 2017-08-03 2017-08-03 System and method for providing information on user's transaction

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020170098438A KR101992252B1 (en) 2017-08-03 2017-08-03 System and method for providing information on user's transaction

Publications (2)

Publication Number Publication Date
KR20190014679A true KR20190014679A (en) 2019-02-13
KR101992252B1 KR101992252B1 (en) 2019-06-25

Family

ID=65366476

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020170098438A Expired - Fee Related KR101992252B1 (en) 2017-08-03 2017-08-03 System and method for providing information on user's transaction

Country Status (1)

Country Link
KR (1) KR101992252B1 (en)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102042796B1 (en) * 2019-02-28 2019-11-08 (주)엔터랩 Method and system for managing project results generated by a specialist based on bigdata
KR102131207B1 (en) * 2019-10-23 2020-07-07 비씨카드(주) Method, device and payment server for providing payment services based on bio information and supporting the same
KR20200105378A (en) * 2019-02-28 2020-09-07 (주)엔터랩 Method and system for providing virtual currency by managing project results generated a specialist based on big data
KR20200105379A (en) * 2019-11-01 2020-09-07 (주)엔터랩 Method and system for managing project results generated by a specialist based on bigdata stored in blockchain
WO2020231027A1 (en) * 2019-05-10 2020-11-19 상근 오스티븐 Method for detecting each user's record of use of shared object, device therefor, and program therefor
WO2020235918A1 (en) * 2019-05-21 2020-11-26 Ban Young Hui Electronic terminal device for performing log-in authentication process based on biometric information, and operation method of same
KR102273629B1 (en) * 2021-02-22 2021-07-06 (주)지에스티 Did-based blockchain smart unit and unmanned automated robot security system using biometrics(facial and iris) recognition

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102199138B1 (en) * 2020-04-08 2021-01-06 스티븐 상근 오 Method, apparatus and program for user authentication

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080140667A1 (en) * 2006-12-07 2008-06-12 Sony Ericsson Mobile Communications Ab Device and method for creating a transaction log of data exchanges between a portable mobile communications device and other wireless devices
KR20130131752A (en) * 2012-05-24 2013-12-04 가천대학교 산학협력단 Mobile user identification security system and method in cloud computing environment using iris identification and augmented reality
KR20170088798A (en) * 2017-07-20 2017-08-02 박대진 Identification method of iris using short range iris photographing camera

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080140667A1 (en) * 2006-12-07 2008-06-12 Sony Ericsson Mobile Communications Ab Device and method for creating a transaction log of data exchanges between a portable mobile communications device and other wireless devices
KR20130131752A (en) * 2012-05-24 2013-12-04 가천대학교 산학협력단 Mobile user identification security system and method in cloud computing environment using iris identification and augmented reality
KR20170088798A (en) * 2017-07-20 2017-08-02 박대진 Identification method of iris using short range iris photographing camera

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102042796B1 (en) * 2019-02-28 2019-11-08 (주)엔터랩 Method and system for managing project results generated by a specialist based on bigdata
WO2020175753A1 (en) * 2019-02-28 2020-09-03 (주)엔터랩 Method and system for managing, on basis of big data, project results created by expert
KR20200105378A (en) * 2019-02-28 2020-09-07 (주)엔터랩 Method and system for providing virtual currency by managing project results generated a specialist based on big data
WO2020231027A1 (en) * 2019-05-10 2020-11-19 상근 오스티븐 Method for detecting each user's record of use of shared object, device therefor, and program therefor
WO2020235918A1 (en) * 2019-05-21 2020-11-26 Ban Young Hui Electronic terminal device for performing log-in authentication process based on biometric information, and operation method of same
KR102131207B1 (en) * 2019-10-23 2020-07-07 비씨카드(주) Method, device and payment server for providing payment services based on bio information and supporting the same
KR20200105379A (en) * 2019-11-01 2020-09-07 (주)엔터랩 Method and system for managing project results generated by a specialist based on bigdata stored in blockchain
KR102273629B1 (en) * 2021-02-22 2021-07-06 (주)지에스티 Did-based blockchain smart unit and unmanned automated robot security system using biometrics(facial and iris) recognition

Also Published As

Publication number Publication date
KR101992252B1 (en) 2019-06-25

Similar Documents

Publication Publication Date Title
KR101992252B1 (en) System and method for providing information on user's transaction
US11936788B1 (en) Distributed ledger system for identity data storage and access control
KR102062919B1 (en) Method for providing blockchain-based data cloud service
KR102139548B1 (en) System and method for decentralized identifier based on face recognition
WO2023064601A1 (en) Method and system to autonomously authenticate and validate users using a node server and database
US10789346B2 (en) Online identity scoring
US11956364B2 (en) Information processing device and information processing method
KR20200110605A (en) Method and device for acquiring tracking information and recording it on the blockchain
US20150095987A1 (en) Systems and methods of verifying an authentication using dynamic scoring
KR20090041436A (en) Authentication method and system
CN106575401A (en) System and method for performing authentication using data analytics
CN108769230A (en) Transaction data storage method, device, server and storage medium
US20210217024A1 (en) System and Method of Consolidating Identity Services
US20240022404A1 (en) Non-hackable digital identity
Toli et al. A survey on multimodal biometrics and the protection of their templates
KR101505667B1 (en) Method of subscription, authentication and payment without resident registration number
KR101334744B1 (en) Loaning method using kiosk system
JP2019102979A (en) Method related to transaction based on personal identification using biological information
CN115604008B (en) Occupational identity verification method and system
JP7190081B1 (en) Authentication system, authentication method, and program
CN110866818B (en) Method for inquiring personal integrity information based on blockchain storage certificate
KR20210017308A (en) Method for providing secondary authentication service using device registration and distributed storage of data
KR20210017310A (en) System for managing payment and exchange of blockchain-based cryptocurrency
KR20210014458A (en) Method for providing integrated authentication service based on blockchain
KR20210014457A (en) Method for providing data cloud service using blockchain-based data distribution

Legal Events

Date Code Title Description
A201 Request for examination
PA0109 Patent application

St.27 status event code: A-0-1-A10-A12-nap-PA0109

PA0201 Request for examination

St.27 status event code: A-1-2-D10-D11-exm-PA0201

R17-X000 Change to representative recorded

St.27 status event code: A-3-3-R10-R17-oth-X000

E902 Notification of reason for refusal
PE0902 Notice of grounds for rejection

St.27 status event code: A-1-2-D10-D21-exm-PE0902

E13-X000 Pre-grant limitation requested

St.27 status event code: A-2-3-E10-E13-lim-X000

P11-X000 Amendment of application requested

St.27 status event code: A-2-2-P10-P11-nap-X000

P13-X000 Application amended

St.27 status event code: A-2-2-P10-P13-nap-X000

P22-X000 Classification modified

St.27 status event code: A-2-2-P10-P22-nap-X000

P22-X000 Classification modified

St.27 status event code: A-2-2-P10-P22-nap-X000

P22-X000 Classification modified

St.27 status event code: A-2-2-P10-P22-nap-X000

PG1501 Laying open of application

St.27 status event code: A-1-1-Q10-Q12-nap-PG1501

E701 Decision to grant or registration of patent right
PE0701 Decision of registration

St.27 status event code: A-1-2-D10-D22-exm-PE0701

R18-X000 Changes to party contact information recorded

St.27 status event code: A-3-3-R10-R18-oth-X000

GRNT Written decision to grant
PR0701 Registration of establishment

St.27 status event code: A-2-4-F10-F11-exm-PR0701

PR1002 Payment of registration fee

St.27 status event code: A-2-2-U10-U11-oth-PR1002

Fee payment year number: 1

PG1601 Publication of registration

St.27 status event code: A-4-4-Q10-Q13-nap-PG1601

R17-X000 Change to representative recorded

St.27 status event code: A-5-5-R10-R17-oth-X000

P22-X000 Classification modified

St.27 status event code: A-4-4-P10-P22-nap-X000

R18-X000 Changes to party contact information recorded

St.27 status event code: A-5-5-R10-R18-oth-X000

PR1001 Payment of annual fee

St.27 status event code: A-4-4-U10-U11-oth-PR1001

Fee payment year number: 4

P22-X000 Classification modified

St.27 status event code: A-4-4-P10-P22-nap-X000

PN2301 Change of applicant

St.27 status event code: A-5-5-R10-R13-asn-PN2301

St.27 status event code: A-5-5-R10-R11-asn-PN2301

PR1001 Payment of annual fee

St.27 status event code: A-4-4-U10-U11-oth-PR1001

Fee payment year number: 5

PC1903 Unpaid annual fee

St.27 status event code: A-4-4-U10-U13-oth-PC1903

Not in force date: 20240619

Payment event data comment text: Termination Category : DEFAULT_OF_REGISTRATION_FEE

PC1903 Unpaid annual fee

St.27 status event code: N-4-6-H10-H13-oth-PC1903

Ip right cessation event data comment text: Termination Category : DEFAULT_OF_REGISTRATION_FEE

Not in force date: 20240619