CN114329568A - 文件加密方法、装置、系统平台及文件解密方法 - Google Patents

文件加密方法、装置、系统平台及文件解密方法 Download PDF

Info

Publication number
CN114329568A
CN114329568A CN202111679240.5A CN202111679240A CN114329568A CN 114329568 A CN114329568 A CN 114329568A CN 202111679240 A CN202111679240 A CN 202111679240A CN 114329568 A CN114329568 A CN 114329568A
Authority
CN
China
Prior art keywords
key
preset
file
target
sub
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202111679240.5A
Other languages
English (en)
Inventor
唐骥锋
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hillstone Networks Co Ltd
Original Assignee
Hillstone Networks Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hillstone Networks Co Ltd filed Critical Hillstone Networks Co Ltd
Priority to CN202111679240.5A priority Critical patent/CN114329568A/zh
Publication of CN114329568A publication Critical patent/CN114329568A/zh
Pending legal-status Critical Current

Links

Images

Landscapes

  • Storage Device Security (AREA)

Abstract

本发明公开了一种文件加密方法、装置、系统平台及文件解密方法。其中,该方法包括:确定第一密钥,其中,第一密钥为随机生成的预设长度字符串;基于预设变换规则,对第一密钥进行变换,得到第二密钥;依据第二密钥和预设加密算法,对目标文件进行加密,并将第一密钥,预设加密算法和预设变换规则写入目标平台中的用于内核编译的代码段中,其中,写入代码段中的第一密钥,预设加密算法和预设变换规则用于对加密后的目标文件进行解密。本发明解决了由于现有技术中对文件加密是没有对加解密的密钥进行处理造成的密钥容易泄露的技术问题。

Description

