CN116094844A - 一种用于多方安全计算的地址核对方法 - Google Patents

一种用于多方安全计算的地址核对方法 Download PDF

Info

Publication number
CN116094844A
CN116094844A CN202310370875.XA CN202310370875A CN116094844A CN 116094844 A CN116094844 A CN 116094844A CN 202310370875 A CN202310370875 A CN 202310370875A CN 116094844 A CN116094844 A CN 116094844A
Authority
CN
China
Prior art keywords
data
fragment
comparison result
party
address
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
CN202310370875.XA
Other languages
English (en)
Other versions
CN116094844B (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.)
Lanxiang Zhilian Hangzhou Technology Co ltd
Original Assignee
Lanxiang Zhilian Hangzhou Technology Co ltd
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 Lanxiang Zhilian Hangzhou Technology Co ltd filed Critical Lanxiang Zhilian Hangzhou Technology Co ltd
Priority to CN202310370875.XA priority Critical patent/CN116094844B/zh
Publication of CN116094844A publication Critical patent/CN116094844A/zh
Application granted granted Critical
Publication of CN116094844B publication Critical patent/CN116094844B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/10Network architectures or network communication protocols for network security for controlling access to devices or network resources
    • H04L63/107Network architectures or network communication protocols for network security for controlling access to devices or network resources wherein the security policies are location-dependent, e.g. entities privileges depend on current location or allowing specific operations only from locally connected terminals
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/74Address processing for routing
    • H04L45/745Address table lookup; Address filtering
    • H04L45/7453Address table lookup; Address filtering using hashing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/0876Network architectures or network communication protocols for network security for authentication of entities based on the identity of the terminal or configuration, e.g. MAC address, hardware or software configuration or device fingerprint
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/46Secure multiparty computation, e.g. millionaire problem
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Power Engineering (AREA)
  • Storage Device Security (AREA)

Abstract

本发明公开了一种用于多方安全计算的地址核对方法。它包括以下步骤:请求方采用布谷鸟哈希算法将待核对ID分配到布谷鸟哈希表中存储,并将布谷鸟哈希表复制扩充得到扩充表,同时构建第一地址特征表;数据方采用简单哈希算法将自身持有的ID分配到简单哈希表中存储,同时构建第二地址特征表;请求方、数据方对扩充表、简单哈希表中对应位置的ID进行秘密分享比较,请求方、数据方分别得到ID比较结果表第一分片、ID比较结果表第二分片;根据ID比较结果表第一分片、ID比较结果表第二分片对第一地址特征表、第二地址特征表进行隐私比较,请求方得到待核对ID对应的地址特征的比较结果。本发明在进行地址核对过程中不会泄漏双方的数据信息。

Description

