一种加密文件索引快速构建与存储方法与流程
- 国知局
- 2024-07-31 22:55:56
本发明涉及索引构建与存储的,尤其涉及一种加密文件索引快速构建与存储方法。
背景技术:
1、在港闸建设时,存在大量的文件和图纸,传统的纸质文件在保存和索引查找时很不方便,因此需要将相应的文件和图纸数字化并存储在计算机系统中。这些数据包含各类签章、设计参数等敏感信息,因此需要进行加密以确保机密性和安全性。在实际应用中,常常需要对加密的数据进行索引和检索,以便快速地找到所需的信息。然而,由于加密操作的特性,传统的索引构建和存储方法可能不再适用。
技术实现思路
1、针对该问题,本发明提出一种加密文件索引快速构建与存储方法,通过结合分布式存储和加密搜索,提高加密文件索引的构建速度,降低索引构建的时间成本并减少索引数据的存储空间占用。
2、实现上述目的,本发明提供的一种加密文件索引快速构建与存储方法,包括以下步骤:
3、s1:将待加密的文件分割成预设维度数目的原始数据块,对每个原始数据块进行快速加密,得到加密数据块,并将原始数据块中关键字的哈希值作为对应加密数据块的索引标识;
4、s2:将加密数据块存储在分布式网络节点,并将索引标识作为键,加密数据块的存储位置作为值,使用分布式哈希表构建索引结构,其中基于存储负载均衡的调度策略为所述存储的主要实施方法;
5、s3:用户在检索文件时输入关键词,对关键词进行哈希处理得到关键词哈希值,将关键词哈希值与索引结构中的键进行基于相似度修正的局部敏感哈希匹配,得到关键词所对应加密数据块的存储位置;
6、s4:根据检索得到的存储位置获取加密数据块,对加密数据块进行解密处理得到原始数据块,并对原始数据块进行重组,将重组得到的文件作为用户检索的返回结果。
7、作为本发明的进一步改进方法:
8、可选地,所述s1步骤包括:
9、获取待加密的文件data,并将待加密的文件data分割成预设维度数目n的原始数据块,其中每个原始数据块中包含的字符数目相同,且每个原始数据块中所包含的字符在文件data中连续,所分割得到的原始数据块集合为:
10、;
11、;
12、其中:
13、表示所分割得到的第n个原始数据块;
14、表示原始数据块中第u个字符,,u表示原始数据块中的字符总数;
15、对每个原始数据块进行快速加密,得到加密数据块,其中原始数据块的快速加密流程为:
16、s11:将原始数据块中的字符转换为十进制的ascii值,其中原始数据块中第u个字符对应的ascii值为,并计算得到原始数据块的哈希值,其中,表示原始数据块中第u个字符对应的哈希值;
17、s12:计算得到加密辅助参数:
18、;
19、其中:
20、表示取余函数,表示表达式与16作除法运算后的余数;
21、表示向下取整函数;
22、s13:随机选取大于1000的素数,计算加密辅助参数与素数的乘积,;
23、s14:构建得到原始数据块的公钥以及私钥:
24、;
25、;
26、其中:
27、满足,满足,表示与作除法运算后的余数;在本发明实施例中,每个原始数据块的公钥对所有用户广播,具有文件data使用权限的用户可以获取私钥;
28、s15:对原始数据块进行加密映射处理,其中加密映射公式为:
29、;
30、;
31、其中:
32、表示原始数据块对应的加密数据块;
33、表示原始数据块中第u个字符对应的加密映射结果;
34、表示原始数据块中第u个字符对应的加密结果;
35、a表示映射参数;
36、表示将十进制转换为二进制;
37、在本发明实施例中,基于公钥以及私钥的加密数据块的解密流程为:
38、结合映射参数对加密数据块中的任意加密映射结果进行进制转换以及逆映射处理,得到原始数据块中每个字符对应的加密结果,并基于公钥以及私钥对加密结果进行解密处理,得到解密后的原始数据块,其中原始数据块中第u个字符所对应加密结果的解密处理公式为:
39、;
40、并将哈希值转换为字符,得到原始数据块中的第u个字符;
41、将原始数据块中关键字的哈希值作为对应加密数据块的索引标识,其中加密数据块的索引标识为,原始数据块中关键字的提取方式为:对原始数据块进行分词处理,并计算原始数据块中每个分词词组的词频-逆文档频率值,选取词频-逆文档频率值最大的num个分词词组作为原始数据块的关键字,num表示预设关键字数目。
42、可选地,所述s11步骤中计算得到原始数据块的哈希值,包括:
43、s111:获取原始数据块中每个字符的ascii值;
44、s112:对原始数据块中的每个字符进行哈希运算,得到字符所对应的哈希值,其中原始数据块中第u个字符对应的哈希值为:
45、;
46、其中:
47、表示原始数据块中第u个字符对应的哈希值;
48、为哈希运算参数;
49、构成原始数据块的哈希值:。
50、可选地,所述s2步骤包括:
51、将加密数据块存储在分布式网络节点,其中基于存储负载均衡的调度策略为所述存储的主要实施方法,加密数据块的存储流程为:
52、s21:初始化k个分布式网络节点,其中每个分布式网络节点用来进行存储管理;
53、s22:计算得到不同分布式网络节点的当前存储负载均衡能力,其中第k个分布式网络节点的当前存储负载均衡能力为:
54、;
55、其中:
56、表示第k个分布式网络节点的当前存储负载均衡能力;
57、表示第k个分布式网络节点所能存储的数据总量;
58、表示第k个分布式网络节点的当前存储数据量;
59、s23:计算得到不同分布式网络节点的均衡系数,其中第k个分布式网络节点的均衡系数为:
60、;
61、其中:
62、表示计算得到加密数据块以及密钥信息的数据总量;
63、表示第k个分布式网络节点的当前空闲存储空间;
64、表示n组数据总量的中位数;
65、s24:选取均衡系数大于1的分布式网络节点,将所选取分布式网络节点中的部分存储数据发送至当前存储负载均衡能力大于预设阈值且均衡系数大于1的分布式网络节点,进行所有分布式网络节点的存储均衡化处理;
66、s25:计算存储均衡化处理后每个分布式网络节点的当前空闲存储空间,并基于当前空闲存储空间降序对分布式网络节点进行排序,将n组加密数据块以及对应的密钥信息按照排序顺序存储至排序靠前的n个分布式网络节点中;
67、将索引标识作为键,加密数据块的存储位置作为值,使用分布式哈希表构建索引结构,其中加密数据块的存储位置为加密数据块所在分布式网络节点的编号。
68、可选地,所述将索引标识作为键,加密数据块的存储位置作为值,使用分布式哈希表构建索引结构,包括:
69、所构建索引结构的表示形式为:
70、;
71、其中:
72、表示加密数据块的索引标识;
73、表示加密数据块的存储位置;
74、表示一组索引,作为索引中的键,作为索引中的值。
75、可选地,所述s3步骤包括:
76、用户在检索文件时输入关键词key,对关键词key进行哈希处理得到关键词哈希值:
77、;
78、其中:
79、为哈希运算参数;
80、表示关键词key对应的关键词哈希值;
81、表示关键词key对应的ascii值;
82、将关键词哈希值与索引结构中的键进行基于相似度修正的局部敏感哈希匹配,得到关键词key所对应加密数据块的存储位置。
83、可选地,所述将关键词哈希值与索引结构中的键进行基于相似度修正的局部敏感哈希匹配,得到关键词key所对应加密数据块的存储位置,包括:
84、将关键词哈希值与索引结构中的键进行基于相似度修正的局部敏感哈希匹配的流程为:
85、s31:计算关键词哈希值与索引结构中任意一组键的相似度,其中关键词哈希值与键的相似度为:
86、;
87、其中:
88、表示关键词哈希值与键的相似度;
89、表示l2范数;
90、s32:对相似度进行修正,其中相似度的修正公式为:
91、;
92、其中:
93、表示相似度的修正结果;
94、表示l1范数;
95、表示索引标识所包含关键字的预设关键字数目;
96、表示索引标识所包含关键字的集合,,q表示集合中的任意关键字;
97、,表示关键字q在n个加密数据块的索引标识中出现的次数;
98、s33:选取修正后相似度高于预设相似阈值的键,并基于键与值的对应关系,获取键所对应的加密数据块存储位置,作为检索得到的数据块信息。
99、可选地,所述s4步骤包括:
100、根据检索得到的数据块位置信息,从分布式网络节点中获取加密数据块以及密钥信息,检测当前用户是否具有加密数据块所对应文件的使用权限,若用户具有使用权限,则基于加密数据块的公钥以及私钥对加密数据块进行解密处理得到原始数据块,其中根据关键词哈希值检索得到的原始数据块集合为:
101、;
102、其中:
103、表示根据关键词哈希值检索得到的第h个原始数据块,h表示根据关键词哈希值检索得到的原始数据块总数;
104、并对原始数据块进行重组,其中重组规则为将检索得到的h个原始数据块按照文件data中的顺序进行排序,重组得到用户需求的文件,将重组得到的文件作为用户检索的返回结果。
105、相对于现有技术,本发明提出一种加密文件索引快速构建与存储方法,该技术具有以下优势:
106、1)本发明将待加密文件划分为多个数据块,并基于文件的整体字符编码分布确定加密辅助参数,基于不同数据块对应的随机素数生成每个数据块的私钥与公钥,只有具有文件权限的用户可以提取私钥信息,利用私钥与公钥对划分得到的每个数据块进行加密处理,并采用混沌映射的方式对加密结果进行映射,提高加密结果的安全性,实现待加密文件的分块加密处理;
107、2)本发明根据港闸建设文件、图纸等多样性,在将其数字化时面临存储和索引的困难,采用分布式存储的方式,将加密数据块以及索引标识存储在分布式网络节点中,在存储过程中,对结合不同分布式网络节点的当前存储负载均衡能力以及均衡系数,对剩余空间较少、负载较大的分布式网络节点所存储数据进行迁移处理,实现分布式网络节点的存储负载均衡,将索引标识作为键,加密数据块的存储位置作为值,使用分布式哈希表构建索引结构,根据用户的检索关键词,采用基于关键字分布信息的相似度修正方式进行哈希匹配,获取加密数据块,对加密数据块进行解密处理得到原始数据块,并对原始数据块进行重组,将重组得到的文件作为用户检索的返回结果。
本文地址:https://www.jishuxx.com/zhuanli/20240730/195375.html
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 YYfuon@163.com 举报,一经查实,本站将立刻删除。
下一篇
返回列表