KR20240023589A - Cross authentication method and system between online service server and client - Google Patents

Cross authentication method and system between online service server and client Download PDF

Info

Publication number
KR20240023589A
KR20240023589A KR1020240021480A KR20240021480A KR20240023589A KR 20240023589 A KR20240023589 A KR 20240023589A KR 1020240021480 A KR1020240021480 A KR 1020240021480A KR 20240021480 A KR20240021480 A KR 20240021480A KR 20240023589 A KR20240023589 A KR 20240023589A
Authority
KR
South Korea
Prior art keywords
authentication
server
user
authentication number
verification
Prior art date
Application number
KR1020240021480A
Other languages
Korean (ko)
Inventor
우종현
Original Assignee
(주)이스톰
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by (주)이스톰 filed Critical (주)이스톰
Priority to KR1020240021480A priority Critical patent/KR20240023589A/en
Publication of KR20240023589A publication Critical patent/KR20240023589A/en

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3226Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using a predetermined code, e.g. password, passphrase or PIN
    • H04L9/3228One-time or temporary data, i.e. information which is sent for every authentication or authorization, e.g. one-time-password, one-time-token or one-time-key
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3234Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving additional secure or trusted devices, e.g. TPM, smartcard, USB or software token
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/31User authentication
    • G06F21/34User authentication involving the use of external additional devices, e.g. dongles or smart cards
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/45Structures or tools for the administration of authentication
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/06Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
    • H04L9/065Encryption by serially and continuously modifying data stream elements, e.g. stream cipher systems, RC4, SEAL or A5/3
    • H04L9/0656Pseudorandom key sequence combined element-for-element with data sequence, e.g. one-time-pad [OTP] or Vernam's cipher
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0861Generation of secret information including derivation or calculation of cryptographic keys or passwords
    • H04L9/0863Generation of secret information including derivation or calculation of cryptographic keys or passwords involving passwords or one-time passwords
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2463/00Additional details relating to network architectures or network communication protocols for network security covered by H04L63/00
    • H04L2463/082Additional details relating to network architectures or network communication protocols for network security covered by H04L63/00 applying multi-factor authentication

Abstract

온라인 서비스 서버와 서비스 사용자 간의 상호 인증을 수행하는 컴퓨터 구현 방법(computer implemented method)으로서, (a) 인증 서버가, 상기 온라인 서버로부터 상기 온라인 서버에 접속하는 서비스 사용자의 사용자 계정 정보를 포함하는 간편 인증번호 생성 요청이 수신됨에 따라 간편 인증번호를 생성하는 단계; (b) 상기 인증 서버가, 상기 간편 인증번호의 생성에 사용된 생성 조건을 상기 사용자 계정 정보에 상응하는 사용자의 간편 인증기로 전송하는 단계; (c) 상기 간편 인증기가, 상기 간편 인증번호의 생성 조건을 이용하여 상기 간편 인증번호에 대응되는 검증용 인증번호를 생성하는 단계; 및 (d) 상기 인증 서버가, 상기 간편 인증번호 및 상기 검증용 인증번호를 통한 상기 온라인 서비스 서버에 관한 검증이 완료됨에 따라 상기 간편 인증기로부터 전달되는 추가 검증값에 대응하여 대응 검증값을 생성하고, 상기 추가 검증값과 상기 대응 검증값 간의 일치 여부를 비교함으로써 해당 서비스 사용자에 대한 인증을 수행하는 단계를 포함하는 상호 인증을 위한 컴퓨터 구현 방법이 제공된다.A computer implemented method for performing mutual authentication between an online service server and a service user, wherein (a) the authentication server includes user account information of a service user accessing the online server from the online server; Generating a simple authentication number as a number creation request is received; (b) transmitting, by the authentication server, the generation conditions used to generate the simple authentication number to the user's simple authenticator corresponding to the user account information; (c) generating, by the simple authenticator, an authentication number for verification corresponding to the simple authentication number using the generation conditions of the simple authentication number; and (d) the authentication server generates a corresponding verification value in response to the additional verification value transmitted from the simple authenticator as verification of the online service server through the simple authentication number and the verification authentication number is completed. A computer-implemented method for mutual authentication is provided, including the step of performing authentication for a corresponding service user by comparing whether the additional verification value matches the corresponding verification value.

Description

온라인 서비스 서버와 클라이언트 간의 상호 인증 방법 및 시스템{CROSS AUTHENTICATION METHOD AND SYSTEM BETWEEN ONLINE SERVICE SERVER AND CLIENT} Mutual authentication method and system between online service server and client {CROSS AUTHENTICATION METHOD AND SYSTEM BETWEEN ONLINE SERVICE SERVER AND CLIENT}

본 발명은 인증 방법 및 시스템에 관한 것으로서, 보다 구체적으로는 온라인 서비스 서버와 클라이언트 간의 상호 인증 방법 및 시스템에 관한 것이다.The present invention relates to an authentication method and system, and more specifically, to a mutual authentication method and system between an online service server and a client.

편리한 전자 금융 서비스나 중요한 온라인 서비스를 안전하게 활용하고자 할 때 온라인 서비스에서 사용되는 아이디와 암호 이외에 별도의 인증 방법을 구성하여 사용자 인증에 대한 안전성을 높이고 있다. 대표적으로 OTP 동글, SMS를 통한 일회용 비밀번호, ARS를 통한 일회용 비밀번호, 모바일 앱(Mobile App) 기반 본인 생체인증 등을 활용하여 아이디 패스워드 도용에 따른 본인 인증을 강화하고 있다.When you want to use convenient electronic financial services or important online services safely, you are improving the safety of user authentication by configuring a separate authentication method in addition to the ID and password used in online services. Representatively, OTP dongles, one-time passwords through SMS, one-time passwords through ARS, and biometric authentication based on mobile apps are being used to strengthen identity authentication in response to ID password theft.

그러나 종래 추가 인증 수단들은 온라인 서비스와 인증 매체 간에 발생한 일회용 비밀번호를 사용자가 직접 입력하게 하거나, 별도의 생체 정보를 입력하는 등과 같이 사용자의 번잡한 입력을 요구하게 된다. 특히 모바일 폰으로 4~6자리의 임시 비밀번호를 재입력해야 되면, 모바일 폰 화면을 통해 확인되는 번호를 숙지하기도 어려울 뿐만 아니라 입력하기도 번잡하다.However, conventional additional authentication methods require complicated input from the user, such as having the user directly enter a one-time password generated between the online service and the authentication medium or entering separate biometric information. In particular, if you have to re-enter a 4 to 6-digit temporary password using a mobile phone, it is not only difficult to understand the number confirmed on the mobile phone screen, but also complicated to enter.

이러한 임시 비밀번호의 입력을 없애기 위해서 사용자가 서비스에 아이디와 패스워드로 로그 온하면 푸시 정보를 모바일 폰에 보내고, 사용자가 본인 확인 인증 앱을 구동하면 본인의 생체정보(지문, 얼굴, 홍채 등)를 모바일 앱에 입력하도록 함으로써, 본인이 맞으면 자동으로 온라인 서비스를 로그인 해주는 서비스가 있는데, 이 역시 생체정보를 입력하기 위한 번잡함이 발생한다.In order to eliminate the need to enter such a temporary password, when a user logs on to the service with an ID and password, push information is sent to the mobile phone, and when the user runs an identity verification app, the user's biometric information (fingerprint, face, iris, etc.) is sent to the mobile phone. There is a service that automatically logs you into an online service by having you enter it into the app, but this also causes the hassle of entering biometric information.

또 다른 간편 인증 방식으로는 사용자의 입력을 최소화 시키고자 사전에 사용자의 지정된 모바일 폰에 접속 승인 여부를 결정하는 접속 제어 앱을 설치한 상태에서, 사용자가 온라인 서비스에 아이디와 패스워드를 입력하면 모바일 푸시 메시지로 사용자 접속을 알려주고, 사용자가 접속 승인 앱을 구동하면 온라인 서비스의 접속 여부를 승인하거나 거절하는 접속 확인 방식도 있었다. 그러나 이 방식은 사용자가 접속한 서비스가 파밍(pharming)된 해커의 사이트인 경우, 사용자가 입력한 아이디와 패스워드를 해커가 역이용하여 실제 온라인 서비스에 전송하면 사용자는 자신의 모바일 폰에 접속 확인 요청이 왔을 때 본인의 접속으로 오해하고 해당 접속을 승인해주게 되는 문제가 발생하게 된다. 뿐만 아니라 사용자의 아이디와 패스워드를 알고 있는 해커가 실제 사용자가 접속하자 마자, 해당 사용자의 아이디와 패스워드로 접속을 하게 되면 사용자는 자신의 스마트폰에 도착한 최종 접속 내용을 자신의 것으로 오해하고 해당 접속을 승인하게 해줄 수도 있다.Another simple authentication method is to minimize user input by installing an access control app that determines whether or not to approve access on the user's designated mobile phone in advance, and when the user enters the ID and password for the online service, mobile push There was also a connection confirmation method that notifies the user of access through a message and approves or rejects access to the online service when the user runs the access approval app. However, in this method, if the service accessed by the user is a pharmed hacker's site, the hacker uses the ID and password entered by the user and sends it to the actual online service, and the user is requested to confirm the connection on his/her mobile phone. When you arrive, a problem arises where the connection is misunderstood as your own and the connection is approved. In addition, if a hacker who knows the user's ID and password connects with the user's ID and password as soon as the actual user logs in, the user misunderstands the final access information that arrived on the smartphone as his or her own and blocks the access. You may be able to get it approved.

따라서 사용자가 임시 비밀번호를 재입력하는 번잡함이 없으면서도, 해당 사이트가 정상인지 인지를 판단할 수도 있고, 자신의 접속인지 아닌지 까지 확인할 수 있는 개선된 방법과 기술이 필요하다. Therefore, there is a need for improved methods and technologies that allow users to determine whether the site is normal and even check whether they are accessing it or not, without the user having to go through the hassle of re-entering a temporary password.

본 발명은 온라인 서비스의 안전한 사용을 위해 2팩트 인증(즉, 서비스 인증 및 사용자 인증에 따른 상호 간 인증)을 수행할 때, 별도의 일회용 암호나 생체 정보를 입력하지 않고도 올바른 서비스인지에 대해서 사용자가 확인한 후 편리하게 접속이 진행될 수 있도록 하는 간편 인증을 위한 방법 및 시스템을 제공한다.The present invention allows the user to determine whether the service is correct without entering a separate one-time password or biometric information when performing two-fact authentication (i.e., mutual authentication based on service authentication and user authentication) for safe use of online services. We provide a method and system for simple authentication that allows convenient connection after verification.

본 발명의 일 측면에 따르면, 온라인 서비스 서버와 서비스 사용자 간의 상호 인증을 수행하는 컴퓨터 구현 방법(computer implemented method)으로서,According to one aspect of the present invention, a computer implemented method for performing mutual authentication between an online service server and a service user,

