22email: {minglang_dong,baiyujie}@mail.sdu.edu.cn, [email protected], [email protected]
Multi-Party Private Set Operations from Predicative Zero-Sharing
Abstract
Typical protocols in the multi-party private set operations (MPSO) setting enable parties to perform certain secure computation on the intersection or union of their private sets, realizing a very limited range of MPSO functionalities. Most works in this field focus on just one or two specific functionalities, resulting in a large variety of isolated schemes and a lack of a unified framework in MPSO research. In this work, we present an MPSO framework, which allows parties, each holding a set, to securely compute any set formulas (arbitrary compositions of a finite number of binary set operations, including intersection, union and difference) on their private sets. Our framework is highly versatile and can be instantiated to accommodate a broad spectrum of MPSO functionalities. To the best of our knowledge, this is the first framework to achieve such a level of flexibility and generality in MPSO, without relying on generic secure multi-party computation (MPC) techniques.
Our framework exhibits favorable theoretical and practical performance. The computation and communication complexity scale linearly with the set size , and it achieves optimal complexity that is on par with the naive solution for widely used functionalities, such as multi-party private set intersection (MPSI), MPSI with cardinality output (MPSI-card), and MPSI with cardinality and sum (MPSI-card-sum), in the standard semi-honest model. Furthermore, the instantiations of our framework mainly from symmetric-key techniques yield efficient protocols for MPSI, MPSI-card, MPSI-card-sum, and multi-party private set union (MPSU), with online performance surpassing or matching the state of the art.
At the technical core of our framework is a newly introduced primitive called predicative zero-sharing. This primitive captures the universality of a number of MPC protocols and is composable. We believe it may be of independent interest.
1 Introduction
In the setting of multi-party private set operations (MPSO), a set of parties, each holding a private set of items, wish to perform secure computation on their private sets without revealing any additional information. In the end, only one of the parties (denoted as the leader) learns the resulting set and other parties (denoted as clients) learn nothing. MPSO is an expansive research field with a variety of rich functionalities. The typical functionalities that have been studied in the MPSO literature can be divided into two categories:
-
•
Multi-party private set intersection (MPSI) [22, 36, 54, 39, 53, 10, 32, 38, 34, 27, 26, 41, 15, 30, 8, 57, 6, 60, 58], which is to compute intersection, and its variants — MPSI with cardinality output (MPSI-card) [36, 10, 18, 25, 28], which is to compute intersection cardinality, MPSI with cardinality and sum (MPSI-card-sum) [18, 28], which is to compute intersection cardinality and sum (of the associated payloads), and circuit-MPSI [36, 10, 15, 60, 56], which allows parties to learn secret shares of the indicator vector for intersection with respect to leader’s elements, that can be further fed into generic MPC (with leader’s elements) to compute arbitrary function on intersection;
-
•
Multi-party private set union (MPSU) [36, 23, 10, 55, 57, 40, 24, 19], which is to compute union, and its variants — MPSU with cardinality output (MPSU-card) [10], which is to compute union cardinality, and circuit-MPSU [10], which allows parties to learn secret shares of elements in union, that can be further fed into generic MPC to compute arbitrary function on union.
There are several major problems in the field of MPSO:
-
•
Unrealistic security assumptions. Despite the vast body of existing works in the MPSO literature, many rely on assumptions of unconditional trust, which is fraught with security risks. For example, some works [40, 60, 25, 56] assume non-collusion among particular parties, which is unlikely to hold in practice. Therefore, an important theme in the MPSO research is to achieve security against arbitrary collusion.
-
•
Unsatisfied application needs. Many real-world applications want to compute more than intersection and union (or partial/aggregate information on them), however, the existing protocols cannot meet these demands, both in terms of functionality and efficiency. For instance, a social services organization intends to determine the list of people on welfare with cancer [36]. To fulfill this task, all hospitals should collectively calculate the union of lists of cancer patients, meanwhile keeping the union privacy, then an intersection operation between the unrevealed union of cancer patients and the welfare rolls is performed. This problem is apparently beyond the above two categories and still lacks practical solutions to date.
-
•
Fragmented landscape of protocols. Most existing works focus on only one or two specific functionalities, resulting in a large variety of isolated schemes and a lack of a unified framework in MPSO.
Given the numerous possible compositions of a finite number of binary set operations (including intersection, union and difference) on sets, ideally, MPSO should enable parties to securely compute arbitrary set formulas on their private sets. All the aforementioned functionalities are special cases of this generic functionality (hereafter, we use MPSO to refer particularly to this generic functionality). The seminal work of Kissner and Song [36] has explored the MPSO functionality. Unfortunately, they failed to fully realize it. The set formulas being computed in their protocol only allow to include union and intersection set operations, excluding the difference operation. Namely, their protocol only realizes a restricted MPSO functionality. For instance, computing is not feasible in their protocol. Furthermore, their protocol relies heavily on additively homomorphic encryption (AHE) and high-degree polynomial calculations, leading to prohibitively large computational costs, hence is totally impractical.
A follow-up work by Blanton and Aguiar [10] redesigns the circuits for computing intersection, union and difference as oblivious sorting and adjacent comparisons in a sorted set, and implements these circuits using generic MPC protocols. Thanks to the composability of generic MPC, their protocols are also composable to compute arbitrary compositions of binary set operations, thereby fully realizing the MPSO functionality. However, the protocol’s heavy reliance on generic MPC incurs substantial computational costs, and even the simplest cases — MPSI and MPSU — exhibit poor practical efficiency. For instances, their experiments report a runtime of seconds for both MPSI and MPSU with parties, each holding items of bits, which is the largest experiment in terms of the number of parties and set size reported in their paper. Moreover, their protocols are only secure in the honest majority setting.
Motivated by the above, we raise the following question:
Can we fully realize the MPSO functionality with security against arbitrary collusion and acceptable performance in the semi-honest model?
1.1 Our Contributions
In this work, we answer the above question affirmatively. Our technical route is: First, defining a predicate formula representation for any set formulas; Second, presenting a composable primitive — predicative zero-sharing — and its composition technique; Then, instantiating predicative zero-sharing as a primitive tailored for MPSO — membership zero-sharing — with lightweight building blocks; Finally, constructing a framework based on oblivious transfer (OT) and symmetric-key operations in the standard semi-honest model, which fully realizes not only the MPSO functionality, but also the extended MPSO-card and circuit-MPSO functionalities. Our contributions can be detailed as follows:
-
Predicate Formula Representation. The first challenge in realizing MPSO is to identify a suitable representation for any set formulas, which determines the generality and practicality of the resulting framework. The prior work [36] represents set formulas using intersection, union, and element reduction operations, whose arbitrary compositions can only express a limited subset of set formulas, thereby restricting its generality. The follow-up work [10] adopts the naive representation based on intersection, union, and difference operations to achieve full generality. However, to support composability, it relies heavily on generic MPC, which significantly hinders practicality. In this work, we introduce a new representation called canonical predicate formula (CPF), which is designed with a particular structure to enable an MPSO framework achieving the best of both worlds: generality and practicality. Specifically, this representation is a subset of first-order set predicate formulas (which are first-order predicate formulas where each atomic proposition is a set membership predicate , connected by , and operators), defined as a disjunction of several subformulas that are in a certain form, representing a partition of the desired set. We prove that any set formulas can be transformed into CPF representations, and the number of subformulas in CPF dominates the performance of protocols.
-
Predicative Zero-Sharing and Relaxation. The second challenge is to devise a composable primitive based on our predicate formula representation. We introduce a novel primitive called predicative zero-sharing, which is a family of protocols, each associated with a first-order predicate formula and encoding the truth-value of the formula on the parties’ inputs into a secret-sharing over a finite field among the parties. Specifically, if the formula is true, the parties hold a secret-sharing of 0, otherwise a secret sharing of a random value. We put forward a simpler simulation-based security definition for predicative zero-sharing protocols, which is composed of three requirements: correctness, privacy and independence, and give a rigorous proof of its equivalence to the standard security definition for a broader class of MPC protocols (predicative zero-sharing is its subset). This simpler security definition simplifies the security proof of our predicative zero-sharing protocols. Moreover, under this simpler security definition, we can relax the security of predicative zero-sharing by removing the independence requirement. This relaxed version of predicative zero-sharing admits the abstraction of much more MPC protocols, such as random oblivious transfer (ROT), equality-conditional randomness generation (ECRG) [35],111We found that the ECRG functionality satisfies the definition of predicative zero-sharing while the construction in [35] only achieves the security of relaxed predicative zero-sharing. This is because ECRG is a probabilistic functionality whereas [35] proved its security using the definition for deterministic functionalities. and so on. We present a composition technique to compose several relaxed predicative zero-sharing protocols into a single relaxed predicative zero-sharing protocol based on and operators. We also present a transformation technique to transform any relaxed predicative zero-sharing protocol into a standard version. Combining these two techniques, we can construct predicative zero-sharing for any first-order predicate formulas, from relaxed predicative zero-sharing associated with all literals (atomic propositions or their negations) within the formula.
-
Membership Zero-Sharing. To enable the instantiation of predicative zero-sharing, we introduce membership zero-sharing, a particular class of predicative zero-sharing tailored for MPSO, by specifying the associated predicate formula as a first-order set predicate formula . In this setting, one party (denoted as ) inputs an element and the other parties input sets. The output secret-sharing among the parties encodes whether ’s input element, together with all input sets, satisfy . For example, consider parties where inputs an element , inputs a set , and inputs a set . Suppose is in the form of , if , hold a secret-sharing of 0, otherwise they hold a secret-sharing of a random value. Given that any first-order set predicate formula is only composed of two types of literals — set membership predicates and the negations , by instantiating relaxed membership zero-sharing associated with and respectively, we can build membership zero-sharing protocols for any first-order set predicate formulas, by following the recipe for predicative zero-sharing. Our instantiations are both built on lightweight components, including oblivious programmable pseudorandom function (OPPRF), batch secret-shared private membership test (batch ssPMT), and ROT. This contributes to the good efficiency of our framework.
-
MPSO, MPSO-card and Circuit-MPSO. In analogy with MPSI (resp. MPSU) functionality to MPSI-card and circuit-MPSI (resp. MPSU-card and circuit-MPSU), we extend MPSO functionality into two new functionalities — MPSO-card and circuit-MPSO, where MPSO-card computes the resulting set’s cardinality and circuit-MPSO reveals secret shares of the resulting set, which can be further fed into generic MPC to compute arbitrary function on the resulting set. Based on the CPF representation for any set formulas and membership zero-sharing for any first-order set predicate formulas, we put forth a framework fully realizing MPSO, MPSO-card and circuit-MPSO functionalities. A high level of our framework proceeds as follows. We begin with the simplest case, where the desired set is a subset of the input set of the leader.222MPSI is a typical example of this case, as the intersection is a subset of any input sets. In this case, the leader acts as , and for each element in its input set, the leader invokes the membership zero-sharing associated with the CPF representation of the desired set, with the other parties inputting their sets. As a result, for each elements in the leader’s set that belongs to the desired set, the parties hold a secret-sharing of 0. Since all these elements exactly compose the desired set, the partiescan simply reconstruct all secret-sharings to the leader, who computes the resulting set by identifying all elements with corresponding secrets as 0. This construction can be optimized using the hashing to bins technique (see Figure). We extend this simplest case of our framework to achieve full MPSO functionality, by leveraging the structural properties of our CPF representation, which guarantee that the set represented by each subformula in the CPF is a subset of some party ’s input set, and all these sets form a partition of the desired set. For each subformula , the parties invoke membership zero-sharing with acting as , and the invocation is similar to the simplest case. After the membership zero-sharing invocations for all subformulas, the union of all output secret-sharings encode a partition of the desired set. However, a straightforward reconstruction in this setting may reveal information through the order of secret-sharings, therefore, the parties have to invoke a multi-party secret-shared shuffle protocol to randomly permute and re-share all secret-sharings. Finally, the shuffled secret-sharings are reconstructed to the leader. Since the resulting set remains being secret-shared before the last reconstruction step, this MPSO protocol is easy to be extended to MPSO-card and circuit-MPSO protocols.
In addition to the above contributions, perhaps surprisingly, we also make independent contributions in the following sub-fields, by instantiating our framework to yield the aforementioned typical protocols:
-
MPSI. The MPSI protocol from our framework has the best computation and communication complexity among all MPSI protocols based on OT and symmetric-key operations in the standard semi-honest model. Particularly, this is the first MPSI construction to achieve the optimal complexity that is on par with the naive solution (the leader’s computation and communication complexity are both and each client’s computation and communication complexity are both , where is the set size and is the number of parties) without extensive use of public-key operations, in standard semi-honest model. The previous MPSI protocol [38] with this optimal complexity is only secure in the weaker augmented semi-honest model. In this work, we close this gap. Our MPSI protocol is also highly efficient in the online phase, which requires only seconds and MB of communications for parties with sets of items each, regardless of the item length, while the state-of-the-art MPSI protocol [58] requires seconds and MB of communications for their full protocol.
-
MPSI-card, MPSI-card-sum and Circuit-MPSI. The MPSI-card and MPSI-card-sum protocols from our framework are the first MPSI-card and MPSI-card-sum constructions with the optimal computation and communication complexity in the standard semi-honest model. Our MPSI-card has lower communication than the state-of-the-art MPSI-card protocol [18]. We provide the first MPSI-card-sum implementation and it only doubles the computation and communication costs of our MPSI while realizing a richer functionality. Concretely, our MPSI-card requires only seconds while our MPSI-card-sum requires seconds in online phase for parties with sets of items each, regardless of the item length. Additionally, the circuit-MPSI protocol from our framework is the first circuit-MPSI construction in dishonest majority setting.
-
MPSU. The MPSU protocol from our framework has the best computation and communication complexity among all MPSU protocols based on OT and symmetric-key operations in the standard semi-honest model. It could be seen as an instance of the secret-sharing based MPSU paradigm, which abstracts all existing MPSU protocols relying only on symmetric-key primitives [40, 19]. Our protocol achieves the optimal complexity of this paradigm for the first time (with computation and communication complexity of leader and computation and communication complexity of clients). Our MPSU protocol is comparable with the state-of-the-art MPSU protocol [19]. Concretely, it requires only seconds in online phase for parties, each holding items of bits.
-
MPSU-card and circuit-MPSU. The MPSU-card and circuit-MPSU protocols from our framework are the only efficient constructions for MPSU-card and circuit-MPSU, with performance that is nearly the same as our MPSU protocol.
1.2 Related Work
Despite the immense amount of existing works on the typical functionalities in this field, many are insecure against arbitrary collusion [39, 10, 55, 15, 40, 60, 25, 56], or have non-negligible false positives [6, 57]. We only focus on works achieving semi-honest security against arbitrary collusion without non-negligible false positives. Distribution of research attention among these works is extremely imbalanced: MPSI has been extensively studied [22, 36, 54, 53, 32, 38, 34, 27, 26, 41, 30, 8, 58], while MPSU only receives relatively little attention [36, 23, 24, 19]. MPSI-card [36, 18, 28] and MPSI-card-sum [18, 28] are extremely understudied sub-fields, with only a couple of secure MPSI-card protocol [36, 18, 28] and MPSI-card-sum protocol [18, 28] against arbitrary collusion. Even worse, no prior work has realized circuit-MPSI, MPSU-card, circuit-MPSU in the dishonest majority setting. We provide more details on the classic and state-of-the-art protocols below. A comprehensive theoretical comparison between related protocols and ours is provided in Appendix 0.A.
-
MPSI. Freedman et al. [22] introduced the first MPSI protocol based on oblivious polynomial evaluation (OPE), which is implemented using AHE. Kisser and Song [36] proposed an MPSI protocol using the OPE technique along with the polynomial representations. These two protocols both require quadratic computation complexity with respect to the set size for each party, resulting in complete impracticality.
Kolesnikov et al. [38] proposed two MPSI protocols in the augmented semi-honest model and standard semi-honest model, respectively. The former achieves the optimal complexity of MPSI, while it is only secure in the augmented semi-honest model. The latter fails to achieve optimal complexity as it requires the clients’ complexity to depend on the corruption threshold . Garimella et al. [26] improved these protocols using oblivious key-value store (OKVS) [43, 26, 48, 9] and showed that the augmented semi-honest protocol actually enjoys malicious security. Following these works, Nevo et al. [41] proposed an efficient MPSI protocol in the malicious model, where the client’s communication complexity depends only on (while the computation complexity still depends on ).
Inbar et al. [34] proposed two MPSI protocols in the augmented semi-honest and standard semi-honest model, based on OT and garbled Bloom filters. In these two protocols, each party’s computation complexity is . The Ben-Efraim et al. [8] extended the former to the malicious model.
Recently, Wu et al. [58] proposed two semi-honest MPSI protocols based on OPRF and OKVS. In these two protocols, the client’s complexity depends on .
MPSI-card and MPSI-card-sum. Chen et al. [18] proposed the first MPSI-card and MPSI-card-sum protocols based on OT and symmetric-key operations, which are also the only practical MPSI-card and MPSI-card-sum protocols in the standard semi-honest model. In their protocols, the leader’s complexity is and the client’s complexity is .
MPSU. Kisser and Song [36] introduced the first MPSU protocol, based on polynomial representations and AHE. The substantial number of AHE operations and high-degree polynomial calculations incur unacceptable efficiency.
Recently, Gao et al. [24] proposed an MPSU protocol in the standard semi-honest model. This protocol relies on public-key operations and has super-linear computation and communication complexity for each party in term of .
Recently, Dong et al. [19] proposed two MPSU protocols in the standard semi-honest model. The first protocol, based on OT and symmetric-key operations, eliminates the non-collusion assumption in [40], at the cost of increasing client’s complexity to quadratic in terms of . The second protocol achieves linear complexity. However, it relies on public-key operations with a lower efficiency.
2 Preliminaries
2.1 Notation
Let denote the number of parties. We use () to denote the parties, to represent the sets they hold, where each set has -bit elements. denotes an additive secret-sharing among parties, i.e., each holds a share such that . denotes the concatenation of two strings. We use as the computational and statistical security parameters respectively, and use (resp.) to denote that two distributions are statistically (resp. computationally) indistinguishable. For a vector a, denotes the -th component, denotes the hamming weight of a, denotes the number of 0 in a, and , where is a permutation over items. The notation denotes a component-wise XOR, i.e., .
2.2 Security Model
In this work, we consider semi-honest and static adversaries with the capability to corrupt an arbitrary subset of parties. To capture the security of a protocol in the simulation-based model [29, 14], we use the following notations:
-
•
Let be a probabilistic polynomial-time -ary functionality and let be a -party protocol for computing .
-
•
The view of () during an execution of on all parties’ inputs is denoted by , including the -th party’s input , its internal random tape and all messages that it received.
-
•
The output of during an execution of on x is denoted by . The joint output of parties is
Definition 1
We say that securely computes in the presence of if there exists a PPT algorithm s.t. for every ,
where .
2.3 Multi-party Private Set Operations
MPSO is a special case of secure multi-party computation (MPC). Figure 1 formally defines the typical ideal functionalities computing the intersection, intersection cardinality, intersection sum with cardinality, union, and union cardinality over the parties’ private sets.
-
Parameters: parties , where is the leader. Size of input sets. The bit length of set elements. The mapping function from ’s elements to the associated payloads.
-
Functionality: On input from ,
-
–
MPSI. give the intersection to .
-
–
MPSI-card. give the intersection cardinality to .
-
–
MPSI-card-sum. give the intersection cardinality to each for , and give to .
-
–
MPSU. give the union to .
-
–
MPSU-card. give the union cardinality to .
-
–
2.4 Random Oblivious Transfer
Oblivious transfer (OT) [47] is a foundational primitive in MPC, the functionality of 1-out-of-2 random OT (ROT) is given in Figure 2.
-
Parameters. Sender , Receiver . A field .
-
Functionality. On input from , sample . Give to and give to .
2.5 Batch Oblivious Programmable Pseudorandom Function
Oblivious pseudorandom function (OPRF) [21, 17, 51] is a central primitive in the area of PSO. Kolesnikov et al. [37] introduced batched OPRF, which provides a batch of OPRF instances. In the -th instance, the sender learns a PRF key , while the receiver inputs and learns .
Oblivious programmable pseudorandom function (OPPRF) [38, 45, 16, 51, 48] is an extension of OPRF, which lets program a PRF so that it has specific uniform outputs for some specific inputs and pseudorandom outputs for all other inputs. This kind of PRF that outputs programmed values on a certain programmed set of inputs is called programmable PRF (PPRF) [45]. evaluates OPPRF with no knowledge of whether it learns a programmed output of or just a pseudorandom value. The batch OPPRF functionality is given in Figure 3.
-
Parameters. Sender . Receiver . Batch size . The bit length of keys. The bit length of values.
-
Sender’s inputs. inputs sets of key-value pairs including:
-
–
Disjoint key sets .
-
–
The value sets , where , .
-
–
-
Receiver’s inputs. inputs queries .
-
Functionality: On input and from and from ,
-
–
Generate a uniform PPRF key and an auxiliary information for ;
-
–
Give vector and to .
-
–
Sample a PPRF such that for ;
-
–
Define , for ;
-
–
Give vector to .
-
–
2.6 Batch Secret-Shared Private Membership Test
Batch secret-shared private membership test (batch ssPMT) [19] is a two-party protocol that implements multiple instances of ssPMT[16, 40] between a sender and a receiver . Given a batch size of , inputs sets , while inputs elements . As a result, and receive secret shares of a bit vector of size , where the -th bit is 1 if , 0 otherwise. The batch ssPMT functionality is given in Figure 4. Dong et al. [19] proposed an efficient construction with linear complexities, based on batch OPPRF and secret-shared private equality test (ssPEQT) [45, 16].
-
Parameters. Sender . Receiver . Batch size . The bit length of set elements.
-
Inputs. inputs disjoint sets and inputs .
-
Functionality. On inputs from and input x from , for , sample two random bits under the constraint that if , otherwise . Give to and to .
2.7 Multi-Party Secret-Shared Shuffle
Multi-party secret-shared shuffle functionality works by randomly permuting the share vectors of all parties and then refreshing all shares, ensuring that the permutation remains unknown to any coalition of parties. The formal functionality is given in Figure 5. Eskandarian et al. [20] proposed an online-efficient protocol where the parties generate share correlations in the offline phase, so that the leader’s online complexity scales linearly with and , while the clients’ online complexity scales linearly with and is independent of .
-
Parameters. parties . The dimension of vector . The item length .
-
Functionality. On input from each , sample a random permutation . For , sample satisfying . Give to .
2.8 Hashing to Bins
The hashing to bins technique was introduced by Pinkas et al. [46, 44] to construct two-party PSI. At a high level, the receiver uses hash functions to assign its items to bins via Cuckoo hashing [42], so that each bin has at most one item.333The Cuckoo hashing process uses eviction and the choice of bins for each item depends on the entire set. On the other hand, the sender assigns each of its items to all bins via simple hashing. This guarantees that for each item of , if is mapped into the -th bin of Cuckoo hash table (), and is in ’s set, then the -th of simple hash table certainly contains .
We denote simple hashing with the following notation:
This expression represents hashing the items of into bins using simple hashing with hash functions . The output is a hash table denoted by , where for each , .444Appending the index of the hash function is helpful for dealing with edge cases like , which happen with non-negligible probability.
We denote Cuckoo hashing with the following notation:
This expression represents hashing the items of into bins using Cuckoo hashing with hash functions . The output is a Cuckoo hash table denoted by , where for each there is some such that . Some Cuckoo hash positions are irrelevant, corresponding to empty bins. We use these symbols throughout subsequent sections.
3 Predicate Formula Representation of Set Formulas
In this section, we formally introduce our predicate formula representation for any set formulas. We define several notions to facilitate the subsequent discussion of our work and present several theorems.
3.1 Constructible Set
We formalize the notion of the resulting sets that can be derived from any set formulas being computed over the parties’ private sets in the context of MPSO. We refer to these resulting sets as constructible sets.
Definition 2
Let be sets. A set is called a constructible set (over ) if it can be derived from through a finite number of set operations, including intersection, union, and difference.
In particular, if a constructible set satisfies for some , we call it an -constructible set (over ).
Definition 3
Let be a first-order predicate formula. If is composed of atomic propositions of the form , we call it a (first-order) set predicate formula.
Any constructible set can be represented by a set predicate formula. This corresponding relationship is formalized in the following theorem.
Theorem 3.1
Let be sets and is a constructible set. There exists a set predicate formula , s.t. for any urelement ,
We prove this theorem in Appendix 0.B.
3.2 Canonical Predicate Formula Representation
Definition 4
A set predicate formula is called set-separable with respect to for some if it can be written in the form:
where is a set predicate formula not involving , which we call the separation formula of with respect to .
Corollary 1
If a constructible set corresponds to a set predicate formula which is set-separable with respect to , then is an -constructible set.
Definition 5
Let set predicate formula is a disjunction of one or more subformulas,555A disjunction of one subformulas is itself. denoted as . Let be the corresponding set represented by , then if each subformula is set-separable with respect to some (), and the set of forms a partition of , we call a canonical predicate formula (CPF) representation (over ).
Theorem 3.2
Let be sets and is a constructible set. There exists a CPF representation s.t. for any urelement ,
We prove this theorem by showing how to construct in Appendix 0.C.
In order to illustrate Theorem 3.2, consider three constructible sets in the three-party setting: the intersection , the union and a complex set formula . We provide the respective CPF representation for each case below.
-
Intersection. . In this case, is a disjunction of one subformula , corresponding to the set . is set-separable with respect to , and . itself is a partition of .
-
Union. . is a disjunction of three subformulas , where each represents . is set-separable with respect to . is a partition of .
-
Complex set formula. There are two CPF representations for this case:
-
–
. is a disjunction of two subformulas with the corresponding sets and . is set-separable with respect to and , while is set-separable with respect to and . is a partition of .
-
–
. is set-separable with respect to , so it is a disjunction of one subformula , which obviously satisfies the definition of CPF representation.
-
–
The third example demonstrates that the CPF representation for a given constructible set is not unique. Different CPF representations can impact our protocols’ efficiency. A key principle is to minimize the number of subformulas in the CPF representation to optimize performance.
4 Predicative Zero-Sharing
In this section, we introduce a new notion called predicative zero-sharing. By zero-sharing, we refer to a “redundant” secret-sharing that distributes one bit into secret shares over a finite field, where this bit is 0 only if some condition holds (e.g. the truth-value of a first-order predicate formula is true). Predicative zero-sharing is a family of protocols, each associated with a first-order predicate formula, encoding the truth-value of the formula on the parties’ inputs into a zero-sharing among the parties. This class of protocols can be composed based on and operators.
4.1 Definitions
A predicative zero-sharing protocol allows a set of parties with private inputs to receive secret shares of 0, on condition that the truth-value of the associated first-order predicate formula in terms of their inputs is true, otherwise receive secret shares of a uniformly random value. The formal definition of predicative zero-sharing functionality is given in Figure 6.
-
Parameters: parties with inputs . A field . A first-order predicate formula .
-
Functionality: On input from each , sample s.t. if , . Give to for .
4.2 Security
Given the probabilistic functionality, a protocol must meet Definition 1 to securely compute predicative zero-sharing. However, we observe that for predicative zero-sharing, a simpler security definition with three requirements, including correctness, privacy and independence, is equivalent. We demonstrate this equivalence through the following theorem. Note that we will use this simpler security definition to prove security of all predicative zero-sharing protocols in this work.
Consider a probabilistic -ary functionality , which takes the parties’ inputs and outputs secret shares of to the parties. Let be a -party protocol for computing , and and denote the output of from , and that during the execution of on x, respectively ().
Theorem 4.1
If is a probabilistic functionality in terms of x, and satisfies:
-
•
Correctness. The outputs of are secret shares of , namely,
-
•
Privacy. There exists a PPT algorithm s.t. for every ,
-
•
Independence. The randomness in is independent of for every during an execution of .
Then, there exists a PPT algorithm s.t. for every ,
We prove this theorem in Appendix 0.D. Note that predicative zero-sharing functionality is a special case of , where
and is a uniform value (the randomness in , denoted as in the real execution). The independence requirement in this case is instantiated as: if , the distribution of the secret during an execution of is independent of , and the correctness and independence requirements ensure that if , is uniform and independent of the joint view of any parties in real execution.
4.3 Relaxed Predicative Zero-Sharing
Predicative zero-sharing serves as an abstraction of many existing MPC protocols. Some protocols, like multi-party secret-shared ROT (mss-ROT) [19], rigidly conform to Theorem 4.1. In contrast, others realize functionality without meeting the independence requirement. We refer to this relaxed predicative zero-sharing functionality associated with as .
Relaxed predicative zero-sharing accommodates a broader range of existing protocols, such as ROT and equality-conditional randomness generation (ECRG) [35]. We demonstrate that ROT implies a relaxed predicative zero-sharing associated with a simple predicate to test whether the choice bit . Let set its share , where is the first message from ROT, and let set its share , the received message. Given that ROT functionality can be written as , if , ; else, , which is uniform but dependent on the output messages from ROT in ’s view.
Using the standard simulation-based definition, it is hard to depict this security relaxation by defining merely a single functionality that considers all possible coalitions of parties in the multi-party setting (). However, with our new security definition tailored for predicative zero-sharing, the relaxation is precisely formalized by removing the independence requirement.
4.4 From Relaxed to Standard Predicative Zero-Sharing
We give an efficient method for transforming relaxed predicative zero-sharing into standard predicative zero-sharing below.
Assuming that all parties obtain a secret-sharing from a relaxed predicative zero-sharing protocol, with the goal to generate a new secret-sharing meeting the standard predicative zero-sharing definition. All they need to do is to prepare a random secret-sharing in the offline phase (by each sampling a uniform share ), and perform a secure multiplication in the online phase. We optimize the online phase of this secure multiplication through Beaver triples [7] in Appendix 0.E.
-
Correctness and independence. We set the field size .
-
–
If , , then .
-
–
If , is uniform. Let be the event that is uniform and and independent of the joint view of any parties. Let be the event and be the event . Since is uniform and independent, we have .
-
–
-
Privacy. The privacy follows immediately from the privacy of the relaxed predicative zero-sharing protocol and the secure multiplication.
4.5 From Simple to Compound Predicative Zero-Sharing
According to the type of the associated first-order predicate formula , we divide predicative zero-sharing into two categories: If is a simple predicate, we call it a simple predicative zero-sharing; If is a compound predicate, we call it compound predicative zero-sharing. A compound predicate is formed from literals () and logical connectives and , where each literal corresponds to a simple predicate or its negation (). We show that as long as we have a relaxed simple predicative zero-sharing protocol for each , we can build a compound predicative zero-sharing protocol for any compound predicate .
At a high level, a compound predicative zero-sharing protocol for proceeds in three phases: First, the parties execute the relaxed simple predicative zero-sharing protocol for each literal. For literals involving only a subset of the parties, the uninvolved parties set their missing secret share to 0; Second, they collectively manipulate the output secret-sharings by emulating the evaluation of , composing them into one output secret-sharing that meets the definition of relaxed compound predicative zero-sharing for , step by step. At the end of each step, they obtain a secret-sharing associated with the currently evaluated formula; Finally, the parties transform the relaxed compound predicative zero-sharing into the standard. The complete construction is described in Figure 7.
Theorem 4.2
Protocol securely realizes against any semi-honest adversary corrupting parties in the -hybrid model.
-
Correctness and independence. In each step of the formula emulation stage,
-
–
If , the parties compute . If , namely, , by the functionalities of and , , hence we have ; otherwise, , which results that one of and is random, so is random.
-
–
If , the parties compute . If , namely, , we have , hence ; otherwise, , then both of and are random. Let be the event that is random. Let be the event and be the event . We have . To bound the correctness error by , we require that the probability of any occurring is negligible. By union bound, . Therefore, we set the field size , where is the number of operators in .
The above correctness of implementing and operators in each step ensures the correctness of generating a relaxed predicative compound zero-sharing for . Then following the proof of correctness and independence in Section 4.4, the protocol satisfies the correctness and independence requirements of the standard predicative compound zero-sharing for .
-
–
-
Privacy. The privacy of predicative zero-sharing is straightforward to verify: All interactions happen within the invocations of blocking blocks — all relaxed simple predicative zero-sharing protocols, the secure multiplication and transformation. Therefore, given the outputs from the ideal functionality, the simulator only needs to invoke the sub-simulators for these blocking blocks in a backward-chaining manner. As long as the privacy of all relaxed simple predicative zero-sharing protocols, the secure multiplication and transformation holds, the adversary’s view is indistinguishable in the ideal and real executions.
-
Parameters: parties with inputs . A field . A simple/compound predicate composed of literals () and logical connectives. A Beaver triple generated in the offline phrase.
-
Protocol:
-
1.
The simple predicative sharing stage. In this stage, the parties invoke for each literal , . If does not involve all the parties, then the uninvolved parties set their secret shares to 0. As a result, each has a corresponding secret-sharing among the parties.
-
2.
The formula emulation stage. If , the parties collectively emulate the computation of in the order of operator precedence, step by step. In each step, the parties generate a secret-sharing associated with a binary clause connected by a given operator, based on the secret-sharings associated with the two contained literals and , which they obtain from previous steps. The actions of parties depend on the type of operator being computed:
-
–
operator: Suppose the parties hold two secret-sharings and associated with and respectively. They want to compute a relaxed predicative zero-sharing for , where . All they need to do is to locally add two shares to obtain the secret-sharing .
-
–
operator: Suppose the parties hold two secret-sharings and associated with and respectively. They want to compute a relaxed predicative zero-sharing for , where . Then they perform a secure multiplication .
After obtaining the secret-sharing associated with , the parties regard as a new literal, and repeat the above process until there is only one literal in . The secret-sharing associated with the ultimate literal held by the parties is the relaxed compound predicative zero-sharing for .
-
–
-
3.
Transformation from relaxed to standard. All parties compute by performing a secure multiplication , which requires one reconstruction in the online phase using Beaver triple technique (c.f. Appendix 0.E).
-
1.
5 Membership Zero-Sharing
Predicative zero-sharing is the abstraction of a class of MPC protocols. With the associated first-order predicate formulas determined, predicative zero-sharing can be instantiated. To instantiate predicative zero-sharing in the context of MPSO, we introduce membership zero-sharing, each associated with a set predicate formula, which serves as the technical core of our framework.
Our goal in this section is to build membership zero-sharing protocols for any first-order set predicate formulas. At a very high level, our construction follows the recipe for predicative zero-sharing in Figure 7, with the relaxed predicative zero-sharing components awaiting instantiations. Given that any set predicate formula is only composed of two types of literals — set membership predicates and the negations , the task reduces to constructing two relaxed membership zero-sharing protocols, associated with and respectively, in the two-party setting. The technical route is outlined in Figure 8.
5.1 Membership Zero-Sharing
A membership zero-sharing protocol allows parties , where one party (denoted as ) holds an element while each of the others holds a set () as input. If the associated set predicate formula , they receive secret shares of 0, otherwise they receive secret shares of a random value. The formal definition of membership zero-sharing functionality is given in Figure 9.
-
Parameters: parties , where is the only one holding an element instead of a set. A set predicate formula . A field .
-
Functionality: On input from , from each (), sample for s.t. if , . Give to .
A batched version of membership zero-sharing is defined in Figure 10, where holds a vector and each holds sets as inputs. The parties obtain secret-sharings, where the -th secret-sharing indicates the truth-value of the same formula evaluated on their -th inputs. In particular, if is a conjunction of set membership predicates (i.e., ), we refer to it as batch pure membership zero-sharing; if is a conjunction of set non-membership predicates (i.e., ), we refer to it as batch pure non-membership zero-sharing. We use and to denote these two functionalities, respectively. The details of batch pure membership zero-sharing and batch pure non-membership zero-sharing are provided in Appendix 0.F. We also introduce a variant of pure membership zero-sharing called pure membership zero-sharing with payloads, where holds an element while each of the others holds a set of elements and a set of associated payloads. In the end, the parties hold two secret sharings. If the conjunction of set membership predicates holds true (i.e., belongs to all element sets), the parties receive secret shares of 0 and secret shares of the sum of all payloads associated with ; otherwise they receive secret shares of two random values. The ideal functionality of batch pure membership zero-sharing with payloads is given in Figure 11, with further details also found in Appendix 0.F.
-
Parameters: parties , where is the only one holding elements instead of sets. A set membership predicate formula . Batch size . A field .
-
Functionality: On input from and from each (), sample for , s.t. for , if , . Give to .
-
Parameters: parties , where is the only one holding elements instead of sets. Batch size . A field and payload field . The mapping function from element sets to the associated payload sets .
-
Functionality: On input from , and from each (), sample for , s.t. for , if , and , where . Give to .
5.2 Relaxed Membership Zero-Sharing for Set Membership Predicate
A class of relaxed membership zero-sharing for set membership predicate can be defined as a two-party functionality as follows: There are two parties, the sender with a set and the receiver with an element . The functionality samples and if , sets , otherwise . It also generates an auxiliary information based on and outputs to and to . The is part of the syntax that allows for some leakage of the secret to when , capturing the security relaxation in relaxed predicative zero-sharing.
We construct this protocol using OPPRF: samples a uniform , and sets as the key set and repeated values as the value set. Then and invoke OPPRF, where inputs and receives . In the end, and outputs and respectively. By the OPPRF functionality, if , , otherwise is pseudorandom. The outputted to is the PRF key from OPPRF. This protocol can be naturally extended to a batched version by using batch OPPRF.
5.3 Relaxed Membership Zero-Sharing for Set Non-Membership Predicate
A class of relaxed membership zero-sharing protocol for set non-membership predicate can be defined as a two-party functionality as follows: The sender inputs a set while the receiver inputs . The functionality samples and if , sets , otherwise . It also generates an auxiliary information based on and outputs to and to .
Intuitively, this functionality shares similarities with the ssPMT — both yield secret shares of 0 when . The key difference lies in that it outputs a zero-sharing over a field , where the opposite of a secret-sharing of 0 is a secret-sharing of a random value in , while ssPMT outputs a bit secret-sharing over , where the opposite of a secret-sharing of 0 is a secret-sharing of 1. Given the efficient construction for batch ssPMT in [19], our goal is to efficiently transform bit secret-sharings into zero-sharings (The batched version proceeds by first having the parties invoke batch ssPMT then execute transformations).
Recall that in Section 4.1, ROT is considered as a relaxed simple predicative zero-sharing associated with the predicate . A variant of ROT, involving two choice bits held by and respectively [40, 35, 19], is a relaxed simple predicative zero-sharing with the associated predicate . After executing the protocol, receives while receives .666This two-choice-bit ROT is identical to the standard 1-out-of-2 ROT, where is sampled by , indicating whether to swap the order of and , as in Figure 12. This two-choice-bit ROT can be used to transform bit secret-sharing into zero-sharing as follows: Let set and set , then if , ; otherwise is uniform. The outputted to is .
5.4 Membership Zero-Sharing for Any Set Predicate Formulas
Using the above instantiations for the two-party relaxed membership zero-sharing protocols, we present the complete protocol of batch membership zero-sharing for any set predicate formula in Figure 12.
Theorem 5.1
Protocol securely realizes against any semi-honest adversary corrupting parties in the -hybrid model.
The correctness and independence of membership zero-sharing are inherited from predicative zero-sharing, with a parameter adjustment for correctness: , where is the number of operators in .
The privacy of membership zero-sharing is straightforward to verify: All interactions happen within the invocations of two relaxed batch membership zero-sharing protocols, which can be further decomposed into three blocking blocks — batch OPPRF, batch ssPMT and ROT. Therefore, given the outputs from the ideal functionality, the simulator only needs to invoke the sub-simulators for these blocking blocks in a backward-chaining manner. As long as the batch OPPRF, batch ssPMT and ROT protocols are secure, the adversary’s view is indistinguishable in ideal and real executions, thus meeting privacy definition.
-
Parameters: parties , where holds elements instead of sets. A set predicate formula composed of literals where each () is in the form or for some . Beaver triples , where , , and for . Batch size . A field .
-
Protocol:
-
1.
The simple predicative sharing stage. In this stage, for each , and invoke the relaxed batch membership zero-sharing for or (according to the form of ) of size , and the remaining parties set their secret shares to 0. As a result, the parties hold a vector of secret-sharings associated with . To be specific, if is in the form of
-
–
: For the -th instance (), samples and sets and , where . Then and invoke where acts as with inputs and , and acts as with input x and receives . sets its shares . sets its shares . For each , sets its shares .
-
–
: and invoke , where in the -th instance (), inputs and receives , while inputs and receives . Then they invoke instances of ROT, where in the -th instance (), acts as and receives , while acts as with input and receives . sets its shares . sets its shares . For each , sets its shares .
The vector of secret-sharings for denotes as .
-
–
-
2.
The formula emulation stage. If , the parties collectively emulate the computation of in the order of operator precedence, step by step. In each step, the parties generate a vector of secret-sharings associated with a binary clause connected by a given operator, based on the two vectors associated with the contained literals and , which they obtain from previous steps. The actions of the parties depend on the type of operator being computed:
-
–
operator: Suppose the parties hold two vectors of secret-sharings and associated with and respectively. They want to compute relaxed membership zero-sharings of . Then they locally add the corresponding components of two vectors to obtain .
-
–
operator: Suppose the parties hold two vectors of secret-sharings and associated with and respectively. They want to compute relaxed membership zero-sharings of . Then the parties perform secure multiplications between the corresponding components of two vectors, i.e., .
After obtaining the vector of secret-sharings associated with , the parties regard as a new literal, and repeat the above steps until there is only one literal in . The vector associated with the ultimate literal held by the parties is the vector of relaxed membership zero-sharings for .
-
–
-
3.
Transformation from relaxed to standard. All parties compute by performing , using Beaver triples (c.f. Appendix 0.E).
-
1.
6 Our MPSO Framework
6.1 Overview
Our framework is based on the CPF representation of any constructible set . Recall that . Assuming that () only contains atomic propositions relevant to (), is set-separable with respect to for some . Namely,
where is the separation formula of . We use to denote the set represented by . Our high-level idea is that for each , we designate as and let engage in the batch membership zero-sharing protocol for , so that for each , if , the parties receive secret shares of 0, otherwise secret shares of a random value. adds to its associated shares. As a result, for each , if , i.e., , the parties receive secret shares of , otherwise secret shares of a random value. The process is elaborated below.
For each , uses hash functions to assign elements to bins via Cuckoo hashing, so that each bin () has at most one item. Meanwhile, each () assigns each element to bins . Note that if maps the item into , then . If also holds , it must map into . This enables the remaining parties to align their input sets with respect to , such that for each in , if and only if is in . Thereby, we derive that
engage in the batch membership zero-sharing for , where acts as with inputs and each inputs . In the end, they receive secret-sharings, so that if the element in each bin satisfies , i.e. , the parties receive secret shares of 0, otherwise secret shares of a random value. adds appended with an all-zero string (for the distinction between elements and random values) to the -th secret share (This last element addition step actually depends on the functionality, see below), so that if , the parties hold a secret-sharing of .
Given that form a partition of Y, if the parties execute the above process with the last element addition step for all , they will hold secret-sharings of all elements in (the secret-sharing of each element appears once, interspersed by random secret-sharings for elements not in and duplicate elements), arranged in the primary order of . In each , secret-sharings are arranged in the secondary order of ’s Cuckoo hash positions, which depends on the whole set . On the contrary, if the parties execute the above process without the last step, they hold secret-sharings of 0 instead of elements in the same positions. The decision to execute the last step and the subsequent process are determined by the target functionality, which is divided into three categories:
-
1.
MPSO. In this functionality, the parties must reconstruct the elements in to , thus they have to execute the last element addition step to secret-share elements. However, a straightforward reconstruction of secret-sharings leads to two types of information leakage: 1) The primary order of the reconstructed elements reveals the subset which each element belongs to. 2) The secondary order of the reconstructed elements reveals the information of . The solution is to let all parties invoke the multi-party secret-shared shuffle to randomly permute and re-share secret-sharings before reconstruction.
-
2.
MPSO-card. In this functionality, the parties must reconstruct the secrets without revealing the actual elements but only the cardinality. To achieve this, the parties skip the last element addition step, so that for each element in , the parties hold secret-sharings of 0, and for elements not in or repeated elements, the parties hold random secret-sharings. These secret-sharings are arranged in a specific sequence, and straightforward reconstruction would cause similar leakage as previous, thus the parties need to invoke the multi-party secret-shared shuffle as well. Afterwards, they reconstruct secrets to the leader, who counts the number of 0s as the cardinality of .
-
3.
Circuit-MPSO. There are two ways to realize this functionality.
-
•
Approach 1: The parties skip the last element addition step for all subformulas. They feed secret-sharings along with the elements in indicated Cuckoo hashing bins into generic MPC in order, which implements a circuit identifying 0s from random values, collecting elements in the corresponding positions as , and computing arbitrary function on .
-
•
Approach 2: The parties execute the last element addition step for all subformulas. They feed secret-sharings into generic MPC, which implements a circuit first distinguishing elements from random values (by the appended 0s) to identify , then computing arbitrary function on .
-
•
In the following sections, we progressively introduce our framework in detail. Specifically, we start by constructing the simplest cases — MPSI/MPSI-card/circuit-MPSI, which are on behalf of a special case where is a disjunction of one subformula that is set-separable with respect to , in Section 6.2. The protocols in this setting can bypass the invocation of multi-party secret-shared shuffle. In addition, we propose an MPSI-card-sum protocol as a variant. Next, we discuss another special case where is represented as the disjunction of several subformulas. We construct MPSU/MPSU-card/circuit-MPSU protocols as illustrations in Section 6.3. Finally, in Section 6.4, we present the complete MPSO/MPSO-card/circuit-MPSO protocols.
6.2 MPSI, MPSI-card and Circuit MPSI
Consider a constructible set , which can be represented as a set-separable formula with respect to , such as can be represented as and can be represented as . Let be the separation formula of with respect to .
In this case, all elements in belong to , and the order of secret-sharings is totally determined by , so the two types of “information leakage” associated with the specific sequence of secret-sharings no longer constitute actual information leakage for . Therefore, after invokes batch membership zero-sharing with the other parties, acting as , to realize MPSO, the parties straightforwardly reconstruct secret-sharings to . For each , checks whether the -th secret is 0. If so, the element in the -th bin is in . While in MPSO-card, the parties still need to invoke a multi-party secret-shared shuffle protocol before reconstruction to shuffle the correspondences between elements and secret-sharings, preventing from learning the exact elements in .
Another and the most important benefit in this setting is that the costs of the protocols do not scale with the input length of set elements, as long as the parties pre-hash their elements into shorter strings. For correctness, we must ensure that the hashing introduces no collisions among and the other parties’ input elements, so the hash function’s output length is at least .
The most commonly used protocols in this case are MPSI, MPSI-card and circuit MPSI. Let be a circuit that has input wires, divided to sections of inputs wires each. In the -th section (), the -th group of inputs on is associated with for , and we denote the -th input in this group () as ; The last -length inputs are associated with for certain , where we denote the -th input () as . The circuit first consists a subcircuit producing a bit if and 0 otherwise for . Then, the circuit computes and outputs where and is the function to be computed on the constructible set . The complete MPSI, MPSI-card and circuit MPSI protocols are described in Figure 13. Additionally, The MPSI-card-sum protocol based on pure membership zero-sharing with payloads is outlined in Figure 14.
Parameters. parties . Set size . The element length . A field . Cuckoo hashing parameters: hash functions and number of bins .
Inputs. Each party has input .
-
1.
Hashing to bin. does . For , does .
-
2.
Batch pure membership zero-sharing. All parties invoke of batch size , where acts as with inputs and each inputs for . For , receives .
The following actions of the parties depend on the functionality:
MPSI.
-
3.
For , sends to . computes and sets . For , if , outputs the element in .
MPSI-card.
-
3.
For , invoke with input . receives .
-
4.
For , sends to . outputs .
Circuit-MPSI (Approach 1).
-
3.
All parties invoke an -party computation with circuit . For , takes as its -th input, and inputs the element in .
-
Parameters. Same as in Figure 13.
-
Inputs. Each party has input .
-
1.
Hashing to bin. does . For , does . defines where for , contains the associated payloads of the elements in .
-
2.
Batch pure membership zero-sharing with payloads. All parties invoke of batch size , where acts as with inputs and each of the remaining parties inputs and . For , receives .
-
3.
For , invoke with input . receives .
-
4.
For , if is not an empty bin, sets , where is the associated payload with the element in .
-
5.
For , invoke with input . receives .
-
6.
For , sends to . computes and defines a bit vector where for , if , , otherwise . distributes e to . For , outputs .
-
7.
For , computes . For , sends to . outputs .
-
1.
6.3 MPSU, MPSU-card and Circuit MPSU
Consider a constructible set , whose CPF representation is a disjunction of several subformulas, one is an atomic proposition for some . For instance, can be represented as . In this case, the subformula only involves , so simply shares its elements among the parties. Especially, if , then the subformula can be ignored, as long as finally appends its elements to the reconstructed elements to obtain .
The most commonly used protocols in this case are MPSU, MPSU-card and circuit MPSU. Let be a circuit with groups of inputs on . The -th group is associated with , where the -th inputs is denoted by . The circuit computes and outputs where and is the function to be computed on . The complete MPSU, MPSU-card and circuit MPSU protocols are described in Figure 15.
-
Parameters. parties . Set size . The element length . The all-zero string length . A field . An encoding function . Cuckoo hashing parameters: hash functions and number of bins .
-
Inputs. Each party has input .
-
1.
Hashing to bin. does . For , does and .
-
2.
Batch pure membership zero-sharing. For , invoke of batch size , where acts as with inputs and each inputs for . For , receives .
The following actions of the parties depend on the functionality:
-
1.
-
MPSU.
-
3.
For , , if is not an empty bin, computes , where is the element in , otherwise samples .
-
4.
For , computes as follows: For , . Set other positions to .
-
5.
For , invoke with input . receives .
-
6.
For , sends to . computes and sets . For , if for some , outputs .
-
3.
-
MPSU-card.
-
3.
For , , chooses at random if is an empty bin.
-
4.
For , computes as follows: For , . Set other positions to .
-
5.
For , invoke with input . receives .
-
6.
For , sends to . outputs .
-
3.
-
Circuit-MPSU (Approach 2).
-
3.
For , , if is not an empty bin, computes , where is the element in , otherwise samples .
-
4.
For , computes as follows: For , . Set other positions to .
-
5.
All parties invoke an -party computation with the circuit . For , inputs to the circuit.
-
3.
6.4 MPSO, MPSO-card and Circuit MPSO
Following the overview of our framework, we formally present the MPSO, MPSO-card, and circuit-MPSO protocols for any constructible set in Figure 16.
-
Parameters. parties . Set size . The element length . The all-zero string length . A field . An encoding function . A constructible set represented as a CPF representation . Cuckoo hashing parameters: hash functions and number of bins .
-
Inputs. Each party has input .
-
1.
Hashing to bin. For , does and .
-
2.
Single subformula evaluation. Let . For the -th subformula in , where ,
-
(a)
If , suppose , then . For , if is not an empty bin, sets , otherwise chooses at random. For , sets .
-
(b)
If , suppose is set-separable with respect to for some and . The parties invoke where acts as with inputs and each inputs for . For , each receives for , and each sets for .
-
(a)
The following actions of the parties depend on the functionality:
-
1.
-
MPSO.
-
3.
For , , if is not an empty bin, (the same as step 2) computes , where is the element in , otherwise samples .
-
4.
For , each computes as follows: For , .
-
5.
For , invoke with input . receives .
-
6.
For , sends to . computes and sets . For , if for some , outputs .
-
3.
-
MPSO-card.
-
3.
For , computes as follows: For , .
-
4.
For , invoke with input . receives .
-
5.
For , sends to . outputs .
-
3.
-
Circuit-MPSO (Approach 1).
-
3.
All parties invoke an -party computation with the circuit . For , inputs to the -th section, and (the same as step 2) inputs the elements in in addition.
-
3.
-
Circuit-MPSO (Approach 2).
-
3.
For , , if is not an empty bin, (the same as step 2) computes , where is the element in , otherwise samples .
-
4.
All parties invoke an -party computation with the circuit . For , takes as its -th input.
-
3.
Theorem 6.1
The MPSO, MPSO-card and circuit-MPSO protocols in Figure 16 are secure against any semi-honest adversary corrupting parties in the -hybrid model.
-
Correctness. The correctness of these protocols comes from the existence and qualities of CPF representations in Theorem 3.2 and Definition 4, and the correctness of batch membership zero-sharing. To ensure the correctness of all batch membership zero-sharing protocols, the field size must satisfy , where is the total number of operators in all for .
Let denote the set represented by . In the MPSO and circuit-MPSO (Approach 2) protocols, the parties hold secret-sharings of the elements in , and secret-sharings of random values after each batch membership zero-sharing for , for . Given that is a partition of , the parties hold secret-sharings of the elements in , and secret-sharings of random values in total. Finally, and the circuit identify all set elements by checking whether the last bits are all zero. An error occurs when a random value collides with . Thereby, the overall false positive error probability is at most . To make this failure probability negligible, we set ; In the MPSO-card and circuit-MPSO (Approach 1) protocols, the parties hold secret-sharings of 0, and secret-sharings of random values. To bound the overall false positive error probability by , we set .
-
Security. This security proof is deferred to Appendix 0.G.
-
Complexity Analysis. The computation and communication complexity are both dominated by the form of the CPF representation of the constructible set being computed, where .
In the subformula evaluation stage, the computation complexity of each party includes two parts: (1) , where is set-separable with respect to (we use to denote the separation formula of with respect to ), while is the number of literals and is the total number of and operators in ; (2) , where is not set-separable with respect to while includes , and is the total number of and operators in the separation formula of with respect to some other set. The communication complexity of can also be computed as two parts: (1) , where is set-separable with respect to (we use to denote the separation formula of with respect to ), while is the number of literals and is the number of operators in ; (2) , where is not set-separable with respect to while includes , and is the number of operators in the separation formula of with respect to some other set.
In the multi-party secret-shared shuffle and reconstruction steps, the leader’s computation and communication complexity are both while each client’s computation and communication complexity are both , where is the number of subformulas in the CPF representation .
A more detailed of complexity analysis for our MPSI (and its variants) and our MPSU (and its variants) protocols is provided in Appendix 0.A.
7 Performance Evaluation
We demonstrate the practicality of our framework with implementations for its typical instantiations, including MPSI, MPSI-card, MPSI-card-sum and MPSU protocols. We assume a commonly used setting where Beaver triples are pre-computed offline and stored locally. This follows real scenarios where Beaver triples are pre-generated by parties themselves or with the help of a Trusted-Third Party under the Trusted Dealer model [59, 40]. We report on the online performance of our protocols in comparison with the respective state of the art:
-
•
The state-of-the-art MPSI [58]: This work proposes two MPSI protocols, O-Ring and K-Star, with publicly available implementations [1]. We select K-Star for comparison since it is faster than O-Ring with the same total communication costs. The reported data in Table 1 is obtained by running their full protocol, as there is no correlated randomness pre-generated offline in their implementation. We set the corruption threshold in their code and report the leader’s running time and the total communication costs of all parties for both their and our MPSI protocols.
-
•
The state-of-the-art MPSI-card [18]: This work does not provide open-source code, thus we take the experimental results of the online phase from their paper, whose experiments was run on Intel i7-12700H 2.30GHz CPU and 28GB RAM. We report the leader’s running time and communication costs for both their and our MPSI-card protocols in Table 2.
-
•
The state-of-the-art MPSU [19]: This work proposes two MPSU protocols with publicly available implementation [2]. We compare with the symmetric-key based one for its better online performance. In the benchmark of MPSU, we set the item length as 64 bits and report the leader’s running time and communication costs in the online phase in Table 4.
To our knowledge, there is no available implementation or reported experimental data for the MPSI-card-sum protocol. We provide the first MPSI-card-sum implementation and report experimental data in the same setting as MPSI-card.
We conduct our experiments on a cloud virtual machine with Intel(R) Xeon(R) 2.70GHz CPU (32 physical cores) and 128 GB RAM. In the LAN setting, the bandwidth is set to be 10 Gbps with 0.1 ms RTT latency. In the WAN setting, the bandwidth is set to be 400 Mbps with 80 ms RTT latency. The implementation details and parameter settings are detailed in Appendix 0.H.
The experimental results, presented in Table 1-4, show that our protocols exhibit online performance that is either superior to or comparable with the state of the art in all cases. In terms of computation costs, our MPSI protocol achieves a speedup (LAN) and a speedup (WAN) compared to [58]; our MPSI-card protocol achieves an speedup (LAN) compared to [18]. In terms of communication costs, our MPSI achieves an improvement up to while our MPSI-card achieves an improvement up to . The computation and communication costs of our MPSI-card-sum is only double our MPSI approximately, while realizing a richer functionality. The computation and communication costs of our MPSU are comparable with [19].
| protocol | Time (second) | Comm. (MB) | ||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| LAN | WAN | |||||||||||||||
| [58] | 0.064 | 0.188 | 0.860 | 4.389 | 19.81 | 5.283 | 5.733 | 6.680 | 10.24 | 30.10 | 2.109 | 3.418 | 8.110 | 28.54 | 111.9 | |
| 3 | Ours | 0.013 | 0.047 | 0.227 | 1.533 | 7.945 | 1.540 | 2.070 | 2.912 | 5.136 | 16.42 | 0.641 | 2.551 | 10.20 | 40.91 | 164.2 |
| [58] | 0.077 | 0.211 | 0.905 | 4.482 | 20.78 | 5.719 | 6.159 | 7.174 | 11.24 | 33.45 | 4.689 | 7.464 | 17.39 | 60.20 | 235.4 | |
| 4 | Ours | 0.015 | 0.051 | 0.242 | 1.632 | 8.133 | 1.944 | 2.476 | 3.339 | 6.345 | 19.23 | 0.961 | 3.826 | 15.31 | 61.36 | 246.2 |
| [58] | 0.104 | 0.235 | 1.019 | 4.839 | 22.47 | 6.049 | 6.511 | 7.806 | 12.02 | 37.27 | 8.285 | 13.07 | 30.16 | 103.5 | 403.9 | |
| 5 | Ours | 0.016 | 0.053 | 0.260 | 1.724 | 8.255 | 2.348 | 2.889 | 3.770 | 6.789 | 22.04 | 1.282 | 5.102 | 20.41 | 81.81 | 328.3 |
| [58] | 0.215 | 0.465 | 1.691 | 7.310 | 32.91 | 8.653 | 9.511 | 11.18 | 21.12 | 70.74 | 41.51 | 64.46 | 146.3 | 493.7 | 1921 | |
| 10 | Ours | 0.026 | 0.075 | 0.354 | 1.910 | 8.898 | 4.363 | 4.915 | 5.769 | 9.423 | 33.38 | 2.884 | 11.48 | 45.92 | 184.1 | 738.7 |
| protocol | Time (second) | Comm. (MB) | ||||||||||||||
| LAN | WAN | |||||||||||||||
| 3 | Ours | 0.015 | 0.052 | 0.237 | 1.581 | 8.050 | 1.784 | 2.800 | 3.681 | 6.498 | 19.50 | 0.761 | 3.035 | 12.15 | 48.76 | 195.8 |
| 4 | Ours | 0.016 | 0.054 | 0.252 | 1.684 | 8.300 | 2.267 | 3.780 | 5.005 | 8.565 | 24.88 | 1.122 | 4.472 | 17.91 | 71.83 | 288.4 |
| 5 | [18] | 0.670 | 1.789 | 6.289 | 31.24 | 20.70 | 94.49 | 425.6 | 1894 | |||||||
| Ours | 0.018 | 0.056 | 0.270 | 1.735 | 8.616 | 2.753 | 4.747 | 6.076 | 10.42 | 28.87 | 1.482 | 5.909 | 23.66 | 94.90 | 381.0 | |
| 10 | [18] | 1.477 | 4.503 | 12.81 | 95.23 | 46.58 | 212.6 | 957.7 | 4262 | |||||||
| Ours | 0.026 | 0.071 | 0.375 | 2.001 | 9.226 | 5.174 | 9.578 | 11.93 | 18.43 | 50.33 | 3.285 | 13.09 | 52.42 | 210.2 | 844.0 | |
| Time (second) | Comm.(MB) | ||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| LAN | WAN | ||||||||||||||
| 3 | 0.023 | 0.088 | 0.417 | 2.810 | 14.67 | 2.519 | 3.541 | 4.686 | 9.417 | 31.88 | 1.283 | 5.107 | 20.43 | 81.89 | 328.6 |
| 4 | 0.025 | 0.091 | 0.436 | 3.044 | 15.16 | 3.084 | 4.680 | 5.948 | 12.40 | 38.17 | 1.885 | 7.499 | 29.99 | 120.2 | 482.4 |
| 5 | 0.027 | 0.094 | 0.474 | 3.150 | 15.49 | 3.650 | 5.729 | 7.288 | 13.17 | 43.06 | 2.486 | 9.890 | 39.56 | 158.6 | 636.2 |
| 10 | 0.039 | 0.120 | 0.632 | 3.610 | 16.65 | 6.474 | 10.93 | 13.79 | 23.56 | 71.36 | 5.493 | 21.85 | 87.37 | 350.2 | 1405 |
| protocol | Time (second) | Comm. (MB) | ||||||||||||||
| LAN | WAN | |||||||||||||||
| [19] | 0.017 | 0.050 | 0.215 | 1.005 | 4.352 | 3.157 | 3.734 | 4.444 | 9.705 | 33.10 | 1.690 | 6.788 | 27.87 | 112.7 | 455.6 | |
| 3 | Ours | 0.022 | 0.068 | 0.298 | 1.892 | 9.607 | 3.327 | 3.774 | 4.878 | 11.04 | 37.77 | 1.930 | 7.755 | 31.76 | 128.3 | 518.7 |
| [19] | 0.023 | 0.071 | 0.286 | 1.393 | 5.645 | 3.976 | 4.618 | 6.507 | 17.10 | 59.21 | 3.145 | 12.81 | 51.69 | 208.8 | 843.7 | |
| 4 | Ours | 0.029 | 0.089 | 0.415 | 2.345 | 11.25 | 3.996 | 4.820 | 6.756 | 17.45 | 64.04 | 3.624 | 14.74 | 59.46 | 240.1 | 969.6 |
| [19] | 0.030 | 0.087 | 0.368 | 1.714 | 7.003 | 4.800 | 5.521 | 8.938 | 25.95 | 95.40 | 5.007 | 20.36 | 82.11 | 331.5 | 1339 | |
| 5 | Ours | 0.039 | 0.114 | 0.542 | 2.796 | 13.18 | 4.872 | 5.705 | 8.992 | 26.09 | 101.6 | 5.805 | 23.57 | 95.05 | 383.6 | 1548 |
| [19] | 0.088 | 0.286 | 1.183 | 9.203 | 14.54 | 38.31 | 20.48 | 82.39 | 332.0 | |||||||
| 10 | Ours | 0.110 | 0.337 | 1.483 | 7.167 | 8.187 | 12.06 | 30.56 | 105.7 | 24.07 | 96.82 | 390.1 | 1572 | |||
References
- [1] https://github.com/private-panda/oring
- [2] https://github.com/real-world-cryprography/MPSU
- [3] Coproto: C++ coroutine protocol library., https://github.com/Visa-Research/coproto.git
- [4] cryptoTools., https://github.com/ladnir/cryptoTools.git
- [5] Vole-PSI, https://github.com/Visa-Research/volepsi.git
- [6] Bay, A., Erkin, Z., Hoepman, J., Samardjiska, S., Vos, J.: Practical multi-party private set intersection protocols. IEEE Trans. Inf. Forensics Secur. 17, 1–15 (2022)
- [7] Beaver, D.: Efficient multiparty protocols using circuit randomization. In: Advances in Cryptology - CRYPTO ’91, 11th Annual International Cryptology Conference. Lecture Notes in Computer Science, vol. 576, pp. 420–432. Springer (1991)
- [8] Ben-Efraim, A., Nissenbaum, O., Omri, E., Paskin-Cherniavsky, A.: Psimple: Practical multiparty maliciously-secure private set intersection. In: ASIA CCS ’22. pp. 1098–1112. ACM (2022)
- [9] Bienstock, A., Patel, S., Seo, J.Y., Yeo, K.: Near-Optimal oblivious Key-Value stores for efficient PSI, PSU and Volume-Hiding Multi-Maps. In: USENIX Security 2023. pp. 301–318 (2023)
- [10] Blanton, M., Aguiar, E.: Private and oblivious set and multiset operations. In: 7th ACM Symposium on Information, Compuer and Communications Security, ASIACCS 2012. pp. 40–41. ACM (2012)
- [11] Boyle, E., Couteau, G., Gilboa, N., Ishai, Y., Kohl, L., Rindal, P., Scholl, P.: Efficient two-round OT extension and silent non-interactive secure computation. In: Proceedings of the 2019 ACM SIGSAC Conference on Computer and Communications Security, CCS 2019. pp. 291–308. ACM (2019)
- [12] Boyle, E., Couteau, G., Gilboa, N., Ishai, Y., Kohl, L., Scholl, P.: Efficient pseudorandom correlation generators: Silent OT extension and more. In: Advances in Cryptology - CRYPTO 2019. Springer (2019)
- [13] Bui, D., Couteau, G.: Improved private set intersection for sets with small entries. In: Public-Key Cryptography - PKC 2023 - 26th IACR International Conference on Practice and Theory of Public-Key Cryptography. Lecture Notes in Computer Science, vol. 13941, pp. 190–220. Springer (2023)
- [14] Canetti, R.: Universally composable security: A new paradigm for cryptographic protocols. In: 42nd Annual Symposium on Foundations of Computer Science, FOCS 2001, 14-17 October 2001, Las Vegas, Nevada, USA. pp. 136–145. IEEE Computer Society (2001)
- [15] Chandran, N., Dasgupta, N., Gupta, D., Obbattu, S.L.B., Sekar, S., Shah, A.: Efficient linear multiparty PSI and extensions to circuit/quorum PSI. In: CCS ’21. pp. 1182–1204. ACM (2021)
- [16] Chandran, N., Gupta, D., Shah, A.: Circuit-psi with linear complexity via relaxed batch OPPRF. Proc. Priv. Enhancing Technol. 2022(1), 353–372 (2022)
- [17] Chase, M., Miao, P.: Private set intersection in the internet setting from lightweight oblivious PRF. In: Advances in Cryptology - CRYPTO 2020. Lecture Notes in Computer Science, vol. 12172, pp. 34–63. Springer (2020)
- [18] Chen, Y., Ding, N., Gu, D., Bian, Y.: Practical multi-party private set intersection cardinality and intersection-sum under arbitrary collusion. In: Information Security and Cryptology - 18th International Conference, Inscrypt 2022. Lecture Notes in Computer Science, vol. 13837, pp. 169–191. Springer (2022)
- [19] Dong, M., Chen, Y., Zhang, C., Bai, Y.: Breaking free: Efficient multi-party private set union without non-collusion assumptions. IACR Cryptol. ePrint Arch. p. 1146 (2024), https://eprint.iacr.org/2024/1146
- [20] Eskandarian, S., Boneh, D.: Clarion: Anonymous communication from multiparty shuffling protocols. In: 29th Annual Network and Distributed System Security Symposium, NDSS 2022. The Internet Society (2022), https://www.ndss-symposium.org/ndss-paper/auto-draft-243/
- [21] Freedman, M.J., Ishai, Y., Pinkas, B., Reingold, O.: Keyword search and oblivious pseudorandom functions. In: Theory of Cryptography, Second Theory of Cryptography Conference, TCC 2005. Lecture Notes in Computer Science, vol. 3378, pp. 303–324. Springer (2005)
- [22] Freedman, M.J., Nissim, K., Pinkas, B.: Efficient private matching and set intersection. In: Advances in Cryptology - EUROCRYPT 2004. Lecture Notes in Computer Science, vol. 3027, pp. 1–19. Springer (2004)
- [23] Frikken, K.B.: Privacy-preserving set union. In: Applied Cryptography and Network Security, 5th International Conference, ACNS 2007. Lecture Notes in Computer Science, vol. 4521, pp. 237–252. Springer (2007)
- [24] Gao, J., Nguyen, S., Trieu, N.: Toward A practical multi-party private set union. Proc. Priv. Enhancing Technol. 2024(4), 622–635 (2024)
- [25] Gao, J., Trieu, N., Yanai, A.: Multiparty private set intersection cardinality and its applications. Proc. Priv. Enhancing Technol. 2024(2), 73–90 (2024)
- [26] Garimella, G., Pinkas, B., Rosulek, M., Trieu, N., Yanai, A.: Oblivious key-value stores and amplification for private set intersection. In: Advances in Cryptology - CRYPTO 2021. Lecture Notes in Computer Science, vol. 12826, pp. 395–425. Springer (2021)
- [27] Ghosh, S., Nilges, T.: An algebraic approach to maliciously secure private set intersection. In: Advances in Cryptology - EUROCRYPT 2019. Lecture Notes in Computer Science, vol. 11478, pp. 154–185. Springer (2019)
- [28] Giorgi, P., Laguillaumie, F., Ottow, L., Vergnaud, D.: Fast secure computations on shared polynomials and applications to private set operations. In: 5th Conference on Information-Theoretic Cryptography, ITC 2024. LIPIcs, vol. 304, pp. 11:1–11:24. Schloss Dagstuhl - Leibniz-Zentrum für Informatik (2024)
- [29] Goldreich, O.: The Foundations of Cryptography - Volume 2: Basic Applications. Cambridge University Press (2004), http://www.wisdom.weizmann.ac.il/%7Eoded/foc-vol2.html
- [30] Gordon, S.D., Hazay, C., Le, P.H.: Fully secure PSI via mpc-in-the-head. Proc. Priv. Enhancing Technol. 2022(3), 291–313 (2022)
- [31] Hazay, C., Lindell, Y.: Efficient Secure Two-Party Protocols - Techniques and Constructions. Information Security and Cryptography, Springer (2010)
- [32] Hazay, C., Venkitasubramaniam, M.: Scalable multi-party private set-intersection. In: Public-Key Cryptography - PKC 2017. Lecture Notes in Computer Science, vol. 10174, pp. 175–203. Springer (2017)
- [33] Hazay, C., Venkitasubramaniam, M.: Scalable multi-party private set-intersection. In: Public-Key Cryptography - PKC 2017. Lecture Notes in Computer Science, vol. 10174, pp. 175–203. Springer (2017)
- [34] Inbar, R., Omri, E., Pinkas, B.: Efficient scalable multiparty private set-intersection via garbled bloom filters. In: Security and Cryptography for Networks - 11th International Conference, SCN 2018. Lecture Notes in Computer Science, vol. 11035, pp. 235–252. Springer (2018)
- [35] Jia, Y., Sun, S., Zhou, H., Gu, D.: Scalable private set union, with stronger security. In: 33rd USENIX Security Symposium, USENIX Security 2024. USENIX Association (2024)
- [36] Kissner, L., Song, D.X.: Privacy-preserving set operations. In: Advances in Cryptology - CRYPTO 2005. Lecture Notes in Computer Science, vol. 3621, pp. 241–257. Springer (2005)
- [37] Kolesnikov, V., Kumaresan, R., Rosulek, M., Trieu, N.: Efficient batched oblivious PRF with applications to private set intersection. In: CCS 2016. pp. 818–829. ACM (2016)
- [38] Kolesnikov, V., Matania, N., Pinkas, B., Rosulek, M., Trieu, N.: Practical multi-party private set intersection from symmetric-key techniques. In: Proceedings of the 2017 ACM SIGSAC Conference on Computer and Communications Security, CCS 2017. pp. 1257–1272. ACM (2017)
- [39] Li, R., Wu, C.: An unconditionally secure protocol for multi-party set intersection. In: Applied Cryptography and Network Security, 5th International Conference, ACNS 2007. Lecture Notes in Computer Science, vol. 4521, pp. 226–236. Springer (2007)
- [40] Liu, X., Gao, Y.: Scalable multi-party private set union from multi-query secret-shared private membership test. In: Advances in Cryptology - ASIACRYPT 2023. Springer (2023)
- [41] Nevo, O., Trieu, N., Yanai, A.: Simple, fast malicious multiparty private set intersection. In: Proceedings of the 2021 ACM SIGSAC Conference on Computer and Communications Security, CCS 2021. pp. 1151–1165. ACM (2021)
- [42] Pagh, R., Rodler, F.F.: Cuckoo hashing. Journal of Algorithms 51(2), 122–144 (2004)
- [43] Pinkas, B., Rosulek, M., Trieu, N., Yanai, A.: PSI from paxos: Fast, malicious private set intersection. In: Advances in Cryptology - EUROCRYPT 2020. Lecture Notes in Computer Science, vol. 12106, pp. 739–767. Springer (2020)
- [44] Pinkas, B., Schneider, T., Segev, G., Zohner, M.: Phasing: Private set intersection using permutation-based hashing. In: 24th USENIX Security Symposium, USENIX Security 15, Washington, D.C., USA, August 12-14, 2015. pp. 515–530. USENIX Association (2015)
- [45] Pinkas, B., Schneider, T., Tkachenko, O., Yanai, A.: Efficient circuit-based PSI with linear communication. In: Advances in Cryptology - EUROCRYPT 2019. Lecture Notes in Computer Science, vol. 11478, pp. 122–153. Springer (2019)
- [46] Pinkas, B., Schneider, T., Zohner, M.: Faster private set intersection based on OT extension. In: Proceedings of the 23rd USENIX Security Symposium, 2014. pp. 797–812. USENIX Association (2014)
- [47] Rabin, M.O.: How to exchange secrets with oblivious transfer. IACR Cryptol. ePrint Arch. p. 187 (2005), http://eprint.iacr.org/2005/187
- [48] Raghuraman, S., Rindal, P.: Blazing fast PSI from improved OKVS and subfield VOLE. In: ACM CCS 2022 (2022), https://eprint.iacr.org/2022/320
- [49] Raghuraman, S., Rindal, P., Tanguy, T.: Expand-convolute codes for pseudorandom correlation generators from LPN. In: Advances in Cryptology - CRYPTO 2023. Lecture Notes in Computer Science, vol. 14084, pp. 602–632. Springer (2023)
- [50] Rindal, P.: libOTe: an efficient, portable, and easy to use Oblivious Transfer Library., https://github.com/osu-crypto/libOTe.git
- [51] Rindal, P., Schoppmann, P.: VOLE-PSI: fast OPRF and circuit-psi from vector-ole. In: Advances in Cryptology - EUROCRYPT 2021. Lecture Notes in Computer Science, vol. 12697, pp. 901–930. Springer (2021)
- [52] Roy, L.: Softspokenot: Quieter OT extension from small-field silent VOLE in the minicrypt model. In: Advances in Cryptology - CRYPTO 2022. Springer (2022)
- [53] Sang, Y., Shen, H.: Efficient and secure protocols for privacy-preserving set operations. ACM Trans. Inf. Syst. Secur. 13(1), 9:1–9:35 (2009)
- [54] Sang, Y., Shen, H., Tan, Y., Xiong, N.: Efficient protocols for privacy preserving matching against distributed datasets. In: Information and Communications Security, 8th International Conference, ICICS 2006. Lecture Notes in Computer Science, vol. 4307
- [55] Seo, J.H., Cheon, J.H., Katz, J.: Constant-round multi-party private set union using reversed laurent series. In: Public Key Cryptography - PKC 2012 - 15th International Conference on Practice and Theory in Public Key Cryptography. pp. 398–412. Springer (2012)
- [56] Su, J., Chen, Z.: Secure and scalable circuit-based protocol for multi-party private set intersection. CoRR abs/2309.07406 (2023)
- [57] Vos, J., Conti, M., Erkin, Z.: Fast multi-party private set operations in the star topology from secure ands and ors. IACR Cryptol. ePrint Arch. p. 721 (2022), https://eprint.iacr.org/2022/721
- [58] Wu, M., Yuen, T.H., Chan, K.Y.: O-ring and k-star: Efficient multi-party private set intersection. In: 33rd USENIX Security Symposium, USENIX Security 2024. USENIX Association (2024)
- [59] Zhang, C., Chen, Y., Liu, W., Zhang, M., Lin, D.: Optimal private set union from multi-query reverse private membership test. In: USENIX 2023 (2023), https://eprint.iacr.org/2022/358
- [60] Zhang, S.: Efficient VOLE based multi-party PSI with lower communication cost. IACR Cryptol. ePrint Arch. p. 1690 (2023), https://eprint.iacr.org/2023/1690
Appendix 0.A Theoretical Analysis and Comparison
0.A.1 Complexity of Our MPSI and Its Variants
In the following analyses of asymptotic complexity, we consider the only dependency in and , omitting security parameters.
In Figure 13, the parties ( as ) invoke the batch pure membership zero-sharing protocol of size . In this stage, the computation and communication complexity of are , while the computation and communication complexity of each () are . In MPSI/circuit-MPSI, each directly sends its shares to , thereby, the overall computation and communication complexity of are , while the overall computation and communication complexity of each are ; In MPSI-card, the parties invoke the multi-party secret-shared shuffle protocol before the straightforward reconstruction. We use the multi-party secret-shared shuffle protocol in [20] and designate as the leader. In this stage, the computation and communication complexity of are , while the computation and communication complexity of are . In all, the computation and communication complexity of MPSI-card are identical to MPSI/circuit-MPSI.
In Figure 14, the parties invoke the batch pure membership zero-sharing with payloads protocol of size . In this stage, the computation and communication complexity of are , while the computation and communication complexity of each () are . Then, the parties invoke the multi-party secret-shared shuffle protocol twice, reconstructs the cardinality to , and broadcasts the indicator vector for the shuffle payloads. In all, the computation and communication complexity of MPSI-card-sum remain the same as MPSI/MPSI-card/circuit-MPSI.
Notably, in the naive (insecure) solution, the clients directly sends their input sets to the leader and the leader computes the result locally, where the leader’s computation and communication complexity are and each client’s computation and communication complexity are . Therefore, our MPSI/MPSI-card/circuit-MPSI/MPSI-card-sum constructions achieve optimal complexity that matches the naive solution while ensuring security.
0.A.2 Complexity of Our MPSU and Its Variants
In the following analyses of asymptotic complexity, we consider the only dependency in and , omitting security parameters.
In Figure 15, , ( as ) invoke the batch pure non-membership zero-sharing protocol of size . Each engages in invocations of batch pure non-membership zero-sharing protocols, acting as in the first time. engages in invocations of batch pure non-membership zero-sharing protocols without acting as . In this stage, the computation and communication complexity of each party are . After that, the parties hold secret-sharings. Then, they invoke the multi-party secret-shared shuffle protocol (with as the leader) with their shares, and finally each sends its shuffled shares to . Thereby, the computation and communication complexity of are , while the computation and communication complexity of each are . As a result, the overall computation and communication complexity of are , while the computation and communication complexity of each are .
Our MPSU protocol follows the secret-sharing based MPSU paradigm, where the leader’s optimal computation and communication complexity are , while each client’s optimal computation and communication complexity are . This optimal complexity is determined by the core design of secret-sharing elements among parties, since the necessary reconstruction step requires the optimal complexity. Therefore, our MPSU construction achieves optimal computation and communication complexity of this MPSU paradigm.
0.A.3 Comparison with Prior Works
Table 5 shows a theoretical comparison of the computation and communication required by various MPSI protocols. Table 6 shows a theoretical comparison between the related MPSI-card/MPSI-card-sum protocols and ours. Table 7 shows a theoretical comparison between the related MPSU protocols and ours.
| Protocol | Computation | Communication | Security | Operation | ||
| Leader | Client | Leader | Client | |||
| [22] | standard | PK | ||||
| [36] | standard semi-honest | PK | ||||
| [33] | standard semi-honest | PK | ||||
| [38] | augmented semi-honest | SK | ||||
| standard semi-honest | SK | |||||
| [34] | augmented semi-honest | SK | ||||
| standard semi-honest | SK | |||||
| [27] | malicious | SK | ||||
| [8] | augmented semi-honest/malicious | SK | ||||
| [41] | augmented semi-honest/malicious | SK | ||||
| [58] | standard semi-honest | SK | ||||
| Ours | standard semi-honest | SK | ||||
| Protocol | Computation | Communication | Security | Operation | ||
| Leader | Client | Leader | Client | |||
| [18] | standard semi-honest | SK | ||||
| Ours | standard semi-honest | SK | ||||
| Protocol | Computation | Communication | Security | Operation | ||
|---|---|---|---|---|---|---|
| Leader | Client | Leader | Client | |||
| [24] | standard semi-honest | PK | ||||
| [19] | standard semi-honest | SK | ||||
| Ours | standard semi-honest | SK | ||||
Appendix 0.B The Proof of Theorem 3.1
Proof
We prove this theorem by constructing the predicate formula using mathematical induction.
-
•
Base Case. If for some , then .
-
•
Induction Hypothesis. Assume that for any sets and obtained from through set operations, there exist set predicate formulas and such that
-
•
Induction Step. We proceed to construct for a set obtained from and through one additional set operation (intersection, union, difference), conducting set operations in total.
-
1.
Union. If , then .
-
2.
Intersection. If , .
-
3.
Difference. If , .
-
1.
By repeating the above steps, we construct the set predicate formula for any constructible set . Thus, the theorem is proven.
Appendix 0.C The Proof of Theorem 3.2
Proof
Given that any set predicate formula can be transformed into disjunctive normal form (DNF), Theorem 3.1 can be further extended to represent as a DNF formula
where each () is a conjunctive clause. We now show that can be transform into another DNF formula with conjunctive clauses () such that each () contains at least one atomic proposition of the form , i.e., can be written in the form for some .
The proof is by contradiction. Suppose there is a clause containing no atomic propositions of the form , i.e. is the conjunction of atomic propositions of the form . Consider two cases:
-
•
Case 1: where . As is a conjunctive clause of , the corresponding set is a subset of the constructible set , and is also a constructible set. Hence, we can augment by
For any clause that contains both and its negation (), it evaluates to 0 and can be discarded. The remaining formula is
This splits each into conjunctive clauses where each clause contains at least one literal of the form . We substitute each with the above equation and have the new DNF formula
where each () represents an -constructible set for some (). Note that is not set-separable with respect to yet, since might involve atomic propositions relevant to .
-
•
Case 2: . This contradicts that the set represented by is constructible from , so this case is not valid.
Next we transform the new DNF formula into a disjunction of subformulas that represent disjoint sets . Since the disjunction form of implies , this will demonstrate that form a partition of .
Let , then we have
We augment as , which can expand into . Given that necessitate , we have , hence
By repeating this process for all (), we obtain
We denote as . For any two distinct and , it is easy to see that , so the sets and represented by and satisfy that . Thus each represents a disjoint set.
Finally, we prove that each can be reduced to be set-separable with respect to . By definition, is the conjunction of negations of previous clauses () and :
Since can be written as , where is the remaining part of the conjunctive clause. Substituting this into , we get
At this point, may also contain atomic propositions relevant to . We now show how to eliminate these redundant atomic propositions: A key observation is that for to hold, the condition must be true. Therefore, we reduce by assigning a truth value of 1 to all terms of the form and a truth value of 0 to all terms of the form . After this reduction, we obtain a reduced formula , which is equivalent to but contains no atomic propositions relevant to . Thus, is set-separable with respect to . The proof is complete.
Appendix 0.D The Proof of Theorem 4.1
Proof
We prove the theorem by induction on the number of parties corrupted by the adversary .
-
Base Case:
Assume corrupts parties. Denote the set of corrupted parties as , leaving only one honest party . According to the privacy requirement, there exists a simulator such that
We use r (resp. ) to denote the randomness in in the ideal (resp. real) execution. It is easy to see that in the ideal execution, r is independent of . Meanwhile, by the independence requirement, is independent of in the real execution, so we can obtain
We further extend the indistinguishability into
where , since each corrupted party ’s output (resp. ) can be computed from its own view in the ideal (resp. real) execution ().
By the functionality, the output of satisfies . By the correctness requirement, . Thus, we extend the previous distributions by including and respectively and obtain
The indistinguishability holds because (resp. ) is determined by (resp. ), the randomness r (resp. ), and the parties’ inputs x. This implies
Namely, securely computes when corrupting parties. Note that the independence requirement in this case implies that is independent of the joint view of any parties in the real execution, which will be used in the subsequent proof.
-
Inductive Hypothesis:
Assume that for any adversary corrupting parties (), securely computes . Namely, there exists a simulator such that
where is the set of honest parties, denotes the joint view of , while and are the respective outputs in the ideal and real executions.
It is easy to see that in the ideal execution, is independent of the joint distribution . Thus, we can conclude that for any subset of parties of size , is independent of the joint distribution in the real execution.
-
Inductive Step:
We proceed to prove the case where corrupts parties:
Let represent a subset of with size . We decompose it into , where contains exact parties while is the remaining one party. By the privacy, we have
By the correctness, we also have
From the inductive hypothesis, is independent of the joint distribution , given that it is a subdistribution of . It is easy to see that is independent of the joint distribution . Combining the above,
Recall that in the base case we derived that is independent of the joint view of any parties in the real execution, thereby, is independent of . As and can be determined by and respectively, is independent of . Furthermore, in the ideal execution, r is independent of , which can extend the previous indistinguishability into
By the functionality, the output of satisfies . By the correctness, . Thus, we extend the previous distributions by including and respectively and obtain
The indistinguishability holds because (resp. ) is uniquely determined by and (resp. and ), the randomness r (resp. ), and the parties’ inputs x. This implies
Namely, securely computes in the presence of corrupting parties. This completes the inductive step.
Appendix 0.E The Optimization in Section 4.4
We first recall the technique of Beaver triples. A Beaver triple consists of three secret-sharings , where are random secret-sharings and . Typically, a Beaver triple is used to reduce one multiplication to two reconstructions in the online phase, while here since the multiplier is random, a Beaver triple can be used to reduce one multiplication to one reconstruction in the online phase. Concretely,
hence we can compute
The above equation suggests that we can locally compute once is publicly known. Therefore, the task of generating boils down to reconstructing . Let each party locally compute and send to the leader , then computes and opens it to all parties. As we can see, the transformation only consumes one Beaver triple generated in the offline phrase and requires one opening with communication overhead for the leader and communication overhead for each client in the online phrase.
Appendix 0.F Membership Zero-Sharing Appendix
0.F.1 Pure Membership Zero-Sharing
The (batch) pure membership zero-sharing functionality is a special case of (batch) membership zero-sharing when is a conjunction of set membership predicates (i.e., ). The ideal functionality is formally described in Figure 17. The complete protocol is given in Figure 18.
-
Parameters: parties , where is the only party holding single elements as inputs instead of sets. Batch size . A field .
-
Functionality: On input from and from each (), sample for , s.t. for , if , . Give to .
-
Parameters: parties . Batch size . A field . Beaver triples generated in the offline phrase, where , , and for .
-
Inputs: inputs a vector . inputs for .
-
Protocol:
-
1.
For the -th instance (), samples and sets and , where .
-
2.
and invoke where acts as inputting and , and acts as with input x and receives .
-
3.
sets its shares . sets its shares . All parties hold a vector of secret-sharings .
-
4.
All parties compute by performing secure multiplications (), using Beaver triples .
-
1.
-
Complexity Analysis. In the batch pure membership zero-sharing protocol (Figure 17), the costs of each stage are calculated as follows.
-
–
executes batch OPPRF of size with each for . Suppose that in the subsequent invocations of batch OPPRF, each for , which is consistent with the use of batch membership zero-sharing protocols in our MPSO protocols (combined with hashing to bins technique). We follow the paradigm in [45] to construct batch OPPRF from batch OPRF and OKVS. By leveraging the technique to amortize communication, the total communication of computing instances of OPPRF is equal to the total number of items . Furthermore, we utilize vector oblivious linear evaluation (VOLE) [11, 12, 49] to instantiate batch OPRF and the construction in [48] to instantiate OKVS. This ensures the computation complexity of batch OPPRF of size to scale linearly with . Therefore, in this stage, the computation and communication complexity of are , while the computation and communication complexity of each are .
-
–
The parties perform secure multiplications using the optimization outlined in the previous section and designate as the leader. This requires opening with computation/communication complexity for and computation/communication complexity for each .
To sum up, in the online phase of the batch pure membership zero-sharing protocol, the computation and communication complexity of are , while the computation and communication complexity of each are .
-
–
0.F.2 Pure Non-Membership Zero-Sharing
The (batch) pure non-membership zero-sharing functionality is a special case of (batch) membership zero-sharing when is a conjunction of set non-membership predicates (i.e., ). The ideal functionality is formally described in Figure 19. The complete protocols is given in Figure 20.
-
Parameters: parties , where is the only party holding single elements as inputs instead of sets. Batch size . A field .
-
Functionality: On input from and from each (), sample for , s.t. for , if , . Give to .
-
Parameters: parties . Batch size . A field . Beaver triples generated in the offline phrase, where , , and for .
-
Inputs: inputs a vector . inputs for .
-
Protocol:
-
1.
and invoke where in the -th instance (), inputs and receives , while inputs and receives .
-
2.
and invoke instances of ROT where in the -th instance (), acts as and receives , while acts as inputting and receives . sets .
-
3.
sets its shares . sets its shares . All parties hold a vector of secret-sharings .
-
4.
All parties compute by performing secure multiplications (), using Beaver triples .
-
1.
-
Complexity Analysis. In the batch pure non-membership zero-sharing protocol (Figure 19), the costs of each stage are calculated as follows.
-
–
executes batch ssPMT of size with each for . We utilize the construction in [19] based on batch OPPRF and secret-shared private equality test (ssPEQT) [45, 16], which achieves linear computation and communication complexity. Therefore, in this stage, the computation and communication complexity of are , while the computation and communication complexity of each are .
-
–
acts as and executes instances of ROT with each for . In the offline phases, and each generate instances of random-choice-bit ROT, then in the online phase, only needs to send choice bits masked by the random choice bits to each . Therefore, the computation and communication complexity of are , while the computation and communication complexity of each are .
-
–
The parties perform secure multiplications using the optimization outlined in the previous section and designate as the leader. This requires opening with computation/communication complexity for and computation/communication complexity for each .
To sum up, in the online phase of the batch pure non-membership zero-sharing protocol, the computation and communication complexity of are , while the computation and communication complexity of each are .
-
–
0.F.3 Pure Membership Zero-Sharing with Payloads
Pure membership zero-sharing with payloads is an extension of the pure membership zero-sharing functionality, combined with a variant of relaxed pure membership payload-sharing, which we call relaxed pure membership payload-sharing. In this variant, holds an element while each of the others holds a set of elements and a set of associated payloads. If the conjunction of set membership predicates holds true (i.e., belongs to all element sets), the parties receive secret shares of the sum of all payloads associated with ; otherwise they receive secret shares of a random value. The formal definition of batch pure membership zero-sharing with payloads functionality is in Figure 11. Note that the payload-sharing only needs to satisfy the relaxed security definition in Section 4.3.
The construction of batch pure membership zero-sharing with payloads protocol resembles the batch pure membership zero-sharing protocol in Figure 18. The core idea is to somehow encode the payload set into the senders’ inputs of OPPRF, in each two-party protocol of the relaxed pure membership payload-sharing. Specifically, we start by implementing the relaxed pure membership zero-sharing with payloads in the two-party setting. Next, we show how to extend this primitive into multi-party setting.
In the two-party relaxed membership zero-sharing with payloads protocol, there are two parties, the sender with an element set and a payload set and the receiver with an element . samples two secret shares , and sets as the key set and a set containing the pair for as the value set, where is the associated payload with . outputs as its two secret shares. and invoke OPPRF, where inputs and receives as its secret share. By the definition of OPPRF, if , , where is the associated payload with in . Namely, if , the parties hold one secret sharing of 0 and one secret sharing of the associated payload with , otherwise they hold two secret sharings of pseudorandom values.
In the multi-party membership zero-sharing with payloads protocol, there are () parties, where holds an element and each () holds an element set and a payload set . engages in the two-party version with each , where receives and while receives and . By definition, we have that if , and , where is the associated payload with in ; otherwise and are both random values. sets as its first secret share and sets as its second secret share. Meanwhile, sets as its first secret share and as its second secret share. Note that if and only if for all , and , otherwise and are random values. At this point, the first secret-sharing is a relaxed pure membership zero-sharing while the second secret-sharing is relaxed pure membership payload-sharing. In order to realize the membership zero-sharing with payloads functionality, the last step is to transform the first relaxed pure membership zero-sharing into the standard. The complete batch version is provided in Figure 21.
-
Complexity Analysis. In the batch pure membership zero-sharing with payloads protocol (Figure 21), the costs of each stage are calculated as follows.
-
–
executes batch OPPRF of size with each for . In this stage, the computation and communication complexity of are , while the computation and communication complexity of each are .
-
–
The parties perform secure multiplications using the optimization outlined in the previous section and designate as the leader. This requires opening with computation/communication complexity for and computation/ communication complexity for each .
To sum up, in the online phase of the batch pure membership zero-sharing with payloads protocol, the computation and communication complexity of are , while the computation and communication complexity of each are .
-
–
-
Parameters: parties . Batch size . A field and payload field . The mapping function from element sets to the associated payload sets . Beaver triples generated in offline phrase, where , , and for .
-
Inputs: inputs a vector . inputs and for .
-
Protocol:
-
1.
For the -th instance (), samples . Suppose , sets and , where and for .
-
2.
and invoke where acts as inputting and , and acts as with input x and receives .
-
3.
sets its first shares , and its second shares . sets its first shares , and its second shares . All parties hold two vectors of secret-sharings and .
-
4.
All parties compute by performing secure multiplications (), using Beaver triples .
-
1.
Appendix 0.G Security Proof of Theorem 6.1
Let denote the set of corrupted parties controlled by . In the MPSO protocol, the simulator receives each corrupted party’s input from and if , it receives the resulting set . For each , its view consists of its input , secret shares from each for (if belongs to the set of ’s involving parties ), shuffled secret shares from , and if , reconstruction messages from for .
Suppose there are subformulas without involving honest parties, and , containing the subformulas that involve at least one honest party. The simulator emulates each ’s view by running the protocol honestly with these changes:
-
•
It simulates uniform secret shares from each for each .
-
•
Case . It samples uniform secret shares from .
-
•
Case . After the corrupted parties honestly invoke batch membership zero-sharing protocols for all subformulas in , the parties hold secret-sharings, where we denote all secrets of elements (appended with all-zero strings) as a set and random secrets as a set . Let . The simulator samples random values as a set , shuffles the union with a random permutation and secret-shares the shuffled union as , where is outputted to as secret shares from for each .
In the case , it is easy to see that ’s secret shares from each and are uniformly distributed and independent of any other distributions in the real execution (as there exists at least an honest party holding one share), which is identical to the simulation.
In the case , ’s secret shares from each () are also uniformly distributed and independent of any other distributions in the real execution, so
where . denotes the corrupted parties involving in , while denotes the set of their inputs sets. denotes the set of all involved parties’ inputs sets in . is the view emulated by the simulator of , while is the real view of adversary in the batch membership zero-sharing protocol for . The distinctions with a superscript are in the real execution, otherwise in simulation. As the corrupted parties honestly invoke batch membership zero-sharing protocols for all subformulas in , we obtain
By correctness, after invoking all for each , the parties hold secret-sharings of the elements in , and secret-sharings of random values ( the set of these random secrets is denoted by ). By the independence requirement of , all random values in are independent of the joint view of any parties, i.e. the view of adversary, in the real execution of batch membership zero-sharing protocols. In simulation, the random values in are sampled using independent randomness so they are also independent of the emulated view for . After the execution of multi-party secret-shared shuffle, the order of elements in is shuffled. By the functionality of , the random permutation is sampled independently. Thereby,
Given that and are secret shares of and respectively, we derive that
By invoking the simulator for multi-party secret-shared shuffle ,
where is computed by We conclude that the adversary’s view in real execution is indistinguishable to its view in the simulation.
The security proof for the circuit-MPSO (Approach 2) protocol is the same. The security proof for the MPSO-card and circuit-MPSO (Approach 1) protocols are similar, except that the simulator replaces all elements in the simulation with 0s, since it only obtains the cardinality rather than the set itself if .
Appendix 0.H Implementation Details and Parameter Settings
0.H.1 Implementation Details
Our protocols are written in C++, where each party uses threads to interact simultaneously with all other parties. We instantiate batch OPPRF with VOLE and OKVS [43, 26, 48, 9], following [13]; We instantiate batch ssPMT with batch OPPRF and ssPEQT, following [19]. We use the following libraries in our implementation.
- •
-
•
OKVS and GMW: We use the optimized OKVS construction in [48]777Since the existence of suitable parameters for the new OKVS construction of the recent work [9] is unclear when the set size is less than , we choose to use the OKVS construction of [48]. and re-use the OKVS implementation in [5]. We also re-use the GMW implementation in [5] to construct ssPEQT.
-
•
ROT: We use SoftSpokenOT [52] implemented in libOTe.
- •
0.H.2 Choosing Suitable Parameters
We set the computational security parameter and the statistical security parameter . The other parameters are:
-
Cuckoo hashing parameters. To achieve linear communication of batch ssPMT, we use stash-less Cuckoo hashing [45]. To render the failure probability (failure is defined as the event where an item cannot be stored in the table and must be stored in the stash) less than , we set for 3-hash Cuckoo hashing.
-
OKVS parameters. We employ scheme with a cluster size of in [48], and the expansion rate (which is the size of OKVS divided by the number of encoding items) in this setting is .
-
ROT parameters. We set field bits to 5 in SoftSpokenOT to balance computation and communication costs.
-
Length of OPPRF outputs. According to [19], to ensure the correctness of batch ssPMT, the output length of OPPRF in batch ssPMT is at least , where is the total number of the batch ssPMT invocations, which is in our MPSU protocol. Thereby, the lower bound of output length of OPPRF in our MPSU protocol is .
-
Field size and all-zero string length. The field size and all-zero string control the probability of a spurious collision in our protocols. According to the correctness analysis in Section 6.4, for MPSI, MPSI-card and MPSI-card-sum protocols, field size of is sufficient to bound the probability of any spurious collision to . For MPSU protocol, the field size should meet two requirements: and the length of elements in equals . Given that the all-zero string length , we have in our MPSU. Concretely, we use GF(64) for our MPSI, MPSI-card and MPSI-card-sum protocols, and GF(128) for our MPSU protocol (where is set as 64 bits) in our experiments.