一种面向云计算的可验证单关键词Top‑k检索方法技术

技术编号:16270395 阅读:36 留言:0更新日期:2017-09-22 22:01
本发明专利技术公开了一种面向云计算的可验证单关键词Top‑k检索方法,包括数据上传和Top‑k检索及验证步骤,数据拥有者采用Hash消息认证编码(HMAC)机制,并根据文档与关键词的相关度得分的偏序关系,构造验证码信息,然后与文档集合一起外包存储至云端。数据使用者在执行单关键词Top‑k检索时,云服务器返回检索结果文档集合以及相应的验证码信息;数据使用者根据获得的检索结果重构验证码,实现针对检索结果的完整性验证。本发明专利技术的协议流程简单,易于实现;安全性高,能够验证检索结果文档数据是否被恶意篡改或丢弃;完成检索结果完整性验证的验证码信息的传输通信代价和重构计算代价低,有利于提高网络利用率和检索效率。

【技术实现步骤摘要】
一种面向云计算的可验证单关键词Top-k检索方法
本专利技术涉及云计算安全领域,是一种面向云计算的可验证单关键词Top-k检索方法。
技术介绍
随着云计算技术的成熟,以AmazonEC2、GoogleAppEngine等为代表的云服务模式得到快速发展和应用普及。越来越多的企业和个人通过将存储、计算等资源外包至云服务提供商(CloudServiceProvider,云服务器P)来降低运营成本。IT资源服务化的思想日益普及,呈现“一切皆服务”(XasaService,XaaS)的趋势,“服务”成为云计算的核心概念。然而在云计算蓬勃发展的同时,云安全也成为被广泛关注的问题。在云计算环境中,用户对放置在云服务器(CloudServer,云服务器)中的数据和计算失去控制,对于数据是否受到保护、计算任务是否被正确执行都无法确定,因此需要设计相应的安全机制和体系结构来保护用户数据的机密性和完整性。前者主要通过隐私保护等密码手段实现数据的不可窥探性;而后者主要是指用户对查询结果进行验证,防止数据被篡改、伪造或丢弃。当前,研究者们主要考虑半诚实模型(Honest-but-curious)框架下的安全检索问题,即假设云服务器能够严格按照约定的协议来对客户提供数据检索服务,但可能会窃取数据信息。针对云计算环境中文档检索的隐私保护问题已经成为现有研究工作关注的热点问题,其中,同态加密技术和可搜索加密技术是该类研究工作常用的安全技术手段。然而,云服务器并不一定总是遵守半诚实模型,云服务器可能不按照既定的协议提供数据,或者数据的计算过程可能由于负载过重、软件漏洞等问题而出现差错,导致返回给用户的检索结果不正确或不全面。针对检索结果完整性问题较少被研究者关注,事实上,在某些领域,检索结果的完整性要求极为重要,而数据私密性有时却不是必须的。例如,在证券交易领域,任何一只股票的对价成交数据都是公开的,并不具备私密性要求,每个用户都可以查看这些数据;而能否返回符合特定检索模式要求的正确且完整的检索结果才是用户最为关心的。随着越来越多的政府、企业和个人将自己的数据托管到云服务器,云服务器被攻击造成的检索结果不完整也越来越引起业界的关注。因此,在不考虑数据隐私性前提下,如何确保检索结果的完整性是云计算技术研究和应用中的一个重要问题。现有技术中有的方法是基于云服务器按照“半诚实模型”方式提供服务这一假设的,不能验证由于系统错误或者主动减少计算开销等原因导致的计算结果不完整;有的构造验证码信息复杂,并且当数据使用者检索Top-k文档时,返回的验证码信息冗余大,导致通信效率和重构验证码效率都比较低。
技术实现思路
本专利技术的目的是提供一种面向云计算的可验证单关键词Top-k检索方法。通过本专利技术提供的方法,数据使用者可以对检索结果的k个文档进行验证,从而确定检索结果是否被篡改或丢弃,确定结果的真实性和完整性。一种面向云计算的可验证单关键词Top-k检索方法,包括以下步骤:数据拥有者构造验证码信息;对于关键词集合中的每个关键词,计算文档集合中每个文档与所述关键词的相关度并排序,按照相关度排序顺序构造验证码信息;数据拥有者将文档集合和验证码信息发送到云服务器,供数据使用者检索,所述云服务器处理所述数据使用者的检索请求的过程如下:S1、所述云服务器接收到所述数据使用者发来的检索指令,所述检索指令的参数为指定的文档集合、关键词和所述数据使用者需要检索的文档数量;S2、所述云服务器根据所述指定的文档集合和所述关键词计算所述指定的文档集合中与所述关键词最相关的k个文档,将所述文档添加到检索结果集合中;S3、判断所述检索结果集合中的Top-k文档数量是否满足数据使用者需要的文档数量,如果是则将检索结果文档集合和文档对应的验证码信息一起发送至数据使用者;否则返回步骤S2;S4、数据使用者接收云服务器返回的检索结果文档集合,进行以下操作:S4-1、提取出Top-k文档和验证码信息;S4-2、检查检索结果中的文档是否是k个,如果是则继续执行步骤S4-3;否则检索结果验证失败,检索结果遭到篡改、丢弃等攻击,Top-k检索及验证过程结束;S4-3、数据使用者计算返回的检索结果文档和检索使用的关键词之间的相关度得分并排序,根据该顺序重构验证码信息;S4-4、数据使用者比较云服务返回的检索结果中的验证码信息和重构得到的验证码信息是否相等,若不相等则检索结果验证失败,检索结果遭到篡改、丢弃等攻击,Top-k检索及验证过程结束;若相等则检索结果验证通过,是真实且完整的检索结果,没有经过篡改、丢弃等攻击,Top-k检索及验证过程结束。本专利技术还提供一种面向云计算的可验证单关键词Top-k检索方法,包括以下步骤:云服务器接收数据拥有者发来的文档集合和验证码信息,所述的验证码信息由以下步骤得到:对于关键词集合中的每个关键词,数据拥有者计算文档集合中每个文档与所述关键词的相关度并排序,按照相关度排序顺序构造验证码信息;云服务器接收并处理数据使用者的检索请求:S1、所述云服务器接收到所述数据使用者发来的检索指令,所述检索指令的参数为指定的文档集合、关键词和所述数据使用者需要检索的文档数量;S2、所述云服务器根据所述指定的文档集合和所述关键词计算所述指定的文档集合中与所述关键词最相关的k个文档,将所述文档添加到检索结果集合中;S3、判断所述检索结果集合中的Top-k文档数量是否满足数据使用者需要的文档数量,如果是则将检索结果文档集合和文档对应的验证码信息一起发送至数据使用者;否则返回步骤S2;S4、数据使用者接收云服务器返回的检索结果文档集合,进行以下操作:S4-1、提取出Top-k文档和验证码信息;S4-2、检查检索结果中的文档是否是k个,如果是则继续执行步骤S4-3;否则检索结果验证失败,检索结果遭到篡改、丢弃等攻击,Top-k检索及验证过程结束;S4-3、数据使用者计算返回的检索结果文档和检索使用的关键词之间的相关度得分并排序,根据该顺序重构验证码信息;S4-4、数据使用者比较云服务返回的检索结果中的验证码信息和重构得到的验证码信息是否相等,若不相等则检索结果验证失败,检索结果遭到篡改、丢弃等攻击,Top-k检索及验证过程结束;若相等则检索结果验证通过,是真实且完整的检索结果,没有经过篡改、丢弃等攻击,Top-k检索及验证过程结束。本专利技术的有益效果:一、安全性分析本专利技术考虑的是明文数据检索结果的可验证性,因此本专利技术方法的安全性即为可验证性。在Top-k检索与验证过程中,由于云服务器并不一定总是遵守半诚实模型,可能不按照既定的协议提供数据,或者数据的计算过程可能由于负载过重、软件漏洞等问题而出现差错,导致返回给用户的检索结果不正确或不全面。而这种不完整的检索结果要想通过数据使用者的完整性验证,必须修改对应的验证码信息,然而构造验证码信息使用的HMAC密钥是由数据使用者和数据拥有者共享,对云服务器保密,在云服务器不知道存储密钥的情况下,破解Top-k文档验证码信息的复杂度等同于破解HMAC算法复杂度。因此,合理选择HMAC算法(如SHA-256等),就能保证云服务器无法破解检索结果的完整性而不被数据使用者识别,从而保证数据使用者对检索结果Top-k文档完整性验证。二、通信代价分析对于面向本文档来自技高网
...
一种<a href="http://www.xjishu.com/zhuanli/55/201710225029.html" title="一种面向云计算的可验证单关键词Top‑k检索方法原文来自X技术">面向云计算的可验证单关键词Top‑k检索方法</a>