(a) 인증 서버가, 상기 온라인 서버로부터 상기 온라인 서버에 접속하는 서비스 사용자의 사용자 계정 정보를 포함하는 간편 인증번호 생성 요청이 수신됨에 따라 간편 인증번호를 생성하는 단계;(a) the authentication server generating a simple authentication number when a request for generating a simple authentication number containing user account information of a service user accessing the online server is received from the online server;

(b) 상기 인증 서버가, 상기 간편 인증번호의 생성에 사용된 생성 조건을 상기 사용자 계정 정보에 상응하는 사용자의 간편 인증기로 전송하는 단계;(b) transmitting, by the authentication server, the generation conditions used to generate the simple authentication number to the user's simple authenticator corresponding to the user account information;

(c) 상기 간편 인증기가, 상기 간편 인증번호의 생성 조건을 이용하여 상기 간편 인증번호에 대응되는 검증용 인증번호를 생성하는 단계; 및(c) generating, by the simple authenticator, an authentication number for verification corresponding to the simple authentication number using the generation conditions of the simple authentication number; and

(d) 상기 인증 서버가, 상기 간편 인증번호 및 상기 검증용 인증번호를 통한 상기 온라인 서비스 서버에 관한 검증이 완료됨에 따라 상기 간편 인증기로부터 전달되는 추가 검증값에 대응하여 대응 검증값을 생성하고, 상기 추가 검증값과 상기 대응 검증값 간의 일치 여부를 비교함으로써 해당 서비스 사용자에 대한 인증을 수행하는 단계를 포함하는 상호 인증을 위한 컴퓨터 구현 방법이 제공된다.(d) The authentication server generates a corresponding verification value in response to the additional verification value transmitted from the simple authenticator as verification of the online service server through the simple authentication number and the verification authentication number is completed, and , A computer-implemented method for mutual authentication is provided, including the step of performing authentication for the service user by comparing whether the additional verification value matches the corresponding verification value.

일 실시예에서, 상기 간편 인증번호 생성 요청은, 상기 서비스 사용자가 상기 온라인 서비스 서버가 제공하는 온라인 사이트에 입력한 상기 사용자 계정 정보가 사전 등록된 해당 사용자의 계정 정보와 일치하는 경우, 상기 온라인 서비스 서버로부터 상기 인증 서버로 전송될 수 있다.In one embodiment, the simple authentication number creation request is made when the user account information entered by the service user on the online site provided by the online service server matches the user's pre-registered account information. It may be transmitted from a server to the authentication server.

일 실시예에서, 상기 (b) 단계에서, 상기 간편 인증번호의 생성 조건은 푸시 메시지 또는 소켓 데이터 통신을 통해서 상기 인증 서버로부터 상기 사용자 계정 정보에 상응하는 사용자의 모바일 기기 또는 해당 모바일 기기에 설치된 상기 간편 인증기로 전송될 수 있다.In one embodiment, in step (b), the conditions for generating the simple authentication number are the mobile device of the user corresponding to the user account information from the authentication server through push message or socket data communication, or the device installed on the mobile device. It can be sent to a simple authenticator.

일 실시예에서, 상기 단계 (a)에서, 상기 인증 서버는, 상기 온라인 서비스 서버로부터 상기 온라인 서비스 서버에 접속한 해당 서비스 사용자의 접속단말에 대한 클라이언트 접속환경정보를 더 수신하되, 상기 간편 인증번호를 생성할 때 상기 클라이언트 접속정보를 이용하고,In one embodiment, in step (a), the authentication server further receives client connection environment information about the connection terminal of the service user connected to the online service server from the online service server, wherein the simple authentication number When creating, use the client connection information,

상기 단계 (b)에서, 상기 인증 서버는, 상기 클라이언트 접속환경정보를 포함하는 상기 간편 인증번호의 생성 조건을 상기 간편 인증기로 전송할 수 있다.In step (b), the authentication server may transmit the simple authentication number generation conditions including the client connection environment information to the simple authenticator.

일 실시예에서, 상기 클라이언트 접속환경정보는,In one embodiment, the client connection environment information is,

상기 온라인 서비스 서버에 접속한 접속단말과 관련된 서버 변수, 호스트 네임, 쿠키 정보, 이전 URL, 현재 접속 IP 주소, 한 단계 앞의 접속 IP 주소, 클라이언트 브라우저 정보, 클라이언트 언어 정보, 접속단말의 시스템 변수, 접속단말에 서비스를 제공하는 온라인 서비스 서버의 서버 호스트명, 서버 IP 주소, 세션 아이디, 세션 최대 유효시간 정보 중 적어도 하나일 수 있다.Server variables related to the connection terminal connected to the online service server, host name, cookie information, previous URL, current connection IP address, one step previous connection IP address, client browser information, client language information, system variables of the connection terminal, It may be at least one of the server host name, server IP address, session ID, and session maximum validity time information of the online service server providing the service to the access terminal.

일 실시예에서, 상기 단계 (a)에서, 상기 인증 서버는, 상기 클라이언트 접속환경정보를 제1 시드값, 사전 지정된 적어도 하나의 추가 정보를 제2 시드값으로 하되 시간 또는 시도횟수를 연산 조건으로 하여 상기 간편 인증번호를 생성하고,In one embodiment, in step (a), the authentication server uses the client connection environment information as a first seed value and at least one pre-designated additional information as a second seed value, with time or the number of attempts as the calculation condition. to generate the simple authentication number,

상기 단계 (c)에서, 상기 간편 인증기는, 상기 간편 인증번호와 동일 생성 조건을 적용하여 상기 검증용 인증번호를 생성할 수 있다.In step (c), the simple authenticator may generate the authentication number for verification by applying the same generation conditions as the simple authentication number.

일 실시예에서, 상기 간편 인증번호 및 상기 검증용 인증번호를 통해서 상기 온라인 서비스 서버에 관한 검증이 완료된 경우, 상기 간편 인증기는, 사전 지정된 조건에 따라 상기 추가 검증값을 생성하여 상기 인증 서버로 전송하고,In one embodiment, when verification of the online service server is completed through the simple authentication number and the verification authentication number, the simple authenticator generates the additional verification value according to pre-specified conditions and transmits it to the authentication server. do,

상기 인증 서버는 상기 사전 지정된 조건과 동일 조건을 적용하여 상기 대응 검증값을 생성하고, 상기 추가 검증값과 상기 대응 검증값이 일치하는 경우 상기 온라인 서비스 서버로 정상 인증을 통지할 수 있다.The authentication server may generate the corresponding verification value by applying the same conditions as the pre-specified conditions, and if the additional verification value matches the corresponding verification value, it may notify the online service server of normal authentication.

일 실시예에서, 상기 인증 서버가, 상기 간편 인증번호가 상기 온라인 서비스 서버에 의해 제공되는 인증번호 게시 화면을 통해 게시되도록 상기 간편 인증번호를 상기 온라인 서비스 서버로 전송하는 단계를 더 포함하고,In one embodiment, the authentication server further includes transmitting the simple authentication number to the online service server so that the simple authentication number is posted through an authentication number posting screen provided by the online service server,

상기 인증번호 게시 화면을 통한 상기 간편 인증번호의 검증 유효시간이 경과되기 전 또는 상기 서비스 사용자에 의한 상기 온라인 서비스 서버에 관한 검증이 완료되기 전에, 상기 서비스 사용자의 사용자 계정 정보와 동일한 계정 정보를 이용한 후순위의 접속이 시도된 경우,Before the verification validity time of the simple authentication number through the authentication number posting screen has elapsed or before the verification of the online service server by the service user is completed, using the same account information as the service user's user account information If a low-priority connection is attempted,

상기 인증 서버는, 상기 간편 인증번호의 검증 유효시간 동안 또는 상기 온라인 서비스 서버에 관한 검증이 완료되기 전까지, 선순위 접속에 따라 생성된 간편 인증번호를 그대로 유지하거나 또는 후순위 접속에 따른 간편 인증번호의 신규 생성을 금지할 수 있다.The authentication server maintains the simple authentication number generated according to priority access during the verification validity period of the simple authentication number or until verification of the online service server is completed, or creates a new simple authentication number according to secondary access. Creation can be prohibited.

본 발명의 다른 측면에 따르면, 온라인 서비스 서버와 서비스 사용자 간의 상호 인증을 수행하는 인증 시스템으로서, 인증 서버; 및 상기 인증 서버와 통신하는 서비스 사용자 측의 간편 인증기를 포함하되,According to another aspect of the present invention, an authentication system that performs mutual authentication between an online service server and a service user, comprising: an authentication server; And a simple authenticator on the service user side that communicates with the authentication server,

상기 인증 서버는,The authentication server is,

상기 온라인 서버로부터 상기 온라인 서버에 접속하는 서비스 사용자의 사용자 계정 정보를 포함하는 간편 인증번호 생성 요청이 수신됨에 따라 간편 인증번호를 생성하고,Generating a simple authentication number as a request for generating a simple authentication number containing user account information of a service user accessing the online server is received from the online server,

상기 간편 인증번호의 검증을 위한 검증용 인증번호가 생성될 수 있도록 상기 간편 인증번호의 생성에 사용된 생성 조건을 상기 사용자 계정 정보에 상응하는 상기 간편 인증기로 전송하며,Transmitting the generation conditions used to generate the simple authentication number to the simple authenticator corresponding to the user account information so that a verification number for verification of the simple authentication number can be generated,

상기 간편 인증번호 및 상기 검증용 인증번호를 통한 상기 온라인 서비스 서버에 관한 검증이 완료됨에 따라 상기 간편 인증기로부터 전달되는 추가 검증값에 대응하여 대응 검증값을 생성하고, 상기 추가 검증값과 상기 대응 검증값 간의 일치 여부를 비교함으로써 해당 서비스 사용자에 대한 인증을 수행하는, 상호 인증을 위한 인증 시스템이 제공된다.As verification of the online service server through the simple authentication number and the verification authentication number is completed, a corresponding verification value is generated in response to the additional verification value transmitted from the simple authenticator, and the additional verification value corresponds to the additional verification value. An authentication system for mutual authentication is provided that authenticates the service user by comparing the consistency between verification values.

일 실시예에서, 상기 인증 서버는,In one embodiment, the authentication server:

상기 온라인 서비스 서버로부터 상기 온라인 서비스 서버에 접속한 해당 서비스 사용자의 접속단말에 대한 클라이언트 접속환경정보를 더 수신하되, 상기 간편 인증번호를 생성할 때 상기 클라이언트 접속정보를 이용하고,Further receiving client connection environment information about the connection terminal of the service user connected to the online service server from the online service server, using the client connection information when generating the simple authentication number,

