KR20120134942A - 인증 에이전트 장치, 온라인 서비스 인증 방법 및 시스템 - Google Patents

인증 에이전트 장치, 온라인 서비스 인증 방법 및 시스템 Download PDF

Info

Publication number
KR20120134942A
KR20120134942A KR1020110054198A KR20110054198A KR20120134942A KR 20120134942 A KR20120134942 A KR 20120134942A KR 1020110054198 A KR1020110054198 A KR 1020110054198A KR 20110054198 A KR20110054198 A KR 20110054198A KR 20120134942 A KR20120134942 A KR 20120134942A
Authority
KR
South Korea
Prior art keywords
authentication
service
token
server
user
Prior art date
Application number
KR1020110054198A
Other languages
English (en)
Other versions
KR101273285B1 (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 KR1020110054198A priority Critical patent/KR101273285B1/ko
Priority to PCT/KR2011/006789 priority patent/WO2012165716A1/en
Priority to TW101109327A priority patent/TW201251413A/zh
Publication of KR20120134942A publication Critical patent/KR20120134942A/ko
Application granted granted Critical
Publication of KR101273285B1 publication Critical patent/KR101273285B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/321Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving a third party or a trusted authority
    • H04L9/3213Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving a third party or a trusted authority using tickets or tokens, e.g. Kerberos
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/0807Network architectures or network communication protocols for network security for authentication of entities using tickets, e.g. Kerberos

Abstract

포털 서버 및 서비스 서버와 통신 연결되는 인증 에이전트를 통한 온라인 서비스 인증 방법으로서, 상기 포털 서버로부터 시드 데이터가 수신될 때마다, 새로운 인증 키를 이용하여 인증 토큰을 생성하는 단계; 상기 생성된 인증 토큰을 상기 포털 서버로 전송하는 단계; 상기 검증 데이터 및 상기 검증 데이터에 포함된 사용자 식별 정보에 상응하는 인증 키를 참조하여, 검증 토큰을 생성하는 단계; 및 상기 서비스 서버로부터 수신된 인증 토큰과 상기 검증 토큰의 일치 여부에 따라, 상기 인증 시도에 관한 인증 확인 결과를 상기 서비스 서버로 전송하는 단계를 포함하는, 온라인 서비스 인증 방법이 제공된다.

Description

인증 에이전트 장치, 온라인 서비스 인증 방법 및 시스템{AUTHENTIFICATION AGENT AND METHOD FOR AUTHENTIFICATING ONLINE SERVICE AND SYSTEM THEREOF}
본 발명은 온라인 서비스 인증에 관한 것으로서, 보다 상세하게는 그 온라인 서비스 인증을 대행하는 인증 에이전트 및 온라인 서비스 인증 방법, 그 온라인 서비스 인증 시스템에 관한 것이다.
고속 인터넷 통신 환경의 급속한 확대에 따라, 사용자들은 특별한 시공간적 제약 없이, 게임 서비스, 음악 서비스, 동영상 서비스 등 다양한 콘텐츠 및 멀티미디어 서비스를 온라인 상에서 제공받을 수 있게 되었다.
이러한 온라인 서비스는 임의의 서비스 프로바이더(service provider)에 의해서 제공될 수도 있지만, 이때 제공되는 온라인 서비스의 종류 및 개수는 매우 한정적일 수 밖에 없다. 따라서 최근에는 다양한 온라인 서비스를 하나의 웹 사이트를 통해 제공받을 수 있도록 중계해주는 온라인 서비스 포털이 사용자들에게 더 선호되고 있다.
이러한 온라인 서비스 포털로서 대표적인 예는 피망 웹과 같은 게임 포털이다. 이러한 경우 게임 유저들은 로그인 절차를 거쳐 해당 게임 포털에 접속함으로써, 그 게임 포털에서 제공하는 다양한 게임 서비스를 즐길 수 있게 된다. 이때, 게임 서비스의 이용을 위해서는, 해당 게임 유저가 정당한 게임 이용 권한을 갖는 사용자인지를 인증할 필요가 있다.
그러나 종래 기술에 의하면, 온라인 서비스 이용에 관한 사용자 인증시 해쉬(hash)에 필요한 패스워드가 포털 서버(예를 들어, 게임 포털 서버)와 해당 온라인 서비스를 실제 제공하는 서비스 서버(예를 들어, 게임 서버)의 프로그램 로직에 설정되고 있다. 따라서, 해당 패스워드가 외부로 유출될 가능성이 존재한다.
또한, 이러한 패스워드를 최초 게임 오픈 시점에 한번 세팅한 이후 장기간 동안 변경되지 않는 경우, 그 사이 해커들이 인증 해쉬값(이하, 이를 간단히 '인증 토큰'이라 함)을 해독함으로써 해당 패스워드를 알아낼 가능성이 크다. 이 경우 해커들은 알아낸 패스워드를 이용하여 인증 토큰을 직접 생성해냄으로써, 포털 서버를 거치지 않고서도 해당 온라인 서비스를 제한 없이 이용할 수 있게 된다.
또한, 이를 방지하기 위해, 상기 패스워드를 정기적으로 교체하는 방법도 가능하지만, 이러한 경우 포털 서버 및 서비스 서버 모두가 동 시간대에 온라인 서비스를 중지하고 해당 교체 작업을 하여야 한다. 따라서 서비스 제공자 입장에서도 많은 손실을 입게 됨을 물론, 사용자 입장에서도 큰 불편함을 감수하여야 하는 문제점이 있다.
본 발명은 온라인 서비스에 대한 사용자 인증을 대행하는 인증 에이전트 장치 및 이를 통한 온라인 서비스 인증 방법, 그 시스템을 제공한다.
본 발명은 인증 토큰의 생성에 이용될 인증 키(패스워드)의 유출 및 해킹을 방지할 수 있는 온라인 서비스 인증 방법 및 시스템, 이를 위한 인증 에이전트 장치를 제공한다.
본 발명의 일 측면에 따르면, 포털 서버 및 서비스 서버와 통신 연결되는 인증 에이전트를 통한 온라인 서비스 인증 방법으로서,
상기 포털 서버로부터 시드 데이터(seed data)가 수신될 때마다, 새로운 인증 키를 이용하여 인증 토큰을 생성하는 단계-여기서, 상기 시드 데이터는, 상기 포털 서버를 통해 온라인 서비스를 요청한 사용자에 관한 사용자 식별 정보를 포함하며, 온라인 서비스에 대한 사용자 인증에 이용되는 인증 토큰의 생성에 이용됨-; 상기 생성된 인증 토큰을 상기 포털 서버로 전송하는 단계-여기서, 상기 인증 토큰은 사용자 인증을 위해 상기 포털 서버에서 상기 서비스 서버로 전송됨 상기 검증 데이터 및 상기 검증 데이터에 포함된 사용자 식별 정보에 상응하는 인증 키를 참조하여, 검증 토큰을 생성하는 단계-여기서, 상기 검증 데이터는, 상기 사용자 인증을 시도한 사용자에 관한 사용자 식별 정보를 포함함-; 및 상기 서비스 서버로부터 수신된 인증 토큰과 상기 검증 토큰의 일치 여부에 따라, 상기 인증 시도에 관한 인증 확인 결과를 상기 서비스 서버로 전송하는 단계를 포함하는, 온라인 서비스 인증 방법이 제공된다.
본 발명의 다른 측면에 따르면, 상기 온라인 서비스 인증 방법을 실행하기 위한 프로그램이 기록되고 컴퓨터로 판독 가능한 기록 매체가 제공된다.
본 발명의 또 다른 측면에 따르면, 포털 서버 및 서비스 서버와 통신 연결되는 인증 에이전트 장치로서,
상기 포털 서버로부터 시드 데이터를 수신하고, 상기 서비스 서버로부터 인증 토큰 및 검증 데이터를 수신하는 수신부-여기서, 상기 시드 데이터는 상기 포털 서버를 통해 온라인 서비스를 요청한 사용자에 관한 사용자 식별 정보를 포함하고 인증 토큰의 생성에 이용되며, 상기 검증 데이터는 온라인 서비스에 대한 사용자 인증을 시도한 사용자에 관한 사용자 식별 정보를 포함함-; 상기 시드 데이터가 수신될 때마다 새로운 인증 키를 이용하여 인증 토큰을 생성하고, 상기 검증 데이터 및 상기 검증 데이터에 포함된 사용자 식별 정보에 상응하는 인증 키를 참조하여 검증 토큰을 생성하는 토큰 생성부 상기 서비스 서버로부터 수신된 인증 토큰과 상기 검증 토큰의 일치 여부에 따라, 상기 인증 시도에 관한 인증 확인 결과를 생성하는 인증 결과 생성부 및 상기 인증 확인 결과를 상기 서비스 서버로 전송하고, 상기 시드 데이터가 수신됨에 따라 생성된 인증 토큰을 상기 포털 서버로 전송하는 전송부를 포함하는, 인증 에이전트 장치가 제공된다.
본 발명의 또 다른 측면에 따르면, 온라인 서비스 인증 시스템으로서,
클라이언트 단말로부터 온라인 서비스 요청을 수신하는 경우, 시드 데이터를 획득하는 포털 서버- 여기서, 상기 시드 데이터는, 상기 포털 서버를 통해 온라인 서비스를 요청한 사용자에 관한 사용자 식별 정보를 포함하며, 온라인 서비스에 대한 사용자 인증에 이용되는 인증 토큰의 생성에 이용됨-; 및 상기 포털 서버로부터 상기 시드 데이터가 수신될 때마다 새로운 인증 키를 이용하여 인증 토큰을 생성하고, 상기 생성된 인증 토큰을 상기 포털 서버로 전송하고, 상기 온라인 서비스를 제공하는 서비스 서버로부터 인증 토큰 및 검증 데이터가 수신되는 경우, 상기 검증 데이터 및 상기 검증 데이터에 포함된 사용자 식별 정보에 상응하는 인증 키를 참조하여 검증 토큰을 생성하고, 상기 서비스 서버로부터 수신된 인증 토큰과 상기 검증 토큰의 일치 여부에 따라 상기 온라인 서비스에 대한 사용자의 인증 시도에 관한 인증 확인 결과를 상기 서비스 서버로 전송하는 인증 에이전트 장치를 포함하는, 온라인 서비스 인증 시스템이 제공된다.
본 발명의 실시예에 의하면, 인증 토큰의 생성에 이용될 인증 키(패스워드)의 유출 및 해킹을 방지할 수 있는 효과가 있다.
본 발명의 실시예에 의하면, 온라인 서비스 인증에 이용될 인증 키의 교체 및 인증 프로세스의 변경 과정에 소요되는 시간 및 노력, 비용을 크게 줄일 수 있는 효과 있다.
본 발명의 실시예에 의하면, 포털 서버와 서비스 서버에서 온라인 서비스 인증 프로세스를 별도로 구축할 필요가 없어, 포털 서버와 서비스 서버 간에 존재할 수 있는 인증 프로세스 불일치 문제를 방지할 수 있는 효과가 있다.
본 발명의 실시예에 의하면, 비정상적인 인증 시도를 원천적으로 차단함으로써 포털 서버 및 서비스 서버의 서버 자원 및 네트워크 자원을 보다 효율적으로 사용할 수 있는 효과가 있다.
도 1은 본 발명의 실시예에 따른 온라인 서비스 인증 시스템을 설명하기 위한 도면.
도 2는 본 발명의 실시예에 따른 온라인 서비스 인증 과정 전반을 설명하기 위한 도면.
도 3은 클라이언트 단말에 의한 온라인 서비스 요청 및 인증 시도 과정을 예시한 도면.
도 4는 본 발명의 실시예에 따른 인증 에이전트 장치의 블록 구성도.
도 5는 게임 포털 서버로부터 시드 데이터를 수신함에 따라, 인증 에이전트 장치에서의 인증 토큰 생성 과정을 예시한 도면.
도 6은 게임 서버로부터 수신된 인증 토큰에 대한, 인증 에이전트 장치에서의 인증 확인 과정을 예시한 도면.
도 7은 인증 기준 시간과 서비스 기준 시간의 비교를 통한, 인증 에이전트 장치에서의 인증 확인 과정을 예시한 도면.
도 8은 본 발명의 실시예에 따른 온라인 서비스 인증 방법에 의할 때, 비정상 인증 시도로 판별되는 케이스를 예시한 도면.
도 9는 게임 서버로부터 수신된 인증 토큰에 대한, 인증 에이전트 장치에서의 인증 확인 과정의 다른 예를 도시한 도면.
도 10은 게임 서버로부터 수신된 인증 토큰에 대한, 인증 에이전트 장치에서의 인증 확인 과정의 또 다른 예를 도시한 도면.
본 발명은 다양한 변경을 가할 수 있고 여러 가지 실시예를 가질 수 있는 바, 특정 실시예들을 도면에 예시하고 이를 상세한 설명을 통해 상세히 설명하고자 한다. 그러나, 이는 본 발명을 특정한 실시 형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다.
본 발명을 설명함에 있어서, 관련된 공지 기술에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우 그 상세한 설명을 생략한다. 또한, 본 명세서의 설명 과정에서 이용되는 숫자(예를 들어, 제1, 제2 등)는 하나의 구성요소를 다른 구성요소와 구분하기 위한 식별기호에 불과하다.
또한, 본 명세서에서, 일 구성요소가 다른 구성요소와 "연결된다" 거나 "접속된다" 등으로 언급된 때에는, 상기일 구성요소가 상기 다른 구성요소와 직접연결되거나 또는 직접 접속될 수도 있지만, 특별히 반대되는 기재가 존재하지 않는 이상, 중간에 또 다른 구성요소를 매개하여 연결되거나 또는 접속될 수도 있다고 이해되어야 할 것이다.
이하, 첨부된 도면들을 참조하여 본 발명의 실시예들을 중심으로 본 발명을 상세히 설명한다.
도 1은 본 발명의 실시예에 따른 온라인 서비스 인증 시스템을 설명하기 위한 도면이다.
이하, 본 명세서에서는, 설명 및 이해의 편의를 위해, 온라인 서비스를 제공하는 서비스 서버 및 이를 중계하는 포털 서버가 각각 게임 서버 및 게임 포털 서버인 경우를 가정하여 설명한다. 다만, 본 발명이 적용될 수 있는 온라인 서비스는 다양할 수 있으며, 여기에서 설명하는 게임 서비스에만 한정되는 것이 아님은 물론이다.
도 1을 참조하면, 클라이언트 단말(10), 게임 포털 서버(200), 게임 서버(300)가 도시되어 있다. 여기서, 클라이언트 단말(10)은 게임 서비스를 이용하고자 하는 사용자가 이용하는 단말이다. 사용자는 클라이언트 단말(10)에 설치된 웹 브라우저(12)를 통해서, 게임 포털 서버(200)가 제공하는 게임 서비스 중계를 위한 웹 인터페이스에 접속할 수 있다.
게임 포털 서버(200)는 회원 가입된 사용자들에게 위와 같은 온라인 게임 서비스를 중계하는 역할을 수행한다. 이를 위해, 일반적으로, 게임 포털 서버(200)는 사용자들에 대한 회원 인증 및 관리를 위해 회원 DB(202)를 보유한다.
게임 서버(300)는 임의의 온라인 게임 서비스를 사용자들에게 실제 제공하는 역할을 수행한다. 따라서 게임 서버(300)는 이를 위한 게임 DB(302)를 보유할 수 있다.
이때, 사용자가 그 게임 서버(300)가 제공하는 온라인 게임 서비스를 실제 이용할 수 있게 되려면, 해당 게임 서비스에 대한 사용자 인증이 이루어져야 한다. 사용자 인증이 성공적으로 이루어진 경우, 사용자는 클라이언트 단말(10)에 설치된 게임 클라이언트(14)를 통해서 해당 게임 서비스를 이용할 수 있게 된다.
도 1을 참조할 때, 이를 위한 온라인 서비스 인증 시스템은, 게임 포털 서버(200), 게임 서버(300), 그리고 상기 게임 포털 서버(200) 및 상기 게임 서버(300)와 통신망(50)을 통해 연결되는 인증 에이전트 장치(100)를 포함할 수 있다.
여기서, 인증 에이전트 장치(100)는, 사용자가 게임 포털 서버(200)를 통해서 임의의 게임 서버(300)에 의해 제공되는 게임 서비스를 이용하고자 할 때, 해당 게임 서비스에 대한 사용자 인증을 대행하는 역할을 수행한다. 이 과정에서 인증 에이전트 장치(100)는 인증 키 DB(102) 및 접속 이력 DB(104)를 참조할 수 있다.
이하, 도 2를 참조하여, 본 발명의 실시예에 따른 온라인 서비스 인증 시스템에 의한 인증 과정 전반에 대하여 설명한다.
도 2는 본 발명의 실시예에 따른 온라인 서비스 인증 과정 전반을 설명하기 위한 도면이다.
도 2를 참조하면, 클라이언트 단말(10)이 임의의 게임 서비스에 대한 서비스 요청을 하면, 게임 포털 서버(200)는 시드 데이터(seed data)를 인증 에이전트 장치(100)로 전송하게 된다.
여기서, 상기 시드 데이터는, 사용자가 요청한 게임 서비스에 대한 사용자 인증에 이용될 인증 토큰을 생성하기 위해 필요한 기초 데이터이다. 이러한 시드 데이터로서 쓰일 수 있는 데이터에는 특별한 제한이 없으며, 온라인 서비스 인증 시스템의 실제 구현 방식에 따라 미리 결정된 다양한 데이터가 시드 데이터로서 이용될 수 있다.
본 발명의 실시예에서, 게임 포털 서버(200)로부터 인증 에이전트 장치(100)로 전송되는 시드 데이터는, 적어도, 해당 게임 서비스를 요청한 사용자를 식별할 수 있는 사용자 식별 정보를 포함될 수 있다. 일 예로, 상기 사용자 식별 정보로는, 게임 포털 서버(200)에서 자사의 게임 회원을 관리하기 위해 사용되는 사용자 일련 번호(User serial number)가 이용될 수 있다.
게임 포털 서버(200)로부터 시드 데이터가 수신된 경우, 인증 에이전트 장치(100)는 인증 키를 획득하고, 그 획득된 인증 키와 상기 수신된 시드 데이터를 이용하여 인증 토큰을 생성하고, 그 생성된 인증 토큰을 게임 포털 서버(200)로 전송한다. 이때, 인증 토큰의 생성에는 임의의 해쉬 함수가 이용될 수 있다.
게임 포털 서버(200)는, 인증 에이전트 장치(100)로부터 수신한 인증 토큰과, 상기 시드 데이터를, 클라이언트 단말(10)에 설치된 게임 클라이언트(14)로 전송한다. 이 경우, 게임 클라이언트(14)는 게임 포털 서버(200)로부터 수신된 인증 토큰과 시드 데이터를 게임 서버(300)로 전송한다.
게임 클라이언트(14)로부터 인증 토큰과 시드 데이터를 수신한 경우, 게임 서버(300)는, 그 인증 토큰과 소정의 검증 데이터를 인증 에이전트 장치(100)로 전송한다. 이때, 검증 데이터로는, 게임 클라이언트(14)로부터 수신된 시드 데이터가 그대로 이용될 수 있다.
다만, 실제 구현 방식에 따라, 상기 검증 데이터는, 게임 클라이언트(14)로부터 수신된 시드 데이터와 완전히 일치하지는 않을 수도 있다. 일 예로, 게임 서버(300)는, 실제 구현 방식에 따라, 상기 시드 데이터의 일부만을 검증 데이터로서 인증 에이전트 장치(100)로 전송할 수도 있다. 이는 도 9 및 도 10의 설명으로부터 명확히 이해될 수 있을 것이다. 다만, 설명의 편의상 도 9 및 도 10을 제외한 모든 도면의 설명에서는, 상기 검증 데이터로서 상기 시드 데이터 그대로가 이용되는 경우를 중심으로 설명하기로 한다.
인증 에이전트 장치(100)는, 상기 검증 데이터에 근거하여, 게임 서버(300)로부터 수신된 인증 토큰을 검증한다. 이러한 인증 토큰의 검증 방법은 이하 도 6, 도 9, 도 10의 설명을 통해 명확히 이해될 수 있을 것이다. 이러한 검증 결과(즉, 인증 확인 결과)는 게임 서버(300)로 전송되며, 게임 서버(300)는 인증 에이전트 장치(100)로부터 수신된 인증 확인 결과에 따라, 그 게임 서비스에 대한 사용자 인증을 처리한다.
이와 같이, 본 발명의 실시예에서, 온라인 서비스에 대한 사용자 인증은 인증 에이전트 장치(100)에서 대행되며, 게임 서버(300)는 인증 에이전트 장치(10)로부터 전달되는 인증 결과만을 확인하면 된다. 따라서, 종래 방식에서와 달리, 온라인 서비스에 대한 사용자 인증을 위해, 게임 포털 서버(200) 및 게임 서버(300)에서 직접 인증 토큰의 생성 및 검증하는 과정을 수행할 필요가 없다. 이에 따라, 인증 토큰의 생성에 이용될 인증 키 또한 게임 포털 서버(200) 및 게임 서버(300)에서 관리될 필요가 없어, 게임 포털 서버(200) 및 게임 서버(300)에서의 인증 프로세스 수행을 위한 부담을 크게 줄일 수 있는 이점이 있다.
아울러, 후술할 내용들을 통해서 쉽게 이해될 바이지만, 인증 토큰의 생성에 이용되는 인증 키는, 게임 포털 서버(200)로부터 인증 에이전트 장치(100)로 수신될 때마다 새롭게 획득되므로, 인증 키의 유출 및 이에 따른 온라인 서비스의 해킹 문제를 방지할 수 있는 이점도 있다.
도 3은 클라이언트 단말에 의한 온라인 서비스 요청 및 인증 시도 과정을 예시한 도면이다. 즉, 도 3은 도 2의 도면에서 [1] ~ [5]에 따른 프로세스에 대해 설명하기 위한 도면으로서, 게임 서비스의 경우를 가정한 것이다.
단계 S10에서, 사용자가 웹 브라우저(12)를 이용하여 게임 포털 서버(200)로 접속하고, 단계 S12 및 S14를 통해 자신의 패스워드/아이디를 이용한 로그인 절차를 수행한다. 이후, 단계 S16에서 사용자가 게임 포털 서버(200)에서 제공하는 온라인 서비스들 중 임의의 게임 서비스의 실행을 요청한다. 즉, 도 2의 [1]번 프로세스는, 도 3에서 단계 S16에 해당한다.
게임 서비스가 실행 요청되면, 단계 S18에 따라 런쳐(launcher)가 구동되며, 런쳐는 단계 S20에 따라 게임 클라이언트(14)를 호출함으로써, 단계 S22와 같이 게임 클라이언트(14)가 클라이언트 단말(10)을 통해 실행되도록 한다.
또한, 게임 서비스가 실행 요청되면, 단계 S24에서 게임 포털 서버(200)는 인증 토큰의 생성에 이용되는 시드 데이터를 획득한다. 이와 같이 획득된 시드 데이터는, 단계 S26을 통해 인증 에이전트 장치(100)로 전송된다. 즉, 도 2의 [2]번 프로세스는, 도 3에서 단계 S26에 해당한다.
이 경우, 인증 에이전트 장치(100)는 수신한 시드 데이터를 이용하여 인증 토큰을 생성하는데, 이에 관해서는 도 5를 통해 후술한다. 이에 따라, 게임 포털 서버(200)는, 단계 S38에서 인증 에이전트 장치(100)로부터 인증 토큰을 수신한다. 즉, 도 2의 [3]번 프로세스는, 도 3에서 단계 S38에 해당한다.
단계 S40에서, 게임 포털 서버(200)는 인증 에이전트 장치(100)로부터 수신한 인증 토큰과, 상기 시드 데이터를, 클라이언트 단말(10)의 게임 클라이언트(14)로 전송한다. 즉, 도 2의 [4]번 프로세스는, 도 3에서 단계 S40에 해당한다.
이후, 단계 S42에서, 사용자가 게임 클라이언트(14)를 통해서 게임 서버(300)로의 접속을 시도(즉, 해당 온라인 서비스에 대한 인증을 시도)하면, 게임 클라이언트(14)는 단계 S44에서 게임 포털 서버(200)로부터 수신한 인증 토큰과 시드 데이터를 게임 서버(300)로 전송한다. 즉, 도 2의 [5]번 프로세스는, 도 3에서 단계 S44에 해당한다.
이하, 도 4 내지 도 7을 참조하여, 인증 에이전트 장치(100) 및 그 내부에서 실행되는 인증 프로세스에 대하여 설명한다.
이하, 설명의 편의를 위해, 게임 포털 서버(200)로부터 인증 에이전트 장치(100)로 전송되는, 인증 토큰을 생성에 이용될 시드 데이터로는, 사용자 식별 정보로서 사용자 일련 번호와, 1개의 시간 데이터를 포함한 총 2개의 데이터가 이용되는 것으로 가정한다.
그리고 도 5, 도 6, 도 7을 중심으로 도 4의 블록 구성도를 함께 참조하여 설명한다.
도 5는 게임 포털 서버로부터 시드 데이터를 수신함에 따라, 인증 에이전트 장치에서의 인증 토큰 생성 과정을 예시한 도면이다. 즉, 도 5는 도 2에서 [2]번 프로세스와 [3]번 프로세스의 사이에서, 인증 에이전트 장치(10)에서 수행되는 인증 과정이다.
단계 S28에서, 인증 에이전트 장치(100)는 수신부(110)를 통해 게임 포털 서버(200)부터 시드 데이터를 수신한다.
이 경우, 인증 에이전트 장치(100)는, 단계 S30에서, 인증 키 DB(102)로부터 인증 키를 획득한다. 이러한 인증 키의 획득은 인증 에이전트 장치(100)의 인증 키 관리부(120)에 의해 수행될 수 있다.
여기서, 인증 키 DB(102)에는, 인증 토큰을 생성하는데 이용될 수 있는 인증 키의 풀(pool)이 등록되어 있다. 따라서, 인증 키 관리부(120)는, 수신부(110)를 통해 시드 데이터가 수신되는 경우, 인증 키 DB(102)에 등록된 인증 키 풀 중 어느 하나의 인증 키를 추출하여, 인증 토큰 생성이 이용될 인증 키로서 활용할 수 있다. 이때, 인증 키는 인증 키 풀로부터 임의(random)로 선택될 수 있다.
이러한 인증 키 획득은, 게임 포털 서버(200)로부터 시드 데이터가 수신될 때마다 수행된다. 따라서, 본 발명의 실시예에서는, 게임 포털 서버(200)로부터 시드 데이터가 수신될 때마다 새로운 인증 키가 획득되게 된다.
본 명세서에서는 인증 키 DB(102)에 등록된 인증 키 풀로부터 랜덤하게 선택(추출)하는 경우를 중심으로 설명하지만, 인증 키 획득 방식은 이외에도 다양할 수 있음은 물론이다. 예를 들어, 인증 키 관리부(120)는, 임의의 난수 발생 알고리즘을 이용하여, 시드 데이터가 수신될 때마다 새로운 인증 키를 직접 생성할 수도 있을 것이다. 다만, 이하에서는 설명의 집중을 위해 인증 키 풀로부터 인증 키를 추출하는 방식이 이용하는 것으로 가정하여 설명한다.
단계 S32에서, 인증 키 관리부(120)는 추출해낸 인증 키를 식별할 수 있는 정보(이하, 인증 키 확인 정보라 함)를, 수신된 시드 데이터에 포함된 사용자 식별 정보와 연계하여 접속 이력 DB(104)에 저장(등록)한다.
이 경우, 인증 키 관리부(120)는, 동일 사용자에 대하여 새로운 인증 키가 획득될 때마다, 사용자 식별 정보와 연계 저장되는 인증 키 확인 정보를, 그 변경된 인증 키에 상응하는 인증 키 확인 정보로 교체한다. 즉, 동일 사용자를 기준으로, 인증 키가 변경되는 경우, 인증 키 확인 정보도 이에 상응하여 접속 이력 DB(104)에서 갱신된다. 따라서 접속 이력 DB(104)에 등록된 인증 키 확인 정보를 확인하면, 사용자(즉, 게임 회원) 별로 가장 최근에 사용하였던 인증 키를 알아낼 수 있다. 이는 추후 도 6, 도 9, 도 10에서의 인증 토큰의 검증 과정에서 상세히 설명한다.
여기서, 인증 키 확인 정보로는, 인증 키 인덱스 정보 또는 인증 키 어드레스 정보 등이 이용될 수 있다. 예를 들어, 인증 키 DB(102)에 총 100개의 인증 키 풀이 존재하는 경우, 각각의 인증 키에 부여된 인덱스 번호 또는 그 인증 키가 저장된 위치를 나타내는 어드레스 정보가, 인증 키 확인 정보로서 활용될 수 있다. 이와 같은 인증 키 확인 정보는, 사용자 식별 정보(본 예에서는, 사용자 일련 번호)와 연계되어 접속 이력 DB(104)에 저장될 수 있다.
이상에서는 인증 키 자체가 아닌 인증 키 확인 정보가 사용자 식별 정보와 연계 저장되는 경우를 가정하였지만, 구현 방식에 따라, 그 획득된 인증 키 자체가 사용자 식별 정보와 연계 저장될 수도 있음은 물론이다.
그리고 이상에서는 인증 키 확인 정보만을 사용자 식별 정보와 연계시켜 저장하는 경우를 중심으로 설명하였지만, 역시 그 인증 시스템의 구현 방식에 따라, 서비스 기준 시간 정보도 함께 연계 저장시킬 수도 있다.
여기서, 상기 서비스 기준 시간 정보란, 게임 포털 서버(200)를 통한 사용자의 게임 서비스 요청과 관련된 판단 기준 시간을 정의하기 위한 정보이다.
예를 들어, 서비스 기준 시간 정보로는, 게임 포털 서버(200)를 통한 사용자의 게임 서비스 요청 시간, 게임 포털 서버(200)에서의 상기 시드 데이터를 획득한 시간, 상기 시드 데이터를 인증 에이전트 장치(100)에서 수신한 시간, 상기 시드 데이터의 수신에 따라 인증 에이전트 장치(100)에서 상기 인증 키를 획득한 시간 중 어느 하나가 이용될 수 있다.
이때, 상기 게임 서비스 요청 시간 또는 상기 시드 데이터 획득 시간이 상기 서비스 기준 시간 정보로서 이용되는 경우, 상기 게임 포털 서버(200)는 상기 시드 데이터로서 위 시간 정보를 활용할 수도 있으며, 이 경우에는 게임 포털 서버(200)가 위 시간 정보를 상기 시드 데이터와는 별도로 인증 에이전트 장치(100)로 전송해주지 않아도 된다.
이와 같은 서비스 기준 시간 정보는, 본 발명의 특정 실시예(후술할 도 7 참조)를 통해, 게임 서비스에 대한 사용자 인증 과정에 활용될 수 있다.
단계 S34에서, 인증 에이전트 장치(100)의 토큰 생성부(130)는, 앞선 단계 S30을 통해 획득된 인증 키와, 앞선 단계 S28을 통해 게임 포털 서버(200)로부터 수신한 시드 데이터를 이용하여, 미리 지정된 특정 해쉬 함수에 따라, 인증 토큰을 생성한다.
이에 따라, 인증 에이전트 장치(100)의 전송부(160)는, 단계 S36에서, 생성된 인증 토큰을 게임 포털 서버(200)로 전송한다.
이상에서 설명한 바와 같이, 본 발명의 실시예에서, 온라인 서비스에 대한 사용자 인증에 이용될 인증 토큰은, 사용자가 해당 서비스를 요청할 때, 인증 에이전트 장치(100)를 통해 그때 그때마다 새로운 인증 키를 이용하여 신규 생성되고, 게임 포털 서버(200)로 전달된다. 그리고 게임 포털 서버(200)로 전달된 이러한 인증 토큰은 앞서 설명한 바와 같이 사용자가 인증을 시도한 시점에서야 비로소 클라이언트 단말(10)에 설치된 게임 클라이언트(14)를 통해서 게임 서버(300)로 전달되므로, 악의의 사용자에 의한 인증 과정에서의 해킹 위험을 근본적으로 방지할 수 있다.
도 6은 게임 서버로부터 수신된 인증 토큰에 대한, 인증 에이전트 장치에서의 인증 확인 과정을 예시한 도면이다. 즉, 도 6은 도 2에서 [6]번 프로세스와 [7]번 프로세스의 사이에서, 인증 에이전트 장치(10)에서 수행되는 인증 과정(즉, 인증 토큰의 검증 과정)이다.
단계 S46을 통해 게임 클라이언트(14)로부터 특정 인증 토큰을 통한 인증 시도가 수신되면, 게임 서버(300)는 그 게임 클라이언트(14)로부터 수신된 인증 토큰과 검증 데이터를 인증 에이전트 장치(100)로 전송한다.
이때, 상기 검증 데이터는, 정상적인 인증 상황인 경우, 게임 포털 서버(100)로부터 게임 클라이언트(14)를 통해 게임 서버(300)로 전송된 시드 데이터와 동일할 수 있다. 즉, 게임 서버(300)는, 게임 포털 서버(200)로부터 게임 클라이언트(14)를 거쳐 수신된 시드 데이터를 그대로 검증 데이터로 이용할 수 있다. 물론 도 9를 통해 후술할 바이지만, 인증 시스템의 구현 방식에 따라, 상기 검증 데이터는 반드시 시드 데이터와 동일하지 않을 수도 있다. 다만, 도 6에서는 상기 검증 데이터가 시드 데이터와 동일한 것으로 가정하여 설명한다.
단계 S48을 통해 인증 토큰과 검증 데이터가 수신되는 경우, 인증 에이전트 장치(100)의 검증 정보 획득부(140)는, 단계 S50에서 접속 이력 DB(104)로부터 해당 게임 서비스의 사용자 인증을 시도한 인증 시도자에 상응하는 인증 키 확인 정보를 획득한다.
앞서 설명한 바와 같이, 도 5의 단계 S32에서, 인증 에이전트 장치(100)의 인증 키 관리부(120)는, 게임 서비스 요청자의 사용자 식별 정보에 연계시켜, 해당 요청자의 인증에 이용될 인증 토큰을 생성하는데 이용했던 인증 키의 인증 키 확인 정보를 접속 이력 DB(104)에 등록하였다.
따라서, 검증 정보 획득부(140)는 이러한 접속 이력 DB(140)에서 해당 인증 시도자에 상응하는 사용자 식별 정보와 연계되어 저장된 인증 키 확인 정보를 확인할 수 있다.
이에 따라, 검증 정보 획득부(140)는, 단계 S52에서, 그 확인된 인증 키 확인 정보에 근거하여 인증 키 DB(102)로부터 해당 인증 시도자에 상응하는 인증 키를 추출(획득)할 수 있다.
이와 같이, 인증 키가 추출되면, 토큰 생성부(130)는, 단계 S54에서, 그 추출된 인증 키 및 상기 검증 데이터를 참조하여 검증 토큰을 생성한다. 이때, 검증 토큰의 생성시에는, 앞서 도 3의 단계 S34에서 인증 토큰 생성에 이용하였던 해쉬 함수를 동일하게 이용한다.
단계 S56에서, 인증 에이전트 장치(100)의 인증 결과 생성부(150)는, 상기 검증 토큰과, 앞선 단계 S48에서 수신한 인증 토큰을 비교하여, 인증 확인 결과를 생성한다. 즉, 위 2개의 토큰이 일치하는 경우 상기 인증 시도가 정상 인증 시도임을 나타내는 인증 확인 결과(일 예로, 인증 성공)를, 그렇지 않은 경우에는 비정상 인증 시도임을 나타내는 인증 확인 결과(일 예로, 인증 실패)를 생성한다.
단계 S58에서, 위와 같이 생성된 인증 확인 결과는 전송부(160)에 의해 게임 서버(300)로 전송되며, 단계 S60에서 게임 서버(300)는 수신한 인증 확인 결과에 기초하여 인증 처리를 한다. 즉, 수신한 인증 확인 결과가 인증 성공이면 게임 서비스 이용을 허용하고, 인증 실패이면 게임 서비스 이용을 차단한다.
위 설명에 의할 때, 비정상 인증 시도로 판별되는 케이스가 도 8을 통해 예시되어 있다. 도 8은 클라이언트 단말(10)이 게임 포털 서버(200)를 거치지 않고 특정 게임 서버(300)가 제공하는 온라인 서비스에 관한 사용자 인증을 시도한 경우이다.
예를 들어, 사용자 A가 게임 서버(300)에서 제공하는 게임 서비스를 게임 포털 서버(200)를 통해 이용하였던 가장 최근을 기준으로, 그때 시드 데이터는 "시드 데이터1"이고, 그 "시드 데이터1"과 그 시점에 임의로 추출되었던 인증 키를 이용하여 생성된 인증 토큰이 "인증 토큰 1"인 것으로 가정한다.
이때, 해커가, 종전에, 사용자 A의 게임 서비스 사용자 인증에 사용되던 임의의 인증 토큰을 해독하고, 이로부터 특정 인증 키를 획득한 후, 이러한 인증 키를 이용하여 "인증 토큰2"를 생성하였다 하더라도, 이러한 인증 키는 본 발명의 실시예에서 매번 새롭게 바뀌는 것이므로, 도 8에서와 같이 인증 실패 처리될 것이다.
이상에서는, 인증 토큰과 검증 토큰의 비교를 통한 인증 프로세스를 설명하였다. 그러나 본 발명의 실시예에 의할 때, 이외에도 다른 인증 기준을 더 추가할 수도 있다. 이에 대하여 도 7을 참조하여 설명한다.
도 7은 인증 기준 시간과 서비스 기준 시간의 비교를 통한, 인증 에이전트 장치에서의 인증 확인 과정을 예시한 도면이다. 즉, 도 7은 특정 시간 범위 기준을 인증 기준으로서 더 부가한 예로서, 앞선 도 5의 단계 S32를 통해 서비스 기준 시간 정보가 사용자 식별 정보와 연계되어 등록되는 케이스에 적용될 수 있다.
단계 S48에서 게임 서버(300)로부터 인증 토큰과 검증 데이터가 수신되면, 인증 에이전트 장치(100)의 검증 정보 획득부(140)는, 단계 S70에서 접속 이력 DB(104)로부터 해당 인증 시도자의 사용자 식별 정보에 상응하는 서비스 기준 시간 정보를 획득(확인)한다.
또한 단계 S72에서, 검증 정보 획득부(140)는, 인증 기준 시간 정보를 획득한다. 여기서, 인증 기준 시간 정보는, 해당 서비스의 사용자 인증과 관련된 판단 기준 시간을 정의하기 위한 정보이다.
예를 들어, 상기 인증 기준 시간 정보는, 상기 인증 시도 시간, 게임 서버(300)로부터의 인증 토큰 또는 검증 데이터 수신 시간, 상기 검증 데이터 수신에 따른 인증 에이전트 장치(100)에서의 인증 키 획득 시간, 상기 서비스 기준 시간 정보와의 비교 시점의 현재 시간 중 어느 하나가 이용될 수 있다.
단계 S74에서, 인증 에이전트 장치(100)의 인증 결과 생성부(150)는, 상기 인증 기준 시간 정보와 상기 획득된 서비스 기준 시간 정보의 시간차가 미리 지정된 시간 범위(T0)를 초과하는지를 확인한다.
그 확인 결과, 그 시간 범위를 초과하는 경우, 인증 결과 생성부(150)는 단계 S76에서, 상기 인증 시도가 비정상 인증 시도임을 나타내는 인증 확인 결과를 생성하고, 전송부(160)는 단계 S78에서, 그 인증 확인 결과를 게임 서버(300)로 전송한다. 이러한 경우, 게임 서버(300)는 단계 S80에서, 그 비정상 인증 시도임을 나타내는 인증 확인 결과에 근거하여 인증 처리(즉, 차단)를 수행한다.
위와 같이, 특정 시간 범위(예를 들어, 15분 등)를 인증 기준으로서 추가적으로 두는 이유는, 정상적인 상황이라면 게임 서비스 요청한 이후 곧 게임 서비스 인증을 시도하는 것이 일반적이기 때문이다. 즉, 반드시 위 시간 범위를 초과하는 경우를 해킹 시도 등의 악의적 의도가 있는 것으로 보기는 어렵지만, 그럴 확률이 매우 높은 경우이므로, 이러한 시간 기준을 둠으로써, 사용자 인증의 보안성을 보다 높일 수 있다.
앞서 설명한 바와 달리, 단계 S74의 판단 결과, 그 시간 범위를 초과하지 않는 경우, 앞서 설명한 도 6의 단계 S50으로 진행될 수 있다. 즉, 인증 시스템의 구현 방식에 따라, 위 시간 범위 이내인 경우에만 도 6의 단계 S50 이하의 단계들을 실행하도록 설정될 수도 있다.
이제까지, 인증 에이전트 장치(100)를 이용한 온라인 서비스 인증 방법에 관하여 살펴보았다. 그러나 본 발명에서의 온라인 서비스 인증 방법은, 앞서 설명한 도 4 내지 도 7에 한정되는 것은 아니다. 이와 다른 실시예들 그리고 다양한 변형례들이 존재할 수 있다. 이하, 이를 도 9 및 도 10을 참조하여 설명한다. 이하 도 9 및 도 10은 앞서 설명한 도 4 내지 도 7에서와 공통성을 가진 기술적 내용들이 다수 포함되어 있는 바, 그 차이점을 위주로 간략히 설명하기로 한다.
도 9는 게임 서버로부터 수신된 인증 토큰에 대한, 인증 에이전트 장치에서의 인증 확인 과정의 다른 예를 도시한 도면이다. 여기서, 도 9에서 단계 S46, S58, S60은 앞서 설명한 도 6에서와 동일한 바, 이하 상세한 설명은 생략한다. 그리고 단계 S83 및 단계 S89는 각각 도 6의 단계 S50 및 S56과 유사하므로 이 또한 상세한 설명을 생략한다.
앞서 설명한 도 6의 경우는, 단계 S54에서와 같이, 게임 서버(300)로부터 수신된 검증 데이터를 그대로 이용하여 검증 토큰을 생성하였다. 그러나 도 9의 경우에는, 그 이전에 게임 포털 서버(200)로부터 수신되었던 시드 데이터를 이용하여 검증 토큰을 생성한다[단계 S85 및 S87 참조]. 이는 인증 에이전트 장치(100)가 게임 포털 서버(200)로부터 시드 데이터를 수신하였을 때, 이를 사용자 식별 정보와 연계시켜 저장함으로써 간단히 구현할 수 있다[단계 S81 참조].
이와 같이 구현하는 경우, 게임 서버(300)로부터 인증 에이전트 장치(100)로 전송되는 상기 검증 데이터에는, 인증 시도한 사용자의 사용자 식별 정보만이 포함되어도 무방하다.
도 10은 게임 서버로부터 수신된 인증 토큰에 대한, 인증 에이전트 장치에서의 인증 확인 과정의 또 다른 예를 도시한 도면이다. 여기서, 도 10에서 단계 S46, S58, S60은 앞서 설명한 도 6에서와 동일한 바, 이하 상세한 설명은 생략한다.
도 6 및 도 9의 경우, 검증 데이터 또는 시드 데이터를 이용하고, 또한 인증 키 확인 정보 또는/및 인증 키를 추출하여 이를 통해서 검증 토큰을 생성하였다. 그러나 도 10의 경우에는, 단계 S91을 통해서 앞서 도 5의 단계 S34에서 생성한 인증 토큰을 사용자 식별 정보와 연계시켜 직접 저장해둠으로써, 검증 토큰의 생성 과정을 별도로 필요로 하지 않는 방식이다.
즉, 이러한 경우, 인증 에이전트 장치(100)는, 저장해둔 인증 토큰을 검증 토큰으로 그대로 이용하고 게임 서버(300)로부터 수신된 인증 토큰과 비교함으로써[단계 S93 및 S95 참조], 간단히 인증 확인 결과를 생성할 수 있다.
이상에서는 본 발명의 실시예를 참조하여 설명하였지만, 해당 기술 분야에서 통상의 지식을 가진자라면 하기의 특허청구의 범위에 기재된 본 발명의 사상 및 영역으로부터 벗어나지 않는 범위 내에서 본 발명을 다양하게 수정 및 변경시킬 수 있음을 쉽게 이해할 수 있을 것이다.
10 : 클라이언트 단말
14 : 게임 클라이언트
50 : 통신망
100 : 인증 에이전트 장치
200 : 게임 포털 서버
300 : 게임 서버

Claims (19)

  1. 포털 서버 및 서비스 서버와 통신 연결되는 인증 에이전트를 통한 온라인 서비스 인증 방법으로서,
    상기 포털 서버로부터 시드 데이터가 수신될 때마다, 새로운 인증 키를 이용하여 인증 토큰을 생성하는 단계-여기서, 상기 시드 데이터는, 상기 포털 서버를 통해 온라인 서비스를 요청한 사용자에 관한 사용자 식별 정보를 포함하며, 온라인 서비스에 대한 사용자 인증에 이용되는 인증 토큰의 생성에 이용됨-;
    상기 생성된 인증 토큰을 상기 포털 서버로 전송하는 단계-여기서, 상기 인증 토큰은 사용자 인증을 위해 상기 포털 서버에서 상기 서비스 서버로 전송됨;
    상기 검증 데이터 및 상기 검증 데이터에 포함된 사용자 식별 정보에 상응하는 인증 키를 참조하여, 검증 토큰을 생성하는 단계-여기서, 상기 검증 데이터는, 상기 사용자 인증을 시도한 사용자에 관한 사용자 식별 정보를 포함함-; 및
    상기 서비스 서버로부터 수신된 인증 토큰과 상기 검증 토큰의 일치 여부에 따라, 상기 인증 시도에 관한 인증 확인 결과를 상기 서비스 서버로 전송하는 단계
    를 포함하는, 온라인 서비스 인증 방법.
  2. 제1항에 있어서,
    인증 키는, 상기 시드 데이터가 수신될 때마다, 다수의 인증 키를 포함하는 인증 키 풀(pool)로부터 랜덤하게 선택되는, 온라인 서비스 인증 방법.
  3. 제1항에 있어서,
    상기 포털 서버로부터 시드 데이터가 수신될 때마다, 새로운 인증 키를 이용하여 인증 토큰을 생성하는 단계는,
    인증 키를 상기 사용자 식별 정보와 연계시켜 저장하는 단계를 포함하는, 온라인 서비스 인증 방법.
  4. 제1항에 있어서,
    상기 포털 서버로부터 시드 데이터가 수신될 때마다, 새로운 인증 키를 이용하여 인증 토큰을 생성하는 단계는,
    인증 키를 식별할 수 있는 인증 키 확인 정보를 상기 사용자 식별 정보와 연계시켜 저장하는 단계를 포함하며,
    상기 검증 토큰을 생성하는 단계는,
    상기 검증 데이터에 포함된 사용자 식별 정보에 상응하는 인증 키 확인 정보를 획득하는 단계; 및
    상기 획득된 인증 키 확인 정보에 상응하는 인증 키를 인증 키 풀로부터 추출하는 단계를 포함하는, 온라인 서비스 인증 방법.
  5. 제1항에 있어서,
    상기 시드 데이터가 수신될 때마다, 상기 포털 서버를 통한 사용자의 온라인 서비스 요청과 관련된 서비스 기준 시간 정보를, 상기 시드 데이터에 포함된 사용자 식별 정보와 연계시켜 저장하는 단계;
    상기 검증 데이터에 포함된 사용자 식별 정보에 상응하는 상기 서비스 기준 시간 정보를 획득하는 단계;
    상기 사용자 인증과 관련된 인증 기준 시간 정보와, 상기 획득된 서비스 기준 시간 정보 간의 시간 차가, 미리 설정된 시간 범위를 초과하는 경우, 상기 인증 시도가 비정상 인증 시도임을 나타내는 인증 확인 결과를 상기 서비스 서버로 전송하는 단계
    를 더 포함하는, 온라인 서비스 인증 방법.
  6. 제5항에 있어서,
    상기 서비스 기준 시간 정보는,
    상기 포털 서버를 통한 사용자의 온라인 서비스 요청 시간, 상기 포털 서버에서의 상기 시드 데이터 획득 시간, 상기 시드 데이터 수신 시간, 상기 시드 데이터의 수신에 따른 인증 키 획득 시간 중 어느 하나이고,
    상기 인증 기준 시간 정보는,
    상기 인증 시도 시간, 상기 서비스 서버로부터의 인증 토큰 또는 검증 데이터 수신 시간, 상기 검증 데이터 수신에 따른 인증 키 획득 시간, 상기 서비스 기준 시간 정보와의 비교 시점의 현재 시간 중 어느 하나인, 온라인 서비스 인증 방법.
  7. 제5항에 있어서,
    상기 검증 토큰을 생성하는 단계는,
    상기 인증 기준 시간 정보와 상기 서비스 기준 시간 정보 간의 시간 차가 상기 미리 설정된 시간 범위 이내인 경우에 실행되는, 온라인 서비스 인증 방법.
  8. 포털 서버 및 서비스 서버와 통신 연결되는 인증 에이전트를 통한 온라인 서비스 인증 방법으로서,
    상기 포털 서버로부터 시드 데이터가 수신될 때마다, 새로운 인증 키를 이용하여 제1 인증 토큰을 생성하는 단계-여기서, 상기 시드 데이터는, 상기 포털 서버를 통해 온라인 서비스를 요청한 사용자에 관한 사용자 식별 정보를 포함하며, 온라인 서비스에 대한 사용자 인증에 이용되는 인증 토큰의 생성에 이용됨-;
    상기 제1 인증 토큰을 상기 포털 서버로 전송하는 단계-여기서, 상기 제1 인증 토큰은 사용자 인증을 위해 상기 포털 서버에서 상기 서비스 서버로 전송됨;
    상기 서비스 서버로부터, 제2 인증 토큰 및 상기 사용자 인증을 시도한 사용자에 관한 사용자 식별 정보를 수신하는 단계;
    상기 사용자 인증을 시도한 사용자에 관한 사용자 식별 정보에 상응하는 인증 키 및 상기 시드 데이터를 참조하여 검증 토큰을 생성하는 단계; 및
    상기 제2 인증 토큰과 상기 검증 토큰의 일치 여부에 따라, 상기 인증 시도에 관한 인증 확인 결과를 상기 서비스 서버로 전송하는 단계
    를 포함하는, 온라인 서비스 인증 방법.
  9. 포털 서버 및 서비스 서버와 통신 연결되는 인증 에이전트를 통한 온라인 서비스 인증 방법으로서,
    상기 포털 서버로부터 시드 데이터가 수신될 때마다, 새로운 인증 키를 이용하여 제1 인증 토큰을 생성하는 단계-여기서, 상기 시드 데이터는, 상기 포털 서버를 통해 온라인 서비스를 요청한 사용자에 관한 사용자 식별 정보를 포함하며, 온라인 서비스에 대한 사용자 인증에 이용되는 인증 토큰의 생성에 이용됨-;
    상기 제1 인증 토큰을 상기 포털 서버로 전송하는 단계-여기서, 상기 제1 인증 토큰은 사용자 인증을 위해 상기 포털 서버에서 상기 서비스 서버로 전송됨;
    상기 서비스 서버로부터, 제2 인증 토큰 및 상기 사용자 인증을 시도한 사용자에 관한 사용자 식별 정보를 수신하는 단계;
    상기 서비스 서버로부터 수신된 사용자 식별 정보에 상응하는 제1 인증 토큰을 획득하는 단계;
    상기 서비스 서버로부터 수신된 상기 제2 인증 토큰과 상기 서비스 서버로부터 수신된 사용자 식별 정보에 상응하여 획득된 제1 인증 토큰의 일치 여부에 따라, 상기 인증 시도에 관한 인증 확인 결과를 상기 서비스 서버로 전송하는 단계
    를 포함하는, 온라인 서비스 인증 방법.
  10. 포털 서버 및 서비스 서버와 통신 연결되는 인증 에이전트 장치로서,
    상기 포털 서버로부터 시드 데이터를 수신하고, 상기 서비스 서버로부터 인증 토큰 및 검증 데이터를 수신하는 수신부-여기서, 상기 시드 데이터는 상기 포털 서버를 통해 온라인 서비스를 요청한 사용자에 관한 사용자 식별 정보를 포함하고 인증 토큰의 생성에 이용되며, 상기 검증 데이터는 온라인 서비스에 대한 사용자 인증을 시도한 사용자에 관한 사용자 식별 정보를 포함함-;
    상기 시드 데이터가 수신될 때마다 새로운 인증 키를 이용하여 인증 토큰을 생성하고, 상기 검증 데이터 및 상기 검증 데이터에 포함된 사용자 식별 정보에 상응하는 인증 키를 참조하여 검증 토큰을 생성하는 토큰 생성부;
    상기 서비스 서버로부터 수신된 인증 토큰과 상기 검증 토큰의 일치 여부에 따라, 상기 인증 시도에 관한 인증 확인 결과를 생성하는 인증 결과 생성부; 및
    상기 인증 확인 결과를 상기 서비스 서버로 전송하고, 상기 시드 데이터가 수신됨에 따라 생성된 인증 토큰을 상기 포털 서버로 전송하는 전송부
    를 포함하는, 인증 에이전트 장치.
  11. 제10항에 있어서,
    인증 키는, 상기 시드 데이터가 수신될 때마다, 다수의 인증 키를 포함하는 인증 키 풀(pool)로부터 랜덤하게 선택되는, 인증 에이전트 장치.
  12. 제10항에 있어서,
    상기 시드 데이터가 수신될 때마다 획득된 상기 인증 키 또는 인증 키 확인 정보를 상기 시드 데이터에 포함된 사용자 식별 정보와 연계시켜 저장하는 인증 키 관리부
    를 더 포함하는, 인증 에이전트 장치.
  13. 제12항에 있어서,
    상기 검증 데이터에 포함된 사용자 식별 정보에 상응하는 인증 키 확인 정보를 획득하고, 획득된 인증 키 확인 정보에 상응하는 인증 키를 상기 인증 키 풀로부터 추출하는 검증 정보 획득부
    를 더 포함하는, 인증 에이전트 장치.
  14. 제10항에 있어서,
    상기 인증 키 관리부는, 상기 시드 데이터가 수신될 때마다, 상기 포털 서버를 통한 사용자의 온라인 서비스 요청과 관련된 서비스 기준 시간 정보를, 상기 시드 데이터에 포함된 사용자 식별 정보와 연계하여 저장하고,
    상기 인증 결과 생성부는, 상기 사용자 인증과 관련된 인증 기준 시간 정보와, 상기 검증 데이터에 포함된 사용자 식별 정보에 상응하는 상기 서비스 기준 시간 정보 간의 시간 차가, 미리 설정된 시간 범위를 초과하는 경우, 상기 인증 시도가 비정상 인증 시도임을 나타내는 인증 확인 결과를 생성하는, 인증 에이전트 장치.
  15. 온라인 서비스 인증 시스템으로서,
    클라이언트 단말로부터 온라인 서비스 요청을 수신하는 경우, 시드 데이터(seed data)를 획득하는 포털 서버- 여기서, 상기 시드 데이터는, 상기 포털 서버를 통해 온라인 서비스를 요청한 사용자에 관한 사용자 식별 정보를 포함하며, 온라인 서비스에 대한 사용자 인증에 이용되는 인증 토큰의 생성에 이용됨-; 및
    상기 포털 서버로부터 상기 시드 데이터가 수신될 때마다 새로운 인증 키를 이용하여 인증 토큰을 생성하고, 상기 생성된 인증 토큰을 상기 포털 서버로 전송하고, 상기 온라인 서비스를 제공하는 서비스 서버로부터 인증 토큰 및 검증 데이터가 수신되는 경우, 상기 검증 데이터 및 상기 검증 데이터에 포함된 사용자 식별 정보에 상응하는 인증 키를 참조하여 검증 토큰을 생성하고, 상기 서비스 서버로부터 수신된 인증 토큰과 상기 검증 토큰의 일치 여부에 따라 상기 온라인 서비스에 대한 사용자의 인증 시도에 관한 인증 확인 결과를 상기 서비스 서버로 전송하는 인증 에이전트 장치
    를 포함하는, 온라인 서비스 인증 시스템.
  16. 제15항에 있어서,
    상기 인증 에이전트 장치는,
    상기 포털 서버로부터 상기 시드 데이터가 수신될 때마다 획득된 인증 키 또는 인증 키 확인 정보를 상기 시드 데이터에 포함된 사용자 식별 정보와 연계시켜 저장하는, 온라인 서비스 인증 시스템.
  17. 제15항에 있어서,
    상기 인증 에이전트 장치는,
    상기 시드 데이터가 수신될 때마다, 상기 포털 서버를 통한 사용자의 온라인 서비스 요청과 관련된 서비스 기준 시간 정보를, 상기 시드 데이터에 포함된 사용자 식별 정보와 연계시켜 저장하고,
    상기 검증 데이터에 포함된 사용자 식별 정보에 상응하는 상기 서비스 기준 시간 정보를 획득하고,
    상기 사용자 인증과 관련된 인증 기준 시간 정보와, 상기 획득된 서비스 기준 시간 정보 간의 시간 차가, 미리 설정된 시간 범위를 초과하는 경우, 상기 인증 시도가 비정상 인증 시도임을 나타내는 인증 확인 결과를 상기 서비스 서버로 전송하는, 온라인 서비스 인증 시스템.
  18. 제15항에 있어서,
    상기 서비스 서버가 게임 서버인 경우,
    상기 포털 서버는, 상기 시드 데이터와 상기 인증 에이전트 장치로부터 수신한 인증 토큰을 상기 클라이언트 단말에 설치된 게임 클라이언트로 전송하고,
    상기 게임 클라이언트로 전송된 인증 토큰과 상기 시드 데이터는 상기 서비스 서버를 통해서 상기 인증 에이전트 장치로 전송되며,
    상기 인증 에이전트 장치는, 상기 서비스 서버로부터 수신된 시드 데이터를 상기 검증 데이터로서 이용하는, 온라인 서비스 인증 시스템.
  19. 제1항 내지 제9항 중 어느 한 항에 의한 온라인 서비스 인증 방법을 실행하기 위한 프로그램이 기록되고 컴퓨터로 판독 가능한 기록 매체.
KR1020110054198A 2011-06-03 2011-06-03 인증 에이전트 장치, 온라인 서비스 인증 방법 및 시스템 KR101273285B1 (ko)

Priority Applications (3)

Application Number Priority Date Filing Date Title
KR1020110054198A KR101273285B1 (ko) 2011-06-03 2011-06-03 인증 에이전트 장치, 온라인 서비스 인증 방법 및 시스템
PCT/KR2011/006789 WO2012165716A1 (en) 2011-06-03 2011-09-15 Authentication agent apparatus, and method and system for authenticating online service
TW101109327A TW201251413A (en) 2011-06-03 2012-03-19 Authentication agent apparatus, and method and system for authenticating online service

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020110054198A KR101273285B1 (ko) 2011-06-03 2011-06-03 인증 에이전트 장치, 온라인 서비스 인증 방법 및 시스템

Publications (2)

Publication Number Publication Date
KR20120134942A true KR20120134942A (ko) 2012-12-12
KR101273285B1 KR101273285B1 (ko) 2013-06-11

Family

ID=47259538

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020110054198A KR101273285B1 (ko) 2011-06-03 2011-06-03 인증 에이전트 장치, 온라인 서비스 인증 방법 및 시스템

Country Status (3)

Country Link
KR (1) KR101273285B1 (ko)
TW (1) TW201251413A (ko)
WO (1) WO2012165716A1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2014107060A1 (ko) * 2013-01-07 2014-07-10 주식회사 안랩 모바일 데이터 보안 장치 및 방법

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI499269B (zh) * 2013-02-04 2015-09-01 Delta Networks Xiamen Ltd 認證與授權的方法及系統
WO2015023341A2 (en) * 2013-05-23 2015-02-19 Intertrust Technologies Corporation Secure authorization systems and methods
US9313024B1 (en) * 2013-06-13 2016-04-12 Masergy Communications, Inc. Keyed communication token
CN109861954B (zh) * 2018-07-24 2021-12-10 西安新路网络科技有限公司 一种认证方法、移动终端、pc端及辅助认证服务器
TWI746920B (zh) * 2019-01-04 2021-11-21 臺灣網路認證股份有限公司 透過入口伺服器跨網域使用憑證進行認證之系統及方法

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100908378B1 (ko) * 2002-06-28 2009-07-20 주식회사 케이티 에이전트를 이용한 타임스탬프 서비스 방법
US7900247B2 (en) 2005-03-14 2011-03-01 Microsoft Corporation Trusted third party authentication for web services
EP2051469A1 (en) 2007-10-15 2009-04-22 Axalto SA Delegation of authentication
KR20090054774A (ko) * 2007-11-27 2009-06-01 한국정보보호진흥원 분산 네트워크 환경에서의 통합 보안 관리 방법
KR100991651B1 (ko) * 2008-07-28 2010-11-02 주식회사 엔씨소프트 통신망을 이용한 pc 인증 및 과금 처리 시스템과 그 방법

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2014107060A1 (ko) * 2013-01-07 2014-07-10 주식회사 안랩 모바일 데이터 보안 장치 및 방법
KR101473656B1 (ko) * 2013-01-07 2014-12-24 주식회사 안랩 모바일 데이터 보안 장치 및 방법

Also Published As

Publication number Publication date
KR101273285B1 (ko) 2013-06-11
WO2012165716A1 (en) 2012-12-06
TW201251413A (en) 2012-12-16

Similar Documents

Publication Publication Date Title
US8800013B2 (en) Devolved authentication
JP4638339B2 (ja) ブルートゥースpinによって決定されたサービスを提供するブルートゥース装置及び方法
JP4880699B2 (ja) サービスアカウントを保護するための方法、システム、及び装置
JP4742903B2 (ja) 分散認証システム及び分散認証方法
US9025769B2 (en) Method of registering smart phone when accessing security authentication device and method of granting access permission to registered smart phone
US20090158394A1 (en) Super peer based peer-to-peer network system and peer authentication method thereof
KR101451359B1 (ko) 사용자 계정 회복
US20040186880A1 (en) Management apparatus, terminal apparatus, and management system
KR101273285B1 (ko) 인증 에이전트 장치, 온라인 서비스 인증 방법 및 시스템
KR101765917B1 (ko) 개인망 엔티티 인증을 위한 방법
CN108259502A (zh) 用于获取接口访问权限的鉴定方法、服务端及存储介质
KR20210095093A (ko) 탈중앙화 아이디 앱을 이용하여 인증 서비스를 제공하는 방법 및 이를 이용한 탈중앙화 아이디 인증 서버
RU2713604C1 (ru) Регистрация и аутентификация пользователей без паролей
US9954853B2 (en) Network security
JP2008181310A (ja) 認証サーバおよび認証プログラム
US20150328119A1 (en) Method of treating hair
CN105187417B (zh) 权限获取方法和装置
KR102372503B1 (ko) 탈중앙화 아이디 앱을 이용하여 인증 서비스를 제공하는 방법 및 이를 이용한 탈중앙화 아이디 인증 서버
KR101319586B1 (ko) 클라우드 컴퓨팅 시스템 및 클라이언트 인증방법
CN112383401B (zh) 一种提供身份鉴别服务的用户名生成方法及系统
KR102278808B1 (ko) Tcp 패킷을 이용한 단일 패킷 인증 시스템 및 그 방법
KR101996317B1 (ko) 인증변수를 이용한 블록체인 기반의 사용자 인증 시스템 및 그 방법
JP2004013560A (ja) 認証システム、通信端末及びサーバ
KR102558821B1 (ko) 사용자 및 디바이스 통합 인증 시스템 및 그 방법
KR102057564B1 (ko) 인증변수를 이용한 사용자 인증 시스템 및 그 방법

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
FPAY Annual fee payment

Payment date: 20160510

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20190329

Year of fee payment: 7