【技术保护点】
一种面向云计算的可验证单关键词Top‑k检索方法,其特征在于,包括以下步骤:数据拥有者构造验证码信息;对于关键词集合中的每个关键词,计算文档集合中每个文档与所述关键词的相关度并排序,按照相关度排序顺序构造验证码信息;数据拥有者将文档集合和验证码信息发送到云服务器,供数据使用者检索,所述云服务器处理所述数据使用者的检索请求的过程如下:S1、所述云服务器接收到所述数据使用者发来的检索指令,所述检索指令的参数为指定的文档集合、关键词和所述数据使用者需要检索的文档数量;S2、所述云服务器根据所述指定的文档集合和所述关键词计算所述指定的文档集合中与所述关键词最相关的k个文档,将所述文档添加到检索结果集合中;S3、判断所述检索结果集合中的Top‑k文档数量是否满足数据使用者需要的文档数量,如果是则将检索结果文档集合和文档对应的验证码信息一起发送至数据使用者;否则返回步骤S2;S4、数据使用者接收云服务器返回的检索结果文档集合,进行以下操作:S4‑1、提取出Top‑k文档和验证码信息;S4‑2、检查检索结果中的文档是否是k个,如果是则继续执行步骤S4‑3;否则检索结果验证失败,检索结果遭到篡改、丢弃等攻击,Top‑k检索及验证过程结束;S4‑3、数据使用者计算返回的检索结果文档和检索使用的关键词之间的相关度得分并排序,根据该顺序重构验证码信息;S4‑4、数据使用者比较云服务返回的检索结果中的验证码信息和重构得到的验证码信息是否相等,若不相等则检索结果验证失败,检索结果遭到篡改、丢弃等攻击,Top‑k检索及验证过程结束;若相等则检索结果验证通过,是真实且完整的检索结果,没有经过篡改、丢弃等攻击,Top‑k检索及验证过程结束。...