一种用于多方安全计算的地址核对方法
技术领域
本发明涉及多方安全计算技术领域,尤其涉及一种用于多方安全计算的地址核对方法。
背景技术
企业数据交互中为了保护用户隐私需要去标识化和匿名化,去标识化是指个人信息经过处理,使其在不借助额外信息的情况下无法识别特定自然人的过程,匿名化是指个人信息经过处理无法识别特定自然人且不能复原的过程。目前,在多方安全计算应用中,经常会涉及到用户地址核对(例如:用户登陆验证中的地理位置校验),即需要核对用户地址的请求方将待核对用户ID及其对应的地址信息提供给数据方(地址核对服务提供方),数据方将地址核对结果返回给请求方。
现有地址核对方法采用如下方式:请求方将待核对ID与数据方持有的ID先进行隐私集合求交,双方获得交集ID,然后双方采用秘密分享比较算法比较交集ID对应的地址信息是否一致,从而完成地址核对。但是,这种地址核对方法的过程中,数据方会获得交集ID的信息,这也是一种额外的信息泄露。
发明内容
本发明为了解决上述技术问题,提供了一种用于多方安全计算的地址核对方法,其使得请求方、数据方在进行地址核对过程中不会泄漏各自的数据信息,有效保护了用户隐私。
为了解决上述问题,本发明采用以下技术方案予以实现:
本发明的一种用于多方安全计算的地址核对方法,包括以下步骤:
S1:请求方采用布谷鸟哈希算法将待核对ID分配到n行1列的布谷鸟哈希表中存储,数据方采用简单哈希算法将自身持有的ID分配到n行m列的简单哈希表中存储;
S2:请求方将布谷鸟哈希表中没有存储ID的位置填入设定值a,并将布谷鸟哈希表复制扩充至n行m列得到扩充表;数据方将简单哈希表中没有存储ID的位置填入设定值b;
S3:请求方、数据方采用秘密分享比较算法对扩充表、简单哈希表中对应位置的ID进行比较得到ID比较结果表,请求方、数据方分别持有ID比较结果表第一分片、ID比较结果表第二分片;
S4:请求方将扩充表内存储的ID替换为该ID对应的地址特征,得到第一地址特征表;数据方将简单哈希表内存储的ID替换为该ID对应的地址特征,得到第二地址特征表;
S5:请求方、数据方根据ID比较结果表第一分片、ID比较结果表第二分片对第一地址特征表、第二地址特征表进行隐私比较,请求方得到待核对ID对应的地址特征的比较结果。
在本方案中,请求方对待核对ID进行布谷鸟哈希处理,将待核对ID分配到布谷鸟哈希表中唯一对应的位置进行存储,布谷鸟哈希表中没有被分配到数据的位置存入设定值a。数据方对自身持有的ID进行简单哈希处理,将自身持有的ID分配到简单哈希表中的对应位置存储,由于是简单哈希处理,所以每个ID可能被分配到简单哈希表中的多个位置存储,即可能简单哈希表中的多个位置存储有同样的ID,简单哈希表中没有被分配到数据的位置存入设定值b。设定值a不等于设定值b,设定值a、设定值b与所有ID都不相同。
通过上述方法实现了对请求方自身持有的待核对ID、数据方自身持有的ID的重新排序。如果数据方自身持有的ID中的某个ID与某个待核对ID一致,则数据方持有的该ID被分配到的简单哈希表中的所有位置中一定有一个位置的行号与该待核对ID被分配到的布谷鸟哈希表中的位置的行号一致。所以,请求方将布谷鸟哈希表复制扩充至n行m列得到扩充表,这样对扩充表、简单哈希表中对应位置的ID进行秘密分享比较,就能找出交集ID,且不会泄漏双方的ID数据。
接着,请求方、数据方根据ID比较结果对ID对应的地址特征进行隐私比较,请求方得到待核对ID对应的地址特征的比较结果,过程中不会泄漏双方地址特征数据。
作为优选,所述步骤S2中请求方将布谷鸟哈希表复制扩充至n行m列得到扩充表的方法如下:将n行1列的布谷鸟哈希表作为一个列向量,将该列向量复制m-1个,将该m个列向量组成一个n行m列的矩阵,该n行m列的矩阵就是扩充表。即扩充表的每一行的m个位置存储的ID是一样的。
作为优选,所述步骤S3包括以下步骤:
S31:请求方、数据方采用秘密分享比较算法对扩充表、简单哈希表中位于同行同列位置的ID进行比较得到每个位置对应的比较结果A,请求方持有每个位置对应的比较结果A第一分片,数据方持有每个位置对应的比较结果A第二分片,
如果扩充表中第i行j列的ID与简单哈希表中第i行j列的ID一致,则A1ij+A2ij=Aij=1,
如果扩充表中第i行j列的ID与简单哈希表中第i行j列的ID不一致,则A1ij+A2ij=Aij=0,
其中,1≤i≤n,1≤j≤m,Aij表示扩充表、简单哈希表中第i行j列对应的比较结果A,A1ij表示扩充表、简单哈希表中第i行j列对应的比较结果A第一分片,A2ij表示扩充表、简单哈希表中第i行j列对应的比较结果A第二分片;
S32:请求方构建n行m列的ID比较结果表第一分片,将得到的每个比较结果A第一分片存入ID比较结果表第一分片中的对应位置;数据方构建n行m列的ID比较结果表第二分片,将得到的每个比较结果A第二分片存入ID比较结果表第二分片中的对应位置。
请求方、数据方对扩充表、简单哈希表中位于同行同列位置的ID进行秘密分享比较,如果扩充表、简单哈希表中位于第i行j列位置的ID一致,则第i行j列位置对应的比较结果A的值为1,如果不一致,则第i行j列位置对应的比较结果A的值为0,由于是进行秘密分享比较,请求方、数据方各拿到比较结果A的一部分,都无法知道比较结果A的值。
作为优选,所述步骤S5包括以下步骤:
S51:请求方将第一地址特征表秘密分享给数据方,请求方持有第一地址特征表第一分片,数据方持有第一地址特征表第二分片;
请求方将自身持有的ID比较结果表第一分片、第一地址特征表第一分片与数据方持有的ID比较结果表第二分片、第一地址特征表第二分片进行秘密分享乘法运算得到第一乘积结果表,请求方持有第一乘积结果表第一分片,数据方持有第一乘积结果表第二分片;
请求方将第一乘积结果表第一分片按行求和,得到n行1列的第一数据表第一分片,数据方将第一乘积结果表第二分片按行求和,得到n行1列的第一数据表第二分片;
S52:数据方将第二地址特征表秘密分享给请求方,请求方持有第二地址特征表第一分片,数据方持有第二地址特征表第二分片;
请求方将自身持有的ID比较结果表第一分片、第二地址特征表第一分片与数据方持有的ID比较结果表第二分片、第二地址特征表第二分片进行秘密分享乘法运算得到第二乘积结果表,请求方持有第二乘积结果表第一分片,数据方持有第二乘积结果表第二分片;
请求方将第二乘积结果表第一分片按行求和,得到n行1列的第二数据表第一分片,数据方将第二乘积结果表第二分片按行求和,得到n行1列的第二数据表第二分片;
S53:请求方将自身持有的第一数据表第一分片、第二数据表第一分片与数据方持有的第一数据表第二分片、第二数据表第二分片进行秘密分享比较运算得到数据比较结果表,请求方持有数据比较结果表第一分片,数据方持有数据比较结果表第二分片;
S54:请求方将自身持有的第一数据表第一分片、数据比较结果表第一分片与数据方持有的第一数据表第二分片、数据比较结果表第二分片进行秘密分享乘法运算,得到地址特征比较结果表,请求方持有地址特征比较结果表第一分片,数据方持有地址特征比较结果表第二分片;
S55:请求方在数据方的配合下计算出地址特征比较结果表,从而得到待核对ID对应的地址特征的比较结果。
作为优选,所述步骤S51中,请求方将自身持有的ID比较结果表第一分片、第一地址特征表第一分片与数据方持有的ID比较结果表第二分片、第一地址特征表第二分片进行秘密分享乘法运算的方法如下:
N1:请求方、数据方将ID比较结果表第一分片、第一地址特征表第一分片、ID比较结果表第二分片、第一地址特征表第二分片中位于同行同列位置的数据进行秘密分享乘法运算得到每个位置对应的第一乘积结果B,请求方持有每个位置对应的第一乘积结果B第一分片,数据方持有每个位置对应的第一乘积结果B第二分片;
N2:请求方构建n行m列的第一乘积结果表第一分片,将得到的每个第一乘积结果B第一分片存入第一乘积结果表第一分片中的对应位置;
数据方构建n行m列的第一乘积结果表第二分片,将得到的每个第一乘积结果B第二分片存入第一乘积结果表第二分片中的对应位置。
作为优选,所述步骤N1中,请求方、数据方将ID比较结果表第一分片、第一地址特征表第一分片、ID比较结果表第二分片、第一地址特征表第二分片中位于第i行j列的数据进行秘密分享乘法运算得到第i行j列位置对应的第一乘积结果B,请求方持有第i行j列位置对应的第一乘积结果B第一分片,数据方持有第i行j列位置对应的第一乘积结果B第二分片,满足如下公式:
(X1ij+X2ij)*(Y1ij+Y2ij)=Xij*Yij=Bij=B1ij+B2ij
其中,B1ij表示第i行j列位置对应的第一乘积结果B第一分片,B2ij表示第i行j列位置对应的第一乘积结果B第二分片,Bij表示第i行j列位置对应的第一乘积结果B,X1ij表示ID比较结果表第一分片中第i行j列的数据,X2ij表示ID比较结果表第二分片中第i行j列的数据,Y1ij表示第一地址特征表第一分片中第i行j列的数据,Y2ij表示第一地址特征表第二分片中第i行j列的数据,Xij表示ID比较结果表中第i行j列的数据,Yij表示第一地址特征表中第i行j列的数据。
作为优选,所述步骤S52中,请求方将自身持有的ID比较结果表第一分片、第二地址特征表第一分片与数据方持有的ID比较结果表第二分片、第二地址特征表第二分片进行秘密分享乘法运算的方法如下:
M1:请求方、数据方将ID比较结果表第一分片、第二地址特征表第一分片、ID比较结果表第二分片、第二地址特征表第二分片中位于同行同列位置的数据进行秘密分享乘法运算得到每个位置对应的第二乘积结果C,请求方持有每个位置对应的第二乘积结果C第一分片,数据方持有每个位置对应的第二乘积结果C第二分片;
M2:请求方构建n行m列的第二乘积结果表第一分片,将得到的每个第二乘积结果C第一分片存入第二乘积结果表第一分片中的对应位置;
数据方构建n行m列的第二乘积结果表第二分片,将得到的每个第二乘积结果C第二分片存入第二乘积结果表第二分片中的对应位置。
作为优选,所述步骤M1中,请求方、数据方将ID比较结果表第一分片、第二地址特征表第一分片、ID比较结果表第二分片、第二地址特征表第二分片中位于第i行j列的数据进行秘密分享乘法运算得到第i行j列位置对应的第二乘积结果C,请求方持有第i行j列位置对应的第二乘积结果C第一分片,数据方持有第i行j列位置对应的第二乘积结果C第二分片,满足如下公式:
(X1ij+X2ij)*(W1ij+W2ij)=Xij*Wij=Cij=C1ij+C2ij
其中,C1ij表示第i行j列位置对应的第二乘积结果C第一分片,C2ij表示第i行j列位置对应的第二乘积结果C第二分片,Cij表示第i行j列位置对应的第二 乘积结果C,X1ij表示ID比较结果表第一分片中第i行j列的数据,X2ij表示ID比较结果表第二分片中第i行j列的数据,W1ij表示第二地址特征表第一分片中第i行j列的数据,W2ij表示第二地址特征表第二分片中第i行j列的数据,Xij表示ID比较结果表中第i行j列的数据,Wij表示第二地址特征表中第i行j列的数据。
作为优选,所述步骤S53包括以下步骤:
S531:请求方、数据方将第一数据表第一分片、第二数据表第一分片、第一数据表第二分片、第二数据表第二分片中位于同行位置的数据进行秘密分享比较运算得到每个位置对应的数据比较结果,请求方持有每个位置对应的数据比较结果第一分片,数据方持有每个位置对应的数据比较结果第二分片,
如果D1i+D2i=E1i+E2i,则F1i+F2i=Fi=1,
如果D1i+D2i≠E1ij+E2ij,则F1i+F2i=Fi=0,
其中,D1i表示第一数据表第一分片中第i行的数据,D2i表示第一数据表第二分片中第i行的数据,E1i表示第二数据表第一分片中第i行的数据,E2i表示第二数据表第二分片中第i行的数据,Fi表示第i行位置对应的数据比较结果,F1i表示第i行位置对应的数据比较结果第一分片,F2i表示第i行位置对应的数据比较结果第二分片;
S532:请求方构建n行1列的数据比较结果表第一分片,将得到的每个数据比较结果第一分片存入数据比较结果表第一分片中的对应位置;
数据方构建n行1列的数据比较结果表第二分片,将得到的每个数据比较结果第二分片存入数据比较结果表第二分片中的对应位置。
第一数据表第一分片、第一数据表第二分片中对应位置的数据求和可以得到第一数据表。第二数据表第一分片、第二数据表第二分片中对应位置的数据求和可以得到第二数据表。请求方、数据方对第一数据表、第二数据表中位于同行同列位置的数据进行秘密分享比较运算,如果第一数据表、第二数据表中位于第i行的数据一致,则第i行位置对应的数据比较结果的值为1,如果不一致,则第i行位置对应的数据比较结果的值为0,由于是进行秘密分享比较,请求方、数据方各拿到数据比较结果的一部分,都无法知道数据比较结果的值。
作为优选,所述步骤S54中,请求方将自身持有的第一数据表第一分片、数据比较结果表第一分片与数据方持有的第一数据表第二分片、数据比较结果表第二分片进行秘密分享乘法运算的方法如下:
F1:请求方、数据方将第一数据表第一分片、数据比较结果表第一分片、第一数据表第二分片、数据比较结果表第二分片中位于同行位置的数据进行秘密分享乘法运算得到每个位置对应的地址特征比较结果,请求方持有每个位置对应的地址特征比较结果第一分片,数据方持有每个位置对应的地址特征比较结果第二分片;
F2:请求方构建n行1列的地址特征比较结果表第一分片,将得到的每个地址特征比较结果第一分片存入地址特征比较结果表第一分片中的对应位置;
数据方构建n行1列的地址特征比较结果表第二分片,将得到的每个地址特征比较结果第二分片存入地址特征比较结果表第二分片中的对应位置。
第一数据表第一分片、第一数据表第二分片中对应位置的数据求和可以得到第一数据表。数据比较结果表第一分片、数据比较结果表第二分片中对应位置的数据求和可以得到数据比较结果表。请求方、数据方是对第一数据表、数据比较结果表中位于同行位置的数据进行秘密分享乘法运算。
本发明的有益效果是:请求方、数据方在进行地址核对过程中不会泄漏各自持有的数据信息,特别是不会泄漏交集ID信息,有效保护了用户隐私,同时计算简洁高效,提升了计算效率。
附图说明
图1是实施例的流程图;
图2是实施例的举例说明中扩充表、简单哈希表的ID替换为对应地址特征的示意图;
图3是实施例的举例说明中ID比较结果表第一分片、ID比较结果表第二分片的示意图;
图4是实施例的举例说明中第一数据表第一分片、第一数据表第二分片的示意图;
图5是实施例的举例说明中第二数据表第一分片、第二数据表第二分片的示意图;
图6是实施例的举例说明中数据比较结果表第一分片、数据比较结果表第二分片的示意图;
图7是实施例的举例说明中特征比较结果表、地址特征比较结果表第一分片、地址特征比较结果表第二分片的示意图。
具体实施方式
下面通过实施例,并结合附图,对本发明的技术方案作进一步具体的说明。
实施例:本实施例的一种用于多方安全计算的地址核对方法,如图1所示,包括以下步骤:
S1:请求方采用布谷鸟哈希算法将待核对ID分配到n行1列的布谷鸟哈希表中存储,数据方采用简单哈希算法将自身持有的ID分配到n行m列的简单哈希表中存储;
S2:请求方将布谷鸟哈希表中没有存储ID的位置填入设定值a,并将布谷鸟哈希表复制扩充至n行m列得到扩充表;数据方将简单哈希表中没有存储ID的位置填入设定值b;
请求方将布谷鸟哈希表复制扩充至n行m列得到扩充表的方法如下:将n行1列的布谷鸟哈希表作为一个列向量,将该列向量复制m-1个,将该m个列向量组成一个n行m列的矩阵,该n行m列的矩阵就是扩充表,即扩充表的每一行的m个位置存储的ID是一样的;
S3:请求方、数据方采用秘密分享比较算法对扩充表、简单哈希表中对应位置的ID进行比较得到ID比较结果表,请求方、数据方分别持有ID比较结果表第一分片、ID比较结果表第二分片;
S4:请求方将扩充表内存储的ID替换为该ID对应的地址特征,得到第一地址特征表;数据方将简单哈希表内存储的ID替换为该ID对应的地址特征,得到第二地址特征表;
S5:请求方、数据方根据ID比较结果表第一分片、ID比较结果表第二分片对第一地址特征表、第二地址特征表进行隐私比较,请求方得到待核对ID对应的地址特征的比较结果。
步骤S3包括以下步骤:
S31:请求方、数据方采用秘密分享比较算法对扩充表、简单哈希表中位于同行同列位置的ID进行比较得到每个位置对应的比较结果A,请求方持有每个位置对应的比较结果A第一分片,数据方持有每个位置对应的比较结果A第二分片,
如果扩充表中第i行j列的ID与简单哈希表中第i行j列的ID一致,则A1ij+A2ij=Aij=1,
如果扩充表中第i行j列的ID与简单哈希表中第i行j列的ID不一致,则A1ij+A2ij=Aij=0,
其中,1≤i≤n,1≤j≤m,Aij表示扩充表、简单哈希表中第i行j列对应的比较结果A,A1ij表示扩充表、简单哈希表中第i行j列对应的比较结果A第一分片,A2ij表示扩充表、简单哈希表中第i行j列对应的比较结果A第二分片;
S32:请求方构建n行m列的ID比较结果表第一分片,将得到的每个比较结果A第一分片存入ID比较结果表第一分片中的对应位置;数据方构建n行m列的ID比较结果表第二分片,将得到的每个比较结果A第二分片存入ID比较结果表第二分片中的对应位置。
在本方案中,请求方对待核对ID进行布谷鸟哈希处理,将待核对ID分配到布谷鸟哈希表中唯一对应的位置进行存储,布谷鸟哈希表中没有被分配到数据的位置存入设定值a。数据方对自身持有的ID进行简单哈希处理,将自身持有的ID分配到简单哈希表中的对应位置存储,由于是简单哈希处理,所以每个ID可能被分配到简单哈希表中的多个位置存储,即可能简单哈希表中的多个位置存储有同样的ID,简单哈希表中没有被分配到数据的位置存入设定值b。设定值a不等于设定值b,设定值a、设定值b与所有ID都不相同。
通过上述方法实现了对请求方自身持有的待核对ID、数据方自身持有的ID的重新排序。如果数据方自身持有的ID中的某个ID与某个待核对ID一致,则数据方持有的该ID被分配到的简单哈希表中的所有位置中一定有一个位置的行号与该待核对ID被分配到的布谷鸟哈希表中的位置的行号一致。所以,请求方将布谷鸟哈希表复制扩充至n行m列得到扩充表,这样对扩充表、简单哈希表中对应位置的ID进行秘密分享比较,就能找出交集ID,且不会泄漏双方的ID数据。
接着,请求方、数据方对扩充表、简单哈希表中位于同行同列位置的ID进行秘密分享比较,如果扩充表、简单哈希表中位于第i行j列位置的ID一致,则第i行j列位置对应的比较结果A的值为1,如果不一致,则第i行j列位置对应的比较结果A的值为0,由于是进行秘密分享比较,请求方、数据方各拿到比较结果A的一部分,都无法知道比较结果A的值,请求方、数据方分别持有ID比较结果表第一分片、ID比较结果表第二分片。
然后,请求方、数据方分别构建n行m列的第一地址特征表、第二地址特征表,第一地址特征表每个位置存储的地址特征与扩充表内对应位置存储的ID是对应的,第二地址特征表每个位置存储的地址特征与简单哈希表内对应位置存储的ID是对应的。
最后,请求方、数据方根据ID比较结果对ID对应的地址特征进行隐私比较,请求方得到待核对ID对应的地址特征的比较结果。整个过程中,双方不会泄漏交集ID以及地址特征数据。
布谷鸟哈希和简单哈希都使用相同的E个哈希函数。n大于待核对ID的个数。
步骤S5包括以下步骤:
S51:请求方将第一地址特征表秘密分享给数据方,请求方持有第一地址特征表第一分片,数据方持有第一地址特征表第二分片;
请求方将自身持有的ID比较结果表第一分片、第一地址特征表第一分片与数据方持有的ID比较结果表第二分片、第一地址特征表第二分片进行秘密分享乘法运算得到第一乘积结果表,请求方持有第一乘积结果表第一分片,数据方持有第一乘积结果表第二分片;
请求方将第一乘积结果表第一分片按行求和,得到n行1列的第一数据表第一分片,数据方将第一乘积结果表第二分片按行求和,得到n行1列的第一数据表第二分片;
S52:数据方将第二地址特征表秘密分享给请求方,请求方持有第二地址特征表第一分片,数据方持有第二地址特征表第二分片;
请求方将自身持有的ID比较结果表第一分片、第二地址特征表第一分片与数据方持有的ID比较结果表第二分片、第二地址特征表第二分片进行秘密分享乘法运算得到第二乘积结果表,请求方持有第二乘积结果表第一分片,数据方持有第二乘积结果表第二分片;
请求方将第二乘积结果表第一分片按行求和,得到n行1列的第二数据表第一分片,数据方将第二乘积结果表第二分片按行求和,得到n行1列的第二数据表第二分片;
S53:请求方将自身持有的第一数据表第一分片、第二数据表第一分片与数据方持有的第一数据表第二分片、第二数据表第二分片进行秘密分享比较运算得到数据比较结果表,请求方持有数据比较结果表第一分片,数据方持有数据比较结果表第二分片;
S54:请求方将自身持有的第一数据表第一分片、数据比较结果表第一分片与数据方持有的第一数据表第二分片、数据比较结果表第二分片进行秘密分享乘法运算,得到地址特征比较结果表,请求方持有地址特征比较结果表第一分片,数据方持有地址特征比较结果表第二分片;
S55:请求方在数据方的配合下计算出地址特征比较结果表,从而得到待核对ID对应的地址特征的比较结果。
步骤S51中,请求方将自身持有的ID比较结果表第一分片、第一地址特征表第一分片与数据方持有的ID比较结果表第二分片、第一地址特征表第二分片进行秘密分享乘法运算的方法如下:
N1:请求方、数据方将ID比较结果表第一分片、第一地址特征表第一分片、ID比较结果表第二分片、第一地址特征表第二分片中位于同行同列位置的数据进行秘密分享乘法运算得到每个位置对应的第一乘积结果B,请求方持有每个位置对应的第一乘积结果B第一分片,数据方持有每个位置对应的第一乘积结果B第二分片;
请求方、数据方将ID比较结果表第一分片、第一地址特征表第一分片、ID比较结果表第二分片、第一地址特征表第二分片中位于第i行j列的数据进行秘密分享乘法运算得到第i行j列位置对应的第一乘积结果B,请求方持有第i行j列位置对应的第一乘积结果B第一分片,数据方持有第i行j列位置对应的第一乘积结果B第二分片,满足如下公式:
(X1ij+X2ij)*(Y1ij+Y2ij)=Xij*Yij=Bij=B1ij+B2ij
其中,B1ij表示第i行j列位置对应的第一乘积结果B第一分片,B2ij表示第i行j列位置对应的第一乘积结果B第二分片,Bij表示第i行j列位置对应的第一乘积结果B,X1ij表示ID比较结果表第一分片中第i行j列的数据,X2ij表示ID比较结果表第二分片中第i行j列的数据,Y1ij表示第一地址特征表第一分片中第i行j列的数据,Y2ij表示第一地址特征表第二分片中第i行j列的数据,Xij表示ID比较结果表中第i行j列的数据,Yij表示第一地址特征表中第i行j列的数据;
N2:请求方构建n行m列的第一乘积结果表第一分片,将得到的每个第一乘积结果B第一分片存入第一乘积结果表第一分片中的对应位置;
数据方构建n行m列的第一乘积结果表第二分片,将得到的每个第一乘积结果B第二分片存入第一乘积结果表第二分片中的对应位置。
步骤S52中,请求方将自身持有的ID比较结果表第一分片、第二地址特征表第一分片与数据方持有的ID比较结果表第二分片、第二地址特征表第二分片进行秘密分享乘法运算的方法如下:
M1:请求方、数据方将ID比较结果表第一分片、第二地址特征表第一分片、ID比较结果表第二分片、第二地址特征表第二分片中位于同行同列位置的数据进行秘密分享乘法运算得到每个位置对应的第二乘积结果C,请求方持有每个位置对应的第二乘积结果C第一分片,数据方持有每个位置对应的第二乘积结果C第二分片;
请求方、数据方将ID比较结果表第一分片、第二地址特征表第一分片、ID比较结果表第二分片、第二地址特征表第二分片中位于第i行j列的数据进行秘密分享乘法运算得到第i行j列位置对应的第二乘积结果C,请求方持有第i行j列位置对应的第二乘积结果C第一分片,数据方持有第i行j列位置对应的第二乘积结果C第二分片,满足如下公式:
(X1ij+X2ij)*(W1ij+W2ij)=Xij*Wij=Cij=C1ij+C2ij
其中,C1ij表示第i行j列位置对应的第二乘积结果C第一分片,C2ij表示第i行j列位置对应的第二乘积结果C第二分片,Cij表示第i行j列位置对应的第二 乘积结果C,X1ij表示ID比较结果表第一分片中第i行j列的数据,X2ij表示ID比较结果表第二分片中第i行j列的数据,W1ij表示第二地址特征表第一分片中第i行j列的数据,W2ij表示第二地址特征表第二分片中第i行j列的数据,Xij表示ID比较结果表中第i行j列的数据,Wij表示第二地址特征表中第i行j列的数据;
M2:请求方构建n行m列的第二乘积结果表第一分片,将得到的每个第二乘积结果C第一分片存入第二乘积结果表第一分片中的对应位置;
数据方构建n行m列的第二乘积结果表第二分片,将得到的每个第二乘积结果C第二分片存入第二乘积结果表第二分片中的对应位置。
步骤S53包括以下步骤:
S531:请求方、数据方将第一数据表第一分片、第二数据表第一分片、第一数据表第二分片、第二数据表第二分片中位于同行位置的数据进行秘密分享比较运算得到每个位置对应的数据比较结果,请求方持有每个位置对应的数据比较结果第一分片,数据方持有每个位置对应的数据比较结果第二分片,
如果D1i+D2i=E1i+E2i,则F1i+F2i=Fi=1,
如果D1i+D2i≠E1ij+E2ij,则F1i+F2i=Fi=0,
其中,D1i表示第一数据表第一分片中第i行的数据,D2i表示第一数据表第二分片中第i行的数据,E1i表示第二数据表第一分片中第i行的数据,E2i表示第二数据表第二分片中第i行的数据,Fi表示第i行位置对应的数据比较结果,F1i表示第i行位置对应的数据比较结果第一分片,F2i表示第i行位置对应的数据比较结果第二分片;
S532:请求方构建n行1列的数据比较结果表第一分片,将得到的每个数据比较结果第一分片存入数据比较结果表第一分片中的对应位置;
数据方构建n行1列的数据比较结果表第二分片,将得到的每个数据比较结果第二分片存入数据比较结果表第二分片中的对应位置。
步骤S54中,请求方将自身持有的第一数据表第一分片、数据比较结果表第一分片与数据方持有的第一数据表第二分片、数据比较结果表第二分片进行秘密分享乘法运算的方法如下:
F1:请求方、数据方将第一数据表第一分片、数据比较结果表第一分片、第一数据表第二分片、数据比较结果表第二分片中位于同行位置的数据进行秘密分享乘法运算得到每个位置对应的地址特征比较结果,请求方持有每个位置对应的地址特征比较结果第一分片,数据方持有每个位置对应的地址特征比较结果第二分片;
请求方、数据方将第一数据表第一分片、数据比较结果表第一分片、第一数据表第二分片、数据比较结果表第二分片中位于第i行位置的数据进行秘密分享乘法运算得到第i行位置对应的地址特征比较结果,请求方持有第i行位置对应的地址特征比较结果第一分片,数据方持有第i行位置对应的地址特征比较结果第二分片,满足如下公式:
(D1i+D2i)*(F1i+F2i)=Gi=G1i+G2i
其中,Gi表示第i行位置对应的地址特征比较结果,G1i表示第i行位置对应的地址特征比较结果第一分片,G2i表示第i行位置对应的地址特征比较结果第二分片;
F2:请求方构建n行1列的地址特征比较结果表第一分片,将得到的每个地址特征比较结果第一分片存入地址特征比较结果表第一分片中的对应位置;
数据方构建n行1列的地址特征比较结果表第二分片,将得到的每个地址特征比较结果第二分片存入地址特征比较结果表第二分片中的对应位置。
步骤S55包括以下步骤:
数据方将地址特征比较结果表第二分片发送给请求方,请求方将地址特征比较结果表第一分片、地址特征比较结果表第二分片中位于同行位置的数据相加,得到每个位置对应的地址特征比较结果;
请求方构建n行1列的地址特征比较结果表,将得到的每个地址特征比较结果存入地址特征比较结果表中的对应位置,地址特征比较结果表中的每个位置与布谷鸟哈希表中的每个位置一一对应,地址特征比较结果表中值不为0的位置对应的布谷鸟哈希表中同样位置存储的ID的地址特征的比较结果为:地址核对正确;地址特征比较结果表中值为0的位置对应的布谷鸟哈希表中同样位置存储的ID的地址特征的比较结果为:地址核对不正确。
由于请求方、数据方进行ID比较的时候,如果ID一致,则比较结果A的值为1,如果不一致,则比较结果A的值为0,所以ID比较结果表第一分片、第一地址特征表第一分片、ID比较结果表第二分片、第一地址特征表第二分片进行秘密分享乘法运算就是将ID比较结果表中每个位置存储的ID比较结果A与第一地址特征表中对应位置存储的地址特征相乘,由于比较结果A的值为1或0,所以,只有比较结果A的值为1的ID对应的地址特征会出现在第一乘积结果表中,且第一乘积结果表中每行最多只有一个位置的地址特征值不为0,地址特征值为0的位置的ID不属于交集ID,无需进行地址核对,这样按行求和后,就能清除掉无需进行地址核对的位置,提高了计算效率,最终,请求方、数据方得到第一数据表第一分片、第一数据表第二分片,避免数据泄露。同理,请求方、数据方得到第二数据表第一分片、第二数据表第二分片。
接着,请求方、数据方对第一数据表、第二数据表进行秘密分享比较得到数据比较结果表,请求方持有数据比较结果表第一分片,数据方持有数据比较结果表第二分片。第一数据表第一分片、第一数据表第二分片中对应位置的数据求和可以得到第一数据表。第二数据表第一分片、第二数据表第二分片中对应位置的数据求和可以得到第二数据表。请求方、数据方对第一数据表、第二数据表中位于同行同列位置的数据进行秘密分享比较运算,如果第一数据表、第二数据表中位于第i行的数据一致,则第i行位置对应的数据比较结果的值为1,如果不一致,则第i行位置对应的数据比较结果的值为0,由于是进行秘密分享比较,请求方、数据方各拿到数据比较结果的一部分,都无法知道数据比较结果的值。
然后,第一数据表第一分片、第一数据表第二分片中对应位置的数据求和可以得到第一数据表。数据比较结果表第一分片、数据比较结果表第二分片中对应位置的数据求和可以得到数据比较结果表。请求方、数据方是对第一数据表、数据比较结果表中位于同行位置的数据进行秘密分享乘法运算,数据比较结果的值为0或者第一数据表中位置存储的数据为0的情况对应的乘积为0,只有数据比较结果的值为1以及第一数据表中位置存储的数据为地址特征的情况对应的乘积为该地址特征,同样双方各拿一部分。
最后,请求方在数据方的配合下计算出地址特征比较结果表,地址特征比较结果表中值不为0的位置对应的布谷鸟哈希表中同样位置存储的ID的地址特征的比较结果为:地址核对正确。
举例说明:
请求方持有4个待核对ID,分别为:AA、BB、CC、DD,对应的地址特征分别为addr(AA1)、addr(BB1)、addr(CC1)、addr(DD1);数据方持有4个ID,分别为AA、EE、CC、FF,对应的地址特征分别为addr(AA2)、addr(EE2)、addr(CC2)、addr(FF2);addr(AA1)≠addr(AA2),addr(CC1)=addr(CC2);布谷鸟哈希和简单哈希都使用相同的3个哈希函数。
请求方采用布谷鸟哈希算法将待核对ID分配到5行1列的布谷鸟哈希表中存储,将布谷鸟哈希表中没有存储ID的位置填入设定值a,并将布谷鸟哈希表复制扩充至5行3列得到扩充表;数据方采用简单哈希算法将自身持有的ID分配到5行3列的简单哈希表中存储,将简单哈希表中没有存储ID的位置填入设定值b,如图2所示。设定值a不等于设定值b,设定值a、设定值b与所有ID都不相同,例如:a取值-1,b取值-2。
请求方、数据方采用秘密分享比较算法对扩充表、简单哈希表中对应位置的ID进行比较得到ID比较结果表,请求方、数据方分别持有ID比较结果表第一分片、ID比较结果表第二分片,如图3所示,ID比较结果表第一分片、ID比较结果表第二分片对应位置的数据相加就得到ID比较结果表,01+02=0,11+12=1,01表示0的第一分片,02表示0的第二分片,11表示1的第一分片,12表示1的第二分片。
请求方将扩充表内存储的ID替换为该ID对应的地址特征,得到第一地址特征表;数据方将简单哈希表内存储的ID替换为该ID对应的地址特征,得到第二地址特征表,如图2所示。
请求方将第一地址特征表秘密分享给数据方,请求方持有第一地址特征表第一分片,数据方持有第一地址特征表第二分片;请求方将自身持有的ID比较结果表第一分片、第一地址特征表第一分片与数据方持有的ID比较结果表第二分片、第一地址特征表第二分片进行秘密分享乘法运算得到第一乘积结果表,请求方持有第一乘积结果表第一分片,数据方持有第一乘积结果表第二分片;请求方将第一乘积结果表第一分片按行求和,得到5行1列的第一数据表第一分片,数据方将第一乘积结果表第二分片按行求和,得到5行1列的第一数据表第二分片,如图4所示,addr(AA1)1+addr(AA1)2=addr(AA1),addr(CC1)1+addr(CC1)2= addr(CC1),addr(AA1)1表示addr(AA1)的第一分片,addr(AA1)2表示addr(AA1)的第二分片,addr(CC1)1表示addr(CC1)的第一分片,addr(CC1)2表示addr(CC1)的第二分片。
数据方将第二地址特征表秘密分享给请求方,请求方持有第二地址特征表第一分片,数据方持有第二地址特征表第二分片;请求方将自身持有的ID比较结果表第一分片、第二地址特征表第一分片与数据方持有的ID比较结果表第二分片、第二地址特征表第二分片进行秘密分享乘法运算得到第二乘积结果表,请求方持有第二乘积结果表第一分片,数据方持有第二乘积结果表第二分片;请求方将第二乘积结果表第一分片按行求和,得到5行1列的第二数据表第一分片,数据方将第二乘积结果表第二分片按行求和,得到5行1列的第二数据表第二分片,如图5所示,addr(AA2)1+addr(AA2)2=addr(AA2),addr(CC2)1+addr(CC2)2= addr(CC2),addr(AA2)1表示addr(AA2)的第一分片,addr(AA2)2表示addr(AA2)的第二分片,addr(CC2)1表示addr(CC2)的第一分片,addr(CC2)2表示addr(CC2)的第二分片。
请求方将第一数据表第一分片、第二数据表第一分片与数据方的第一数据表第二分片、第二数据表第二分片进行秘密分享比较运算得到数据比较结果表,请求方持有数据比较结果表第一分片,数据方持有数据比较结果表第二分片,由于addr(AA1)≠addr(AA2),addr(CC1)=addr(CC2),所以数据比较结果表第一分片、数据比较结果表第二分片,如图6所示。
请求方将第一数据表第一分片、数据比较结果表第一分片与数据方持有的第一数据表第二分片、数据比较结果表第二分片进行秘密分享乘法运算,得到地址特征比较结果表,请求方持有地址特征比较结果表第一分片,数据方持有地址特征比较结果表第二分片,如图7所示。
数据方将地址特征比较结果表第二分片发送给请求方,请求方将地址特征比较结果表第一分片、地址特征比较结果表第二分片中位于同行位置的数据相加,得到每个位置对应的地址特征比较结果,从而得到5行1列的地址特征比较结果表,如图7所示。由于地址特征比较结果表中的每个位置与布谷鸟哈希表中的每个位置一一对应,地址特征比较结果表中只有第4行的值为不为0的addr(CC1),其它行的值都为0,所以只有待核对ID为DD的地址特征核对结果为正确,其它待核对ID的地址特征核对结果为错误,与明文的核对结果一致。从上述步骤中可以看出,整个地址核对过程中不会泄漏各自持有的数据信息,特别是不会泄漏交集ID信息,有效保护了用户隐私。

