CN107885705A - 一种高效可扩展的安全的文档相似性计算方法和装置 - Google Patents

一种高效可扩展的安全的文档相似性计算方法和装置 Download PDF

Info

Publication number
CN107885705A
CN107885705A CN201710930206.8A CN201710930206A CN107885705A CN 107885705 A CN107885705 A CN 107885705A CN 201710930206 A CN201710930206 A CN 201710930206A CN 107885705 A CN107885705 A CN 107885705A
Authority
CN
China
Prior art keywords
document
bit
party
gbf
fingerprint
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN201710930206.8A
Other languages
English (en)
Other versions
CN107885705B (zh
Inventor
陈小军
于晓杰
时金桥
申立艳
文新
张闯
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Institute of Information Engineering of CAS
Original Assignee
Institute of Information Engineering of CAS
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Institute of Information Engineering of CAS filed Critical Institute of Information Engineering of CAS
Priority to CN201710930206.8A priority Critical patent/CN107885705B/zh
Publication of CN107885705A publication Critical patent/CN107885705A/zh
Application granted granted Critical
Publication of CN107885705B publication Critical patent/CN107885705B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/194Calculation of difference between files
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/33Querying
    • G06F16/3331Query processing

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computational Linguistics (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Health & Medical Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • General Health & Medical Sciences (AREA)
  • Collating Specific Patterns (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明涉及一种高效可扩展的安全的文档相似性计算方法和装置。该方法使用MinHash文档指纹算法将文档表示成固定数量指纹的指纹集合,既可以较好衡量文档间的相似性,又控制了指纹集合的规模;将多个指纹集合存储到multi‑GBF中,不仅可以确定集合元素是否存在,还可以在查找时返回元素的多个来源ID;不经意多来源混淆布隆过滤器交集计算协议可以高效地在两方之间完成安全的文档相似性计算,又不互相暴露自己的私有数据给对方;采用本发明方法计算文档间的相似性的复杂度与文档集合的大小呈线性关系。

Description

一种高效可扩展的安全的文档相似性计算方法和装置
技术领域
本发明涉及信息处理技术领域,尤其涉及一种高效可扩展的安全的文档相似性计算方法和装置。
背景技术
长时间以来,文档相似性计算都是在假设文档集中于一方或分布于多方,但文档内容相互可见的情况下进行的,但这一假设在敏感文档相似性计算的场景下是不能成立的。
近几年,随着对保护数据安全的关注,已有一些关于安全的文档相似性计算的研究工作。这些工作主要分成两种技术路线,一种是将文档表示成向量的形式,然后借助安全的向量距离计算获得文档间的相似性。例如Murugesan等人(Jiang W,Murugesan M,Clifton C,et al.Similar document detection with limited informationdisclosure[C]//2008IEEE 24th International Conference on DataEngineering.IEEE,2008:735-743.)首次提出的安全的文档相似性计算,将文档表示成词频向量后使用安全的点积计算协议计算文档间的相似性;Buyrukbilen等人(BuyrukbilenS,Bakiras S.Secure similar document detection with simhash[C]//Workshop onSecure Data Management.Springer International Publishing,2013:61-75.)使用SimHash算法将文档表示成值为0和1的比特向量,然后通过安全的抑或操作计算文档间的相似性。另一种技术路线将文档表示成指纹集合,然后借助安全的集合相似性计算得到文档间的相似性。例如Jiang等人(Jiang W,Samanthula B K.N-gram based secure similardocument detection[C]//IFIP Annual Conference on Data and ApplicationsSecurity and Privacy.Springer Berlin Heidelberg,2011:239-246.)将文档表示成n-gram集合后使用一种原创的安全Jaccard相似性协议计算文档间的相似性。Blundo等人(Blundo C,De Cristofaro E,Gasti P.EsPRESSo:efficient privacy-preservingevaluation of sample set similarity[M]//Data Privacy Management andAutonomous Spontaneous Security.[S.l.]:Springer,2013:89–103.)同样将文档表示成n-gram集合,但为了提高计算效率,使用MinHash文档指纹算法对n-gram选样后,借助隐私保护的集合交集基数计算(Private Set Intersection Cardinality)得到文档间的相似性。
当前的这些已有的技术大多聚焦在两个文档间的相似性计算,而在真实的应用场景中,两个文档集中的文档进行两两间相似性计算的需求普通存在,例如在两个学术会议间进行文章的一稿多投检测,两方均拥有一个文档集合需要进行相似性计算。直接应用当前这些技术,来获得包含r个文档的文档集间每对文档的相似性,大多需要进行r×r次文档间的计算,即呈现关于r的平方时间复杂度。
发明内容
本发明旨在提供一种高效可扩展的安全的文档相似性计算方法和装置,可以高效地在两方之间(例如服务端和客户端)进行文档集间的相似性计算而又不互相暴露自己的私有数据给对方,并且计算的复杂度与文档集合的大小呈线性关系。
本发明使用MinHash文档指纹算法提取文档的指纹集合,然后改进Dong等人(DongC,Chen L,Wen Z.When private set intersection meets big data:an efficient andscalable protocol[C]//Proceedings of the 2013ACM SIGSAC conference onComputer&communications security.ACM,2013:789-800.)的工作,提出一种新的安全的交集计算协议——不经意多来源混淆布隆过滤器交集(Obvious Multi-Garbled BloomFilter Intersection)计算协议,进行安全的文档相似性计算。
不经意多来源混淆布隆过滤器交集计算协议基于一种新的数据结构——多来源混淆布隆过滤器(Multi-Garbled Bloom Filter,简称multi-GBF),该数据结构是布隆过滤器(Bloom Filter)的一个变种,既可以像Bloom Filter一样确定集合元素是否存在,还可以在查找时返回元素的多个来源ID。multi-GBF的组成部分和Bloom Filter类似,主要包括一个长度为m的存储空间和k个哈希函数,不同的是Bloom Filter的每个存储单元为一个比特位,而multi-GBF的存储单元为一个λ比特长的比特位串,请参考图1,该比特位串包含三部分:λ1比特长的元素标识(element),λ2比特长的来源ID标识(sid)和λ3比特长的next标识(next),且k和λ1是协议的安全参数。
请参考图2,添加元素构建multi-GBF时,若添加一个元素x1,先用k个哈希函数将元素x1映射到k个哈希位置,再用元素x1、当前来源ID和一个next标识连接成一个λ比特长的比特位串用基于抑或的秘密共享分割成k份(如图中该图中k=3)存储到上述k个哈希位置上。如果元素x1只有一个来源ID,则中next位置填充null(null为一个规定的标志串,如可用λ个0表示);如果元素x1还有其他来源ID(如),则中next位置指向的是一个不会和所有元素的哈希位置冲突的空位,然后使用元素x1、新的来源ID以及新的next标识构造一个新的λ比特长的比特位串再用加密的哈希函数hkey(如SHA1等)求取的哈希值作为密钥,对进行抑或加密后得到加密的比特串存储到next位置(将这些next位置存储的比特位串称做next比特位串)。如果还有下一个来源时,继续重复这个过程。类似地,添加元素x2时,用x2、来源ID和next标识构造比特串然后将该比特串的k个秘密共享值存储到x2的k个哈希位置上;其中因为x2的一个哈希位置(下标为7的位置)已经被x1占据,所以会继续复用这个位置上的值作为它的一个秘密共享值,而只需要自己再生成两个秘密共享值图2中0、1、2…11表示multi-GBF下标的i,其中i的范围为0到m-1。
查询过程类似,用相同的k个哈希函数将待查询元素y映射到k个哈希位置,收集这些哈希位置上的比特位串进行抑或解密得到结果位串Y,若Y的前λ1比特和y相同,则认为y存在,收集当前来源ID信息,并根据next获取下一个哈希位置的比特位串。使用加密的哈希函数hkey作用到Y上得到哈希串Ykey,该Ykey作为密钥与next所在位置的比特位串抑或解密,即得到新的结果位串Y’,若Y’的前λ1比特和y相同,则继续收集当前来源ID信息;当next为null时,查找结束。
基于multi-GBF并借助不经意传输协议OT(即不经意多来源混淆布隆过滤器交集计算协议),就可以进行隐私保护的交集计算,完成两方间的安全的文档相似性计算。请参考图3,本发明提供的一种高效可扩展的安全的文档相似性计算方法,其步骤包括:
1)服务端使用MinHash文档指纹算法求取文档集中所有文档的指纹集合并构建一个倒排索引S(下面用S指代服务端文档集),并根据S生成一个multi-GBF,记做multi-GBFS;客户端同样使用MinHash文档指纹算法求取文档集中所有文档的指纹集合后构建正排索引C(下面用C指代客户端文档集),并根据C生成一个Bloom filter,记做BFC。反之,服务端也可构建一个正排索引,而客户端构建一个倒排索引。
2)双方运行不经意传输协议,客户端为接收端,并使用BFC作为选择向量,向服务端发起请求,请求进行通信;服务端为发送端,接受客户端的请求并发送m对λ比特长的比特位串其中等于multi-GBFS[i],等于multi-GBFr[i],若multi-GBFS[i]是next比特位串,则multi-GBFr[i]和multi-GBFS[i]的内容相同,否则multi-GBFr[i]是一个随机串。
3)根据不经意传输协议的特性,若BFC[i]等于0,则客户端接收到若BFC[i]等于1,则客户端接收到最终客户端将接收到的比特位串组合成一个C和S交集的multi-GBF,记做
4)对客户端文档集C中的第a个文档Ca,客户端在中检索Ca的每一个指纹元素,最终获得多个交集其中b是Ca的指纹元素在服务端的来源ID。根据交集即可求得客户端的文档Ca和服务端的文档Sb之间的相似度为其中为集合中元素的数量,Sb为服务端文档集S的第b个文档,t为每个文档提取的MinHash指纹数量。
本发明还提供一种用于高效可扩展的安全的文档相似性计算的接收端装置,其包括:
Bloom filter构建模块,用于根据MinHash文档指纹算法将第一方文档集C中所有文档表示成固定数量指纹的指纹集合,并根据第一方文档集C构建一Bloom filter,记做BFC
请求模块,用于将BFC作为不经意传输协议的选择向量,并向第二方发送连接请求;
接收模块,用于接收第二方发送的m对λ比特长的比特位串;并通过不经意传输协议,根据选择向量BFC当前位i的取值是0还是1,选择接收第二方发送的m对λ比特长的比特位串中multi-GBFr或multi-GBFs的第i个比特串,接收的比特位串组成一个文档集C和文档集S的交集的multi-GBF,记做所述multi-GBFS是指第二方根据第二方文档集S构建的multi-GBF,所述multi-GBFr是随机串;
相似度计算模块,用于在中查询文档Ca的每一个指纹元素,得到若干个交集其中Ca为第一方文档集C的第a个文档,的下标b是Ca的指纹元素在第二方的来源ID;并根据上述交集得到第一方的第a个文档Ca和第二方的文档Sb之间的相似度为其中,为集合中元素的数量,Sb为第二方文档集S的第b个文档,t为每个文档提取的MinHash指纹数量。
本发明还提供一种用于高效可扩展的安全的文档相似性计算的发送端装置,其包括:
multi-GBF构建模块,用于根据MinHash文档指纹算法将第二方文档集S中所有文档表示成固定数量指纹的指纹集合,并根据第二方文档集S构建multi-GBF,记做multi-GBFS
接收请求模块,用于接收第一方发送的连接请求;
发送模块,用于向第一方发送m对λ比特长的比特位串,以便第一方通过不经意传输协议,根据选择向量BFC当前位i的取值是0还是1,选择接收m对λ比特长的比特位串中multi-GBFr或multi-GBFs的第i个比特串,接收的比特位串组成一个文档集C和文档集S的交集的multi-GBF,记做进而便于第一方利用计算第一方的文档和第二方的文档之间的相似度;所述BFC是第一方根据第一方文档集C构建的Bloom filter,所述multi-GBFS是指第二方根据第二方文档集S构建的multi-GBF,所述multi-GBFr是随机串。
本发明还提供一种高效可扩展的安全的文档相似性计算系统,其包括上面所述的接收端装置和发送端装置。
本发明基于MinHash文档指纹算法和不经意多来源混淆布隆过滤器交集计算协议,提供了一种高效可扩展的安全的文档相似性计算方法,其优点体现在:
1)使用MinHash文档指纹算法将文档表示成固定数量指纹的指纹集合,既可以较好衡量文档间的相似性,又控制了指纹集合的规模。
2)将多个指纹集合存储到multi-GBF中,不仅可以确定集合元素是否存在,还可以在查找时返回元素的多个来源ID。
3)不经意多来源混淆布隆过滤器交集计算协议可以高效地在两方之间完成安全的文档相似性计算,又不互相暴露自己的私有数据给对方。
4)采用本发明方法计算文档间的相似性的复杂度与文档集合的大小呈线性关系。
附图说明
图1为本发明multi-GBF的比特位串结构示意图。
图2为本发明构建multi-GBF的示意图。
图3为本发明一种高效可扩展的安全的文档相似性计算方法流程图。
图4为1×r的文档相似性计算的时间消耗对比图。
图5为r×r的文档相似性计算的时间消耗对比图。
图6为r×5000的文档相似性计算的时间消耗对比图。
具体实施方式
为使本发明的上述特征和优点能更明显易懂,下文特举实施例,并配合所附图作详细说明如下。
以两方Alice和Bob间进行安全的文档相似性计算为例,两方均从维基百科语料库中随机选取r个文档进行如下操作:
1)使用MinHash文档指纹算法生成指纹集合。
每个文档首先生成其50-grams集合,然后使用100个哈希函数最终选出100个指纹作为文档的指纹集合。
2)Alice将自己所有文档的指纹集合构建正排索引A(下面用A指代Alice文档集),Bob将自己所有文档的指纹集合构建倒排索引B(下面用B指代Bob文档集)。
3)设置协议的安全参数k为80,即Bloom Filter和multi-GBF中的哈希函数数量k均为80个,并且multi-GBF的比特位串中λ1取值为80比特,λ2取值为16比特,λ3取值为32比特。Bloom Filter和multi-GBF的长度m根据文档集生成的所有指纹数量d按照最优参数公式m=k×d×log2e进行取值(e为自然底数)。根据以上设置,Alice使用A构建BloomFilter,记做BFA;Bob使用B构建multi-GBF,记做multi-GBFB
4)选用Y.Ishai等人提出的半诚实模型下的不经意传输扩展协议以及Naor-Pinkas不经意传输协议进行不经意传输,Alice以构造的BFA作为选择向量,Bob以m对λ比特长的比特位串作为输入,其中等于multi-GBFB[i],等于multi-GBFr[i];若multi-GBFB[i]是next比特位串,则multi-GBFr[i]和multi-GBFS[i]的内容相同,否则multi-GBFr[i]被赋值为一个随机串。最终Alice接收到一个关于A和B交集的multi-GBF,记做
5)Alice使用A中的文档的指纹查询就可以求出自己每个文档Aa与每个Bob文档Bb的交集最后求得Alice的文档Aa和Bob的文档Bb之间的相似度为其中Aa为Alice文档集A的第a个文档;Bb为Bob文档集B的第b个文档。
所有的程序均用C++实现,运行在环境为CentOS7.2的操作系统、2.60GHz的IntelXeon CPU、64GB内存的计算机上,网络环境为LAN。分别取不同的r后,得到最终的时间消耗如表1所示。
表1:不同的r的时间消耗
r取值 时间消耗(秒) r取值 时间消耗(秒)
10 0.53 60 2.55
20 0.88 70 2.73
30 1.29 80 3.31
40 1.75 90 3.92
50 2.11 100 4.04
由表1可知,随着文档集中文档数量的增加,时间消耗越来越大,但增长趋势与文档数量仅呈线性关系。
为评估本发明提出的安全的文档相似性计算方法,将本发明方法(记做multi-GBF)与Buyrukbilen等人提出的SimHash方法(记做SimHash)、Blundo等人提出的EsPRESSo方法(记做EsPRESSo)、Dong等人提出的garbled Bloom Filter方法(记做GBF)进行实验对比。
请参考图4,该图表示一方的1个文档与另一方的r个文档进行安全的文档相似性计算的时间消耗,从该图可以看出,四种方法的时间消耗均与r呈线性关系,其时间消耗从小到大的顺序为:SimHash<EsPRESSo<multi-GBF<GBF。
请参考图5,该图表示四种方法应用到两个规模都是r的文档集间进行安全的文档相似性计算时的时间消耗,可以明显看出,此时GBF方法和在图4中效果最好的SimHash方法,它们的时间消耗均与r呈现出平方关系;而EsPRESSo和multi-GBF两种方法,时间消耗依旧与r呈线性关系,并且multi-GBF要优于EsPRESSo。
请参考图6,该图表示EsPRESSo方法和multi-GBF方法进一步详细的对比,在该图中扩大了其中一方文档集的规模,一方的r个文档与另一方固定的5000个文档进行安全的文档相似性计算,从图6中可知,当r的取值较小时,EsPRESSo的表现要优于multi-GBF;但随着r增大,multi-GBF的时间消耗的增长要比EsPRESSo更加缓慢,最终优于EsPRESSo。
根据以上实验结果,可以得到结论:本发明提出的方法在文档集间进行安全的文档相似性计算要比已有的方法更加高效。
本发明的另一实施例,提供一种用于高效可扩展的安全的文档相似性计算的接收端装置,其包括:
Bloom filter构建模块,用于根据MinHash文档指纹算法将第一方文档集C中所有文档表示成固定数量指纹的指纹集合,并根据第一方文档集C构建一Bloom filter,记做BFC
请求模块,用于将BFC作为不经意传输协议的选择向量,并向第二方发送连接请求;
接收模块,用于接收第二方发送的m对λ比特长的比特位串;并通过不经意传输协议,根据选择向量BFC当前位i的取值是0还是1,选择接收第二方发送的m对λ比特长的比特位串中multi-GBFr或multi-GBFs的第i个比特串,接收的比特位串组成一个文档集C和文档集S的交集的multi-GBF,记做所述multi-GBFS是指第二方根据第二方文档集S构建的multi-GBF,所述multi-GBFr是随机串;
相似度计算模块,用于在中查询文档Ca的每一个指纹元素,得到若干个交集其中Ca为第一方文档集C的第a个文档,的下标b是Ca的指纹元素在第二方的来源ID;并根据上述交集得到第一方的第a个文档Ca和第二方的文档Sb之间的相似度为其中,为集合中元素的数量,Sb为第二方文档集S的第b个文档,t为每个文档提取的MinHash指纹数量。
本发明的另一实施例,提供一种用于高效可扩展的安全的文档相似性计算的发送端装置,其包括:
multi-GBF构建模块,用于根据MinHash文档指纹算法将第二方文档集S中所有文档表示成固定数量指纹的指纹集合,并根据第二方文档集S构建multi-GBF,记做multi-GBFS
接收请求模块,用于接收第一方发送的连接请求;
发送模块,用于向第一方发送m对λ比特长的比特位串,以便第一方通过不经意传输协议,根据选择向量BFC当前位i的取值是0还是1,选择接收m对λ比特长的比特位串中multi-GBFr或multi-GBFs的第i个比特串,接收的比特位串组成一个文档集C和文档集S的交集的multi-GBF,记做进而便于第一方利用计算第一方的文档和第二方的文档之间的相似度;所述BFC是第一方根据第一方文档集C构建的Bloom filter,所述multi-GBFS是指第二方根据第二方文档集S构建的multi-GBF,所述multi-GBFr是随机串。
本发明的另一实施例,提供一种高效可扩展的安全的文档相似性计算系统,其包括上面所述的接收端装置和发送端装置。
以上实施例仅用以说明本发明的技术方案而非对其进行限制,本领域的普通技术人员可以对本发明的技术方案进行修改或者等同替换,而不脱离本发明的精神和范围,本发明的保护范围应以权利要求书所述为准。

