一种基于不可信第三方隐私数据求交集扰动校验方法
文献发布时间: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返回{4,5},给参与方B返回{4,5},这样明显不是正确的交集,此时即使参与方A和参与方B进行结果集的Hash校验也无法察觉结果不对劲。为了解决这个问题,我们提出了一种基于不可信第三方隐私数据求交集扰动校验方法。
发明内容
本发明的目的在于提供一种基于不可信第三方隐私数据求交集扰动校验方法,使参与方A与参与方B通过对从计算方C获取的计算结果集合进行添加扰动值,从而防止计算方C作恶。
为实现上述目的,本发明提供如下技术方案:一种基于不可信第三方隐私数据求交集扰动校验方法,包括以下步骤:
第一步,参与方A与参与方B共同协商一个密钥K,同时选择一个冗余参数t;
第二步,参与方A与参与方B使用协商的密钥K以及冗余参数t将各自的数据集
第三步,参与方A与参与方B将各自经过函数F处理过后的集合
第四步,计算方C计算集合
第五步,参与方A与参与方B使用协商的密钥K解密从计算方C得到的交集,得到最终的校验结果集合;
第六步,参与方A与参与方B将各自从校验结果集合解密出来的冗余参数t是否与原来的一致,一致则接受交集结果,否则拒绝。
优选的,所述冗余参数t为(1,2,3,...,t)中任意一个数值。
优选的,在第二步中,函数F采用伪随机函数。
优选的,在第二步中,集合
集合
其中,F为伪随机函数,K为参与方A与参与方B共同协商的密钥,j代表冗余参数t。
与现有技术相比,本发明的有益效果如下:
本发明通过参与方A与参与方B对从计算方C获取的计算结果集合进行添加扰动值,可以防止计算方C在返回计算结果时,给参与方A与参与方B反馈错误的交集,从而保证计算方C反馈的计算结果的准确性。
附图说明
图1为本发明的方法流程示意图;
图2为本发明实施1的流程图;
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
实施例1
请参阅图1至图2,本发明提供一种技术方案:一种基于不可信第三方隐私数据求交集扰动校验方法:
第一步,参与方A与参与方B共同协商一个密钥K,同时选择一个冗余参数t,使t=3;
第二步,参与方A与参与方B使用协商的密钥K以及冗余参数3将各自的数据集:
通过伪随机函数F转换为集合
第三步,参与方A与参与方B将各自经过函数F处理过后的集合
第四步,计算方C计算集合
第五步,参与方A与参与方B使用协商的密钥K解密从计算方C得到的交集,得到最终的校验结果集合,本实施例中,解密后的集合为:
第六步,参与方A与参与方B将各自从校验结果集合解密出来的冗余参数t是否与原来的一致,一致则接受交集结果,否则拒绝,本实施例中,提取冗余参数t=3,与原来的相同,故接收交集结果。
实施例2
在实施例1的第五步中,若参与方A与参与方B使用协商的密钥K解密从计算方C得到的交集,得到的解密后的集合为:
在第六步中,参与方A与参与方B将各自从校验结果集合解密出来的冗余参数t=2,此时的冗余参数与原来的冗余参数t=3不同,故参与双方拒绝校验结果。
通过上述实施例1和实施例2的比较可知,本发明通过参与方A与参与方B对从计算方C获取的计算结果集合进行添加扰动值,可以防止计算方C在返回计算结果时,给参与方A与参与方B反馈错误的交集,从而保证计算方C反馈的计算结果的准确性。
尽管已经示出和描述了本发明的实施例,对于本领域的普通技术人员而言,可以理解在不脱离本发明的原理和精神的情况下可以对这些实施例进行多种变化、修改、替换和变型,本发明的范围由所附权利要求及其等同物限定。
- 一种基于不可信第三方隐私数据求交集扰动校验方法
- 一种基于不可信第三方隐私数据求交集散列校验方法