Claims (10)

1.一种用于多方安全计算的地址核对方法,包括以下步骤:
S1:请求方采用布谷鸟哈希算法将待核对ID分配到n行1列的布谷鸟哈希表中存储,数据方采用简单哈希算法将自身持有的ID分配到n行m列的简单哈希表中存储;
S2:请求方将布谷鸟哈希表中没有存储ID的位置填入设定值a,并将布谷鸟哈希表复制扩充至n行m列得到扩充表;数据方将简单哈希表中没有存储ID的位置填入设定值b;
S3:请求方、数据方采用秘密分享比较算法对扩充表、简单哈希表中对应位置的ID进行比较得到ID比较结果表,请求方、数据方分别持有ID比较结果表第一分片、ID比较结果表第二分片;
S4:请求方将扩充表内存储的ID替换为该ID对应的地址特征,得到第一地址特征表;数据方将简单哈希表内存储的ID替换为该ID对应的地址特征,得到第二地址特征表;
S5:请求方、数据方根据ID比较结果表第一分片、ID比较结果表第二分片对第一地址特征表、第二地址特征表进行隐私比较,请求方得到待核对ID对应的地址特征的比较结果。
2.根据权利要求1所述的一种用于多方安全计算的地址核对方法,其特征在于,所述步骤S2中请求方将布谷鸟哈希表复制扩充至n行m列得到扩充表的方法如下:将n行1列的布谷鸟哈希表作为一个列向量,将该列向量复制m-1个,将该m个列向量组成一个n行m列的矩阵,该n行m列的矩阵就是扩充表。
3.根据权利要求1所述的一种用于多方安全计算的地址核对方法,其特征在于,所述步骤S3包括以下步骤:
S31:请求方、数据方采用秘密分享比较算法对扩充表、简单哈希表中位于同行同列位置的ID进行比较得到每个位置对应的比较结果A,请求方持有每个位置对应的比较结果A第一分片,数据方持有每个位置对应的比较结果A第二分片,
如果扩充表中第i行j列的ID与简单哈希表中第i行j列的ID一致,则A1ij+A2ij=Aij=1,
如果扩充表中第i行j列的ID与简单哈希表中第i行j列的ID不一致,则A1ij+A2ij=Aij=0,
其中,1≤i≤n,1≤j≤m,Aij表示扩充表、简单哈希表中第i行j列对应的比较结果A,A1ij表示扩充表、简单哈希表中第i行j列对应的比较结果A第一分片,A2ij表示扩充表、简单哈希表中第i行j列对应的比较结果A第二分片;
S32:请求方构建n行m列的ID比较结果表第一分片,将得到的每个比较结果A第一分片存入ID比较结果表第一分片中的对应位置;数据方构建n行m列的ID比较结果表第二分片,将得到的每个比较结果A第二分片存入ID比较结果表第二分片中的对应位置。
4.根据权利要求3所述的一种用于多方安全计算的地址核对方法,其特征在于,所述步骤S5包括以下步骤:
S51:请求方将第一地址特征表秘密分享给数据方,请求方持有第一地址特征表第一分片,数据方持有第一地址特征表第二分片;
请求方将自身持有的ID比较结果表第一分片、第一地址特征表第一分片与数据方持有的ID比较结果表第二分片、第一地址特征表第二分片进行秘密分享乘法运算得到第一乘积结果表,请求方持有第一乘积结果表第一分片,数据方持有第一乘积结果表第二分片;
请求方将第一乘积结果表第一分片按行求和,得到n行1列的第一数据表第一分片,数据方将第一乘积结果表第二分片按行求和,得到n行1列的第一数据表第二分片;
S52:数据方将第二地址特征表秘密分享给请求方,请求方持有第二地址特征表第一分片,数据方持有第二地址特征表第二分片;
请求方将自身持有的ID比较结果表第一分片、第二地址特征表第一分片与数据方持有的ID比较结果表第二分片、第二地址特征表第二分片进行秘密分享乘法运算得到第二乘积结果表,请求方持有第二乘积结果表第一分片,数据方持有第二乘积结果表第二分片;
请求方将第二乘积结果表第一分片按行求和,得到n行1列的第二数据表第一分片,数据方将第二乘积结果表第二分片按行求和,得到n行1列的第二数据表第二分片;
S53:请求方将自身持有的第一数据表第一分片、第二数据表第一分片与数据方持有的第一数据表第二分片、第二数据表第二分片进行秘密分享比较运算得到数据比较结果表,请求方持有数据比较结果表第一分片,数据方持有数据比较结果表第二分片;
S54:请求方将自身持有的第一数据表第一分片、数据比较结果表第一分片与数据方持有的第一数据表第二分片、数据比较结果表第二分片进行秘密分享乘法运算,得到地址特征比较结果表,请求方持有地址特征比较结果表第一分片,数据方持有地址特征比较结果表第二分片;
S55:请求方在数据方的配合下计算出地址特征比较结果表,从而得到待核对ID对应的地址特征的比较结果。
5.根据权利要求4所述的一种用于多方安全计算的地址核对方法,其特征在于,所述步骤S51中,请求方将自身持有的ID比较结果表第一分片、第一地址特征表第一分片与数据方持有的ID比较结果表第二分片、第一地址特征表第二分片进行秘密分享乘法运算的方法如下:
N1:请求方、数据方将ID比较结果表第一分片、第一地址特征表第一分片、ID比较结果表第二分片、第一地址特征表第二分片中位于同行同列位置的数据进行秘密分享乘法运算得到每个位置对应的第一乘积结果B,请求方持有每个位置对应的第一乘积结果B第一分片,数据方持有每个位置对应的第一乘积结果B第二分片;
N2:请求方构建n行m列的第一乘积结果表第一分片,将得到的每个第一乘积结果B第一分片存入第一乘积结果表第一分片中的对应位置;
数据方构建n行m列的第一乘积结果表第二分片,将得到的每个第一乘积结果B第二分片存入第一乘积结果表第二分片中的对应位置。
6.根据权利要求5所述的一种用于多方安全计算的地址核对方法,其特征在于,所述步骤N1中,请求方、数据方将ID比较结果表第一分片、第一地址特征表第一分片、ID比较结果表第二分片、第一地址特征表第二分片中位于第i行j列的数据进行秘密分享乘法运算得到第i行j列位置对应的第一乘积结果B,请求方持有第i行j列位置对应的第一乘积结果B第一分片,数据方持有第i行j列位置对应的第一乘积结果B第二分片,满足如下公式:
(X1ij+X2ij)*(Y1ij+Y2ij)=Xij*Yij=Bij=B1ij+B2ij
其中,B1ij表示第i行j列位置对应的第一乘积结果B第一分片,B2ij表示第i行j列位置对应的第一乘积结果B第二分片,Bij表示第i行j列位置对应的第一乘积结果B,X1ij表示ID比较结果表第一分片中第i行j列的数据,X2ij表示ID比较结果表第二分片中第i行j列的数据,Y1ij表示第一地址特征表第一分片中第i行j列的数据,Y2ij表示第一地址特征表第二分片中第i行j列的数据,Xij表示ID比较结果表中第i行j列的数据,Yij表示第一地址特征表中第i行j列的数据。
7.根据权利要求4所述的一种用于多方安全计算的地址核对方法,其特征在于,所述步骤S52中,请求方将自身持有的ID比较结果表第一分片、第二地址特征表第一分片与数据方持有的ID比较结果表第二分片、第二地址特征表第二分片进行秘密分享乘法运算的方法如下:
M1:请求方、数据方将ID比较结果表第一分片、第二地址特征表第一分片、ID比较结果表第二分片、第二地址特征表第二分片中位于同行同列位置的数据进行秘密分享乘法运算得到每个位置对应的第二乘积结果C,请求方持有每个位置对应的第二乘积结果C第一分片,数据方持有每个位置对应的第二乘积结果C第二分片;
M2:请求方构建n行m列的第二乘积结果表第一分片,将得到的每个第二乘积结果C第一分片存入第二乘积结果表第一分片中的对应位置;
数据方构建n行m列的第二乘积结果表第二分片,将得到的每个第二乘积结果C第二分片存入第二乘积结果表第二分片中的对应位置。
8.根据权利要求7所述的一种用于多方安全计算的地址核对方法,其特征在于,所述步骤M1中,请求方、数据方将ID比较结果表第一分片、第二地址特征表第一分片、ID比较结果表第二分片、第二地址特征表第二分片中位于第i行j列的数据进行秘密分享乘法运算得到第i行j列位置对应的第二乘积结果C,请求方持有第i行j列位置对应的第二乘积结果C第一分片,数据方持有第i行j列位置对应的第二乘积结果C第二分片,满足如下公式:
(X1ij+X2ij)*(W1ij+W2ij)=Xij*Wij=Cij=C1ij+C2ij
其中,C1ij表示第i行j列位置对应的第二乘积结果C第一分片,C2ij表示第i行j列位置对应的第二乘积结果C第二分片,Cij表示第i行j列位置对应的第二 乘积结果C,X1ij表示ID比较结果表第一分片中第i行j列的数据,X2ij表示ID比较结果表第二分片中第i行j列的数据,W1ij表示第二地址特征表第一分片中第i行j列的数据,W2ij表示第二地址特征表第二分片中第i行j列的数据,Xij表示ID比较结果表中第i行j列的数据,Wij表示第二地址特征表中第i行j列的数据。
9.根据权利要求4或5或6或7或8所述的一种用于多方安全计算的地址核对方法,其特征在于,所述步骤S53包括以下步骤:
S531:请求方、数据方将第一数据表第一分片、第二数据表第一分片、第一数据表第二分片、第二数据表第二分片中位于同行位置的数据进行秘密分享比较运算得到每个位置对应的数据比较结果,请求方持有每个位置对应的数据比较结果第一分片,数据方持有每个位置对应的数据比较结果第二分片,
如果D1i+D2i=E1i+E2i,则F1i+F2i=Fi=1,
如果D1i+D2i≠E1ij+E2ij,则F1i+F2i=Fi=0,
其中,D1i表示第一数据表第一分片中第i行的数据,D2i表示第一数据表第二分片中第i行的数据,E1i表示第二数据表第一分片中第i行的数据,E2i表示第二数据表第二分片中第i行的数据,Fi表示第i行位置对应的数据比较结果,F1i表示第i行位置对应的数据比较结果第一分片,F2i表示第i行位置对应的数据比较结果第二分片;
S532:请求方构建n行1列的数据比较结果表第一分片,将得到的每个数据比较结果第一分片存入数据比较结果表第一分片中的对应位置;
数据方构建n行1列的数据比较结果表第二分片,将得到的每个数据比较结果第二分片存入数据比较结果表第二分片中的对应位置。
10.根据权利要求9所述的一种用于多方安全计算的地址核对方法,其特征在于,所述步骤S54中,请求方将自身持有的第一数据表第一分片、数据比较结果表第一分片与数据方持有的第一数据表第二分片、数据比较结果表第二分片进行秘密分享乘法运算的方法如下:
F1:请求方、数据方将第一数据表第一分片、数据比较结果表第一分片、第一数据表第二分片、数据比较结果表第二分片中位于同行位置的数据进行秘密分享乘法运算得到每个位置对应的地址特征比较结果,请求方持有每个位置对应的地址特征比较结果第一分片,数据方持有每个位置对应的地址特征比较结果第二分片;
F2:请求方构建n行1列的地址特征比较结果表第一分片,将得到的每个地址特征比较结果第一分片存入地址特征比较结果表第一分片中的对应位置;
数据方构建n行1列的地址特征比较结果表第二分片,将得到的每个地址特征比较结果第二分片存入地址特征比较结果表第二分片中的对应位置。
CN202310370875.XA 2023-04-10 2023-04-10 一种用于多方安全计算的地址核对方法 Active CN116094844B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202310370875.XA CN116094844B (zh) 2023-04-10 2023-04-10 一种用于多方安全计算的地址核对方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202310370875.XA CN116094844B (zh) 2023-04-10 2023-04-10 一种用于多方安全计算的地址核对方法

Publications (2)

Publication Number Publication Date
CN116094844A true CN116094844A (zh) 2023-05-09
CN116094844B CN116094844B (zh) 2023-06-20

Family

ID=86210573

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202310370875.XA Active CN116094844B (zh) 2023-04-10 2023-04-10 一种用于多方安全计算的地址核对方法

Country Status (1)

Country Link
CN (1) CN116094844B (zh)

Citations (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101968793A (zh) * 2010-08-25 2011-02-09 大唐软件技术股份有限公司 一种基于异构数据源数据核对的方法和系统
US20160378769A1 (en) * 2015-06-23 2016-12-29 Microsoft Technology Licensing, Llc Preliminary ranker for scoring matching documents
CN110399530A (zh) * 2018-04-20 2019-11-01 杭州海康威视数字技术股份有限公司 数据匹配方法、装置及计算机设备
CN111046043A (zh) * 2019-12-11 2020-04-21 北京西骏数据科技股份有限公司 一种数据库表快速精确校验方法
CN113343305A (zh) * 2021-06-29 2021-09-03 招商局金融科技有限公司 隐私数据的交集计算方法、装置、设备及存储介质
WO2021174882A1 (zh) * 2020-09-02 2021-09-10 平安科技(深圳)有限公司 数据分片校验方法、装置、计算机设备及可读存储介质
WO2021249502A1 (zh) * 2020-06-12 2021-12-16 支付宝(杭州)信息技术有限公司 针对多方的隐私数据进行聚类的方法和装置
CN114239074A (zh) * 2022-02-25 2022-03-25 蓝象智联(杭州)科技有限公司 一种不暴露中间结果的私有数据隐匿求交方法
CN114661680A (zh) * 2022-05-25 2022-06-24 蓝象智联(杭州)科技有限公司 一种私有数据隐匿共享方法
CN114866627A (zh) * 2022-05-07 2022-08-05 中国工商银行股份有限公司 报文核对方法、装置、处理器及电子设备
CN112910631B (zh) * 2021-02-08 2022-11-22 上海海洋大学 一种基于云服务器辅助的高效隐私集合交集计算方法及系统
CN115396101A (zh) * 2022-10-26 2022-11-25 华控清交信息科技(北京)有限公司 一种基于秘密分享的不经意打乱方法和系统
CN115580402A (zh) * 2022-12-09 2023-01-06 蓝象智联(杭州)科技有限公司 一种用于安全多方计算的数据隐匿查询方法

Patent Citations (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101968793A (zh) * 2010-08-25 2011-02-09 大唐软件技术股份有限公司 一种基于异构数据源数据核对的方法和系统
US20160378769A1 (en) * 2015-06-23 2016-12-29 Microsoft Technology Licensing, Llc Preliminary ranker for scoring matching documents
CN110399530A (zh) * 2018-04-20 2019-11-01 杭州海康威视数字技术股份有限公司 数据匹配方法、装置及计算机设备
CN111046043A (zh) * 2019-12-11 2020-04-21 北京西骏数据科技股份有限公司 一种数据库表快速精确校验方法
WO2021249502A1 (zh) * 2020-06-12 2021-12-16 支付宝(杭州)信息技术有限公司 针对多方的隐私数据进行聚类的方法和装置
WO2021174882A1 (zh) * 2020-09-02 2021-09-10 平安科技(深圳)有限公司 数据分片校验方法、装置、计算机设备及可读存储介质
CN112910631B (zh) * 2021-02-08 2022-11-22 上海海洋大学 一种基于云服务器辅助的高效隐私集合交集计算方法及系统
CN113343305A (zh) * 2021-06-29 2021-09-03 招商局金融科技有限公司 隐私数据的交集计算方法、装置、设备及存储介质
CN114239074A (zh) * 2022-02-25 2022-03-25 蓝象智联(杭州)科技有限公司 一种不暴露中间结果的私有数据隐匿求交方法
CN114866627A (zh) * 2022-05-07 2022-08-05 中国工商银行股份有限公司 报文核对方法、装置、处理器及电子设备
CN114661680A (zh) * 2022-05-25 2022-06-24 蓝象智联(杭州)科技有限公司 一种私有数据隐匿共享方法
CN115396101A (zh) * 2022-10-26 2022-11-25 华控清交信息科技(北京)有限公司 一种基于秘密分享的不经意打乱方法和系统
CN115580402A (zh) * 2022-12-09 2023-01-06 蓝象智联(杭州)科技有限公司 一种用于安全多方计算的数据隐匿查询方法

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
R. JAIN: "A comparison of hashing schemes for address lookup in computer networks", 《IEEE TRANSACTIONS ON COMMUNICATIONS ( VOLUME: 40, ISSUE: 10, OCTOBER 1992)》 *
梁婉莹;朱佳;马晓东;汤庸;梁熙龙;陈善轩;: "基于区块链的文件存储碎片分配优化模型", 《软件导刊》, no. 01 *

Also Published As

Publication number Publication date
CN116094844B (zh) 2023-06-20

Similar Documents

Publication Publication Date Title
US11775658B2 (en) Linking encrypted datasets using common identifiers
CN113569294B (zh) 一种零知识证明方法及装置、电子设备、存储介质
CN110602147B (zh) 一种基于云平台的数据加密安全存储方法、系统和存储介质
US20140173270A1 (en) Secret sharing method and system
CN112087439B (zh) 区块链交易查询方法、系统、计算机设备和存储介质
US10360406B2 (en) Method of obfuscating data
JPWO2016159357A1 (ja) 秘密計算システム、サーバ装置、秘密計算方法、および、プログラム
CN1211363A (zh) 运用公共密钥完成通信的方法
US10437525B2 (en) Communication efficient secret sharing
US20240135026A1 (en) Multi-party data query methods and apparatuses for data privacy protection
Salinas et al. Efficient secure outsourcing of large-scale quadratic programs
CN107592298B (zh) 一种基于单服务器模型的序列比较算法安全外包方法、用户终端和服务器
GB2556902A (en) Method and system for securely storing data using a secret sharing scheme
CN113254955A (zh) 前向安全的连接关键词对称可搜索加密方法、系统及应用
CN108028751B (zh) 用于移动主动秘密共享的系统、计算机可读介质和方法
US20170063536A1 (en) Generating Cryptographic Function Parameters Based on an Observed Astronomical Event
CN114124343B (zh) 保护隐私的风险评分信息查询方法、装置、系统及设备
JPWO2016148281A1 (ja) 秘匿文字列計算システム及び方法と装置並びにプログラム
CN116094844B (zh) 一种用于多方安全计算的地址核对方法
Zhou et al. An efficient and secure data integrity auditing scheme with traceability for cloud-based EMR
CN114386070A (zh) 一种多方安全求交集方法和系统
CN114021198A (zh) 一种保护数据隐私的确定共有数据的方法及装置
CN112328639A (zh) 数据查询方法、装置、系统以及数据集处理方法
CN114139197A (zh) 一种代理安全多方计算方法、系统、处理设备及存储介质
Gąsieniec et al. Efficiently correcting matrix products

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