文件加密方法、系统、终端及存储介质技术方案

技术编号:38506068 阅读:10 留言:0更新日期:2023-08-19 16:53
本发明专利技术提供了一种文件加密方法、系统、终端及存储介质,该方法包括:对待加密文件进行分割,得到分割文件,将各分割文件作为节点构建有向无环图;分别对有向无环图中的各叶子节点进行加密密钥设置,根据各加密密钥对相对应的叶子节点进行加密,得到叶子加密节点;根据各叶子加密节点对有向无环图中的各叶子节点进行节点替换;在节点替换后的有向无环图中,将各叶子加密节点的链接信息添加至父节点中,直至根节点完成链接信息的添加;对根节点进行加密,将加密后的根节点的链接信息设置为待加密文件的链接信息。本发明专利技术实施例,基于父节点中的链接信息能有效地对部分的叶子节点进行解码,以达到对待加密文件的部分披露效果,提高了用户的使用体验。高了用户的使用体验。高了用户的使用体验。

【技术实现步骤摘要】
文件加密方法、系统、终端及存储介质


[0001]本专利技术涉及数据加密
,尤其涉及一种文件加密方法、系统、终端及存储介质。

技术介绍

[0002]在人们的日常生活以及工作中,经常需要利用网络进行文件传输,而文件传输时的安全性是非常重要的,尤其是对于机密文件的传输。为了保证文件传输的安全性,通常是利用文件加密技术对需要传输的文件进行加密,再将加密后的文件进行传输。
[0003]现有的文件加密过程中,加密密钥的控制粒度为文件,一个文件使用一个密钥进行加密,导致无法部分的披露文件内容,降低了用户的使用体验。

技术实现思路

