11institutetext: School of Cyber Science and Technology, Shandong University, Qingdao 266237, China 22institutetext: Institute for Advanced Study, BNRist, Tsinghua University, Beijing, China
22email: {minglang_dong,baiyujie}@mail.sdu.edu.cn, [email protected], [email protected]

Multi-Party Private Set Operations from Predicative Zero-Sharing

Minglang Dong 11    Yu Chen 11    Cong Zhang 22    Yujie Bai 11    Yang Cao 11
Abstract

Typical protocols in the multi-party private set operations (MPSO) setting enable m>2𝑚2m>2italic_m > 2 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 m𝑚mitalic_m 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 n𝑛nitalic_n, 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 m𝑚mitalic_m (m>2)𝑚2(m>2)( italic_m > 2 ) 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 m𝑚mitalic_m sets, ideally, MPSO should enable m𝑚mitalic_m 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 X1(X2X3)subscript𝑋1subscript𝑋2subscript𝑋3X_{1}\setminus(X_{2}\cap X_{3})italic_X start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ∖ ( italic_X start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT ∩ italic_X start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT ) 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 24.824.824.824.8 seconds for both MPSI and MPSU with 3333 parties, each holding 211superscript2112^{11}2 start_POSTSUPERSCRIPT 11 end_POSTSUPERSCRIPT items of 32323232 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 xXi𝑥subscript𝑋𝑖x\in X_{i}italic_x ∈ italic_X start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT, connected by 𝖠𝖭𝖣𝖠𝖭𝖣\mathsf{AND}sansserif_AND, 𝖮𝖱𝖮𝖱\mathsf{OR}sansserif_OR and 𝖭𝖮𝖳𝖭𝖮𝖳\mathsf{NOT}sansserif_NOT 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 𝖠𝖭𝖣𝖠𝖭𝖣\mathsf{AND}sansserif_AND and 𝖮𝖱𝖮𝖱\mathsf{OR}sansserif_OR 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 Q𝑄Qitalic_Q. In this setting, one party (denoted as P𝗉𝗂𝗏𝗈𝗍subscript𝑃𝗉𝗂𝗏𝗈𝗍P_{\mathsf{pivot}}italic_P start_POSTSUBSCRIPT sansserif_pivot end_POSTSUBSCRIPT) inputs an element and the other parties input sets. The output secret-sharing among the parties encodes whether P𝗉𝗂𝗏𝗈𝗍subscript𝑃𝗉𝗂𝗏𝗈𝗍P_{\mathsf{pivot}}italic_P start_POSTSUBSCRIPT sansserif_pivot end_POSTSUBSCRIPT’s input element, together with all input sets, satisfy Q𝑄Qitalic_Q. For example, consider 3333 parties where P1subscript𝑃1P_{1}italic_P start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT inputs an element x𝑥xitalic_x, P2subscript𝑃2P_{2}italic_P start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT inputs a set X2subscript𝑋2X_{2}italic_X start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT, and P3subscript𝑃3P_{3}italic_P start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT inputs a set X3subscript𝑋3X_{3}italic_X start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT. Suppose Q𝑄Qitalic_Q is in the form of xX2xX3𝑥subscript𝑋2𝑥subscript𝑋3x\in X_{2}\land x\notin X_{3}italic_x ∈ italic_X start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT ∧ italic_x ∉ italic_X start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT, if xX2X3𝑥subscript𝑋2subscript𝑋3x\in X_{2}\setminus X_{3}italic_x ∈ italic_X start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT ∖ italic_X start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT, P1,P2,P3subscript𝑃1subscript𝑃2subscript𝑃3P_{1},P_{2},P_{3}italic_P start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , italic_P start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT , italic_P start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT hold a secret-sharing of 0, otherwise they hold a secret-sharing of a random value. Given that any first-order set predicate formula Q𝑄Qitalic_Q is only composed of two types of literals — set membership predicates xY𝑥𝑌x\in Yitalic_x ∈ italic_Y and the negations xY𝑥𝑌x\notin Yitalic_x ∉ italic_Y, by instantiating relaxed membership zero-sharing associated with xY𝑥𝑌x\in Yitalic_x ∈ italic_Y and xY𝑥𝑌x\notin Yitalic_x ∉ italic_Y 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 P𝗉𝗂𝗏𝗈𝗍subscript𝑃𝗉𝗂𝗏𝗈𝗍P_{\mathsf{pivot}}italic_P start_POSTSUBSCRIPT sansserif_pivot end_POSTSUBSCRIPT, 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 Qisubscript𝑄𝑖Q_{i}italic_Q start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT in the CPF is a subset of some party Pjsubscript𝑃𝑗P_{j}italic_P start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT’s input set, and all these sets form a partition of the desired set. For each subformula Qisubscript𝑄𝑖Q_{i}italic_Q start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT, the parties invoke membership zero-sharing with Pjsubscript𝑃𝑗P_{j}italic_P start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT acting as P𝗉𝗂𝗏𝗈𝗍subscript𝑃𝗉𝗂𝗏𝗈𝗍P_{\mathsf{pivot}}italic_P start_POSTSUBSCRIPT sansserif_pivot end_POSTSUBSCRIPT, 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 O(mn)𝑂𝑚𝑛O(mn)italic_O ( italic_m italic_n ) and each client’s computation and communication complexity are both O(n)𝑂𝑛O(n)italic_O ( italic_n ), where n𝑛nitalic_n is the set size and m𝑚mitalic_m 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 8.98.98.98.9 seconds and 738738738738 MB of communications for 10101010 parties with sets of 220superscript2202^{20}2 start_POSTSUPERSCRIPT 20 end_POSTSUPERSCRIPT items each, regardless of the item length, while the state-of-the-art MPSI protocol [58] requires 32.932.932.932.9 seconds and 1921192119211921 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 14.020.3×14.0-20.3\times14.0 - 20.3 × 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 9.29.29.29.2 seconds while our MPSI-card-sum requires 16.716.716.716.7 seconds in online phase for 10101010 parties with sets of 220superscript2202^{20}2 start_POSTSUPERSCRIPT 20 end_POSTSUPERSCRIPT 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 O(m2n)𝑂superscript𝑚2𝑛O(m^{2}n)italic_O ( italic_m start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT italic_n ) computation and communication complexity of leader and O(mn)𝑂𝑚𝑛O(mn)italic_O ( italic_m italic_n ) computation and communication complexity of clients). Our MPSU protocol is comparable with the state-of-the-art MPSU protocol [19]. Concretely, it requires only 13.213.213.213.2 seconds in online phase for 5555 parties, each holding 220superscript2202^{20}2 start_POSTSUPERSCRIPT 20 end_POSTSUPERSCRIPT items of 64646464 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 n𝑛nitalic_n 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 t𝑡titalic_t. 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 n𝑛nitalic_n (while the computation complexity still depends on t𝑡titalic_t).

    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 O(mn)𝑂𝑚𝑛O(mn)italic_O ( italic_m italic_n ). 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 t𝑡titalic_t.

  • 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 O(mn+tnlogn)𝑂𝑚𝑛𝑡𝑛𝑛O(mn+tn\log n)italic_O ( italic_m italic_n + italic_t italic_n roman_log italic_n ) and the client’s complexity is O(tn)𝑂𝑡𝑛O(tn)italic_O ( italic_t italic_n ).

  • 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 n𝑛nitalic_n.

    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 m𝑚mitalic_m. The second protocol achieves linear complexity. However, it relies on public-key operations with a lower efficiency.

  • 2 Preliminaries

    2.1 Notation

    Let m𝑚mitalic_m denote the number of parties. We use Pisubscript𝑃𝑖P_{i}italic_P start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT (1im1𝑖𝑚1\leq i\leq m1 ≤ italic_i ≤ italic_m) to denote the parties, Xisubscript𝑋𝑖X_{i}italic_X start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT to represent the sets they hold, where each set has n𝑛nitalic_n l𝑙litalic_l-bit elements. [x]=(x1,,xm)delimited-[]𝑥subscript𝑥1subscript𝑥𝑚[x]=(x_{1},\cdots,x_{m})[ italic_x ] = ( italic_x start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , ⋯ , italic_x start_POSTSUBSCRIPT italic_m end_POSTSUBSCRIPT ) denotes an additive secret-sharing among m𝑚mitalic_m parties, i.e., each Pisubscript𝑃𝑖P_{i}italic_P start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT holds a share xisubscript𝑥𝑖x_{i}italic_x start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT such that x1+xm=xsubscript𝑥1subscript𝑥𝑚𝑥x_{1}+\cdots x_{m}=xitalic_x start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT + ⋯ italic_x start_POSTSUBSCRIPT italic_m end_POSTSUBSCRIPT = italic_x. xyconditional𝑥𝑦x\|yitalic_x ∥ italic_y denotes the concatenation of two strings. We use λ,σ𝜆𝜎\lambda,\sigmaitalic_λ , italic_σ as the computational and statistical security parameters respectively, and use 𝑠𝑠\overset{s}{\approx}overitalic_s start_ARG ≈ end_ARG (resp.𝑐𝑐\overset{c}{\approx}overitalic_c start_ARG ≈ end_ARG) to denote that two distributions are statistically (resp. computationally) indistinguishable. For a vector a, aisubscript𝑎𝑖a_{i}italic_a start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT denotes the i𝑖iitalic_i-th component, 𝖧𝖶(a)𝖧𝖶a\mathsf{HW}(\textbf{a})sansserif_HW ( a ) denotes the hamming weight of a, 𝗓𝖾𝗋𝗈(a)𝗓𝖾𝗋𝗈a\mathsf{zero}(\textbf{a})sansserif_zero ( a ) denotes the number of 0 in a, and π(a)=(aπ(1),,aπ(n))𝜋asubscript𝑎𝜋1subscript𝑎𝜋𝑛\pi(\textbf{a})=(a_{\pi(1)},\cdots,a_{\pi(n)})italic_π ( a ) = ( italic_a start_POSTSUBSCRIPT italic_π ( 1 ) end_POSTSUBSCRIPT , ⋯ , italic_a start_POSTSUBSCRIPT italic_π ( italic_n ) end_POSTSUBSCRIPT ), where π𝜋\piitalic_π is a permutation over n𝑛nitalic_n items. The notation abdirect-sumab\textbf{a}\oplus\textbf{b}a ⊕ b denotes a component-wise XOR, i.e., (a1b1,,anbn)direct-sumsubscript𝑎1subscript𝑏1direct-sumsubscript𝑎𝑛subscript𝑏𝑛(a_{1}\oplus b_{1},\cdots,a_{n}\oplus b_{n})( italic_a start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ⊕ italic_b start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , ⋯ , italic_a start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT ⊕ italic_b start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT ).

    2.2 Security Model

    In this work, we consider semi-honest and static adversaries 𝒜𝒜\mathcal{A}caligraphic_A 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 f=(f1,,fm)𝑓subscript𝑓1subscript𝑓𝑚f=(f_{1},\cdots,f_{m})italic_f = ( italic_f start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , ⋯ , italic_f start_POSTSUBSCRIPT italic_m end_POSTSUBSCRIPT ) be a probabilistic polynomial-time m𝑚mitalic_m-ary functionality and let ΠΠ\Piroman_Π be a m𝑚mitalic_m-party protocol for computing f𝑓fitalic_f.

    • The view of Pisubscript𝑃𝑖P_{i}italic_P start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT (1im1𝑖𝑚1\leq i\leq m1 ≤ italic_i ≤ italic_m) during an execution of ΠΠ\Piroman_Π on all parties’ inputs x=(x1,,xm)xsubscript𝑥1subscript𝑥𝑚\textbf{x}=(x_{1},\cdots,x_{m})x = ( italic_x start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , ⋯ , italic_x start_POSTSUBSCRIPT italic_m end_POSTSUBSCRIPT ) is denoted by 𝖵𝗂𝖾𝗐iΠ(x)superscriptsubscript𝖵𝗂𝖾𝗐𝑖Πx\mathsf{View}_{i}^{\Pi}(\textbf{x})sansserif_View start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT start_POSTSUPERSCRIPT roman_Π end_POSTSUPERSCRIPT ( x ), including the i𝑖iitalic_i-th party’s input xisubscript𝑥𝑖x_{i}italic_x start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT, its internal random tape and all messages that it received.

    • The output of Pisubscript𝑃𝑖P_{i}italic_P start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT during an execution of ΠΠ\Piroman_Π on x is denoted by 𝖮𝗎𝗍𝗉𝗎𝗍iΠ(x)superscriptsubscript𝖮𝗎𝗍𝗉𝗎𝗍𝑖Πx\mathsf{Output}_{i}^{\Pi}(\textbf{x})sansserif_Output start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT start_POSTSUPERSCRIPT roman_Π end_POSTSUPERSCRIPT ( x ). The joint output of parties is 𝖮𝗎𝗍𝗉𝗎𝗍Π(x)=(𝖮𝗎𝗍𝗉𝗎𝗍1Π(x),,𝖮𝗎𝗍𝗉𝗎𝗍mΠ(x)).superscript𝖮𝗎𝗍𝗉𝗎𝗍Πxsuperscriptsubscript𝖮𝗎𝗍𝗉𝗎𝗍1Πxsuperscriptsubscript𝖮𝗎𝗍𝗉𝗎𝗍𝑚Πx\mathsf{Output}^{\Pi}(\textbf{x})=(\mathsf{Output}_{1}^{\Pi}(\textbf{x}),% \cdots,\mathsf{Output}_{m}^{\Pi}(\textbf{x})).sansserif_Output start_POSTSUPERSCRIPT roman_Π end_POSTSUPERSCRIPT ( x ) = ( sansserif_Output start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT roman_Π end_POSTSUPERSCRIPT ( x ) , ⋯ , sansserif_Output start_POSTSUBSCRIPT italic_m end_POSTSUBSCRIPT start_POSTSUPERSCRIPT roman_Π end_POSTSUPERSCRIPT ( x ) ) .

    Definition 1

    We say that ΠΠ\Piroman_Π securely computes f𝑓fitalic_f in the presence of 𝒜𝒜\mathcal{A}caligraphic_A if there exists a PPT algorithm 𝖲𝗂𝗆𝖲𝗂𝗆\mathsf{Sim}sansserif_Sim s.t. for every P𝒜={Pi1,,Pit}{P1,,Pm}subscriptP𝒜subscript𝑃subscript𝑖1subscript𝑃subscript𝑖𝑡subscript𝑃1subscript𝑃𝑚\textbf{P}_{\mathcal{A}}=\{P_{i_{1}},\cdots,P_{i_{t}}\}\subset\{P_{1},\cdots,P% _{m}\}P start_POSTSUBSCRIPT caligraphic_A end_POSTSUBSCRIPT = { italic_P start_POSTSUBSCRIPT italic_i start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT end_POSTSUBSCRIPT , ⋯ , italic_P start_POSTSUBSCRIPT italic_i start_POSTSUBSCRIPT italic_t end_POSTSUBSCRIPT end_POSTSUBSCRIPT } ⊂ { italic_P start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , ⋯ , italic_P start_POSTSUBSCRIPT italic_m end_POSTSUBSCRIPT },

    {𝖲𝗂𝗆(P𝒜,x𝒜,f𝒜(x)),f(x)}x𝑐{𝖵𝗂𝖾𝗐𝒜Π(x),𝖮𝗎𝗍𝗉𝗎𝗍Π(x)}x,subscript𝖲𝗂𝗆subscriptP𝒜subscriptx𝒜subscript𝑓𝒜x𝑓xx𝑐subscriptsuperscriptsubscript𝖵𝗂𝖾𝗐𝒜Πxsuperscript𝖮𝗎𝗍𝗉𝗎𝗍Πxx\displaystyle\{\mathsf{Sim}(\textbf{P}_{\mathcal{A}},\textbf{x}_{\mathcal{A}},% f_{\mathcal{A}}(\textbf{x})),f(\textbf{x})\}_{\textbf{x}}\overset{c}{\approx}% \{\mathsf{View}_{\mathcal{A}}^{\Pi}(\textbf{x}),\mathsf{Output}^{\Pi}(\textbf{% x})\}_{\textbf{x}},{ sansserif_Sim ( P start_POSTSUBSCRIPT caligraphic_A end_POSTSUBSCRIPT , x start_POSTSUBSCRIPT caligraphic_A end_POSTSUBSCRIPT , italic_f start_POSTSUBSCRIPT caligraphic_A end_POSTSUBSCRIPT ( x ) ) , italic_f ( x ) } start_POSTSUBSCRIPT x end_POSTSUBSCRIPT overitalic_c start_ARG ≈ end_ARG { sansserif_View start_POSTSUBSCRIPT caligraphic_A end_POSTSUBSCRIPT start_POSTSUPERSCRIPT roman_Π end_POSTSUPERSCRIPT ( x ) , sansserif_Output start_POSTSUPERSCRIPT roman_Π end_POSTSUPERSCRIPT ( x ) } start_POSTSUBSCRIPT x end_POSTSUBSCRIPT ,

    where x𝒜=(xi1,,xit),f𝒜=(fi1,,fit),𝖵𝗂𝖾𝗐𝒜Π(x)=(𝖵𝗂𝖾𝗐i1Π(x),,𝖵𝗂𝖾𝗐itΠ(x))formulae-sequencesubscriptx𝒜subscript𝑥subscript𝑖1subscript𝑥subscript𝑖𝑡formulae-sequencesubscript𝑓𝒜subscript𝑓subscript𝑖1subscript𝑓subscript𝑖𝑡superscriptsubscript𝖵𝗂𝖾𝗐𝒜Πxsuperscriptsubscript𝖵𝗂𝖾𝗐subscript𝑖1Πxsuperscriptsubscript𝖵𝗂𝖾𝗐subscript𝑖𝑡Πx\textbf{x}_{\mathcal{A}}=(x_{i_{1}},\cdots,x_{i_{t}}),f_{\mathcal{A}}=(f_{i_{1% }},\cdots,f_{i_{t}}),\mathsf{View}_{\mathcal{A}}^{\Pi}(\textbf{x})=(\mathsf{% View}_{i_{1}}^{\Pi}(\textbf{x}),\cdots,\mathsf{View}_{i_{t}}^{\Pi}(\textbf{x}))x start_POSTSUBSCRIPT caligraphic_A end_POSTSUBSCRIPT = ( italic_x start_POSTSUBSCRIPT italic_i start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT end_POSTSUBSCRIPT , ⋯ , italic_x start_POSTSUBSCRIPT italic_i start_POSTSUBSCRIPT italic_t end_POSTSUBSCRIPT end_POSTSUBSCRIPT ) , italic_f start_POSTSUBSCRIPT caligraphic_A end_POSTSUBSCRIPT = ( italic_f start_POSTSUBSCRIPT italic_i start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT end_POSTSUBSCRIPT , ⋯ , italic_f start_POSTSUBSCRIPT italic_i start_POSTSUBSCRIPT italic_t end_POSTSUBSCRIPT end_POSTSUBSCRIPT ) , sansserif_View start_POSTSUBSCRIPT caligraphic_A end_POSTSUBSCRIPT start_POSTSUPERSCRIPT roman_Π end_POSTSUPERSCRIPT ( x ) = ( sansserif_View start_POSTSUBSCRIPT italic_i start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT end_POSTSUBSCRIPT start_POSTSUPERSCRIPT roman_Π end_POSTSUPERSCRIPT ( x ) , ⋯ , sansserif_View start_POSTSUBSCRIPT italic_i start_POSTSUBSCRIPT italic_t end_POSTSUBSCRIPT end_POSTSUBSCRIPT start_POSTSUPERSCRIPT roman_Π end_POSTSUPERSCRIPT ( x ) ).

    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: m𝑚mitalic_m parties P1,,Pmsubscript𝑃1subscript𝑃𝑚P_{1},\cdots,P_{m}italic_P start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , ⋯ , italic_P start_POSTSUBSCRIPT italic_m end_POSTSUBSCRIPT, where P1subscript𝑃1P_{1}italic_P start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT is the leader. Size n𝑛nitalic_n of input sets. The bit length l𝑙litalic_l of set elements. The mapping function 𝗉𝖺𝗒𝗅𝗈𝖺𝖽i()subscript𝗉𝖺𝗒𝗅𝗈𝖺𝖽𝑖\mathsf{payload}_{i}()sansserif_payload start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT ( ) from Pisubscript𝑃𝑖P_{i}italic_P start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT’s elements to the associated payloads.

    • Functionality: On input Xi={xi1,,xin}{0,1}lsubscript𝑋𝑖superscriptsubscript𝑥𝑖1superscriptsubscript𝑥𝑖𝑛superscript01𝑙X_{i}=\{x_{i}^{1},\cdots,x_{i}^{n}\}\subseteq\{0,1\}^{l}italic_X start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT = { italic_x start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 1 end_POSTSUPERSCRIPT , ⋯ , italic_x start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_n end_POSTSUPERSCRIPT } ⊆ { 0 , 1 } start_POSTSUPERSCRIPT italic_l end_POSTSUPERSCRIPT from Pisubscript𝑃𝑖P_{i}italic_P start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT,

      • MPSI. give the intersection i=1mXisuperscriptsubscript𝑖1𝑚subscript𝑋𝑖\bigcap_{i=1}^{m}X_{i}⋂ start_POSTSUBSCRIPT italic_i = 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_m end_POSTSUPERSCRIPT italic_X start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT to P1subscript𝑃1P_{1}italic_P start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT.

      • MPSI-card. give the intersection cardinality |i=1mXi|superscriptsubscript𝑖1𝑚subscript𝑋𝑖\lvert\bigcap_{i=1}^{m}X_{i}\rvert| ⋂ start_POSTSUBSCRIPT italic_i = 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_m end_POSTSUPERSCRIPT italic_X start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT | to P1subscript𝑃1P_{1}italic_P start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT.

      • MPSI-card-sum. give the intersection cardinality |i=1mXi|superscriptsubscript𝑖1𝑚subscript𝑋𝑖\lvert\bigcap_{i=1}^{m}X_{i}\rvert| ⋂ start_POSTSUBSCRIPT italic_i = 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_m end_POSTSUPERSCRIPT italic_X start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT | to each Pisubscript𝑃𝑖P_{i}italic_P start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT for 1im1𝑖𝑚1\leq i\leq m1 ≤ italic_i ≤ italic_m, and give xi=1mXi,1jm𝗉𝖺𝗒𝗅𝗈𝖺𝖽j(x)subscriptformulae-sequence𝑥superscriptsubscript𝑖1𝑚subscript𝑋𝑖1𝑗𝑚subscript𝗉𝖺𝗒𝗅𝗈𝖺𝖽𝑗𝑥\sum_{x\in\bigcap_{i=1}^{m}X_{i},1\leq j\leq m}\mathsf{payload}_{j}(x)∑ start_POSTSUBSCRIPT italic_x ∈ ⋂ start_POSTSUBSCRIPT italic_i = 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_m end_POSTSUPERSCRIPT italic_X start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT , 1 ≤ italic_j ≤ italic_m end_POSTSUBSCRIPT sansserif_payload start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT ( italic_x ) to P1subscript𝑃1P_{1}italic_P start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT.

      • MPSU. give the union i=1mXisuperscriptsubscript𝑖1𝑚subscript𝑋𝑖\bigcup_{i=1}^{m}X_{i}⋃ start_POSTSUBSCRIPT italic_i = 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_m end_POSTSUPERSCRIPT italic_X start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT to P1subscript𝑃1P_{1}italic_P start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT.

      • MPSU-card. give the union cardinality |i=1mXi|superscriptsubscript𝑖1𝑚subscript𝑋𝑖\lvert\bigcup_{i=1}^{m}X_{i}\rvert| ⋃ start_POSTSUBSCRIPT italic_i = 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_m end_POSTSUPERSCRIPT italic_X start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT | to P1subscript𝑃1P_{1}italic_P start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT.

    Figure 1: Typical Functionalities in MPSO

    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 𝒮𝒮\mathcal{S}caligraphic_S, Receiver \mathcal{R}caligraphic_R. A field 𝔽𝔽\mathbb{F}blackboard_F.

    • Functionality. On input e{0,1}𝑒01e\in\{0,1\}italic_e ∈ { 0 , 1 } from \mathcal{R}caligraphic_R, sample r0,r1𝔽subscript𝑟0subscript𝑟1𝔽r_{0},r_{1}\leftarrow\mathbb{F}italic_r start_POSTSUBSCRIPT 0 end_POSTSUBSCRIPT , italic_r start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ← blackboard_F. Give (r0,r1)subscript𝑟0subscript𝑟1(r_{0},r_{1})( italic_r start_POSTSUBSCRIPT 0 end_POSTSUBSCRIPT , italic_r start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ) to 𝒮𝒮\mathcal{S}caligraphic_S and give resubscript𝑟𝑒r_{e}italic_r start_POSTSUBSCRIPT italic_e end_POSTSUBSCRIPT to \mathcal{R}caligraphic_R.

    Figure 2: 1-out-of-2 Random OT Functionality 𝖱𝖮𝖳subscript𝖱𝖮𝖳\mathcal{F}_{\mathsf{ROT}}caligraphic_F start_POSTSUBSCRIPT sansserif_ROT end_POSTSUBSCRIPT

    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 i𝑖iitalic_i-th instance, the sender 𝒮𝒮\mathcal{S}caligraphic_S learns a PRF key kisubscript𝑘𝑖k_{i}italic_k start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT, while the receiver \mathcal{R}caligraphic_R inputs xisubscript𝑥𝑖x_{i}italic_x start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT and learns 𝖯𝖱𝖥(ki,xi)𝖯𝖱𝖥subscript𝑘𝑖subscript𝑥𝑖\mathsf{PRF}(k_{i},x_{i})sansserif_PRF ( italic_k start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT , italic_x start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT ).

    Oblivious programmable pseudorandom function (OPPRF) [38, 45, 16, 51, 48] is an extension of OPRF, which lets 𝒮𝒮\mathcal{S}caligraphic_S program a PRF F𝐹Fitalic_F 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]. \mathcal{R}caligraphic_R evaluates OPPRF with no knowledge of whether it learns a programmed output of F𝐹Fitalic_F or just a pseudorandom value. The batch OPPRF functionality is given in Figure 3.

    • Parameters. Sender 𝒮𝒮\mathcal{S}caligraphic_S. Receiver \mathcal{R}caligraphic_R. Batch size B𝐵Bitalic_B. The bit length l𝑙litalic_l of keys. The bit length γ𝛾\gammaitalic_γ of values.

    • Sender’s inputs. 𝒮𝒮\mathcal{S}caligraphic_S inputs B𝐵Bitalic_B sets of key-value pairs including:

      • Disjoint key sets K1,,KBsubscript𝐾1subscript𝐾𝐵K_{1},\cdots,K_{B}italic_K start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , ⋯ , italic_K start_POSTSUBSCRIPT italic_B end_POSTSUBSCRIPT.

      • The value sets V1,,VBsubscript𝑉1subscript𝑉𝐵V_{1},\cdots,V_{B}italic_V start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , ⋯ , italic_V start_POSTSUBSCRIPT italic_B end_POSTSUBSCRIPT, where |Ki|=|Vi|subscript𝐾𝑖subscript𝑉𝑖\lvert K_{i}\rvert=\lvert V_{i}\rvert| italic_K start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT | = | italic_V start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT |, i[B]𝑖delimited-[]𝐵i\in[B]italic_i ∈ [ italic_B ].

    • Receiver’s inputs. \mathcal{R}caligraphic_R inputs B𝐵Bitalic_B queries x({0,1}l)Bxsuperscriptsuperscript01𝑙𝐵\textbf{x}\subseteq(\{0,1\}^{l})^{B}x ⊆ ( { 0 , 1 } start_POSTSUPERSCRIPT italic_l end_POSTSUPERSCRIPT ) start_POSTSUPERSCRIPT italic_B end_POSTSUPERSCRIPT.

    • Functionality: On input (K1,,KB)subscript𝐾1subscript𝐾𝐵(K_{1},\cdots,K_{B})( italic_K start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , ⋯ , italic_K start_POSTSUBSCRIPT italic_B end_POSTSUBSCRIPT ) and (V1,,VB)subscript𝑉1subscript𝑉𝐵(V_{1},\cdots,V_{B})( italic_V start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , ⋯ , italic_V start_POSTSUBSCRIPT italic_B end_POSTSUBSCRIPT ) from 𝒮𝒮\mathcal{S}caligraphic_S and x({0,1}l)Bxsuperscriptsuperscript01𝑙𝐵\textbf{x}\subseteq(\{0,1\}^{l})^{B}x ⊆ ( { 0 , 1 } start_POSTSUPERSCRIPT italic_l end_POSTSUPERSCRIPT ) start_POSTSUPERSCRIPT italic_B end_POSTSUPERSCRIPT from \mathcal{R}caligraphic_R,

      • Generate a uniform PPRF key kisubscript𝑘𝑖k_{i}italic_k start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT and an auxiliary information 𝗁𝗂𝗇𝗍isubscript𝗁𝗂𝗇𝗍𝑖\mathsf{hint}_{i}sansserif_hint start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT for i[B]𝑖delimited-[]𝐵i\in[B]italic_i ∈ [ italic_B ];

      • Give vector k=(k1,,kB)ksubscript𝑘1subscript𝑘𝐵\textbf{k}=(k_{1},\cdots,k_{B})k = ( italic_k start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , ⋯ , italic_k start_POSTSUBSCRIPT italic_B end_POSTSUBSCRIPT ) and (𝗁𝗂𝗇𝗍1,,𝗁𝗂𝗇𝗍B)subscript𝗁𝗂𝗇𝗍1subscript𝗁𝗂𝗇𝗍𝐵(\mathsf{hint}_{1},\cdots,\mathsf{hint}_{B})( sansserif_hint start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , ⋯ , sansserif_hint start_POSTSUBSCRIPT italic_B end_POSTSUBSCRIPT ) to 𝒮𝒮\mathcal{S}caligraphic_S.

      • Sample a PPRF F:{0,1}×{0,1}l{0,1}γ:𝐹superscript01superscript01𝑙superscript01𝛾F:\{0,1\}^{*}\times\{0,1\}^{l}\to\{0,1\}^{\gamma}italic_F : { 0 , 1 } start_POSTSUPERSCRIPT ∗ end_POSTSUPERSCRIPT × { 0 , 1 } start_POSTSUPERSCRIPT italic_l end_POSTSUPERSCRIPT → { 0 , 1 } start_POSTSUPERSCRIPT italic_γ end_POSTSUPERSCRIPT such that F(ki,Ki(j))=Vi(j)𝐹subscript𝑘𝑖subscript𝐾𝑖𝑗subscript𝑉𝑖𝑗F(k_{i},K_{i}(j))=V_{i}(j)italic_F ( italic_k start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT , italic_K start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT ( italic_j ) ) = italic_V start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT ( italic_j ) for i[B],1j|Ki|formulae-sequence𝑖delimited-[]𝐵1𝑗subscript𝐾𝑖i\in[B],1\leq j\leq\lvert K_{i}\rvertitalic_i ∈ [ italic_B ] , 1 ≤ italic_j ≤ | italic_K start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT |;

      • Define fi=F(ki,xi)subscript𝑓𝑖𝐹subscript𝑘𝑖subscript𝑥𝑖f_{i}=F(k_{i},x_{i})italic_f start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT = italic_F ( italic_k start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT , italic_x start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT ), for i[B]𝑖delimited-[]𝐵i\in[B]italic_i ∈ [ italic_B ];

      • Give vector f=(f1,,fB)fsubscript𝑓1subscript𝑓𝐵\textbf{f}=(f_{1},\cdots,f_{B})f = ( italic_f start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , ⋯ , italic_f start_POSTSUBSCRIPT italic_B end_POSTSUBSCRIPT ) to \mathcal{R}caligraphic_R.

    Figure 3: Batch OPPRF Functionality 𝖻𝖮𝖯𝖯𝖱𝖥subscript𝖻𝖮𝖯𝖯𝖱𝖥\mathcal{F}_{\mathsf{bOPPRF}}caligraphic_F start_POSTSUBSCRIPT sansserif_bOPPRF end_POSTSUBSCRIPT

    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 𝒮𝒮\mathcal{S}caligraphic_S and a receiver \mathcal{R}caligraphic_R. Given a batch size of B𝐵Bitalic_B, 𝒮𝒮\mathcal{S}caligraphic_S inputs B𝐵Bitalic_B sets X1,,XBsubscript𝑋1subscript𝑋𝐵X_{1},\cdots,X_{B}italic_X start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , ⋯ , italic_X start_POSTSUBSCRIPT italic_B end_POSTSUBSCRIPT, while \mathcal{R}caligraphic_R inputs B𝐵Bitalic_B elements x1,,xBsubscript𝑥1subscript𝑥𝐵x_{1},\cdots,x_{B}italic_x start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , ⋯ , italic_x start_POSTSUBSCRIPT italic_B end_POSTSUBSCRIPT. As a result, 𝒮𝒮\mathcal{S}caligraphic_S and \mathcal{R}caligraphic_R receive secret shares of a bit vector of size B𝐵Bitalic_B, where the i𝑖iitalic_i-th bit is 1 if xiXisubscript𝑥𝑖subscript𝑋𝑖x_{i}\in X_{i}italic_x start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT ∈ italic_X start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT, 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 𝒮𝒮\mathcal{S}caligraphic_S. Receiver \mathcal{R}caligraphic_R. Batch size B𝐵Bitalic_B. The bit length l𝑙litalic_l of set elements.

    • Inputs. 𝒮𝒮\mathcal{S}caligraphic_S inputs B𝐵Bitalic_B disjoint sets X1,,XBsubscript𝑋1subscript𝑋𝐵X_{1},\cdots,X_{B}italic_X start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , ⋯ , italic_X start_POSTSUBSCRIPT italic_B end_POSTSUBSCRIPT and \mathcal{R}caligraphic_R inputs x({0,1}l)Bxsuperscriptsuperscript01𝑙𝐵\textbf{x}\subseteq(\{0,1\}^{l})^{B}x ⊆ ( { 0 , 1 } start_POSTSUPERSCRIPT italic_l end_POSTSUPERSCRIPT ) start_POSTSUPERSCRIPT italic_B end_POSTSUPERSCRIPT.

    • Functionality. On inputs X1,,XBsubscript𝑋1subscript𝑋𝐵X_{1},\cdots,X_{B}italic_X start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , ⋯ , italic_X start_POSTSUBSCRIPT italic_B end_POSTSUBSCRIPT from 𝒮𝒮\mathcal{S}caligraphic_S and input x from \mathcal{R}caligraphic_R, for 1iB1𝑖𝐵1\leq i\leq B1 ≤ italic_i ≤ italic_B, sample two random bits eSi,eRisuperscriptsubscript𝑒𝑆𝑖superscriptsubscript𝑒𝑅𝑖e_{S}^{i},e_{R}^{i}italic_e start_POSTSUBSCRIPT italic_S end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_i end_POSTSUPERSCRIPT , italic_e start_POSTSUBSCRIPT italic_R end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_i end_POSTSUPERSCRIPT under the constraint that if xiXi,eSieRi=1formulae-sequencesubscript𝑥𝑖subscript𝑋𝑖direct-sumsuperscriptsubscript𝑒𝑆𝑖superscriptsubscript𝑒𝑅𝑖1x_{i}\in X_{i},e_{S}^{i}\oplus e_{R}^{i}=1italic_x start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT ∈ italic_X start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT , italic_e start_POSTSUBSCRIPT italic_S end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_i end_POSTSUPERSCRIPT ⊕ italic_e start_POSTSUBSCRIPT italic_R end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_i end_POSTSUPERSCRIPT = 1, otherwise eSieRi=0direct-sumsuperscriptsubscript𝑒𝑆𝑖superscriptsubscript𝑒𝑅𝑖0e_{S}^{i}\oplus e_{R}^{i}=0italic_e start_POSTSUBSCRIPT italic_S end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_i end_POSTSUPERSCRIPT ⊕ italic_e start_POSTSUBSCRIPT italic_R end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_i end_POSTSUPERSCRIPT = 0. Give eS=(eS1,,eSB)subscripte𝑆superscriptsubscript𝑒𝑆1superscriptsubscript𝑒𝑆𝐵\textbf{e}_{S}=(e_{S}^{1},\cdots,e_{S}^{B})e start_POSTSUBSCRIPT italic_S end_POSTSUBSCRIPT = ( italic_e start_POSTSUBSCRIPT italic_S end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 1 end_POSTSUPERSCRIPT , ⋯ , italic_e start_POSTSUBSCRIPT italic_S end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_B end_POSTSUPERSCRIPT ) to 𝒮𝒮\mathcal{S}caligraphic_S and eR=(eR1,,eRB)subscripte𝑅superscriptsubscript𝑒𝑅1superscriptsubscript𝑒𝑅𝐵\textbf{e}_{R}=(e_{R}^{1},\cdots,e_{R}^{B})e start_POSTSUBSCRIPT italic_R end_POSTSUBSCRIPT = ( italic_e start_POSTSUBSCRIPT italic_R end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 1 end_POSTSUPERSCRIPT , ⋯ , italic_e start_POSTSUBSCRIPT italic_R end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_B end_POSTSUPERSCRIPT ) to \mathcal{R}caligraphic_R.

    Figure 4: Batch ssPMT Functionality 𝖻𝗌𝗌𝖯𝖬𝖳subscript𝖻𝗌𝗌𝖯𝖬𝖳\mathcal{F}_{\mathsf{bssPMT}}caligraphic_F start_POSTSUBSCRIPT sansserif_bssPMT end_POSTSUBSCRIPT

    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 m1𝑚1m-1italic_m - 1 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 n𝑛nitalic_n and m𝑚mitalic_m, while the clients’ online complexity scales linearly with n𝑛nitalic_n and is independent of m𝑚mitalic_m.

    • Parameters. m𝑚mitalic_m parties P1,Pmsubscript𝑃1subscript𝑃𝑚P_{1},\cdots P_{m}italic_P start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , ⋯ italic_P start_POSTSUBSCRIPT italic_m end_POSTSUBSCRIPT. The dimension of vector n𝑛nitalic_n. The item length l𝑙litalic_l.

    • Functionality. On input xi=(xi1,,xin)subscriptx𝑖superscriptsubscript𝑥𝑖1superscriptsubscript𝑥𝑖𝑛\textbf{x}_{i}={(x_{i}^{1},\cdots,x_{i}^{n})}x start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT = ( italic_x start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 1 end_POSTSUPERSCRIPT , ⋯ , italic_x start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_n end_POSTSUPERSCRIPT ) from each Pisubscript𝑃𝑖P_{i}italic_P start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT, sample a random permutation π:[n][n]:𝜋delimited-[]𝑛delimited-[]𝑛\pi:[n]\to[n]italic_π : [ italic_n ] → [ italic_n ]. For 1im1𝑖𝑚1\leq i\leq m1 ≤ italic_i ≤ italic_m, sample xi({0,1}l)nsuperscriptsubscriptx𝑖superscriptsuperscript01𝑙𝑛\textbf{x}_{i}^{\prime}\leftarrow(\{0,1\}^{l})^{n}x start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT ← ( { 0 , 1 } start_POSTSUPERSCRIPT italic_l end_POSTSUPERSCRIPT ) start_POSTSUPERSCRIPT italic_n end_POSTSUPERSCRIPT satisfying i=1mxi=π(i=1mxi)superscriptsubscriptdirect-sum𝑖1𝑚superscriptsubscriptx𝑖𝜋superscriptsubscriptdirect-sum𝑖1𝑚subscriptx𝑖\bigoplus_{i=1}^{m}\textbf{x}_{i}^{\prime}=\pi(\bigoplus_{i=1}^{m}\textbf{x}_{% i})⨁ start_POSTSUBSCRIPT italic_i = 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_m end_POSTSUPERSCRIPT x start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT = italic_π ( ⨁ start_POSTSUBSCRIPT italic_i = 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_m end_POSTSUPERSCRIPT x start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT ). Give xisuperscriptsubscriptx𝑖\textbf{x}_{i}^{\prime}x start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT to Pisubscript𝑃𝑖P_{i}italic_P start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT.

    Figure 5: Multi-Party Secret-Shared Shuffle Functionality 𝗌𝗁𝗎𝖿𝖿𝗅𝖾subscript𝗌𝗁𝗎𝖿𝖿𝗅𝖾\mathcal{F}_{\mathsf{shuffle}}caligraphic_F start_POSTSUBSCRIPT sansserif_shuffle end_POSTSUBSCRIPT

    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 \mathcal{R}caligraphic_R uses hash functions h1,h2,h3subscript1subscript2subscript3h_{1},h_{2},h_{3}italic_h start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , italic_h start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT , italic_h start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT to assign its items to B𝐵Bitalic_B 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 𝒮𝒮\mathcal{S}caligraphic_S assigns each of its items x𝑥xitalic_x to all bins h1(x),h2(x),h3(x)subscript1𝑥subscript2𝑥subscript3𝑥h_{1}(x),h_{2}(x),h_{3}(x)italic_h start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ( italic_x ) , italic_h start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT ( italic_x ) , italic_h start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT ( italic_x ) via simple hashing. This guarantees that for each item x𝑥xitalic_x of \mathcal{R}caligraphic_R, if x𝑥xitalic_x is mapped into the b𝑏bitalic_b-th bin of Cuckoo hash table (b{h1(x),h2(x),h3(x)}𝑏subscript1𝑥subscript2𝑥subscript3𝑥b\in\{h_{1}(x),h_{2}(x),h_{3}(x)\}italic_b ∈ { italic_h start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ( italic_x ) , italic_h start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT ( italic_x ) , italic_h start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT ( italic_x ) }), and x𝑥xitalic_x is in 𝒮𝒮\mathcal{S}caligraphic_S’s set, then the b𝑏bitalic_b-th of simple hash table certainly contains x𝑥xitalic_x.

    We denote simple hashing with the following notation:

    𝒯1,,𝒯B𝖲𝗂𝗆𝗉𝗅𝖾h1,h2,h3B(X)superscript𝒯1superscript𝒯𝐵superscriptsubscript𝖲𝗂𝗆𝗉𝗅𝖾subscript1subscript2subscript3𝐵𝑋\displaystyle\mathcal{T}^{1},\cdots,\mathcal{T}^{B}\leftarrow\mathsf{Simple}_{% h_{1},h_{2},h_{3}}^{B}(X)caligraphic_T start_POSTSUPERSCRIPT 1 end_POSTSUPERSCRIPT , ⋯ , caligraphic_T start_POSTSUPERSCRIPT italic_B end_POSTSUPERSCRIPT ← sansserif_Simple start_POSTSUBSCRIPT italic_h start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , italic_h start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT , italic_h start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_B end_POSTSUPERSCRIPT ( italic_X )

    This expression represents hashing the items of X𝑋Xitalic_X into B𝐵Bitalic_B bins using simple hashing with hash functions h1,h2,h3:{0,1}[B]:subscript1subscript2subscript3superscript01delimited-[]𝐵h_{1},h_{2},h_{3}:\{0,1\}^{*}\to[B]italic_h start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , italic_h start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT , italic_h start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT : { 0 , 1 } start_POSTSUPERSCRIPT ∗ end_POSTSUPERSCRIPT → [ italic_B ]. The output is a hash table denoted by 𝒯1,,𝒯Bsuperscript𝒯1superscript𝒯𝐵\mathcal{T}^{1},\cdots,\mathcal{T}^{B}caligraphic_T start_POSTSUPERSCRIPT 1 end_POSTSUPERSCRIPT , ⋯ , caligraphic_T start_POSTSUPERSCRIPT italic_B end_POSTSUPERSCRIPT, where for each xX𝑥𝑋x\in Xitalic_x ∈ italic_X, 𝒯hi(x){xi|i=1,2,3}conditional-set𝑥conditional𝑖𝑖123superscript𝒯subscript𝑖𝑥\mathcal{T}^{h_{i}(x)}\supseteq\{x\|i|i=1,2,3\}caligraphic_T start_POSTSUPERSCRIPT italic_h start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT ( italic_x ) end_POSTSUPERSCRIPT ⊇ { italic_x ∥ italic_i | italic_i = 1 , 2 , 3 }.444Appending the index of the hash function is helpful for dealing with edge cases like h1(x)=h2(x)=isubscript1𝑥subscript2𝑥𝑖h_{1}(x)=h_{2}(x)=iitalic_h start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ( italic_x ) = italic_h start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT ( italic_x ) = italic_i, which happen with non-negligible probability.

    We denote Cuckoo hashing with the following notation:

    𝒞1,,𝒞B𝖢𝗎𝖼𝗄𝗈𝗈h1,h2,h3B(X)superscript𝒞1superscript𝒞𝐵superscriptsubscript𝖢𝗎𝖼𝗄𝗈𝗈subscript1subscript2subscript3𝐵𝑋\displaystyle\mathcal{C}^{1},\cdots,\mathcal{C}^{B}\leftarrow\mathsf{Cuckoo}_{% h_{1},h_{2},h_{3}}^{B}(X)caligraphic_C start_POSTSUPERSCRIPT 1 end_POSTSUPERSCRIPT , ⋯ , caligraphic_C start_POSTSUPERSCRIPT italic_B end_POSTSUPERSCRIPT ← sansserif_Cuckoo start_POSTSUBSCRIPT italic_h start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , italic_h start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT , italic_h start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_B end_POSTSUPERSCRIPT ( italic_X )

    This expression represents hashing the items of X𝑋Xitalic_X into B𝐵Bitalic_B bins using Cuckoo hashing with hash functions h1,h2,h3:{0,1}[B]:subscript1subscript2subscript3superscript01delimited-[]𝐵h_{1},h_{2},h_{3}:\{0,1\}^{*}\to[B]italic_h start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , italic_h start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT , italic_h start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT : { 0 , 1 } start_POSTSUPERSCRIPT ∗ end_POSTSUPERSCRIPT → [ italic_B ]. The output is a Cuckoo hash table denoted by 𝒞1,,𝒞Bsuperscript𝒞1superscript𝒞𝐵\mathcal{C}^{1},\cdots,\mathcal{C}^{B}caligraphic_C start_POSTSUPERSCRIPT 1 end_POSTSUPERSCRIPT , ⋯ , caligraphic_C start_POSTSUPERSCRIPT italic_B end_POSTSUPERSCRIPT, where for each xX𝑥𝑋x\in Xitalic_x ∈ italic_X there is some i{1,2,3}𝑖123i\in\{1,2,3\}italic_i ∈ { 1 , 2 , 3 } such that 𝒞hi(x)={xi}superscript𝒞subscript𝑖𝑥conditional-set𝑥𝑖\mathcal{C}^{h_{i}(x)}=\{x\|i\}caligraphic_C start_POSTSUPERSCRIPT italic_h start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT ( italic_x ) end_POSTSUPERSCRIPT = { italic_x ∥ italic_i }. 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 X1,,Xmsubscript𝑋1subscript𝑋𝑚X_{1},\cdots,X_{m}italic_X start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , ⋯ , italic_X start_POSTSUBSCRIPT italic_m end_POSTSUBSCRIPT be m𝑚mitalic_m sets. A set Y𝑌Yitalic_Y is called a constructible set (over X1,,Xmsubscript𝑋1subscript𝑋𝑚X_{1},\cdots,X_{m}italic_X start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , ⋯ , italic_X start_POSTSUBSCRIPT italic_m end_POSTSUBSCRIPT) if it can be derived from X1,,Xmsubscript𝑋1subscript𝑋𝑚X_{1},\dots,X_{m}italic_X start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , … , italic_X start_POSTSUBSCRIPT italic_m end_POSTSUBSCRIPT through a finite number of set operations, including intersection, union, and difference.

    In particular, if a constructible set Y𝑌Yitalic_Y satisfies YXi𝑌subscript𝑋𝑖Y\subseteq X_{i}italic_Y ⊆ italic_X start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT for some 1im1𝑖𝑚1\leq i\leq m1 ≤ italic_i ≤ italic_m, we call it an Xisubscript𝑋𝑖X_{i}italic_X start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT-constructible set (over X1,,Xmsubscript𝑋1subscript𝑋𝑚X_{1},\cdots,X_{m}italic_X start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , ⋯ , italic_X start_POSTSUBSCRIPT italic_m end_POSTSUBSCRIPT).

    Definition 3

    Let φ(x,X1,,Xm)𝜑𝑥subscript𝑋1subscript𝑋𝑚\varphi(x,X_{1},\cdots,X_{m})italic_φ ( italic_x , italic_X start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , ⋯ , italic_X start_POSTSUBSCRIPT italic_m end_POSTSUBSCRIPT ) be a first-order predicate formula. If φ𝜑\varphiitalic_φ is composed of atomic propositions of the form M(x,Xi):xXi:𝑀𝑥subscript𝑋𝑖𝑥subscript𝑋𝑖M(x,X_{i}):x\in X_{i}italic_M ( italic_x , italic_X start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT ) : italic_x ∈ italic_X start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT, 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 X1,,Xmsubscript𝑋1subscript𝑋𝑚X_{1},\cdots,X_{m}italic_X start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , ⋯ , italic_X start_POSTSUBSCRIPT italic_m end_POSTSUBSCRIPT be m𝑚mitalic_m sets and Y𝑌Yitalic_Y is a constructible set. There exists a set predicate formula φ(x,X1,,Xm)𝜑𝑥subscript𝑋1subscript𝑋𝑚\varphi(x,X_{1},\cdots,X_{m})italic_φ ( italic_x , italic_X start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , ⋯ , italic_X start_POSTSUBSCRIPT italic_m end_POSTSUBSCRIPT ), s.t. for any urelement x𝑥xitalic_x,

    xYφ(x,X1,,Xm)=1.iff𝑥𝑌𝜑𝑥subscript𝑋1subscript𝑋𝑚1x\in Y\iff\varphi(x,X_{1},\cdots,X_{m})=1.italic_x ∈ italic_Y ⇔ italic_φ ( italic_x , italic_X start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , ⋯ , italic_X start_POSTSUBSCRIPT italic_m end_POSTSUBSCRIPT ) = 1 .

    We prove this theorem in Appendix 0.B.

    3.2 Canonical Predicate Formula Representation

    Definition 4

    A set predicate formula φ(x,X1,,Xm)𝜑𝑥subscript𝑋1subscript𝑋𝑚\varphi(x,X_{1},\cdots,X_{m})italic_φ ( italic_x , italic_X start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , ⋯ , italic_X start_POSTSUBSCRIPT italic_m end_POSTSUBSCRIPT ) is called set-separable with respect to Xisubscript𝑋𝑖X_{i}italic_X start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT for some 1im1𝑖𝑚1\leq i\leq m1 ≤ italic_i ≤ italic_m if it can be written in the form:

    φ(x,X1,,Xm)=(xXi)ψ(x,X1,,Xi1,Xi+1,,Xm),𝜑𝑥subscript𝑋1subscript𝑋𝑚𝑥subscript𝑋𝑖𝜓𝑥subscript𝑋1subscript𝑋𝑖1subscript𝑋𝑖1subscript𝑋𝑚\varphi(x,X_{1},\cdots,X_{m})=(x\in X_{i})\land\psi(x,X_{1},\cdots,X_{i-1},X_{% i+1},\cdots,X_{m}),italic_φ ( italic_x , italic_X start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , ⋯ , italic_X start_POSTSUBSCRIPT italic_m end_POSTSUBSCRIPT ) = ( italic_x ∈ italic_X start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT ) ∧ italic_ψ ( italic_x , italic_X start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , ⋯ , italic_X start_POSTSUBSCRIPT italic_i - 1 end_POSTSUBSCRIPT , italic_X start_POSTSUBSCRIPT italic_i + 1 end_POSTSUBSCRIPT , ⋯ , italic_X start_POSTSUBSCRIPT italic_m end_POSTSUBSCRIPT ) ,

    where ψ(x,X1,,Xi1,Xi+1,,Xm)𝜓𝑥subscript𝑋1subscript𝑋𝑖1subscript𝑋𝑖1subscript𝑋𝑚\psi(x,X_{1},\cdots,X_{i-1},X_{i+1},\cdots,X_{m})italic_ψ ( italic_x , italic_X start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , ⋯ , italic_X start_POSTSUBSCRIPT italic_i - 1 end_POSTSUBSCRIPT , italic_X start_POSTSUBSCRIPT italic_i + 1 end_POSTSUBSCRIPT , ⋯ , italic_X start_POSTSUBSCRIPT italic_m end_POSTSUBSCRIPT ) is a set predicate formula not involving Xisubscript𝑋𝑖X_{i}italic_X start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT, which we call the separation formula of φ(x,X1,,Xm)𝜑𝑥subscript𝑋1subscript𝑋𝑚\varphi(x,X_{1},\cdots,X_{m})italic_φ ( italic_x , italic_X start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , ⋯ , italic_X start_POSTSUBSCRIPT italic_m end_POSTSUBSCRIPT ) with respect to Xisubscript𝑋𝑖X_{i}italic_X start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT.

    Corollary 1

    If a constructible set Y𝑌Yitalic_Y corresponds to a set predicate formula which is set-separable with respect to Xisubscript𝑋𝑖X_{i}italic_X start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT, then Y𝑌Yitalic_Y is an Xisubscript𝑋𝑖X_{i}italic_X start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT-constructible set.

    Definition 5

    Let set predicate formula ψ(x,X1,,Xm)𝜓𝑥subscript𝑋1subscript𝑋𝑚\psi(x,X_{1},\cdots,X_{m})italic_ψ ( italic_x , italic_X start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , ⋯ , italic_X start_POSTSUBSCRIPT italic_m end_POSTSUBSCRIPT ) is a disjunction of one or more subformulas,555A disjunction of one subformulas is itself. denoted as ψ=Q1Qs(s1)𝜓subscript𝑄1subscript𝑄𝑠𝑠1\psi=Q_{1}\lor\cdots\lor Q_{s}(s\geq 1)italic_ψ = italic_Q start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ∨ ⋯ ∨ italic_Q start_POSTSUBSCRIPT italic_s end_POSTSUBSCRIPT ( italic_s ≥ 1 ). Let Yisubscript𝑌𝑖Y_{i}italic_Y start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT be the corresponding set represented by Qisubscript𝑄𝑖Q_{i}italic_Q start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT, then if each subformula Qisubscript𝑄𝑖Q_{i}italic_Q start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT is set-separable with respect to some Xjsubscript𝑋𝑗X_{j}italic_X start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT (1jm1𝑗𝑚1\leq j\leq m1 ≤ italic_j ≤ italic_m), and the set of {Y1,,Ys}subscript𝑌1subscript𝑌𝑠\{Y_{1},\cdots,Y_{s}\}{ italic_Y start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , ⋯ , italic_Y start_POSTSUBSCRIPT italic_s end_POSTSUBSCRIPT } forms a partition of Y𝑌Yitalic_Y, we call ψ(x,X1,,Xm)𝜓𝑥subscript𝑋1subscript𝑋𝑚\psi(x,X_{1},\cdots,X_{m})italic_ψ ( italic_x , italic_X start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , ⋯ , italic_X start_POSTSUBSCRIPT italic_m end_POSTSUBSCRIPT ) a canonical predicate formula (CPF) representation (over X1,,Xmsubscript𝑋1subscript𝑋𝑚X_{1},\cdots,X_{m}italic_X start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , ⋯ , italic_X start_POSTSUBSCRIPT italic_m end_POSTSUBSCRIPT).

    Theorem 3.2

    Let X1,,Xmsubscript𝑋1subscript𝑋𝑚X_{1},\cdots,X_{m}italic_X start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , ⋯ , italic_X start_POSTSUBSCRIPT italic_m end_POSTSUBSCRIPT be m𝑚mitalic_m sets and Y𝑌Yitalic_Y is a constructible set. There exists a CPF representation ψ(x,X1,,Xm)𝜓𝑥subscript𝑋1subscript𝑋𝑚\psi(x,X_{1},\cdots,X_{m})italic_ψ ( italic_x , italic_X start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , ⋯ , italic_X start_POSTSUBSCRIPT italic_m end_POSTSUBSCRIPT ) s.t. for any urelement x𝑥xitalic_x,

    xYψ(x,X1,,Xm)=1iff𝑥𝑌𝜓𝑥subscript𝑋1subscript𝑋𝑚1x\in Y\iff\psi(x,X_{1},\cdots,X_{m})=1italic_x ∈ italic_Y ⇔ italic_ψ ( italic_x , italic_X start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , ⋯ , italic_X start_POSTSUBSCRIPT italic_m end_POSTSUBSCRIPT ) = 1

    We prove this theorem by showing how to construct ψ𝜓\psiitalic_ψ in Appendix 0.C.

    In order to illustrate Theorem 3.2, consider three constructible sets in the three-party setting: the intersection Y=X1X2X3𝑌subscript𝑋1subscript𝑋2subscript𝑋3Y=X_{1}\cap X_{2}\cap X_{3}italic_Y = italic_X start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ∩ italic_X start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT ∩ italic_X start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT, the union Y=X1X2X3𝑌subscript𝑋1subscript𝑋2subscript𝑋3Y=X_{1}\cup X_{2}\cup X_{3}italic_Y = italic_X start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ∪ italic_X start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT ∪ italic_X start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT and a complex set formula Y=((X1X2)(X1X3))(X1X2X3)𝑌subscript𝑋1subscript𝑋2subscript𝑋1subscript𝑋3subscript𝑋1subscript𝑋2subscript𝑋3Y=((X_{1}\cap X_{2})\cup(X_{1}\cap X_{3}))\setminus(X_{1}\cap X_{2}\cap X_{3})italic_Y = ( ( italic_X start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ∩ italic_X start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT ) ∪ ( italic_X start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ∩ italic_X start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT ) ) ∖ ( italic_X start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ∩ italic_X start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT ∩ italic_X start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT ). We provide the respective CPF representation ψ(x,X1,X2,X3)𝜓𝑥subscript𝑋1subscript𝑋2subscript𝑋3\psi(x,X_{1},X_{2},X_{3})italic_ψ ( italic_x , italic_X start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , italic_X start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT , italic_X start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT ) for each case below.

    • Intersection. ψ(x,X1,X2,X3)=(xX1)(xX2)(xX3)𝜓𝑥subscript𝑋1subscript𝑋2subscript𝑋3𝑥subscript𝑋1𝑥subscript𝑋2𝑥subscript𝑋3\psi(x,X_{1},X_{2},X_{3})=(x\in X_{1})\land(x\in X_{2})\land(x\in X_{3})italic_ψ ( italic_x , italic_X start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , italic_X start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT , italic_X start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT ) = ( italic_x ∈ italic_X start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ) ∧ ( italic_x ∈ italic_X start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT ) ∧ ( italic_x ∈ italic_X start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT ). In this case, ψ𝜓\psiitalic_ψ is a disjunction of one subformula Q1=ψsubscript𝑄1𝜓Q_{1}=\psiitalic_Q start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT = italic_ψ, corresponding to the set Y1=Ysubscript𝑌1𝑌Y_{1}=Yitalic_Y start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT = italic_Y. Q1subscript𝑄1Q_{1}italic_Q start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT is set-separable with respect to X1subscript𝑋1X_{1}italic_X start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT, X2subscript𝑋2X_{2}italic_X start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT and X3subscript𝑋3X_{3}italic_X start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT. Y1subscript𝑌1Y_{1}italic_Y start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT itself is a partition of Y𝑌Yitalic_Y.

    • Union. ψ(x,X1,X2,X3)=(xX1)((xX1)(xX2))((xX1)(xX2)(xX3))𝜓𝑥subscript𝑋1subscript𝑋2subscript𝑋3𝑥subscript𝑋1𝑥subscript𝑋1𝑥subscript𝑋2𝑥subscript𝑋1𝑥subscript𝑋2𝑥subscript𝑋3\psi(x,X_{1},X_{2},X_{3})=(x\in X_{1})\lor((x\notin X_{1})\land(x\in X_{2}))% \lor((x\notin X_{1})\land(x\notin X_{2})\land(x\in X_{3}))italic_ψ ( italic_x , italic_X start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , italic_X start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT , italic_X start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT ) = ( italic_x ∈ italic_X start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ) ∨ ( ( italic_x ∉ italic_X start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ) ∧ ( italic_x ∈ italic_X start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT ) ) ∨ ( ( italic_x ∉ italic_X start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ) ∧ ( italic_x ∉ italic_X start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT ) ∧ ( italic_x ∈ italic_X start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT ) ). ψ𝜓\psiitalic_ψ is a disjunction of three subformulas Q1,Q2,Q3subscript𝑄1subscript𝑄2subscript𝑄3Q_{1},Q_{2},Q_{3}italic_Q start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , italic_Q start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT , italic_Q start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT, where each Qi=(xX1)(xXi1)(xXi)subscript𝑄𝑖𝑥subscript𝑋1𝑥subscript𝑋𝑖1𝑥subscript𝑋𝑖Q_{i}=(x\notin X_{1})\land\cdots\land(x\notin X_{i-1})\land(x\in X_{i})italic_Q start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT = ( italic_x ∉ italic_X start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ) ∧ ⋯ ∧ ( italic_x ∉ italic_X start_POSTSUBSCRIPT italic_i - 1 end_POSTSUBSCRIPT ) ∧ ( italic_x ∈ italic_X start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT ) represents Yi=Xi(X1Xi1)subscript𝑌𝑖subscript𝑋𝑖subscript𝑋1subscript𝑋𝑖1Y_{i}=X_{i}\setminus(X_{1}\cup\cdots\cup X_{i-1})italic_Y start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT = italic_X start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT ∖ ( italic_X start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ∪ ⋯ ∪ italic_X start_POSTSUBSCRIPT italic_i - 1 end_POSTSUBSCRIPT ). Qisubscript𝑄𝑖Q_{i}italic_Q start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT is set-separable with respect to Xisubscript𝑋𝑖X_{i}italic_X start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT. {Y1,Y2,Y3}subscript𝑌1subscript𝑌2subscript𝑌3\{Y_{1},Y_{2},Y_{3}\}{ italic_Y start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , italic_Y start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT , italic_Y start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT } is a partition of Y𝑌Yitalic_Y.

    • Complex set formula. There are two CPF representations for this case:

      • ψ(x,X1,X2,X3)=((xX1)(xX2)(xX3))((xX1)(xX3)(xX2))𝜓𝑥subscript𝑋1subscript𝑋2subscript𝑋3𝑥subscript𝑋1𝑥subscript𝑋2𝑥subscript𝑋3𝑥subscript𝑋1𝑥subscript𝑋3𝑥subscript𝑋2\psi(x,X_{1},X_{2},X_{3})=((x\in X_{1})\land(x\in X_{2})\land(x\notin X_{3}))% \lor((x\in X_{1})\land(x\in X_{3})\land(x\notin X_{2}))italic_ψ ( italic_x , italic_X start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , italic_X start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT , italic_X start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT ) = ( ( italic_x ∈ italic_X start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ) ∧ ( italic_x ∈ italic_X start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT ) ∧ ( italic_x ∉ italic_X start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT ) ) ∨ ( ( italic_x ∈ italic_X start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ) ∧ ( italic_x ∈ italic_X start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT ) ∧ ( italic_x ∉ italic_X start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT ) ). ψ𝜓\psiitalic_ψ is a disjunction of two subformulas Q1,Q2subscript𝑄1subscript𝑄2Q_{1},Q_{2}italic_Q start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , italic_Q start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT with the corresponding sets Y1=X1X2X3subscript𝑌1subscript𝑋1subscript𝑋2subscript𝑋3Y_{1}=X_{1}\cap X_{2}\setminus X_{3}italic_Y start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT = italic_X start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ∩ italic_X start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT ∖ italic_X start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT and Y2=X1X3X2subscript𝑌2subscript𝑋1subscript𝑋3subscript𝑋2Y_{2}=X_{1}\cap X_{3}\setminus X_{2}italic_Y start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT = italic_X start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ∩ italic_X start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT ∖ italic_X start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT. Q1subscript𝑄1Q_{1}italic_Q start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT is set-separable with respect to X1subscript𝑋1X_{1}italic_X start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT and X2subscript𝑋2X_{2}italic_X start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT, while Q2subscript𝑄2Q_{2}italic_Q start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT is set-separable with respect to X1subscript𝑋1X_{1}italic_X start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT and X3subscript𝑋3X_{3}italic_X start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT. {Y1,Y2}subscript𝑌1subscript𝑌2\{Y_{1},Y_{2}\}{ italic_Y start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , italic_Y start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT } is a partition of Y𝑌Yitalic_Y.

      • ψ(x,X1,X2,X3)=(xX1)[((xX2)(xX3))((xX3)(xX2))]𝜓𝑥subscript𝑋1subscript𝑋2subscript𝑋3𝑥subscript𝑋1delimited-[]𝑥subscript𝑋2𝑥subscript𝑋3𝑥subscript𝑋3𝑥subscript𝑋2\psi(x,X_{1},X_{2},X_{3})=(x\in X_{1})\land[((x\in X_{2})\land(x\notin X_{3}))% \lor((x\in X_{3})\land(x\notin X_{2}))]italic_ψ ( italic_x , italic_X start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , italic_X start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT , italic_X start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT ) = ( italic_x ∈ italic_X start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ) ∧ [ ( ( italic_x ∈ italic_X start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT ) ∧ ( italic_x ∉ italic_X start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT ) ) ∨ ( ( italic_x ∈ italic_X start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT ) ∧ ( italic_x ∉ italic_X start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT ) ) ]. ψ𝜓\psiitalic_ψ is set-separable with respect to X1subscript𝑋1X_{1}italic_X start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT, so it is a disjunction of one subformula Q1=ψsubscript𝑄1𝜓Q_{1}=\psiitalic_Q start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT = italic_ψ, 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 𝖠𝖭𝖣𝖠𝖭𝖣\mathsf{AND}sansserif_AND and 𝖮𝖱𝖮𝖱\mathsf{OR}sansserif_OR operators.

    4.1 Definitions

    A predicative zero-sharing protocol allows a set of m𝑚mitalic_m (m2)𝑚2(m\geq 2)( italic_m ≥ 2 ) parties with private inputs to receive secret shares of 0, on condition that the truth-value of the associated first-order predicate formula Q𝑄Qitalic_Q 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: m𝑚mitalic_m parties P1,Pmsubscript𝑃1subscript𝑃𝑚P_{1},\cdots P_{m}italic_P start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , ⋯ italic_P start_POSTSUBSCRIPT italic_m end_POSTSUBSCRIPT with inputs x=(x1,,xm)xsubscript𝑥1subscript𝑥𝑚\textbf{x}=(x_{1},\cdots,x_{m})x = ( italic_x start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , ⋯ , italic_x start_POSTSUBSCRIPT italic_m end_POSTSUBSCRIPT ). A field 𝔽𝔽\mathbb{F}blackboard_F. A first-order predicate formula Q𝑄Qitalic_Q.

    • Functionality: On input xisubscript𝑥𝑖x_{i}italic_x start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT from each Pisubscript𝑃𝑖P_{i}italic_P start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT, sample si𝔽subscript𝑠𝑖𝔽s_{i}\leftarrow\mathbb{F}italic_s start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT ← blackboard_F s.t. if Q(x)=1𝑄x1Q(\textbf{x})=1italic_Q ( x ) = 1, s1++sm=0subscript𝑠1subscript𝑠𝑚0s_{1}+\cdots+s_{m}=0italic_s start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT + ⋯ + italic_s start_POSTSUBSCRIPT italic_m end_POSTSUBSCRIPT = 0. Give sisubscript𝑠𝑖s_{i}italic_s start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT to Pisubscript𝑃𝑖P_{i}italic_P start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT for 1im1𝑖𝑚1\leq i\leq m1 ≤ italic_i ≤ italic_m.

    Figure 6: Ideal functionality for predicative zero-sharing 𝖯𝖹𝖲Qsuperscriptsubscript𝖯𝖹𝖲𝑄\mathcal{F}_{\mathsf{PZS}}^{Q}caligraphic_F start_POSTSUBSCRIPT sansserif_PZS end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_Q end_POSTSUPERSCRIPT

    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 m𝑚mitalic_m-ary functionality fsuperscript𝑓\mathcal{F}^{f}caligraphic_F start_POSTSUPERSCRIPT italic_f end_POSTSUPERSCRIPT, which takes the parties’ inputs x=(x1,,xm)xsubscript𝑥1subscript𝑥𝑚\textbf{x}=(x_{1},\cdots,x_{m})x = ( italic_x start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , ⋯ , italic_x start_POSTSUBSCRIPT italic_m end_POSTSUBSCRIPT ) and outputs secret shares of f(x)𝑓xf(\textbf{x})italic_f ( x ) to the parties. Let ΠΠ\Piroman_Π be a m𝑚mitalic_m-party protocol for computing fsuperscript𝑓\mathcal{F}^{f}caligraphic_F start_POSTSUPERSCRIPT italic_f end_POSTSUPERSCRIPT, and sisubscript𝑠𝑖s_{i}italic_s start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT and siΠsubscriptsuperscript𝑠Π𝑖s^{\Pi}_{i}italic_s start_POSTSUPERSCRIPT roman_Π end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT denote the output of Pisubscript𝑃𝑖P_{i}italic_P start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT from fsuperscript𝑓\mathcal{F}^{f}caligraphic_F start_POSTSUPERSCRIPT italic_f end_POSTSUPERSCRIPT, and that during the execution of ΠΠ\Piroman_Π on x, respectively (1im1𝑖𝑚1\leq i\leq m1 ≤ italic_i ≤ italic_m).

    Theorem 4.1

    If f𝑓fitalic_f is a probabilistic functionality in terms of x, and ΠΠ\Piroman_Π satisfies:

    • Correctness. The outputs of ΠΠ\Piroman_Π are secret shares of f(x)𝑓xf(\textbf{x})italic_f ( x ), namely,

      {s1,,sm}x𝑠{s1Π,,smΠ}xsubscriptsubscript𝑠1subscript𝑠𝑚x𝑠subscriptsubscriptsuperscript𝑠Π1subscriptsuperscript𝑠Π𝑚x\{s_{1},\cdots,s_{m}\}_{\textbf{x}}\overset{s}{\approx}\{s^{\Pi}_{1},\cdots,s^% {\Pi}_{m}\}_{\textbf{x}}{ italic_s start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , ⋯ , italic_s start_POSTSUBSCRIPT italic_m end_POSTSUBSCRIPT } start_POSTSUBSCRIPT x end_POSTSUBSCRIPT overitalic_s start_ARG ≈ end_ARG { italic_s start_POSTSUPERSCRIPT roman_Π end_POSTSUPERSCRIPT start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , ⋯ , italic_s start_POSTSUPERSCRIPT roman_Π end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_m end_POSTSUBSCRIPT } start_POSTSUBSCRIPT x end_POSTSUBSCRIPT
    • Privacy. There exists a PPT algorithm 𝖲𝗂𝗆𝖲𝗂𝗆\mathsf{Sim}sansserif_Sim s.t. for every P𝒜={Pi1,,Pit}subscriptP𝒜subscript𝑃subscript𝑖1subscript𝑃subscript𝑖𝑡\textbf{P}_{\mathcal{A}}=\{P_{i_{1}},\cdots,P_{i_{t}}\}P start_POSTSUBSCRIPT caligraphic_A end_POSTSUBSCRIPT = { italic_P start_POSTSUBSCRIPT italic_i start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT end_POSTSUBSCRIPT , ⋯ , italic_P start_POSTSUBSCRIPT italic_i start_POSTSUBSCRIPT italic_t end_POSTSUBSCRIPT end_POSTSUBSCRIPT },

      {𝖲𝗂𝗆(P𝒜,x𝒜,s𝒜)}x𝑐{𝖵𝗂𝖾𝗐𝒜Π(x)}xsubscript𝖲𝗂𝗆subscriptP𝒜subscriptx𝒜subscripts𝒜x𝑐subscriptsuperscriptsubscript𝖵𝗂𝖾𝗐𝒜Πxx\displaystyle\{\mathsf{Sim}(\textbf{P}_{\mathcal{A}},\textbf{x}_{\mathcal{A}},% \textbf{s}_{\mathcal{A}})\}_{\textbf{x}}\overset{c}{\approx}\{\mathsf{View}_{% \mathcal{A}}^{\Pi}(\textbf{x})\}_{\textbf{x}}{ sansserif_Sim ( P start_POSTSUBSCRIPT caligraphic_A end_POSTSUBSCRIPT , x start_POSTSUBSCRIPT caligraphic_A end_POSTSUBSCRIPT , s start_POSTSUBSCRIPT caligraphic_A end_POSTSUBSCRIPT ) } start_POSTSUBSCRIPT x end_POSTSUBSCRIPT overitalic_c start_ARG ≈ end_ARG { sansserif_View start_POSTSUBSCRIPT caligraphic_A end_POSTSUBSCRIPT start_POSTSUPERSCRIPT roman_Π end_POSTSUPERSCRIPT ( x ) } start_POSTSUBSCRIPT x end_POSTSUBSCRIPT
    • Independence. The randomness in f(x)𝑓xf(\textbf{x})italic_f ( x ) is independent of 𝖵𝗂𝖾𝗐𝒜Π(x)superscriptsubscript𝖵𝗂𝖾𝗐𝒜Πx\mathsf{View}_{\mathcal{A}}^{\Pi}(\textbf{x})sansserif_View start_POSTSUBSCRIPT caligraphic_A end_POSTSUBSCRIPT start_POSTSUPERSCRIPT roman_Π end_POSTSUPERSCRIPT ( x ) for every P𝒜={Pi1,,Pit}subscriptP𝒜subscript𝑃subscript𝑖1subscript𝑃subscript𝑖𝑡\textbf{P}_{\mathcal{A}}=\{P_{i_{1}},\cdots,P_{i_{t}}\}P start_POSTSUBSCRIPT caligraphic_A end_POSTSUBSCRIPT = { italic_P start_POSTSUBSCRIPT italic_i start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT end_POSTSUBSCRIPT , ⋯ , italic_P start_POSTSUBSCRIPT italic_i start_POSTSUBSCRIPT italic_t end_POSTSUBSCRIPT end_POSTSUBSCRIPT } during an execution of ΠΠ\Piroman_Π.

    Then, there exists a PPT algorithm 𝖲𝗂𝗆𝖲𝗂𝗆\mathsf{Sim}sansserif_Sim s.t. for every P𝒜={Pi1,,Pit}subscriptP𝒜subscript𝑃subscript𝑖1subscript𝑃subscript𝑖𝑡\textbf{P}_{\mathcal{A}}=\{P_{i_{1}},\cdots,P_{i_{t}}\}P start_POSTSUBSCRIPT caligraphic_A end_POSTSUBSCRIPT = { italic_P start_POSTSUBSCRIPT italic_i start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT end_POSTSUBSCRIPT , ⋯ , italic_P start_POSTSUBSCRIPT italic_i start_POSTSUBSCRIPT italic_t end_POSTSUBSCRIPT end_POSTSUBSCRIPT },

    {𝖲𝗂𝗆(P𝒜,x𝒜,s𝒜),s1,,sm}x𝑐{𝖵𝗂𝖾𝗐𝒜Π(x),s1Π,,smΠ}xsubscript𝖲𝗂𝗆subscriptP𝒜subscriptx𝒜subscripts𝒜subscript𝑠1subscript𝑠𝑚x𝑐subscriptsuperscriptsubscript𝖵𝗂𝖾𝗐𝒜Πxsubscriptsuperscript𝑠Π1subscriptsuperscript𝑠Π𝑚x\displaystyle\{\mathsf{Sim}(\textbf{P}_{\mathcal{A}},\textbf{x}_{\mathcal{A}},% \textbf{s}_{\mathcal{A}}),s_{1},\cdots,s_{m}\}_{\textbf{x}}\overset{c}{\approx% }\{\mathsf{View}_{\mathcal{A}}^{\Pi}(\textbf{x}),s^{\Pi}_{1},\cdots,s^{\Pi}_{m% }\}_{\textbf{x}}{ sansserif_Sim ( P start_POSTSUBSCRIPT caligraphic_A end_POSTSUBSCRIPT , x start_POSTSUBSCRIPT caligraphic_A end_POSTSUBSCRIPT , s start_POSTSUBSCRIPT caligraphic_A end_POSTSUBSCRIPT ) , italic_s start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , ⋯ , italic_s start_POSTSUBSCRIPT italic_m end_POSTSUBSCRIPT } start_POSTSUBSCRIPT x end_POSTSUBSCRIPT overitalic_c start_ARG ≈ end_ARG { sansserif_View start_POSTSUBSCRIPT caligraphic_A end_POSTSUBSCRIPT start_POSTSUPERSCRIPT roman_Π end_POSTSUPERSCRIPT ( x ) , italic_s start_POSTSUPERSCRIPT roman_Π end_POSTSUPERSCRIPT start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , ⋯ , italic_s start_POSTSUPERSCRIPT roman_Π end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_m end_POSTSUBSCRIPT } start_POSTSUBSCRIPT x end_POSTSUBSCRIPT

    We prove this theorem in Appendix 0.D. Note that predicative zero-sharing functionality 𝖯𝖹𝖲Qsuperscriptsubscript𝖯𝖹𝖲𝑄\mathcal{F}_{\mathsf{PZS}}^{Q}caligraphic_F start_POSTSUBSCRIPT sansserif_PZS end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_Q end_POSTSUPERSCRIPT is a special case of fsuperscript𝑓\mathcal{F}^{f}caligraphic_F start_POSTSUPERSCRIPT italic_f end_POSTSUPERSCRIPT, where

    f(x)={0if Q(x)=1sif Q(x)=0𝑓xcases0if 𝑄x1𝑠if 𝑄x0f(\textbf{x})=\begin{cases}0&\text{if }Q(\textbf{x})=1\\ s&\text{if }Q(\textbf{x})=0\end{cases}italic_f ( x ) = { start_ROW start_CELL 0 end_CELL start_CELL if italic_Q ( x ) = 1 end_CELL end_ROW start_ROW start_CELL italic_s end_CELL start_CELL if italic_Q ( x ) = 0 end_CELL end_ROW

    and s𝑠sitalic_s is a uniform value (the randomness in f𝑓fitalic_f, denoted as sΠsuperscript𝑠Πs^{\Pi}italic_s start_POSTSUPERSCRIPT roman_Π end_POSTSUPERSCRIPT in the real execution). The independence requirement in this case is instantiated as: if Q(x)=0𝑄x0Q(\textbf{x})=0italic_Q ( x ) = 0, the distribution of the secret sΠ=s1Π++smΠsuperscript𝑠Πsubscriptsuperscript𝑠Π1subscriptsuperscript𝑠Π𝑚s^{\Pi}=s^{\Pi}_{1}+\cdots+s^{\Pi}_{m}italic_s start_POSTSUPERSCRIPT roman_Π end_POSTSUPERSCRIPT = italic_s start_POSTSUPERSCRIPT roman_Π end_POSTSUPERSCRIPT start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT + ⋯ + italic_s start_POSTSUPERSCRIPT roman_Π end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_m end_POSTSUBSCRIPT during an execution of ΠΠ\Piroman_Π is independent of 𝖵𝗂𝖾𝗐𝒜Π(x)superscriptsubscript𝖵𝗂𝖾𝗐𝒜Πx\mathsf{View}_{\mathcal{A}}^{\Pi}(\textbf{x})sansserif_View start_POSTSUBSCRIPT caligraphic_A end_POSTSUBSCRIPT start_POSTSUPERSCRIPT roman_Π end_POSTSUPERSCRIPT ( x ), and the correctness and independence requirements ensure that if Q(x)=0𝑄x0Q(\textbf{x})=0italic_Q ( x ) = 0, sΠsuperscript𝑠Πs^{\Pi}italic_s start_POSTSUPERSCRIPT roman_Π end_POSTSUPERSCRIPT is uniform and independent of the joint view of any tm1𝑡𝑚1t\leq m-1italic_t ≤ italic_m - 1 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 Q𝑄Qitalic_Q as 𝗋𝖯𝖹𝖲Qsuperscriptsubscript𝗋𝖯𝖹𝖲𝑄\mathcal{F}_{\mathsf{rPZS}}^{Q}caligraphic_F start_POSTSUBSCRIPT sansserif_rPZS end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_Q end_POSTSUPERSCRIPT.

    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 e=1𝑒1e=1italic_e = 1. Let 𝒮𝒮\mathcal{S}caligraphic_S set its share s1=r0subscript𝑠1subscript𝑟0s_{1}=-r_{0}italic_s start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT = - italic_r start_POSTSUBSCRIPT 0 end_POSTSUBSCRIPT, where r0subscript𝑟0r_{0}italic_r start_POSTSUBSCRIPT 0 end_POSTSUBSCRIPT is the first message from ROT, and let \mathcal{R}caligraphic_R set its share s2=resubscript𝑠2subscript𝑟𝑒s_{2}=r_{e}italic_s start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT = italic_r start_POSTSUBSCRIPT italic_e end_POSTSUBSCRIPT, the received message. Given that ROT functionality can be written as r0+re=e(r0+r1)subscript𝑟0subscript𝑟𝑒𝑒subscript𝑟0subscript𝑟1-r_{0}+r_{e}=e\cdot(-r_{0}+r_{1})- italic_r start_POSTSUBSCRIPT 0 end_POSTSUBSCRIPT + italic_r start_POSTSUBSCRIPT italic_e end_POSTSUBSCRIPT = italic_e ⋅ ( - italic_r start_POSTSUBSCRIPT 0 end_POSTSUBSCRIPT + italic_r start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ), if e=0𝑒0e=0italic_e = 0, s1+s2=0subscript𝑠1subscript𝑠20s_{1}+s_{2}=0italic_s start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT + italic_s start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT = 0; else, s1+s2=r0+r1subscript𝑠1subscript𝑠2subscript𝑟0subscript𝑟1s_{1}+s_{2}=-r_{0}+r_{1}italic_s start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT + italic_s start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT = - italic_r start_POSTSUBSCRIPT 0 end_POSTSUBSCRIPT + italic_r start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT, which is uniform but dependent on the output messages from ROT in 𝒮𝒮\mathcal{S}caligraphic_S’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 tm1𝑡𝑚1t\leq m-1italic_t ≤ italic_m - 1 parties in the multi-party setting (m>2𝑚2m>2italic_m > 2). 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 [r]=(r1,,rm)delimited-[]𝑟subscript𝑟1subscript𝑟𝑚[r]=(r_{1},\cdots,r_{m})[ italic_r ] = ( italic_r start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , ⋯ , italic_r start_POSTSUBSCRIPT italic_m end_POSTSUBSCRIPT ) from a relaxed predicative zero-sharing protocol, with the goal to generate a new secret-sharing [s]=(s1,,sm)delimited-[]𝑠subscript𝑠1subscript𝑠𝑚[s]=(s_{1},\cdots,s_{m})[ italic_s ] = ( italic_s start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , ⋯ , italic_s start_POSTSUBSCRIPT italic_m end_POSTSUBSCRIPT ) meeting the standard predicative zero-sharing definition. All they need to do is to prepare a random secret-sharing [b]delimited-[]𝑏[b][ italic_b ] in the offline phase (by each Pisubscript𝑃𝑖P_{i}italic_P start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT sampling a uniform share bisubscript𝑏𝑖b_{i}italic_b start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT), and perform a secure multiplication [s]=[r][b]delimited-[]𝑠delimited-[]𝑟delimited-[]𝑏[s]=[r]\cdot[b][ italic_s ] = [ italic_r ] ⋅ [ italic_b ] 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 |𝔽|2σ𝔽superscript2𝜎\lvert\mathbb{F}\rvert\geq 2^{\sigma}| blackboard_F | ≥ 2 start_POSTSUPERSCRIPT italic_σ end_POSTSUPERSCRIPT.

      • If Q(x)=1𝑄x1Q(\textbf{x})=1italic_Q ( x ) = 1, r=0𝑟0r=0italic_r = 0, then s=0𝑠0s=0italic_s = 0.

      • If Q(x)=0𝑄x0Q(\textbf{x})=0italic_Q ( x ) = 0, r𝑟ritalic_r is uniform. Let E𝐸Eitalic_E be the event that s𝑠sitalic_s is uniform and and independent of the joint view of any tm1𝑡𝑚1t\leq m-1italic_t ≤ italic_m - 1 parties. Let E0subscript𝐸0E_{0}italic_E start_POSTSUBSCRIPT 0 end_POSTSUBSCRIPT be the event r=0𝑟0r=0italic_r = 0 and E1subscript𝐸1E_{1}italic_E start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT be the event r0𝑟0r\neq 0italic_r ≠ 0. Since b𝑏bitalic_b is uniform and independent, we have Pr[E]=Pr[E|E0]Pr[E0]+Pr[E|E1]Pr[E1]=0Pr[E0]+1Pr[E1]=Pr[E1]=1Pr[E0]=11|𝔽|12σ𝑃𝑟delimited-[]𝐸𝑃𝑟delimited-[]conditional𝐸subscript𝐸0𝑃𝑟delimited-[]subscript𝐸0𝑃𝑟delimited-[]conditional𝐸subscript𝐸1𝑃𝑟delimited-[]subscript𝐸10𝑃𝑟delimited-[]subscript𝐸01𝑃𝑟delimited-[]subscript𝐸1𝑃𝑟delimited-[]subscript𝐸11𝑃𝑟delimited-[]subscript𝐸011𝔽1superscript2𝜎Pr[E]=Pr[E|E_{0}]\cdot Pr[E_{0}]+Pr[E|E_{1}]\cdot Pr[E_{1}]=0\cdot Pr[E_{0}]+1% \cdot Pr[E_{1}]=Pr[E_{1}]=1-Pr[E_{0}]=1-\frac{1}{\lvert\mathbb{F}\rvert}\geq 1% -2^{-\sigma}italic_P italic_r [ italic_E ] = italic_P italic_r [ italic_E | italic_E start_POSTSUBSCRIPT 0 end_POSTSUBSCRIPT ] ⋅ italic_P italic_r [ italic_E start_POSTSUBSCRIPT 0 end_POSTSUBSCRIPT ] + italic_P italic_r [ italic_E | italic_E start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ] ⋅ italic_P italic_r [ italic_E start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ] = 0 ⋅ italic_P italic_r [ italic_E start_POSTSUBSCRIPT 0 end_POSTSUBSCRIPT ] + 1 ⋅ italic_P italic_r [ italic_E start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ] = italic_P italic_r [ italic_E start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ] = 1 - italic_P italic_r [ italic_E start_POSTSUBSCRIPT 0 end_POSTSUBSCRIPT ] = 1 - divide start_ARG 1 end_ARG start_ARG | blackboard_F | end_ARG ≥ 1 - 2 start_POSTSUPERSCRIPT - italic_σ end_POSTSUPERSCRIPT.

    • 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 Q𝑄Qitalic_Q, we divide predicative zero-sharing into two categories: If Q𝑄Qitalic_Q is a simple predicate, we call it a simple predicative zero-sharing; If Q𝑄Qitalic_Q is a compound predicate, we call it compound predicative zero-sharing. A compound predicate Q𝑄Qitalic_Q is formed from q𝑞qitalic_q literals (q>1𝑞1q>1italic_q > 1) and logical connectives \land and \lor, where each literal Qisubscript𝑄𝑖Q_{i}italic_Q start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT corresponds to a simple predicate or its negation (1iq1𝑖𝑞1\leq i\leq q1 ≤ italic_i ≤ italic_q). We show that as long as we have a relaxed simple predicative zero-sharing protocol for each Qisubscript𝑄𝑖Q_{i}italic_Q start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT, we can build a compound predicative zero-sharing protocol for any compound predicate Q𝑄Qitalic_Q.

    At a high level, a compound predicative zero-sharing protocol for Q𝑄Qitalic_Q 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 Q𝑄Qitalic_Q, composing them into one output secret-sharing that meets the definition of relaxed compound predicative zero-sharing for Q𝑄Qitalic_Q, 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 Π𝖯𝖹𝖲QsuperscriptsubscriptΠ𝖯𝖹𝖲𝑄\Pi_{\mathsf{PZS}}^{Q}roman_Π start_POSTSUBSCRIPT sansserif_PZS end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_Q end_POSTSUPERSCRIPT securely realizes 𝖯𝖹𝖲Qsuperscriptsubscript𝖯𝖹𝖲𝑄\mathcal{F}_{\mathsf{PZS}}^{Q}caligraphic_F start_POSTSUBSCRIPT sansserif_PZS end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_Q end_POSTSUPERSCRIPT against any semi-honest adversary corrupting t<m𝑡𝑚t<mitalic_t < italic_m parties in the (𝗋𝖯𝖹𝖲Q1,,𝗋𝖯𝖹𝖲Qq)superscriptsubscript𝗋𝖯𝖹𝖲subscript𝑄1superscriptsubscript𝗋𝖯𝖹𝖲subscript𝑄𝑞(\mathcal{F}_{\mathsf{rPZS}}^{Q_{1}},\cdots,\mathcal{F}_{\mathsf{rPZS}}^{Q_{q}})( caligraphic_F start_POSTSUBSCRIPT sansserif_rPZS end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_Q start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT end_POSTSUPERSCRIPT , ⋯ , caligraphic_F start_POSTSUBSCRIPT sansserif_rPZS end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_Q start_POSTSUBSCRIPT italic_q end_POSTSUBSCRIPT end_POSTSUPERSCRIPT )-hybrid model.

    • Correctness and independence. In each step of the formula emulation stage,

      • If Q(x)=Qi(x)Qj(x)superscript𝑄xsubscriptsuperscript𝑄𝑖xsubscriptsuperscript𝑄𝑗xQ^{\prime}(\textbf{x})=Q^{\prime}_{i}(\textbf{x})\land Q^{\prime}_{j}(\textbf{% x})italic_Q start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT ( x ) = italic_Q start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT ( x ) ∧ italic_Q start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT ( x ), the parties compute [ri+rj]=[ri]+[rj]delimited-[]subscript𝑟𝑖subscript𝑟𝑗delimited-[]subscript𝑟𝑖delimited-[]subscript𝑟𝑗[r_{i}+r_{j}]=[r_{i}]+[r_{j}][ italic_r start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT + italic_r start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT ] = [ italic_r start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT ] + [ italic_r start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT ]. If Q(x)=1superscript𝑄x1Q^{\prime}(\textbf{x})=1italic_Q start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT ( x ) = 1, namely, Qi(x)=1Qj(x)=1subscriptsuperscript𝑄𝑖x1subscriptsuperscript𝑄𝑗x1Q^{\prime}_{i}(\textbf{x})=1\land Q^{\prime}_{j}(\textbf{x})=1italic_Q start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT ( x ) = 1 ∧ italic_Q start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT ( x ) = 1, by the functionalities of 𝗋𝖯𝖹𝖲Qisuperscriptsubscript𝗋𝖯𝖹𝖲subscriptsuperscript𝑄𝑖\mathcal{F}_{\mathsf{rPZS}}^{Q^{\prime}_{i}}caligraphic_F start_POSTSUBSCRIPT sansserif_rPZS end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_Q start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT end_POSTSUPERSCRIPT and 𝗋𝖯𝖹𝖲Qjsuperscriptsubscript𝗋𝖯𝖹𝖲subscriptsuperscript𝑄𝑗\mathcal{F}_{\mathsf{rPZS}}^{Q^{\prime}_{j}}caligraphic_F start_POSTSUBSCRIPT sansserif_rPZS end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_Q start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT end_POSTSUPERSCRIPT, ri=0rj=0subscript𝑟𝑖0subscript𝑟𝑗0r_{i}=0\land r_{j}=0italic_r start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT = 0 ∧ italic_r start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT = 0, hence we have ri+rj=0subscript𝑟𝑖subscript𝑟𝑗0r_{i}+r_{j}=0italic_r start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT + italic_r start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT = 0; otherwise, Qi(x)=0Qj(x)=0subscriptsuperscript𝑄𝑖x0subscriptsuperscript𝑄𝑗x0Q^{\prime}_{i}(\textbf{x})=0\lor Q^{\prime}_{j}(\textbf{x})=0italic_Q start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT ( x ) = 0 ∨ italic_Q start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT ( x ) = 0, which results that one of risubscript𝑟𝑖r_{i}italic_r start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT and rjsubscript𝑟𝑗r_{j}italic_r start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT is random, so ri+rjsubscript𝑟𝑖subscript𝑟𝑗r_{i}+r_{j}italic_r start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT + italic_r start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT is random.

      • If Q(x)=Qi(x)Qj(x)superscript𝑄xsubscriptsuperscript𝑄𝑖xsubscriptsuperscript𝑄𝑗xQ^{\prime}(\textbf{x})=Q^{\prime}_{i}(\textbf{x})\lor Q^{\prime}_{j}(\textbf{x})italic_Q start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT ( x ) = italic_Q start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT ( x ) ∨ italic_Q start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT ( x ), the parties compute [rirj]=[ri][rj]delimited-[]subscript𝑟𝑖subscript𝑟𝑗delimited-[]subscript𝑟𝑖delimited-[]subscript𝑟𝑗[r_{i}\cdot r_{j}]=[r_{i}]\cdot[r_{j}][ italic_r start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT ⋅ italic_r start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT ] = [ italic_r start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT ] ⋅ [ italic_r start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT ]. If Q(x)=1superscript𝑄x1Q^{\prime}(\textbf{x})=1italic_Q start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT ( x ) = 1, namely, Qi(x)=1Qj(x)=1subscriptsuperscript𝑄𝑖x1subscriptsuperscript𝑄𝑗x1Q^{\prime}_{i}(\textbf{x})=1\lor Q^{\prime}_{j}(\textbf{x})=1italic_Q start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT ( x ) = 1 ∨ italic_Q start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT ( x ) = 1, we have ri=0rj=0subscript𝑟𝑖0subscript𝑟𝑗0r_{i}=0\lor r_{j}=0italic_r start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT = 0 ∨ italic_r start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT = 0, hence rirj=0subscript𝑟𝑖subscript𝑟𝑗0r_{i}\cdot r_{j}=0italic_r start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT ⋅ italic_r start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT = 0; otherwise, Qi(x)=0Qj(x)=0subscriptsuperscript𝑄𝑖x0subscriptsuperscript𝑄𝑗x0Q^{\prime}_{i}(\textbf{x})=0\land Q^{\prime}_{j}(\textbf{x})=0italic_Q start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT ( x ) = 0 ∧ italic_Q start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT ( x ) = 0, then both of risubscript𝑟𝑖r_{i}italic_r start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT and rjsubscript𝑟𝑗r_{j}italic_r start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT are random. Let Ei,jsuperscript𝐸𝑖𝑗E^{i,j}italic_E start_POSTSUPERSCRIPT italic_i , italic_j end_POSTSUPERSCRIPT be the event that rirjsubscript𝑟𝑖subscript𝑟𝑗r_{i}\cdot r_{j}italic_r start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT ⋅ italic_r start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT is random. Let E0isuperscriptsubscript𝐸0𝑖E_{0}^{i}italic_E start_POSTSUBSCRIPT 0 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_i end_POSTSUPERSCRIPT be the event ri=0subscript𝑟𝑖0r_{i}=0italic_r start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT = 0 and E1isuperscriptsubscript𝐸1𝑖E_{1}^{i}italic_E start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_i end_POSTSUPERSCRIPT be the event ri0subscript𝑟𝑖0r_{i}\neq 0italic_r start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT ≠ 0. We have Pr[Ei,j]=Pr[Ei,j|E0i]Pr[E0i]+Pr[E|E1i]Pr[E1i]=0Pr[E0i]+1Pr[E1i]=Pr[E1i]=1Pr[E0i]𝑃𝑟delimited-[]superscript𝐸𝑖𝑗𝑃𝑟delimited-[]conditionalsuperscript𝐸𝑖𝑗superscriptsubscript𝐸0𝑖𝑃𝑟delimited-[]superscriptsubscript𝐸0𝑖𝑃𝑟delimited-[]conditional𝐸superscriptsubscript𝐸1𝑖𝑃𝑟delimited-[]superscriptsubscript𝐸1𝑖0𝑃𝑟delimited-[]superscriptsubscript𝐸0𝑖1𝑃𝑟delimited-[]superscriptsubscript𝐸1𝑖𝑃𝑟delimited-[]superscriptsubscript𝐸1𝑖1𝑃𝑟delimited-[]superscriptsubscript𝐸0𝑖Pr[E^{i,j}]=Pr[E^{i,j}|E_{0}^{i}]\cdot Pr[E_{0}^{i}]+Pr[E|E_{1}^{i}]\cdot Pr[E% _{1}^{i}]=0\cdot Pr[E_{0}^{i}]+1\cdot Pr[E_{1}^{i}]=Pr[E_{1}^{i}]=1-Pr[E_{0}^{% i}]italic_P italic_r [ italic_E start_POSTSUPERSCRIPT italic_i , italic_j end_POSTSUPERSCRIPT ] = italic_P italic_r [ italic_E start_POSTSUPERSCRIPT italic_i , italic_j end_POSTSUPERSCRIPT | italic_E start_POSTSUBSCRIPT 0 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_i end_POSTSUPERSCRIPT ] ⋅ italic_P italic_r [ italic_E start_POSTSUBSCRIPT 0 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_i end_POSTSUPERSCRIPT ] + italic_P italic_r [ italic_E | italic_E start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_i end_POSTSUPERSCRIPT ] ⋅ italic_P italic_r [ italic_E start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_i end_POSTSUPERSCRIPT ] = 0 ⋅ italic_P italic_r [ italic_E start_POSTSUBSCRIPT 0 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_i end_POSTSUPERSCRIPT ] + 1 ⋅ italic_P italic_r [ italic_E start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_i end_POSTSUPERSCRIPT ] = italic_P italic_r [ italic_E start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_i end_POSTSUPERSCRIPT ] = 1 - italic_P italic_r [ italic_E start_POSTSUBSCRIPT 0 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_i end_POSTSUPERSCRIPT ]. To bound the correctness error by 2σsuperscript2𝜎2^{-\sigma}2 start_POSTSUPERSCRIPT - italic_σ end_POSTSUPERSCRIPT, we require that the probability of any E0isuperscriptsubscript𝐸0𝑖E_{0}^{i}italic_E start_POSTSUBSCRIPT 0 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_i end_POSTSUPERSCRIPT occurring is negligible. By union bound, Pr[iE0i]iPr[E0i]=|𝖮𝖱||𝔽|𝑃𝑟delimited-[]subscript𝑖superscriptsubscript𝐸0𝑖subscript𝑖𝑃𝑟delimited-[]superscriptsubscript𝐸0𝑖𝖮𝖱𝔽Pr[\bigvee_{i}E_{0}^{i}]\leq\sum_{i}Pr[E_{0}^{i}]=\frac{\lvert\mathsf{OR}% \rvert}{\lvert\mathbb{F}\rvert}italic_P italic_r [ ⋁ start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT italic_E start_POSTSUBSCRIPT 0 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_i end_POSTSUPERSCRIPT ] ≤ ∑ start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT italic_P italic_r [ italic_E start_POSTSUBSCRIPT 0 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_i end_POSTSUPERSCRIPT ] = divide start_ARG | sansserif_OR | end_ARG start_ARG | blackboard_F | end_ARG. Therefore, we set the field size |𝔽||𝖮𝖱|2σ𝔽𝖮𝖱superscript2𝜎\lvert\mathbb{F}\rvert\geq\lvert\mathsf{OR}\rvert\cdot 2^{\sigma}| blackboard_F | ≥ | sansserif_OR | ⋅ 2 start_POSTSUPERSCRIPT italic_σ end_POSTSUPERSCRIPT, where |𝖮𝖱|𝖮𝖱\lvert\mathsf{OR}\rvert| sansserif_OR | is the number of 𝖮𝖱𝖮𝖱\mathsf{OR}sansserif_OR operators in Q𝑄Qitalic_Q.

      The above correctness of implementing 𝖠𝖭𝖣𝖠𝖭𝖣\mathsf{AND}sansserif_AND and 𝖮𝖱𝖮𝖱\mathsf{OR}sansserif_OR operators in each step ensures the correctness of generating a relaxed predicative compound zero-sharing for Q𝑄Qitalic_Q. 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 Q𝑄Qitalic_Q.

    • 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: m𝑚mitalic_m parties P1,Pmsubscript𝑃1subscript𝑃𝑚P_{1},\cdots P_{m}italic_P start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , ⋯ italic_P start_POSTSUBSCRIPT italic_m end_POSTSUBSCRIPT with inputs x=(x1,,xm)xsubscript𝑥1subscript𝑥𝑚\textbf{x}=(x_{1},\cdots,x_{m})x = ( italic_x start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , ⋯ , italic_x start_POSTSUBSCRIPT italic_m end_POSTSUBSCRIPT ). A field 𝔽𝔽\mathbb{F}blackboard_F. A simple/compound predicate Q𝑄Qitalic_Q composed of q𝑞qitalic_q literals Q1,,Qqsubscript𝑄1subscript𝑄𝑞Q_{1},\cdots,Q_{q}italic_Q start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , ⋯ , italic_Q start_POSTSUBSCRIPT italic_q end_POSTSUBSCRIPT (q1𝑞1q\geq 1italic_q ≥ 1) and logical connectives. A Beaver triple ([a],[b],[c])delimited-[]𝑎delimited-[]𝑏delimited-[]𝑐([a],[b],[c])( [ italic_a ] , [ italic_b ] , [ italic_c ] ) generated in the offline phrase.

    • Protocol:

      1. 1.

        The simple predicative sharing stage. In this stage, the parties invoke 𝗋𝖯𝖹𝖲Qisuperscriptsubscript𝗋𝖯𝖹𝖲subscript𝑄𝑖\mathcal{F}_{\mathsf{rPZS}}^{Q_{i}}caligraphic_F start_POSTSUBSCRIPT sansserif_rPZS end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_Q start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT end_POSTSUPERSCRIPT for each literal Qisubscript𝑄𝑖Q_{i}italic_Q start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT, 1iq1𝑖𝑞1\leq i\leq q1 ≤ italic_i ≤ italic_q. If Qisubscript𝑄𝑖Q_{i}italic_Q start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT does not involve all the parties, then the uninvolved parties set their secret shares to 0. As a result, each Qisubscript𝑄𝑖Q_{i}italic_Q start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT has a corresponding secret-sharing among the parties.

      2. 2.

        The formula emulation stage. If q>1𝑞1q>1italic_q > 1, the parties collectively emulate the computation of Q𝑄Qitalic_Q 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 Qisubscriptsuperscript𝑄𝑖Q^{\prime}_{i}italic_Q start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT and Qjsubscriptsuperscript𝑄𝑗Q^{\prime}_{j}italic_Q start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT, which they obtain from previous steps. The actions of parties depend on the type of operator being computed:

        • 𝖠𝖭𝖣𝖠𝖭𝖣\mathsf{AND}sansserif_AND operator: Suppose the parties hold two secret-sharings [ri]delimited-[]subscript𝑟𝑖[r_{i}][ italic_r start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT ] and [rj]delimited-[]subscript𝑟𝑗[r_{j}][ italic_r start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT ] associated with Qisubscriptsuperscript𝑄𝑖Q^{\prime}_{i}italic_Q start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT and Qjsubscriptsuperscript𝑄𝑗Q^{\prime}_{j}italic_Q start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT respectively. They want to compute a relaxed predicative zero-sharing for Qsuperscript𝑄Q^{\prime}italic_Q start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT, where Q(x)=Qi(x)Qj(x)superscript𝑄xsubscriptsuperscript𝑄𝑖xsubscriptsuperscript𝑄𝑗xQ^{\prime}(\textbf{x})=Q^{\prime}_{i}(\textbf{x})\land Q^{\prime}_{j}(\textbf{% x})italic_Q start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT ( x ) = italic_Q start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT ( x ) ∧ italic_Q start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT ( x ). All they need to do is to locally add two shares to obtain the secret-sharing [ri+rj]delimited-[]subscript𝑟𝑖subscript𝑟𝑗[r_{i}+r_{j}][ italic_r start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT + italic_r start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT ].

        • 𝖮𝖱𝖮𝖱\mathsf{OR}sansserif_OR operator: Suppose the parties hold two secret-sharings [ri]delimited-[]subscript𝑟𝑖[r_{i}][ italic_r start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT ] and [rj]delimited-[]subscript𝑟𝑗[r_{j}][ italic_r start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT ] associated with Qisubscriptsuperscript𝑄𝑖Q^{\prime}_{i}italic_Q start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT and Qjsubscriptsuperscript𝑄𝑗Q^{\prime}_{j}italic_Q start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT respectively. They want to compute a relaxed predicative zero-sharing for Qsuperscript𝑄Q^{\prime}italic_Q start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT, where Q(x)=Qi(x)Qj(x)superscript𝑄xsubscriptsuperscript𝑄𝑖xsubscriptsuperscript𝑄𝑗xQ^{\prime}(\textbf{x})=Q^{\prime}_{i}(\textbf{x})\lor Q^{\prime}_{j}(\textbf{x})italic_Q start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT ( x ) = italic_Q start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT ( x ) ∨ italic_Q start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT ( x ). Then they perform a secure multiplication [rirj]=[ri][rj]delimited-[]subscript𝑟𝑖subscript𝑟𝑗delimited-[]subscript𝑟𝑖delimited-[]subscript𝑟𝑗[r_{i}\cdot r_{j}]=[r_{i}]\cdot[r_{j}][ italic_r start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT ⋅ italic_r start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT ] = [ italic_r start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT ] ⋅ [ italic_r start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT ].

        After obtaining the secret-sharing associated with Qsuperscript𝑄Q^{\prime}italic_Q start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT, the parties regard Qsuperscript𝑄Q^{\prime}italic_Q start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT as a new literal, and repeat the above process until there is only one literal in Q𝑄Qitalic_Q. The secret-sharing [r]delimited-[]𝑟[r][ italic_r ] associated with the ultimate literal held by the parties is the relaxed compound predicative zero-sharing for Q𝑄Qitalic_Q.

      3. 3.

        Transformation from relaxed to standard. All parties compute [s]delimited-[]𝑠[s][ italic_s ] by performing a secure multiplication [s]=[r][b]delimited-[]𝑠delimited-[]𝑟delimited-[]𝑏[s]=[r]\cdot[b][ italic_s ] = [ italic_r ] ⋅ [ italic_b ], which requires one reconstruction in the online phase using Beaver triple technique (c.f. Appendix 0.E).

    Figure 7: Predicative Zero-Sharing Π𝖯𝖹𝖲QsuperscriptsubscriptΠ𝖯𝖹𝖲𝑄\Pi_{\mathsf{PZS}}^{Q}roman_Π start_POSTSUBSCRIPT sansserif_PZS end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_Q end_POSTSUPERSCRIPT

    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 xY𝑥𝑌x\in Yitalic_x ∈ italic_Y and the negations xY𝑥𝑌x\notin Yitalic_x ∉ italic_Y, the task reduces to constructing two relaxed membership zero-sharing protocols, associated with xY𝑥𝑌x\in Yitalic_x ∈ italic_Y and xY𝑥𝑌x\notin Yitalic_x ∉ italic_Y respectively, in the two-party setting. The technical route is outlined in Figure 8.

    batch OPPRFbatch ssPMTROT Relaxed Membership Zero-Sharing for xY𝑥𝑌x\in Yitalic_x ∈ italic_Y Relaxed Membership Zero-Sharing for xY𝑥𝑌x\notin Yitalic_x ∉ italic_Y Relaxed Membership Zero-Sharing for any set predicate formula Q𝑄Qitalic_Q Membership Zero-Sharing for any set predicate formula Q𝑄Qitalic_Q composition techniquetransformation technique
    Figure 8: Technical route of building membership zero-sharing protocols for any first-order set predicate formulas. The newly introduced primitives are marked with solid boxes. The existing primitives are marked with dashed boxes.

    5.1 Membership Zero-Sharing

    A membership zero-sharing protocol allows m𝑚mitalic_m parties (m2)𝑚2(m\geq 2)( italic_m ≥ 2 ), where one party (denoted as P𝗉𝗂𝗏𝗈𝗍subscript𝑃𝗉𝗂𝗏𝗈𝗍P_{\mathsf{pivot}}italic_P start_POSTSUBSCRIPT sansserif_pivot end_POSTSUBSCRIPT) holds an element x𝑥xitalic_x while each of the others Pjsubscript𝑃𝑗P_{j}italic_P start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT holds a set Xjsubscript𝑋𝑗X_{j}italic_X start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT (j{1,,m}{𝗉𝗂𝗏𝗈𝗍}𝑗1𝑚𝗉𝗂𝗏𝗈𝗍j\in\{1,\cdots,m\}\setminus\{\mathsf{pivot}\}italic_j ∈ { 1 , ⋯ , italic_m } ∖ { sansserif_pivot }) as input. If the associated set predicate formula Q(x,X1,,X𝗉𝗂𝗏𝗈𝗍1,X𝗉𝗂𝗏𝗈𝗍+1,,Xm)=1𝑄𝑥subscript𝑋1subscript𝑋𝗉𝗂𝗏𝗈𝗍1subscript𝑋𝗉𝗂𝗏𝗈𝗍1subscript𝑋𝑚1Q(x,X_{1},\cdots,X_{\mathsf{pivot}-1},X_{\mathsf{pivot}+1},\cdots,X_{m})=1italic_Q ( italic_x , italic_X start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , ⋯ , italic_X start_POSTSUBSCRIPT sansserif_pivot - 1 end_POSTSUBSCRIPT , italic_X start_POSTSUBSCRIPT sansserif_pivot + 1 end_POSTSUBSCRIPT , ⋯ , italic_X start_POSTSUBSCRIPT italic_m end_POSTSUBSCRIPT ) = 1, 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: m𝑚mitalic_m parties P1,Pmsubscript𝑃1subscript𝑃𝑚P_{1},\cdots P_{m}italic_P start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , ⋯ italic_P start_POSTSUBSCRIPT italic_m end_POSTSUBSCRIPT, where P𝗉𝗂𝗏𝗈𝗍subscript𝑃𝗉𝗂𝗏𝗈𝗍P_{\mathsf{pivot}}italic_P start_POSTSUBSCRIPT sansserif_pivot end_POSTSUBSCRIPT is the only one holding an element instead of a set. A set predicate formula Q𝑄Qitalic_Q. A field 𝔽𝔽\mathbb{F}blackboard_F.

    • Functionality: On input x𝑥xitalic_x from P𝗉𝗂𝗏𝗈𝗍subscript𝑃𝗉𝗂𝗏𝗈𝗍P_{\mathsf{pivot}}italic_P start_POSTSUBSCRIPT sansserif_pivot end_POSTSUBSCRIPT, Xjsubscript𝑋𝑗X_{j}italic_X start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT from each Pjsubscript𝑃𝑗P_{j}italic_P start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT (j{1,m}{𝗉𝗂𝗏𝗈𝗍}𝑗1𝑚𝗉𝗂𝗏𝗈𝗍j\in\{1,\cdots m\}\setminus\{\mathsf{pivot}\}italic_j ∈ { 1 , ⋯ italic_m } ∖ { sansserif_pivot }), sample si𝔽subscript𝑠𝑖𝔽s_{i}\leftarrow\mathbb{F}italic_s start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT ← blackboard_F for 1im1𝑖𝑚1\leq i\leq m1 ≤ italic_i ≤ italic_m s.t. if Q(x,X1,,X𝗉𝗂𝗏𝗈𝗍1,X𝗉𝗂𝗏𝗈𝗍+1,,Xm)=1𝑄𝑥subscript𝑋1subscript𝑋𝗉𝗂𝗏𝗈𝗍1subscript𝑋𝗉𝗂𝗏𝗈𝗍1subscript𝑋𝑚1Q(x,X_{1},\cdots,X_{\mathsf{pivot}-1},X_{\mathsf{pivot}+1},\cdots,X_{m})=1italic_Q ( italic_x , italic_X start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , ⋯ , italic_X start_POSTSUBSCRIPT sansserif_pivot - 1 end_POSTSUBSCRIPT , italic_X start_POSTSUBSCRIPT sansserif_pivot + 1 end_POSTSUBSCRIPT , ⋯ , italic_X start_POSTSUBSCRIPT italic_m end_POSTSUBSCRIPT ) = 1, 1imsi=0subscript1𝑖𝑚subscript𝑠𝑖0\sum_{1\leq i\leq m}s_{i}=0∑ start_POSTSUBSCRIPT 1 ≤ italic_i ≤ italic_m end_POSTSUBSCRIPT italic_s start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT = 0. Give sisubscript𝑠𝑖s_{i}italic_s start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT to Pisubscript𝑃𝑖P_{i}italic_P start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT.

    Figure 9: Membership Zero-Sharing Functionality 𝖬𝖹𝖲Qsuperscriptsubscript𝖬𝖹𝖲𝑄\mathcal{F}_{\mathsf{MZS}}^{Q}caligraphic_F start_POSTSUBSCRIPT sansserif_MZS end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_Q end_POSTSUPERSCRIPT

    A batched version of membership zero-sharing is defined in Figure 10, where P𝗉𝗂𝗏𝗈𝗍subscript𝑃𝗉𝗂𝗏𝗈𝗍P_{\mathsf{pivot}}italic_P start_POSTSUBSCRIPT sansserif_pivot end_POSTSUBSCRIPT holds a vector x=(x1,,xn)xsubscript𝑥1subscript𝑥𝑛\textbf{x}=(x_{1},\cdots,x_{n})x = ( italic_x start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , ⋯ , italic_x start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT ) and each Pjsubscript𝑃𝑗P_{j}italic_P start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT holds n𝑛nitalic_n sets as inputs. The parties obtain n𝑛nitalic_n secret-sharings, where the i𝑖iitalic_i-th secret-sharing indicates the truth-value of the same formula Q𝑄Qitalic_Q evaluated on their i𝑖iitalic_i-th inputs. In particular, if Q𝑄Qitalic_Q is a conjunction of m1𝑚1m-1italic_m - 1 set membership predicates (i.e., j{1,,m}{𝗉𝗂𝗏𝗈𝗍}xXjsubscript𝑗1𝑚𝗉𝗂𝗏𝗈𝗍𝑥subscript𝑋𝑗\bigwedge_{j\in\{1,\cdots,m\}\setminus\{\mathsf{pivot}\}}x\in X_{j}⋀ start_POSTSUBSCRIPT italic_j ∈ { 1 , ⋯ , italic_m } ∖ { sansserif_pivot } end_POSTSUBSCRIPT italic_x ∈ italic_X start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT), we refer to it as batch pure membership zero-sharing; if Q𝑄Qitalic_Q is a conjunction of m1𝑚1m-1italic_m - 1 set non-membership predicates (i.e., j{1,,m}{𝗉𝗂𝗏𝗈𝗍}xXjsubscript𝑗1𝑚𝗉𝗂𝗏𝗈𝗍𝑥subscript𝑋𝑗\bigwedge_{j\in\{1,\cdots,m\}\setminus\{\mathsf{pivot}\}}x\notin X_{j}⋀ start_POSTSUBSCRIPT italic_j ∈ { 1 , ⋯ , italic_m } ∖ { sansserif_pivot } end_POSTSUBSCRIPT italic_x ∉ italic_X start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT), we refer to it as batch pure non-membership zero-sharing. We use 𝖻𝗉𝖬𝖹𝖲subscript𝖻𝗉𝖬𝖹𝖲\mathcal{F}_{\mathsf{bpMZS}}caligraphic_F start_POSTSUBSCRIPT sansserif_bpMZS end_POSTSUBSCRIPT and 𝖻𝗉𝖭𝖬𝖹𝖲subscript𝖻𝗉𝖭𝖬𝖹𝖲\mathcal{F}_{\mathsf{bpNMZS}}caligraphic_F start_POSTSUBSCRIPT sansserif_bpNMZS end_POSTSUBSCRIPT 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 P𝗉𝗂𝗏𝗈𝗍subscript𝑃𝗉𝗂𝗏𝗈𝗍P_{\mathsf{pivot}}italic_P start_POSTSUBSCRIPT sansserif_pivot end_POSTSUBSCRIPT holds an element x𝑥xitalic_x 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., x𝑥xitalic_x belongs to all element sets), the parties receive secret shares of 0 and secret shares of the sum of all payloads associated with x𝑥xitalic_x; otherwise they receive secret shares of two random values. The ideal functionality of batch pure membership zero-sharing with payloads 𝖻𝗉𝖬𝖹𝖲𝗉subscript𝖻𝗉𝖬𝖹𝖲𝗉\mathcal{F}_{\mathsf{bpMZSp}}caligraphic_F start_POSTSUBSCRIPT sansserif_bpMZSp end_POSTSUBSCRIPT is given in Figure 11, with further details also found in Appendix 0.F.

    • Parameters: m𝑚mitalic_m parties P1,Pmsubscript𝑃1subscript𝑃𝑚P_{1},\cdots P_{m}italic_P start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , ⋯ italic_P start_POSTSUBSCRIPT italic_m end_POSTSUBSCRIPT, where P𝗉𝗂𝗏𝗈𝗍subscript𝑃𝗉𝗂𝗏𝗈𝗍P_{\mathsf{pivot}}italic_P start_POSTSUBSCRIPT sansserif_pivot end_POSTSUBSCRIPT is the only one holding n𝑛nitalic_n elements instead of n𝑛nitalic_n sets. A set membership predicate formula Q𝑄Qitalic_Q. Batch size n𝑛nitalic_n. A field 𝔽𝔽\mathbb{F}blackboard_F.

    • Functionality: On input x=(x1,,xn)xsubscript𝑥1subscript𝑥𝑛\textbf{x}=(x_{1},\cdots,x_{n})x = ( italic_x start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , ⋯ , italic_x start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT ) from P𝗉𝗂𝗏𝗈𝗍subscript𝑃𝗉𝗂𝗏𝗈𝗍P_{\mathsf{pivot}}italic_P start_POSTSUBSCRIPT sansserif_pivot end_POSTSUBSCRIPT and Xj=(Xj,1,,Xj,n)subscriptX𝑗subscript𝑋𝑗1subscript𝑋𝑗𝑛\textbf{X}_{j}=(X_{j,1},\cdots,X_{j,n})X start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT = ( italic_X start_POSTSUBSCRIPT italic_j , 1 end_POSTSUBSCRIPT , ⋯ , italic_X start_POSTSUBSCRIPT italic_j , italic_n end_POSTSUBSCRIPT ) from each Pjsubscript𝑃𝑗P_{j}italic_P start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT (j{1,,m}{𝗉𝗂𝗏𝗈𝗍}𝑗1𝑚𝗉𝗂𝗏𝗈𝗍j\in\{1,\cdots,m\}\setminus\{\mathsf{pivot}\}italic_j ∈ { 1 , ⋯ , italic_m } ∖ { sansserif_pivot }), sample si=(si,1,,si,n)𝔽nsubscripts𝑖subscript𝑠𝑖1subscript𝑠𝑖𝑛superscript𝔽𝑛\textbf{s}_{i}=(s_{i,1},\cdots,s_{i,n})\leftarrow\mathbb{F}^{n}s start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT = ( italic_s start_POSTSUBSCRIPT italic_i , 1 end_POSTSUBSCRIPT , ⋯ , italic_s start_POSTSUBSCRIPT italic_i , italic_n end_POSTSUBSCRIPT ) ← blackboard_F start_POSTSUPERSCRIPT italic_n end_POSTSUPERSCRIPT for 1im1𝑖𝑚1\leq i\leq m1 ≤ italic_i ≤ italic_m, s.t. for 1dn1𝑑𝑛1\leq d\leq n1 ≤ italic_d ≤ italic_n, if Q(xd,X1,d,X𝗉𝗂𝗏𝗈𝗍1,d,X𝗉𝗂𝗏𝗈𝗍+1,d,,Xm,d)=1𝑄subscript𝑥𝑑subscript𝑋1𝑑subscript𝑋𝗉𝗂𝗏𝗈𝗍1𝑑subscript𝑋𝗉𝗂𝗏𝗈𝗍1𝑑subscript𝑋𝑚𝑑1Q(x_{d},X_{1,d},X_{\mathsf{pivot}-1,d},X_{\mathsf{pivot}+1,d},\cdots,X_{m,d})=1italic_Q ( italic_x start_POSTSUBSCRIPT italic_d end_POSTSUBSCRIPT , italic_X start_POSTSUBSCRIPT 1 , italic_d end_POSTSUBSCRIPT , italic_X start_POSTSUBSCRIPT sansserif_pivot - 1 , italic_d end_POSTSUBSCRIPT , italic_X start_POSTSUBSCRIPT sansserif_pivot + 1 , italic_d end_POSTSUBSCRIPT , ⋯ , italic_X start_POSTSUBSCRIPT italic_m , italic_d end_POSTSUBSCRIPT ) = 1, 1im,1dnsi,d=0subscriptformulae-sequence1𝑖𝑚1𝑑𝑛subscript𝑠𝑖𝑑0\sum_{1\leq i\leq m,1\leq d\leq n}s_{i,d}=0∑ start_POSTSUBSCRIPT 1 ≤ italic_i ≤ italic_m , 1 ≤ italic_d ≤ italic_n end_POSTSUBSCRIPT italic_s start_POSTSUBSCRIPT italic_i , italic_d end_POSTSUBSCRIPT = 0. Give sisubscripts𝑖\textbf{s}_{i}s start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT to Pisubscript𝑃𝑖P_{i}italic_P start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT.

    Figure 10: Batch Membership Zero-Sharing Functionality 𝖻𝖬𝖹𝖲Qsuperscriptsubscript𝖻𝖬𝖹𝖲𝑄\mathcal{F}_{\mathsf{bMZS}}^{Q}caligraphic_F start_POSTSUBSCRIPT sansserif_bMZS end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_Q end_POSTSUPERSCRIPT
    • Parameters: m𝑚mitalic_m parties P1,Pmsubscript𝑃1subscript𝑃𝑚P_{1},\cdots P_{m}italic_P start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , ⋯ italic_P start_POSTSUBSCRIPT italic_m end_POSTSUBSCRIPT, where P𝗉𝗂𝗏𝗈𝗍subscript𝑃𝗉𝗂𝗏𝗈𝗍P_{\mathsf{pivot}}italic_P start_POSTSUBSCRIPT sansserif_pivot end_POSTSUBSCRIPT is the only one holding n𝑛nitalic_n elements instead of 2n2𝑛2n2 italic_n sets. Batch size n𝑛nitalic_n. A field 𝔽𝔽\mathbb{F}blackboard_F and payload field 𝔽superscript𝔽\mathbb{F^{\prime}}blackboard_F start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT. The mapping function 𝗉𝖺𝗒𝗅𝗈𝖺𝖽j()subscript𝗉𝖺𝗒𝗅𝗈𝖺𝖽𝑗\mathsf{payload}_{j}()sansserif_payload start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT ( ) from element sets XjsubscriptX𝑗\textbf{X}_{j}X start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT to the associated payload sets VjsubscriptV𝑗\textbf{V}_{j}V start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT.

    • Functionality: On input x=(x1,,xn)xsubscript𝑥1subscript𝑥𝑛\textbf{x}=(x_{1},\cdots,x_{n})x = ( italic_x start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , ⋯ , italic_x start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT ) from P𝗉𝗂𝗏𝗈𝗍subscript𝑃𝗉𝗂𝗏𝗈𝗍P_{\mathsf{pivot}}italic_P start_POSTSUBSCRIPT sansserif_pivot end_POSTSUBSCRIPT, Xj=(Xj,1,,Xj,n)subscriptX𝑗subscript𝑋𝑗1subscript𝑋𝑗𝑛\textbf{X}_{j}=(X_{j,1},\cdots,X_{j,n})X start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT = ( italic_X start_POSTSUBSCRIPT italic_j , 1 end_POSTSUBSCRIPT , ⋯ , italic_X start_POSTSUBSCRIPT italic_j , italic_n end_POSTSUBSCRIPT ) and Vj=(Vj,1,,Vj,n)subscriptV𝑗subscript𝑉𝑗1subscript𝑉𝑗𝑛\textbf{V}_{j}=(V_{j,1},\cdots,V_{j,n})V start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT = ( italic_V start_POSTSUBSCRIPT italic_j , 1 end_POSTSUBSCRIPT , ⋯ , italic_V start_POSTSUBSCRIPT italic_j , italic_n end_POSTSUBSCRIPT ) from each Pjsubscript𝑃𝑗P_{j}italic_P start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT (j{1,m}{𝗉𝗂𝗏𝗈𝗍}𝑗1𝑚𝗉𝗂𝗏𝗈𝗍j\in\{1,\cdots m\}\setminus\{\mathsf{pivot}\}italic_j ∈ { 1 , ⋯ italic_m } ∖ { sansserif_pivot }), sample si=(si,1,,si,n)𝔽n,wi=(sw,1,,sw,n)𝔽nformulae-sequencesubscripts𝑖subscript𝑠𝑖1subscript𝑠𝑖𝑛superscript𝔽𝑛subscriptw𝑖subscript𝑠𝑤1subscript𝑠𝑤𝑛superscriptsuperscript𝔽𝑛\textbf{s}_{i}=(s_{i,1},\cdots,s_{i,n})\leftarrow\mathbb{F}^{n},\textbf{w}_{i}% =(s_{w,1},\cdots,s_{w,n})\leftarrow\mathbb{F^{\prime}}^{n}s start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT = ( italic_s start_POSTSUBSCRIPT italic_i , 1 end_POSTSUBSCRIPT , ⋯ , italic_s start_POSTSUBSCRIPT italic_i , italic_n end_POSTSUBSCRIPT ) ← blackboard_F start_POSTSUPERSCRIPT italic_n end_POSTSUPERSCRIPT , w start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT = ( italic_s start_POSTSUBSCRIPT italic_w , 1 end_POSTSUBSCRIPT , ⋯ , italic_s start_POSTSUBSCRIPT italic_w , italic_n end_POSTSUBSCRIPT ) ← blackboard_F start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT start_POSTSUPERSCRIPT italic_n end_POSTSUPERSCRIPT for 1im1𝑖𝑚1\leq i\leq m1 ≤ italic_i ≤ italic_m, s.t. for 1dn1𝑑𝑛1\leq d\leq n1 ≤ italic_d ≤ italic_n, if j{1,,m}{𝗉𝗂𝗏𝗈𝗍}(xdXj,d)=1subscript𝑗1𝑚𝗉𝗂𝗏𝗈𝗍subscript𝑥𝑑subscript𝑋𝑗𝑑1\bigwedge_{j\in\{1,\cdots,m\}\setminus\{\mathsf{pivot}\}}(x_{d}\in X_{j,d})=1⋀ start_POSTSUBSCRIPT italic_j ∈ { 1 , ⋯ , italic_m } ∖ { sansserif_pivot } end_POSTSUBSCRIPT ( italic_x start_POSTSUBSCRIPT italic_d end_POSTSUBSCRIPT ∈ italic_X start_POSTSUBSCRIPT italic_j , italic_d end_POSTSUBSCRIPT ) = 1, 1imsi,d=0subscript1𝑖𝑚subscript𝑠𝑖𝑑0\sum_{1\leq i\leq m}s_{i,d}=0∑ start_POSTSUBSCRIPT 1 ≤ italic_i ≤ italic_m end_POSTSUBSCRIPT italic_s start_POSTSUBSCRIPT italic_i , italic_d end_POSTSUBSCRIPT = 0 and 1imwi,d=j{1,,m}{𝗉𝗂𝗏𝗈𝗍}vj,dsubscript1𝑖𝑚subscript𝑤𝑖𝑑subscript𝑗1𝑚𝗉𝗂𝗏𝗈𝗍subscript𝑣𝑗𝑑\sum_{1\leq i\leq m}w_{i,d}=\sum_{j\in\{1,\cdots,m\}\setminus\{\mathsf{pivot}% \}}v_{j,d}∑ start_POSTSUBSCRIPT 1 ≤ italic_i ≤ italic_m end_POSTSUBSCRIPT italic_w start_POSTSUBSCRIPT italic_i , italic_d end_POSTSUBSCRIPT = ∑ start_POSTSUBSCRIPT italic_j ∈ { 1 , ⋯ , italic_m } ∖ { sansserif_pivot } end_POSTSUBSCRIPT italic_v start_POSTSUBSCRIPT italic_j , italic_d end_POSTSUBSCRIPT, where vj,d=𝗉𝖺𝗒𝗅𝗈𝖺𝖽j(xd)Vj,dsubscript𝑣𝑗𝑑subscript𝗉𝖺𝗒𝗅𝗈𝖺𝖽𝑗subscript𝑥𝑑subscript𝑉𝑗𝑑v_{j,d}=\mathsf{payload}_{j}(x_{d})\in V_{j,d}italic_v start_POSTSUBSCRIPT italic_j , italic_d end_POSTSUBSCRIPT = sansserif_payload start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT ( italic_x start_POSTSUBSCRIPT italic_d end_POSTSUBSCRIPT ) ∈ italic_V start_POSTSUBSCRIPT italic_j , italic_d end_POSTSUBSCRIPT. Give (si,wi)subscripts𝑖subscriptw𝑖(\textbf{s}_{i},\textbf{w}_{i})( s start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT , w start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT ) to Pisubscript𝑃𝑖P_{i}italic_P start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT.

    Figure 11: Batch Pure Membership Zero-Sharing with Payloads Functionality 𝖻𝗉𝖬𝖹𝖲𝗉subscript𝖻𝗉𝖬𝖹𝖲𝗉\mathcal{F}_{\mathsf{bpMZSp}}caligraphic_F start_POSTSUBSCRIPT sansserif_bpMZSp end_POSTSUBSCRIPT

    5.2 Relaxed Membership Zero-Sharing for Set Membership Predicate

    A class of relaxed membership zero-sharing for set membership predicate xY𝑥𝑌x\in Yitalic_x ∈ italic_Y can be defined as a two-party functionality as follows: There are two parties, the sender 𝒮𝒮\mathcal{S}caligraphic_S with a set Y𝑌Yitalic_Y and the receiver \mathcal{R}caligraphic_R with an element x𝑥xitalic_x. The functionality samples s,r𝔽𝑠𝑟𝔽s,r\leftarrow\mathbb{F}italic_s , italic_r ← blackboard_F and if xY𝑥𝑌x\in Yitalic_x ∈ italic_Y, sets u=r𝑢𝑟u=-ritalic_u = - italic_r, otherwise u=sr𝑢𝑠𝑟u=s-ritalic_u = italic_s - italic_r. It also generates an auxiliary information 𝗁𝗂𝗇𝗍𝗁𝗂𝗇𝗍\mathsf{hint}sansserif_hint based on s𝑠sitalic_s and outputs r,𝗁𝗂𝗇𝗍𝑟𝗁𝗂𝗇𝗍r,\mathsf{hint}italic_r , sansserif_hint to 𝒮𝒮\mathcal{S}caligraphic_S and u𝑢uitalic_u to \mathcal{R}caligraphic_R. The 𝗁𝗂𝗇𝗍𝗁𝗂𝗇𝗍\mathsf{hint}sansserif_hint is part of the syntax that allows for some leakage of the secret s𝑠sitalic_s to 𝒮𝒮\mathcal{S}caligraphic_S when xY𝑥𝑌x\notin Yitalic_x ∉ italic_Y, capturing the security relaxation in relaxed predicative zero-sharing.

    We construct this protocol using OPPRF: 𝒮𝒮\mathcal{S}caligraphic_S samples a uniform r𝑟ritalic_r, and sets Y𝑌Yitalic_Y as the key set and n𝑛nitalic_n repeated values r𝑟-r- italic_r as the value set. Then 𝒮𝒮\mathcal{S}caligraphic_S and \mathcal{R}caligraphic_R invoke OPPRF, where \mathcal{R}caligraphic_R inputs x𝑥xitalic_x and receives u𝑢uitalic_u. In the end, 𝒮𝒮\mathcal{S}caligraphic_S and \mathcal{R}caligraphic_R outputs r𝑟ritalic_r and u𝑢uitalic_u respectively. By the OPPRF functionality, if xY𝑥𝑌x\in Yitalic_x ∈ italic_Y, u=r𝑢𝑟u=-ritalic_u = - italic_r, otherwise u𝑢uitalic_u is pseudorandom. The 𝗁𝗂𝗇𝗍𝗁𝗂𝗇𝗍\mathsf{hint}sansserif_hint outputted to 𝒮𝒮\mathcal{S}caligraphic_S 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 xY𝑥𝑌x\notin Yitalic_x ∉ italic_Y can be defined as a two-party functionality as follows: The sender 𝒮𝒮\mathcal{S}caligraphic_S inputs a set Y𝑌Yitalic_Y while the receiver \mathcal{R}caligraphic_R inputs x𝑥xitalic_x. The functionality samples s,r𝔽𝑠𝑟𝔽s,r\leftarrow\mathbb{F}italic_s , italic_r ← blackboard_F and if xY𝑥𝑌x\notin Yitalic_x ∉ italic_Y, sets u=r𝑢𝑟u=-ritalic_u = - italic_r, otherwise u=sr𝑢𝑠𝑟u=s-ritalic_u = italic_s - italic_r. It also generates an auxiliary information 𝗁𝗂𝗇𝗍𝗁𝗂𝗇𝗍\mathsf{hint}sansserif_hint based on s𝑠sitalic_s and outputs r,𝗁𝗂𝗇𝗍𝑟𝗁𝗂𝗇𝗍r,\mathsf{hint}italic_r , sansserif_hint to 𝒮𝒮\mathcal{S}caligraphic_S and u𝑢uitalic_u to \mathcal{R}caligraphic_R.

    Intuitively, this functionality shares similarities with the ssPMT — both yield secret shares of 0 when xY𝑥𝑌x\notin Yitalic_x ∉ italic_Y. The key difference lies in that it outputs a zero-sharing over a field 𝔽𝔽\mathbb{F}blackboard_F, where the opposite of a secret-sharing of 0 is a secret-sharing of a random value in 𝔽𝔽\mathbb{F}blackboard_F, while ssPMT outputs a bit secret-sharing over 𝔽2subscript𝔽2\mathbb{F}_{2}blackboard_F start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT, 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 n𝑛nitalic_n transformations).

    Recall that in Section 4.1, ROT is considered as a relaxed simple predicative zero-sharing associated with the predicate e=0𝑒0e=0italic_e = 0. A variant of ROT, involving two choice bits e0,e1subscript𝑒0subscript𝑒1e_{0},e_{1}italic_e start_POSTSUBSCRIPT 0 end_POSTSUBSCRIPT , italic_e start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT held by 𝒮𝒮\mathcal{S}caligraphic_S and \mathcal{R}caligraphic_R respectively [40, 35, 19], is a relaxed simple predicative zero-sharing with the associated predicate e0e1=0direct-sumsubscript𝑒0subscript𝑒10e_{0}\oplus e_{1}=0italic_e start_POSTSUBSCRIPT 0 end_POSTSUBSCRIPT ⊕ italic_e start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT = 0. After executing the protocol, 𝒮𝒮\mathcal{S}caligraphic_S receives r0,r1𝔽subscript𝑟0subscript𝑟1𝔽r_{0},r_{1}\in\mathbb{F}italic_r start_POSTSUBSCRIPT 0 end_POSTSUBSCRIPT , italic_r start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ∈ blackboard_F while \mathcal{R}caligraphic_R receives re0e1𝔽subscript𝑟direct-sumsubscript𝑒0subscript𝑒1𝔽r_{e_{0}\oplus e_{1}}\in\mathbb{F}italic_r start_POSTSUBSCRIPT italic_e start_POSTSUBSCRIPT 0 end_POSTSUBSCRIPT ⊕ italic_e start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT end_POSTSUBSCRIPT ∈ blackboard_F.666This two-choice-bit ROT is identical to the standard 1-out-of-2 ROT, where e0subscript𝑒0e_{0}italic_e start_POSTSUBSCRIPT 0 end_POSTSUBSCRIPT is sampled by 𝒮𝒮\mathcal{S}caligraphic_S, indicating whether to swap the order of r0subscript𝑟0r_{0}italic_r start_POSTSUBSCRIPT 0 end_POSTSUBSCRIPT and r1subscript𝑟1r_{1}italic_r start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT, as in Figure 12. This two-choice-bit ROT can be used to transform bit secret-sharing into zero-sharing as follows: Let 𝒮𝒮\mathcal{S}caligraphic_S set r=r0𝑟subscript𝑟0r=-r_{0}italic_r = - italic_r start_POSTSUBSCRIPT 0 end_POSTSUBSCRIPT and \mathcal{R}caligraphic_R set u=re0e1𝑢subscript𝑟direct-sumsubscript𝑒0subscript𝑒1u=r_{e_{0}\oplus e_{1}}italic_u = italic_r start_POSTSUBSCRIPT italic_e start_POSTSUBSCRIPT 0 end_POSTSUBSCRIPT ⊕ italic_e start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT end_POSTSUBSCRIPT, then if e0e1=0direct-sumsubscript𝑒0subscript𝑒10e_{0}\oplus e_{1}=0italic_e start_POSTSUBSCRIPT 0 end_POSTSUBSCRIPT ⊕ italic_e start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT = 0, r+u=0𝑟𝑢0r+u=0italic_r + italic_u = 0; otherwise r+u=r1r0𝑟𝑢subscript𝑟1subscript𝑟0r+u=r_{1}-r_{0}italic_r + italic_u = italic_r start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT - italic_r start_POSTSUBSCRIPT 0 end_POSTSUBSCRIPT is uniform. The 𝗁𝗂𝗇𝗍𝗁𝗂𝗇𝗍\mathsf{hint}sansserif_hint outputted to 𝒮𝒮\mathcal{S}caligraphic_S is r1subscript𝑟1r_{1}italic_r start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT.

    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 Q𝑄Qitalic_Q in Figure 12.

    Theorem 5.1

    Protocol Π𝖻𝖬𝖹𝖲QsuperscriptsubscriptΠ𝖻𝖬𝖹𝖲𝑄\Pi_{\mathsf{bMZS}}^{Q}roman_Π start_POSTSUBSCRIPT sansserif_bMZS end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_Q end_POSTSUPERSCRIPT securely realizes 𝖻𝖬𝖹𝖲Qsuperscriptsubscript𝖻𝖬𝖹𝖲𝑄\mathcal{F}_{\mathsf{bMZS}}^{Q}caligraphic_F start_POSTSUBSCRIPT sansserif_bMZS end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_Q end_POSTSUPERSCRIPT against any semi-honest adversary corrupting t<m𝑡𝑚t<mitalic_t < italic_m parties in the (𝖻𝖮𝖯𝖯𝖱𝖥,𝖻𝗌𝗌𝖯𝖬𝖳,𝖱𝖮𝖳)subscript𝖻𝖮𝖯𝖯𝖱𝖥subscript𝖻𝗌𝗌𝖯𝖬𝖳subscript𝖱𝖮𝖳(\mathcal{F}_{\mathsf{bOPPRF}},\mathcal{F}_{\mathsf{bssPMT}},\mathcal{F}_{% \mathsf{ROT}})( caligraphic_F start_POSTSUBSCRIPT sansserif_bOPPRF end_POSTSUBSCRIPT , caligraphic_F start_POSTSUBSCRIPT sansserif_bssPMT end_POSTSUBSCRIPT , caligraphic_F start_POSTSUBSCRIPT sansserif_ROT end_POSTSUBSCRIPT )-hybrid model.

    The correctness and independence of membership zero-sharing are inherited from predicative zero-sharing, with a parameter adjustment for correctness: |𝔽||𝖮𝖱|n2σ𝔽𝖮𝖱𝑛superscript2𝜎\lvert\mathbb{F}\rvert\geq\lvert\mathsf{OR}\rvert\cdot n\cdot 2^{\sigma}| blackboard_F | ≥ | sansserif_OR | ⋅ italic_n ⋅ 2 start_POSTSUPERSCRIPT italic_σ end_POSTSUPERSCRIPT, where |𝖮𝖱|𝖮𝖱\lvert\mathsf{OR}\rvert| sansserif_OR | is the number of 𝖮𝖱𝖮𝖱\mathsf{OR}sansserif_OR operators in Q𝑄Qitalic_Q.

    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: m𝑚mitalic_m parties P1,Pmsubscript𝑃1subscript𝑃𝑚P_{1},\cdots P_{m}italic_P start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , ⋯ italic_P start_POSTSUBSCRIPT italic_m end_POSTSUBSCRIPT, where P𝗉𝗂𝗏𝗈𝗍subscript𝑃𝗉𝗂𝗏𝗈𝗍P_{\mathsf{pivot}}italic_P start_POSTSUBSCRIPT sansserif_pivot end_POSTSUBSCRIPT holds n𝑛nitalic_n elements instead of n𝑛nitalic_n sets. A set predicate formula Q𝑄Qitalic_Q composed of q1𝑞1q\geq 1italic_q ≥ 1 literals Q1,,Qqsubscript𝑄1subscript𝑄𝑞Q_{1},\cdots,Q_{q}italic_Q start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , ⋯ , italic_Q start_POSTSUBSCRIPT italic_q end_POSTSUBSCRIPT where each Qisubscript𝑄𝑖Q_{i}italic_Q start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT (1iq1𝑖𝑞1\leq i\leq q1 ≤ italic_i ≤ italic_q) is in the form xXj𝑥subscript𝑋𝑗x\in X_{j}italic_x ∈ italic_X start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT or xXj𝑥subscript𝑋𝑗x\notin X_{j}italic_x ∉ italic_X start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT for some j{1,m}{𝗉𝗂𝗏𝗈𝗍}𝑗1𝑚𝗉𝗂𝗏𝗈𝗍j\in\{1,\cdots m\}\setminus\{\mathsf{pivot}\}italic_j ∈ { 1 , ⋯ italic_m } ∖ { sansserif_pivot }. n𝑛nitalic_n Beaver triples ([a],[b],[c])delimited-[]adelimited-[]bdelimited-[]c([\textbf{a}],[\textbf{b}],[\textbf{c}])( [ a ] , [ b ] , [ c ] ), where [a]=([a1],,[an])delimited-[]adelimited-[]subscript𝑎1delimited-[]subscript𝑎𝑛[\textbf{a}]=([a_{1}],\cdots,[a_{n}])[ a ] = ( [ italic_a start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ] , ⋯ , [ italic_a start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT ] ), [b]=([b1],,[bn])delimited-[]bdelimited-[]subscript𝑏1delimited-[]subscript𝑏𝑛[\textbf{b}]=([b_{1}],\cdots,[b_{n}])[ b ] = ( [ italic_b start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ] , ⋯ , [ italic_b start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT ] ), [c]=([c1],,[cn])delimited-[]cdelimited-[]subscript𝑐1delimited-[]subscript𝑐𝑛[\textbf{c}]=([c_{1}],\cdots,[c_{n}])[ c ] = ( [ italic_c start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ] , ⋯ , [ italic_c start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT ] ) and ci=aibisubscript𝑐𝑖subscript𝑎𝑖subscript𝑏𝑖c_{i}=a_{i}\cdot b_{i}italic_c start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT = italic_a start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT ⋅ italic_b start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT for 1in1𝑖𝑛1\leq i\leq n1 ≤ italic_i ≤ italic_n. Batch size n𝑛nitalic_n. A field 𝔽𝔽\mathbb{F}blackboard_F.

    • Protocol:

      1. 1.

        The simple predicative sharing stage. In this stage, for each Qisubscript𝑄𝑖Q_{i}italic_Q start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT, P𝗉𝗂𝗏𝗈𝗍subscript𝑃𝗉𝗂𝗏𝗈𝗍P_{\mathsf{pivot}}italic_P start_POSTSUBSCRIPT sansserif_pivot end_POSTSUBSCRIPT and Pjsubscript𝑃𝑗P_{j}italic_P start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT invoke the relaxed batch membership zero-sharing for xXj𝑥subscript𝑋𝑗x\in X_{j}italic_x ∈ italic_X start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT or xXj𝑥subscript𝑋𝑗x\notin X_{j}italic_x ∉ italic_X start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT (according to the form of Qisubscript𝑄𝑖Q_{i}italic_Q start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT) of size n𝑛nitalic_n, and the remaining parties set their secret shares to 0. As a result, the parties hold a vector of n𝑛nitalic_n secret-sharings associated with Qisubscript𝑄𝑖Q_{i}italic_Q start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT. To be specific, if Qisubscript𝑄𝑖Q_{i}italic_Q start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT is in the form of

        • xXj𝑥subscript𝑋𝑗x\in X_{j}italic_x ∈ italic_X start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT: For the k𝑘kitalic_k-th instance (1kn1𝑘𝑛1\leq k\leq n1 ≤ italic_k ≤ italic_n), Pjsubscript𝑃𝑗P_{j}italic_P start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT samples ri,ksubscript𝑟𝑖𝑘r_{i,k}italic_r start_POSTSUBSCRIPT italic_i , italic_k end_POSTSUBSCRIPT and sets Ki,k=Xj,ksubscript𝐾𝑖𝑘subscript𝑋𝑗𝑘K_{i,k}=X_{j,k}italic_K start_POSTSUBSCRIPT italic_i , italic_k end_POSTSUBSCRIPT = italic_X start_POSTSUBSCRIPT italic_j , italic_k end_POSTSUBSCRIPT and Vi,k={ri,k,,ri,k}subscript𝑉𝑖𝑘subscript𝑟𝑖𝑘subscript𝑟𝑖𝑘V_{i,k}=\{-r_{i,k},\cdots,-r_{i,k}\}italic_V start_POSTSUBSCRIPT italic_i , italic_k end_POSTSUBSCRIPT = { - italic_r start_POSTSUBSCRIPT italic_i , italic_k end_POSTSUBSCRIPT , ⋯ , - italic_r start_POSTSUBSCRIPT italic_i , italic_k end_POSTSUBSCRIPT }, where |Ki,k|=|Vi,k|subscript𝐾𝑖𝑘subscript𝑉𝑖𝑘\lvert K_{i,k}\rvert=\lvert V_{i,k}\rvert| italic_K start_POSTSUBSCRIPT italic_i , italic_k end_POSTSUBSCRIPT | = | italic_V start_POSTSUBSCRIPT italic_i , italic_k end_POSTSUBSCRIPT |. Then P𝗉𝗂𝗏𝗈𝗍subscript𝑃𝗉𝗂𝗏𝗈𝗍P_{\mathsf{pivot}}italic_P start_POSTSUBSCRIPT sansserif_pivot end_POSTSUBSCRIPT and Pjsubscript𝑃𝑗P_{j}italic_P start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT invoke 𝖻𝖮𝖯𝖯𝖱𝖥subscript𝖻𝖮𝖯𝖯𝖱𝖥\mathcal{F}_{\mathsf{bOPPRF}}caligraphic_F start_POSTSUBSCRIPT sansserif_bOPPRF end_POSTSUBSCRIPT where Pjsubscript𝑃𝑗P_{j}italic_P start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT acts as 𝒮𝒮\mathcal{S}caligraphic_S with inputs (Ki,1,,Ki,n)subscript𝐾𝑖1subscript𝐾𝑖𝑛(K_{i,1},\cdots,K_{i,n})( italic_K start_POSTSUBSCRIPT italic_i , 1 end_POSTSUBSCRIPT , ⋯ , italic_K start_POSTSUBSCRIPT italic_i , italic_n end_POSTSUBSCRIPT ) and (Vi,1,,Vi,n)subscript𝑉𝑖1subscript𝑉𝑖𝑛(V_{i,1},\cdots,V_{i,n})( italic_V start_POSTSUBSCRIPT italic_i , 1 end_POSTSUBSCRIPT , ⋯ , italic_V start_POSTSUBSCRIPT italic_i , italic_n end_POSTSUBSCRIPT ), and P𝗉𝗂𝗏𝗈𝗍subscript𝑃𝗉𝗂𝗏𝗈𝗍P_{\mathsf{pivot}}italic_P start_POSTSUBSCRIPT sansserif_pivot end_POSTSUBSCRIPT acts as \mathcal{R}caligraphic_R with input x and receives uisubscriptu𝑖\textbf{u}_{i}u start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT. P𝗉𝗂𝗏𝗈𝗍subscript𝑃𝗉𝗂𝗏𝗈𝗍P_{\mathsf{pivot}}italic_P start_POSTSUBSCRIPT sansserif_pivot end_POSTSUBSCRIPT sets its shares ri,𝗉𝗂𝗏𝗈𝗍=uisubscriptr𝑖𝗉𝗂𝗏𝗈𝗍subscriptu𝑖\textbf{r}_{i,\mathsf{pivot}}=\textbf{u}_{i}r start_POSTSUBSCRIPT italic_i , sansserif_pivot end_POSTSUBSCRIPT = u start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT. Pjsubscript𝑃𝑗P_{j}italic_P start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT sets its shares ri,j=(ri,1,,ri,n)subscriptr𝑖𝑗subscript𝑟𝑖1subscript𝑟𝑖𝑛\textbf{r}_{i,j}=(r_{i,1},\cdots,r_{i,n})r start_POSTSUBSCRIPT italic_i , italic_j end_POSTSUBSCRIPT = ( italic_r start_POSTSUBSCRIPT italic_i , 1 end_POSTSUBSCRIPT , ⋯ , italic_r start_POSTSUBSCRIPT italic_i , italic_n end_POSTSUBSCRIPT ). For each d{1,m}{𝗉𝗂𝗏𝗈𝗍,j}𝑑1𝑚𝗉𝗂𝗏𝗈𝗍𝑗d\in\{1,\cdots m\}\setminus\{\mathsf{pivot},j\}italic_d ∈ { 1 , ⋯ italic_m } ∖ { sansserif_pivot , italic_j }, Pdsubscript𝑃𝑑P_{d}italic_P start_POSTSUBSCRIPT italic_d end_POSTSUBSCRIPT sets its shares ri,d=0subscriptr𝑖𝑑0\textbf{r}_{i,d}=\textbf{0}r start_POSTSUBSCRIPT italic_i , italic_d end_POSTSUBSCRIPT = 0.

        • xXj𝑥subscript𝑋𝑗x\notin X_{j}italic_x ∉ italic_X start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT: P𝗉𝗂𝗏𝗈𝗍subscript𝑃𝗉𝗂𝗏𝗈𝗍P_{\mathsf{pivot}}italic_P start_POSTSUBSCRIPT sansserif_pivot end_POSTSUBSCRIPT and Pjsubscript𝑃𝑗P_{j}italic_P start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT invoke 𝖻𝗌𝗌𝖯𝖬𝖳subscript𝖻𝗌𝗌𝖯𝖬𝖳\mathcal{F}_{\mathsf{bssPMT}}caligraphic_F start_POSTSUBSCRIPT sansserif_bssPMT end_POSTSUBSCRIPT, where in the k𝑘kitalic_k-th instance (1kn1𝑘𝑛1\leq k\leq n1 ≤ italic_k ≤ italic_n), Pjsubscript𝑃𝑗P_{j}italic_P start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT inputs Xj,ksubscript𝑋𝑗𝑘X_{j,k}italic_X start_POSTSUBSCRIPT italic_j , italic_k end_POSTSUBSCRIPT and receives ei,k0superscriptsubscript𝑒𝑖𝑘0e_{i,k}^{0}italic_e start_POSTSUBSCRIPT italic_i , italic_k end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 0 end_POSTSUPERSCRIPT, while P𝗉𝗂𝗏𝗈𝗍subscript𝑃𝗉𝗂𝗏𝗈𝗍P_{\mathsf{pivot}}italic_P start_POSTSUBSCRIPT sansserif_pivot end_POSTSUBSCRIPT inputs xksubscript𝑥𝑘x_{k}italic_x start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT and receives ei,k1superscriptsubscript𝑒𝑖𝑘1e_{i,k}^{1}italic_e start_POSTSUBSCRIPT italic_i , italic_k end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 1 end_POSTSUPERSCRIPT. Then they invoke n𝑛nitalic_n instances of ROT, where in the k𝑘kitalic_k-th instance (1kn1𝑘𝑛1\leq k\leq n1 ≤ italic_k ≤ italic_n), Pjsubscript𝑃𝑗P_{j}italic_P start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT acts as 𝒮𝒮\mathcal{S}caligraphic_S and receives ri,k0,ri,k1superscriptsubscript𝑟𝑖𝑘0superscriptsubscript𝑟𝑖𝑘1r_{i,k}^{0},r_{i,k}^{1}italic_r start_POSTSUBSCRIPT italic_i , italic_k end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 0 end_POSTSUPERSCRIPT , italic_r start_POSTSUBSCRIPT italic_i , italic_k end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 1 end_POSTSUPERSCRIPT, while P𝗉𝗂𝗏𝗈𝗍subscript𝑃𝗉𝗂𝗏𝗈𝗍P_{\mathsf{pivot}}italic_P start_POSTSUBSCRIPT sansserif_pivot end_POSTSUBSCRIPT acts as \mathcal{R}caligraphic_R with input ei,k1superscriptsubscript𝑒𝑖𝑘1e_{i,k}^{1}italic_e start_POSTSUBSCRIPT italic_i , italic_k end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 1 end_POSTSUPERSCRIPT and receives ri,kei,k1superscriptsubscript𝑟𝑖𝑘superscriptsubscript𝑒𝑖𝑘1r_{i,k}^{e_{i,k}^{1}}italic_r start_POSTSUBSCRIPT italic_i , italic_k end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_e start_POSTSUBSCRIPT italic_i , italic_k end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 1 end_POSTSUPERSCRIPT end_POSTSUPERSCRIPT. P𝗉𝗂𝗏𝗈𝗍subscript𝑃𝗉𝗂𝗏𝗈𝗍P_{\mathsf{pivot}}italic_P start_POSTSUBSCRIPT sansserif_pivot end_POSTSUBSCRIPT sets its shares ri,𝗉𝗂𝗏𝗈𝗍=(ri,1ei,11,,ri,nei,n1)subscriptr𝑖𝗉𝗂𝗏𝗈𝗍superscriptsubscript𝑟𝑖1superscriptsubscript𝑒𝑖11superscriptsubscript𝑟𝑖𝑛superscriptsubscript𝑒𝑖𝑛1\textbf{r}_{i,\mathsf{pivot}}=(r_{i,1}^{e_{i,1}^{1}},\cdots,r_{i,n}^{e_{i,n}^{% 1}})r start_POSTSUBSCRIPT italic_i , sansserif_pivot end_POSTSUBSCRIPT = ( italic_r start_POSTSUBSCRIPT italic_i , 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_e start_POSTSUBSCRIPT italic_i , 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 1 end_POSTSUPERSCRIPT end_POSTSUPERSCRIPT , ⋯ , italic_r start_POSTSUBSCRIPT italic_i , italic_n end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_e start_POSTSUBSCRIPT italic_i , italic_n end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 1 end_POSTSUPERSCRIPT end_POSTSUPERSCRIPT ). Pjsubscript𝑃𝑗P_{j}italic_P start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT sets its shares ri,j=(ri,1ei,10,,ri,nei,n0)subscriptr𝑖𝑗superscriptsubscript𝑟𝑖1superscriptsubscript𝑒𝑖10superscriptsubscript𝑟𝑖𝑛superscriptsubscript𝑒𝑖𝑛0\textbf{r}_{i,j}=(-r_{i,1}^{e_{i,1}^{0}},\cdots,-r_{i,n}^{e_{i,n}^{0}})r start_POSTSUBSCRIPT italic_i , italic_j end_POSTSUBSCRIPT = ( - italic_r start_POSTSUBSCRIPT italic_i , 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_e start_POSTSUBSCRIPT italic_i , 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 0 end_POSTSUPERSCRIPT end_POSTSUPERSCRIPT , ⋯ , - italic_r start_POSTSUBSCRIPT italic_i , italic_n end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_e start_POSTSUBSCRIPT italic_i , italic_n end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 0 end_POSTSUPERSCRIPT end_POSTSUPERSCRIPT ). For each d{1,m}{𝗉𝗂𝗏𝗈𝗍,j}𝑑1𝑚𝗉𝗂𝗏𝗈𝗍𝑗d\in\{1,\cdots m\}\setminus\{\mathsf{pivot},j\}italic_d ∈ { 1 , ⋯ italic_m } ∖ { sansserif_pivot , italic_j }, Pdsubscript𝑃𝑑P_{d}italic_P start_POSTSUBSCRIPT italic_d end_POSTSUBSCRIPT sets its shares ri,d=0subscriptr𝑖𝑑0\textbf{r}_{i,d}=\textbf{0}r start_POSTSUBSCRIPT italic_i , italic_d end_POSTSUBSCRIPT = 0.

        The vector of n𝑛nitalic_n secret-sharings for Qisubscript𝑄𝑖Q_{i}italic_Q start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT denotes as [ri]=(ri,1,,ri,m)delimited-[]subscriptr𝑖subscriptr𝑖1subscriptr𝑖𝑚[\textbf{r}_{i}]=(\textbf{r}_{i,1},\cdots,\textbf{r}_{i,m})[ r start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT ] = ( r start_POSTSUBSCRIPT italic_i , 1 end_POSTSUBSCRIPT , ⋯ , r start_POSTSUBSCRIPT italic_i , italic_m end_POSTSUBSCRIPT ).

      2. 2.

        The formula emulation stage. If q>1𝑞1q>1italic_q > 1, the parties collectively emulate the computation of Q𝑄Qitalic_Q in the order of operator precedence, step by step. In each step, the parties generate a vector of n𝑛nitalic_n secret-sharings associated with a binary clause connected by a given operator, based on the two vectors associated with the contained literals Qisubscriptsuperscript𝑄𝑖Q^{\prime}_{i}italic_Q start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT and Qjsubscriptsuperscript𝑄𝑗Q^{\prime}_{j}italic_Q start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT, which they obtain from previous steps. The actions of the parties depend on the type of operator being computed:

        • 𝖠𝖭𝖣𝖠𝖭𝖣\mathsf{AND}sansserif_AND operator: Suppose the parties hold two vectors of n𝑛nitalic_n secret-sharings [ri]delimited-[]subscriptr𝑖[\textbf{r}_{i}][ r start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT ] and [rj]delimited-[]subscriptr𝑗[\textbf{r}_{j}][ r start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT ] associated with Qisubscriptsuperscript𝑄𝑖Q^{\prime}_{i}italic_Q start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT and Qjsubscriptsuperscript𝑄𝑗Q^{\prime}_{j}italic_Q start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT respectively. They want to compute n𝑛nitalic_n relaxed membership zero-sharings of Q=QiQjsuperscript𝑄subscriptsuperscript𝑄𝑖subscriptsuperscript𝑄𝑗Q^{\prime}=Q^{\prime}_{i}\land Q^{\prime}_{j}italic_Q start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT = italic_Q start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT ∧ italic_Q start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT. Then they locally add the corresponding components of two vectors to obtain [ri+rj]delimited-[]subscriptr𝑖subscriptr𝑗[\textbf{r}_{i}+\textbf{r}_{j}][ r start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT + r start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT ].

        • 𝖮𝖱𝖮𝖱\mathsf{OR}sansserif_OR operator: Suppose the parties hold two vectors of n𝑛nitalic_n secret-sharings [ri]delimited-[]subscriptr𝑖[\textbf{r}_{i}][ r start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT ] and [rj]delimited-[]subscriptr𝑗[\textbf{r}_{j}][ r start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT ] associated with Qisubscriptsuperscript𝑄𝑖Q^{\prime}_{i}italic_Q start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT and Qjsubscriptsuperscript𝑄𝑗Q^{\prime}_{j}italic_Q start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT respectively. They want to compute n𝑛nitalic_n relaxed membership zero-sharings of Q=QiQjsuperscript𝑄subscriptsuperscript𝑄𝑖subscriptsuperscript𝑄𝑗Q^{\prime}=Q^{\prime}_{i}\lor Q^{\prime}_{j}italic_Q start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT = italic_Q start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT ∨ italic_Q start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT. Then the parties perform n𝑛nitalic_n secure multiplications between the corresponding components of two vectors, i.e., [rirj]=[ri][rj]delimited-[]subscriptr𝑖subscriptr𝑗delimited-[]subscriptr𝑖delimited-[]subscriptr𝑗[\textbf{r}_{i}\cdot\textbf{r}_{j}]=[\textbf{r}_{i}]\cdot[\textbf{r}_{j}][ r start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT ⋅ r start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT ] = [ r start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT ] ⋅ [ r start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT ].

        After obtaining the vector of secret-sharings associated with Qsuperscript𝑄Q^{\prime}italic_Q start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT, the parties regard Qsuperscript𝑄Q^{\prime}italic_Q start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT as a new literal, and repeat the above steps until there is only one literal in Q𝑄Qitalic_Q. The vector [r]delimited-[]r[\textbf{r}][ r ] associated with the ultimate literal held by the parties is the vector of n𝑛nitalic_n relaxed membership zero-sharings for Q𝑄Qitalic_Q.

      3. 3.

        Transformation from relaxed to standard. All parties compute [s]delimited-[]s[\textbf{s}][ s ] by performing [s]=[r][b]delimited-[]sdelimited-[]rdelimited-[]b[\textbf{s}]=[\textbf{r}]\cdot[\textbf{b}][ s ] = [ r ] ⋅ [ b ], using n𝑛nitalic_n Beaver triples ([a],[b],[c])delimited-[]adelimited-[]bdelimited-[]c([\textbf{a}],[\textbf{b}],[\textbf{c}])( [ a ] , [ b ] , [ c ] ) (c.f. Appendix 0.E).

    Figure 12: Batch Membership Zero-Sharing Π𝖻𝖬𝖹𝖲QsuperscriptsubscriptΠ𝖻𝖬𝖹𝖲𝑄\Pi_{\mathsf{bMZS}}^{Q}roman_Π start_POSTSUBSCRIPT sansserif_bMZS end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_Q end_POSTSUPERSCRIPT

    6 Our MPSO Framework

    6.1 Overview

    Our framework is based on the CPF representation ψ(x,X1,,Xm)𝜓𝑥subscript𝑋1subscript𝑋𝑚\psi(x,X_{1},\cdots,X_{m})italic_ψ ( italic_x , italic_X start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , ⋯ , italic_X start_POSTSUBSCRIPT italic_m end_POSTSUBSCRIPT ) of any constructible set Y𝑌Yitalic_Y. Recall that ψ=Q1Qs𝜓subscript𝑄1subscript𝑄𝑠\psi=Q_{1}\lor\cdots\lor Q_{s}italic_ψ = italic_Q start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ∨ ⋯ ∨ italic_Q start_POSTSUBSCRIPT italic_s end_POSTSUBSCRIPT. Assuming that Qisubscript𝑄𝑖Q_{i}italic_Q start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT (1is1𝑖𝑠1\leq i\leq s1 ≤ italic_i ≤ italic_s) only contains atomic propositions relevant to Xi1,,Xiqsubscript𝑋subscript𝑖1subscript𝑋subscript𝑖𝑞X_{i_{1}},\cdots,X_{i_{q}}italic_X start_POSTSUBSCRIPT italic_i start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT end_POSTSUBSCRIPT , ⋯ , italic_X start_POSTSUBSCRIPT italic_i start_POSTSUBSCRIPT italic_q end_POSTSUBSCRIPT end_POSTSUBSCRIPT (1qm1𝑞𝑚1\leq q\leq m1 ≤ italic_q ≤ italic_m), Qisubscript𝑄𝑖Q_{i}italic_Q start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT is set-separable with respect to Xjsubscript𝑋𝑗X_{j}italic_X start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT for some j{i1,,iq}𝑗subscript𝑖1subscript𝑖𝑞j\in\{{i_{1}},\cdots,{i_{q}}\}italic_j ∈ { italic_i start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , ⋯ , italic_i start_POSTSUBSCRIPT italic_q end_POSTSUBSCRIPT }. Namely,

    Qi(x,Xi1,,Xiq)=(xXj)Qi(x,Xi1,,Xj1,Xj+1,,Xiq).subscript𝑄𝑖𝑥subscript𝑋subscript𝑖1subscript𝑋subscript𝑖𝑞𝑥subscript𝑋𝑗subscriptsuperscript𝑄𝑖𝑥subscript𝑋subscript𝑖1subscript𝑋𝑗1subscript𝑋𝑗1subscript𝑋subscript𝑖𝑞Q_{i}(x,X_{i_{1}},\cdots,X_{i_{q}})=(x\in X_{j})\land Q^{\prime}_{i}(x,X_{i_{1% }},\cdots,X_{j-1},X_{j+1},\cdots,X_{i_{q}}).italic_Q start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT ( italic_x , italic_X start_POSTSUBSCRIPT italic_i start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT end_POSTSUBSCRIPT , ⋯ , italic_X start_POSTSUBSCRIPT italic_i start_POSTSUBSCRIPT italic_q end_POSTSUBSCRIPT end_POSTSUBSCRIPT ) = ( italic_x ∈ italic_X start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT ) ∧ italic_Q start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT ( italic_x , italic_X start_POSTSUBSCRIPT italic_i start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT end_POSTSUBSCRIPT , ⋯ , italic_X start_POSTSUBSCRIPT italic_j - 1 end_POSTSUBSCRIPT , italic_X start_POSTSUBSCRIPT italic_j + 1 end_POSTSUBSCRIPT , ⋯ , italic_X start_POSTSUBSCRIPT italic_i start_POSTSUBSCRIPT italic_q end_POSTSUBSCRIPT end_POSTSUBSCRIPT ) .

    where Qisubscriptsuperscript𝑄𝑖Q^{\prime}_{i}italic_Q start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT is the separation formula of Qisubscript𝑄𝑖Q_{i}italic_Q start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT. We use Yisubscript𝑌𝑖Y_{i}italic_Y start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT to denote the set represented by Qisubscript𝑄𝑖Q_{i}italic_Q start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT. Our high-level idea is that for each Qisubscript𝑄𝑖Q_{i}italic_Q start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT, we designate Pjsubscript𝑃𝑗P_{j}italic_P start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT as P𝗉𝗂𝗏𝗈𝗍subscript𝑃𝗉𝗂𝗏𝗈𝗍P_{\mathsf{pivot}}italic_P start_POSTSUBSCRIPT sansserif_pivot end_POSTSUBSCRIPT and let Pi1,,Piqsubscript𝑃subscript𝑖1subscript𝑃subscript𝑖𝑞P_{i_{1}},\cdots,P_{i_{q}}italic_P start_POSTSUBSCRIPT italic_i start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT end_POSTSUBSCRIPT , ⋯ , italic_P start_POSTSUBSCRIPT italic_i start_POSTSUBSCRIPT italic_q end_POSTSUBSCRIPT end_POSTSUBSCRIPT engage in the batch membership zero-sharing protocol for Qisubscriptsuperscript𝑄𝑖Q^{\prime}_{i}italic_Q start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT, so that for each xXj𝑥subscript𝑋𝑗x\in X_{j}italic_x ∈ italic_X start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT, if Qi=1subscriptsuperscript𝑄𝑖1Q^{\prime}_{i}=1italic_Q start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT = 1, the parties receive secret shares of 0, otherwise secret shares of a random value. Pjsubscript𝑃𝑗P_{j}italic_P start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT adds x𝑥xitalic_x to its associated shares. As a result, for each xXj𝑥subscript𝑋𝑗x\in X_{j}italic_x ∈ italic_X start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT, if Qi=1subscript𝑄𝑖1Q_{i}=1italic_Q start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT = 1, i.e., Qi=1subscriptsuperscript𝑄𝑖1Q^{\prime}_{i}=1italic_Q start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT = 1, the parties receive secret shares of x𝑥xitalic_x, otherwise secret shares of a random value. The process is elaborated below.

    For each Qisubscript𝑄𝑖Q_{i}italic_Q start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT, Pjsubscript𝑃𝑗P_{j}italic_P start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT uses hash functions h1,h2,h3subscript1subscript2subscript3h_{1},h_{2},h_{3}italic_h start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , italic_h start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT , italic_h start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT to assign elements to B=O(n)𝐵𝑂𝑛B=O(n)italic_B = italic_O ( italic_n ) bins via Cuckoo hashing, so that each bin 𝒞jbsuperscriptsubscript𝒞𝑗𝑏\mathcal{C}_{j}^{b}caligraphic_C start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_b end_POSTSUPERSCRIPT (1bB1𝑏𝐵1\leq b\leq B1 ≤ italic_b ≤ italic_B) has at most one item. Meanwhile, each Pjsubscript𝑃superscript𝑗P_{j^{\prime}}italic_P start_POSTSUBSCRIPT italic_j start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT end_POSTSUBSCRIPT (j{i1,,iq}{j}superscript𝑗subscript𝑖1subscript𝑖𝑞𝑗j^{\prime}\in\{{i_{1}},\cdots,{i_{q}}\}\setminus\{j\}italic_j start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT ∈ { italic_i start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , ⋯ , italic_i start_POSTSUBSCRIPT italic_q end_POSTSUBSCRIPT } ∖ { italic_j }) assigns each element yXj𝑦subscript𝑋superscript𝑗y\in X_{j^{\prime}}italic_y ∈ italic_X start_POSTSUBSCRIPT italic_j start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT end_POSTSUBSCRIPT to bins 𝒯jh1(y),𝒯jh2(y),𝒯jh3(y)superscriptsubscript𝒯superscript𝑗subscript1𝑦superscriptsubscript𝒯superscript𝑗subscript2𝑦superscriptsubscript𝒯superscript𝑗subscript3𝑦\mathcal{T}_{j^{\prime}}^{h_{1}(y)},\mathcal{T}_{j^{\prime}}^{h_{2}(y)},% \mathcal{T}_{j^{\prime}}^{h_{3}(y)}caligraphic_T start_POSTSUBSCRIPT italic_j start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_h start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ( italic_y ) end_POSTSUPERSCRIPT , caligraphic_T start_POSTSUBSCRIPT italic_j start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_h start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT ( italic_y ) end_POSTSUPERSCRIPT , caligraphic_T start_POSTSUBSCRIPT italic_j start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_h start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT ( italic_y ) end_POSTSUPERSCRIPT. Note that if Pjsubscript𝑃𝑗P_{j}italic_P start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT maps the item xXj𝑥subscript𝑋𝑗x\in X_{j}italic_x ∈ italic_X start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT into 𝒞jbsuperscriptsubscript𝒞𝑗𝑏\mathcal{C}_{j}^{b}caligraphic_C start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_b end_POSTSUPERSCRIPT, then b{h1(x),h2(x),h3(x)}𝑏subscript1𝑥subscript2𝑥subscript3𝑥b\in\{h_{1}(x),h_{2}(x),h_{3}(x)\}italic_b ∈ { italic_h start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ( italic_x ) , italic_h start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT ( italic_x ) , italic_h start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT ( italic_x ) }. If Pjsubscript𝑃superscript𝑗P_{j^{\prime}}italic_P start_POSTSUBSCRIPT italic_j start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT end_POSTSUBSCRIPT also holds x𝑥xitalic_x, it must map x𝑥xitalic_x into 𝒯jbsuperscriptsubscript𝒯superscript𝑗𝑏\mathcal{T}_{j^{\prime}}^{b}caligraphic_T start_POSTSUBSCRIPT italic_j start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_b end_POSTSUPERSCRIPT. This enables the remaining parties to align their input sets with respect to Xjsubscript𝑋𝑗X_{j}italic_X start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT, such that for each x𝑥xitalic_x in 𝒞jbsuperscriptsubscript𝒞𝑗𝑏\mathcal{C}_{j}^{b}caligraphic_C start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_b end_POSTSUPERSCRIPT, xXj𝑥superscriptsubscript𝑋𝑗x\in X_{j}^{\prime}italic_x ∈ italic_X start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT if and only if x𝑥xitalic_x is in 𝒯jbsuperscriptsubscript𝒯superscript𝑗𝑏\mathcal{T}_{j^{\prime}}^{b}caligraphic_T start_POSTSUBSCRIPT italic_j start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_b end_POSTSUPERSCRIPT. Thereby, we derive that

    Qi(x,Xi1,,Xj1,Xj+1,,Xiq)=Qi(x,𝒯i1b,,𝒯j1b,𝒯j+1b,,𝒯iqb).subscriptsuperscript𝑄𝑖𝑥subscript𝑋subscript𝑖1subscript𝑋𝑗1subscript𝑋𝑗1subscript𝑋subscript𝑖𝑞subscriptsuperscript𝑄𝑖𝑥superscriptsubscript𝒯subscript𝑖1𝑏superscriptsubscript𝒯𝑗1𝑏superscriptsubscript𝒯𝑗1𝑏superscriptsubscript𝒯subscript𝑖𝑞𝑏Q^{\prime}_{i}(x,X_{i_{1}},\cdots,X_{j-1},X_{j+1},\cdots,X_{i_{q}})=Q^{\prime}% _{i}(x,\mathcal{T}_{i_{1}}^{b},\cdots,\mathcal{T}_{j-1}^{b},\mathcal{T}_{j+1}^% {b},\cdots,\mathcal{T}_{i_{q}}^{b}).italic_Q start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT ( italic_x , italic_X start_POSTSUBSCRIPT italic_i start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT end_POSTSUBSCRIPT , ⋯ , italic_X start_POSTSUBSCRIPT italic_j - 1 end_POSTSUBSCRIPT , italic_X start_POSTSUBSCRIPT italic_j + 1 end_POSTSUBSCRIPT , ⋯ , italic_X start_POSTSUBSCRIPT italic_i start_POSTSUBSCRIPT italic_q end_POSTSUBSCRIPT end_POSTSUBSCRIPT ) = italic_Q start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT ( italic_x , caligraphic_T start_POSTSUBSCRIPT italic_i start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_b end_POSTSUPERSCRIPT , ⋯ , caligraphic_T start_POSTSUBSCRIPT italic_j - 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_b end_POSTSUPERSCRIPT , caligraphic_T start_POSTSUBSCRIPT italic_j + 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_b end_POSTSUPERSCRIPT , ⋯ , caligraphic_T start_POSTSUBSCRIPT italic_i start_POSTSUBSCRIPT italic_q end_POSTSUBSCRIPT end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_b end_POSTSUPERSCRIPT ) .

    Pi1,,Piqsubscript𝑃subscript𝑖1subscript𝑃subscript𝑖𝑞P_{i_{1}},\cdots,P_{i_{q}}italic_P start_POSTSUBSCRIPT italic_i start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT end_POSTSUBSCRIPT , ⋯ , italic_P start_POSTSUBSCRIPT italic_i start_POSTSUBSCRIPT italic_q end_POSTSUBSCRIPT end_POSTSUBSCRIPT engage in the batch membership zero-sharing for Qisubscriptsuperscript𝑄𝑖Q^{\prime}_{i}italic_Q start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT, where Pjsubscript𝑃𝑗P_{j}italic_P start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT acts as P𝗉𝗂𝗏𝗈𝗍subscript𝑃𝗉𝗂𝗏𝗈𝗍P_{\mathsf{pivot}}italic_P start_POSTSUBSCRIPT sansserif_pivot end_POSTSUBSCRIPT with inputs 𝒞j1,,𝒞jBsuperscriptsubscript𝒞𝑗1superscriptsubscript𝒞𝑗𝐵\mathcal{C}_{j}^{1},\cdots,\mathcal{C}_{j}^{B}caligraphic_C start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 1 end_POSTSUPERSCRIPT , ⋯ , caligraphic_C start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_B end_POSTSUPERSCRIPT and each Pjsubscript𝑃superscript𝑗P_{j^{\prime}}italic_P start_POSTSUBSCRIPT italic_j start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT end_POSTSUBSCRIPT inputs 𝒯j1,,𝒯jBsuperscriptsubscript𝒯superscript𝑗1superscriptsubscript𝒯superscript𝑗𝐵\mathcal{T}_{j^{\prime}}^{1},\cdots,\mathcal{T}_{j^{\prime}}^{B}caligraphic_T start_POSTSUBSCRIPT italic_j start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 1 end_POSTSUPERSCRIPT , ⋯ , caligraphic_T start_POSTSUBSCRIPT italic_j start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_B end_POSTSUPERSCRIPT. In the end, they receive B𝐵Bitalic_B secret-sharings, so that if the element x𝑥xitalic_x in each bin Cjbsuperscriptsubscript𝐶𝑗𝑏C_{j}^{b}italic_C start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_b end_POSTSUPERSCRIPT satisfies Qi(x,Xi1,,Xiq)=1subscript𝑄𝑖𝑥subscript𝑋subscript𝑖1subscript𝑋subscript𝑖𝑞1Q_{i}(x,X_{i_{1}},\cdots,X_{i_{q}})=1italic_Q start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT ( italic_x , italic_X start_POSTSUBSCRIPT italic_i start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT end_POSTSUBSCRIPT , ⋯ , italic_X start_POSTSUBSCRIPT italic_i start_POSTSUBSCRIPT italic_q end_POSTSUBSCRIPT end_POSTSUBSCRIPT ) = 1, i.e. xYi𝑥subscript𝑌𝑖x\in Y_{i}italic_x ∈ italic_Y start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT, the parties receive secret shares of 0, otherwise secret shares of a random value. Pjsubscript𝑃𝑗P_{j}italic_P start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT adds x𝑥xitalic_x appended with an all-zero string (for the distinction between elements and random values) to the b𝑏bitalic_b-th secret share (This last element addition step actually depends on the functionality, see below), so that if xYi𝑥subscript𝑌𝑖x\in Y_{i}italic_x ∈ italic_Y start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT, the parties hold a secret-sharing of x𝑥xitalic_x.

    Given that {Y1,,Ys}subscript𝑌1subscript𝑌𝑠\{Y_{1},\cdots,Y_{s}\}{ italic_Y start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , ⋯ , italic_Y start_POSTSUBSCRIPT italic_s end_POSTSUBSCRIPT } form a partition of Y, if the parties execute the above process with the last element addition step for all Q1,,Qssubscript𝑄1subscript𝑄𝑠Q_{1},\cdots,Q_{s}italic_Q start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , ⋯ , italic_Q start_POSTSUBSCRIPT italic_s end_POSTSUBSCRIPT, they will hold secret-sharings of all elements in Y𝑌Yitalic_Y (the secret-sharing of each element appears once, interspersed by random secret-sharings for elements not in Y𝑌Yitalic_Y and duplicate elements), arranged in the primary order of Y1,,Yssubscript𝑌1subscript𝑌𝑠Y_{1},\cdots,Y_{s}italic_Y start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , ⋯ , italic_Y start_POSTSUBSCRIPT italic_s end_POSTSUBSCRIPT. In each Yisubscript𝑌𝑖Y_{i}italic_Y start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT, secret-sharings are arranged in the secondary order of Pjsubscript𝑃𝑗P_{j}italic_P start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT’s Cuckoo hash positions, which depends on the whole set Xjsubscript𝑋𝑗X_{j}italic_X start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT. 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. 1.

      MPSO. In this functionality, the parties must reconstruct the elements in Y𝑌Yitalic_Y to P1subscript𝑃1P_{1}italic_P start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT, 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 Yisubscript𝑌𝑖Y_{i}italic_Y start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT which each element belongs to. 2) The secondary order of the reconstructed elements reveals the information of Xjsubscript𝑋𝑗X_{j}italic_X start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT. 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. 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 Y𝑌Yitalic_Y, the parties hold secret-sharings of 0, and for elements not in Y𝑌Yitalic_Y 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 Y𝑌Yitalic_Y.

    3. 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 Y𝑌Yitalic_Y, and computing arbitrary function on Y𝑌Yitalic_Y.

      • 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 Y𝑌Yitalic_Y, then computing arbitrary function on Y𝑌Yitalic_Y.

    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 ψ(x,X1,,Xm)𝜓𝑥subscript𝑋1subscript𝑋𝑚\psi(x,X_{1},\cdots,X_{m})italic_ψ ( italic_x , italic_X start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , ⋯ , italic_X start_POSTSUBSCRIPT italic_m end_POSTSUBSCRIPT ) is a disjunction of one subformula that is set-separable with respect to X1subscript𝑋1X_{1}italic_X start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT, 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 Y𝑌Yitalic_Y 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 Y𝑌Yitalic_Y, which can be represented as a set-separable formula Q(x,X1,,Xm)𝑄𝑥subscript𝑋1subscript𝑋𝑚Q(x,X_{1},\cdots,X_{m})italic_Q ( italic_x , italic_X start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , ⋯ , italic_X start_POSTSUBSCRIPT italic_m end_POSTSUBSCRIPT ) with respect to X1subscript𝑋1X_{1}italic_X start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT, such as X1X2X3subscript𝑋1subscript𝑋2subscript𝑋3X_{1}\cap X_{2}\cap X_{3}italic_X start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ∩ italic_X start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT ∩ italic_X start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT can be represented as (xX1)(xX2)(xX3)𝑥subscript𝑋1𝑥subscript𝑋2𝑥subscript𝑋3(x\in X_{1})\land(x\in X_{2})\land(x\in X_{3})( italic_x ∈ italic_X start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ) ∧ ( italic_x ∈ italic_X start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT ) ∧ ( italic_x ∈ italic_X start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT ) and X1(X2X3)subscript𝑋1subscript𝑋2subscript𝑋3X_{1}\setminus(X_{2}\cap X_{3})italic_X start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ∖ ( italic_X start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT ∩ italic_X start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT ) can be represented as (xX1)¬((xX2)(xX3))=(xX1)((xX2)(xX3))𝑥subscript𝑋1𝑥subscript𝑋2𝑥subscript𝑋3𝑥subscript𝑋1𝑥subscript𝑋2𝑥subscript𝑋3(x\in X_{1})\land\neg((x\in X_{2})\land(x\in X_{3}))=(x\in X_{1})\land((x% \notin X_{2})\lor(x\in X_{3}))( italic_x ∈ italic_X start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ) ∧ ¬ ( ( italic_x ∈ italic_X start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT ) ∧ ( italic_x ∈ italic_X start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT ) ) = ( italic_x ∈ italic_X start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ) ∧ ( ( italic_x ∉ italic_X start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT ) ∨ ( italic_x ∈ italic_X start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT ) ). Let Q(x,X2,,Xm)superscript𝑄𝑥subscript𝑋2subscript𝑋𝑚Q^{\prime}(x,X_{2},\cdots,X_{m})italic_Q start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT ( italic_x , italic_X start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT , ⋯ , italic_X start_POSTSUBSCRIPT italic_m end_POSTSUBSCRIPT ) be the separation formula of Q𝑄Qitalic_Q with respect to X1subscript𝑋1X_{1}italic_X start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT.

    In this case, all elements in Y𝑌Yitalic_Y belong to P1subscript𝑃1P_{1}italic_P start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT, and the order of secret-sharings is totally determined by X1subscript𝑋1X_{1}italic_X start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT, so the two types of “information leakage” associated with the specific sequence of secret-sharings no longer constitute actual information leakage for P1subscript𝑃1P_{1}italic_P start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT. Therefore, after P1subscript𝑃1P_{1}italic_P start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT invokes batch membership zero-sharing with the other parties, acting as P𝗉𝗂𝗏𝗈𝗍subscript𝑃𝗉𝗂𝗏𝗈𝗍P_{\mathsf{pivot}}italic_P start_POSTSUBSCRIPT sansserif_pivot end_POSTSUBSCRIPT, to realize MPSO, the parties straightforwardly reconstruct B𝐵Bitalic_B secret-sharings to P1subscript𝑃1P_{1}italic_P start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT. For each 1bB1𝑏𝐵1\leq b\leq B1 ≤ italic_b ≤ italic_B, P1subscript𝑃1P_{1}italic_P start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT checks whether the b𝑏bitalic_b-th secret is 0. If so, the element in the b𝑏bitalic_b-th bin is in Y𝑌Yitalic_Y. 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 P1subscript𝑃1P_{1}italic_P start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT from learning the exact elements in Y𝑌Yitalic_Y.

    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 P1subscript𝑃1P_{1}italic_P start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT and the other parties’ input elements, so the hash function’s output length is at least σ+log2(m1)+2log2n𝜎subscript2𝑚12subscript2𝑛\sigma+\log_{2}(m-1)+2\log_{2}nitalic_σ + roman_log start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT ( italic_m - 1 ) + 2 roman_log start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT italic_n.

    The most commonly used protocols in this case are MPSI, MPSI-card and circuit MPSI. Let Cs,B,l1superscriptsubscript𝐶𝑠𝐵𝑙1C_{s,B,l}^{1}italic_C start_POSTSUBSCRIPT italic_s , italic_B , italic_l end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 1 end_POSTSUPERSCRIPT be a circuit that has sB(mlog2|𝔽|+l)𝑠𝐵𝑚subscript2𝔽𝑙sB(m\log_{2}\lvert\mathbb{F}\rvert+l)italic_s italic_B ( italic_m roman_log start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT | blackboard_F | + italic_l ) input wires, divided to s𝑠sitalic_s sections of B(mlog2|𝔽|+l)𝐵𝑚subscript2𝔽𝑙B(m\log_{2}\lvert\mathbb{F}\rvert+l)italic_B ( italic_m roman_log start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT | blackboard_F | + italic_l ) inputs wires each. In the i𝑖iitalic_i-th section (1is1𝑖𝑠1\leq i\leq s1 ≤ italic_i ≤ italic_s), the k𝑘kitalic_k-th group of B𝐵Bitalic_B inputs on 𝔽𝔽\mathbb{F}blackboard_F is associated with Pksubscript𝑃𝑘P_{k}italic_P start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT for 1km1𝑘𝑚1\leq k\leq m1 ≤ italic_k ≤ italic_m, and we denote the b𝑏bitalic_b-th input in this group (1bB1𝑏𝐵1\leq b\leq B1 ≤ italic_b ≤ italic_B) as ui,k,b𝔽subscript𝑢𝑖𝑘𝑏𝔽u_{i,k,b}\in\mathbb{F}italic_u start_POSTSUBSCRIPT italic_i , italic_k , italic_b end_POSTSUBSCRIPT ∈ blackboard_F; The last B𝐵Bitalic_B l𝑙litalic_l-length inputs are associated with Pjsubscript𝑃𝑗P_{j}italic_P start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT for certain 1jm1𝑗𝑚1\leq j\leq m1 ≤ italic_j ≤ italic_m, where we denote the b𝑏bitalic_b-th input (1bB1𝑏𝐵1\leq b\leq B1 ≤ italic_b ≤ italic_B) as zi,b{0,1}lsubscript𝑧𝑖𝑏superscript01𝑙z_{i,b}\in\{0,1\}^{l}italic_z start_POSTSUBSCRIPT italic_i , italic_b end_POSTSUBSCRIPT ∈ { 0 , 1 } start_POSTSUPERSCRIPT italic_l end_POSTSUPERSCRIPT. The circuit first consists a subcircuit producing a bit wi,b=1subscript𝑤𝑖𝑏1w_{i,b}=1italic_w start_POSTSUBSCRIPT italic_i , italic_b end_POSTSUBSCRIPT = 1 if ui,1,b++ui,m,b=0subscript𝑢𝑖1𝑏subscript𝑢𝑖𝑚𝑏0u_{i,1,b}+\cdots+u_{i,m,b}=0italic_u start_POSTSUBSCRIPT italic_i , 1 , italic_b end_POSTSUBSCRIPT + ⋯ + italic_u start_POSTSUBSCRIPT italic_i , italic_m , italic_b end_POSTSUBSCRIPT = 0 and 0 otherwise for 1is,1bBformulae-sequence1𝑖𝑠1𝑏𝐵1\leq i\leq s,1\leq b\leq B1 ≤ italic_i ≤ italic_s , 1 ≤ italic_b ≤ italic_B. Then, the circuit computes and outputs f(Z)𝑓𝑍f(Z)italic_f ( italic_Z ) where Z={zi,b|wi,b=1}1is,1bB𝑍subscriptconditional-setsubscript𝑧𝑖𝑏subscript𝑤𝑖𝑏1formulae-sequence1𝑖𝑠1𝑏𝐵Z=\{z_{i,b}|w_{i,b}=1\}_{1\leq i\leq s,1\leq b\leq B}italic_Z = { italic_z start_POSTSUBSCRIPT italic_i , italic_b end_POSTSUBSCRIPT | italic_w start_POSTSUBSCRIPT italic_i , italic_b end_POSTSUBSCRIPT = 1 } start_POSTSUBSCRIPT 1 ≤ italic_i ≤ italic_s , 1 ≤ italic_b ≤ italic_B end_POSTSUBSCRIPT and f𝑓fitalic_f is the function to be computed on the constructible set Y𝑌Yitalic_Y. 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. m𝑚mitalic_m parties P1,,Pmsubscript𝑃1subscript𝑃𝑚P_{1},\cdots,P_{m}italic_P start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , ⋯ , italic_P start_POSTSUBSCRIPT italic_m end_POSTSUBSCRIPT. Set size n𝑛nitalic_n. The element length l𝑙litalic_l. A field 𝔽𝔽\mathbb{F}blackboard_F. Cuckoo hashing parameters: hash functions h1,h2,h3subscript1subscript2subscript3h_{1},h_{2},h_{3}italic_h start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , italic_h start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT , italic_h start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT and number of bins B𝐵Bitalic_B.

    Inputs. Each party Pisubscript𝑃𝑖P_{i}italic_P start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT has input Xi={xi1,,xin}{0,1}lsubscript𝑋𝑖superscriptsubscript𝑥𝑖1superscriptsubscript𝑥𝑖𝑛superscript01𝑙X_{i}=\{x_{i}^{1},\cdots,x_{i}^{n}\}\subseteq\{0,1\}^{l}italic_X start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT = { italic_x start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 1 end_POSTSUPERSCRIPT , ⋯ , italic_x start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_n end_POSTSUPERSCRIPT } ⊆ { 0 , 1 } start_POSTSUPERSCRIPT italic_l end_POSTSUPERSCRIPT.

    1. 1.

      Hashing to bin. P1subscript𝑃1P_{1}italic_P start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT does 𝒞11,,𝒞1B𝖢𝗎𝖼𝗄𝗈𝗈h1,h2,h3B(X1)superscriptsubscript𝒞11superscriptsubscript𝒞1𝐵superscriptsubscript𝖢𝗎𝖼𝗄𝗈𝗈subscript1subscript2subscript3𝐵subscript𝑋1\mathcal{C}_{1}^{1},\cdots,\mathcal{C}_{1}^{B}\leftarrow\mathsf{Cuckoo}_{h_{1}% ,h_{2},h_{3}}^{B}(X_{1})caligraphic_C start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 1 end_POSTSUPERSCRIPT , ⋯ , caligraphic_C start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_B end_POSTSUPERSCRIPT ← sansserif_Cuckoo start_POSTSUBSCRIPT italic_h start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , italic_h start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT , italic_h start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_B end_POSTSUPERSCRIPT ( italic_X start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ). For 1<jm1𝑗𝑚1<j\leq m1 < italic_j ≤ italic_m, Pjsubscript𝑃𝑗P_{j}italic_P start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT does 𝒯j1,,𝒯jB𝖲𝗂𝗆𝗉𝗅𝖾h1,h2,h3B(Xj)superscriptsubscript𝒯𝑗1superscriptsubscript𝒯𝑗𝐵superscriptsubscript𝖲𝗂𝗆𝗉𝗅𝖾subscript1subscript2subscript3𝐵subscript𝑋𝑗\mathcal{T}_{j}^{1},\cdots,\mathcal{T}_{j}^{B}\leftarrow\mathsf{Simple}_{h_{1}% ,h_{2},h_{3}}^{B}(X_{j})caligraphic_T start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 1 end_POSTSUPERSCRIPT , ⋯ , caligraphic_T start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_B end_POSTSUPERSCRIPT ← sansserif_Simple start_POSTSUBSCRIPT italic_h start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , italic_h start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT , italic_h start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_B end_POSTSUPERSCRIPT ( italic_X start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT ).

    2. 2.

      Batch pure membership zero-sharing. All parties invoke 𝖻𝗉𝖬𝖹𝖲subscript𝖻𝗉𝖬𝖹𝖲\mathcal{F}_{\mathsf{bpMZS}}caligraphic_F start_POSTSUBSCRIPT sansserif_bpMZS end_POSTSUBSCRIPT of batch size B𝐵Bitalic_B, where P1subscript𝑃1P_{1}italic_P start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT acts as P𝗉𝗂𝗏𝗈𝗍subscript𝑃𝗉𝗂𝗏𝗈𝗍P_{\mathsf{pivot}}italic_P start_POSTSUBSCRIPT sansserif_pivot end_POSTSUBSCRIPT with inputs 𝒞11,,𝒞1Bsuperscriptsubscript𝒞11superscriptsubscript𝒞1𝐵\mathcal{C}_{1}^{1},\cdots,\mathcal{C}_{1}^{B}caligraphic_C start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 1 end_POSTSUPERSCRIPT , ⋯ , caligraphic_C start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_B end_POSTSUPERSCRIPT and each Pjsubscript𝑃𝑗P_{j}italic_P start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT inputs 𝒯j1,,𝒯jBsuperscriptsubscript𝒯𝑗1superscriptsubscript𝒯𝑗𝐵\mathcal{T}_{j}^{1},\cdots,\mathcal{T}_{j}^{B}caligraphic_T start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 1 end_POSTSUPERSCRIPT , ⋯ , caligraphic_T start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_B end_POSTSUPERSCRIPT for 1<jm1𝑗𝑚1<j\leq m1 < italic_j ≤ italic_m. For 1im1𝑖𝑚1\leq i\leq m1 ≤ italic_i ≤ italic_m, Pisubscript𝑃𝑖P_{i}italic_P start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT receives si=(si,1,,si,B)subscripts𝑖subscript𝑠𝑖1subscript𝑠𝑖𝐵\textbf{s}_{i}=(s_{i,1},\cdots,s_{i,B})s start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT = ( italic_s start_POSTSUBSCRIPT italic_i , 1 end_POSTSUBSCRIPT , ⋯ , italic_s start_POSTSUBSCRIPT italic_i , italic_B end_POSTSUBSCRIPT ).

    The following actions of the parties depend on the functionality:

    MPSI.

    1. 3.

      For 1<jm1𝑗𝑚1<j\leq m1 < italic_j ≤ italic_m, Pjsubscript𝑃𝑗P_{j}italic_P start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT sends sjsubscripts𝑗\textbf{s}_{j}s start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT to P1subscript𝑃1P_{1}italic_P start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT. P1subscript𝑃1P_{1}italic_P start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT computes s=1<jmsjssubscript1𝑗𝑚subscripts𝑗\textbf{s}=\sum_{1<j\leq m}\textbf{s}_{j}s = ∑ start_POSTSUBSCRIPT 1 < italic_j ≤ italic_m end_POSTSUBSCRIPT s start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT and sets Y=𝑌Y=\emptysetitalic_Y = ∅. For 1bB1𝑏𝐵1\leq b\leq B1 ≤ italic_b ≤ italic_B, if sb=0subscript𝑠𝑏0s_{b}=0italic_s start_POSTSUBSCRIPT italic_b end_POSTSUBSCRIPT = 0, P1subscript𝑃1P_{1}italic_P start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT outputs the element in 𝒞1bsuperscriptsubscript𝒞1𝑏\mathcal{C}_{1}^{b}caligraphic_C start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_b end_POSTSUPERSCRIPT.

    MPSI-card.

    1. 3.

      For 1im1𝑖𝑚1\leq i\leq m1 ≤ italic_i ≤ italic_m, Pisubscript𝑃𝑖P_{i}italic_P start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT invoke 𝗌𝗁𝗎𝖿𝖿𝗅𝖾subscript𝗌𝗁𝗎𝖿𝖿𝗅𝖾\mathcal{F}_{\mathsf{shuffle}}caligraphic_F start_POSTSUBSCRIPT sansserif_shuffle end_POSTSUBSCRIPT with input sisubscripts𝑖\textbf{s}_{i}s start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT. Pisubscript𝑃𝑖P_{i}italic_P start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT receives sisuperscriptsubscripts𝑖\textbf{s}_{i}^{\prime}s start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT.

    2. 4.

      For 1<jm1𝑗𝑚1<j\leq m1 < italic_j ≤ italic_m, Pjsubscript𝑃𝑗P_{j}italic_P start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT sends sjsuperscriptsubscripts𝑗\textbf{s}_{j}^{\prime}s start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT to P1subscript𝑃1P_{1}italic_P start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT. P1subscript𝑃1P_{1}italic_P start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT outputs 𝗓𝖾𝗋𝗈(1<jmsj)𝗓𝖾𝗋𝗈subscript1𝑗𝑚superscriptsubscripts𝑗\mathsf{zero}(\sum_{1<j\leq m}\textbf{s}_{j}^{\prime})sansserif_zero ( ∑ start_POSTSUBSCRIPT 1 < italic_j ≤ italic_m end_POSTSUBSCRIPT s start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT ).

    Circuit-MPSI (Approach 1).

    1. 3.

      All parties invoke an m𝑚mitalic_m-party computation with circuit C1,B,l1superscriptsubscript𝐶1𝐵𝑙1C_{1,B,l}^{1}italic_C start_POSTSUBSCRIPT 1 , italic_B , italic_l end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 1 end_POSTSUPERSCRIPT. For 1bB,1imformulae-sequence1𝑏𝐵1𝑖𝑚1\leq b\leq B,1\leq i\leq m1 ≤ italic_b ≤ italic_B , 1 ≤ italic_i ≤ italic_m, Pisubscript𝑃𝑖P_{i}italic_P start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT takes si,bsubscript𝑠𝑖𝑏s_{i,b}italic_s start_POSTSUBSCRIPT italic_i , italic_b end_POSTSUBSCRIPT as its b𝑏bitalic_b-th input, and P1subscript𝑃1P_{1}italic_P start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT inputs the element in 𝒞1bsuperscriptsubscript𝒞1𝑏\mathcal{C}_{1}^{b}caligraphic_C start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_b end_POSTSUPERSCRIPT.

    Figure 13: MPSI/MPSI-card/Circuit-MPSI
    • Parameters. Same as in Figure 13.

    • Inputs. Each party Pisubscript𝑃𝑖P_{i}italic_P start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT has input Xi={xi1,,xin}{0,1}lsubscript𝑋𝑖superscriptsubscript𝑥𝑖1superscriptsubscript𝑥𝑖𝑛superscript01𝑙X_{i}=\{x_{i}^{1},\cdots,x_{i}^{n}\}\subseteq\{0,1\}^{l}italic_X start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT = { italic_x start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 1 end_POSTSUPERSCRIPT , ⋯ , italic_x start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_n end_POSTSUPERSCRIPT } ⊆ { 0 , 1 } start_POSTSUPERSCRIPT italic_l end_POSTSUPERSCRIPT.

      1. 1.

        Hashing to bin. P1subscript𝑃1P_{1}italic_P start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT does 𝒞11,,𝒞1B𝖢𝗎𝖼𝗄𝗈𝗈h1,h2,h3B(X1)superscriptsubscript𝒞11superscriptsubscript𝒞1𝐵superscriptsubscript𝖢𝗎𝖼𝗄𝗈𝗈subscript1subscript2subscript3𝐵subscript𝑋1\mathcal{C}_{1}^{1},\cdots,\mathcal{C}_{1}^{B}\leftarrow\mathsf{Cuckoo}_{h_{1}% ,h_{2},h_{3}}^{B}(X_{1})caligraphic_C start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 1 end_POSTSUPERSCRIPT , ⋯ , caligraphic_C start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_B end_POSTSUPERSCRIPT ← sansserif_Cuckoo start_POSTSUBSCRIPT italic_h start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , italic_h start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT , italic_h start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_B end_POSTSUPERSCRIPT ( italic_X start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ). For 1<jm1𝑗𝑚1<j\leq m1 < italic_j ≤ italic_m, Pjsubscript𝑃𝑗P_{j}italic_P start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT does 𝒯j1,,𝒯jB𝖲𝗂𝗆𝗉𝗅𝖾h1,h2,h3B(Xj)superscriptsubscript𝒯𝑗1superscriptsubscript𝒯𝑗𝐵superscriptsubscript𝖲𝗂𝗆𝗉𝗅𝖾subscript1subscript2subscript3𝐵subscript𝑋𝑗\mathcal{T}_{j}^{1},\cdots,\mathcal{T}_{j}^{B}\leftarrow\mathsf{Simple}_{h_{1}% ,h_{2},h_{3}}^{B}(X_{j})caligraphic_T start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 1 end_POSTSUPERSCRIPT , ⋯ , caligraphic_T start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_B end_POSTSUPERSCRIPT ← sansserif_Simple start_POSTSUBSCRIPT italic_h start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , italic_h start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT , italic_h start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_B end_POSTSUPERSCRIPT ( italic_X start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT ). Pjsubscript𝑃𝑗P_{j}italic_P start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT defines 𝒱j1,,𝒱jBsuperscriptsubscript𝒱𝑗1superscriptsubscript𝒱𝑗𝐵\mathcal{V}_{j}^{1},\cdots,\mathcal{V}_{j}^{B}caligraphic_V start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 1 end_POSTSUPERSCRIPT , ⋯ , caligraphic_V start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_B end_POSTSUPERSCRIPT where for 1bB1𝑏𝐵1\leq b\leq B1 ≤ italic_b ≤ italic_B, 𝒱jbsuperscriptsubscript𝒱𝑗𝑏\mathcal{V}_{j}^{b}caligraphic_V start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_b end_POSTSUPERSCRIPT contains the associated payloads of the elements in 𝒯jbsuperscriptsubscript𝒯𝑗𝑏\mathcal{T}_{j}^{b}caligraphic_T start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_b end_POSTSUPERSCRIPT.

      2. 2.

        Batch pure membership zero-sharing with payloads. All parties invoke 𝖻𝗉𝖬𝖹𝖲𝗉subscript𝖻𝗉𝖬𝖹𝖲𝗉\mathcal{F}_{\mathsf{bpMZSp}}caligraphic_F start_POSTSUBSCRIPT sansserif_bpMZSp end_POSTSUBSCRIPT of batch size B𝐵Bitalic_B, where P1subscript𝑃1P_{1}italic_P start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT acts as P𝗉𝗂𝗏𝗈𝗍subscript𝑃𝗉𝗂𝗏𝗈𝗍P_{\mathsf{pivot}}italic_P start_POSTSUBSCRIPT sansserif_pivot end_POSTSUBSCRIPT with inputs 𝒞11,,𝒞1Bsuperscriptsubscript𝒞11superscriptsubscript𝒞1𝐵\mathcal{C}_{1}^{1},\cdots,\mathcal{C}_{1}^{B}caligraphic_C start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 1 end_POSTSUPERSCRIPT , ⋯ , caligraphic_C start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_B end_POSTSUPERSCRIPT and each of the remaining parties Pjsubscript𝑃𝑗P_{j}italic_P start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT inputs (𝒯j1,,𝒯jB)superscriptsubscript𝒯𝑗1superscriptsubscript𝒯𝑗𝐵(\mathcal{T}_{j}^{1},\cdots,\mathcal{T}_{j}^{B})( caligraphic_T start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 1 end_POSTSUPERSCRIPT , ⋯ , caligraphic_T start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_B end_POSTSUPERSCRIPT ) and (𝒱j1,,𝒱jB)superscriptsubscript𝒱𝑗1superscriptsubscript𝒱𝑗𝐵(\mathcal{V}_{j}^{1},\cdots,\mathcal{V}_{j}^{B})( caligraphic_V start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 1 end_POSTSUPERSCRIPT , ⋯ , caligraphic_V start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_B end_POSTSUPERSCRIPT ). For 1im1𝑖𝑚1\leq i\leq m1 ≤ italic_i ≤ italic_m, Pisubscript𝑃𝑖P_{i}italic_P start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT receives (si,wi)subscripts𝑖subscriptw𝑖(\textbf{s}_{i},\textbf{w}_{i})( s start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT , w start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT ).

      3. 3.

        For 1im1𝑖𝑚1\leq i\leq m1 ≤ italic_i ≤ italic_m, Pisubscript𝑃𝑖P_{i}italic_P start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT invoke 𝗌𝗁𝗎𝖿𝖿𝗅𝖾subscript𝗌𝗁𝗎𝖿𝖿𝗅𝖾\mathcal{F}_{\mathsf{shuffle}}caligraphic_F start_POSTSUBSCRIPT sansserif_shuffle end_POSTSUBSCRIPT with input sisubscripts𝑖\textbf{s}_{i}s start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT. Pisubscript𝑃𝑖P_{i}italic_P start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT receives si=(s1,sB)superscriptsubscripts𝑖superscriptsubscript𝑠1superscriptsubscript𝑠𝐵\textbf{s}_{i}^{\prime}=(s_{1}^{\prime}\cdots,s_{B}^{\prime})s start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT = ( italic_s start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT ⋯ , italic_s start_POSTSUBSCRIPT italic_B end_POSTSUBSCRIPT start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT ).

      4. 4.

        For 1bB1𝑏𝐵1\leq b\leq B1 ≤ italic_b ≤ italic_B, if 𝒞1bsuperscriptsubscript𝒞1𝑏\mathcal{C}_{1}^{b}caligraphic_C start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_b end_POSTSUPERSCRIPT is not an empty bin, P1subscript𝑃1P_{1}italic_P start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT sets w1,b=w1,b+vsubscript𝑤1𝑏subscript𝑤1𝑏𝑣w_{1,b}=w_{1,b}+vitalic_w start_POSTSUBSCRIPT 1 , italic_b end_POSTSUBSCRIPT = italic_w start_POSTSUBSCRIPT 1 , italic_b end_POSTSUBSCRIPT + italic_v, where v𝑣vitalic_v is the associated payload with the element in 𝒞1bsuperscriptsubscript𝒞1𝑏\mathcal{C}_{1}^{b}caligraphic_C start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_b end_POSTSUPERSCRIPT.

      5. 5.

        For 1im1𝑖𝑚1\leq i\leq m1 ≤ italic_i ≤ italic_m, Pisubscript𝑃𝑖P_{i}italic_P start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT invoke 𝗌𝗁𝗎𝖿𝖿𝗅𝖾subscript𝗌𝗁𝗎𝖿𝖿𝗅𝖾\mathcal{F}_{\mathsf{shuffle}}caligraphic_F start_POSTSUBSCRIPT sansserif_shuffle end_POSTSUBSCRIPT with input wisubscriptw𝑖\textbf{w}_{i}w start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT. Pisubscript𝑃𝑖P_{i}italic_P start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT receives wi=(w1,wB)superscriptsubscriptw𝑖superscriptsubscript𝑤1superscriptsubscript𝑤𝐵\textbf{w}_{i}^{\prime}=(w_{1}^{\prime}\cdots,w_{B}^{\prime})w start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT = ( italic_w start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT ⋯ , italic_w start_POSTSUBSCRIPT italic_B end_POSTSUBSCRIPT start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT ).

      6. 6.

        For 1<jm1𝑗𝑚1<j\leq m1 < italic_j ≤ italic_m, Pjsubscript𝑃𝑗P_{j}italic_P start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT sends sjsuperscriptsubscripts𝑗\textbf{s}_{j}^{\prime}s start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT to P1subscript𝑃1P_{1}italic_P start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT. P1subscript𝑃1P_{1}italic_P start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT computes s=1<jmsjsuperscriptssubscript1𝑗𝑚superscriptsubscripts𝑗\textbf{s}^{\prime}=\sum_{1<j\leq m}\textbf{s}_{j}^{\prime}s start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT = ∑ start_POSTSUBSCRIPT 1 < italic_j ≤ italic_m end_POSTSUBSCRIPT s start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT and defines a bit vector e=(e1,,eB)esubscript𝑒1subscript𝑒𝐵\textbf{e}=(e_{1},\cdots,e_{B})e = ( italic_e start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , ⋯ , italic_e start_POSTSUBSCRIPT italic_B end_POSTSUBSCRIPT ) where for 1bB1𝑏𝐵1\leq b\leq B1 ≤ italic_b ≤ italic_B, if sb=0superscriptsubscript𝑠𝑏0s_{b}^{\prime}=0italic_s start_POSTSUBSCRIPT italic_b end_POSTSUBSCRIPT start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT = 0, eb=1subscript𝑒𝑏1e_{b}=1italic_e start_POSTSUBSCRIPT italic_b end_POSTSUBSCRIPT = 1, otherwise eb=0subscript𝑒𝑏0e_{b}=0italic_e start_POSTSUBSCRIPT italic_b end_POSTSUBSCRIPT = 0. P1subscript𝑃1P_{1}italic_P start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT distributes e to Pjsubscript𝑃𝑗P_{j}italic_P start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT. For 1im1𝑖𝑚1\leq i\leq m1 ≤ italic_i ≤ italic_m, Pisubscript𝑃𝑖P_{i}italic_P start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT outputs 𝖧𝖶(e)𝖧𝖶e\mathsf{HW}(\textbf{e})sansserif_HW ( e ).

      7. 7.

        For 1im1𝑖𝑚1\leq i\leq m1 ≤ italic_i ≤ italic_m, Pisubscript𝑃𝑖P_{i}italic_P start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT computes ui=1bB𝗌.𝗍.eb=1wi,bsubscript𝑢𝑖subscriptformulae-sequence1𝑏𝐵𝗌𝗍subscript𝑒𝑏1superscriptsubscript𝑤𝑖𝑏u_{i}=\sum_{1\leq b\leq B\mathsf{s.t.}e_{b}=1}w_{i,b}^{\prime}italic_u start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT = ∑ start_POSTSUBSCRIPT 1 ≤ italic_b ≤ italic_B sansserif_s . sansserif_t . italic_e start_POSTSUBSCRIPT italic_b end_POSTSUBSCRIPT = 1 end_POSTSUBSCRIPT italic_w start_POSTSUBSCRIPT italic_i , italic_b end_POSTSUBSCRIPT start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT. For 1<jm1𝑗𝑚1<j\leq m1 < italic_j ≤ italic_m, Pjsubscript𝑃𝑗P_{j}italic_P start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT sends ujsubscript𝑢𝑗u_{j}italic_u start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT to P1subscript𝑃1P_{1}italic_P start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT. P1subscript𝑃1P_{1}italic_P start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT outputs u=1imui𝑢subscript1𝑖𝑚subscript𝑢𝑖u=\sum_{1\leq i\leq m}u_{i}italic_u = ∑ start_POSTSUBSCRIPT 1 ≤ italic_i ≤ italic_m end_POSTSUBSCRIPT italic_u start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT.

    Figure 14: MPSI-card-sum

    6.3 MPSU, MPSU-card and Circuit MPSU

    Consider a constructible set Y𝑌Yitalic_Y, whose CPF representation ψ(x,X1,,Xm)𝜓𝑥subscript𝑋1subscript𝑋𝑚\psi(x,X_{1},\cdots,X_{m})italic_ψ ( italic_x , italic_X start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , ⋯ , italic_X start_POSTSUBSCRIPT italic_m end_POSTSUBSCRIPT ) is a disjunction of several subformulas, one is an atomic proposition xXi𝑥subscript𝑋𝑖x\in X_{i}italic_x ∈ italic_X start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT for some 1im1𝑖𝑚1\leq i\leq m1 ≤ italic_i ≤ italic_m. For instance, X1Xmsubscript𝑋1subscript𝑋𝑚X_{1}\cup\cdots\cup X_{m}italic_X start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ∪ ⋯ ∪ italic_X start_POSTSUBSCRIPT italic_m end_POSTSUBSCRIPT can be represented as (xX1)((xX1)(xX2))((xX1)(xXm1)(xXm))𝑥subscript𝑋1𝑥subscript𝑋1𝑥subscript𝑋2𝑥subscript𝑋1𝑥subscript𝑋𝑚1𝑥subscript𝑋𝑚(x\in X_{1})\lor((x\notin X_{1})\land(x\in X_{2}))\lor\cdots\lor((x\notin X_{1% })\land\cdots\land(x\notin X_{m-1})\land(x\in X_{m}))( italic_x ∈ italic_X start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ) ∨ ( ( italic_x ∉ italic_X start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ) ∧ ( italic_x ∈ italic_X start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT ) ) ∨ ⋯ ∨ ( ( italic_x ∉ italic_X start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ) ∧ ⋯ ∧ ( italic_x ∉ italic_X start_POSTSUBSCRIPT italic_m - 1 end_POSTSUBSCRIPT ) ∧ ( italic_x ∈ italic_X start_POSTSUBSCRIPT italic_m end_POSTSUBSCRIPT ) ). In this case, the subformula xXi𝑥subscript𝑋𝑖x\in X_{i}italic_x ∈ italic_X start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT only involves Pisubscript𝑃𝑖P_{i}italic_P start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT, so Pisubscript𝑃𝑖P_{i}italic_P start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT simply shares its elements among the parties. Especially, if i=1𝑖1i=1italic_i = 1, then the subformula can be ignored, as long as P1subscript𝑃1P_{1}italic_P start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT finally appends its elements to the reconstructed elements to obtain Y1subscript𝑌1Y_{1}italic_Y start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT.

    The most commonly used protocols in this case are MPSU, MPSU-card and circuit MPSU. Let CN,l2superscriptsubscript𝐶𝑁superscript𝑙2C_{N,l^{\prime}}^{2}italic_C start_POSTSUBSCRIPT italic_N , italic_l start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT be a circuit with m𝑚mitalic_m groups of N𝑁Nitalic_N inputs on 𝔽𝔽\mathbb{F}blackboard_F. The k𝑘kitalic_k-th group is associated with Pksubscript𝑃𝑘P_{k}italic_P start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT (1km)1𝑘𝑚(1\leq k\leq m)( 1 ≤ italic_k ≤ italic_m ), where the i𝑖iitalic_i-th inputs is denoted by zk,isubscript𝑧𝑘𝑖z_{k,i}italic_z start_POSTSUBSCRIPT italic_k , italic_i end_POSTSUBSCRIPT (1iN)1𝑖𝑁(1\leq i\leq N)( 1 ≤ italic_i ≤ italic_N ). The circuit computes and outputs f(Z)𝑓𝑍f(Z)italic_f ( italic_Z ) where Z={zi|z1,i++zm,i=zi0l}1iN𝑍subscriptconditional-setsubscript𝑧𝑖subscript𝑧1𝑖subscript𝑧𝑚𝑖conditionalsubscript𝑧𝑖superscript0superscript𝑙1𝑖𝑁Z=\{z_{i}|z_{1,i}+\cdots+z_{m,i}=z_{i}\|0^{l^{\prime}}\}_{1\leq i\leq N}italic_Z = { italic_z start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT | italic_z start_POSTSUBSCRIPT 1 , italic_i end_POSTSUBSCRIPT + ⋯ + italic_z start_POSTSUBSCRIPT italic_m , italic_i end_POSTSUBSCRIPT = italic_z start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT ∥ 0 start_POSTSUPERSCRIPT italic_l start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT end_POSTSUPERSCRIPT } start_POSTSUBSCRIPT 1 ≤ italic_i ≤ italic_N end_POSTSUBSCRIPT and f𝑓fitalic_f is the function to be computed on Y𝑌Yitalic_Y. The complete MPSU, MPSU-card and circuit MPSU protocols are described in Figure 15.

    • Parameters. m𝑚mitalic_m parties P1,,Pmsubscript𝑃1subscript𝑃𝑚P_{1},\cdots,P_{m}italic_P start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , ⋯ , italic_P start_POSTSUBSCRIPT italic_m end_POSTSUBSCRIPT. Set size n𝑛nitalic_n . The element length l𝑙litalic_l. The all-zero string length lsuperscript𝑙l^{\prime}italic_l start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT. A field 𝔽𝔽\mathbb{F}blackboard_F. An encoding function 𝖼𝗈𝖽𝖾:𝔽{0,1}l+l:𝖼𝗈𝖽𝖾𝔽superscript01𝑙superscript𝑙\mathsf{code}:\mathbb{F}\to\{0,1\}^{l+l^{\prime}}sansserif_code : blackboard_F → { 0 , 1 } start_POSTSUPERSCRIPT italic_l + italic_l start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT end_POSTSUPERSCRIPT. Cuckoo hashing parameters: hash functions h1,h2,h3subscript1subscript2subscript3h_{1},h_{2},h_{3}italic_h start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , italic_h start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT , italic_h start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT and number of bins B𝐵Bitalic_B.

    • Inputs. Each party Pisubscript𝑃𝑖P_{i}italic_P start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT has input Xi={xi1,,xin}{0,1}lsubscript𝑋𝑖superscriptsubscript𝑥𝑖1superscriptsubscript𝑥𝑖𝑛superscript01𝑙X_{i}=\{x_{i}^{1},\cdots,x_{i}^{n}\}\subseteq\{0,1\}^{l}italic_X start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT = { italic_x start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 1 end_POSTSUPERSCRIPT , ⋯ , italic_x start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_n end_POSTSUPERSCRIPT } ⊆ { 0 , 1 } start_POSTSUPERSCRIPT italic_l end_POSTSUPERSCRIPT.

      1. 1.

        Hashing to bin. P1subscript𝑃1P_{1}italic_P start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT does 𝒯11,,𝒯1B𝖲𝗂𝗆𝗉𝗅𝖾h1,h2,h3B(X1)superscriptsubscript𝒯11superscriptsubscript𝒯1𝐵superscriptsubscript𝖲𝗂𝗆𝗉𝗅𝖾subscript1subscript2subscript3𝐵subscript𝑋1\mathcal{T}_{1}^{1},\cdots,\mathcal{T}_{1}^{B}\leftarrow\mathsf{Simple}_{h_{1}% ,h_{2},h_{3}}^{B}(X_{1})caligraphic_T start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 1 end_POSTSUPERSCRIPT , ⋯ , caligraphic_T start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_B end_POSTSUPERSCRIPT ← sansserif_Simple start_POSTSUBSCRIPT italic_h start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , italic_h start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT , italic_h start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_B end_POSTSUPERSCRIPT ( italic_X start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ). For 1<jm1𝑗𝑚1<j\leq m1 < italic_j ≤ italic_m, Pjsubscript𝑃𝑗P_{j}italic_P start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT does 𝒞j1,,𝒞jB𝖢𝗎𝖼𝗄𝗈𝗈h1,h2,h3B(Xj)superscriptsubscript𝒞𝑗1superscriptsubscript𝒞𝑗𝐵superscriptsubscript𝖢𝗎𝖼𝗄𝗈𝗈subscript1subscript2subscript3𝐵subscript𝑋𝑗\mathcal{C}_{j}^{1},\cdots,\mathcal{C}_{j}^{B}\leftarrow\mathsf{Cuckoo}_{h_{1}% ,h_{2},h_{3}}^{B}(X_{j})caligraphic_C start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 1 end_POSTSUPERSCRIPT , ⋯ , caligraphic_C start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_B end_POSTSUPERSCRIPT ← sansserif_Cuckoo start_POSTSUBSCRIPT italic_h start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , italic_h start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT , italic_h start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_B end_POSTSUPERSCRIPT ( italic_X start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT ) and 𝒯j1,,𝒯jB𝖲𝗂𝗆𝗉𝗅𝖾h1,h2,h3B(Xj)superscriptsubscript𝒯𝑗1superscriptsubscript𝒯𝑗𝐵superscriptsubscript𝖲𝗂𝗆𝗉𝗅𝖾subscript1subscript2subscript3𝐵subscript𝑋𝑗\mathcal{T}_{j}^{1},\cdots,\mathcal{T}_{j}^{B}\leftarrow\mathsf{Simple}_{h_{1}% ,h_{2},h_{3}}^{B}(X_{j})caligraphic_T start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 1 end_POSTSUPERSCRIPT , ⋯ , caligraphic_T start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_B end_POSTSUPERSCRIPT ← sansserif_Simple start_POSTSUBSCRIPT italic_h start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , italic_h start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT , italic_h start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_B end_POSTSUPERSCRIPT ( italic_X start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT ).

      2. 2.

        Batch pure membership zero-sharing. For 1<jm1𝑗𝑚1<j\leq m1 < italic_j ≤ italic_m, P1,,Pjsubscript𝑃1subscript𝑃𝑗P_{1},\cdots,P_{j}italic_P start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , ⋯ , italic_P start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT invoke 𝖻𝗉𝖭𝖬𝖹𝖲subscript𝖻𝗉𝖭𝖬𝖹𝖲\mathcal{F}_{\mathsf{bpNMZS}}caligraphic_F start_POSTSUBSCRIPT sansserif_bpNMZS end_POSTSUBSCRIPT of batch size B𝐵Bitalic_B, where Pjsubscript𝑃𝑗P_{j}italic_P start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT acts as P𝗉𝗂𝗏𝗈𝗍subscript𝑃𝗉𝗂𝗏𝗈𝗍P_{\mathsf{pivot}}italic_P start_POSTSUBSCRIPT sansserif_pivot end_POSTSUBSCRIPT with inputs 𝒞j1,,𝒞jBsuperscriptsubscript𝒞𝑗1superscriptsubscript𝒞𝑗𝐵\mathcal{C}_{j}^{1},\cdots,\mathcal{C}_{j}^{B}caligraphic_C start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 1 end_POSTSUPERSCRIPT , ⋯ , caligraphic_C start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_B end_POSTSUPERSCRIPT and each Pjsubscript𝑃superscript𝑗P_{j^{\prime}}italic_P start_POSTSUBSCRIPT italic_j start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT end_POSTSUBSCRIPT inputs 𝒯j1,,𝒯jBsuperscriptsubscript𝒯superscript𝑗1superscriptsubscript𝒯superscript𝑗𝐵\mathcal{T}_{j^{\prime}}^{1},\cdots,\mathcal{T}_{j^{\prime}}^{B}caligraphic_T start_POSTSUBSCRIPT italic_j start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 1 end_POSTSUPERSCRIPT , ⋯ , caligraphic_T start_POSTSUBSCRIPT italic_j start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_B end_POSTSUPERSCRIPT for j{i1,,iq}{j}superscript𝑗subscript𝑖1subscript𝑖𝑞𝑗j^{\prime}\in\{{i_{1}},\cdots,{i_{q}}\}\setminus\{j\}italic_j start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT ∈ { italic_i start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , ⋯ , italic_i start_POSTSUBSCRIPT italic_q end_POSTSUBSCRIPT } ∖ { italic_j }. For 1ij1𝑖𝑗1\leq i\leq j1 ≤ italic_i ≤ italic_j, Pisubscript𝑃𝑖P_{i}italic_P start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT receives sj,i=(sj,i,1,,sj,i,B)subscripts𝑗𝑖subscript𝑠𝑗𝑖1subscript𝑠𝑗𝑖𝐵\textbf{s}_{j,i}=(s_{j,i,1},\cdots,s_{j,i,B})s start_POSTSUBSCRIPT italic_j , italic_i end_POSTSUBSCRIPT = ( italic_s start_POSTSUBSCRIPT italic_j , italic_i , 1 end_POSTSUBSCRIPT , ⋯ , italic_s start_POSTSUBSCRIPT italic_j , italic_i , italic_B end_POSTSUBSCRIPT ).

      The following actions of the parties depend on the functionality:

    • MPSU.

      1. 3.

        For 1<jm1𝑗𝑚1<j\leq m1 < italic_j ≤ italic_m, 1bB1𝑏𝐵1\leq b\leq B1 ≤ italic_b ≤ italic_B, if 𝒞jbsuperscriptsubscript𝒞𝑗𝑏\mathcal{C}_{j}^{b}caligraphic_C start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_b end_POSTSUPERSCRIPT is not an empty bin, Pjsubscript𝑃𝑗P_{j}italic_P start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT computes sj,j,b=𝖼𝗈𝖽𝖾(sj,j,b)(x0l)subscript𝑠𝑗𝑗𝑏direct-sum𝖼𝗈𝖽𝖾subscript𝑠𝑗𝑗𝑏conditional𝑥superscript0superscript𝑙s_{j,j,b}=\mathsf{code}(s_{j,j,b})\oplus(x\|0^{l^{\prime}})italic_s start_POSTSUBSCRIPT italic_j , italic_j , italic_b end_POSTSUBSCRIPT = sansserif_code ( italic_s start_POSTSUBSCRIPT italic_j , italic_j , italic_b end_POSTSUBSCRIPT ) ⊕ ( italic_x ∥ 0 start_POSTSUPERSCRIPT italic_l start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT end_POSTSUPERSCRIPT ), where x𝑥xitalic_x is the element in 𝒞jbsuperscriptsubscript𝒞𝑗𝑏\mathcal{C}_{j}^{b}caligraphic_C start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_b end_POSTSUPERSCRIPT, otherwise Pjsubscript𝑃𝑗P_{j}italic_P start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT samples sj,j,b{0,1}l+lsubscript𝑠𝑗𝑗𝑏superscript01𝑙superscript𝑙s_{j,j,b}\leftarrow\{0,1\}^{l+l^{\prime}}italic_s start_POSTSUBSCRIPT italic_j , italic_j , italic_b end_POSTSUBSCRIPT ← { 0 , 1 } start_POSTSUPERSCRIPT italic_l + italic_l start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT end_POSTSUPERSCRIPT.

      2. 4.

        For 1im1𝑖𝑚1\leq i\leq m1 ≤ italic_i ≤ italic_m, Pisubscript𝑃𝑖P_{i}italic_P start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT computes ui({0,1}l+l)(m1)Bsubscriptu𝑖superscriptsuperscript01𝑙superscript𝑙𝑚1𝐵\textbf{u}_{i}\in(\{0,1\}^{l+l^{\prime}})^{(m-1)B}u start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT ∈ ( { 0 , 1 } start_POSTSUPERSCRIPT italic_l + italic_l start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT end_POSTSUPERSCRIPT ) start_POSTSUPERSCRIPT ( italic_m - 1 ) italic_B end_POSTSUPERSCRIPT as follows: For max(2,i)jm,1bBformulae-sequence𝑚𝑎𝑥2𝑖𝑗𝑚1𝑏𝐵max(2,i)\leq j\leq m,1\leq b\leq Bitalic_m italic_a italic_x ( 2 , italic_i ) ≤ italic_j ≤ italic_m , 1 ≤ italic_b ≤ italic_B, ui,(j2)B+b=sj,i,bsubscript𝑢𝑖𝑗2𝐵𝑏subscript𝑠𝑗𝑖𝑏u_{i,(j-2)B+b}=s_{j,i,b}italic_u start_POSTSUBSCRIPT italic_i , ( italic_j - 2 ) italic_B + italic_b end_POSTSUBSCRIPT = italic_s start_POSTSUBSCRIPT italic_j , italic_i , italic_b end_POSTSUBSCRIPT. Set other positions to 00.

      3. 5.

        For 1im1𝑖𝑚1\leq i\leq m1 ≤ italic_i ≤ italic_m, Pisubscript𝑃𝑖P_{i}italic_P start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT invoke 𝗌𝗁𝗎𝖿𝖿𝗅𝖾subscript𝗌𝗁𝗎𝖿𝖿𝗅𝖾\mathcal{F}_{\mathsf{shuffle}}caligraphic_F start_POSTSUBSCRIPT sansserif_shuffle end_POSTSUBSCRIPT with input uisubscriptu𝑖\textbf{u}_{i}u start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT. Pisubscript𝑃𝑖P_{i}italic_P start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT receives uisuperscriptsubscriptu𝑖\textbf{u}_{i}^{\prime}u start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT.

      4. 6.

        For 1<jm1𝑗𝑚1<j\leq m1 < italic_j ≤ italic_m, Pjsubscript𝑃𝑗P_{j}italic_P start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT sends ujsuperscriptsubscriptu𝑗\textbf{u}_{j}^{\prime}u start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT to P1subscript𝑃1P_{1}italic_P start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT. P1subscript𝑃1P_{1}italic_P start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT computes u=1<jmujsuperscriptusubscript1𝑗𝑚superscriptsubscriptu𝑗\textbf{u}^{\prime}=\sum_{1<j\leq m}\textbf{u}_{j}^{\prime}u start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT = ∑ start_POSTSUBSCRIPT 1 < italic_j ≤ italic_m end_POSTSUBSCRIPT u start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT and sets Y=𝑌Y=\emptysetitalic_Y = ∅. For 1bB1𝑏𝐵1\leq b\leq B1 ≤ italic_b ≤ italic_B, if ub=y0lsuperscriptsubscript𝑢𝑏conditional𝑦superscript0superscript𝑙u_{b}^{\prime}=y\|0^{l^{\prime}}italic_u start_POSTSUBSCRIPT italic_b end_POSTSUBSCRIPT start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT = italic_y ∥ 0 start_POSTSUPERSCRIPT italic_l start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT end_POSTSUPERSCRIPT for some y{0,1}l𝑦superscript01𝑙y\in\{0,1\}^{l}italic_y ∈ { 0 , 1 } start_POSTSUPERSCRIPT italic_l end_POSTSUPERSCRIPT, P1subscript𝑃1P_{1}italic_P start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT outputs y𝑦yitalic_y.

    • MPSU-card.

      1. 3.

        For 1<jm1𝑗𝑚1<j\leq m1 < italic_j ≤ italic_m, 1bB1𝑏𝐵1\leq b\leq B1 ≤ italic_b ≤ italic_B, Pjsubscript𝑃𝑗P_{j}italic_P start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT chooses sj,j,bsubscript𝑠𝑗𝑗𝑏s_{j,j,b}italic_s start_POSTSUBSCRIPT italic_j , italic_j , italic_b end_POSTSUBSCRIPT at random if 𝒞jbsuperscriptsubscript𝒞𝑗𝑏\mathcal{C}_{j}^{b}caligraphic_C start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_b end_POSTSUPERSCRIPT is an empty bin.

      2. 4.

        For 1im1𝑖𝑚1\leq i\leq m1 ≤ italic_i ≤ italic_m, Pisubscript𝑃𝑖P_{i}italic_P start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT computes ui𝔽(m1)Bsubscriptu𝑖superscript𝔽𝑚1𝐵\textbf{u}_{i}\in\mathbb{F}^{(m-1)B}u start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT ∈ blackboard_F start_POSTSUPERSCRIPT ( italic_m - 1 ) italic_B end_POSTSUPERSCRIPT as follows: For max(2,i)jm,1bBformulae-sequence𝑚𝑎𝑥2𝑖𝑗𝑚1𝑏𝐵max(2,i)\leq j\leq m,1\leq b\leq Bitalic_m italic_a italic_x ( 2 , italic_i ) ≤ italic_j ≤ italic_m , 1 ≤ italic_b ≤ italic_B, ui,(j2)B+b=sj,i,bsubscript𝑢𝑖𝑗2𝐵𝑏subscript𝑠𝑗𝑖𝑏u_{i,(j-2)B+b}=s_{j,i,b}italic_u start_POSTSUBSCRIPT italic_i , ( italic_j - 2 ) italic_B + italic_b end_POSTSUBSCRIPT = italic_s start_POSTSUBSCRIPT italic_j , italic_i , italic_b end_POSTSUBSCRIPT. Set other positions to 00.

      3. 5.

        For 1im1𝑖𝑚1\leq i\leq m1 ≤ italic_i ≤ italic_m, Pisubscript𝑃𝑖P_{i}italic_P start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT invoke 𝗌𝗁𝗎𝖿𝖿𝗅𝖾subscript𝗌𝗁𝗎𝖿𝖿𝗅𝖾\mathcal{F}_{\mathsf{shuffle}}caligraphic_F start_POSTSUBSCRIPT sansserif_shuffle end_POSTSUBSCRIPT with input uisubscriptu𝑖\textbf{u}_{i}u start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT. Pisubscript𝑃𝑖P_{i}italic_P start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT receives uisuperscriptsubscriptu𝑖\textbf{u}_{i}^{\prime}u start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT.

      4. 6.

        For 1<jm1𝑗𝑚1<j\leq m1 < italic_j ≤ italic_m, Pjsubscript𝑃𝑗P_{j}italic_P start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT sends ujsuperscriptsubscriptu𝑗\textbf{u}_{j}^{\prime}u start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT to P1subscript𝑃1P_{1}italic_P start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT. P1subscript𝑃1P_{1}italic_P start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT outputs 𝗓𝖾𝗋𝗈(1<jmuj)𝗓𝖾𝗋𝗈subscript1𝑗𝑚superscriptsubscriptu𝑗\mathsf{zero}(\sum_{1<j\leq m}\textbf{u}_{j}^{\prime})sansserif_zero ( ∑ start_POSTSUBSCRIPT 1 < italic_j ≤ italic_m end_POSTSUBSCRIPT u start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT ).

    • Circuit-MPSU (Approach 2).

      1. 3.

        For 1<jm1𝑗𝑚1<j\leq m1 < italic_j ≤ italic_m, 1bB1𝑏𝐵1\leq b\leq B1 ≤ italic_b ≤ italic_B, if 𝒞jbsuperscriptsubscript𝒞𝑗𝑏\mathcal{C}_{j}^{b}caligraphic_C start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_b end_POSTSUPERSCRIPT is not an empty bin, Pjsubscript𝑃𝑗P_{j}italic_P start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT computes sj,j,b=𝖼𝗈𝖽𝖾(sj,j,b)(x0l)subscript𝑠𝑗𝑗𝑏direct-sum𝖼𝗈𝖽𝖾subscript𝑠𝑗𝑗𝑏conditional𝑥superscript0superscript𝑙s_{j,j,b}=\mathsf{code}(s_{j,j,b})\oplus(x\|0^{l^{\prime}})italic_s start_POSTSUBSCRIPT italic_j , italic_j , italic_b end_POSTSUBSCRIPT = sansserif_code ( italic_s start_POSTSUBSCRIPT italic_j , italic_j , italic_b end_POSTSUBSCRIPT ) ⊕ ( italic_x ∥ 0 start_POSTSUPERSCRIPT italic_l start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT end_POSTSUPERSCRIPT ), where x𝑥xitalic_x is the element in 𝒞jbsuperscriptsubscript𝒞𝑗𝑏\mathcal{C}_{j}^{b}caligraphic_C start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_b end_POSTSUPERSCRIPT, otherwise Pjsubscript𝑃𝑗P_{j}italic_P start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT samples sj,j,b{0,1}l+lsubscript𝑠𝑗𝑗𝑏superscript01𝑙superscript𝑙s_{j,j,b}\leftarrow\{0,1\}^{l+l^{\prime}}italic_s start_POSTSUBSCRIPT italic_j , italic_j , italic_b end_POSTSUBSCRIPT ← { 0 , 1 } start_POSTSUPERSCRIPT italic_l + italic_l start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT end_POSTSUPERSCRIPT.

      2. 4.

        For 1im1𝑖𝑚1\leq i\leq m1 ≤ italic_i ≤ italic_m, Pisubscript𝑃𝑖P_{i}italic_P start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT computes ui({0,1}l+l)(m1)Bsubscriptu𝑖superscriptsuperscript01𝑙superscript𝑙𝑚1𝐵\textbf{u}_{i}\in(\{0,1\}^{l+l^{\prime}})^{(m-1)B}u start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT ∈ ( { 0 , 1 } start_POSTSUPERSCRIPT italic_l + italic_l start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT end_POSTSUPERSCRIPT ) start_POSTSUPERSCRIPT ( italic_m - 1 ) italic_B end_POSTSUPERSCRIPT as follows: For max(2,i)jm,1bBformulae-sequence𝑚𝑎𝑥2𝑖𝑗𝑚1𝑏𝐵max(2,i)\leq j\leq m,1\leq b\leq Bitalic_m italic_a italic_x ( 2 , italic_i ) ≤ italic_j ≤ italic_m , 1 ≤ italic_b ≤ italic_B, ui,(j2)B+b=sj,i,bsubscript𝑢𝑖𝑗2𝐵𝑏subscript𝑠𝑗𝑖𝑏u_{i,(j-2)B+b}=s_{j,i,b}italic_u start_POSTSUBSCRIPT italic_i , ( italic_j - 2 ) italic_B + italic_b end_POSTSUBSCRIPT = italic_s start_POSTSUBSCRIPT italic_j , italic_i , italic_b end_POSTSUBSCRIPT. Set other positions to 00.

      3. 5.

        All parties invoke an m𝑚mitalic_m-party computation with the circuit C(m1)B,l2superscriptsubscript𝐶𝑚1𝐵superscript𝑙2C_{(m-1)B,l^{\prime}}^{2}italic_C start_POSTSUBSCRIPT ( italic_m - 1 ) italic_B , italic_l start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT. For 1im,1k(m1)Bformulae-sequence1𝑖𝑚1𝑘𝑚1𝐵1\leq i\leq m,1\leq k\leq(m-1)B1 ≤ italic_i ≤ italic_m , 1 ≤ italic_k ≤ ( italic_m - 1 ) italic_B, Pisubscript𝑃𝑖P_{i}italic_P start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT inputs ui,csubscript𝑢𝑖𝑐u_{i,c}italic_u start_POSTSUBSCRIPT italic_i , italic_c end_POSTSUBSCRIPT to the circuit.

    Figure 15: MPSU/MPSU-card/Circuit-MPSU

    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. m𝑚mitalic_m parties P1,,Pmsubscript𝑃1subscript𝑃𝑚P_{1},\cdots,P_{m}italic_P start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , ⋯ , italic_P start_POSTSUBSCRIPT italic_m end_POSTSUBSCRIPT. Set size n𝑛nitalic_n . The element length l𝑙litalic_l. The all-zero string length lsuperscript𝑙l^{\prime}italic_l start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT. A field 𝔽𝔽\mathbb{F}blackboard_F. An encoding function 𝖼𝗈𝖽𝖾:𝔽{0,1}l+l:𝖼𝗈𝖽𝖾𝔽superscript01𝑙superscript𝑙\mathsf{code}:\mathbb{F}\to\{0,1\}^{l+l^{\prime}}sansserif_code : blackboard_F → { 0 , 1 } start_POSTSUPERSCRIPT italic_l + italic_l start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT end_POSTSUPERSCRIPT. A constructible set Y𝑌Yitalic_Y represented as a CPF representation ψ(x,X1,,Xm)𝜓𝑥subscript𝑋1subscript𝑋𝑚\psi(x,X_{1},\cdots,X_{m})italic_ψ ( italic_x , italic_X start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , ⋯ , italic_X start_POSTSUBSCRIPT italic_m end_POSTSUBSCRIPT ). Cuckoo hashing parameters: hash functions h1,h2,h3subscript1subscript2subscript3h_{1},h_{2},h_{3}italic_h start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , italic_h start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT , italic_h start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT and number of bins B𝐵Bitalic_B.

    • Inputs. Each party Pisubscript𝑃𝑖P_{i}italic_P start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT has input Xi={xi1,,xin}{0,1}lsubscript𝑋𝑖superscriptsubscript𝑥𝑖1superscriptsubscript𝑥𝑖𝑛superscript01𝑙X_{i}=\{x_{i}^{1},\cdots,x_{i}^{n}\}\subseteq\{0,1\}^{l}italic_X start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT = { italic_x start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 1 end_POSTSUPERSCRIPT , ⋯ , italic_x start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_n end_POSTSUPERSCRIPT } ⊆ { 0 , 1 } start_POSTSUPERSCRIPT italic_l end_POSTSUPERSCRIPT.

      1. 1.

        Hashing to bin. For 1im1𝑖𝑚1\leq i\leq m1 ≤ italic_i ≤ italic_m, Pisubscript𝑃𝑖P_{i}italic_P start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT does 𝒞i1,,𝒞iB𝖢𝗎𝖼𝗄𝗈𝗈h1,h2,h3B(Xi)superscriptsubscript𝒞𝑖1superscriptsubscript𝒞𝑖𝐵superscriptsubscript𝖢𝗎𝖼𝗄𝗈𝗈subscript1subscript2subscript3𝐵subscript𝑋𝑖\mathcal{C}_{i}^{1},\cdots,\mathcal{C}_{i}^{B}\leftarrow\mathsf{Cuckoo}_{h_{1}% ,h_{2},h_{3}}^{B}(X_{i})caligraphic_C start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 1 end_POSTSUPERSCRIPT , ⋯ , caligraphic_C start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_B end_POSTSUPERSCRIPT ← sansserif_Cuckoo start_POSTSUBSCRIPT italic_h start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , italic_h start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT , italic_h start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_B end_POSTSUPERSCRIPT ( italic_X start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT ) and 𝒯i1,,𝒯iB𝖲𝗂𝗆𝗉𝗅𝖾h1,h2,h3B(Xi)superscriptsubscript𝒯𝑖1superscriptsubscript𝒯𝑖𝐵superscriptsubscript𝖲𝗂𝗆𝗉𝗅𝖾subscript1subscript2subscript3𝐵subscript𝑋𝑖\mathcal{T}_{i}^{1},\cdots,\mathcal{T}_{i}^{B}\leftarrow\mathsf{Simple}_{h_{1}% ,h_{2},h_{3}}^{B}(X_{i})caligraphic_T start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 1 end_POSTSUPERSCRIPT , ⋯ , caligraphic_T start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_B end_POSTSUPERSCRIPT ← sansserif_Simple start_POSTSUBSCRIPT italic_h start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , italic_h start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT , italic_h start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_B end_POSTSUPERSCRIPT ( italic_X start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT ).

      2. 2.

        Single subformula evaluation. Let ψ=Q1Qs𝜓subscript𝑄1subscript𝑄𝑠\psi=Q_{1}\lor\cdots\lor Q_{s}italic_ψ = italic_Q start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ∨ ⋯ ∨ italic_Q start_POSTSUBSCRIPT italic_s end_POSTSUBSCRIPT. For the i𝑖iitalic_i-th subformula Qi(x,Xi1,,Xiq)subscript𝑄𝑖𝑥subscript𝑋subscript𝑖1subscript𝑋subscript𝑖𝑞Q_{i}(x,X_{i_{1}},\cdots,X_{i_{q}})italic_Q start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT ( italic_x , italic_X start_POSTSUBSCRIPT italic_i start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT end_POSTSUBSCRIPT , ⋯ , italic_X start_POSTSUBSCRIPT italic_i start_POSTSUBSCRIPT italic_q end_POSTSUBSCRIPT end_POSTSUBSCRIPT ) in ψ𝜓\psiitalic_ψ, where 1is,{i1,,iq}{1,,m}formulae-sequence1𝑖𝑠subscript𝑖1subscript𝑖𝑞1𝑚1\leq i\leq s,\{{i_{1}},\cdots,{i_{q}}\}\subseteq\{1,\cdots,m\}1 ≤ italic_i ≤ italic_s , { italic_i start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , ⋯ , italic_i start_POSTSUBSCRIPT italic_q end_POSTSUBSCRIPT } ⊆ { 1 , ⋯ , italic_m },

        1. (a)

          If q=1𝑞1q=1italic_q = 1, suppose i1==iq=jsubscript𝑖1subscript𝑖𝑞𝑗i_{1}=\cdots=i_{q}=jitalic_i start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT = ⋯ = italic_i start_POSTSUBSCRIPT italic_q end_POSTSUBSCRIPT = italic_j, then Qi(x,Xj)=(xXj)subscript𝑄𝑖𝑥subscript𝑋𝑗𝑥subscript𝑋𝑗Q_{i}(x,X_{j})=(x\in X_{j})italic_Q start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT ( italic_x , italic_X start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT ) = ( italic_x ∈ italic_X start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT ). For 1bB1𝑏𝐵1\leq b\leq B1 ≤ italic_b ≤ italic_B, if 𝒞jbsuperscriptsubscript𝒞𝑗𝑏\mathcal{C}_{j}^{b}caligraphic_C start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_b end_POSTSUPERSCRIPT is not an empty bin, Pjsubscript𝑃𝑗P_{j}italic_P start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT sets si,j,b=0subscript𝑠𝑖𝑗𝑏0s_{i,j,b}=0italic_s start_POSTSUBSCRIPT italic_i , italic_j , italic_b end_POSTSUBSCRIPT = 0, otherwise Pjsubscript𝑃𝑗P_{j}italic_P start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT chooses si,j,bsubscript𝑠𝑖𝑗𝑏s_{i,j,b}italic_s start_POSTSUBSCRIPT italic_i , italic_j , italic_b end_POSTSUBSCRIPT at random. For j{1,,m}{j}superscript𝑗1𝑚𝑗j^{\prime}\in\{1,\cdots,m\}\setminus\{j\}italic_j start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT ∈ { 1 , ⋯ , italic_m } ∖ { italic_j }, Pjsubscript𝑃superscript𝑗P_{j^{\prime}}italic_P start_POSTSUBSCRIPT italic_j start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT end_POSTSUBSCRIPT sets si,j,b=0subscript𝑠𝑖superscript𝑗𝑏0s_{i,j^{\prime},b}=0italic_s start_POSTSUBSCRIPT italic_i , italic_j start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT , italic_b end_POSTSUBSCRIPT = 0.

        2. (b)

          If q>1𝑞1q>1italic_q > 1, suppose Qisubscript𝑄𝑖Q_{i}italic_Q start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT is set-separable with respect to Xjsubscript𝑋𝑗X_{j}italic_X start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT for some j{i1,,iq}𝑗subscript𝑖1subscript𝑖𝑞j\in\{{i_{1}},\cdots,{i_{q}}\}italic_j ∈ { italic_i start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , ⋯ , italic_i start_POSTSUBSCRIPT italic_q end_POSTSUBSCRIPT } and Qi(x,Xi1,,Xiq)=(xXj)Qi(x,Xi1,,Xj1,Xj+1,,Xiq)subscript𝑄𝑖𝑥subscript𝑋subscript𝑖1subscript𝑋subscript𝑖𝑞𝑥subscript𝑋𝑗subscriptsuperscript𝑄𝑖𝑥subscript𝑋subscript𝑖1subscript𝑋𝑗1subscript𝑋𝑗1subscript𝑋subscript𝑖𝑞Q_{i}(x,X_{i_{1}},\cdots,X_{i_{q}})=(x\in X_{j})\land Q^{\prime}_{i}(x,X_{i_{1% }},\cdots,X_{j-1},X_{j+1},\cdots,X_{i_{q}})italic_Q start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT ( italic_x , italic_X start_POSTSUBSCRIPT italic_i start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT end_POSTSUBSCRIPT , ⋯ , italic_X start_POSTSUBSCRIPT italic_i start_POSTSUBSCRIPT italic_q end_POSTSUBSCRIPT end_POSTSUBSCRIPT ) = ( italic_x ∈ italic_X start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT ) ∧ italic_Q start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT ( italic_x , italic_X start_POSTSUBSCRIPT italic_i start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT end_POSTSUBSCRIPT , ⋯ , italic_X start_POSTSUBSCRIPT italic_j - 1 end_POSTSUBSCRIPT , italic_X start_POSTSUBSCRIPT italic_j + 1 end_POSTSUBSCRIPT , ⋯ , italic_X start_POSTSUBSCRIPT italic_i start_POSTSUBSCRIPT italic_q end_POSTSUBSCRIPT end_POSTSUBSCRIPT ). The parties invoke 𝖻𝖬𝖹𝖲Qisuperscriptsubscript𝖻𝖬𝖹𝖲subscriptsuperscript𝑄𝑖\mathcal{F}_{\mathsf{bMZS}}^{Q^{\prime}_{i}}caligraphic_F start_POSTSUBSCRIPT sansserif_bMZS end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_Q start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT end_POSTSUPERSCRIPT where Pjsubscript𝑃𝑗P_{j}italic_P start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT acts as P𝗉𝗂𝗏𝗈𝗍subscript𝑃𝗉𝗂𝗏𝗈𝗍P_{\mathsf{pivot}}italic_P start_POSTSUBSCRIPT sansserif_pivot end_POSTSUBSCRIPT with inputs 𝒞j1,,𝒞jBsuperscriptsubscript𝒞𝑗1superscriptsubscript𝒞𝑗𝐵\mathcal{C}_{j}^{1},\cdots,\mathcal{C}_{j}^{B}caligraphic_C start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 1 end_POSTSUPERSCRIPT , ⋯ , caligraphic_C start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_B end_POSTSUPERSCRIPT and each Pjsubscript𝑃superscript𝑗P_{j^{\prime}}italic_P start_POSTSUBSCRIPT italic_j start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT end_POSTSUBSCRIPT inputs 𝒯j1,,𝒯jBsuperscriptsubscript𝒯superscript𝑗1superscriptsubscript𝒯superscript𝑗𝐵\mathcal{T}_{j^{\prime}}^{1},\cdots,\mathcal{T}_{j^{\prime}}^{B}caligraphic_T start_POSTSUBSCRIPT italic_j start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 1 end_POSTSUPERSCRIPT , ⋯ , caligraphic_T start_POSTSUBSCRIPT italic_j start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_B end_POSTSUPERSCRIPT for j{i1,,iq}{j}superscript𝑗subscript𝑖1subscript𝑖𝑞𝑗j^{\prime}\in\{{i_{1}},\cdots,{i_{q}}\}\setminus\{j\}italic_j start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT ∈ { italic_i start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , ⋯ , italic_i start_POSTSUBSCRIPT italic_q end_POSTSUBSCRIPT } ∖ { italic_j }. For 1bB1𝑏𝐵1\leq b\leq B1 ≤ italic_b ≤ italic_B, each Pisubscript𝑃superscript𝑖P_{i^{\prime}}italic_P start_POSTSUBSCRIPT italic_i start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT end_POSTSUBSCRIPT receives si,i=(si,i,1,,si,i,B)subscripts𝑖superscript𝑖subscript𝑠𝑖superscript𝑖1subscript𝑠𝑖superscript𝑖𝐵\textbf{s}_{i,i^{\prime}}=(s_{i,i^{\prime},1},\cdots,s_{i,i^{\prime},B})s start_POSTSUBSCRIPT italic_i , italic_i start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT end_POSTSUBSCRIPT = ( italic_s start_POSTSUBSCRIPT italic_i , italic_i start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT , 1 end_POSTSUBSCRIPT , ⋯ , italic_s start_POSTSUBSCRIPT italic_i , italic_i start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT , italic_B end_POSTSUBSCRIPT ) for i{i1,,iq}superscript𝑖subscript𝑖1subscript𝑖𝑞i^{\prime}\in\{{i_{1}},\cdots,{i_{q}}\}italic_i start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT ∈ { italic_i start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , ⋯ , italic_i start_POSTSUBSCRIPT italic_q end_POSTSUBSCRIPT }, and each Pksubscript𝑃𝑘P_{k}italic_P start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT sets si,k,b=0subscript𝑠𝑖𝑘𝑏0s_{i,k,b}=0italic_s start_POSTSUBSCRIPT italic_i , italic_k , italic_b end_POSTSUBSCRIPT = 0 for k{1,,m}{i1,,iq}𝑘1𝑚subscript𝑖1subscript𝑖𝑞k\in\{1,\cdots,m\}\setminus\{{i_{1}},\cdots,{i_{q}}\}italic_k ∈ { 1 , ⋯ , italic_m } ∖ { italic_i start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , ⋯ , italic_i start_POSTSUBSCRIPT italic_q end_POSTSUBSCRIPT }.

      The following actions of the parties depend on the functionality:

    • MPSO.

      1. 3.

        For 1<is1𝑖𝑠1<i\leq s1 < italic_i ≤ italic_s, 1bB1𝑏𝐵1\leq b\leq B1 ≤ italic_b ≤ italic_B, if 𝒞jbsuperscriptsubscript𝒞𝑗𝑏\mathcal{C}_{j}^{b}caligraphic_C start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_b end_POSTSUPERSCRIPT is not an empty bin, Pjsubscript𝑃𝑗P_{j}italic_P start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT (the same j𝑗jitalic_j as step 2) computes si,j,b=𝖼𝗈𝖽𝖾(si,j,b)(x0l)subscriptsuperscript𝑠𝑖𝑗𝑏direct-sum𝖼𝗈𝖽𝖾subscript𝑠𝑖𝑗𝑏conditional𝑥superscript0superscript𝑙s^{\prime}_{i,j,b}=\mathsf{code}(s_{i,j,b})\oplus(x\|0^{l^{\prime}})italic_s start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_i , italic_j , italic_b end_POSTSUBSCRIPT = sansserif_code ( italic_s start_POSTSUBSCRIPT italic_i , italic_j , italic_b end_POSTSUBSCRIPT ) ⊕ ( italic_x ∥ 0 start_POSTSUPERSCRIPT italic_l start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT end_POSTSUPERSCRIPT ), where x𝑥xitalic_x is the element in 𝒞jbsuperscriptsubscript𝒞𝑗𝑏\mathcal{C}_{j}^{b}caligraphic_C start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_b end_POSTSUPERSCRIPT, otherwise Pjsubscript𝑃𝑗P_{j}italic_P start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT samples si,j,b{0,1}l+lsubscriptsuperscript𝑠𝑖𝑗𝑏superscript01𝑙superscript𝑙s^{\prime}_{i,j,b}\leftarrow\{0,1\}^{l+l^{\prime}}italic_s start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_i , italic_j , italic_b end_POSTSUBSCRIPT ← { 0 , 1 } start_POSTSUPERSCRIPT italic_l + italic_l start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT end_POSTSUPERSCRIPT.

      2. 4.

        For 1km1𝑘𝑚1\leq k\leq m1 ≤ italic_k ≤ italic_m, each Pksubscript𝑃𝑘P_{k}italic_P start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT computes uk({0,1}l+l)sBsubscriptu𝑘superscriptsuperscript01𝑙superscript𝑙𝑠𝐵\textbf{u}_{k}\in(\{0,1\}^{l+l^{\prime}})^{sB}u start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT ∈ ( { 0 , 1 } start_POSTSUPERSCRIPT italic_l + italic_l start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT end_POSTSUPERSCRIPT ) start_POSTSUPERSCRIPT italic_s italic_B end_POSTSUPERSCRIPT as follows: For 1is,1bBformulae-sequence1𝑖𝑠1𝑏𝐵1\leq i\leq s,1\leq b\leq B1 ≤ italic_i ≤ italic_s , 1 ≤ italic_b ≤ italic_B, uk,(i1)B+b=si,k,bsubscript𝑢𝑘𝑖1𝐵𝑏subscriptsuperscript𝑠𝑖𝑘𝑏u_{k,(i-1)B+b}=s^{\prime}_{i,k,b}italic_u start_POSTSUBSCRIPT italic_k , ( italic_i - 1 ) italic_B + italic_b end_POSTSUBSCRIPT = italic_s start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_i , italic_k , italic_b end_POSTSUBSCRIPT.

      3. 5.

        For 1km1𝑘𝑚1\leq k\leq m1 ≤ italic_k ≤ italic_m, Pksubscript𝑃𝑘P_{k}italic_P start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT invoke 𝗌𝗁𝗎𝖿𝖿𝗅𝖾subscript𝗌𝗁𝗎𝖿𝖿𝗅𝖾\mathcal{F}_{\mathsf{shuffle}}caligraphic_F start_POSTSUBSCRIPT sansserif_shuffle end_POSTSUBSCRIPT with input uksubscriptu𝑘\textbf{u}_{k}u start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT. Pksubscript𝑃𝑘P_{k}italic_P start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT receives uksuperscriptsubscriptu𝑘\textbf{u}_{k}^{\prime}u start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT.

      4. 6.

        For 1<jm1𝑗𝑚1<j\leq m1 < italic_j ≤ italic_m, Pjsubscript𝑃𝑗P_{j}italic_P start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT sends ujsuperscriptsubscriptu𝑗\textbf{u}_{j}^{\prime}u start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT to P1subscript𝑃1P_{1}italic_P start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT. P1subscript𝑃1P_{1}italic_P start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT computes u=1<jmujsuperscriptusubscript1𝑗𝑚superscriptsubscriptu𝑗\textbf{u}^{\prime}=\sum_{1<j\leq m}\textbf{u}_{j}^{\prime}u start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT = ∑ start_POSTSUBSCRIPT 1 < italic_j ≤ italic_m end_POSTSUBSCRIPT u start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT and sets Y=𝑌Y=\emptysetitalic_Y = ∅. For 1bB1𝑏𝐵1\leq b\leq B1 ≤ italic_b ≤ italic_B, if ub=y0lsuperscriptsubscript𝑢𝑏conditional𝑦superscript0superscript𝑙u_{b}^{\prime}=y\|0^{l^{\prime}}italic_u start_POSTSUBSCRIPT italic_b end_POSTSUBSCRIPT start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT = italic_y ∥ 0 start_POSTSUPERSCRIPT italic_l start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT end_POSTSUPERSCRIPT for some y{0,1}l𝑦superscript01𝑙y\in\{0,1\}^{l}italic_y ∈ { 0 , 1 } start_POSTSUPERSCRIPT italic_l end_POSTSUPERSCRIPT, P1subscript𝑃1P_{1}italic_P start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT outputs y𝑦yitalic_y.

    • MPSO-card.

      1. 3.

        For 1km1𝑘𝑚1\leq k\leq m1 ≤ italic_k ≤ italic_m, Pksubscript𝑃𝑘P_{k}italic_P start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT computes uk𝔽sBsubscriptu𝑘superscript𝔽𝑠𝐵\textbf{u}_{k}\in\mathbb{F}^{sB}u start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT ∈ blackboard_F start_POSTSUPERSCRIPT italic_s italic_B end_POSTSUPERSCRIPT as follows: For 1is,1bBformulae-sequence1𝑖𝑠1𝑏𝐵1\leq i\leq s,1\leq b\leq B1 ≤ italic_i ≤ italic_s , 1 ≤ italic_b ≤ italic_B, uk,(i1)B+b=si,k,bsubscript𝑢𝑘𝑖1𝐵𝑏subscript𝑠𝑖𝑘𝑏u_{k,(i-1)B+b}=s_{i,k,b}italic_u start_POSTSUBSCRIPT italic_k , ( italic_i - 1 ) italic_B + italic_b end_POSTSUBSCRIPT = italic_s start_POSTSUBSCRIPT italic_i , italic_k , italic_b end_POSTSUBSCRIPT.

      2. 4.

        For 1km1𝑘𝑚1\leq k\leq m1 ≤ italic_k ≤ italic_m, Pksubscript𝑃𝑘P_{k}italic_P start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT invoke 𝗌𝗁𝗎𝖿𝖿𝗅𝖾subscript𝗌𝗁𝗎𝖿𝖿𝗅𝖾\mathcal{F}_{\mathsf{shuffle}}caligraphic_F start_POSTSUBSCRIPT sansserif_shuffle end_POSTSUBSCRIPT with input uksubscriptu𝑘\textbf{u}_{k}u start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT. Pksubscript𝑃𝑘P_{k}italic_P start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT receives uksuperscriptsubscriptu𝑘\textbf{u}_{k}^{\prime}u start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT.

      3. 5.

        For 1<jm1𝑗𝑚1<j\leq m1 < italic_j ≤ italic_m, Pjsubscript𝑃𝑗P_{j}italic_P start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT sends ujsuperscriptsubscriptu𝑗\textbf{u}_{j}^{\prime}u start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT to P1subscript𝑃1P_{1}italic_P start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT. P1subscript𝑃1P_{1}italic_P start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT outputs 𝗓𝖾𝗋𝗈(1<jmuj)𝗓𝖾𝗋𝗈subscript1𝑗𝑚superscriptsubscriptu𝑗\mathsf{zero}(\sum_{1<j\leq m}\textbf{u}_{j}^{\prime})sansserif_zero ( ∑ start_POSTSUBSCRIPT 1 < italic_j ≤ italic_m end_POSTSUBSCRIPT u start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT ).

    • Circuit-MPSO (Approach 1).

      1. 3.

        All parties invoke an m𝑚mitalic_m-party computation with the circuit Cs,B,l1superscriptsubscript𝐶𝑠𝐵𝑙1C_{s,B,l}^{1}italic_C start_POSTSUBSCRIPT italic_s , italic_B , italic_l end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 1 end_POSTSUPERSCRIPT. For 1is,1kmformulae-sequence1𝑖𝑠1𝑘𝑚1\leq i\leq s,1\leq k\leq m1 ≤ italic_i ≤ italic_s , 1 ≤ italic_k ≤ italic_m, Pksubscript𝑃𝑘P_{k}italic_P start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT inputs si,k,1,,si,k,Bsubscript𝑠𝑖𝑘1subscript𝑠𝑖𝑘𝐵s_{i,k,1},\cdots,s_{i,k,B}italic_s start_POSTSUBSCRIPT italic_i , italic_k , 1 end_POSTSUBSCRIPT , ⋯ , italic_s start_POSTSUBSCRIPT italic_i , italic_k , italic_B end_POSTSUBSCRIPT to the i𝑖iitalic_i-th section, and Pjsubscript𝑃𝑗P_{j}italic_P start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT (the same j𝑗jitalic_j as step 2) inputs the elements in 𝒞j1,,𝒞jBsuperscriptsubscript𝒞𝑗1superscriptsubscript𝒞𝑗𝐵\mathcal{C}_{j}^{1},\cdots,\mathcal{C}_{j}^{B}caligraphic_C start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 1 end_POSTSUPERSCRIPT , ⋯ , caligraphic_C start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_B end_POSTSUPERSCRIPT in addition.

    • Circuit-MPSO (Approach 2).

      1. 3.

        For 1<is1𝑖𝑠1<i\leq s1 < italic_i ≤ italic_s, 1bB1𝑏𝐵1\leq b\leq B1 ≤ italic_b ≤ italic_B, if 𝒞jbsuperscriptsubscript𝒞𝑗𝑏\mathcal{C}_{j}^{b}caligraphic_C start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_b end_POSTSUPERSCRIPT is not an empty bin, Pjsubscript𝑃𝑗P_{j}italic_P start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT (the same j𝑗jitalic_j as step 2) computes si,j,b=𝖼𝗈𝖽𝖾(si,j,b)(x0l)subscriptsuperscript𝑠𝑖𝑗𝑏direct-sum𝖼𝗈𝖽𝖾subscript𝑠𝑖𝑗𝑏conditional𝑥superscript0superscript𝑙s^{\prime}_{i,j,b}=\mathsf{code}(s_{i,j,b})\oplus(x\|0^{l^{\prime}})italic_s start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_i , italic_j , italic_b end_POSTSUBSCRIPT = sansserif_code ( italic_s start_POSTSUBSCRIPT italic_i , italic_j , italic_b end_POSTSUBSCRIPT ) ⊕ ( italic_x ∥ 0 start_POSTSUPERSCRIPT italic_l start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT end_POSTSUPERSCRIPT ), where x𝑥xitalic_x is the element in 𝒞jbsuperscriptsubscript𝒞𝑗𝑏\mathcal{C}_{j}^{b}caligraphic_C start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_b end_POSTSUPERSCRIPT, otherwise Pjsubscript𝑃𝑗P_{j}italic_P start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT samples si,j,b{0,1}l+lsubscriptsuperscript𝑠𝑖𝑗𝑏superscript01𝑙superscript𝑙s^{\prime}_{i,j,b}\leftarrow\{0,1\}^{l+l^{\prime}}italic_s start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_i , italic_j , italic_b end_POSTSUBSCRIPT ← { 0 , 1 } start_POSTSUPERSCRIPT italic_l + italic_l start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT end_POSTSUPERSCRIPT.

      2. 4.

        All parties invoke an m𝑚mitalic_m-party computation with the circuit CsB,l2superscriptsubscript𝐶𝑠𝐵superscript𝑙2C_{sB,l^{\prime}}^{2}italic_C start_POSTSUBSCRIPT italic_s italic_B , italic_l start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT. For 1is,1bB,1kmformulae-sequence1𝑖𝑠1𝑏𝐵1𝑘𝑚1\leq i\leq s,1\leq b\leq B,1\leq k\leq m1 ≤ italic_i ≤ italic_s , 1 ≤ italic_b ≤ italic_B , 1 ≤ italic_k ≤ italic_m, Pksubscript𝑃𝑘P_{k}italic_P start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT takes si,k,bsubscriptsuperscript𝑠𝑖𝑘𝑏s^{\prime}_{i,k,b}italic_s start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_i , italic_k , italic_b end_POSTSUBSCRIPT as its ((i1)B+b)𝑖1𝐵𝑏((i-1)B+b)( ( italic_i - 1 ) italic_B + italic_b )-th input.

    Figure 16: MPSO/MPSO-card/Circuit-MPSO
    Theorem 6.1

    The MPSO, MPSO-card and circuit-MPSO protocols in Figure 16 are secure against any semi-honest adversary corrupting t<m𝑡𝑚t<mitalic_t < italic_m parties in the (𝖻𝖬𝖹𝖲Q,𝗌𝗁𝗎𝖿𝖿𝗅𝖾)superscriptsubscript𝖻𝖬𝖹𝖲𝑄subscript𝗌𝗁𝗎𝖿𝖿𝗅𝖾(\mathcal{F}_{\mathsf{bMZS}}^{Q},\mathcal{F}_{\mathsf{shuffle}})( caligraphic_F start_POSTSUBSCRIPT sansserif_bMZS end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_Q end_POSTSUPERSCRIPT , caligraphic_F start_POSTSUBSCRIPT sansserif_shuffle end_POSTSUBSCRIPT )-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 |𝔽||𝖮𝖱|B2σ𝔽𝖮𝖱𝐵superscript2𝜎\lvert\mathbb{F}\rvert\geq\lvert\mathsf{OR}\rvert\cdot B\cdot 2^{\sigma}| blackboard_F | ≥ | sansserif_OR | ⋅ italic_B ⋅ 2 start_POSTSUPERSCRIPT italic_σ end_POSTSUPERSCRIPT, where |𝖮𝖱|𝖮𝖱\lvert\mathsf{OR}\rvert| sansserif_OR | is the total number of 𝖮𝖱𝖮𝖱\mathsf{OR}sansserif_OR operators in all Qisubscript𝑄𝑖Q_{i}italic_Q start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT for 1is1𝑖𝑠1\leq i\leq s1 ≤ italic_i ≤ italic_s.

      Let Yisubscript𝑌𝑖Y_{i}italic_Y start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT denote the set represented by Qisubscript𝑄𝑖Q_{i}italic_Q start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT. In the MPSO and circuit-MPSO (Approach 2) protocols, the parties hold |Yi|subscript𝑌𝑖\lvert Y_{i}\rvert| italic_Y start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT | secret-sharings of the elements in Yisubscript𝑌𝑖Y_{i}italic_Y start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT, and B|Yi|𝐵subscript𝑌𝑖B-\lvert Y_{i}\rvertitalic_B - | italic_Y start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT | secret-sharings of random values after each batch membership zero-sharing for Qisubscript𝑄𝑖Q_{i}italic_Q start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT, for 1is1𝑖𝑠1\leq i\leq s1 ≤ italic_i ≤ italic_s. Given that {Y1,,Ys}subscript𝑌1subscript𝑌𝑠\{Y_{1},\cdots,Y_{s}\}{ italic_Y start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , ⋯ , italic_Y start_POSTSUBSCRIPT italic_s end_POSTSUBSCRIPT } is a partition of Y𝑌Yitalic_Y, the parties hold |Y|𝑌\lvert Y\rvert| italic_Y | secret-sharings of the elements in Y𝑌Yitalic_Y, and sB|Y|𝑠𝐵𝑌sB-\lvert Y\rvertitalic_s italic_B - | italic_Y | secret-sharings of random values in total. Finally, P1subscript𝑃1P_{1}italic_P start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT and the circuit identify all set elements by checking whether the last lsuperscript𝑙l^{\prime}italic_l start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT bits are all zero. An error occurs when a random value collides with 0lsuperscript0superscript𝑙0^{l^{\prime}}0 start_POSTSUPERSCRIPT italic_l start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT end_POSTSUPERSCRIPT. Thereby, the overall false positive error probability is at most sB2l𝑠𝐵superscript2superscript𝑙sB\cdot 2^{-l^{\prime}}italic_s italic_B ⋅ 2 start_POSTSUPERSCRIPT - italic_l start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT end_POSTSUPERSCRIPT. To make this failure probability negligible, we set lσ+logs+logBsuperscript𝑙𝜎𝑠𝐵l^{\prime}\geq\sigma+\log s+\log Bitalic_l start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT ≥ italic_σ + roman_log italic_s + roman_log italic_B; In the MPSO-card and circuit-MPSO (Approach 1) protocols, the parties hold |Y|𝑌\lvert Y\rvert| italic_Y | secret-sharings of 0, and B|Y|𝐵𝑌B-\lvert Y\rvertitalic_B - | italic_Y | secret-sharings of random values. To bound the overall false positive error probability by 2σsuperscript2𝜎2^{-\sigma}2 start_POSTSUPERSCRIPT - italic_σ end_POSTSUPERSCRIPT, we set |𝔽|sB2σ𝔽𝑠𝐵superscript2𝜎\lvert\mathbb{F}\rvert\geq sB\cdot 2^{\sigma}| blackboard_F | ≥ italic_s italic_B ⋅ 2 start_POSTSUPERSCRIPT italic_σ end_POSTSUPERSCRIPT.

    • 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 ψ(x,X1,,Xm)𝜓𝑥subscript𝑋1subscript𝑋𝑚\psi(x,X_{1},\cdots,X_{m})italic_ψ ( italic_x , italic_X start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , ⋯ , italic_X start_POSTSUBSCRIPT italic_m end_POSTSUBSCRIPT ) of the constructible set Y𝑌Yitalic_Y being computed, where ψ=Q1Qs𝜓subscript𝑄1subscript𝑄𝑠\psi=Q_{1}\lor\cdots\lor Q_{s}italic_ψ = italic_Q start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ∨ ⋯ ∨ italic_Q start_POSTSUBSCRIPT italic_s end_POSTSUBSCRIPT.

      In the subformula evaluation stage, the computation complexity of each party Pjsubscript𝑃𝑗P_{j}italic_P start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT includes two parts: (1) O(1is(iq|𝖠𝖭𝖣i+𝖮𝖱i|n))𝑂subscript1𝑖𝑠subscript𝑖𝑞subscript𝖠𝖭𝖣𝑖subscript𝖮𝖱𝑖𝑛O(\sum_{1\leq i\leq s}(i_{q}\cdot\lvert\mathsf{AND}_{i}+\mathsf{OR}_{i}\rvert% \cdot n))italic_O ( ∑ start_POSTSUBSCRIPT 1 ≤ italic_i ≤ italic_s end_POSTSUBSCRIPT ( italic_i start_POSTSUBSCRIPT italic_q end_POSTSUBSCRIPT ⋅ | sansserif_AND start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT + sansserif_OR start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT | ⋅ italic_n ) ), where Qisubscript𝑄𝑖Q_{i}italic_Q start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT is set-separable with respect to Xjsubscript𝑋𝑗X_{j}italic_X start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT (we use Qisubscriptsuperscript𝑄𝑖Q^{\prime}_{i}italic_Q start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT to denote the separation formula of Qisubscript𝑄𝑖Q_{i}italic_Q start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT with respect to Xjsubscript𝑋𝑗X_{j}italic_X start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT), while iqsubscript𝑖𝑞i_{q}italic_i start_POSTSUBSCRIPT italic_q end_POSTSUBSCRIPT is the number of literals and |𝖠𝖭𝖣i+𝖮𝖱i|subscript𝖠𝖭𝖣𝑖subscript𝖮𝖱𝑖\lvert\mathsf{AND}_{i}+\mathsf{OR}_{i}\rvert| sansserif_AND start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT + sansserif_OR start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT | is the total number of 𝖠𝖭𝖣𝖠𝖭𝖣\mathsf{AND}sansserif_AND and 𝖮𝖱𝖮𝖱\mathsf{OR}sansserif_OR operators in Qisubscriptsuperscript𝑄𝑖Q^{\prime}_{i}italic_Q start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT; (2) O(1is(|𝖠𝖭𝖣i+𝖮𝖱i|n))𝑂subscript1𝑖𝑠subscript𝖠𝖭𝖣𝑖subscript𝖮𝖱𝑖𝑛O(\sum_{1\leq i\leq s}(\lvert\mathsf{AND}_{i}+\mathsf{OR}_{i}\rvert\cdot n))italic_O ( ∑ start_POSTSUBSCRIPT 1 ≤ italic_i ≤ italic_s end_POSTSUBSCRIPT ( | sansserif_AND start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT + sansserif_OR start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT | ⋅ italic_n ) ), where Qisubscript𝑄𝑖Q_{i}italic_Q start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT is not set-separable with respect to Xjsubscript𝑋𝑗X_{j}italic_X start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT while includes Xjsubscript𝑋𝑗X_{j}italic_X start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT, and |𝖠𝖭𝖣i+𝖮𝖱i|subscript𝖠𝖭𝖣𝑖subscript𝖮𝖱𝑖\lvert\mathsf{AND}_{i}+\mathsf{OR}_{i}\rvert| sansserif_AND start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT + sansserif_OR start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT | is the total number of 𝖠𝖭𝖣𝖠𝖭𝖣\mathsf{AND}sansserif_AND and 𝖮𝖱𝖮𝖱\mathsf{OR}sansserif_OR operators in the separation formula of Qisubscript𝑄𝑖Q_{i}italic_Q start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT with respect to some other set. The communication complexity of Pjsubscript𝑃𝑗P_{j}italic_P start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT can also be computed as two parts: (1) O(1is(iq|𝖮𝖱i|n))𝑂subscript1𝑖𝑠subscript𝑖𝑞subscript𝖮𝖱𝑖𝑛O(\sum_{1\leq i\leq s}(i_{q}\cdot\lvert\mathsf{OR}_{i}\rvert\cdot n))italic_O ( ∑ start_POSTSUBSCRIPT 1 ≤ italic_i ≤ italic_s end_POSTSUBSCRIPT ( italic_i start_POSTSUBSCRIPT italic_q end_POSTSUBSCRIPT ⋅ | sansserif_OR start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT | ⋅ italic_n ) ), where Qisubscript𝑄𝑖Q_{i}italic_Q start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT is set-separable with respect to Xjsubscript𝑋𝑗X_{j}italic_X start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT (we use Qisubscriptsuperscript𝑄𝑖Q^{\prime}_{i}italic_Q start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT to denote the separation formula of Qisubscript𝑄𝑖Q_{i}italic_Q start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT with respect to Xjsubscript𝑋𝑗X_{j}italic_X start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT), while iqsubscript𝑖𝑞i_{q}italic_i start_POSTSUBSCRIPT italic_q end_POSTSUBSCRIPT is the number of literals and |𝖮𝖱i|subscript𝖮𝖱𝑖\lvert\mathsf{OR}_{i}\rvert| sansserif_OR start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT | is the number of 𝖮𝖱𝖮𝖱\mathsf{OR}sansserif_OR operators in Qisubscriptsuperscript𝑄𝑖Q^{\prime}_{i}italic_Q start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT; (2) O(1is(|𝖮𝖱i|n))𝑂subscript1𝑖𝑠subscript𝖮𝖱𝑖𝑛O(\sum_{1\leq i\leq s}(\lvert\mathsf{OR}_{i}\rvert\cdot n))italic_O ( ∑ start_POSTSUBSCRIPT 1 ≤ italic_i ≤ italic_s end_POSTSUBSCRIPT ( | sansserif_OR start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT | ⋅ italic_n ) ), where Qisubscript𝑄𝑖Q_{i}italic_Q start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT is not set-separable with respect to Xjsubscript𝑋𝑗X_{j}italic_X start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT while includes Xjsubscript𝑋𝑗X_{j}italic_X start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT, and |𝖮𝖱i|subscript𝖮𝖱𝑖\lvert\mathsf{OR}_{i}\rvert| sansserif_OR start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT | is the number of 𝖮𝖱𝖮𝖱\mathsf{OR}sansserif_OR operators in the separation formula of Qisubscript𝑄𝑖Q_{i}italic_Q start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT 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 O(smn)𝑂𝑠𝑚𝑛O(smn)italic_O ( italic_s italic_m italic_n ) while each client’s computation and communication complexity are both O(sn)𝑂𝑠𝑛O(sn)italic_O ( italic_s italic_n ), where s𝑠sitalic_s is the number of subformulas in the CPF representation ψ𝜓\psiitalic_ψ.

      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 t=m1𝑡𝑚1t=m-1italic_t = italic_m - 1 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 2.58.3×2.5-8.3\times2.5 - 8.3 × speedup (LAN) and a 1.73.4×1.7-3.4\times1.7 - 3.4 × speedup (WAN) compared to [58]; our MPSI-card protocol achieves an 18.063.4×18.0-63.4\times18.0 - 63.4 × speedup (LAN) compared to [18]. In terms of communication costs, our MPSI achieves an improvement up to 14.4×14.4\times14.4 × while our MPSI-card achieves an improvement up to 20.3×20.3\times20.3 ×. 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].

    m𝑚mitalic_m protocol Time (second) Comm. (MB)
    LAN WAN
    212superscript2122^{12}2 start_POSTSUPERSCRIPT 12 end_POSTSUPERSCRIPT 214superscript2142^{14}2 start_POSTSUPERSCRIPT 14 end_POSTSUPERSCRIPT 216superscript2162^{16}2 start_POSTSUPERSCRIPT 16 end_POSTSUPERSCRIPT 218superscript2182^{18}2 start_POSTSUPERSCRIPT 18 end_POSTSUPERSCRIPT 220superscript2202^{20}2 start_POSTSUPERSCRIPT 20 end_POSTSUPERSCRIPT 212superscript2122^{12}2 start_POSTSUPERSCRIPT 12 end_POSTSUPERSCRIPT 214superscript2142^{14}2 start_POSTSUPERSCRIPT 14 end_POSTSUPERSCRIPT 216superscript2162^{16}2 start_POSTSUPERSCRIPT 16 end_POSTSUPERSCRIPT 218superscript2182^{18}2 start_POSTSUPERSCRIPT 18 end_POSTSUPERSCRIPT 220superscript2202^{20}2 start_POSTSUPERSCRIPT 20 end_POSTSUPERSCRIPT 212superscript2122^{12}2 start_POSTSUPERSCRIPT 12 end_POSTSUPERSCRIPT 214superscript2142^{14}2 start_POSTSUPERSCRIPT 14 end_POSTSUPERSCRIPT 216superscript2162^{16}2 start_POSTSUPERSCRIPT 16 end_POSTSUPERSCRIPT 218superscript2182^{18}2 start_POSTSUPERSCRIPT 18 end_POSTSUPERSCRIPT 220superscript2202^{20}2 start_POSTSUPERSCRIPT 20 end_POSTSUPERSCRIPT
    [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
    Table 1: Running time and communication costs for MPSI protocols in LAN and WAN settings. m𝑚mitalic_m is the number of parties.
    m𝑚mitalic_m protocol Time (second) Comm. (MB)
    LAN WAN
    212superscript2122^{12}2 start_POSTSUPERSCRIPT 12 end_POSTSUPERSCRIPT 214superscript2142^{14}2 start_POSTSUPERSCRIPT 14 end_POSTSUPERSCRIPT 216superscript2162^{16}2 start_POSTSUPERSCRIPT 16 end_POSTSUPERSCRIPT 218superscript2182^{18}2 start_POSTSUPERSCRIPT 18 end_POSTSUPERSCRIPT 220superscript2202^{20}2 start_POSTSUPERSCRIPT 20 end_POSTSUPERSCRIPT 212superscript2122^{12}2 start_POSTSUPERSCRIPT 12 end_POSTSUPERSCRIPT 214superscript2142^{14}2 start_POSTSUPERSCRIPT 14 end_POSTSUPERSCRIPT 216superscript2162^{16}2 start_POSTSUPERSCRIPT 16 end_POSTSUPERSCRIPT 218superscript2182^{18}2 start_POSTSUPERSCRIPT 18 end_POSTSUPERSCRIPT 220superscript2202^{20}2 start_POSTSUPERSCRIPT 20 end_POSTSUPERSCRIPT 212superscript2122^{12}2 start_POSTSUPERSCRIPT 12 end_POSTSUPERSCRIPT 214superscript2142^{14}2 start_POSTSUPERSCRIPT 14 end_POSTSUPERSCRIPT 216superscript2162^{16}2 start_POSTSUPERSCRIPT 16 end_POSTSUPERSCRIPT 218superscript2182^{18}2 start_POSTSUPERSCRIPT 18 end_POSTSUPERSCRIPT 220superscript2202^{20}2 start_POSTSUPERSCRIPT 20 end_POSTSUPERSCRIPT
    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
    Table 2: Running time and communication costs for MPSI-card protocols in LAN and WAN settings. The data of [18] originates from their paper for lack of available implementation. Cells with -- denote missing data that is not reported.
    m𝑚mitalic_m Time (second) Comm.(MB)
    LAN WAN
    212superscript2122^{12}2 start_POSTSUPERSCRIPT 12 end_POSTSUPERSCRIPT 214superscript2142^{14}2 start_POSTSUPERSCRIPT 14 end_POSTSUPERSCRIPT 216superscript2162^{16}2 start_POSTSUPERSCRIPT 16 end_POSTSUPERSCRIPT 218superscript2182^{18}2 start_POSTSUPERSCRIPT 18 end_POSTSUPERSCRIPT 220superscript2202^{20}2 start_POSTSUPERSCRIPT 20 end_POSTSUPERSCRIPT 212superscript2122^{12}2 start_POSTSUPERSCRIPT 12 end_POSTSUPERSCRIPT 214superscript2142^{14}2 start_POSTSUPERSCRIPT 14 end_POSTSUPERSCRIPT 216superscript2162^{16}2 start_POSTSUPERSCRIPT 16 end_POSTSUPERSCRIPT 218superscript2182^{18}2 start_POSTSUPERSCRIPT 18 end_POSTSUPERSCRIPT 220superscript2202^{20}2 start_POSTSUPERSCRIPT 20 end_POSTSUPERSCRIPT 212superscript2122^{12}2 start_POSTSUPERSCRIPT 12 end_POSTSUPERSCRIPT 214superscript2142^{14}2 start_POSTSUPERSCRIPT 14 end_POSTSUPERSCRIPT 216superscript2162^{16}2 start_POSTSUPERSCRIPT 16 end_POSTSUPERSCRIPT 218superscript2182^{18}2 start_POSTSUPERSCRIPT 18 end_POSTSUPERSCRIPT 220superscript2202^{20}2 start_POSTSUPERSCRIPT 20 end_POSTSUPERSCRIPT
    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
    Table 3: Running time and communication costs for our MPSI-card-sum protocol.
    m𝑚mitalic_m protocol Time (second) Comm. (MB)
    LAN WAN
    212superscript2122^{12}2 start_POSTSUPERSCRIPT 12 end_POSTSUPERSCRIPT 214superscript2142^{14}2 start_POSTSUPERSCRIPT 14 end_POSTSUPERSCRIPT 216superscript2162^{16}2 start_POSTSUPERSCRIPT 16 end_POSTSUPERSCRIPT 218superscript2182^{18}2 start_POSTSUPERSCRIPT 18 end_POSTSUPERSCRIPT 220superscript2202^{20}2 start_POSTSUPERSCRIPT 20 end_POSTSUPERSCRIPT 212superscript2122^{12}2 start_POSTSUPERSCRIPT 12 end_POSTSUPERSCRIPT 214superscript2142^{14}2 start_POSTSUPERSCRIPT 14 end_POSTSUPERSCRIPT 216superscript2162^{16}2 start_POSTSUPERSCRIPT 16 end_POSTSUPERSCRIPT 218superscript2182^{18}2 start_POSTSUPERSCRIPT 18 end_POSTSUPERSCRIPT 220superscript2202^{20}2 start_POSTSUPERSCRIPT 20 end_POSTSUPERSCRIPT 212superscript2122^{12}2 start_POSTSUPERSCRIPT 12 end_POSTSUPERSCRIPT 214superscript2142^{14}2 start_POSTSUPERSCRIPT 14 end_POSTSUPERSCRIPT 216superscript2162^{16}2 start_POSTSUPERSCRIPT 16 end_POSTSUPERSCRIPT 218superscript2182^{18}2 start_POSTSUPERSCRIPT 18 end_POSTSUPERSCRIPT 220superscript2202^{20}2 start_POSTSUPERSCRIPT 20 end_POSTSUPERSCRIPT
    [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 --
    Table 4: Running time and communication costs for MPSU protocols in LAN and WAN settings. Cells with -- denote trials running out of memory.

    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 n𝑛nitalic_n and m𝑚mitalic_m, omitting security parameters.

    In Figure 13, the parties (P1subscript𝑃1P_{1}italic_P start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT as P𝗉𝗂𝗏𝗈𝗍subscript𝑃𝗉𝗂𝗏𝗈𝗍P_{\mathsf{pivot}}italic_P start_POSTSUBSCRIPT sansserif_pivot end_POSTSUBSCRIPT) invoke the batch pure membership zero-sharing protocol of size B=O(n)𝐵𝑂𝑛B=O(n)italic_B = italic_O ( italic_n ). In this stage, the computation and communication complexity of P1subscript𝑃1P_{1}italic_P start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT are O(mn)𝑂𝑚𝑛O(mn)italic_O ( italic_m italic_n ), while the computation and communication complexity of each Pjsubscript𝑃𝑗P_{j}italic_P start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT (1<jm1𝑗𝑚1<j\leq m1 < italic_j ≤ italic_m) are O(n)𝑂𝑛O(n)italic_O ( italic_n ). In MPSI/circuit-MPSI, each Pjsubscript𝑃𝑗P_{j}italic_P start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT directly sends its shares to P1subscript𝑃1P_{1}italic_P start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT, thereby, the overall computation and communication complexity of P1subscript𝑃1P_{1}italic_P start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT are O(mn)𝑂𝑚𝑛O(mn)italic_O ( italic_m italic_n ), while the overall computation and communication complexity of each Pjsubscript𝑃𝑗P_{j}italic_P start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT are O(n)𝑂𝑛O(n)italic_O ( italic_n ); 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 P1subscript𝑃1P_{1}italic_P start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT as the leader. In this stage, the computation and communication complexity of P1subscript𝑃1P_{1}italic_P start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT are O(mn)𝑂𝑚𝑛O(mn)italic_O ( italic_m italic_n ), while the computation and communication complexity of Pjsubscript𝑃𝑗P_{j}italic_P start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT are O(n)𝑂𝑛O(n)italic_O ( italic_n ). 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 B=O(n)𝐵𝑂𝑛B=O(n)italic_B = italic_O ( italic_n ). In this stage, the computation and communication complexity of P1subscript𝑃1P_{1}italic_P start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT are O(mn)𝑂𝑚𝑛O(mn)italic_O ( italic_m italic_n ), while the computation and communication complexity of each Pjsubscript𝑃𝑗P_{j}italic_P start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT (1<jm1𝑗𝑚1<j\leq m1 < italic_j ≤ italic_m) are O(n)𝑂𝑛O(n)italic_O ( italic_n ). Then, the parties invoke the multi-party secret-shared shuffle protocol twice, Pjsubscript𝑃𝑗P_{j}italic_P start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT reconstructs the cardinality to P1subscript𝑃1P_{1}italic_P start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT, and P1subscript𝑃1P_{1}italic_P start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT 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 O(mn)𝑂𝑚𝑛O(mn)italic_O ( italic_m italic_n ) and each client’s computation and communication complexity are O(n)𝑂𝑛O(n)italic_O ( italic_n ). 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 n𝑛nitalic_n and m𝑚mitalic_m, omitting security parameters.

    In Figure 15, 1<jm1𝑗𝑚1<j\leq m1 < italic_j ≤ italic_m, P1,,Pjsubscript𝑃1subscript𝑃𝑗P_{1},\cdots,P_{j}italic_P start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , ⋯ , italic_P start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT (Pjsubscript𝑃𝑗P_{j}italic_P start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT as P𝗉𝗂𝗏𝗈𝗍subscript𝑃𝗉𝗂𝗏𝗈𝗍P_{\mathsf{pivot}}italic_P start_POSTSUBSCRIPT sansserif_pivot end_POSTSUBSCRIPT) invoke the batch pure non-membership zero-sharing protocol of size B=O(n)𝐵𝑂𝑛B=O(n)italic_B = italic_O ( italic_n ). Each Pjsubscript𝑃𝑗P_{j}italic_P start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT engages in mj+1𝑚𝑗1m-j+1italic_m - italic_j + 1 invocations of batch pure non-membership zero-sharing protocols, acting as P𝗉𝗂𝗏𝗈𝗍subscript𝑃𝗉𝗂𝗏𝗈𝗍P_{\mathsf{pivot}}italic_P start_POSTSUBSCRIPT sansserif_pivot end_POSTSUBSCRIPT in the first time. P1subscript𝑃1P_{1}italic_P start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT engages in m1𝑚1m-1italic_m - 1 invocations of batch pure non-membership zero-sharing protocols without acting as P𝗉𝗂𝗏𝗈𝗍subscript𝑃𝗉𝗂𝗏𝗈𝗍P_{\mathsf{pivot}}italic_P start_POSTSUBSCRIPT sansserif_pivot end_POSTSUBSCRIPT. In this stage, the computation and communication complexity of each party are O(mn)𝑂𝑚𝑛O(mn)italic_O ( italic_m italic_n ). After that, the parties hold (m1)B𝑚1𝐵(m-1)B( italic_m - 1 ) italic_B secret-sharings. Then, they invoke the multi-party secret-shared shuffle protocol (with P1subscript𝑃1P_{1}italic_P start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT as the leader) with their (m1)B=O(mn)𝑚1𝐵𝑂𝑚𝑛(m-1)B=O(mn)( italic_m - 1 ) italic_B = italic_O ( italic_m italic_n ) shares, and finally each Pjsubscript𝑃𝑗P_{j}italic_P start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT sends its shuffled shares to P1subscript𝑃1P_{1}italic_P start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT. Thereby, the computation and communication complexity of P1subscript𝑃1P_{1}italic_P start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT are O(m2n)𝑂superscript𝑚2𝑛O(m^{2}n)italic_O ( italic_m start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT italic_n ), while the computation and communication complexity of each Pjsubscript𝑃𝑗P_{j}italic_P start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT are O(mn)𝑂𝑚𝑛O(mn)italic_O ( italic_m italic_n ). As a result, the overall computation and communication complexity of P1subscript𝑃1P_{1}italic_P start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT are O(m2n)𝑂superscript𝑚2𝑛O(m^{2}n)italic_O ( italic_m start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT italic_n ), while the computation and communication complexity of each Pjsubscript𝑃𝑗P_{j}italic_P start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT are O(mn)𝑂𝑚𝑛O(mn)italic_O ( italic_m italic_n ).

    Our MPSU protocol follows the secret-sharing based MPSU paradigm, where the leader’s optimal computation and communication complexity are O(m2n)𝑂superscript𝑚2𝑛O(m^{2}n)italic_O ( italic_m start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT italic_n ), while each client’s optimal computation and communication complexity are O(mn)𝑂𝑚𝑛O(mn)italic_O ( italic_m italic_n ). This optimal complexity is determined by the core design of secret-sharing O(mn)𝑂𝑚𝑛O(mn)italic_O ( italic_m italic_n ) elements among m𝑚mitalic_m 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] O(m2n2)𝑂superscript𝑚2superscript𝑛2O(m^{2}n^{2})italic_O ( italic_m start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT italic_n start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT ) O(m2n2)𝑂superscript𝑚2superscript𝑛2O(m^{2}n^{2})italic_O ( italic_m start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT italic_n start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT ) O(m2n2λ)𝑂superscript𝑚2superscript𝑛2𝜆O(m^{2}n^{2}\lambda)italic_O ( italic_m start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT italic_n start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT italic_λ ) O(m2n2λ)𝑂superscript𝑚2superscript𝑛2𝜆O(m^{2}n^{2}\lambda)italic_O ( italic_m start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT italic_n start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT italic_λ ) standard PK
    [36] O(mtn2)𝑂𝑚𝑡superscript𝑛2O(mtn^{2})italic_O ( italic_m italic_t italic_n start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT ) O(mtn2)𝑂𝑚𝑡superscript𝑛2O(mtn^{2})italic_O ( italic_m italic_t italic_n start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT ) O(mtnlog|U|λ)𝑂𝑚𝑡𝑛𝑈𝜆O(mtn\log\lvert U\rvert\lambda)italic_O ( italic_m italic_t italic_n roman_log | italic_U | italic_λ ) O(mtnlog|U|λ)𝑂𝑚𝑡𝑛𝑈𝜆O(mtn\log\lvert U\rvert\lambda)italic_O ( italic_m italic_t italic_n roman_log | italic_U | italic_λ ) standard semi-honest PK
    [33] O(mn2)𝑂𝑚superscript𝑛2O(mn^{2})italic_O ( italic_m italic_n start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT ) O(n)𝑂𝑛O(n)italic_O ( italic_n ) O(mnλ)𝑂𝑚𝑛𝜆O(mn\lambda)italic_O ( italic_m italic_n italic_λ ) O(nλ)𝑂𝑛𝜆O(n\lambda)italic_O ( italic_n italic_λ ) standard semi-honest PK
    [38] O(mn)𝑂𝑚𝑛O(mn)italic_O ( italic_m italic_n ) O(n)𝑂𝑛O(n)italic_O ( italic_n ) O(mn(λ+σ+logn))𝑂𝑚𝑛𝜆𝜎𝑛O(mn(\lambda+\sigma+\log n))italic_O ( italic_m italic_n ( italic_λ + italic_σ + roman_log italic_n ) ) O(n(λ+σ+logn))𝑂𝑛𝜆𝜎𝑛O(n(\lambda+\sigma+\log n))italic_O ( italic_n ( italic_λ + italic_σ + roman_log italic_n ) ) augmented semi-honest SK
    O(tn)𝑂𝑡𝑛O(tn)italic_O ( italic_t italic_n ) O(tn(λ+σ+logn))𝑂𝑡𝑛𝜆𝜎𝑛O(tn(\lambda+\sigma+\log n))italic_O ( italic_t italic_n ( italic_λ + italic_σ + roman_log italic_n ) ) standard semi-honest SK
    [34] O(mn)𝑂𝑚𝑛O(mn)italic_O ( italic_m italic_n ) O(mn)𝑂𝑚𝑛O(mn)italic_O ( italic_m italic_n ) O(log(m)nσ2)𝑂𝑚𝑛superscript𝜎2O(\log(m)n\sigma^{2})italic_O ( roman_log ( italic_m ) italic_n italic_σ start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT ) augmented semi-honest SK
    O(mnσ2)𝑂𝑚𝑛superscript𝜎2O(mn\sigma^{2})italic_O ( italic_m italic_n italic_σ start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT ) standard semi-honest SK
    [27] O(mnlogn)𝑂𝑚𝑛𝑛O(mn\log n)italic_O ( italic_m italic_n roman_log italic_n ) O(nlogn)𝑂𝑛𝑛O(n\log n)italic_O ( italic_n roman_log italic_n ) O((m2+mn)λ)𝑂superscript𝑚2𝑚𝑛𝜆O((m^{2}+mn)\lambda)italic_O ( ( italic_m start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT + italic_m italic_n ) italic_λ ) malicious SK
     [8] O(mn)𝑂𝑚𝑛O(mn)italic_O ( italic_m italic_n ) O(mnλ(log(nλ)+λ))𝑂𝑚𝑛𝜆𝑛𝜆𝜆O(mn\lambda(\log(n\lambda)+\lambda))italic_O ( italic_m italic_n italic_λ ( roman_log ( italic_n italic_λ ) + italic_λ ) ) O(nλ(log(nλ)+λ))𝑂𝑛𝜆𝑛𝜆𝜆O(n\lambda(\log(n\lambda)+\lambda))italic_O ( italic_n italic_λ ( roman_log ( italic_n italic_λ ) + italic_λ ) ) augmented semi-honest/malicious SK
     [41] O(mn)𝑂𝑚𝑛O(mn)italic_O ( italic_m italic_n ) O(tn)𝑂𝑡𝑛O(tn)italic_O ( italic_t italic_n ) O(mn(λ+σ+logn)O(mn(\lambda+\sigma+\log n)italic_O ( italic_m italic_n ( italic_λ + italic_σ + roman_log italic_n ) O(n(λ+σ+logn)O(n(\lambda+\sigma+\log n)italic_O ( italic_n ( italic_λ + italic_σ + roman_log italic_n ) augmented semi-honest/malicious SK
    [58] O(mn)𝑂𝑚𝑛O(mn)italic_O ( italic_m italic_n ) O(tn)𝑂𝑡𝑛O(tn)italic_O ( italic_t italic_n ) O(mn(λ+σ+logn))𝑂𝑚𝑛𝜆𝜎𝑛O(mn(\lambda+\sigma+\log n))italic_O ( italic_m italic_n ( italic_λ + italic_σ + roman_log italic_n ) ) O(tn(λ+σ+logn))𝑂𝑡𝑛𝜆𝜎𝑛O(tn(\lambda+\sigma+\log n))italic_O ( italic_t italic_n ( italic_λ + italic_σ + roman_log italic_n ) ) standard semi-honest SK
    Ours O(mn)𝑂𝑚𝑛O(mn)italic_O ( italic_m italic_n ) O(n)𝑂𝑛O(n)italic_O ( italic_n ) O(mn(σ+logn))𝑂𝑚𝑛𝜎𝑛O(mn(\sigma+\log n))italic_O ( italic_m italic_n ( italic_σ + roman_log italic_n ) ) O(n(σ+logn))𝑂𝑛𝜎𝑛O(n(\sigma+\log n))italic_O ( italic_n ( italic_σ + roman_log italic_n ) ) standard semi-honest SK
    Table 5: Asymptotic communication and computation costs of MPSI protocols in the semi-honest setting, where n𝑛nitalic_n is the set size. m𝑚mitalic_m is the number of parties. t𝑡titalic_t is the number of colluding parties. U𝑈Uitalic_U is the domain of elements. We use “PK” to denote the protocols based on public-key operations, and “SK” to denote the protocols based on OT and symmetric-key operations. We use λ,σ𝜆𝜎\lambda,\sigmaitalic_λ , italic_σ as the computational and statistical security parameters respectively. We use “augmented semi-honest/malicious” to denote the malicious protocols that implies augmented semi-honest security while is insecure in standard semi-honest model (A detailed discussion of the relations between malicious model and augmented / standard semi-honest model can be found in [31] Section 2.4.4).
    Protocol Computation Communication Security Operation
    Leader Client Leader Client
    [18] O((mt)n+tnlogn)𝑂𝑚𝑡𝑛𝑡𝑛𝑛O((m-t)n+tn\log n)italic_O ( ( italic_m - italic_t ) italic_n + italic_t italic_n roman_log italic_n ) O(tn)𝑂𝑡𝑛O(tn)italic_O ( italic_t italic_n ) O(((mt)n+tnlogn)(σ+logn))𝑂𝑚𝑡𝑛𝑡𝑛𝑛𝜎𝑛O(((m-t)n+tn\log n)(\sigma+\log n))italic_O ( ( ( italic_m - italic_t ) italic_n + italic_t italic_n roman_log italic_n ) ( italic_σ + roman_log italic_n ) ) O(tn(σ+logn))𝑂𝑡𝑛𝜎𝑛O(tn(\sigma+\log n))italic_O ( italic_t italic_n ( italic_σ + roman_log italic_n ) ) standard semi-honest SK
    Ours O(mn)𝑂𝑚𝑛O(mn)italic_O ( italic_m italic_n ) O(n)𝑂𝑛O(n)italic_O ( italic_n ) O(mn(σ+logn))𝑂𝑚𝑛𝜎𝑛O(mn(\sigma+\log n))italic_O ( italic_m italic_n ( italic_σ + roman_log italic_n ) ) O(n(σ+logn))𝑂𝑛𝜎𝑛O(n(\sigma+\log n))italic_O ( italic_n ( italic_σ + roman_log italic_n ) ) standard semi-honest SK
    Table 6: Asymptotic communication and computation costs of MPSI-card/MPSI-card-sum protocols in the semi-honest setting, where n𝑛nitalic_n is the set size. m𝑚mitalic_m is the number of parties. We set the number of colluding parties t𝑡titalic_t as the maximum m1𝑚1m-1italic_m - 1. We use “SK” to denote the protocols based on OT and symmetric-key operations. We use λ,σ𝜆𝜎\lambda,\sigmaitalic_λ , italic_σ as the computational and statistical security parameters respectively.
    Protocol Computation Communication Security Operation
    Leader Client Leader Client
    [24] O(mn(logn/loglogn))𝑂𝑚𝑛𝑛𝑛O(mn(\log n/\log\log n))italic_O ( italic_m italic_n ( roman_log italic_n / roman_log roman_log italic_n ) ) λmn(logn/loglogn)𝜆𝑚𝑛𝑛𝑛\lambda mn(\log n/\log\log n)italic_λ italic_m italic_n ( roman_log italic_n / roman_log roman_log italic_n ) standard semi-honest PK
    [19] O(m2n)𝑂superscript𝑚2𝑛O(m^{2}n)italic_O ( italic_m start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT italic_n ) O(m2n)𝑂superscript𝑚2𝑛O(m^{2}n)italic_O ( italic_m start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT italic_n ) O(m2n)(l+σ+logm+logn)𝑂superscript𝑚2𝑛𝑙𝜎𝑚𝑛O(m^{2}n)(l+\sigma+\log m+\log n)italic_O ( italic_m start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT italic_n ) ( italic_l + italic_σ + roman_log italic_m + roman_log italic_n ) O(m2n(l+σ+logm+logn))𝑂superscript𝑚2𝑛𝑙𝜎𝑚𝑛O(m^{2}n(l+\sigma+\log m+\log n))italic_O ( italic_m start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT italic_n ( italic_l + italic_σ + roman_log italic_m + roman_log italic_n ) ) standard semi-honest SK
    Ours O(m2n)𝑂superscript𝑚2𝑛O(m^{2}n)italic_O ( italic_m start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT italic_n ) O(mn)𝑂𝑚𝑛O(mn)italic_O ( italic_m italic_n ) O(m2n(l+σ+logm+logn))𝑂superscript𝑚2𝑛𝑙𝜎𝑚𝑛O(m^{2}n(l+\sigma+\log m+\log n))italic_O ( italic_m start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT italic_n ( italic_l + italic_σ + roman_log italic_m + roman_log italic_n ) ) O(mn(l+σ+logm+logn))𝑂𝑚𝑛𝑙𝜎𝑚𝑛O(mn(l+\sigma+\log m+\log n))italic_O ( italic_m italic_n ( italic_l + italic_σ + roman_log italic_m + roman_log italic_n ) ) standard semi-honest SK
    Table 7: Asymptotic communication and computation costs of MPSU protocols in the semi-honest setting, where n𝑛nitalic_n is the set size. m𝑚mitalic_m is the number of parties. l𝑙litalic_l is the length of elements. We use “PK” to denote the protocols based on public-key operations, and “SK” to denote the protocols based on OT and symmetric-key operations. We use λ,σ𝜆𝜎\lambda,\sigmaitalic_λ , italic_σ as the computational and statistical security parameters.

    Appendix 0.B The Proof of Theorem 3.1

    Proof

    We prove this theorem by constructing the predicate formula φ𝜑\varphiitalic_φ using mathematical induction.

    • Base Case. If Y=Xi𝑌subscript𝑋𝑖Y=X_{i}italic_Y = italic_X start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT for some i{1,,m}𝑖1𝑚i\in\{1,\cdots,m\}italic_i ∈ { 1 , ⋯ , italic_m }, then φ(x,X1,,Xm)=M(x,Xi):xXi:𝜑𝑥subscript𝑋1subscript𝑋𝑚𝑀𝑥subscript𝑋𝑖𝑥subscript𝑋𝑖\varphi(x,X_{1},\cdots,X_{m})=M(x,X_{i}):x\in X_{i}italic_φ ( italic_x , italic_X start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , ⋯ , italic_X start_POSTSUBSCRIPT italic_m end_POSTSUBSCRIPT ) = italic_M ( italic_x , italic_X start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT ) : italic_x ∈ italic_X start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT.

    • Induction Hypothesis. Assume that for any sets A𝐴Aitalic_A and B𝐵Bitalic_B obtained from X1,,Xmsubscript𝑋1subscript𝑋𝑚X_{1},\cdots,X_{m}italic_X start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , ⋯ , italic_X start_POSTSUBSCRIPT italic_m end_POSTSUBSCRIPT through k𝑘kitalic_k set operations, there exist set predicate formulas φAsubscript𝜑𝐴\varphi_{A}italic_φ start_POSTSUBSCRIPT italic_A end_POSTSUBSCRIPT and φBsubscript𝜑𝐵\varphi_{B}italic_φ start_POSTSUBSCRIPT italic_B end_POSTSUBSCRIPT such that

      xAφA(x,X1,,Xm)=1,xBφB(x,X1,,Xm)=1.iff𝑥𝐴formulae-sequencesubscript𝜑𝐴𝑥subscript𝑋1subscript𝑋𝑚1𝑥𝐵iffsubscript𝜑𝐵𝑥subscript𝑋1subscript𝑋𝑚1x\in A\iff\varphi_{A}(x,X_{1},\cdots,X_{m})=1,\quad x\in B\iff\varphi_{B}(x,X_% {1},\cdots,X_{m})=1.italic_x ∈ italic_A ⇔ italic_φ start_POSTSUBSCRIPT italic_A end_POSTSUBSCRIPT ( italic_x , italic_X start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , ⋯ , italic_X start_POSTSUBSCRIPT italic_m end_POSTSUBSCRIPT ) = 1 , italic_x ∈ italic_B ⇔ italic_φ start_POSTSUBSCRIPT italic_B end_POSTSUBSCRIPT ( italic_x , italic_X start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , ⋯ , italic_X start_POSTSUBSCRIPT italic_m end_POSTSUBSCRIPT ) = 1 .
    • Induction Step. We proceed to construct φ𝜑\varphiitalic_φ for a set Y𝑌Yitalic_Y obtained from A𝐴Aitalic_A and B𝐵Bitalic_B through one additional set operation (intersection, union, difference), conducting k+1𝑘1k+1italic_k + 1 set operations in total.

      1. 1.

        Union. If Y=AB𝑌𝐴𝐵Y=A\cup Bitalic_Y = italic_A ∪ italic_B, then φ(x,X1,,Xm)=φA(x,X1,,Xm)φB(x,X1,,Xm)𝜑𝑥subscript𝑋1subscript𝑋𝑚subscript𝜑𝐴𝑥subscript𝑋1subscript𝑋𝑚subscript𝜑𝐵𝑥subscript𝑋1subscript𝑋𝑚\varphi(x,X_{1},\cdots,X_{m})=\varphi_{A}(x,X_{1},\cdots,X_{m})\lor\varphi_{B}% (x,X_{1},\cdots,X_{m})italic_φ ( italic_x , italic_X start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , ⋯ , italic_X start_POSTSUBSCRIPT italic_m end_POSTSUBSCRIPT ) = italic_φ start_POSTSUBSCRIPT italic_A end_POSTSUBSCRIPT ( italic_x , italic_X start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , ⋯ , italic_X start_POSTSUBSCRIPT italic_m end_POSTSUBSCRIPT ) ∨ italic_φ start_POSTSUBSCRIPT italic_B end_POSTSUBSCRIPT ( italic_x , italic_X start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , ⋯ , italic_X start_POSTSUBSCRIPT italic_m end_POSTSUBSCRIPT ).

      2. 2.

        Intersection. If Y=AB𝑌𝐴𝐵Y=A\cap Bitalic_Y = italic_A ∩ italic_B, φ(x,X1,,Xm)=φA(x,X1,,Xm)φB(x,X1,,Xm)𝜑𝑥subscript𝑋1subscript𝑋𝑚subscript𝜑𝐴𝑥subscript𝑋1subscript𝑋𝑚subscript𝜑𝐵𝑥subscript𝑋1subscript𝑋𝑚\varphi(x,X_{1},\cdots,X_{m})=\varphi_{A}(x,X_{1},\cdots,X_{m})\land\varphi_{B% }(x,X_{1},\cdots,X_{m})italic_φ ( italic_x , italic_X start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , ⋯ , italic_X start_POSTSUBSCRIPT italic_m end_POSTSUBSCRIPT ) = italic_φ start_POSTSUBSCRIPT italic_A end_POSTSUBSCRIPT ( italic_x , italic_X start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , ⋯ , italic_X start_POSTSUBSCRIPT italic_m end_POSTSUBSCRIPT ) ∧ italic_φ start_POSTSUBSCRIPT italic_B end_POSTSUBSCRIPT ( italic_x , italic_X start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , ⋯ , italic_X start_POSTSUBSCRIPT italic_m end_POSTSUBSCRIPT ).

      3. 3.

        Difference. If Y=AB𝑌𝐴𝐵Y=A\setminus Bitalic_Y = italic_A ∖ italic_B, φ(x,X1,,Xm)=φA(x,X1,,Xm)¬φB(x,X1,,Xm)𝜑𝑥subscript𝑋1subscript𝑋𝑚subscript𝜑𝐴𝑥subscript𝑋1subscript𝑋𝑚subscript𝜑𝐵𝑥subscript𝑋1subscript𝑋𝑚\varphi(x,X_{1},\cdots,X_{m})=\varphi_{A}(x,X_{1},\cdots,X_{m})\land\neg% \varphi_{B}(x,X_{1},\cdots,X_{m})italic_φ ( italic_x , italic_X start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , ⋯ , italic_X start_POSTSUBSCRIPT italic_m end_POSTSUBSCRIPT ) = italic_φ start_POSTSUBSCRIPT italic_A end_POSTSUBSCRIPT ( italic_x , italic_X start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , ⋯ , italic_X start_POSTSUBSCRIPT italic_m end_POSTSUBSCRIPT ) ∧ ¬ italic_φ start_POSTSUBSCRIPT italic_B end_POSTSUBSCRIPT ( italic_x , italic_X start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , ⋯ , italic_X start_POSTSUBSCRIPT italic_m end_POSTSUBSCRIPT ).

    By repeating the above steps, we construct the set predicate formula φ𝜑\varphiitalic_φ for any constructible set Y𝑌Yitalic_Y. 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 Y𝑌Yitalic_Y as a DNF formula

    φ(x,X1,,Xm)=C1Cn𝜑𝑥subscript𝑋1subscript𝑋𝑚subscript𝐶1subscript𝐶𝑛\varphi(x,X_{1},\cdots,X_{m})=C_{1}\lor\cdots\lor C_{n}italic_φ ( italic_x , italic_X start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , ⋯ , italic_X start_POSTSUBSCRIPT italic_m end_POSTSUBSCRIPT ) = italic_C start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ∨ ⋯ ∨ italic_C start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT

    where each Cisubscript𝐶𝑖C_{i}italic_C start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT (1in1𝑖𝑛1\leq i\leq n1 ≤ italic_i ≤ italic_n) is a conjunctive clause. We now show that φ𝜑\varphiitalic_φ can be transform into another DNF formula ψ𝜓\psiitalic_ψ with s𝑠sitalic_s conjunctive clauses (s>n𝑠𝑛s>nitalic_s > italic_n) such that each Cisubscript𝐶𝑖C_{i}italic_C start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT (1is1𝑖𝑠1\leq i\leq s1 ≤ italic_i ≤ italic_s) contains at least one atomic proposition of the form xXj𝑥subscript𝑋𝑗x\in X_{j}italic_x ∈ italic_X start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT, i.e., Cisubscript𝐶𝑖C_{i}italic_C start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT can be written in the form Ci=(xXj)Disubscript𝐶𝑖𝑥subscript𝑋𝑗subscript𝐷𝑖C_{i}=(x\in X_{j})\land D_{i}italic_C start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT = ( italic_x ∈ italic_X start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT ) ∧ italic_D start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT for some Xjsubscript𝑋𝑗X_{j}italic_X start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT.

    The proof is by contradiction. Suppose there is a clause Cisubscript𝐶𝑖C_{i}italic_C start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT containing no atomic propositions of the form xXj𝑥subscript𝑋𝑗x\in X_{j}italic_x ∈ italic_X start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT, i.e. Cisubscript𝐶𝑖C_{i}italic_C start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT is the conjunction of atomic propositions of the form xXj𝑥subscript𝑋𝑗x\notin X_{j}italic_x ∉ italic_X start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT. Consider two cases:

    • Case 1: Ci=(xXi1)(xXit)subscript𝐶𝑖𝑥subscript𝑋subscript𝑖1𝑥subscript𝑋subscript𝑖𝑡C_{i}=(x\notin X_{i_{1}})\land\cdots\land(x\notin X_{i_{t}})italic_C start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT = ( italic_x ∉ italic_X start_POSTSUBSCRIPT italic_i start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT end_POSTSUBSCRIPT ) ∧ ⋯ ∧ ( italic_x ∉ italic_X start_POSTSUBSCRIPT italic_i start_POSTSUBSCRIPT italic_t end_POSTSUBSCRIPT end_POSTSUBSCRIPT ) where t<m𝑡𝑚t<mitalic_t < italic_m. As Cisubscript𝐶𝑖C_{i}italic_C start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT is a conjunctive clause of φ𝜑\varphiitalic_φ, the corresponding set Yisubscriptsuperscript𝑌𝑖Y^{\prime}_{i}italic_Y start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT is a subset of the constructible set Y𝑌Yitalic_Y, and Yisubscriptsuperscript𝑌𝑖Y^{\prime}_{i}italic_Y start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT is also a constructible set. Hence, we can augment Cisubscript𝐶𝑖C_{i}italic_C start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT by

      Ci=Ci((xX1)(xXm))=(Ci(xX1))(Ci(xXm)).subscript𝐶𝑖subscript𝐶𝑖𝑥subscript𝑋1𝑥subscript𝑋𝑚subscript𝐶𝑖𝑥subscript𝑋1subscript𝐶𝑖𝑥subscript𝑋𝑚C_{i}=C_{i}\land((x\in X_{1})\lor\cdots\lor(x\in X_{m}))=(C_{i}\land(x\in X_{1% }))\lor\cdots\lor(C_{i}\land(x\in X_{m})).italic_C start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT = italic_C start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT ∧ ( ( italic_x ∈ italic_X start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ) ∨ ⋯ ∨ ( italic_x ∈ italic_X start_POSTSUBSCRIPT italic_m end_POSTSUBSCRIPT ) ) = ( italic_C start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT ∧ ( italic_x ∈ italic_X start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ) ) ∨ ⋯ ∨ ( italic_C start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT ∧ ( italic_x ∈ italic_X start_POSTSUBSCRIPT italic_m end_POSTSUBSCRIPT ) ) .

      For any clause that contains both xXid𝑥subscript𝑋subscript𝑖𝑑x\in X_{i_{d}}italic_x ∈ italic_X start_POSTSUBSCRIPT italic_i start_POSTSUBSCRIPT italic_d end_POSTSUBSCRIPT end_POSTSUBSCRIPT and its negation xXid𝑥subscript𝑋subscript𝑖𝑑x\notin X_{i_{d}}italic_x ∉ italic_X start_POSTSUBSCRIPT italic_i start_POSTSUBSCRIPT italic_d end_POSTSUBSCRIPT end_POSTSUBSCRIPT (1dt1𝑑𝑡1\leq d\leq t1 ≤ italic_d ≤ italic_t), it evaluates to 0 and can be discarded. The remaining formula is

      Ci=(Ci(xXj1))(Ci(xXjmt))=Ci,1Ci,mt.subscript𝐶𝑖subscript𝐶𝑖𝑥subscript𝑋subscript𝑗1subscript𝐶𝑖𝑥subscript𝑋subscript𝑗𝑚𝑡subscript𝐶𝑖1subscript𝐶𝑖𝑚𝑡C_{i}=(C_{i}\land(x\in X_{j_{1}}))\lor\cdots\lor(C_{i}\land(x\in X_{j_{m-t}}))% =C_{i,1}\lor\cdots\lor C_{i,m-t}.italic_C start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT = ( italic_C start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT ∧ ( italic_x ∈ italic_X start_POSTSUBSCRIPT italic_j start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT end_POSTSUBSCRIPT ) ) ∨ ⋯ ∨ ( italic_C start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT ∧ ( italic_x ∈ italic_X start_POSTSUBSCRIPT italic_j start_POSTSUBSCRIPT italic_m - italic_t end_POSTSUBSCRIPT end_POSTSUBSCRIPT ) ) = italic_C start_POSTSUBSCRIPT italic_i , 1 end_POSTSUBSCRIPT ∨ ⋯ ∨ italic_C start_POSTSUBSCRIPT italic_i , italic_m - italic_t end_POSTSUBSCRIPT .

      This splits each Cisubscript𝐶𝑖C_{i}italic_C start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT into mt𝑚𝑡m-titalic_m - italic_t conjunctive clauses where each clause contains at least one literal of the form xXj𝑥subscript𝑋𝑗x\in X_{j}italic_x ∈ italic_X start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT. We substitute each Cisubscript𝐶𝑖C_{i}italic_C start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT with the above equation and have the new DNF formula

      ψ(x,X1,,Xm)=C1Cs,𝜓𝑥subscript𝑋1subscript𝑋𝑚subscript𝐶1subscript𝐶𝑠\psi(x,X_{1},\cdots,X_{m})=C_{1}\lor\cdots\lor C_{s},italic_ψ ( italic_x , italic_X start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , ⋯ , italic_X start_POSTSUBSCRIPT italic_m end_POSTSUBSCRIPT ) = italic_C start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ∨ ⋯ ∨ italic_C start_POSTSUBSCRIPT italic_s end_POSTSUBSCRIPT ,

      where each Cisubscript𝐶𝑖C_{i}italic_C start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT (1is1𝑖𝑠1\leq i\leq s1 ≤ italic_i ≤ italic_s) represents an Xjsubscript𝑋𝑗X_{j}italic_X start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT-constructible set for some Xjsubscript𝑋𝑗X_{j}italic_X start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT (1jm1𝑗𝑚1\leq j\leq m1 ≤ italic_j ≤ italic_m). Note that Cisubscript𝐶𝑖C_{i}italic_C start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT is not set-separable with respect to Xjsubscript𝑋𝑗X_{j}italic_X start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT yet, since Disubscript𝐷𝑖D_{i}italic_D start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT might involve atomic propositions relevant to Xjsubscript𝑋𝑗X_{j}italic_X start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT.

    • Case 2: Ci=(xX1)(xXm)subscript𝐶𝑖𝑥subscript𝑋1𝑥subscript𝑋𝑚C_{i}=(x\notin X_{1})\land\cdots\land(x\notin X_{m})italic_C start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT = ( italic_x ∉ italic_X start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ) ∧ ⋯ ∧ ( italic_x ∉ italic_X start_POSTSUBSCRIPT italic_m end_POSTSUBSCRIPT ). This contradicts that the set Yisubscript𝑌𝑖Y_{i}italic_Y start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT represented by Cisubscript𝐶𝑖C_{i}italic_C start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT is constructible from X1,,Xmsubscript𝑋1subscript𝑋𝑚X_{1},\cdots,X_{m}italic_X start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , ⋯ , italic_X start_POSTSUBSCRIPT italic_m end_POSTSUBSCRIPT, so this case is not valid.

    Next we transform the new DNF formula ψ𝜓\psiitalic_ψ into a disjunction of subformulas that represent disjoint sets {Y1,,Ys}subscript𝑌1subscript𝑌𝑠\{Y_{1},\cdots,Y_{s}\}{ italic_Y start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , ⋯ , italic_Y start_POSTSUBSCRIPT italic_s end_POSTSUBSCRIPT }. Since the disjunction form of ψ𝜓\psiitalic_ψ implies Y1Ys=Ysubscript𝑌1subscript𝑌𝑠𝑌Y_{1}\cup\cdots\cup Y_{s}=Yitalic_Y start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ∪ ⋯ ∪ italic_Y start_POSTSUBSCRIPT italic_s end_POSTSUBSCRIPT = italic_Y, this will demonstrate that {Y1,,Ys}subscript𝑌1subscript𝑌𝑠\{Y_{1},\cdots,Y_{s}\}{ italic_Y start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , ⋯ , italic_Y start_POSTSUBSCRIPT italic_s end_POSTSUBSCRIPT } form a partition of Y𝑌Yitalic_Y.

    Let ψ1(x,X1,,Xm)=C2Cssubscript𝜓1𝑥subscript𝑋1subscript𝑋𝑚subscript𝐶2subscript𝐶𝑠\psi_{1}(x,X_{1},\cdots,X_{m})=C_{2}\lor\cdots\lor C_{s}italic_ψ start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ( italic_x , italic_X start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , ⋯ , italic_X start_POSTSUBSCRIPT italic_m end_POSTSUBSCRIPT ) = italic_C start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT ∨ ⋯ ∨ italic_C start_POSTSUBSCRIPT italic_s end_POSTSUBSCRIPT, then we have

    ψ(x,X1,,Xm)=C1ψ1(x,X1,,Xm).𝜓𝑥subscript𝑋1subscript𝑋𝑚subscript𝐶1subscript𝜓1𝑥subscript𝑋1subscript𝑋𝑚\psi(x,X_{1},\cdots,X_{m})=C_{1}\lor\psi_{1}(x,X_{1},\cdots,X_{m}).italic_ψ ( italic_x , italic_X start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , ⋯ , italic_X start_POSTSUBSCRIPT italic_m end_POSTSUBSCRIPT ) = italic_C start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ∨ italic_ψ start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ( italic_x , italic_X start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , ⋯ , italic_X start_POSTSUBSCRIPT italic_m end_POSTSUBSCRIPT ) .

    We augment C1ψ1(x,X1,,Xm)subscript𝐶1subscript𝜓1𝑥subscript𝑋1subscript𝑋𝑚C_{1}\lor\psi_{1}(x,X_{1},\cdots,X_{m})italic_C start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ∨ italic_ψ start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ( italic_x , italic_X start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , ⋯ , italic_X start_POSTSUBSCRIPT italic_m end_POSTSUBSCRIPT ) as C1((C1¬C1)ψ1(x,X1,,Xm))subscript𝐶1subscript𝐶1subscript𝐶1subscript𝜓1𝑥subscript𝑋1subscript𝑋𝑚C_{1}\lor((C_{1}\land\neg C_{1})\lor\psi_{1}(x,X_{1},\cdots,X_{m}))italic_C start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ∨ ( ( italic_C start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ∧ ¬ italic_C start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ) ∨ italic_ψ start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ( italic_x , italic_X start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , ⋯ , italic_X start_POSTSUBSCRIPT italic_m end_POSTSUBSCRIPT ) ), which can expand into C1(C1ψ1(x,X1,,Xm))(¬C1ψ1(x,X1,,Xm))subscript𝐶1subscript𝐶1subscript𝜓1𝑥subscript𝑋1subscript𝑋𝑚subscript𝐶1subscript𝜓1𝑥subscript𝑋1subscript𝑋𝑚C_{1}\lor(C_{1}\land\psi_{1}(x,X_{1},\cdots,X_{m}))\lor(\neg C_{1}\land\psi_{1% }(x,X_{1},\cdots,X_{m}))italic_C start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ∨ ( italic_C start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ∧ italic_ψ start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ( italic_x , italic_X start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , ⋯ , italic_X start_POSTSUBSCRIPT italic_m end_POSTSUBSCRIPT ) ) ∨ ( ¬ italic_C start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ∧ italic_ψ start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ( italic_x , italic_X start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , ⋯ , italic_X start_POSTSUBSCRIPT italic_m end_POSTSUBSCRIPT ) ). Given that C1ψ1(x,X1,,Xm)=1subscript𝐶1subscript𝜓1𝑥subscript𝑋1subscript𝑋𝑚1C_{1}\land\psi_{1}(x,X_{1},\cdots,X_{m})=1italic_C start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ∧ italic_ψ start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ( italic_x , italic_X start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , ⋯ , italic_X start_POSTSUBSCRIPT italic_m end_POSTSUBSCRIPT ) = 1 necessitate C1=1subscript𝐶11C_{1}=1italic_C start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT = 1, we have C1(C1ψ1(x,X1,,Xm))=C1subscript𝐶1subscript𝐶1subscript𝜓1𝑥subscript𝑋1subscript𝑋𝑚subscript𝐶1C_{1}\lor(C_{1}\land\psi_{1}(x,X_{1},\cdots,X_{m}))=C_{1}italic_C start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ∨ ( italic_C start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ∧ italic_ψ start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ( italic_x , italic_X start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , ⋯ , italic_X start_POSTSUBSCRIPT italic_m end_POSTSUBSCRIPT ) ) = italic_C start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT, hence

    ψ(x,X1,,Xm)=C1(¬C1ψ1(x,X1,,Xm)).𝜓𝑥subscript𝑋1subscript𝑋𝑚subscript𝐶1subscript𝐶1subscript𝜓1𝑥subscript𝑋1subscript𝑋𝑚\psi(x,X_{1},\cdots,X_{m})=C_{1}\lor(\neg C_{1}\land\psi_{1}(x,X_{1},\cdots,X_% {m})).italic_ψ ( italic_x , italic_X start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , ⋯ , italic_X start_POSTSUBSCRIPT italic_m end_POSTSUBSCRIPT ) = italic_C start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ∨ ( ¬ italic_C start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ∧ italic_ψ start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ( italic_x , italic_X start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , ⋯ , italic_X start_POSTSUBSCRIPT italic_m end_POSTSUBSCRIPT ) ) .

    By repeating this process for all Cisubscript𝐶𝑖C_{i}italic_C start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT (1is1𝑖𝑠1\leq i\leq s1 ≤ italic_i ≤ italic_s), we obtain

    ψ(x,X1,,Xm)=C1(¬C1C2)(¬C1¬C2¬Cs1Cs).𝜓𝑥subscript𝑋1subscript𝑋𝑚subscript𝐶1subscript𝐶1subscript𝐶2subscript𝐶1subscript𝐶2subscript𝐶𝑠1subscript𝐶𝑠\psi(x,X_{1},\cdots,X_{m})=C_{1}\lor(\neg C_{1}\land C_{2})\lor\cdots\lor(\neg C% _{1}\land\neg C_{2}\land\cdots\land\neg C_{s-1}\land C_{s}).italic_ψ ( italic_x , italic_X start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , ⋯ , italic_X start_POSTSUBSCRIPT italic_m end_POSTSUBSCRIPT ) = italic_C start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ∨ ( ¬ italic_C start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ∧ italic_C start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT ) ∨ ⋯ ∨ ( ¬ italic_C start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ∧ ¬ italic_C start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT ∧ ⋯ ∧ ¬ italic_C start_POSTSUBSCRIPT italic_s - 1 end_POSTSUBSCRIPT ∧ italic_C start_POSTSUBSCRIPT italic_s end_POSTSUBSCRIPT ) .

    We denote as ψ(x,X1,,Xm)=C1C2Cs𝜓𝑥subscript𝑋1subscript𝑋𝑚subscriptsuperscript𝐶1subscriptsuperscript𝐶2subscriptsuperscript𝐶𝑠\psi(x,X_{1},\cdots,X_{m})=C^{\prime}_{1}\lor C^{\prime}_{2}\cdots\lor C^{% \prime}_{s}italic_ψ ( italic_x , italic_X start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , ⋯ , italic_X start_POSTSUBSCRIPT italic_m end_POSTSUBSCRIPT ) = italic_C start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ∨ italic_C start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT ⋯ ∨ italic_C start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_s end_POSTSUBSCRIPT. For any two distinct Cisubscriptsuperscript𝐶𝑖C^{\prime}_{i}italic_C start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT and Cksubscriptsuperscript𝐶𝑘C^{\prime}_{k}italic_C start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT, it is easy to see that CiCk=0subscriptsuperscript𝐶𝑖subscriptsuperscript𝐶𝑘0C^{\prime}_{i}\land C^{\prime}_{k}=0italic_C start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT ∧ italic_C start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT = 0, so the sets Yisubscript𝑌𝑖Y_{i}italic_Y start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT and Yksubscript𝑌𝑘Y_{k}italic_Y start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT represented by Cisubscriptsuperscript𝐶𝑖C^{\prime}_{i}italic_C start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT and Cksubscriptsuperscript𝐶𝑘C^{\prime}_{k}italic_C start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT satisfy that YiYk=subscript𝑌𝑖subscript𝑌𝑘Y_{i}\cap Y_{k}=\emptysetitalic_Y start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT ∩ italic_Y start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT = ∅. Thus each Cisubscriptsuperscript𝐶𝑖C^{\prime}_{i}italic_C start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT represents a disjoint set.

    Finally, we prove that each Cisubscriptsuperscript𝐶𝑖C^{\prime}_{i}italic_C start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT can be reduced to be set-separable with respect to Xjsubscript𝑋𝑗X_{j}italic_X start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT. By definition, Cisubscriptsuperscript𝐶𝑖C^{\prime}_{i}italic_C start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT is the conjunction of negations of previous clauses Cksubscript𝐶𝑘C_{k}italic_C start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT (1k<i1𝑘𝑖1\leq k<i1 ≤ italic_k < italic_i) and Cisubscript𝐶𝑖C_{i}italic_C start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT:

    Ci=k=1i1¬CkCi.subscriptsuperscript𝐶𝑖superscriptsubscript𝑘1𝑖1subscript𝐶𝑘subscript𝐶𝑖C^{\prime}_{i}=\bigwedge_{k=1}^{i-1}\neg C_{k}\land C_{i}.italic_C start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT = ⋀ start_POSTSUBSCRIPT italic_k = 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_i - 1 end_POSTSUPERSCRIPT ¬ italic_C start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT ∧ italic_C start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT .

    Since Cisubscript𝐶𝑖C_{i}italic_C start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT can be written as (xXj)Di𝑥subscript𝑋𝑗subscript𝐷𝑖(x\in X_{j})\land D_{i}( italic_x ∈ italic_X start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT ) ∧ italic_D start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT, where Disubscript𝐷𝑖D_{i}italic_D start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT is the remaining part of the conjunctive clause. Substituting this into Cisubscriptsuperscript𝐶𝑖C^{\prime}_{i}italic_C start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT, we get

    Ci=j=1i1¬Cj(xXj)Di=(xXj)Di.subscriptsuperscript𝐶𝑖superscriptsubscript𝑗1𝑖1subscript𝐶𝑗𝑥subscript𝑋𝑗subscript𝐷𝑖𝑥subscript𝑋𝑗subscriptsuperscript𝐷𝑖C^{\prime}_{i}=\bigwedge_{j=1}^{i-1}\neg C_{j}\land(x\in X_{j})\land D_{i}=(x% \in X_{j})\land D^{\prime}_{i}.italic_C start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT = ⋀ start_POSTSUBSCRIPT italic_j = 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_i - 1 end_POSTSUPERSCRIPT ¬ italic_C start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT ∧ ( italic_x ∈ italic_X start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT ) ∧ italic_D start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT = ( italic_x ∈ italic_X start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT ) ∧ italic_D start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT .

    At this point, Disubscriptsuperscript𝐷𝑖D^{\prime}_{i}italic_D start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT may also contain atomic propositions relevant to Xjsubscript𝑋𝑗X_{j}italic_X start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT. We now show how to eliminate these redundant atomic propositions: A key observation is that for Ci=1subscriptsuperscript𝐶𝑖1C^{\prime}_{i}=1italic_C start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT = 1 to hold, the condition xXj𝑥subscript𝑋𝑗x\in X_{j}italic_x ∈ italic_X start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT must be true. Therefore, we reduce Cisubscriptsuperscript𝐶𝑖C^{\prime}_{i}italic_C start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT by assigning a truth value of 1 to all terms of the form xXj𝑥subscript𝑋𝑗x\in X_{j}italic_x ∈ italic_X start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT and a truth value of 0 to all terms of the form xXj𝑥subscript𝑋𝑗x\notin X_{j}italic_x ∉ italic_X start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT. After this reduction, we obtain a reduced formula Qi=(xXj)Qisubscript𝑄𝑖𝑥subscript𝑋𝑗subscriptsuperscript𝑄𝑖Q_{i}=(x\in X_{j})\land Q^{\prime}_{i}italic_Q start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT = ( italic_x ∈ italic_X start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT ) ∧ italic_Q start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT, which is equivalent to Cisubscriptsuperscript𝐶𝑖C^{\prime}_{i}italic_C start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT but Qisubscriptsuperscript𝑄𝑖Q^{\prime}_{i}italic_Q start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT contains no atomic propositions relevant to Xjsubscript𝑋𝑗X_{j}italic_X start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT. Thus, Qisubscript𝑄𝑖Q_{i}italic_Q start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT is set-separable with respect to Xjsubscript𝑋𝑗X_{j}italic_X start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT. 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 𝒜𝒜\mathcal{A}caligraphic_A.

    • --

      Base Case: 𝐭=𝐦𝟏𝐭𝐦1\mathbf{t=m-1}bold_t = bold_m - bold_1

      Assume 𝒜𝒜\mathcal{A}caligraphic_A corrupts t=m1𝑡𝑚1t=m-1italic_t = italic_m - 1 parties. Denote the set of corrupted parties as P𝒜={Pi1,,Pim1}subscriptP𝒜subscript𝑃subscript𝑖1subscript𝑃subscript𝑖𝑚1\textbf{P}_{\mathcal{A}}=\{P_{i_{1}},\cdots,P_{i_{m-1}}\}P start_POSTSUBSCRIPT caligraphic_A end_POSTSUBSCRIPT = { italic_P start_POSTSUBSCRIPT italic_i start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT end_POSTSUBSCRIPT , ⋯ , italic_P start_POSTSUBSCRIPT italic_i start_POSTSUBSCRIPT italic_m - 1 end_POSTSUBSCRIPT end_POSTSUBSCRIPT }, leaving only one honest party Phsubscript𝑃P_{h}italic_P start_POSTSUBSCRIPT italic_h end_POSTSUBSCRIPT. According to the privacy requirement, there exists a simulator 𝖲𝗂𝗆𝖲𝗂𝗆\mathsf{Sim}sansserif_Sim such that

      {𝖲𝗂𝗆(P𝒜,x𝒜,s𝒜)}x𝑐{𝖵𝗂𝖾𝗐𝒜Π(x)}xsubscript𝖲𝗂𝗆subscriptP𝒜subscriptx𝒜subscripts𝒜x𝑐subscriptsuperscriptsubscript𝖵𝗂𝖾𝗐𝒜Πxx\displaystyle\{\mathsf{Sim}(\textbf{P}_{\mathcal{A}},\textbf{x}_{\mathcal{A}},% \textbf{s}_{\mathcal{A}})\}_{\textbf{x}}\overset{c}{\approx}\{\mathsf{View}_{% \mathcal{A}}^{\Pi}(\textbf{x})\}_{\textbf{x}}{ sansserif_Sim ( P start_POSTSUBSCRIPT caligraphic_A end_POSTSUBSCRIPT , x start_POSTSUBSCRIPT caligraphic_A end_POSTSUBSCRIPT , s start_POSTSUBSCRIPT caligraphic_A end_POSTSUBSCRIPT ) } start_POSTSUBSCRIPT x end_POSTSUBSCRIPT overitalic_c start_ARG ≈ end_ARG { sansserif_View start_POSTSUBSCRIPT caligraphic_A end_POSTSUBSCRIPT start_POSTSUPERSCRIPT roman_Π end_POSTSUPERSCRIPT ( x ) } start_POSTSUBSCRIPT x end_POSTSUBSCRIPT

      We use r (resp. rΠsuperscriptrΠ\textbf{r}^{\Pi}r start_POSTSUPERSCRIPT roman_Π end_POSTSUPERSCRIPT) to denote the randomness in f(x)𝑓xf(\textbf{x})italic_f ( x ) in the ideal (resp. real) execution. It is easy to see that in the ideal execution, r is independent of 𝖲𝗂𝗆(P𝒜,x𝒜,s𝒜)𝖲𝗂𝗆subscriptP𝒜subscriptx𝒜subscripts𝒜\mathsf{Sim}(\textbf{P}_{\mathcal{A}},\textbf{x}_{\mathcal{A}},\textbf{s}_{% \mathcal{A}})sansserif_Sim ( P start_POSTSUBSCRIPT caligraphic_A end_POSTSUBSCRIPT , x start_POSTSUBSCRIPT caligraphic_A end_POSTSUBSCRIPT , s start_POSTSUBSCRIPT caligraphic_A end_POSTSUBSCRIPT ). Meanwhile, by the independence requirement, rΠsuperscriptrΠ\textbf{r}^{\Pi}r start_POSTSUPERSCRIPT roman_Π end_POSTSUPERSCRIPT is independent of 𝖵𝗂𝖾𝗐𝒜Π(x)superscriptsubscript𝖵𝗂𝖾𝗐𝒜Πx\mathsf{View}_{\mathcal{A}}^{\Pi}(\textbf{x})sansserif_View start_POSTSUBSCRIPT caligraphic_A end_POSTSUBSCRIPT start_POSTSUPERSCRIPT roman_Π end_POSTSUPERSCRIPT ( x ) in the real execution, so we can obtain

      {𝖲𝗂𝗆(P𝒜,x𝒜,s𝒜),r}x𝑐{𝖵𝗂𝖾𝗐𝒜Π(x),rΠ}x.subscript𝖲𝗂𝗆subscriptP𝒜subscriptx𝒜subscripts𝒜rx𝑐subscriptsuperscriptsubscript𝖵𝗂𝖾𝗐𝒜ΠxsuperscriptrΠx\displaystyle\{\mathsf{Sim}(\textbf{P}_{\mathcal{A}},\textbf{x}_{\mathcal{A}},% \textbf{s}_{\mathcal{A}}),\textbf{r}\}_{\textbf{x}}\overset{c}{\approx}\{% \mathsf{View}_{\mathcal{A}}^{\Pi}(\textbf{x}),\textbf{r}^{\Pi}\}_{\textbf{x}}.{ sansserif_Sim ( P start_POSTSUBSCRIPT caligraphic_A end_POSTSUBSCRIPT , x start_POSTSUBSCRIPT caligraphic_A end_POSTSUBSCRIPT , s start_POSTSUBSCRIPT caligraphic_A end_POSTSUBSCRIPT ) , r } start_POSTSUBSCRIPT x end_POSTSUBSCRIPT overitalic_c start_ARG ≈ end_ARG { sansserif_View start_POSTSUBSCRIPT caligraphic_A end_POSTSUBSCRIPT start_POSTSUPERSCRIPT roman_Π end_POSTSUPERSCRIPT ( x ) , r start_POSTSUPERSCRIPT roman_Π end_POSTSUPERSCRIPT } start_POSTSUBSCRIPT x end_POSTSUBSCRIPT .

      We further extend the indistinguishability into

      {𝖲𝗂𝗆(P𝒜,x𝒜,s𝒜),s𝒜,r}x𝑐{𝖵𝗂𝖾𝗐𝒜Π(x),s𝒜Π,rΠ}xsubscript𝖲𝗂𝗆subscriptP𝒜subscriptx𝒜subscripts𝒜subscripts𝒜rx𝑐subscriptsuperscriptsubscript𝖵𝗂𝖾𝗐𝒜ΠxsubscriptsuperscriptsΠ𝒜superscriptrΠx\displaystyle\{\mathsf{Sim}(\textbf{P}_{\mathcal{A}},\textbf{x}_{\mathcal{A}},% \textbf{s}_{\mathcal{A}}),\textbf{s}_{\mathcal{A}},\textbf{r}\}_{\textbf{x}}% \overset{c}{\approx}\{\mathsf{View}_{\mathcal{A}}^{\Pi}(\textbf{x}),\textbf{s}% ^{\Pi}_{\mathcal{A}},\textbf{r}^{\Pi}\}_{\textbf{x}}{ sansserif_Sim ( P start_POSTSUBSCRIPT caligraphic_A end_POSTSUBSCRIPT , x start_POSTSUBSCRIPT caligraphic_A end_POSTSUBSCRIPT , s start_POSTSUBSCRIPT caligraphic_A end_POSTSUBSCRIPT ) , s start_POSTSUBSCRIPT caligraphic_A end_POSTSUBSCRIPT , r } start_POSTSUBSCRIPT x end_POSTSUBSCRIPT overitalic_c start_ARG ≈ end_ARG { sansserif_View start_POSTSUBSCRIPT caligraphic_A end_POSTSUBSCRIPT start_POSTSUPERSCRIPT roman_Π end_POSTSUPERSCRIPT ( x ) , s start_POSTSUPERSCRIPT roman_Π end_POSTSUPERSCRIPT start_POSTSUBSCRIPT caligraphic_A end_POSTSUBSCRIPT , r start_POSTSUPERSCRIPT roman_Π end_POSTSUPERSCRIPT } start_POSTSUBSCRIPT x end_POSTSUBSCRIPT

      where s𝒜Π=(si1Π,,sim1Π)subscriptsuperscriptsΠ𝒜subscriptsuperscript𝑠Πsubscript𝑖1subscriptsuperscript𝑠Πsubscript𝑖𝑚1\textbf{s}^{\Pi}_{\mathcal{A}}=(s^{\Pi}_{i_{1}},\cdots,s^{\Pi}_{i_{m-1}})s start_POSTSUPERSCRIPT roman_Π end_POSTSUPERSCRIPT start_POSTSUBSCRIPT caligraphic_A end_POSTSUBSCRIPT = ( italic_s start_POSTSUPERSCRIPT roman_Π end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_i start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT end_POSTSUBSCRIPT , ⋯ , italic_s start_POSTSUPERSCRIPT roman_Π end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_i start_POSTSUBSCRIPT italic_m - 1 end_POSTSUBSCRIPT end_POSTSUBSCRIPT ), since each corrupted party Pisubscript𝑃𝑖P_{i}italic_P start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT’s output sisubscript𝑠𝑖s_{i}italic_s start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT (resp. siΠsubscriptsuperscript𝑠Π𝑖s^{\Pi}_{i}italic_s start_POSTSUPERSCRIPT roman_Π end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT) can be computed from its own view in the ideal (resp. real) execution (i{i1,,im1}𝑖subscript𝑖1subscript𝑖𝑚1i\in\{i_{1},\cdots,i_{m-1}\}italic_i ∈ { italic_i start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , ⋯ , italic_i start_POSTSUBSCRIPT italic_m - 1 end_POSTSUBSCRIPT }).

      By the functionality, the output of Phsubscript𝑃P_{h}italic_P start_POSTSUBSCRIPT italic_h end_POSTSUBSCRIPT satisfies sh=(sis𝒜si)+f(x)subscript𝑠subscriptsubscript𝑠𝑖subscripts𝒜subscript𝑠𝑖𝑓xs_{h}=-(\sum_{s_{i}\in\textbf{s}_{\mathcal{A}}}s_{i})+f(\textbf{x})italic_s start_POSTSUBSCRIPT italic_h end_POSTSUBSCRIPT = - ( ∑ start_POSTSUBSCRIPT italic_s start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT ∈ s start_POSTSUBSCRIPT caligraphic_A end_POSTSUBSCRIPT end_POSTSUBSCRIPT italic_s start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT ) + italic_f ( x ). By the correctness requirement, shΠ=(siΠs𝒜ΠsiΠ)+f(x)subscriptsuperscript𝑠Πsubscriptsubscriptsuperscript𝑠Π𝑖subscriptsuperscriptsΠ𝒜subscriptsuperscript𝑠Π𝑖𝑓xs^{\Pi}_{h}=-(\sum_{s^{\Pi}_{i}\in\textbf{s}^{\Pi}_{\mathcal{A}}}s^{\Pi}_{i})+% f(\textbf{x})italic_s start_POSTSUPERSCRIPT roman_Π end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_h end_POSTSUBSCRIPT = - ( ∑ start_POSTSUBSCRIPT italic_s start_POSTSUPERSCRIPT roman_Π end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT ∈ s start_POSTSUPERSCRIPT roman_Π end_POSTSUPERSCRIPT start_POSTSUBSCRIPT caligraphic_A end_POSTSUBSCRIPT end_POSTSUBSCRIPT italic_s start_POSTSUPERSCRIPT roman_Π end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT ) + italic_f ( x ). Thus, we extend the previous distributions by including shsubscript𝑠s_{h}italic_s start_POSTSUBSCRIPT italic_h end_POSTSUBSCRIPT and shΠsubscriptsuperscript𝑠Πs^{\Pi}_{h}italic_s start_POSTSUPERSCRIPT roman_Π end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_h end_POSTSUBSCRIPT respectively and obtain

      {𝖲𝗂𝗆(P𝒜,x𝒜,s𝒜),s𝒜,sh,r}x𝑐{𝖵𝗂𝖾𝗐𝒜Π(x),s𝒜Π,shΠ,rΠ}x.subscript𝖲𝗂𝗆subscriptP𝒜subscriptx𝒜subscripts𝒜subscripts𝒜subscript𝑠rx𝑐subscriptsuperscriptsubscript𝖵𝗂𝖾𝗐𝒜ΠxsubscriptsuperscriptsΠ𝒜subscriptsuperscript𝑠ΠsuperscriptrΠx\displaystyle\{\mathsf{Sim}(\textbf{P}_{\mathcal{A}},\textbf{x}_{\mathcal{A}},% \textbf{s}_{\mathcal{A}}),\textbf{s}_{\mathcal{A}},s_{h},\textbf{r}\}_{\textbf% {x}}\overset{c}{\approx}\{\mathsf{View}_{\mathcal{A}}^{\Pi}(\textbf{x}),% \textbf{s}^{\Pi}_{\mathcal{A}},s^{\Pi}_{h},\textbf{r}^{\Pi}\}_{\textbf{x}}.{ sansserif_Sim ( P start_POSTSUBSCRIPT caligraphic_A end_POSTSUBSCRIPT , x start_POSTSUBSCRIPT caligraphic_A end_POSTSUBSCRIPT , s start_POSTSUBSCRIPT caligraphic_A end_POSTSUBSCRIPT ) , s start_POSTSUBSCRIPT caligraphic_A end_POSTSUBSCRIPT , italic_s start_POSTSUBSCRIPT italic_h end_POSTSUBSCRIPT , r } start_POSTSUBSCRIPT x end_POSTSUBSCRIPT overitalic_c start_ARG ≈ end_ARG { sansserif_View start_POSTSUBSCRIPT caligraphic_A end_POSTSUBSCRIPT start_POSTSUPERSCRIPT roman_Π end_POSTSUPERSCRIPT ( x ) , s start_POSTSUPERSCRIPT roman_Π end_POSTSUPERSCRIPT start_POSTSUBSCRIPT caligraphic_A end_POSTSUBSCRIPT , italic_s start_POSTSUPERSCRIPT roman_Π end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_h end_POSTSUBSCRIPT , r start_POSTSUPERSCRIPT roman_Π end_POSTSUPERSCRIPT } start_POSTSUBSCRIPT x end_POSTSUBSCRIPT .

      The indistinguishability holds because shsubscript𝑠s_{h}italic_s start_POSTSUBSCRIPT italic_h end_POSTSUBSCRIPT (resp. shΠsubscriptsuperscript𝑠Πs^{\Pi}_{h}italic_s start_POSTSUPERSCRIPT roman_Π end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_h end_POSTSUBSCRIPT) is determined by s𝒜subscripts𝒜\textbf{s}_{\mathcal{A}}s start_POSTSUBSCRIPT caligraphic_A end_POSTSUBSCRIPT (resp. s𝒜ΠsubscriptsuperscriptsΠ𝒜\textbf{s}^{\Pi}_{\mathcal{A}}s start_POSTSUPERSCRIPT roman_Π end_POSTSUPERSCRIPT start_POSTSUBSCRIPT caligraphic_A end_POSTSUBSCRIPT), the randomness r (resp. rΠsuperscriptrΠ\textbf{r}^{\Pi}r start_POSTSUPERSCRIPT roman_Π end_POSTSUPERSCRIPT), and the parties’ inputs x. This implies

      {𝖲𝗂𝗆(P𝒜,x𝒜,s𝒜),s𝒜,sh}x𝑐{𝖵𝗂𝖾𝗐𝒜Π(x),s𝒜Π,shΠ}x.subscript𝖲𝗂𝗆subscriptP𝒜subscriptx𝒜subscripts𝒜subscripts𝒜subscript𝑠x𝑐subscriptsuperscriptsubscript𝖵𝗂𝖾𝗐𝒜ΠxsubscriptsuperscriptsΠ𝒜subscriptsuperscript𝑠Πx\displaystyle\{\mathsf{Sim}(\textbf{P}_{\mathcal{A}},\textbf{x}_{\mathcal{A}},% \textbf{s}_{\mathcal{A}}),\textbf{s}_{\mathcal{A}},s_{h}\}_{\textbf{x}}% \overset{c}{\approx}\{\mathsf{View}_{\mathcal{A}}^{\Pi}(\textbf{x}),\textbf{s}% ^{\Pi}_{\mathcal{A}},s^{\Pi}_{h}\}_{\textbf{x}}.{ sansserif_Sim ( P start_POSTSUBSCRIPT caligraphic_A end_POSTSUBSCRIPT , x start_POSTSUBSCRIPT caligraphic_A end_POSTSUBSCRIPT , s start_POSTSUBSCRIPT caligraphic_A end_POSTSUBSCRIPT ) , s start_POSTSUBSCRIPT caligraphic_A end_POSTSUBSCRIPT , italic_s start_POSTSUBSCRIPT italic_h end_POSTSUBSCRIPT } start_POSTSUBSCRIPT x end_POSTSUBSCRIPT overitalic_c start_ARG ≈ end_ARG { sansserif_View start_POSTSUBSCRIPT caligraphic_A end_POSTSUBSCRIPT start_POSTSUPERSCRIPT roman_Π end_POSTSUPERSCRIPT ( x ) , s start_POSTSUPERSCRIPT roman_Π end_POSTSUPERSCRIPT start_POSTSUBSCRIPT caligraphic_A end_POSTSUBSCRIPT , italic_s start_POSTSUPERSCRIPT roman_Π end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_h end_POSTSUBSCRIPT } start_POSTSUBSCRIPT x end_POSTSUBSCRIPT .

      Namely, ΠΠ\Piroman_Π securely computes f𝑓fitalic_f when 𝒜𝒜\mathcal{A}caligraphic_A corrupting t=m1𝑡𝑚1t=m-1italic_t = italic_m - 1 parties. Note that the independence requirement in this case implies that rΠsuperscriptrΠ\textbf{r}^{\Pi}r start_POSTSUPERSCRIPT roman_Π end_POSTSUPERSCRIPT is independent of the joint view of any m1𝑚1m-1italic_m - 1 parties in the real execution, which will be used in the subsequent proof.

    • --

      Inductive Hypothesis: 𝐭=𝐦𝐤𝐭𝐦𝐤\mathbf{t=m-k}bold_t = bold_m - bold_k

      Assume that for any adversary 𝒜𝒜\mathcal{A}caligraphic_A corrupting t=mk𝑡𝑚𝑘t=m-kitalic_t = italic_m - italic_k parties (1k<m11𝑘𝑚11\leq k<m-11 ≤ italic_k < italic_m - 1), ΠΠ\Piroman_Π securely computes f𝑓fitalic_f. Namely, there exists a simulator 𝖲𝗂𝗆𝖲𝗂𝗆\mathsf{Sim}sansserif_Sim such that

      {𝖲𝗂𝗆({P1,,Pm}P,{x1,,xm}x,{s1,,sm}s),{s1,,sm}s,s}xsubscript𝖲𝗂𝗆subscript𝑃1subscript𝑃𝑚subscriptPsubscript𝑥1subscript𝑥𝑚subscriptxsubscript𝑠1subscript𝑠𝑚subscriptssubscript𝑠1subscript𝑠𝑚subscriptssubscriptsx\displaystyle\{\mathsf{Sim}(\{P_{1},\cdots,P_{m}\}\setminus\textbf{P}_{% \mathcal{H}},\{x_{1},\cdots,x_{m}\}\setminus\textbf{x}_{\mathcal{H}},\{s_{1},% \cdots,s_{m}\}\setminus\textbf{s}_{\mathcal{H}}),\{s_{1},\cdots,s_{m}\}% \setminus\textbf{s}_{\mathcal{H}},\textbf{s}_{\mathcal{H}}\}_{\textbf{x}}{ sansserif_Sim ( { italic_P start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , ⋯ , italic_P start_POSTSUBSCRIPT italic_m end_POSTSUBSCRIPT } ∖ P start_POSTSUBSCRIPT caligraphic_H end_POSTSUBSCRIPT , { italic_x start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , ⋯ , italic_x start_POSTSUBSCRIPT italic_m end_POSTSUBSCRIPT } ∖ x start_POSTSUBSCRIPT caligraphic_H end_POSTSUBSCRIPT , { italic_s start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , ⋯ , italic_s start_POSTSUBSCRIPT italic_m end_POSTSUBSCRIPT } ∖ s start_POSTSUBSCRIPT caligraphic_H end_POSTSUBSCRIPT ) , { italic_s start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , ⋯ , italic_s start_POSTSUBSCRIPT italic_m end_POSTSUBSCRIPT } ∖ s start_POSTSUBSCRIPT caligraphic_H end_POSTSUBSCRIPT , s start_POSTSUBSCRIPT caligraphic_H end_POSTSUBSCRIPT } start_POSTSUBSCRIPT x end_POSTSUBSCRIPT
      𝑐{{𝖵𝗂𝖾𝗐1Π(x),,𝖵𝗂𝖾𝗐mΠ(x)}{𝖵𝗂𝖾𝗐Π(x)},{s1Π,,smΠ}sΠ,sΠ}x,𝑐subscriptsuperscriptsubscript𝖵𝗂𝖾𝗐1Πxsuperscriptsubscript𝖵𝗂𝖾𝗐𝑚Πxsuperscriptsubscript𝖵𝗂𝖾𝗐Πxsubscriptsuperscript𝑠Π1subscriptsuperscript𝑠Π𝑚subscriptsuperscriptsΠsubscriptsuperscriptsΠx\displaystyle\overset{c}{\approx}\{\{\mathsf{View}_{1}^{\Pi}(\textbf{x}),% \cdots,\mathsf{View}_{m}^{\Pi}(\textbf{x})\}\setminus\{\mathsf{View}_{\mathcal% {H}}^{\Pi}(\textbf{x})\},\{s^{\Pi}_{1},\cdots,s^{\Pi}_{m}\}\setminus\textbf{s}% ^{\Pi}_{\mathcal{H}},\textbf{s}^{\Pi}_{\mathcal{H}}\}_{\textbf{x}},overitalic_c start_ARG ≈ end_ARG { { sansserif_View start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT roman_Π end_POSTSUPERSCRIPT ( x ) , ⋯ , sansserif_View start_POSTSUBSCRIPT italic_m end_POSTSUBSCRIPT start_POSTSUPERSCRIPT roman_Π end_POSTSUPERSCRIPT ( x ) } ∖ { sansserif_View start_POSTSUBSCRIPT caligraphic_H end_POSTSUBSCRIPT start_POSTSUPERSCRIPT roman_Π end_POSTSUPERSCRIPT ( x ) } , { italic_s start_POSTSUPERSCRIPT roman_Π end_POSTSUPERSCRIPT start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , ⋯ , italic_s start_POSTSUPERSCRIPT roman_Π end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_m end_POSTSUBSCRIPT } ∖ s start_POSTSUPERSCRIPT roman_Π end_POSTSUPERSCRIPT start_POSTSUBSCRIPT caligraphic_H end_POSTSUBSCRIPT , s start_POSTSUPERSCRIPT roman_Π end_POSTSUPERSCRIPT start_POSTSUBSCRIPT caligraphic_H end_POSTSUBSCRIPT } start_POSTSUBSCRIPT x end_POSTSUBSCRIPT ,

      where PsubscriptP\textbf{P}_{\mathcal{H}}P start_POSTSUBSCRIPT caligraphic_H end_POSTSUBSCRIPT is the set of honest parties, 𝖵𝗂𝖾𝗐Π(x)superscriptsubscript𝖵𝗂𝖾𝗐Πx\mathsf{View}_{\mathcal{H}}^{\Pi}(\textbf{x})sansserif_View start_POSTSUBSCRIPT caligraphic_H end_POSTSUBSCRIPT start_POSTSUPERSCRIPT roman_Π end_POSTSUPERSCRIPT ( x ) denotes the joint view of PsubscriptP\textbf{P}_{\mathcal{H}}P start_POSTSUBSCRIPT caligraphic_H end_POSTSUBSCRIPT, while ssubscripts\textbf{s}_{\mathcal{H}}s start_POSTSUBSCRIPT caligraphic_H end_POSTSUBSCRIPT and sΠsubscriptsuperscriptsΠ\textbf{s}^{\Pi}_{\mathcal{H}}s start_POSTSUPERSCRIPT roman_Π end_POSTSUPERSCRIPT start_POSTSUBSCRIPT caligraphic_H end_POSTSUBSCRIPT are the respective outputs in the ideal and real executions.

      It is easy to see that in the ideal execution, ssubscripts\textbf{s}_{\mathcal{H}}s start_POSTSUBSCRIPT caligraphic_H end_POSTSUBSCRIPT is independent of the joint distribution {𝖲𝗂𝗆({P1,,Pm}P,{x1,,xm}x,{s1,,sm}s),{s1,,sm}s}𝖲𝗂𝗆subscript𝑃1subscript𝑃𝑚subscriptPsubscript𝑥1subscript𝑥𝑚subscriptxsubscript𝑠1subscript𝑠𝑚subscriptssubscript𝑠1subscript𝑠𝑚subscripts\{\mathsf{Sim}(\{P_{1},\cdots,P_{m}\}\setminus\textbf{P}_{\mathcal{H}},\{x_{1}% ,\cdots,x_{m}\}\setminus\textbf{x}_{\mathcal{H}},\{s_{1},\cdots,s_{m}\}% \setminus\textbf{s}_{\mathcal{H}}),\{s_{1},\cdots,s_{m}\}\setminus\textbf{s}_{% \mathcal{H}}\}{ sansserif_Sim ( { italic_P start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , ⋯ , italic_P start_POSTSUBSCRIPT italic_m end_POSTSUBSCRIPT } ∖ P start_POSTSUBSCRIPT caligraphic_H end_POSTSUBSCRIPT , { italic_x start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , ⋯ , italic_x start_POSTSUBSCRIPT italic_m end_POSTSUBSCRIPT } ∖ x start_POSTSUBSCRIPT caligraphic_H end_POSTSUBSCRIPT , { italic_s start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , ⋯ , italic_s start_POSTSUBSCRIPT italic_m end_POSTSUBSCRIPT } ∖ s start_POSTSUBSCRIPT caligraphic_H end_POSTSUBSCRIPT ) , { italic_s start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , ⋯ , italic_s start_POSTSUBSCRIPT italic_m end_POSTSUBSCRIPT } ∖ s start_POSTSUBSCRIPT caligraphic_H end_POSTSUBSCRIPT }. Thus, we can conclude that for any subset of parties P{P1,,Pm}subscriptPsubscript𝑃1subscript𝑃𝑚\textbf{P}_{\mathcal{H}}\subset\{P_{1},\cdots,P_{m}\}P start_POSTSUBSCRIPT caligraphic_H end_POSTSUBSCRIPT ⊂ { italic_P start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , ⋯ , italic_P start_POSTSUBSCRIPT italic_m end_POSTSUBSCRIPT } of size k𝑘kitalic_k, sΠsubscriptsuperscriptsΠ\textbf{s}^{\Pi}_{\mathcal{H}}s start_POSTSUPERSCRIPT roman_Π end_POSTSUPERSCRIPT start_POSTSUBSCRIPT caligraphic_H end_POSTSUBSCRIPT is independent of the joint distribution {{𝖵𝗂𝖾𝗐1Π(x),,𝖵𝗂𝖾𝗐mΠ(x)}𝖵𝗂𝖾𝗐Π(x),{s1Π,,smΠ}sΠ}superscriptsubscript𝖵𝗂𝖾𝗐1Πxsuperscriptsubscript𝖵𝗂𝖾𝗐𝑚Πxsuperscriptsubscript𝖵𝗂𝖾𝗐Πxsubscriptsuperscript𝑠Π1subscriptsuperscript𝑠Π𝑚subscriptsuperscriptsΠ\{\{\mathsf{View}_{1}^{\Pi}(\textbf{x}),\cdots,\mathsf{View}_{m}^{\Pi}(\textbf% {x})\}\setminus\mathsf{View}_{\mathcal{H}}^{\Pi}(\textbf{x}),\{s^{\Pi}_{1},% \cdots,s^{\Pi}_{m}\}\setminus\textbf{s}^{\Pi}_{\mathcal{H}}\}{ { sansserif_View start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT roman_Π end_POSTSUPERSCRIPT ( x ) , ⋯ , sansserif_View start_POSTSUBSCRIPT italic_m end_POSTSUBSCRIPT start_POSTSUPERSCRIPT roman_Π end_POSTSUPERSCRIPT ( x ) } ∖ sansserif_View start_POSTSUBSCRIPT caligraphic_H end_POSTSUBSCRIPT start_POSTSUPERSCRIPT roman_Π end_POSTSUPERSCRIPT ( x ) , { italic_s start_POSTSUPERSCRIPT roman_Π end_POSTSUPERSCRIPT start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , ⋯ , italic_s start_POSTSUPERSCRIPT roman_Π end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_m end_POSTSUBSCRIPT } ∖ s start_POSTSUPERSCRIPT roman_Π end_POSTSUPERSCRIPT start_POSTSUBSCRIPT caligraphic_H end_POSTSUBSCRIPT } in the real execution.

    • --

      Inductive Step: 𝐭=𝐦𝐤𝟏𝐭𝐦𝐤1\mathbf{t=m-k-1}bold_t = bold_m - bold_k - bold_1

      We proceed to prove the case where 𝒜𝒜\mathcal{A}caligraphic_A corrupts t=mk1𝑡𝑚𝑘1t=m-k-1italic_t = italic_m - italic_k - 1 parties:

      Let PsubscriptPsuperscript\textbf{P}_{\mathcal{H}^{\prime}}P start_POSTSUBSCRIPT caligraphic_H start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT end_POSTSUBSCRIPT represent a subset of {P1,,Pm}subscript𝑃1subscript𝑃𝑚\{P_{1},\cdots,P_{m}\}{ italic_P start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , ⋯ , italic_P start_POSTSUBSCRIPT italic_m end_POSTSUBSCRIPT } with size k+1𝑘1k+1italic_k + 1. We decompose it into P={P,Ph}subscriptPsuperscriptsubscriptPsubscript𝑃\textbf{P}_{\mathcal{H}^{\prime}}=\{\textbf{P}_{\mathcal{H}},P_{h}\}P start_POSTSUBSCRIPT caligraphic_H start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT end_POSTSUBSCRIPT = { P start_POSTSUBSCRIPT caligraphic_H end_POSTSUBSCRIPT , italic_P start_POSTSUBSCRIPT italic_h end_POSTSUBSCRIPT }, where P{P1,,Pm}subscriptPsubscript𝑃1subscript𝑃𝑚\textbf{P}_{\mathcal{H}}\subset\{P_{1},\cdots,P_{m}\}P start_POSTSUBSCRIPT caligraphic_H end_POSTSUBSCRIPT ⊂ { italic_P start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , ⋯ , italic_P start_POSTSUBSCRIPT italic_m end_POSTSUBSCRIPT } contains exact k𝑘kitalic_k parties while Phsubscript𝑃P_{h}italic_P start_POSTSUBSCRIPT italic_h end_POSTSUBSCRIPT is the remaining one party. By the privacy, we have

      {𝖲𝗂𝗆(P𝒜,x𝒜,s𝒜),s𝒜}x𝑐{𝖵𝗂𝖾𝗐𝒜Π(x),s𝒜Π}x.subscript𝖲𝗂𝗆subscriptP𝒜subscriptx𝒜subscripts𝒜subscripts𝒜x𝑐subscriptsuperscriptsubscript𝖵𝗂𝖾𝗐𝒜ΠxsubscriptsuperscriptsΠ𝒜x\{\mathsf{Sim}(\textbf{P}_{\mathcal{A}},\textbf{x}_{\mathcal{A}},\textbf{s}_{% \mathcal{A}}),\textbf{s}_{\mathcal{A}}\}_{\textbf{x}}\overset{c}{\approx}\{% \mathsf{View}_{\mathcal{A}}^{\Pi}(\textbf{x}),\textbf{s}^{\Pi}_{\mathcal{A}}\}% _{\textbf{x}}.{ sansserif_Sim ( P start_POSTSUBSCRIPT caligraphic_A end_POSTSUBSCRIPT , x start_POSTSUBSCRIPT caligraphic_A end_POSTSUBSCRIPT , s start_POSTSUBSCRIPT caligraphic_A end_POSTSUBSCRIPT ) , s start_POSTSUBSCRIPT caligraphic_A end_POSTSUBSCRIPT } start_POSTSUBSCRIPT x end_POSTSUBSCRIPT overitalic_c start_ARG ≈ end_ARG { sansserif_View start_POSTSUBSCRIPT caligraphic_A end_POSTSUBSCRIPT start_POSTSUPERSCRIPT roman_Π end_POSTSUPERSCRIPT ( x ) , s start_POSTSUPERSCRIPT roman_Π end_POSTSUPERSCRIPT start_POSTSUBSCRIPT caligraphic_A end_POSTSUBSCRIPT } start_POSTSUBSCRIPT x end_POSTSUBSCRIPT .

      By the correctness, we also have

      {s}x𝑐{sΠ}x.subscriptsubscriptsx𝑐subscriptsubscriptsuperscriptsΠx\{\textbf{s}_{\mathcal{H}}\}_{\textbf{x}}\overset{c}{\approx}\{\textbf{s}^{\Pi% }_{\mathcal{H}}\}_{\textbf{x}}.{ s start_POSTSUBSCRIPT caligraphic_H end_POSTSUBSCRIPT } start_POSTSUBSCRIPT x end_POSTSUBSCRIPT overitalic_c start_ARG ≈ end_ARG { s start_POSTSUPERSCRIPT roman_Π end_POSTSUPERSCRIPT start_POSTSUBSCRIPT caligraphic_H end_POSTSUBSCRIPT } start_POSTSUBSCRIPT x end_POSTSUBSCRIPT .

      From the inductive hypothesis, ssubscripts\textbf{s}_{\mathcal{H}}s start_POSTSUBSCRIPT caligraphic_H end_POSTSUBSCRIPT is independent of the joint distribution {𝖵𝗂𝖾𝗐𝒜Π(x),s𝒜Π}superscriptsubscript𝖵𝗂𝖾𝗐𝒜ΠxsubscriptsuperscriptsΠ𝒜\{\mathsf{View}_{\mathcal{A}}^{\Pi}(\textbf{x}),\textbf{s}^{\Pi}_{\mathcal{A}}\}{ sansserif_View start_POSTSUBSCRIPT caligraphic_A end_POSTSUBSCRIPT start_POSTSUPERSCRIPT roman_Π end_POSTSUPERSCRIPT ( x ) , s start_POSTSUPERSCRIPT roman_Π end_POSTSUPERSCRIPT start_POSTSUBSCRIPT caligraphic_A end_POSTSUBSCRIPT }, given that it is a subdistribution of {{𝖵𝗂𝖾𝗐1Π(x),,𝖵𝗂𝖾𝗐mΠ(x)}𝖵𝗂𝖾𝗐Π(x),{s1Π,,smΠ}sΠ}superscriptsubscript𝖵𝗂𝖾𝗐1Πxsuperscriptsubscript𝖵𝗂𝖾𝗐𝑚Πxsuperscriptsubscript𝖵𝗂𝖾𝗐Πxsubscriptsuperscript𝑠Π1subscriptsuperscript𝑠Π𝑚subscriptsuperscriptsΠ\{\{\mathsf{View}_{1}^{\Pi}(\textbf{x}),\cdots,\mathsf{View}_{m}^{\Pi}(\textbf% {x})\}\setminus\mathsf{View}_{\mathcal{H}}^{\Pi}(\textbf{x}),\{s^{\Pi}_{1},% \cdots,s^{\Pi}_{m}\}\setminus\textbf{s}^{\Pi}_{\mathcal{H}}\}{ { sansserif_View start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT roman_Π end_POSTSUPERSCRIPT ( x ) , ⋯ , sansserif_View start_POSTSUBSCRIPT italic_m end_POSTSUBSCRIPT start_POSTSUPERSCRIPT roman_Π end_POSTSUPERSCRIPT ( x ) } ∖ sansserif_View start_POSTSUBSCRIPT caligraphic_H end_POSTSUBSCRIPT start_POSTSUPERSCRIPT roman_Π end_POSTSUPERSCRIPT ( x ) , { italic_s start_POSTSUPERSCRIPT roman_Π end_POSTSUPERSCRIPT start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , ⋯ , italic_s start_POSTSUPERSCRIPT roman_Π end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_m end_POSTSUBSCRIPT } ∖ s start_POSTSUPERSCRIPT roman_Π end_POSTSUPERSCRIPT start_POSTSUBSCRIPT caligraphic_H end_POSTSUBSCRIPT }. It is easy to see that ssubscripts\textbf{s}_{\mathcal{H}}s start_POSTSUBSCRIPT caligraphic_H end_POSTSUBSCRIPT is independent of the joint distribution {𝖲𝗂𝗆(P𝒜,x𝒜,s𝒜),s𝒜}xsubscript𝖲𝗂𝗆subscriptP𝒜subscriptx𝒜subscripts𝒜subscripts𝒜x\{\mathsf{Sim}(\textbf{P}_{\mathcal{A}},\textbf{x}_{\mathcal{A}},\textbf{s}_{% \mathcal{A}}),\textbf{s}_{\mathcal{A}}\}_{\textbf{x}}{ sansserif_Sim ( P start_POSTSUBSCRIPT caligraphic_A end_POSTSUBSCRIPT , x start_POSTSUBSCRIPT caligraphic_A end_POSTSUBSCRIPT , s start_POSTSUBSCRIPT caligraphic_A end_POSTSUBSCRIPT ) , s start_POSTSUBSCRIPT caligraphic_A end_POSTSUBSCRIPT } start_POSTSUBSCRIPT x end_POSTSUBSCRIPT. Combining the above,

      {𝖲𝗂𝗆(P𝒜,x𝒜,s𝒜),s𝒜,s}x𝑐{𝖵𝗂𝖾𝗐𝒜Π(x),s𝒜Π,sΠ}x.subscript𝖲𝗂𝗆subscriptP𝒜subscriptx𝒜subscripts𝒜subscripts𝒜subscriptsx𝑐subscriptsuperscriptsubscript𝖵𝗂𝖾𝗐𝒜ΠxsubscriptsuperscriptsΠ𝒜subscriptsuperscriptsΠx\{\mathsf{Sim}(\textbf{P}_{\mathcal{A}},\textbf{x}_{\mathcal{A}},\textbf{s}_{% \mathcal{A}}),\textbf{s}_{\mathcal{A}},\textbf{s}_{\mathcal{H}}\}_{\textbf{x}}% \overset{c}{\approx}\{\mathsf{View}_{\mathcal{A}}^{\Pi}(\textbf{x}),\textbf{s}% ^{\Pi}_{\mathcal{A}},\textbf{s}^{\Pi}_{\mathcal{H}}\}_{\textbf{x}}.{ sansserif_Sim ( P start_POSTSUBSCRIPT caligraphic_A end_POSTSUBSCRIPT , x start_POSTSUBSCRIPT caligraphic_A end_POSTSUBSCRIPT , s start_POSTSUBSCRIPT caligraphic_A end_POSTSUBSCRIPT ) , s start_POSTSUBSCRIPT caligraphic_A end_POSTSUBSCRIPT , s start_POSTSUBSCRIPT caligraphic_H end_POSTSUBSCRIPT } start_POSTSUBSCRIPT x end_POSTSUBSCRIPT overitalic_c start_ARG ≈ end_ARG { sansserif_View start_POSTSUBSCRIPT caligraphic_A end_POSTSUBSCRIPT start_POSTSUPERSCRIPT roman_Π end_POSTSUPERSCRIPT ( x ) , s start_POSTSUPERSCRIPT roman_Π end_POSTSUPERSCRIPT start_POSTSUBSCRIPT caligraphic_A end_POSTSUBSCRIPT , s start_POSTSUPERSCRIPT roman_Π end_POSTSUPERSCRIPT start_POSTSUBSCRIPT caligraphic_H end_POSTSUBSCRIPT } start_POSTSUBSCRIPT x end_POSTSUBSCRIPT .

      Recall that in the base case we derived that rΠsuperscriptrΠ\textbf{r}^{\Pi}r start_POSTSUPERSCRIPT roman_Π end_POSTSUPERSCRIPT is independent of the joint view of any m1𝑚1m-1italic_m - 1 parties in the real execution, thereby, rΠsuperscriptrΠ\textbf{r}^{\Pi}r start_POSTSUPERSCRIPT roman_Π end_POSTSUPERSCRIPT is independent of {𝖵𝗂𝖾𝗐𝒜Π(x),𝖵𝗂𝖾𝗐Π(x)}superscriptsubscript𝖵𝗂𝖾𝗐𝒜Πxsuperscriptsubscript𝖵𝗂𝖾𝗐Πx\{\mathsf{View}_{\mathcal{A}}^{\Pi}(\textbf{x}),\mathsf{View}_{\mathcal{H}}^{% \Pi}(\textbf{x})\}{ sansserif_View start_POSTSUBSCRIPT caligraphic_A end_POSTSUBSCRIPT start_POSTSUPERSCRIPT roman_Π end_POSTSUPERSCRIPT ( x ) , sansserif_View start_POSTSUBSCRIPT caligraphic_H end_POSTSUBSCRIPT start_POSTSUPERSCRIPT roman_Π end_POSTSUPERSCRIPT ( x ) }. As s𝒜ΠsubscriptsuperscriptsΠ𝒜\textbf{s}^{\Pi}_{\mathcal{A}}s start_POSTSUPERSCRIPT roman_Π end_POSTSUPERSCRIPT start_POSTSUBSCRIPT caligraphic_A end_POSTSUBSCRIPT and sΠsubscriptsuperscriptsΠ\textbf{s}^{\Pi}_{\mathcal{H}}s start_POSTSUPERSCRIPT roman_Π end_POSTSUPERSCRIPT start_POSTSUBSCRIPT caligraphic_H end_POSTSUBSCRIPT can be determined by 𝖵𝗂𝖾𝗐𝒜Π(x)superscriptsubscript𝖵𝗂𝖾𝗐𝒜Πx\mathsf{View}_{\mathcal{A}}^{\Pi}(\textbf{x})sansserif_View start_POSTSUBSCRIPT caligraphic_A end_POSTSUBSCRIPT start_POSTSUPERSCRIPT roman_Π end_POSTSUPERSCRIPT ( x ) and 𝖵𝗂𝖾𝗐Π(x)superscriptsubscript𝖵𝗂𝖾𝗐Πx\mathsf{View}_{\mathcal{H}}^{\Pi}(\textbf{x})sansserif_View start_POSTSUBSCRIPT caligraphic_H end_POSTSUBSCRIPT start_POSTSUPERSCRIPT roman_Π end_POSTSUPERSCRIPT ( x ) respectively, rΠsuperscriptrΠ\textbf{r}^{\Pi}r start_POSTSUPERSCRIPT roman_Π end_POSTSUPERSCRIPT is independent of {𝖵𝗂𝖾𝗐𝒜Π(x),s𝒜Π,sΠ}superscriptsubscript𝖵𝗂𝖾𝗐𝒜ΠxsubscriptsuperscriptsΠ𝒜subscriptsuperscriptsΠ\{\mathsf{View}_{\mathcal{A}}^{\Pi}(\textbf{x}),\textbf{s}^{\Pi}_{\mathcal{A}}% ,\textbf{s}^{\Pi}_{\mathcal{H}}\}{ sansserif_View start_POSTSUBSCRIPT caligraphic_A end_POSTSUBSCRIPT start_POSTSUPERSCRIPT roman_Π end_POSTSUPERSCRIPT ( x ) , s start_POSTSUPERSCRIPT roman_Π end_POSTSUPERSCRIPT start_POSTSUBSCRIPT caligraphic_A end_POSTSUBSCRIPT , s start_POSTSUPERSCRIPT roman_Π end_POSTSUPERSCRIPT start_POSTSUBSCRIPT caligraphic_H end_POSTSUBSCRIPT }. Furthermore, in the ideal execution, r is independent of {𝖲𝗂𝗆(P𝒜,x𝒜,s𝒜),s𝒜,s}𝖲𝗂𝗆subscriptP𝒜subscriptx𝒜subscripts𝒜subscripts𝒜subscripts\{\mathsf{Sim}(\textbf{P}_{\mathcal{A}},\textbf{x}_{\mathcal{A}},\textbf{s}_{% \mathcal{A}}),\textbf{s}_{\mathcal{A}},\textbf{s}_{\mathcal{H}}\}{ sansserif_Sim ( P start_POSTSUBSCRIPT caligraphic_A end_POSTSUBSCRIPT , x start_POSTSUBSCRIPT caligraphic_A end_POSTSUBSCRIPT , s start_POSTSUBSCRIPT caligraphic_A end_POSTSUBSCRIPT ) , s start_POSTSUBSCRIPT caligraphic_A end_POSTSUBSCRIPT , s start_POSTSUBSCRIPT caligraphic_H end_POSTSUBSCRIPT }, which can extend the previous indistinguishability into

      {𝖲𝗂𝗆(P𝒜,x𝒜,s𝒜),s𝒜,s,r}x𝑐{𝖵𝗂𝖾𝗐𝒜Π(x),s𝒜Π,sΠ,rΠ}x.subscript𝖲𝗂𝗆subscriptP𝒜subscriptx𝒜subscripts𝒜subscripts𝒜subscriptsrx𝑐subscriptsuperscriptsubscript𝖵𝗂𝖾𝗐𝒜ΠxsubscriptsuperscriptsΠ𝒜subscriptsuperscriptsΠsuperscriptrΠx\{\mathsf{Sim}(\textbf{P}_{\mathcal{A}},\textbf{x}_{\mathcal{A}},\textbf{s}_{% \mathcal{A}}),\textbf{s}_{\mathcal{A}},\textbf{s}_{\mathcal{H}},\textbf{r}\}_{% \textbf{x}}\overset{c}{\approx}\{\mathsf{View}_{\mathcal{A}}^{\Pi}(\textbf{x})% ,\textbf{s}^{\Pi}_{\mathcal{A}},\textbf{s}^{\Pi}_{\mathcal{H}},\textbf{r}^{\Pi% }\}_{\textbf{x}}.{ sansserif_Sim ( P start_POSTSUBSCRIPT caligraphic_A end_POSTSUBSCRIPT , x start_POSTSUBSCRIPT caligraphic_A end_POSTSUBSCRIPT , s start_POSTSUBSCRIPT caligraphic_A end_POSTSUBSCRIPT ) , s start_POSTSUBSCRIPT caligraphic_A end_POSTSUBSCRIPT , s start_POSTSUBSCRIPT caligraphic_H end_POSTSUBSCRIPT , r } start_POSTSUBSCRIPT x end_POSTSUBSCRIPT overitalic_c start_ARG ≈ end_ARG { sansserif_View start_POSTSUBSCRIPT caligraphic_A end_POSTSUBSCRIPT start_POSTSUPERSCRIPT roman_Π end_POSTSUPERSCRIPT ( x ) , s start_POSTSUPERSCRIPT roman_Π end_POSTSUPERSCRIPT start_POSTSUBSCRIPT caligraphic_A end_POSTSUBSCRIPT , s start_POSTSUPERSCRIPT roman_Π end_POSTSUPERSCRIPT start_POSTSUBSCRIPT caligraphic_H end_POSTSUBSCRIPT , r start_POSTSUPERSCRIPT roman_Π end_POSTSUPERSCRIPT } start_POSTSUBSCRIPT x end_POSTSUBSCRIPT .

      By the functionality, the output of Phsubscript𝑃P_{h}italic_P start_POSTSUBSCRIPT italic_h end_POSTSUBSCRIPT satisfies sh=(sis𝒜si+sissi)+f(x)subscript𝑠subscriptsubscript𝑠𝑖subscripts𝒜subscript𝑠𝑖subscriptsubscript𝑠𝑖subscriptssubscript𝑠𝑖𝑓xs_{h}=-(\sum_{s_{i}\in\textbf{s}_{\mathcal{A}}}s_{i}+\sum_{s_{i}\in\textbf{s}_% {\mathcal{H}}}s_{i})+f(\textbf{x})italic_s start_POSTSUBSCRIPT italic_h end_POSTSUBSCRIPT = - ( ∑ start_POSTSUBSCRIPT italic_s start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT ∈ s start_POSTSUBSCRIPT caligraphic_A end_POSTSUBSCRIPT end_POSTSUBSCRIPT italic_s start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT + ∑ start_POSTSUBSCRIPT italic_s start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT ∈ s start_POSTSUBSCRIPT caligraphic_H end_POSTSUBSCRIPT end_POSTSUBSCRIPT italic_s start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT ) + italic_f ( x ). By the correctness, shΠ=(siΠs𝒜ΠsiΠ+siΠsΠsiΠ)+f(x)subscriptsuperscript𝑠Πsubscriptsubscriptsuperscript𝑠Π𝑖subscriptsuperscriptsΠ𝒜subscriptsuperscript𝑠Π𝑖subscriptsubscriptsuperscript𝑠Π𝑖subscriptsuperscriptsΠsubscriptsuperscript𝑠Π𝑖𝑓xs^{\Pi}_{h}=-(\sum_{s^{\Pi}_{i}\in\textbf{s}^{\Pi}_{\mathcal{A}}}s^{\Pi}_{i}+% \sum_{s^{\Pi}_{i}\in\textbf{s}^{\Pi}_{\mathcal{H}}}s^{\Pi}_{i})+f(\textbf{x})italic_s start_POSTSUPERSCRIPT roman_Π end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_h end_POSTSUBSCRIPT = - ( ∑ start_POSTSUBSCRIPT italic_s start_POSTSUPERSCRIPT roman_Π end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT ∈ s start_POSTSUPERSCRIPT roman_Π end_POSTSUPERSCRIPT start_POSTSUBSCRIPT caligraphic_A end_POSTSUBSCRIPT end_POSTSUBSCRIPT italic_s start_POSTSUPERSCRIPT roman_Π end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT + ∑ start_POSTSUBSCRIPT italic_s start_POSTSUPERSCRIPT roman_Π end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT ∈ s start_POSTSUPERSCRIPT roman_Π end_POSTSUPERSCRIPT start_POSTSUBSCRIPT caligraphic_H end_POSTSUBSCRIPT end_POSTSUBSCRIPT italic_s start_POSTSUPERSCRIPT roman_Π end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT ) + italic_f ( x ). Thus, we extend the previous distributions by including shsubscript𝑠s_{h}italic_s start_POSTSUBSCRIPT italic_h end_POSTSUBSCRIPT and shΠsubscriptsuperscript𝑠Πs^{\Pi}_{h}italic_s start_POSTSUPERSCRIPT roman_Π end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_h end_POSTSUBSCRIPT respectively and obtain

      {𝖲𝗂𝗆(P𝒜,x𝒜,s𝒜),s𝒜,s,sh,r}x𝑐{𝖵𝗂𝖾𝗐𝒜Π(x),s𝒜Π,sΠ,shΠ,rΠ}xsubscript𝖲𝗂𝗆subscriptP𝒜subscriptx𝒜subscripts𝒜subscripts𝒜subscriptssubscript𝑠rx𝑐subscriptsuperscriptsubscript𝖵𝗂𝖾𝗐𝒜ΠxsubscriptsuperscriptsΠ𝒜subscriptsuperscriptsΠsubscriptsuperscript𝑠ΠsuperscriptrΠx\{\mathsf{Sim}(\textbf{P}_{\mathcal{A}},\textbf{x}_{\mathcal{A}},\textbf{s}_{% \mathcal{A}}),\textbf{s}_{\mathcal{A}},\textbf{s}_{\mathcal{H}},s_{h},\textbf{% r}\}_{\textbf{x}}\overset{c}{\approx}\{\mathsf{View}_{\mathcal{A}}^{\Pi}(% \textbf{x}),\textbf{s}^{\Pi}_{\mathcal{A}},\textbf{s}^{\Pi}_{\mathcal{H}},s^{% \Pi}_{h},\textbf{r}^{\Pi}\}_{\textbf{x}}{ sansserif_Sim ( P start_POSTSUBSCRIPT caligraphic_A end_POSTSUBSCRIPT , x start_POSTSUBSCRIPT caligraphic_A end_POSTSUBSCRIPT , s start_POSTSUBSCRIPT caligraphic_A end_POSTSUBSCRIPT ) , s start_POSTSUBSCRIPT caligraphic_A end_POSTSUBSCRIPT , s start_POSTSUBSCRIPT caligraphic_H end_POSTSUBSCRIPT , italic_s start_POSTSUBSCRIPT italic_h end_POSTSUBSCRIPT , r } start_POSTSUBSCRIPT x end_POSTSUBSCRIPT overitalic_c start_ARG ≈ end_ARG { sansserif_View start_POSTSUBSCRIPT caligraphic_A end_POSTSUBSCRIPT start_POSTSUPERSCRIPT roman_Π end_POSTSUPERSCRIPT ( x ) , s start_POSTSUPERSCRIPT roman_Π end_POSTSUPERSCRIPT start_POSTSUBSCRIPT caligraphic_A end_POSTSUBSCRIPT , s start_POSTSUPERSCRIPT roman_Π end_POSTSUPERSCRIPT start_POSTSUBSCRIPT caligraphic_H end_POSTSUBSCRIPT , italic_s start_POSTSUPERSCRIPT roman_Π end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_h end_POSTSUBSCRIPT , r start_POSTSUPERSCRIPT roman_Π end_POSTSUPERSCRIPT } start_POSTSUBSCRIPT x end_POSTSUBSCRIPT

      The indistinguishability holds because shsubscript𝑠s_{h}italic_s start_POSTSUBSCRIPT italic_h end_POSTSUBSCRIPT (resp. shΠsubscriptsuperscript𝑠Πs^{\Pi}_{h}italic_s start_POSTSUPERSCRIPT roman_Π end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_h end_POSTSUBSCRIPT) is uniquely determined by s𝒜subscripts𝒜\textbf{s}_{\mathcal{A}}s start_POSTSUBSCRIPT caligraphic_A end_POSTSUBSCRIPT and ssubscripts\textbf{s}_{\mathcal{H}}s start_POSTSUBSCRIPT caligraphic_H end_POSTSUBSCRIPT (resp. s𝒜ΠsubscriptsuperscriptsΠ𝒜\textbf{s}^{\Pi}_{\mathcal{A}}s start_POSTSUPERSCRIPT roman_Π end_POSTSUPERSCRIPT start_POSTSUBSCRIPT caligraphic_A end_POSTSUBSCRIPT and sΠsubscriptsuperscriptsΠ\textbf{s}^{\Pi}_{\mathcal{H}}s start_POSTSUPERSCRIPT roman_Π end_POSTSUPERSCRIPT start_POSTSUBSCRIPT caligraphic_H end_POSTSUBSCRIPT), the randomness r (resp. rΠsuperscriptrΠ\textbf{r}^{\Pi}r start_POSTSUPERSCRIPT roman_Π end_POSTSUPERSCRIPT), and the parties’ inputs x. This implies

      {𝖲𝗂𝗆(P𝒜,x𝒜,s𝒜),s𝒜,sh}x𝑐{𝖵𝗂𝖾𝗐𝒜Π(x),s𝒜Π,shΠ}x.subscript𝖲𝗂𝗆subscriptP𝒜subscriptx𝒜subscripts𝒜subscripts𝒜subscript𝑠x𝑐subscriptsuperscriptsubscript𝖵𝗂𝖾𝗐𝒜ΠxsubscriptsuperscriptsΠ𝒜subscriptsuperscript𝑠Πx\displaystyle\{\mathsf{Sim}(\textbf{P}_{\mathcal{A}},\textbf{x}_{\mathcal{A}},% \textbf{s}_{\mathcal{A}}),\textbf{s}_{\mathcal{A}},s_{h}\}_{\textbf{x}}% \overset{c}{\approx}\{\mathsf{View}_{\mathcal{A}}^{\Pi}(\textbf{x}),\textbf{s}% ^{\Pi}_{\mathcal{A}},s^{\Pi}_{h}\}_{\textbf{x}}.{ sansserif_Sim ( P start_POSTSUBSCRIPT caligraphic_A end_POSTSUBSCRIPT , x start_POSTSUBSCRIPT caligraphic_A end_POSTSUBSCRIPT , s start_POSTSUBSCRIPT caligraphic_A end_POSTSUBSCRIPT ) , s start_POSTSUBSCRIPT caligraphic_A end_POSTSUBSCRIPT , italic_s start_POSTSUBSCRIPT italic_h end_POSTSUBSCRIPT } start_POSTSUBSCRIPT x end_POSTSUBSCRIPT overitalic_c start_ARG ≈ end_ARG { sansserif_View start_POSTSUBSCRIPT caligraphic_A end_POSTSUBSCRIPT start_POSTSUPERSCRIPT roman_Π end_POSTSUPERSCRIPT ( x ) , s start_POSTSUPERSCRIPT roman_Π end_POSTSUPERSCRIPT start_POSTSUBSCRIPT caligraphic_A end_POSTSUBSCRIPT , italic_s start_POSTSUPERSCRIPT roman_Π end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_h end_POSTSUBSCRIPT } start_POSTSUBSCRIPT x end_POSTSUBSCRIPT .

      Namely, ΠΠ\Piroman_Π securely computes f𝑓fitalic_f in the presence of 𝒜𝒜\mathcal{A}caligraphic_A corrupting t=mk1𝑡𝑚𝑘1t=m-k-1italic_t = italic_m - italic_k - 1 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 ([a],[b],[c])delimited-[]𝑎delimited-[]𝑏delimited-[]𝑐([a],[b],[c])( [ italic_a ] , [ italic_b ] , [ italic_c ] ), where [a],[b]delimited-[]𝑎delimited-[]𝑏[a],[b][ italic_a ] , [ italic_b ] are random secret-sharings and c=ab𝑐𝑎𝑏c=a\cdot bitalic_c = italic_a ⋅ italic_b. Typically, a Beaver triple is used to reduce one multiplication to two reconstructions in the online phase, while here since the multiplier b𝑏bitalic_b is random, a Beaver triple can be used to reduce one multiplication to one reconstruction in the online phase. Concretely,

    s=rb=(r+aa)b=(r+a)b+ab𝑠𝑟𝑏𝑟𝑎𝑎𝑏𝑟𝑎𝑏𝑎𝑏\displaystyle s=r\cdot b=(r+a-a)\cdot b=(r+a)\cdot b+a\cdot bitalic_s = italic_r ⋅ italic_b = ( italic_r + italic_a - italic_a ) ⋅ italic_b = ( italic_r + italic_a ) ⋅ italic_b + italic_a ⋅ italic_b

    hence we can compute

    [s]=(r+a)[b]+[ab]=(r+a)[b]+[c]delimited-[]𝑠𝑟𝑎delimited-[]𝑏delimited-[]𝑎𝑏𝑟𝑎delimited-[]𝑏delimited-[]𝑐\displaystyle[s]=(r+a)\cdot[b]+[a\cdot b]=(r+a)\cdot[b]+[c][ italic_s ] = ( italic_r + italic_a ) ⋅ [ italic_b ] + [ italic_a ⋅ italic_b ] = ( italic_r + italic_a ) ⋅ [ italic_b ] + [ italic_c ]

    The above equation suggests that we can locally compute [s]delimited-[]𝑠[s][ italic_s ] once u=r+a𝑢𝑟𝑎u=r+aitalic_u = italic_r + italic_a is publicly known. Therefore, the task of generating [s]delimited-[]𝑠[s][ italic_s ] boils down to reconstructing [u]=[r]+[a]delimited-[]𝑢delimited-[]𝑟delimited-[]𝑎[u]=[r]+[a][ italic_u ] = [ italic_r ] + [ italic_a ]. Let each party Pisubscript𝑃𝑖P_{i}italic_P start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT locally compute ui=ri+aisubscript𝑢𝑖subscript𝑟𝑖subscript𝑎𝑖u_{i}=r_{i}+a_{i}italic_u start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT = italic_r start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT + italic_a start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT and send uisubscript𝑢𝑖u_{i}italic_u start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT to the leader P1subscript𝑃1P_{1}italic_P start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT, then P1subscript𝑃1P_{1}italic_P start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT computes u=u1++um𝑢subscript𝑢1subscript𝑢𝑚u=u_{1}+\cdots+u_{m}italic_u = italic_u start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT + ⋯ + italic_u start_POSTSUBSCRIPT italic_m end_POSTSUBSCRIPT 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 2(m1)log2log2|𝔽|2𝑚1subscript2subscript2𝔽2(m-1)\log_{2}\log_{2}\lvert\mathbb{F}\rvert2 ( italic_m - 1 ) roman_log start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT roman_log start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT | blackboard_F | communication overhead for the leader and 2log2log2|𝔽|2subscript2subscript2𝔽2\log_{2}\log_{2}\lvert\mathbb{F}\rvert2 roman_log start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT roman_log start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT | blackboard_F | 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 Q𝑄Qitalic_Q is a conjunction of m1𝑚1m-1italic_m - 1 set membership predicates (i.e., j{1,,m}{𝗉𝗂𝗏𝗈𝗍}xXjsubscript𝑗1𝑚𝗉𝗂𝗏𝗈𝗍𝑥subscript𝑋𝑗\bigwedge_{j\in\{1,\cdots,m\}\setminus\{\mathsf{pivot}\}}x\in X_{j}⋀ start_POSTSUBSCRIPT italic_j ∈ { 1 , ⋯ , italic_m } ∖ { sansserif_pivot } end_POSTSUBSCRIPT italic_x ∈ italic_X start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT). The ideal functionality 𝖻𝗉𝖬𝖹𝖲subscript𝖻𝗉𝖬𝖹𝖲\mathcal{F}_{\mathsf{bpMZS}}caligraphic_F start_POSTSUBSCRIPT sansserif_bpMZS end_POSTSUBSCRIPT is formally described in Figure 17. The complete protocol is given in Figure 18.

    • Parameters: m𝑚mitalic_m parties P1,Pmsubscript𝑃1subscript𝑃𝑚P_{1},\cdots P_{m}italic_P start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , ⋯ italic_P start_POSTSUBSCRIPT italic_m end_POSTSUBSCRIPT, where P𝗉𝗂𝗏𝗈𝗍subscript𝑃𝗉𝗂𝗏𝗈𝗍P_{\mathsf{pivot}}italic_P start_POSTSUBSCRIPT sansserif_pivot end_POSTSUBSCRIPT is the only party holding n𝑛nitalic_n single elements as inputs instead of n𝑛nitalic_n sets. Batch size n𝑛nitalic_n. A field 𝔽𝔽\mathbb{F}blackboard_F.

    • Functionality: On input x=(x1,,xn)xsubscript𝑥1subscript𝑥𝑛\textbf{x}=(x_{1},\cdots,x_{n})x = ( italic_x start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , ⋯ , italic_x start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT ) from P𝗉𝗂𝗏𝗈𝗍subscript𝑃𝗉𝗂𝗏𝗈𝗍P_{\mathsf{pivot}}italic_P start_POSTSUBSCRIPT sansserif_pivot end_POSTSUBSCRIPT and Xj=(Xj,1,,Xj,n)subscriptX𝑗subscript𝑋𝑗1subscript𝑋𝑗𝑛\textbf{X}_{j}=(X_{j,1},\cdots,X_{j,n})X start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT = ( italic_X start_POSTSUBSCRIPT italic_j , 1 end_POSTSUBSCRIPT , ⋯ , italic_X start_POSTSUBSCRIPT italic_j , italic_n end_POSTSUBSCRIPT ) from each Pjsubscript𝑃𝑗P_{j}italic_P start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT (j{1,m}{𝗉𝗂𝗏𝗈𝗍}𝑗1𝑚𝗉𝗂𝗏𝗈𝗍j\in\{1,\cdots m\}\setminus\{\mathsf{pivot}\}italic_j ∈ { 1 , ⋯ italic_m } ∖ { sansserif_pivot }), sample si=(si,1,,si,n)𝔽nsubscripts𝑖subscript𝑠𝑖1subscript𝑠𝑖𝑛superscript𝔽𝑛\textbf{s}_{i}=(s_{i,1},\cdots,s_{i,n})\leftarrow\mathbb{F}^{n}s start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT = ( italic_s start_POSTSUBSCRIPT italic_i , 1 end_POSTSUBSCRIPT , ⋯ , italic_s start_POSTSUBSCRIPT italic_i , italic_n end_POSTSUBSCRIPT ) ← blackboard_F start_POSTSUPERSCRIPT italic_n end_POSTSUPERSCRIPT for 1im1𝑖𝑚1\leq i\leq m1 ≤ italic_i ≤ italic_m, s.t. for 1dn1𝑑𝑛1\leq d\leq n1 ≤ italic_d ≤ italic_n, if j{1,,m}{𝗉𝗂𝗏𝗈𝗍}(xdXj,d)=1subscript𝑗1𝑚𝗉𝗂𝗏𝗈𝗍subscript𝑥𝑑subscript𝑋𝑗𝑑1\bigwedge_{j\in\{1,\cdots,m\}\setminus\{\mathsf{pivot}\}}(x_{d}\in X_{j,d})=1⋀ start_POSTSUBSCRIPT italic_j ∈ { 1 , ⋯ , italic_m } ∖ { sansserif_pivot } end_POSTSUBSCRIPT ( italic_x start_POSTSUBSCRIPT italic_d end_POSTSUBSCRIPT ∈ italic_X start_POSTSUBSCRIPT italic_j , italic_d end_POSTSUBSCRIPT ) = 1, 1imsi,d=0subscript1𝑖𝑚subscript𝑠𝑖𝑑0\sum_{1\leq i\leq m}s_{i,d}=0∑ start_POSTSUBSCRIPT 1 ≤ italic_i ≤ italic_m end_POSTSUBSCRIPT italic_s start_POSTSUBSCRIPT italic_i , italic_d end_POSTSUBSCRIPT = 0. Give sisubscripts𝑖\textbf{s}_{i}s start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT to Pisubscript𝑃𝑖P_{i}italic_P start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT.

    Figure 17: Batch Pure Membership Zero-Sharing Functionality 𝖻𝗉𝖬𝖹𝖲subscript𝖻𝗉𝖬𝖹𝖲\mathcal{F}_{\mathsf{bpMZS}}caligraphic_F start_POSTSUBSCRIPT sansserif_bpMZS end_POSTSUBSCRIPT
    • Parameters: m𝑚mitalic_m parties P1,Pmsubscript𝑃1subscript𝑃𝑚P_{1},\cdots P_{m}italic_P start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , ⋯ italic_P start_POSTSUBSCRIPT italic_m end_POSTSUBSCRIPT. Batch size n𝑛nitalic_n. A field 𝔽𝔽\mathbb{F}blackboard_F. n𝑛nitalic_n Beaver triples ([a],[b],[c])delimited-[]adelimited-[]bdelimited-[]c([\textbf{a}],[\textbf{b}],[\textbf{c}])( [ a ] , [ b ] , [ c ] ) generated in the offline phrase, where [a]=([a1],,[an])delimited-[]adelimited-[]subscript𝑎1delimited-[]subscript𝑎𝑛[\textbf{a}]=([a_{1}],\cdots,[a_{n}])[ a ] = ( [ italic_a start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ] , ⋯ , [ italic_a start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT ] ), [b]=([b1],,[bn])delimited-[]bdelimited-[]subscript𝑏1delimited-[]subscript𝑏𝑛[\textbf{b}]=([b_{1}],\cdots,[b_{n}])[ b ] = ( [ italic_b start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ] , ⋯ , [ italic_b start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT ] ), [c]=([c1],,[cn])delimited-[]cdelimited-[]subscript𝑐1delimited-[]subscript𝑐𝑛[\textbf{c}]=([c_{1}],\cdots,[c_{n}])[ c ] = ( [ italic_c start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ] , ⋯ , [ italic_c start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT ] ) and ci=aibisubscript𝑐𝑖subscript𝑎𝑖subscript𝑏𝑖c_{i}=a_{i}\cdot b_{i}italic_c start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT = italic_a start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT ⋅ italic_b start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT for 1in1𝑖𝑛1\leq i\leq n1 ≤ italic_i ≤ italic_n.

    • Inputs: P𝗉𝗂𝗏𝗈𝗍subscript𝑃𝗉𝗂𝗏𝗈𝗍P_{\mathsf{pivot}}italic_P start_POSTSUBSCRIPT sansserif_pivot end_POSTSUBSCRIPT inputs a vector x=(x1,,xn)xsubscript𝑥1subscript𝑥𝑛\textbf{x}=(x_{1},\cdots,x_{n})x = ( italic_x start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , ⋯ , italic_x start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT ). Pjsubscript𝑃𝑗P_{j}italic_P start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT inputs Xj=(Xj,1,,Xj,n)subscriptX𝑗subscript𝑋𝑗1subscript𝑋𝑗𝑛\textbf{X}_{j}=(X_{j,1},\cdots,X_{j,n})X start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT = ( italic_X start_POSTSUBSCRIPT italic_j , 1 end_POSTSUBSCRIPT , ⋯ , italic_X start_POSTSUBSCRIPT italic_j , italic_n end_POSTSUBSCRIPT ) for j{1,m}{𝗉𝗂𝗏𝗈𝗍}𝑗1𝑚𝗉𝗂𝗏𝗈𝗍j\in\{1,\cdots m\}\setminus\{\mathsf{pivot}\}italic_j ∈ { 1 , ⋯ italic_m } ∖ { sansserif_pivot }.

    • Protocol:

      1. 1.

        For the i𝑖iitalic_i-th instance (1in1𝑖𝑛1\leq i\leq n1 ≤ italic_i ≤ italic_n), Pjsubscript𝑃𝑗P_{j}italic_P start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT samples rj,isubscript𝑟𝑗𝑖r_{j,i}italic_r start_POSTSUBSCRIPT italic_j , italic_i end_POSTSUBSCRIPT and sets Kj,i=Xj,isubscript𝐾𝑗𝑖subscript𝑋𝑗𝑖K_{j,i}=X_{j,i}italic_K start_POSTSUBSCRIPT italic_j , italic_i end_POSTSUBSCRIPT = italic_X start_POSTSUBSCRIPT italic_j , italic_i end_POSTSUBSCRIPT and Vj,i={rj,i,,rj,i}subscript𝑉𝑗𝑖subscript𝑟𝑗𝑖subscript𝑟𝑗𝑖V_{j,i}=\{-r_{j,i},\cdots,-r_{j,i}\}italic_V start_POSTSUBSCRIPT italic_j , italic_i end_POSTSUBSCRIPT = { - italic_r start_POSTSUBSCRIPT italic_j , italic_i end_POSTSUBSCRIPT , ⋯ , - italic_r start_POSTSUBSCRIPT italic_j , italic_i end_POSTSUBSCRIPT }, where |Kj,i|=|Vj,i|subscript𝐾𝑗𝑖subscript𝑉𝑗𝑖\lvert K_{j,i}\rvert=\lvert V_{j,i}\rvert| italic_K start_POSTSUBSCRIPT italic_j , italic_i end_POSTSUBSCRIPT | = | italic_V start_POSTSUBSCRIPT italic_j , italic_i end_POSTSUBSCRIPT |.

      2. 2.

        P𝗉𝗂𝗏𝗈𝗍subscript𝑃𝗉𝗂𝗏𝗈𝗍P_{\mathsf{pivot}}italic_P start_POSTSUBSCRIPT sansserif_pivot end_POSTSUBSCRIPT and Pjsubscript𝑃𝑗P_{j}italic_P start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT invoke 𝖻𝖮𝖯𝖯𝖱𝖥subscript𝖻𝖮𝖯𝖯𝖱𝖥\mathcal{F}_{\mathsf{bOPPRF}}caligraphic_F start_POSTSUBSCRIPT sansserif_bOPPRF end_POSTSUBSCRIPT where Pjsubscript𝑃𝑗P_{j}italic_P start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT acts as 𝒮𝒮\mathcal{S}caligraphic_S inputting (Kj,1,,Kj,n)subscript𝐾𝑗1subscript𝐾𝑗𝑛(K_{j,1},\cdots,K_{j,n})( italic_K start_POSTSUBSCRIPT italic_j , 1 end_POSTSUBSCRIPT , ⋯ , italic_K start_POSTSUBSCRIPT italic_j , italic_n end_POSTSUBSCRIPT ) and (Vj,1,,Vj,n)subscript𝑉𝑗1subscript𝑉𝑗𝑛(V_{j,1},\cdots,V_{j,n})( italic_V start_POSTSUBSCRIPT italic_j , 1 end_POSTSUBSCRIPT , ⋯ , italic_V start_POSTSUBSCRIPT italic_j , italic_n end_POSTSUBSCRIPT ), and P𝗉𝗂𝗏𝗈𝗍subscript𝑃𝗉𝗂𝗏𝗈𝗍P_{\mathsf{pivot}}italic_P start_POSTSUBSCRIPT sansserif_pivot end_POSTSUBSCRIPT acts as \mathcal{R}caligraphic_R with input x and receives ujsubscriptu𝑗\textbf{u}_{j}u start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT.

      3. 3.

        P𝗉𝗂𝗏𝗈𝗍subscript𝑃𝗉𝗂𝗏𝗈𝗍P_{\mathsf{pivot}}italic_P start_POSTSUBSCRIPT sansserif_pivot end_POSTSUBSCRIPT sets its shares r𝗉𝗂𝗏𝗈𝗍=j{1,m}{𝗉𝗂𝗏𝗈𝗍}ujsubscriptr𝗉𝗂𝗏𝗈𝗍subscript𝑗1𝑚𝗉𝗂𝗏𝗈𝗍subscriptu𝑗\textbf{r}_{\mathsf{pivot}}=\sum_{j\in\{1,\cdots m\}\setminus\{\mathsf{pivot}% \}}\textbf{u}_{j}r start_POSTSUBSCRIPT sansserif_pivot end_POSTSUBSCRIPT = ∑ start_POSTSUBSCRIPT italic_j ∈ { 1 , ⋯ italic_m } ∖ { sansserif_pivot } end_POSTSUBSCRIPT u start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT. Pjsubscript𝑃𝑗P_{j}italic_P start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT sets its shares rj=(rj,1,,rj,n)subscriptr𝑗subscript𝑟𝑗1subscript𝑟𝑗𝑛\textbf{r}_{j}=(r_{j,1},\cdots,r_{j,n})r start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT = ( italic_r start_POSTSUBSCRIPT italic_j , 1 end_POSTSUBSCRIPT , ⋯ , italic_r start_POSTSUBSCRIPT italic_j , italic_n end_POSTSUBSCRIPT ). All parties hold a vector of n𝑛nitalic_n secret-sharings [r]=([r1],,[rn])delimited-[]rdelimited-[]subscript𝑟1delimited-[]subscript𝑟𝑛[\textbf{r}]=([r_{1}],\cdots,[r_{n}])[ r ] = ( [ italic_r start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ] , ⋯ , [ italic_r start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT ] ).

      4. 4.

        All parties compute [s]delimited-[]s[\textbf{s}][ s ] by performing n𝑛nitalic_n secure multiplications [si]=[ri][bi]delimited-[]subscript𝑠𝑖delimited-[]subscript𝑟𝑖delimited-[]subscript𝑏𝑖[s_{i}]=[r_{i}]\cdot[b_{i}][ italic_s start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT ] = [ italic_r start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT ] ⋅ [ italic_b start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT ] (1in1𝑖𝑛1\leq i\leq n1 ≤ italic_i ≤ italic_n), using n𝑛nitalic_n Beaver triples ([a],[b],[c])delimited-[]adelimited-[]bdelimited-[]c([\textbf{a}],[\textbf{b}],[\textbf{c}])( [ a ] , [ b ] , [ c ] ).

    Figure 18: Batch Pure Membership Zero-Sharing Π𝖻𝗉𝖬𝖹𝖲subscriptΠ𝖻𝗉𝖬𝖹𝖲\Pi_{\mathsf{bpMZS}}roman_Π start_POSTSUBSCRIPT sansserif_bpMZS end_POSTSUBSCRIPT
    • Complexity Analysis. In the batch pure membership zero-sharing protocol (Figure 17), the costs of each stage are calculated as follows.

      • P𝗉𝗂𝗏𝗈𝗍subscript𝑃𝗉𝗂𝗏𝗈𝗍P_{\mathsf{pivot}}italic_P start_POSTSUBSCRIPT sansserif_pivot end_POSTSUBSCRIPT executes batch OPPRF of size n𝑛nitalic_n with each Pjsubscript𝑃𝑗P_{j}italic_P start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT for j{1,m}{𝗉𝗂𝗏𝗈𝗍}𝑗1𝑚𝗉𝗂𝗏𝗈𝗍j\in\{1,\cdots m\}\setminus\{\mathsf{pivot}\}italic_j ∈ { 1 , ⋯ italic_m } ∖ { sansserif_pivot }. Suppose that in the subsequent invocations of batch OPPRF, each |Xj,i|=Nj,i=O(1)subscript𝑋𝑗𝑖subscript𝑁𝑗𝑖𝑂1\lvert X_{j,i}\rvert=N_{j,i}=O(1)| italic_X start_POSTSUBSCRIPT italic_j , italic_i end_POSTSUBSCRIPT | = italic_N start_POSTSUBSCRIPT italic_j , italic_i end_POSTSUBSCRIPT = italic_O ( 1 ) for 1in,j{1,m}{𝗉𝗂𝗏𝗈𝗍}formulae-sequence1𝑖𝑛𝑗1𝑚𝗉𝗂𝗏𝗈𝗍1\leq i\leq n,j\in\{1,\cdots m\}\setminus\{\mathsf{pivot}\}1 ≤ italic_i ≤ italic_n , italic_j ∈ { 1 , ⋯ italic_m } ∖ { sansserif_pivot }, 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 n𝑛nitalic_n instances of OPPRF is equal to the total number of items 3n3𝑛3n3 italic_n. 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 n𝑛nitalic_n to scale linearly with n𝑛nitalic_n. Therefore, in this stage, the computation and communication complexity of P𝗉𝗂𝗏𝗈𝗍subscript𝑃𝗉𝗂𝗏𝗈𝗍P_{\mathsf{pivot}}italic_P start_POSTSUBSCRIPT sansserif_pivot end_POSTSUBSCRIPT are O(mn)𝑂𝑚𝑛O(mn)italic_O ( italic_m italic_n ), while the computation and communication complexity of each Pjsubscript𝑃𝑗P_{j}italic_P start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT are O(n)𝑂𝑛O(n)italic_O ( italic_n ).

      • The parties perform n𝑛nitalic_n secure multiplications using the optimization outlined in the previous section and designate P𝗉𝗂𝗏𝗈𝗍subscript𝑃𝗉𝗂𝗏𝗈𝗍P_{\mathsf{pivot}}italic_P start_POSTSUBSCRIPT sansserif_pivot end_POSTSUBSCRIPT as the leader. This requires n𝑛nitalic_n opening with O(mn)𝑂𝑚𝑛O(mn)italic_O ( italic_m italic_n ) computation/communication complexity for P𝗉𝗂𝗏𝗈𝗍subscript𝑃𝗉𝗂𝗏𝗈𝗍P_{\mathsf{pivot}}italic_P start_POSTSUBSCRIPT sansserif_pivot end_POSTSUBSCRIPT and O(n)𝑂𝑛O(n)italic_O ( italic_n ) computation/communication complexity for each Pjsubscript𝑃𝑗P_{j}italic_P start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT.

      To sum up, in the online phase of the batch pure membership zero-sharing protocol, the computation and communication complexity of P𝗉𝗂𝗏𝗈𝗍subscript𝑃𝗉𝗂𝗏𝗈𝗍P_{\mathsf{pivot}}italic_P start_POSTSUBSCRIPT sansserif_pivot end_POSTSUBSCRIPT are O(mn)𝑂𝑚𝑛O(mn)italic_O ( italic_m italic_n ), while the computation and communication complexity of each Pjsubscript𝑃𝑗P_{j}italic_P start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT are O(n)𝑂𝑛O(n)italic_O ( italic_n ).

    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 Q𝑄Qitalic_Q is a conjunction of m1𝑚1m-1italic_m - 1 set non-membership predicates (i.e., j{1,,m}{𝗉𝗂𝗏𝗈𝗍}xXjsubscript𝑗1𝑚𝗉𝗂𝗏𝗈𝗍𝑥subscript𝑋𝑗\bigwedge_{j\in\{1,\cdots,m\}\setminus\{\mathsf{pivot}\}}x\notin X_{j}⋀ start_POSTSUBSCRIPT italic_j ∈ { 1 , ⋯ , italic_m } ∖ { sansserif_pivot } end_POSTSUBSCRIPT italic_x ∉ italic_X start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT). The ideal functionality 𝖻𝗉𝖭𝖬𝖹𝖲subscript𝖻𝗉𝖭𝖬𝖹𝖲\mathcal{F}_{\mathsf{bpNMZS}}caligraphic_F start_POSTSUBSCRIPT sansserif_bpNMZS end_POSTSUBSCRIPT is formally described in Figure 19. The complete protocols is given in Figure 20.

    • Parameters: m𝑚mitalic_m parties P1,Pmsubscript𝑃1subscript𝑃𝑚P_{1},\cdots P_{m}italic_P start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , ⋯ italic_P start_POSTSUBSCRIPT italic_m end_POSTSUBSCRIPT, where P𝗉𝗂𝗏𝗈𝗍subscript𝑃𝗉𝗂𝗏𝗈𝗍P_{\mathsf{pivot}}italic_P start_POSTSUBSCRIPT sansserif_pivot end_POSTSUBSCRIPT is the only party holding n𝑛nitalic_n single elements as inputs instead of n𝑛nitalic_n sets. Batch size n𝑛nitalic_n. A field 𝔽𝔽\mathbb{F}blackboard_F.

    • Functionality: On input x=(x1,,xn)xsubscript𝑥1subscript𝑥𝑛\textbf{x}=(x_{1},\cdots,x_{n})x = ( italic_x start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , ⋯ , italic_x start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT ) from P𝗉𝗂𝗏𝗈𝗍subscript𝑃𝗉𝗂𝗏𝗈𝗍P_{\mathsf{pivot}}italic_P start_POSTSUBSCRIPT sansserif_pivot end_POSTSUBSCRIPT and Xj=(Xj,1,,Xj,n)subscriptX𝑗subscript𝑋𝑗1subscript𝑋𝑗𝑛\textbf{X}_{j}=(X_{j,1},\cdots,X_{j,n})X start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT = ( italic_X start_POSTSUBSCRIPT italic_j , 1 end_POSTSUBSCRIPT , ⋯ , italic_X start_POSTSUBSCRIPT italic_j , italic_n end_POSTSUBSCRIPT ) from each Pjsubscript𝑃𝑗P_{j}italic_P start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT (j{1,m}{𝗉𝗂𝗏𝗈𝗍}𝑗1𝑚𝗉𝗂𝗏𝗈𝗍j\in\{1,\cdots m\}\setminus\{\mathsf{pivot}\}italic_j ∈ { 1 , ⋯ italic_m } ∖ { sansserif_pivot }), sample si=(si,1,,si,n)𝔽nsubscripts𝑖subscript𝑠𝑖1subscript𝑠𝑖𝑛superscript𝔽𝑛\textbf{s}_{i}=(s_{i,1},\cdots,s_{i,n})\leftarrow\mathbb{F}^{n}s start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT = ( italic_s start_POSTSUBSCRIPT italic_i , 1 end_POSTSUBSCRIPT , ⋯ , italic_s start_POSTSUBSCRIPT italic_i , italic_n end_POSTSUBSCRIPT ) ← blackboard_F start_POSTSUPERSCRIPT italic_n end_POSTSUPERSCRIPT for 1im1𝑖𝑚1\leq i\leq m1 ≤ italic_i ≤ italic_m, s.t. for 1dn1𝑑𝑛1\leq d\leq n1 ≤ italic_d ≤ italic_n, if j{1,,m}{𝗉𝗂𝗏𝗈𝗍}xdXj,d=1subscript𝑗1𝑚𝗉𝗂𝗏𝗈𝗍subscript𝑥𝑑subscript𝑋𝑗𝑑1\bigwedge_{j\in\{1,\cdots,m\}\setminus\{\mathsf{pivot}\}}x_{d}\notin X_{j,d}=1⋀ start_POSTSUBSCRIPT italic_j ∈ { 1 , ⋯ , italic_m } ∖ { sansserif_pivot } end_POSTSUBSCRIPT italic_x start_POSTSUBSCRIPT italic_d end_POSTSUBSCRIPT ∉ italic_X start_POSTSUBSCRIPT italic_j , italic_d end_POSTSUBSCRIPT = 1, 1imsi,d=0subscript1𝑖𝑚subscript𝑠𝑖𝑑0\sum_{1\leq i\leq m}s_{i,d}=0∑ start_POSTSUBSCRIPT 1 ≤ italic_i ≤ italic_m end_POSTSUBSCRIPT italic_s start_POSTSUBSCRIPT italic_i , italic_d end_POSTSUBSCRIPT = 0. Give sisubscripts𝑖\textbf{s}_{i}s start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT to Pisubscript𝑃𝑖P_{i}italic_P start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT.

    Figure 19: Batch Pure Non-Membership Zero-Sharing Functionality 𝖻𝗉𝖭𝖬𝖹𝖲subscript𝖻𝗉𝖭𝖬𝖹𝖲\mathcal{F}_{\mathsf{bpNMZS}}caligraphic_F start_POSTSUBSCRIPT sansserif_bpNMZS end_POSTSUBSCRIPT
    • Parameters: m𝑚mitalic_m parties P1,Pmsubscript𝑃1subscript𝑃𝑚P_{1},\cdots P_{m}italic_P start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , ⋯ italic_P start_POSTSUBSCRIPT italic_m end_POSTSUBSCRIPT. Batch size n𝑛nitalic_n. A field 𝔽𝔽\mathbb{F}blackboard_F. n𝑛nitalic_n Beaver triples ([a],[b],[c])delimited-[]adelimited-[]bdelimited-[]c([\textbf{a}],[\textbf{b}],[\textbf{c}])( [ a ] , [ b ] , [ c ] ) generated in the offline phrase, where [a]=([a1],,[an])delimited-[]adelimited-[]subscript𝑎1delimited-[]subscript𝑎𝑛[\textbf{a}]=([a_{1}],\cdots,[a_{n}])[ a ] = ( [ italic_a start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ] , ⋯ , [ italic_a start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT ] ), [b]=([b1],,[bn])delimited-[]bdelimited-[]subscript𝑏1delimited-[]subscript𝑏𝑛[\textbf{b}]=([b_{1}],\cdots,[b_{n}])[ b ] = ( [ italic_b start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ] , ⋯ , [ italic_b start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT ] ), [c]=([c1],,[cn])delimited-[]cdelimited-[]subscript𝑐1delimited-[]subscript𝑐𝑛[\textbf{c}]=([c_{1}],\cdots,[c_{n}])[ c ] = ( [ italic_c start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ] , ⋯ , [ italic_c start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT ] ) and ci=aibisubscript𝑐𝑖subscript𝑎𝑖subscript𝑏𝑖c_{i}=a_{i}\cdot b_{i}italic_c start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT = italic_a start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT ⋅ italic_b start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT for 1in1𝑖𝑛1\leq i\leq n1 ≤ italic_i ≤ italic_n.

    • Inputs: P𝗉𝗂𝗏𝗈𝗍subscript𝑃𝗉𝗂𝗏𝗈𝗍P_{\mathsf{pivot}}italic_P start_POSTSUBSCRIPT sansserif_pivot end_POSTSUBSCRIPT inputs a vector x=(x1,,xn)xsubscript𝑥1subscript𝑥𝑛\textbf{x}=(x_{1},\cdots,x_{n})x = ( italic_x start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , ⋯ , italic_x start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT ). Pjsubscript𝑃𝑗P_{j}italic_P start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT inputs Xj=(Xj,1,,Xj,n)subscriptX𝑗subscript𝑋𝑗1subscript𝑋𝑗𝑛\textbf{X}_{j}=(X_{j,1},\cdots,X_{j,n})X start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT = ( italic_X start_POSTSUBSCRIPT italic_j , 1 end_POSTSUBSCRIPT , ⋯ , italic_X start_POSTSUBSCRIPT italic_j , italic_n end_POSTSUBSCRIPT ) for j{1,m}{𝗉𝗂𝗏𝗈𝗍}𝑗1𝑚𝗉𝗂𝗏𝗈𝗍j\in\{1,\cdots m\}\setminus\{\mathsf{pivot}\}italic_j ∈ { 1 , ⋯ italic_m } ∖ { sansserif_pivot }.

    • Protocol:

      1. 1.

        P𝗉𝗂𝗏𝗈𝗍subscript𝑃𝗉𝗂𝗏𝗈𝗍P_{\mathsf{pivot}}italic_P start_POSTSUBSCRIPT sansserif_pivot end_POSTSUBSCRIPT and Pjsubscript𝑃𝑗P_{j}italic_P start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT invoke 𝖻𝗌𝗌𝖯𝖬𝖳subscript𝖻𝗌𝗌𝖯𝖬𝖳\mathcal{F}_{\mathsf{bssPMT}}caligraphic_F start_POSTSUBSCRIPT sansserif_bssPMT end_POSTSUBSCRIPT where in the i𝑖iitalic_i-th instance (1in1𝑖𝑛1\leq i\leq n1 ≤ italic_i ≤ italic_n), Pjsubscript𝑃𝑗P_{j}italic_P start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT inputs Xj,isubscript𝑋𝑗𝑖X_{j,i}italic_X start_POSTSUBSCRIPT italic_j , italic_i end_POSTSUBSCRIPT and receives ej,i0superscriptsubscript𝑒𝑗𝑖0e_{j,i}^{0}italic_e start_POSTSUBSCRIPT italic_j , italic_i end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 0 end_POSTSUPERSCRIPT, while P𝗉𝗂𝗏𝗈𝗍subscript𝑃𝗉𝗂𝗏𝗈𝗍P_{\mathsf{pivot}}italic_P start_POSTSUBSCRIPT sansserif_pivot end_POSTSUBSCRIPT inputs xisubscript𝑥𝑖x_{i}italic_x start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT and receives ej,i1superscriptsubscript𝑒𝑗𝑖1e_{j,i}^{1}italic_e start_POSTSUBSCRIPT italic_j , italic_i end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 1 end_POSTSUPERSCRIPT.

      2. 2.

        P𝗉𝗂𝗏𝗈𝗍subscript𝑃𝗉𝗂𝗏𝗈𝗍P_{\mathsf{pivot}}italic_P start_POSTSUBSCRIPT sansserif_pivot end_POSTSUBSCRIPT and Pjsubscript𝑃𝑗P_{j}italic_P start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT invoke n𝑛nitalic_n instances of ROT where in the i𝑖iitalic_i-th instance (1in1𝑖𝑛1\leq i\leq n1 ≤ italic_i ≤ italic_n), Pjsubscript𝑃𝑗P_{j}italic_P start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT acts as 𝒮𝒮\mathcal{S}caligraphic_S and receives rj,i0,rj,i1superscriptsubscript𝑟𝑗𝑖0superscriptsubscript𝑟𝑗𝑖1r_{j,i}^{0},r_{j,i}^{1}italic_r start_POSTSUBSCRIPT italic_j , italic_i end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 0 end_POSTSUPERSCRIPT , italic_r start_POSTSUBSCRIPT italic_j , italic_i end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 1 end_POSTSUPERSCRIPT, while P𝗉𝗂𝗏𝗈𝗍subscript𝑃𝗉𝗂𝗏𝗈𝗍P_{\mathsf{pivot}}italic_P start_POSTSUBSCRIPT sansserif_pivot end_POSTSUBSCRIPT acts as \mathcal{R}caligraphic_R inputting ej,i1superscriptsubscript𝑒𝑗𝑖1e_{j,i}^{1}italic_e start_POSTSUBSCRIPT italic_j , italic_i end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 1 end_POSTSUPERSCRIPT and receives rj,iej,i1superscriptsubscript𝑟𝑗𝑖superscriptsubscript𝑒𝑗𝑖1r_{j,i}^{e_{j,i}^{1}}italic_r start_POSTSUBSCRIPT italic_j , italic_i end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_e start_POSTSUBSCRIPT italic_j , italic_i end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 1 end_POSTSUPERSCRIPT end_POSTSUPERSCRIPT. P𝗉𝗂𝗏𝗈𝗍subscript𝑃𝗉𝗂𝗏𝗈𝗍P_{\mathsf{pivot}}italic_P start_POSTSUBSCRIPT sansserif_pivot end_POSTSUBSCRIPT sets rj=(rj,1ej,11,,rj,nej,n1)subscriptsuperscriptr𝑗superscriptsubscript𝑟𝑗1superscriptsubscript𝑒𝑗11superscriptsubscript𝑟𝑗𝑛superscriptsubscript𝑒𝑗𝑛1\textbf{r}^{\prime}_{j}=(r_{j,1}^{e_{j,1}^{1}},\cdots,r_{j,n}^{e_{j,n}^{1}})r start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT = ( italic_r start_POSTSUBSCRIPT italic_j , 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_e start_POSTSUBSCRIPT italic_j , 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 1 end_POSTSUPERSCRIPT end_POSTSUPERSCRIPT , ⋯ , italic_r start_POSTSUBSCRIPT italic_j , italic_n end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_e start_POSTSUBSCRIPT italic_j , italic_n end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 1 end_POSTSUPERSCRIPT end_POSTSUPERSCRIPT ).

      3. 3.

        P𝗉𝗂𝗏𝗈𝗍subscript𝑃𝗉𝗂𝗏𝗈𝗍P_{\mathsf{pivot}}italic_P start_POSTSUBSCRIPT sansserif_pivot end_POSTSUBSCRIPT sets its shares r𝗉𝗂𝗏𝗈𝗍=j{1,m}{𝗉𝗂𝗏𝗈𝗍}rjsubscriptr𝗉𝗂𝗏𝗈𝗍subscript𝑗1𝑚𝗉𝗂𝗏𝗈𝗍subscriptsuperscriptr𝑗\textbf{r}_{\mathsf{pivot}}=\sum_{j\in\{1,\cdots m\}\setminus\{\mathsf{pivot}% \}}\textbf{r}^{\prime}_{j}r start_POSTSUBSCRIPT sansserif_pivot end_POSTSUBSCRIPT = ∑ start_POSTSUBSCRIPT italic_j ∈ { 1 , ⋯ italic_m } ∖ { sansserif_pivot } end_POSTSUBSCRIPT r start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT. Pjsubscript𝑃𝑗P_{j}italic_P start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT sets its shares rj=(rj,1ej,10,,rj,nej,n0)subscriptr𝑗superscriptsubscript𝑟𝑗1superscriptsubscript𝑒𝑗10superscriptsubscript𝑟𝑗𝑛superscriptsubscript𝑒𝑗𝑛0\textbf{r}_{j}=(-r_{j,1}^{e_{j,1}^{0}},\cdots,-r_{j,n}^{e_{j,n}^{0}})r start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT = ( - italic_r start_POSTSUBSCRIPT italic_j , 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_e start_POSTSUBSCRIPT italic_j , 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 0 end_POSTSUPERSCRIPT end_POSTSUPERSCRIPT , ⋯ , - italic_r start_POSTSUBSCRIPT italic_j , italic_n end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_e start_POSTSUBSCRIPT italic_j , italic_n end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 0 end_POSTSUPERSCRIPT end_POSTSUPERSCRIPT ). All parties hold a vector of n𝑛nitalic_n secret-sharings [r]=([r1],,[rn])delimited-[]rdelimited-[]subscript𝑟1delimited-[]subscript𝑟𝑛[\textbf{r}]=([r_{1}],\cdots,[r_{n}])[ r ] = ( [ italic_r start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ] , ⋯ , [ italic_r start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT ] ).

      4. 4.

        All parties compute [s]delimited-[]s[\textbf{s}][ s ] by performing n𝑛nitalic_n secure multiplications [si]=[ri][bi]delimited-[]subscript𝑠𝑖delimited-[]subscript𝑟𝑖delimited-[]subscript𝑏𝑖[s_{i}]=[r_{i}]\cdot[b_{i}][ italic_s start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT ] = [ italic_r start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT ] ⋅ [ italic_b start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT ] (1in1𝑖𝑛1\leq i\leq n1 ≤ italic_i ≤ italic_n), using n𝑛nitalic_n Beaver triples ([a],[b],[c])delimited-[]adelimited-[]bdelimited-[]c([\textbf{a}],[\textbf{b}],[\textbf{c}])( [ a ] , [ b ] , [ c ] ).

    Figure 20: Batch Pure Non-Membership Zero-Sharing Π𝖻𝗉𝖭𝖬𝖹𝖲subscriptΠ𝖻𝗉𝖭𝖬𝖹𝖲\Pi_{\mathsf{bpNMZS}}roman_Π start_POSTSUBSCRIPT sansserif_bpNMZS end_POSTSUBSCRIPT
    • Complexity Analysis. In the batch pure non-membership zero-sharing protocol (Figure 19), the costs of each stage are calculated as follows.

      • P𝗉𝗂𝗏𝗈𝗍subscript𝑃𝗉𝗂𝗏𝗈𝗍P_{\mathsf{pivot}}italic_P start_POSTSUBSCRIPT sansserif_pivot end_POSTSUBSCRIPT executes batch ssPMT of size n𝑛nitalic_n with each Pjsubscript𝑃𝑗P_{j}italic_P start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT for j{1,m}{𝗉𝗂𝗏𝗈𝗍}𝑗1𝑚𝗉𝗂𝗏𝗈𝗍j\in\{1,\cdots m\}\setminus\{\mathsf{pivot}\}italic_j ∈ { 1 , ⋯ italic_m } ∖ { sansserif_pivot }. 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 P𝗉𝗂𝗏𝗈𝗍subscript𝑃𝗉𝗂𝗏𝗈𝗍P_{\mathsf{pivot}}italic_P start_POSTSUBSCRIPT sansserif_pivot end_POSTSUBSCRIPT are O(mn)𝑂𝑚𝑛O(mn)italic_O ( italic_m italic_n ), while the computation and communication complexity of each Pjsubscript𝑃𝑗P_{j}italic_P start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT are O(n)𝑂𝑛O(n)italic_O ( italic_n ).

      • P𝗉𝗂𝗏𝗈𝗍subscript𝑃𝗉𝗂𝗏𝗈𝗍P_{\mathsf{pivot}}italic_P start_POSTSUBSCRIPT sansserif_pivot end_POSTSUBSCRIPT acts as \mathcal{R}caligraphic_R and executes n𝑛nitalic_n instances of ROT with each Pjsubscript𝑃𝑗P_{j}italic_P start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT for j{1,m}{𝗉𝗂𝗏𝗈𝗍}𝑗1𝑚𝗉𝗂𝗏𝗈𝗍j\in\{1,\cdots m\}\setminus\{\mathsf{pivot}\}italic_j ∈ { 1 , ⋯ italic_m } ∖ { sansserif_pivot }. In the offline phases, P𝗉𝗂𝗏𝗈𝗍subscript𝑃𝗉𝗂𝗏𝗈𝗍P_{\mathsf{pivot}}italic_P start_POSTSUBSCRIPT sansserif_pivot end_POSTSUBSCRIPT and each Pjsubscript𝑃𝑗P_{j}italic_P start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT generate n𝑛nitalic_n instances of random-choice-bit ROT, then in the online phase, P𝗉𝗂𝗏𝗈𝗍subscript𝑃𝗉𝗂𝗏𝗈𝗍P_{\mathsf{pivot}}italic_P start_POSTSUBSCRIPT sansserif_pivot end_POSTSUBSCRIPT only needs to send n𝑛nitalic_n choice bits masked by the random choice bits to each Pjsubscript𝑃𝑗P_{j}italic_P start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT. Therefore, the computation and communication complexity of P𝗉𝗂𝗏𝗈𝗍subscript𝑃𝗉𝗂𝗏𝗈𝗍P_{\mathsf{pivot}}italic_P start_POSTSUBSCRIPT sansserif_pivot end_POSTSUBSCRIPT are O(mn)𝑂𝑚𝑛O(mn)italic_O ( italic_m italic_n ), while the computation and communication complexity of each Pjsubscript𝑃𝑗P_{j}italic_P start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT are O(n)𝑂𝑛O(n)italic_O ( italic_n ).

      • The parties perform n𝑛nitalic_n secure multiplications using the optimization outlined in the previous section and designate P𝗉𝗂𝗏𝗈𝗍subscript𝑃𝗉𝗂𝗏𝗈𝗍P_{\mathsf{pivot}}italic_P start_POSTSUBSCRIPT sansserif_pivot end_POSTSUBSCRIPT as the leader. This requires n𝑛nitalic_n opening with O(mn)𝑂𝑚𝑛O(mn)italic_O ( italic_m italic_n ) computation/communication complexity for P𝗉𝗂𝗏𝗈𝗍subscript𝑃𝗉𝗂𝗏𝗈𝗍P_{\mathsf{pivot}}italic_P start_POSTSUBSCRIPT sansserif_pivot end_POSTSUBSCRIPT and O(n)𝑂𝑛O(n)italic_O ( italic_n ) computation/communication complexity for each Pjsubscript𝑃𝑗P_{j}italic_P start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT.

      To sum up, in the online phase of the batch pure non-membership zero-sharing protocol, the computation and communication complexity of P𝗉𝗂𝗏𝗈𝗍subscript𝑃𝗉𝗂𝗏𝗈𝗍P_{\mathsf{pivot}}italic_P start_POSTSUBSCRIPT sansserif_pivot end_POSTSUBSCRIPT are O(mn)𝑂𝑚𝑛O(mn)italic_O ( italic_m italic_n ), while the computation and communication complexity of each Pjsubscript𝑃𝑗P_{j}italic_P start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT are O(n)𝑂𝑛O(n)italic_O ( italic_n ).

    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, P𝗉𝗂𝗏𝗈𝗍subscript𝑃𝗉𝗂𝗏𝗈𝗍P_{\mathsf{pivot}}italic_P start_POSTSUBSCRIPT sansserif_pivot end_POSTSUBSCRIPT holds an element x𝑥xitalic_x 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., x𝑥xitalic_x belongs to all element sets), the parties receive secret shares of the sum of all payloads associated with x𝑥xitalic_x; 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 𝒮𝒮\mathcal{S}caligraphic_S with an element set Y𝑌Yitalic_Y and a payload set V𝑉Vitalic_V and the receiver \mathcal{R}caligraphic_R with an element x𝑥xitalic_x. 𝒮𝒮\mathcal{S}caligraphic_S samples two secret shares r,w𝑟𝑤r,witalic_r , italic_w, and sets Y𝑌Yitalic_Y as the key set and a set containing the pair (r,viw)𝑟subscript𝑣𝑖𝑤(-r,v_{i}-w)( - italic_r , italic_v start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT - italic_w ) for 1in1𝑖𝑛1\leq i\leq n1 ≤ italic_i ≤ italic_n as the value set, where viVsubscript𝑣𝑖𝑉v_{i}\in Vitalic_v start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT ∈ italic_V is the associated payload with yiYsubscript𝑦𝑖𝑌y_{i}\in Yitalic_y start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT ∈ italic_Y. 𝒮𝒮\mathcal{S}caligraphic_S outputs (r,w)𝑟𝑤(r,w)( italic_r , italic_w ) as its two secret shares. 𝒮𝒮\mathcal{S}caligraphic_S and \mathcal{R}caligraphic_R invoke OPPRF, where \mathcal{R}caligraphic_R inputs x𝑥xitalic_x and receives (r,w)superscript𝑟superscript𝑤(r^{\prime},w^{\prime})( italic_r start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT , italic_w start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT ) as its secret share. By the definition of OPPRF, if xY𝑥𝑌x\in Yitalic_x ∈ italic_Y, (r,w)=(r,vw)superscript𝑟superscript𝑤𝑟𝑣𝑤(r^{\prime},w^{\prime})=(-r,v-w)( italic_r start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT , italic_w start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT ) = ( - italic_r , italic_v - italic_w ), where v𝑣vitalic_v is the associated payload with x𝑥xitalic_x in Y𝑌Yitalic_Y. Namely, if xY𝑥𝑌x\in Yitalic_x ∈ italic_Y, the parties hold one secret sharing of 0 and one secret sharing of the associated payload with x𝑥xitalic_x, otherwise they hold two secret sharings of pseudorandom values.

    In the multi-party membership zero-sharing with payloads protocol, there are m𝑚mitalic_m (m>2𝑚2m>2italic_m > 2) parties, where P𝗉𝗂𝗏𝗈𝗍subscript𝑃𝗉𝗂𝗏𝗈𝗍P_{\mathsf{pivot}}italic_P start_POSTSUBSCRIPT sansserif_pivot end_POSTSUBSCRIPT holds an element x𝑥xitalic_x and each Pjsubscript𝑃𝑗P_{j}italic_P start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT (j{1,m}{𝗉𝗂𝗏𝗈𝗍}𝑗1𝑚𝗉𝗂𝗏𝗈𝗍j\in\{1,\cdots m\}\setminus\{\mathsf{pivot}\}italic_j ∈ { 1 , ⋯ italic_m } ∖ { sansserif_pivot }) holds an element set Xjsubscript𝑋𝑗X_{j}italic_X start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT and a payload set Vjsubscript𝑉𝑗V_{j}italic_V start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT. P𝗉𝗂𝗏𝗈𝗍subscript𝑃𝗉𝗂𝗏𝗈𝗍P_{\mathsf{pivot}}italic_P start_POSTSUBSCRIPT sansserif_pivot end_POSTSUBSCRIPT engages in the two-party version with each Pjsubscript𝑃𝑗P_{j}italic_P start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT, where P𝗉𝗂𝗏𝗈𝗍subscript𝑃𝗉𝗂𝗏𝗈𝗍P_{\mathsf{pivot}}italic_P start_POSTSUBSCRIPT sansserif_pivot end_POSTSUBSCRIPT receives rjsubscriptsuperscript𝑟𝑗r^{\prime}_{j}italic_r start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT and wjsubscriptsuperscript𝑤𝑗w^{\prime}_{j}italic_w start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT while Pjsubscript𝑃𝑗P_{j}italic_P start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT receives rjsubscript𝑟𝑗r_{j}italic_r start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT and wjsubscript𝑤𝑗w_{j}italic_w start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT. By definition, we have that if xXj𝑥subscript𝑋𝑗x\in X_{j}italic_x ∈ italic_X start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT, rj+rj=0subscript𝑟𝑗subscriptsuperscript𝑟𝑗0r_{j}+r^{\prime}_{j}=0italic_r start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT + italic_r start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT = 0 and wj+wj=vjsubscript𝑤𝑗subscriptsuperscript𝑤𝑗subscript𝑣𝑗w_{j}+w^{\prime}_{j}=v_{j}italic_w start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT + italic_w start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT = italic_v start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT, where vjsubscript𝑣𝑗v_{j}italic_v start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT is the associated payload with x𝑥xitalic_x in Vjsubscript𝑉𝑗V_{j}italic_V start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT; otherwise rj+rjsubscript𝑟𝑗subscriptsuperscript𝑟𝑗r_{j}+r^{\prime}_{j}italic_r start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT + italic_r start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT and wj+wjsubscript𝑤𝑗subscriptsuperscript𝑤𝑗w_{j}+w^{\prime}_{j}italic_w start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT + italic_w start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT are both random values. P𝗉𝗂𝗏𝗈𝗍subscript𝑃𝗉𝗂𝗏𝗈𝗍P_{\mathsf{pivot}}italic_P start_POSTSUBSCRIPT sansserif_pivot end_POSTSUBSCRIPT sets r𝗉𝗂𝗏𝗈𝗍=j{1,m}{𝗉𝗂𝗏𝗈𝗍}tjsubscript𝑟𝗉𝗂𝗏𝗈𝗍subscript𝑗1𝑚𝗉𝗂𝗏𝗈𝗍subscript𝑡𝑗r_{\mathsf{pivot}}=\sum_{j\in\{1,\cdots m\}\setminus\{\mathsf{pivot}\}}t_{j}italic_r start_POSTSUBSCRIPT sansserif_pivot end_POSTSUBSCRIPT = ∑ start_POSTSUBSCRIPT italic_j ∈ { 1 , ⋯ italic_m } ∖ { sansserif_pivot } end_POSTSUBSCRIPT italic_t start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT as its first secret share and sets w𝗉𝗂𝗏𝗈𝗍=j{1,m}{𝗉𝗂𝗏𝗈𝗍}ujsubscript𝑤𝗉𝗂𝗏𝗈𝗍subscript𝑗1𝑚𝗉𝗂𝗏𝗈𝗍subscript𝑢𝑗w_{\mathsf{pivot}}=\sum_{j\in\{1,\cdots m\}\setminus\{\mathsf{pivot}\}}u_{j}italic_w start_POSTSUBSCRIPT sansserif_pivot end_POSTSUBSCRIPT = ∑ start_POSTSUBSCRIPT italic_j ∈ { 1 , ⋯ italic_m } ∖ { sansserif_pivot } end_POSTSUBSCRIPT italic_u start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT as its second secret share. Meanwhile, Pjsubscript𝑃𝑗P_{j}italic_P start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT sets rjsubscript𝑟𝑗r_{j}italic_r start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT as its first secret share and wjsubscript𝑤𝑗w_{j}italic_w start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT as its second secret share. Note that if and only if xXj𝑥subscript𝑋𝑗x\in X_{j}italic_x ∈ italic_X start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT for all j𝑗jitalic_j, 1imri=0subscript1𝑖𝑚subscript𝑟𝑖0\sum_{1\leq i\leq m}r_{i}=0∑ start_POSTSUBSCRIPT 1 ≤ italic_i ≤ italic_m end_POSTSUBSCRIPT italic_r start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT = 0 and 1imwi=j{1,m}{𝗉𝗂𝗏𝗈𝗍}vjsubscript1𝑖𝑚subscript𝑤𝑖subscript𝑗1𝑚𝗉𝗂𝗏𝗈𝗍subscript𝑣𝑗\sum_{1\leq i\leq m}w_{i}=\sum_{j\in\{1,\cdots m\}\setminus\{\mathsf{pivot}\}}% v_{j}∑ start_POSTSUBSCRIPT 1 ≤ italic_i ≤ italic_m end_POSTSUBSCRIPT italic_w start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT = ∑ start_POSTSUBSCRIPT italic_j ∈ { 1 , ⋯ italic_m } ∖ { sansserif_pivot } end_POSTSUBSCRIPT italic_v start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT, otherwise 1imrisubscript1𝑖𝑚subscript𝑟𝑖\sum_{1\leq i\leq m}r_{i}∑ start_POSTSUBSCRIPT 1 ≤ italic_i ≤ italic_m end_POSTSUBSCRIPT italic_r start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT and 1imwisubscript1𝑖𝑚subscript𝑤𝑖\sum_{1\leq i\leq m}w_{i}∑ start_POSTSUBSCRIPT 1 ≤ italic_i ≤ italic_m end_POSTSUBSCRIPT italic_w start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT 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.

      • P𝗉𝗂𝗏𝗈𝗍subscript𝑃𝗉𝗂𝗏𝗈𝗍P_{\mathsf{pivot}}italic_P start_POSTSUBSCRIPT sansserif_pivot end_POSTSUBSCRIPT executes batch OPPRF of size n𝑛nitalic_n with each Pjsubscript𝑃𝑗P_{j}italic_P start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT for j{1,m}{𝗉𝗂𝗏𝗈𝗍}𝑗1𝑚𝗉𝗂𝗏𝗈𝗍j\in\{1,\cdots m\}\setminus\{\mathsf{pivot}\}italic_j ∈ { 1 , ⋯ italic_m } ∖ { sansserif_pivot }. In this stage, the computation and communication complexity of P𝗉𝗂𝗏𝗈𝗍subscript𝑃𝗉𝗂𝗏𝗈𝗍P_{\mathsf{pivot}}italic_P start_POSTSUBSCRIPT sansserif_pivot end_POSTSUBSCRIPT are O(mn)𝑂𝑚𝑛O(mn)italic_O ( italic_m italic_n ), while the computation and communication complexity of each Pjsubscript𝑃𝑗P_{j}italic_P start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT are O(n)𝑂𝑛O(n)italic_O ( italic_n ).

      • The parties perform n𝑛nitalic_n secure multiplications using the optimization outlined in the previous section and designate P𝗉𝗂𝗏𝗈𝗍subscript𝑃𝗉𝗂𝗏𝗈𝗍P_{\mathsf{pivot}}italic_P start_POSTSUBSCRIPT sansserif_pivot end_POSTSUBSCRIPT as the leader. This requires n𝑛nitalic_n opening with O(mn)𝑂𝑚𝑛O(mn)italic_O ( italic_m italic_n ) computation/communication complexity for P𝗉𝗂𝗏𝗈𝗍subscript𝑃𝗉𝗂𝗏𝗈𝗍P_{\mathsf{pivot}}italic_P start_POSTSUBSCRIPT sansserif_pivot end_POSTSUBSCRIPT and O(n)𝑂𝑛O(n)italic_O ( italic_n ) computation/ communication complexity for each Pjsubscript𝑃𝑗P_{j}italic_P start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT.

      To sum up, in the online phase of the batch pure membership zero-sharing with payloads protocol, the computation and communication complexity of P𝗉𝗂𝗏𝗈𝗍subscript𝑃𝗉𝗂𝗏𝗈𝗍P_{\mathsf{pivot}}italic_P start_POSTSUBSCRIPT sansserif_pivot end_POSTSUBSCRIPT are O(mn)𝑂𝑚𝑛O(mn)italic_O ( italic_m italic_n ), while the computation and communication complexity of each Pjsubscript𝑃𝑗P_{j}italic_P start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT are O(n)𝑂𝑛O(n)italic_O ( italic_n ).

    • Parameters: m𝑚mitalic_m parties P1,Pmsubscript𝑃1subscript𝑃𝑚P_{1},\cdots P_{m}italic_P start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , ⋯ italic_P start_POSTSUBSCRIPT italic_m end_POSTSUBSCRIPT. Batch size n𝑛nitalic_n. A field 𝔽𝔽\mathbb{F}blackboard_F and payload field 𝔽superscript𝔽\mathbb{F^{\prime}}blackboard_F start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT. The mapping function 𝗉𝖺𝗒𝗅𝗈𝖺𝖽j()subscript𝗉𝖺𝗒𝗅𝗈𝖺𝖽𝑗\mathsf{payload}_{j}()sansserif_payload start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT ( ) from element sets XjsubscriptX𝑗\textbf{X}_{j}X start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT to the associated payload sets VjsubscriptV𝑗\textbf{V}_{j}V start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT. n𝑛nitalic_n Beaver triples ([a],[b],[c])delimited-[]adelimited-[]bdelimited-[]c([\textbf{a}],[\textbf{b}],[\textbf{c}])( [ a ] , [ b ] , [ c ] ) generated in offline phrase, where [a]=([a1],,[an])delimited-[]adelimited-[]subscript𝑎1delimited-[]subscript𝑎𝑛[\textbf{a}]=([a_{1}],\cdots,[a_{n}])[ a ] = ( [ italic_a start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ] , ⋯ , [ italic_a start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT ] ), [b]=([b1],,[bn])delimited-[]bdelimited-[]subscript𝑏1delimited-[]subscript𝑏𝑛[\textbf{b}]=([b_{1}],\cdots,[b_{n}])[ b ] = ( [ italic_b start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ] , ⋯ , [ italic_b start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT ] ), [c]=([c1],,[cn])delimited-[]cdelimited-[]subscript𝑐1delimited-[]subscript𝑐𝑛[\textbf{c}]=([c_{1}],\cdots,[c_{n}])[ c ] = ( [ italic_c start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ] , ⋯ , [ italic_c start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT ] ) and ci=aibisubscript𝑐𝑖subscript𝑎𝑖subscript𝑏𝑖c_{i}=a_{i}\cdot b_{i}italic_c start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT = italic_a start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT ⋅ italic_b start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT for 1in1𝑖𝑛1\leq i\leq n1 ≤ italic_i ≤ italic_n.

    • Inputs: P𝗉𝗂𝗏𝗈𝗍subscript𝑃𝗉𝗂𝗏𝗈𝗍P_{\mathsf{pivot}}italic_P start_POSTSUBSCRIPT sansserif_pivot end_POSTSUBSCRIPT inputs a vector x=(x1,,xn)xsubscript𝑥1subscript𝑥𝑛\textbf{x}=(x_{1},\cdots,x_{n})x = ( italic_x start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , ⋯ , italic_x start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT ). Pjsubscript𝑃𝑗P_{j}italic_P start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT inputs Xj=(Xj,1,,Xj,n)subscriptX𝑗subscript𝑋𝑗1subscript𝑋𝑗𝑛\textbf{X}_{j}=(X_{j,1},\cdots,X_{j,n})X start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT = ( italic_X start_POSTSUBSCRIPT italic_j , 1 end_POSTSUBSCRIPT , ⋯ , italic_X start_POSTSUBSCRIPT italic_j , italic_n end_POSTSUBSCRIPT ) and Vj=(Vj,1,,Vj,n)subscriptV𝑗subscript𝑉𝑗1subscript𝑉𝑗𝑛\textbf{V}_{j}=(V_{j,1},\cdots,V_{j,n})V start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT = ( italic_V start_POSTSUBSCRIPT italic_j , 1 end_POSTSUBSCRIPT , ⋯ , italic_V start_POSTSUBSCRIPT italic_j , italic_n end_POSTSUBSCRIPT ) for j{1,m}{𝗉𝗂𝗏𝗈𝗍}𝑗1𝑚𝗉𝗂𝗏𝗈𝗍j\in\{1,\cdots m\}\setminus\{\mathsf{pivot}\}italic_j ∈ { 1 , ⋯ italic_m } ∖ { sansserif_pivot }.

    • Protocol:

      1. 1.

        For the i𝑖iitalic_i-th instance (1in1𝑖𝑛1\leq i\leq n1 ≤ italic_i ≤ italic_n), Pjsubscript𝑃𝑗P_{j}italic_P start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT samples (rj,i,wj,i)subscript𝑟𝑗𝑖subscript𝑤𝑗𝑖(r_{j,i},w_{j,i})( italic_r start_POSTSUBSCRIPT italic_j , italic_i end_POSTSUBSCRIPT , italic_w start_POSTSUBSCRIPT italic_j , italic_i end_POSTSUBSCRIPT ). Suppose |Xj,i|=Nj,isubscript𝑋𝑗𝑖subscript𝑁𝑗𝑖\lvert X_{j,i}\rvert=N_{j,i}| italic_X start_POSTSUBSCRIPT italic_j , italic_i end_POSTSUBSCRIPT | = italic_N start_POSTSUBSCRIPT italic_j , italic_i end_POSTSUBSCRIPT, Pjsubscript𝑃𝑗P_{j}italic_P start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT sets Kj,i=Xj,i=(xj,i,1,,xj,i,Nj,i)subscript𝐾𝑗𝑖subscript𝑋𝑗𝑖subscript𝑥𝑗𝑖1subscript𝑥𝑗𝑖subscript𝑁𝑗𝑖K_{j,i}=X_{j,i}=(x_{j,i,1},\cdots,x_{j,i,N_{j,i}})italic_K start_POSTSUBSCRIPT italic_j , italic_i end_POSTSUBSCRIPT = italic_X start_POSTSUBSCRIPT italic_j , italic_i end_POSTSUBSCRIPT = ( italic_x start_POSTSUBSCRIPT italic_j , italic_i , 1 end_POSTSUBSCRIPT , ⋯ , italic_x start_POSTSUBSCRIPT italic_j , italic_i , italic_N start_POSTSUBSCRIPT italic_j , italic_i end_POSTSUBSCRIPT end_POSTSUBSCRIPT ) and Vj,i={(rj,i,vj,i,1wj,i),,(rj,i,vj,i,Nj,iwj,i)}superscriptsubscript𝑉𝑗𝑖subscript𝑟𝑗𝑖subscript𝑣𝑗𝑖1subscript𝑤𝑗𝑖subscript𝑟𝑗𝑖subscript𝑣𝑗𝑖subscript𝑁𝑗𝑖subscript𝑤𝑗𝑖V_{j,i}^{\prime}=\{(-r_{j,i},v_{j,i,1}-w_{j,i}),\cdots,(-r_{j,i},v_{j,i,N_{j,i% }}-w_{j,i})\}italic_V start_POSTSUBSCRIPT italic_j , italic_i end_POSTSUBSCRIPT start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT = { ( - italic_r start_POSTSUBSCRIPT italic_j , italic_i end_POSTSUBSCRIPT , italic_v start_POSTSUBSCRIPT italic_j , italic_i , 1 end_POSTSUBSCRIPT - italic_w start_POSTSUBSCRIPT italic_j , italic_i end_POSTSUBSCRIPT ) , ⋯ , ( - italic_r start_POSTSUBSCRIPT italic_j , italic_i end_POSTSUBSCRIPT , italic_v start_POSTSUBSCRIPT italic_j , italic_i , italic_N start_POSTSUBSCRIPT italic_j , italic_i end_POSTSUBSCRIPT end_POSTSUBSCRIPT - italic_w start_POSTSUBSCRIPT italic_j , italic_i end_POSTSUBSCRIPT ) }, where |Vj,i|=Nj,isuperscriptsubscript𝑉𝑗𝑖subscript𝑁𝑗𝑖\lvert V_{j,i}^{\prime}\rvert=N_{j,i}| italic_V start_POSTSUBSCRIPT italic_j , italic_i end_POSTSUBSCRIPT start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT | = italic_N start_POSTSUBSCRIPT italic_j , italic_i end_POSTSUBSCRIPT and vj,i,k=𝗉𝖺𝗒𝗅𝗈𝖺𝖽j(xj,i,k)subscript𝑣𝑗𝑖𝑘subscript𝗉𝖺𝗒𝗅𝗈𝖺𝖽𝑗subscript𝑥𝑗𝑖𝑘v_{j,i,k}=\mathsf{payload}_{j}(x_{j,i,k})italic_v start_POSTSUBSCRIPT italic_j , italic_i , italic_k end_POSTSUBSCRIPT = sansserif_payload start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT ( italic_x start_POSTSUBSCRIPT italic_j , italic_i , italic_k end_POSTSUBSCRIPT ) for 1kNj,i1𝑘subscript𝑁𝑗𝑖1\leq k\leq N_{j,i}1 ≤ italic_k ≤ italic_N start_POSTSUBSCRIPT italic_j , italic_i end_POSTSUBSCRIPT.

      2. 2.

        P𝗉𝗂𝗏𝗈𝗍subscript𝑃𝗉𝗂𝗏𝗈𝗍P_{\mathsf{pivot}}italic_P start_POSTSUBSCRIPT sansserif_pivot end_POSTSUBSCRIPT and Pjsubscript𝑃𝑗P_{j}italic_P start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT invoke 𝖻𝖮𝖯𝖯𝖱𝖥subscript𝖻𝖮𝖯𝖯𝖱𝖥\mathcal{F}_{\mathsf{bOPPRF}}caligraphic_F start_POSTSUBSCRIPT sansserif_bOPPRF end_POSTSUBSCRIPT where Pjsubscript𝑃𝑗P_{j}italic_P start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT acts as 𝒮𝒮\mathcal{S}caligraphic_S inputting (Kj,1,,Kj,n)subscript𝐾𝑗1subscript𝐾𝑗𝑛(K_{j,1},\cdots,K_{j,n})( italic_K start_POSTSUBSCRIPT italic_j , 1 end_POSTSUBSCRIPT , ⋯ , italic_K start_POSTSUBSCRIPT italic_j , italic_n end_POSTSUBSCRIPT ) and (Vj,1,,Vj,n)superscriptsubscript𝑉𝑗1superscriptsubscript𝑉𝑗𝑛(V_{j,1}^{\prime},\cdots,V_{j,n}^{\prime})( italic_V start_POSTSUBSCRIPT italic_j , 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT , ⋯ , italic_V start_POSTSUBSCRIPT italic_j , italic_n end_POSTSUBSCRIPT start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT ), and P𝗉𝗂𝗏𝗈𝗍subscript𝑃𝗉𝗂𝗏𝗈𝗍P_{\mathsf{pivot}}italic_P start_POSTSUBSCRIPT sansserif_pivot end_POSTSUBSCRIPT acts as \mathcal{R}caligraphic_R with input x and receives (rj,wj)superscriptsubscriptr𝑗superscriptsubscriptw𝑗(\textbf{r}_{j}^{\prime},\textbf{w}_{j}^{\prime})( r start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT , w start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT ).

      3. 3.

        P𝗉𝗂𝗏𝗈𝗍subscript𝑃𝗉𝗂𝗏𝗈𝗍P_{\mathsf{pivot}}italic_P start_POSTSUBSCRIPT sansserif_pivot end_POSTSUBSCRIPT sets its first shares r𝗉𝗂𝗏𝗈𝗍=j{1,m}{𝗉𝗂𝗏𝗈𝗍}rjsubscriptr𝗉𝗂𝗏𝗈𝗍subscript𝑗1𝑚𝗉𝗂𝗏𝗈𝗍superscriptsubscriptr𝑗\textbf{r}_{\mathsf{pivot}}=\sum_{j\in\{1,\cdots m\}\setminus\{\mathsf{pivot}% \}}\textbf{r}_{j}^{\prime}r start_POSTSUBSCRIPT sansserif_pivot end_POSTSUBSCRIPT = ∑ start_POSTSUBSCRIPT italic_j ∈ { 1 , ⋯ italic_m } ∖ { sansserif_pivot } end_POSTSUBSCRIPT r start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT, and its second shares w𝗉𝗂𝗏𝗈𝗍=j{1,m}{𝗉𝗂𝗏𝗈𝗍}wjsubscriptw𝗉𝗂𝗏𝗈𝗍subscript𝑗1𝑚𝗉𝗂𝗏𝗈𝗍superscriptsubscriptw𝑗\textbf{w}_{\mathsf{pivot}}=\sum_{j\in\{1,\cdots m\}\setminus\{\mathsf{pivot}% \}}\textbf{w}_{j}^{\prime}w start_POSTSUBSCRIPT sansserif_pivot end_POSTSUBSCRIPT = ∑ start_POSTSUBSCRIPT italic_j ∈ { 1 , ⋯ italic_m } ∖ { sansserif_pivot } end_POSTSUBSCRIPT w start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT. Pjsubscript𝑃𝑗P_{j}italic_P start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT sets its first shares rj=(rj,1,,rj,n)subscriptr𝑗subscript𝑟𝑗1subscript𝑟𝑗𝑛\textbf{r}_{j}=(r_{j,1},\cdots,r_{j,n})r start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT = ( italic_r start_POSTSUBSCRIPT italic_j , 1 end_POSTSUBSCRIPT , ⋯ , italic_r start_POSTSUBSCRIPT italic_j , italic_n end_POSTSUBSCRIPT ), and its second shares wj=(wj,1,,wj,n)subscriptw𝑗subscript𝑤𝑗1subscript𝑤𝑗𝑛\textbf{w}_{j}=(w_{j,1},\cdots,w_{j,n})w start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT = ( italic_w start_POSTSUBSCRIPT italic_j , 1 end_POSTSUBSCRIPT , ⋯ , italic_w start_POSTSUBSCRIPT italic_j , italic_n end_POSTSUBSCRIPT ). All parties hold two vectors of n𝑛nitalic_n secret-sharings [r]=([r1],,[rn])delimited-[]rdelimited-[]subscript𝑟1delimited-[]subscript𝑟𝑛[\textbf{r}]=([r_{1}],\cdots,[r_{n}])[ r ] = ( [ italic_r start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ] , ⋯ , [ italic_r start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT ] ) and [w]=([w1],,[wn])delimited-[]wdelimited-[]subscript𝑤1delimited-[]subscript𝑤𝑛[\textbf{w}]=([w_{1}],\cdots,[w_{n}])[ w ] = ( [ italic_w start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ] , ⋯ , [ italic_w start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT ] ).

      4. 4.

        All parties compute [s]delimited-[]s[\textbf{s}][ s ] by performing n𝑛nitalic_n secure multiplications [si]=[ri][bi]delimited-[]subscript𝑠𝑖delimited-[]subscript𝑟𝑖delimited-[]subscript𝑏𝑖[s_{i}]=[r_{i}]\cdot[b_{i}][ italic_s start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT ] = [ italic_r start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT ] ⋅ [ italic_b start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT ] (1in1𝑖𝑛1\leq i\leq n1 ≤ italic_i ≤ italic_n), using n𝑛nitalic_n Beaver triples ([a],[b],[c])delimited-[]adelimited-[]bdelimited-[]c([\textbf{a}],[\textbf{b}],[\textbf{c}])( [ a ] , [ b ] , [ c ] ).

    Figure 21: Batch Pure Membership Zero-Sharing with Payloads Π𝖻𝗉𝖬𝖹𝖲𝗉subscriptΠ𝖻𝗉𝖬𝖹𝖲𝗉\Pi_{\mathsf{bpMZSp}}roman_Π start_POSTSUBSCRIPT sansserif_bpMZSp end_POSTSUBSCRIPT

    Appendix 0.G Security Proof of Theorem 6.1

    Let P𝒜subscriptP𝒜\textbf{P}_{\mathcal{A}}P start_POSTSUBSCRIPT caligraphic_A end_POSTSUBSCRIPT denote the set of corrupted parties controlled by 𝒜𝒜\mathcal{A}caligraphic_A. In the MPSO protocol, the simulator receives each corrupted party’s input Xcsubscript𝑋𝑐X_{c}italic_X start_POSTSUBSCRIPT italic_c end_POSTSUBSCRIPT from PcP𝒜subscript𝑃𝑐subscriptP𝒜P_{c}\in\textbf{P}_{\mathcal{A}}italic_P start_POSTSUBSCRIPT italic_c end_POSTSUBSCRIPT ∈ P start_POSTSUBSCRIPT caligraphic_A end_POSTSUBSCRIPT and if P1P𝒜subscript𝑃1subscriptP𝒜P_{1}\in\textbf{P}_{\mathcal{A}}italic_P start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ∈ P start_POSTSUBSCRIPT caligraphic_A end_POSTSUBSCRIPT, it receives the resulting set Y𝑌Yitalic_Y. For each Pcsubscript𝑃𝑐P_{c}italic_P start_POSTSUBSCRIPT italic_c end_POSTSUBSCRIPT, its view consists of its input Xcsubscript𝑋𝑐X_{c}italic_X start_POSTSUBSCRIPT italic_c end_POSTSUBSCRIPT, B𝐵Bitalic_B secret shares si,csubscripts𝑖𝑐\textbf{s}_{i,c}s start_POSTSUBSCRIPT italic_i , italic_c end_POSTSUBSCRIPT from each 𝖻𝖬𝖹𝖲Qisuperscriptsubscript𝖻𝖬𝖹𝖲subscriptsuperscript𝑄𝑖\mathcal{F}_{\mathsf{bMZS}}^{Q^{\prime}_{i}}caligraphic_F start_POSTSUBSCRIPT sansserif_bMZS end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_Q start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT end_POSTSUPERSCRIPT for 1is1𝑖𝑠1\leq i\leq s1 ≤ italic_i ≤ italic_s (if Pcsubscript𝑃𝑐P_{c}italic_P start_POSTSUBSCRIPT italic_c end_POSTSUBSCRIPT belongs to the set of Qisubscript𝑄𝑖Q_{i}italic_Q start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT’s involving parties {Pi1,,Piq}subscript𝑃subscript𝑖1subscript𝑃subscript𝑖𝑞\{P_{i_{1}},\cdots,P_{i_{q}}\}{ italic_P start_POSTSUBSCRIPT italic_i start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT end_POSTSUBSCRIPT , ⋯ , italic_P start_POSTSUBSCRIPT italic_i start_POSTSUBSCRIPT italic_q end_POSTSUBSCRIPT end_POSTSUBSCRIPT }), shuffled secret shares ucsuperscriptsubscriptu𝑐\textbf{u}_{c}^{\prime}u start_POSTSUBSCRIPT italic_c end_POSTSUBSCRIPT start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT from 𝗌𝗁𝗎𝖿𝖿𝗅𝖾subscript𝗌𝗁𝗎𝖿𝖿𝗅𝖾\mathcal{F}_{\mathsf{shuffle}}caligraphic_F start_POSTSUBSCRIPT sansserif_shuffle end_POSTSUBSCRIPT, and if P1P𝒜subscript𝑃1subscriptP𝒜P_{1}\in\textbf{P}_{\mathcal{A}}italic_P start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ∈ P start_POSTSUBSCRIPT caligraphic_A end_POSTSUBSCRIPT, reconstruction messages ujsuperscriptsubscriptu𝑗\textbf{u}_{j}^{\prime}u start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT from Pjsubscript𝑃𝑗P_{j}italic_P start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT for 1<jm1𝑗𝑚1<j\leq m1 < italic_j ≤ italic_m.

    Suppose there are ssuperscript𝑠s^{\prime}italic_s start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT subformulas Q𝒜={Qj1,,Qjs}{Q1,,Qs}subscriptQ𝒜subscript𝑄subscript𝑗1subscript𝑄subscript𝑗superscript𝑠subscript𝑄1subscript𝑄𝑠\textbf{Q}_{\mathcal{A}}=\{Q_{j_{1}},\cdots,Q_{j_{s^{\prime}}}\}\subseteq\{Q_{% 1},\cdots,Q_{s}\}Q start_POSTSUBSCRIPT caligraphic_A end_POSTSUBSCRIPT = { italic_Q start_POSTSUBSCRIPT italic_j start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT end_POSTSUBSCRIPT , ⋯ , italic_Q start_POSTSUBSCRIPT italic_j start_POSTSUBSCRIPT italic_s start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT end_POSTSUBSCRIPT end_POSTSUBSCRIPT } ⊆ { italic_Q start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , ⋯ , italic_Q start_POSTSUBSCRIPT italic_s end_POSTSUBSCRIPT } without involving honest parties, and Q={Q1,,Qs}Q𝒜subscriptQsubscript𝑄1subscript𝑄𝑠subscriptQ𝒜\textbf{Q}_{\mathcal{H}}=\{Q_{1},\cdots,Q_{s}\}\setminus\textbf{Q}_{\mathcal{A}}Q start_POSTSUBSCRIPT caligraphic_H end_POSTSUBSCRIPT = { italic_Q start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , ⋯ , italic_Q start_POSTSUBSCRIPT italic_s end_POSTSUBSCRIPT } ∖ Q start_POSTSUBSCRIPT caligraphic_A end_POSTSUBSCRIPT, containing the subformulas that involve at least one honest party. The simulator emulates each Pcsubscript𝑃𝑐P_{c}italic_P start_POSTSUBSCRIPT italic_c end_POSTSUBSCRIPT’s view by running the protocol honestly with these changes:

    • It simulates uniform secret shares from each 𝖻𝖬𝖹𝖲Qhsuperscriptsubscript𝖻𝖬𝖹𝖲subscriptsuperscript𝑄\mathcal{F}_{\mathsf{bMZS}}^{Q^{\prime}_{h}}caligraphic_F start_POSTSUBSCRIPT sansserif_bMZS end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_Q start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_h end_POSTSUBSCRIPT end_POSTSUPERSCRIPT for each QhQsubscript𝑄subscriptQQ_{h}\in\textbf{Q}_{\mathcal{H}}italic_Q start_POSTSUBSCRIPT italic_h end_POSTSUBSCRIPT ∈ Q start_POSTSUBSCRIPT caligraphic_H end_POSTSUBSCRIPT.

    • Case P1P𝒜subscript𝑃1subscriptP𝒜P_{1}\notin\textbf{P}_{\mathcal{A}}italic_P start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ∉ P start_POSTSUBSCRIPT caligraphic_A end_POSTSUBSCRIPT. It samples uniform secret shares ucsuperscriptsubscriptu𝑐\textbf{u}_{c}^{\prime}u start_POSTSUBSCRIPT italic_c end_POSTSUBSCRIPT start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT from 𝗌𝗁𝗎𝖿𝖿𝗅𝖾subscript𝗌𝗁𝗎𝖿𝖿𝗅𝖾\mathcal{F}_{\mathsf{shuffle}}caligraphic_F start_POSTSUBSCRIPT sansserif_shuffle end_POSTSUBSCRIPT.

    • Case P1P𝒜subscript𝑃1subscriptP𝒜P_{1}\in\textbf{P}_{\mathcal{A}}italic_P start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ∈ P start_POSTSUBSCRIPT caligraphic_A end_POSTSUBSCRIPT. After the corrupted parties honestly invoke batch membership zero-sharing protocols for all subformulas in Q𝒜subscriptQ𝒜\textbf{Q}_{\mathcal{A}}Q start_POSTSUBSCRIPT caligraphic_A end_POSTSUBSCRIPT, the parties hold sBsuperscript𝑠𝐵s^{\prime}Bitalic_s start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT italic_B secret-sharings, where we denote all secrets of elements (appended with all-zero strings) as a set Y𝒜Ysubscript𝑌𝒜𝑌Y_{\mathcal{A}}\in Yitalic_Y start_POSTSUBSCRIPT caligraphic_A end_POSTSUBSCRIPT ∈ italic_Y and sB|Y𝒜|superscript𝑠𝐵subscript𝑌𝒜s^{\prime}B-\lvert Y_{\mathcal{A}}\rvertitalic_s start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT italic_B - | italic_Y start_POSTSUBSCRIPT caligraphic_A end_POSTSUBSCRIPT | random secrets as a set R𝒜subscript𝑅𝒜R_{\mathcal{A}}italic_R start_POSTSUBSCRIPT caligraphic_A end_POSTSUBSCRIPT. Let Y=YY𝒜subscript𝑌𝑌subscript𝑌𝒜Y_{\mathcal{H}}=Y\setminus Y_{\mathcal{A}}italic_Y start_POSTSUBSCRIPT caligraphic_H end_POSTSUBSCRIPT = italic_Y ∖ italic_Y start_POSTSUBSCRIPT caligraphic_A end_POSTSUBSCRIPT. The simulator samples (ss)B|Y|𝑠superscript𝑠𝐵subscript𝑌(s-s^{\prime})B-\lvert Y_{\mathcal{H}}\rvert( italic_s - italic_s start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT ) italic_B - | italic_Y start_POSTSUBSCRIPT caligraphic_H end_POSTSUBSCRIPT | random values as a set Rsubscript𝑅R_{\mathcal{H}}italic_R start_POSTSUBSCRIPT caligraphic_H end_POSTSUBSCRIPT, shuffles the union YRR𝒜𝑌subscript𝑅subscript𝑅𝒜Y\cup R_{\mathcal{H}}\cup R_{\mathcal{A}}italic_Y ∪ italic_R start_POSTSUBSCRIPT caligraphic_H end_POSTSUBSCRIPT ∪ italic_R start_POSTSUBSCRIPT caligraphic_A end_POSTSUBSCRIPT with a random permutation π𝜋\piitalic_π and secret-shares the shuffled union as u1,,umsuperscriptsubscriptu1superscriptsubscriptu𝑚\textbf{u}_{1}^{\prime},\cdots,\textbf{u}_{m}^{\prime}u start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT , ⋯ , u start_POSTSUBSCRIPT italic_m end_POSTSUBSCRIPT start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT, where ucsuperscriptsubscriptu𝑐\textbf{u}_{c}^{\prime}u start_POSTSUBSCRIPT italic_c end_POSTSUBSCRIPT start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT is outputted to Pcsubscript𝑃𝑐P_{c}italic_P start_POSTSUBSCRIPT italic_c end_POSTSUBSCRIPT as secret shares from 𝗌𝗁𝗎𝖿𝖿𝗅𝖾subscript𝗌𝗁𝗎𝖿𝖿𝗅𝖾\mathcal{F}_{\mathsf{shuffle}}caligraphic_F start_POSTSUBSCRIPT sansserif_shuffle end_POSTSUBSCRIPT for each Pc{Pi1,,Piq}subscript𝑃𝑐subscript𝑃subscript𝑖1subscript𝑃subscript𝑖𝑞P_{c}\in\{P_{i_{1}},\cdots,P_{i_{q}}\}italic_P start_POSTSUBSCRIPT italic_c end_POSTSUBSCRIPT ∈ { italic_P start_POSTSUBSCRIPT italic_i start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT end_POSTSUBSCRIPT , ⋯ , italic_P start_POSTSUBSCRIPT italic_i start_POSTSUBSCRIPT italic_q end_POSTSUBSCRIPT end_POSTSUBSCRIPT }.

    In the case P1P𝒜subscript𝑃1subscriptP𝒜P_{1}\notin\textbf{P}_{\mathcal{A}}italic_P start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ∉ P start_POSTSUBSCRIPT caligraphic_A end_POSTSUBSCRIPT, it is easy to see that Pcsubscript𝑃𝑐P_{c}italic_P start_POSTSUBSCRIPT italic_c end_POSTSUBSCRIPT’s secret shares from each 𝖻𝖬𝖹𝖲Qhsuperscriptsubscript𝖻𝖬𝖹𝖲subscriptsuperscript𝑄\mathcal{F}_{\mathsf{bMZS}}^{Q^{\prime}_{h}}caligraphic_F start_POSTSUBSCRIPT sansserif_bMZS end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_Q start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_h end_POSTSUBSCRIPT end_POSTSUPERSCRIPT and 𝗌𝗁𝗎𝖿𝖿𝗅𝖾subscript𝗌𝗁𝗎𝖿𝖿𝗅𝖾\mathcal{F}_{\mathsf{shuffle}}caligraphic_F start_POSTSUBSCRIPT sansserif_shuffle end_POSTSUBSCRIPT 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 P1P𝒜subscript𝑃1subscriptP𝒜P_{1}\in\textbf{P}_{\mathcal{A}}italic_P start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ∈ P start_POSTSUBSCRIPT caligraphic_A end_POSTSUBSCRIPT, Pcsubscript𝑃𝑐P_{c}italic_P start_POSTSUBSCRIPT italic_c end_POSTSUBSCRIPT’s secret shares from each 𝖻𝖬𝖹𝖲Qhsuperscriptsubscript𝖻𝖬𝖹𝖲subscriptsuperscript𝑄\mathcal{F}_{\mathsf{bMZS}}^{Q^{\prime}_{h}}caligraphic_F start_POSTSUBSCRIPT sansserif_bMZS end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_Q start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_h end_POSTSUBSCRIPT end_POSTSUPERSCRIPT (QhQsubscript𝑄subscriptQQ_{h}\in\textbf{Q}_{\mathcal{H}}italic_Q start_POSTSUBSCRIPT italic_h end_POSTSUBSCRIPT ∈ Q start_POSTSUBSCRIPT caligraphic_H end_POSTSUBSCRIPT) are also uniformly distributed and independent of any other distributions in the real execution, so

    {𝖲𝗂𝗆Qh(P𝒜h,X𝒜h,{sh,c}PcP𝒜h)QhQ,{sh,c}QhQ,PcP𝒜h}Xsubscriptsuperscript𝖲𝗂𝗆subscript𝑄subscriptsubscriptsuperscriptP𝒜subscriptsuperscriptX𝒜subscriptsubscripts𝑐subscript𝑃𝑐superscriptsubscriptP𝒜subscript𝑄subscriptQsubscriptsubscripts𝑐formulae-sequencesubscript𝑄subscriptQsubscript𝑃𝑐superscriptsubscriptP𝒜X\displaystyle\{\mathsf{Sim}^{Q_{h}}(\textbf{P}^{h}_{\mathcal{A}},\textbf{X}^{h% }_{\mathcal{A}},\{\textbf{s}_{h,c}\}_{P_{c}\in\textbf{P}_{\mathcal{A}}^{h}})_{% Q_{h}\in\textbf{Q}_{\mathcal{H}}},\{\textbf{s}_{h,c}\}_{Q_{h}\in\textbf{Q}_{% \mathcal{H}},P_{c}\in\textbf{P}_{\mathcal{A}}^{h}}\}_{\textbf{X}}{ sansserif_Sim start_POSTSUPERSCRIPT italic_Q start_POSTSUBSCRIPT italic_h end_POSTSUBSCRIPT end_POSTSUPERSCRIPT ( P start_POSTSUPERSCRIPT italic_h end_POSTSUPERSCRIPT start_POSTSUBSCRIPT caligraphic_A end_POSTSUBSCRIPT , X start_POSTSUPERSCRIPT italic_h end_POSTSUPERSCRIPT start_POSTSUBSCRIPT caligraphic_A end_POSTSUBSCRIPT , { s start_POSTSUBSCRIPT italic_h , italic_c end_POSTSUBSCRIPT } start_POSTSUBSCRIPT italic_P start_POSTSUBSCRIPT italic_c end_POSTSUBSCRIPT ∈ P start_POSTSUBSCRIPT caligraphic_A end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_h end_POSTSUPERSCRIPT end_POSTSUBSCRIPT ) start_POSTSUBSCRIPT italic_Q start_POSTSUBSCRIPT italic_h end_POSTSUBSCRIPT ∈ Q start_POSTSUBSCRIPT caligraphic_H end_POSTSUBSCRIPT end_POSTSUBSCRIPT , { s start_POSTSUBSCRIPT italic_h , italic_c end_POSTSUBSCRIPT } start_POSTSUBSCRIPT italic_Q start_POSTSUBSCRIPT italic_h end_POSTSUBSCRIPT ∈ Q start_POSTSUBSCRIPT caligraphic_H end_POSTSUBSCRIPT , italic_P start_POSTSUBSCRIPT italic_c end_POSTSUBSCRIPT ∈ P start_POSTSUBSCRIPT caligraphic_A end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_h end_POSTSUPERSCRIPT end_POSTSUBSCRIPT } start_POSTSUBSCRIPT X end_POSTSUBSCRIPT
    𝑐{𝖵𝗂𝖾𝗐𝒜Qh(Xh)QhQ,{sh,cΠ}QhQ,PcP𝒜h}X,𝑐subscriptsuperscriptsubscript𝖵𝗂𝖾𝗐𝒜subscript𝑄subscriptsuperscriptXsubscript𝑄subscriptQsubscriptsubscriptsuperscriptsΠ𝑐formulae-sequencesubscript𝑄subscriptQsubscript𝑃𝑐superscriptsubscriptP𝒜X\displaystyle\overset{c}{\approx}\{\mathsf{View}_{\mathcal{A}}^{Q_{h}}(\textbf% {X}^{h})_{Q_{h}\in\textbf{Q}_{\mathcal{H}}},\{\textbf{s}^{\Pi}_{h,c}\}_{Q_{h}% \in\textbf{Q}_{\mathcal{H}},P_{c}\in\textbf{P}_{\mathcal{A}}^{h}}\}_{\textbf{X% }},overitalic_c start_ARG ≈ end_ARG { sansserif_View start_POSTSUBSCRIPT caligraphic_A end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_Q start_POSTSUBSCRIPT italic_h end_POSTSUBSCRIPT end_POSTSUPERSCRIPT ( X start_POSTSUPERSCRIPT italic_h end_POSTSUPERSCRIPT ) start_POSTSUBSCRIPT italic_Q start_POSTSUBSCRIPT italic_h end_POSTSUBSCRIPT ∈ Q start_POSTSUBSCRIPT caligraphic_H end_POSTSUBSCRIPT end_POSTSUBSCRIPT , { s start_POSTSUPERSCRIPT roman_Π end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_h , italic_c end_POSTSUBSCRIPT } start_POSTSUBSCRIPT italic_Q start_POSTSUBSCRIPT italic_h end_POSTSUBSCRIPT ∈ Q start_POSTSUBSCRIPT caligraphic_H end_POSTSUBSCRIPT , italic_P start_POSTSUBSCRIPT italic_c end_POSTSUBSCRIPT ∈ P start_POSTSUBSCRIPT caligraphic_A end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_h end_POSTSUPERSCRIPT end_POSTSUBSCRIPT } start_POSTSUBSCRIPT X end_POSTSUBSCRIPT ,

    where X={X1,,Xm}Xsubscript𝑋1subscript𝑋𝑚\textbf{X}=\{X_{1},\cdots,X_{m}\}X = { italic_X start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , ⋯ , italic_X start_POSTSUBSCRIPT italic_m end_POSTSUBSCRIPT }. P𝒜hsuperscriptsubscriptP𝒜\textbf{P}_{\mathcal{A}}^{h}P start_POSTSUBSCRIPT caligraphic_A end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_h end_POSTSUPERSCRIPT denotes the corrupted parties involving in Qhsubscript𝑄Q_{h}italic_Q start_POSTSUBSCRIPT italic_h end_POSTSUBSCRIPT, while X𝒜hsuperscriptsubscriptX𝒜\textbf{X}_{\mathcal{A}}^{h}X start_POSTSUBSCRIPT caligraphic_A end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_h end_POSTSUPERSCRIPT denotes the set of their inputs sets. XhsuperscriptX\textbf{X}^{h}X start_POSTSUPERSCRIPT italic_h end_POSTSUPERSCRIPT denotes the set of all involved parties’ inputs sets in Qhsubscript𝑄Q_{h}italic_Q start_POSTSUBSCRIPT italic_h end_POSTSUBSCRIPT. 𝖲𝗂𝗆Qhsuperscript𝖲𝗂𝗆subscript𝑄\mathsf{Sim}^{Q_{h}}sansserif_Sim start_POSTSUPERSCRIPT italic_Q start_POSTSUBSCRIPT italic_h end_POSTSUBSCRIPT end_POSTSUPERSCRIPT is the view emulated by the simulator of 𝖻𝖬𝖹𝖲Qhsuperscriptsubscript𝖻𝖬𝖹𝖲subscriptsuperscript𝑄\mathcal{F}_{\mathsf{bMZS}}^{Q^{\prime}_{h}}caligraphic_F start_POSTSUBSCRIPT sansserif_bMZS end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_Q start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_h end_POSTSUBSCRIPT end_POSTSUPERSCRIPT, while 𝖵𝗂𝖾𝗐𝒜Qhsuperscriptsubscript𝖵𝗂𝖾𝗐𝒜subscript𝑄\mathsf{View}_{\mathcal{A}}^{Q_{h}}sansserif_View start_POSTSUBSCRIPT caligraphic_A end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_Q start_POSTSUBSCRIPT italic_h end_POSTSUBSCRIPT end_POSTSUPERSCRIPT is the real view of adversary in the batch membership zero-sharing protocol for Qhsubscript𝑄Q_{h}italic_Q start_POSTSUBSCRIPT italic_h end_POSTSUBSCRIPT. The distinctions with a superscript ΠΠ\Piroman_Π are in the real execution, otherwise in simulation. As the corrupted parties honestly invoke batch membership zero-sharing protocols for all subformulas in Q𝒜subscriptQ𝒜\textbf{Q}_{\mathcal{A}}Q start_POSTSUBSCRIPT caligraphic_A end_POSTSUBSCRIPT, we obtain

    {𝖲𝗂𝗆Qi(P𝒜i,X𝒜i,{si,c}PcP𝒜i)1is,{si,c}1is,PcP𝒜}Xsubscriptsuperscript𝖲𝗂𝗆subscript𝑄𝑖subscriptsubscriptsuperscriptP𝑖𝒜subscriptsuperscriptX𝑖𝒜subscriptsubscripts𝑖𝑐subscript𝑃𝑐subscriptsuperscriptP𝑖𝒜1𝑖𝑠subscriptsubscripts𝑖𝑐formulae-sequence1𝑖𝑠subscript𝑃𝑐subscriptP𝒜X\displaystyle\{\mathsf{Sim}^{Q_{i}}(\textbf{P}^{i}_{\mathcal{A}},\textbf{X}^{i% }_{\mathcal{A}},\{\textbf{s}_{i,c}\}_{P_{c}\in\textbf{P}^{i}_{\mathcal{A}}})_{% 1\leq i\leq s},\{\textbf{s}_{i,c}\}_{1\leq i\leq s,P_{c}\in\textbf{P}_{% \mathcal{A}}}\}_{\textbf{X}}{ sansserif_Sim start_POSTSUPERSCRIPT italic_Q start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT end_POSTSUPERSCRIPT ( P start_POSTSUPERSCRIPT italic_i end_POSTSUPERSCRIPT start_POSTSUBSCRIPT caligraphic_A end_POSTSUBSCRIPT , X start_POSTSUPERSCRIPT italic_i end_POSTSUPERSCRIPT start_POSTSUBSCRIPT caligraphic_A end_POSTSUBSCRIPT , { s start_POSTSUBSCRIPT italic_i , italic_c end_POSTSUBSCRIPT } start_POSTSUBSCRIPT italic_P start_POSTSUBSCRIPT italic_c end_POSTSUBSCRIPT ∈ P start_POSTSUPERSCRIPT italic_i end_POSTSUPERSCRIPT start_POSTSUBSCRIPT caligraphic_A end_POSTSUBSCRIPT end_POSTSUBSCRIPT ) start_POSTSUBSCRIPT 1 ≤ italic_i ≤ italic_s end_POSTSUBSCRIPT , { s start_POSTSUBSCRIPT italic_i , italic_c end_POSTSUBSCRIPT } start_POSTSUBSCRIPT 1 ≤ italic_i ≤ italic_s , italic_P start_POSTSUBSCRIPT italic_c end_POSTSUBSCRIPT ∈ P start_POSTSUBSCRIPT caligraphic_A end_POSTSUBSCRIPT end_POSTSUBSCRIPT } start_POSTSUBSCRIPT X end_POSTSUBSCRIPT
    𝑐{𝖵𝗂𝖾𝗐𝒜Qi(Xi1,,Xiq)1is,{si,cΠ}1is,PcP𝒜}X.𝑐subscriptsuperscriptsubscript𝖵𝗂𝖾𝗐𝒜subscript𝑄𝑖subscriptsubscript𝑋subscript𝑖1subscript𝑋subscript𝑖𝑞1𝑖𝑠subscriptsubscriptsuperscriptsΠ𝑖𝑐formulae-sequence1𝑖𝑠subscript𝑃𝑐subscriptP𝒜X\displaystyle\overset{c}{\approx}\{\mathsf{View}_{\mathcal{A}}^{Q_{i}}(X_{i_{1% }},\cdots,X_{i_{q}})_{1\leq i\leq s},\{\textbf{s}^{\Pi}_{i,c}\}_{1\leq i\leq s% ,P_{c}\in\textbf{P}_{\mathcal{A}}}\}_{\textbf{X}}.overitalic_c start_ARG ≈ end_ARG { sansserif_View start_POSTSUBSCRIPT caligraphic_A end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_Q start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT end_POSTSUPERSCRIPT ( italic_X start_POSTSUBSCRIPT italic_i start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT end_POSTSUBSCRIPT , ⋯ , italic_X start_POSTSUBSCRIPT italic_i start_POSTSUBSCRIPT italic_q end_POSTSUBSCRIPT end_POSTSUBSCRIPT ) start_POSTSUBSCRIPT 1 ≤ italic_i ≤ italic_s end_POSTSUBSCRIPT , { s start_POSTSUPERSCRIPT roman_Π end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_i , italic_c end_POSTSUBSCRIPT } start_POSTSUBSCRIPT 1 ≤ italic_i ≤ italic_s , italic_P start_POSTSUBSCRIPT italic_c end_POSTSUBSCRIPT ∈ P start_POSTSUBSCRIPT caligraphic_A end_POSTSUBSCRIPT end_POSTSUBSCRIPT } start_POSTSUBSCRIPT X end_POSTSUBSCRIPT .

    By correctness, after invoking all 𝖻𝖬𝖹𝖲Qhsuperscriptsubscript𝖻𝖬𝖹𝖲subscriptsuperscript𝑄\mathcal{F}_{\mathsf{bMZS}}^{Q^{\prime}_{h}}caligraphic_F start_POSTSUBSCRIPT sansserif_bMZS end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_Q start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_h end_POSTSUBSCRIPT end_POSTSUPERSCRIPT for each QhQsubscript𝑄subscriptQQ_{h}\in\textbf{Q}_{\mathcal{H}}italic_Q start_POSTSUBSCRIPT italic_h end_POSTSUBSCRIPT ∈ Q start_POSTSUBSCRIPT caligraphic_H end_POSTSUBSCRIPT, the parties hold |Y|subscript𝑌\lvert Y_{\mathcal{H}}\rvert| italic_Y start_POSTSUBSCRIPT caligraphic_H end_POSTSUBSCRIPT | secret-sharings of the elements in Ysubscript𝑌Y_{\mathcal{H}}italic_Y start_POSTSUBSCRIPT caligraphic_H end_POSTSUBSCRIPT, and (ss)B|Y|𝑠superscript𝑠𝐵subscript𝑌(s-s^{\prime})B-\lvert Y_{\mathcal{H}}\rvert( italic_s - italic_s start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT ) italic_B - | italic_Y start_POSTSUBSCRIPT caligraphic_H end_POSTSUBSCRIPT | secret-sharings of random values ( the set of these random secrets is denoted by RΠsubscriptsuperscript𝑅ΠR^{\Pi}_{\mathcal{H}}italic_R start_POSTSUPERSCRIPT roman_Π end_POSTSUPERSCRIPT start_POSTSUBSCRIPT caligraphic_H end_POSTSUBSCRIPT). By the independence requirement of 𝖻𝖬𝖹𝖲Qhsuperscriptsubscript𝖻𝖬𝖹𝖲subscriptsuperscript𝑄\mathcal{F}_{\mathsf{bMZS}}^{Q^{\prime}_{h}}caligraphic_F start_POSTSUBSCRIPT sansserif_bMZS end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_Q start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_h end_POSTSUBSCRIPT end_POSTSUPERSCRIPT, all random values in RΠsubscriptsuperscript𝑅ΠR^{\Pi}_{\mathcal{H}}italic_R start_POSTSUPERSCRIPT roman_Π end_POSTSUPERSCRIPT start_POSTSUBSCRIPT caligraphic_H end_POSTSUBSCRIPT are independent of the joint view of any m1𝑚1m-1italic_m - 1 parties, i.e. the view of adversary, in the real execution of batch membership zero-sharing protocols. In simulation, the random values in Rsubscript𝑅R_{\mathcal{H}}italic_R start_POSTSUBSCRIPT caligraphic_H end_POSTSUBSCRIPT are sampled using independent randomness so they are also independent of the emulated view for 𝖻𝖬𝖹𝖲Qhsuperscriptsubscript𝖻𝖬𝖹𝖲subscriptsuperscript𝑄\mathcal{F}_{\mathsf{bMZS}}^{Q^{\prime}_{h}}caligraphic_F start_POSTSUBSCRIPT sansserif_bMZS end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_Q start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_h end_POSTSUBSCRIPT end_POSTSUPERSCRIPT. After the execution of multi-party secret-shared shuffle, the order of elements in YRΠR𝒜Π𝑌subscriptsuperscript𝑅Πsubscriptsuperscript𝑅Π𝒜Y\cup R^{\Pi}_{\mathcal{H}}\cup R^{\Pi}_{\mathcal{A}}italic_Y ∪ italic_R start_POSTSUPERSCRIPT roman_Π end_POSTSUPERSCRIPT start_POSTSUBSCRIPT caligraphic_H end_POSTSUBSCRIPT ∪ italic_R start_POSTSUPERSCRIPT roman_Π end_POSTSUPERSCRIPT start_POSTSUBSCRIPT caligraphic_A end_POSTSUBSCRIPT is shuffled. By the functionality of 𝗌𝗁𝗎𝖿𝖿𝗅𝖾subscript𝗌𝗁𝗎𝖿𝖿𝗅𝖾\mathcal{F}_{\mathsf{shuffle}}caligraphic_F start_POSTSUBSCRIPT sansserif_shuffle end_POSTSUBSCRIPT, the random permutation πΠsuperscript𝜋Π\pi^{\Pi}italic_π start_POSTSUPERSCRIPT roman_Π end_POSTSUPERSCRIPT is sampled independently. Thereby,

    {𝖲𝗂𝗆Qi(P𝒜i,X𝒜i,{si,c}PcP𝒜i)1is,{si,c}1is,PcP𝒜,π(YRR𝒜)}Xsubscriptsuperscript𝖲𝗂𝗆subscript𝑄𝑖subscriptsubscriptsuperscriptP𝑖𝒜subscriptsuperscriptX𝑖𝒜subscriptsubscripts𝑖𝑐subscript𝑃𝑐subscriptsuperscriptP𝑖𝒜1𝑖𝑠subscriptsubscripts𝑖𝑐formulae-sequence1𝑖𝑠subscript𝑃𝑐subscriptP𝒜𝜋𝑌subscript𝑅subscript𝑅𝒜X\displaystyle\{\mathsf{Sim}^{Q_{i}}(\textbf{P}^{i}_{\mathcal{A}},\textbf{X}^{i% }_{\mathcal{A}},\{\textbf{s}_{i,c}\}_{P_{c}\in\textbf{P}^{i}_{\mathcal{A}}})_{% 1\leq i\leq s},\{\textbf{s}_{i,c}\}_{1\leq i\leq s,P_{c}\in\textbf{P}_{% \mathcal{A}}},\pi(Y\cup R_{\mathcal{H}}\cup R_{\mathcal{A}})\}_{\textbf{X}}{ sansserif_Sim start_POSTSUPERSCRIPT italic_Q start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT end_POSTSUPERSCRIPT ( P start_POSTSUPERSCRIPT italic_i end_POSTSUPERSCRIPT start_POSTSUBSCRIPT caligraphic_A end_POSTSUBSCRIPT , X start_POSTSUPERSCRIPT italic_i end_POSTSUPERSCRIPT start_POSTSUBSCRIPT caligraphic_A end_POSTSUBSCRIPT , { s start_POSTSUBSCRIPT italic_i , italic_c end_POSTSUBSCRIPT } start_POSTSUBSCRIPT italic_P start_POSTSUBSCRIPT italic_c end_POSTSUBSCRIPT ∈ P start_POSTSUPERSCRIPT italic_i end_POSTSUPERSCRIPT start_POSTSUBSCRIPT caligraphic_A end_POSTSUBSCRIPT end_POSTSUBSCRIPT ) start_POSTSUBSCRIPT 1 ≤ italic_i ≤ italic_s end_POSTSUBSCRIPT , { s start_POSTSUBSCRIPT italic_i , italic_c end_POSTSUBSCRIPT } start_POSTSUBSCRIPT 1 ≤ italic_i ≤ italic_s , italic_P start_POSTSUBSCRIPT italic_c end_POSTSUBSCRIPT ∈ P start_POSTSUBSCRIPT caligraphic_A end_POSTSUBSCRIPT end_POSTSUBSCRIPT , italic_π ( italic_Y ∪ italic_R start_POSTSUBSCRIPT caligraphic_H end_POSTSUBSCRIPT ∪ italic_R start_POSTSUBSCRIPT caligraphic_A end_POSTSUBSCRIPT ) } start_POSTSUBSCRIPT X end_POSTSUBSCRIPT
    𝑐{𝖵𝗂𝖾𝗐𝒜Qi(Xi1,,Xiq)1is,{si,cΠ}1is,PcP𝒜,πΠ(YRΠR𝒜Π)}X.𝑐subscriptsuperscriptsubscript𝖵𝗂𝖾𝗐𝒜subscript𝑄𝑖subscriptsubscript𝑋subscript𝑖1subscript𝑋subscript𝑖𝑞1𝑖𝑠subscriptsubscriptsuperscriptsΠ𝑖𝑐formulae-sequence1𝑖𝑠subscript𝑃𝑐subscriptP𝒜superscript𝜋Π𝑌subscriptsuperscript𝑅Πsubscriptsuperscript𝑅Π𝒜X\displaystyle\overset{c}{\approx}\{\mathsf{View}_{\mathcal{A}}^{Q_{i}}(X_{i_{1% }},\cdots,X_{i_{q}})_{1\leq i\leq s},\{\textbf{s}^{\Pi}_{i,c}\}_{1\leq i\leq s% ,P_{c}\in\textbf{P}_{\mathcal{A}}},\pi^{\Pi}(Y\cup R^{\Pi}_{\mathcal{H}}\cup R% ^{\Pi}_{\mathcal{A}})\}_{\textbf{X}}.overitalic_c start_ARG ≈ end_ARG { sansserif_View start_POSTSUBSCRIPT caligraphic_A end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_Q start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT end_POSTSUPERSCRIPT ( italic_X start_POSTSUBSCRIPT italic_i start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT end_POSTSUBSCRIPT , ⋯ , italic_X start_POSTSUBSCRIPT italic_i start_POSTSUBSCRIPT italic_q end_POSTSUBSCRIPT end_POSTSUBSCRIPT ) start_POSTSUBSCRIPT 1 ≤ italic_i ≤ italic_s end_POSTSUBSCRIPT , { s start_POSTSUPERSCRIPT roman_Π end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_i , italic_c end_POSTSUBSCRIPT } start_POSTSUBSCRIPT 1 ≤ italic_i ≤ italic_s , italic_P start_POSTSUBSCRIPT italic_c end_POSTSUBSCRIPT ∈ P start_POSTSUBSCRIPT caligraphic_A end_POSTSUBSCRIPT end_POSTSUBSCRIPT , italic_π start_POSTSUPERSCRIPT roman_Π end_POSTSUPERSCRIPT ( italic_Y ∪ italic_R start_POSTSUPERSCRIPT roman_Π end_POSTSUPERSCRIPT start_POSTSUBSCRIPT caligraphic_H end_POSTSUBSCRIPT ∪ italic_R start_POSTSUPERSCRIPT roman_Π end_POSTSUPERSCRIPT start_POSTSUBSCRIPT caligraphic_A end_POSTSUBSCRIPT ) } start_POSTSUBSCRIPT X end_POSTSUBSCRIPT .

    Given that u1,,umsuperscriptsubscriptu1superscriptsubscriptu𝑚\textbf{u}_{1}^{\prime},\cdots,\textbf{u}_{m}^{\prime}u start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT , ⋯ , u start_POSTSUBSCRIPT italic_m end_POSTSUBSCRIPT start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT and u1Π,,umΠsuperscriptsubscriptu1Πsuperscriptsubscriptu𝑚Π\textbf{u}_{1}^{\prime\Pi},\cdots,\textbf{u}_{m}^{\prime\Pi}u start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT ′ roman_Π end_POSTSUPERSCRIPT , ⋯ , u start_POSTSUBSCRIPT italic_m end_POSTSUBSCRIPT start_POSTSUPERSCRIPT ′ roman_Π end_POSTSUPERSCRIPT are secret shares of π(YRR𝒜Π)𝜋𝑌subscript𝑅subscriptsuperscript𝑅Π𝒜\pi(Y\cup R_{\mathcal{H}}\cup R^{\Pi}_{\mathcal{A}})italic_π ( italic_Y ∪ italic_R start_POSTSUBSCRIPT caligraphic_H end_POSTSUBSCRIPT ∪ italic_R start_POSTSUPERSCRIPT roman_Π end_POSTSUPERSCRIPT start_POSTSUBSCRIPT caligraphic_A end_POSTSUBSCRIPT ) and πΠ(YRΠR𝒜Π)superscript𝜋Π𝑌subscriptsuperscript𝑅Πsubscriptsuperscript𝑅Π𝒜\pi^{\Pi}(Y\cup R^{\Pi}_{\mathcal{H}}\cup R^{\Pi}_{\mathcal{A}})italic_π start_POSTSUPERSCRIPT roman_Π end_POSTSUPERSCRIPT ( italic_Y ∪ italic_R start_POSTSUPERSCRIPT roman_Π end_POSTSUPERSCRIPT start_POSTSUBSCRIPT caligraphic_H end_POSTSUBSCRIPT ∪ italic_R start_POSTSUPERSCRIPT roman_Π end_POSTSUPERSCRIPT start_POSTSUBSCRIPT caligraphic_A end_POSTSUBSCRIPT ) respectively, we derive that

    {𝖲𝗂𝗆Qi(P𝒜i,X𝒜i,{si,c}PcP𝒜i)1is,{si,c}1is,PcP𝒜,u1,,um}Xsubscriptsuperscript𝖲𝗂𝗆subscript𝑄𝑖subscriptsubscriptsuperscriptP𝑖𝒜subscriptsuperscriptX𝑖𝒜subscriptsubscripts𝑖𝑐subscript𝑃𝑐subscriptsuperscriptP𝑖𝒜1𝑖𝑠subscriptsubscripts𝑖𝑐formulae-sequence1𝑖𝑠subscript𝑃𝑐subscriptP𝒜superscriptsubscriptu1superscriptsubscriptu𝑚X\displaystyle\{\mathsf{Sim}^{Q_{i}}(\textbf{P}^{i}_{\mathcal{A}},\textbf{X}^{i% }_{\mathcal{A}},\{\textbf{s}_{i,c}\}_{P_{c}\in\textbf{P}^{i}_{\mathcal{A}}})_{% 1\leq i\leq s},\{\textbf{s}_{i,c}\}_{1\leq i\leq s,P_{c}\in\textbf{P}_{% \mathcal{A}}},\textbf{u}_{1}^{\prime},\cdots,\textbf{u}_{m}^{\prime}\}_{% \textbf{X}}{ sansserif_Sim start_POSTSUPERSCRIPT italic_Q start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT end_POSTSUPERSCRIPT ( P start_POSTSUPERSCRIPT italic_i end_POSTSUPERSCRIPT start_POSTSUBSCRIPT caligraphic_A end_POSTSUBSCRIPT , X start_POSTSUPERSCRIPT italic_i end_POSTSUPERSCRIPT start_POSTSUBSCRIPT caligraphic_A end_POSTSUBSCRIPT , { s start_POSTSUBSCRIPT italic_i , italic_c end_POSTSUBSCRIPT } start_POSTSUBSCRIPT italic_P start_POSTSUBSCRIPT italic_c end_POSTSUBSCRIPT ∈ P start_POSTSUPERSCRIPT italic_i end_POSTSUPERSCRIPT start_POSTSUBSCRIPT caligraphic_A end_POSTSUBSCRIPT end_POSTSUBSCRIPT ) start_POSTSUBSCRIPT 1 ≤ italic_i ≤ italic_s end_POSTSUBSCRIPT , { s start_POSTSUBSCRIPT italic_i , italic_c end_POSTSUBSCRIPT } start_POSTSUBSCRIPT 1 ≤ italic_i ≤ italic_s , italic_P start_POSTSUBSCRIPT italic_c end_POSTSUBSCRIPT ∈ P start_POSTSUBSCRIPT caligraphic_A end_POSTSUBSCRIPT end_POSTSUBSCRIPT , u start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT , ⋯ , u start_POSTSUBSCRIPT italic_m end_POSTSUBSCRIPT start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT } start_POSTSUBSCRIPT X end_POSTSUBSCRIPT
    𝑐{𝖵𝗂𝖾𝗐𝒜Qi(Xi1,,Xiq)1is,{si,cΠ}1is,PcP𝒜,u1Π,,umΠ}X.𝑐subscriptsuperscriptsubscript𝖵𝗂𝖾𝗐𝒜subscript𝑄𝑖subscriptsubscript𝑋subscript𝑖1subscript𝑋subscript𝑖𝑞1𝑖𝑠subscriptsubscriptsuperscriptsΠ𝑖𝑐formulae-sequence1𝑖𝑠subscript𝑃𝑐subscriptP𝒜superscriptsubscriptu1Πsuperscriptsubscriptu𝑚ΠX\displaystyle\overset{c}{\approx}\{\mathsf{View}_{\mathcal{A}}^{Q_{i}}(X_{i_{1% }},\cdots,X_{i_{q}})_{1\leq i\leq s},\{\textbf{s}^{\Pi}_{i,c}\}_{1\leq i\leq s% ,P_{c}\in\textbf{P}_{\mathcal{A}}},\textbf{u}_{1}^{\prime\Pi},\cdots,\textbf{u% }_{m}^{\prime\Pi}\}_{\textbf{X}}.overitalic_c start_ARG ≈ end_ARG { sansserif_View start_POSTSUBSCRIPT caligraphic_A end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_Q start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT end_POSTSUPERSCRIPT ( italic_X start_POSTSUBSCRIPT italic_i start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT end_POSTSUBSCRIPT , ⋯ , italic_X start_POSTSUBSCRIPT italic_i start_POSTSUBSCRIPT italic_q end_POSTSUBSCRIPT end_POSTSUBSCRIPT ) start_POSTSUBSCRIPT 1 ≤ italic_i ≤ italic_s end_POSTSUBSCRIPT , { s start_POSTSUPERSCRIPT roman_Π end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_i , italic_c end_POSTSUBSCRIPT } start_POSTSUBSCRIPT 1 ≤ italic_i ≤ italic_s , italic_P start_POSTSUBSCRIPT italic_c end_POSTSUBSCRIPT ∈ P start_POSTSUBSCRIPT caligraphic_A end_POSTSUBSCRIPT end_POSTSUBSCRIPT , u start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT ′ roman_Π end_POSTSUPERSCRIPT , ⋯ , u start_POSTSUBSCRIPT italic_m end_POSTSUBSCRIPT start_POSTSUPERSCRIPT ′ roman_Π end_POSTSUPERSCRIPT } start_POSTSUBSCRIPT X end_POSTSUBSCRIPT .

    By invoking the simulator for multi-party secret-shared shuffle 𝖲𝗂𝗆shsuperscript𝖲𝗂𝗆𝑠\mathsf{Sim}^{sh}sansserif_Sim start_POSTSUPERSCRIPT italic_s italic_h end_POSTSUPERSCRIPT,

    {𝖲𝗂𝗆Qi(P𝒜i,X𝒜i,{si,c}PcP𝒜i)1is,{si,c}1is,PcP𝒜,\displaystyle\{\mathsf{Sim}^{Q_{i}}(\textbf{P}^{i}_{\mathcal{A}},\textbf{X}^{i% }_{\mathcal{A}},\{\textbf{s}_{i,c}\}_{P_{c}\in\textbf{P}^{i}_{\mathcal{A}}})_{% 1\leq i\leq s},\{\textbf{s}_{i,c}\}_{1\leq i\leq s,P_{c}\in\textbf{P}_{% \mathcal{A}}},{ sansserif_Sim start_POSTSUPERSCRIPT italic_Q start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT end_POSTSUPERSCRIPT ( P start_POSTSUPERSCRIPT italic_i end_POSTSUPERSCRIPT start_POSTSUBSCRIPT caligraphic_A end_POSTSUBSCRIPT , X start_POSTSUPERSCRIPT italic_i end_POSTSUPERSCRIPT start_POSTSUBSCRIPT caligraphic_A end_POSTSUBSCRIPT , { s start_POSTSUBSCRIPT italic_i , italic_c end_POSTSUBSCRIPT } start_POSTSUBSCRIPT italic_P start_POSTSUBSCRIPT italic_c end_POSTSUBSCRIPT ∈ P start_POSTSUPERSCRIPT italic_i end_POSTSUPERSCRIPT start_POSTSUBSCRIPT caligraphic_A end_POSTSUBSCRIPT end_POSTSUBSCRIPT ) start_POSTSUBSCRIPT 1 ≤ italic_i ≤ italic_s end_POSTSUBSCRIPT , { s start_POSTSUBSCRIPT italic_i , italic_c end_POSTSUBSCRIPT } start_POSTSUBSCRIPT 1 ≤ italic_i ≤ italic_s , italic_P start_POSTSUBSCRIPT italic_c end_POSTSUBSCRIPT ∈ P start_POSTSUBSCRIPT caligraphic_A end_POSTSUBSCRIPT end_POSTSUBSCRIPT ,
    𝖲𝗂𝗆sh(P𝒜,{uc,uc}PcP𝒜),u1,,um}X\displaystyle\mathsf{Sim}^{sh}(\textbf{P}_{\mathcal{A}},\{\textbf{u}_{c},% \textbf{u}_{c}^{\prime}\}_{P_{c}\in\textbf{P}_{\mathcal{A}}}),\textbf{u}_{1}^{% \prime},\cdots,\textbf{u}_{m}^{\prime}\}_{\textbf{X}}sansserif_Sim start_POSTSUPERSCRIPT italic_s italic_h end_POSTSUPERSCRIPT ( P start_POSTSUBSCRIPT caligraphic_A end_POSTSUBSCRIPT , { u start_POSTSUBSCRIPT italic_c end_POSTSUBSCRIPT , u start_POSTSUBSCRIPT italic_c end_POSTSUBSCRIPT start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT } start_POSTSUBSCRIPT italic_P start_POSTSUBSCRIPT italic_c end_POSTSUBSCRIPT ∈ P start_POSTSUBSCRIPT caligraphic_A end_POSTSUBSCRIPT end_POSTSUBSCRIPT ) , u start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT , ⋯ , u start_POSTSUBSCRIPT italic_m end_POSTSUBSCRIPT start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT } start_POSTSUBSCRIPT X end_POSTSUBSCRIPT
    𝑐𝑐\displaystyle\overset{c}{\approx}overitalic_c start_ARG ≈ end_ARG
    {𝖵𝗂𝖾𝗐𝒜Qi(Xi1,,Xiq)1is,{si,cΠ}1is,PcP𝒜,\displaystyle\{\mathsf{View}_{\mathcal{A}}^{Q_{i}}(X_{i_{1}},\cdots,X_{i_{q}})% _{1\leq i\leq s},\{\textbf{s}^{\Pi}_{i,c}\}_{1\leq i\leq s,P_{c}\in\textbf{P}_% {\mathcal{A}}},{ sansserif_View start_POSTSUBSCRIPT caligraphic_A end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_Q start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT end_POSTSUPERSCRIPT ( italic_X start_POSTSUBSCRIPT italic_i start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT end_POSTSUBSCRIPT , ⋯ , italic_X start_POSTSUBSCRIPT italic_i start_POSTSUBSCRIPT italic_q end_POSTSUBSCRIPT end_POSTSUBSCRIPT ) start_POSTSUBSCRIPT 1 ≤ italic_i ≤ italic_s end_POSTSUBSCRIPT , { s start_POSTSUPERSCRIPT roman_Π end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_i , italic_c end_POSTSUBSCRIPT } start_POSTSUBSCRIPT 1 ≤ italic_i ≤ italic_s , italic_P start_POSTSUBSCRIPT italic_c end_POSTSUBSCRIPT ∈ P start_POSTSUBSCRIPT caligraphic_A end_POSTSUBSCRIPT end_POSTSUBSCRIPT ,
    𝖵𝗂𝖾𝗐𝒜sh(u1Π,,umΠ),u1Π,,umΠ}X,\displaystyle\mathsf{View}_{\mathcal{A}}^{sh}(\textbf{u}_{1}^{\Pi},\cdots,% \textbf{u}_{m}^{\Pi}),\textbf{u}_{1}^{\prime\Pi},\cdots,\textbf{u}_{m}^{\prime% \Pi}\}_{\textbf{X}},sansserif_View start_POSTSUBSCRIPT caligraphic_A end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_s italic_h end_POSTSUPERSCRIPT ( u start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT roman_Π end_POSTSUPERSCRIPT , ⋯ , u start_POSTSUBSCRIPT italic_m end_POSTSUBSCRIPT start_POSTSUPERSCRIPT roman_Π end_POSTSUPERSCRIPT ) , u start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT ′ roman_Π end_POSTSUPERSCRIPT , ⋯ , u start_POSTSUBSCRIPT italic_m end_POSTSUBSCRIPT start_POSTSUPERSCRIPT ′ roman_Π end_POSTSUPERSCRIPT } start_POSTSUBSCRIPT X end_POSTSUBSCRIPT ,

    where uksubscriptu𝑘\textbf{u}_{k}u start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT is computed by {si,k}1issubscriptsubscripts𝑖𝑘1𝑖𝑠\{\textbf{s}_{i,k}\}_{1\leq i\leq s}{ s start_POSTSUBSCRIPT italic_i , italic_k end_POSTSUBSCRIPT } start_POSTSUBSCRIPT 1 ≤ italic_i ≤ italic_s end_POSTSUBSCRIPT 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 P1P𝒜subscript𝑃1subscriptP𝒜P_{1}\in\textbf{P}_{\mathcal{A}}italic_P start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ∈ P start_POSTSUBSCRIPT caligraphic_A end_POSTSUBSCRIPT.

    Appendix 0.H Implementation Details and Parameter Settings

    0.H.1 Implementation Details

    Our protocols are written in C++, where each party uses m1𝑚1m-1italic_m - 1 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.

    • VOLE: We use VOLE implemented in libOTe [50], instantiating the code family with Expand-Convolute codes [49].

    • 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 210superscript2102^{10}2 start_POSTSUPERSCRIPT 10 end_POSTSUPERSCRIPT, 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.

    • Additionally, we use the cryptoTools [4] library to compute hash functions and PRNG calls, and we adopt Coproto [3] to realize network communication.

    0.H.2 Choosing Suitable Parameters

    We set the computational security parameter λ=128𝜆128\lambda=128italic_λ = 128 and the statistical security parameter σ=40𝜎40\sigma=40italic_σ = 40. 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 240superscript2402^{-40}2 start_POSTSUPERSCRIPT - 40 end_POSTSUPERSCRIPT, we set B=1.27n𝐵1.27𝑛B=1.27nitalic_B = 1.27 italic_n for 3-hash Cuckoo hashing.

    • OKVS parameters. We employ w=3𝑤3w=3italic_w = 3 scheme with a cluster size of 214superscript2142^{14}2 start_POSTSUPERSCRIPT 14 end_POSTSUPERSCRIPT in [48], and the expansion rate (which is the size of OKVS divided by the number of encoding items) in this setting is 1.281.281.281.28.

    • 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 σ+log2T+log2B𝜎subscript2𝑇subscript2𝐵\sigma+\log_{2}T+\log_{2}Bitalic_σ + roman_log start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT italic_T + roman_log start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT italic_B, where T𝑇Titalic_T is the total number of the batch ssPMT invocations, which is (m2m)/2superscript𝑚2𝑚2(m^{2}-m)/2( italic_m start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT - italic_m ) / 2 in our MPSU protocol. Thereby, the lower bound of output length of OPPRF in our MPSU protocol is σ+log2((m2m)/2)+log2(1.27n)𝜎subscript2superscript𝑚2𝑚2subscript21.27𝑛\sigma+\log_{2}((m^{2}-m)/2)+\log_{2}(1.27n)italic_σ + roman_log start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT ( ( italic_m start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT - italic_m ) / 2 ) + roman_log start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT ( 1.27 italic_n ).

    • 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 B2σ=1.27n2σ𝐵superscript2𝜎1.27𝑛superscript2𝜎B\cdot 2^{\sigma}=1.27n\cdot 2^{\sigma}italic_B ⋅ 2 start_POSTSUPERSCRIPT italic_σ end_POSTSUPERSCRIPT = 1.27 italic_n ⋅ 2 start_POSTSUPERSCRIPT italic_σ end_POSTSUPERSCRIPT is sufficient to bound the probability of any spurious collision to 2σsuperscript2𝜎2^{-\sigma}2 start_POSTSUPERSCRIPT - italic_σ end_POSTSUPERSCRIPT. For MPSU protocol, the field size should meet two requirements: |𝔽|B2σ𝔽𝐵superscript2𝜎\lvert\mathbb{F}\rvert\geq B\cdot 2^{\sigma}| blackboard_F | ≥ italic_B ⋅ 2 start_POSTSUPERSCRIPT italic_σ end_POSTSUPERSCRIPT and the length of elements in 𝔽𝔽\mathbb{F}blackboard_F equals l+l𝑙superscript𝑙l+l^{\prime}italic_l + italic_l start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT. Given that the all-zero string length lσ+log(m1)+logBsuperscript𝑙𝜎𝑚1𝐵l^{\prime}\geq\sigma+\log(m-1)+\log Bitalic_l start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT ≥ italic_σ + roman_log ( italic_m - 1 ) + roman_log italic_B, we have |𝔽|2l+(m1)B2σ𝔽superscript2𝑙𝑚1𝐵superscript2𝜎\lvert\mathbb{F}\rvert\geq 2^{l}+(m-1)B\cdot 2^{\sigma}| blackboard_F | ≥ 2 start_POSTSUPERSCRIPT italic_l end_POSTSUPERSCRIPT + ( italic_m - 1 ) italic_B ⋅ 2 start_POSTSUPERSCRIPT italic_σ end_POSTSUPERSCRIPT 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 lsuperscript𝑙l^{\prime}italic_l start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT is set as 64 bits) in our experiments.