[发明专利]应用私有集合交集的公钥加密的布隆过滤器有效
申请号: | 201210236827.3 | 申请日: | 2012-07-09 |
公开(公告)号: | CN103095453A | 公开(公告)日: | 2013-05-08 |
发明(设计)人: | F.科施鲍姆 | 申请(专利权)人: | SAP股份公司 |
主分类号: | H04L9/32 | 分类号: | H04L9/32;H04L9/30 |
代理公司: | 北京市柳沈律师事务所 11105 | 代理人: | 邵亚丽 |
地址: | 德国瓦*** | 国省代码: | 德国;DE |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 应用 私有 集合 交集 加密 过滤器 | ||
技术领域
本发明涉及应用私有集合交集的公钥加密的布隆过滤器。
背景技术
布隆(Bloom)过滤器是一种具有良好空间效率的盖然论的(probabilistic)数据结构,用来测试一个元素是否为一个集合中的元素。布隆过滤器被提供为位阵列,当布隆过滤器为空时,每个位被设定为0。提供多个不同的散列函数(hash functions),每个散列函数以统一的随机分布将一些集合元素映射或散列(hashing)到阵列位置中的一个。为了将集合的元素添加到布隆过滤器,所述元素被提供给每一个散列函数,以得到多个相应的阵列位置。阵列位置中的每一个被设定到1。为了确定元素是否在布隆过滤器中,再次将元素提供给每个散列函数,以再次确定阵列位置。如果在所述阵列位置处的任何位等于0,则所述元素不在所述集合中。如果在所述阵列位置处的所有位等于1,则所述元素在所述集合中,虽然可能存在误判(false positive)。
私有集合交集(Private set intersection,PSI)能够使各参与方,例如客户端和服务方,计算包括在它们各自的集合中的元素的交集,而不会公开关于这些元素的任何信息。在此过程期间,客户端能够获知(learn)在集合内的元素的交集,而相反,服务方则不能获知在集合内的元素的交集。PSI具有许多应用,因此是许多基于搜索的计算技术的基础建造模块,比如搜索存储DNA档案的法庭数据库的执法系统,或涉及到具有多种角色的各参与方的供应链管理系统。一种检查在两个集合内的元素的交集的方案是使用布隆过滤器。而布隆过滤器的一个缺点在于机密性(confidentiality)。
发明内容
通常,本公开的实施方式在于一种方法,包括动作:从计算机可读存储器检索第一集合,第一集合包括多个元素;使用计算设备将第一集合的元素添加到第一布隆过滤器,第一布隆过滤器包括多个位;以及使用所述计算设备加密第一布隆过滤器的多个位中的每个位,以提供第一加密的布隆过滤器,加密使用同态的(homomorphic)、公钥加密来完成。
在一些实施方式中,动作还包括对第一加密的布隆过滤器执行操作。
在一些实施方式中,操作包括将元素添加到第一加密的布隆过滤器的元素添加、确定元素是否存在于第一加密的布隆过滤器中的元素包含验证、以及将第一加密的布隆过滤器的内容与第二布隆过滤器的内容进行比较中的至少一个。
在一些实施方式中,第二布隆过滤器包括第二加密的布隆过滤器。
在一些实施方式中,动作还包括确定第一布隆过滤器对于操作的索引,所述操作包括添加操作,并且对于第一布隆过滤器的每个位,如果通过添加操作来设定位则将所述位设定为等于1,而如果不通过添加操作来设定位则对所述位进行随机化。
在一些实施方式中,动作还包括确定与可能存在于第一布隆过滤器中的元素相对应的第一布隆过滤器的索引,所述操作包括测试操作,对于与所述索引相对应的每个设定的布隆过滤器、对密文进行扩展,以提供扩展的密文,使用同态性(homomorphism)对于所有设定的位计算逻辑与(AND)操作,以及生成扩展的密文是二次剩余(quadratic residue)的零知识证明(zero knowledge proof,ZKP)。
在一些实施方式中,操作是非交互(non-interactive)操作,从而所述操作能够被执行而无需解密第一加密的布隆过滤器。
在一些实施方式中,所述同态的、公钥加密包括Goldwasser-Micali(GM)加密。
在一些实施方式中,所述同态的、公钥加密包括Boneh、Goh、Nissim(BGN)加密。
在一些实施方式中,加密包括基于第一布隆过滤器的许多散列函数生成公钥、私钥对。
在一些实施方式中,使用公钥完成第一布隆过滤器的加密。
在一些实施方式中,动作还包括传送第一加密的布隆过滤器,在计算设备处接收第一加密的返回集合,第一加密的返回集合基于第一加密的布隆过滤器和第二集合来生成,第二集合包括多个元素,使用计算设备解密第一加密的返回集合,以提供第一返回集合,以及确定第一集合和第一返回集合之间的交集。
在一些实施方式中,在第一集合和第一返回集合之间的交集代表第一集合和第二集合之间的交集。
在一些实施方式中,动作还包括将第一集合、第一布隆过滤器、以及第一加密的布隆过滤器传送到可信第三方,从可信第三方接收签名,以及将签名传送到实体,该实体是第二集合的拥有者。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于SAP股份公司,未经SAP股份公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201210236827.3/2.html,转载请声明来源钻瓜专利网。
- 上一篇:包装容器结构
- 下一篇:耐腐蚀烟筒的高效烧水壶