【技术实现步骤摘要】
代码加密方法、装置、电子设备和计算机可读存储介质
本专利技术一般地涉及计算机软件程序,更具体地涉及代码加密方法、装置、电子设备和计算机可读存储介质。
技术介绍
随着科学技术的发展和技术产业化应用水平的提升,移动终端的应用程序越来越普及。由于有巨大的利益诱惑,针对应用程序的破解和攻击也越来越猛烈。尤其是一些涉及到支付、人脸识别、私密等类型的应用程序成为首当其冲的攻击对象。目前,计算机程序产品源代码加密方案通常借助第三方的加固工具对源代码进行加固和混淆,以及做一些防拦截、防调试的策略,目的是防止被破解或者给破解增加难度。然而,很多存在于用户接口和程序逻辑中的字符串以明文的形式存在,被反编译后会暴露产品逻辑,给破解带来了极大的方便。破解者可以通过全局搜索常量字符串信息快速定位想要找的地方。为了解决这一问题,可以通过手动方式对程序产品中的字符串进行加密,然而这种方式效率低,容易遗漏或者出错。
技术实现思路
为了解决现有技术中存在的上述问题,本专利技术实施例提供了代码加密方法、装置、电子设备和计算机可读存储介质。第一方面,本专利技术实施例提供一种代码加密方法,该方法包括:代码编 ...
【技术保护点】
1.一种代码加密方法,所述方法包括:代码编译步骤,对源代码进行编译,生成原始中间文件;字节码信息提取步骤,提取所述原始中间文件中的字节码信息,其中,所述字节码信息包括一条或多条原始指令;指令拦截和过滤步骤,拦截所述字节码信息中的所述一条或多条原始指令,根据预先获得的常量字符串的指令特征,对所述一条或多条原始指令进行过滤,获得所述一条或多条原始指令中包含所述指令特征的原始指令所对应的明文常量字符串;字符串加密步骤,对所述明文常量字符串执行加密处理,获得加密常量字符串;替换插入步骤,利用所述加密常量字符串替换所述明文常量字符串,并且插入与所述加密处理相对应的解密处理的代码,获得经加密的中间文件。
【技术特征摘要】
1.一种代码加密方法,所述方法包括:代码编译步骤,对源代码进行编译,生成原始中间文件;字节码信息提取步骤,提取所述原始中间文件中的字节码信息,其中,所述字节码信息包括一条或多条原始指令;指令拦截和过滤步骤,拦截所述字节码信息中的所述一条或多条原始指令,根据预先获得的常量字符串的指令特征,对所述一条或多条原始指令进行过滤,获得所述一条或多条原始指令中包含所述指令特征的原始指令所对应的明文常量字符串;字符串加密步骤,对所述明文常量字符串执行加密处理,获得加密常量字符串;替换插入步骤,利用所述加密常量字符串替换所述明文常量字符串,并且插入与所述加密处理相对应的解密处理的代码,获得经加密的中间文件。2.根据权利要求1所述的方法,其中,所述指令特征包括加载常量指令特征。3.根据权利要求1所述的方法,其中,所述原始中间文件包括类文件。4.根据权利要求1所述的方法,其中,所述字节码信息提取步骤包括:利用字节码插件或者中间文件分解命令提取所述原始中间文件中的所述字节码信息。5.根据权利要求1所述的方法,其中,利用字节码操纵框架、字节码编辑类库和字节码工程库中的任一种执行所述字符串加密步骤和所述替换插入步骤。6.根据权利...
【专利技术属性】
技术研发人员:马福鑫,曹志敏,
申请(专利权)人:北京迈格威科技有限公司,
类型:发明
国别省市:北京,11
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。