상기 클라이언트 접속환경정보를 포함하는 상기 간편 인증번호의 생성 조건을 상기 간편 인증기로 전송할 수 있다.The conditions for generating the simple authentication number, including the client connection environment information, can be transmitted to the simple authenticator.

일 실시예에서, 상기 클라이언트 접속환경정보는,In one embodiment, the client connection environment information is,

상기 온라인 서비스 서버에 접속한 접속단말과 관련된 서버 변수, 호스트 네임, 쿠키 정보, 이전 URL, 현재 접속 IP 주소, 한 단계 앞의 접속 IP 주소, 클라이언트 브라우저 정보, 클라이언트 언어 정보, 접속단말의 시스템 변수, 접속단말에 서비스를 제공하는 온라인 서비스 서버의 서버 호스트명, 서버 IP 주소, 세션 아이디, 세션 최대 유효시간 정보 중 적어도 하나일 수 있다.Server variables related to the access terminal connected to the online service server, host name, cookie information, previous URL, current access IP address, previous access IP address, client browser information, client language information, system variables of the access terminal, It may be at least one of the server host name, server IP address, session ID, and session maximum validity time information of the online service server providing the service to the access terminal.

일 실시예에서, 상기 인증 서버는, 상기 클라이언트 접속환경정보를 제1 시드값, 사전 지정된 적어도 하나의 추가 정보를 제2 시드값으로 하되 시간 또는 시도횟수를 연산 조건으로 하여 상기 간편 인증번호를 생성하고,In one embodiment, the authentication server generates the simple authentication number using the client connection environment information as a first seed value and at least one pre-designated additional information as a second seed value, with time or the number of attempts as a calculation condition. do,

상기 간편 인증기는, 상기 간편 인증번호와 동일 생성 조건을 적용하여 상기 검증용 인증번호를 생성할 수 있다.The simple authenticator may generate the authentication number for verification by applying the same generation conditions as the simple authentication number.

일 실시예에서, 상기 간편 인증번호 및 상기 검증용 인증번호를 통해서 상기 온라인 서비스 서버에 관한 검증이 완료된 경우, 상기 간편 인증기는, 사전 지정된 조건에 따라 상기 추가 검증값을 생성하여 상기 인증 서버로 전송하고,In one embodiment, when verification of the online service server is completed through the simple authentication number and the verification authentication number, the simple authenticator generates the additional verification value according to pre-specified conditions and transmits it to the authentication server. do,

상기 인증 서버는 상기 사전 지정된 조건과 동일 조건을 적용하여 상기 대응 검증값을 생성하고, 상기 추가 검증값과 상기 대응 검증값이 일치하는 경우 상기 온라인 서비스 서버로 정상 인증을 통지할 수 있다.The authentication server may generate the corresponding verification value by applying the same conditions as the pre-specified conditions, and if the additional verification value matches the corresponding verification value, it may notify the online service server of normal authentication.

일 실시예에서, 상기 인증 서버는, 상기 간편 인증번호가 상기 온라인 서비스 서버에 의해 제공되는 인증번호 게시 화면을 통해 게시되도록 상기 간편 인증번호를 상기 온라인 서비스 서버로 전송하고,In one embodiment, the authentication server transmits the simple authentication number to the online service server so that the simple authentication number is posted through an authentication number posting screen provided by the online service server,

상기 인증번호 게시 화면을 통한 상기 간편 인증번호의 검증 유효시간이 경과되기 전 또는 상기 서비스 사용자에 의한 상기 온라인 서비스 서버에 관한 검증이 완료되기 전에, 상기 서비스 사용자의 사용자 계정 정보와 동일한 계정 정보를 이용한 후순위의 접속이 시도된 경우,Before the verification validity time of the simple authentication number through the authentication number posting screen has elapsed or before the verification of the online service server by the service user is completed, using the same account information as the service user's user account information If a low-priority connection is attempted,

상기 인증 서버는, 상기 간편 인증번호의 검증 유효시간 동안 또는 상기 온라인 서비스 서버에 관한 검증이 완료되기 전까지, 선순위 접속에 따라 생성된 간편 인증번호를 그대로 유지하거나 또는 후순위 접속에 따른 간편 인증번호의 신규 생성을 금지할 수 있다.The authentication server maintains the simple authentication number generated according to priority access during the verification validity period of the simple authentication number or until verification of the online service server is completed, or creates a new simple authentication number according to secondary access. Creation can be prohibited.

본 발명의 실시예에 의하면, 사용자가 온라인 서비스에 아이디와 패스워드를 입력한 이후 추가 인증을 위해서 서비스에서 제공하는 간편 인증번호와 모바일 간편 인증기가 제공하는 간편 인증번호가 같은 경우 사용자의 서비스 접속을 승인함으로써, 사용자의 불필요한 인증번호 재입력을 없앨 수 있다.According to an embodiment of the present invention, after a user enters an ID and password in an online service, if the simple authentication number provided by the service for additional authentication is the same as the simple authentication number provided by the mobile simple authenticator, the user's access to the service is approved. By doing so, the user's unnecessary re-entry of the authentication number can be eliminated.

또한 본 발명의 실시예에 의하면, 타인이 사용자의 아이디와 패스워드로 온라인 서비스에 접근을 시도하면 간편 인증기를 갖고 있는 사용자는 본인이 아닌 타인에 의해서 접속 허가 요청이 있었다는 상황을 숙지할 수 있어, 사용자 아이디와 패스워드에 대한 보안 관리까지 가능하게 된다.Additionally, according to an embodiment of the present invention, when another person attempts to access an online service with the user's ID and password, a user with a simple authenticator can be aware of the situation that a request for access permission has been made by someone other than the user. Security management of IDs and passwords is also possible.

도 1은 본 발명의 실시예에 따른 온라인 서비스 서버와 서비스 사용자 간의 상호 인증 방법 및 시스템을 설명하기 위한 도면.
도 2는 본 발명의 실시예에 따른 상호 인증 방법을 구현하는 인증 서버에 관한 일 실시예의 블록도.
도 3은 본 발명의 실시예에 따른 상호 인증 방법을 구현하는 간편 인증기에 관한 일 실시예의 블록도.
도 4는 온라인 서비스 서버에 의해 운영되는 온라인 서비스 사이트에 간편 인증번호가 게시되는 화면과 관련된 예시.
도 5는 간편 인증기에 의해 생성된 검증용 인증번호가 표출되는 화면과 관련된 예시.
도 6은 도 1의 상호 인증 방법에 따른 인증 과정에서 해커에 의한 접속 시도시 처리 방법을 설명하기 위한 도면.
도 7은 도 6과 같은 해커에 의한 접속 시도시의 온라인 서비스 서버에 의해 운영되는 온라인 서비스 사이트에 게시되는 처리 결과를 예시한 도면.
도 8 및 도 9는 사용자의 모바일 기기를 통해 온라인 서비스 서버에 접속하였을 때의 본 발명의 실시예에 따른 상호 인증 방법의 구현 예시.
1 is a diagram illustrating a mutual authentication method and system between an online service server and a service user according to an embodiment of the present invention.
Figure 2 is a block diagram of an embodiment of an authentication server implementing a mutual authentication method according to an embodiment of the present invention.
3 is a block diagram of an embodiment of a simple authenticator implementing a mutual authentication method according to an embodiment of the present invention.
Figure 4 is an example related to a screen where a simple authentication number is posted on an online service site operated by an online service server.
Figure 5 is an example of a screen on which a verification authentication number generated by a simple authenticator is displayed.
FIG. 6 is a diagram illustrating a method for processing a connection attempt by a hacker during the authentication process according to the mutual authentication method of FIG. 1.
FIG. 7 is a diagram illustrating processing results posted on an online service site operated by an online service server upon an access attempt by a hacker as shown in FIG. 6.
8 and 9 are examples of implementation of a mutual authentication method according to an embodiment of the present invention when accessing an online service server through a user's mobile device.

본 발명은 다양한 변환을 가할 수 있고 여러 가지 실시예를 가질 수 있는 바, 특정 실시예들을 도면에 예시하고 상세한 설명에 상세하게 설명하고자 한다. 그러나, 이는 본 발명을 특정한 실시 형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변환, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다.Since the present invention can be modified in various ways and can have various embodiments, specific embodiments will be illustrated in the drawings and described in detail in the detailed description. However, this is not intended to limit the present invention to specific embodiments, and should be understood to include all transformations, equivalents, and substitutes included in the spirit and technical scope of the present invention.

본 발명을 설명함에 있어서, 관련된 공지 기술에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우 그 상세한 설명을 생략한다. 또한, 본 명세서의 설명 과정에서 이용되는 숫자(예를 들어, 제1, 제2 등)는 하나의 구성요소를 다른 구성요소와 구분하기 위한 식별기호에 불과하다.In describing the present invention, if it is determined that a detailed description of related known technologies may unnecessarily obscure the gist of the present invention, the detailed description will be omitted. In addition, numbers (eg, first, second, etc.) used in the description of this specification are merely identifiers to distinguish one component from another component.

또한, 명세서 전체에서, 일 구성요소가 다른 구성요소와 "연결된다" 거나 "접속된다" 등으로 언급된 때에는, 상기 일 구성요소가 상기 다른 구성요소와 직접 연결되거나 또는 직접 접속될 수도 있지만, 특별히 반대되는 기재가 존재하지 않는 이상, 중간에 또 다른 구성요소를 매개하여 연결되거나 또는 접속될 수도 있다고 이해되어야 할 것이다.In addition, throughout the specification, when a component is referred to as "connected" or "connected" to another component, the component may be directly connected or directly connected to the other component, but in particular Unless there is a contrary description, it should be understood that it may be connected or connected through another component in the middle.

또한, 명세서 전체에서, 어떤 부분이 어떤 구성요소를 "포함"한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성요소를 더 포함할 수 있는 것을 의미한다. 또한, 명세서에 기재된 "부", "모듈" 등의 용어는 적어도 하나의 기능이나 동작을 처리하는 단위를 의미하며, 이는 하나 이상의 하드웨어나 소프트웨어 또는 하드웨어 및 소프트웨어의 조합으로 구현될 수 있음을 의미한다.In addition, throughout the specification, when a part "includes" a certain element, this means that it may further include other elements rather than excluding other elements, unless specifically stated to the contrary. In addition, terms such as “unit” and “module” used in the specification mean a unit that processes at least one function or operation, which means that it can be implemented with one or more hardware or software or a combination of hardware and software. .

