[发明专利]一种数据完整性校验方法、装置及客户端有效
申请号: | 201810028032.0 | 申请日: | 2018-01-11 |
公开(公告)号: | CN108256353B | 公开(公告)日: | 2021-01-01 |
发明(设计)人: | 周志刚;陈少杰;张文明 | 申请(专利权)人: | 武汉斗鱼网络科技有限公司 |
主分类号: | G06F21/64 | 分类号: | G06F21/64;H04L29/06 |
代理公司: | 北京众达德权知识产权代理有限公司 11570 | 代理人: | 刘杰 |
地址: | 430000 湖北省武汉市东湖开*** | 国省代码: | 湖北;42 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 数据 完整性 校验 方法 装置 客户端 | ||
本发明实施例公开了一种数据完整性校验方法、装置及客户端。本发明实施例方法包括:在需要进行数据完整性校验时,接收服务器下发的第一区块;根据该名称列表信息对需要校验的组件进行校验,得到校验结果,并根据第一区块生成第二区块,第二区块更新到客户端本地保存的校验结果区块链中;将第二区块发送到服务器,以使得服务器将第二区块同步到安装有目标应用程序的所有客户端的校验结果区块链中;接收服务器下发的多个第三区块,并将多个第三区块更新到该校验结果区块链中;根据该校验结果区块链,确定目标应用程序的完整性。本发明实施例中可以通过整个区块链中统计校验结果,确定目标应用程序的完整性,安全性高,校验效率高且节约服务器资源。
技术领域
本发明涉及计算机技术领域,特别涉及一种数据完整性校验方法、装置及客户端。
背景技术
目前,对于客户端软件来说,是发布到用户电脑上,进行安装使用。那么用户具有客户端软件的所有组件及资源文件,当客户端软件运行时则会将需要的可执行文件及组件加载到内存中以执行,那么在内存中执行的是该可以执行文件及组件的代码。
然而黑客可以通过一些手段来修改客户端执行的内存代码,从而完成一些非法的功能。例如客户端软件中有一些限制功能,那么客户端会有一些代码来判断当期的功能是否可以使用,然而黑客可以将客户端的判断代码进行修改,从而客户端可以使用限制的功能。尤其对于游戏客户端来说,黑客可以修改游戏的金币数量,来实现无限金币的“外挂”功能,可以修改客户端软件的物理碰撞检测内存代码来实现“无敌”等功能。
因此,对于客户端执行时,其内存中运行的代码是否被修改则是相当重要,尤其对于网络游戏来说,如何客户端软件开发保证开发内存代码的完整性非常重要。
发明内容
本发明实施例提供了一种数据完整性校验方法、装置及客户端,以解决目前客户端软件易被篡改,安全性低,过于依赖服务器的问题。
第一方面,本申请提供了一种数据完整性校验方法,该方法包括:
在需要进行数据完整性校验时,客户端接收服务器下发的第一区块,所述第一区块中包含客户端需要校验的组件的名称列表信息,所述客户端为所述安装有目标应用程序的客户端,所述目标应用程序的安装组件中包括所述需要校验的组件;
所述客户端根据所述名称列表信息对需要校验的组件进行校验,得到校验结果,并根据所述第一区块生成第二区块,将所述第二区块更新到所述客户端本地保存的校验结果区块链中,所述第二区块中包括所述校验结果和所述客户端的标识信息;
所述客户端将所述第二区块发送到所述服务器,以使得所述服务器将所述第二区块同步到安装有所述目标应用程序的所有客户端的校验结果区块链中;
所述客户端接收所述服务器下发的多个第三区块,并将所述多个第三区块更新到所述客户端本地保存的校验结果区块链中,所述多个第三区块为安装所述目标应用程序的所有客户端分别根据所述第一区块生成的;
所述客户端根据所述本地保存的校验结果区块链,确定所述目标应用程序的完整性。
进一步的,所述客户端根据所述名称列表信息对需要校验的组件进行校验,得到校验结果,包括:
对于每个需要校验的目标组件:
拷贝所述目标组件整个文件到所述客户端另一处内存,
计算内存修复重定位的偏移差,
对所述目标组件进行重定位,
获取所述目标组件的代码段的大小,
计算所述目标组件的代码段的哈希值;
在计算每个需要校验的组件的代码段的哈希值后,根据每个需要校验的组件的代码段的哈希值,得到每个组件校验结果。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于武汉斗鱼网络科技有限公司,未经武汉斗鱼网络科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201810028032.0/2.html,转载请声明来源钻瓜专利网。
- 数据显示系统、数据中继设备、数据中继方法、数据系统、接收设备和数据读取方法
- 数据记录方法、数据记录装置、数据记录媒体、数据重播方法和数据重播装置
- 数据发送方法、数据发送系统、数据发送装置以及数据结构
- 数据显示系统、数据中继设备、数据中继方法及数据系统
- 数据嵌入装置、数据嵌入方法、数据提取装置及数据提取方法
- 数据管理装置、数据编辑装置、数据阅览装置、数据管理方法、数据编辑方法以及数据阅览方法
- 数据发送和数据接收设备、数据发送和数据接收方法
- 数据发送装置、数据接收装置、数据收发系统、数据发送方法、数据接收方法和数据收发方法
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置