文件加密方法、装置、系统平台及文件解密方法
技术领域
本发明涉及数据安全领域,具体而言,涉及一种文件加密方法、装置、系统平台及文件解密方法。
背景技术
现有技术中在对文件进行加密时,没有对加解密的密钥进行处理,如果一直用同一个密钥,且未经处理,密钥容易泄露,根文件系统加密就丧失其意义。
针对上述的问题,目前尚未提出有效的解决方案。
发明内容
本发明实施例提供了一种文件加密方法、装置、系统平台及文件解密方法,以至少解决由于现有技术中对文件加密是没有对加解密的密钥进行处理造成的密钥容易泄露的技术问题。
根据本发明实施例的一个方面,提供了一种文件加密方法,包括:确定第一密钥,其中,第一密钥为随机生成的预设长度字符串;基于预设变换规则,对第一密钥进行变换,得到第二密钥;依据第二密钥和预设加密算法,对目标文件进行加密,并将第一密钥,预设加密算法和预设变换规则写入目标平台中的用于内核编译的代码段中,其中,写入代码段中的第一密钥,预设加密算法和预设变换规则用于对加密后的目标文件进行解密。
可选地,将第一密钥写入目标平台中的用于内核编译的代码段中包括:将第一密钥分为预设数量个子密钥片段;将预设数量个子密钥片段中的每个子密钥片段嵌入代码段中的指定位置中,并导出代码段对应的内存地址,其中,内存地址用于确定每个子密钥片段嵌入的指定位置。
可选地,将预设数量个子密钥片段中的每个子密钥片段嵌入代码段中的指定位置中包括:依据子密钥片段在第一密钥中的位置对预设数量个子密钥片段进行排序,并确定每个子密钥片段对应的序号;将预设数量个子密钥片段随机分配到指定位置中,并记录每个指定位置中嵌入的子密钥片段对应的序号,其中,每个指定位置嵌入一段子密钥片段。
可选地,依据第二密钥和预设加密算法,对目标文件进行加密包括:对目标文件进行压缩,得到目标压缩包;依据第二密钥和预设加密算法,对目标压缩包进行加密;将加密后的目标压缩包写入镜像文件。
可选地,依据第二密钥和预设加密算法,对目标文件进行加密,并将第一密钥,预设加密算法和预设变换规则写入目标平台中的用于内核编译的代码段中之后,文件加密方法还包括:在目标平台的内核配置文件中增加内核加解密配置选项。
根据本发明实施例的另一方面,还提供了一种文件解密方法,包括:确定目标压缩包对应的预设变换规则,预设解密算法和第一密钥;依据预设变换规则和第一密钥,对第一密钥进行变换,得到第二密钥;确定目标压缩包对应的预设解密算法,并依据第二密钥和预设解密算法对目标压缩包进行解密。
可选地,确定目标压缩包对应的第一密钥包括:确定目标平台中的用于内核编译的代码段所对应的内存地址,其中,内存地址用于确定嵌入代码段中的多个第一密钥的子密钥片段的位置;依据内存地址,从代码段中提取多个子密钥片段;拼接多个子密钥片段,得到第一密钥。
可选地,拼接多个子密钥片段,得到第一密钥包括:确定多个子密钥片段中每个子密钥片段对应的序号,其中,序号为子密钥片段在密钥排列顺序中的序号,密钥排列顺序为依据子密钥片段在第一密钥中的位置确定的多个子密钥片段的排列顺序;依据多个子密钥片段中每个子密钥片段对应的序号对多个子密钥片段拼接,得到第一密钥。
根据本发明实施例的另一方面,提供了一种文件加密装置,包括:处理模块,用于确定第一密钥,其中,第一密钥为随机生的预设长度字符串;变换模块,用于基于预设变换规则,对第一密钥进行变换,得到第二密钥;加密模块,用于依据第二密钥和预设加密算法,对目标文件进行加密,并将第一密钥,预设加密算法和预设变换规则写入目标平台中的用于内核编译的代码段中,其中,第一密钥,预设加密算法和预设变换规则用于对加密后的目标文件进行解密。
根据本发明实施例的另一方面,提供了一种系统平台,包括加密模块,解密模块,其中,加密模块,用于确定第一密钥,其中,第一密钥为随机生的预设长度字符串;基于预设变换规则,对第一密钥进行变换,得到第二密钥;依据第二密钥和预设加密算法,对目标文件进行加密,并将第一密钥,预设加密算法和预设变换规则写入目标平台中的用于内核编译的代码段中,其中,第一密钥,预设加密算法和预设变换规则用于对加密后的目标文件进行解密;解密模块,用于确定目标压缩包对应的预设变换规则,预设解密算法和第一密钥,其中,目标压缩包为对目标文件压缩后得到的;依据预设变换规则和第一密钥,对第一密钥进行变换,得到第二密钥;确定目标压缩包对应的预设解密算法,并依据第二密钥和预设解密算法对目标压缩包进行解密。
根据本发明实施例的另一方面,提供了一种非易失性存储介质,非易失性存储介质包括存储的程序,其中,在程序运行时控制非易失性存储介质所在设备执行文件加密方法。
根据本发明实施例的另一方面,提供了一种处理器,处理器用于运行程序,其中,程序运行时执行文件加密方法。
在本发明实施例中,采用确定第一密钥,其中,第一密钥为随机生成的预设长度字符串;基于预设变换规则,对第一密钥进行变换,得到第二密钥;依据第二密钥和预设加密算法,对目标文件进行加密,并将第一密钥,预设加密算法和预设变换规则写入目标平台中的用于内核编译的代码段中,其中,写入代码段中的第一密钥,预设加密算法和预设变换规则用于对加密后的目标文件进行解密的方式,通过对第一密钥进行变换得到第二密钥,并使用第二密钥对目标文件进行加密,达到了避免第一密钥泄露后目标文件被解密的目的,从而实现了提高目标文件安全性的技术效果,进而解决了由于现有技术中对文件加密是没有对加解密的密钥进行处理造成的密钥容易泄露技术问题。
附图说明
此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
图1是根据本发明实施例的一种文件加密方法的流程示意图;
图2是根据本发明实施例的一种目标平台中文件加密流程的流程示意图;
图3是根据本发明实施例的一种文件解密方法的流程示意图;
图4是根据本发明实施例的一种目标平台中文件解密流程的流程示意图;
图5是根据本发明实施例的一种文件加密装置的结构示意图;
图6是根据本发明实施例的一种计算机终端设备的结构示意图。
具体实施方式
为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分的实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。
需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
根据本发明实施例,提供了一种文件加密方法的方法实施例,需要说明的是,在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机系统中执行,并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。
图1是根据本发明实施例的文件加密方法,如图1所示,该方法适用于嵌入式平台linux系统中,包括如下步骤:
步骤S102,确定第一密钥,其中,第一密钥为随机生成的预设长度字符串;
在本申请的一些实施例中,可以使用任意随机字符生成算法来生成上述预设长度字符串。例如,可以生成32字符长度的字符串。
步骤S104,基于预设变换规则,对第一密钥进行变换,得到第二密钥;
在本申请的一些实施例中,第二密钥与第一密钥的字符长度可以不同。
步骤S106,依据第二密钥和预设加密算法,对目标文件进行加密,并将第一密钥,预设加密算法和预设变换规则写入目标平台中的用于内核编译的代码段中,其中,写入代码段中的第一密钥,预设加密算法和预设变换规则用于对加密后的目标文件进行解密。
在本申请的一些实施例中,将所述第一密钥写入目标平台中的用于内核编译的代码段中的流程如下:将所述第一密钥分为预设数量个子密钥片段;将所述预设数量个子密钥片段中的每个子密钥片段嵌入所述代码段中的指定位置中,并导出所述代码段对应的内存地址,其中,所述内存地址用于确定所述每个子密钥片段嵌入的所述指定位置。
在本申请的一些实施例中,将所述预设数量个子密钥片段中的每个子密钥片段嵌入所述代码段中的指定位置中包括:依据所述子密钥片段在所述第一密钥中的位置对所述预设数量个子密钥片段进行排序,并确定每个所述子密钥片段对应的序号;将所述预设数量个子密钥片段随机分配到所述指定位置中,并记录每个所述指定位置中嵌入的所述子密钥片段对应的所述序号,其中,每个所述指定位置嵌入一段所述子密钥片段。
在本申请的一些实施例中,依据所述第二密钥和预设加密算法,对目标文件进行加密的方式如下:对所述目标文件进行压缩,得到目标压缩包;依据所述第二密钥和所述预设加密算法,对所述目标压缩包进行加密;将加密后的所述目标压缩包写入镜像文件。
在本申请的一些实施例中,依据所述第二密钥和预设加密算法,对目标文件进行加密,并将所述第一密钥,所述预设加密算法和所述预设变换规则写入目标平台中的用于内核编译的代码段中之后,所述文件加密方法还包括:在所述目标平台的内核配置文件中增加内核加解密配置选项。
具体地,可以在内核配置文件中,增加一个自定义的内核加解密配置选项并打开,使内核中启用解密流程。
在本申请的一些实施例中,当上述目标平台为linux系统时,可以在linux内核中根文件系统解压流程之前增加解密流程,并且用内核配置选项宏定义包裹,来区分是否开启解密流程。解密时先从内核代码段中获取各密钥字段,再对其进行拼接,然后按照加密时相同的算法对密钥进行变换,获取到真实密钥。最后使用真实密钥完成对加密根文件系统解密,接下来进行解压挂载。
在本申请的一些实施例中,当上述目标平台为linux系统,上述目标文件为根文件系统对应的系统文件时,采用图1中所示的文件加密方法对根文件进行加密的流程如图2所示,包括以下步骤:
在步骤S202中,生成根文件;在步骤S204中,对根文件进行压缩;在步骤S206中,随机生成第一密钥,并对第一密钥进行变换,生成第二密钥;在步骤S208中,采用第二密钥对压缩后的根文件进行加密;在步骤S210中,将第一密钥分段后嵌入linux系统的内核代码段中;在步骤S212中,将加密后的根文件编入镜像文件中。
根据本发明实施例,提供了一种文件加密方法的方法实施例,需要说明的是,在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机系统中执行,并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。
图3是根据本发明实施例的文件解密方法,如图3所示,该方法包括如下步骤:
步骤S302,确定目标压缩包对应的预设变换规则,预设解密算法和第一密钥;
在本申请的一些实施例中,确定目标压缩包对应的第一密钥的流程如下:确定目标平台中的用于内核编译的代码段所对应的内存地址,其中,所述内存地址用于确定嵌入所述代码段中的多个第一密钥的子密钥片段的位置;依据所述内存地址,从所述代码段中提取多个所述子密钥片段;拼接多个所述子密钥片段,得到所述第一密钥。
在本申请的一些实施例中,在拼接多个所述子密钥片段,得到所述第一密钥时,还需要确定各个子密钥片段在第一密钥中的排列顺序。具体地,需要确定多个所述子密钥片段中每个所述子密钥片段对应的序号,其中,所述序号为所述子密钥片段在所述密钥排列顺序中的序号,所述密钥排列顺序为依据所述子密钥片段在所述第一密钥中的位置确定的多个所述子密钥片段的排列顺序;依据多个所述子密钥片段中每个所述子密钥片段对应的序号对多个所述子密钥片段拼接,得到所述第一密钥。
在本申请的一些实施例中,所述目标压缩包可以为根文件系统的压缩包,其中,在所述目标压缩包为所述根文件系统的压缩包的情况下,确定第一密钥的具体方式为:在目标设备启动时,从所述目标设备上运行的linux系统内核的内核代码段中获取所述第一密钥。需要说明的是,linux系统内核在从内核代码段中获取第一密钥时处于内核态。
步骤S304,依据预设变换规则和第一密钥,对第一密钥进行变换,得到第二密钥;
步骤S306,确定目标压缩包对应的预设解密算法,并依据第二密钥和预设解密算法对目标压缩包进行解密。
在上述目标平台为linux系统,目标文件为根文件时,采用图3中所示的文件解密方法对目标文件解密的具体流程如图4所示,包括以下步骤:在步骤S402中,启动目标设备;在步骤S404中,启动运行在目标设备上的linux系统内核;在步骤S406中,处于内核态的linux系统内核从对应的内核代码段中读取第一密钥;在步骤S408中,对第一密钥进行变换的到第二密钥,并采用第二密钥对根文件系统的压缩包进行解密和解压缩,得到根文件系统的系统文件;在步骤S410中,挂载根文件系统。
在本申请的一些实施例中,linux系统中根文件的一个完整的加密及解密流程如下:在根文件系统生成之后对其进行压缩并加密,加密时使用随机数生成工具随机产生32字节的密钥,保证每次编译加密时使用的密钥都不相同。密钥产生后,分成若干个密钥文件,并分段嵌入到内核编译的代码段中,同时导出内存地址。对密钥进行固定算法变换,生成新的密钥,保证加密所用密钥不直接暴漏。使用新密钥对根文件系统压缩文件进行加密。加密算法不限,能够对文件进行加密均可。将加解密算法和密钥变换算法编译进linux内核。同时在内核配置文件中,增加一个自定义的内核加解密配置选项并打开,使内核中启用解密流程。在linux内核中根文件系统解压流程之前增加解密流程,并且用内核配置选项宏定义包裹,来区分是否开启解密流程。解密时先从内核代码段中获取各密钥字段,再对其进行拼接,然后按照加密时相同的算法对密钥进行变换,获取到真实密钥。最后使用真实密钥完成对加密根文件系统解密,接下来进行解压挂载。
通过上述流程,可以保护嵌入式根文件系统不会直接暴露,对根文件系统起到保护的作用。同时每次打包镜像时生成密钥,并且对密钥进行分段存储及再次变换加密,能够有效防止密钥的泄露。
根据本发明实施例,提供了一种文件加密装置的装置实施例。图5是根据本发明实施例提供的文件加密装置,如图5所示,文件加密装置包括:处理模块50,用于确定第一密钥,其中,第一密钥为随机生的预设长度字符串;变换模块52,用于基于预设变换规则,对第一密钥进行变换,得到第二密钥;加密模块54,用于依据第二密钥和预设加密算法,对目标文件进行加密,并将第一密钥,预设加密算法和预设变换规则写入目标平台中的用于内核编译的代码段中,其中,第一密钥,预设加密算法和预设变换规则用于对加密后的目标文件进行解密。
需要说明的是,图5中所示的文件加密装置可用于执行图1中所示的文件加密方法,因此,对图1中所示的文件加密方法的相关解释说明也适用于图5中所示的文件加密装置中,在此不再赘述。
根据本发明实施例,提供了一种系统平台的系统平台实施例。该系统平台包括加密模块,解密模块,其中,加密模块,用于确定第一密钥,其中,第一密钥为随机生的预设长度字符串;基于预设变换规则,对第一密钥进行变换,得到第二密钥;依据第二密钥和预设加密算法,对目标文件进行加密,并将第一密钥,预设加密算法和预设变换规则写入目标平台中的用于内核编译的代码段中,其中,第一密钥,预设加密算法和预设变换规则用于对加密后的目标文件进行解密;解密模块,用于确定目标压缩包对应的预设变换规则,预设解密算法和第一密钥,其中,目标压缩包为对目标文件压缩后得到的;依据预设变换规则和第一密钥,对第一密钥进行变换,得到第二密钥;确定目标压缩包对应的预设解密算法,并依据第二密钥和预设解密算法对目标压缩包进行解密。
根据本发明实施例,提供了一种非易失性存储介质的实施例。非易失性存储介质包括存储的程序,其中,在程序运行时控制非易失性存储介质所在设备执行如下文件加密方法:确定第一密钥,其中,第一密钥为随机生成的预设长度字符串;基于预设变换规则,对第一密钥进行变换,得到第二密钥;依据第二密钥和预设加密算法,对目标文件进行加密,并将第一密钥,预设加密算法和预设变换规则写入目标平台中的用于内核编译的代码段中,其中,写入代码段中的第一密钥,预设加密算法和预设变换规则用于对加密后的目标文件进行解密。
根据本发明实施例,提供了另一种非易失性存储介质的实施例。非易失性存储介质包括存储的程序,其中,在程序运行时控制非易失性存储介质所在设备执行如下文件解密方法:确定目标压缩包对应的预设变换规则,预设解密算法和第一密钥;依据预设变换规则和第一密钥,对第一密钥进行变换,得到第二密钥;确定目标压缩包对应的预设解密算法,并依据第二密钥和预设解密算法对目标压缩包进行解密。
根据本发明实施例,提供了一种处理器的实施例。处理器用于运行程序,其中,程序运行时执行如下文件加密方法:确定第一密钥,其中,第一密钥为随机生成的预设长度字符串;基于预设变换规则,对第一密钥进行变换,得到第二密钥;依据第二密钥和预设加密算法,对目标文件进行加密,并将第一密钥,预设加密算法和预设变换规则写入目标平台中的用于内核编译的代码段中,其中,写入代码段中的第一密钥,预设加密算法和预设变换规则用于对加密后的目标文件进行解密。
根据本发明实施例,提供了另一种处理器的实施例。处理器用于运行程序,其中,程序运行时执行如下文件解密方法:确定目标压缩包对应的预设变换规则,预设解密算法和第一密钥;依据预设变换规则和第一密钥,对第一密钥进行变换,得到第二密钥;确定目标压缩包对应的预设解密算法,并依据第二密钥和预设解密算法对目标压缩包进行解密。
根据本发明实施例,提供了一种计算机设备的实施例。图6是根据本发明实施例示出的一种计算机设备600的结构示意图。
在示例性实施例中,还提供了一种包括指令的计算机可读存储介质,例如包括指令的存储器604,上述指令可由装置600的处理器602执行以完成以下文件加密方法:确定第一密钥,其中,第一密钥为随机生成的预设长度字符串;基于预设变换规则,对第一密钥进行变换,得到第二密钥;依据第二密钥和预设加密算法,对目标文件进行加密,并将第一密钥,预设加密算法和预设变换规则写入目标平台中的用于内核编译的代码段中,其中,写入代码段中的第一密钥,预设加密算法和预设变换规则用于对加密后的目标文件进行解密。
在本申请的一些实施例中,上述指令还可由装置600的处理器602执行以完成以下文件加密方法:确定目标压缩包对应的预设变换规则,预设解密算法和第一密钥;依据预设变换规则和第一密钥,对第一密钥进行变换,得到第二密钥;确定目标压缩包对应的预设解密算法,并依据第二密钥和预设解密算法对目标压缩包进行解密。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
在本发明的上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
在本申请所提供的几个实施例中,应该理解到,所揭露的技术内容,可通过其它的方式实现。其中,以上所描述的装置实施例仅仅是示意性的,例如所述单元的划分,可以为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,单元或模块的间接耦合或通信连接,可以是电性或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可为个人计算机、服务器或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。