[0004]本专利技术实施例的目的在于提供一种文件加密方法、系统、终端及存储介质,旨在解决现有的文件加密无法部分的披露文件内容的问题。
[0005]本专利技术实施例是这样实现的,一种文件加密方法,所述方法包括:
[0006]对待加密文件进行分割,得到分割文件,并将各分割文件作为节点构建有向无环图;
[0007]分别对所述有向无环图中的各叶子节点进行加密密钥设置,并根据各加密密钥对相对应的叶子节点进行加密,得到叶子加密节点;
[0008]根据各叶子加密节点对所述有向无环图中的各叶子节点进行节点替换;
[0009]在节点替换后的所述有向无环图中,将各叶子加密节点的链接信息添加至父节点中,直至所述有向无环图中的根节点完成链接信息的添加;
[0010]对所述根节点进行加密,并将加密后的所述根节点的链接信息设置为所述待加密文件的链接信息。
[0011]优选的,所述将各叶子加密节点的链接信息添加至父节点中,包括:
[0012]分别计算各叶子加密节点的哈希值,并根据各哈希值生成各叶子加密节点的内容标识符;
[0013]将各叶子加密节点的内容标识符和加密密钥添加至对应的所述父节点中;
[0014]其中,所述链接信息包括所述内容标识符和所述加密密钥,所述加密密钥包括对应的加密算法、密钥长度和密钥内容。
[0015]优选的,所述分别对所述有向无环图中的各叶子节点进行加密密钥设置,包括:
[0016]分别计算各叶子加密节点的哈希值,并将各叶子加密节点的哈希值设置为所述加密密钥。
[0017]优选的,所述将加密后的所述根节点的链接信息设置为所述待加密文件的链接信息之后,还包括:
[0018]获取加密后的所述根节点,并根据所述待加密文件的链接信息对加密后的所述根
节点进行解密;
[0019]根据解密后的所述根节点,获取子节点的加密密钥和内容标识符,并根据各子节点的加密密钥和内容标识符进行节点获取和节点解密,直至获取到各叶子节点;
[0020]根据各叶子节点进行文件拼接,得到所述待加密文件。
[0021]优选的,所述根据各叶子节点进行文件拼接之前,还包括:
[0022]根据各父节点中存储的内容标识符对各叶子节点进行内容验证;
[0023]若任一所述叶子节点的内容验证不合格,则对所述叶子节点进行篡改提示。
[0024]优选的,所述将各叶子加密节点的链接信息添加至父节点中之后,还包括:
[0025]对各父节点中存储的内容标识符进行查重检测;
[0026]若存在相同的所述内容标识,则将所述内容标识对应的链接信息删除至一个。
[0027]优选的,各叶子节点的加密密钥为对称密钥,所述根节点的密钥为非对称密钥。
[0028]本专利技术实施例的另一目的在于提供一种文件加密系统,所述系统包括:
[0029]无环图构建模块,用于对待加密文件进行分割,得到分割文件,并将各分割文件作为节点构建有向无环图;
[0030]节点加密模块,用于分别对所述有向无环图中的各叶子节点进行加密密钥设置,并根据各加密密钥对相对应的叶子节点进行加密,得到叶子加密节点;
[0031]节点替换模块,用于根据各叶子加密节点对所述有向无环图中的各叶子节点进行节点替换;
[0032]信息添加模块,用于在节点替换后的所述有向无环图中,将各叶子加密节点的链接信息添加至父节点中,直至所述有向无环图中的根节点完成链接信息的添加;
[0033]链接设置模块,用于对所述根节点进行加密,并将加密后的所述根节点的链接信息设置为所述待加密文件的链接信息。
[0034]本专利技术实施例的另一目的在于提供一种终端设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如上述方法的步骤。
[0035]本专利技术实施例的另一目的在于提供一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现上述方法的步骤。
[0036]本专利技术实施例,通过分别对有向无环图中的各叶子节点进行加密密钥设置,基于各加密密钥能有效地对各叶子节点进行加密,使得加密密钥的控制粒度为叶子节点,通过将各叶子加密节点的链接信息添加至父节点中,基于父节点中的链接信息能有效地对部分的叶子节点进行解码,以达到对待加密文件的部分披露效果,进而提高了用户的使用体验。
附图说明
[0037]图1是本专利技术第一实施例提供的文件加密方法的流程图;
[0038]图2是本专利技术第一实施例提供的有向无环图的示意图;
[0039]图3是本专利技术第一实施例提供的对称密钥的示意图;
[0040]图4是本专利技术第一实施例提供的中间节点的内容示意图;
[0041]图5是本专利技术第一实施例提供的链接信息添加后父节点的内容示意图;
[0042]图6是本专利技术第二实施例提供的文件加密方法的流程图;
[0043]图7是本专利技术第三实施例提供的文件加密系统的结构示意图;
[0044]图8是本专利技术第四实施例提供的终端设备的结构示意图。
具体实施方式
[0045]为了使本专利技术的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本专利技术进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本专利技术,并不用于限定本专利技术。
[0046]为了说明本专利技术所述的技术方案,下面通过具体实施例来进行说明。
[0047]实施例一
[0048]请参阅图1,是本专利技术第一实施例提供的文件加密方法的流程图,该文件加密方法可以应用于任一终端设备或系统,该文件加密方法包括步骤:
[0049]步骤S10,对待加密文件进行分割,得到分割文件,并将各分割文件作为节点构建有向无环图;
[0050]其中,待加密文件的分割大小可以根据需求进行设置,例如,该分割大小可以设置为256KB,即,构建的有向无环图(Directed Acyclic Graph,DAG)中,每个叶子节点都存储了256KB的文件段。请参阅图2,在有向无环图中,底部为的叶子节点,中部的为中间节点,顶端的为根节点,与各叶子节点链接的中间节点为对应叶子节点的父节点,中间节点及根节点不存储内容,而是存储了与其链本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种文件加密方法,其特征在于,所述方法包括:对待加密文件进行分割,得到分割文件,并将各分割文件作为节点构建有向无环图;分别对所述有向无环图中的各叶子节点进行加密密钥设置,并根据各加密密钥对相对应的叶子节点进行加密,得到叶子加密节点;根据各叶子加密节点对所述有向无环图中的各叶子节点进行节点替换;在节点替换后的所述有向无环图中,将各叶子加密节点的链接信息添加至父节点中,直至所述有向无环图中的根节点完成链接信息的添加;对所述根节点进行加密,并将加密后的所述根节点的链接信息设置为所述待加密文件的链接信息。2.如权利要求1所述的文件加密方法,其特征在于,所述将各叶子加密节点的链接信息添加至父节点中,包括:分别计算各叶子加密节点的哈希值,并根据各哈希值生成各叶子加密节点的内容标识符;将各叶子加密节点的内容标识符和加密密钥添加至对应的所述父节点中;其中,所述链接信息包括所述内容标识符和所述加密密钥,所述加密密钥包括对应的加密算法、密钥长度和密钥内容。3.如权利要求1所述的文件加密方法,其特征在于,所述分别对所述有向无环图中的各叶子节点进行加密密钥设置,包括:分别计算各叶子加密节点的哈希值,并将各叶子加密节点的哈希值设置为所述加密密钥。4.如权利要求2所述的文件加密方法,其特征在于,所述将加密后的所述根节点的链接信息设置为所述待加密文件的链接信息之后,还包括:获取加密后的所述根节点,并根据所述待加密文件的链接信息对加密后的所述根节点进行解密;根据解密后的所述根节点,获取子节点的加密密钥和内容标识符,并根据各子节点的加密密钥和内容标识符进行节点获取和节点解密,直至获取到各叶子节点;根据各叶子节点进行文件拼接,得到所述待加密文件。5.如权利要求4所述的文件加密方...

【专利技术属性】
技术研发人员:刘岭峰王超博肖苗苗曾佑诚刘群华麦佩雨
申请(专利权)人:厦门海峡链科技有限公司
类型:发明
国别省市:

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

1