또한 이하의 설명에서, 간편 인증기는 사용자 소유의 모바일 기기에 애플리케이션 프로그램의 형태로 설치된 소프트웨어 방식의 인증 장치인 경우를 중심으로 설명하지만, 반드시 이에 한정되는 것은 아님은 물론이다. 예를 들어, 간편 인증기는 통신 기능을 갖춘 하드웨어 인증 디바이스일 수도 있다. 다만, 이하에서는 설명의 편의 및 집중을 위해 전자의 케이스를 가정하여 본 발명의 실시예를 설명하기로 한다.In addition, in the following description, the simple authenticator will be explained focusing on the case where the simple authenticator is a software-type authentication device installed in the form of an application program on the user's mobile device, but it is of course not limited to this. For example, a simple authenticator may be a hardware authentication device with communication capabilities. However, hereinafter, for convenience and focus of explanation, an embodiment of the present invention will be described assuming the former case.

또한, 이하에서는 도 1을 기준으로 온라인 서비스 서버에 접속하는 접속단말인 클라이언트 단말과 간편 인증기가 물리적으로 별개로 구성된 경우를 가정하여 설명하지만, 간편 인증기는 클라이언트 단말과 일체적으로 구현될 수도 있다. 후자의 경우라면 도 1에 도시된 모바일 기기는 생략될 것이다. 또한, 클라이언트 단말 자체가 모바일 기기일 수도 있음은 자명하다.In addition, the description below assumes that the client terminal, which is a connection terminal connecting to the online service server, and the simple authenticator are physically configured separately based on FIG. 1, but the simple authenticator may be implemented integrally with the client terminal. In the latter case, the mobile device shown in Figure 1 will be omitted. Additionally, it is obvious that the client terminal itself may be a mobile device.

도 1은 본 발명의 실시예에 따른 온라인 서비스 서버와 서비스 사용자 간의 상호 인증 방법 및 시스템을 설명하기 위한 도면이다. 또한, 도 2는 본 발명의 실시예에 따른 상호 인증 방법을 구현하는 인증 서버에 관한 일 실시예의 블록도이고, 도 3은 본 발명의 실시예에 따른 상호 인증 방법을 구현하는 간편 인증기에 관한 일 실시예의 블록도이다. 이하, 도 1을 중심으로 도 2 및 도 3을 참조하여, 본 발명의 실시예에 따른 상호 인증 방법 및 시스템을 설명한다. 1 is a diagram for explaining a mutual authentication method and system between an online service server and a service user according to an embodiment of the present invention. In addition, Figure 2 is a block diagram of an embodiment of an authentication server implementing a mutual authentication method according to an embodiment of the present invention, and Figure 3 is a block diagram of a simple authenticator implementing a mutual authentication method according to an embodiment of the present invention. This is a block diagram of the embodiment. Hereinafter, a mutual authentication method and system according to an embodiment of the present invention will be described with reference to FIG. 1 and FIG. 2 and FIG. 3.

또한, 본 발명의 실시예의 설명 과정에서, 도 4 ~ 도 9를 함께 참조한다. 여기서, 도 4는 온라인 서비스 서버에 의해 운영되는 온라인 서비스 사이트에 간편 인증번호가 게시되는 화면과 관련된 예시이고, 도 5는 간편 인증기에 의해 생성된 검증용 인증번호가 표출되는 화면과 관련된 예시이며, 도 6은 도 1의 상호 인증 방법에 따른 인증 과정에서 해커에 의한 접속 시도시 처리 방법을 설명하기 위한 도면이고, 도 7은 도 6과 같은 해커에 의한 접속 시도시의 온라인 서비스 서버에 의해 운영되는 온라인 서비스 사이트에 게시되는 처리 결과를 예시한 도면이다. 또한 도 8 및 도 9는 사용자의 모바일 기기를 통해 온라인 서비스 서버에 접속하였을 때의 본 발명의 실시예에 따른 상호 인증 방법의 구현 예시이다.Additionally, in the description of the embodiment of the present invention, FIGS. 4 to 9 are also referred to. Here, Figure 4 is an example related to a screen in which a simple authentication number is posted on an online service site operated by an online service server, and Figure 5 is an example related to a screen in which a verification authentication number generated by a simple authenticator is displayed, Figure 6 is a diagram for explaining a processing method when a hacker attempts to connect in the authentication process according to the mutual authentication method of Figure 1, and Figure 7 is an online service server operated by an online service server when a hacker attempts to connect as shown in Figure 6. This diagram illustrates the processing results posted on the service site. Additionally, Figures 8 and 9 are examples of implementation of a mutual authentication method according to an embodiment of the present invention when accessing an online service server through a user's mobile device.

도 1의 단계 S1을 참조하면, 온라인 서비스 서버(230)가 제공하는 온라인 서비스 사이트에 의한 온라인 서비스를 이용하고자 하는 경우, 서비스 사용자는 온라인 서비스 서버(230)에 접속 요청을 한다.Referring to step S1 of FIG. 1, when wanting to use an online service provided by an online service site provided by the online service server 230, the service user requests access to the online service server 230.

예를 들어, 이용하고자 하는 온라인 서비스가 온라인 뱅킹 서비스인 경우, 사용자는 해당 온라인 뱅킹 서비스를 제공하는 특정 온라인 서비스 서버(즉, 온라인 뱅킹 서비스를 제공하는 특정 은행 서버)에 접속할 수 있다. 온라인 서비스 서버(230)로의 접속은 사용자 자신이 소유하는 모바일 기기(210)(예를 들어, 스마트폰 등)를 통한 모바일 접속에 의할 수 있음은 물론이나, 도 1에서는 사용자 소유의 모바일 기기(210)와는 별개의 클라이언트 단말(200)(예를 들어, 회사 PC 등)을 통해서 접속하는 경우를 예시하였다.For example, if the online service to be used is an online banking service, the user can access a specific online service server that provides the online banking service (i.e., a specific bank server that provides the online banking service). Of course, access to the online service server 230 can be done through a mobile connection through a mobile device 210 (for example, a smartphone, etc.) owned by the user, but in FIG. 1, a mobile device owned by the user ( A case of connection through a client terminal 200 (for example, a company PC, etc.) that is separate from the terminal 210 is illustrated.

도 1의 단계 S2를 참조하면, 온라인 서비스 서버(230)로의 접속 요청에 따라, 온라인 서비스 서버(230)는 온라인 서비스를 이용하고자 하는 서비스 사용자에게 사용자 계정 정보의 입력을 요청할 수 있다. 여기서, 사용자 계정 정보는, 사용자 등록 절차(또는 서비스 가입 절차)를 통해서 해당 온라인 서비스 서버(230)에 미리 저장(등록)되어 있는 해당 사용자의 식별 정보를 의미한다. 통상적으로, 사용자 계정 정보로는 사용자 ID(Identifier)와 패스워드(password)가 활용될 수 있다. 다만, 해당 온라인 서비스를 이용하는 사용자를 식별할 수 있는 정보라면, 상기 사용자 계정 정보로서 이외에도 다양한 정보(예를 들어, 해당 사용자의 이메일 주소, 전화번호, PKI(Public Key Infrastructure) 기반의 인증서 상의 인증서 암호 등)가 대체 활용될 수 있음은 물론이다.Referring to step S2 of FIG. 1, in response to a connection request to the online service server 230, the online service server 230 may request the service user who wishes to use the online service to input user account information. Here, the user account information refers to the user's identification information that is previously stored (registered) in the online service server 230 through a user registration procedure (or service subscription procedure). Typically, a user ID (Identifier) and password may be used as user account information. However, if it is information that can identify the user using the relevant online service, various information (e.g., the user's email address, phone number, certificate password on the PKI (Public Key Infrastructure)-based certificate) is included in addition to the user account information. Of course, etc.) can be used as an alternative.

도 1의 단계 S3을 참조하면, 사용자 계정 정보의 입력 요청에 따라, 서비스 사용자는 사용자 계정 정보를 해당 온라인 서비스 사이트에 입력한다. 도 1의 단계 S4를 참조하면, 서비스 사용자로부터 사용자 계정 정보가 입력되면, 온라인 서비스 서버(230)는 사용자로부터 입력된 사용자 계정 정보와 일치하는 계정이 존재하는지를 확인한다. 이러한 계정 정보의 확인에는 도 1에 도시된 바와 같은 계정 DB(240)가 활용될 수 있다. 계정 DB(240)에는 해당 온라인 서비스 서버(230)를 통한 온라인 서비스를 제공받을 수 있는 사용자들(즉, 회원들)에 관한 계정 정보들이 보관된다. 도 1에서는 계정 DB(240)가 온라인 서비스 서버(230)와 별개로 구비되는 경우를 예시하였지만, 계정 DB(240)는 온라인 서비스 서버(230)와 통합되어 구현될 수도 있음은 물론이다. 또한, 시스템 구현 방식에 따라, 계정 DB(240)는 인증 서버(250)와 통합되어 구현될 수도 있을 것이다.Referring to step S3 of FIG. 1, in response to a request to input user account information, the service user enters user account information into the corresponding online service site. Referring to step S4 of FIG. 1, when user account information is input from a service user, the online service server 230 checks whether an account matching the user account information input from the user exists. To confirm such account information, the account DB 240 as shown in FIG. 1 can be used. The account DB 240 stores account information about users (i.e., members) who can receive online services through the corresponding online service server 230. Although FIG. 1 illustrates the case where the account DB 240 is provided separately from the online service server 230, it goes without saying that the account DB 240 may be implemented integrated with the online service server 230. Additionally, depending on how the system is implemented, the account DB 240 may be implemented integrated with the authentication server 250.

도 1의 단계 S5를 참조하면, 입력된 사용자 계정 정보가 계정 DB(240)에 보관된 사용자 계정과 일치하는 경우, 온라인 서비스 서버(230)는 인증 서버(250)로 간편 인증번호의 생성을 요청한다. 여기서, 간편 인증번호는 사용자가 현재 접속한 온라인 서비스 사이트가 진정한 온라인 서비스 제공자에 의해 제공된 것인지 여부를 사용자가 판별할 수 있도록 하기 위한 용도로서 활용된다.Referring to step S5 of FIG. 1, if the input user account information matches the user account stored in the account DB 240, the online service server 230 requests the authentication server 250 to generate a simple authentication number. do. Here, the simple authentication number is used to enable the user to determine whether the online service site the user is currently accessing is provided by a true online service provider.

도 1의 단계 S5에서, 온라인 서비스 서버(230)가 인증 서버(250)로 간편 인증번호의 생성 요청을 할 때, 온라인 서비스 서버(230)는 해당 서비스 사용자의 사용자 계정 정보를 함께 인증 서버(250)로 전송할 수 있다. 예를 들어, 온라인 서비스 서버(230)는 사용자 계정 정보로서 해당 사용자의 사용자 ID를 포함하는 간편 인증번호 생성 요청을 인정 서버(250)로 전송할 수 있다.In step S5 of FIG. 1, when the online service server 230 requests the authentication server 250 to generate a simple authentication number, the online service server 230 sends the user account information of the service user to the authentication server 250. ) can be transmitted. For example, the online service server 230 may transmit a request for generating a simple authentication number including the user ID of the user as user account information to the authentication server 250.

