CN1893347A - 一种检测网络游戏作弊的方法 - Google Patents
一种检测网络游戏作弊的方法 Download PDFInfo
- Publication number
- CN1893347A CN1893347A CNA2006100072503A CN200610007250A CN1893347A CN 1893347 A CN1893347 A CN 1893347A CN A2006100072503 A CNA2006100072503 A CN A2006100072503A CN 200610007250 A CN200610007250 A CN 200610007250A CN 1893347 A CN1893347 A CN 1893347A
- Authority
- CN
- China
- Prior art keywords
- data
- client
- server
- verified
- iii
- Prior art date
- Legal status (The legal status 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 status listed.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 40
- 238000012795 verification Methods 0.000 claims description 73
- 230000006399 behavior Effects 0.000 claims description 12
- 230000000694 effects Effects 0.000 claims description 6
- 241000209202 Bromus secalinus Species 0.000 claims description 3
- 125000004122 cyclic group Chemical group 0.000 claims description 3
- 238000010200 validation analysis Methods 0.000 abstract description 2
- 238000001514 detection method Methods 0.000 description 5
- 230000005540 biological transmission Effects 0.000 description 4
- 238000004891 communication Methods 0.000 description 4
- 230000001133 acceleration Effects 0.000 description 3
- 238000013461 design Methods 0.000 description 2
- 238000012545 processing Methods 0.000 description 2
- 238000013519 translation Methods 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 230000002265 prevention Effects 0.000 description 1
- 238000012797 qualification Methods 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Images
Classifications
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F13/00—Video games, i.e. games using an electronically generated display having two or more dimensions
- A63F13/70—Game security or game management aspects
- A63F13/75—Enforcing rules, e.g. detecting foul play or generating lists of cheating players
-
- A63F13/12—
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F13/00—Video games, i.e. games using an electronically generated display having two or more dimensions
- A63F13/30—Interconnection arrangements between game servers and game devices; Interconnection arrangements between game devices; Interconnection arrangements between game servers
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F13/00—Video games, i.e. games using an electronically generated display having two or more dimensions
- A63F13/70—Game security or game management aspects
- A63F13/71—Game security or game management aspects using secure communication between game devices and game servers, e.g. by encrypting game data or authenticating players
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/02—Details
- H04L12/16—Arrangements for providing special services to substations
- H04L12/18—Arrangements for providing special services to substations for broadcast or conference, e.g. multicast
- H04L12/1813—Arrangements for providing special services to substations for broadcast or conference, e.g. multicast for computer conferences, e.g. chat rooms
- H04L12/1822—Conducting the conference, e.g. admission, detection, selection or grouping of participants, correlating users to one or more conference sessions, prioritising transmission
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F2300/00—Features 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/50—Features 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/55—Details of game data or player data management
- A63F2300/5586—Details of game data or player data management for enforcing rights or rules, e.g. to prevent foul play
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Business, Economics & Management (AREA)
- Computer Security & Cryptography (AREA)
- General Business, Economics & Management (AREA)
- General Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Information Transfer Between Computers (AREA)
Abstract
本发明提出了一种检测网络游戏作弊的方法,用于具有服务器和客户端的网络游戏系统该方法包括步骤:被验证客户端和验证客户端收到从服务器传送来的数据;被验证客户端将该客户端上发生的对游戏有影响的操作数据二发送给验证客户端,并计算出被验证客户端应向服务器发送的数据三;验证客户端对数据一和数据二处理得到数据三’;对数据三和数据三’进行比较,如果不相同,则可以得出至少一个客户端中存在作弊行为。本方案通过网络游戏客户端之间互相验证,可以准确的检测出游戏中的客户端的作弊行为,并使外挂作弊方式无法躲避检测,能够准确的发现作弊的客户端,有效的防止游戏作弊行为,保证游戏的公平进行,极大的减少游戏运营商的收入损失。
Description
技术领域
本发明提出了一种网络数据检测方法,具体涉及一种检测网络游戏作弊的方法。
背景技术
网络游戏正受到越来越多的人的喜爱,但是网络游戏自诞生起就受到各种作弊行为的困扰。它们破坏了游戏原本设计的平衡性,也破坏了游戏的正常发展。由于目前网络游戏基本上都是使用客户/服务器模式,服务器端的网络带宽、CPU等资源的负荷都很重,因此不得不把很多运算交给游戏客户端进行,这就给客户端作弊带来了可乘之机。作弊者使用网络游戏外挂等程序为作弊者带来正常情况下不应有的利益,破坏了网络游戏预定的设计,严重干扰了游戏的正常进行。目前网络游戏作弊程序甚至已经有形成一个产业的趋势,给网络游戏厂商带来很大的困扰,影响了游戏市场的正常运营,给网络游戏厂商造成了极大的经济损失。目前游戏厂商检测作弊程序大多是在客户端进行,但客户端运行在游戏者的机器上,作弊者可以使用对应的外挂程序等方法使这些检测失效。虽然厂商可以通过更新客户端来检测这些新的作弊程序,但作弊者也可以用更新的程序来躲过检测,因此这不是根本的解决方法,因此网络游戏厂商们迫切希望能有一种外挂不能躲避的反外挂方案。
发明内容
本发明的目的在于提供一种通过使网络游戏客户端之间互相验证来检测游戏中的客户端是否作弊的方法。
基于这种思想,本发明提出了如下的技术方案:
一种检测网络游戏作弊的方法,用于具有服务器和客户端的网络游戏系统,该方法包括如下步骤:
步骤1:被验证客户端和至少一个验证客户端分别收到从服务器传送来的数据一;
步骤2:被验证客户端将该客户端上发生的对游戏有影响的操作:数据二,发送给至少一个验证客户端,并且通过对数据一和数据二处理得到被验证客户端应向服务器发送的数据三;
步骤3:所述的至少一个验证客户端对数据一和数据二处理得到至少一个验证客户端应向服务器发送的数据三’;
步骤4:对数据三和数据三’进行比较,如果两者不相同,则可以得出被验证客户端和至少一个验证客户端中至少一个存在作弊行为。
优选的,所述的数据二中还包括有时间数据。
优选的,所述的时间数据可以是以下之一或者全部:
对游戏有影响的操作被处理的时间数据;或,
被验证客户端向服务器发送数据时的时间数据;或,
数据一在被验证客户端上被处理的时间。
优选的,所述的数据一还包括有服务器发送数据一时的时间数据。
优选的,所述的步骤1中可以进一步包括以下步骤:
服务器首先向被验证客户端发送数据一,然后被验证客户端向至少一个验证客户端发送数据一;或者,
服务器向被验证客户端和至少一个验证客户端分别发送数据一。
优选的,所述的被验证客户端传给至少一个验证客户端的数据用RSA算法加密;服务器将解密的公匙传给所述的至少一个验证客户端;或者,
被验证客户端和至少一个验证客户端分别收到从服务器传送来的数据采用RSA算法加密;服务器将解密的公匙传给被验证客户端和所述的至少一个验证客户端。
优选的,所述的步骤4中的对数据三和数据三’进行比较,还可以是仅对数据三和数据三’中的某一部分进行比较,如果两者不相同,则可以得出被验证客户端和验证客户端中至少一个存在作弊行为。
优选的,所述的步骤4中可以进一步包括以下步骤:
被验证客户端和至少一个验证客户端将数据三和数据三’发送给服务器,由服务器对数据三和数据三’进行比较;或者,
被验证客户端将数据三发送给至少一个验证客户端,由至少一个验证客户端对数据三和数据三’进行比较;或者,
至少一个验证客户端将数据三发送给被验证客户端,由至被验证客户端对数据三和数据三’进行比较。
优选的,所述的步骤4中可以进一步包括以下步骤:
被验证客户端和至少一个验证客户端将数据三的CRC校验和数据三’的CRC校验发送给服务器,由服务器对数据三的CRC校验和数据三’的CRC校验进行比较;或者,
被验证客户端将数据三的CRC校验发送给至少一个验证客户端,由至少一个验证客户端对数据三的CRC校验和数据三’的CRC校验进行比较;或者,
至少一个验证客户端将数据三的CRC校验发送给被验证客户端,由被验证客户端对数据三的CRC校验和数据三’的CRC校验进行比较。
优选的,所述的步骤4中可以进一步包括以下步骤:
当发现验证客户端得出的数据与被验证客户端的数据不同时,服务器将要求验证客户端把被验证客户端传送给验证客户端的数据一和数据二传送给服务器,并根据该数据得出被验证客户端应向服务器发送的数据三”或数据三”的CRC校验;然后,
把数据三”和被验证客户端发送给服务器的数据三比较,如果不一致,就可以得知被验证客户端在作弊;或者,
把数据三”的CRC校验和数据三的CRC校验比较,如果不一致,就可以得知被验证客户端存在作弊行为。
优选的,所述的至少一个验证客户端还可以将从被验证客户端收到的数据一发送给服务器;将从被验证客户端收到的数据一与服务器发送给被验证客户端的数据一进行比较,如果两者不相同,则可以得出被验证客户端和验证客户端中至少一个存在作弊行为;或者,
所述的至少一个验证客户端将从被验证客户端收到的数据一的CRC校验发送给服务器,将从被验证客户端收到的数据一的CRC校验与服务器发送给被验证客户端的数据一的CRC校验进行比较,如果两者不相同,则可以得出被验证客户端和验证客户端中至少一个存在作弊行为。
优选的,每隔特定时间间隔,让被验证客户端中断目前连接的至少一个验证客户端,更换成与其他至少一个验证客户端相连接。所述的时间间隔可以是30秒或40秒等固定时间间隔。
优选的,进一步还可以要求被验证客户端将所述的特定时间间隔内发生的数据一和数据二传递给更换后的至少一个验证客户端进行验证。这样可以对更换前的至少一个验证客户端的验证结果进一步确认。
优选的,所述的客户端之间、客户端和服务器使用UDP(User DatagramProtocol,用户数据报协议)协议传送数据。
优选的,所述的数据二中的对游戏有影响的操作数据可以是各种输入输出设备产生的对游戏有影响的操作数据。
优选的,所述的输入输出设备包括以下之一或其组合,鼠标、键盘、触摸屏、手写板或各种游戏设备。
本发明的有益效果是:通过使网络游戏客户端之间互相验证,可以准确的检测出游戏中的客户端是否有作弊行为,本方案使目前的外挂作弊方式无法躲避检测,能够准确的发现作弊的客户端,有效的防止游戏作弊行为,保证游戏的公平进行,并且还能极大的减少游戏运营商的收入损失。
附图说明
图1是具有服务器和客户端的网络游戏系统的结构示意图。
图2是使用本发明中的方法进行客户端验证的一种流程图。
图3是使用本发明中的方法进行客户端验证的一种流程图。
具体实施方式
下面结合附图和具体实施例对本发明作进一步说明。
实施例1
下面以一个典型的客户/服务器形式的网络游戏为例说明本发明的具体
实施方法。
游戏中的计算机由服务器、游戏客户端1、客户端2和其它一些客户端3-n组成,如图1所示。
如图2所示,客户端1连接服务器后,把它从服务器接收的数据D1连同客户端1上发生的对游戏有影响的键盘、鼠标、游戏杆的操纵等数据D2传给客户端2。在数据D1和D2中带时间信息,比如,D1中带有服务器发送D1的时间,以及被验证客户端处理D1时的时间,D2中带有被验证客户端处理D2的时间,以及被验证客户端向服务器发送数据的时间。因此客户端2根据D1和D2就可以计算出客户端1应该向服务器发送的数据D3。由于D3和服务器从客户端1收到的数据D4是由同样的数据计算得出的,所以它们应该是一致的。客户端2把数据D3发送给服务器。服务器比较D3和D4,如果不一致,则可以判定客户端1或客户端2有作弊行为。具体是客户端1还是客户端2在作弊,或者它们二者都在作弊则需要另外判断,这种情况将在下面进行描述。
验证客户端如何根据D1、D2计算出和被验证客户端传送给服务器的完全相同的结果呢?有很多种方法可以做到这一点。我们以一个典型的赛车游戏为例。我们可以让被验证客户端每过一个固定的时间,例如0.1秒,向服务器传送一次数据。在数据中包含赛车当前的位置、速度、和方向。验证客户端也每过0.1秒计算一次被验证客户端赛车的位置、速度、和方向。显然,根据游戏中其他赛车的状态,也就是D1,以及被验证客户端鼠标键盘的输入,赛车在0.1、0.2、0.3秒等时间的位置、速度、和方向等是唯一和确定的。这样验证客户端和被验证客户端就能根据这些位置、速度、和方向等数据计算得到相同的被验证客户端应该向服务器传送的数据。我们也可以在D1中包含“心跳”(“心跳”是一种同步的技术。为了保持不同计算机上的进程运行的同步,可以让一台计算机向其它计算机发送同步信息,我们把这一同步信息成为心跳。其他进程每收到一次心跳就执行一次动作,例如移动人物、显示一帧画面、向网络发送一次数据等。这样不管每一台计算机运行速度是快是慢,他们都能同步地执行动作。)信号。被验证客户端每收到一次“心跳”信号就移动一帧。每一帧的时间可以随意约定,例如可以约定为1/60秒。如果服务器发现有些被验证客户端运行速度较慢,1/60秒时间来不及计算完所有所需的数据,服务器可以降低传送“心跳”的速度。这样所有被验证客户端上赛车的速度都降低了,但是却可以确保所有被验证客户端是同步运行的。另外我们还可以让被验证客户端把每次向服务器传送数据的时间传送给验证客户端。显然,在一个确定的时间,例如0.123秒,或者0.678秒,赛车的位置、速度、和方向等状态也是确定的。验证客户端根据这些状态就能计算出在这些时间被验证客户端应该向服务器传送的数据。
服务器也可以直接把D1发送给客户端2,不过这样会增加对服务器网络带宽的需求。也可以由服务器把数据D4发送给客户端2,由客户端2比较数据D3和数据D4是否一致;或者还可以由客户端1将D4发送给客户端2由客户端2比较数据D3和数据D4是否一致;以及由客户端2将D3发送给客户端1由客户端1比较数据D3和数据D4是否一致。
为了防止客户端1修改数据D1后再发送给客户端2的作弊行为,客户端2可以把从客户端1接收的数据D1再发送给服务器。服务器比较发送给客户端1的数据D1和客户端2传回来的D1就可以判断D1是否在传输过程中被修改。为节省网络带宽,客户端2可以只向服务器传送D1中的一部分数据。由于如果客户端1有作弊行为,D3和D4就会出现很大的差异,因此为节省网络带宽,客户端2只须向服务器发送数据D3中的一小部分就够了。
由于UDP协议能穿过一些TCP(Transfer Control Protocol,传输控制协议)协议无法穿过的网络地址转换NAT(Network Address Translation,网络地址转换)网关,而游戏客户端经常位于这些网关之后,因此如果使用UDP协议将比使用TCP协议更有可能成功地在两个客户端之间建立连接。因为DirectPlay(DirectPlay是Microsoft DirectX的组件之一,Microsoft DirectPlayAPI为开发者提供了开发诸如多人游戏或聊天程序的工具,它是MicrosoftDirectX的组件之一。DirectPlay完成了与用户连接以及网络地址转换“NAT”相关的所有复杂工作,并管理会话。)是基于UDP协议的,因此也可以考虑使用DirectPlay来实现。
实施例2
在本实施例中,为了防止验证客户端修改被验证客户端传给它的数据,然后谎报被验证客户端作弊,可以在被验证客户端把数据一如D1、D2,传给验证客户端前把数据用RSA(RSA是一种非对称加密算法。在公钥加密标准和电子商业中被广泛使用。RSA是由Ron Rivest,Adi Shamir and LenAdleman一起提出的。RSA采用他们三人名字开头字母拼在一起组成的。)算法加密。服务器把解密的公匙传给验证客户端。如果验证客户端向服务器报告被验证客户端作弊,服务器将要求验证客户端把被验证客户端传送给验证客户端的数据一D1、D2传送给服务器。服务器根据这个数据计算出被验证客户端应向服务器发送的数据D3’。把D3’和被验证客户端发送给服务器的数据D3比较,如果不一致,就能知道被验证客户端作弊了。因为验证客户端只有公匙,所以它可以解密被验证客户端传给它的数据,但不能修改它,因此可以确保这些数据确实是由被验证客户端传送给验证客户端的。
此外还可以由服务器根据验证客户端传送来数据D1和D2,得出D3’的CRC(循环冗余码校验)校验,通过比较数据D3和D3’的CRC码,如果两者不一致,也可以判断出验证客户端和被验证客户端之一存在作弊行为。
实施例3
另外本发明让一个被验证客户端同时连接两个或更多个验证客户端。如果被验证客户端和其中一个或多个验证客户端连接中断,只要被验证客户端至少还与一个验证客户端正常连接,验证就能继续进行。如果被验证客户端为了逃避验证或网络故障等原因中断了所有和验证客户端之间的连接,由于这样会导致没有验证客户端对此被验证客户端进行验证,因此服务器需要终止此被验证客户端的连接。假如验证客户端总是不报告被验证客户端作弊,只要另一个验证客户端工作正常就不会有影响。另外可以让一些客户端故意传送给验证客户端错误的数据,如果它没有报告作弊,就可判断出此验证客户端在作弊。
如果被验证客户端故意传送给验证客户端错误(也就是无法用RSA算法解密)的数据,或者验证客户端故意报告被验证客户端传送给它错误数据时,可以作为被验证客户端和验证客户端连接中断来处理。
实施例4
假设外挂让使用外挂的客户端互相联系,因此一个被验证客户端就能知道它所连接的验证客户端是否允许它做弊,验证客户端也能知道是否应该允许它所验证的客户端做弊。这样,如果一个使用了外挂的被验证客户端连接了两个验证客户端,其中一个验证客户端也使用了外挂,另一个没有。被验证客户端强行中断与没有使用外挂的验证客户端的连接,而另一个使用了外挂的验证客户端却又不向服务器报告被验证客户端的作弊行为。对此我们可以每过一小段时间,例如30秒,就要求被验证客户端改变它的两个验证客户端。这个周期越短越好。在连接新的验证客户端后,除了要求新的验证客户端验证当前被验证客户端和服务器之间的通讯外,还要求验证之前30秒的通讯。只要这时的两个验证客户端没有作弊,被验证客户端之前30秒的作弊行为就能被检测出来。
一个网络游戏客户端连接服务器时,同时也被要求连接另外两个用于对它进行验证的游戏客户端,验证客户端是随机选取的。在服务器传送给客户端的数据中含有从服务器上发出的时间。客户端把它从服务器上接收到的数据D1、该客户端上鼠标键盘的数据D2,以及这些数据在客户端上被处理的时间D3、D4传送给两个用于验证的游戏客户端。例如,D4可以是鼠标、键盘的输入在该客户端上被处理的时间,如:鼠标左键按下数据由被验证客户端在9.1秒被处理;键盘P键按下数据由被验证客户端在9.2秒被处理。
为保证这些数据不被修改,在传送给验证客户端前,D1、D2、D3、D4使用RSA算法加密。验证客户端根据D1、D2、D3、D4计算出被验证客户端应向服务器发送的数据D5和D5的CRC校验D6,把D6传送给服务器。为防止被验证客户端在把D1传送给验证客户端前修改D1的数据,验证客户端也要把D1的CRC校验D7传送给服务器。服务器计算被验证客户端发送给它的的数据D8的CRC校验D9,以及D1的CRC校验D10。比较D9、D6、D10、D7,如果不相同,就可以知道有客户端作弊了。如图三所示。
下面来看看上面的方案在各种情况下如何检测出哪个客户端在作弊。
假设被验证客户端在把D1传送给验证客户端前修改D1,服务器只需比较D10、D7就能知道被验证客户端是否修改了D1。
假设验证客户端谎报D1被修改,在验证客户端向服务器报告此问题时,服务器将要求验证客户端把D1传送给服务器。由于D1使用RSA算法加密,验证客户端根本无法修改它,因此验证客户端是无法谎报D1被修改的。对于验证客户端谎报D2、D3、D4被修改的情况也与此类似。
假设被验证客户端使用加速外挂,由于D1中含有服务器发送D1的时间,这个时间减D3或D4后的值D11应该是一个固定值。如果这个值变化超过一定范围,例如两秒,就可以知道被验证客户端作弊了。
服务器发送给客户端的数据中含有服务器发送它们的时间。例如:服务器在T1时间发送了一个数据,客户端在T2时间处理它。T1-T2的时间=T3。在一段时间后,服务器在T4时间又发送了一个数据,客户端在T5时间处理它。T4-T5=T6。由于网络的延迟有时长有时短,客户端如果正在做一些其他事情,也可能不能及时处理服务器发送给它的数据。但是服务器发送一个数据和客户端处理这个数据之间的时间差T3和T6不会变化太大,例如总是在0.1秒到1秒之间。但是如果客户端用了一些加速程序,实际时间过了100秒,但游戏却认为过了110秒。服务器在第100秒发送给它的数据他会认为在第110秒才处理,这样服务器发送数据的时间-客户端处理它的时间=100-110=-10,大大超过正常情况的0.1秒到1秒。如果验证客户端发现这种情况就能知道被验证客户端使用加速外挂作弊了。
假设被验证客户端使用修改封包、内存、脱机等外挂,D9、D6必定不相同,所以只需比较D9、D6就能知道被验证客户端作弊。
实施例5
客户端同服务器之间的通讯数据与实施例4相同。
假设被验证客户端为了逃避验证,不把验证数据发送给验证客户端。对于这种情况,如果两个验证客户端在一段时间内都没有收到验证数据,服务器可以断开被验证客户端的连接,终止被验证客户端的游戏资格。
假如被验证客户端因为验证客户端下线等原因和验证客户端断开了连接怎么办?只要另一个验证客户端还能收到验证数据,就不会有什么影响。如果网络带宽允许,甚至可以考虑连接三个甚至更多的验证客户端。这样即使有两个验证客户端谎报收不到数据,仍然不会对被验证客户端产生影响。在验证客户端和被验证客户端连接断开的情况下,我们需要让被验证客户端重新连接一个验证客户端。应该如何重新连接一个验证客户端呢?对此需要每过一定时间,例如10秒,保存一次客户端的游戏状态。游戏状态是指客户端在某一时刻对游戏进行有影响的数据,例如游戏中所有玩家的位置、速度、方向、正在执行的动作(例如行走、挥刀、跑步或者站立不动等)。在连接断开时,被验证客户端连接一台新的验证客户端,把此状态传送给新的验证客户端。新的验证客户端根据此状态,再加上被验证客户端传送给它的D1、D2、D3、D4就能继续计算D5,从而继续对被验证客户端进行验证。如果被验证客户端和两个验证客户端的连接都中断了,我们就需要中断服务器和验证客户端的连接。
假设验证客户端总是不报告被验证客户端作弊,只要有另一个验证客户端工作正常就不会有影响。另外可以让一些客户端故意传送给它错误的数据,如果它没有报告作弊,就可判断出此验证客户端在作弊。
假如被验证客户端故意传送给验证客户端无法用RSA算法解密的数据,或者验证客户端故意报告被验证客户端传送给它无法用RSA算法解密的数据怎么办?服务器无法区分这两种情况,所以只能作为被验证客户端和验证客户端连接中断来处理。
再来看一种情况。假设外挂通过某种方法让使用外挂的客户端互相联系,并且联合作弊怎么办?例如,一个使用了外挂的被验证客户端连接了两个验证客户端,其中一个验证客户端也使用了外挂,另一个没有。被验证客户端强行中断与没有使用外挂的验证客户端的连接,而另一个使用了外挂的验证客户端却又不向服务器报告被验证客户端的作弊行为。对此我们可以每过一小段时间,例如30秒,就要求被验证客户端改变它的两个验证客户端。这个周期越短越好。在连接新的验证客户端后,除了要求新的验证客户端验证当前被验证客户端和服务器之间的通讯数据外,还要求验证之前30秒的通讯数据。比如被验证客户端将断开连接前30秒内的D1、D2、D3、D4等数据发送给新连接的两个验证客户端。只要这时的两个验证客户端没有作弊,被验证客户端之前30秒的作弊行为就能被检测出来。一个被验证客户端应该如何改变验证客户端,并能够让此验证客户端继续对被验证客户端进行验证呢?在被验证客户端连接新的验证客户端后,被验证客户端需要把被验证客户端当时的游戏状态D12传送给新的验证客户端。新的验证客户端根据D12,再加上D1、D2、D3、D4就能继续计算出D5,从而继续对被验证客户端进行验证。
以上所述的实施例,只是本发明较优选的具体实施方式的一种,本领域的技术人员在本发明技术的方案范围内,进行的通常变化和替换,都应包含在本发明的保护范围内。
Claims (16)
1.一种检测网络游戏作弊的方法,用于具有服务器和客户端的网络游戏系统,其特征在于,所述的方法包括步骤:
步骤1:被验证客户端和至少一个验证客户端分别收到从服务器传送来的数据一;
步骤2:被验证客户端将该客户端上发生的对游戏有影响的操作:数据二,发送给至少一个验证客户端,并且通过对数据一和数据二处理得到被验证客户端应向服务器发送的数据三;
步骤3:所述的至少一个验证客户端对数据一和数据二处理得到至少一个验证客户端应向服务器发送的数据三’;
步骤4:对数据三和数据三’进行比较,如果两者不相同,则可以得出被验证客户端和至少一个验证客户端中至少一个存在作弊行为。
2.根据权利要求1所述的检测网络游戏作弊的方法,其特征在于,所述的数据二中还包括有时间数据。
3.根据权利要求2所述的检测网络游戏作弊的方法,其特征在于,所述的时间数据可以是以下之一或者全部:
对游戏有影响的操作被处理的时间数据;或,
被验证客户端向服务器发送数据时的时间数据;或,
数据一在被验证客户端上被处理的时间。
4.根据权利要求1所述的检测网络游戏作弊的方法,其特征在于,所述的数据一还包括有服务器发送数据一时的时间数据。
5.根据权利要求1所述的检测网络游戏作弊的方法,其特征在于,所述的步骤1中可以进一步包括以下步骤:
服务器首先向被验证客户端发送数据一,然后被验证客户端向至少一个验证客户端发送数据一;或者,
服务器向被验证客户端和至少一个验证客户端分别发送数据一。
6.根据权利要求1所述的检测网络游戏作弊的方法,其特征在于,所述的被验证客户端传给至少一个验证客户端的数据用RSA算法加密;服务器将解密的公匙传给所述的至少一个验证客户端;或者,
被验证客户端和至少一个验证客户端分别收到从服务器传送来的数据采用RSA算法加密;服务器将解密的公匙传给被验证客户端和所述的至少一个验证客户端。
7.根据权利要求1至6中任一权利要求所述的检测网络游戏作弊的方法,其特征在于,所述的步骤4中的对数据三和数据三’进行比较,还可以是仅对数据三和数据三’中的某一部分进行比较,如果两者不相同,则可以得出被验证客户端和验证客户端中至少一个存在作弊行为。
8.根据权利要求1至6中任一权利要求所述的检测网络游戏作弊的方法,其特征在于,所述的步骤4中可以进一步包括以下步骤:
被验证客户端和至少一个验证客户端将数据三和数据三’发送给服务器,由服务器对数据三和数据三’进行比较;或者,
被验证客户端将数据三发送给至少一个验证客户端,由至少一个验证客户端对数据三和数据三’进行比较;或者,
至少一个验证客户端将数据三发送给被验证客户端,由被验证客户端对数据三和数据三’进行比较。
9.根据权利要求1至6中任一权利要求所述的检测网络游戏作弊的方法,其特征在于,所述的步骤4中可以进一步包括以下步骤:
被验证客户端和至少一个验证客户端将数据三的CRC校验和数据三’的CRC校验发送给服务器,由服务器对数据三的CRC校验和数据三’的CRC校验进行比较;或者,
被验证客户端将数据三的CRC校验发送给至少一个验证客户端,由至少一个验证客户端对数据三的CRC校验和数据三’的CRC校验进行比较;或者,
至少一个验证客户端将数据三的CRC校验发送给被验证客户端,由被验证客户端对数据三的CRC校验和数据三’的CRC校验进行比较。
10.根据权利要求1至6中任一权利要求所述的检测网络游戏作弊的方法,其特征在于,所述的步骤4中可以进一步包括以下步骤:
当发现验证客户端得出的数据与被验证客户端的数据不同时,服务器将要求验证客户端把被验证客户端传送给验证客户端的数据一和数据二传送给服务器,并根据该数据得出被验证客户端应向服务器发送的数据三”或数据三”的CRC校验;然后,
把数据三”和被验证客户端发送给服务器的数据三比较,如果不一致,就可以得知被验证客户端在作弊;或者,
把数据三”的CRC校验和数据三的CRC校验比较,如果不一致,就可以得知被验证客户端存在作弊行为。
11.根据权利要求1至6中任一权利要求所述的检测网络游戏作弊的方法,其特征在于,
所述的至少一个验证客户端还可以将从被验证客户端收到的数据一发送给服务器;将从被验证客户端收到的数据一与服务器发送给被验证客户端的数据一进行比较,如果两者不相同,则可以得出被验证客户端和验证客户端中至少一个存在作弊行为;或者,
所述的至少一个验证客户端将从被验证客户端收到的数据一的CRC校验发送给服务器,将从被验证客户端收到的数据一的CRC校验与服务器发送给被验证客户端的数据一的CRC校验进行比较,如果两者不相同,则可以得出被验证客户端和验证客户端中至少一个存在作弊行为。
12.根据权利要求1至6中任一权利要求所述的检测网络游戏作弊的方法,其特征在于,每隔特定的时间间隔,让被验证客户端中断目前连接的至少一个验证客户端,更换成与其他至少一个验证客户端相连接。
13.根据权利要求1至6中任一权利要求所述的检测网络游戏作弊的方法,其特征在于,进一步还可以要求被验证客户端将所述的特定时间间隔内发生的数据一和数据二传递给更换后的至少一个验证客户端进行验证。
14.根据权利要求1至6中任一权利要求所述的检测网络游戏作弊的方法,其特征在于,所述的客户端之间、客户端和服务器使用UDP协议传送数据。
15.根据权利要求1至6中任一权利要求所述的检测网络游戏作弊的方法,其特征在于,所述的数据二中的对游戏有影响的操作数据可以是各种输入输出设备产生的对游戏有影响的操作数据。
16.根据权利要求15所述的检测网络游戏作弊的方法,其特征在于,所述的输入输出设备包括以下之一或其组合,鼠标、键盘、触摸屏、手写板或各种游戏设备。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN200610007250A CN100583736C (zh) | 2005-07-08 | 2006-02-16 | 一种检测网络游戏作弊的方法 |
PCT/CN2006/000882 WO2007006192A1 (fr) | 2005-07-08 | 2006-04-30 | Procédé de détection de tricheurs dans les jeux en réseau |
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN200510082989 | 2005-07-08 | ||
CN200510082989.6 | 2005-07-08 | ||
CN200610007250A CN100583736C (zh) | 2005-07-08 | 2006-02-16 | 一种检测网络游戏作弊的方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN1893347A true CN1893347A (zh) | 2007-01-10 |
CN100583736C CN100583736C (zh) | 2010-01-20 |
Family
ID=37597885
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN200610007250A Expired - Fee Related CN100583736C (zh) | 2005-07-08 | 2006-02-16 | 一种检测网络游戏作弊的方法 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN100583736C (zh) |
WO (1) | WO2007006192A1 (zh) |
Cited By (19)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101025775B (zh) * | 2007-01-19 | 2010-10-06 | 华为技术有限公司 | 一种防止网络游戏外挂软件的方法、系统及装置 |
CN102404279A (zh) * | 2010-09-07 | 2012-04-04 | 腾讯科技(深圳)有限公司 | 一种网络中移动距离的精确判断方法和系统 |
CN102728063A (zh) * | 2011-03-31 | 2012-10-17 | 株式会社万代南梦宫游戏 | 游戏终端装置和服务器系统 |
CN104052636A (zh) * | 2014-06-23 | 2014-09-17 | 福建天晴数码有限公司 | 一种监测网络游戏外挂的时钟装置、方法及系统 |
CN105245514A (zh) * | 2015-09-28 | 2016-01-13 | 珠海多玩信息技术有限公司 | 外挂识别方法、装置及系统 |
CN105664489A (zh) * | 2015-12-30 | 2016-06-15 | 广州华多网络科技有限公司 | 一种防止游戏外挂的方法及系统 |
CN105988927A (zh) * | 2015-02-16 | 2016-10-05 | 杭州快迪科技有限公司 | 一种检测在软件的运行过程中的变速作弊行为的方法 |
CN106880944A (zh) * | 2015-12-15 | 2017-06-23 | 博雅网络游戏开发(深圳)有限公司 | 游戏数据分析方法和装置 |
CN107080944A (zh) * | 2017-05-26 | 2017-08-22 | 合肥泽诺信息科技有限公司 | 一种检测网络游戏外挂的方法 |
CN107970603A (zh) * | 2017-12-15 | 2018-05-01 | 百度移信网络技术(北京)有限公司 | 游戏方法、客户端、服务端、游戏主机、设备和存储介质 |
CN109499069A (zh) * | 2017-09-14 | 2019-03-22 | 腾讯科技(深圳)有限公司 | 操作结果校验方法、装置、存储介质及电子装置 |
CN109847342A (zh) * | 2019-03-19 | 2019-06-07 | Oppo广东移动通信有限公司 | 网络检测方法及相关装置 |
CN110227262A (zh) * | 2019-05-24 | 2019-09-13 | 腾讯科技(深圳)有限公司 | 一种数据展示方法、装置、计算机设备和存储介质 |
CN110292777A (zh) * | 2018-03-22 | 2019-10-01 | 北京金山安全软件有限公司 | 一种游戏作弊检测方法及装置 |
CN111084990A (zh) * | 2019-12-18 | 2020-05-01 | 上海米哈游天命科技有限公司 | 在线检测作弊方法、装置、设备和存储介质 |
WO2021012556A1 (zh) * | 2019-07-23 | 2021-01-28 | 网易(杭州)网络有限公司 | 信息处理方法、装置及存储介质 |
CN112929679A (zh) * | 2021-01-18 | 2021-06-08 | 广州虎牙科技有限公司 | 直播客户端的合法性检测、外挂行为的识别方法和装置 |
CN113181637A (zh) * | 2021-05-10 | 2021-07-30 | 上海幻电信息科技有限公司 | 游戏回放方法和系统 |
JP2021533840A (ja) * | 2019-07-23 | 2021-12-09 | ネットイーズ (ハンチョウ) ネットワーク カンパニー リミテッド | 情報処理方法、装置、プログラム、及び記録媒体 |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111569434B (zh) * | 2020-05-14 | 2023-12-15 | 宁波元素人网络科技有限公司 | 一种游戏代码校验的方法及系统 |
CN112957741B (zh) * | 2021-03-03 | 2024-02-02 | 网易(杭州)网络有限公司 | 游戏举报处理方法、装置及电子设备 |
CN115193058A (zh) * | 2021-04-08 | 2022-10-18 | 广州问天信息技术有限公司 | 一种反多开外挂的系统功能 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE10124427A1 (de) * | 2000-07-07 | 2002-01-17 | Ibm | System und Verfahren für einen sicheren Vergleich eines gemeinsamen Geheimnisses von Kommunikationsgeräten |
GB2391341A (en) * | 2002-07-31 | 2004-02-04 | Hewlett Packard Co | A method of validating the rights of a user to participate in an interactive computer environment |
JP2004310202A (ja) * | 2003-04-02 | 2004-11-04 | Nec Corp | 個人認証システムおよび方法 |
-
2006
- 2006-02-16 CN CN200610007250A patent/CN100583736C/zh not_active Expired - Fee Related
- 2006-04-30 WO PCT/CN2006/000882 patent/WO2007006192A1/zh active Application Filing
Cited By (34)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101025775B (zh) * | 2007-01-19 | 2010-10-06 | 华为技术有限公司 | 一种防止网络游戏外挂软件的方法、系统及装置 |
CN102404279A (zh) * | 2010-09-07 | 2012-04-04 | 腾讯科技(深圳)有限公司 | 一种网络中移动距离的精确判断方法和系统 |
CN102404279B (zh) * | 2010-09-07 | 2015-07-15 | 腾讯科技(深圳)有限公司 | 一种网络中移动距离的精确判断方法和系统 |
CN102728063B (zh) * | 2011-03-31 | 2016-02-24 | 株式会社万代南梦宫娱乐 | 游戏终端装置和服务器系统 |
CN102728063A (zh) * | 2011-03-31 | 2012-10-17 | 株式会社万代南梦宫游戏 | 游戏终端装置和服务器系统 |
CN104052636A (zh) * | 2014-06-23 | 2014-09-17 | 福建天晴数码有限公司 | 一种监测网络游戏外挂的时钟装置、方法及系统 |
CN105988927A (zh) * | 2015-02-16 | 2016-10-05 | 杭州快迪科技有限公司 | 一种检测在软件的运行过程中的变速作弊行为的方法 |
CN105245514A (zh) * | 2015-09-28 | 2016-01-13 | 珠海多玩信息技术有限公司 | 外挂识别方法、装置及系统 |
CN105245514B (zh) * | 2015-09-28 | 2019-05-07 | 珠海多玩信息技术有限公司 | 外挂识别方法、装置及系统 |
CN106880944A (zh) * | 2015-12-15 | 2017-06-23 | 博雅网络游戏开发(深圳)有限公司 | 游戏数据分析方法和装置 |
CN106880944B (zh) * | 2015-12-15 | 2020-05-29 | 博雅网络游戏开发(深圳)有限公司 | 游戏数据分析方法和装置 |
CN105664489A (zh) * | 2015-12-30 | 2016-06-15 | 广州华多网络科技有限公司 | 一种防止游戏外挂的方法及系统 |
CN105664489B (zh) * | 2015-12-30 | 2019-04-23 | 广州华多网络科技有限公司 | 一种防止游戏外挂的方法及系统 |
CN107080944A (zh) * | 2017-05-26 | 2017-08-22 | 合肥泽诺信息科技有限公司 | 一种检测网络游戏外挂的方法 |
CN107080944B (zh) * | 2017-05-26 | 2021-04-20 | 徐州爱吾宠互联网科技有限公司 | 一种检测网络游戏外挂的方法 |
CN109499069A (zh) * | 2017-09-14 | 2019-03-22 | 腾讯科技(深圳)有限公司 | 操作结果校验方法、装置、存储介质及电子装置 |
CN109499069B (zh) * | 2017-09-14 | 2022-04-26 | 腾讯科技(深圳)有限公司 | 操作结果校验方法、装置、存储介质及电子装置 |
CN107970603A (zh) * | 2017-12-15 | 2018-05-01 | 百度移信网络技术(北京)有限公司 | 游戏方法、客户端、服务端、游戏主机、设备和存储介质 |
CN110292777A (zh) * | 2018-03-22 | 2019-10-01 | 北京金山安全软件有限公司 | 一种游戏作弊检测方法及装置 |
CN109847342A (zh) * | 2019-03-19 | 2019-06-07 | Oppo广东移动通信有限公司 | 网络检测方法及相关装置 |
US12042725B2 (en) | 2019-03-19 | 2024-07-23 | Guangdong Oppo Mobile Telecommunications Corp., Ltd. | Method for network detection, electronic device, and non-transitory computer-readable storage medium |
CN109847342B (zh) * | 2019-03-19 | 2021-03-12 | Oppo广东移动通信有限公司 | 网络检测方法及相关装置 |
CN110227262A (zh) * | 2019-05-24 | 2019-09-13 | 腾讯科技(深圳)有限公司 | 一种数据展示方法、装置、计算机设备和存储介质 |
JP2021533840A (ja) * | 2019-07-23 | 2021-12-09 | ネットイーズ (ハンチョウ) ネットワーク カンパニー リミテッド | 情報処理方法、装置、プログラム、及び記録媒体 |
JP2021533839A (ja) * | 2019-07-23 | 2021-12-09 | ネットイーズ (ハンチョウ) ネットワーク カンパニー リミテッド | 情報処理方法、装置、プログラム、及び記録媒体 |
WO2021012556A1 (zh) * | 2019-07-23 | 2021-01-28 | 网易(杭州)网络有限公司 | 信息处理方法、装置及存储介质 |
JP7178421B2 (ja) | 2019-07-23 | 2022-11-25 | ネットイーズ (ハンチョウ) ネットワーク カンパニー リミテッド | 情報処理方法、装置、プログラム、及び記録媒体 |
JP7178422B2 (ja) | 2019-07-23 | 2022-11-25 | ネットイーズ (ハンチョウ) ネットワーク カンパニー リミテッド | 情報処理方法、装置、プログラム、及び記録媒体 |
US11998839B2 (en) | 2019-07-23 | 2024-06-04 | Netease (Hangzhou) Network Co., Ltd. | Information processing method, apparatus and computer storage medium |
CN111084990A (zh) * | 2019-12-18 | 2020-05-01 | 上海米哈游天命科技有限公司 | 在线检测作弊方法、装置、设备和存储介质 |
CN112929679A (zh) * | 2021-01-18 | 2021-06-08 | 广州虎牙科技有限公司 | 直播客户端的合法性检测、外挂行为的识别方法和装置 |
CN112929679B (zh) * | 2021-01-18 | 2024-03-01 | 广州虎牙科技有限公司 | 直播客户端的合法性检测、外挂行为的识别方法和装置 |
CN113181637A (zh) * | 2021-05-10 | 2021-07-30 | 上海幻电信息科技有限公司 | 游戏回放方法和系统 |
CN113181637B (zh) * | 2021-05-10 | 2024-04-16 | 上海幻电信息科技有限公司 | 游戏回放方法和系统 |
Also Published As
Publication number | Publication date |
---|---|
CN100583736C (zh) | 2010-01-20 |
WO2007006192A1 (fr) | 2007-01-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN1893347A (zh) | 一种检测网络游戏作弊的方法 | |
JP4708688B2 (ja) | コンテンツに対するアクセスを管理する方法及びシステム | |
US8167722B2 (en) | Distributed processing system and method | |
US9455844B2 (en) | Distributed processing system and method | |
US10097530B2 (en) | Security authentication method and bidirectional forwarding detection BFD device | |
EP3084674B1 (en) | Techniques for integrated endpoint and network detection and eradication of attacks | |
US8819803B1 (en) | Validating association of client devices with authenticated clients | |
US10567427B2 (en) | Unobtrusive and dynamic DDoS mitigation | |
WO2019111065A1 (en) | End-to-end communication security | |
US20080162934A1 (en) | Secure transmission system | |
CN101286995B (zh) | 一种远程控制方法和远程控制系统 | |
US11030284B2 (en) | Smart gamepad | |
WO2008121480A1 (en) | Online gaming authentication | |
CN106549925A (zh) | 防止跨站点请求伪造的方法、装置及系统 | |
TWI520002B (zh) | Protection Method and System of Cloud Virtual Network Security | |
CN105871915A (zh) | 软件的网络认证绑定方法和系统 | |
CN103384249A (zh) | 网络接入认证方法、装置及系统、认证服务器 | |
CN111585976B (zh) | 通信方法、装置、存储介质和电子设备 | |
CN111209544B (zh) | Web应用安全保护方法、装置、电子设备及存储介质 | |
CN112751807B (zh) | 安全通信方法、装置、系统和存储介质 | |
CN1809058A (zh) | 通过装置卸载来减轻主机负载的系统及其方法 | |
TWI831477B (zh) | 一種虛擬機主控台管理系統、方法及其電腦可讀媒介 | |
CN201294548Y (zh) | 一种信息安全设备 | |
CN117859294A (zh) | 用于防止恶意网络流量的方法和装置 | |
WO2009107120A1 (en) | Secure transmission system |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
C56 | Change in the name or address of the patentee | ||
CP02 | Change in the address of a patent holder |
Address after: 101117, room 264, unit 3, rose garden, Wuyi garden, Beijing, Tongzhou District, 806 Patentee after: Wang Rong Address before: 100085. 5, unit 1, Qinghe north sand factory area, Beijing, Haidian District 601 Patentee before: Wang Rong |
|
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20100120 Termination date: 20190216 |
|
CF01 | Termination of patent right due to non-payment of annual fee |