【技术特征摘要】
1.一种面向云计算的可验证单关键词Top-k检索方法,其特征在于,包括以下步骤:数据拥有者构造验证码信息;对于关键词集合中的每个关键词,计算文档集合中每个文档与所述关键词的相关度并排序,按照相关度排序顺序构造验证码信息;数据拥有者将文档集合和验证码信息发送到云服务器,供数据使用者检索,所述云服务器处理所述数据使用者的检索请求的过程如下:S1、所述云服务器接收到所述数据使用者发来的检索指令,所述检索指令的参数为指定的文档集合、关键词和所述数据使用者需要检索的文档数量;S2、所述云服务器根据所述指定的文档集合和所述关键词计算所述指定的文档集合中与所述关键词最相关的k个文档,将所述文档添加到检索结果集合中;S3、判断所述检索结果集合中的Top-k文档数量是否满足数据使用者需要的文档数量,如果是则将检索结果文档集合和文档对应的验证码信息一起发送至数据使用者;否则返回步骤S2;S4、数据使用者接收云服务器返回的检索结果文档集合,进行以下操作:S4-1、提取出Top-k文档和验证码信息;S4-2、检查检索结果中的文档是否是k个,如果是则继续执行步骤S4-3;否则检索结果验证失败,检索结果遭到篡改、丢弃等攻击,Top-k检索及验证过程结束;S4-3、数据使用者计算返回的检索结果文档和检索使用的关键词之间的相关度得分并排序,根据该顺序重构验证码信息;S4-4、数据使用者比较云服务返回的检索结果中的验证码信息和重构得到的验证码信息是否相等,若不相等则检索结果验证失败,检索结果遭到篡改、丢弃等攻击,Top-k检索及验证过程结束;若相等则检索结果验证通过,是真实且完整的检索结果,没有经过篡改、丢弃等攻击,Top-k检索及验证过程...

【专利技术属性】
技术研发人员:戴华朱向洋杨庚刘国秀李啸
申请(专利权)人:南京邮电大学
类型:发明
国别省市:江苏,32

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

1