[发明专利]软件产品加密的方法、装置、存储介质及处理器在审
| 申请号: | 202011372125.9 | 申请日: | 2020-11-30 |
| 公开(公告)号: | CN112395563A | 公开(公告)日: | 2021-02-23 |
| 发明(设计)人: | 尹国奇 | 申请(专利权)人: | 广州市都享信息科技有限公司 |
| 主分类号: | G06F21/12 | 分类号: | G06F21/12 |
| 代理公司: | 广州立凡知识产权代理有限公司 44563 | 代理人: | 曹禹佳 |
| 地址: | 510000 广东省广州市番禺*** | 国省代码: | 广东;44 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 软件产品 加密 方法 装置 存储 介质 处理器 | ||
本发明公开了一种软件产品加密的方法、装置、存储介质及处理器。方法包括:通过特定的证书文件对预设软件进行授权管理;通过预设代码加密工具对授权管理后的所述预设软件进行加密,得到加密后的预设软件;其中,所述预设代码加密工具通过特定的编程开发语言编写。上述的软件产品加密的方法,采用低级语言代码动态解密加载和反射技术,可以将所有需要保护的代码通过不可逆的编程开发语言(C和C++)进行加密打包,最终交付的可执行软件产品核心代码为不可逆的加密包,将所有的代码结构和源代码全部隐藏起来,让反编译工作无从下手,从根本上起到对java软件产品的保护效果。
技术领域
本发明涉及计算机技术领域,具体地,涉及一种软件产品加密的方法、装置、存储介质及处理器。
背景技术
在Java编程领域中,开发人员可以通过逆向工程反编译得到Java程序的源代码,因此如何保护使用java编程语言编写的软件产品源代码一直是一个行业难题。然而,传统的产品安全保护的做法如代码混淆,代码虚拟化和字符串加密处理等并不能从根本上解决问题,编译后的执行代码及包结构裸露在外面,对于一些有经验的程序员来说,借助一些反编译的工具对编译后的执行代码进行源代码还原只是时间和质量的问题,而且此种方式只能加密后台代码,对于前端的js,html,css等代码无法进行保护。
发明内容
本发明第一方面提供一种软件产品加密的方法,方法包括:
通过特定的证书文件对预设软件进行授权管理;
通过预设代码加密工具对授权管理后的所述预设软件进行加密,得到加密后的预设软件;
其中,所述预设代码加密工具通过特定的编程开发语言编写。
在本发明的实施例中,方法还包括:在执行所述加密后的预设软件时,调用预设解密算法对所述加密后的预设软件的授权证书进行验证。
在本发明的实施例中,方法还包括:若所述授权证书验证失败,终止运行所述加密后的预设软件。
在本发明的实施例中,方法还包括:若所述授权证书验证成功,将所述加密后的预设软件的代码释放到内存中,通过特定的代码加载器执行所述加密后的预设软件的待执行代码。
在本发明的实施例中,方法还包括:在得到加密后的预设软件之后,将所述加密后的预设软件中采用显性调用方式的代码更改为隐性调用。
在本发明的实施例中,将所述加密后的预设软件中采用显性调用方式的代码更改为隐性调用包括:通过动态的接口配置管理将所述加密后的预设软件中采用显性调用方式的代码更改为隐性调用。
本发明第二方面提供一种软件产品加密的装置,装置包括:
授权管理模块,用于通过特定的证书文件对预设软件进行授权管理;
加密模块,用于通过预设代码加密工具对授权管理后的所述预设软件进行加密,得到加密后的预设软件;
其中,所述预设代码加密工具通过特定的编程开发语言编写。
在本发明的实施例中,装置还包括:执行验证模块,用于在执行所述加密后的预设软件时,调用预设解密算法对所述加密后的预设软件的授权证书进行验证。
本发明第三方面提供一种机器可读存储介质,该机器可读存储介质上存储有指令,该指令用于使得机器执行上述的软件产品加密的方法。
本发明第四方面提供一种处理器,程序被所述处理器运行时用于执行上述的软件产品加密的方法。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于广州市都享信息科技有限公司,未经广州市都享信息科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202011372125.9/2.html,转载请声明来源钻瓜专利网。





