本发明属于安全,涉及一种多方隐私集合求交的方法,具体涉及一种基于矩阵密钥的多方隐私集合求交的方法,可用于金融行业、市场研究和社会科学研究等领域。
背景技术:
1、随着数字化时代的到来,个人和组织的数据规模和价值不断增加,因此在金融行业等领域完成特定的计算任务的过程中,保护数据的安全和隐私成为一项重要任务。隐私集合交集计算问题是安全计算领域内的一类子问题,具有十分广泛的应用场景。
2、隐私集合通常是指包含敏感数据或个人信息的数据集合。每个参与方持有一个自己的隐私集合,这些集合可能包含参与方的个人标识、偏好或者行为数据等。多方隐私集合求交集通常是指在不暴露数据集合中的具体数据内容的前提下,对多个参与方的隐私集合进行计算,找到各个集合的交集。多方隐私集合的交集计算可以用于一致性检查和数据合并。多个参与方通过对隐私集合进行交集计算,来确定他们持有的共同数据,从而实现数据的一致性验证和合并。例如,在金融行业,多个银行可以对自己银行的客户隐私集合进行交集计算,来验证客户在不同银行间的一致性,后续可以对合并的客户数据进行风险评估、反欺诈分析等,这个过程无需共享各个银行之间具体的客户信息。另外,多方隐私集合的交集计算可以用于确定多个隐私集合之间的关联和共同属性。参与方可以通过集合交集计算来确定它们之间共同的特征或属性,从而获得有关数据之间的关联性。这对于市场研究、社会科学研究等领域非常有用,可以洞察数据之间的关系,而无需揭示具体数据。同时,隐私集合求交可以帮助组织和个人满足数据隐私法规和合规要求,使得数据处理可以在不暴露敏感信息的情况下进行,从而推动了安全和可信的数据处理和分析。
3、多方隐私集合求交集的基本原理是多个参与方共同确定执行隐私交集计算的协议或者方案,利用哈希函数等技术对各自的集合进行预处理,然后通过安全的通信通道将预处理后的集合信息发送给其他参与方,各方相互协作,执行计算协议获取交集结果。在进行求交集的过程中,直接将隐私数据进行比较,或者采用隐私性较差的加密方式加密后进行比较,容易泄露集合中的数据内容,存在一定的安全性风险,并且多方隐私集合求交集通常涉及多个参与方之间的通信和计算协作,采用一般的加密方式加密隐私数据时,通常每次比较都需生成一个新的密钥,在参与方数量较多或者集合规模较大时,将会产生较高的通信开销。例如极术(杭州)科技有限公司申请的专利文献“多方隐私求交中的数据处理方法及系统”(申请号:202310373932.x申请公布号:cn 116112168 a),提供了一种多方隐私求交中的数据处理方法,实现步骤为:初始化参数,对数据集合进行处理,确定各参与方的交集结果。在初始化参数时,在各参与方中同步预设数量的哈希函数;在对数据集合进行处理时,分两个步骤完成,首先,各参与方确定伪随机参数,并根据伪随机参数和业务数据集合生成各参与方对应的点对数据集合,其次,根据各参与方对应的点对数据集合和预设数量的哈希函数,创建各参与方对应的混淆布隆过滤器;在确定各参与方的交集结果时,根据各参与方对应的混淆布隆过滤器,确定各参与方对应的目标交集数据集合。该发明在隐私集合求交集的过程中结合零的分享技术,一定程度上降低了共享的通信复杂度,但仍具有较大的通信开销,同时隐私数据集合的安全性仍需加强。
技术实现思路
1、本发明的目的在于针对上述现有技术存在的不足,提供了一种基于矩阵密钥的多方隐私集合求交方法,用于解决现有的技术中存在的隐私数据安全性较差和通信开销较大的技术问题。
2、为实现上述目的,本发明采取的技术方案为包括如下步骤:
3、(1)初始化参数:
4、初始化n个参与方中一个参与方pn为指定参与方,其持有的隐私数据集合为yn={y1,y2,...,yj,...,yj},其余的m个参与方p={p1,p2,...,pm,...,pm}为普通参与方,每个普通参与方pm持有的隐私数据集合为ym={y1m,y2m,...,yim,...,yim},每个普通参与方pm的随机二进制字符串为sm;初始化维度为q×w的二进制矩阵为a=a1||a2||...||aw||...||aw,p对应的q×w维的元素全为1的常数矩阵为d={d1,d2,...,dm,...,dm},dm=d1||d2||...||dw||...||dw,哈希函数h的表达式为h:{0,1}w→{0,1}λ,其中,n≥3,yj表示pn持有的第j个隐私数据,j表示yn中隐私数据的个数,j≥1,yim表示隐私数据集合ym的第i个隐私数据,i表示隐私数据集合ym中的隐私数据的个数,i≥1,m=n-1,aw表示二进制矩阵a的第w个列向量,||表示连接操作,dw表示第m个常数矩阵dm的第w个列向量,{0,1}w表示长度为w的二进制字符串,λ表示哈希函数h的输出的二进制字符串的固定长度,→表示生成操作;
5、(2)任一个普通参与方向每个普通参与方发送共享二进制矩阵:
6、任一个普通参与方pk,k∈[m]对维度为q×w的二进制矩阵a进行布尔共享,得到m个共享二进制矩阵a'={a1',a2',...,am',..,am'},并将第m个共享二进制矩阵am'发送给其对应的普通参与方pm;
7、(3)每个普通参与方计算二进制矩阵bm:
8、每个普通参与方pm通过共享二进制矩阵am'计算二进制矩阵bm;
9、(4)指定参与方获取二进制密钥矩阵c:
10、指定参与方pn通过二进制矩阵bm获取二进制密钥矩阵c;
11、(5)指定参与方对自己持有的隐私数据集合进行双重加密:
12、指定参与方pn计算隐私数据集合yn的伪随机函数值集合vn,并通过vn和二进制密钥矩阵c对隐私数据集合yn进行加密,得到一重加密的字符串集合tn,然后使用哈希函数h对tn进行哈希映射,实现对yn的二重加密,再将二重加密得到的字符串集合发送给普通参与方pk;
13、(6)普通参与方对自己持有的隐私数据集合进行双重加密:
14、普通参与方pk计算隐私数据集合yk的伪随机函数值集合vk,并通过vk和二进制矩阵a对隐私数据集合yk进行加密,得到一重加密的字符串集合tk,然后使用哈希函数h对tk进行哈希映射,实现对yk的二重加密,得到二重加密的字符串集合φ={φ1,φ2,...,φi,...,φi};
15、(7)获取多方隐私集合求交结果:
16、普通参与方pk对字符串集合ψ中每个字符串与字符串集合φ中每个字符串φi进行比较,并将ψ和φ中r个相同的字符串对应的隐私数据y'={y1',y2',...,yr',...,yr'}组成隐私数据的交集集合ω。
17、本发明与现有技术相比,具有以下优点:
18、第一,本发明通过二进制密钥矩阵对指定参与方的隐私数据集合进行加密所获得的字符串集合,以及把二进制矩阵当作普通参与方的密钥矩阵对其隐私数据集合进行加密所获得的字符串集合中每个字符串进行比较,并将相同的字符串对应的隐私数据组成隐私数据的交集集合,避免了现有技术直接将隐私数据进行比较,或者采用隐私性较差的加密方式加密后进行比较容易泄露隐私数据内容的缺陷,有效地提高了多方的隐私集合的安全性。
19、第二,本发明的指定参与方和普通参与方先分别对自己持有的隐私数据集合进行加密,再通过哈希映射对一重加密所获得的字符串进行加密,这种二重加密的方式避免了现有技术中存在的从加密后的结果反推出原始数据的风险,进一步增强了隐私数据集合中数据的机密性。
20、第三,本发明通过二进制密钥矩阵将对隐私数据集合中的隐私数据的比较转化为对字符串的比较,二进制密钥矩阵可重复使用,并且避免了现有技术中每次比较加密数据时候都生成一个新的密钥的操作,有效降低了隐私集合求交集过程中的通信开销。