一种支持偏好搜索和逻辑搜索的高效可验证的多关键字排序可搜索加密方法技术

技术编号:18658515 阅读:48 留言:0更新日期:2018-08-11 14:38
本发明专利技术公开了一种支持偏好搜索和逻辑搜索的高效可验证的多关键字排序可搜索加密方法,其中,数据拥有者加密文档并基于文档集合构造密文索引、利用密钥和文档内容生成文档的摘要信息,然后将密文文档和加密后的索引以及摘要信息发送到云服务器;数据使用者共享数据拥有者生成的密钥信息,并根据查询生成查询陷门,并将加密后的查询陷门和待获取的文档数目K发送到云服务器。云服务器接收到密文索引和查询陷门后会执行安全内积操作,搜索到和用户查询最相关的K个文档并按照和查询之间的相关分值排序,然后后生成验证对象,最后返回最相关的K个文档和验证对象到数据使用者;数据使用者通过验证算法来验证返回结果的正确性和完整性。

An Efficient Verifiable Multi-keyword Sorting Searchable Encryption Method Supporting Preference Search and Logical Search

The invention discloses an efficient verifiable multi-keyword sortable encryption method supporting preference search and logical search, in which the data owner encrypts the document and constructs a ciphertext index based on the document set, generates the summary information of the document using the key and the document content, and then the ciphertext document and the encrypted index The data user shares the key information generated by the data owner, generates the query trapdoor according to the query, and sends the encrypted query trapdoor and the number of documents to be retrieved to the cloud server. After receiving the ciphertext index and the query trapdoor, the cloud server performs the security inner product operation, searches the K documents most relevant to the user's query and sorts them according to the relevant scores between the queries, then generates the verification objects, and finally returns the most relevant K documents and the verification objects to the data user; the data user passes the validation. The certificate algorithm is used to verify the correctness and completeness of the returned results.

【技术实现步骤摘要】
一种支持偏好搜索和逻辑搜索的高效可验证的多关键字排序可搜索加密方法
本专利技术涉及信息安全
,具体涉及一种支持偏好搜索和逻辑搜索的高效可验证的多关键字排序可搜索加密方法。
技术介绍
随着云计算的日益普及,为了减少数据管理、存储和计算的开销,数据拥有者会将其所拥有的大量的数据外包到云服务器进行存储或者处理。但是这样数据拥有则就失去了对数据的有力控制,这样数据就可能被云服务器或者入侵者获取、访问,但是这些数可能是涉及机密性和隐私性的数据如医疗记录,政府文档等。虽然云服务器一般声称是安全的,但是用户对云服务器提供的安全性机制一般是存疑的,这种担忧也是云计算进一步发展普及的障碍。常用的保护数据隐私的机制就是将数据上传到云服务器之前,先加密数据,但是,加密会极大的限制数据的可用性。而如果采用简单的下载、解密、处理的机制的话那么就需要消耗大量的带宽和用户极大的计算开销,对于云计算这种理念是不适用的。目前也有大量基于同态加密的方案或者基于公钥的可搜索加密方案被提了出来,但是这些方案的计算往往因其巨大的计算开销而变得非常的不实用。所以仍然关注的是对称可搜索加密。在对称可搜索加密中,也有很多针对本文档来自技高网...

【技术保护点】
1.一种支持偏好搜索和逻辑搜索的高效可验证的多关键字排序可搜索加密方法,其特征在于,所述的加密方法包括下列步骤:数据拥有者作为数据的所有者进行可搜索加密的预处理,包括密钥的生成、文档的加密、索引的生成、摘要的生成,数据拥有者将所持有的文档数据加密得到密文文档集合E,数据拥有者基于文档集合FS构建安全索引