또한 일 실시예에 의할 때, 온라인 서비스 서버(230)는 도 1의 단계 S5를 통해서(혹은 별개의 단계를 통해서) 클라이언트 접속환경정보를 인증 서버(250)로 추가 전송할 수도 있다. 여기서, 클라이언트 접속환경정보란, 온라인 서비스 서버(230)에 접속한 해당 서비스 사용자의 접속단말에 관한 접속환경을 직접 또는 간접적으로 나타낼 수 있는 정보를 통칭한다. 이러한 클라이언트 접속환경정보는 서비스 서버에 따라 다양할 수 있다.Additionally, according to one embodiment, the online service server 230 may additionally transmit client connection environment information to the authentication server 250 through step S5 of FIG. 1 (or through a separate step). Here, client connection environment information refers to information that can directly or indirectly indicate the connection environment of the connection terminal of the service user connected to the online service server 230. This client connection environment information may vary depending on the service server.

예를 들어, 표준 웹 서버를 예로 들면 접속한 클라이언트 단말기의 값을 추출할 수 있는 다양한 서버 변수(Server Variables; 호스트 네임(REMOTE_HOST), 쿠키 정보(HTTP_COOKIE), 이전 URL(HTTP_PEFERER), 한 단계 앞의 IP 주소(HTTP_X_FORWARDED_FOR), 현재 IP 주소(REMOTE_ADDR), 클라이언트 브라우져(HTTP_USER_AGENT), 클라이언트 언어(HTTP_ACCEPT_LANGUAGE))이거나, 클라이언트 단말에 서비스를 제공하는 서비스 서버의 변수(서버 호스트명, 서버 IP, 세션 아이디값, 세션 최대 유효시간 등)로 구성될 수 있다. 다른 예로, 접속하는 클라이언트가 표준 웹 브라우저가 아니라 자체 클라이언트 프로그램인 경우 운영체제(OS)가 허용하는 범위 내에서 클라이언트 단말기의 다양한 시스템 변수(Mac Address, HDD UUID 등)를 클라이언트 접속환경정보로서 이용할 수 있을 것이다.For example, taking a standard web server as an example, various server variables (Server Variables) that can extract the value of the connected client terminal; host name (REMOTE_HOST), cookie information (HTTP_COOKIE), previous URL (HTTP_PEFERER), one step previous IP address (HTTP_X_FORWARDED_FOR), current IP address (REMOTE_ADDR), client browser (HTTP_USER_AGENT), client language (HTTP_ACCEPT_LANGUAGE)), or variables of the service server that provides services to the client terminal (server host name, server IP, session ID value, session maximum validity time, etc.). As another example, if the connecting client is not a standard web browser but its own client program, various system variables (Mac Address, HDD UUID, etc.) of the client terminal can be used as client connection environment information within the range permitted by the operating system (OS). will be.

상술한 바와 같은 간편 인증번호의 생성 요청은 인증 서버(250)의 통신 인터페이스부(251)를 통해 접수(수신)되며, 함께 전송된 사용자 계정 정보 또는/및 클라이언트 접속환경정보는 상기 간편 인증번호의 생성에 시드값으로서 활용될 수 있다.The request for generating a simple authentication number as described above is received (received) through the communication interface unit 251 of the authentication server 250, and the user account information or/and client connection environment information transmitted together is the simple authentication number. It can be used as a seed value for generation.

도 1의 단계 S6을 참조하면, 온라인 서비스 서버(230)로부터의 간편 인증번호 생성 요청에 따라, 인증 서버(250)는 간편 인증번호를 생성한다. 이때, 간편 인증번호의 생성은 인증 서버(250)의 간편 인증번호 생성부(253)에 의해 수행될 수 있다. Referring to step S6 of FIG. 1, in response to a request for generating a simple authentication number from the online service server 230, the authentication server 250 generates a simple authentication number. At this time, generation of the simple authentication number may be performed by the simple authentication number generator 253 of the authentication server 250.

이때, 간편 인증번호는 온라인 서비스 서버(230)로부터 전달된 클라이언트 접속환경정보를 이용하여 생성할 수 있음은 앞서 설명하였는 바, 이하에서는 이러한 클라이언트 접속환경정보를 대체하여 활용되거나 또는 클라이언트 접속환경정보와 함께 상기 간편 인증번호 생성을 위한 추가 시드값으로서 활용될 수 있는 기타 실시예들에 대하여 상세히 설명하기로 한다.At this time, as previously explained, the simple authentication number can be generated using the client connection environment information transmitted from the online service server 230. Hereinafter, it is used in place of this client connection environment information or is used in conjunction with the client connection environment information. Together, other embodiments that can be used as additional seed values for generating the simple authentication number will be described in detail.

본 발명의 일 실시예에서, 간편 인증번호의 생성을 위한 시드 값으로는 서비스 사용자의 사용자 계정 정보에 대응하여 사전 등록된 고정키가 이용될 수 있다.In one embodiment of the present invention, a pre-registered fixed key corresponding to the user account information of the service user may be used as a seed value for generating a simple authentication number.

일 예로, 사용자 계정 정보에 대응하는 고정키는, 전술한 사용자 ID, 패스워드, 사용자의 이메일 주소, 전화번호, 인증서 암호 등과 같은 다양한 사용자 식별 정보 중 어느 하나 또는 적어도 2개의 조합이 사전 등록되어 이용될 수 있다. 다른 예로, 사용자 계정 정보에 대응하는 고정키는, 사용자 소유의 모바일 기기(예를 들어, 스마트폰 등)의 폰 번호, 제품 일련번호, 유심(USIM) 카드번호, 맥 어드레스(MAC address) 등과 같은 식별자 중 어느 하나 또는 적어도 2개의 조합이 사전 등록되어 이용될 수도 있다. 또 다른 예로, 사용자 계정 정보에 대응하는 고정키는, 사용자가 간편 인증 서비스에 등록할 때에 자신이 직접 선택하여 등록한 또는 간편 인증 서비스 등록시에 부여된 개인키가 이용될 수도 있다.As an example, the fixed key corresponding to the user account information may be used by pre-registering any one or a combination of at least two of various user identification information such as the above-described user ID, password, user email address, phone number, certificate password, etc. You can. As another example, the fixed key corresponding to the user account information is the phone number of the user's mobile device (e.g., smartphone, etc.), product serial number, USIM card number, MAC address, etc. Any one or a combination of at least two identifiers may be pre-registered and used. As another example, the fixed key corresponding to the user account information may be a private key that the user directly selects and registers when registering for the simple authentication service or a private key granted when registering for the simple authentication service.

본 발명의 다른 실시예에서, 인증번호 생성을 위한 시드 값으로는 사용자가 해당 온라인 서비스 서버에 접속하는 시점에 동적으로 할당되는 동적 할당키가 이용될 수 있다.In another embodiment of the present invention, a dynamic allocation key that is dynamically assigned when a user accesses the online service server may be used as a seed value for generating an authentication number.

일 예로, 상기 동적 할당키로는, 해당 온라인 서비스 서버로 접속하는 서비스 사용자의 접속단말 연결정보가 이용될 수 있다. 이때, 접속단말 연결정보로는 서비스 사용자의 접속시 해당 온라인 서비스 서버에서 서비스 사용자의 접속단말에 할당하는 세션 정보(예를 들어, 세션 ID(Session ID) 등) 또는 소켓 정보(예를 들어, 소켓 핸들(Socket handle) 등)가 이용될 수 있다.As an example, the dynamic allocation key may be the connection information of the service user's access terminal connecting to the corresponding online service server. At this time, the connection terminal connection information includes session information (e.g., session ID, etc.) or socket information (e.g., socket information) assigned to the service user's connection terminal by the relevant online service server when the service user connects. A handle (Socket handle, etc.) may be used.

여기서, 세션 ID는 서버와 접속단말 간의 연속적인 데이터 송수신을 관리하기 위해 해당 서버에 의해 부여되는 값이고, 소켓 핸들 정보는 서버와 접속단말 간에 네트워크를 통해 데이터를 송수신하는 단위인 소켓을 관리하기 위해 해당 서버가 자체적으로 할당한 임의의 연결 고유값이다. 이러한 세션 ID 또는 소켓 핸들 정보는 동적으로 할당됨은 물론 해당 서버에 의해 자체적으로 부여되는 값으로서, 서버 외부에서 해커에 의해 탈취되기 어렵기 때문에, 이를 이용하는 경우 보안 상 유리한 효과가 있다.Here, the session ID is a value given by the server to manage continuous data transmission and reception between the server and the connected terminal, and the socket handle information is used to manage the socket, which is a unit of data transmission and reception through the network between the server and the connected terminal. This is a random connection-specific value assigned by the server itself. This session ID or socket handle information is not only dynamically allocated, but is also a value given by the server itself, and is difficult to steal by hackers from outside the server, so using it has an advantageous security effect.

다른 예로, 상기 동적 할당키로는, 서비스 사용자 소유의 모바일 기기에 이동통신사가 동적으로 할당한 모바일 IP 주소(IP 주소 전체 또는 일부분일 수 있음)가 이용될 수도 있다. 예를 들어, 서비스 사용자가 자신의 모바일 기기를 통해서 해당 온라인 서비스 서버로 접속하는 경우를 가정하면, 이때 이동통신사에 의해 동적으로 할당된 모바일 IP 주소를 시드값으로 이용할 수 있을 것이다.As another example, the dynamic allocation key may be a mobile IP address (which may be the entire IP address or a portion of the IP address) dynamically assigned by the mobile carrier to the mobile device owned by the service user. For example, assuming that a service user connects to the online service server through his or her mobile device, the mobile IP address dynamically assigned by the mobile carrier may be used as a seed value.

또한 이상에서는 시드값으로서 특정 값이 이용되는 경우를 중심으로 설명하였지만, 간편 인증번호 생성을 위한 시드값으로는 인증 서버(250)에서 자체적으로 랜덤하게 생성하는 랜덤값이 이용될 수도 있음은 물론이다.In addition, the above description focuses on the case where a specific value is used as the seed value, but of course, a random value randomly generated by the authentication server 250 itself can be used as the seed value for generating a simple authentication number. .

이에 따라, 인증 서버(250)의 간편 인증번호 생성부(253)는 상술한 바와 같은 적어도 하나의 시드값들을 이용하되, 시간 또는 시도 횟수(즉, 간편 인증번호 발급 시도 횟수)를 연산 조건으로 하여 간편 인증번호를 생성할 수 있다. 예를 들어, 간편 인증번호 생성부(253)는 상술한 적어도 하나의 시드값에 시간 또는 시도횟수를 곱한 값을 특정 해시 함수(hash function)에 따라 암호화한 값으로 생성될 수 있다. 이에 따라 간편 인증번호는 일회성을 갖는 값으로 생성될 수 있다.Accordingly, the simple authentication number generator 253 of the authentication server 250 uses at least one seed value as described above, but uses time or the number of attempts (i.e., the number of attempts to issue a simple authentication number) as a calculation condition. You can create a simple authentication number. For example, the simple authentication number generator 253 may generate a value obtained by multiplying at least one seed value described above by the time or number of attempts and encrypting it according to a specific hash function. Accordingly, the simple authentication number can be generated as a one-time value.

