文件加密方法、文件解密方法、装置、设备及存储介质制造方法及图纸

技术编号:37117493 阅读:18 留言:0更新日期:2023-04-01 05:12
本公开提供了一种文件加密方法、文件解密方法、装置、设备及存储介质,涉及计算机技术领域,尤其涉及安全领域。具体实现方案为:利用密钥对至少一个字节码文件分别进行加密,得到至少一个字节码加密文件;以及将至少一个字节码加密文件打包为数据包;其中,数据包的文件头信息包含至少一个字节码加密文件各自的位置信息。信息。信息。

【技术实现步骤摘要】
文件加密方法、文件解密方法、装置、设备及存储介质


[0001]本公开涉及计算机
,尤其涉及安全领域,更具体地,本公开提供了一种文件加密方法、文件加密装置、文件解密方法、文件解密装置、电子设备、存储介质以及计算机程序产品。

技术介绍

[0002]在一些场景中,云端会向终端下发未经加密的字节码文件(bytecode),终端执行字节码文件,来实现与字节码文件对应的功能。由于字节码文件未进行加密处理,因此字节码文件的存储和传输均存在安全威胁,存在源码泄漏、被篡改的风险,甚至暴露出系统漏洞而被攻击者利用,进而产生更大的安全威胁。

技术实现思路