【技术特征摘要】
1.一种支持偏好搜索和逻辑搜索的高效可验证的多关键字排序可搜索加密方法,其特征在于,所述的加密方法包括下列步骤:数据拥有者作为数据的所有者进行可搜索加密的预处理,包括密钥的生成、文档的加密、索引的生成、摘要的生成,数据拥有者将所持有的文档数据加密得到密文文档集合E,数据拥有者基于文档集合FS构建安全索引同时数据拥有者生成消息摘要,然后,数据拥有者将加密后的密文文档集合E连同文档的消息摘要和密文索引上传到云服务器,同时,数据拥有者授权数据使用者访问其外包数据,即与数据使用者共享密钥,包括用于加密文档的对称密钥和加密陷门的秘密钥;数据使用者作为和数据的所有者共享密钥的用户,向云服务器提交查询以进行搜索,当数据使用者想要检索文档时,首先,将查询转为查询陷门TQ,然后,查询陷门TQ以及数据使用者的目标文档数目被提交到云服务器;一旦云服务器接收到查询陷门TQ,云服务器执行计算任务;计算完成,云服务器返回排序后top-K个最相关的文档以及相关的验证对象;最后,数据使用者接收到top-K个最相关的文档和相关的验证对象,执行验证算法来验证搜索结果的准确性和完全性,然后再解密得到搜索结果;云服务器向数据拥有者提供“按需计费”的存储和计算服务,向数据使用者提供查询服务,云服务器存储有密文文档和密文索引,一旦接收到来自数据使用者发送过来的查询陷门TQ和目标数目K,云服务器利用密文索引和查询陷门TQ进行安全检索,得到top-K个最相关的加密文档,按与查询的相关性大小排序后生成验证对象,然后将top-K个最相关的密文文档和验证对象发送给数据使用者。2.根据权利要求1所述的一种支持偏好搜索和逻辑搜索的高效可验证的多关键字排序可搜索加密方法,其特征在于,所述的数据拥有者生成用户加密文档的对称密码和加密文档向量的秘密钥,即两个可逆矩阵和一个随机的比特向量;所述的数据拥有者使用对称密钥来加密文档内容,同时使用向量空间模型和TF×IDF来抽象文档的内容以及相关权重,构造明文二叉树索引后,然后递归加密整个二叉树索引,加密过程中根据随机比特向量将文档向量按照一定的规则切分成两个子向量,然后分别使用两个可逆矩阵的转置矩阵来加密两个子向量,同时数据拥有者根据文档内容和密钥生成文档的消息摘要用于搜索阶段构造验证对象以保证可验证性。3.根据权利要求1所述的一种支持偏好搜索和逻辑搜索的高效可验证的多关键字排序可搜索加密方法,其特征在于,所述的数据拥有者使用二叉树来组织索引。其中,构造二叉树过程如下:首先每个文档作为一个叶子结点,然后会选择当前最相关的两个文档,然后按照一定的规则构造其父节点,然后继续选择剩余的节点最相关的两个节点,继续向上规约得到父节点,如此自底向上构造出明文二叉树索引,然后再递归加密整个明文二叉树索引得到密文二叉树索引。4.根据权利要求1所述的一种支持偏好搜索和逻辑搜索的高效可验证的多关键字排序可搜索加密方法,其特征在于,所述的数据使用者根据提交的查询生成查询的向量表示形式,根据用户的历史偏好信息结合查询信息构造查询向量以支持偏好搜索,根据逻辑联结的关键词以及构造的数值序列来构造查询向量以支持逻辑搜索,在生成查询向量以后,数据使用者根据随机比特向量按照规则将查询向量分成两个子向量,然后分别使用两个可逆矩阵的逆矩阵来加密两个查询子向量得到加密后的查询陷门;所述的数据使用者生成查询陷门后,会将查询陷门和待获取的目标文档数目发送到云服务器,获取云服务器返回的按照相关性排好序的top-K个最相关的密文文档和验证对象以后,会通过验证算法验证搜索结果的完整性和准确性,然后解密后得到结果文档集合。5.根据权利要求1所述的一种支持偏好搜索和逻辑搜索的高效可验证的多关键字排序可搜索加密方法,其特征在于,所述的云服务器接收到数据拥有者生成的密文二叉树索引、密文文档和消息摘要以及数据使用者生成的加密查询陷门和目标文档数目后,会在密文二叉树索引上按照查询和索引,即文档和查询之间的相关性评分获取top-K个最相关的文档,一旦检索结束,得到top-K个最相关的文档,会按照相关性评分排序,然后生成验证对象后发送到数据使用者。6.根据权利要求1所述的一种支持偏好搜索和逻辑搜索的高效可验证的多关键字排序可搜索加密方法,其特征在于,所述的加密方法包括:密钥生成阶段GenKey(1l(n)):初始化阶段,数据拥有者生成一样四元组的安全密钥SK=(S,M1,M2,kf),其中S是一个(n+e)比特的随机向量,M1和M2是两个(n+e)×(n+e)的可逆矩阵,其中n是生成的字典大小,e是为了防止陷门的不可链接性而引入的冗余关键词的数目,kf是一个对称加密密钥,安全密钥SK仅仅在数据拥有者和数据使用者之间共享,云服务器不知道安全密钥SK的任何信息;构造索引阶段BuildIndex(FS,SK):根据构造索引二叉树算法,对节点u中存储的每一个文档向量u.PV使用如下的公式计算其中表示wi在Fd中的TF值,是关键词wi出现在文档Fd的频率,构造出了明文二叉树索引以后,然后加密得到密文二叉树索引,加密过程中,针对剪枝向量应用如下的切分规则得到两个随机子向量{P′,P″},其中SK.S充当切分指示器,切分规则如下:u.PV向量的加密形式是对于索引树中的每一个节点,u.PV被替换成了其加密形式生成陷门阶段GenTrapdoor(Sq,k,SK):假定Sq={w1,w2,…,wt}是用户的查询关键字集合,Sq的向量形式是Q,每一个维通过如下的公式进行计算,然后,进行归一化操作,随后,Q被切分成两个随机子向量{Q′,Q″},SK.S充当切分指示器,切分规则如下:Q的加密形式是然后数据拥有者将陷门TQ传给云服务器,TQ包括和待获取的目标文档数目K;搜索阶段云服务器执行一个深度优先的算法来获取结果集合R,然后构造一个可验证的对象VO,然后,云服务器返回结果集合R和VO给数据使用者,密文二叉树索引的搜索算法执行过程中,u.PV和Q向量的加密形式之间相关性评分计算下所示:其中u.PV为未加密过的文档向量,Q为未加密过的查询向量,此计算结果表明索引和陷门之间的相关性评分与明文文档向量和查询之间的相关性评分相等或者成正比关系;阶段验证阶段Verify(R,VO,SK):数据使用者使用密钥kf来解密搜索结果并验证搜索结果的正确性和完整性,密文二叉树索引的每一个叶子结点都包含当前文档的消息摘要,云服务器利用获取的top-K个文档的消息摘要生成验证对象并发送到数据使用者,数据使用者接收到top-K个密文文档以及验证对象后,会解密每个文档,然后结合密钥kf生成文档的消息摘要,根据这些新生成的文档的消息摘要生成新的验证对象VO′,通过判定云服务器返回的验证对象和数据使用者新生成的验证对象是否相等,即VO′是否等于VO,数据使用者决定是否接受此次查询的结果。7.根据权利要求6所述的一种支持偏好搜索和逻辑搜索的...

【专利技术属性】
技术研发人员:何志强唐韶华
申请(专利权)人:华南理工大学
类型:发明
国别省市:广东,44

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

1