또한 여기서, 타임 OTP 방식은 연산 조건으로서 생성 시간을 이용하여 OTP를 생성하는 방식이다. 이에 의할 때, OTP는 결정된 특정 OTP 생성키에 연산 조건인 생성 시간을 곱한 값을 특정 해시 함수에 따라 암호화한 값으로 생성될 수 있다.Also, here, the time OTP method is a method of generating an OTP using the generation time as a calculation condition. Accordingly, the OTP can be generated as a value obtained by multiplying the determined specific OTP generation key by the generation time, which is an operation condition, and encrypting it according to a specific hash function.

상술한 바와 같이, 간편 인증번호가 생성되면, 인증 서버(250)는 통신 인터페이스부(251)를 통해서 앞선 단계 S6을 통해서 생성된 간편 인증번호를 온라인 서비스 서버(230)로 전달한다. 전달된 간편 인증번호는 도 1의 단계 S9에 따라 온라인 서비스 서버(230)에 의해 운영되는 온라인 서비스 사이트의 화면을 통해 사용자가 확인할 수 있도록 게시된다. 이에 관한 일 예가 도 4에 도시되고 있다. 도 4를 참조하면, 온라인 뱅킹 사이트의 우측의 인증번호 게시 화면을 통해서 간편 인증번호(도 4의 도면부호 30A 참조)가 게시되고 있음을 확인할 수 있다. 간편 인증번호가 화면 상에 게시된 이후, 사용자로부터의 확인이 완료되기 전까지는 승인 대기 상태가 지속될 수 있다[도 1의 단계 S10 참조].As described above, when the simple authentication number is generated, the authentication server 250 transmits the simple authentication number generated through the previous step S6 to the online service server 230 through the communication interface unit 251. The delivered simple authentication number is posted so that the user can check it through the screen of the online service site operated by the online service server 230 in step S9 of FIG. 1. An example of this is shown in FIG. 4. Referring to Figure 4, it can be seen that the simple authentication number (see reference numeral 30A in Figure 4) is being posted through the authentication number posting screen on the right side of the online banking site. After the simple authentication number is posted on the screen, the approval waiting state may continue until confirmation from the user is completed [see step S10 in FIG. 1].

또한, 도 1의 단계 S8을 참조하면, 인증 서버(250)는 통신 인터페이스부(251)를 통해서 간편 인증번호의 생성 조건이 서비스 사용자 소유의 모바일 기기(110)에 설치된 간편 인증기(220)로 전송되도록 한다.In addition, referring to step S8 of FIG. 1, the authentication server 250 sends the simple authentication number generation conditions to the simple authenticator 220 installed on the mobile device 110 owned by the service user through the communication interface unit 251. Let it be transmitted.

도 1에서 단계 S8의 간편 인증번호 생성 조건의 전송은 푸시 서버(260)를 통해서 수행되는 것으로 예시하고 있지만, 반드시 이와 같을 필요는 없으며, 인증 서버(250)에서 직접 간편 인증기(220)로 전송될 수도 있음은 물론이다. 또한, 도 1에서는 푸시 메시지를 통해서 간편 인증번호의 생성 조건을 전송하는 케이스를 중심으로 도시하였지만, 간편 인증번호 생성 조건의 전송은 소켓 데이터 통신에 의한 전송 방식에 의할 수도 있다.In Figure 1, the transmission of the simple authentication number generation conditions in step S8 is illustrated as being performed through the push server 260, but this does not necessarily need to be the case, and is transmitted directly from the authentication server 250 to the simple authenticator 220. Of course it could happen. In addition, although FIG. 1 focuses on the case of transmitting the simple authentication number generation conditions through a push message, the simple authentication number generation conditions may be transmitted through socket data communication.

푸시 서버(260)를 통해 간편 인증번호 생성 조건을 전송하는 경우, 인증 서버(250)는 그 생성 조건을 푸시 서버(260)로 전달하고, 이때 푸시 서버(260)는 푸시 메시지를 통해서 간편 인증번호 생성 조건을 간편 인증기(220)로 전송할 수 있다. 여기서, 푸시 메시지는 특정 모바일 운영체제에서 앱(App) 별로 제공하는 메시지 서비스일 수 있다. 다만, 간편 인증번호 생성 조건의 전송을 반드시 푸시 메시지에 의할 필요는 없음은 자명하며, SMS, MMS 등의 상용의 다양한 메시징 서비스에 의할 수도 있고, 특정 통신 프로토콜에 의하여도 무방하다. 간편 인증번호 생성 조건의 전송을 푸시 메시지에 의하지 않는 다른 예시적 케이스들에서, 전술한 푸시 서버(260)는 일반적인 통신 서버로서 그 기능이 대체될 수 있다.When transmitting the simple authentication number creation conditions through the push server 260, the authentication server 250 transmits the creation conditions to the push server 260, and at this time, the push server 260 sends the simple authentication number through a push message. The creation conditions can be transmitted to the simple authenticator 220. Here, the push message may be a message service provided for each app in a specific mobile operating system. However, it is obvious that the conditions for generating a simple authentication number do not necessarily have to be transmitted through a push message, and may be transmitted through various commercial messaging services such as SMS or MMS, or through a specific communication protocol. In other exemplary cases where the simple authentication number creation conditions are not transmitted through a push message, the above-described push server 260 can be replaced as a general communication server.

또한 도 1에서는 간편 인증번호 생성 조건이 간편 인증기(220)로 직접 전송되는 케이스를 중심으로 설명하였지만, 반드시 이와 같을 필요는 없다. 예를 들어, 간편 인증번호 생성 조건은 푸시 메시지 등을 통해서 모바일 기기(210)로 전송되고, 간편 인증기(220)가 이를 읽어들여 간편 인증번호 생성 조건을 수신(취득)할 수 있음은 자명하다. 이러한 간편 인증번호 생성 조건의 수신은 간편 인증기(220)의 통신 인터페이스부(221)에 의해 이루어질 수 있다.In addition, although the explanation in FIG. 1 focuses on the case where the simple authentication number generation conditions are directly transmitted to the simple authenticator 220, this does not necessarily need to be the case. For example, it is obvious that the simple authentication number generation conditions are transmitted to the mobile device 210 through a push message, etc., and the simple authenticator 220 can read them and receive (acquire) the simple authentication number generation conditions. . Reception of these simple authentication number generation conditions can be accomplished by the communication interface unit 221 of the simple authentication device 220.

상술한 도 1의 단계 S8을 통해 전송될 간편 인증번호 생성 조건은, 도 1의 단계 S6에서 간편 인증번호의 생성에 활용된 시드값 및 연산 조건 전부일 수도 있지만, 그 일부 일 수도 있다. 예를 들어, 인증 서버(250)와 간편 인증기(220)가 각각 간편 인증번호 생성에 활용되는 시드값 및 연산 조건 중 일부를 사전에 보관하고 이를 공통적으로 사용하는 경우라면, 그와 같이 사전 보관된 조건은 별도로 전송해줄 필요가 없기 때문이다.The simple authentication number generation conditions to be transmitted through step S8 of FIG. 1 described above may be all of the seed value and calculation conditions used to generate the simple authentication number in step S6 of FIG. 1, or may be a part of them. For example, if the authentication server 250 and the simple authenticator 220 each store in advance some of the seed values and calculation conditions used to generate the simple authentication number and use them in common, they are stored in advance as such. This is because there is no need to transmit the specified conditions separately.

이에 따라, 간편 인증기(220)는 수신한 생성 조건을 이용하여 온라인 서비스 서버(230)의 온라인 서비스 사이트 화면을 통해 표출된 간편 인증번호의 검증을 위한 검증용 인증번호를 생성할 수 있다[도 1의 단계 S11 참조]. 이와 같은 검증용 인증번호의 생성은 간편 인증기(220)의 검증용 인증번호 생성부(223)에 의해 수행될 수 있다.Accordingly, the simple authenticator 220 can use the received generation conditions to generate a verification authentication number for verification of the simple authentication number displayed through the online service site screen of the online service server 230 [Figure See step S11 of 1]. Generation of such a verification authentication number can be performed by the verification authentication number generator 223 of the simple authenticator 220.

이와 같이 생성된 검증용 인증번호는 간편 인증기(220)의 인증번호 표출부(227)을 통해서 모바일 기기(210)의 앱 화면을 통해 표시될 수 있다. 이때, 앱 화면을 통해 검증용 인증번호(도 5의 도면부호 30B 참조)가 표출된 예가 도 5에 도시되고 있다.The verification authentication number generated in this way can be displayed on the app screen of the mobile device 210 through the authentication number display unit 227 of the simple authenticator 220. At this time, an example of the authentication number for verification (see reference numeral 30B in FIG. 5) displayed through the app screen is shown in FIG. 5.

이상에서 전술한 단계 S7 ~ 단계 S11은, 반드시 도 1에 도시된 순서에 한정될 필요는 없으며, 서로 선후를 달리하거나 동시에 이루어질 수도 있다.Steps S7 to S11 described above are not necessarily limited to the order shown in FIG. 1, and may be performed in different order or simultaneously.

상술한 과정을 통해서 앱 화면을 통해서 검증용 인증번호가 표출되면, 사용자는 이와 같이 표출된 검증용 인증번호와 온라인 서비스 사이트 화면을 통해 표출된 간편 인증번호 간을 비교함으로써 해당 온라인 서비스 서버가 진정한 서비스 서버임(즉, 서비스 서버의 진위)을 판별해낼 수 있다.When the authentication number for verification is displayed through the app screen through the above-mentioned process, the user compares the authentication number for verification displayed in this way and the simple authentication number displayed through the online service site screen to confirm that the online service server is providing the true service. It is possible to determine whether it is a server (i.e., the authenticity of the service server).

비교 결과, 간편 인증번호와 검증용 인증번호가 일치하는 경우, 사용자는 도 5에 도시된 앱 화면 상의 승인 버튼을 선택함으로써, 해당 서비스에 관한 승인 처리(즉, 해당 온라인 서비스 서버가 진정한 서비스 서버임을 검증 완료 처리)를 할 수 있다[도 1의 단계 S12 참조].As a result of the comparison, if the simple authentication number and the verification authentication number match, the user selects the approval button on the app screen shown in Figure 5 to process approval for the service (i.e., confirms that the online service server is a true service server) Verification completion processing) can be performed [see step S12 in FIG. 1].

