KR20170028461A - 게임 플레이 장치, 게임 제공 장치, 변조감지방법 및 실시간게임제재방법 - Google Patents

게임 플레이 장치, 게임 제공 장치, 변조감지방법 및 실시간게임제재방법 Download PDF

Info

Publication number
KR20170028461A
KR20170028461A KR1020150103758A KR20150103758A KR20170028461A KR 20170028461 A KR20170028461 A KR 20170028461A KR 1020150103758 A KR1020150103758 A KR 1020150103758A KR 20150103758 A KR20150103758 A KR 20150103758A KR 20170028461 A KR20170028461 A KR 20170028461A
Authority
KR
South Korea
Prior art keywords
game
client
session
modulation
server
Prior art date
Application number
KR1020150103758A
Other languages
English (en)
Inventor
신규철
Original Assignee
주식회사 넥슨코리아
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 주식회사 넥슨코리아 filed Critical 주식회사 넥슨코리아
Priority to KR1020150103758A priority Critical patent/KR20170028461A/ko
Publication of KR20170028461A publication Critical patent/KR20170028461A/ko
Priority to KR1020210047078A priority patent/KR102476075B1/ko

Links

Images

Classifications

    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/70Game security or game management aspects
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/30Interconnection arrangements between game servers and game devices; Interconnection arrangements between game devices; Interconnection arrangements between game servers
    • A63F13/35Details of game servers
    • A63F13/352Details of game servers involving special game server arrangements, e.g. regional servers connected to a national server or a plurality of servers managing partitions of the game world
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/70Game security or game management aspects
    • A63F13/71Game security or game management aspects using secure communication between game devices and game servers, e.g. by encrypting game data or authenticating players
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/70Game security or game management aspects
    • A63F13/75Enforcing rules, e.g. detecting foul play or generating lists of cheating players

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Business, Economics & Management (AREA)
  • Computer Security & Cryptography (AREA)
  • General Business, Economics & Management (AREA)
  • Computer And Data Communications (AREA)

Abstract

본 발명은 게임 플레이 장치, 게임 제공 장치, 변조감지방법 및 실시간게임제재방법에 관한 것으로, 본 발명의 제 1 측면에 따르면, 게임 제공 장치에 설치된 게임 서버와 통신하는 게임 클라이언트를 실행하여 온라인 게임을 수행하는 게임 플레이 장치로서, 상기 게임 클라이언트를 실행하는 클라이언트실행부, 상기 게임 제공 장치로부터 하나 이상의 게임 설정값이 수신되면, 수신된 게임 설정값을 복제하여 저장하는 설정값처리부, 상기 게임 클라이언트에 적용된 게임 설정값과, 복제하여 저장된 게임 설정값을 비교하는 설정값비교부, 그리고 상기 설정값비교부의 비교결과를 상기 게임 제공 장치로 전송하는 비교결과전송부를 포함할 수 있다.

Description

게임 플레이 장치, 게임 제공 장치, 변조감지방법 및 실시간게임제재방법{DEVICE FOR PLAYING AND PROVIDING ON-LINE GAME, METHOD FOR DETECTING DATA FALSIFICATION, AND METHOD FOR RESTRICTING GAME PLAY IN REAL TIME}
본 발명은 게임 플레이 장치, 게임 제공 장치, 변조감지방법 및 실시간게임제재방법에 관한 것으로, 보다 상세하게는 서버와 클라이언트에 의해 실행되는 온라인 게임에서, 크랙 프로그램 등을 이용하여 게임 프로그램이나 게임 데이터에 변조를 가하여 승패에 영향을 주는 행위를 실시간으로 감지하고 제재 조치를 취할 수 있도록 하는 게임 플레이 장치, 게임 제공 장치, 변조감지방법 및 실시간게임제재방법에 관한 것이다.
온라인 게임의 인기가 지속되면서, 온라인 게임을 플레이하는 유저의 연령대, 성별, 계층의 다양성도 증가하고 있다.
그에 따라 최근에는 다소 불량한 게임 유저들도 등장하고 있다. 과도한 승부욕으로 인하여 타 유저들보다 유리한 조건에서 게임을 플레이하고자 하는 불량 유저들의 수가 증가하고 있고, 그에 따라 이를 가능하게 하는 불법적인 프로그램의 사용 빈도도 증가하고 있다.
게임 프로그램에 변조를 가하여, 특정 플레이어가 컨트롤하는 캐릭터나 아이템의 능력치와 관련된 변수를 유리하게 조작하거나, 또는 특정 플레이어가 컨트롤하는 캐릭터나 아이템에 대한 컨트롤 입력이 가능한 시점 등 게임 플레이와 관련한 설정값을 조작하는 해킹 프로그램의 종류도 다양해지고 있다.
특히 이러한 해킹 프로그램을 개발하고 배포하는 유저들과, 이를 설치하여 이용하는 유저들이 증가함에 따라 게임의 공정성이 저해되고, 불법 프로그램을 이용하지 않는 선량한 플레이어들의 게임에 대한 흥미나 의욕을 저해하고 있다. 이에 따라, 정당하게 플레이하는 유저들의 게임 승률을 낮추어 선량한 플레이어들의 게임 이탈을 촉진하고 있으며, 이는 온라인 게임을 개발하고 서비스하는 서비스 제공자 입장에서도 큰 손실이 아닐 수 없다.
이를 방지하기 위하여 서비스 제공자들 입장에서는, 해킹 프로그램의 유저들을 타 유저들로부터 신고 받아 수동으로 관리하거나, 해킹 프로그램의 설치를 감지하여 차단하는 쉴드 프로그램을 게임 프로그램과 함께 제공하는 등 별도의 노력과 비용을 기울여야 하는 번거로움도 있었다.
관련하여 선행기술 문헌인 한국특허공개번호 10-2011-0024850호 “해킹 프로세스의 실행 차단방법”에서는, 보안프로세스가 검사대상프로세스를 선정하고 이를 핵 진단기준과 비교하여 해킹프로세스인지 확인하고, 해킹프로세스라고 판단되면 검사대상프로세스의 실행을 차단하는 방법에 대해 개시되어 있다.
그러나 이러한 종래기술에 의한 차단방법에 따르면, 실행되는 프로세스를 매번 감시하여야 하고 기존의 차단이력을 확인하거나 활용할 수 없을 뿐 아니라, 해킹 프로그램이 새로 추가될 때마다 보안 프로그램도 새로 개발해야 하는 등의 문제점이 있었다.
따라서 상술된 문제점을 해결하기 위한 기술이 필요하게 되었다.
한편, 전술한 배경기술은 발명자가 본 발명의 도출을 위해 보유하고 있었거나, 본 발명의 도출 과정에서 습득한 기술 정보로서, 반드시 본 발명의 출원 전에 일반 공중에게 공개된 공지기술이라 할 수는 없다.
본 발명의 일실시예는, 게임 플레이 장치, 게임 제공 장치, 변조감지방법 및 실시간게임제재방법을 제시하는 데에 목적이 있다.
상술한 기술적 과제를 달성하기 위한 기술적 수단으로서, 본 발명의 제 1 측면에 따르면, 게임 제공 장치에 설치된 게임 서버와 통신하는 게임 클라이언트를 실행하여 온라인 게임을 수행하는 게임 플레이 장치로서, 상기 게임 클라이언트를 실행하는 클라이언트실행부, 상기 게임 제공 장치로부터 하나 이상의 게임 설정값이 수신되면, 수신된 게임 설정값을 복제하여 저장하는 설정값처리부, 상기 게임 클라이언트에 적용된 게임 설정값과, 복제하여 저장된 게임 설정값을 비교하는 설정값비교부, 그리고 상기 설정값비교부의 비교결과를 상기 게임 제공 장치로 전송하는 비교결과전송부를 포함할 수 있다.
본 발명의 제 2 측면에 따르면, 게임 플레이 장치에 설치된 게임 클라이언트와 통신하는 게임 서버를 실행하여 온라인 게임을 수행하는 게임 제공 장치로서, 상기 게임 서버를 실행하는 서버실행부, 상기 게임 서버의 실행에 의하여 새로운 단위 게임이 개시되면 하나 이상의 게임 설정값을 상기 게임 플레이 장치로 제공하는 설정값전송부, 상기 게임 플레이 장치로부터. 상기 설정값전송부가 상기 게임 플레이 장치로 전송한 상기 하나 이상의 게임 설정값과 상기 게임 클라이언트에 적용된 게임 설정값의 비교결과가 수신되면, 상기 비교결과에 기초하여 상기 하나 이상의 게임 설정값에 대한 변조 여부를 검출하는 변조검출부, 그리고 상기 변조검출부가 상기 하나 이상의 게임 설정값의 변조를 확인하면, 상기 게임 플레이 장치에 대한 게임 플레이 제재 여부를 결정하는 제재결정부를 포함할 수 있다.
본 발명의 제 3 측면에 따르면, 서로 협력하여 온라인 게임을 실행하는 게임 서버와 게임 클라이언트가 각각 설치된 게임 제공 장치와 게임 플레이 장치를 포함하는 게임 시스템에 의하여 수행되는 변조감지방법으로서, 상기 게임 서버의 변조감시대상 게임 설정값과 상기 게임 클라이언트에 적용된 변조감시대상 게임 설정값을 비교하는 단계, 그리고 상기 비교하는 단계의 비교결과, 상기 게임 서버의 변조감시대상 게임 설정값과 상기 게임 클라이언트에 적용된 변조감시대상 게임 설정값이 상이하면 상기 게임 클라이언트가 변조된 것으로 판단하는 단계를 포함할 수 있다.
본 발명의 제 4 측면에 따르면, 서로 협력하여 온라인 게임을 실행하는 게임 서버와 게임 클라이언트가 각각 설치된 게임 제공 장치와 게임 플레이 장치를 포함하는 게임 시스템에 의하여 수행되는 실시간게임제재방법으로서, 상기 게임 서버와 상기 게임 클라이언트 사이에 세션을 형성하여 온라인 게임을 실행하는 단계; 상기 게임 제공 장치가 상기 게임 클라이언트의 변조를 감지하면, 상기 게임 클라이언트에 대한 제재 여부를 결정하는 단계; 그리고 상기 게임 클라이언트에 대한 제재가 결정되면, 상기 게임 제공 장치가 상기 게임 클라이언트와 상기 게임 서버 사이에 형성된 세션을 해제하여 온라인 게임 실행을 종료하는 단계를 포함할 수 있다.
나아가 본 발명의 제 5 측면에 따르면, 서로 협력하여 온라인 게임을 실행하는 게임 서버와 게임 클라이언트가 각각 설치된 게임 제공 장치와 게임 플레이 장치를 포함하는 게임 시스템에 의하여 수행되는 변조감지방법을 수행하는 프로그램이 기록된 컴퓨터 판독가능한 기록매체로서, 상기 변조감지방법은, 상기 게임 서버의 변조감시대상 게임 설정값과 상기 게임 클라이언트에 적용된 변조감시대상 게임 설정값을 비교하는 단계, 그리고 상기 비교하는 단계의 비교결과, 상기 게임 서버의 변조감시대상 게임 설정값과 상기 게임 클라이언트에 적용된 변조감시대상 게임 설정값이 상이하면 상기 게임 클라이언트가 변조된 것으로 판단하는 단계를 포함할 수 있다.
또한 본 발명의 제 6 측면에 따르면, 서로 협력하여 온라인 게임을 실행하는 게임 서버와 게임 클라이언트가 각각 설치된 게임 제공 장치와 게임 플레이 장치를 포함하는 게임 시스템에 의하여 수행되는 변조감지방법을 수행하기 위해 기록매체에 저장된 컴퓨터 프로그램으로서, 상기 변조감지방법은, 상기 게임 서버의 변조감시대상 게임 설정값과 상기 게임 클라이언트에 적용된 변조감시대상 게임 설정값을 비교하는 단계, 그리고 상기 비교하는 단계의 비교결과, 상기 게임 서버의 변조감시대상 게임 설정값과 상기 게임 클라이언트에 적용된 변조감시대상 게임 설정값이 상이하면 상기 게임 클라이언트가 변조된 것으로 판단하는 단계를 포함할 수 있다.
전술한 본 발명의 과제 해결 수단 중 어느 하나에 의하면, 본 발명의 일실시예는 게임 플레이 장치, 게임 제공 장치, 변조감지방법 및 실시간게임제재방법을 제시할 수 있다.
또한, 본 발명의 과제 해결 수단 중 어느 하나에 의하면, 온라인 게임 서비스 제공자가 갖고 있는 게임 설정값을 이용하여 해킹 여부를 용이하게 검출할 수 있는 게임 플레이 장치, 게임 제공 장치, 변조감지방법 및 실시간게임제재방법을 제시할 수 있다. 이를 통해 해킹 프로그램마다 각각 별개의 보안 프로그램을 개발할 필요가 없고, 해킹 여부 발견에 소요되는 시간이나 노력을 최소화할 수 있다.
그리고 본 발명의 과제 해결 수단 중 어느 하나에 의하면, 해킹 여부를 판단함과 동시에 관련 유저의 게임 플레이를 중단시킬 수 있는 게임 플레이 장치, 게임 제공 장치, 변조감지방법 및 실시간게임제재방법을 제시할 수 있다. 이를 통해 실시간으로 해킹 여부를 감시하고 불량 유저를 선별하여 게임 플레이를 중단시킴으로써 필요한 조치를 빠르게 취할 수 있고, 선량한 유저의 피해를 최소화할 수 있다.
나아가 본 발명의 과제 해결 수단 중 어느 하나에 의하면, 각 게임 유저의 변조 내역이나 차단 내역을 기록하고 이를 해당 유저의 다음 접속 시도 시에 활용하는 게임 플레이 장치, 게임 제공 장치, 변조감지방법 및 실시간게임제재방법을 제시할 수 있다. 이를 통해 변조 발생 빈도가 높은 게임 설정값을 파악하여 효율적으로 해킹을 차단할 수 있다.
또한 본 발명의 과제 해결 수단 중 어느 하나에 의하면, 회원 가입한 유저뿐 아니라 체험 아이디 등과 같이 임시의 계정을 할당 받아 게임을 플레이하는 유저들에 대해서도 제재 이력을 관리할 수 있는 게임 플레이 장치, 게임 제공 장치, 변조감지방법 및 실시간게임제재방법을 제시할 수 있다. 이를 통해 임시의 계정을 이용한 반복적인 해킹 시도를 차단할 수 있다.
본 발명의 과제 해결 수단 중 어느 하나에 의하면, 게임 유저들에 대한 제재 내역을 검색 및 열람할 수 있도록 하는 게임 플레이 장치, 게임 제공 장치, 변조감지방법 및 실시간게임제재방법을 제시할 수 있다. 이를 통해 기간 별, 유형 별, 게임 타입 별로 제재 유저들의 현황을 파악할 수 있다.
본 발명에서 얻을 수 있는 효과는 이상에서 언급한 효과들로 제한되지 않으며, 언급하지 않은 또 다른 효과들은 아래의 기재로부터 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 명확하게 이해될 수 있을 것이다.
도 1은 본 발명의 일실시예에 따른 온라인 게임 시스템의 구성도이다.
도 2는 본 발명의 일실시예에 따른 게임 플레이 장치의 구성을 도시한 블록도이다.
도 3은 본 발명의 일실시예에 따른 게임 제공 장치의 구성을 도시한 블록도이다.
도 4는 본 발명의 일실시예에 따른 변조감지방법 및 이를 이용한 실시간게임제재방법을 설명하기 위한 순서도이다.
도 5는 본 발명의 일실시예에 따른 실시간게임제재방법에서 제재상태정보를 제공하는 과정을 설명하기 위한 예시도이다.
아래에서는 첨부한 도면을 참조하여 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있도록 본 발명의 실시예를 상세히 설명한다. 그러나 본 발명은 여러 가지 상이한 형태로 구현될 수 있으며 여기에서 설명하는 실시예에 한정되지 않는다. 그리고 도면에서 본 발명을 명확하게 설명하기 위해서 설명과 관계없는 부분은 생략하였으며, 명세서 전체를 통하여 유사한 부분에 대해서는 유사한 도면 부호를 붙였다.
명세서 전체에서, 어떤 부분이 다른 부분과 "연결"되어 있다고 할 때, 이는 "직접적으로 연결"되어 있는 경우뿐 아니라, 그 중간에 다른 소자를 사이에 두고 "전기적으로 연결"되어 있는 경우도 포함한다. 또한 어떤 부분이 어떤 구성요소를 "포함"한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성요소를 더 포함할 수 있는 것을 의미한다.
이하 첨부된 도면을 참고하여 본 발명을 상세히 설명하기로 한다.
다만 이를 설명하기에 앞서, 아래에서 사용되는 용어들의 의미를 먼저 정의한다.
이하에서 ‘온라인 게임’은, 게임 클라이언트 프로그램과 게임 서버 프로그램이 네트워크를 통해 데이터를 교환하면서 서로 협력하여 실행하는 방식의 게임 서비스를 지시한다. 그리고 이하에서 이와 같은 온라인 게임을 실행하기 위한 클라이언트 프로그램을 ‘게임 클라이언트’로, 서버 프로그램을 ‘게임 서버’로 표현하여 설명한다.
또한 이하에서 ‘게임객체’는 상술한 게임공간 내에 배치되어 게임 결과에 영향을 주는 그래픽 객체들을 지시한다. 특히 플레이어의 제어에 의하여 선택되거나, 이동되거나, 상태가 변경되는 객체, 즉 플레이어의 제어 대상들을 포함한다. 예를 들어, RPG(Roll Playing Game)의 캐릭터, 카드게임의 카드, 퍼즐게임의 블록 등이 될 수 있다. 또한 상술한 게임공간 내에 배치되어 게임 결과에 영향을 주는 그래픽 객체 중에서, 플레이어가 제어하는 게임객체에 영향을 주되, 플레이어에 의하여 제어되지 않고 게임 자체의 설정에 의해 자동으로 이동되거나 상태가 변경되는 객체들을 포함할 수 있다. 예를 들어, RPG의 NPC(Non-Player Character), 슈팅게임의 지형지물 등이 될 수 있다.
그리고 ‘아이템’은 플레이어의 게임 수행 결과를 향상시키는데 이용되는 게임요소로서, 상술한 게임객체들 중 플레이어가 제어하는 제어대상의 게임 수행 능력을 적어도 일시적으로 향상시키거나, 또는 게임객체들 중 플레이어의 게임 수행을 저지하는 객체들이나 상대방 플레이어가 제어하는 게임객체의 게임 수행 능력을 적어도 일시적으로 퇴보시키거나, 또는 플레이어에게 주어진 게임 수행 기회나 게임 내에서의 특정 동작의 실행 또는 특수능력의 발휘 기회를 추가적으로 부여하는 게임객체 또는 그 외의 기타 게임요소일 수 있다. 아이템은 게임 내에서 판매 될 수 있고, 플레이어간의 아이템 교환이나 거래, 선물하기가 가능할 수 있다. 특히 이러한 아이템은 플레이어의 선택에 따라 사용 여부나 사용 시기가 결정되는 게임 내의 선택적 요소이다. 아이템은 각각 속성을 가질 수 있으며, 아이템에 의하여 향상되는 게임 객체의 능력과 관련된 하나 이상의 파라미터를 포함할 수 있다.
한편 '캐릭터'는 게임공간 내에 등장하는 허구적 인물로서, 각각의 플레이어에 의하여 제어되는 객체이자 게임 동작을 수행하는 주체이다. 후술하겠지만 각각의 캐릭터는 2차원 또는 3차원의 그래픽 이미지로 시각화되며, 여러 가지 속성에 의하여 정의될 수 있다. 여기서 캐릭터의 속성은, 캐릭터의 능력와 관련된 하나 이상의 파라미터를 포함할 수 있다.
이하에서 ‘게임 설정값’은 온라인 게임을 실행하는데 필요한 여러 종류의 파라미터를 포함할 수 있다. 예를 들어, 상술한 아이템 속성이나 캐릭터 속성과 관련한 파라미터를 포함할 수 있다. 구체적으로는 특정 캐릭터의 전방 이동 속도와 후방 이동 속도에 대한 파라미터가 각각 게임 설정값에 포함될 수 있다. 또한 구체적인 예로, 해당 캐릭터가 부스터(Booster) 아이템을 사용할 때의 전방 이동 속도가 게임 설정값에 포함될 수 있다.
또한 게임 설정값은, 게임의 운영과 관련한 설정값, 예를 들어 게임 플레이 환경이나 게임의 개시 시점, 종료 시점 등에 대한 ‘시스템 설정값’을 포함할 수 있다. 구체적으로는 예를 들어, 단위 게임이 개시될 때 각 플레이어로부터 입력 받는 입력 신호의 처리 가능 상태를 나타내는 설정값을 포함할 수 있다. 이때 시스템 설정값은, 게임의 운영을 위하여 서로 다른 둘 이상의 시점 각각에 대해 그 값이 변동되도록 설정될 수 있다. 일례로 단위 게임의 개시 시점으로부터 3 초 내에는 False 값을 갖던 시스템 설정값이 3초 경과 후 True 값으로 변경됨으로써 단위 게임 개시 시점으로부터 3초가 경과한 후에만 플레이어들이 캐릭터를 제어 가능하게 할 수 있다.
위에 정의한 용어 이외에 설명이 필요한 용어는 아래에서 각각 따로 설명한다.
이하 첨부된 도면을 참조하여 본 발명을 상세히 설명하기로 한다.
도 1은 본 발명의 일실시예에 따른 온라인 게임 시스템의 구성도이고, 도 2는 본 발명의 일실시예에 따른 게임 플레이 장치의 구성을 도시한 블록도이며, 도 3은 본 발명의 일실시예에 따른 게임 제공 장치의 구성을 도시한 블록도이다.
도 1에 도시된 바와 같이 온라인 게임 시스템(100)은 게임 플레이 장치(10), 게임 제공 장치(20)를 포함할 수 있으며, 게임 플레이 장치(10)와 게임 제공 장치(20)는 네트워크(N)를 통해 서로 통신할 수 있다.
이때 ‘네트워크(N)’는 근거리 통신망(Local Area Network; LAN), 광역 통신망(Wide Area Network; WAN), 부가가치 통신망(Value Added Network; VAN), 개인 근거리 무선통신(Personal Area Network; PAN), 이동 통신망(mobile radio communication network), Wibro(Wireless Broadband Internet), Mobile WiMAX, HSDPA(High Speed Downlink Packet Access) 위성 통신망, LTE(long term evolution) 망 등과 같은 모든 종류의 유/무선 네트워크로 구현될 수 있다.
한편 게임 플레이 장치(10)는 게임을 플레이하는 각각의 유저들(이하 ‘플레이어’라 함)이 사용하는 정보처리장치로서, 상술한 게임 클라이언트를 실행하여 각 플레이어가 온라인 게임 서비스를 제공받도록 한다.
게임 플레이 장치(10)는 네트워크(N)를 통해 원격지의 서버에 접속하거나, 타 단말 및 서버와 연결 가능한 컴퓨터나 휴대용 단말기, 텔레비전, 웨어러블 디바이스(Wearable Device) 등으로 구현될 수 있다. 여기서, 컴퓨터는 예를 들어, 웹 브라우저(WEB Browser)가 탑재된 노트북, 데스크톱(desktop), 랩톱(laptop)등을 포함하고, 휴대용 단말기는 예를 들어, 휴대성과 이동성이 보장되는 무선 통신 장치로서, PCS(Personal Communication System), PDC(Personal Digital Cellular), PHS(Personal Handyphone System), PDA(Personal Digital Assistant),GSM(Global System for Mobile communications), IMT(International Mobile Telecommunication)-2000, CDMA(Code Division Multiple Access)-2000, W-CDMA(W-Code Division Multiple Access), Wibro(Wireless Broadband Internet), 스마트폰(Smart Phone), 모바일 WiMAX(Mobile Worldwide Interoperability for Microwave Access) 등과 같은 모든 종류의 핸드헬드(Handheld) 기반의 무선 통신 장치를 포함할 수 있다. 또한, 텔레비전은 IPTV(Internet Protocol Television), 인터넷 TV(Internet Television), 지상파 TV, 케이블 TV 등을 포함할 수 있다. 나아가 웨어러블 디바이스는 예를 들어, 시계, 안경, 액세서리, 의복, 신발 등 인체에 직접 착용 가능한 타입의 정보처리장치로서, 직접 또는 다른 정보처리장치를 통해 네트워크를 경유하여 원격지의 서버에 접속하거나 타 단말과 연결될 수 있다.
한편 게임 제공 장치(20)는 상술한 게임 플레이 장치(10)와 서버-클라이언트 시스템으로 구현되어 게임 플레이 장치(10)의 접속을 받아들이는 통상의 서버로 구현될 수 있다. 즉, 게임 제공 장치(20)는 게임 플레이 장치(10)에 설치되어 구동하는 게임 클라이언트와 함께 동작하는 게임 서버를 실행하는 역할을 수행한다. 이러한 게임 제공 장치(20)는 게임 서버를 실행하기 위한 하나 이상의 하드웨어 장치와, 로드밸런싱 장치, 데이터베이스 등 일군의 서버 시스템으로 구현될 수 있다.
그에 따라 게임 플레이 장치(10)와 게임 제공 장치(20)는 네트워크(N)를 통해 지속적으로 통신하면서 온라인 게임 서비스를 구현한다.
이때 게임 제공 장치(20)와 게임 플레이 장치(10)에서 각각 구동하는 게임 서버와 게임 클라이언트는 세션을 형성하여 데이터를 교환함으로써 각 플레이어마다 서로 다른 사용자 계정을 이용하여 게임 플레이를 할 수 있도록 한다. 여기서 사용자 계정은, 이미 회원 가입 절차를 마친 플레이어에 대한 기 등록된 사용자 계정일 수도 있고, 임시의 일회성 사용자 계정일 수도 있다.
온라인 게임은 각 계정에 대하여 게임 서버와 게임 클라이언트 사이에 세션이 형성됨으로써 실행이 개시될 수 있고, 세션이 해제되어 종료됨으로써 실행이 중단될 수 있다.
게임 플레이 장치(10)를 보다 구체적으로 설명하면, 도 2에 도시된 바와 같이 클라이언트실행부(11)를 포함할 수 있다. 클라이언트실행부(11)는 게임 플레이 장치(10)에 설치된 게임 클라이언트를 실행한다. 이때 게임 클라이언트는 실행과 동시에 게임 서버로 접속을 시도한다. 따라서 클라이언트실행부(11)는 게임 클라이언트를 실행함으로써, 게임 제공 장치(20)로 게임 클라이언트와 게임 서버 사이의 세션 형성을 요청한다.
이때 클라이언트실행부(11)는 게임 클라이언트를 실행할 때, 플레이어로부터 계정 정보를 입력받을 수 있다. 이 경우 클라이언트실행부(11)는 입력받은 계정 정보를 게임 제공 장치(20)로 전달함으로써, 해당 계정 정보에 대응하는 사용자 계정에 대한 세션 형성을 요청할 수 있다.
한편 클라이언트실행부(11)는 게임 클라이언트를 실행할 때, 플레이어로부터 계정 정보를 입력받지 않을 수도 있다. 이 경우 클라이언트실행부(11)는 게임 제공 장치(20)로 일회성의 임시 계정에 대한 세션 형성을 요청할 수 있다.
또한 클라이언트실행부(11)는 게임 제공 장치(20)가 게임 클라이언트와 게임 서버 사이에 형성된 세션을 해제하면 게임 클라이언트의 실행을 중단한다. 특히 게임 제공 장치(20)는 세션의 해제 원인이 게임 제공 장치(20)의 제재 조치에 기인한 경우, 세션을 해제하면서 동시에 제재 메시지(플레이어가 제재 조치 되었음을 통지하는 메시지로서 제재 기간에 대한 정보를 포함할 수 있음)를 게임 플레이 장치(10)로 전송할 수 있고, 클라이언트실행부(11)는 게임 클라이언트의 실행을 중단하면서 제재 메시지를 플레이어에게 표시할 수 있다.
그리고 게임 플레이 장치(10)는 설정값처리부(12)를 포함할 수 있다. 설정값처리부(12)는 게임 제공 장치(20)로부터 하나 이상의 게임 설정값, 특히 변조감시대상으로 선정된 게임 설정값(이하 ‘변조감시대상 게임 설정값’이라 함)이 수신되면, 수신된 게임 설정값을 복제하여 게임 플레이 장치(10)에 저장한다. 이때 게임 제공 장치(20)는 게임 클라이언트가 실행되어 게임 클라이언트와 게임 서버 사이에 세션이 형성된 후, 매 단위 게임(각각의 게임 라운드)이 개시될 때마다 변조감시대상 게임 설정값을 포함하는 복수의 게임 설정값을 게임 플레이 장치(10)로 전송할 수 있으며, 설정값처리부(12)는 이를 복제하여 저장한다.
또한 게임 제공 장치(20)는 단위 게임이 개시된 후 종료되기 전까지 지속적으로 게임 설정값을 게임 플레이 장치(10)로 전송하는 것을 반복할 수 있다.
또한 설정값처리부(12)는 게임 제공 장치(20)로부터 변조감시대상 게임 설정값을 포함하는 복수의 게임 설정값이 수신되면, 이를 게임 클라이언트의 게임 설정값에 적용할 수 있다.
그리고 본 발명의 실시예에 의한 게임 플레이 장치(10)는 설정값비교부(13)를 포함할 수 있다. 설정값비교부(13)는 게임 클라이언트에 적용된 게임 설정값과, 게임 제공 장치(20)로부터 수신된 후 복제하여 저장된 게임 설정값을 비교한다.
이때 게임 제공 장치(20)가 전송하는 게임 설정값 전체가 변조감시대상일 수도 있고, 이 중 일부만이 변조감시대상으로서 설정값비교부(13)에서의 비교 대상이 될 수도 있다. 일례로 게임 제공 장치(20)가 총 50개의 파라미터를 게임 설정값으로서 전송한 경우, 게임 플레이 장치(10)는 이 중에서 미리 선정된 10개의 파라미터만을 변조감시대상 게임 설정값으로서 비교할 수 있다.
또한 설정값비교부(13)는 게임 클라이언트에 적용된 게임 설정값과 게임 제공 장치(20)가 전송한 그대로 복제된 게임 설정값을 비교하여, 불일치하는 파라미터의 종류에 대한 정보를 포함하는 비교결과 데이터를 생성할 수 있다. 또는 불일치하는 파라미터의 종류나 값에 대한 정보에 기초하여 게임 설정값의 변조 여부를 결정하고 변조 여부에 대한 정보를 비교결과 데이터를 생성할 수 있다. 즉 비교결과 데이터는 단순한 비교결과를 포함하거나 그에 기초한 변조 여부에 대한 판단을 포함할 수 있다.
또한 설정값비교부(13)는 게임 설정값 중, 적어도 둘 이상의 서로 다른 시점에 대해 서로 다른 값을 갖도록 설정된 시스템 설정값과 관련하여, 적어도 두 시점에 대하여 각각 게임 클라이언트에 적용된 시스템 설정값을 획득하여, 게임 제공 장치(20)로부터 전송되어 복제 및 저장된 시스템 설정값과 비교할 수 있다. 즉, 시점별로 시스템 설정값을 비교하여 비교결과 데이터를 생성함으로써, 변조 여부를 검출할 수 있도록 한다.
일례로, 게임 개시 시로부터 3초 내에는 False 값이 유지되고 3초 이후에 True 값으로 변동되도록 설정된 시스템 설정값과 관련하여, 게임 개시로부터 3초 내의 범위의 하나 이상의 시점에 게임 클라이언트에 적용된 시스템 설정값이 True로 미리 변경되는지 여부를 확인할 수 있다. 즉 복제된 시스템 설정값에 의하면, 적어도 3초 내의 범위에서는 어떤 시점에 획득된 시스템 설정값이라도 False로 유지되어야 하는데, 게임 클라이언트에 True 값이 적용됨을 확인하면, 이러한 비교결과 데이터는 게임 클라이언트가 변조되었다는 판단 근거가 될 수 있다.
그리고 게임 플레이 장치(10)는 설정값비교부(13)에 의하여 생성된 비교결과 데이터를 게임 제공 장치(20)로 전송할 수 있다. 이때 본 발명의 실시예에서 게임 제공 장치(20)는 매 단위 게임 개시 시에 게임 설정값을 게임 플레이 장치(10)로 전송할 수 있으므로, 비교결과데이터도 단위 게임 각각이 개시될 때마다 게임 제공 장치(20)로 전달될 수 있다. 또한 게임 제공 장치(20)는 실시예에 따라 매 단위 게임 개시 시점부터 단위 게임이 종료할 때까지 수회에 걸쳐 게임 설정값을 게임 플레이 장치(10)로 전송할 수 있으므로, 게임 제공 장치(20)로부터 새로운 게임 설정값이 게임 플레이 장치(10)로 제공될 때마다 새로운 비교결과데이터가 게임 제공 장치(20)로 전달될 수 있다.
이와 같이 게임 플레이 장치(10) 측에서, 게임 클라이언트의 게임 설정값 변조 여부를 게임 진행과 동시에 실시간으로 감지함으로써 해킹 여부를 판단하므로, 해킹 프로그램마다 별개의 보안 프로그램을 개발하여 사용할 필요성이 없어, 해킹 여부를 판단하기 위한 노력을 최소화할 수 있다. 특히 게임 클라이언트 변조의 원인이 되는 해킹 프로그램이 아니라, 해킹 프로그램 사용의 결과인 게임 설정값의 변조 자체를 감지하므로 서로 다른 원인에 기인한 해킹이라도 효율적으로 감지할 수 있다는 장점이 있다. 나아가 변조감시대상이 되는 게임 설정값을, 플레이어들의 해킹 패턴이나 빈도에 따라 적절히 선택할 수 있으므로 해킹 감시에 소요되는 리소스를 최소화할 수 있다.
한편 도 3에 도시된 바와 같이 게임 제공 장치(20)는 게임 서버와 게임 클라이언트 사이에 세션이 형성되도록 하는 세션관리부(21)를 포함할 수 있다. 게임 플레이 장치(10)에서 게임 클라이언트가 실행되면, 게임 클라이언트는 게임 서버와의 세션을 형성하여 동작하는데, 이때 세션관리부(21)는, 세션 형성을 요청한 게임 클라이언트의 계정 정보나 IP 주소에 연관하여 저장된 제재상태정보를 참조하여 선택적으로 세션을 형성하거나 거절할 수 있다.
제재상태정보는 후술하겠으나, 각각의 기 등록된 사용자 계정 또는 일회성의 임시 계정을 사용한 게임 플레이 장치(10)의 IP주소 각각에 연관하여 저장될 수 있으며, 후술할 제재결정부가 기 등록된 사용자 계정이나 임시 계정에 대하여 제재를 결정할 때, 제재 기간을 포함하여 각각의 기 등록된 사용자 계정의 계정 정보나 임시 계정을 사용한 게임 플레이 장치(10)의 IP주소에 대해 기록될 수 있다.
따라서 세션관리부(21)는 접속을 시도하는 게임 플레이 장치(10)가 기 등록된 사용자 계정에 대한 세션 형성을 요청하는 경우, 해당 사용자 계정의 제재상태를 확인하여 현재 제재 기간에 해당하면 접속을 거절할 수 있다.
마찬가지로 세션관리부(21)는 접속을 시도하는 게임 플레이 장치(10)가 일회성의 임시 계정을 이용한 세션 형성을 요청하는 경우, 게임 플레이 장치(10)의 IP주소를 확인하고 해당 IP 주소와 관련하여 제재상태정보가 등록되어 있다면 제재상태를 확인하고, 현재 제재 기간에 해당하면 접속을 거절할 수 있다.
그러나 접속을 시도한 게임 플레이 장치(10)에 대해 세션관리부(21)가 정상적으로 세션을 형성하도록 한 경우, 서버실행부(22)가 게임 서버를 실행하여 게임 클라이언트와 게임 서버 사이에 온라인 게임의 실행이 개시되도록 한다. 즉, 서버실행부(22)는 게임 서버를 실행하는 게임 제공 장치(20)의 구성이다.
나아가 세션관리부(21)는 후술할 제재결정부(26)가 이미 게임 서버와 세션을 형성하여 구동하고 있는 게임 클라이언트에 대응하는 계정에 대해 제재를 결정하면, 해당 세션을 종료함으로써 해당 게임 클라이언트에 대한 게임 서버의 실행을 중단시킬 수 있다. 즉, 세션관리부(21)는 후술할 실시간의 제재 조치에 대응하여 게임 서버와 게임 클라이언트 사이에 형성된 세션을 종료시킴으로써, 불량한 플레이어의 게임 플레이를 즉시 중단시킬 수 있다.
또한 게임 제공 장치(20)는 설정값전송부(23)를 포함할 수 있다. 설정값전송부(23)는 온라인 게임의 실행이 개시되면 하나 이상의 게임 설정값을 게임 플레이 장치(10)로 전송할 수 있다. 이때 게임 설정값은, 게임 수행에 필요한 복수의 설정값을 포함할 수 있고, 이 중 적어도 일부의 설정값은 상술한 변조감시대상 게임 설정값으로 선정된 설정값일 수 있다.
특히 설정값전송부(23)는 온라인 게임이 실행된 이후에, 해당 온라인 게임이 각각 구분되는 독립된 게임 라운드인 단위 게임으로 구성되는 경우(일례로, 플레이어들이 각각 대기방에서 대기하다가 하나의 게임 그룹을 형성하면, 형성된 게임 그룹에 대해 단위 게임을 수행하는 경우), 매 단위 게임의 개시 시마다 매번 게임 설정값을 게임 플레이 장치(10)로 전송할 수 있다. 또한 설정값전송부(23)는 실시예에 따라 단위 게임이 개시된 후 종료되기 전까지 지속적으로 게임 설정값을 게임 플레이 장치(10)로 전송하는 것을 반복할 수 있다. 특히 후술할 변조검출부(24)의 판단 결과 게임 클라이언트가 변조되지 않은 것으로 판단되고, 단위 게임이 종료되지 않은 상태이면, 다시 게임 설정값을 게임 플레이 장치(10)로 전송할 수 있다.
또한 게임 제공 장치(20)는 게임 플레이 장치(10)로부터 상술한 비교결과 데이터가 수신되면, 비교결과 데이터에 기초하여 변조 여부를 검출하는 변조검출부(24)를 포함할 수 있다. 비교결과 데이터는 상술한 바와 같이 설정값전송부(23)가 제공한 게임 설정값과 게임 클라이언트에 적용된 게임 설정값 중 서로 상이한 값을 갖는 파라미터에 대한 정보를 포함할 수 있는데, 이 경우 변조검출부(24)는 그에 기초하여 다시 변조 여부를 판정하는 과정을 거칠 수 있다. 또한 비교결과 데이터가 이미 게임 플레이 장치(10)에서 판정한 변조 여부에 대한 정보를 포함하는 경우 변조검출부(24)는 이를 수신함으로써 바로 게임 설정값의 변조를 판정할 수 있다.
한편 본 발명의 실시예에 의한 게임 제공 장치(20)는 변조기록관리부(25)를 포함할 수 있다. 변조기록관리부(25)는 변조검출부(24)가 게임 클라이언트의 변조를 감지할 때마다, 게임 클라이언트와 게임 서버 사이에 형성된 세션에 대응하는 계정(기 등록된 사용자 계정과 IP주소를 이용한 일회성의 임시 계정을 포함할 수 있다)에 연관하여 변조기록을 저장할 수 있다. 즉, 변조기록관리부(25)는 기 등록된 사용자 계정의 계정 정보 또는 IP주소에 연관하여 변조기록을 저장할 수 있으며, 변조기록에는 변조된 게임 설정값의 종류에 대한 정보와 변조가 검출된 시간에 대한 정보가 포함될 수 있다.
그리고 본 발명의 실시예에 의한 게임 제공 장치(20)는 제재결정부(26)를 포함할 수 있다. 제재결정부(26)는 상술한 변조검출부(24)가 게임 설정값에 대한 변조를 확인하면, 게임 플레이 장치(10)에 대한 제재 여부를 결정할 수 있다. 또한 제재결정부(26)는 제재 여부를 결정함에 있어서, 제재 기간을 함께 결정할 수도 있다.
제재결정부(26)는 제재 여부와 제재 기간을 결정함에 있어서, 변조기록관리부(25)에 의해 저장된 변조기록을 참조할 수 있다. 예를 들어, 제재결정부(26)는 변조기록에 변조 내역이 한번도 기록되지 않은 계정과 관련하여 최초로 변조가 검출된 경우에는 제재 조치를 취하지 않을 수도 있다. 그러나 이미 변조기록에 변조 이력이 있는 계정과 관련하여서는 제재 조치가 취해지도록 제재를 결정할 수 있고, 나아가 변조 빈도가 높을수록 긴 제재 기간을 결정할 수 있다.
제재결정부(26)는 제재 여부와 제재 기간을 결정하면, 제재 여부와 제재 기간에 대한 정보를 포함하는 제재상태정보를 해당 계정(기 등록된 사용자 계정과 IP주소를 이용한 일회성의 임시 계정을 포함할 수 있다)의 계정 정보나 IP주소에 연관하여 저장할 수 있다.
한편 본 발명의 실시예에 의한 게임 제공 장치(20)는 제재결정부(26)에 의하여 저장된 제재상태정보를 검색 및 열람하도록 할 수 있는데, 이는 제재상태정보에 대한 접근 권한이 부여된 일부의 관리자 계정에 대해서만 허용될 수도 있다. 이때 관리자 계정을 이용하여 게임 제공 장치(20)의 제재상태정보에 접근하는 관리자단말(미도시)은 통상의 정보처리장치가 될 수 있다.
이와 같이 게임 제공 장치(20)는 게임 클라이언트의 변조가 확인되면, 게임 플레이 장치(10)에서 실행되어 변조의 원인이 되는 해킹 프로그램을 제거하거나 실행을 차단하는 것이 아니라, 해킹 프로그램을 사용하는 플레이어의 게임 플레이를 실시간으로 중단시킴으로써, 플레이어들 스스로 해킹 프로그램의 사용을 중단하고 삭제하도록 유도할 수 있다.
또한 게임 제공 장치(20)에 의하여 불량 플레이어가 실시간으로 게임에서 배제되므로 선량한 플레이어들의 피해를 사전에 방지할 수 있고, 게임의 공정성을 유지할 수 있다. 특히 매 단위 게임이 개시될 때마다 게임에 참여한 플레이어들의 게임 클라이언트 변조 여부를 판단하므로 다른 플레이어들의 피해를 최소화할 수 있다.
또한 게임 클라이언트의 변조가 확인되어 제재 조치된 계정에 대해서는, 제재 기간을 결정하여 관리하므로, 해당 계정을 이용하는 플레이어가 다시 게임에 접속하는 경우마다 변조 여부를 판단할 필요 없이 바로 게임 접속을 차단할 수 있다. 따라서 효율적으로 각 계정을 관리할 수 있다. 특히 기 등록된 사용자 계정을 이용하지 않고 체험 아이디와 같은 임시 계정을 이용하는 플레이어들은, 매번 새로운 임시 계정을 이용하여 게임을 플레이하기 때문에, 종래에는 임시 계정을 이용하여 게임 클라이언트를 반복적으로 변조하는 불량한 플레이어들을 제재하기 어려운 문제점이 있었다. 그러나 본 발명의 실시예에서는 게임 제공 장치(20)가 이러한 임시 계정의 플레이어들에 대해서도 IP주소를 이용하여 제재상태정보를 관리함으로써, 이러한 문제점도 해결할 수 있게 되었다.
이하에서는, 도 4 및 도 5를 참조하여 게임 클라이언트에 대한 변조감지방법과 이를 이용한 실시간게임제재방법을 설명한다.
도 4는 본 발명의 일실시예에 따른 변조감지방법 및 이를 이용한 실시간게임제재방법을 설명하기 위한 순서도이고, 도 5 본 발명의 일실시예에 따른 실시간게임제재방법에서 제재상태정보를 제공하는 과정을 설명하기 위한 예시도이다.
도 4에 도시된 실시예에 따른 변조감지방법 및 실시간게임제재방법은 도 1 내지 도 3에 도시된 온라인 게임 시스템(100), 게임 플레이 장치(10) 및 게임 제공 장치(20)에서 시계열적으로 처리되는 단계들을 포함한다. 따라서, 이하에서 생략된 내용이라고 하더라도 도 1 내지 3에 도시된 온라인 게임 시스템(100), 게임 플레이 장치(10) 및 게임 제공 장치(20)에 관하여 이상에서 기술한 내용은 도 4에 도시된 실시예에 따른 변조감지방법 및 실시간게임제재방법에도 적용될 수 있다.
도 4에 도시된 바와 같이 실시간게임제재방법은, 게임 플레이 장치(10)에서 게임 클라이언트가 실행되어, 게임 제공 장치(20)로의 접속이 요청되는 단계(S111)로부터 시작된다.
그에 따라 게임 제공 장치(20)는 게임 플레이 장치(10)가 기 등록된 사용자 계정을 이용하여 접속을 요청한 경우, 해당 사용자 계정의 계정 정보를 이용하여, 또는 게임 플레이 장치(10)가 일회성의 임시 계정을 이용하여 접속을 요청한 경우 IP주소를 이용하여, 이미 저장된 제재상태정보를 확인한다(S121).
확인 결과 게임 플레이 장치(10)가 접속 요청한 계정이 현재 제재 기간에 해당하는 경우(S122), 게임 제공 장치(20)는 접속을 거절하고 절차를 종료한다.
그러나 S122단계에서 게임 플레이 장치(10)가 접속 요청한 계정이 제재 기간에 해당하지 않는다고 판단된 경우, 게임 제공 장치(20)는 게임 플레이 장치(10)에서 구동되는 게임 클라이언트와 게임 서버 사이에 세션이 형성되도록 하고(S131), 형성된 세션을 이용하여 게임 클라이언트와 게임 서버가 서로 통신함으로써 온라인 게임이 실행되도록 한다(S132).
한편 게임 플레이 장치(10)와 게임 제공 장치(20)는 S132단계에서 온라인 게임을 실행하는 동안에 서로 협력하여 게임 클라이언트의 변조를 감지하는 단계(S133)를 수행한다.
게임 클라이언트의 변조를 감지하는 S133단계의 구체적인 수행 과정, 즉 변조감지방법은 추후 설명한다.
S133단계에서 게임 클라이언트의 변조가 감지되면, 게임 제공 장치(20)는 바로 게임 클라이언트와 게임 서버 사이에 형성된 세션을 해제하여(S134) 온라인 게임의 실행을 종료할 수 있다(S135).
그러나 실시예에 따라 게임 제공 장치(20)는 S133단계에서 변조가 감지되더라도, 다시 제재여부를 결정하는 과정을 거쳐 세션을 해제하고 게임 실행을 종료하는 과정을 선택적으로 수행할 수도 있다. 즉, 게임 제공 장치(20)는 변조가 감지되면, 해당 계정의 이전 변조기록을 확인한 후, 변조 발생 횟수가 기 설정된 값 이상이거나 일정 기간 내에 발생한 변조 빈도가 기 설정된 값 이상인 경우에 한하여 제재를 결정하고 게임 실행이 종료되도록 할 수도 있다.
이어서 게임 제공 장치(20)는 게임 클라이언트와 게임 서버 사이에 형성된 세션에 대응하는 계정의 계정 정보 또는 IP주소에 연관하여 감지된 변조에 대한 변조기록을 저장할 수 있다(S126). 마찬가지로 특정 계정에 대하여 제재를 결정한 경우 게임 제공 장치(20)는 제재 여부와 제재 기간에 대한 정보를 포함하는 제재상태정보를 저장할 수 있다.
이로써, 게임 클라이언트의 변조 여부를 실시간으로 발견하고, 바로 해당 플레이어를 게임에서 배제시키기 때문에, 선량한 플레이어들의 피해를 최소화할 수 있고 게임의 공정성을 유지할 수 있다. 그에 따라 게임에서 이탈되는 플레이어의 수를 최소화할 수 있다.
여기서 S133단계, 즉 변조감지방법을 보다 구체적으로 살펴보면, 게임 클라이언트와 게임 서버가 협력하여 온라인 게임을 실행하는 동안에(S132), 게임 제공 장치(20)는 새로운 단위 게임의 개시를 감지할 수 있다(S123).
그에 따라 게임 제공 장치(20)는 새로운 단위 게임이 개시될 때마다 변조감시대상 게임 설정값을 포함하는 게임 설정값을 게임 플레이 장치(10)로 전송할 수 있다(S124).
한편 게임 설정값을 수신한 게임 플레이 장치(10)는, 게임 클라이언트에 수신된 게임 설정값을 적용하고(S112), 동시에 게임 제공 장치(20)로부터 제공된 게임 설정값을 복제하여 저장한다(S113).
이어서 게임 플레이 장치(10)는 게임 클라이언트에 적용되어 있는 설정값과, S113단계에서 복제하여 저장한 설정값을 서로 비교하여 비교결과 데이터를 생성하고, 생성된 비교결과 데이터를 게임 제공 장치(20)로 전송한다(S115).
그에 따라 비교결과 데이터를 수신한 게임 제공 장치(20)는 비교결과 데이터에 기초하여 게임 클라이언트의 변조 여부를 검출한다(S125).
이때 게임 클라이언트의 변조가 검출되면, 상술한 바와 같이 S134 단계에서 게임 클라이언트와 게임 서버 사이의 세션을 해제하여 게임 실행을 종료시킨다(S135).
그러나 S125단계에서 게임 클라이언트의 변조가 검출되지 않으면, 단위 게임이 종료하는지 여부(S127)를 확인하여, 단위 게임이 종료하기 전까지, S124단계 및, S112 내지 S115단계를 반복적으로 수행함으로써 게임 클라이언트의 변조 여부를 판정하는 과정(S125)을 지속할 수 있다.
한편 S127 단계에서 단위 게임이 종료된 것으로 판단되면, 다시 새로운 단위 게임의 개시에 대기한다.
즉, 본 발명의 실시예에 의한 변조감지방법에서는, 게임 플레이 장치(10)에서 해킹 프로그램이 실행되는지 여부를 감지하는 것이 아니라, 해킹 프로그램의 실행 결과에 의하여, 게임 플레이에 영향을 주는 주요 변수들(게임 설정값)이 변화하였는지 여부를 감지하는 방법을 사용함으로써 어떤 해킹 프로그램에 의한 것이든 그 실행 결과로서 주요 변수가 변조되었다면 해킹 여부를 판정할 수 있다. 이로써 최소한의 노력으로 해킹을 감지할 수 있다는 이점이 있다.
특히 S114단계에서 비교되는 게임 설정값을, 게임 클라이언트에 적용될 수 있는 모든 게임 설정값이 아니라 기 설정된 변조감시대상 게임 설정값으로 한정하여 해킹 감지에 드는 노력을 최소화할 수 있는데, 이 경우 변조감시대상 게임 설정값은, 수집되는 변조기록에 기초할 때 변조 빈도가 높은 상위의 게임 설정값으로 선정될 수 있다.
한편 이와 같은 변조감지방법과 실시간게임제재방법에서는, 게임 제공 장치(20)로 제재상태정보를 요청하는 관리자단말(미도시)로 웹페이지 또는 별개의 응용프로그램을 이용하여, 제재상태정보를 제공하는 단계(미도시)를 더 포함할 수 있으며, 이에 대한 일례를 도 5에 도시하였다.
게임 제공 장치(20)에 접근할 수 있는 하나 이상의 관리자 계정 중, 특히 제재상태정보에 대한 접근 권한이 부여된 관리자 계정이 존재할 수 있으며, 이러한 관리자 계정을 이용하여 관리자 단말은 게임 제공 장치(20)로 제재상태정보의 검색을 요청할 수 있다. 그 경우 관리자 단말에는 도 5에 도시된 바와 같은 웹페이지(W)를 제공할 수 있다.
웹페이지(W)에는 검색대상 플레이어의 식별자를 입력하는 입력 인터페이스(I)가 포함될 수 있다. 또한 검색대상 기간을 설정하기 위한 입력 인터페이스(P)가 포함될 수도 있다. 관리자가 검색대상 플레이어의 식별자나 검색대상 기간을 설정하고 검색 요청 버튼(S)을 선택하면, 검색결과 테이블(T)이 도시된 바와 같이 제공될 수 있다.
검색결과 테이블(T)에는 제재상태정보에 포함된 각종 필드정보가 포함될 수 있는데, 제재시작시간, 제재종료시간 등과 같이 제재 기간 정보가 포함될 수 있고, 제재대상이 된 플레이어의 식별정보가 포함될 수 있다. 또한 변조된 게임 설정값에 따른 변조 타입에 대한 정보, 변조가 검출된 횟수, 그리고 변조가 검출된 단위 게임의 게임 타입, 그리고 변조가 일어난 단위 게임에 적용된 가상 맵이나 트랙에 대한 정보가 포함될 수 있다.
다만 이는 일례에 불과하고, 관리자가 제재상태정보를 검색조건에 따라 선택적으로 검색하여 열람 가능하게 함으로써, 변조감시대상 게임 설정값을 선정하거나 갱신하는 과정에 사용되도록 할 수 있다.
본 실시예에서 사용되는 '~부'라는 용어는 소프트웨어 또는 FPGA(field programmable gate array) 또는 ASIC 와 같은 하드웨어 구성요소를 의미하며, '~부'는 어떤 역할들을 수행한다. 그렇지만 '~부'는 소프트웨어 또는 하드웨어에 한정되는 의미는 아니다. '~부'는 어드레싱할 수 있는 저장 매체에 있도록 구성될 수도 있고 하나 또는 그 이상의 프로세서들을 재생시키도록 구성될 수도 있다. 따라서, 일 예로서 '~부'는 소프트웨어 구성요소들, 객체지향 소프트웨어 구성요소들, 클래스 구성요소들 및 태스크 구성요소들과 같은 구성요소들과, 프로세스들, 함수들, 속성들, 프로시저들, 서브루틴들, 프로그램특허 코드의 세그먼트들, 드라이버들, 펌웨어, 마이크로코드, 회로, 데이터, 데이터베이스, 데이터 구조들, 테이블들, 어레이들, 및 변수들을 포함한다.
구성요소들과 '~부'들 안에서 제공되는 기능은 더 작은 수의 구성요소들 및 '~부'들로 결합되거나 추가적인 구성요소들과 '~부'들로부터 분리될 수 있다.
뿐만 아니라, 구성요소들 및 '~부'들은 디바이스 또는 보안 멀티미디어카드 내의 하나 또는 그 이상의 CPU 들을 재생시키도록 구현될 수도 있다
도 4 내지 도 5를 통해 설명된 실시예에 따른 변조감지방법 및 실시간게임제재방법은 컴퓨터에 의해 실행되는 프로그램 모듈과 같은 컴퓨터에 의해 실행가능한 명령어를 포함하는 기록 매체의 형태로도 구현될 수 있다. 컴퓨터 판독 가능 매체는 컴퓨터에 의해 액세스될 수 있는 임의의 가용 매체일 수 있고, 휘발성 및 비휘발성 매체, 분리형 및 비분리형 매체를 모두 포함한다. 또한, 컴퓨터 판독가능 매체는 컴퓨터 저장 매체 및 통신 매체를 모두 포함할 수 있다. 컴퓨터 저장 매체는 컴퓨터 판독가능 명령어, 데이터 구조, 프로그램 모듈 또는 기타 데이터와 같은 정보의 저장을 위한 임의의 방법 또는 기술로 구현된 휘발성 및 비휘발성, 분리형 및 비분리형 매체를 모두 포함한다. 통신 매체는 전형적으로 컴퓨터 판독가능 명령어, 데이터 구조, 프로그램 모듈, 또는 반송파와 같은 변조된 데이터 신호의 기타 데이터, 또는 기타 전송 메커니즘을 포함하며, 임의의 정보 전달 매체를 포함한다.
또한 본 발명의 일실시예에 따르는 변조감지방법 및 실시간게임제재방법은 컴퓨터에 의해 실행 가능한 명령어를 포함하는 컴퓨터 프로그램(또는 컴퓨터 프로그램 제품)으로 구현될 수도 있다. 컴퓨터 프로그램은 프로세서에 의해 처리되는 프로그래밍 가능한 기계 명령어를 포함하고, 고레벨 프로그래밍 언어(High-level Programming Language), 객체 지향 프로그래밍 언어(Object-oriented Programming Language), 어셈블리 언어 또는 기계 언어 등으로 구현될 수 있다. 또한 컴퓨터 프로그램은 유형의 컴퓨터 판독가능 기록매체(예를 들어, 메모리, 하드디스크, 자기/광학 매체 또는 SSD(Solid-State Drive) 등)에 기록될 수 있다.
따라서 본 발명의 일실시예에 따르는 변조감지방법 및 실시간게임제재방법은 상술한 바와 같은 컴퓨터 프로그램이 컴퓨팅 장치에 의해 실행됨으로써 구현될 수 있다. 컴퓨팅 장치는 프로세서와, 메모리와, 저장 장치와, 메모리 및 고속 확장포트에 접속하고 있는 고속 인터페이스와, 저속 버스와 저장 장치에 접속하고 있는 저속 인터페이스 중 적어도 일부를 포함할 수 있다. 이러한 성분들 각각은 다양한 버스를 이용하여 서로 접속되어 있으며, 공통 머더보드에 탑재되거나 다른 적절한 방식으로 장착될 수 있다.
여기서 프로세서는 컴퓨팅 장치 내에서 명령어를 처리할 수 있는데, 이런 명령어로는, 예컨대 고속 인터페이스에 접속된 디스플레이처럼 외부 입력, 출력 장치상에 GUI(Graphic User Interface)를 제공하기 위한 그래픽 정보를 표시하기 위해 메모리나 저장 장치에 저장된 명령어를 들 수 있다. 다른 실시예로서, 다수의 프로세서 및(또는) 다수의 버스가 적절히 다수의 메모리 및 메모리 형태와 함께 이용될 수 있다. 또한 프로세서는 독립적인 다수의 아날로그 및(또는) 디지털 프로세서를 포함하는 칩들이 이루는 칩셋으로 구현될 수 있다.
또한 메모리는 컴퓨팅 장치 내에서 정보를 저장한다. 일례로, 메모리는 휘발성 메모리 유닛 또는 그들의 집합으로 구성될 수 있다. 다른 예로, 메모리는 비휘발성 메모리 유닛 또는 그들의 집합으로 구성될 수 있다. 또한 메모리는 예컨대, 자기 혹은 광 디스크와 같이 다른 형태의 컴퓨터 판독 가능한 매체일 수도 있다.
그리고 저장장치는 컴퓨팅 장치에게 대용량의 저장공간을 제공할 수 있다. 저장 장치는 컴퓨터 판독 가능한 매체이거나 이런 매체를 포함하는 구성일 수 있으며, 예를 들어 SAN(Storage Area Network) 내의 장치들이나 다른 구성도 포함할 수 있고, 플로피 디스크 장치, 하드 디스크 장치, 광 디스크 장치, 혹은 테이프 장치, 플래시 메모리, 그와 유사한 다른 반도체 메모리 장치 혹은 장치 어레이일 수 있다.
전술한 본 발명의 설명은 예시를 위한 것이며, 본 발명이 속하는 기술분야의 통상의 지식을 가진 자는 본 발명의 기술적 사상이나 필수적인 특징을 변경하지 않고서 다른 구체적인 형태로 쉽게 변형이 가능하다는 것을 이해할 수 있을 것이다. 그러므로 이상에서 기술한 실시예들은 모든 면에서 예시적인 것이며 한정적이 아닌 것으로 이해해야만 한다. 예를 들어, 단일형으로 설명되어 있는 각 구성 요소는 분산되어 실시될 수도 있으며, 마찬가지로 분산된 것으로 설명되어 있는 구성 요소들도 결합된 형태로 실시될 수 있다.
본 발명의 범위는 상기 상세한 설명보다는 후술하는 특허청구범위에 의하여 나타내어지며, 특허청구범위의 의미 및 범위 그리고 그 균등 개념으로부터 도출되는 모든 변경 또는 변형된 형태가 본 발명의 범위에 포함되는 것으로 해석되어야 한다.
100 : 온라인 게임 시스템
10: 게임 플레이 장치 11: 클라이언트실행부
12: 설정값처리부 13: 설정값비교부
14: 비교결과전송부
20: 게임 제공 장치 21: 세션관리부
22: 서버실행부 23: 설정값전송부
24: 변조검출부 25: 변조기록관리부
26: 제재결정부

Claims (25)

  1. 게임 제공 장치에 설치된 게임 서버와 통신하는 게임 클라이언트를 실행하여 온라인 게임을 수행하는 게임 플레이 장치에 있어서,
    상기 게임 클라이언트를 실행하는 클라이언트실행부;
    상기 게임 제공 장치로부터 하나 이상의 게임 설정값이 수신되면, 수신된 게임 설정값을 복제하여 저장하는 설정값처리부;
    상기 게임 클라이언트에 적용된 게임 설정값과, 복제하여 저장된 게임 설정값을 비교하는 설정값비교부; 그리고
    상기 설정값비교부의 비교결과를 상기 게임 제공 장치로 전송하는 비교결과전송부를 포함하는, 게임 플레이 장치.
  2. 제1항에 있어서,
    상기 설정값처리부는,
    상기 게임 제공 장치로부터 상기 하나 이상의 게임 설정값이 수신되면, 상기 하나 이상의 게임 설정값을 상기 게임 클라이언트에 적용되도록 하는, 게임 플레이 장치.
  3. 제1항에 있어서,
    상기 클라이언트실행부는,
    상기 게임 클라이언트가 실행되면, 상기 게임 제공 장치로, 상기 게임 서버와 상기 게임 클라이언트 사이의 세션 형성을 요청하는, 게임 플레이 장치.
  4. 제3항에 있어서,
    상기 클라이언트실행부는,
    기 등록된 임의의 사용자 계정에 대하여 또는 IP주소를 이용한 임시의 일회성 계정에 대하여 상기 게임 제공 장치로 상기 게임 서버와 상기 게임 클라이언트 사이의 세션 형성을 요청하는, 게임 플레이 장치.
  5. 제3항에 있어서,
    상기 클라이언트실행부는,
    상기 게임 제공 장치로의 세션 형성 요청에 따라, 상기 게임 서버와 상기 게임 클라이언트 사이에 세션이 형성되면, 형성된 세션을 이용하여 상기 게임 클라이언트를 실행하고,
    상기 비교결과전송부가 상기 게임 제공 장치로 전송한 비교결과에 기초하여, 상기 게임 제공 장치가 상기 게임 서버와 상기 게임 클라이언트 사이에 형성된 세션을 해제하면 상기 게임 클라이언트의 실행을 중단하는, 게임 플레이 장치.
  6. 제1항에 있어서,
    상기 하나 이상의 게임 설정값 중 적어도 하나는,
    서로 다른 적어도 두 시점에 대해 서로 다른 값을 갖도록 설정되는 시스템 설정값을 포함하고,
    상기 설정값비교부는,
    서로 다른 적어도 두 시점에 각각 상기 게임 클라이언트에 적용된 시스템 설정값을 획득하여, 복제하여 저장된 시스템 설정값과 비교하는, 게임 플레이 장치.
  7. 게임 플레이 장치에 설치된 게임 클라이언트와 통신하는 게임 서버를 실행하여 온라인 게임을 수행하는 게임 제공 장치에 있어서,
    상기 게임 서버를 실행하는 서버실행부와;
    상기 게임 서버의 실행에 의하여 새로운 단위 게임이 개시되면 하나 이상의 게임 설정값을 상기 게임 플레이 장치로 제공하는 설정값전송부;
    상기 게임 플레이 장치로부터, 상기 설정값전송부가 상기 게임 플레이 장치로 전송한 상기 하나 이상의 게임 설정값과 상기 게임 클라이언트에 적용된 게임 설정값의 비교결과가 수신되면, 상기 비교결과에 기초하여 상기 하나 이상의 게임 설정값에 대한 변조 여부를 검출하는 변조검출부; 그리고
    상기 변조검출부가 상기 하나 이상의 게임 설정값의 변조를 확인하면, 상기 게임 플레이 장치에 대한 게임 플레이 제재 여부를 결정하는 제재결정부를 포함하는, 게임 제공 장치.
  8. 제7항에 있어서,
    상기 게임 제공 장치는,
    상기 게임 서버와 상기 게임 클라이언트 사이에 세션이 형성되도록 하고, 상기 제재결정부가 상기 게임 플레이 장치에 대한 제재를 결정하면, 상기 게임 서버와 상기 게임 클라이언트 사이에 형성된 세션을 해제하는 세션관리부를 더 포함하는, 게임 제공 장치.
  9. 제8항에 있어서,
    상기 게임 제공 장치는,
    상기 변조검출부가 상기 하나 이상의 게임 설정값의 변조를 확인하면, 상기 게임 플레이 장치의 상기 게임 클라이언트와 상기 게임 서버 사이에 형성된 세션에 대응하는 사용자 계정 - 기 등록된 임의의 사용자 계정 또는 IP 주소를 이용한 임시의 일회성 계정을 포함함 - 에 연관하여 변조기록을 저장하는 변조기록관리부를 더 포함하는, 게임 제공 장치.
  10. 제9항에 있어서,
    상기 제재결정부는,
    상기 게임 플레이 장치에 대한 게임 플레이 제재 여부와 함께, 제재 기간을 결정하여, 제재 여부 및 제재 기간에 대한 정보를 포함하는 제재상태정보를 상기 게임 클라이언트와 상기 게임 서버 사이에 형성된 세션에 대응하는 사용자 계정에 연관하여 저장하되,
    상기 제재 여부와 제재 기간을 결정함에 있어서, 상기 게임 플레이 장치의 상기 게임 클라이언트와 상기 게임 서버 사이에 형성된 세션에 대응하는 사용자 계정에 연관하여 상기 변조기록관리부가 저장한 변조기록을 참조하는, 게임 제공 장치.
  11. 제10항에 있어서,
    상기 세션관리부는,
    상기 게임 플레이 장치로부터 수신되는 세션 형성 요청이 기 등록된 임의의 사용자 계정을 이용한 것이면, 상기 임의의 사용자 계정에 연관하여 저장된 제재상태정보에 기초하여 선택적으로 세션이 형성되도록 하고,
    상기 게임 플레이 장치로부터 수신되는 세션 형성 요청이 임시의 일회성 계정을 이용한 것이면, 상기 게임 플레이 장치의 IP주소에 연관하여 저장된 제재상태정보에 기초하여 선택적으로 세션이 형성되도록 하는, 게임 제공 장치.
  12. 제7항에 있어서,
    상기 설정값전송부가 상기 게임 플레이 장치로 전송하는 상기 하나 이상의 게임 설정값 중 적어도 하나는, 서로 다른 적어도 두 시점에 대해 서로 다른 값을 갖도록 설정되는 시스템 설정값을 포함하고,
    상기 변조검출부는,
    상기 게임 플레이 장치로부터, 상기 서로 다른 적어도 두 시점 중 적어도 한 시점에 대한, 상기 설정값전송부가 상기 게임 플레이 장치로 전송한 시스템 설정값과 상기 게임 클라이언트에 적용된 시스템 설정값의 비교결과를 수신하여, 시스템 설정값의 변조 여부를 결정하는, 게임 제공 장치.
  13. 서로 협력하여 온라인 게임을 실행하는 게임 서버와 게임 클라이언트가 각각 설치된 게임 제공 장치와 게임 플레이 장치를 포함하는 게임 시스템에 의하여 수행되고,
    상기 게임 서버의 변조감시대상 게임 설정값과 상기 게임 클라이언트에 적용된 변조감시대상 게임 설정값을 비교하는 단계; 그리고
    상기 비교하는 단계의 비교결과, 상기 게임 서버의 변조감시대상 게임 설정값과 상기 게임 클라이언트에 적용된 변조감시대상 게임 설정값이 상이하면 상기 게임 클라이언트가 변조된 것으로 판단하는 단계를 포함하는 변조감지방법.
  14. 제13항에 있어서,
    상기 변조감지방법은,
    상기 게임 서버의 변조감시대상 게임 설정값을 상기 게임 플레이 장치가 복제하는 단계를 더 포함하고,
    상기 비교하는 단계는,
    상기 게임 플레이 장치에 복제된 변조감시대상 게임 설정값과 상기 게임 클라이언트에 적용된 변조감시대상 게임 설정값을 비교함으로써 이루어지는, 변조감지방법.
  15. 제14항에 있어서,
    상기 변조감시대상 게임 설정값은,
    상기 게임 클라이언트에 적용되는 모든 게임 설정값 중, 상기 게임 제공 장치에 기록된 변조 검출 히스토리에 기초할 때 변조 검출 빈도가 높은 상위의 게임 설정값으로 선정되는, 변조감지방법.
  16. 제13항에 있어서,
    상기 변조감지방법은,
    상기 판단하는 단계에서 상기 게임 클라이언트가 변조된 것으로 판단되면, 상기 게임 클라이언트에 대한 제재 여부를 결정하는 단계; 그리고
    상기 게임 클라이언트에 대한 제재가 결정되면, 상기 게임 클라이언트와 상기 게임 서버 사이에 형성된 세션을 해제하여 온라인 게임 실행을 종료하는 단계를 더 포함하는, 변조감지방법.
  17. 제13항에 있어서,
    상기 변조감지방법은,
    상기 판단하는 단계에서 상기 게임 클라이언트가 변조된 것으로 판단되면, 상기 게임 클라이언트와 상기 게임 서버 사이에 형성된 세션에 대응하는 사용자 계정 - 기 등록된 임의의 사용자 계정 또는 IP 주소를 이용한 임시의 일회성 계정을 포함함 - 에 연관하여 변조기록을 저장하는 단계를 더 포함하는, 변조감지방법.
  18. 제16항에 있어서,
    상기 변조감지방법은,
    상기 게임 클라이언트에 대한 제재가 결정되면, 상기 게임 클라이언트와 상기 게임 서버 사이에 형성된 세션에 대응하는 사용자 계정 - 기 등록된 임의의 사용자 계정 또는 IP 주소를 이용한 임시의 일회성 계정을 포함함 - 에 대해 제재 여부 및 제재 기간에 대한 정보를 포함하는 제재상태정보를 저장하는 단계를 더 포함하는, 변조감지방법.
  19. 제18항에 있어서,
    상기 변조감지방법은,
    상기 게임 플레이 장치에서 상기 게임 클라이언트가 실행되면, 상기 게임 클라이언트와 상기 게임 서버 사이의 세션을 형성하는 단계를 더 포함하고,
    상기 세션을 형성하는 단계는,
    상기 게임 클라이언트와 상기 게임 서버 사이에 형성되는 세션이 기 등록된 임의의 사용자 계정을 이용한 것이면, 상기 임의의 사용자 계정에 연관하여 저장된 제재상태정보에 기초하여 선택적으로 세션이 형성되도록 하는 단계; 그리고
    상기 게임 클라이언트와 상기 게임 서버 사이에 형성되는 세션이 임시의 일회성 계정을 이용한 것이면, 상기 게임 플레이 장치의 IP주소에 연관하여 저장된 제재상태정보에 기초하여 선택적으로 세션이 형성되도록 하는 단계를 포함하는, 변조감지방법.
  20. 제18항에 있어서,
    상기 변조감지방법은,
    상기 제재상태정보에 대한 접근 권한이 부여된 적어도 하나의 관리자 계정을 이용하여, 임의의 관리자 장치로부터 상기 게임 제공 장치로 상기 제재상태정보 제공 요청이 수신되면, 상기 게임 제공 장치가, 요청된 검색 조건에 대응하는 제재상태정보를 검색하여 제공하는 단계를 더 포함하는, 변조감지방법.
  21. 서로 협력하여 온라인 게임을 실행하는 게임 서버와 게임 클라이언트가 각각 설치된 게임 제공 장치와 게임 플레이 장치를 포함하는 게임 시스템에 의하여 수행되고,
    상기 게임 서버와 상기 게임 클라이언트 사이에 세션을 형성하여 온라인 게임을 실행하는 단계;
    상기 게임 제공 장치가 상기 게임 클라이언트의 변조를 감지하면, 상기 게임 클라이언트에 대한 제재 여부를 결정하는 단계; 그리고
    상기 게임 클라이언트에 대한 제재가 결정되면, 상기 게임 제공 장치가 상기 게임 클라이언트와 상기 게임 서버 사이에 형성된 세션을 해제하여 온라인 게임 실행을 종료하는 단계를 포함하는, 실시간게임제재방법.
  22. 제21항에 있어서,
    상기 제재 여부를 결정하는 단계는,
    상기 게임 클라이언트에 대한 제재 여부 및 제재 기간을 결정하여, 상기 게임 클라이언트와 상기 게임 서버 사이에 형성된 세션에 대응하는 사용자 계정 - 기 등록된 임의의 사용자 계정 또는 IP 주소를 이용한 임시의 일회성 계정을 포함함 -에 연관하여, 상기 제재 여부 및 제재 기간에 대한 정보를 포함하는 제재상태정보를 저장하는 단계를 포함하고,
    상기 온라인 게임을 실행하는 단계는,
    상기 게임 클라이언트와 상기 게임 서버 사이에 형성되는 세션이 기 등록된 임의의 사용자 계정을 이용한 것이면, 상기 임의의 사용자 계정에 연관하여 저장된 제재상태정보에 기초하여 선택적으로 온라인 게임을 실행하는 단계; 그리고
    상기 게임 클라이언트와 상기 게임 서버 사이에 형성되는 세션이 임시의 일회성 계정을 이용한 것이면, 상기 게임 플레이 장치의 IP주소에 연관하여 저장된 제재상태정보에 기초하여 선택적으로 온라인 게임을 실행하는 단계를 포함하는, 실시간게임제재방법.
  23. 제22항에 있어서,
    상기 실시간게임제재방법은,
    상기 제재상태정보에 대한 접근 권한이 부여된 적어도 하나의 관리자 계정을 이용하여, 임의의 관리자 장치로부터 상기 게임 제공 장치로 상기 제재상태정보 제공 요청이 수신되면, 상기 게임 제공 장치가, 요청된 검색 조건에 대응하는 제재상태정보를 검색하여 제공하는 단계를 더 포함하는, 실시간게임제재방법.
  24. 제13항에 기재된 방법을 수행하는 프로그램이 기록된 컴퓨터 판독가능한 기록매체.
  25. 서로 협력하여 온라인 게임을 실행하는 게임 서버와 게임 클라이언트가 각각 설치된 게임 제공 장치와 게임 플레이 장치를 포함하는 게임 시스템에 의하여 수행되고, 제13항에 기재된 방법을 수행하기 위해 기록매체에 저장된 컴퓨터 프로그램.
KR1020150103758A 2015-07-22 2015-07-22 게임 플레이 장치, 게임 제공 장치, 변조감지방법 및 실시간게임제재방법 KR20170028461A (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020150103758A KR20170028461A (ko) 2015-07-22 2015-07-22 게임 플레이 장치, 게임 제공 장치, 변조감지방법 및 실시간게임제재방법
KR1020210047078A KR102476075B1 (ko) 2015-07-22 2021-04-12 게임 플레이 장치, 게임 제공 장치, 변조감지방법 및 실시간게임제재방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020150103758A KR20170028461A (ko) 2015-07-22 2015-07-22 게임 플레이 장치, 게임 제공 장치, 변조감지방법 및 실시간게임제재방법

Related Child Applications (1)

Application Number Title Priority Date Filing Date
KR1020210047078A Division KR102476075B1 (ko) 2015-07-22 2021-04-12 게임 플레이 장치, 게임 제공 장치, 변조감지방법 및 실시간게임제재방법

Publications (1)

Publication Number Publication Date
KR20170028461A true KR20170028461A (ko) 2017-03-14

Family

ID=58459963

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020150103758A KR20170028461A (ko) 2015-07-22 2015-07-22 게임 플레이 장치, 게임 제공 장치, 변조감지방법 및 실시간게임제재방법

Country Status (1)

Country Link
KR (1) KR20170028461A (ko)

Similar Documents

Publication Publication Date Title
TWI755661B (zh) 反詐欺雲端遊戲區塊鏈
US9744465B2 (en) Identify plug-in of EMU class internet game
JP2020513267A (ja) ユーザマッチングを実施するための方法および関連するデバイス
US9873046B2 (en) Asynchronous online game play and defend mode processing to enable social friends to assist and alter game play outcomes
US20140325070A1 (en) Usage consumption for an invitee of a cloud system
US10631164B2 (en) Authentication identity management for mobile device applications
CN103955405B (zh) 一种应用管理方法及其装置
US20130116022A1 (en) Techniques to automatically provide assistance for electronic games
US10798017B2 (en) Method and system for reclaiming unused resources in a networked application environment
US10965680B2 (en) Authority management method and device in distributed environment, and server
CN105872640A (zh) 一种直播视频的获取方法、装置及系统
US20210073855A1 (en) Fraud prevention in programmatic advertising
US20220226736A1 (en) Selection of virtual server for smart cloud gaming application from multiple cloud providers based on user parameters
CN106060029A (zh) 一种虚拟桌面的访问控制方法及装置
US20150343313A1 (en) User enforcement reputation scoring algorithm & automated decisioning and enforcement system for non-evidence supported communications misconduct
WO2015164969A1 (en) System and method for cross-application virtual goods management
US9037725B2 (en) Online game system, method, and computer-readable medium
CN108063789A (zh) 用于发出通知的第三方应用配置
CN108769749A (zh) 一种确定盗刷数据的方法、客户端及服务器
US20190143224A1 (en) Fantasy sports system and process
CN108881929B (zh) 一种设置直播间登录提示的方法和装置
KR102476075B1 (ko) 게임 플레이 장치, 게임 제공 장치, 변조감지방법 및 실시간게임제재방법
KR20170028461A (ko) 게임 플레이 장치, 게임 제공 장치, 변조감지방법 및 실시간게임제재방법
CN108307246B (zh) 一种计算直播间人气的方法、存储介质、设备及系统
US20140113727A1 (en) Online game system, method, and computer-readable medium

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
AMND Amendment
E601 Decision to refuse application
AMND Amendment
J201 Request for trial against refusal decision
J301 Trial decision

Free format text: TRIAL NUMBER: 2017101002738; TRIAL DECISION FOR APPEAL AGAINST DECISION TO DECLINE REFUSAL REQUESTED 20170605

Effective date: 20190228

J2X1 Appeal (before the patent court)

Free format text: TRIAL NUMBER: 2019201002936; APPEAL AGAINST DECISION TO DECLINE REFUSAL

J301 Trial decision

Free format text: TRIAL NUMBER: 2020131000013; TRIAL DECISION FOR APPEAL AGAINST DECISION TO DECLINE REFUSAL REQUESTED 20200421

Effective date: 20200521

E902 Notification of reason for refusal
S601 Decision to reject again after remand of revocation