云环境下基于字形相似度的密文模糊检索方案.docx

云环境下基于字形相似度的密文模糊检索方案.docx

  1. 1、本文档共13页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多

?

?

云环境下基于字形相似度的密文模糊检索方案

?

?

黄保华袁鸿黄丕荣程琪

摘??要:中文关键词的模糊检索可以基于字形、字音、字义等不同方面,针对目前相关研究主要基于拼音相似度进行的局限性,文章提出了云环境下基于汉字字形相似度的密文模糊检索方案。方案基于汉字字形相似性,通过欧几里得距离来计算汉字的相似度,基于布隆过滤器和p-稳定分布的局部敏感哈希函数构建索引,通过安全陷门和安全索引内积的方式,实现了汉字多关键字的密文模糊检索。实验证明,方案在保证密文模糊检索安全性的同时,具有较低的时间代价和空间代价。

关键词:字形相似度;云环境;局部敏感哈希;可搜索加密;模糊检索

中图分类号:TP391?????文献标识码:A

1引言

随着云计算的普及,为节约数据存储成本和增加访问便捷性,大量数据被存储于云服务器,其中不乏涉密的非结构化文档,而这些文档存储之前需先进行加密。随时间流逝,数据规模膨胀,对于大量加密数据的检索成为问题,可搜索加密(SearchableEncryption,SE)应运而生[1]。

经典SE通过关键字精确检索密文数据,但检索易出现格式错误或检索结果与查询目标不一致,针对这些问题,JinLi提出了模糊检索,基于编辑距离构建模糊词集合,实现模糊检索[2]。WangB提出适用于多个关键词的密文模糊检索,使用局部敏感哈希(LocalitySensitiveHashing,LSH)函数和布隆过滤器构造索引,大幅地提高了检索效率[3]。

汉字构词为多个单字组成,与英文有明显界限的构词方式不同。根据汉字构词特性,DingW利用TF-IDF实现汉字关键词的自动提炼,并基于拼音构建模糊词集进行匹配[4]。陈何峰根据英文关键词构建模糊词集,设计了新的编辑距离衡量方法用于构建模糊集合[5]。方忠进根据汉字读音的特点建立音近模糊词集合,并用英文和中文实现了关键词的同义词构建,实现中文模糊音和同义关键词的检索[6]。

汉字除了读音外还有含义、字形等差异,不能用同样的方式进行度量。CaoJ采用三种不同的编辑距离衡量方式,通过多个精准匹配进行模糊匹配[7]。罗文俊提出以同义词集合建立扩展索引实现对同义词的检索[8]。

上述这些方案对中文关键词的密文模糊检索,主要是基于汉字拼音相似进行,但在中文汉字的构成中,字形和字音都是汉字的构成基础。人们在日常生活中遇见生字时,习惯使用字形相近的汉字进行代替,如江新所述,在汉字学习中,相近字形引起的错误多于相近字音引起的错误[9]。所以,在检索中基于字形相似度的模糊检索十分必要,王逍翔[10]提出了一种在明文状态下通过点阵对字形进行编码的关键字校检方案,该方案实现的是明文下的关键字校检,存在编码方式过于复杂,依赖于图形图像处理等缺陷。本文提出了一种云环境下中文多关键词密文模糊检索方案。方案基于字形相似度进行搜索,字形编码简便,支持多个中文关键词同时进行检索,且不需要预先构建模糊词集。

2相关工作

2.1布隆过滤器

1970年HowardBloom提出一种二进制向量数据结构—布隆过滤器(BloomFilter),它拥有优秀的时间和空间效率,可用来判定一个元素是否在集合中[11]。

Bloomfilter判定元素是否在集合的思路是采取哈希函数的方法,先构建一个初始值为0、长度为m的阵列,再将元素映射到布隆过滤器进行判定。该元素在集合内,则该点为1,否则为0。布隆过滤器工作原理如图1所示,有集合S={a1,a2,a3,…,ak},布隆过滤器使用l个独立分布的哈希函数{h1(·),h2(·),h3(·),……hl(·)},将ai映射到对应的比特位,即把数组h(ai)位置的值为1。如果对应位置已有映射,即对应位置值为1,则不影响前面映射的效果[11]。

2.2欧氏距离

欧几里得度量(EuclideanMetric,也称欧氏距离)常用来定义距离,指两个点在n维空间中的真实距离,或向量的自然长度(即该点到原点距离),在二维和三维空间中就表示两点之间的直观空间距离[12]。

n维空间中,每个点都有n个坐标,表示为x[1],x[2],x[3],……,x[n],n维空间中任两个点x1、x2之间的欧式距离计算方法如公式(1)所示。

(1)

2.3p-稳定分布的欧氏局部敏感哈希

LSH是一类满足条件的函数,条件为:在原始数据具有很高相似度的情况下,使用此哈希函数哈希后仍保持高相似度;若它们本来不具相似度,对它们哈希后仍不相似[13]。

欧氏局部敏感哈希(ExactEuclideanLocalitySensitiveHashing,E2LSH)是LSH在欧氏空间的一种随机化实现方法[13]。E2LSH基本原理:利用基于P-稳定的性质使用LSH将高维数据降维,并保证降维后

您可能关注的文档

文档评论(0)

136****6482 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档