Claims (13)

1.一种文件加密方法,其特征在于,包括:
确定第一密钥,其中,所述第一密钥为随机生成的预设长度字符串;
基于预设变换规则,对所述第一密钥进行变换,得到第二密钥;
依据所述第二密钥和预设加密算法,对目标文件进行加密,并将所述第一密钥,所述预设加密算法和所述预设变换规则写入目标平台中的用于内核编译的代码段中,其中,写入所述代码段中的所述第一密钥,所述预设加密算法和所述预设变换规则用于对加密后的所述目标文件进行解密。
2.根据权利要求1所述的文件加密方法,其特征在于,将所述第一密钥写入目标平台中的用于内核编译的代码段中包括:
将所述第一密钥分为预设数量个子密钥片段;
将所述预设数量个子密钥片段中的每个子密钥片段嵌入所述代码段中的指定位置中,并导出所述代码段对应的内存地址,其中,所述内存地址用于确定所述每个子密钥片段嵌入的所述指定位置。
3.根据权利要求2所述的文件加密方法,其特征在于,将所述预设数量个子密钥片段中的每个子密钥片段嵌入所述代码段中的指定位置中包括:
依据所述子密钥片段在所述第一密钥中的位置对所述预设数量个子密钥片段进行排序,并确定每个所述子密钥片段对应的序号;
将所述预设数量个子密钥片段随机分配到所述指定位置中,并记录每个所述指定位置中嵌入的所述子密钥片段对应的所述序号,其中,每个所述指定位置嵌入一段所述子密钥片段。
4.根据权利要求1所述的文件加密方法,其特征在于,依据所述第二密钥和预设加密算法,对目标文件进行加密包括:
对所述目标文件进行压缩,得到目标压缩包;
依据所述第二密钥和所述预设加密算法,对所述目标压缩包进行加密;
将加密后的所述目标压缩包写入镜像文件。
5.根据权利要求1所述的文件加密方法,其特征在于,依据所述第二密钥和预设加密算法,对目标文件进行加密,并将所述第一密钥,所述预设加密算法和所述预设变换规则写入目标平台中的用于内核编译的代码段中之后,所述文件加密方法还包括:
在所述目标平台的内核配置文件中增加内核加解密配置选项。
6.一种文件解密方法,其特征在于,包括:
确定目标压缩包对应的预设变换规则,预设解密算法和第一密钥;
依据所述预设变换规则和所述第一密钥,对所述第一密钥进行变换,得到第二密钥;
确定所述目标压缩包对应的预设解密算法,并依据所述第二密钥和所述预设解密算法对所述目标压缩包进行解密。
7.根据权利要求6所述的文件解密方法,其特征在于,确定目标压缩包对应的第一密钥包括:
确定目标平台中的用于内核编译的代码段所对应的内存地址,其中,所述内存地址用于确定嵌入所述代码段中的多个第一密钥的子密钥片段的位置;
依据所述内存地址,从所述代码段中提取多个所述子密钥片段;
拼接多个所述子密钥片段,得到所述第一密钥。
8.根据权利要求7所述的文件解密方法,其特征在于,拼接多个所述子密钥片段,得到所述第一密钥包括:
确定多个所述子密钥片段中每个所述子密钥片段对应的序号,其中,所述序号为所述子密钥片段在密钥排列顺序中的序号,所述密钥排列顺序为依据所述子密钥片段在所述第一密钥中的位置确定的多个所述子密钥片段的排列顺序;
依据多个所述子密钥片段中每个所述子密钥片段对应的序号对多个所述子密钥片段拼接,得到所述第一密钥。
9.根据权利要求6所述的文件解密方法,其特征在于,所述目标压缩包为根文件系统的压缩包,其中,在所述目标压缩包为所述根文件系统的压缩包的情况下,确定第一密钥包括:
在目标设备启动时,从所述目标设备上运行的linux系统内核的内核代码段中获取所述第一密钥。
10.一种文件加密装置,其特征在于,包括:
处理模块,用于确定第一密钥,其中,所述第一密钥为随机生的预设长度字符串;
变换模块,用于基于预设变换规则,对所述第一密钥进行变换,得到第二密钥;
加密模块,用于依据所述第二密钥和预设加密算法,对目标文件进行加密,并将所述第一密钥,所述预设加密算法和所述预设变换规则写入目标平台中的用于内核编译的代码段中,其中,所述第一密钥,所述预设加密算法和所述预设变换规则用于对加密后的所述目标文件进行解密。
11.一种系统平台,其特征在于,包括加密模块,解密模块,其中,
所述加密模块,用于确定第一密钥,其中,所述第一密钥为随机生的预设长度字符串;基于预设变换规则,对所述第一密钥进行变换,得到第二密钥;依据所述第二密钥和预设加密算法,对目标文件进行加密,并将所述第一密钥,所述预设加密算法和所述预设变换规则写入目标平台中的用于内核编译的代码段中,其中,所述第一密钥,所述预设加密算法和所述预设变换规则用于对加密后的所述目标文件进行解密;
所述解密模块,用于确定目标压缩包对应的预设变换规则,预设解密算法和第一密钥,其中,所述目标压缩包为对所述目标文件压缩后得到的;依据所述预设变换规则和所述第一密钥,对所述第一密钥进行变换,得到第二密钥;确定所述目标压缩包对应的预设解密算法,并依据所述第二密钥和所述预设解密算法对所述目标压缩包进行解密。
12.一种非易失性存储介质,其特征在于,所述非易失性存储介质包括存储的程序,其中,在所述程序运行时控制所述非易失性存储介质所在设备执行权利要求1至5中任意一项所述文件加密方法。
13.一种处理器,其特征在于,所述处理器用于运行程序,其中,所述程序运行时执行权利要求1至5中任意一项所述文件加密方法。
CN202111679240.5A 2021-12-31 2021-12-31 文件加密方法、装置、系统平台及文件解密方法 Pending CN114329568A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202111679240.5A CN114329568A (zh) 2021-12-31 2021-12-31 文件加密方法、装置、系统平台及文件解密方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202111679240.5A CN114329568A (zh) 2021-12-31 2021-12-31 文件加密方法、装置、系统平台及文件解密方法

