类文件的保护与运行方法、装置、设备及存储介质制造方法及图纸

技术编号:27452664 阅读:14 留言:0更新日期:2021-02-25 04:41
本发明专利技术涉及信息安全技术领域,公开了一种类文件的保护与运行方法、装置、设备及存储介质,用于提高类文件的安全性。类文件的保护与运行方法包括:按照待加密的文件路径信息读取源代码文件;对源代码文件进行编译处理,得到字节码信息;根据仿射加密算法对字节码信息进行加密处理,得到已加密的类文件;对已加密的类文件进行打包处理,并将已打包的类文件和动态链接库文件发送至目标终端,得到发送结果;当发送结果为发送成功时,根据已打包的类文件和动态链接库文件生成待操作脚本指令,建立与目标终端之间的远程连接,调用并执行待操作脚本指令,得到执行结果。此外,本发明专利技术还涉及区块链技术,动态链接库文件可存储于区块链节点中。中。中。

【技术实现步骤摘要】
类文件的保护与运行方法、装置、设备及存储介质


[0001]本专利技术涉及信息安全技术的混淆处理领域,尤其涉及一种类文件的保护与运行方法、装置、设备及存储介质。

技术介绍

[0002]当系统部署在客户方的操作系统(例如,linux)主机上时,那么类class文件存在被破解的风险,核心算法及规则存在泄漏的问题。由于java是解析型语言,很容易就能反编译出源码,且还原度很高。业内常规的防止反编译的做法一般采用C++编写核心代码,再转成native方法可供java调用。
[0003]另外,也可以对类class文件加密,再通过自定义类加载器classloader在装载class之前先解密再装载。这个方法的确能防止class文件被反编译,但是该自定义的类加载器文件classloader.class本身是无法加密的,因此破解方能够轻易反编译classloader.class,进而根据class解密逻辑自行解密所有的class文件。还有通过混淆工具来对class字节码进行混淆的,虽然代码混淆后可以增加代码的可读性,从而提升破解难度,但是其本身并不能阻止class文件被反编译和破解,导致class文件加密后,存在容易破解和安全性差的问题。

技术实现思路