Claims (11)

1.一种高效可扩展的安全的文档相似性计算方法,其步骤包括:
第一方根据MinHash文档指纹算法将第一方文档集C中所有文档表示成固定数量指纹的指纹集合,并根据第一方文档集C构建一Bloom filter,记做BFC
第一方将BFC作为不经意传输协议的选择向量,并向第二方发送连接请求;其中所述第二方亦根据MinHash文档指纹算法将第二方文档集S中所有文档表示成固定数量指纹的指纹集合;
第一方接收第二方发送的m对λ比特长的比特位串,通过不经意传输协议,第一方根据选择向量BFC当前位i的取值是0还是1,选择接收m对λ比特长的比特位串中multi-GBFr或multi-GBFs的第i个比特串,接收的比特位串组成一个文档集C和文档集S的交集的multi-GBF,记做multi-所述multi-GBFS是指第二方根据第二方文档集S构建的multi-GBF,所述multi-GBFr是随机串;
第一方在multi-中查询文档Ca的每一个指纹元素,得到若干个交集其中Ca为第一方文档集C的第a个文档,的下标b是Ca的指纹元素在第二方的来源ID;
根据上述交集得到第一方的第a个文档Ca和第二方的文档Sb之间的相似度为其中,为集合中元素的数量,Sb为第二方文档集S的第b个文档,t为每个文档提取的MinHash指纹数量。
2.如权利要求1所述的方法,其特征在于,所述第一方文档集C的存储结构为倒排索引,所述第二方文档集S的存储结构为正排索引。
3.如权利要求1所述的方法,其特征在于,在不经意传输过程中,第二方发送的m对λ比特长的比特位串的形式为等于multi-GBFS[i],等于multi-GBFr[i];其中所述multi-GBFS[i]中的i为multi-GBFS的第i个比特位,所述multi-GBFr[i]中的i为multi-GBFr的第i个比特位,且0≤i≤m-1。
4.如权利要求3所述的方法,其特征在于,当multi-GBFS[i]是next比特位串时,multi-GBFr[i]和multi-GBFS[i]的内容相同;所述next比特位串是指next位置存储的比特位串。
5.如权利要求1所述的方法,其特征在于,当不经意传输协议的选择向量BFC[i]等于0时,第一方接收当不经意传输协议的选择向量BFC[i]等于1时,第一方接收其中BFC[i]中的i为BFC的第i个比特位,且0≤i≤m-1。
6.如权利要求1所述的方法,其特征在于,所述multi-GBF包含一个长度为m的存储空间和k个哈希函数,且multi-GBF的存储单元为一个λ比特长的比特位串;所述λ比特长的比特位串包括λ1比特长的元素标识、λ2比特长的来源ID标识和λ3比特长的next标识。
7.如权利要求6所述的方法,其特征在于,构建multi-GBF的过程包括以下步骤:
1)根据k个哈希函数将待添加指纹元素x1映射到k个哈希位置;
2)将待添加指纹元素x1、待添加指纹元素x1的当前来源ID和一next标识组成一λ比特长的比特位串基于抑或的秘密共享将分割成k份,并存储到上述k个哈希位置上;
3)若待添加指纹元素x1只有一个来源ID,则中next位置填充null;
4)若待添加指纹元素x1至少有两个来源ID,则中next位置指向一个不与所有指纹元素的哈希位置冲突的空位,并将待添加指纹元素x1、待添加指纹元素x1的一新的来源ID以及新的next标识构造一新的λ比特长的比特位串
5)根据加密的哈希函数hkey求取的哈希值,将该哈希值作为密钥对进行抑或加密,并将加密后的存储到next位置。
8.如权利要求7所述的方法,其特征在于,在multi-中查询待查询指纹元素y的步骤包括:
1)根据k个哈希函数将待查询指纹元素y映射到k个哈希位置;
2)将上述k个哈希位置上的比特位串进行抑或解密,得到结果位串Y;
3)若Y的前λ1比特和待查询指纹元素y相同,则待查询指纹元素y在multi-中存在,收集待查询指纹元素y的当前来源ID,并根据next获取下一个哈希位置的比特位串;
4)将加密的哈希函数hkey作用到Y上得到哈希串Ykey,并将该Ykey作为密钥与next所在位置的比特位串抑或解密,得到新的结果位串Y’;
5)若Y’的前λ1比特和待查询指纹元素y相同,则继续收集待查询指纹元素y的当前来源ID;当next为null时,查询结束。
9.一种用于高效可扩展的安全的文档相似性计算的接收端装置,其特征在于,包括:
Bloom filter构建模块,用于根据MinHash文档指纹算法将第一方文档集C中所有文档表示成固定数量指纹的指纹集合,并根据第一方文档集C构建一Bloom filter,记做BFC
请求模块,用于将BFC作为不经意传输协议的选择向量,并向第二方发送连接请求;
接收模块,用于接收第二方发送的m对λ比特长的比特位串;并通过不经意传输协议,根据选择向量BFC当前位i的取值是0还是1,选择接收第二方发送的m对λ比特长的比特位串中multi-GBFr或multi-GBFs的第i个比特串,接收的比特位串组成一个文档集C和文档集S的交集的multi-GBF,记做multi-所述multi-GBFS是指第二方根据第二方文档集S构建的multi-GBF,所述multi-GBFr是随机串;
相似度计算模块,用于在multi-中查询文档Ca的每一个指纹元素,得到若干个交集其中Ca为第一方文档集C的第a个文档,的下标b是Ca的指纹元素在第二方的来源ID;并根据上述交集得到第一方的第a个文档Ca和第二方的文档Sb之间的相似度为其中,为集合中元素的数量,Sb为第二方文档集S的第b个文档,t为每个文档提取的MinHash指纹数量。
10.一种用于高效可扩展的安全的文档相似性计算的发送端装置,其特征在于,包括:
multi-GBF构建模块,用于根据MinHash文档指纹算法将第二方文档集S中所有文档表示成固定数量指纹的指纹集合,并根据第二方文档集S构建multi-GBF,记做multi-GBFS
接收请求模块,用于接收第一方发送的连接请求;
发送模块,用于向第一方发送m对λ比特长的比特位串,以便第一方通过不经意传输协议,根据选择向量BFC当前位i的取值是0还是1,选择接收m对λ比特长的比特位串中multi-GBFr或multi-GBFs的第i个比特串,接收的比特位串组成一个文档集C和文档集S的交集的multi-GBF,记做multi-进而便于第一方利用multi-计算第一方的文档和第二方的文档之间的相似度;所述BFC是第一方根据第一方文档集C构建的Bloom filter,所述multi-GBFS是指第二方根据第二方文档集S构建的multi-GBF,所述multi-GBFr是随机串。
11.一种高效可扩展的安全的文档相似性计算系统,其特征在于,包括权利要求9所述的接收端装置和权利要求10所述的发送端装置。
CN201710930206.8A 2017-10-09 2017-10-09 一种高效可扩展的安全的文档相似性计算方法和装置 Active CN107885705B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201710930206.8A CN107885705B (zh) 2017-10-09 2017-10-09 一种高效可扩展的安全的文档相似性计算方法和装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710930206.8A CN107885705B (zh) 2017-10-09 2017-10-09 一种高效可扩展的安全的文档相似性计算方法和装置