Publications (1)

Publication Number Publication Date
CN114329568A true CN114329568A (zh) 2022-04-12

Family

ID=81022733

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202111679240.5A Pending CN114329568A (zh) 2021-12-31 2021-12-31 文件加密方法、装置、系统平台及文件解密方法

Country Status (1)

Country Link
CN (1) CN114329568A (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117332429A (zh) * 2023-08-29 2024-01-02 深圳万物安全科技有限公司 磁盘加解密方法、装置、终端设备以及存储介质

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117332429A (zh) * 2023-08-29 2024-01-02 深圳万物安全科技有限公司 磁盘加解密方法、装置、终端设备以及存储介质

Similar Documents

Publication Publication Date Title
US20160117518A1 (en) File Encryption/Decryption Device And File Encryption/Decryption Method
KR102433011B1 (ko) Apk 파일 보호 방법, 이를 수행하는 apk 파일 보호 시스템, 및 이를 저장하는 기록매체
CN106599629B (zh) 一种安卓应用程序加固方法及装置
CN102236757A (zh) 一种适用于Android系统的软件保护方法及系统
CN105468940B (zh) 软件保护方法及装置
CN107273723B (zh) 一种基于so文件加壳的Android平台应用软件保护方法
CN108229144B (zh) 一种应用程序的验证方法、终端设备及存储介质
JP2012118956A (ja) インデックステーブル基盤のコード暗号化及び復号化装置及びその方法
CN104217175A (zh) 一种数据读写方法和装置
CN111596938A (zh) 嵌入式设备固件安全升级方法、系统、终端及存储介质
EP1830240A1 (en) Memory information protecting system, semiconductor memory, and method for protecting memory information
WO2011134207A1 (zh) 软件保护方法
US8015416B2 (en) Memory information protection system and methods
CN111404682A (zh) 一种Android环境密钥分段处理方法及装置
CN108134673A (zh) 一种生成白盒库文件的方法及装置
CN101710307A (zh) 一种数码设备的数据安全保护方法
CN115051788A (zh) 模型加密方法、装置、存储介质以及电子设备
CN114329568A (zh) 文件加密方法、装置、系统平台及文件解密方法
CN111866864B (zh) 基于无线ap实现针对云平台证书的加密存储及安全使用管理的方法、装置及存储介质
CN110309083B (zh) 一种存储器数据加扰方法
CN110932853B (zh) 一种基于可信模块的密钥管理装置和密钥管理方法
CN112199730A (zh) 一种终端上应用数据的处理方法、装置及电子设备
CN108173906A (zh) 安装包下载方法、装置、存储介质及电子设备
CN115225933B (zh) 一种视频文件的加密方法、解密方法、服务器和终端设备
CN115794683A (zh) 上电写保护方法及装置、设备、存储介质

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination