【技术实现步骤摘要】
云环境中高效灵活可验证的多属性范围检索方法及系统
[0001]本专利技术属于云环境安全
,尤其涉及一种云环境中高效灵活可验证的多属性范围检索方法及系统。
技术介绍
[0002]目前,用户通过使用“云计算”在付出较低的成本的同时能够享受到了高性能的存储计算服务,而“云计算”的服务提供商,通过对计算资源的统一管理也大大节省了管理成本,提高了计算资源的利用率。但是,出于隐私考虑,数据所有者在外包之前会对敏感数据进行加密,这反过来又会使数据利用成为一个具有挑战性的问题。因此,在加密的云数据上开发高效的隐私保护搜索系统是非常重要的。最常见的搜索方法是使用关键字来检索文件,而不是将所有加密的文件下载到本地进行检索。为了安全地搜索加密数据,数据所有者通常使用从数据文件中提取的关键字和相应的基于索引的关键字匹配算法来构建加密索引结构,并随后将加密数据和该构建的索引结构外包给云。在搜索文件时,云服务器将关键字的陷门与索引信息相结合,然后将相应的文件返回给数据用户。此外,数据所有者可以与大量用户共享他们的数据,这要求云服务器能够通过有效的数据检索服务来满足大量的请求。
[0003]对于范围查询的可搜索加密方案目前主要分为桶方案和保序方案两大类,Hore等人分别在2004年和2012年提出了不同的桶结构加密方案。在桶结构方案中数据的所有者将数据划分为不同大小的范围段,相当于把一大桶的水分装到几个不同的小桶中,当查询时,如果桶的索引标记与查询范围存在重叠,就桶中的所有数据将作为结果返回。这种原理将会带来很多问题,如果桶的范围过 ...
【技术保护点】
【技术特征摘要】
1.一种云环境中高效灵活可验证的多属性范围检索方法,其特征在于,所述云环境中高效灵活可验证的多属性范围检索方法包括以下步骤:步骤一,索引生成:数据所有者根据查询需求利用前缀编码技术和bloom过滤器建立若干个索引树和用于查找索引树的索引查找表;步骤二,密钥生成:数据所有者生成密钥,并将密钥分享给授权用户;步骤三,数据加密:数据所有者对索引树、索引查找表以及文件数据进行加密并上传到云服务器;步骤四,门限生成:数据授权用户生成包含查询标识和查询区间门限;步骤五,密文检索:云服务器根据查询标识选取索引树进行查询,将查询结果返回给授权用户;授权用户解密数据,验证数据是否正确;步骤六,索引查找表的更新:数据所有者根据需求对索引查找表进行更新,并增加或删除索引查找表中对应的索引树;步骤七,索引树的更新:数据所有者根据需求对索引树进行更新,增加、修改或删除索引树叶子结点中的索引。2.如权利要求1所述的云环境中高效灵活可验证的多属性范围检索方法,其特征在于,所述步骤一中的索引生成包括:针对于数据所有者需要上传至云服务器的各本地数据文件,对数据文件根据数据所有者查询需求建立若干个索引,索引格式为{范围值:文件名};对于每个索引,根据索引范围值从小到大的顺序对文件主索引进行排序,根据各本地数据文件索引的排序,将索引平均分配给根节点下的每个子节点;根子节点再平均分配给子节点直到每条索引都存储在叶子节点中,根据多路平衡树对各个叶节点进行前缀编码,将前缀码分级存入多路平衡树的路径上并同时存入前编码文件;将前缀码按顺序存入父节点中;由数据所有者为每个索引自定义ind_tag,将格式为{ind_tag:索引树地址}的索引查找表存入线性表。3.如权利要求1所述的云环境中高效灵活可验证的多属性范围检索方法,其特征在于,所述步骤二中的密钥生成包括:数据所有者需要生成四部分密钥,用于加密索引查找表的安全哈希函数的随机密钥;用于加密索引数据的SM2算法公私钥对;用于加密布隆过滤器的安全哈希函数的随机密钥;用于加密文件的SM4算法密钥;索引查找表密钥生成:数据所有者选取1个伪随机哈希函数的种子使用伪随机函数生成1个伪随机数作为安全哈希函数密钥,密钥为key
ind
,密钥分享给数据授权用户;SM2算法公私钥对生成:由数据所有者选取一个有效的F
q
(q=p且p为大于3的素数,或q=2
m
)上椭圆曲线系统参数的集合;用随机数发生器产生整数d∈[1,n
‑
2];G为基点,计算点P=(x
P
,y
P
)=[d]G;密钥对是(d,P),其中d为私钥,P为公钥;将私钥分享给数据授权用户;安全哈希函数的密钥生成:数据所有者选取4个伪随机哈希函数的种子使用伪随机函数生成4个伪随机数作为安全哈希函数密钥,密钥为key
b
={h1,h2,h3,h4};将密钥key
b
分享给数据授权用户;文件密钥生成:文件密钥在上传文件时由数据所有者使用随机数生成器生成16字节的随机数fk
i
作为文件密钥,密钥通过SM2加密算法使用公钥P加密后存储在文件头,不需要与
数据授权用户分享。4.如权利要求1所述的云环境中高效灵活可验证的多属性范围检索方法,其特征在于,所述步骤三中的数据加密包括:针对于索引查找表加密:所述索引查找表的格式为{ind_tag:索引地址},假设共有n个范围查询索引,n种范围查询属性;使用HMAC对n个ind_tag分别进行加密,得到n个HMAC(key
ind
,ind_tag
i
),将密文存入原线性表中;针对于PBtree中各节点存储的前缀进行加密,采用Bloom过滤器实现;设每个节点表示为node,对于每个节点需要加密的前缀码p
i
∈P
node
.P(r),使用四次安全哈希函数HMAC(key,p
i
)其中key
b
={h1,h2,h3,h4};每个节点node生成一个随机密钥node.K
r
,计算HMAC(node.K
r
,HMAC(key,p
i
)),最后对每个节点的每个p
i
和key设置Bloom过滤器:node.B[HMAC(node.K
r
,HMAC(key,p
i
))mod M]=1;其中,M为Bloom过滤器的大小(bit);针对于各索引{范围值:文件名}加密:将各本地数据文件的对应的每条索引使用SM2加密算法进行加密,将加密结果{SM2.Enc(ind),Hash(filename)}存放在原来的各个叶节点中;针对于文件加密:使用伪...
【专利技术属性】
技术研发人员:赵兴文,卢嘉威,李晖,张芙蓉,
申请(专利权)人:西安电子科技大学,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。