[发明专利]客户端代码完整性校验方法、存储介质、电子设备及系统有效
申请号: | 201810017880.1 | 申请日: | 2018-01-09 |
公开(公告)号: | CN108199827B | 公开(公告)日: | 2021-09-07 |
发明(设计)人: | 周志刚;张文明;陈少杰 | 申请(专利权)人: | 武汉斗鱼网络科技有限公司 |
主分类号: | H04L9/06 | 分类号: | H04L9/06;H04L9/32;H04L29/06;H04L9/08;G06F21/56 |
代理公司: | 武汉智权专利代理事务所(特殊普通合伙) 42225 | 代理人: | 张凯 |
地址: | 430000 湖北省武汉市东湖开*** | 国省代码: | 湖北;42 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 客户端 代码 完整性 校验 方法 存储 介质 电子设备 系统 | ||
本发明公开了一种客户端代码完整性校验方法、存储介质、电子设备及系统,涉及人机识别技术领域,该方法包括在客户端中集成多套hash算法;当客户端启动时,对客户端存于磁盘内的每一个组件的内容均随机使用一套或多套hash算法计算hash值;将计算得到的hash值上传至服务器以对hash值的正确性进行判断,若错误,则结束客户端的运行,若正确,则判断客户端运行时加载到内存中组件的内容与该组件存于磁盘内的内容是否一致,若不一致,则结束客户端的运行,若一致,则继续运行客户端。本发明能够实现客户端代码是否被修改的有效检测。
技术领域
本发明涉及人机识别技术领域,具体涉及一种客户端代码完整性校验方法、存储介质、电子设备及系统。
背景技术
客户端软件是发布到用户电脑上,在用户的电脑上进行安装和使用,且用户电脑具有客户端软件的所有组件及资源文件。当客户端软件运行时则会将需要的可执行文件及组件加载到内存中以执行,在内存中执行的具体是是可执行文件和组件的代码。
然而黑客等非法人士可以通过一些手段来修改客户端执行在内存中的代码,从而完成一些非法的功能,例如客户端软件基于安全的考虑会存在一些限制功能,对于限制功能,那么客户端会相应存在一些判断代码用于判断当前的功能是否可以使用,然而黑客可以将客户端的判断代码进行修改,从而使客户端可以使用限制的功能,尤其对于游戏客户端来说,黑客可以修改游戏的金币数量,来实现无限金币的“外挂”功能。因此当客户端执行时,对于客户端运行在内存中的代码是否被修改的检测显得尤为重要。
发明内容
针对现有技术中存在的缺陷,本发明的目的在于提供一种客户端代码完整性校验方法,实现客户端代码是否被修改的有效检测。
为达到以上目的,本发明采取的技术方案是,包括:
在客户端中集成多套hash算法;
当客户端启动时,对客户端存于磁盘内的每一个组件的内容均随机使用一套或多套hash算法计算hash值;
将计算得到的hash值上传至服务器以对hash值的正确性进行判断,若错误,则结束客户端的运行,若正确,则
判断客户端运行时加载到内存中组件的内容与该组件存于磁盘内的内容是否一致,若不一致,则结束客户端的运行,若一致,则继续运行客户端。
在上述技术方案的基础上,
使用集成于客户端中的hash算法对客户端存于磁盘内的每一个组件的内容计算得到hash值,并将计算得到的hash值加密后发送至客户端;
服务器接收客户端发送的hash值并解密后进行正确性的判断;
所述服务器中保存有客户端存于磁盘内的每一个组件均使用客户端集成的多套hash算法计算后得到的hash值。
在上述技术方案的基础上,当客户端启动并连接服务器后,客户端和服务器使用非对称算法均生成公钥和私钥,同时,客户端和服务器间交换生成的公钥,且客户端和服务器使用新得到的公钥和和原有的私钥生成密钥,且客户端和服务器生成的密钥相同。
在上述技术方案的基础上,客户端使用生成的密钥并结合AES加密算法对发送给服务器的hash值进行加密;
服务器使用生成的密钥并结合AES加密算法对加密的hash值进行解密。
在上述技术方案的基础上,
将客户端存于磁盘内的所有组件加载到内存中后使用hash算法进行hash值的计算;
对于客户端运行时加载到内存中组件的内容与该组件存于磁盘内的内容是否一致的比较,再次将客户端存于磁盘内的所有组件加载到内存中后进行。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于武汉斗鱼网络科技有限公司,未经武汉斗鱼网络科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201810017880.1/2.html,转载请声明来源钻瓜专利网。