一种基于不可信第三方隐私数据求交集散列校验方法
文献发布时间:2023-06-19 10:35:20
技术领域
本发明涉及安全多方计算技术领域,具体为一种基于不可信第三方隐私数据求交集散列校验方法。
背景技术
隐私保护集合交集(Private Set Intersection,PSI)计算属于安全多方计算领域的特定应用问题,不仅具有重要的理论意义也具有很强的应用价值。随着用户数据的隐私保护越来越受到重视,这一方向的研究更是符合人们日益强烈的在享受各类依赖个人信息的业务的便利性的同时最大程度保护个人信息私密性的需要。
隐私保护集合交集协议允许持有各自集合的两方来共同计算两个集合的交集运算。在协议交互的最后,一方或是两方应该得到正确的交集,而且不会得到交集以外另一方集合中的任何信息。保护集合的隐私性是在很多场景下是自然甚至是必要的需求,比如当集合是某用户的通讯录或是某基因诊断服务用户的基因组,这样的输入就一定要通过密码学的手段进行保护。
为了证明某种协议的安全性,敌手的能力和安全性的含义是必须严格定义的。关于安全性的严格定义在不同协议中有着不同的体现,但是思想都基于理想PSI协议的功能。对于敌手定义,密码学中常见的三种定义为:
(1)半诚实模型(honest but curious adversaryHbC)。协议的各参与方遵守协议的执行过程,但可以在协议执行过程中,根据输入和协议的输出信息推断其他参与者的信息。
(2)恶意模型(malicious adversary Mal)。参与者不遵守协议的执行过程,可能拒绝参与协议、修改隐私的输入集合信息、提前终止协议的执行等,因此需要使用更多的密码协议或技术(位比特承诺协议、零知识证明等)来保证计算结果的正确性。
(3)隐蔽敌手模型(covert adversary)。是一种安全性介于半诚实模型和恶意模型之间的更符合真实场景的模型,由于担心恶意行为被协议检测出来并受到惩罚,隐蔽敌手使其恶意行为混淆在正常行为中,只能以一定的概率被检测到。
安全多方计算协议一般会存在半诚实模型下安全的版本和恶意模型下安全的版本。虽然半诚实模型对敌手的限制很大,在很多情况下并不是合理的假设,但是首先设计出半诚实模型可以作为设计恶意模型安全协议的第一步(GMW编译器可以实现从半诚实模型到恶意模型的通用、但不高效的转化);其次在某些场景下,半诚实模型中敌手必须按照协议规定进行交互的限制是合理的(比如恶意行为一旦发现就有很严格的处罚的场景);最后恶意模型为了保证安全性会给协议带来一些额外的负担,使得半诚实模型下安全的版本会比恶意模型安全的协议高效很多。
同样,在目前的PSI协议中,常见的敌手模型为半诚实模型和恶意模型。而且由于恶意模型中一方可能会刻意获取另一方的信息(通过主动地偏离协议的规定来达到这一目的),协议需要使用额外的手段来防止这类攻击的可能,因此恶意模型下安全的协议的复杂程度和开销一般都大于半诚实模型下安全的协议。
目前,不可信计算方C可以返回给参与方A和参与方B错误的交集结果,假设交集的结果是{4,5,6,7},计算方C在返回计算结果时给参与方A返回{1,4,5},给参与方B返回{5,6,7},这样明显不是正确的交集。为了防止出现此种问题,我们提出了一种基于不可信第三方隐私数据求交集散列校验方法。
发明内容
本发明的目的在于提供一种基于不可信第三方隐私数据求交集散列校验方法,通过参与方A与参与方B对从计算方C获取的计算结果集合进行Hash校验,来防止计算方C提供错误的数据集合。
为实现上述目的,本发明提供如下技术方案:一种基于不可信第三方隐私数据求交集散列校验方法,包括以下步骤:
第一步,参与方A与参与方B共同协商一个密钥K;
第二步,参与方A与参与方B使用协商的密钥K将各自的数据集
第三步,参与方A与参与方B将各自经过函数F处理过后的集合
第四步,计算方C计算集合
第五步,参与方A与参与方B使用协商的密钥K解密从计算方C得到的交集,得到最终的结果;
第六步,参与方A与参与方B将各自从计算方C接收到的结果通过哈希函数形成结果集合Hash列表;
第七步,参与方A与参与方B双方交换结果集合Hash列表;
第八步,参与方A与参与方B各自将自己的结果集合Hash列表与对方结果集合Hash列表进行匹配,若都能够匹配,则接受计算方C返回的结果,否则拒绝此次交集计算结果。
优选的,在第二步中,函数F采用伪随机函数。
优选的,在第二步中,集合
集合的转换公式为:
其中,F为伪随机函数,K为参与方A与参与方B共同协商的密钥。
与现有技术相比,本发明的有益效果如下:
本发明通过参与方A与参与方B双方交换结果集合Hash列表,并与对方的结果集合Hash列表进行比对,可以防止计算方C在返回计算结果时,给参与方A与参与方B反馈错误的交集,从而保证计算方C反馈的计算结果的准确性。
附图说明
图1为本发明的计算流程示意图;
图2为本发明参与方A与参与方B校验方法流程示意图;
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
实施例
请参阅图1至图2,本发明提供一种技术方案,一种基于不可信第三方隐私数据求交集散列校验方法,包括以下步骤:
第一步,参与方A与参与方B共同协商一个密钥K;
第二步,参与方A与参与方B使用协商的密钥K将各自的数据集:
通过伪随机函数F转换为集合
第三步,参与方A与参与方B将各自经过伪随机函数F处理过后的集合
第四步,计算方C计算集合
第五步,参与方A与参与方B使用协商的密钥K解密从计算方C得到的交集,得到最终的结果;本实施例中,解密后的集合为:
第六步,参与方A与参与方B将各自从计算方C接收到的结果通过哈希函数形成结果集合Hash列表;
第七步,参与方A与参与方B双方交换结果集合Hash列表;
第八步,参与方A与参与方B各自将自己的结果集合Hash列表与对方结果集合Hash列表进行匹配,若都能够匹配,则接受计算方C返回的结果,否则拒绝此次交集计算结果。
本发明通过参与方A与参与方B双方交换结果集合Hash列表,并与对方的结果集合Hash列表进行比对,可以防止计算方C在返回计算结果时,给参与方A与参与方B反馈错误的交集,从而保证计算方C反馈的计算结果的准确性。
尽管已经示出和描述了本发明的实施例,对于本领域的普通技术人员而言,可以理解在不脱离本发明的原理和精神的情况下可以对这些实施例进行多种变化、修改、替换和变型,本发明的范围由所附权利要求及其等同物限定。
- 一种基于不可信第三方隐私数据求交集散列校验方法
- 一种基于可信第三方隐私数据求交集方法