System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本申请涉及软件,尤其涉及一种软件解密方法、软件加密方法、装置、电子设备及存储介质。
技术介绍
1、随着科学技术的不断发展,电脑、手机、平板等终端设备可选择的应用软件的种类越来越多,应用软件能实现的功能也越来越丰富,为用户的生活带来了极大的便利。
2、然而,不法用户为从应用软件中牟利,会对软件进行破解和售卖,或者在软件中添加病毒代码进行传播。盗版软件不仅损害软件开发商的合法权利,对开发商的经济带来损失,还可能在安装有盗版软件的终端设备中植入病毒。现有的技术方案中,软件开发商为阻止不法用户的破解行为,会在软件中加保护壳或者设置暗桩代码。
3、在软件中加保护壳或者设置暗桩代码的方法,只能在软件破解的过程中增加难度和干扰,并不能阻止不法用户的破解行为。亟需一种提高软件安全性的方法。
技术实现思路
1、本申请实施例提供了一种软件解密方法、软件加密方法、装置、电子设备及计算机可读存储介质,能够降低软件被破解的风险,提高软件的安全性。
2、第一方面,本申请提供了一种软件解密方法,包括:
3、伪入口模块监听中断处理模块发送的执行状态,执行状态用于表征加密软件的状态。
4、若伪入口模块监听到执行状态为正常执行状态,伪入口模块指示解密模块解密加密软件,得到解密软件。
5、若伪入口模块监听到执行状态为非正常执行状态、或伪入口模块未监听到中断处理模块发送的执行状态,伪入口模块则终止解密流程。
6、该方法中,伪入口模块能够持
7、在一些实施方式中,上述伪入口模块指示解密模块解密加密软件,得到解密软件,包括:
8、伪入口模块调用并执行预设干扰程序,预设干扰程序用于干扰调试器。
9、伪入口模块在执行预设干扰程序的过程中,继续监听中断处理模块发送的执行状态。
10、若执行状态为正常执行状态,则伪入口模块对加密软件进行解密,得到解密软件。
11、伪入口模块运行解密软件。
12、在伪入口模块首次判断出加密软件处于安全解密环境后,为防止当前加密软件仍存在被解密的风险。即加密软件仍存在被复制盗用的风险,而这种盗用方式并未在首次检测执行状态时检测到,或者在首次检测执行状态时还未开始恶意破解行为,为防止加密软件在解密的过程中被恶意破解,伪入口模块则执行一段无用程序,避免真正的软件程序被复制。
13、在一些实施方式中,上述伪入口模块对加密软件进行解密,得到解密软件,包括:
14、伪入口模块创建目标线程。
15、伪入口模块通过目标线程获取加密软件和解密模块,并将加密软件发送至解密模块。
16、解密模块对加密软件进行解密,得到解密软件。
17、在伪入口模块执行完预设干扰程序,且检测到加密软件仍存在被复制盗用的风险较低,伪入口模块则创建目标线程,用于获取只读数据区的加密软件和解密模块,并通过解密模块对加密软件进行解密,得到解密软件,便于运行解密软件。
18、在一些实施方式中,伪入口模块运行解密软件,包括:
19、伪入口模块创建目标子进程,并采用目标子进程运行解密软件。
20、目标子进程用于继承父进程的资源,且独立于父进程之外,便于快速运行解密软件。
21、在一些实施方式中,上述伪入口模块则终止解密流程,包括:
22、伪入口模块控制加密软件进入死循环。
23、为避免在检测到加密软件仍存在被复制盗用的风险较高时,继续运行解密流程带来到的软件泄露,可以控制正在加载的软件进入死循环,防止软件被恶意盗用。
24、在一些实施方式中,伪入口模块则终止解密流程,包括:
25、伪入口模块检测并删除加密软件产生的数据。
26、伪入口模块释放并退出加密软件。
27、删除加密软件产生的数据,并释放并退出加密软件。可以有效防止加密软件已运行的数据在非安全环境下被恶意盗用。
28、在一些实施方式中,在伪入口模块接收中断处理模块发送的执行状态信息之前,上述方法还包括:
29、加密模块采用加密程序对待加密软件进行加密,得到加密软件。
30、编译模块对伪入口代码、加密软件、解密代码和中断处理代码进行编译,得到加密软件包,加密软件包中包括:伪入口模块、中断处理模块、解密模块和加密软件。
31、其中,伪入口代码位于加密软件包的代码区,加密软件和解密模块位于加密软件包的只读数据区。
32、在得到加密软件后,为便于该加密软件不被轻易破解,以及保障加密软件在安装运行过程中不被恶意盗用,则设置中断处理模块实时检测加密软件的执行状态,设置伪入口模块在软件启动过程中根据加密软件的执行状态决定是否启动解密流程,若执行状态为正常执行状态,则使用加密程序对应的解密代码对加密软件经行解密,执行解密软件,降低软件解密过程中被破解的风险,提高软件的安全性。
33、第二方面,本申请提供了一种软件加密方法,包括:
34、加密模块采用加密程序对待加密软件进行加密,得到加密软件;
35、编译模块对伪入口代码、加密软件、解密代码和中断处理代码进行编译,得到加密软件包,加密软件包中包括:伪入口模块、中断处理模块、解密模块和加密软件。
36、其中,伪入口代码位于加密软件包的代码区,加密软件和解密模块位于加密软件包的只读数据区。
37、在使用加密程序对待加密软件进行加密后,为便于该加密软件被轻易破解,以及保障加密软件在安装运行过程中不被恶意盗用,则设置中断处理模块实时检测加密软件的执行状态。防止加密软件被复制盗用。设置伪入口模块在软件启动过程中根据加密软件的执行状态决定是否启动解密流程,若执行状态为正常执行状态,则使用加密程序对应的解密代码对加密软件进行解密,执行解密软件,避免软件真正的入口被调试器恶意盗用,提高软件的安全性。
38、第三方面,本申请提供了一种软件解密装置,包括:
39、伪入口模块,用于监听中断处理模块发送的执行状态,执行状态用于表征加密软件的状态。
40、若伪入口模块监听到执行状态为正常执行状态,伪入口模块指示解密模块解密加密软件,得到解密软件。
41、若伪入口模块监听到执行状态为非正常执行状态、或伪入口模块未监听到中断处理模块发送的执行状态,伪入口模块则终止解密流程。
42、第四方面,本申请实施例提供了一种电子设备,包括处理器和存储器,处理器用于执行存储器中存储的计算机程序以实现如上本文档来自技高网...
【技术保护点】
1.一种软件解密方法,其特征在于,所述方法包括:
2.根据权利要求1所述的方法,其特征在于,所述伪入口模块指示解密模块解密所述加密软件,得到解密软件,包括:
3.根据权利要求2所述的方法,其特征在于,所述伪入口模块对所述加密软件进行解密,得到解密软件,包括:
4.根据权利要求2所述的方法,其特征在于,所述伪入口模块运行所述解密软件,包括:
5.根据权利要求1所述的方法,其特征在于,所述伪入口模块则终止解密流程,包括:
6.根据权利要求1所述的方法,其特征在于,所述伪入口模块则终止解密流程,包括:
7.根据权利要求1至6任一项所述的方法,其特征在于,在所述伪入口模块接收中断处理模块发送的执行状态信息之前,所述方法还包括:
8.一种软件加密方法,其特征在于,所述方法包括:
9.一种电子设备,其特征在于,包括处理器和存储器,所述处理器用于执行所述存储器中存储的计算机程序以实现如上述权利要求1-8中任一项中所述的方法。
10.一种计算机可读存储介质,所述计算机可读存储介质存储有计算
...【技术特征摘要】
1.一种软件解密方法,其特征在于,所述方法包括:
2.根据权利要求1所述的方法,其特征在于,所述伪入口模块指示解密模块解密所述加密软件,得到解密软件,包括:
3.根据权利要求2所述的方法,其特征在于,所述伪入口模块对所述加密软件进行解密,得到解密软件,包括:
4.根据权利要求2所述的方法,其特征在于,所述伪入口模块运行所述解密软件,包括:
5.根据权利要求1所述的方法,其特征在于,所述伪入口模块则终止解密流程,包括:
6.根据权利要求1所述的方法,其特征在于,所述伪入口模块则终止...
【专利技术属性】
技术研发人员:刘晓润,张书震,王亚飞,封磊,黎林,沈刚,吴燕琴,苟进国,秦艳,邓念勤,肖震,陈亦心,
申请(专利权)人:中国长城科技集团股份有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。