[0003]本公开提供了一种文件加密方法、文件加密装置、文件解密方法、文件解密装置、电子设备、存储介质以及计算机程序产品。
[0004]根据本公开的一方面,提供了一种文件加密方法,包括:利用密钥对至少一个字节码文件分别进行加密,得到至少一个字节码加密文件;以及将至少一个字节码加密文件打包为数据包;其中,数据包的文件头信息包含至少一个字节码加密文件各自的位置信息。
[0005]根据本公开的另一方面,提供了一种文件解密方法,包括:获取数据包,数据包包括至少一个字节码加密文件,数据包的文件头信息包含至少一个字节码加密文件各自的位置信息;根据接收到的指令和文件头信息中的位置信息,从数据包中释放与指令相关的目标加密字节码文件;以及对目标加密字节码文件进行解密,得到目标字节码文件。
[0006]根据本公开的另一方面,提供了一种文件加密装置,包括:第一加密模块、第一打包模块。第一加密模块用于利用密钥对至少一个字节码文件分别进行加密,得到至少一个字节码加密文件。第一打包模块用于将至少一个字节码加密文件打包为数据包。其中,数据包的文件头信息包含至少一个字节码加密文件各自的位置信息。
[0007]根据本公开的另一方面,提供了一种文件解密装置,包括:获取模块、第一释放模块和解密模块。获取模块用于获取数据包,数据包包括至少一个字节码加密文件,数据包的文件头信息包含至少一个字节码加密文件各自的位置信息。第一释放模块用于根据接收到的指令和文件头信息中的位置信息,从数据包中释放与指令相关的目标加密字节码文件。解密模块用于对目标加密字节码文件进行解密,得到目标字节码文件。
[0008]根据本公开的另一个方面,提供了一种电子设备,包括:至少一个处理器;以及与至少一个处理器通信连接的存储器;其中,存储器存储有可被至少一个处理器执行的指令,指令被至少一个处理器执行,以使至少一个处理器能够执行本公开提供的方法。
[0009]根据本公开的另一个方面,提供了一种存储有计算机指令的非瞬时计算机可读存储介质,其中,计算机指令用于使计算机执行本公开提供的方法。
[0010]根据本公开的另一个方面,提供了一种计算机程序产品,包括计算机程序,计算机
程序在被处理器执行时实现本公开提供的方法。
[0011]应当理解,本部分所描述的内容并非旨在标识本公开的实施例的关键或重要特征,也不用于限制本公开的范围。本公开的其它特征将通过以下的说明书而变得容易理解。
附图说明
[0012]附图用于更好地理解本方案,不构成对本公开的限定。其中:
[0013]图1A是根据本公开实施例的文件加密方法、文件解密方法和装置的应用场景示意图;
[0014]图1B是根据本公开实施例的文件加密方法、文件解密方法的示意图;
[0015]图2是根据本公开实施例的文件加密方法的示意流程图;
[0016]图3是根据本公开实施例的文件加密方法的示意流程图;
[0017]图4是根据本公开实施例的文件解密方法的示意流程图;
[0018]图5是根据本公开实施例的文件解密方法的示意流程图;
[0019]图6A是根据本公开实施例的文件加密方法的示意原理图;
[0020]图6B是根据本公开实施例的文件解密方法的示意原理图;
[0021]图7是根据本公开实施例的文件加密装置的示意结构框图;
[0022]图8是根据本公开实施例的文件解密装置的示意结构框图;以及
[0023]图9是用来实施本公开实施例的文件解密方法和/或文件解密方法的电子设备的结构框图。
具体实施方式
[0024]以下结合附图对本公开的示范性实施例做出说明,其中包括本公开实施例的各种细节以助于理解,应当将它们认为仅仅是示范性的。因此,本领域普通技术人员应当认识到,可以对这里描述的实施例做出各种改变和修改,而不会背离本公开的范围和精神。同样,为了清楚和简明,以下的描述中省略了对公知功能和结构的描述。
[0025]图1A是根据本公开实施例的文件加密方法、文件解密方法和装置的应用场景示意图。
[0026]需要注意的是,图1A所示仅为可以应用本公开实施例的系统架构的示例,以帮助本领域技术人员理解本公开的
技术实现思路
,但并不意味着本公开实施例不可以用于其他设备、系统、环境或场景。
[0027]如图1A所示,根据该实施例的系统架构100可以包括终端设备101、102、103,网络104和服务器105。网络104用以在终端设备101、102、103和服务器105之间提供通信链路的介质。网络104可以包括各种连接类型,例如有线和/或无线通信链路等等。
[0028]用户可以使用终端设备101、102、103通过网络104与服务器105交互,以接收或发送消息等。终端设备101、102、103可以是具有显示屏并且支持网页浏览的各种电子设备,包括但不限于智能手机、平板电脑、膝上型便携计算机和台式计算机等等。
[0029]服务器105可以是提供各种服务的服务器,例如对用户利用终端设备101、102、103所浏览的网站提供支持的后台管理服务器(仅为示例)。后台管理服务器可以对接收到的用户请求等数据进行分析等处理,并将处理结果反馈给终端设备。
[0030]图1B是根据本公开实施例的文件加密方法、文件解密方法的示意图。
[0031]例如,如图1B所示,可以在服务器105(例如云端)部署源文件,然后经混淆110、加密120、签名130、打包140等处理,得到数据包,然后服务器105将数据包分发至终端设备101。终端设备101经过验签150、解包160、解密170、验证完整性等操作之后,可以得到可信且完整的字节码文件,然后终端设备101可以加载和执行180字节码文件。
[0032]需要说明的是,本公开实施例所提供的文件加密方法一般可以由服务器105执行。相应地,本公开实施例所提供的文件加密装置一般可以设置于服务器105中。本公开实施例所提供的文件加密方法也可以由不同于服务器105且能够与终端设备101、102、103和/或服务器105通信的服务器或服务器集群执行。相应地,本公开实施例所提供的文件加密装置也可以设置于不同于服务器105且能够与终端设备101、102、103和/或服务器105通信的服务器或服务器集群中。本公开实施例所提本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种文件加密方法,包括:利用密钥对至少一个字节码文件分别进行加密,得到至少一个字节码加密文件;以及将所述至少一个字节码加密文件打包为数据包;其中,所述数据包的文件头信息包含所述至少一个字节码加密文件各自的位置信息。2.根据权利要求1所述的方法,还包括:对所述至少一个字节码加密文件各自进行哈希运算,得到至少一个初始摘要信息;以及将包括所述至少一个初始摘要信息的摘要文件,打包至所述数据包中。3.根据权利要求2所述的方法,还包括:利用私钥,对包括所述至少一个初始摘要信息的摘要文件进行签名,得到签名文件;以及将所述签名文件打包至所述数据包中。4.根据权利要求1至3任意一项所述的方法,还包括:对所述密钥进行加密,得到加密后的密钥;以及发送所述加密后的密钥。5.一种文件解密方法,包括:获取数据包,所述数据包包括至少一个字节码加密文件,所述数据包的文件头信息包含所述至少一个字节码加密文件各自的位置信息;根据接收到的指令和所述文件头信息中的位置信息,从所述数据包中释放与所述指令相关的目标加密字节码文件;以及对目标加密字节码文件进行解密,得到目标字节码文件。6.根据权利要求5所述的方法,还包括:释放所述数据包中的摘要文件和签名文件;其中,所述摘要文件包括对所述至少一个字节码加密文件各自进行哈希运算得到的至少一个初始摘要信息,所述签名文件是利用私钥对所述摘要文件进行签名得到的;利用与所述私钥对应的公钥、所述摘要文件和所述签名文件进行签名验证;以及响应于检测到签名验证已通过,触发从所述数据包中释放目标加密字节码文件的操作。7.根据权利要求5所述的方法,还包括:在得到目标字节码文件之后,根据所述数据包中的摘要文件,确定将与所述目标字节码文件对应的初始摘要信息;其中,所述摘要文件包括对所述至少一个字节码加密文件各自进行哈希运算得到的至少一个初始摘要信息;对所述目标字节码文件进行哈希运算,得到实际摘要信息;将与所述目标字节码文件对应的初始摘要信息和所述实际摘要信息进行比较;以及响应于检测到与所述目标字节码文件对应的初始摘要信息和所述实际摘要信息一致,确定所述目标字节码文件完整,以执行所述目标字节码文件。8.根据权利要求5至7任意一项所述的方法,其中,所述对目标加密字节码文件进行解密,得到目标字节码文件包括:获取加密后的密钥;
对所述加密后的密钥进行解密,得到密钥;以及利用所述密钥对目标加密字节码文件进行解密,得到所述目标字节码文件。9.一种文件加密装置,包括:第一加密模块,用于利用密钥对至少一个字节码文件分别进行加密,得到至少一个字节码加密文件;以及第一打包模块,用于将所述至少一个字节码加密文件打包为数据包;其中,所述数据包的文件头信息包含所述至少一个字节码加密文件各自的位置信息。10.根据权利要求9所述的装置,还包括:第一运算模块,用于对所述至少一个字节码加密文件各自进行哈希运算,得到至少一个初始摘要信息;以及第二打包模块,用于将包括所述至少...

【专利技术属性】
技术研发人员:巫北龙
申请(专利权)人:百度国际科技深圳有限公司
类型:发明
国别省市:

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

1