• 四川郎酒股份有限公司获第十二届人民企业社会责任奖年度环保奖 2019-05-13
  • 银保监会新规剑指大企业多头融资和过度融资 2019-05-12
  • 韩国再提4国联合申办世界杯 中国网友无视:我们自己来 2019-05-11
  • 中国人为什么一定要买房? 2019-05-11
  • 十九大精神进校园:风正扬帆当有为 勇做时代弄潮儿 2019-05-10
  • 粽叶飘香幸福邻里——廊坊市举办“我们的节日·端午”主题活动 2019-05-09
  • 太原设禁鸣路段 设备在测试中 2019-05-09
  • 拜耳医药保健有限公司获第十二届人民企业社会责任奖年度企业奖 2019-05-08
  • “港独”没出路!“梁天琦们”该醒醒了 2019-05-07
  • 陈卫平:中国文化内涵包含三方面 文化复兴表现在其中 2019-05-06
  • 人民日报客户端辟谣:“合成军装照”产品请放心使用 2019-05-05
  • 【十九大·理论新视野】为什么要“建设现代化经济体系”?   2019-05-04
  • 聚焦2017年乌鲁木齐市老城区改造提升工程 2019-05-04
  • 【专家谈】上合组织——构建区域命运共同体的有力实践者 2019-05-03
  • 【华商侃车NO.192】 亲!楼市火爆,别忘了买车位啊! 2019-05-03
    • / 18
    • 下载费用:30 金币  

    重庆时时彩群发: 识别及辅助识别客户端代码被篡改的方法及装置.pdf

    关 键 词:
    识别 辅助 客户端 代码 篡改 方法 装置
      专利查询网所有资源均是用户自行上传分享,仅供网友学习交流,未经上传用户书面授权,请勿作他用。
    摘要
    申请专利号:

    CN201510662432.3

    申请日:

    2015.10.14

    公开号:

    CN106582028A

    公开日:

    2017.04.26

    当前法律状态:

    实审

    有效性:

    审中

    法律详情: 实质审查的生效IPC(主分类):A63F 13/75申请日:20151014|||公开
    IPC分类号: A63F13/75(2014.01)I; A63F13/77(2014.01)I 主分类号: A63F13/75
    申请人: 阿里巴巴集团控股有限公司
    发明人: 谢聪; 王劲
    地址: 英属开曼群岛大开曼资本大厦一座四层847号邮箱
    优先权:
    专利代理机构: 北京汉昊知识产权代理事务所(普通合伙) 11370 代理人: 朱海波
    PDF完整版下载: PDF下载
    法律状态
    申请(专利)号:

    CN201510662432.3

    授权公告号:

    |||

    法律状态公告日:

    2017.05.24|||2017.04.26

    法律状态类型:

    实质审查的生效|||公开

    摘要

    本申请提供了识别及辅助识别客户端代码被篡改的方法及装置,所述客户端代码为基于HTML5技术的客户端代码,其中的识别客户端代码被篡改的方法包括:接收客户端发送的混合对应关系表及用户操作所述客户端代码的实际操作结果,所述混合对应关系表中包括:用户针对所述客户端代码的操作命令及接收到所述操作命令时所述客户端代码所运行到的对应帧号;通过重放所述客户端代码来确定用户针对所述客户端代码的操作命令在所述对应帧号执行得到的重放操作结果;比对所述实际操作结果与所述重放操作结果是否不一致;若不一致,则确定识别出所述客户端代码被篡改。本申请实现了在保证用户体验基础上提高识别客户端代码是否被篡改的准确率。

    权利要求书

    1.一种辅助识别客户端代码被篡改的方法,所述客户端代码为基于
    HTML5技术的客户端代码,其特征在于,所述方法包括:
    接收在基于HTML5技术的客户端代码运行过程中用户针对所述客
    户端代码的操作命令;
    记录所述操作命令及接收到所述操作命令时所述客户端代码所运行
    到的对应帧号,得到有效操作对应关系表;
    在所述客户端代码运行结束得到用户操作所述客户端代码的实际操
    作结果情况下,发送包含所述有效操作对应关系表的混合对应关系表及
    所述实际操作结果给服务器,以辅助所述服务器通过重放客户端代码并
    将记录的操作命令在对应帧号执行来得到重放操作结果,并基于重放操
    作结果与实际操作结果的比较来识别所述客户端代码是否被篡改。
    2.如权利要求1所述的方法,其特征在于,记录所述操作命令包括:
    为所述操作命令添加有效操作标识。
    3.如权利要求1所述的方法,其特征在于,所述方法还包括:
    在所述有效操作对应关系表中添加无效操作命令及所述无效操作命
    令的对应帧号,得到所述混合对应关系表。
    4.如权利要求3所述的方法,其特征在于,在所述有效操作对应关
    系表中添加无效操作命令包括:
    为添加的所述无效操作命令添加无效操作标识。
    5.一种识别客户端代码被篡改的方法,所述客户端代码为基于
    HTML5技术的客户端代码,其特征在于,所述方法包括:
    接收客户端发送的混合对应关系表及用户操作所述客户端代码的实际
    操作结果,所述混合对应关系表中包括:用户针对所述客户端代码的操作命
    令及接收到所述操作命令时所述客户端代码所运行到的对应帧号;
    通过重放所述客户端代码来确定用户针对所述客户端代码的操作命
    令在所述对应帧号执行得到的重放操作结果;
    比对所述实际操作结果与所述重放操作结果是否不一致;
    若不一致,则确定识别出所述客户端代码被篡改。
    6.如权利要求5所述的方法,其特征在于,重放所述客户端代码为:
    以客户端代码的帧数计时,通过增加单位时间的播放帧数重放所述客户
    端代码。
    7.如权利要求5所述的方法,其特征在于,重放的所述客户端代码为:
    本地保存的、与所述客户端运行的版本相同的客户端代码。
    8.如权利要求5所述的方法,其特征在于,重放所述客户端代码前所
    述方法还包括:
    判断所述混合对应关系表中是否包括无效操作命令及所述无效操作命
    令的对应帧号;
    若所述混合对应关系表中不包括所述无效操作命令及所述无效操作命
    令的对应帧号,则确定识别出所述客户端代码被篡改。
    9.如权利要求8所述的方法,其特征在于,若所述混合对应关系表中
    包括所述无效操作命令及所述无效操作命令的对应帧号,所述方法还包括:
    重放所述客户端代码前过滤掉所述混合对应关系表中的无效操作命
    令及所述无效操作命令的对应帧号。
    10.如权利要求5所述的方法,其特征在于,确定识别出所述客户端代
    码被篡改后,所述方法还包括:
    提供识别出所述客户端代码被篡改的提示给所述客户端。
    11.一种辅助识别客户端代码被篡改的装置,所述客户端代码为基于
    HTML5技术的客户端代码,其特征在于,所述装置包括:
    接收单元,用于接收在基于HTML5技术的客户端代码运行过程中用
    户针对所述客户端代码的操作命令;
    记录单元,用于记录所述操作命令及接收到所述操作命令时所述客
    户端代码所运行到的对应帧号,得到有效操作对应关系表;
    发送单元,用于在所述客户端代码运行结束得到用户操作所述客户
    端代码的实际操作结果情况下,发送包含所述有效操作对应关系表的混
    合对应关系表及所述实际操作结果给服务器,以辅助所述服务器通过重
    放客户端代码并将记录的操作命令在对应帧号执行来得到重放操作结
    果,并基于重放操作结果与实际操作结果的比较来识别所述客户端代码
    是否被篡改。
    12.如权利要求11所述的装置,其特征在于,所述记录单元被配置
    为:
    为所述操作命令添加有效操作标识。
    13.如权利要求11所述的装置,其特征在于,所述装置还包括:
    无效操作添加单元,用于在所述有效操作对应关系表中添加无效操
    作命令及所述无效操作命令的对应帧号,得到所述混合对应关系表。
    14.如权利要求13所述的装置,其特征在于,所述无效操作添加单
    元被配置为:
    为添加的所述无效操作命令添加无效操作标识。
    15.一种识别客户端代码被篡改的装置,所述客户端代码为基于
    HTML5技术的客户端代码,其特征在于,所述装置包括:
    接收单元,用于接收客户端发送的混合对应关系表及用户操作所述客户
    端代码的实际操作结果,所述混合对应关系表中包括:用户针对所述客户端
    代码的操作命令及接收到所述操作命令时所述客户端代码所运行到的对应
    帧号;
    重放单元,用于通过重放所述客户端代码来确定用户针对所述客户
    端代码的操作命令在所述对应帧号执行得到的重放操作结果;
    比对单元,用于比对所述实际操作结果与所述重放操作结果是否不一
    致;
    识别单元,用于在所述比对单元比对所述实际操作结果与所述重放操作
    结果不一致情况下,确定识别出所述客户端代码被篡改。
    16.如权利要求15所述的装置,其特征在于,所述重放单元被配置为:
    以客户端代码的帧号计时,通过增加单位时间的播放帧号重放所述客户
    端代码。
    17.如权利要求15所述的装置,其特征在于,所述重放单元重放的所
    述客户端代码为:本地保存的、与所述客户端运行的版本相同的客户端代码。
    18.如权利要求15所述的装置,其特征在于,所述装置还包括:
    判断单元,用于判断所述混合对应关系表中是否包括无效操作命令及与
    所述无效操作命令的对应帧号;
    所述识别单元被配置为:
    若判断单元判断所述混合对应关系表中不包括所述无效操作命令及所
    述操作命令的对应帧号,则确定所述客户端代码被篡改。
    19.如权利要求18所述的装置,其特征在于,所述装置还包括:
    过滤单元,用于在所述判断单元判断所述混合对应关系表中包括所述无
    效操作命令及所述操作命令的对应帧号情况下,过滤掉所述无效操作命令
    及与所述操作命令的对应帧号。
    20.如权利要求15所述的装置,其特征在于,所述装置还包括:
    提供单元,用于提供识别出所述客户端代码被篡改的提示给所述客户
    端。

    说明书

    识别及辅助识别客户端代码被篡改的方法及装置

    技术领域

    本申请涉及计算机领域,尤其涉及一种识别及辅助识别客户端代码被
    篡改的方法及装置。

    背景技术

    目前H5(HTML5)是业界比较流行的跨平台解决方案,使用H5技
    术的游戏深受用户喜爱。但是使用H5技术的游戏的安全性一直困扰着业
    界。恶意用户可以轻松地在本地篡改客户端代码,改变游戏逻辑,从而
    上报虚假数据到后端服务器,破坏游戏的公平性,并攫取利益。

    目前大多采用如下方式来识别此类游戏逻辑是否被恶意用户篡改或
    破坏:

    在后端服务器预先设定一个用户操作结果的极限数据,当用户的实
    际操作结果超过该极限数据,则认为用户操作结果不合理,并认定该游
    戏逻辑已在客户端被篡改。

    上述采用极限数据的方式无法保证游戏的公平性,且大多数情况下,
    恶意用户篡改后的操作结果仍在极限数据范围内,此种情况下无法识别
    出该篡改行为。

    因此,已有的识别采用H5技术的游戏是否被篡改的方案不但无法保
    证游戏的公平性,而且无法有效识别出游戏逻辑是否被篡改。

    发明内容

    本申请解决的技术问题之一是提供一种识别及辅助识别客户端代码
    被篡改的方法及装置,有效提高识别准确性。

    根据本申请一方面的一个实施例,提供了一种辅助识别客户端代码
    被篡改的方法,所述客户端代码为基于HTML5技术的客户端代码,所述
    方法包括:

    接收在基于HTML5技术的客户端代码运行过程中用户针对所述客
    户端代码的操作命令;

    记录所述操作命令及接收到所述操作命令时所述客户端代码所运行
    到的对应帧号,得到有效操作对应关系表;

    在所述客户端代码运行结束得到用户操作所述客户端代码的实际操
    作结果情况下,发送包含所述有效操作对应关系表的混合对应关系表及
    所述实际操作结果给服务器,以辅助所述服务器通过重放客户端代码并
    将记录的操作命令在对应帧号执行来得到重放操作结果,并基于重放操
    作结果与实际操作结果的比较来识别所述客户端代码是否被篡改。

    根据本申请另一方面的一个实施例,提供了一种识别客户端代码被
    篡改的方法,所述客户端代码为基于HTML5技术的客户端代码,所述方法
    包括:

    接收客户端发送的混合对应关系表及用户操作所述客户端代码的实际
    操作结果,所述混合对应关系表中包括:用户针对所述客户端代码的操作命
    令及接收到所述操作命令时所述客户端代码所运行到的对应帧号;

    通过重放所述客户端代码来确定用户针对所述客户端代码的操作命令
    在所述对应帧号执行得到的重放操作结果;

    比对所述实际操作结果与所述重放操作结果是否不一致;

    若不一致,则确定识别出所述客户端代码被篡改。

    根据本申请又一方面的一个实施例,提供了一种辅助识别客户端代
    码被篡改的装置,所述客户端代码为基于HTML5技术的客户端代码,所
    述装置包括:

    接收单元,用于接收在基于HTML5技术的客户端代码运行过程中用
    户针对所述客户端代码的操作命令;

    记录单元,用于记录所述操作命令及接收到所述操作命令时所述客
    户端代码所运行到的对应帧号,得到有效操作对应关系表;

    发送单元,用于在所述客户端代码运行结束得到用户操作所述客户
    端代码的实际操作结果情况下,发送包含所述有效操作对应关系表的混
    合对应关系表及所述实际操作结果给服务器,以辅助所述服务器通过重
    放客户端代码并将记录的操作命令在对应帧号执行来得到重放操作结
    果,并基于重放操作结果与实际操作结果的比较来识别所述客户端代码
    是否被篡改。

    根据本申请再一方面的一个实施例,提供了一种识别客户端代码被
    篡改的装置,所述客户端代码为基于HTML5技术的客户端代码,包括:

    接收单元,用于接收客户端发送的混合对应关系表及用户操作所述
    客户端代码的实际操作结果,所述混合对应关系表中包括:用户针对所
    述客户端代码的操作命令及接收到所述操作命令时所述客户端代码所运
    行到的对应帧号;

    重放单元,用于通过重放所述客户端代码来确定用户针对所述客户
    端代码的操作命令在所述对应帧号执行得到的重放操作结果

    比对单元,用于比对所述实际操作结果与所述重放操作结果是否不
    一致;

    识别单元,用于在所述比对单元比对所述实际操作结果与所述重放
    操作结果不一致情况下,确定识别出所述客户端代码被篡改。

    本申请实施例客户端通过记录用户操作命令及所述操作命令的对应
    帧号,并将该记录的操作命令及操作命令的对应帧号连同用户操作客户
    端代码的实际操作结果发送给服务器,实现客户端辅助服务器识别客户
    端代码是否被篡改。服务器通过重放所述客户端代码,来确定重放过程
    中用户的所述操作命令在对应帧号执行的重放操作结果,利用比对实际
    操作结果与重放操作结果是否一致来识别客户端代码是否在客户端被篡
    改??杉?,若客户端代码在客户端被篡改,则服务器重放所述客户端代
    码时得到的重放操作结果必定与所述实际操作结果不一致,通过比对两
    结果即可准确识别出客户端代码是否在客户端被篡改。实现了在不影响
    用户体验的情况下,提高识别客户端代码被篡改的准确率。

    本领域普通技术人员将了解,虽然下面的详细说明将参考图示实施
    例、附图进行,但本申请并不仅限于这些实施例。而是,本申请的范围
    是广泛的,且意在仅通过后附的权利要求限定本申请的范围。

    附图说明

    通过阅读参照以下附图所作的对非限制性实施例所作的详细描述,
    本申请的其它特征、目的和优点将会变得更明显:

    图1是根据本申请一个实施例的辅助识别客户端代码被篡改的方法
    的流程图。

    图2是根据本申请一个实施例的识别客户端代码被篡改的方法的流
    程图。

    图3是根据本申请另一个实施例的识别客户端代码被篡改的方法的
    流程图。

    图4是根据本申请一个实施例的辅助识别客户端代码被篡改的装置
    的结构示意图。

    图5是根据本申请一个实施例的识别客户端代码被篡改的装置的结
    构示意图。

    图6是根据本申请另一个实施例的识别客户端代码被篡改的装置的
    结构示意图。

    本领域普通技术人员将了解,虽然下面的详细说明将参考图示实施
    例、附图进行,但本申请并不仅限于这些实施例。而是,本申请的范围
    是广泛的,且意在仅通过后附的权利要求限定本申请的范围。

    具体实施方式

    在更加详细地讨论示例性实施例之前应当提到的是,一些示例性实
    施例被描述成作为流程图描绘的处理或方法。虽然流程图将各项操作描
    述成顺序的处理,但是其中的许多操作可以被并行地、并发地或者同时
    实施。此外,各项操作的顺序可以被重新安排。当其操作完成时所述处
    理可以被终止,但是还可以具有未包括在附图中的附加步骤。所述处理
    可以对应于方法、函数、规程、子例程、子程序等等。

    所述计算机设备包括用户设备与网络设备。其中,所述用户设备包
    括但不限于电脑、智能手机、PDA等;所述网络设备包括但不限于单个
    网络服务器、多个网络服务器组成的服务器组或基于云计算(Cloud
    Computing)的由大量计算机或网络服务器构成的云,其中,云计算是分
    布式计算的一种,由一群松散耦合的计算机集组成的一个超级虚拟计算
    机。其中,所述计算机设备可单独运行来实现本申请,也可接入网络并
    通过与网络中的其他计算机设备的交互操作来实现本申请。其中,所述
    计算机设备所处的网络包括但不限于互联网、广域网、城域网、局域网、
    VPN网络等。

    需要说明的是,所述用户设备、网络设备和网络等仅为举例,其他
    现有的或今后可能出现的计算机设备或网络如可适用于本申请,也应包
    含在本申请?;し段б阅?,并以引用方式包含于此。

    后面所讨论的方法(其中一些通过流程图示出)可以通过硬件、软
    件、固件、中间件、微代码、硬件描述语言或者其任意组合来实施。当
    用软件、固件、中间件或微代码来实施时,用以实施必要任务的程序代
    码或代码段可以被存储在机器或计算机可读介质(比如存储介质)中。(一
    个或多个)处理器可以实施必要的任务。

    这里所公开的具体结构和功能细节仅仅是代表性的,并且是用于描
    述本申请的示例性实施例的目的。但是本申请可以通过许多替换形式来
    具体实现,并且不应当被解释成仅仅受限于这里所阐述的实施例。

    应当理解的是,虽然在这里可能使用了术语“第一”、“第二”等等
    来描述各个单元,但是这些单元不应当受这些术语限制。使用这些术语
    仅仅是为了将一个单元与另一个单元进行区分。举例来说,在不背离示
    例性实施例的范围的情况下,第一单元可以被称为第二单元,并且类似
    地第二单元可以被称为第一单元。这里所使用的术语“和/或”包括其中
    一个或更多所列出的相关联项目的任意和所有组合。

    应当理解的是,当一个单元被称为“连接”或“耦合”到另一单元
    时,其可以直接连接或耦合到所述另一单元,或者可以存在中间单元。
    与此相对,当一个单元被称为“直接连接”或“直接耦合”到另一单元
    时,则不存在中间单元。应当按照类似的方式来解释被用于描述单元之
    间的关系的其他词语(例如“处于...之间”相比于“直接处于...之间”,“与...
    邻近”相比于“与...直接邻近”等等)。

    这里所使用的术语仅仅是为了描述具体实施例而不意图限制示例性
    实施例。除非上下文明确地另有所指,否则这里所使用的单数形式“一
    个”、“一项”还意图包括复数?;褂Φ崩斫獾氖?,这里所使用的术语“包
    括”和/或“包含”规定所陈述的特征、整数、步骤、操作、单元和/或组
    件的存在,而不排除存在或添加一个或更多其他特征、整数、步骤、操
    作、单元、组件和/或其组合。

    还应当提到的是,在一些替换实现方式中,所提到的功能/动作可以
    按照不同于附图中标示的顺序发生。举例来说,取决于所涉及的功能/动
    作,相继示出的两幅图实际上可以基本上同时执行或者有时可以按照相
    反的顺序来执行。

    本申请实施例提供的识别客户端代码被篡改的方法适用于使用H5
    技术的客户端代码。本实施例中由安装所述客户端代码的客户端将用户
    操作命令及接收到所述操作命令时所述客户端代码所运行到的对应帧号
    以及用户操作所述客户端代码的实际操作结果上报给服务器,实现客户
    端辅助服务器识别客户端代码是否被篡改。服务器通过重放客户端代码
    并将记录的操作命令在对应帧号执行来得到重放操作结果,并基于重放
    操作结果与实际操作结果的比较来识别所述客户端代码是否被篡改。

    下面结合附图对本申请的技术方案作进一步详细描述。

    图1是根据本申请一个实施例的辅助识别客户端代码被篡改的方法
    的流程图,该方法由客户端来完成,主要包括如下步骤S110~S130:

    S110、接收在基于H5技术的客户端代码运行过程中用户针对所述客
    户端代码的操作命令。

    其中,所述的运行过程是指客户端代码进入记录成绩状态,例如,
    针对一款游戏,所述运行过程是指游戏开始后的状态,此状态下用户可
    对该游戏发出操作命令,游戏软件依据用户的操作命令计算用户的成绩,
    用户的成绩也就是用户操作该游戏的结果。

    接收用户针对所述客户端代码的操作命令包括所述客户端代码开始
    运行后,用户针对该客户端代码的所有操作命令。

    S120、记录所述操作命令及接收到所述操作命令时所述客户端代码
    所运行到的对应帧号,得到有效操作对应关系表。

    可以理解的是,在记录用户的所述操作命令前会对接收的该用户的
    操作命令进行识别,包括识别出该操作命令的类型。例如针对一款游戏,
    用户的操作命令的类型包括:上滑、下滑、向左、向右、加速、减速等
    等针对该游戏可执行的所有操作类型。

    另外,针对不同的客户端代码需识别的操作命令内容也会有所不同,
    需识别的操作命令的内容由影响计算该客户端代码成绩的参数相关,也
    就是在计算用户操作该客户端代码的成绩时,若用户操作命令的位置为
    计算成绩时的参数之一,则本实施例需识别并记录用户操作命令的位置;
    若用户操作命令的持续时长为计算成绩时的参数之一,则本申请实施例
    需识别并记录用户操作命令的持续时长。该用户操作命令的持续时长即
    一个命令持续的帧数。也就是,本申请实施例在识别用户操作命令时可
    根据计算客户端代码成绩的参数来决定需要识别的用户操作命令的内
    容,例如,该识别的用户操作命令的内容还可以包括:用户操作命令的
    位置、用户操作命令的持续时长、用户操作命令的加速度等等。

    在识别出该操作命令的类型及其他需识别的内容后记录识别出的内
    容。也就是本申请实施例所述的记录用户的操作命令包括记录识别出的
    该操作命令的类型等各项内容。同时还需记录接收到所述操作命令时所
    述客户端代码所运行到的对应帧号。也就是,记录该操作命令在客户端
    代码运行第几帧时接收到的。本申请实施例可通过有效操作对应关系表
    来保存所记录的用户的所述操作命令及所述操作命令的对应帧号。

    在客户端代码运行的整个过程中记录用户的所有操作命令及操作命
    令的对应帧号,生成有效操作对应关系表,通过该有效操作对应关系表
    服务器可以在重放所述客户端代码时获知用户在哪一帧对客户端代码执
    行了哪个操作命令。

    其中,在记录该用户的操作命令时,可为用户的操作命令添加有效
    操作标识。

    假设用户在客户端代码的第100帧点击了屏幕的某一位置,则将该
    点击操作以可识别格式记录下来,同时记录该点击操作位置信息,如记
    录该位置的坐标值。并记录该点击操作与客户端代码第100帧对应;若
    用户在客户端代码的第23帧向右滑动屏幕,则将该向右滑动操作以可识
    别格式记录下来,并记录该向右滑动操作与第23帧对应。则针对上述记
    录的两个操作命令生成的有效操作对应关系表内容如下:

    操作命令类型
    对应运行帧号
    位置
    标识
    右滑
    23
    -
    有效标识
    点击
    100
    坐标值
    有效标识

    上述步骤S110~S120均是在客户端代码运行过程中执行的,例如,
    针对一款游戏,是在游戏开始后结束前执行的。

    S130、在所述客户端代码运行结束得到用户操作所述客户端代码的
    实际操作结果情况下,发送包含所述有效操作对应关系表的混合对应关
    系表及所述实际操作结果给服务器,以辅助所述服务器通过重放客户端
    代码并将记录的操作命令在对应帧号执行来得到重放操作结果,并基于
    重放操作结果与实际操作结果的比较来识别所述客户端代码是否被篡
    改。

    发送混合对应关系表及所述实际操作结果给服务器的操作是在客户
    端代码运行结束得到用户操作所述客户端代码的实际操作结果(成绩)
    情况下执行??裳〉?,该步骤可在所述实际操作结果未展示在客户端屏
    幕上之前执行。例如,在一轮游戏结束后得到用户的成绩后执行。所述
    操作结果即用户操作所述客户端代码的成绩,例如,用户在一轮游戏中
    所得的分数。

    可知,所述混合对应关系表中包括所述有效操作对应关系表,则通
    过发送所述有效操作对应关系表及实际操作结果给服务器,服务器可以
    依据该有效操作对应关系表以及实际操作结果识别该客户端代码是否被
    篡改,实现了辅助服务器识别客户端代码被篡改的功能。对于服务器的
    识别过程详见下面实施例的描述。

    另外,由于某些情况下恶意用户有可能直接计算出最优操作命令集
    合(能够获得用户满意操作结果的操作集合),使得篡改后的客户端代码
    按照最优操作命令集合运行,从而得到最优操作结果。本申请实施例为
    避免该情况,在所述有效操作对应关系表中添加一些虚拟的无效操作命
    令及该无效操作命令的对应帧号,也就是在有效操作对应关系表中添加
    无效操作命令及无效操作命令的对应帧号,生成混合对应关系表。具体
    添加方法可以为:在所述客户端代码的指定帧号范围内随机加入虚拟的
    任一无效操作命令及无效操作命令的对应帧号。所述指定帧号范围例如
    可以为大于等于第10帧的范围内,当然本申请实施例并不局限于此。无
    效操作命令即并非用户实际发出的操作命令,该无效操作命令的类型可
    以为任一用户操作命令的类型,也可以为用户操作命令的类型之外的类
    型,例如,操作一款游戏的所有操作命令的类型中包括:单击,而不包
    含双击。则该无效操作命令可以为单击也可以为双击。另外,所添加的
    无效操作命令的对应帧号也可以为随机确定的帧号。

    为了将该加入的无效操作命令与接收的用户的操作命令区别开,本
    申请实施例可以为该添加的无效操作命令添加无效操作标识。在该混合
    对应关系表中通过有效操作标识和无效操作标识来识别实际接收的用户
    的操作命令和添加的无效操作命令。假设,添加的无效操作命令为双击,
    该双击操作对应的客户端代码的运行帧号为15,则添加后得到的混合对
    应关系表如下:

    操作命令类型
    对应运行帧号
    位置
    标识
    双击
    15

    无效标识
    右滑
    23
    -
    有效标识
    点击
    100
    坐标值
    有效标识

    本步骤中发送给服务器的用户操作所述客户端代码的实际操作结果
    即为客户端当前运行的客户端代码基于用户的操作命令计算得到的用户
    的实际成绩,该成绩的表现形式例如可以为成功或失败,或具体的分数
    等等。

    通过将上述混合对应关系表以及用户操作所述客户端代码的实际操
    作结果发送给服务器,可以辅助服务器识别所述客户端代码是否被篡改。

    图2为根据本申请一个实施例的识别客户端代码被篡改的方法的流
    程图,该方法由网络侧设备来完成,例如,网络侧服务器。主要包括如
    下步骤S210~S250:

    S210、接收客户端发送的混合对应关系表及用户操作所述客户端代
    码的实际操作结果。

    本申请实施例中所述的混合对应关系表中包括:用户针对所述客户
    端代码的操作命令及接收到所述操作命令时所述客户端代码所运行到的
    对应帧号。

    所述用户操作所述客户端代码的实际操作结果即,用户操作所述客
    户端代码的成绩,例如,用户在一轮游戏中所得的分数。

    S220、通过重放所述客户端代码来确定用户针对所述客户端代码的
    操作命令在所述对应帧号执行得到的重放操作结果。

    其中,由于用户操作所述客户端代码直到客户端代码结束需要一定
    的时间,若服务器按照客户端代码的正常运行方式重放所述客户端代码,
    则需要用户等待与操作客户端代码同样的时间,这样的体验是用户无法
    接受的。本申请实施例为了缩短重放时间,提升用户体验,以时间压缩
    机制来重放所述客户端代码。所述的时间压缩机制即,以客户端代码的
    帧数计时,通过增加单位时间的播放帧数重放所述客户端代码。例如,
    客户端代码正常运行时1秒大概播放60帧,在以时间压缩机制重放所述
    客户端代码时,可加速播放帧,使得1秒播放60000帧,使得客户端代
    码运行速度增加为原速度的上千倍,这样就解决了用户等待网络侧识别
    客户端代码是否被篡改的时间过长的问题。

    需要说明的是,本申请实施例中服务器端重放的客户端代码的版本
    与客户端运行的客户端代码的版本相同,且为服务器端本地保存的客户
    端代码。也就是保证服务器端重放的客户端代码与客户端未篡改前的客
    户端代码完全一致,即服务器端重放的客户端代码为未被篡改的正???br />户端代码。

    重放所述客户端代码的目的在于可以获得所述客户端代码在未被篡
    改情况下用户执行同样的操作所得到的结果。因此,在以时间压缩机制
    重放所述客户端代码过程中,在客户端代码的对应帧号以用户针对所述
    客户端代码的操作命令作为输入,确定重放所述客户端代码过程中所述
    用户操作在对应帧号执行的重放操作结果,所述重放操作结果即为客户
    端代码未被篡改情况下的所述用户操作的正确的操作结果。具体的,获
    取混合对应关系表中的每条有效标识对应的记录,在重放所述客户端代
    码时若当前播放帧号与所述有效标识对应的记录的帧号一致,则将该条
    记录对应的用户操作命令作为当前重放过程当前帧号的输入命令,依照
    此方法重放完成整个客户端代码得到重放操作结果??梢岳斫獾氖?,在
    重放过程中计算用户操作命令得到的重放操作结果的方法同客户端运行
    所述客户端代码时计算用户实际操作结果的方法相同。

    S230、比对所述实际操作结果与所述重放操作结果是否不一致。

    由于重放的所述客户端代码是与客户端的未被篡改的客户端代码完
    全一致的客户端代码,因此,重放过程中得到的重放操作结果为正确的
    操作结果,通过比对该重放操作结果是否与实际操作结果一致即可确定
    客户端的所述客户端代码是否被篡改。

    若不一致,则进入步骤S240,确定识别出所述客户端代码被篡改。
    在识别出客户端代码被篡改后可以提供识别出所述客户端代码被篡改相
    关的提示内容给所述客户端。例如提示客户端代码被篡改,和/或限制客
    户端代码的运行等等。

    若一致,则进入步骤S250,确定所述客户端代码未被篡改。

    本申请实施例通过获取用户操作命令及所述操作命令的对应帧号及
    实际操作结果,并通过重放所述客户端代码来确定在所述对应的所述客
    户端代码的运行帧号执行所述用户针对所述客户端代码的操作命令的重
    放操作结果,利用比对实际操作结果与重放操作结果是否一致来识别客
    户端代码是否被篡改,实现了在不影响用户体验的情况下,提高识别客
    户端代码被篡改的准确率。

    图3为根据本申请另一个实施例的识别客户端代码被篡改的方法的
    流程图,该方法由网络侧设备来完成,例如,网络侧服务器。主要包括
    如下步骤S310~S380:

    S310、接收客户端发送的混合对应关系表及用户操作所述客户端代
    码的实际操作结果。

    本申请实施例的所述混合对应关系表中包括::用户针对所述客户端
    代码的操作命令及接收到所述操作命令时所述客户端代码所运行到的对
    应帧号。

    所述用户操作所述客户端代码的实际操作结果即,用户操作所述客
    户端代码的成绩,例如,用户在一轮游戏中所得的分数。

    需要说明的是,由上面实施例的介绍可知,客户端发送给服务器的
    混合对应关系表中还可能包括无效操作命令及无效操作命令的对应帧
    号。

    S320、判断所述混合对应关系表中是否包括无效操作命令及所述无
    效操作命令的对应帧号。

    由于某些情况下恶意用户有可能直接计算出最优操作命令集合(或
    能够获得用户满意操作结果的操作命令集合),使得篡改后的客户端代码
    按照最优操作集合运行,从而得到最优操作结果。针对此情况,本申请
    实施例在接收的客户端发送的混合对应关系表中包含有添加的无效操作
    命令及所述无效操作命令的对应帧号生成混合对应关系表。

    因此,本步骤通过判断该混合对应关系表中是否包含该无效操作命
    令及与该无效操作命令的对应帧号,即可确定是否存在上述篡改情况。

    由于所述混合对应关系表中记录的无效操作命令及所述无效操作命
    令的对应帧号添加有无效操作标识,因此本步骤可通过查找该混合对应
    关系表中是否存在无效操作标识来判断所述混合对应关系表中是否包括
    无效操作命令及所述无效操作命令的对应帧号。

    若所述混合对应关系表中不包含无效操作命令及所述无效操作命令
    的对应帧号,则进入步骤S330,确定所述客户端代码被篡改。也就是,
    若该混合对应关系表中不包含无效操作命令及所述无效操作命令的对应
    帧号,则确定识别出客户端代码被恶意用户计算出最优操作命令集合并
    篡改。此种情况下可快速识别出客户端代码是否被篡改。

    若所述混合对应关系表中包含无效操作命令及所述无效操作命令的
    对应帧号,则进入步骤S340。

    S340、过滤掉所述混合对应关系表中的无效操作命令及所述无效操
    作命令的对应帧号。

    其中,可通过无效操作标识来识别出所述混合对应关系表中的无效
    操作命令,并将识别出的无效操作命令过滤掉。过滤掉掉无效操作命令
    后的混合对应关系表中仅包含用户针对该客户端代码的操作命令及该操
    作命令对应的客户端代码的运行帧号,也就是过滤后得到有效操作对应
    关系表。后续可依据该有效操作对应关系表通过重放该客户端代码来识
    别客户端代码是否被篡改。即之后执行步骤S350~S380,该S350~S380
    与步骤S220~S250一致,因此此处不再赘述。

    本申请实施例相对上面的实施例通过获取混合对应关系表,识别该
    混合对应关系表中是否包含虚拟的无效操作及无效操作命令的对应帧
    号,可识别出客户端代码是否在客户端被计算出最优操作集合并被篡改。
    因此,本申请实施例可以更快速的识别出客户端代码被恶意用户以最优
    操作集合的方式篡改。

    本申请实施例还提供一种与上述辅助识别客户端代码被篡改的方法
    对应的辅助识别客户端代码被篡改的装置,如图4中所示为所述装置一
    种实施例结构示意图,该装置主要包括:

    接收单元410,用于接收在基于HTML5技术的客户端代码运行过程
    中用户针对所述客户端代码的操作命令;

    记录单元420,用于记录所述操作命令及接收到所述操作命令时所述
    客户端代码所运行到的对应帧号,得到有效操作对应关系表;

    发送单元430,用于在所述客户端代码运行结束得到用户操作所述客
    户端代码的实际操作结果情况下,发送包含所述有效操作对应关系表的
    混合对应关系表及所述实际操作结果给服务器,以辅助所述服务器通过
    重放客户端代码并将记录的操作命令在对应帧号执行来得到重放操作结
    果,并基于重放操作结果与实际操作结果的比较来识别所述客户端代码
    是否被篡改。

    所述记录单元420被配置为:

    为所述操作命令添加有效操作标识。

    所述混合对应关系表中还可能包括:无效操作命令及所述无效操作
    命令的对应帧号,则对应的所述装置还包括:

    无效操作添加单元440(图中未示出),用于在所述有效对应关系表
    中添加的无效操作命令及所述无效操作命令的对应帧号,得到所述混合
    对应关系表。该无效操作加入单元440还被配置为添加的无效操作命令
    添加无效操作标识。

    本申请实施例还提供一种与上述识别客户端代码被篡改的方法对应
    的识别客户端代码被篡改的装置,如图5中所示为所述装置一种实施例
    结构示意图,该装置主要包括:

    接收单元510,用于接收客户端发送的混合对应关系表及用户操作所
    述客户端代码的实际操作结果,所述混合对应关系表中包括:用户针对
    所述客户端代码的操作命令及接收到所述操作命令时所述客户端代码所
    运行到的对应帧号;

    重放单元520,用于通过重放所述客户端代码来确定用户针对所述客
    户端代码的操作命令在所述对应帧号执行得到的重放操作结果;

    比对单元530,用于比对所述实际操作结果与所述重放操作结果是否
    不一致;

    识别单元540,用于在所述比对单元530比对所述实际操作结果与所
    述重放操作结果不一致情况下,确定识别出所述客户端代码被篡改。

    其中,所述重放单元520以时间压缩机制重放所述客户端代码,具
    体的以客户端代码的帧数计时,通过增加单位时间的播放帧数重放所述
    客户端代码。

    所述重放单元520重放的所述客户端代码为本地保存的与所述客户
    端运行的版本相同的客户端代码。

    可选地,如图6中所示,所述装置还包括:

    判断单元550,用于判断所述混合对应关系表中是否包括无效操作命
    令及所述无效操作命令的对应帧号。

    对应的所述识别单元540被配置为:

    若判断单元550判断所述混合对应关系表中不包括所述无效操作命
    令及所述操作命令的对应帧号,则确定所述客户端代码在所述客户端被
    篡改。

    所述装置还包括:

    过滤单元560,用于在所述判断单元550判断所述混合对应关系表中
    包括所述无效操作命令及所述操作命令的对应帧号的情况下,过滤掉所
    述无效操作命令及所述操作命令的对应帧号。

    综上所述,本申请实施例客户端通过记录用户操作命令及所述操作
    命令的对应帧号,并将该记录的操作命令及操作命令的对应帧号连同用
    户操作客户端代码的实际操作结果发送给服务器,实现客户端辅助服务
    器识别客户端代码是否被篡改。服务器通过重放所述客户端代码,来确
    定重放过程中用户的所述操作命令在对应帧号执行的重放操作结果,利
    用比对实际操作结果与重放操作结果是否一致来识别客户端代码是否在
    客户端被篡改??杉?,若客户端代码在客户端被篡改,则服务器重放所
    述客户端代码时得到的重放操作结果必定与所述实际操作结果不一致,
    通过比对两结果即可准确识别出客户端代码是否在客户端被篡改。实现
    了在不影响用户体验的情况下,提高识别客户端代码被篡改的准确率。

    需要注意的是,本申请可在软件和/或软件与硬件的组合体中被实施,
    例如,可采用专用集成电路(ASIC)、通用目的计算机或任何其他类似硬
    件设备来实现。在一个实施例中,本申请的软件程序可以通过处理器执
    行以实现上文所述步骤或功能。同样地,本申请的软件程序(包括相关
    的数据结构)可以被存储到计算机可读记录介质中,例如,RAM存储器,
    磁或光驱动器或软磁盘及类似设备。另外,本申请的一些步骤或功能可
    采用硬件来实现,例如,作为与处理器配合从而执行各个步骤或功能的
    电路。

    另外,本申请的一部分可被应用为计算机程序产品,例如计算机程
    序指令,当其被计算机执行时,通过该计算机的操作,可以调用或提供
    根据本申请的方法和/或技术方案。而调用本申请的方法的程序指令,可
    能被存储在固定的或可移动的记录介质中,和/或通过广播或其他信号承
    载媒体中的数据流而被传输,和/或被存储在根据所述程序指令运行的计
    算机设备的工作存储器中。在此,根据本申请的一个实施例包括一个装
    置,该装置包括用于存储计算机程序指令的存储器和用于执行程序指令
    的处理器,其中,当该计算机程序指令被该处理器执行时,触发该装置
    运行基于前述根据本申请的多个实施例的方法和/或技术方案。

    对于本领域技术人员而言,显然本申请不限于上述示范性实施例的
    细节,而且在不背离本申请的精神或基本特征的情况下,能够以其他的
    具体形式实现本申请。因此,无论从哪一点来看,均应将实施例看作是
    示范性的,而且是非限制性的,本申请的范围由所附权利要求而不是上
    述说明限定,因此旨在将落在权利要求的等同要件的含义和范围内的所
    有变化涵括在本申请内。不应将权利要求中的任何附图标记视为限制所
    涉及的权利要求。此外,显然“包括”一词不排除其他单元或步骤,单数不
    排除复数。系统权利要求中陈述的多个单元或装置也可以由一个单元或
    装置通过软件或者硬件来实现。第一,第二等词语用来表示名称,而并
    不表示任何特定的顺序。

    关于本文
    本文标题:识别及辅助识别客户端代码被篡改的方法及装置.pdf
    链接地址://www.4mum.com.cn/p-6038265.html
    关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

    [email protected] 2017-2018 www.4mum.com.cn网站版权所有
    经营许可证编号:粤ICP备17046363号-1 
     


    收起
    展开
  • 四川郎酒股份有限公司获第十二届人民企业社会责任奖年度环保奖 2019-05-13
  • 银保监会新规剑指大企业多头融资和过度融资 2019-05-12
  • 韩国再提4国联合申办世界杯 中国网友无视:我们自己来 2019-05-11
  • 中国人为什么一定要买房? 2019-05-11
  • 十九大精神进校园:风正扬帆当有为 勇做时代弄潮儿 2019-05-10
  • 粽叶飘香幸福邻里——廊坊市举办“我们的节日·端午”主题活动 2019-05-09
  • 太原设禁鸣路段 设备在测试中 2019-05-09
  • 拜耳医药保健有限公司获第十二届人民企业社会责任奖年度企业奖 2019-05-08
  • “港独”没出路!“梁天琦们”该醒醒了 2019-05-07
  • 陈卫平:中国文化内涵包含三方面 文化复兴表现在其中 2019-05-06
  • 人民日报客户端辟谣:“合成军装照”产品请放心使用 2019-05-05
  • 【十九大·理论新视野】为什么要“建设现代化经济体系”?   2019-05-04
  • 聚焦2017年乌鲁木齐市老城区改造提升工程 2019-05-04
  • 【专家谈】上合组织——构建区域命运共同体的有力实践者 2019-05-03
  • 【华商侃车NO.192】 亲!楼市火爆,别忘了买车位啊! 2019-05-03
  • 网上棋牌赌钱 3分pk10计划软件下载 麻将风云老虎机 重庆时时分析软件老版 养殖做什么最赚钱呢 北京时时计划预测 足球即时比 豆豆免费书赚钱 福建时时快三 手机微商怎么赚钱是真的吗 福建福彩快3遗漏数据 卖纯棉短袖赚钱吗 北京pk10技巧压6法 希诺水杯代理赚钱吗 北京pk10历史走势图 骰子作弊