首页> 中国专利> 一种可反外挂的网络游戏系统及网络游戏系统反外挂的方法

一种可反外挂的网络游戏系统及网络游戏系统反外挂的方法

摘要

本发明提供一种可反外挂的网络游戏系统及网络游戏系统反外挂的方法,对游戏客户端的完整性、正确性做出准确地判断,从而使得脱机外挂以及大部分辅助性外挂无可乘之机。所述可反外挂的网络游戏系统,包括服务器和多个客户端,各客户端包括有客户端反外挂系统,包括有:客户端特征码扫描模块、客户端扫描控制模块,所述客户端反外挂系统可对游戏客户端进行扫描并获得动态特征码;服务器包括有服务端反外挂系统,包括有:服务端特征码扫描模块、服务端特征码请求模块、服务端特征码验证模块、以及作为整个流程总控制中心的服务端特征码扫描事件控制模块;服务端反外挂系统可生成正确特征码,并与客户端反外挂系统反馈的动态特征码进行比较验证。

著录项

  • 公开/公告号CN101105825A

    专利类型发明专利

  • 公开/公告日2008-01-16

    原文格式PDF

  • 申请/专利号CN200610036452.0

  • 发明设计人 赖立高;陈飞舟;张帆;

    申请日2006-07-12

  • 分类号G06F21/00(20060101);G06F19/00(20060101);

  • 代理机构44224 广州华进联合专利商标代理有限公司;

  • 代理人李双皓

  • 地址 519015 广东省珠海市珠海吉大景山路莲山巷8号金山电脑大厦

  • 入库时间 2023-12-17 19:37:05

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2010-09-22

    专利权人的姓名或者名称、地址的变更 IPC(主分类):G06F21/00 变更前: 变更后: 变更前: 变更后: 申请日:20060712

    专利权人的姓名或者名称、地址的变更

  • 2009-07-08

    授权

    授权

  • 2008-03-05

    实质审查的生效

    实质审查的生效

  • 2008-01-16

    公开

    公开

说明书

技术领域

本发明涉及一种网络游戏系统的保护措施,尤其涉及一种网络游戏反外挂的系统和方法,利用游戏客户端程序动态特征码的方法来进行外挂识别。

背景技术

网络游戏构筑特定的游戏环境和规则,依托网络、提供多人同时参与的游戏环境和平台。其用户价值在于通过人与人之间的互动、对抗,达到交流、娱乐和休闲的目的。其核心特点在于实时在线、互动娱乐。在这里,网络特指互联网。由信息产业部、新闻出版署等机构发布的《2004年度中国游戏产业年报》显示,中国网络游戏市场规模和增长速度为全球瞩目,已成为中国出版业和信息产业新的增长点。同时,中国网络游戏行业的厂商数量、产品质量都呈现了上升趋势,其产业的发展也带动了通信、IT制造等行业的发展。目前,中国网络游戏厂商就达300余家。

艾瑞统计数据显示,2004年中国网络游戏用户达到1976万,即有19%的中国网民为网络游戏用户,预测到2007年,中国网络游戏用户将达到3731万,占网民比例的18%。随着网络游戏产业的快速发展,网络游戏用户中付费用户的比例和数量将有所增长。2002年,国内收费网络游戏用户数为350万,到了2003年,收费用户数增长了一倍,达到710万。2004年,收费网络游戏用户为1130万,占网络游戏用户的57%。预计到2007年,中国收费网络游戏用户将达到2255万,占网络游戏总用户数的60%。收费网络游戏用户的增长,将直接促进网络游戏行业市场规模的增长。来自信息产业部的相关行业报告显示,2004年中国网络游戏市场价值达24.7亿元人民币,比上年增长47.9%。预计2009年中国网络游戏出版市场销售收入将达到109.6亿元。

网络游戏在飞速发展的同时,也面临着严重的问题。相关报告显示,目前网络游戏的安全隐患主要包括外挂、封包、虚拟物品复制、入侵服务器、窃取数据库资料、木马及其他。在现存各种安全隐患中,外挂占据比例最大,其占据所有安全隐患的98%。外挂已经成了网络游戏的杀手,极大的威胁着网络游戏的发展。

外挂的危害:

1.破坏游戏平衡。借助外挂,部分使用者可以在违背游戏规则的情况下快速升级、快速积累财富、获得超常的战斗能力等等。游戏失去了平衡,就会使得很多没有使用外挂的玩家对游戏失去兴趣,进而离开游戏。有的玩家则在没有游戏平衡的前提下选择了一起使用外挂,从而形成了一个恶性循环。

2.给游戏服务器带来额外负担。部分外挂功能可以替代玩家进行极其快速的游戏操作,而每项这里面的操作一般都会被发送到游戏服务端进行相应反处理和反馈。过快的操作也就意味着服务端要处理超出预想很多倍的工作,这会直接的降低服务器的运行效率,从而使得所有玩家的游戏质量受到影响。

3.滋长了木马传播的可能。外挂是游戏木马的主要携带方式,99%的网络游戏盗号木马是绑定在其相应的网络游戏外挂上散播出去的。而木马可以盗取玩家的游戏账号、虚拟物品,直接的损害了玩家的利益、阻止了玩家正常游戏,迫使玩家在失望中放弃游戏。

外挂的主要形式有两种,一种是辅助外挂,一种是脱机外挂:

1.辅助外挂。辅助外挂总的来讲是在游戏者使用正常游戏客户端进入游戏的同时,针对正常的客户端进行某些协助性的操作、篡改游戏逻辑、修改游戏网络封包等等的一种工具。辅助外挂还可以细分为很多种类,但是往往一款成熟的辅助外挂会集各种功能于一身。辅助外挂是玩家进行亲身的游戏体验时经常使用的一种外挂类型。

2.脱机外挂。脱机外挂基本上可以脱离官方提供游戏客户端而独立运行。游戏时由外挂直接登陆游戏服务器模拟官方游戏客户端与服务器进行交互。这种外挂没有什么游戏性可言,但是它占用资源少、自动化程度高,往往可以完全替代玩家自动地进行所需的全部游戏操作。这就像是一群(并不只是一个)替代玩家进行游戏的必要劳动的机器人。玩家可以因此获得暂时的满足,却丧失了游戏体验的乐趣。严重时往往会导致大部分游戏世界被机器人占据,使得游戏世界变得冷清枯燥,极大的降低了玩家的游戏体验。

当前已知的技术方面的反外挂方式:

面对着外挂泛滥严重威胁网络游戏发展的局面,很多反外挂的方法出现了。从反外挂的技术方面讲,常见的反外挂的方式大概有以下几种。

1、网络传输数据加密。这几乎是现行各种网络游戏所必备的一种基本保护措施。它的防范范围是脱机外挂和修改游戏封包的辅助外挂。但是鉴于网络游戏对游戏流畅性的要求,此类加密不能采用具有很高安全性的复杂加密方法。加上网络游戏的客户端存在被反编译的可能,这种加密方法实际上只能起到使外挂的出现推后很短的一段时间的作用。

2、游戏逻辑复杂化。这类办法主要是针对脱机外挂以及部分篡改游戏逻辑的辅助外挂。将一些游戏逻辑在基本不改变实际操作的前提下从代码上使部分逻辑、数据难于分析和理解,甚至在游戏逻辑中添加各种信息、密码的校验,使得游戏的逻辑部分难以被仿照或修改。此种方法的缺点是实现非常麻烦,而且能复杂化的程度非常有限。需要较大的人力投入,并为以后的维护、开发带来了很多隐患。

3、玩家人工认证。这主要是针对脱机外挂和有全自练级功能的辅助外挂。典型的方式就是在游戏时随机弹出难以用程序自动回答的问题,要求玩家在限定时间内给出正确的回答。缺点是,这种手段存在着少量的误判可能,玩家有可能会一时疏忽给出了错误的答案;同时这种方法也会影响玩家的正常游戏,在一定程度上降低了游戏性。

4、破坏、阻止外挂程序。这只能针对一些已知的辅助性外挂,或者有明显特征的外挂程序。游戏运行时可以自动寻找并破坏、阻止这类的外挂。弊端是:针对范围很小,有可能外挂更新一次就要重新分析、制作并更新官方游戏客户端以防止新的外挂;同时,由于破坏操作的复杂性,强行去除外挂后游戏的稳定性也会有很多的潜在危险。

5、异常逻辑检测。这只能防范破坏了游戏规则的外挂类型。服务端对一些已知的逻辑上的漏洞加以检查,发现后加以惩罚或者封杀游戏角色、账号。这种方法的缺点是针对范围很小,而且有很高的误判几率。玩家在正常地进行游戏时,很有可能会由于种种极端情况、网络延迟等出现错误的游戏逻辑,从而被误判为外挂使用者。

发明内容

为了克服现有的网络游戏系统的不足,本发明的目的在于:提供一种可反外挂的网络游戏系统及网络游戏系统反外挂的方法,对游戏客户端进行扫描并获得特征,可以对游戏客户端的完整性、正确性做出准确地判断,从而使得脱机外挂以及大部分辅助性外挂无可乘之机。

本发明解决其技术问题所采用的技术方案是:

一种可反外挂的网络游戏系统,包括服务器和多个客户端,所述服务器和各所述客户端之间通过通信网络进行数据交互,各所述客户端能够被玩家操控;各所述客户端包括有相互连接的输入设备、显示设备以及电脑主机;所述服务器包括有单个或多个CPU以及内存设备,其中:

各所述客户端包括有客户端反外挂系统,所述客户端反外挂系统包括有:客户端特征码扫描模块、客户端扫描控制模块,所述客户端反外挂系统可对游戏客户端进行扫描并获得动态特征码;

所述服务器包括有服务端反外挂系统,所述服务端反外挂系统包括有:服务端特征码扫描模块、服务端特征码请求模块、服务端特征码验证模块、以及作为整个流程总控制中心的服务端特征码扫描事件控制模块;所述服务端反外挂系统可生成正确特征码,并与所述客户端反外挂系统反馈的动态特征码进行比较验证。

所述玩家游戏中使用的输入设备可以是键盘或者鼠标。

一种网络游戏系统反外挂的方法,其中,整个流程的总控制中心为服务端特征码扫描事件控制模块,所述服务端特征码扫描事件控制模块触发所述服务端特征码请求模块,进而激活所述服务端特征码验证模块以及客户端特征码扫描控制模块,当客户端将扫描特征码返回给服务端,或者返回超时时,所述服务端特征码验证模块将会判断验证的有效性并经结果发送至所述特征码扫描事件控制模块,完成一个循环。

本发明的有益效果是:

与当前常见的多种反外挂方式相比,本发明具有以下一些特点:

针对的外挂类型比较广。全部的脱机外挂和大多数的辅助外挂都会替换或者修改部分客户端程序,而本发明对客户端程序的任何改动都适用。

准确性高。客户端几乎不存在自行修改自身代码的可能,所以客户端程序有任何的变化,都应源自于外挂所为。加上该方法可以随时发送请求,即可以对可疑客户端进行更多次的验证请求,所以误判为外挂的概率是非常小的。

运行稳定。由于该方法不直接影响游戏逻辑,不直接干预客户端以及外挂的运行,所以该方法不会对游戏运行的稳定性造成威胁。

开发成本低。该方法只需要一次性的开发来完成,游戏的升级、修正只要服务端能与客户端保持一致的版本就不会影响该方法的运行。

游戏体验没有影响。该方法在客户端是在后台操作的(可以多线程),所以即使是用了较复杂算法、有较大的计算量,未使用外挂的玩家也不会有明显的察觉。

安全性比较好。在假定生成特征码的算法未被完全破解的前提下,该方法由于扫描源数据量大(整个游戏客户端)、选取部分随机,外挂不可能用穷举的办法获得所有特征码。另外,生成特征值时可以联合运算一些游戏中的数据(例如游戏账号、游戏角色名等),这样就可以避免外挂通过另外一个客户端帮助计算特征值。

保证客户端完整性,保护其它可能存在的反外挂方式。该方法是基于保证客户端运行程序完整这一主旨的。而保证了客户端的完整性,就可以保证客户端的各种功能以及其他反外挂功能不会被破坏。也就是说,在使用了该方法的基础上,如果还并存有其他反外挂方法,该方法至少可以保证其他的反外挂功能可以正常启用。

扩展性强:

a)该方法在扫描时扫描的部分是由服务端随机指定的。服务端可以指定客户端程序中的任何一段范围内,甚至可以指定对一些不易变的游戏运行中的数据进行扫描。不同的范围选择方法可以达到对很多不同类型的外挂的防范。

b)生成特征码的算法可以很随意。特征值计算可以在后台进行,不用担心算法效率对游戏产生影响。矣可以结合很多其他游戏信息进行联合运算,多种算法都可以使用或联合在一起使用,已达到提高安全性的目的。

c)请求扫描的时机可以自由把握。服务端可以根据各种情况制定合理的触发验证请求的时机。

附图说明

图1是本发明一种可反外挂的网络游戏系统的服务器和客户端的原理示意图。

图2是本发明一种网络游戏系统反外挂的方法的工作流程示意图。

具体实施方式

如图1所示,一种可反外挂的网络游戏系统,包括服务器和多个客户端,所述服务器和各所述客户端之间通过通信网络进行数据交互,各所述客户端能够被玩家操控;各所述客户端包括有相互连接的输入设备、显示设备以及电脑主机;所述服务器包括有单个或多个CPU以及内存设备,其中:

各所述客户端包括有客户端反外挂系统,所述客户端反外挂系统包括有:客户端特征码扫描模块、客户端扫描控制模块,所述客户端反外挂系统可对游戏客户端进行扫描并获得动态特征码;