도 5에서는 앱 화면에 표출된 검증용 인증번호의 하단에 해당 서비스에 대한 승인 처리를 할 수 있는 승인 버튼이 구비된 경우를 예시하였지만, 이 외에도 다양한 변형이 가능함은 물론이다. 예를 들어, 해당 서비스에 대한 승인 또는 취소 처리는 사용자의 특정 제스처에 의할 수도 있다. 예를 들어, 사용자가 모바일 기기의 앱 화면을 위쪽 방향으로 밀어올리는 터치 제스처를 취하면 승인 처리되고, 아래쪽 방향으로 밀어 내리는 터치 제스처를 취하면 취소 처리되도록 구현될 수도 있는 것이다.Figure 5 illustrates a case in which an approval button for approving the corresponding service is provided at the bottom of the authentication number for verification displayed on the app screen, but of course, various other variations are possible. For example, approval or cancellation processing for the service may be performed by a specific gesture of the user. For example, it may be implemented so that when a user makes a touch gesture that pushes the app screen of a mobile device upward, it is approved, and when a user makes a touch gesture that pushes down the app screen, it is canceled.

상술한 바와 같이, 해당 서비스에 관한 승인이 이루어지는 경우, 간편 인증기(220)의 추가 검증값 생성부(225)는 추가 검증값을 생성하고, 이를 통신 인터페이스부(221)를 통해서 인증 서버(250)로 전송한다[도 1의 단계 S12 및 단계 S13 참조].As described above, when approval for the service is made, the additional verification value generation unit 225 of the simple authenticator 220 generates an additional verification value, and sends it to the authentication server 250 through the communication interface unit 221. ) (see steps S12 and S13 in FIG. 1).

여기서, 추가 검증값은 사용자 인증을 위한 용도로서 사용된다. 즉, 본 발명의 실시예에서는 간편 인증번호의 검증을 통해서 해당 서비스의 진위 여부를 먼저 확인한 이후에, 추가 검증값을 통해서 해당 서비스를 이용하고자 하는 사용자가 정당한 사용자인지 여부를 확인하는 방식이 이용된다. 특이한 점은, 본 발명의 실시예에 의할 때, 사용자 인증을 위한 추가 검증값은 앞선 간편 인증번호의 검증을 통한 승인 처리가 완료됨과 동시에 간편 인증기(220)에 의해 자동으로 생성되어 곧바로 인증 서버(250)로 전달된다는 점이다. 이에 의하면, 사용자 인증 과정에서 사용자가 그 사용자 인증값을 온라인 서비스 서버로 직접 입력해야 하는 불편함을 없앨 수 있다.Here, the additional verification value is used for user authentication. That is, in the embodiment of the present invention, the authenticity of the service is first confirmed through verification of the simple authentication number, and then the authenticity of the service is confirmed through additional verification values to confirm whether the user who wants to use the service is a legitimate user. . What is unique is that, according to the embodiment of the present invention, the additional verification value for user authentication is automatically generated by the simple authenticator 220 at the same time that the approval process through verification of the previous simple authentication number is completed and is immediately authenticated. It is transmitted to the server 250. Accordingly, the inconvenience of having to input the user authentication value directly into the online service server during the user authentication process can be eliminated.

이때, 추가 검증값은 다양한 방법으로 생성될 수 있다. 추가 검증값의 생성 방법은 앞서 설명한 간편 인증번호의 생성 방식들과 본질적으로 상이하지 않을 것이므로, 이에 관한 구체적인 설명은 생략하기로 한다. 물론, 추가 검증값의 생성은 앞서 설명한 간편 인증번호의 생성 방식을 따를 필요는 없으며, 시스템에서 정의하는 사전 지정된 조건에 따라 생성하여도 무방하다. 그 생성 방식은 후술할 인증 서버(250)에서의 확인용 검증값(즉, 위 추가 검증값에 대응되게 생성된 검증값)의 생성에도 동일하게 적용될 것이다. 따라서, 추가 검증값의 생성 과정에서 인증 서버(250)에 보관되지 않은 정보가 활용된 경우, 해당 정보도 도 1의 단계 S13을 통해서 인증 서버(250)로 전달될 필요는 있다.At this time, additional verification values can be generated in various ways. Since the method of generating additional verification values will not be essentially different from the methods of generating simple authentication numbers described above, detailed descriptions thereof will be omitted. Of course, the creation of additional verification values does not need to follow the simple authentication number generation method described above, and may be generated according to pre-specified conditions defined by the system. The generation method will be equally applied to the generation of verification values (i.e., verification values generated to correspond to the above additional verification values) in the authentication server 250, which will be described later. Therefore, when information not stored in the authentication server 250 is used in the process of generating additional verification values, the information also needs to be transmitted to the authentication server 250 through step S13 in FIG. 1.

또한 도 1에서는 단계 S13에 따른 추가 검증값의 전송이 푸시 서버(260)를 경유하여 이루어지는 것으로 도시되고 있지만, 반드시 이에 의할 필요는 없으며, 인증 서버(250)로 직접 전송되는 방식에 의해도 무방하다.In addition, in Figure 1, the transmission of the additional verification value according to step S13 is shown as being carried out via the push server 260, but this is not necessarily required, and may be transmitted directly to the authentication server 250. do.

이에 따라, 인증 서버(250)의 확인용 검증값 생성부(255)는 전송된 추가 검증값을 검증하기 위한 확인용 검증값을 생성하고, 인증 서버(250)의 인증 처리부(257)는 생성된 확인용 검증값과 전송된 추가 검증값 간의 일치 여부를 비교함으로써 해당 서비스 사용자에 대한 사용자 인증을 수행할 수 있다[도 1의 단계 S14 참조]. 이때, 인증 결과는 온라인 서비스 서버(230)로 통보되며[도 1의 단계 S15 참조], 인증이 정상적으로 이루어진 경우 온라인 서비스 서버(230)는 해당 서비스 사용자에게 해당 서비스를 개시할 수 있다[도 1의 단계 S16 참조].Accordingly, the verification value generation unit 255 of the authentication server 250 generates a verification value for verification to verify the transmitted additional verification value, and the authentication processing unit 257 of the authentication server 250 generates the generated verification value. User authentication can be performed for the service user by comparing the match between the confirmation verification value and the transmitted additional verification value [see step S14 in FIG. 1]. At this time, the authentication result is notified to the online service server 230 [see step S15 in FIG. 1], and if authentication is successfully completed, the online service server 230 can initiate the service to the service user [see step S15 in FIG. 1]. See step S16].

상술한 바에 따르는 본 발명의 실시예에 의하면, 서비스 사용자는 간편 인증번호를 통한 서비스 검증만을 하면 되고 이후의 사용자 인증 과정은 자동으로 수행되므로, 사용자 인증번호 입력 과정이 생략될 수 있어, 전체 인증 절차가 간결하고 편리해지는 효과가 있다.According to the embodiment of the present invention according to the above, the service user only needs to verify the service through a simple authentication number, and the subsequent user authentication process is automatically performed, so the user authentication number input process can be omitted, and the entire authentication process It has the effect of being concise and convenient.

이상에서는 도 1의 단계 S12를 통해 해당 서비스가 정상 승인되는 경우를 중심으로 설명하였다. 그러나 만일 도 1의 단계 S12를 통해 해당 서비스가 사용자에 의해 승인 불허되는 경우, 간편 인증기(220)는 도 1의 단계 S13을 통해 승인 불허 통지를 할 수 있다.The above description focuses on the case where the service is normally approved through step S12 in FIG. 1. However, if the service is disapproved by the user through step S12 of FIG. 1, the simple authenticator 220 may notify of disapproval through step S13 of FIG. 1.

또한 본 발명의 실시예에 의하면, 인증 서버(250)는 서비스 사용자에 의한 온라인 서비스 서버로의 접속 시도에 따라 간편 인증번호가 생성된 이후, 그 간편 인증번호에 관한 검증 유효시간(예를 들어, 60초) 동안 또는 사용자에 의한 서비스 검증이 완료되기 전까지, 그 생성된 간편 인증번호를 그대로 유지할 수 있다. 이에 관하여 도 6을 참조하여 설명하면 다음과 같다.In addition, according to an embodiment of the present invention, the authentication server 250 generates a simple authentication number according to an attempt to connect to the online service server by the service user, and then generates a verification validity time (e.g., verification validity time) for the simple authentication number. The generated simple authentication number can be maintained for 60 seconds) or until service verification by the user is completed. This will be explained with reference to FIG. 6 as follows.

도 6을 참조하면, 정상적인 사용자에 의한 서비스 접속에 따라 간편 인증번호가 생성된 이후, 해당 사용자의 사용자 계정 정보를 탈취한 해커에 의한 후순위 접속이 이루어진 경우[도 6의 단계 S21 참조], 온라인 서비스 서버(230)에 의한 간편 인증번호의 생성 요청이 추가 접수되더라도[도 6의 단계 S22 참조], 인증 서버(250)는 인증번호의 재생성을 금지하고 있다[도 6의 단계 S23 참조].Referring to FIG. 6, after a simple authentication number is generated upon service access by a normal user, when a subsequent access is made by a hacker who has stolen the user's user account information [see step S21 in FIG. 6], the online service Even if an additional request for generating a simple authentication number is received by the server 230 (see step S22 in FIG. 6), the authentication server 250 prohibits regeneration of the authentication number (see step S23 in FIG. 6).

이와 같이, 인증 서버(250)는 간편 인증번호의 검증 유효시간 동안 또는 상기 온라인 서비스 서버에 관한 검증이 완료되기 전까지는 선순위 접속에 따라 생성된 간편 인증번호를 그대로 유지하거나 또는 후순위 접속에 따른 간편 인증번호의 신규 생성을 금지할 수 있다. 이와 같은 후순위 접속자에 대해서는 도 7과 같이 온라인 서비스 사이트의 화면을 통해서 중복 접속이 불가함을 안내하는 화면(도 7의 도면부호 30C 참조)이 표출될 수 있다. 이에 의하면, 해커에 의한 후순위 접속에 따른 불법적인 사용자 인증 및 이에 의한 정보 탈취를 방지할 수 있다.In this way, the authentication server 250 maintains the simple authentication number generated according to priority access during the verification validity period of the simple authentication number or until verification of the online service server is completed, or simple authentication according to secondary access. The creation of new numbers can be prohibited. For such low-priority accessors, a screen (see reference numeral 30C in FIG. 7) informing them that duplicate access is not possible may be displayed through the screen of the online service site, as shown in FIG. 7. According to this, it is possible to prevent illegal user authentication and information theft due to low-priority access by hackers.

