[发明专利]软件程序的校验保护方法及系统有效
申请号: | 201710192523.4 | 申请日: | 2017-03-28 |
公开(公告)号: | CN107038353B | 公开(公告)日: | 2020-07-31 |
发明(设计)人: | 周志刚;陈少杰;张文明 | 申请(专利权)人: | 武汉斗鱼网络科技有限公司 |
主分类号: | G06F21/12 | 分类号: | G06F21/12;G06F11/36;G06F21/44;G06F21/60 |
代理公司: | 武汉智权专利代理事务所(特殊普通合伙) 42225 | 代理人: | 沈林华 |
地址: | 430000 湖北省武汉市东湖开*** | 国省代码: | 湖北;42 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 软件 程序 校验 保护 方法 系统 | ||
本发明公开了一种软件程序的校验保护方法及系统,涉及软件程序开发领域。该方法的步骤为:获取软件程序加载的所有模块文件名称,对代码段进行哈希计算,得到代码段校验值;将所有模块文件名称和代码段校验值,作为校验数据发送至服务端;服务端对校验数据进行校验,若校验通过,向客户端发送软件程序合法的校验结果,客户端正常初始化软件程序;若校验未通过,向客户端发送软件程序非法的校验结果,客户端终止初始化软件程序。本发明能够对软件程序中的模块文件进行多重校验和保护,保证了软件开发商的利益,非常适于推广。
技术领域
本发明涉及软件程序开发领域,具体涉及一种软件程序的校验保护方法及系统。
背景技术
目前,软件程序通常采用模块化开发,将软件的功能进行模块化拆分为多份模块文件,不同文件负责不同的功能,每份文件均可单独使用。当软件程序发布至客户端后,程序主框架则会加载一个个独立的文件来实现整个程序的功能。
对于软件程序而言,以Windows客户端程序为例,该程序包括多个DLL(DynamicLink Library,文件为动态链接库文件)文件。Windows客户端程序发布至客户端后,第三方(例如HACK)能够非常容易的从客户端安装目录中,获取DLL文件,由于每份DLL文件均可独立使用,因此第三方获取任意DLL文件后,即可在未授权的情况下直接使用。例如第三方获取到具有图片美颜功能的DLL文件后,即可直接使用该文件的图片美颜功能。
因此,上述模块文件在使用时,软件程序的安全无法保障,进而对软件开发商的利益造成了损失,例如无偿使用了软件开发商拥有的关于模块文件的知识产权等。
发明内容
针对现有技术中存在的缺陷,本发明解决的技术问题为:如何避免第三方在未授权的情况下,使用自行获取的模块文件。本发明能够对软件程序中的模块文件进行多重校验和保护,保证了软件开发商的利益,非常适于推广。
为达到以上目的,本发明提供的软件程序的校验保护方法,包括以下步骤:
S1:当客户端上的软件程序进行初始化时,获取初始化过程中加载的所有模块文件名称,所有模块文件包括1份主模块文件和若干子模块文件,转到S2;
S2:获取主模块文件的内存起始地址、以及主模块文件中代码段的相对地址;根据起始地址和相对地址得到代码段的内存地址,根据内存地址确定代码段;对代码段进行哈希计算,得到代码段校验值,转到S3;
S3:将所述所有模块文件名称和代码段校验值,作为校验数据,将校验数据发送至服务端,转到S4;
S4:对校验数据进行校验,若校验通过,向客户端发送软件程序合法的校验结果,若校验未通过,向客户端发送软件程序非法的校验结果,转到S5;
S5:当客户端收到软件程序合法的校验结果时,初始化软件程序;当客户端收到软件程序非法的校验结果时,终止初始化软件程序。
本发明提供的软件程序的校验保护系统,包括模块文件名称获取单元、代码段计算单元、校验数据发送单元、校验单元和校验结果执行单元;
模块文件名称获取单元用于:当客户端上的软件程序进行初始化时,获取初始化过程中加载的所有模块文件名称,所有模块文件包括1份主模块文件和若干子模块文件,向代码段计算单元发送代码段计算信号;
代码段计算单元用于:收到代码段计算信号后,获取主模块文件的内存起始地址、以及主模块文件中代码段的相对地址;根据起始地址和相对地址得到代码段的内存地址,根据内存地址确定代码段;对代码段进行哈希计算,得到代码段校验值,向校验数据发送单元发送校验数据发送信号;
校验数据发送单元用于:收到校验数据发送信号后,将所述所有模块文件名称和代码段校验值,作为校验数据,将校验数据发送至服务端的校验单元;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于武汉斗鱼网络科技有限公司,未经武汉斗鱼网络科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201710192523.4/2.html,转载请声明来源钻瓜专利网。