Publications (2)

Publication Number Publication Date
CN107885705A true CN107885705A (zh) 2018-04-06
CN107885705B CN107885705B (zh) 2020-12-15

Family

ID=61781154

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710930206.8A Active CN107885705B (zh) 2017-10-09 2017-10-09 一种高效可扩展的安全的文档相似性计算方法和装置

Country Status (1)

Country Link
CN (1) CN107885705B (zh)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110083743A (zh) * 2019-03-28 2019-08-02 哈尔滨工业大学(深圳) 一种基于统一采样的快速相似数据检测方法
CN112232367A (zh) * 2020-09-10 2021-01-15 山东师范大学 一种网络行为相似性判断方法及系统
CN113032840A (zh) * 2021-05-26 2021-06-25 腾讯科技(深圳)有限公司 一种数据处理方法、装置、设备及计算机可读存储介质
CN113722366A (zh) * 2021-09-14 2021-11-30 长沙理工大学 一种基于不经意密文倒排索引的安全数据检索方法
CN113779597A (zh) * 2021-08-19 2021-12-10 深圳技术大学 加密文档的存储和相似检索方法、装置、设备及介质

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20100067816A (ko) * 2008-12-12 2010-06-22 주식회사 케이티 프라이버시를 보호하는 개인화 추천 서비스 제공방법 및 제공서버
CN104424254A (zh) * 2013-08-28 2015-03-18 阿里巴巴集团控股有限公司 获取相似对象集合、提供相似对象信息的方法及装置
CN105630767A (zh) * 2015-12-22 2016-06-01 北京奇虎科技有限公司 一种文本相似性的比较方法以及装置
CN106326360A (zh) * 2016-08-10 2017-01-11 武汉科技大学 一种云环境中密文数据的模糊多关键词检索方法
CN106372202A (zh) * 2016-08-31 2017-02-01 北京奇艺世纪科技有限公司 文本相似度计算方法及装置
CN106649221A (zh) * 2016-12-06 2017-05-10 北京锐安科技有限公司 重复文本的检测方法及装置
CN106681688A (zh) * 2016-12-28 2017-05-17 北京酷云互动科技有限公司 一种基于minhash的集合相似度计算方法和系统

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20100067816A (ko) * 2008-12-12 2010-06-22 주식회사 케이티 프라이버시를 보호하는 개인화 추천 서비스 제공방법 및 제공서버
CN104424254A (zh) * 2013-08-28 2015-03-18 阿里巴巴集团控股有限公司 获取相似对象集合、提供相似对象信息的方法及装置
CN105630767A (zh) * 2015-12-22 2016-06-01 北京奇虎科技有限公司 一种文本相似性的比较方法以及装置
CN106326360A (zh) * 2016-08-10 2017-01-11 武汉科技大学 一种云环境中密文数据的模糊多关键词检索方法
CN106372202A (zh) * 2016-08-31 2017-02-01 北京奇艺世纪科技有限公司 文本相似度计算方法及装置
CN106649221A (zh) * 2016-12-06 2017-05-10 北京锐安科技有限公司 重复文本的检测方法及装置
CN106681688A (zh) * 2016-12-28 2017-05-17 北京酷云互动科技有限公司 一种基于minhash的集合相似度计算方法和系统

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
SACHENDRA SINGH CHAUHAN等: "Finding Similar Items using LSH and Bloom Filter", 《ICACCCT》 *
申立艳等: "隐私保护集合交集计算技术研究综述", 《计算机研究与发展》 *

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110083743A (zh) * 2019-03-28 2019-08-02 哈尔滨工业大学(深圳) 一种基于统一采样的快速相似数据检测方法
CN112232367A (zh) * 2020-09-10 2021-01-15 山东师范大学 一种网络行为相似性判断方法及系统
CN112232367B (zh) * 2020-09-10 2022-06-21 山东师范大学 一种网络行为相似性判断方法及系统
CN113032840A (zh) * 2021-05-26 2021-06-25 腾讯科技(深圳)有限公司 一种数据处理方法、装置、设备及计算机可读存储介质
CN113032840B (zh) * 2021-05-26 2021-07-30 腾讯科技(深圳)有限公司 一种数据处理方法、装置、设备及计算机可读存储介质
CN113779597A (zh) * 2021-08-19 2021-12-10 深圳技术大学 加密文档的存储和相似检索方法、装置、设备及介质
CN113779597B (zh) * 2021-08-19 2023-08-18 深圳技术大学 加密文档的存储和相似检索方法、装置、设备及介质
CN113722366A (zh) * 2021-09-14 2021-11-30 长沙理工大学 一种基于不经意密文倒排索引的安全数据检索方法
CN113722366B (zh) * 2021-09-14 2024-05-03 长沙理工大学 一种基于不经意密文倒排索引的安全数据检索方法

