KR20190113417A - System and method for data authentication - Google Patents

System and method for data authentication Download PDF

Info

Publication number
KR20190113417A
KR20190113417A KR1020180036072A KR20180036072A KR20190113417A KR 20190113417 A KR20190113417 A KR 20190113417A KR 1020180036072 A KR1020180036072 A KR 1020180036072A KR 20180036072 A KR20180036072 A KR 20180036072A KR 20190113417 A KR20190113417 A KR 20190113417A
Authority
KR
South Korea
Prior art keywords
otp
terminal
authentication
user
identification information
Prior art date
Application number
KR1020180036072A
Other languages
Korean (ko)
Other versions
KR102459974B1 (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 KR1020180036072A priority Critical patent/KR102459974B1/en
Publication of KR20190113417A publication Critical patent/KR20190113417A/en
Application granted granted Critical
Publication of KR102459974B1 publication Critical patent/KR102459974B1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/38Payment protocols; Details thereof
    • G06Q20/382Payment protocols; Details thereof insuring higher security of transaction
    • G06Q20/3821Electronic credentials
    • G06Q20/38215Use of certificates or encrypted proofs of transaction rights
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/30Payment architectures, schemes or protocols characterised by the use of specific devices or networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/38Payment protocols; Details thereof
    • G06Q20/382Payment protocols; Details thereof insuring higher security of transaction
    • G06Q20/3825Use of electronic signatures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/38Payment protocols; Details thereof
    • G06Q20/40Authorisation, e.g. identification of payer or payee, verification of customer or shop credentials; Review and approval of payers, e.g. check credit lines or negative lists
    • G06Q20/401Transaction verification
    • G06Q20/4014Identity check for transactions
    • G06Q20/40145Biometric identity checks

Landscapes

  • Business, Economics & Management (AREA)
  • Engineering & Computer Science (AREA)
  • Accounting & Taxation (AREA)
  • Strategic Management (AREA)
  • Physics & Mathematics (AREA)
  • General Business, Economics & Management (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Finance (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)

Abstract

An authentication system and a method thereof are disclosed. According to an embodiment of the present invention, the system for authenticating a transaction of a user comprises: a service server for receiving an authentication request for the transaction from a first terminal; an authentication server which receives transaction information related to the transaction from the service server, generates an one-time password (OTP) using the transaction information, and transmits OTP identification information corresponding to the generated OTP to the service server; and a second terminal which receives the OTP identification information from the service server and transmits the same to the authentication server and receives the OTP corresponding to the OTP identification information in accordance with a biometric authentication result of the user from the authentication server and displays the same.

Description

인증 시스템 및 방법{SYSTEM AND METHOD FOR DATA AUTHENTICATION}Authentication system and method {SYSTEM AND METHOD FOR DATA AUTHENTICATION}

본 발명의 실시예들은 온라인 상의 트랜잭션(transaction)을 인증하기 위한 기술과 관련된다.Embodiments of the present invention relate to techniques for authenticating transactions online.

온라인 뱅킹, 또는 본인 인증 등 온라인 상의 중요한 트랜잭션(transaction)을 인증하기 위한 방법으로서 다양한 인증 알고리즘이 사용되고 있다. 특히 최근에는 인증의 보안성을 높이기 위한 방법 중 하나로서 멀티 팩터 인증(Multi-Factor Authentication)이 많이 사용되고 있으며, 이 중 제2 인증 수단으로는 원타임 패스워드(One-Time Password; OTP)가 주로 사용된다.Various authentication algorithms are used as a method for authenticating important online transactions such as online banking or identity verification. In particular, recently, as one of methods for increasing the security of authentication, multi-factor authentication has been widely used, and one-time password (OTP) is mainly used as the second authentication means. .

그러나 대부분의 멀티 팩터 인증 방법에서 OTP 인증은 트랜잭션 그 자체와는 직접적인 관련성이 없으며, 다만 트랜잭션 수행 시 독립적인 절차로서 별도의 OTP 인증을 거친 후 인증 결과만을 공유하는 방식으로 인증이 이루어진다. 따라서 해당 트랜잭션에 대한 사후 검증 시 인증을 위해 발급된 OTP가 해당 트랜잭션과 어떻게 연관되는지를 증명하기 어려운 문제가 있다. 이에, 멀티 팩터 인증에서 OTP와 트랜잭션 정보를 효과적으로 연계함으로써 사용자의 부인을 방지하기 위한 수단이 필요하게 되었다.However, in most multi-factor authentication methods, OTP authentication is not directly related to the transaction itself. However, authentication is performed by sharing only the authentication result after a separate OTP authentication as an independent procedure. Therefore, there is a problem that it is difficult to prove how the OTP issued for authentication is related to the transaction in the post-verification of the transaction. Accordingly, there is a need for a means for preventing user denial by effectively linking OTP and transaction information in multi-factor authentication.

대한민국 공개특허공보 제10-2008-0033541호 (2008 04. 16)Republic of Korea Patent Publication No. 10-2008-0033541 (2008 04. 16)

개시되는 실시예들은 원타임 패스워드를 이용한 트랜잭션의 인증 시 사용자의 사후 부인을 방지하기 위한 기술적인 수단을 제공하기 위한 것이다.The disclosed embodiments are intended to provide a technical means for preventing post repudiation of a user in authenticating a transaction using a one-time password.

예시적인 실시예에 따르면, 사용자의 트랜잭션(transaction)을 인증하기 위한 시스템으로서, 제1 단말로부터 상기 트랜잭션에 대한 인증 요청을 수신하는 서비스 서버; 상기 서비스 서버로부터 상기 트랜잭션과 연관된 트랜잭션 정보를 수신하고, 이를 이용하여 OTP(One-Time Password)를 생성하며, 생성된 상기 OTP에 대응되는 OTP 식별 정보를 상기 서비스 서버로 송신하는 인증 서버; 및 상기 서비스 서버로부터 상기 OTP 식별 정보를 수신하여 상기 인증 서버로 송신하고, 상기 사용자의 생체 인증 결과에 따라 상기 OTP 식별 정보에 대응되는 OTP를 상기 인증 서버로부터 수신하여 디스플레이하는 제2 단말을 포함하며, 상기 서비스 서버는, 상기 사용자에 의해 상기 제1 단말로 입력되는 OTP 입력값의 유효성을 검증하고, 상기 검증 결과에 따라 상기 트랜잭션을 승인하는, 인증 시스템이 제공된다.According to an exemplary embodiment, a system for authenticating a transaction of a user, the system comprising: a service server receiving an authentication request for the transaction from a first terminal; An authentication server that receives transaction information associated with the transaction from the service server, generates one-time password (OTP) using the transaction information, and transmits OTP identification information corresponding to the generated OTP to the service server; And a second terminal that receives the OTP identification information from the service server and transmits the OTP identification information to the authentication server, and receives and displays an OTP corresponding to the OTP identification information from the authentication server according to a biometric authentication result of the user. The service server is provided with an authentication system for verifying validity of an OTP input value input by the user to the first terminal and approving the transaction according to the verification result.

상기 제2 단말은, 상기 OTP 식별 정보를 푸시 메시지를 통해 상기 서비스 서버로부터 수신할 수 있다.The second terminal may receive the OTP identification information from the service server through a push message.

상기 제2 단말은, 상기 사용자로부터 입력된 생체 정보의 유효성을 검증하며, 상기 생체 정보의 유효성 검증 결과에 따라 상기 인증 서버로부터 수신한 상기 1회용 난수를 상기 사용자의 개인키로 서명하여 서명값을 생성하고, 생성된 상기 서명값을 상기 인증 서버로 송신할 수 있다.The second terminal verifies the validity of the biometric information input from the user, and generates a signature value by signing the disposable random number received from the authentication server with the private key of the user according to a result of the validation of the biometric information. The signature value may be transmitted to the authentication server.

상기 인증 서버는, 상기 개인키에 대응되는 공개키로 수신된 서명값을 검증하고, 상기 서명값의 검증이 완료되는 경우 상기 OTP 식별 정보에 대응되는 OTP를 상기 제2 단말로 송신할 수 있다.The authentication server may verify the signature value received with the public key corresponding to the private key, and transmit the OTP corresponding to the OTP identification information to the second terminal when verification of the signature value is completed.

상기 제2 단말은, 상기 1회용 난수에 상기 OTP 식별 정보를 결합한 문자열을 상기 사용자의 개인키로 서명하여 상기 서명값을 생성할 수 있다.The second terminal may generate the signature value by signing a character string combining the OTP identification information with the disposable random number with the private key of the user.

다른 예시적인 실시예에 따르면, 사용자의 트랜잭션(transaction)을 인증하기 위한 방법으로서, 서비스 서버에서, 제1 단말로부터 상기 트랜잭션에 대한 인증 요청을 수신하는 단계; 상기 서비스 서버에서, 인증 서버로 상기 트랜잭션과 연관된 트랜잭션 정보를 송신하는 단계; 상기 인증 서버에서, 수신된 상기 트랜잭션 정보에 기반하여 OTP(One-Time Password)를 생성하고, 생성된 상기 OTP에 대응되는 OTP 식별 정보를 상기 서비스 서버로 송신하는 단계; 상기 서비스 서버에서, 수신된 상기 OTP 식별 정보를 상기 사용자의 제2 단말로 송신하는 단계; 상기 제2 단말에서, 수신된 상기 OTP 식별 정보를 상기 인증 서버로 송신하고, 상기 사용자의 생체 인증을 수행하는 단계; 상기 제2 단말에서, 상기 사용자의 생체 인증 결과에 따라 상기 OTP 식별 정보에 대응되는 OTP를 상기 인증 서버로부터 수신하여 디스플레이하는 단계; 및 상기 제2 단말에 디스플레이된 상기 OTP를 인식한 상기 사용자가 상기 제1 단말을 통해 OTP를 입력하는 경우, 상기 서비스 서버에서 상기 제1 단말을 통해 수신되는 OTP 입력값의 유효성을 검증하고, 상기 검증 결과에 따라 상기 트랜잭션을 승인하는 단계를 포함하는, 인증 방법이 제공된다.According to another exemplary embodiment, a method for authenticating a transaction of a user, comprising: receiving, at a service server, an authentication request for the transaction from a first terminal; At the service server, sending transaction information associated with the transaction to an authentication server; Generating, at the authentication server, one-time password (OTP) based on the received transaction information, and transmitting OTP identification information corresponding to the generated OTP to the service server; Transmitting, at the service server, the received OTP identification information to a second terminal of the user; Transmitting, at the second terminal, the received OTP identification information to the authentication server and performing biometric authentication of the user; Receiving and displaying, at the second terminal, an OTP corresponding to the OTP identification information from the authentication server according to a biometric authentication result of the user; And when the user who recognizes the OTP displayed on the second terminal inputs the OTP through the first terminal, verifies the validity of the OTP input value received through the first terminal in the service server, An authentication method is provided, comprising the step of approving the transaction according to the verification result.

상기 OTP 식별 정보를 상기 사용자의 제2 단말로 송신하는 단계는, 상기 OTP 식별 정보를 푸시 메시지를 통해 상기 제2 단말로 송신하도록 구성될 수 있다.The transmitting of the OTP identification information to the second terminal of the user may be configured to transmit the OTP identification information to the second terminal through a push message.

상기 생체 인증을 수행하는 단계는, 상기 인증 서버에서, 상기 제2 단말로 1회용 난수를 송신하는 단계; 상기 제2 단말에서, 상기 사용자로부터 생체 정보를 입력받고, 입력된 상기 생체 정보의 유효성을 검증하는 단계; 상기 제2 단말에서, 상기 생체 정보의 유효성 검증 결과에 따라 상기 1회용 난수를 상기 사용자의 개인키로 서명하여 서명값을 생성하는 단계; 및 생성된 상기 서명값을 상기 인증 서버로 송신하는 단계를 더 포함할 수 있다.The performing of biometric authentication may include: transmitting, at the authentication server, a single random number to the second terminal; At the second terminal, receiving biometric information from the user and validating the input biometric information; Generating, at the second terminal, a signature value by signing the disposable random number with the private key of the user according to a result of validating the biometric information; And transmitting the generated signature value to the authentication server.

상기 인증 서버는, 상기 개인키에 대응되는 공개키로 수신된 서명값을 검증하고, 상기 서명값의 검증이 완료되는 경우 상기 OTP 식별 정보에 대응되는 OTP를 상기 제2 단말로 송신할 수 있다.The authentication server may verify the signature value received with the public key corresponding to the private key, and transmit the OTP corresponding to the OTP identification information to the second terminal when verification of the signature value is completed.

상기 서명값을 생성하는 단계는, 상기 1회용 난수 및 상기 OTP 식별 정보를 결합한 문자열을 상기 사용자의 개인키로 서명하도록 구성될 수 있다.Generating the signature value may be configured to sign a string combining the disposable random number and the OTP identification information with the private key of the user.

개시되는 실시예들에 따르면, 사용자의 온라인 트랜잭션에 대한 인증 시 원타임 패스워드와 트랜잭션 정보를 효과적으로 연계함으로써 사후 검증 등의 과정에서 사용자의 부인을 방지할 수 있다.According to the disclosed embodiments, the one-time password and transaction information can be effectively linked when authenticating the user's online transaction, thereby preventing the user's denial during post verification.

도 1은 일 실시예에 따른 인증 시스템을 설명하기 위한 블록도
도 2는 개시되는 일 실시예에 따른 제2 단말의 상세 구성을 설명하기 위한 블록도
도 3은 일 실시예에 따른 트랜잭션 인증 방법을 설명하기 위한 흐름도
도 4는 일 실시예에 따른 트랜잭션 인증 방법 중 생체 인증 과정의 일 실시예를 상세히 설명하기 위한 흐름도
도 5는 일 실시예에 따른 트랜잭션 인증 방법 중 생체 인증 과정의 다른 실시예를 상세히 설명하기 위한 흐름도
1 is a block diagram illustrating an authentication system according to an embodiment.
2 is a block diagram illustrating a detailed configuration of a second terminal according to an embodiment of the present disclosure.
3 is a flowchart illustrating a transaction authentication method according to an embodiment.
4 is a flowchart illustrating an embodiment of a biometric authentication process in a transaction authentication method according to an embodiment;
5 is a flowchart illustrating another embodiment of a biometric authentication process in a transaction authentication method according to an embodiment;

이하, 도면을 참조하여 본 발명의 구체적인 실시형태를 설명하기로 한다. 이하의 상세한 설명은 본 명세서에서 기술된 방법, 장치 및/또는 시스템에 대한 포괄적인 이해를 돕기 위해 제공된다. 그러나 이는 예시에 불과하며 본 발명은 이에 제한되지 않는다.Hereinafter, specific embodiments of the present invention will be described with reference to the drawings. The following detailed description is provided to assist in a comprehensive understanding of the methods, devices, and / or systems described herein. However, this is only an example and the present invention is not limited thereto.

본 발명의 실시예들을 설명함에 있어서, 본 발명과 관련된 공지기술에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명을 생략하기로 한다. 그리고, 후술되는 용어들은 본 발명에서의 기능을 고려하여 정의된 용어들로서 이는 사용자, 운용자의 의도 또는 관례 등에 따라 달라질 수 있다. 그러므로 그 정의는 본 명세서 전반에 걸친 내용을 토대로 내려져야 할 것이다. 상세한 설명에서 사용되는 용어는 단지 본 발명의 실시예들을 기술하기 위한 것이며, 결코 제한적이어서는 안 된다. 명확하게 달리 사용되지 않는 한, 단수 형태의 표현은 복수 형태의 의미를 포함한다. 본 설명에서, "포함" 또는 "구비"와 같은 표현은 어떤 특성들, 숫자들, 단계들, 동작들, 요소들, 이들의 일부 또는 조합을 가리키기 위한 것이며, 기술된 것 이외에 하나 또는 그 이상의 다른 특성, 숫자, 단계, 동작, 요소, 이들의 일부 또는 조합의 존재 또는 가능성을 배제하도록 해석되어서는 안 된다.In describing the embodiments of the present invention, when it is determined that the detailed description of the known technology related to the present invention may unnecessarily obscure the gist of the present invention, the detailed description thereof will be omitted. In addition, terms to be described below are terms defined in consideration of functions in the present invention, which may vary according to the intention or custom of a user or an operator. Therefore, the definition should be made based on the contents throughout the specification. The terminology used in the description is for the purpose of describing embodiments of the invention only and should not be limiting. Unless expressly used otherwise, the singular forms “a,” “an,” and “the” include plural forms of meaning. In this description, expressions such as "comprises" or "equipment" are intended to indicate certain features, numbers, steps, actions, elements, portions or combinations thereof, and one or more than those described. It should not be construed to exclude the presence or possibility of other features, numbers, steps, actions, elements, portions or combinations thereof.

도 1은 일 실시예에 따른 인증 시스템(100)을 설명하기 위한 블록도이다. 개시되는 실시예들에 따른 인증 시스템(100)은 제1 단말(102), 서비스 서버(104), 인증 서버(106), 및 제2 단말(108)을 포함한다.1 is a block diagram illustrating an authentication system 100 according to an embodiment. The authentication system 100 according to the disclosed embodiments includes a first terminal 102, a service server 104, an authentication server 106, and a second terminal 108.

제1 단말(102)은 온라인 서비스를 사용하는 사용자(110)가 상기 온라인 서비스를 제공받는 데 이용하는 단말이다. 개시되는 실시예들에서 제1 단말(102)은 데스크탑 컴퓨터, 랩탑 컴퓨터 등의 개인용 컴퓨팅 디바이스, 스마트폰, 태블릿, 웨어러블 디바이스 등을 포괄할 수 있다.The first terminal 102 is a terminal used by the user 110 who uses the online service to receive the online service. In the disclosed embodiments, the first terminal 102 may include a personal computing device such as a desktop computer, a laptop computer, a smartphone, a tablet, a wearable device, and the like.

서비스 서버(104)는 제1 단말(102)로 온라인 서비스를 제공하기 위한 서버이다. 예를 들어, 서비스 서버(104)는 제1 단말(102)을 통해 사용자(110)에게 금융 서비스를 제공하기 위한 금융사 서버일 수 있다. 다만, 개시되는 실시예들은 특정 종류의 온라인 서비스에 한정되는 것은 아니며, 서비스 서버(104)는 소셜 네트워킹, 미디어 스트리밍, 클라우드 서비스 등 다양한 종류의 온라인 서비스를 제한 없이 포함할 수 있다.The service server 104 is a server for providing an online service to the first terminal 102. For example, the service server 104 may be a financial company server for providing a financial service to the user 110 through the first terminal 102. However, the disclosed embodiments are not limited to a specific kind of online service, and the service server 104 may include various types of online services such as social networking, media streaming, and cloud service without limitation.

인증 서버(106)는 제1 단말(102)이 서비스 서버(104)로부터 온라인 서비스를 제공받는 과정에서 발생되는 온라인 트랜잭션(transaction)을 인증하기 위한 서버이다. 개시되는 실시예들에서, 트랜잭션이란 제1 단말(102)과 서비스 서버(104) 간에 발생되는 일련의 작업 또는 정보의 교환을 의미한다. 예를 들어, 서비스 서버(104)가 금융사 서버인 경우, 상기 트랜잭션은 사용자(110)가 제1 단말(102)을 통해 수행하는 자금 이체 등의 거래와 관련된 작업일 수 있다.The authentication server 106 is a server for authenticating an online transaction generated in the process of receiving the online service from the first terminal 102 by the service server 104. In the disclosed embodiments, a transaction refers to the exchange of a series of tasks or information occurring between the first terminal 102 and the service server 104. For example, when the service server 104 is a financial company server, the transaction may be a task related to a transaction such as a money transfer performed by the user 110 through the first terminal 102.

제1 단말(102)이 서비스 서버(104)로부터 온라인 서비스를 제공받는 과정에서 인증이 필요한 트랜잭션이 발생할 경우, 사용자(110)는 제1 단말(102)을 통해 서비스 서버(104)로 해당 트랜잭션에 대한 인증을 요청한다. 상기 인증 요청을 수신한 서비스 서버(104)는 인증 서버(106)로 해당 트랜잭션 정보를 송신한다. 이때 필요한 경우 서비스 서버(104)는 인증을 요청한 사용자의 식별 정보(사용자 ID 등)를 상기 트랜잭션 정보와 함께 인증 서버(106)로 송신할 수 있다.When a transaction requiring authentication occurs while the first terminal 102 receives an online service from the service server 104, the user 110 transmits the transaction to the service server 104 through the first terminal 102. Ask for authentication. The service server 104 receiving the authentication request transmits the transaction information to the authentication server 106. At this time, if necessary, the service server 104 may transmit identification information (user ID, etc.) of the user who requested the authentication to the authentication server 106 together with the transaction information.

인증 서버(106)는 수신된 상기 트랜잭션 정보를 반영하여 원타임 패스워드(OTP; One-Time Password)를 생성한다. 즉, 개시되는 실시예들에서 인증 서버(106)는 OTP를 랜덤하게 생성하는 것이 아니라 연관된 트랜잭션 정보를 이용하여 생성된다. 이에 따라, 개시되는 실시예들에 따를 경우 OTP 번호 그 자체만으로도 어떤 트랜잭션 정보로부터 생성되었는지 식별이 가능하게 되는 바, OTP와 트랜잭션간의 연관성을 높일 수 있다. 일 실시예에서, 상기 트랜잭션 정보는 해당 트랜잭션을 다른 트랜잭션으로부터 식별하기 위한 모든 종류의 정보들이 제한 없이 포함될 수 있다. The authentication server 106 generates one-time password (OTP) by reflecting the received transaction information. That is, in the disclosed embodiments, authentication server 106 is generated using associated transaction information rather than randomly generating an OTP. Accordingly, according to the disclosed embodiments, it is possible to identify which transaction information is generated only by the OTP number itself, thereby increasing the association between the OTP and the transaction. In one embodiment, the transaction information may include without limitation all kinds of information for identifying the transaction from other transactions.

트랜잭션 정보로부터 OTP를 생성하는 데 필요한 알고리즘은 특정한 종류로 한정되지 않으며, 특정한 값으로부터 OTP를 생성하기 위한 다양한 알고리즘들이 제한 없이 사용될 수 있다. 예를 들어, 인증 서버(106)는 해시 함수를 이용하여 상기 트랜잭션 정보의 해시값을 생성하고, 이와는 별도로 랜덤값인 OTP 식별 정보(OTP ID)를 생성할 수 있다. 이후 인증 서버(106)는 상기 트랜잭선 정보의 해시값 및 OTP 식별 정보를 결합한 값을 재차 해시(hash)함으로써 OTP를 생성할 수 있다.The algorithm required to generate the OTP from the transaction information is not limited to a particular kind, and various algorithms for generating the OTP from a specific value can be used without limitation. For example, the authentication server 106 may generate a hash value of the transaction information by using a hash function, and separately generate OTP identification information (OTP ID) which is a random value. Thereafter, the authentication server 106 may generate the OTP by hashing again the hash value of the transaction line information and the OTP identification information.

상기와 같이 OTP가 생성되면, 인증 서버(106)는 생성된 상기 OTP에 대응되는 OTP 식별 정보를 저장한 뒤, OTP 식별 정보만을 서비스 서버(104)로 송신한다. When the OTP is generated as described above, the authentication server 106 stores the OTP identification information corresponding to the generated OTP, and then transmits only the OTP identification information to the service server 104.

제2 단말(108)은 사용자(110)의 생체 인증을 수행하고, 상기 생체 인증의 결과에 따라 인증 서버(106)로부터 기 생성된 OTP를 제공받기 위한 단말이다. 제2 단말(108) 또한 제1 단말(102)과 마찬가지로 데스크탑 컴퓨터, 랩탑 컴퓨터 등의 개인용 컴퓨팅 디바이스, 스마트폰, 태블릿, 웨어러블 디바이스 등을 포괄할 수 있다.The second terminal 108 is a terminal for performing biometric authentication of the user 110 and receiving a pre-generated OTP from the authentication server 106 according to the biometric authentication result. The second terminal 108 may also include a personal computing device such as a desktop computer, a laptop computer, a smartphone, a tablet, a wearable device, and the like, similar to the first terminal 102.

서비스 서버(104)는 인증 서버(106)로부터 OTP 식별 정보를 수신하면 이를 제2 단말(108)로 송신한다. 일 실시예에서, 서비스 서버(104)는 제1 단말(102)과는 별도의 통신 채널을 통해 상기 OTP 식별 정보를 제2 단말(108)로 송신할 수 있다. 예를 들어, 서비스 서버(104)는 별도의 푸시 서버(미도시)를 이용하여, 상기 OTP 식별 정보를 푸시 메시지를 통해 제2 단말(108)로 송신할 수 있다.The service server 104 receives the OTP identification information from the authentication server 106 and transmits it to the second terminal 108. In one embodiment, the service server 104 may transmit the OTP identification information to the second terminal 108 through a separate communication channel from the first terminal 102. For example, the service server 104 may transmit the OTP identification information to the second terminal 108 through a push message by using a separate push server (not shown).

제2 단말(108)은 서비스 서버(104)로부터 상기 OTP 식별 정보를 수신하면 이를 인증 서버(106)로 송신한다. 이후 제2 단말(108)은 인증 서버(106)와 사용자(110)의 생체 인증을 수행한다. 만약 상기 생체 인증에 성공하는 경우, 인증 서버(106)는 제2 단말(108)로 기 수신된 OTP 식별 정보에 대응되는 OTP를 송신한다. 그러면 제2 단말(108)은 수신되는 OTP를 사용자(110)에게 제공한다. 예를 들어, 제2 단말(108)은 수신된 OTP를 화면에 디스플레이하거나, 또는 음성 등으로 스피커를 통해 출력하는 방식으로 수신된 OTP를 사용자(110)에게 제공할 수 있다.The second terminal 108 receives the OTP identification information from the service server 104 and transmits it to the authentication server 106. Thereafter, the second terminal 108 performs biometric authentication of the authentication server 106 and the user 110. If the biometric authentication is successful, the authentication server 106 transmits an OTP corresponding to the previously received OTP identification information to the second terminal 108. The second terminal 108 then provides the received OTP to the user 110. For example, the second terminal 108 may provide the received OTP to the user 110 by displaying the received OTP on a screen or outputting the speaker through a speaker.

제2 단말(108)을 통해 OTP를 제공받은 사용자(110)는 해당 OTP를 제1 단말(102)을 통해 입력할 수 있다. 그러면 서비스 서버(104)는 입력되는 OTP 입력값의 유효성을 검증하고, 상기 검증 결과에 따라 상기 트랜잭션을 승인할 수 있다.The user 110 provided with the OTP through the second terminal 108 may input the corresponding OTP through the first terminal 102. The service server 104 may then validate the input OTP input value and approve the transaction according to the verification result.

한편, 제1 단말(102), 서비스 서버(104), 인증 서버(106) 및 제2 단말(108)은 통신 네트워크(112)를 통하여 서로 데이터를 송수신할 수 있다. 몇몇 실시예들에서, 통신 네트워크(112)는 인터넷, 하나 이상의 로컬 영역 네트워크(local area networks), 광역 네트워크(wire area networks), 셀룰러 네트워크, 모바일 네트워크, 그 밖에 다른 종류의 네트워크들, 또는 이러한 네트워크들의 조합을 포함할 수 있다.Meanwhile, the first terminal 102, the service server 104, the authentication server 106, and the second terminal 108 may transmit and receive data with each other through the communication network 112. In some embodiments, communication network 112 may include the Internet, one or more local area networks, wire area networks, cellular networks, mobile networks, other types of networks, or such networks. Combinations thereof.

일 실시예에서, 제1 단말(102), 서비스 서버(104), 인증 서버(106) 및 제2 단말(108)은 하나 이상의 프로세서 및 그 프로세서와 연결된 컴퓨터 판독 가능 기록 매체를 포함하는 컴퓨팅 장치 상에서 구현될 수 있다. 컴퓨터 판독 가능 기록 매체는 프로세서의 내부 또는 외부에 있을 수 있고, 잘 알려진 다양한 수단으로 프로세서와 연결될 수 있다. 컴퓨팅 장치 내의 프로세서는 각 컴퓨팅 장치로 하여금 본 명세서에서 기술되는 예시적인 실시예에 따라 동작하도록 할 수 있다. 예를 들어, 프로세서는 컴퓨터 판독 가능 기록 매체에 저장된 명령어를 실행할 수 있고, 컴퓨터 판독 가능 기록 매체에 저장된 명령어는 프로세서에 의해 실행되는 경우 컴퓨팅 장치로 하여금 본 명세서에 기술되는 예시적인 실시예에 따른 동작들을 수행하도록 구성될 수 있다.In one embodiment, first terminal 102, service server 104, authentication server 106, and second terminal 108 are configured on a computing device that includes one or more processors and a computer readable recording medium associated with the processors. Can be implemented. The computer readable recording medium may be inside or outside the processor and may be connected with the processor by various well-known means. A processor within the computing device may cause each computing device to operate according to the example embodiments described herein. For example, a processor may execute instructions stored on a computer readable recording medium, and the instructions stored on the computer readable recording medium cause the computing device to operate in accordance with the exemplary embodiment described herein when executed by the processor. It can be configured to perform these.

도 2는 개시되는 일 실시예에 따른 제2 단말(108)의 상세 구성을 설명하기 위한 블록도이다. 도시된 바와 같이, 일 실시예에 따른 제2 단말(108)은 푸시 에이전트(202), 서비스 애플리케이션(204) 및 인증 모듈(206)을 포함할 수 있다.2 is a block diagram illustrating a detailed configuration of a second terminal 108 according to an embodiment of the present disclosure. As shown, the second terminal 108, according to one embodiment, may include a push agent 202, a service application 204, and an authentication module 206.

푸시 에이전트(202)는 전술한 푸시 서버를 통하여 서비스 서버(104)로부터 OTP 식별 정보를 수신하고, 수신되는 OTP 식별 정보를 서비스 애플리케이션(204)으로 전달한다.The push agent 202 receives the OTP identification information from the service server 104 through the above-described push server, and transfers the received OTP identification information to the service application 204.

서비스 애플리케이션(204)은 서비스 서버(104)와 연계하여 사용자(110)에게 온라인 서비스를 제공하기 위한 애플리케이션이다. 서비스 애플리케이션(204)은 푸시 에이전트(202)로부터 OTP 식별 정보가 수신되면 이를 인증 모듈(206)로 전달한다. 이 과정에서 서비스 애플리케이션(204)은 생체 인증이 개시됨을 알리는 메시지를 출력할 수 있다.The service application 204 is an application for providing an online service to the user 110 in association with the service server 104. The service application 204 forwards the OTP identification information from the push agent 202 to the authentication module 206. In this process, the service application 204 may output a message indicating that biometric authentication is started.

인증 모듈(206)은 인증 서버(206)와 연계하여 사용자(110)의 생체 인증을 수행하기 위한 모듈이다. 일 실시예에서, 인증 모듈(206)은 FIDO(Fast ID Online) 프로토콜을 이용하여 생체 인증을 수행할 수 있다. 다만 개시되는 실시예들은 특정 인증 프로토콜 내지 알고리즘에 한정되는 것은 아니다.The authentication module 206 is a module for performing biometric authentication of the user 110 in association with the authentication server 206. In one embodiment, the authentication module 206 may perform biometric authentication using the Fast ID Online (FIDO) protocol. However, the disclosed embodiments are not limited to specific authentication protocols or algorithms.

인증 모듈(206)은 서비스 애플리케이션(204)으로부터 수신된 OTP 식별 정보를 인증 서버(106)로 송신한다. 이후 인증 모듈(206)은 인증 서버(106)와 사용자(110)의 생체 인증을 수행한다. 만약 상기 생체 인증에 성공하는 경우, 인증 서버(106)는 인증 모듈(206)은 기 수신된 OTP 식별 정보에 대응되는 OTP를 송신한다. 그러면 인증 모듈(206)은 수신된 OTP를 서비스 애플리케이션(204)으로 제공하고, 서비스 애플리케이션(204)은 이를 사용자에게 디스플레이하거나 또는 음성 등의 형태로 출력할 수 있다.The authentication module 206 sends the OTP identification information received from the service application 204 to the authentication server 106. The authentication module 206 then performs biometric authentication of the authentication server 106 and the user 110. If the biometric authentication is successful, the authentication server 106 transmits an OTP corresponding to the previously received OTP identification information. The authentication module 206 can then provide the received OTP to the service application 204, which can display it to the user or output it in the form of voice or the like.

도 3은 일 실시예에 따른 트랜잭션 인증 방법(300)을 설명하기 위한 흐름도이다. 도 3에 도시된 방법은 예를 들어, 전술한 인증 시스템(100)에 의해 수행될 수 있다. 도시된 흐름도에서는 상기 방법을 복수 개의 단계로 나누어 기재하였으나, 적어도 일부의 단계들은 순서를 바꾸어 수행되거나, 다른 단계와 결합되어 함께 수행되거나, 생략되거나, 세부 단계들로 나뉘어 수행되거나, 또는 도시되지 않은 하나 이상의 단계가 부가되어 수행될 수 있다.3 is a flowchart illustrating a transaction authentication method 300 according to an embodiment. The method shown in FIG. 3 may be performed by the authentication system 100 described above, for example. In the illustrated flow chart, the method is divided into a plurality of steps, but at least some of the steps may be performed in a reverse order, in combination with other steps, omitted, divided into substeps, or not shown. One or more steps may be added and performed.

단계 302에서, 온라인 서비스의 사용자는 트랜잭션을 완료하기 위하여 제1 단말(102)을 통하여 서비스 서버(104)로 트랜잭션 인증 요청을 송신한다.In step 302, the user of the online service sends a transaction authentication request to the service server 104 via the first terminal 102 to complete the transaction.

단계 304에서, 상기 트랜잭션 인증 요청을 수신한 서비스 서버(104)는 인증 서버(106)로 해당 트랜잭션과 연관된 트랜잭션 정보를 송신한다. 이때 필요한 경우 서비스 서버(104)는 인증을 요청한 사용자의 식별 정보(사용자 ID 등)를 상기 트랜잭션 정보와 함께 인증 서버(106)로 송신할 수 있다.In step 304, the service server 104 receiving the transaction authentication request transmits transaction information associated with the transaction to the authentication server 106. At this time, if necessary, the service server 104 may transmit identification information (user ID, etc.) of the user who requested the authentication to the authentication server 106 together with the transaction information.

단계 306에서, 인증 서버(106)는 수신된 상기 트랜잭션 정보를 반영하여 원타임 패스워드(OTP; One-Time Password)를 생성한다.In step 306, the authentication server 106 generates a one-time password (OTP) by reflecting the received transaction information.

단계 308에서, 인증 서버(106)는 생성된 상기 OTP 및 이에 대응되는 OTP 식별 정보를 저장한 뒤, OTP 식별 정보만을 서비스 서버(104)로 송신한다. In operation 308, the authentication server 106 stores the generated OTP and the corresponding OTP identification information, and then transmits only the OTP identification information to the service server 104.

단계 310에서, 서비스 서버(104)는 인증 서버(106)로부터 수신한 OTP 식별 정보를 제2 단말(108)로 송신한다. 일 실시예에서, 서비스 서버(104)는 제1 단말(102)과는 별도의 통신 채널을 통해 상기 OTP 식별 정보를 제2 단말(108)로 송신할 수 있다. 예를 들어, 서비스 서버(104)는 별도의 푸시 서버(미도시)를 이용하여, 상기 OTP 식별 정보를 푸시 메시지를 통해 제2 단말(108)로 송신할 수 있다.In step 310, the service server 104 transmits the OTP identification information received from the authentication server 106 to the second terminal 108. In one embodiment, the service server 104 may transmit the OTP identification information to the second terminal 108 through a separate communication channel from the first terminal 102. For example, the service server 104 may transmit the OTP identification information to the second terminal 108 through a push message by using a separate push server (not shown).

단계 312에서, 제2 단말(108)은 인증 서버(106)로 상기 OTP 식별 정보를 송신한다.In step 312, the second terminal 108 transmits the OTP identification information to the authentication server 106.

단계 314에서, 제2 단말(108)은 인증 서버(106)와 연계하여 사용자(110)의 생체 인증을 수행한다. 전술한 바와 같이, 제2 단말(108)은 FIDO 프로토콜을 이용하여 생체 인증을 수행할 수 있다. 다만 개시되는 실시예들은 특정 인증 프로토콜 내지 알고리즘에 한정되는 것은 아니다.In operation 314, the second terminal 108 performs biometric authentication of the user 110 in association with the authentication server 106. As described above, the second terminal 108 may perform biometric authentication using the FIDO protocol. However, the disclosed embodiments are not limited to specific authentication protocols or algorithms.

상기 314 단계의 수행 결과 생체 인증에 성공한 경우, 단계 316에서 인증 서버(106)는 단계 312에서 수신한 OTP 식별 정보에 대응되는 OTP를 제2 단말(108)로 송신한다.If biometric authentication is successful as a result of the step 314, the authentication server 106 transmits an OTP corresponding to the OTP identification information received in step 312 to the second terminal 108 in step 316.

단계 318에서, 제2 단말(108)은 수신되는 OTP를 사용자(110)에게 제공한다. 예를 들어, 제2 단말(108)은 수신된 OTP를 화면에 디스플레이하거나, 또는 음성 등으로 스피커를 통해 출력하는 방식으로 수신된 OTP를 사용자(110)에게 제공할 수 있다.In step 318, the second terminal 108 provides the user 110 with the received OTP. For example, the second terminal 108 may provide the received OTP to the user 110 by displaying the received OTP on a screen or outputting the speaker through a speaker.

단계 320에서, 제2 단말(108)을 통해 OTP를 제공받은 사용자(110)는 해당 OTP를 제1 단말(102)로 입력한다. 도면에서는 OTP가 통신 네트워크 등을 통해 제2 단말(108)로부터 직접 제1 단말(102)로 전달되는 것이 아니라, 제2 단말(108)로부터 OTP를 알아낸 사용자(110)가 이를 제1 단말(102)에 입력하는 방식임을 표현하기 위하여 점선으로 표기하였다.In operation 320, the user 110 receiving the OTP through the second terminal 108 inputs the corresponding OTP to the first terminal 102. In the drawing, the OTP is not directly transmitted from the second terminal 108 to the first terminal 102 through a communication network or the like. It is indicated by a dotted line to indicate that the input method to 102.

단계 322에서, 제1 단말(102)은 사용자(110)에 의해 입력된 OTP를 서비스 서버(104)로 송신한다.In step 322, the first terminal 102 transmits the OTP input by the user 110 to the service server 104.

단계 324에서, 서비스 서버(104)는 수신된 OTP에 대한 유효성 확인 요청을 인증 서버(106)로 송신한다.In step 324, the service server 104 sends a validation request for the received OTP to the authentication server 106.

단계 326에서, 인증 서버(106)는 단계 324에서 수신되는 OTP를 기 저장된 OTP와 비교하여 OTP에 대한 유효성 확인을 수행하고, 확인 결과를 서비스 서버(104)로 송신한다. 만약 상기 326 단계의 수행 결과 입력된 OTP가 유효한 경우, 서비스 서버(104)는 트랜잭션 인증에 성공한 것으로 판단하고 상기 트랜잭션을 승인한다.In step 326, the authentication server 106 compares the OTP received in step 324 with the pre-stored OTP to perform validation on the OTP, and transmits the result of the check to the service server 104. If the OTP input as a result of the step 326 is valid, the service server 104 determines that the transaction authentication is successful and approves the transaction.

도 4는 전술한 트랜잭션 인증 방법(300) 중 생체 인증 과정(314)의 일 실시예를 상세히 설명하기 위한 흐름도이다. 도시된 흐름도에서는 상기 방법을 복수 개의 단계로 나누어 기재하였으나, 적어도 일부의 단계들은 순서를 바꾸어 수행되거나, 다른 단계와 결합되어 함께 수행되거나, 생략되거나, 세부 단계들로 나뉘어 수행되거나, 또는 도시되지 않은 하나 이상의 단계가 부가되어 수행될 수 있다.4 is a flowchart illustrating an embodiment of a biometric authentication process 314 of the above-described transaction authentication method 300 in detail. In the illustrated flow chart, the method is divided into a plurality of steps, but at least some of the steps may be performed in a reverse order, in combination with other steps, omitted, divided into substeps, or not shown. One or more steps may be added and performed.

단계 402에서, OTP 식별 정보를 수신한 제2 단말(108)의 서비스 애플리케이션(204)은 사용자(110)에게 생체 인증이 개시됨을 알림 메시지로 출력한다.In operation 402, the service application 204 of the second terminal 108 having received the OTP identification information outputs a notification message to the user 110 that biometric authentication is started.

단계 404에서, 서비스 애플리케이션(204)은 인증 모듈(206)로 인증 요청을 송신한다. 전술한 바와 같이, 상기 인증 요청은 FIDO 인증 요청일 수 있다. 또한 서비스 애플리케이션(204)은 상기 인증 요청과 함께 OTP 식별 정보를 함께 인증 모듈(206)로 전달할 수 있다.In step 404, the service application 204 sends an authentication request to the authentication module 206. As described above, the authentication request may be a FIDO authentication request. The service application 204 may also pass OTP identification information along with the authentication request to the authentication module 206.

단계 406에서, 인증 모듈(206)은 인증 서버(106)로 사용자(110)의 ID 및 수신된 OTP 식별 정보를 송신한다.In step 406, the authentication module 206 sends the ID of the user 110 and the received OTP identification information to the authentication server 106.

단계 408에서, 인증 서버(106)는 일회용 난수를 생성한다.At step 408, authentication server 106 generates a single random number.

단계 410에서, 인증 서버(106)는 생성된 일회용 난수를 인증 모듈(206)로 송신한다.In step 410, the authentication server 106 sends the generated disposable random number to the authentication module 206.

단계 412에서, 인증 모듈(206)은 사용자(110)로부터 생체 정보를 입력받고, 입력되는 생체 정보의 유효성을 검증한다. 상기 생체 정보는, 지문, 홍체, 안면 정보 등 사용자(110)의 신체와 관련된 모든 종류의 정보를 포함할 수 있다.In operation 412, the authentication module 206 receives biometric information from the user 110 and verifies the validity of the biometric information. The biometric information may include all kinds of information related to the body of the user 110, such as fingerprint, iris, and facial information.

상기 412 단계의 수행 결과 입력된 생체 정보의 유효성이 검증된 경우(즉, 생체 인증에 성공한 경우), 단계 414에서 인증 모듈(206)은 사용자(110)의 개인키(private key)로 상기 일회용 난수를 서명한다.When the validity of the biometric information input as a result of performing step 412 is verified (that is, when the biometric authentication succeeds), in step 414, the authentication module 206 uses the private key of the user 110 as the private random number. Sign

단계 416에서, 인증 모듈(206)은 상기 414 단계에서 생성된 서명값을 인증 서버(106)로 송신한다.In step 416, the authentication module 206 sends the signature value generated in step 414 to the authentication server 106.

단계 418에서, 인증 서버(106)는 수신된 서명값을 사용자(110)의 공개키(public key)로 검증한다. 인증 서버(106)는 상기 서명값을 공개키로 복호화하여 일회용 난수를 복원하고, 복원된 값을 기 저장된 값과 비교하여 상기 서명값을 검증할 수 있다.In step 418, the authentication server 106 verifies the received signature value with the public key of the user 110. The authentication server 106 may decrypt the signature value with a public key to restore a one-time random number, and verify the signature value by comparing the restored value with a previously stored value.

도 5는 전술한 트랜잭션 인증 방법(300) 중 생체 인증 과정(314)의 다른 실시예를 상세히 설명하기 위한 흐름도이다. 도시된 흐름도에서는 상기 방법을 복수 개의 단계로 나누어 기재하였으나, 적어도 일부의 단계들은 순서를 바꾸어 수행되거나, 다른 단계와 결합되어 함께 수행되거나, 생략되거나, 세부 단계들로 나뉘어 수행되거나, 또는 도시되지 않은 하나 이상의 단계가 부가되어 수행될 수 있다.5 is a flowchart illustrating another embodiment of the biometric authentication process 314 of the above-described transaction authentication method 300 in detail. In the illustrated flow chart, the method is divided into a plurality of steps, but at least some of the steps may be performed in a reverse order, in combination with other steps, omitted, divided into substeps, or not shown. One or more steps may be added and performed.

단계 502에서, OTP 식별 정보를 수신한 제2 단말(108)의 서비스 애플리케이션(204)은 사용자(110)에게 생체 인증이 개시됨을 알림 메시지로 출력한다.In operation 502, the service application 204 of the second terminal 108 having received the OTP identification information outputs a notification message to the user 110 that biometric authentication is started.

단계 504에서, 서비스 애플리케이션(204)은 인증 모듈(206)로 인증 요청을 송신한다. 전술한 바와 같이, 상기 인증 요청은 FIDO 인증 요청일 수 있다. 또한 서비스 애플리케이션(204)은 상기 인증 요청과 함께 OTP 식별 정보를 함께 인증 모듈(206)로 전달할 수 있다.In step 504, the service application 204 sends an authentication request to the authentication module 206. As described above, the authentication request may be a FIDO authentication request. The service application 204 may also pass OTP identification information along with the authentication request to the authentication module 206.

단계 506에서, 인증 모듈(206)은 인증 서버(106)로 사용자(110)의 ID 및 수신된 OTP 식별 정보를 송신한다.In step 506, the authentication module 206 sends the ID of the user 110 and the received OTP identification information to the authentication server 106.

단계 508에서, 인증 서버(106)는 일회용 난수를 생성한다.In step 508, the authentication server 106 generates a one-time random number.

단계 510에서, 인증 서버(106)는 생성된 일회용 난수를 인증 모듈(206)로 송신한다. In step 510, the authentication server 106 sends the generated disposable random number to the authentication module 206.

단계 512에서, 인증 모듈(206)은 사용자(110)로부터 생체 정보를 입력받고, 입력되는 생체 정보의 유효성을 검증한다. 상기 생체 정보는, 지문, 홍체, 안면 정보 등 사용자(110)와 신체와 관련된 모든 종류의 정보를 포함할 수 있다.In operation 512, the authentication module 206 receives biometric information from the user 110 and verifies the validity of the biometric information. The biometric information may include all kinds of information related to the user 110 and the body such as fingerprint, iris, and facial information.

상기 512 단계의 수행 결과 입력된 생체 정보의 유효성이 검증된 경우(즉, 생체 인증에 성공한 경우), 단계 514에서 인증 모듈(206)은 사용자(110)의 개인키(private key)로 상기 일회용 난수 및 상기 OTP 식별 정보를 결합한 값(문자열)을 서명한다. 즉 본 실시예의 경우 일회용 난수와 함께 504 단계에서 서비스 애플리케이션(204)으로부터 수신한 OTP 식별 정보를 결합하여 이를 서명한다는 점에서 앞선 실시예와 차이가 있다.If the validity of the biometric information input as a result of performing step 512 is verified (that is, if the biometric authentication is successful), in step 514, the authentication module 206 uses the private key of the user 110 as the private random number. And a value (string) combining the OTP identification information. That is, the present embodiment differs from the previous embodiment in that it combines and signs the OTP identification information received from the service application 204 in step 504 with a single random number.

단계 516에서, 인증 모듈(206)은 상기 414 단계에서 생성된 서명값을 인증 서버(106)로 송신한다.In step 516, the authentication module 206 sends the signature value generated in step 414 to the authentication server 106.

단계 518에서, 인증 서버(106)는 수신된 서명값을 사용자(110)의 공개키(public key)로 검증한다. 본 실시예에서, 인증 서버(106)는 상기 서명값을 공개키로 복호화하여 일회용 난수 및 OTP 식별 정보를 복원하고, 복원된 값을 기 저장된 값과 비교하여 상기 서명값을 검증할 수 있다. 본 실시예의 경우 앞선 실시예와 달리 검증 대상이 되는 서명값 자체에 OTP 식별 정보가 포함되는 바, 트랜잭션 인증 이후에 사용자(110)가 해당 트랜잭션을 부인하는 것을 원천적으로 차단할 수 있다.In step 518, the authentication server 106 verifies the received signature value with the public key of the user 110. In this embodiment, the authentication server 106 may decrypt the signature value with a public key to restore the disposable random number and OTP identification information, and verify the signature value by comparing the restored value with a previously stored value. In the present embodiment, unlike the previous embodiment, since the OTP identification information is included in the signature value itself to be verified, the user 110 may block the user 110 from denying the corresponding transaction after transaction authentication.

한편, 본 발명의 실시예는 본 명세서에서 기술한 방법들을 컴퓨터상에서 수행하기 위한 프로그램, 및 상기 프로그램을 포함하는 컴퓨터 판독 가능 기록매체를 포함할 수 있다. 상기 컴퓨터 판독 가능 기록매체는 프로그램 명령, 로컬 데이터 파일, 로컬 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체는 본 발명을 위하여 특별히 설계되고 구성된 것들이거나, 또는 컴퓨터 소프트웨어 분야에서 통상적으로 사용 가능한 것일 수 있다. 컴퓨터 판독 가능 기록매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체, CD-ROM, DVD와 같은 광 기록 매체, 및 롬, 램, 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 상기 프로그램의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함할 수 있다.Meanwhile, an embodiment of the present invention may include a program for performing the methods described herein on a computer, and a computer readable recording medium including the program. The computer-readable recording medium may include program instructions, local data files, local data structures, etc. alone or in combination. The media may be those specially designed and constructed for the purposes of the present invention, or those conventionally available in the field of computer software. Examples of computer-readable recording media include magnetic media such as hard disks, floppy disks, and magnetic tape, optical recording media such as CD-ROMs, DVDs, and specially configured to store and execute program instructions such as ROM, RAM, flash memory, and the like. Hardware devices are included. Examples of such programs may include high-level language code that can be executed by a computer using an interpreter as well as machine code such as produced by a compiler.

이상에서 본 발명의 대표적인 실시예들을 상세하게 설명하였으나, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자는 상술한 실시예에 대하여 본 발명의 범주에서 벗어나지 않는 한도 내에서 다양한 변형이 가능함을 이해할 것이다. 그러므로 본 발명의 권리범위는 설명된 실시예에 국한되어 정해져서는 안 되며, 후술하는 특허청구범위뿐만 아니라 이 특허청구범위와 균등한 것들에 의해 정해져야 한다.Although exemplary embodiments of the present invention have been described in detail above, those skilled in the art will appreciate that various modifications can be made to the above-described embodiments without departing from the scope of the present invention. . Therefore, the scope of the present invention should not be limited to the described embodiments, but should be defined by the claims below and equivalents thereof.

100: 인증 시스템
102: 제1 단말
104: 서비스 서버
106: 인증 서버
108: 제2 단말
202: 푸시 에이전트
204: 서비스 애플리케이션
206: 인증 모듈
100: authentication system
102: first terminal
104: service server
106: authentication server
108: second terminal
202: push agent
204: service application
206: authentication module

Claims (10)

사용자의 트랜잭션(transaction)을 인증하기 위한 시스템으로서,
제1 단말로부터 상기 트랜잭션에 대한 인증 요청을 수신하는 서비스 서버;
상기 서비스 서버로부터 상기 트랜잭션과 연관된 트랜잭션 정보를 수신하고, 이를 이용하여 OTP(One-Time Password)를 생성하며, 생성된 상기 OTP에 대응되는 OTP 식별 정보를 상기 서비스 서버로 송신하는 인증 서버; 및
상기 서비스 서버로부터 상기 OTP 식별 정보를 수신하여 상기 인증 서버로 송신하고, 상기 사용자의 생체 인증 결과에 따라 상기 OTP 식별 정보에 대응되는 OTP를 상기 인증 서버로부터 수신하여 디스플레이하는 제2 단말을 포함하며,
상기 서비스 서버는, 상기 사용자에 의해 상기 제1 단말로 입력되는 OTP 입력값의 유효성을 검증하고, 상기 검증 결과에 따라 상기 트랜잭션을 승인하는, 인증 시스템.
A system for authenticating a user's transaction,
A service server receiving an authentication request for the transaction from a first terminal;
An authentication server for receiving transaction information associated with the transaction from the service server, generating an one-time password (OTP) using the transaction information, and transmitting OTP identification information corresponding to the generated OTP to the service server; And
A second terminal receiving the OTP identification information from the service server and transmitting the received OTP identification information to the authentication server, and receiving and displaying an OTP corresponding to the OTP identification information according to a biometric authentication result of the user from the authentication server,
And the service server verifies the validity of an OTP input value input by the user to the first terminal and approves the transaction according to the verification result.
청구항 1에 있어서,
상기 제2 단말은, 상기 OTP 식별 정보를 푸시 메시지를 통해 상기 서비스 서버로부터 수신하는, 인증 시스템.
The method according to claim 1,
And the second terminal receives the OTP identification information from the service server through a push message.
청구항 1에 있어서,
상기 제2 단말은,
상기 사용자로부터 입력된 생체 정보의 유효성을 검증하며,
상기 생체 정보의 유효성 검증 결과에 따라 상기 인증 서버로부터 수신한 상기 1회용 난수를 상기 사용자의 개인키로 서명하여 서명값을 생성하고, 생성된 상기 서명값을 상기 인증 서버로 송신하는, 인증 시스템.
The method according to claim 1,
The second terminal,
Validating the biometric information input from the user,
And a signature value is generated by signing the disposable random number received from the authentication server with the private key of the user according to a result of the validation of the biometric information, and transmitting the generated signature value to the authentication server.
청구항 3에 있어서,
상기 인증 서버는, 상기 개인키에 대응되는 공개키로 수신된 서명값을 검증하고, 상기 서명값의 검증이 완료되는 경우 상기 OTP 식별 정보에 대응되는 OTP를 상기 제2 단말로 송신하는, 인증 시스템.
The method according to claim 3,
The authentication server verifies a signature value received with the public key corresponding to the private key, and when verification of the signature value is completed, transmits an OTP corresponding to the OTP identification information to the second terminal.
청구항 3에 있어서,
상기 제2 단말은, 상기 1회용 난수에 상기 OTP 식별 정보를 결합한 문자열을 상기 사용자의 개인키로 서명하여 상기 서명값을 생성하는, 인증 시스템.
The method according to claim 3,
And the second terminal generates the signature value by signing a character string combining the OTP identification information with the disposable random number with the private key of the user.
사용자의 트랜잭션(transaction)을 인증하기 위한 방법으로서,
서비스 서버에서, 제1 단말로부터 상기 트랜잭션에 대한 인증 요청을 수신하는 단계;
상기 서비스 서버에서, 인증 서버로 상기 트랜잭션과 연관된 트랜잭션 정보를 송신하는 단계;
상기 인증 서버에서, 수신된 상기 트랜잭션 정보에 기반하여 OTP(One-Time Password)를 생성하고, 생성된 상기 OTP에 대응되는 OTP 식별 정보를 상기 서비스 서버로 송신하는 단계;
상기 서비스 서버에서, 수신된 상기 OTP 식별 정보를 상기 사용자의 제2 단말로 송신하는 단계;
상기 제2 단말에서, 수신된 상기 OTP 식별 정보를 상기 인증 서버로 송신하고, 상기 사용자의 생체 인증을 수행하는 단계;
상기 제2 단말에서, 상기 사용자의 생체 인증 결과에 따라 상기 OTP 식별 정보에 대응되는 OTP를 상기 인증 서버로부터 수신하여 디스플레이하는 단계; 및
상기 제2 단말에 디스플레이된 상기 OTP를 인식한 상기 사용자가 상기 제1 단말을 통해 OTP를 입력하는 경우, 상기 서비스 서버에서 상기 제1 단말을 통해 수신되는 OTP 입력값의 유효성을 검증하고, 상기 검증 결과에 따라 상기 트랜잭션을 승인하는 단계를 포함하는, 인증 방법.
A method for authenticating a user's transaction,
Receiving, at a service server, an authentication request for the transaction from a first terminal;
At the service server, sending transaction information associated with the transaction to an authentication server;
Generating, at the authentication server, one-time password (OTP) based on the received transaction information, and transmitting OTP identification information corresponding to the generated OTP to the service server;
Transmitting, at the service server, the received OTP identification information to a second terminal of the user;
Transmitting, at the second terminal, the received OTP identification information to the authentication server and performing biometric authentication of the user;
Receiving and displaying, at the second terminal, an OTP corresponding to the OTP identification information from the authentication server according to a biometric authentication result of the user; And
When the user who recognizes the OTP displayed on the second terminal inputs the OTP through the first terminal, the service server verifies the validity of the OTP input value received through the first terminal, and the verification. Acknowledging the transaction according to a result.
청구항 6에 있어서,
상기 OTP 식별 정보를 상기 사용자의 제2 단말로 송신하는 단계는, 상기 OTP 식별 정보를 푸시 메시지를 통해 상기 제2 단말로 송신하도록 구성되는, 인증 방법.
The method according to claim 6,
And transmitting the OTP identification information to the second terminal of the user is configured to send the OTP identification information to the second terminal via a push message.
청구항 6에 있어서,
상기 생체 인증을 수행하는 단계는,
상기 인증 서버에서, 상기 제2 단말로 1회용 난수를 송신하는 단계;
상기 제2 단말에서, 상기 사용자로부터 생체 정보를 입력받고, 입력된 상기 생체 정보의 유효성을 검증하는 단계;
상기 제2 단말에서, 상기 생체 정보의 유효성 검증 결과에 따라 상기 1회용 난수를 상기 사용자의 개인키로 서명하여 서명값을 생성하는 단계; 및
생성된 상기 서명값을 상기 인증 서버로 송신하는 단계를 더 포함하는, 인증 방법.
The method according to claim 6,
The biometric authentication may include:
Transmitting, at the authentication server, a single-use random number to the second terminal;
At the second terminal, receiving biometric information from the user and validating the input biometric information;
Generating, at the second terminal, a signature value by signing the disposable random number with the private key of the user according to a result of validating the biometric information; And
And sending the generated signature value to the authentication server.
청구항 8에 있어서,
상기 인증 서버는, 상기 개인키에 대응되는 공개키로 수신된 서명값을 검증하고, 상기 서명값의 검증이 완료되는 경우 상기 OTP 식별 정보에 대응되는 OTP를 상기 제2 단말로 송신하는, 인증 방법.
The method according to claim 8,
And the authentication server verifies a signature value received with the public key corresponding to the private key, and transmits an OTP corresponding to the OTP identification information to the second terminal when verification of the signature value is completed.
청구항 8에 있어서,
상기 서명값을 생성하는 단계는,
상기 1회용 난수 및 상기 OTP 식별 정보를 결합한 문자열을 상기 사용자의 개인키로 서명하도록 구성되는, 인증 방법.
The method according to claim 8,
Generating the signature value,
And sign the string combining the one-time random number and the OTP identification information with the private key of the user.
KR1020180036072A 2018-03-28 2018-03-28 System and method for data authentication KR102459974B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020180036072A KR102459974B1 (en) 2018-03-28 2018-03-28 System and method for data authentication

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020180036072A KR102459974B1 (en) 2018-03-28 2018-03-28 System and method for data authentication

Publications (2)

Publication Number Publication Date
KR20190113417A true KR20190113417A (en) 2019-10-08
KR102459974B1 KR102459974B1 (en) 2022-10-28

Family

ID=68208474

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020180036072A KR102459974B1 (en) 2018-03-28 2018-03-28 System and method for data authentication

Country Status (1)

Country Link
KR (1) KR102459974B1 (en)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20080033541A (en) 2005-08-11 2008-04-16 샌디스크 아이엘 엘티디 Extended one-time password method and apparatus
KR100876003B1 (en) * 2007-02-14 2008-12-26 에스케이씨앤씨 주식회사 User Authentication Method Using Biological Information
KR20090022425A (en) * 2007-08-30 2009-03-04 씨티아이에스(주) Multiple authentication access system and the method thereof
KR101444305B1 (en) * 2013-12-13 2014-09-26 (주)세이퍼존 Security key using multi-otp, security service apparatus, security system
KR20170127854A (en) * 2016-05-13 2017-11-22 삼성전자주식회사 Electronic apparatus providing electronic payment and operating method thereof

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20080033541A (en) 2005-08-11 2008-04-16 샌디스크 아이엘 엘티디 Extended one-time password method and apparatus
KR100876003B1 (en) * 2007-02-14 2008-12-26 에스케이씨앤씨 주식회사 User Authentication Method Using Biological Information
KR20090022425A (en) * 2007-08-30 2009-03-04 씨티아이에스(주) Multiple authentication access system and the method thereof
KR101444305B1 (en) * 2013-12-13 2014-09-26 (주)세이퍼존 Security key using multi-otp, security service apparatus, security system
KR20170127854A (en) * 2016-05-13 2017-11-22 삼성전자주식회사 Electronic apparatus providing electronic payment and operating method thereof

Also Published As

Publication number Publication date
KR102459974B1 (en) 2022-10-28

Similar Documents

Publication Publication Date Title
CN110692214B (en) Method and system for ownership verification using blockchain
KR102358546B1 (en) System and method for authenticating a client to a device
KR101883156B1 (en) System and method for authentication, user terminal, authentication server and service server for executing the same
US10430578B2 (en) Service channel authentication token
US9560033B2 (en) Method and system for authenticating user identity
KR102383021B1 (en) Enhanced security for registration of authentication devices
US9578004B2 (en) Authentication of API-based endpoints
US9548997B2 (en) Service channel authentication processing hub
KR102439782B1 (en) System and method for implementing a hosted authentication service
US20160080157A1 (en) Network authentication method for secure electronic transactions
US10810585B2 (en) Systems and methods for authenticating users in connection with mobile operations
US9009793B2 (en) Dynamic pin dual factor authentication using mobile device
US20210014064A1 (en) Method and apparatus for managing user authentication in a blockchain network
US20200196143A1 (en) Public key-based service authentication method and system
US20210241270A1 (en) System and method of blockchain transaction verification
US9998430B2 (en) Wireless information passing and authentication
US20210377309A1 (en) System and method for establishing secure session with online disambiguation data
EP4114062A1 (en) Activation of an application session based on authentication of a user device and a characteristic of the user device
US20180159865A1 (en) System and method for message recipient verification
CN110034933B (en) Cross-system user mutual trust authentication method and cross-system user mutual trust authentication system
US20230022797A1 (en) Use of web authentication to enhance security of secure remote platform systems
KR20180129476A (en) System and method for authentication
KR102459974B1 (en) System and method for data authentication
JP2020102741A (en) Authentication system, authentication method, and authentication program
EP4113410A1 (en) Enabling a function of an application based on a characteristic of a user device

Legal Events

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