[发明专利]软件程序的校验保护方法及系统有效
申请号: | 201710192523.4 | 申请日: | 2017-03-28 |
公开(公告)号: | CN107038353B | 公开(公告)日: | 2020-07-31 |
发明(设计)人: | 周志刚;陈少杰;张文明 | 申请(专利权)人: | 武汉斗鱼网络科技有限公司 |
主分类号: | G06F21/12 | 分类号: | G06F21/12;G06F11/36;G06F21/44;G06F21/60 |
代理公司: | 武汉智权专利代理事务所(特殊普通合伙) 42225 | 代理人: | 沈林华 |
地址: | 430000 湖北省武汉市东湖开*** | 国省代码: | 湖北;42 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 软件 程序 校验 保护 方法 系统 | ||
1.一种软件程序的校验保护方法,其特征在于,该方法包括以下步骤:
S1:当客户端上的软件程序进行初始化时,获取初始化过程中加载的所有模块文件名称,所有模块文件包括1份主模块文件和若干子模块文件,转到S2;主模块文件的名称对应程序运行时的进程名称;
S2:获取主模块文件的内存起始地址、以及主模块文件中代码段的相对地址;根据起始地址和相对地址得到代码段的内存地址,根据内存地址确定代码段;对代码段进行哈希计算,得到代码段校验值,转到S3;
S3:将所述所有模块文件名称和代码段校验值,作为校验数据,将校验数据发送至服务端,转到S4;
S4:服务端对校验数据进行校验,若校验通过,向客户端发送软件程序合法的校验结果,若校验未通过,向客户端发送软件程序非法的校验结果,转到S5;
S5:当客户端收到软件程序合法的校验结果时,初始化软件程序;当客户端收到软件程序非法的校验结果时,终止初始化软件程序;
S4中所述校验通过的校验数据需要同时满足以下条件:校验数据中的所有模块文件名称,均与服务端的软件程序对应的文件相同;校验数据中的代码段校验值,与服务端计算的代码段校验值相同;
S1中初始化过程中加载所有模块文件的具体流程为:确定主模块文件后,获取主模块文件加载的所有文件名称,所述所有文件名称均为子模块文件;
S2中所述对代码段进行哈希计算之前,需要去除代码段中的重定位数据;
S3中所述将校验数据发送至服务端之前,还需要采用加密算法对校验数据进行加密;S4中所述对校验数据进行校验之前,还需要采用解密算法对校验数据进行解密;解密算法与加密算法对应。
2.如权利要求1所述的软件程序的校验保护方法,其特征在于:所述重定位数据和代码段的相对地址,均在主模块文件的头部信息中获取。
3.一种软件程序的校验保护系统,其特征在于:该系统包括模块文件名称获取单元、代码段计算单元、校验数据发送单元、校验单元和校验结果执行单元;
模块文件名称获取单元用于:当客户端上的软件程序进行初始化时,获取初始化过程中加载的所有模块文件名称,所有模块文件包括1份主模块文件和若干子模块文件,向代码段计算单元发送代码段计算信号;主模块文件的名称对应程序运行时的进程名称;代码段计算单元用于:收到代码段计算信号后,获取主模块文件的内存起始地址、以及主模块文件中代码段的相对地址;根据起始地址和相对地址得到代码段的内存地址,根据内存地址确定代码段;对代码段进行哈希计算,得到代码段校验值,向校验数据发送单元发送校验数据发送信号;
校验数据发送单元用于:收到校验数据发送信号后,将所述所有模块文件名称和代码段校验值,作为校验数据,将校验数据发送至服务端的校验单元;
校验单元用于:收到校验数据后,对校验数据进行校验,若校验通过,向客户端的校验结果执行单元发送软件程序合法的校验结果,若校验未通过,向客户端的校验结果执行单元发送软件程序非法的校验结果;
校验结果执行单元用于:当收到的校验结果为软件程序合法时,允许初始化软件程序;当收到的校验结果为软件程序非法时,终止初始化软件程序;
所述校验单元校验通过的校验数据需要同时满足以下条件:校验数据中的所有模块文件名称,均与服务端的软件程序对应的文件相同;校验数据中的代码段校验值,与服务端计算的代码段校验值相同;
初始化过程中加载所有模块文件的具体流程为:确定主模块文件后,获取主模块文件加载的所有文件名称,所述所有文件名称均为子模块文件;
所述代码段计算单元对代码段进行哈希计算之前,需要去除代码段中的重定位数据;
所述校验数据发送单元将校验数据发送至服务端之前,还需要采用加密算法对校验数据进行加密;所述校验单元对校验数据进行校验之前,还需要采用解密算法对校验数据进行解密;解密算法与加密算法对应。
4.如权利要求3所述的软件程序的校验保护系统,其特征在于:所述代码段计算单元在主模块文件的头部信息中,获取重定位数据和代码段的相对地址。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于武汉斗鱼网络科技有限公司,未经武汉斗鱼网络科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201710192523.4/1.html,转载请声明来源钻瓜专利网。