Also Published As

Publication number Publication date
CN107885705B (zh) 2020-12-15

Similar Documents

Publication Publication Date Title
Ge et al. Towards achieving keyword search over dynamic encrypted cloud data with symmetric-key based verification
Cui et al. Efficient and expressive keyword search over encrypted data in cloud
Shen et al. Secure phrase search for intelligent processing of encrypted data in cloud-based IoT
CN107885705A (zh) 一种高效可扩展的安全的文档相似性计算方法和装置
KR101843340B1 (ko) 프라이버시―보존 협력 필터링
JP6180177B2 (ja) プライバシーを保護することができる暗号化データの問い合わせ方法及びシステム
CN105024802B (zh) 云存储中基于双线性对的多用户多关键词可搜索加密方法
CN105049196B (zh) 云存储中指定位置的多个关键词可搜索的加密方法
CN106803784A (zh) 安全多媒体云存储中基于格的多用户模糊可搜索加密方法
CN107734054A (zh) 安全云存储中的加密数据检索系统
CN107256248A (zh) 云存储安全中基于通配符的可搜索加密方法
CN108062485A (zh) 一种面向多服务器多用户的模糊关键字搜索方法
CN105610910A (zh) 面向云存储并基于全同态密码的密文全文检索方法及系统
Yang et al. Flexible wildcard searchable encryption system
CN109740364A (zh) 可控搜索权限的基于属性的密文搜索方法
CN110222081A (zh) 多用户环境下基于细粒度排序的数据密文查询方法
CN106453393B (zh) 参与式感知中可验证的隐私保护数据类型匹配方法
CN108021677A (zh) 云计算分布式检索引擎的控制方法
CN109194666A (zh) 一种基于LBS的安全kNN查询方法
Wang et al. A modified homomorphic encryption method for multiple keywords retrieval
CN116827670A (zh) 一种基于国密算法的智能医疗数据安全共享方法
CN115905317A (zh) 一种空间数据联邦的隐私保护范围聚合查询方法
Xu et al. Achieving fine-grained multi-keyword ranked search over encrypted cloud data
Greschbach et al. User search with knowledge thresholds in decentralized online social networks
CN109740377A (zh) 一种可防伪造的多用户密文搜索方法

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant