KR20190068851A - Operation method of server apparatus, operation method of terminal and server apparatus - Google Patents

Operation method of server apparatus, operation method of terminal and server apparatus Download PDF

Info

Publication number
KR20190068851A
KR20190068851A KR1020170169049A KR20170169049A KR20190068851A KR 20190068851 A KR20190068851 A KR 20190068851A KR 1020170169049 A KR1020170169049 A KR 1020170169049A KR 20170169049 A KR20170169049 A KR 20170169049A KR 20190068851 A KR20190068851 A KR 20190068851A
Authority
KR
South Korea
Prior art keywords
terminal
otp
authentication
information
authentication server
Prior art date
Application number
KR1020170169049A
Other languages
Korean (ko)
Other versions
KR102445379B1 (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 KR1020170169049A priority Critical patent/KR102445379B1/en
Publication of KR20190068851A publication Critical patent/KR20190068851A/en
Application granted granted Critical
Publication of KR102445379B1 publication Critical patent/KR102445379B1/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
    • G06Q20/32Payment architectures, schemes or protocols characterised by the use of specific devices or networks using wireless devices
    • G06Q20/322Aspects of commerce using mobile devices [M-devices]
    • G06Q20/3223Realising banking transactions through M-devices
    • 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/3823Payment protocols; Details thereof insuring higher security of transaction combining multiple encryption tools for a transaction
    • 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/3829Payment protocols; Details thereof insuring higher security of transaction involving key management
    • 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/385Payment protocols; Details thereof using an alias or single-use codes

Abstract

The present invention provides an authentication method, an operation method of a server apparatus, an operation method of a terminal and a server apparatus. The authentication method is performed by a server apparatus operated by at least one processor, and comprises: a step of authenticating a person who is to generate a one-time password (OTP) number from a terminal; a step of receiving an OTP request; a step of generating an OTP based on a seed key combining a personal identification number (PIN) or a password included in the OTP request and terminal information; a step of transmitting the OTP to the terminal; a step of receiving an authentication request including an OTP via a channel; a step of performing OTP authentication for determining whether the OTP included in the authentication request matches the OTP transmitted to the terminal; and a step of returning a result of the OTP authentication to the channel. The result of the OTP authentication is used in determining whether to approve a service requested by the terminal.

Description

서버 장치의 동작 방법, 단말의 동작 방법 및 서버 장치{ OPERATION METHOD OF SERVER APPARATUS, OPERATION METHOD OF TERMINAL AND SERVER APPARATUS}Technical Field [0001] The present invention relates to an operation method of a server device, a method of operating the terminal device, and a server device.

본 발명은 서버 장치의 동작 방법, 단말의 동작 방법 및 서버 장치에 관한 것으로서, 보다 자세하게는 일회용 패스워드(One Time Password, 이하, 'OTP'라 통칭함)를 이용한 사용자 인증에 관한 것이다. BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a method of operating a server device, a method of operating a terminal, and a server device, and more particularly, to user authentication using a one-time password (hereinafter referred to as OTP).

공인인증서에 의한 보안의 취약성을 보완하기 위한 방법으로 OTP가 사용되고 있다. OTP는 무작위로 생성되는 난수로서, 정적인 패스워드 사용에 따른 위험을 해결하고 개인정보 유출에 따른 사용자 인증을 강화하기 위해 도입되었다. ?????? OTP is being used as a method to overcome the weakness of security by public certificate. OTP is a random number generated randomly, which is introduced to solve the risk of using static passwords and to strengthen user authentication by leakage of personal information. ??????

기존의 OTP는 매체 인증의 한 방법으로 사용되었다. 기기 자체에서 난수 6자리를 생성하여 서버로 전송하면 서버에서도 동일한 방식으로 난수 6자리를 생성한다. 서버는 기기로부터 채널, 예를 들면, 스마트폰 뱅킹, 인터넷 뱅킹 등을 통하여 수신된 6자리 난수와 자신이 생성한 6자리 난수를 비교하여 인증한다. Conventional OTP was used as a method of media authentication. 6 digits of random number is generated from the device itself and transmitted to the server, and the server generates 6 digits in the same manner. The server compares the 6-digit random number received from the device through a channel, for example, smart phone banking, Internet banking, etc., with the 6-digit random number generated by the server.

그런데, 이와 같은 방식은 기기에서 난수 연산을 하여 서버로 전송하기 때문에, 기기에서 난수를 연산하는 방법이나 결과값이 노출될 가능성이 있으므로, 보안이 취약하다. OTP 애플리케이션을 통해 OTP를 생성하는 방식은 모바일 OS나 애플리케이션의 보안이 깨질 경우 OTP 관련 주요 값과 알고리즘이 해킹될 수 있는 위험이 있다. 그리고 USIM 내의 보안요소를 이용하여 생성하는 방식은 OTP 관련 주요 값과 알고리즘은 안전하나 애플리케이션을 통해 접근하기 때문에 애플리케이션이 해킹될 경우 사용자의 인지 없이 백그라운드(Background)에서 OTP 인증이 수행될 위험이 존재한다. However, since this method performs a random number operation on a device and transmits the random number to the server, there is a possibility that the method of calculating the random number in the device or the result value may be exposed. There is a risk that OTP related key values and algorithms can be hacked if security of mobile OS or application is broken. In addition, since the OTP-related key values and algorithms are secure but accessed through the application, there is a risk that the OTP authentication is performed in the background without the user's recognition when the application is hacked .

또한, 휴대 단말기를 통하여 구현되는 모바일 OTP는 휴대 단말기에 OTP 생성 알고리즘을 실행하도록 하여 소프트웨어적으로 구현됨으로써 보급이 쉬우나, 메모리 해킹 등의 보안 환경 문제가 있다. 특히, 휴대 단말기의 경우 거래 당사자 휴대 단말기 내 트러스트존(TrustZone)에 저장하여 해킹이나 복제의 위험으로부터 벗어났다고 하지만, 특정매체, 예컨대 IC(Integrated Circuit) 카드 등이 휴대폰과 같이 도난을 당한다면 최악의 경우, 거래 당사자의 정보가 노출되는 리스크를 가진다. In addition, the mobile OTP implemented through the mobile terminal is easily implemented because it is implemented in software by executing an OTP generation algorithm in the mobile terminal, but there is a security environment problem such as memory hacking. In particular, in the case of a portable terminal, it is stored in a TrustZone in a trading party's mobile terminal so as to be free from the risk of hacking or copying. However, if a specific medium such as an IC (Integrated Circuit) card is stolen, , And the risk that the information of the trading partner is exposed.

또한, 보안매체의 특성상 OTP를 발생시키는 주체에 대한 별도의 인증을 하지 않음으로, 보안매체를 탈취 당하면 인증에 사용되는 OTP 또한 타인에 의해서 발생시킬 수 있게 되어 보안에 취약할 수 있다. In addition, since the security medium does not authenticate the subject that generates the OTP, if the security medium is dealt with, the OTP used in the authentication can also be generated by another person, which may be vulnerable to security.

따라서, 개인정보 유출에 따른 문제를 방지할 수 있고 보안성이 더욱 강화된 사용자 인증 방안이 필요한 실정이다. Accordingly, there is a need for a user authentication method capable of preventing problems caused by personal information leakage and further enhancing security.

본 발명이 이루고자 하는 기술적 과제는 공개키 알고리즘(Public Key Infrastructure, PKI)을 이용한 단말 인증을 수행한 후, 단말 별로 고유한 시드키(Seed Key)를 기초로 OTP(One Time Password)를 생성하여 인증에 사용하는 방법 및 그 장치를 제공하는 것이다. SUMMARY OF THE INVENTION The present invention has been made in view of the above problems, and it is an object of the present invention to provide a method and apparatus for performing terminal authentication using a Public Key Infrastructure (PKI), generating an OTP (One Time Password) based on a seed key unique to each terminal, And a method of using the same.

본 발명의 한 실시예에 따른 서버 장치의 동작 방법은 적어도 하나의 프로세서에 의해 동작하는 서버 장치의 동작 방법으로서, 공개키 알고리즘(Public Key Infrastructure, PKI)을 이용한 단말 인증을 수행하는 단계, 그리고 상기 단말 인증에 성공하는 경우, 상기 단말의 요청에 따라 생성한 OTP(One Time Password)를 상기 단말로 전송하는 단계를 포함하고, 상기 OTP는, 상기 단말이 요청한 서비스의 승인 여부를 결정하는데 사용된다. A method of operating a server device according to an embodiment of the present invention includes: performing terminal authentication using a Public Key Infrastructure (PKI) And transmitting an OTP (One Time Password) generated according to a request of the terminal to the terminal when the terminal authentication is successful, and the OTP is used to determine whether to approve the service requested by the terminal.

상기 OTP는, 개인 식별 번호(Personal Identification Number, PIN) 또는 패스워드와, 단말 별로 고유한 단말정보를 조합한 시드키를 기초로 난수 생성 알고리즘에 의하여 생성될 수 있다. The OTP can be generated by a random number generation algorithm based on a seed key that is a combination of a Personal Identification Number (PIN) or a password and terminal information unique to each terminal.

상기 개인 식별 번호(PIN) 또는 패스워드는, 상기 단말에서 OTP 어플리케이션의 활성화시 사용자로부터 입력되어, 상기 단말로부터 수신한 OTP 생성 요청에 포함된 것일 수 있다. The personal identification number (PIN) or the password may be included in the OTP creation request received from the user when the OTP application is activated in the terminal.

상기 단말정보는, 상기 단말의 하드웨어 정보, 상기 단말의 전화번호, 상기 단말의 기기 일련번호, 상기 단말의 유심(USIM, Universal Subscriber Identity Module) 카드번호, 상기 단말의 맥 어드레스(MAC address) 중에서 하나 또는 적어도 둘 이상의 조합을 포함할 수 있다. The terminal information includes at least one of hardware information of the terminal, a telephone number of the terminal, a device serial number of the terminal, a USIM (Universal Subscriber Identity Module) card number of the terminal, and a MAC address of the terminal Or at least two or more combinations.

상기 단말 인증을 수행하는 단계는, 상기 단말로부터 상기 단말이 생성한 비대칭키 중의 하나인 공개키와 상기 단말정보를 포함하는 OTP 매체 정보를 수신하는 단계, 상기 단말로부터 상기 비대칭키 중의 다른 하나인 개인키로 전자서명된 단말정보를 포함하는 OTP 매체 등록 요청을 수신하는 단계, 그리고 상기 공개키로 상기 전자서명된 단말정보를 복호화하여, 상기 복호화에 성공하면, 상기 단말을 OTP 매체로 등록하는 단계를 포함하고, 상기 단말로 전송하는 단계는, 상기 OTP 매체로 등록된 단말이 요청한 OTP를 생성하여 전송할 수 있다. The step of performing the terminal authentication comprises: receiving from the terminal a public key, which is one of the asymmetric keys generated by the terminal, and OTP medium information including the terminal information; Receiving an OTP medium registration request including terminal information digitally signed with a key and decrypting the digitally signed terminal information using the public key and registering the terminal as an OTP medium when the decryption is successful , The step of transmitting to the terminal may generate and transmit the OTP requested by the terminal registered with the OTP medium.

상기 단말을 OTP 매체로 등록하는 단계는, 상기 단말정보와 상기 공개키를 매칭하여 저장할 수 있다. The step of registering the terminal as an OTP medium may store and store the terminal information and the public key.

상기 단말로 전송하는 단계는, 상기 공개키로 상기 OTP를 암호화하여 전송할 수 있다. The step of transmitting to the terminal may encrypt and transmit the OTP with the public key.

본 발명의 다른 실시예에 따른 단말의 동작 방법은 적어도 하나의 프로세서에 의해 동작하는 단말의 동작 방법으로서, 네트워크를 통해 접속한 인증 서버와 연동하여 공개키 알고리즘(Public Key Infrastructure, PKI)을 이용한 단말 인증을 수행하는 단계, 그리고 상기 단말 인증에 성공하는 경우, 상기 인증 서버에 요청하여 상기 인증 서버에서 생성된 OTP(One Time Password)를 수신하는 단계를 포함하고, 상기 OTP는, 사용자 인증에서 사용될 수 있다. A method of operating a terminal according to another embodiment of the present invention is an operation method of a terminal operated by at least one processor. The method includes a step of operating a terminal using a Public Key Infrastructure (PKI) (OTP) generated by the authentication server by requesting the authentication server when the terminal authentication is successful, and the OTP can be used in user authentication have.

상기 OTP를 수신하는 단계는, 개인 식별 번호(Personal Identification Number, PIN) 또는 패스워드와, 단말 별로 고유한 단말정보가 포함된 OTP 생성 요청을 상기 인증 서버로 전송하는 단계, 그리고 상기 인증 서버로부터 상기 개인 식별 번호(PIN) 또는 패스워드와, 상기 단말정보를 조합한 시드키를 기초로 난수 생성 알고리즘에 의하여 생성된 상기 OTP를 수신하는 단계를 포함할 수 있다. The step of receiving the OTP comprises the steps of transmitting to the authentication server an OTP generation request including a Personal Identification Number (PIN) or a password and terminal information unique to each terminal to the authentication server, Receiving the OTP generated by the random number generation algorithm based on the identification number (PIN) or the password and the seed key obtained by combining the terminal information.

상기 단말 인증을 수행하는 단계는, 상기 단말이 생성한 비대칭키 중의 하나인 공개키와 단말정보를 상기 인증 서버에 등록하는 단계를 포함하고, 상기 OTP를 수신하는 단계는, 상기 인증 서버에게 OTP 생성을 요청하는 단계, 상기 인증 서버로부터 상기 공개키로 암호화된 OTP를 수신하는 단계, 그리고 상기 비대칭키를 생성하여 개인키로 상기 암호화된 OTP를 복호화하여 상기 인증 서버에서 생성한 OTP를 추출하는 단계를 포함할 수 있다. The step of performing the terminal authentication includes registering the public key and the terminal information, which are one of the asymmetric keys generated by the terminal, with the authentication server, and the step of receiving the OTP comprises: Receiving the OTP encrypted with the public key from the authentication server, and extracting the OTP generated by the authentication server by decrypting the encrypted OTP with the private key by generating the asymmetric key .

상기 단말 인증을 수행하는 단계는, OTP 어플리케이션의 설치시, 상기 공개키와 단말정보가 포함된 OTP 매체 정보를 상기 인증 서버로 전송하는 단계, 상기 OTP 어플리케이션을 활성화하여 상기 개인키로 상기 단말정보를 전자서명하고, 전자서명 정보를 포함하는 OTP 매체 등록 요청을 상기 인증 서버로 전송하는 단계, 그리고 상기 인증 서버로부터 OTP 매체 등록 응답을 수신하는 단계를 포함하고, 상기 OTP 매체 정보는, 상기 인증 서버에서 상기 전자서명 정보를 상기 공개키로 복호화에 성공한 경우, 상기 인증 서버에 등록될 수 있다. The step of performing the terminal authentication includes transmitting OTP medium information including the public key and terminal information to the authentication server when the OTP application is installed, activating the OTP application, And transmitting an OTP media registration request including the electronic signature information to the authentication server, and receiving an OTP media registration response from the authentication server, wherein the OTP medium information is transmitted from the authentication server to the authentication server, If the digital signature information is decrypted with the public key, it can be registered in the authentication server.

본 발명의 다른 실시예에 따른 통신 장치는 네트워크를 통해 데이터를 송수신하는 통신 장치, OTP(One Time Password)를 생성하여 상기 통신 장치를 통해 전송하는 프로그램을 저장하는 메모리 장치, 그리고 상기 프로그램을 실행하는 적어도 하나의 프로세서를 포함하고, 상기 프로그램은, 단말 인증을 수행한 후, 상기 단말의 요청에 따라 상기 단말의 고유정보를 시드키로 하는 난수 생성 알고리즘에 따라 OTP를 생성하여 상기 단말로 전송하는 명령어들(instructions)을 포함한다. According to another aspect of the present invention, there is provided a communication device including: a communication device that transmits and receives data through a network; a memory device that stores a program that generates an OTP (One Time Password) and transmits the generated OTP through the communication device; Wherein the program generates at least one OTP according to a random number generation algorithm for seeding unique information of the terminal according to a request of the terminal and transmits the generated OTP to the terminal after performing terminal authentication, (instructions).

상기 프로그램은, 상기 단말로부터 상기 단말에서 생성된 비대칭키중의 하나인 공개키와 단말정보를 수신하고, 상기 단말로부터 상기 비대칭키 중의 다른 하나인 개인키로 전자서명된 단말정보를 수신하며, 상기 공개키로 상기 전자서명된 단말정보를 복호화하는데 성공하면, 상기 공개키와 상기 단말정보를 매칭하여 상기 단말을 상기 OTP 매체로 등록하는 단말 인증을 수행하는 명령어들을 포함할 수 있다. Wherein the program receives the public key and the terminal information as one of the asymmetric keys generated in the terminal from the terminal and receives the digitally signed terminal information from the terminal with the private key which is another one of the asymmetric keys, If the decryption of the digitally signed terminal information is successful with the key, the terminal may perform the terminal authentication to register the terminal with the OTP medium by matching the public key and the terminal information.

상기 프로그램은, 상기 단말이 OTP 어플리케이션을 설치하여 초기 활성화할 때, 상기 단말 인증을 수행하는 명령어들을 포함할 수 있다. The program may include instructions for performing the terminal authentication when the terminal is initially activated by installing an OTP application.

본 발명의 실시예에 따르면, OTP 어플리케이션 설치시에 단말 인증을 거쳐 등록한 공개키로 OTP를 암호화할 뿐만 아니라, 인증 서버에서 연산한 OTP를 단말로 전송하므로, 종래의 보안 취약점을 해결한다. According to the embodiment of the present invention, not only the OTP is encrypted with the public key registered through terminal authentication at the time of installing the OTP application, but also the OTP calculated by the authentication server is transmitted to the terminal, thereby solving the conventional security vulnerability.

또한, 인증 서버에서 생성하는 OTP는 사용자가 OTP 어플리케이션을 활성화시킬 때 사용하는 PIN 또는 패스워드와, 단말정보를 조합한 키를 시드키로 하여 발생시키므로, 일반적인 오픈 소스로 난수를 발생시키는 것이 아닌, 사용자 별로 고유한 OTP를 발생시킬 수 있어 보안이 강화된다. 또한 OTP번호를 생성할 때 PIN번호, 혹은 사용하는 채널의 로그인에 의한 사용자인증을 거쳐 발생함으로써 OTP 발생주체에 대한 사용자 인증을 수행한다. Also, since the OTP generated by the authentication server generates the PIN or the password used when the user activates the OTP application and the key combination of the terminal information as a seed key, Security can be enhanced by generating unique OTP. When generating the OTP number, the user is authenticated by generating the PIN number or user authentication by login of the channel to be used, thereby performing the user authentication to the OTP generating entity.

도 1은 본 발명의 실시예에 따른 인증 시스템의 구성도이다.
도 2는 본 발명의 실시예에 따른 OTP 매체 등록 과정을 나타낸다.
도 3은 본 발명의 실시예에 따른 OTP 생성 과정을 나타낸 흐름도이다.
도 4는 본 발명의 실시예에 따른 OTP 인증 과정을 나타낸 흐름도이다.
도 5는 본 발명의 실시예에 따른 단말의 하드웨어 블록도이다.
도 6은 본 발명의 실시예에 따른 서버 장치의 하드웨어 블록도이다.
1 is a configuration diagram of an authentication system according to an embodiment of the present invention.
FIG. 2 illustrates an OTP media registration process according to an embodiment of the present invention.
3 is a flowchart illustrating an OTP generation process according to an embodiment of the present invention.
4 is a flowchart illustrating an OTP authentication process according to an embodiment of the present invention.
5 is a hardware block diagram of a terminal according to an embodiment of the present invention.
6 is a hardware block diagram of a server apparatus according to an embodiment of the present invention.

아래에서는 첨부한 도면을 참고로 하여 본 발명의 실시예에 대하여 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있도록 상세히 설명한다. 그러나 본 발명은 여러가지 상이한 형태로 구현될 수 있으며 여기에서 설명하는 실시예에 한정되지 않는다. 그리고 도면에서 본 발명을 명확하게 설명하기 위해서 설명과 관계없는 부분은 생략하였으며, 명세서 전체를 통하여 유사한 부분에 대해서는 유사한 도면 부호를 붙였다. Hereinafter, embodiments of the present invention will be described in detail with reference to the accompanying drawings so that those skilled in the art can easily carry out the present invention. The present invention may, however, be embodied in many different forms and should not be construed as limited to the embodiments set forth herein. In order to clearly illustrate the present invention, parts not related to the description are omitted, and similar parts are denoted by like reference characters throughout the specification.

명세서 전체에서, 어떤 부분이 어떤 구성 요소를 "포함" 한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성 요소를 제외하는 것이 아니라 다른 구성 요소를 더 포함할 수 있는 것을 의미한다. Throughout the specification, when an element is referred to as "comprising ", it means that it can include other elements as well, without excluding other elements unless specifically stated otherwise.

또한, 명세서에 기재된 "…부", "…모듈" 의 용어는 적어도 하나의 기능이나 동작을 처리하는 단위를 의미하며, 이는 하드웨어나 소프트웨어 또는 하드웨어 및 소프트웨어의 결합으로 구현될 수 있다. Also, the terms of " part ", "... module" in the description mean units for processing at least one function or operation, which may be implemented by hardware or software or a combination of hardware and software.

도 1은 본 발명의 실시예에 따른 인증 시스템의 구성도이다. 1 is a configuration diagram of an authentication system according to an embodiment of the present invention.

도 1을 참조하면, 인증 시스템(1)은 단말(100) 및 인증 서버(200)를 포함한다. 단말(100)은 OTP(One Time Password) 매체로서, OTP를 이용한 인증의 대상이다. Referring to FIG. 1, an authentication system 1 includes a terminal 100 and an authentication server 200. The terminal 100 is an OTP (One Time Password) medium, and is an object of authentication using an OTP.

단말(100)은 OTP 어플리케이션(101)을 포함한다. OTP 어플리케이션(101)은 사용자로부터 개인 식별 번호(Personal Identification Number, PIN) 또는 패스워드를 입력받기 위한 유저 인터페이스를 제공한다. OTP 어플리케이션(101)은 네트워크(300)을 통해 인증서버(200)에 접속하여, OTP번호 생성 허용 요청을 한다. OTP번호 생성 허용 요청은 사용자로부터 입력받은 개인 식별 번호(Personal Identification Number, PIN) 또는 패스워드가 될 수 있다. 또한, OTP 어플리케이션(101)과 별개의 서비스 어플리케이션(미도시)의 로그인에 의하여 OTP번호 생성 허용 요청이 자동으로 발생할 수 있다. OTP번호 생성 허용요청이 성공적으로 수행되면 OTP 어플리케이션(101)은 네트워크(300)를 통해 인증 서버(200)에 접속하여, OTP를 요청하여 수신하고, 수신한 OTP를 출력한다. 이러한 OTP는 사용자 인증이 필요한 서비스에서, 사용자 인증을 위해 사용할 수 있으며, 예를들면, 모바일 뱅킹 등의 금융 서비스에서 사용될 수 있으나, 그 사용 용도는 다양한 실시예가 가능하므로, 특별히 한정하지는 않는다. The terminal 100 includes an OTP application 101. The OTP application 101 provides a user interface for receiving a personal identification number (PIN) or a password from a user. The OTP application 101 accesses the authentication server 200 through the network 300, and makes a request to generate an OTP number. The OTP number generation permission request may be a personal identification number (PIN) or a password input from the user. In addition, an OTP number generation permission request can be automatically generated by log-in of a service application (not shown) which is separate from the OTP application 101. [ When the OTP number generation permission request is successfully performed, the OTP application 101 accesses the authentication server 200 via the network 300, requests and receives the OTP, and outputs the received OTP. Such an OTP can be used for user authentication in a service requiring user authentication, and can be used in financial services such as mobile banking. However, the OTP can be used in various embodiments, so that it is not particularly limited.

여기서, 단말(100)은 무선 통신 단말을 포함하고, 예를들면, 팜(Palm) PC, 스마트폰(Smart phone), 모바일 게임기(Mobile play-station), 통신 기능이 있는 DMB(Digital Multimedia Broadcasting)폰, 태블릿 PC, 아이패드(iPad) 등 인증 서버(200)에 접속하기 위한 사용자 인터페이스를 갖는 모든 통신이 가능한 전자 장치를 포괄적으로 의미할 수 있다.  Here, the terminal 100 includes a wireless communication terminal, and may be, for example, a Palm PC, a smart phone, a mobile play-station, a DMB (Digital Multimedia Broadcasting) The present invention can comprehensively mean an electronic device having a user interface for connecting to the authentication server 200 such as a mobile phone, a tablet PC, an iPad, and the like.

인증 서버(200)는 OTP 어플리케이션(101)로부터 OTP 요청이 수신되면, 단말 인증을 수행하고, 단말 인증에 성공하면, OTP를 생성하여, 단말(100)에게 전송한다. The authentication server 200 performs terminal authentication when an OTP request is received from the OTP application 101. If the terminal authentication is successful, the authentication server 200 generates an OTP and transmits the OTP to the terminal 100.

인증 서버(200)는 OTP를 이용한 사용자 인증을 수행한다. 인증 서버(200)는 금융기관에 구비된 시스템일 수 있다. 인증 서버(200)는 금융거래시 본인 인증 또는 거래 진위를 검증하기 위한 인증을 수행할 수 있다. The authentication server 200 performs user authentication using the OTP. The authentication server 200 may be a system provided in a financial institution. The authentication server 200 can perform authentication for authenticating the identity or the transaction at the time of financial transaction.

인증 서버(200)는 채널을 통해 수신한 OTP와 단말(100)로 전송한 OTP가 일치하는지를 판단하는 OTP 인증을 수행할 수 있다. 여기서, 채널은 단말(100)이 사용자로부터 입력받은 OTP가 인증 서버(200)로 제공되는 경로를 의미하며, 인증 서버(200)가 OTP를 수신하여, OTP 인증 결과를 반환하는 포괄적인 구성의 의미로 사용된다. The authentication server 200 may perform OTP authentication to determine whether the OTP received through the channel matches the OTP transmitted to the terminal 100. [ Here, the channel means a path where the OTP received from the user by the terminal 100 is provided to the authentication server 200, meaning that the authentication server 200 receives the OTP and returns the OTP authentication result .

한 실시예에 따르면, 인증 서버(200)는 단말(100)로부터 직접 사용자가 입력한 OTP를 수신할 수도 있다. 이런 경우, 단말(100)에서 실행된 OTP 어플리케이션(101)과 별개의 서비스 어플리케이션(미도시) 상에서 입력된 OTP를 인증 서버(200)는 수신할 수 있다. 즉, 인증 서버(200)가 OTP를 단말(100)의 OTP 어플리케이션(101)으로 전송하고, 단말(100)의 서비스 어플리케이션을 통해 OTP를 수신하여, 이들 간의 일치 여부를 판단할 수 있다. According to one embodiment, the authentication server 200 may receive the OTP input by the user directly from the terminal 100. [ In this case, the authentication server 200 can receive the OTP inputted on the service application (not shown) separate from the OTP application 101 executed in the terminal 100. That is, the authentication server 200 transmits the OTP to the OTP application 101 of the terminal 100, receives the OTP through the service application of the terminal 100, and determines whether the OTP is consistent with the OTP.

다른 실시예에 따르면, 단말(100)은 사용자 인증이 필요한 서비스를 이용하고자 할 경우, 그 서비스를 제공하는 서버(이하, '서비스 서버'라 통칭함)(400)에게 인증 서버(200)로부터 수신한 OTP를 전송하여 사용자 인증을 요청할 수 있다. 이런 경우, 인증 서버(200)는 서비스 서버(400)로부터 수신되는 OTP가 자신이 단말(100)에게 전송한 OTP와 일치하는지 판단하는 OTP 인증을 수행하고, 인증 결과를 서비스 서버(400)로 전송한다. 서비스 서버(400)는 인증 서버(200)로부터 수신한 인증 결과에 따라 단말(100)에게 해당 서비스를 제공할지 말지를 결정할 수 있다. 이러한 서비스 서버(400)는 금융기관의 서버, 쇼핑몰 서버, 공공기관 서버 등 OTP를 이용한 사용자 인증을 필요로 하는 서버를 포괄적으로 포함할 수 있다. According to another embodiment, when the terminal 100 desires to use a service requiring user authentication, the terminal 100 receives the service from the authentication server 200 (hereinafter, referred to as a " service server " An OTP can be transmitted to request user authentication. In this case, the authentication server 200 performs OTP authentication to determine whether the OTP received from the service server 400 matches the OTP transmitted to the terminal 100, and transmits the authentication result to the service server 400 do. The service server 400 can determine whether to provide the corresponding service to the terminal 100 according to the authentication result received from the authentication server 200. [ The service server 400 may comprehensively include a server that requires user authentication using an OTP, such as a server of a financial institution, a shopping mall server, or a public entity server.

이제, OTP를 이용한 인증을 수행하는 일련의 과정에 대해 설명하기로 한다. 먼저, 도 2는 본 발명의 실시예에 따른 OTP 매체 등록 과정을 나타낸다. Now, a series of processes for performing authentication using the OTP will be described. 2 illustrates a process of registering an OTP medium according to an embodiment of the present invention.

도 2를 참조하면, 단말(100)이 OTP 어플리케이션(101)을 설치(S101)하여, 인증 서버(200)에 최초로 접속할 때, 비대칭키(Asymmetric Key)를 생성(S103)한다. 비대칭키는 공개키(Public Key) 및 개인키(Private Key)로 구성된다. 이러한 비대칭키는 RSA(Rivest Shamir Adleman), ECC(Elliptic Curve Cryptosystem), DSA(Digital Signature Algorithm) 등의 비대칭키 생성 알고리즘을 사용하여 생성될 수 있다. 2, when the terminal 100 establishes an OTP application 101 (S101) and initially connects to the authentication server 200, an asymmetric key is generated (S103). The asymmetric key is composed of a public key and a private key. Such an asymmetric key can be generated using asymmetric key generation algorithms such as Rivest Shamir Adleman (RSA), Elliptic Curve Cryptosystem (ECC), and Digital Signature Algorithm (DSA).

단말(100)은 생성(S103)한 비대칭키 중에서 공개키와, 단말정보를 포함하는 OTP 매체 등록 정보를 인증 서버(200)로 전송한다(S105). 여기서, 단말정보는 단말(100)의 폰 번호, 기기 일련번호, 유심(USIM, Universal Subscriber Identity Module) 카드번호, 맥 어드레스(MAC address) 등과 같은 식별자 중 어느 하나 또는 적어도 2개의 조합을 포함할 수 있다. The terminal 100 transmits OTP media registration information including the public key and the terminal information among the asymmetric keys generated (S103) to the authentication server 200 (S105). Here, the terminal information may include any one or a combination of at least two of identifiers such as a phone number, a device serial number, a Universal Subscriber Identity Module (USIM) card number, a MAC address, have.

OTP 어플리케이션(101)의 설치가 완료된 후, 단말(100)이 OTP 어플리케이션(101)을 활성화(S107)한다. After the installation of the OTP application 101 is completed, the terminal 100 activates the OTP application 101 (S107).

단말(100)은 OTP 어플리케이션(101)이 제공하는 사용자 인터페이스를 통해 PIN 또는 패스워드의 등록 및 인증을 수행한다(S109). 여기서, PIN 또는 패스워드는 단말(100)의 메모리 또는 단말(100)에 결합된 외부 메모리에 저장될 수도 있고, 인증 서버(200)에 저장될 수도 있다. S109 단계에서는 등록후, 사용자에게 등록한 PIN 또는 패스워드를 입력하도록 하여 인증하는 절차까지 수행한다. The terminal 100 performs registration and authentication of a PIN or a password through a user interface provided by the OTP application 101 (S109). Here, the PIN or the password may be stored in the memory of the terminal 100 or an external memory coupled to the terminal 100, or may be stored in the authentication server 200. [ In step S109, a PIN or a password registered to the user is entered after the registration, and a procedure for authentication is performed.

등록 및 인증이 완료된 후, 단말(100)은 S103 단계와 마찬가지로, 비대칭키를 생성(S111)한다. 단말(100)은 생성(S111)한 비대칭키 중에서 개인키로 단말정보를 전자서명한다(S113). After completion of registration and authentication, the terminal 100 generates an asymmetric key (S111) in the same manner as in step S103. The terminal 100 electronically signs the terminal information using the private key among the asymmetric keys generated (S111) (S113).

단말(100)은 전자서명을 포함하는 OTP 매체 등록 요청을 인증 서버(200)로 전송한다(S115). The terminal 100 transmits an OTP media registration request including a digital signature to the authentication server 200 (S115).

인증 서버(200)는 S105 단계에서 수신한 공개키로 S115 단계에서 수신한 전자서명을 복호화한다(S117). 이때, 복호에 성공하는지 판단(S119)하여 복호에 실패하면, OTP 매체 등록 응답에 전자서명 검증 실패를 포함시켜, 단말(100)로 전송한다(S121). The authentication server 200 decrypts the digital signature received in step S115 with the public key received in step S105 (S117). At this time, if it is determined that the decryption is successful (S119) and the decryption is unsuccessful, the OTP medium registration response is transmitted to the terminal 100 (S121).

반면, 복호에 성공하면, OTP 매체 등록 응답에 전자서명 검증 성공을 포함시켜, 단말(100)로 전송한다(S123). 그리고 S105 단계에서 수신한 단말정보와 공개키를 매칭하여 저장한다(S125). On the other hand, if the decryption is successful, the OTP medium registration response includes the success of the digital signature verification and is transmitted to the terminal 100 (S123). The terminal information and the public key received in step S105 are matched and stored (step S125).

여기서, 전자서명 알고리즘은 PKI(Public Key Infrastructure) 암호화 알고리즘을 기초로 한다. Here, the digital signature algorithm is based on a PKI (Public Key Infrastructure) encryption algorithm.

또한, S107 단계는 OTP 어플리케이션(101)의 설치후 최초 활성화 동작을 나타낸다. Step S107 shows the first activation operation after the OTP application 101 is installed.

또한, S101 단계 ~ S125 단계는 단말(100)과 인증 서버(200) 간에 연결된 동일한 통신 세션 상에서 수행된다. 예를들어, S105 단계 이후, 통신 세션이 절단되면, 인증 서버(200)는 S105 단계에서 수신한 정보와 S115 단계에서 수신한 정보가 서로 관련되는 것임을 인지하지 못할 수도 있으므로, 이런 경우, 데이터 유실로, S103 단계부터 재시작될 수 있다. In addition, steps S101 to S125 are performed on the same communication session connected between the terminal 100 and the authentication server 200. [ For example, if the communication session is disconnected after step S105, the authentication server 200 may not recognize that the information received in step S105 and the information received in step S115 are related to each other. In this case, , It can be restarted from step S103.

도 3은 본 발명의 실시예에 따른 OTP 생성 과정을 나타낸 흐름도이다. 3 is a flowchart illustrating an OTP generation process according to an embodiment of the present invention.

도 3을 참조하면, 단말(100)이 OTP 어플리케이션(101)을 활성화(S201)하고, OTP 어플리케이션(101) 접근을 위한 PIN 인증 또는 패스워드 인증을 수행한 후, 입력한 전화번호에 의한 ARS 인증을 한다(S203). 3, when the terminal 100 activates the OTP application 101 (S201), performs PIN authentication or password authentication for accessing the OTP application 101, and then performs ARS authentication using the inputted telephone number (S203).

인증에 성공하면, OTP 어플리케이션(101)은 인증 서버(200)로 OTP 요청을 전송한다(S205). 이때, OTP 요청은 단말정보 및 PIN(또는 패스워드)을 포함한다. If the authentication succeeds, the OTP application 101 transmits an OTP request to the authentication server 200 (S205). At this time, the OTP request includes the terminal information and the PIN (or password).

인증 서버(200)는 S205 단계에서 수신한 PIN(또는 패스워드)와 단말정보를 조합한 시드키(Seed Key)를 생성한다(S207). The authentication server 200 generates a seed key that is a combination of the PIN (or password) and the terminal information received in step S205 (S207).

인증 서버(200)는 S207 단계에서 생성한 시드키를 기초로 OTP를 생성한다(S209). 이때, 인증 서버(200)는 국제 표준 난수 알고리즘에 따라 OTP를 생성할 수 있다. The authentication server 200 generates an OTP based on the seed key generated in step S207 (S209). At this time, the authentication server 200 can generate the OTP according to the international standard random number algorithm.

인증 서버(200)는 S205 단계에서 수신한 단말정보에 매칭되어 기 저장된 공개키로 S209 단계에서 생성한 OTP를 암호화한다(S211). The authentication server 200 encrypts the OTP generated in step S209 with the previously stored public key that matches the terminal information received in step S205 (S211).

인증 서버(200)는 암호화한 OTP를 단말(100)로 전송한다(S213). The authentication server 200 transmits the encrypted OTP to the terminal 100 (S213).

OTP 어플리케이션(101)은 비대칭키를 생성(S215)하고, 비대칭키 중에서 개인키로 수신(S213)한 OTP를 복호화(S217)하여, 인증 서버(200)에서 생성(S209)한 OTP를 추출하여 사용자 화면에 출력한다(S219). The OTP application 101 generates an asymmetric key in step S215 and decrypts the OTP received in step S213 from the asymmetric key in step S213 to extract the OTP generated in the authentication server 200 in step S209, (S219).

이와 같이, 인증 서버(200)는 OTP 어플리케이션(101) 설치시에 단말 인증을 거쳐 등록한 공개키로 OTP를 암호화할 뿐만 아니라, 인증 서버(200)에서 연산한 OTP를 단말(100)로 전송하므로, 종래의 보안 취약점을 해결하며, 인증 서버(200)에서는 OTP번호를 생성하기 전에 OTP 어플리케이션(101)을 활성화시킬 때 사용하는 6자리 형태의 PIN 또는 패스워드, 혹은 별도의 서비스 어플리케이션의 로그인에 의하여 번호를 생성하려고 하는 자를 OTP발생 사전에 인증함으로써 보안매체가 가지고 있는 탈취에 대한 본질적인 취약점을 해소한다. In this manner, the authentication server 200 not only encrypts the OTP with the public key registered through terminal authentication at the time of installing the OTP application 101, but also transmits the OTP calculated by the authentication server 200 to the terminal 100, And the authentication server 200 generates a PIN by using a six-digit PIN or password used to activate the OTP application 101 before generating the OTP number, And authenticates the intended recipient in advance of the OTP, thereby eliminating the intrinsic vulnerability of the security medium.

또한, 인증 서버(200)에서 생성하는 OTP는 사용자가 OTP 어플리케이션(101)을 활성화시킬 때 사용하는 6자리 형태의 PIN 또는 패스워드와, 단말정보를 조합한 키를 시드키로 하여 발생시키므로, 일반적인 오픈 소스로 난수를 발생시키는 것이 아닌, 사용자 별로 고유한 OTP를 발생시킬 수 있어 보안이 강화된다. Also, since the OTP generated by the authentication server 200 is generated by using a seed key, which is a combination of a PIN or a password and a terminal information in a 6-digit form used when the user activates the OTP application 101, It is possible to generate a unique OTP for each user rather than generating a random number, thereby enhancing security.

도 4는 본 발명의 실시예에 따른 OTP 인증 과정을 나타낸 흐름도이다. 4 is a flowchart illustrating an OTP authentication process according to an embodiment of the present invention.

도 4를 참조하면, 단말(100)이 서비스 서버(400)로부터 OTP 입력 요청을 수신(S301)하면, 도 3을 통해 설명한 바와 같이, 제공받은 OTP를 서비스 서버(400)가 제공하는 사용자 화면에 입력(303)하여 서비스 서버(400)로 전송한다(S305). Referring to FIG. 4, when the terminal 100 receives an OTP input request from the service server 400 (S301), the terminal 100 displays the received OTP in a user screen provided by the service server 400 Input 303 and transmits it to the service server 400 (S305).

서비스 서버(400)는 인증 서버(200)로 수신(S305)한 OTP의 인증을 요청한다(S307). The service server 400 requests authentication of the OTP received (S305) to the authentication server 200 (S307).

인증 서버(200)는 수신(S307)한 OTP가 도 3에서 전송한 OTP와 일치하는지 판단(S309)하는 인증을 수행한다. 그리고 인증 결과를 서비스 서버(400)로 반환한다. The authentication server 200 performs authentication to determine whether the OTP received (S307) matches the OTP transmitted in FIG. 3 (S309). And returns the authentication result to the service server 400.

이때, 인증 서버(200)는 S309 단계에서 일치한다고 판단되면, 인증 성공이 포함된 OTP 인증 응답을 서비스 서버(400)로 전송한다(S311). 그러면, 서비스 서버(400)는 단말이 요청한 서비스를 승인한다(S313). At this time, if it is determined in step S309 that the authentication server 200 matches, the authentication server 200 transmits the OTP authentication response including the authentication success to the service server 400 (S311). Then, the service server 400 approves the service requested by the terminal (S313).

반면, 인증 서버(200)는 S309 단계에서 불일치한다고 판단되면, 인증 실패가 포함된 OTP 인증 응답을 서비스 서버(400)로 전송한다(S315). 그러면, 서비스 서버(400)는 단말이 요청한 서비스를 불허한다(S317).  On the other hand, if it is determined in step S309 that the authentication server 200 does not match, the authentication server 200 transmits an OTP authentication response including the authentication failure to the service server 400 (S315). Then, the service server 400 disallows the service requested by the terminal (S317).

도 5는 본 발명의 실시예에 따른 단말의 하드웨어 블록도로서, 도 1 ~ 도 4에서 설명한 단말(100)의 하드웨어 구성을 나타낸다. FIG. 5 is a hardware block diagram of a terminal according to an embodiment of the present invention, and shows the hardware configuration of the terminal 100 described with reference to FIG. 1 to FIG.

도 5를 참조하면, 단말(500)은 통신 장치(501), 저장 장치(503), 입력 장치(505), 디스플레이 장치(507) 및 적어도 하나의 프로세서(509)를 포함하는 하드웨어로 구성되고, 지정된 장소에 하드웨어와 결합되어 실행되는 프로그램이 저장되며, 하드웨어는 본 발명의 방법을 실행할 수 있는 구성과 성능을 가진다. 프로그램은 도 1부터 도 4를 참고로 설명한 본 발명의 동작 방법을 프로그램 언어에 의해 작성된 소프트웨어 프로그램으로서, 도 1부터 도 4를 참고로 설명한 본 발명의 동작 방법을 구현한 명령어(instructions)들을 포함하고, 저장 장치(503)와 프로세서(509) 등의 하드웨어와 결합하여 본 발명을 구현한다. 5, a terminal 500 is composed of hardware including a communication device 501, a storage device 503, an input device 505, a display device 507 and at least one processor 509, A program to be executed in combination with hardware is stored in a designated place, and the hardware has a configuration and performance capable of executing the method of the present invention. The program includes instructions for implementing the method of operation of the present invention described with reference to FIGS. 1 to 4 as a software program written in a programming language for the method of operation of the present invention described with reference to FIGS. 1 to 4 , Storage 503, and processor 509, to implement the present invention.

도 6은 본 발명의 실시예에 따른 서버 장치의 하드웨어 블록도로서, 도 1 ~ 도 4에서 설명한 인증 서버(200)의 하드웨어 구성을 나타낸다. FIG. 6 is a hardware block diagram of a server apparatus according to an embodiment of the present invention, and shows a hardware configuration of the authentication server 200 described with reference to FIG. 1 to FIG.

도 6을 참조하면, 인증 서버(600)는 통신부(601), 메모리(603) 및 적어도 하나의 프로세서(605)를 포함하는 하드웨어로 구성되고, 지정된 장소에 하드웨어와 결합되어 실행되는 프로그램이 저장되며, 하드웨어는 본 발명의 방법을 실행할 수 있는 구성과 성능을 가진다. 프로그램은 도 1부터 도 4를 참고로 설명한 본 발명의 동작 방법을 프로그램 언어에 의해 작성된 소프트웨어 프로그램으로서, 도 1부터 도 4를 참고로 설명한 본 발명의 동작 방법을 구현한 명령어들을 포함하고, 저장 장치(603)와 프로세서(605) 등의 하드웨어와 결합하여 본 발명을 구현한다. 6, the authentication server 600 is constituted by hardware including a communication unit 601, a memory 603, and at least one processor 605, and a program to be executed in combination with hardware is stored in a designated place , The hardware has a configuration and performance capable of executing the method of the present invention. The program is a software program written in a programming language that describes the operation method of the present invention described with reference to FIGS. 1 to 4, including instructions implementing the method of operation of the present invention described with reference to FIGS. 1 to 4, (603) and processor (605).

이상에서 설명한 본 발명의 실시예는 장치 및 방법을 통해서만 구현이 되는 것은 아니며, 본 발명의 실시예의 구성에 대응하는 기능을 실현하는 프로그램 또는 그 프로그램이 기록된 기록 매체를 통해 구현될 수도 있다. The embodiments of the present invention described above are not implemented only by the apparatus and method, but may be implemented through a program for realizing the function corresponding to the configuration of the embodiment of the present invention or a recording medium on which the program is recorded.

이상에서 본 발명의 실시예에 대하여 상세하게 설명하였지만 본 발명의 권리범위는 이에 한정되는 것은 아니고 다음의 청구범위에서 정의하고 있는 본 발명의 기본 개념을 이용한 당업자의 여러 변형 및 개량 형태 또한 본 발명의 권리범위에 속하는 것이다. While the present invention has been particularly shown and described with reference to exemplary embodiments thereof, it is to be understood that the invention is not limited to the disclosed exemplary embodiments, It belongs to the scope of right.

Claims (14)

적어도 하나의 프로세서에 의해 동작하는 서버 장치의 동작 방법으로서,
공개키 알고리즘(Public Key Infrastructure, PKI)을 이용한 단말 인증을 수행하는 단계, 그리고
상기 단말 인증에 성공하는 경우, 상기 단말의 요청에 따라 생성한 OTP(One Time Password)를 상기 단말로 전송하는 단계를 포함하고,
상기 OTP는,
상기 단말이 요청한 서비스의 승인 여부를 결정하는데 사용되는, 동작 방법.
A method of operating a server device operating by at least one processor,
Performing terminal authentication using a Public Key Infrastructure (PKI), and
And transmitting, when the terminal authentication is successful, an OTP (One Time Password) generated according to a request of the terminal to the terminal,
The OTP,
Wherein the terminal is used to determine whether to approve a service requested by the terminal.
제1항에서,
상기 OTP는,
개인 식별 번호(Personal Identification Number, PIN) 또는 패스워드와, 단말 별로 고유한 단말정보를 조합한 시드키를 기초로 난수 생성 알고리즘에 의하여 생성되는, 동작 방법.
The method of claim 1,
The OTP,
Number generating algorithm based on a seed key obtained by combining a personal identification number (PIN) or a password and terminal information unique to each terminal.
제2항에서,
상기 개인 식별 번호(PIN) 또는 패스워드는,
상기 단말에서 OTP 어플리케이션의 활성화시 사용자로부터 입력되어, 상기 단말로부터 수신한 OTP 생성 요청에 포함된 것인, 동작 방법.
3. The method of claim 2,
The personal identification number (PIN)
Wherein the OTP generation request is input from a user when the OTP application is activated in the terminal and included in an OTP generation request received from the terminal.
제2항에서,
상기 단말정보는,
상기 단말의 하드웨어 정보, 상기 단말의 전화번호, 상기 단말의 기기 일련번호, 상기 단말의 유심(USIM, Universal Subscriber Identity Module) 카드번호, 상기 단말의 맥 어드레스(MAC address) 중에서 하나 또는 적어도 둘 이상의 조합을 포함하는, 동작 방법.
3. The method of claim 2,
The terminal information includes:
(MAC) address of the terminal, hardware information of the terminal, a telephone number of the terminal, a device serial number of the terminal, a Universal Subscriber Identity Module (USIM) card number of the terminal, and a MAC address ≪ / RTI >
제1항에서,
상기 단말 인증을 수행하는 단계는,
상기 단말로부터 상기 단말이 생성한 비대칭키 중의 하나인 공개키와 상기 단말정보를 포함하는 OTP 매체 정보를 수신하는 단계,
상기 단말로부터 상기 비대칭키 중의 다른 하나인 개인키로 전자서명된 단말정보를 포함하는 OTP 매체 등록 요청을 수신하는 단계, 그리고
상기 공개키로 상기 전자서명된 단말정보를 복호화하여, 상기 복호화에 성공하면, 상기 단말을 OTP 매체로 등록하는 단계를 포함하고,
상기 단말로 전송하는 단계는,
상기 OTP 매체로 등록된 단말이 요청한 OTP를 생성하여 전송하는, 동작 방법.
The method of claim 1,
The step of performing the terminal authentication includes:
Receiving, from the terminal, a public key, which is one of the asymmetric keys generated by the terminal, and OTP medium information including the terminal information,
Receiving an OTP media registration request including the digitally signed terminal information from the terminal with a private key that is another one of the asymmetric keys, and
Decrypting the digitally signed terminal information with the public key and registering the terminal as an OTP medium if the decryption is successful,
The method of claim 1,
And generating and transmitting the OTP requested by the terminal registered as the OTP medium.
제5항에서,
상기 단말을 OTP 매체로 등록하는 단계는,
상기 단말정보와 상기 공개키를 매칭하여 저장하는, 동작 방법.
The method of claim 5,
The step of registering the terminal as an OTP medium includes:
Wherein the terminal information and the public key are matched and stored.
제6항에서,
상기 단말로 전송하는 단계는,
상기 공개키로 상기 OTP를 암호화하여 전송하는, 동작 방법.
The method of claim 6,
The method of claim 1,
And encrypting the OTP with the public key.
적어도 하나의 프로세서에 의해 동작하는 단말의 동작 방법으로서,
네트워크를 통해 접속한 인증 서버와 연동하여 공개키 알고리즘(Public Key Infrastructure, PKI)을 이용한 단말 인증을 수행하는 단계, 그리고
상기 단말 인증에 성공하는 경우, 상기 인증 서버에 요청하여 상기 인증 서버에서 생성된 OTP(One Time Password)를 수신하는 단계를 포함하고,
상기 OTP는,
사용자 인증에서 사용되는, 동작 방법.
An operating method of a terminal operating by at least one processor,
Performing terminal authentication using a Public Key Infrastructure (PKI) in cooperation with an authentication server connected through a network, and
And requesting the authentication server to receive the OTP (One Time Password) generated by the authentication server when the terminal authentication is successful,
The OTP,
Used in user authentication.
제8항에서,
상기 OTP를 수신하는 단계는,
개인 식별 번호(Personal Identification Number, PIN) 또는 패스워드와, 단말 별로 고유한 단말정보가 포함된 OTP 생성 요청을 상기 인증 서버로 전송하는 단계, 그리고
상기 인증 서버로부터 상기 개인 식별 번호(PIN) 또는 패스워드와, 상기 단말정보를 조합한 시드키를 기초로 난수 생성 알고리즘에 의하여 생성된 상기 OTP를 수신하는 단계
를 포함하는, 동작 방법.
9. The method of claim 8,
The step of receiving the OTP comprises:
Transmitting an OTP generation request including a personal identification number (PIN) or a password and terminal information unique to each terminal to the authentication server; and
Receiving the OTP generated by the random number generation algorithm based on the personal identification number (PIN) or password and the seed key obtained by combining the terminal information from the authentication server
. ≪ / RTI >
제8항에서,
상기 단말 인증을 수행하는 단계는,
상기 단말이 생성한 비대칭키 중의 하나인 공개키와 단말정보를 상기 인증 서버에 등록하는 단계를 포함하고,
상기 OTP를 수신하는 단계는,
상기 인증 서버에게 OTP 생성을 요청하는 단계,
상기 인증 서버로부터 상기 공개키로 암호화된 OTP를 수신하는 단계, 그리고
상기 비대칭키를 생성하여 개인키로 상기 암호화된 OTP를 복호화하여 상기 인증 서버에서 생성한 OTP를 추출하는 단계
를 포함하는, 동작 방법.
9. The method of claim 8,
The step of performing the terminal authentication includes:
And registering the public key and the terminal information, which are one of the asymmetric keys generated by the terminal, in the authentication server,
The step of receiving the OTP comprises:
Requesting the authentication server to generate an OTP,
Receiving an OTP encrypted with the public key from the authentication server, and
Generating the asymmetric key, decrypting the encrypted OTP with the private key, and extracting the OTP generated by the authentication server
. ≪ / RTI >
제8항에서,
상기 단말 인증을 수행하는 단계는,
OTP 어플리케이션의 설치시, 상기 공개키와 단말정보가 포함된 OTP 매체 정보를 상기 인증 서버로 전송하는 단계,
상기 OTP 어플리케이션을 활성화하여 상기 개인키로 상기 단말정보를 전자서명하고, 전자서명 정보를 포함하는 OTP 매체 등록 요청을 상기 인증 서버로 전송하는 단계, 그리고
상기 인증 서버로부터 OTP 매체 등록 응답을 수신하는 단계를 포함하고,
상기 OTP 매체 정보는,
상기 인증 서버에서 상기 전자서명 정보를 상기 공개키로 복호화에 성공한 경우, 상기 인증 서버에 등록되는, 동작 방법.
9. The method of claim 8,
The step of performing the terminal authentication includes:
Transmitting OTP medium information including the public key and the terminal information to the authentication server when the OTP application is installed,
Activating the OTP application to electronically sign the terminal information with the private key, and transmitting an OTP media registration request including digital signature information to the authentication server; and
Receiving an OTP media registration response from the authentication server,
The OTP medium information includes:
And when the authentication server succeeds in decrypting the digital signature information with the public key, the authentication method is registered in the authentication server.
네트워크를 통해 데이터를 송수신하는 통신 장치,
OTP(One Time Password)를 생성하여 상기 통신 장치를 통해 전송하는 프로그램을 저장하는 메모리 장치, 그리고
상기 프로그램을 실행하는 적어도 하나의 프로세서를 포함하고,
상기 프로그램은,
단말 인증을 수행한 후, 상기 단말의 요청에 따라 상기 단말의 고유정보를 시드키로 하는 난수 생성 알고리즘에 따라 OTP를 생성하여 상기 단말로 전송하는 명령어들(instructions)을 포함하는, 서버 장치.
A communication device for transmitting and receiving data through a network,
A memory device for storing a program for generating an OTP (One Time Password) and transmitting through the communication device, and
And at least one processor for executing the program,
The program includes:
Instructions for generating an OTP according to a random number generation algorithm for seeding unique information of the terminal according to a request of the terminal and transmitting the generated OTP to the terminal after the terminal authentication is performed.
제12항에서,
상기 프로그램은,
상기 단말로부터 상기 단말에서 생성된 비대칭키중의 하나인 공개키와 단말정보를 수신하고,
상기 단말로부터 상기 비대칭키 중의 다른 하나인 개인키로 전자서명된 단말정보를 수신하며,
상기 공개키로 상기 전자서명된 단말정보를 복호화하는데 성공하면, 상기 공개키와 상기 단말정보를 매칭하여 상기 단말을 상기 OTP 매체로 등록하는 단말 인증을 수행하는 명령어들을 포함하는, 서버 장치.
The method of claim 12,
The program includes:
Receiving, from the terminal, a public key and terminal information, which is one of the asymmetric keys generated in the terminal,
And receives the digitally signed terminal information from the terminal as a private key, which is another one of the asymmetric keys,
And instructions for performing terminal authentication for registering the terminal with the OTP medium by matching the public key with the terminal information if the terminal is successfully decrypted with the public key.
제13항에서,
상기 프로그램은,
상기 단말이 OTP 어플리케이션을 설치하여 초기 활성화할 때, 상기 단말 인증을 수행하는 명령어들을 포함하는, 서버 장치.
The method of claim 13,
The program includes:
And performing the terminal authentication when the terminal is initially activated by installing an OTP application.
KR1020170169049A 2017-12-11 2017-12-11 Operation method of server apparatus, operation method of terminal and server apparatus KR102445379B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020170169049A KR102445379B1 (en) 2017-12-11 2017-12-11 Operation method of server apparatus, operation method of terminal and server apparatus

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020170169049A KR102445379B1 (en) 2017-12-11 2017-12-11 Operation method of server apparatus, operation method of terminal and server apparatus

Publications (2)

Publication Number Publication Date
KR20190068851A true KR20190068851A (en) 2019-06-19
KR102445379B1 KR102445379B1 (en) 2022-09-19

Family

ID=67104223

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020170169049A KR102445379B1 (en) 2017-12-11 2017-12-11 Operation method of server apparatus, operation method of terminal and server apparatus

Country Status (1)

Country Link
KR (1) KR102445379B1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20220035802A (en) * 2020-09-14 2022-03-22 주식회사 에이비일팔공 API System for preventing Application Programming Interface spoofing and method thereof

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20100136371A (en) * 2009-06-18 2010-12-28 주식회사 비즈모델라인 System and method for settling mobile phone by seed combination mode's otp authentication and recording medium
KR20160144332A (en) * 2016-10-31 2016-12-16 주식회사 이베이코리아 Payment system for non-repudiation using user terminal and method thereof
KR20170032155A (en) * 2015-09-14 2017-03-22 (주)이스톰 User authentication method and system using one time password

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20100136371A (en) * 2009-06-18 2010-12-28 주식회사 비즈모델라인 System and method for settling mobile phone by seed combination mode's otp authentication and recording medium
KR20170032155A (en) * 2015-09-14 2017-03-22 (주)이스톰 User authentication method and system using one time password
KR20160144332A (en) * 2016-10-31 2016-12-16 주식회사 이베이코리아 Payment system for non-repudiation using user terminal and method thereof

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20220035802A (en) * 2020-09-14 2022-03-22 주식회사 에이비일팔공 API System for preventing Application Programming Interface spoofing and method thereof

Also Published As

Publication number Publication date
KR102445379B1 (en) 2022-09-19

Similar Documents

Publication Publication Date Title
US11770369B2 (en) System and method for identity verification across mobile applications
US20210266318A1 (en) Authenticator centralization and protection based on authenticator type and authentication policy
US20210264010A1 (en) Method and system for user authentication with improved security
US9838205B2 (en) Network authentication method for secure electronic transactions
EP2999189B1 (en) Network authentication method for secure electronic transactions
RU2710897C2 (en) Methods for safe generation of cryptograms
EP3138265B1 (en) Enhanced security for registration of authentication devices
CN106575326B (en) System and method for implementing one-time passwords using asymmetric encryption
US8640203B2 (en) Methods and systems for the authentication of a user
JP5066827B2 (en) Method and apparatus for authentication service using mobile device
US10848304B2 (en) Public-private key pair protected password manager
US20150304319A1 (en) System and methods for online authentication
JP2018532301A (en) User authentication method and apparatus
KR101718948B1 (en) Integrated certification system using one time random number
EP2098985A2 (en) Secure financial reader architecture
CN107730240B (en) Multi-factor multi-channel ID authentication and transaction control and multi-option payment system and method
KR20160085143A (en) Method for providing anonymous service and method for managing user information and system therefor
US10333707B1 (en) Systems and methods for user authentication
KR101570773B1 (en) Cloud authentication method for securing mobile service
WO2015168878A1 (en) Payment method and device and payment factor processing method and device
KR102445379B1 (en) Operation method of server apparatus, operation method of terminal and server apparatus
KR20160063250A (en) Network authentication method using a card device
JP6701011B2 (en) Terminal registration method and terminal registration system
KR20160008012A (en) User authentification method in mobile terminal
KR20170130963A (en) Apparatus for authenticating user in association with user-identification-registration and local-authentication and method for using the same

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