所述服务器包括有服务端反外挂系统,所述服务端反外挂系统包括有:服务端特征码扫描模块、服务端特征码请求模块、服务端特征码验证模块、以及作为整个流程总控制中心的服务端特征码扫描事件控制模块;所述服务端反外挂系统可生成正确特征码,并与所述客户端反外挂系统反馈的动态特征码进行比较验证。

所述玩家游戏中使用的输入设备可以是键盘或者鼠标。

所述服务端反外挂系统中:

所述服务端特征码扫描模块:负责根据扫描请求对一个虚拟的客户端的某一部分数据进行扫描;扫描的同时,将根据该部分数据以及一些游戏、账号等信息生成正确特征码;

所述服务端特征码请求模块:用于随机的选定一部分客户端数据,并对指定或全部客户端发出扫描请求,同时激活所述服务端特征码验证模块;

所述服务端特征码验证模块:用于根据所述服务端特征码请求模块选定的数据部分,调用所述服务端特征码扫描模块,记录返回值;将动态特征码和正确特征码进行比较,并将比较结果通知给所述服务端特征码扫描事件控制模块;

所述服务端特征码验证模块包括有记时模块;

所述服务端特征码扫描事件控制模块用于根据时间、上次验证情况等多方面的因素适时触发所述服务端特征码请求模块,以验证部分或全部客户端,同时收集各个客户端的验证情况,适时对有嫌疑的客户端做出适当处理。

所述客户端反外挂系统中:

所述客户端特征码扫描模块:负责根据扫描请求对客户端正在运行中的游戏程序的某一部分内存值进行扫描;扫描的同时,将根据该部分内存值以及一些游戏、账号等信息生成动态特征码;

所述客户端扫描控制模块:负责在接收到服务端对某一部分特征码请求的时候调用所述客户端特征码扫描模块,并将返回的特征码发送给服务端。

本发明所述的一种网络游戏系统反外挂的方法,其中,整个流程的总控制中心为服务端特征码扫描事件控制模块,所述服务端特征码扫描事件控制模块触发所述服务端特征码请求模块,进而激活所述服务端特征码验证模块以及客户端特征码扫描控制模块,当客户端将扫描特征码返回给服务端,或者返回超时时,所述服务端特征码验证模块将会判断验证的有效性并经结果发送至所述特征码扫描事件控制模块,完成一个循环。

如图2所示,一种网络游戏系统反外挂的方法,包括有如下步骤:

步骤一:所述服务端特征码扫描事件控制模块根据时间、上次验证情况等多方面的因素适时触发服务端特征码请求模块,以验证部分或全部客户端;

步骤二:所述服务端特征码请求模块随机的选定一部分客户端数据,并对指定或全部客户端发出扫描请求,同时激活所述服务端特征码验证模块;

步骤三:所述服务端特征码验证模块根据所述服务端特征码请求模块选定的数据部分,调用所述服务端特征码扫描模块,记录返回值;

步骤四:所述客户端扫描控制模块在接收到服务端对某一部分特征码请求的时候调用所述客户端特征码扫描模块;

步骤五:所述客户端特征码扫描模块根据扫描请求对客户端正在运行中的游戏程序的某一部分内存值进行扫描;

步骤六:所述客户端特征码扫描模块扫描的同时,将根据该部分内存值以及一些游戏、账号等信息生成动态特征码,返回该特征码;

步骤七:所述客户端扫描控制模块将返回的特征码发送给服务端;

步骤八:所述服务端特征码扫描模块:负责根据扫描请求对一个虚拟的客户端的某一部分数据进行扫描,服务端保留多个版本的客户端数据,以保证旧版本客户端正常验证;

步骤九:所述服务端特征码扫描模块扫描的同时,将根据该部分数据以及一些游戏、账号等信息生成正确特征码,返回该特征码至所述服务端特征码验证模块;

步骤十:所述服务端特征码验证模块在一定时间内等待客户端返回特征值,进行比较:如果比较失败,或未在指定时间内返回特征值,则通知“特定客户端验证失败”给所述服务端特征码扫描事件控制模块;验证成功则通知“特定客户端验证成功”给所述服务端特征码扫描事件控制模块;

步骤十一:所述服务端特征码扫描事件控制模块收集各个客户端的验证情况,适时对有嫌疑的客户端做出适当处理措施。

上述步骤十中,由所述服务端特征码验证模块的记时模块进行记时。

上述步骤十一中,所述服务端特征码扫描事件控制模块对有嫌疑的客户端做出适当的处理措施是“惩罚”或记录系统日志等。

上述所列具体实现方式为非限制性的,对本领域的技术人员来说,在不偏离本发明范围内,进行的各种改进和变化,均属于本发明的保护范围。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号