[0004]本专利技术提供了一种类文件的保护与运行方法、装置、设备及存储介质,用于增加类class文件的破解难度,并提高class文件的安全性。
[0005]为实现上述目的,本专利技术第一方面提供了一种类文件的保护与运行方法,包括:获取待加密的文件路径信息,按照所述待加密的文件路径信息读取源代码文件;对所述源代码文件进行编译处理,得到目标类文件,并从所述目标类文件中读取字节码信息;根据仿射加密算法对所述字节码信息进行加密处理,得到密文字符串,并将所述密文字符串写入至所述目标类文件中,得到已加密的类文件;获取所述已加密的类文件对应的动态链接库文件,对所述已加密的类文件进行打包处理,得到已打包的类文件,并将所述已打包的类文件和所述动态链接库文件发送至目标终端,得到发送结果,所述动态链接库文件包括预先设置的解密规则和仿射解密算法;当所述发送结果为发送成功时,根据所述已打包的类文件和所述动态链接库文件生成待操作脚本指令,建立与所述目标终端之间的远程连接,调用并执行所述待操作脚本指令,得到执行结果,所述待操作脚本指令用于指示在所述目标终端中基于所述仿射解密算法和所述解密规则对所述已打包的类文件进行解密和运行处理。
[0006]可选的,在本专利技术第一方面的第一种实现方式中,所述获取待加密的文件路径信息,按照所述待加密的文件路径信息读取源代码文件,包括:获取待加密的文件类型和文件处理状态,根据所述待加密的文件类型和所述文件处理状态、预设数据库表和结构化查询语言语法规则设置查询语句,所述文件处理状态为待加密状态;执行所述查询语句,得到待加密的文件路径信息,并按照所述待加密的文件路径信息读取源代码文件。
[0007]可选的,在本专利技术第一方面的第二种实现方式中,所述对所述源代码文件进行编译处理,得到目标类文件,并从所述目标类文件中读取字节码信息,包括:调用预设的编译器将所述源代码文件转换为目标类文件,并获取所述目标类文件的全路径信息,所述目标类文件的全路径信息包括存储目录信息和目标类文件的类名称信息;通过预设类文件读取函数按照所述存储目录信息和所述目标类文件的类名称信息从所述目标类文件中读取字节码信息,所述字节码信息主要由十六进制的数据组成。
[0008]可选的,在本专利技术第一方面的第三种实现方式中,所述根据仿射加密算法对所述字节码信息进行加密处理,得到密文字符串,并将所述密文字符串写入至所述目标类文件中,得到已加密的类文件,包括:获取预先设置的密钥对和预设的模数,并将所述字节码信息中的每个字符转换为对应的目标数值;按照仿射加密算法对所述密钥对、所述模数和每个字符对应的目标数值进行计算,得到每个字符对应的密文数字;将每个字符对应的密文数字转换为对应的密文字符,并将每个字符对应的密文字符按照所述字节码信息中的字符先后顺序进行组合,得到密文字符串,将所述密文字符串写入至所述目标类文件中,得到已加密的类文件,并将所述已加密的类文件更新至预设配置数据表中。
[0009]可选的,在本专利技术第一方面的第四种实现方式中,所述获取所述已加密的类文件对应的动态链接库文件,对所述已加密的类文件进行打包处理,得到已打包的类文件,并将所述已打包的类文件和所述动态链接库文件发送至目标终端,得到发送结果,所述动态链接库文件包括预先设置的解密规则和仿射解密算法,包括:按照预设的文件类型和预设的打包指令对所述已加密的类文件进行打包操作,得到已打包的类文件;从所述预设配置数据表中查询所述已加密的类文件对应的动态链接库文件,并对所述已打包的类文件与所述动态链接库文件进行关联映射,所述动态链接库文件包括预先设置的解密规则和仿射解密算法;通过文件传输协议将所述已打包的类文件和所述动态链接库文件发送至目标终端,得到发送结果。
[0010]可选的,在本专利技术第一方面的第五种实现方式中,所述当所述发送结果为发送成功时,根据所述已打包的类文件和所述动态链接库文件生成待操作脚本指令,建立与所述目标终端之间的远程连接,调用并执行所述待操作脚本指令,得到执行结果,所述待操作脚本指令用于指示在所述目标终端中基于所述仿射解密算法和所述解密规则对所述已打包的类文件进行解密和运行处理,包括:当所述发送结果为发送成功时,获取预设指令关键字,根据所述预设指令关键字、所述已打包的类文件和所述动态链接库文件生成待操作脚本指令,所述待操作脚本指令用于指示在所述目标终端中基于所述仿射解密算法和所述解密规则对所述已打包的类文件进行解密和运行处理;获取目标终端的网际互连协议地址信息,按照所述网际互连协议地址信息向所述目标终端发送远程连接请求,得到响应数据,并对所述响应数据进行数据解析,得到连接结果;当所述连接结果为连接成功时,调用并执行所述待操作脚本指令,从所述动态链接库文件中读取所述解密规则和所述仿射解密算法,所述解密规则包括所述密钥对和所述模数;从所述已打包的类文件中读取已加密的字符串,并通过所述仿射解密算法按照所述密钥对和所述模数对所述已加密的字符串进行解密,得到已解密的类文件;通过预设类加载器加载所述已解密的类文件,并启动所述已解密的类文件对应的应用服务。
[0011]可选的,在本专利技术第一方面的第六种实现方式中,在所述获取待加密的文件路径
信息,按照所述待加密的文件路径信息读取源代码文件之前,所述类文件的保护与运行方法还包括:获取预先设置的解密规则,并将所述预先设置的解密规则写入至初始文件中;获取预先设置的解密规则,并将所述预先设置的解密规则写入至初始文件中;通过预设脚本指令对所述初始文件进行编译,得到动态链接库文件。
[0012]本专利技术第二方面提供了一种类文件的保护与运行装置,包括:获取模块,用于获取待加密的文件路径信息,按照所述待加密的文件路径信息读取源代码文件;处理模块,用于对所述源代码文件进行编译处理,得到目标类文件,并从本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种类文件的保护与运行方法,其特征在于,所述类文件的保护与运行方法包括:获取待加密的文件路径信息,按照所述待加密的文件路径信息读取源代码文件;对所述源代码文件进行编译处理,得到目标类文件,并从所述目标类文件中读取字节码信息;根据仿射加密算法对所述字节码信息进行加密处理,得到密文字符串,并将所述密文字符串写入至所述目标类文件中,得到已加密的类文件;获取所述已加密的类文件对应的动态链接库文件,对所述已加密的类文件进行打包处理,得到已打包的类文件,并将所述已打包的类文件和所述动态链接库文件发送至目标终端,得到发送结果,所述动态链接库文件包括预先设置的解密规则和仿射解密算法;当所述发送结果为发送成功时,根据所述已打包的类文件和所述动态链接库文件生成待操作脚本指令,建立与所述目标终端之间的远程连接,调用并执行所述待操作脚本指令,得到执行结果,所述待操作脚本指令用于指示在所述目标终端中基于所述仿射解密算法和所述解密规则对所述已打包的类文件进行解密和运行处理。2.根据权利要求1所述的类文件的保护与运行方法,其特征在于,所述获取待加密的文件路径信息,按照所述待加密的文件路径信息读取源代码文件,包括:获取待加密的文件类型和文件处理状态,根据所述待加密的文件类型和所述文件处理状态、预设数据库表和结构化查询语言语法规则设置查询语句,所述文件处理状态为待加密状态;执行所述查询语句,得到待加密的文件路径信息,并按照所述待加密的文件路径信息读取源代码文件。3.根据权利要求1所述的类文件的保护与运行方法,其特征在于,所述对所述源代码文件进行编译处理,得到目标类文件,并从所述目标类文件中读取字节码信息,包括:调用预设的编译器将所述源代码文件转换为目标类文件,并获取所述目标类文件的全路径信息,所述目标类文件的全路径信息包括存储目录信息和目标类文件的类名称信息;通过预设类文件读取函数按照所述存储目录信息和所述目标类文件的类名称信息从所述目标类文件中读取字节码信息,所述字节码信息主要由十六进制的数据组成。4.根据权利要求1所述的类文件的保护与运行方法,其特征在于,所述根据仿射加密算法对所述字节码信息进行加密处理,得到密文字符串,并将所述密文字符串写入至所述目标类文件中,得到已加密的类文件,包括:获取预先设置的密钥对和预设的模数,并将所述字节码信息中的每个字符转换为对应的目标数值;按照仿射加密算法对所述密钥对、所述模数和每个字符对应的目标数值进行计算,得到每个字符对应的密文数字;将每个字符对应的密文数字转换为对应的密文字符,并将每个字符对应的密文字符按照所述字节码信息中的字符先后顺序进行组合,得到密文字符串,将所述密文字符串写入至所述目标类文件中,得到已加密的类文件,并将所述已加密的类文件更新至预设配置数据表中。5.根据权利要求4所述的类文件的保护与运行方法,其特征在于,所述获取所述已加密的类文件对应的动态链接库文件,对所述已加密的类文件进行打包处理,得到已打包的类
文件,并将所述已打包的类文件和所述动态链接库文件发送至目标终端,得到发送结果,所述动态链接库文件包括预先设置的解密规则和仿射解密算法,包括:按照预设的文件类型和预设的打包指令对所述已加密的类文件进行打包操作,得到已打包的类文件;从所述预设配置数据表中查询所述已加密的类文件对应的动态链接库文件,并对所述已打包的类文件与所述动态链接库文件进行关联映射,所述动态链接库文件包括预先设置的解密规则和仿射解密算法...

【专利技术属性】
技术研发人员:孙佳伟
申请(专利权)人:平安普惠企业管理有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1