이상에서는 사용자가 자신 소유의 모바일 기기와 별개의 클라이언트 단말을 통해서 온라인 서비스 서버에 접속한 케이스를 중심으로 설명하였다. 그러나 간편 인증기가 설치된 모바일 기기를 이용해서 직접 온라인 서비스 서버에 접속할 수도 있음은 앞서도 설명한 바이다. 이러한 경우, 간편 인증번호와 검증용 인증번호는 도 8 및 도 9에 도시된 바와 같이 모바일 기기의 화면을 통해 표출될 수 있다. 도 8을 참조하면, 간편 인증기(220)에 의한 앱 화면이 모바일 기기의 화면 상단부(40A)에 표출되고, 온라인 서비스 서버(230)에 의해 제공되는 사이트 화면이 모바일 기기의 화면 하단부(40B)에 표출되고 있다. 그리고 그 화면 화단부(40B)에는 간편 인증번호(40C)가 표출되고 있다. 또한, 도 9를 참조하면, 그 화면 상단부(40A)에 간편 인증기(220)에 의해 생성되는 검증용 인증번호(40D)가 표출되고 있다. 이와 같이 간편 인증기가 설치된 모바일 기기를 이용하여 직접 온라인 서비스 서버에 접속하는 경우에는, 간편 인증기에 의한 앱 화면과 온라인 서비스 서버에 의한 사이트 화면이 서로 다른 화면 영역에 분리되어 표출될 수 있다. 이러한 예로서, 특히 도 8 및 도 9에는 앱 화면이 사이트 화면 상부에 띄워진 형태로 표출(즉, layered type의 화면 표출)되는 경우를 도시하고 있지만, 화면 분할 방식은 이 외에도 다양한 방식이 적용될 수 있음은 물론이다.The above explanation focuses on the case where the user accesses the online service server through a client terminal separate from the user's own mobile device. However, as previously explained, it is possible to directly access the online service server using a mobile device with a simple authenticator installed. In this case, the simple authentication number and the authentication number for verification may be displayed on the screen of the mobile device as shown in FIGS. 8 and 9. Referring to FIG. 8, the app screen by the simple authenticator 220 is displayed at the upper part 40A of the screen of the mobile device, and the site screen provided by the online service server 230 is displayed at the lower part 40B of the screen of the mobile device. It is expressed in . And a simple authentication number (40C) is displayed at the bottom of the screen (40B). Also, referring to FIG. 9, the authentication number 40D for verification generated by the simple authenticator 220 is displayed at the upper part 40A of the screen. In this way, when directly accessing the online service server using a mobile device with a simple authenticator installed, the app screen by the simple authenticator and the site screen by the online service server may be displayed separately in different screen areas. As an example of this, in particular, Figures 8 and 9 show a case where the app screen is displayed in a floating form at the top of the site screen (i.e., a layered type screen display), but various other screen division methods can be applied. Of course it exists.

본 발명의 실시 예에 따른 방법 및 장치는 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다.The method and device according to embodiments of the present invention may be implemented in the form of program instructions that can be executed through various computer means and recorded on a computer-readable medium. Computer-readable media may include program instructions, data files, data structures, etc., singly or in combination.

컴퓨터 판독 가능 매체에 기록되는 프로그램 명령은 본 발명을 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 분야 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media) 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다.Program instructions recorded on a computer-readable medium may be specially designed and constructed for the present invention or may be known and usable by those skilled in the computer software field. Examples of computer-readable recording media include magnetic media such as hard disks, floppy disks, and magnetic tapes, optical media such as CD-ROMs and DVDs, and magnetic media such as floptical disks. -Includes magneto-optical media and hardware devices specifically configured to store and execute program instructions, such as ROM, RAM, flash memory, etc. Examples of program instructions include machine language code, such as that produced by a compiler, as well as high-level language code that can be executed by a computer using an interpreter, etc.

상술한 하드웨어 장치는 본 발명의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.The hardware devices described above may be configured to operate as one or more software modules to perform the operations of the present invention, and vice versa.

이상에서는 본 발명의 실시예를 참조하여 설명하였지만, 해당 기술 분야에서 통상의 지식을 가진 자라면 하기의 특허 청구의 범위에 기재된 본 발명의 사상 및 영역으로부터 벗어나지 않는 범위 내에서 본 발명을 다양하게 수정 및 변경시킬 수 있음을 쉽게 이해할 수 있을 것이다.Although the present invention has been described above with reference to embodiments, those skilled in the art can modify the present invention in various ways without departing from the spirit and scope of the present invention as set forth in the claims below. It will be easy to understand that and can be changed.

Claims (1)

온라인 서비스 서버와 서비스 사용자 간의 상호 인증을 수행하는 컴퓨터 구현 방법(computer implemented method)으로서,
(a) 인증 서버가, 상기 온라인 서버로부터 상기 온라인 서버에 접속하는 서비스 사용자의 사용자 계정 정보를 포함하는 간편 인증번호 생성 요청이 수신됨에 따라 간편 인증번호를 생성하는 단계;
(b) 상기 인증 서버가, 상기 간편 인증번호의 생성에 사용된 생성 조건을 상기 사용자 계정 정보에 상응하는 사용자의 간편 인증기로 전송하는 단계;
(c) 상기 간편 인증기가, 상기 간편 인증번호의 생성 조건을 이용하여 상기 간편 인증번호에 대응되는 검증용 인증번호를 생성하는 단계; 및
(d) 상기 인증 서버가, 상기 간편 인증번호 및 상기 검증용 인증번호를 통한 상기 온라인 서비스 서버에 관한 검증이 완료됨에 따라 상기 간편 인증기로부터 전달되는 추가 검증값에 대응하여 대응 검증값을 생성하고, 상기 추가 검증값과 상기 대응 검증값 간의 일치 여부를 비교함으로써 해당 서비스 사용자에 대한 인증을 수행하는 단계
를 포함하는 상호 인증을 위한 컴퓨터 구현 방법.
As a computer implemented method for performing mutual authentication between an online service server and a service user,
(a) the authentication server generating a simple authentication number when a request for generating a simple authentication number containing user account information of a service user accessing the online server is received from the online server;
(b) transmitting, by the authentication server, the generation conditions used to generate the simple authentication number to the user's simple authenticator corresponding to the user account information;
(c) generating, by the simple authenticator, an authentication number for verification corresponding to the simple authentication number using the generation conditions of the simple authentication number; and
(d) The authentication server generates a corresponding verification value in response to the additional verification value transmitted from the simple authenticator as verification of the online service server through the simple authentication number and the verification authentication number is completed, and , performing authentication for the service user by comparing whether the additional verification value matches the corresponding verification value.
A computer implemented method for mutual authentication comprising:
KR1020240021480A 2015-12-28 2024-02-15 Cross authentication method and system between online service server and client KR20240023589A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020240021480A KR20240023589A (en) 2015-12-28 2024-02-15 Cross authentication method and system between online service server and client

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
KR20150187986 2015-12-28
KR1020220173336A KR20220167366A (en) 2015-12-28 2022-12-13 Cross authentication method and system between online service server and client
KR1020240021480A KR20240023589A (en) 2015-12-28 2024-02-15 Cross authentication method and system between online service server and client

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
KR1020220173336A Division KR20220167366A (en) 2015-12-28 2022-12-13 Cross authentication method and system between online service server and client

Publications (1)

Publication Number Publication Date
KR20240023589A true KR20240023589A (en) 2024-02-22

Family

ID=59354346

Family Applications (5)

Application Number Title Priority Date Filing Date
KR1020160054404A KR20170077759A (en) 2015-12-28 2016-05-03 Cross authentication method and system between online service server and client
KR1020180039211A KR20180039037A (en) 2015-12-28 2018-04-04 Cross authentication method and system between online service server and client
KR1020210123680A KR20210116407A (en) 2015-12-28 2021-09-16 Cross authentication method and system between online service server and client
KR1020220173336A KR20220167366A (en) 2015-12-28 2022-12-13 Cross authentication method and system between online service server and client
KR1020240021480A KR20240023589A (en) 2015-12-28 2024-02-15 Cross authentication method and system between online service server and client

Family Applications Before (4)

Application Number Title Priority Date Filing Date
KR1020160054404A KR20170077759A (en) 2015-12-28 2016-05-03 Cross authentication method and system between online service server and client
KR1020180039211A KR20180039037A (en) 2015-12-28 2018-04-04 Cross authentication method and system between online service server and client
KR1020210123680A KR20210116407A (en) 2015-12-28 2021-09-16 Cross authentication method and system between online service server and client
KR1020220173336A KR20220167366A (en) 2015-12-28 2022-12-13 Cross authentication method and system between online service server and client

Country Status (1)

Country Link
KR (5) KR20170077759A (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102153793B1 (en) * 2018-08-27 2020-09-08 (주)이스톰 Method and system for providing automatic inquiry service of user id
KR102385342B1 (en) * 2020-12-24 2022-04-08 정한영 Time-Synchronization Cryptosystem

Also Published As

Publication number Publication date
KR20180039037A (en) 2018-04-17
KR20220167366A (en) 2022-12-20
KR20210116407A (en) 2021-09-27
KR20170077759A (en) 2017-07-06

Similar Documents

Publication Publication Date Title
US9529985B2 (en) Global authentication service using a global user identifier
US9537661B2 (en) Password-less authentication service
EP3266181B1 (en) Identification and/or authentication system and method
JP6170158B2 (en) Mobile multi single sign-on authentication
US8769289B1 (en) Authentication of a user accessing a protected resource using multi-channel protocol
JP6498358B2 (en) Integrated authentication system that authenticates using disposable random numbers
CA3035817A1 (en) System and method for decentralized authentication using a distributed transaction-based state machine
KR101451359B1 (en) User account recovery
CN113474774A (en) System and method for approving a new validator
CN114662079A (en) Method and system for accessing data from multiple devices
US11539524B1 (en) Software credential token process, software, and device
JP2017519412A (en) Enhanced security for authentication device registration
KR20240023589A (en) Cross authentication method and system between online service server and client
US9894062B2 (en) Object management for external off-host authentication processing systems
US9906516B2 (en) Security system for preventing further access to a service after initial access to the service has been permitted
KR101879843B1 (en) Authentication mehtod and system using ip address and short message service
TW202207667A (en) Authentication and validation procedure for improved security in communications systems
KR102313868B1 (en) Cross authentication method and system using one time password
KR102284876B1 (en) System and method for federated authentication based on biometrics
KR101835718B1 (en) Mobile authentication method using near field communication technology
KR101545897B1 (en) A server access control system by periodic authentification of the smart card
KR101879842B1 (en) User authentication method and system using one time password
CN112970017A (en) Secure linking of devices to cloud storage
KR101312358B1 (en) System and method for providing software OTP using hardware information
TW202127289A (en) Method for cross-platform authorizing access to resources and authorization system thereof

Legal Events

Date Code Title Description
A107 Divisional application of patent
E902 Notification of reason for refusal