一种终端电子文件安全保护方法与流程
未命名
09-29
阅读:68
评论:0
1.本发明涉及数据加密技术领域,特别是涉及一种终端电子文件安全保护方法。
背景技术:
2.目前,文件数据在网上进行传输时,为了防止数据被窃密、篡改和伪造,必须对传输文件内容进行加密,以保证信息在互联网上进行安全传输当前端读取文件时,服务端文件是通过加密预保存的,只能拉取加密文件内容,确保在传输过程中保证信息的安全;当前端编辑向服务端保存文件时,前端会对编辑后的文件进行动态密钥加密,再把加密后的文件传输给服务端保存。
3.目前,发明人发现在处理大文件时,如果使用标准加密方法(比如des)加密整个文件流,存在计算量大耗时长且难以保证文件的实时传输的问题。
技术实现要素:
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.图1为一个实施例中终端电子文件安全保护方法的第一示意性流程图;
40.图2为一个实施例中根据区间,对原始压缩文件进行加密处理的步骤的示意性流程图;
41.图3为一个实施例中对原始压缩文件进行数据处理的步骤的第一示意性流程图;
42.图4为一个实施例中对原始压缩文件进行数据处理的步骤的第二示意性流程图;
43.图5为一个实施例中终端电子文件安全保护装置的结构框图。
具体实施方式
44.为了便于理解本技术,下面将参照相关附图对本技术进行更全面的描述。附图中给出了本技术的实施例。但是,本技术可以以许多不同的形式来实现,并不限于本文所描述的实施例。相反地,提供这些实施例的目的是使本技术的公开内容更加透彻全面。
45.除非另有定义,本文所使用的所有的技术和科学术语与属于本技术的技术领域的技术人员通常理解的含义相同。本文中在本技术的说明书中所使用的术语只是为了描述具体的实施例的目的,不是旨在于限制本技术。
46.在后续的描述中,使用用于表示元件的诸如“模块”、“部件”或“单元”的后缀仅为了有利于本技术的说明,其本身并没有特定的意义。因此,“模块”与“部件”可以混合地使用。
47.在此使用时,单数形式的“一”、“一个”和“所述/该”也可以包括复数形式,除非上下文清楚指出另外的方式。还应当理解的是,术语“包括/包含”或“具有”等指定所陈述的特征、整体、步骤、操作、组件、部分或它们的组合的存在,但是不排除存在或添加一个或更多个其他特征、整体、步骤、操作、组件、部分或它们的组合的可能性。
48.目前,文件在管理配置过程中,可以对文件进行加密算法选型和密码设置。对文件算法进行抽象管理,在管理端进行算法编写后,通过后台对算法进行管理,同时在算法支持的情况下,可以随时切换算法的对称/非对称加密方式。
49.对于对称加密而言,对称加密是需要对加密和解密使用相同密钥的加密算法。由于其速度快,对称性加密通常在消息发送方需要加密大量数据时使用。对称性加密也称为密钥加密。所谓对称,就是采用这种加密方法的双方使用方式用同样的密钥进行加密和解密。密钥是控制加密及解密过程的指令。算法是一组规则,规定如何进行加密和解密。因此加密的安全性不仅取决于加密算法本身,密钥管理的安全性更是重要。因为加密和解密都使用同一个密钥,密钥传输存在安全性低的问题。
50.与对称加密算法不同,非对称加密算法需要两个密钥:公开密钥和私有密钥。公开密钥与私有密钥是一对,如果用公开密钥对数据进行加密,只有用对应的私有密钥才能解密;如果用私有密钥对数据进行加密,那么只有用对应的公开密钥才能解密。数据的加密和解密过程是通过密码体制和密钥来控制的。密码体制的安全性依赖于密钥的安全性,现代密码学不追求加密算法的保密性,而是追求加密算法的完备,即:使攻击者在不知道密钥的情况下,没有办法从算法找到突破口。根据加解密算法所使用的密钥是否相同,或能否由加(解)密密钥简单地求得解(加)密密钥。密码体制可分为对称密码体制和非对称密码体制。非对称密码体制也叫公钥加密技术,该技术是针对私钥密码体制(对称加密算法)的缺陷被提出来的。与对称密码体制不同,公钥加密系统中,加密和解密是相对独立的,加密和解密会使用两把不同的密钥,加密密钥(公开密钥)向公众公开,谁都可以使用,解密密钥(秘密密钥)只有解密人自己知道,非法使用者根据公开的加密密钥无法推算出解密密钥,这样就大大加强了信息保护的力度。
51.然而不管采用上述的对称/非对称加密方式,在大文件加密传输的过程中,均存在实时性差的问题。
52.而本技术提供的终端电子文件安全保护方法,可以有效解决上述问题。
53.在一个实施例中,如图1所示,提供了一种终端电子文件安全保护方法,包括:
54.s110,对待加密文件进行压缩,得到原始压缩文件;
55.其中,待加密文件可以为体积较大的电子文件。压缩可以本领域任意一种压缩方式,例如lz4压缩算法。
56.具体的,待加密文件可以是移动端从服务器下载得到。对待加密文件进行压缩动作的步骤可以为在服务器上进行。通过将待加密文件进行压缩以获取更好加密及解密效率。
57.s120,获取原始压缩文件的体积值,并确定原始压缩文件的体积值所落入的目标区间;
58.其中,目标区间可以预先划定多个。在一个具体示例中,目标区间的数量为3个。而根据落入的目标区间的不同,进行不同的加密处理操作。
59.s130,根据目标区间,对原始压缩文件进行加密处理,得到加密字节流和文件头部信息;
60.具体的,加密处理的手段可以为任意一种,如可以对原始压缩文件进行aes256加密处理。加密的密钥也可以动态修改,动态规则可通过人为定期修改密码,也可依据文件变更频率对应自动修改,每变更一次文档,加解密动态自动修改一次。文件密钥动态通过授权验证后在线获取,加解密完后密钥不保存本地。
61.需要说明的是,对原始压缩文件进行加密处理可以进行整体文件加密,也可以对原始压缩文件的部分进行加密。可选地,可以根据目标区间,进行选择部分加密或整体进行加密。在一个具体示例中,文件头部信息可以包括开始加密的节点下标、结束加密的节点下标和被加密文件段的明文的节点下标,进一步的,该文件头部信息还可以包括件加密部分md5值、原始文件体积、文件类型中的任意一种或任意多种。
62.s140,根据加密字节流和文件头部信息,生成加密文件。
63.具体的,在部分加密的情况下,可以在加密完成后,在加密字节流开头拼接加密标识符,然后再与原始文件进行合并,最终结合文件头部信息生成加密文件。在整体加密的情况下,在加密字节流开头拼接加密标识符,再结合文件头部信息生成加密文件。加密文件的格式可以为“加密标识符+[文件头部信息长度(即头部信息json的长度)]+头部信息json密文+加密后的文件字节流+加密结束标识符”。需要说明的是,上述加密文件的格式仅为一个具体示例,加密文件的格式还可以是该格式的变形。
[0064]
上述终端电子文件安全保护方法,通过对待加密文件进行压缩,以减少文件体积从而节约加密的计算量;而后根据原始压缩文件的体积大小,分类型的对原始压缩文件进行加密处理,以得到加密字节流以及文件头部信息,最终生成加密文件。从而可以实现快速高效的加密处理,保证文件的实时传输。
[0065]
在其中一个实施例中,如图2所示,根据区间,对原始压缩文件进行加密处理的步骤,包括:
[0066]
s210,在目标区间为第一区间的情况下,从原始压缩文件中选取预设大小的文件片段;
[0067]
具体的,第一区间可以为大于第一预设值的区间范围。文件片段的预设大小可以为100m、120m或150m,在此不做具体限定。以预设大小为100m为例,从原始压缩文件中可以选取前100m的文件片段,也可以从原始压缩文件的中间位置选取100m的文件片段。
[0068]
s220,对预设大小的文件片段进行分割处理,得到多个第一分割片段;
[0069]
具体的,分割处理可以为按照随机大小的分割,也可以平均分割。在一个具体示例中,对预设大小的文件片段进行平均分割,第一分割片段的数量可以随机生成,也可以预设设定。
[0070]
s230,基于各第一分割片段,选择第一目标分割片段,并对第一目标分割片段进行加密处理,得到加密字节流和文件头部信息。
[0071]
具体的,第一目标分割片段可以随机选取,也可以为固定顺序号的目标分割片段。在其中一个实施例中,选择第一目标分割片段的步骤,包括:生成随机数,并根据随机数在各第一分割片段中匹配该第一目标分割片段。例如随机生成小于5的正整数,若随机得到的数字为3,则选取顺序为第三的第一分割片段作为第一目标分割片段。
[0072]
在其中一个实施例中,如图3所示,对原始压缩文件进行数据处理的步骤,包括:
[0073]
s310,在目标区间为第二区间的情况下,对原始压缩文件进行分割处理,得到多个第二分割片段;其中,第二区间的上限值小于第一区间的下限值;
[0074]
具体的,第二区间可以为小于或等于第一预设值,且大于第二预设值的区间范围。第一预设值大于第二预设值。在目标区间为第二区间的情况下,对原始压缩文件的分割处理可以为按照随机大小的分割,也可以平均分割。在一个具体示例中,对预设大小的文件片段进行平均分割,第一分割片段的数量可以随机生成,也可以预设设定。
[0075]
s320,基于各第二分割片段,选择第二目标分割片段,并对第二目标分割片段进行加密处理,得到加密字节流和文件头部信息。
[0076]
具体的,第二目标分割片段可以随机选取,也可以为固定顺序号的目标分割片段。在其中一个实施例中,选择第二目标分割片段的步骤,包括:生成随机数,并根据随机数在各第二分割片段中匹配该第二目标分割片段。例如随机生成小于5的正整数,若随机得到的数字为3,则选取顺序为第三的第二分割片段作为第二目标分割片段。
[0077]
在其中一个实施例中,对原始压缩文件进行数据处理的步骤,包括:
[0078]
在目标区间为第三区间的情况下,对原始压缩文件进行加密处理,得到加密字节流和文件头部信息;其中,第三区间的上限值小于第二区间的下限值。
[0079]
具体的,第三区间为小于或等于第二预设值的区间范围,在目标区间为第三区间的情况下,对原始压缩文件整体进行加密处理。
[0080]
在一个实施例中,如图4所示,还提供了一种终端电子文件安全保护方法,包括:
[0081]
s410,判断接收到的当前文件是否为加密文件;加密文件包括文件头部信息;
[0082]
s420,在判断的结果为是的情况下,基于文件头部信息对当前文件进行解密,得到解密文件。
[0083]
具体的,解密的过程可以为先读取加密文件中存储在头部信息长度,按照长度读取头部信息加密段,对其进行解密(如可以为aes256)后,获取其中的原始文件大小(也即待加密文件的大小),若原始文件大小小于第四预设值,移除加密标识符后,对整个加密段进行解密处理,最终还原成明文文件。若原始文件大于或等于第四预设值,则获取头信息中记录的开始加密节点和结束加密节点,并在移除所有加密标识符后,按照上述两个节点截取文件的加密段进行解密(例如可以为aes256)处理,当解密成功后再将明文段和解密后的明文段的i/o流进行拼接,生成明文文件。需要说明的是,该明文文件是压缩文件,最终通过解
压得到最初始的待加密文件(或称原始文件)。
[0084]
在其中一个实施例中,基于文件头部信息对当前文件进行解密,得到解密文件的步骤,包括:
[0085]
获取当前文件的使用状态;
[0086]
在使用状态为立即使用的情况下,读取当前文件的文件头部信息;
[0087]
根据文件头部信息,读取加密字节流,并对加密字节流进行解密,得到明文文件。
[0088]
具体的,如果在下载完成后,需要立即使用该文件,则会进行解密。解密的方法可以为本领域任意一种,如调用sandboxhelper.decryptfile方法。解密成功后,会把明文文件缓存到明文缓存目录内,并返回解密后的文件对象;解密失败,返回密文源文件对象。
[0089]
在一个实施例中,若在下载完成后,不需要立即使用该文件,此时不会对密文文件做任何处理,直接保存到指定存储目录并返回该文件对象。
[0090]
在一个实施例中,如图5所示,本发明实施例还提供了一种终端电子文件安全保护装置,包括:
[0091]
压缩模块,用于对待加密文件进行压缩,得到原始压缩文件;
[0092]
确定模块,用于获取原始压缩文件的体积值,并确定原始压缩文件的体积值所落入的目标区间;
[0093]
处理模块,用于根据目标区间,对原始压缩文件进行加密处理,得到加密字节流和文件头部信息;
[0094]
生成模块,用于根据加密字节流和文件头部信息,生成加密文件。
[0095]
在其中一个实施例中,处理模块还用于在目标区间为第一区间的情况下,从原始压缩文件中选取预设大小的文件片段;对预设大小的文件片段进行分割处理,得到多个第一分割片段;基于各第一分割片段,选择第一目标分割片段,并对第一目标分割片段进行加密处理,得到加密字节流和文件头部信息。
[0096]
在其中一个实施例中,处理模块还用于生成随机数,并根据随机数在各第一分割片段中匹配得到第一目标分割片段。
[0097]
在其中一个实施例中,处理模块还用于在目标区间为第二区间的情况下,对原始压缩文件进行分割处理,得到多个第二分割片段;其中,第二区间的上限值小于第一区间的下限值;
[0098]
基于各第二分割片段,选择第二目标分割片段,并对第二目标分割片段进行加密处理,得到加密字节流和文件头部信息。
[0099]
在其中一个实施例中,处理模块还用于在目标区间为第三区间的情况下,对原始压缩文件进行加密处理,得到加密字节流和文件头部信息;其中,第三区间的上限值小于第二区间的下限值。
[0100]
在一个实施例中,还包括:判断模块,用于判断接收到的当前文件是否为加密文件;其中,加密文件为根据如上述任一项终端电子文件安全保护方法进行加密得到;加密文件包括文件头部信息;
[0101]
解密模块,用于在判断的结果为是的情况下,基于文件头部信息对当前文件进行解密,得到解密文件。
[0102]
在其中一个实施例中,解密模块还用于获取当前文件的使用状态;在使用状态为
立即使用的情况下,读取当前文件的文件头部信息;根据文件头部信息,读取加密字节流,并对加密字节流进行解密,得到明文文件。
[0103]
关于终端电子文件安全保护装置的具体限定可以参见上文中对于终端电子文件安全保护方法的限定,在此不再赘述。上述终端电子文件安全保护装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。需要说明的是,本技术实施例中对模块的划分是示意性的,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。
[0104]
为了进一步阐述本技术的技术方案,下面特结合一具体示例进行进一步说明文件传输的加密终端电子文件安全保护方法,最终实现无感加密传输:
[0105]
可根据实际情况,动态的传入aes256算法的加密/解密密钥。后续沙箱sdk会根据该密钥动态的对文件进行加密/解密处理。
[0106]
当上传的是明文文件时,沙箱sdk通过sandboxhelper.isencryptfile方法判断文件为明文文件,对文件不进行任何处理,直接返回源文件。
[0107]
当上传的是密文文件时,沙箱sdk通过sandboxhelper.isencryptfile方法判断文件为密文文件,对文件进行解密处理,解密成功后,返回解密后的明文文件;解密失败,直接返回密文源文件。
[0108]
判断到下载的文件是明文文件时,会先将文件备份到沙箱sdk的明文缓存目录内,然后sdk会通过sandboxhelper.encryptionfile方法对原路径的明文文件进行加密处理,先判断文件的体积,若文件的体积在10m以内(少于等于10m)则会进行全文件aes256算法加密处理,若体积在100m以内(大于10m,少于等于100m),则你会生成一个范围在1到4的随机数,并将文件分成4段,按照随机数取某一段进行aes256算法加密处理;若文件大于100m,则会将文件前100m,分成4段,按照随机数取某一段进行aes256算法加密处理。
[0109]
加密成功后,会判断isusenow参数(即使用状态是否为立即使用),若设置为true即表示需要立即使用该文件,sdk返回的是缓存在沙箱内部的明文源文件对象,加密后的文件对象则会依据传入的存储路径进行存储;加密失败,保存的是下载的明文源文件,返回的也是该明文文件对象。若isusenow设置为false,则返回的是加密成功后文件对象;加密失败,返回的是明文源文件对象。
[0110]
判断到下载的文件是密文文件时,沙箱sdk通过isusenow参数判断是否立即使用该文件。先获取密文文件i/o流(即上述加密文件)中的头部信息,再根据头部信息中的加密开始下标、加密结束下标、明文段结束下标等信息,获取到加密段的i/o流数据(即加密字节流)。
[0111]
若isusenow设置为true时,即需要在下载完成后,立即使用该文件,沙箱sdk会调用sandboxhelper.decryptfile方法进行解密,解密成功后,会把明文文件缓存到沙箱内的明文缓存目录内,并返回解密后的文件对象;解密失败,返回密文源文件对象。若isusenow为false时,表示不需要立即使用该文件,此时沙箱sdk不会对密文文件做任何处理,直接保存到指定存储目录并返回该文件对象。
[0112]
在一个实施例中,提供了一种计算机设备,包括存储器和处理器,存储器中存储有计算机程序,该处理器执行计算机程序时实现以下步骤:
[0113]
对待加密文件进行压缩,得到原始压缩文件;
[0114]
获取原始压缩文件的体积值,并确定原始压缩文件的体积值所落入的目标区间;
[0115]
根据目标区间,对原始压缩文件进行加密处理,得到加密字节流和文件头部信息;
[0116]
根据加密字节流和文件头部信息,生成加密文件。
[0117]
在一个实施例中,处理器执行对原始压缩文件进行加密处理的步骤时还实现以下步骤:
[0118]
在目标区间为第一区间的情况下,从原始压缩文件中选取预设大小的文件片段;
[0119]
对预设大小的文件片段进行分割处理,得到多个第一分割片段;
[0120]
基于各第一分割片段,选择第一目标分割片段,并对第一目标分割片段进行加密处理,得到加密字节流和文件头部信息。
[0121]
在一个实施例中,处理器执行选择第一目标分割片段的步骤时还实现以下步骤:
[0122]
生成随机数,并根据随机数在各第一分割片段中匹配得到第一目标分割片段。
[0123]
在一个实施例中,处理器执行对原始压缩文件进行数据处理的步骤时还实现以下步骤:
[0124]
在目标区间为第二区间的情况下,对原始压缩文件进行分割处理,得到多个第二分割片段;其中,第二区间的上限值小于第一区间的下限值;
[0125]
基于各第二分割片段,选择第二目标分割片段,并对第二目标分割片段进行加密处理,得到加密字节流和文件头部信息。
[0126]
在一个实施例中,处理器执行对原始压缩文件进行数据处理的步骤时还实现以下步骤:
[0127]
在目标区间为第三区间的情况下,对原始压缩文件进行加密处理,得到加密字节流和文件头部信息;其中,第三区间的上限值小于第二区间的下限值。
[0128]
在一个实施例中,处理器执行计算机程序时实现以下步骤:
[0129]
判断接收到的当前文件是否为加密文件;其中,加密文件为根据如上述任一项终端电子文件安全保护方法进行加密得到;加密文件包括文件头部信息;
[0130]
在判断的结果为是的情况下,基于文件头部信息对当前文件进行解密,得到解密文件。
[0131]
在一个实施例中,处理器执行基于文件头部信息对当前文件进行解密,得到解密文件的步骤实现以下步骤:
[0132]
获取当前文件的使用状态;
[0133]
在使用状态为立即使用的情况下,读取当前文件的文件头部信息;
[0134]
根据文件头部信息,读取加密字节流,并对加密字节流进行解密,得到明文文件。
[0135]
在一个实施例中,本发明实施例还提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现以下步骤。
[0136]
对待加密文件进行压缩,得到原始压缩文件;
[0137]
获取原始压缩文件的体积值,并确定原始压缩文件的体积值所落入的目标区间;
[0138]
根据目标区间,对原始压缩文件进行加密处理,得到加密字节流和文件头部信息;
[0139]
根据加密字节流和文件头部信息,生成加密文件。
[0140]
在一个实施例中,根据区间,对原始压缩文件进行加密处理的步骤被处理器执行
时还实现以下步骤:
[0141]
在目标区间为第一区间的情况下,从原始压缩文件中选取预设大小的文件片段;
[0142]
对预设大小的文件片段进行分割处理,得到多个第一分割片段;
[0143]
基于各第一分割片段,选择第一目标分割片段,并对第一目标分割片段进行加密处理,得到加密字节流和文件头部信息。
[0144]
在一个实施例中,选择第一目标分割片段的步骤被处理器执行时还实现以下步骤:
[0145]
生成随机数,并根据随机数在各第一分割片段中匹配得到第一目标分割片段。
[0146]
在一个实施例中,对原始压缩文件进行数据处理的步骤被处理器执行时还实现以下步骤:
[0147]
在目标区间为第二区间的情况下,对原始压缩文件进行分割处理,得到多个第二分割片段;其中,第二区间的上限值小于第一区间的下限值;
[0148]
基于各第二分割片段,选择第二目标分割片段,并对第二目标分割片段进行加密处理,得到加密字节流和文件头部信息。
[0149]
在一个实施例中,对原始压缩文件进行数据处理的步骤被处理器执行之后还实现以下步骤:
[0150]
在目标区间为第三区间的情况下,对原始压缩文件进行加密处理,得到加密字节流和文件头部信息;其中,第三区间的上限值小于第二区间的下限值。
[0151]
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:
[0152]
判断接收到的当前文件是否为加密文件;;加密文件包括文件头部信息;
[0153]
在判断的结果为是的情况下,基于文件头部信息对当前文件进行解密,得到解密文件。
[0154]
在一个实施例中,基于文件头部信息对当前文件进行解密,得到解密文件的步骤被处理器执行时还实现以下步骤:
[0155]
获取当前文件的使用状态;
[0156]
在使用状态为立即使用的情况下,读取当前文件的文件头部信息;
[0157]
根据文件头部信息,读取加密字节流,并对加密字节流进行解密,得到明文文件。
[0158]
本技术实施例在具体实现时,可以参阅上述各个实施例,具有相应的技术效果。
[0159]
可以理解的是,本文描述的这些实施例可以用硬件、软件、固件、中间件、微码或其组合来实现。对于硬件实现,处理单元可以实现在一个或多个专用集成电路(application specific integrated circuits,asic)、数字信号处理器(digital signal processing,dsp)、数字信号处理设备(dsp device,dspd)、可编程逻辑设备(programmable logic device,pld)、现场可编程门阵列(field-programmable gate array,fpga)、通用处理器、控制器、微控制器、微处理器、用于执行本技术所述功能的其它电子单元或其组合中。
[0160]
对于软件实现,可通过执行本文所述功能的单元来实现本文所述的技术。软件代码可存储在存储器中并通过处理器执行。存储器可以在处理器中或在处理器外部实现。
[0161]
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员
可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本技术的范围。
[0162]
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
[0163]
在本技术所提供的实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述模块的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个模块或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
[0164]
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
[0165]
另外,在本技术各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
[0166]
所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本技术实施例的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本技术各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、rom、ram、磁碟或者光盘等各种可以存储程序代码的介质。需要说明的是,在本文中,诸如“第一”和“第二”等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个
……”
限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
[0167]
以上所述仅是本技术的具体实施方式,使本领域技术人员能够理解或实现本技术。对这些实施例的多种修改对本领域的技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本技术的精神或范围的情况下,在其它实施例中实现。因此,本技术将不会被限制于本文所示的这些实施例,而是要符合与本文所申请的原理和新颖特点相一致的最宽的范围。
技术特征:
1.一种终端电子文件安全保护方法,其特征在于,包括:对待加密文件进行压缩,得到原始压缩文件;获取所述原始压缩文件的体积值,并确定所述原始压缩文件的体积值所落入的目标区间;根据所述目标区间,对所述原始压缩文件进行加密处理,得到加密字节流和文件头部信息;根据所述加密字节流和文件头部信息,生成加密文件。2.根据权利要求1所述的终端电子文件安全保护方法,其特征在于,根据所述区间,对所述原始压缩文件进行加密处理的步骤,包括:在目标区间为第一区间的情况下,从所述原始压缩文件中选取预设大小的文件片段;对所述预设大小的文件片段进行分割处理,得到多个第一分割片段;基于各所述第一分割片段,选择第一目标分割片段,并对所述第一目标分割片段进行加密处理,得到所述加密字节流和所述文件头部信息。3.根据权利要求2所述的终端电子文件安全保护方法,其特征在于,选择目标分割片段的步骤,包括:生成随机数,并根据所述随机数在各所述第一分割片段中匹配得到所述第一目标分割片段。4.根据权利要求2所述的终端电子文件安全保护方法,其特征在于,根据所述区间,对所述原始压缩文件进行数据处理的步骤,包括:在目标区间为第二区间的情况下,对所述原始压缩文件进行分割处理,得到多个第二分割片段;其中,所述第二区间的上限值小于所述第一区间的下限值;基于各所述第二分割片段,选择第二目标分割片段,并对所述第二目标分割片段进行加密处理,得到所述加密字节流和所述文件头部信息。5.根据权利要求4所述的终端电子文件安全保护方法,其特征在于,根据所述区间,对所述原始压缩文件进行数据处理的步骤,包括:在目标区间为第三区间的情况下,对所述原始压缩文件进行加密处理,得到所述加密字节流和所述文件头部信息;其中,所述第三区间的上限值小于所述第二区间的下限值。6.根据权利要求5所述的终端电子文件安全保护方法,其特征在于,所述文件头部信息包括开始加密的节点下标、结束加密的节点下标和被加密文件段的明文的节点下标。7.根据权利要求1所述的终端电子文件安全保护方法,其特征在于,所述预设大小为100m。8.根据权利要求1-7任一项所述的终端电子文件安全保护方法,其特征在于,还包括:判断接收到的当前文件是否为所述加密文件;所述加密文件包括文件头部信息;在所述判断的结果为是的情况下,基于所述文件头部信息对所述当前文件进行解密,得到解密文件。9.根据权利要求8所述的终端电子文件安全保护方法,其特征在于,基于所述文件头部信息对所述当前文件进行解密,得到解密文件的步骤,包括:获取所述当前文件的使用状态;在所述使用状态为立即使用的情况下,读取所述当前文件的文件头部信息;
根据所述文件头部信息,读取所述加密字节流,并对所述加密字节流进行解密,得到明文文件。10.根据权利要求1所述的终端电子文件安全保护方法,其特征在于,对所述原始压缩文件进行加密处理,包括:对原始压缩文件进行aes256加密处理。
技术总结
本发明涉及一种终端电子文件安全保护方法,包括:对待加密文件进行压缩,得到原始压缩文件;获取原始压缩文件的体积值,并确定原始压缩文件的体积值所落入的目标区间;根据目标区间,对原始压缩文件进行加密处理,得到加密字节流和文件头部信息;根据加密字节流和文件头部信息,生成加密文件。上述终端电子文件安全保护方法,通过对待加密文件进行压缩,以减少文件体积从而节约加密的计算量;而后根据原始压缩文件的体积大小,分类型的对原始压缩文件进行加密处理,以得到加密字节流以及文件头部信息,最终生成加密文件。从而可以实现快速高效的加密处理,保证文件的实时传输。保证文件的实时传输。保证文件的实时传输。
技术研发人员:何伟潮 许飞月 潘光池 江文杰
受保护的技术使用者:广东精点数据科技股份有限公司
技术研发日:2023.05.11
技术公布日:2023/9/23
版权声明
本文仅代表作者观点,不代表航家之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)
航空之家 https://www.aerohome.com.cn/
航空商城 https://mall.aerohome.com.cn/
航空资讯 https://news.aerohome.com.cn/