KR20120081360A - Method for game client authentication using random code - Google Patents

Method for game client authentication using random code Download PDF

Info

Publication number
KR20120081360A
KR20120081360A KR1020110002667A KR20110002667A KR20120081360A KR 20120081360 A KR20120081360 A KR 20120081360A KR 1020110002667 A KR1020110002667 A KR 1020110002667A KR 20110002667 A KR20110002667 A KR 20110002667A KR 20120081360 A KR20120081360 A KR 20120081360A
Authority
KR
South Korea
Prior art keywords
game
random code
game client
client
game server
Prior art date
Application number
KR1020110002667A
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 KR1020110002667A priority Critical patent/KR20120081360A/en
Publication of KR20120081360A publication Critical patent/KR20120081360A/en

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
    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q50/00Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
    • G06Q50/10Services
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F2300/00Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
    • A63F2300/50Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterized by details of game servers
    • A63F2300/53Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterized by details of game servers details of basic data processing
    • A63F2300/532Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterized by details of game servers details of basic data processing using secure communication, e.g. by encryption, authentication

Landscapes

  • Engineering & Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • General Business, Economics & Management (AREA)
  • Tourism & Hospitality (AREA)
  • Multimedia (AREA)
  • General Health & Medical Sciences (AREA)
  • Marketing (AREA)
  • Primary Health Care (AREA)
  • Strategic Management (AREA)
  • Physics & Mathematics (AREA)
  • Human Resources & Organizations (AREA)
  • General Physics & Mathematics (AREA)
  • Economics (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Health & Medical Sciences (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

PURPOSE: A game client authentication method using a random code authenticates the game client through a game server transmits a random code and an operation data to a game client. CONSTITUTION: A game server generates operation data(S231). The game server transmits the operation data to a game client(S232). The game client produces a return value by performing a random code(S233). The game client transmits the return value to the game server(S234). The game server produces a return value by performing the random code which game client has(S235). The game server examines whether or not the return value is equal to the received return value(S237).

Description

랜덤 코드를 이용한 게임 클라이언트 인증 방법{ Method for Game Client Authentication using Random Code }Method for Game Client Authentication using Random Code}

본 발명은 각 사용자 컴퓨터에 설치되어 실행되는 게임 클라이언트를 인증하는 방법에 관한 것으로서, 특히 게임 클라이언트 없이 패킷만을 처리하는 방식으로 온라인 게임을 비정상적으로 이용하는 로봇 프로그램((Non-Client BOT)을 효과적으로 감시하기 위한 것이다.
The present invention relates to a method for authenticating a game client installed and executed in each user computer, and more particularly, to effectively monitor a robot program ((Non-Client BOT) that abnormally uses an online game by processing a packet without a game client. It is for.

통신망과 컴퓨터 관련 기술이 발전하면서 다양한 종류의 온라인 게임 서비스가 제공되고 있는데, 게임 내 재화의 가치가 높아지면서 비정상적인 방법으로 온라인 게임을 이용하는 사례가 늘고 있다.As the network and computer related technologies are developed, various kinds of online game services are being provided. As the value of the goods in the game increases, the use of online games in an abnormal way is increasing.

게임 내 재화를 획득하기 위하여 온라인 게임을 비정상적으로 이용하는 방법은 다양하다.There are a variety of ways to use online games abnormally to obtain in-game goods.

예를 들자면, USB 디바이스를 이용하여 마치 사용자가 키보드나 마우스를 통해 어떤 명령을 입력하는 것처럼 위장하는 하드웨어적 처리 방법, 특정 기능을 수행하는 프로그램(악성모듈)을 메모리의 온라인 게임 프로세스에 로딩시켜 게임 함수를 호출하는 소프트웨어적 처리 방법을 들 수 있다.For example, using a USB device, a hardware processing method that pretends to be a user entering a command through a keyboard or mouse, and a program (a malicious module) that performs a specific function is loaded into an online game process in memory. A software method of calling a function is one.

또한, 게임 클라이언트 없이 로봇 프로그램을 이용하여 게임 서버와 주고 받는 패킷 데이터만을 처리하는 방법이 사용되기도 하는데, 이러한 로봇 프로그램을 논 클라이언트 봇(Non-Client BOT) 이라고 부른다.In addition, a method of processing only packet data exchanged with a game server using a robot program without a game client may be used. Such a robot program is referred to as a non-client bot.

논 클라이언트 봇은 게임 서버에 접속하여 스스로 사냥이나 채집 등 게임 내 활동을 수행함으로써 게임 내 재화의 획득을 시도한다.The non-client bot attempts to acquire in-game goods by connecting to the game server and performing in-game activities such as hunting and gathering by itself.

로봇 프로그램에 의해 게임이 진행되면, 정상적으로 게임을 이용하는 사용자들이 게임 내에서 좋은 게임 아이템을 얻을 기회가 부당하게 박탈되고, 게임 진행을 방해 받으며, 게임 서버에 과도한 부하가 걸리는 등 여러 가지 문제점이 발생하게 된다. 또한, 게임에 대한 흥미를 감소시켜 사용자들이 게임의 이용을 피하게 하고 민원을 발생시키는 주요 요인이 될 수 있다.
When the game is progressed by the robot program, users who normally use the game have various problems such as unjustly deprived of the opportunity to obtain good game items in the game, interrupted the game progress, and excessive load on the game server. do. It can also be a major factor in reducing the interest in the game, allowing users to avoid using the game and generate complaints.

이에 본 발명은 상기와 같은 문제점을 해결하기 위하여 안출된 것으로서, 게임 클라이언트 없이 게임 서버와 주고 받는 패킷 데이터만을 처리하는 방식으로 온라인 게임을 진행하는 로봇 프로그램(Non-Client BOT)을 효과적으로 감시할 수 있도록 하는데 그 목적이 있다.
Accordingly, the present invention has been made in order to solve the above problems, so that it can effectively monitor the robot program (Non-Client BOT) to play the online game by processing only the packet data exchanged with the game server without a game client. Its purpose is to.

상기와 같은 목적을 달성하기 위하여, 본 발명에 따른 랜덤 코드를 이용한 게임 클라이언트 인증 방법은, 사용자 컴퓨터에 설치된 게임 클라이언트와 통신망을 통해 통신하면서 온라인 게임 서비스를 제공하는 게임 서버가 랜덤 코드(Random Code)의 인자인 연산 데이터를 생성하여 상기 게임 클라이언트로 전송하는 단계; 상기 게임 클라이언트가 상기 게임 서버로부터 수신된 연산 데이터를 인자로 자신이 가지고 있는 랜덤 코드를 실행하여 그 결과 값을 산출하고, 산출된 결과 값을 상기 게임 서버로 전송하는 단계; 및 상기 게임 서버가 상기 게임 클라이언트로 전송하였던 연산 데이터를 인자로 상기 게임 클라이언트가 가지고 있는 랜덤 코드를 실행하여 결과 값을 산출하고, 산출된 결과 값이 상기 게임 클라이언트로부터 수신된 결과 값과 서로 일치하는지의 여부를 조사하는 단계를 포함하여 이루어진다.In order to achieve the above object, in the game client authentication method using the random code according to the present invention, a game server that provides an online game service while communicating with a game client installed on a user computer through a communication network (Random Code) Generating operation data which is a factor of and transmitting the operation data to the game client; Executing, by the game client, a random code possessed by the game client with the calculation data received from the game server, calculating a result value, and transmitting the calculated result value to the game server; And calculating a result value by executing a random code possessed by the game client based on the arithmetic data transmitted from the game server to the game client, and whether the calculated result value matches the result value received from the game client. Including whether the step is made.

상기 게임 클라이언트가 가지고 있는 랜덤 코드는 상기 게임 서버가 전송해 주는 것으로서, 상기 게임 클라이언트는 상기 게임 서버로부터 수신된 랜덤 코드를 저장하여 보관한다.
The random code possessed by the game client is transmitted by the game server, and the game client stores and stores the random code received from the game server.

상기 게임 클라이언트는 상기 게임 서버로부터 새로운 랜덤 코드가 수신되면 보관 중인 랜덤 코드를 새로운 랜덤 코드로 갱신할 수 있다.When a new random code is received from the game server, the game client may update the stored random code with the new random code.

상기 게임 클라이언트는 상기 게임 서버로부터 연산 데이터가 수신되었을 때 랜덤 코드가 존재하지 않으면 상기 게임 서버로 오류 메시지를 전송할 수 있다.
The game client may transmit an error message to the game server if a random code does not exist when operation data is received from the game server.

상기 게임 서버는 상기 게임 클라이언트로 랜덤 코드를 전송하는 경우 연산 데이터를 함께 전송할 수 있다.The game server may transmit operation data together when transmitting a random code to the game client.

상기 게임 서버는 상기 산출된 결과 값과 상기 수신된 결과 값이 일치하면 정상적인 게임 클라이언트가 온라인 게임을 진행하는 것으로 판단할 수 있다.The game server may determine that a normal game client plays an online game when the calculated result value and the received result value match.

상기 게임 서버는 상기 게임 클라이언트로부터 오류 메시지가 수신되면, 로봇 프로그램이 온라인 게임을 진행하는 것으로 판단할 수 있다.When the game server receives an error message from the game client, the game server may determine that the robot program is playing an online game.

또한, 상기 게임 서버는 상기 산출된 결과 값과 상기 수신된 결과 값이 일치하지 않거나, 상기 게임 클라이언트로부터 일정 시간 동안 결과 값이 수신되지 않으면, 로봇 프로그램이 온라인 게임을 진행하는 것으로 판단할 수 있다.
The game server may determine that the robot program is playing an online game if the calculated result value does not match the received result value or if the result value is not received from the game client for a predetermined time.

상기 랜덤 코드와 연산 데이터는 상기 사용자 컴퓨터에서 상기 게임 클라이언트가 실행되는 상태일 때만 올바른 결과 값을 산출할 수 있도록 구성될 수 있다.The random code and the operation data may be configured to calculate a correct result value only when the game client is running in the user computer.

이러한 실시예에서 상기 연산 데이터는 상기 게임 클라이언트가 실행되었을 때 상기 사용자 컴퓨터의 메모리에 생성되는 프로세스 영역 중 특정 영역의 메모리 주소를 포함할 수 있다.In this embodiment, the operation data may include a memory address of a specific area of a process area generated in a memory of the user computer when the game client is executed.

이때 상기 랜덤 코드는 상기 특정 영역의 메모리 주소에 저장되어 있는 데이터 값을 연산하여 그 결과 값을 산출하도록 구성될 수 있다.
In this case, the random code may be configured to calculate a data value by calculating a data value stored in a memory address of the specific region.

본 발명에 따르면, 게임 서버는 고정되지 않은 임의의 랜덤 코드와 그 인자인 연산 데이터를 생성하여 게임 클라이언트로 전송하고, 그 결과 값을 수신하여 올바른 것인지를 조사하는 방식으로 게임 클라이언트를 인증한다.According to the present invention, the game server authenticates the game client in such a way that it generates a random code which is not fixed and operation data which is an argument thereof and transmits it to the game client, and receives the result value to check whether it is correct.

현재 온라인 게임이 게임 클라이언트를 통해 이루어지고 있다면, 게임 클라이언트로부터 정상적인 결과 값이 수신될 수 있다.If an online game is currently being played through a game client, a normal result may be received from the game client.

그러나 온라인 게임이 로봇 프로그램(Non-Client BOT)을 통해 이루어지고 있다면, 게임 서버가 전송해 주었던 랜덤 코드와 연산 데이터에 대한 올바른 결과 값이 수신될 수 없다. 즉, 로봇 프로그램은 게임 서버가 전송하는 랜덤 코드나 연산 데이터를 인식하지 못할 것이므로 응답을 할 수 없다.However, if the online game is played through a non-client BOT, the correct result value for the random code and operation data transmitted by the game server cannot be received. That is, the robot program cannot respond because it will not recognize the random code or operation data transmitted by the game server.

로봇 프로그램이 랜덤 코드와 연산 데이터를 인식할 수 있다고 하더라도, 랜덤 코드와 연산 데이터를 반드시 게임 클라이언트가 실행되고 있는 상태이어야만 올바른 결과 값이 산출될 수 있도록 구성한다면, 로봇 프로그램은 잘못된 결과 값을 응답하게 된다.Even if the robot program can recognize the random code and the operation data, if the random code and the operation data are configured so that the correct result can be calculated only when the game client is running, the robot program will respond with the incorrect result. do.

그러므로 논 클라이언트 봇(Non-Client BOT)을 효과적으로 감시할 수 있다.Thus, non-client bots can be effectively monitored.

특히, 랜덤 코드는 일정 기간 동안 유지시키고 연산 데이터만을 인증시마다 변동시키면, 게임 클라이언트의 인증을 위해 필요로 하는 데이터 통신량을 줄일 수 있어 네트워크 부하를 감소시킬 수 있다.
In particular, if the random code is maintained for a certain period and only the operation data is changed at each authentication time, the amount of data communication required for authentication of the game client can be reduced, thereby reducing the network load.

도 1은 온라인 게임을 서비스하는 시스템의 개요,
도 2는 사용자 컴퓨터의 구체적인 예,
도 3은 게임 서버가 게임 클라인언트로 랜덤 코드를 전송해 주는 방법을 설명하는 각 실시예,
고 4는 랜덤 코드의 갱신을 설명하는 예,
도 5는 본 발명에 따른 랜덤 코드를 이용한 게임 클라이언트 인증 방법의 일 실시예를 설명하는 흐름도,
도 6은 게임 서버에서의 감시 과정에 관한 구체적인 예,
도 7은 랜덤 코드와 연산 데이터에 관한 구체적인 예이다.
1 is an overview of a system for servicing an online game;
2 is a specific example of a user computer;
3 is a diagram illustrating each method for transmitting a random code to a game client by a game server;
4 illustrates an example of updating a random code.
5 is a flowchart illustrating an embodiment of a game client authentication method using a random code according to the present invention;
6 illustrates a specific example of a monitoring process in a game server;
7 is a specific example of a random code and operation data.

이하, 첨부된 도면을 참조하여 본 발명에 따른 바람직한 실시예를 상세히 설명하기로 한다.Hereinafter, exemplary embodiments of the present invention will be described in detail with reference to the accompanying drawings.

도 1을 참조하자면, 온라인 게임 서비스는 유선 인터넷망이나 무선 인터넷망 등 각종 통신망(15)을 통해 제공되며, 사용자 컴퓨터(10)에 설치되는 게임 클라이언트(11)는 통신망(15)을 통해 게임 서버(17)와 서로 통신하면서 온라인 게임을 진행한다.Referring to FIG. 1, an online game service is provided through various communication networks 15 such as a wired internet network or a wireless internet network, and the game client 11 installed in the user computer 10 has a game server through the communication network 15. (17) communicate with each other to play an online game.

온라인 게임의 종류는 다양할 수 있으며, 구체적인 예로서 여러 사용자가 동시 다발적으로 참여할 수 있는 MMORPG(Massively Multi-player Online Role Playing Game) 유형의 게임을 들 수 있다.There may be various types of online games, and a specific example may be a game of a Massively Multi-player Online Role Playing Game (MMORPG) type, in which several users may participate simultaneously.

각 사용자가 온라인 게임을 이용하기 위해 사용하는 사용자 컴퓨터(10)는 데스크 탑 컴퓨터나 노트북 컴퓨터와 같은 개인용 컴퓨터(PC: Personal Computer)뿐 아니라 스마트폰이나 태블릿 피시(PC) 등 통신망(15)을 통해 온라인 게임 서비스를 이용할 수 있는 임의의 기기일 수 있다.The user computer 10 used by each user to play online games is not only a personal computer (PC) such as a desktop computer or a notebook computer, but also a communication network 15 such as a smartphone or a tablet PC (PC). It can be any device that can use the online game service.

사용자 컴퓨터(10)에는 사용자가 온라인 게임을 이용할 수 있도록 해주는 게임 클라이언트(11)가 설치된다.The user computer 10 is provided with a game client 11 that allows the user to play online games.

게임 클라이언트(11)는 통신망(15)을 통해 다운로드되어 설치될 수 있고 최신 버젼으로 유지되며, 게임 관련 공지사항의 디스플레이, 게임 화면 처리, 사운드 효과 처리, 게임을 위한 각종 사용자 인터페이스의 제공 등 사용자측에서 수행되어야 할 다양한 역할을 담당한다.The game client 11 may be downloaded and installed through the communication network 15 and maintained at the latest version. The game client 11 may display the game related announcements, process the game screen, process sound effects, and provide various user interfaces for the game. It has a variety of roles to be played.

게임 클라이언트(11)는 기본적으로 게임 서버(17)와 통신하면서 온라인 게임을 진행시키는 역할을 수행하며, 게임 클라이언트(11)와 게임 서버(17)의 역할 분담은 필요에 따라 다양하게 구성될 수 있다.
The game client 11 basically plays an online game while communicating with the game server 17, and the role sharing between the game client 11 and the game server 17 may be variously configured as necessary. .

본 발명과 관련하여, 게임 클라이언트(11)는 게임 서버(17)로부터 랜덤 코드가 수신되면 해당 랜덤 코드를 저장하여 보관한다.In connection with the present invention, the game client 11 stores and stores the random code when the random code is received from the game server 17.

또한, 연산 데이터가 수신되면 연산 데이터를 인자로 랜덤 코드를 실행하여 그 결과 값을 산출하고, 산출된 결과 값을 게임 서버(17)로 전송한다.In addition, when the calculation data is received, a random code is executed with the calculation data as a factor to calculate the result value, and the calculated result value is transmitted to the game server 17.

랜덤 코드란 컴퓨터 장치에서 실행되어 결과 값을 산출할 수 있는 컴퓨터 프로그램 코드를 말한다.Random code is computer program code that can be executed on a computer device to produce a result value.

연산 데이터란 랜덤 코드의 인자(parameter)로서 랜덤 코드가 결과 값을 연산하기 위해 사용하는 정보를 말한다. 연산 데이터의 내용과 종류는 필요에 따라 얼마든지 다양하게 구성할 수 있다. 예컨대 연산 데이터는 숫자나 문자일 수도 있고, 메모리의 특정 영역을 가리키는 주소일 수도 있다.The operation data is a parameter of the random code and refers to information used by the random code to calculate a result value. The content and type of operation data can be variously configured as needed. For example, the operation data may be a number or a character or an address indicating a specific area of the memory.

사용자 컴퓨터(10)에는 게임 클라이언트(11) 대신 로봇 프로그램(12)이 설치될 수 있다.The robot program 12 may be installed in the user computer 10 instead of the game client 11.

이하에서 로봇 프로그램(12)이란 논 클라이언트 봇(Non-Client BOT)을 의미하며, 로봇 프로그램(12)은 게임 클라이언트 없이 게임 서버(17)와 주고 받는 패킷 데이터를 처리하는 방식으로 온라인 게임을 비정상적으로 진행한다.
Hereinafter, the robot program 12 refers to a non-client bot, and the robot program 12 abnormally plays an online game by processing packet data exchanged with the game server 17 without a game client. Proceed.

도 2는 사용자 컴퓨터(10)의 구체적인 예를 보인 것이다.2 shows a specific example of the user computer 10.

각 요소들은 다양한 구조의 시스템 버스(10-1)를 통해 서로 연결될 수 있으며, 중앙처리장치(CPU: Central Processing Unit,10-2)의 총괄적인 제어하에 서로 데이터를 주고 받으면서 그 역할을 수행한다.Each element may be connected to each other through a system bus (10-1) of various structures, and performs the role while exchanging data with each other under the overall control of the central processing unit (CPU) (10-2).

메모리(10-3)는 램(RAM: Random Access Memory)으로서, 중앙처리장치(10-2)가 즉시 액세스할 컴퓨터 프로그램이나 데이터를 저장한다.The memory 10-3 is a random access memory (RAM), and stores computer programs or data that the central processing unit 10-2 immediately accesses.

입력장치 인터페이스(10-4)는 입력장치(10-5)와 연결되어 사용자가 사용자 컴퓨터(10)로 각종 명령이나 정보를 입력할 수 있도록 한다. 사용자 컴퓨터(10)는 입력장치 인터페이스(10-4)를 통해 키보드, 마우스, 키패드, 터치 스크린 등 다양한 종류의 입력장치(10-5)와 연결될 수 있다.
The input device interface 10-4 is connected to the input device 10-5 so that a user can input various commands or information to the user computer 10. The user computer 10 may be connected to various types of input devices 10-5, such as a keyboard, a mouse, a keypad, and a touch screen through the input device interface 10-4.

디스플레이 어댑터(10-6)는 다양한 디스플레이 장치(10-7)를 통해 출력할 비디오 정보를 처리하며, 사운드 카드(10-8)는 오디오 정보를 처리하여 스피커(10-9)를 통해 출력한다.The display adapter 10-6 processes the video information to be output through the various display devices 10-7, and the sound card 10-8 processes the audio information and outputs it through the speaker 10-9.

네트워크 인터페이스(10-11)는 사용자 컴퓨터(10)가 유선 인터넷망이나 무선 인터넷망 등 각종 통신망(15)과 연결되어 통신할 수 있도록 한다.
The network interface 10-11 allows the user computer 10 to communicate with various communication networks 15 such as a wired internet network or a wireless internet network.

저장매체(10-10)는 비휘발성의 성질을 가지며, 사용자 컴퓨터(10)에 의해 액세스될 수 있는 내장형, 외장형, 분리형, 비분리형의 다양한 형태를 가질 수 있다.The storage medium 10-10 is nonvolatile and may have various forms of internal, external, removable, and non-removable types that can be accessed by the user computer 10.

저장매체(10-10)에는 마이크로소프트사의 윈도우즈(Windows)와 같은 운영체제(OS: Operating System,14)나 게임 클라이언트(11)와 같은 각종 컴퓨터 프로그램과 데이터가 저장된다.The storage medium 10-10 stores various computer programs and data such as an operating system (OS) 14 such as Microsoft's Windows or a game client 11.

어느 사용자가 로봇 프로그램을 이용하여 온라인 게임을 비정상적으로 이용하고자 하는 경우 저장매체(10-10)에는 게임 클라이언트 대신 로봇 프로그램(12)이 설치될 수 있다.When a user wants to use an online game abnormally using a robot program, the robot program 12 may be installed in the storage medium 10-10 instead of the game client.

사용자가 게임 클라이언트(11)나 로봇 프로그램(12)을 실행시키면, 중앙처리장치(10-2)는 해당 코드를 메모리(10-3)에 로딩하여 순차적으로 처리한다.
When the user executes the game client 11 or the robot program 12, the central processing unit 10-2 loads the corresponding code into the memory 10-3 to process sequentially.

도 3은 게임 클라이언트(11)가 랜덤 코드를 유지하게 되는 과정을 보인 것으로서, 랜덤 코드는 게임 서버(17)가 게임 클라이언트(11)로 전송해 준다.3 illustrates a process in which the game client 11 maintains a random code. The random code is transmitted from the game server 17 to the game client 11.

도 3a를 참조하자면, 게임 서버(17)는 랜덤 코드를 생성하여 게임 클라이언트(11)로 전송해 주고, 게임 클라이언트(11)는 게임 서버(17)로부터 수신된 랜덤 코드를 저장하여 보관한다. 게임 서버(17)는 어느 게임 클라이언트로 어떤 랜덤 코드를 전송하였는지에 관한 정보를 유지한다.Referring to FIG. 3A, the game server 17 generates and transmits a random code to the game client 11, and the game client 11 stores and stores the random code received from the game server 17. The game server 17 maintains information about which game code has been sent to which game client.

도 3b를 참조하자면, 게임 서버(17)는 랜덤 코드를 생성하여 게임 클라이언트(11)로 전송해 줄 때, 게임 클라이언트(11)의 인증도 함께 수행하기 위하여 연산 데이터를 함께 전송할 수 있다.Referring to FIG. 3B, when the game server 17 generates a random code and transmits the random code to the game client 11, the game server 17 may transmit calculation data together to perform authentication of the game client 11.

게임 클라이언트(11)는 게임 서버(17)로부터 수신된 랜덤 코드를 저장하여 보관하고, 게임 서버(17)는 어느 게임 클라이언트로 어떤 랜덤 코드와 연산 데이터를 전송하였는지에 관한 정보를 유지한다.The game client 11 stores and stores the random code received from the game server 17, and the game server 17 maintains information regarding which game client has transmitted which random code and operation data.

도 3b의 예에서 게임 클라이언트(11)는 연산 데이터를 수신 하였으므로, 랜덤 코드를 저장하여 보관하는 동작 이외에도 도 5를 참조하여 설명하는 바와 같이 게임 클라이언트의 인증과 관련된 처리를 수행하게 된다.
In the example of FIG. 3B, since the game client 11 receives the calculation data, the game client 11 performs processing related to authentication of the game client as described with reference to FIG. 5 in addition to storing and storing random codes.

게임 서버(17)가 게임 클라이언트(11)로 전송하는 랜덤 코드는 패킷에 담겨 전송되며, 이 패킷의 헤더(Header)에는 해당 패킷에 실린 데이터가 랜덤 코드라는 정보가 실려 있다.The random code transmitted from the game server 17 to the game client 11 is transmitted in a packet, and the header of the packet contains information that data in the packet is a random code.

게임 클라이언트(11)는 통신망(15)을 통해 게임 서버(17)로부터 수신되는 패킷의 헤더를 분석하여 해당 패킷이 랜덤 코드를 전송하는 패킷임을 인식할 수 있으며, 수신된 랜덤 코드를 저장하여 보관한다.
The game client 11 may analyze the header of the packet received from the game server 17 through the communication network 15 to recognize that the packet is a packet for transmitting a random code, and stores and stores the received random code. .

게임 서버(17)가 랜덤 코드를 언제 전송할 것인지와, 게임 클라이언트(11)가 게임 서버(17)로부터 수신된 랜덤 코드를 어떠한 방법으로 보관하도록 할 것인지는 필요에 따라 다양하게 구성될 수 있다.When the game server 17 transmits the random code and how the game client 11 stores the random code received from the game server 17 may be variously configured as necessary.

예를 들자면, 게임 서버(17)는 사용자 컴퓨터(10)로 게임 클라이언트(11)를 업데이트할 때, 게임 클라이언트(11)가 접속하였을 때, 사용자가 로그인 하였을 때 등 다양한 시점에 랜덤 코드를 전송해 줄 수 있다.For example, the game server 17 transmits a random code at various times, such as when updating the game client 11 to the user computer 10, when the game client 11 is connected, when the user logs in, and so on. Can give

또한, 게임 클라이언트(11)는 랜덤 코드를 저장매체(10-10)에 저장할 수도 있고, 메모리(10-3)에만 저장할 수도 있다. 후자의 경우 게임 클라이언트(11)의 실행이 종료되면 랜덤 코드도 삭제되며, 이후에 다시 수신해야 한다.
In addition, the game client 11 may store the random code in the storage medium 10-10 or may store only the memory 10-3. In the latter case, when the execution of the game client 11 is terminated, the random code is also deleted and must be received again later.

랜덤 코드는 일정 기간 그대로 유지되는 것이지만, 게임 서버(17)는 게임 클라이언트(11)가 가지고 있는 랜덤 코드를 필요에 따라 얼마든지 바꿀 수 있다.Although the random code is maintained for a certain period of time, the game server 17 can change the random code possessed by the game client 11 as needed.

도 4를 참조하자면, 게임 클라이언트(11)는 게임 서버(17)로부터 새로운 랜덤 코드가 수신되는 경우(S211), 기존에 보관하고 있던 랜덤 코드를 새로 수신된 랜덤 코드로 갱신한다(S212).
Referring to FIG. 4, when a new random code is received from the game server 17 (S211), the game client 11 updates the random code previously stored with the newly received random code (S212).

도 5를 참조하여, 본 발명에 따른 랜덤 코드를 이용한 게임 클라이언트 인증 방법의 일 실시예를 설명하기로 한다.5, an embodiment of a game client authentication method using a random code according to the present invention will be described.

먼저 게임 서버(17)는 연산 데이터를 생성하여(S231), 게임 클라이언트(11)로 전송한다(S232). 이때 게임 서버(17)는 게임 클라이언트(11)로 전송해 준 연산 데이터에 관한 정보를 유지한다.First, the game server 17 generates operation data (S231), and transmits it to the game client 11 (S232). At this time, the game server 17 maintains the information about the operation data transmitted to the game client (11).

연산 데이터는 게임 클라이언트의 인증이 필요할 때마다 전송되는 것으로서, 도 3b에서 설명한 예와 같이 랜덤 코드와 함께 전송될 수도 있다.The operation data is transmitted whenever authentication of the game client is required, and may be transmitted with a random code as in the example described with reference to FIG. 3B.

게임 서버(17)는 게임 클라이언트(11)의 인증을 수행할 때마다 서로 다른 연산 데이터를 생성하는 것이 바람직하다.The game server 17 preferably generates different operation data each time authentication of the game client 11 is performed.

게임 서버(17)가 게임 클라이언트(11)로 전송하는 연산 데이터는 패킷에 담겨 전송되며, 이 패킷의 헤더(Header)에는 해당 패킷에 실린 데이터가 연산 데이터라는 정보가 실려 있다. 게임 클라이언트(11)는 통신망(15)을 통해 게임 서버(17)로부터 수신되는 패킷의 헤더를 분석하여 해당 패킷이 연산 데이터를 전송하는 패킷임을 인식할 수 있다.The operation data transmitted from the game server 17 to the game client 11 is transmitted in a packet, and the header of the packet contains information that the data contained in the packet is operation data. The game client 11 may analyze the header of the packet received from the game server 17 through the communication network 15 and recognize that the packet is a packet for transmitting calculation data.

게임 클라이언트(11)는 게임 서버(17)로부터 연산 데이터가 수신되었을 때 랜덤 코드가 존재하지 않으면 게임 서버(17)로 오류 메시지를 전송할 수 있다.
The game client 11 may transmit an error message to the game server 17 if the random code does not exist when the calculation data is received from the game server 17.

게임 클라이언트(11)는 게임 서버(17)로부터 연산 데이터가 수신되면, 수신된 연산 데이터를 인자로 자신이 가지고 있는 랜덤 코드를 실행하여 그 결과 값을 산출하고(S233), 산출된 결과 값을 게임 서버(17)로 전송한다(S234).
When the game client 11 receives the calculation data from the game server 17, the game client 11 executes a random code which it has as the argument based on the received calculation data and calculates the result value (S233), and calculates the calculated result value. The server 17 transmits the data to the server 17 (S234).

게임 서버(17)는 게임 클라이언트(11)로부터 결과 값이 수신되면, 단계 S232를 통해 전송하였던 연산 데이터를 인자로 해당 게임 클라이언트(11)가 현재 가지고 있는 랜덤 코드를 실행하여 그 결과 값을 산출한다(S235).When the game server 17 receives the result value from the game client 11, the game server 17 executes a random code currently owned by the game client 11 based on the operation data transmitted through step S232 and calculates the result value. (S235).

그리고 게임 서버(17)는 단계 S235에서 산출된 결과 값과, 단계 S234를 통해 게임 클라이언트(11)로부터 수신된 결과 값을 비교하여, 서로 일치하는지의 여부를 조사한다(S236).The game server 17 compares the result value calculated in step S235 with the result value received from the game client 11 in step S234, and checks whether or not they match each other (S236).

이때 랜덤 코드는 컴퓨터 장치에서 실행되어 그 결과 값을 산출할 수 있는 컴퓨터 프로그램 코드이기 때문에, 연산 데이터가 같다면 그 결과 값은 동일하게 산출되어야 한다.
At this time, since the random code is computer program code that can be executed in a computer device to calculate a result value, the result value should be calculated equally if the arithmetic data is the same.

게임 서버(17)는 단계 S236에서의 조사 결과에 따라 현재 사용자 컴퓨터(10)에서 온라인 게임을 진행하는 프로그램이 정상적인 게임 클라이언트(11)인지 아니면 로봇 프로그램(12) 인지의 여부를 알 수 있다.The game server 17 may determine whether the program currently playing the online game in the user computer 10 is the normal game client 11 or the robot program 12 according to the result of the investigation in step S236.

즉, 게임 서버(17)는 단계 S236에서의 조사 결과 두 값이 서로 일치하면 정상적인 게임 클라이언트(11)에 의해 온라인 게임이 진행되는 것으로 판단하고(S237,S238), 두 값이 서로 일치하지 않으면 로봇 프로그램이 온라인 게임을 진행하는 것으로 판단한다(S237,S239).
That is, the game server 17 determines that the online game is played by the normal game client 11 when the two values match each other as a result of the investigation in step S236 (S237 and S238). It is determined that the program proceeds with the online game (S237, S239).

만일 로봇 프로그램이 온라인 게임을 진행하는 경우라면, 게임 서버(17)로부터 수신되는 랜덤 코드나 연산 데이터를 인식하지 못할 가능성이 크다.If the robot program is playing an online game, it is highly unlikely to recognize the random code or calculation data received from the game server 17.

예컨대, 로봇 프로그램(12)이 랜덤 코드를 전송하는 패킷의 헤더를 알 수 없을 때는 게임 서버(17)로부터 수신되는 패킷을 인식할 수 없을 것이므로 랜덤 코드를 수신하지 못한다. 그러므로 로봇 프로그램(12)은 랜덤 코드를 실행하거나 그 결과 값을 게임 서버(17)로 전송할 수 없다.For example, when the robot program 12 does not know the header of the packet for transmitting the random code, it will not be able to recognize the packet received from the game server 17 and thus cannot receive the random code. Therefore, the robot program 12 cannot execute random code or transmit the result value to the game server 17.

도 6을 참조하여, 게임 서버(17)에서의 감시 과정에 관한 구체적인 예를 살펴보기로 한다.Referring to FIG. 6, a specific example of a monitoring process in the game server 17 will be described.

게임 서버(17)는 도 5의 단계 S232를 통해 연산 데이터를 전송한 후 이에 관한 응답이 수신되기를 기다린다(S251).The game server 17 transmits the calculation data through step S232 of FIG. 5 and waits for a response to be received (S251).

만일 일정 시간이 경과되기 전에 랜덤 코드에 관한 결과 값이 수신되면, 도 5의 단계 S215로 진행한다(S254).If a result value relating to the random code is received before a predetermined time elapses, the process proceeds to step S215 of FIG. 5 (S254).

그러나 일정 시간이 경과되기 전에 오류 메시지가 수신되거나(S253), 연산 데이터에 대한 결과 값이 수신되지 않은 상태로 일정 시간이 경과하면(S252), 도 5의 단계 S239로 진행한다.However, if an error message is received before a predetermined time elapses (S253), or if a predetermined time elapses without receiving a result value for the operation data (S252), the process proceeds to step S239 of FIG.

여기서 게임 서버(17)가 랜덤 코드를 전송한 후 그 결과 값을 기다리는 시간은 필요에 따라 합리적인 시간으로 설정할 수 있다.
Here, the time waiting for the result after the game server 17 transmits the random code may be set to a reasonable time as necessary.

게임 서버(17)는 로봇 프로그램이 온라인 게임을 진행하는 것으로 판단된 경우 다양한 조치를 취할 수 있다.The game server 17 may take various actions when it is determined that the robot program is playing an online game.

예를 들자면, 로봇 프로그램이 동작하는 사용자 컴퓨터를 통해 접속한 유저의 아이디(ID), 유저 캐릭터 식별정보, 해당 사용자 컴퓨터의 IP 주소, 게임 이용 일시 등의 정보를 로그 정보로서 저장할 수 있다.For example, the user's ID (ID), user character identification information, IP address of the user's computer, and game usage date and the like, which are connected through the user computer on which the robot program operates, may be stored as log information.

이러한 로그 정보는 이후 해당 사용자에 대한 게임 이용 금지나 경고 등의 제재를 가하는데 있어 기초 자료로 활용될 수 있다.
This log information can be used as basic data in applying sanctions such as prohibiting game use or warning to the user.

한편, 로봇 프로그램(12)도 게임 서버(17)로부터 수신되는 랜덤 코드와 연산 데이터를 인식할 수 있다면, 그 결과 값을 산출할 수 있다.On the other hand, if the robot program 12 can also recognize the random code and the calculation data received from the game server 17, it can calculate the result value.

이러한 상황에 대처하기 위한 하나의 방안으로서, 랜덤 코드와 연산 데이터는 사용자 컴퓨터(10)에서 게임 클라이언트(11)가 실행되는 상태일 때만 올바른 결과 값을 산출할 수 있도록 구성될 수 있다.As a way to cope with such a situation, the random code and the calculation data may be configured to calculate the correct result value only when the game client 11 is executed in the user computer 10.

도 7을 참조하자면, 연산 데이터(71)는 게임 클라이언트(11)가 실행되었을 때 사용자 컴퓨터의 메모리(10-3)에 생성되는 게임 프로세스 영역(75) 중 특정 영역(77)의 메모리 주소를 포함할 수 있다.Referring to FIG. 7, the operation data 71 includes a memory address of a specific area 77 of the game process area 75 generated in the memory 10-3 of the user computer when the game client 11 is executed. can do.

그리고 랜덤 코드(72)는 연산 데이터(71)가 지시하는 특정 영역(77)의 메모리 주소에 저장되어 있는 데이터 값을 연산하여 그 결과 값을 산출하도록 구성될 수 있다. 이때 특정 영역(77)의 메모리 주소에 저장된 데이터의 해쉬(Hash) 값을 연산에 이용하도록 구성될 수도 있다.The random code 72 may be configured to calculate a data value stored in the memory address of the specific area 77 indicated by the operation data 71 and calculate a result value. In this case, the hash value of the data stored in the memory address of the specific region 77 may be configured to be used for the calculation.

예컨대 연산 데이터(71)를 게임 클라이언트(11)의 실행에 따라 메모리(10-3)에 생성되는 게임 프로세스 영역(75) 중 특정 4 바이트(Byte)의 주소(Address)로 설정하고, 랜덤 코드(72)는 이 메모리 주소에 저장되어 있는 4 바이트(Byte) 데이터를 연산에 사용하도록 구성할 수 있다.For example, the operation data 71 is set to an address of a specific 4 byte of the game process area 75 generated in the memory 10-3 according to the execution of the game client 11, and the random code ( 72 may be configured to use 4 bytes of data stored in this memory address for calculation.

그러면 로봇 프로그램(12)이 랜덤 코드와 연산 데이터를 인식할 수 있다고 하더라도 게임 클라이언트(11)가 실행되고 있지 않기 때문에 올바른 결과 값을 산출할 수 없다.Then, even if the robot program 12 can recognize the random code and the calculation data, the game client 11 is not running, so that the correct result value cannot be calculated.

이와 같이 랜덤 코드나 연산 데이터를 게임 클라이언트(11)가 실행되는 상태일 때만 올바른 결과 값을 산출할 수 있도록 구성한다면, 게임 서버(17)는 연산 데이터가 지시하는 값을 알거나, 게임 클라이언트(11)를 실행하고 있어야 한다.As such, if the random code or the calculation data is configured to calculate the correct result only when the game client 11 is in the running state, the game server 17 knows the value indicated by the calculation data, or the game client 11 ) Should be running.

상술한 실시예는 본 발명의 이해를 돕기 위한 것이며, 본 발명은 상술한 실시예에 한정되지 않고 본 발명의 기술적 사상을 벗어나지 않는 범위 내에서 당업자에 의해 다양하게 변형하여 실시할 수 있는 것임은 물론이다.
It is to be understood that the present invention is not limited to the above-described embodiment, and various changes and modifications may be made by those skilled in the art without departing from the technical spirit of the present invention. to be.

10: 사용자 컴퓨터 11: 게임 클라이언트
12: 로봇 프로그램 15: 통신망
17: 게임 서버 10-2: 중앙처리장치(CPU)
10-3: 메모리
10: User Computer 11: Game Client
12: robot program 15: communication network
17: Game Server 10-2: Central Processing Unit (CPU)
10-3: memory

Claims (9)

사용자 컴퓨터에 설치된 게임 클라이언트와 통신망을 통해 통신하면서 온라인 게임 서비스를 제공하는 게임 서버가 랜덤 코드(Random Code)의 인자인 연산 데이터를 생성하여 상기 게임 클라이언트로 전송하는 단계;
상기 게임 클라이언트가 상기 게임 서버로부터 수신된 연산 데이터를 인자로 자신이 가지고 있는 랜덤 코드를 실행하여 그 결과 값을 산출하고, 산출된 결과 값을 상기 게임 서버로 전송하는 단계; 및
상기 게임 서버가 상기 게임 클라이언트로 전송하였던 연산 데이터를 인자로 상기 게임 클라이언트가 가지고 있는 랜덤 코드를 실행하여 결과 값을 산출하고, 산출된 결과 값이 상기 게임 클라이언트로부터 수신된 결과 값과 서로 일치하는지의 여부를 조사하는 단계를 포함하여 이루어지고,
상기 게임 클라이언트가 가지고 있는 랜덤 코드는 상기 게임 서버가 전송해 주며, 상기 게임 클라이언트는 상기 게임 서버로부터 수신된 랜덤 코드를 보관하는 것을 특징으로 하는 랜덤 코드를 이용한 게임 클라이언트 인증 방법.
Generating, by a game server providing an online game service while communicating with a game client installed in a user computer through a communication network, arithmetic data which is a factor of a random code and transmitting it to the game client;
Executing, by the game client, a random code possessed by the game client with the calculation data received from the game server, calculating a result value, and transmitting the calculated result value to the game server; And
The game server calculates a result value by executing a random code possessed by the game client based on the arithmetic data transmitted to the game client, and determines whether the calculated result value coincides with the result value received from the game client. Including whether to investigate whether
The random code possessed by the game client is transmitted by the game server, and the game client stores the random code received from the game server.
제 1 항에 있어서,
상기 게임 클라이언트는 상기 게임 서버로부터 새로운 랜덤 코드가 수신되면 보관 중인 랜덤 코드를 새로운 랜덤 코드로 갱신하는 것을 특징으로 하는 랜덤 코드를 이용한 게임 클라이언트 인증 방법.
The method of claim 1,
The game client authentication method using a random code, characterized in that when the new random code is received from the game server updates the stored random code with a new random code.
제 1 항에 있어서,
상기 게임 클라이언트는 상기 게임 서버로부터 연산 데이터가 수신되었을 때 랜덤 코드가 존재하지 않으면 상기 게임 서버로 오류 메시지를 전송하는 것을 특징으로 하는 랜덤 코드를 이용한 게임 클라이언트 인증 방법.
The method of claim 1,
And the game client transmits an error message to the game server if a random code does not exist when the operation data is received from the game server.
제 1 항에 있어서,
상기 게임 서버는 상기 게임 클라이언트로 랜덤 코드를 전송하는 경우 연산 데이터를 함께 전송하는 것을 특징으로 하는 랜덤 코드를 이용한 게임 클라이언트 인증 방법.
The method of claim 1,
When the game server transmits a random code to the game client, the game client authentication method using a random code, characterized in that for transmitting.
제 1 항에 있어서,
상기 게임 서버는 상기 산출된 결과 값과 상기 수신된 결과 값이 일치하면 정상적인 게임 클라이언트가 온라인 게임을 진행하는 것으로 판단하는 것을 특징으로 하는 랜덤 코드를 이용한 게임 클라이언트 인증 방법.
The method of claim 1,
And the game server determines that a normal game client proceeds to an online game when the calculated result value and the received result value coincide with each other.
제 3 항에 있어서,
상기 게임 서버는 상기 게임 클라이언트로부터 오류 메시지가 수신되면, 로봇 프로그램이 온라인 게임을 진행하는 것으로 판단하는 것을 특징으로 하는 랜덤 코드를 이용한 게임 클라이언트 인증 방법.
The method of claim 3, wherein
When the game server receives an error message from the game client, the game server authentication method using a random code, characterized in that the robot program determines that the online game.
제 1 항에 있어서,
상기 게임 서버는 상기 산출된 결과 값과 상기 수신된 결과 값이 일치하지 않거나, 상기 게임 클라이언트로부터 일정 시간 동안 결과 값이 수신되지 않으면, 로봇 프로그램이 온라인 게임을 진행하는 것으로 판단하는 것을 특징으로 하는 랜덤 코드를 이용한 게임 클라이언트 인증 방법.
The method of claim 1,
The game server randomly characterized in that the robot program proceeds to the online game, if the calculated result value and the received result value does not match, or if the result value is not received from the game client for a predetermined time Game client authentication method using code.
제 1 항에 있어서,
상기 랜덤 코드와 연산 데이터는 상기 사용자 컴퓨터에서 상기 게임 클라이언트가 실행되는 상태일 때만 올바른 결과 값을 산출할 수 있도록 구성되는 것을 특징으로 하는 랜덤 코드를 이용한 게임 클라이언트 인증 방법.
The method of claim 1,
The random code and the operation data is a game client authentication method using a random code, characterized in that configured to calculate the correct result only when the game client is running on the user computer.
제 8 항에 있어서,
상기 연산 데이터는 상기 게임 클라이언트가 실행되었을 때 상기 사용자 컴퓨터의 메모리에 생성되는 프로세스 영역 중 특정 영역의 메모리 주소를 포함하고,
상기 랜덤 코드는 상기 특정 영역의 메모리 주소에 저장되어 있는 데이터 값을 연산하여 그 결과 값을 산출하도록 구성되는 것을 특징으로 하는 랜덤 코드를 이용한 게임 클라이언트 인증 방법.
The method of claim 8,
The operation data includes a memory address of a specific area of a process area created in a memory of the user computer when the game client is executed,
The random code is a game client authentication method using a random code, characterized in that for calculating a result value by calculating a data value stored in the memory address of the particular area.
KR1020110002667A 2011-01-11 2011-01-11 Method for game client authentication using random code KR20120081360A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020110002667A KR20120081360A (en) 2011-01-11 2011-01-11 Method for game client authentication using random code

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020110002667A KR20120081360A (en) 2011-01-11 2011-01-11 Method for game client authentication using random code

Publications (1)

Publication Number Publication Date
KR20120081360A true KR20120081360A (en) 2012-07-19

Family

ID=46713526

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020110002667A KR20120081360A (en) 2011-01-11 2011-01-11 Method for game client authentication using random code

Country Status (1)

Country Link
KR (1) KR20120081360A (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101527098B1 (en) * 2013-08-28 2015-06-09 고려대학교 산학협력단 Server and method for attesting application in smart device using random executable code
US9569618B2 (en) 2013-08-28 2017-02-14 Korea University Research And Business Foundation Server and method for attesting application in smart device using random executable code

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101527098B1 (en) * 2013-08-28 2015-06-09 고려대학교 산학협력단 Server and method for attesting application in smart device using random executable code
US9569618B2 (en) 2013-08-28 2017-02-14 Korea University Research And Business Foundation Server and method for attesting application in smart device using random executable code

Similar Documents

Publication Publication Date Title
US11524237B2 (en) Systems and methods for distributing the generation of nonplayer characters across networked end user devices for use in simulated NPC gameplay sessions
US8713157B2 (en) System for collecting computer application usage data of targeted application programs executed on a plurality of client devices
US9352215B2 (en) Information processing system, information processing method, information storage medium, and program
EP2635356B1 (en) Detecting lag switch cheating in game
US20200311239A1 (en) Audio-based device authentication system
JP6462740B2 (en) Online game synchronization method and server device
KR20090119925A (en) Method and apparatus for monitoring user game-playing behavior and reporting game play data in a gaming environment
CN110490590B (en) Activity record query method, device, equipment and storage medium based on block chain
JP6400807B1 (en) GAME SYSTEM AND COMPUTER PROGRAM USED FOR THE SAME
KR20190129704A (en) System and method for playing online game
KR20120081360A (en) Method for game client authentication using random code
CN114338051B (en) Method, device, equipment and medium for acquiring random number by block chain
CN111939556A (en) Method, device and system for detecting abnormal operation of game
JP2019037784A (en) Game system and computer program used therefor
KR101211855B1 (en) Method for Game Client Authentication using Random Code
KR101741026B1 (en) Method and Computer Readable Recording Medium for Detecting Malicious Module of On-Line Game
KR102368096B1 (en) Method and apparatus for delegating game play
JP6412667B1 (en) Server, method, and program for providing game
KR20120039108A (en) Method and system for bad user monitoring of on-line game system
KR20210078141A (en) Method and apparatus for providing payment service
KR101447850B1 (en) Game service method for real time match game and system thereof
JP7148814B2 (en) Game program and game system
TWI842905B (en) Apparatus and method for on-line service access control
US20240149170A1 (en) Game data verification method and apparatus, device, computer-readable storage medium, and computer program product
KR101819987B1 (en) Game service system, mobile apparatus and method for providing sub game thereof

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E601 Decision to refuse application