SPDZ-BASED OPTIMISTIC FAIR MULTI-PARTY
COMPUTATION
Chung-Li Wang
Alibaba Inc., Sunnyvale, California, USA
ABSTRACT
The fairness of multi-party computation has been investigated for long time. Classic results demonstrate that fair exchange can be achieved by utilizing cryptographic tools, as most of them are based on garbled circuits.For the secret-sharing schemes, such as SPDZ, it may incur significant overhead to simply apply a fair escrow scheme, since it encrypts all the shares of delivered results. To address this issue, we design a twolevel secret-sharing mechanism. The escrow encryption is only for the first level of sharing and performed in preprocessing. The second level of sharing is used for computation and always handled by plaintexts, such that the online phase is still efficient. Our work also employs a semi-trusted third party (TTP) which provide optimistic escrow for output delivery. The verification and delivery procedures prevent the malicious parties from corrupting the outcome or aborting, when there is at least one honest party. Furthermore, the TTP has no knowledge of output, so even if he is malicious and colluding, we only lose fairness. The escrow decryption is needed only when misconduct is detected for opening the first-level shares.
KEYWORDS
Optimistic Multi-Party Computation, Secret-Sharing, Verifiability, Fairness, Semi-Trusted Third Party
1. INTRODUCTION
In recent years, secure multi-party computation (MPC) has gained widespread attention from researchers due to its capability to securely aggregate data from multiple users and produce powerful results. SPDZ [1] and its variants (e.g., [2]-[3]) have played significant rolesin the success of MPC. These protocols have two phases: an input-independent offline phase for preprocessing and an input-dependent online phase that is highly efficient. However, a single malicious party can cause the computation to fail by deviating from the protocol or providing false results. In this scenario, honest parties are unable to learn the outcome of the computation, while the malicious party may still gain access to it. It is investigated in [7] and proven to imply robustness assuming a broadcast channel.
Fairness. The fairness is defined as the property that corrupted parties should not be able to prevent honest parties from receiving their output. In general, this property can be achieved by using cryptographic tools as in [8] and [9]. The escrow scheme [9] integrated garbled circuits and an optimistic escrow scheme with a semi-trusted third party. However, for SPDZ-like protocols, these similar approaches were all considered to be unaffordable, as discussed in [4]. As a consequence, the protocols with identifiable abort in [3] and [4][4] have to publicly reconstruct the secret before verifying the result, allowing corrupted parties to learn the output even though they cheated. The work in [12] uses threshold-t secret-sharing to support fairness and robustness. Despite of its better efficiency and usability, when the number of dishonest parties is not known, it is difficult to choose appropriate design parameters. For example, in its design only t server parties are needed to corrupt to obtain the secret without public opening. As a result, even with identifiable abort and verifiability, if a malicious majority is assumed, having fairness is still an open problem for someof secret-sharing schemes.
Our Contribution. In the standard model, it is impossible to guarantee fairness with corrupted majority [17]. To overcome this impossibility, many protocols (e.g. [10]) have been proposed to achieve fairness in non-standard models using a trusted third party (TTP). The proposed solution is a public auditable MPC with identifiable abort and fairness using an optimistic escrow phase. Similarly as in SDPZ, the framework has the offline preprocessing phase and online computation phase. Our scheme uses a novel two-level secret sharing, the first-level is input-independent and randomly generated in the offline preprocessing, and the second-level is used in the online computation with correlated randomness.
Efficient Online Phase. Parties that engage in manipulating the computation can be identified by examining their commitments. A TTP manages the escrow scheme, which is not needed if all parties behave honestly for opening the shares. Our scheme provides better privacy than [13] asthe TTP does not participate in the outcome delivery. Besides, if the TTP is dishonest, we only lose fairness and robustness, and the protocol is still public auditable with identifiable abort. The escrow scheme requires cryptographic tools, but our protocol takes advantage of two-level sharing and has the complexity overhead in the offline phase.
Verifiable Offline Phase. Our scheme improves upon the approaches in Overdrive’s LowGear [5] to compute two-level shares of random values and triples in a single, trackable routine. The correctness and fairness of the computation is guaranteed by verifying the zero-knowledge proof (ZKP) of encrypted shares. This creates a checkpoint and adds an extra layer of security and auditability. In addition, our verification covers the generation of multiplicative triples and thus does not need an additional information-theoretic check as in [3].
Related Works. Typical approaches to have fairness involves employing semi-trusted third partiesor other assumptions. [8] proposed an optimistic fair exchange using a TTP, and then it was recently shown that fair computation can be achieved by similar techniques in [9], [10], and [14], in which the output is encrypted and requires a third party to support a verifiable escrow scheme. As the encryption of shares demands excessive overhead in the online phase, this way is too expensive for SPDZ protocols. To save verification overhead, the trusted service is used in [14] but not assumed in this paper, but our work can be adapted in that case. An MPC with identifiable abort is proposed in [12], where fairness is obtained by t-secure secret-sharing when t or more servers are honest. A cryptographic solution, described in [13], is suggested to achieve fairness, but it incurs high complexity and relies on the TTP for decryption. We delay the in-depth comparisons of related works in the last chapter.
2. OVERVIEW
2.1. Security Model
Before designing the specific implementation, we must first establish the security model. Secure computation in the standalone model is defined through the real-ideal world paradigm. Throughout this paper, we will consider protocols that are executed over a synchronous network with static and rushing adversaries. In the real world, all parties communicate through the protocol ฮ , while in the ideal world, the parties send their inputs to an ideal functionality โฑ, also known as the trusted party, which computes the desired function ๐ and returns the result to the parties. In informal terms, the protocol ฮ is considered to securely realize the functionality โฑ if, for every real-world adversary ๐, there exists an ideal-world adversary ๐ฎ (also known as the simulator) such that the joint output distribution of the honest parties and the adversary ๐ in the real world is indistinguishable from the joint output distribution of the honest parties and ๐ฎ in the ideal world.
The security requirements of the protocol are defined through the concept of ideal functionality with Public Accountability with Output Fairness (PAOF). In this setup, there is a polynomial-time honest party ๐๐ด, that can retrieve all the output messages from the trusted party, assess theircorrectness, and output the correct result and/or a set of parties ๐ฟ, that are deemed responsible for any misbehavior. The output of the protocol is in the form of a 2-tuple (๐ฆ, โฅ), (๐ฆ, ๐ฟ), or (โฅ, ๐ฟ).
The Ideal Model with PAOF. Assume ๐ซ = {๐๐}๐โ{๐} to be the set of computing server parties, โ = {๐ผ๐}๐โ{๐} the set of input client parties, ๐ท โ ๐ซ the set of corrupted computing parties, and ๐๐ผ โ โ the set of corrupted input parties. Before the execution, the non-adaptive adversary ๐ decides โ๐ผ โ ๐๐ผ and โ๐, โ๐, โ๐, โ๐ โ ๐. Let โ๐ผ be the set of input parties hanging or giving illformed inputs, โ๐ be the set of computing parties manipulating the computation results, โ๐ be the set of computing parties cheating with the ciphertexts of MUSS ciphers, and โ๐ be the set of computing parties cheating with the plaintexts of MUSS ciphers. With ๐ โค ๐, the evaluation function ๐ has ๐ input and ๐ output gates. The execution of ideal model with PAOF is denoted as โฑOnline, which is briefly described as follows.
Inputs: The i-th partyโs input is denoted by ๐ฅ๐ and ๐ = (๐ฅ1 โฆ , ๐ฅ๐). We assume that all valid inputs are defined in ๐ฝ. The adversary receives an auxiliary input ๐ง. Initialization: The trusted party informs the adversary ๐ of the beginning of execution with the parameter set (๐, ๐ฝ, ๐พ). ๐ sends the lists of malicious parties that corrupt the input and evaluation outcome to the trusted party. This decision is made by ๐ and may depend on (๐, ๐ฝ, ๐พ) and the auxiliary input ๐ง. If misconduct is detected, the trusted party will catch โ๐ and abort the process.
Send Inputs to Trusted Party: Any honest party ๐ผ๐ sends its input ๐ฅ๐ to the trusted party. The corrupted parties, controlled by ๐, may either send their received input or send some other input to the trusted party. This decision is made by ๐ and may depend on the input from the corrupted parties and the auxiliary input. If the invalid input is from ๐ผ๐ โ โ๐ผ , the trusted party will catch ๐ผ๐ and abort the process
Compute: For the i-th gate ๐๐ โ ๐, the trusted party computes ๐ฆ๐ = ๐๐ (๐) for computation gates, and for output gates it sets the outcome to โฅ with replying Reject if the computation or output is corrupted. Otherwise it replies Accept.
Trusted Party Answers Auditor: Upon the request by the auditor, the trusted party outputs โ๐ with
Reject or replies Accept if no cheating is found.
Open: Upon the request by all parties, the trusted party outputs the result ๐, if no misbehaviour occurs. Or it sends out โ๐ if the ciphertexts of MUSS ciphers fail the verification, and it sends โ๐ if the plaintexts of MUSS ciphers are incorrect. Then if the TTP ๐๐ is honest, ๐ will be delivered fairly to all parties. If ๐๐ actively corrupts the decryption, the ideal model only loses fairness, and ๐๐ will be identified.
The Real Model with PAOF. Let us consider the real model in which a real ๐-party protocol ฮ is executed with the set of ๐ computing parties, ๐ input parties, and trusted honest parties ๐๐ด and ๐๐. Let ๐ and ๐๐ผ denote the set of corrupted computing and input parties, controlled by an adversary ๐. In this case, the adversary ๐ sends all messages in place of corrupted parties, and may decide a polynomial-time strategy arbitrarily. In contrast, the honest parties follow the instructions of ฮ . Then the real execution of ฮ on inputs ๐, auxiliary input ๐ง to ๐, and security parameter ๐, denoted by Realฮ ,๐(๐ง),{๐,๐๐ผ }(๐, ฮป), is defined as the output vector of the honest parties and the adversary ๐ from the real execution of ฮ .
Definition 1 (PAOF): Let ๐ be a circuit with inputs ๐. A protocol ฮ is called publicly accountable with output fairness whenever one computing party, ๐๐ด, and ๐๐ are honest, for every non-uniform probabilistic polynomial-time adversary ๐ for the real model, there exist a non-uniform
Figure 1. . Ideal functionalities for the commitment, random oracle, and public bulletin.
probabilistic polynomial-time adversary ๐ for the ideal model โฑOnline such that for every
๐โ ๐ซ, ๐๐ผ โ โ, every balanced vector ๐ โ ๐ฝ ๐, and every auxiliary input ๐ง โ ๐ฝ:
IdealโฑOnline,๐(๐ง),{๐,๐๐ผ }(๐, ฮป) =๐ Realฮ ,๐(๐ง),{๐,๐๐ผ}(๐, ฮป)
in any sense, the following theorem will be proven in the full version by constructing a protocol in
the โฑOnline-hybrid model.
2.2. Important Blocks
Let ๐พ be some Abelian multiplicative subgroup of order ๐ where the DLP is hard to solve (with respect to a given computational security parameter ฮป). The protocol will evaluate a circuit ๐ over ๐ฝ = โค๐ whereas we use the group ๐พ to commit to the output. We let ๐, โ โ ๐พ be two generators of the group ๐พ where ๐ and โ are chosen by some random oracle with a common reference string (CRS) as the input.
We assume a secure point-to-point network between all parties and a broadcast functionality. We also use the commitment functionality โฑCom, the random oracle โฑRnd for giving a random value over ๐ฝ to all parties, and the bulletin โฑBlt to handle all communication, such that nothing in the bulletin can ever be changed or erased. These functionalities are outlined in Figure 1.
2.2.1 Novel Secret-Sharing
The online phase of the computation is conducted using the novel two-level sharing scheme,
which is defined as below:
Definition 1 (MUSS): Let x, y, e โ ๐ฝ, ๐ถ = (๐ผ1, . . . , ๐ผ๐) and then the Multiplicative-Ciphered Secret-Sharing of x is defined as [๐ฅ]๐ถ = ((๐ฅ1, . . . , ๐ฅ๐), (๐ฅฬ1, . . . , ๐ฅฬ๐)) , where the correlation x = โ ๐ผ๐๐๐=1 ๐ฅ๐ = โ๐ฅฬ๐๐=1holds. Since the keys ๐ถ are fixed for the whole session, [๐ฅ]๐ถ can be denoted as [๐ฅ] without confusion. Each player ๐๐ will hold its MUSS shares ๐ฅ๐ and ๐ฅฬ๐ of [๐ฅ]. The key ๐ผ๐ for
๐๐ is additively shared by all players, such that every player has ๐ผ๐๐ and ๐ผ๐ = โ ๐ผ๐๐๐๐=1
. Moreover,we define [๐ฅ] + [๐ฆ] = ((๐ฅ1 + ๐ฆ1, . . . , ๐ฅ๐ + ๐ฆ๐), (๐ฅฬ1+๐ฆฬ1, . . . , ๐ฅฬ๐+๐ฆฬ๐)) , ๐ โ [๐ฅ] = ((๐ โ ๐ฅ1, . . . , ๐โ๐ฅ๐), (๐ โ ๐ฅฬ1, . . . , ๐ โ ๐ฅฬ๐)). We say that [๐ฅ] โ [๐ฆ] if the shares of x, y in [๐ฅ], [๐ฆ] reconstruct to the same value.
Obviously, MUSS is linear. If all parties agree to apply one of defined linear functions, then they can perform these on the MUSS shares without interaction. For the addition between the MUSS share and a public value ๐, one needs to open a random MUSS share (e.g. [๐]) as a gadget, so [๐ + ๐ฅ] = [๐ฅ] + (๐๐โ1) โ [๐].
Security and Privacy. Assuming the sharing of two secrets ๐ = ๐พ๐ + ๐ฟ๐ and ๐โฒ = ๐พ๐โฒ + ๐ฟ๐โฒ, when opening the encoded shares (๐, ๐) and (๐โฒ, ๐โฒ), the question is that, if there is any advantage of guessing the secret ๐ and ๐โฒ. The answer is no. Since [๐ ๐ย ๐โฒ ๐โฒ] is a full-rank matrix with a probability close to 1 [24], ๐ and ๐โฒ are indistinguishable to two independent uniform random samples. Formally, we have the following theorem to show the security of opening encoded shares:
Theorem 1 (Perfect Secrecy): Assume a cipher โ = (๐ฝ๐, ๐ฝ๐,๐พ๐บ, ฮฆ, ฮจ) with message space ๐ฝ๐and key space ๐ฝ๐ that a probabilistic PTTM ฮฆ: ๐ฝ๐ ร ๐ฝ๐ โ ๐ฝ๐๐ and ฮจ: ๐ฝ๐๐ ร ๐ฝ๐ โ ๐ฝ๐ with the definition ฮจ (๐,๐ ) โ ๐๐ ๐ = ๐ = (๐1 โฆ , ๐๐) with ๐ = {๐๐,๐} ๐โ{๐},๐โ{๐} and ๐ = (๐1 โฆ ๐๐) for mโค ๐. If ๐ has full rank, and ๐ is statistically indistinguishable from samples drawn from uniform random distribution in ๐ฝ๐, the scheme โ has perfect secrecy except a negligibleprobability.
The additive sharing with MAC in SPDZ is vulnerable to corruption by two collusive parties who lie about their shares without altering the sum. This renders Lemma 1 in [3] false, as the parties can deviate from the protocol and still pass the check. Despite this, the corruption can still be detected during the audit, and therefore, it does not undermine the security proof of [3]. However, the maliciously controlled share values can reduce the security level and lead to information leakage, which may give an advantage to an eavesdropper. Our work overcomes this issue by using random MUSS ciphers, resulting in a negligible success probability of such cheating.
2.2.2 Commitment Scheme
The proposed protocol forces the result given by the computing parties to be bound by a public witness. First, the parties have to commit the input by sending commitment to the bulletin. Since the commitment scheme uses a one-way function with homomorphic property, the expected commitment of output can be derived by a public auditor. The ways to catch the cheater include checking if each share opens the commitments correctly (as in [3]), and letting the party provide ZKP to prove its ability to give the correct decommitment (as in [12]). Our commitment scheme has a similar format as in [3]: we carry both the MUSS share of secret [๐ฅ] as well as the MUSS share of randomness [๐] of the commitment throughout the whole computation. The commitment handle to a value ๐ฅ is a Pedersen commitment ๐ค(๐,โ)(๐ฅ, ๐) = ๐๐ฅโ๐ with ๐ค(๐,โ)([๐ฅ],[๐]) =((๐๐ฅ1โ๐1, โฆ , ๐๐ฅ๐โ๐๐), (๐๐ฅฬ1โ๐1ฬ, โฆ , ๐๐ฅฬ๐โ๐๐ฬ)). When opening MUSS shares, we reconstruct the
Figure 2. ฮ Online: Protocol for the online phase (Part 1)
secret through either ๐ฅ๐ or ๐ฅฬ๐, and the randomness (๐๐ or ๐ฬ๐) is also revealed. For simplicity, since (๐, โ) is fixed within one session, ๐ค(๐,โ)([๐ฅ],[๐]) can be denoted as ๐ค([๐ฅ],[๐]). As discussed in [4], the computation of commitments is excluded in the circuit evaluation and invoked only after
Figure 3. ฮ Online: Protocol for the online phase (Part 2).
the failure of information-theoretic checks. This โon-demandโ scheme yields favorable saving,
especially when the adversary cheats at a lower rate in a large circuit.
The online phase of our protocol uses โฑ Offline for offline preprocessing that is demonstrated in the full version of the paper. The commands of โฑOffline support single-instruction multiple-data (SIMD) processing with factors ฯ๐. Taking ๐ inputs, the circuit ๐ over ๐ฝ has ฮฝin input gates, ฮฝmul multiplication gates, and ๐ output gates, with ๐ โค ๐, the number of computing parties. The online phase is presented in Figure 2 and Figure 3, which evaluates the circuit ๐ of ๐ input gates and m output gates. The stages Input and Compute are executed for each input and function gate of ๐, respectively, and Initialization, Audit, and Open are invoked only once per circuit.
Initialization. The ideal functionality of the offline phase โฑOffline sets up the MUSS ciphers. The commitment scheme obtains the key from the random oracle ๐ฆ. The public-key infrastructure (PKI) is given by โ and will be elaborated in Sec. 3.3.1. The TTP publishes the global public key ๐๐๐. Each computing party ๐๐ privately keeps the additive shares ๐ผ๐,๐ for ๐ โ {๐}, where we set โ๐โ{๐} ๐ผ๐,๐๐ผ๐. With ๐ถฬ ๐ = {๐ผ๐,๐}๐โ{๐}, ๐๐ commits to ๐ถฬ ๐ toward โฑBlt by ๐๐ = ๐ค(๐,โ)(๐)(๐ถฬ ๐, ๐ฝ๐) and encrypts (๐ถฬ ๐, ๐ฝ๐) to have ๐๐ = โฆ(๐ถฬ ๐, ๐ฝ๐)โง๐๐๐ along with its ZKP ฮถ๐ to show the same plaintexts of ๐๐ and ๐๐ The generation and verification of ฮถ๐ will be provided in Sec. Error! Reference source not found.. Finally, the protocol asks the functionality โฑOffline to generate random values and multiplication triples. โฑOffline has its own check and audit for the output to ensure each player to have the correct share values as they committed to. If the misconduct is detected in โฑOffline, the malicious parties will be identified as ๐ฟ๐, and the protocol will be aborted.
Input. Each input client party in ๐ผ is allowed to submit a value to the computation, where two random values are secretly opened to it. The client can then check that the commitment is correct, and blinds its input using the opened values. Here the protocol can only detect the blatant cheating,such as hanging or ill-formed input, we cannot prevent the malicious input client from giving an incorrect blinded input.ย
Compute (Add and Multiply). The protocol uses the linearity of the MUSS shares to perform linear operations on the shared values, and multiplies two representations using the multiplication triples from the preprocessing using the circuit randomization technique [18]. The multiplication requires to reconstruct values, and this is done by only opening the plain shares to keep the ciphers private. We do not check the recovered values in this stage and defer the check to the output gate.
Compute (Out). First, we check all the multiplications in the circuit by ฮ ChkPln ฯ (Figure 6 and cf.Sec. 3.1.2) for the opened plain shares, where checking โจ๐โฉ, โจ๐โฉ, and โจ๐กโฉ takes random values โจ๐โฒโฉ, โจ๐โฒโฉ, and โจ๐กโฒโฉ as additional input. Then the encoded shares of output are published, and the correlation is checked by using the protocol ฮ ChkEnc ฯ (Figure 4 and cf. Sec. 3.1.1). If any of them fails, the auditor ๐๐ด will invoke Audit. If both checks output Accept, all parties will invoke Open to output the result.
Audit. There are two audit procedures in the online protocol, which will be invoked by ๐๐ด when the precedented information-theoretic checks fail. One is to check the plain shares opened in Multiply, and the other is to check the encode shares for output delivery. If the audit passes, it means that the encoded shares are correct, and we are still going to Open. Please be noted that we do not identify anyone regarding the misbehavior happening in ฮ ChkEncฯ and ฮ ChkPln ฯ since it eventually does not prevent opening.
Open. Once all the parties agree that encoded shares are correct, each computing ๐๐ will broadcast the ciphertext ๐๐, commitment ๐๐, and ZKP ฮถ๐ to all the other parties, so all parties can verify the correctness using an RO ๐ต (cf. Sec. Error! Reference source not found.). If the check fails, the process will be aborted here. If ๐๐ is correct, ๐๐ opens the global secret key, and all computing parties release the plaintext shares ๐ผ๐,๐ ย If ๐๐ gives the correct key, or the plaintexts are correct, the result will be known to everyone. Otherwise ๐๐ or malicious parties that give the corrupted key, ciphertexts, or plaintexts will be identified.
The security of ฮ Online is proven in Sec. 4.1 by the following theorem.
Theorem 2 (Online Security): In the (โฑOffline ,โฑBlt,โฑCom,โฑKGD )-hybrid model with random oracles ๐ฆ and ๐ต, the protocol ฮ Online implements โฑOnline with computational security against any static adversary corrupting all parties except one computing party and the auditor ๐๐ด if the DLP is hard in the group ๐พ.
Next, we introduce present how to check the correlation without opening the cipher, and how to check the opened plain shares used in Multiply.
3.1.1 Check and Audit for Encoded Shares
In the online phase, we use a purely information-theoretic check as the first step of verification. The advantage of checking the correlation before the audit is lower complexity for optimistic models. Moreover, since the correctness of shares is eventually verified by the audit, we will not identify the cheater that corrupts the correlation check. This keeps the design simple. The MUSS correlation can be used to verify the opened shares, and thus we call this โcorrelation checkโ and use it as the first step of the delivery, playing the same role of MAC in [4] as an effective way to verify the output. The correlation check protocol ฮ ChkEncฯ for the published encoded share is summarized in Figure 4 which keeps the share ๐ฅ๐(๐)and cipher key ๐ผ๐ private. The protocol is designed to verify ฯ shares simultaneously by using a random vector ๐. The correctness and soundness are stated as in following lemma, and the proof is omitted due to the length limit.
Figure 4. ฮ ChkEnc ฯ : Protocol for the correlation check of encoded shares
Lemma 1 (Correlation Check for Encoded Shares): The protocol ฮ ChkEnc ฯ is correct, i.e. it accepts if the encoded shares (๐ง๐(๐), ๐๐(๐)) for all ๐ โ {n} and ๐ โ {ฯ} are correctly computed as defined in Def. 2. Moreover, it is sound, i.e. it rejects except with probability ๐(1/๐) in case at least one (๐ง๐(๐), ๐๐(๐)) is notcorrectly computed, or any server deviates from the protocol.
If ฮ ChkEncฯpasses, the encoded shares (๐ง๐(๐), ๐๐(๐)) are verified, and ๐ is ready to be recovered once the key ๐ถ is opened. If it returns Reject, we are not sure if the encoded shares are incorrect, some parties lied on the check outcome, or both happen, so in Audit ๐A needs to verify the expected commitments to find out the cause. The audit protocol is demonstrated by ฮ Audit in Figure 5. If the audit passes, the encoded shares are verified, the protocol still goes to output delivery. If both the check and audit fail, the encoded shares are considered incorrect, and the malicious parties that corrupt the output will be identified in the audit. The audit protocol can be accelerated by the technique in [3].
Not only the encoded shares but also the plain shares opened for multiplication need to go for the audit, if they fail the correlation check. In the online protocol, all shares that need audit are taken care of in one stage, such that batch processing can give additional efficiency improvement. The check of plain shares is more complicated than that of encoded shares and will be described in the
next section.
3.1.2 Check for Plain Shares
The correlation check protects the computations defined in Def. 2, not including the multiplication, because it uses three random values which are obtained from opening the plain shares of โจ๐โฉ, โจ๐โฉ, and โจ๐กโฉ. We need a correlation check for the opened plain shares, which is described as ฮ ChkPlnฯ in Figure 6. The approach is similar except using random shares โจ๐โฉ and secret value ๐ฃ๐ for hiding the encoded shares ๐ง๐(๐) and ๐๐(๐). Its correctness and soundness are stated in following lemma, and the proof is omitted due to the length limit. If ฮ ChkPln ฯ fails, the auditor ๐A will check the commitments in the audit stage.
Figure 5. ฮ Audit: Sub-protocol for the audit of encoded shares.
Lemma 2 (Correlation Check for Plain Shares): The protocol ฮ ChkPlnฯ is correct, i.e. it accepts if the plain shares (๐งฬ๐(๐), ๐ฬ๐(๐)) for all ๐ โ {n} and ๐ โ {ฯ} are correctly computed as defined in Def.2. Moreover, it is sound, i.e. it rejects except with probability ๐(1/๐) in case at least one(๐งฬ๐(๐), ๐ฬ๐(๐)) is not correctly computed, or any server deviates from the protocol.
3.2 Fairness
We see that if the encoded shares of random values and triples are statistically indistinguishable from the samples from uniform distribution, and then those of the immediate values and final results have the same property. This implies fairness property. Proposition 1 (Fairness): The protocolย ฮ Online has public accountability and fairness, that is, themalicious parties know the result only if the honest ones know. If the TTP ๐๐ is malicious and colluding with other adversarial parties, ฮ Online still hasย public accountability in the hybrid modelwith โฑOffline, โฑRnd, โฑCom, โฑBlt, ๐ต, and ๐ฆ, if one computing party and ๐๐ด are honest.
Remark 1: Until Open of ฮ Online, ๐๐ has no information of the output result, since any set of n โ1 shares are indistinguishable to samples from uniform distribution. The adversary gains no advantage from the existence of malicious ๐๐. During the Open stage of ฮ Online, by providing an incorrect key, ๐๐ is only able to prevent the output delivery and cannot modify the output. If ๐๐ is colluding, the adversary will know the result before the honest parties but cannot force the protocol to output wrong results. Besides, if ๐๐ can be assumed to be honest, we can modify the protocol and model such that the global key g eneration only needs to be invoked once. Furthermore, withhonest ๐๐, Step 1 of the Open stage can be done in the offline phase.
3.3 Offline Phase
The protocol ฮ Offline describes the full offline phase in Figure 7. Here we give a view to integrate all ideas that will be discussed later. During Initialize the parties will generate two key pairs to encrypt random MUSS ciphers ฮฑ๐ and the key (๐, โ) for the commitment scheme. With encrypted
Figure 6. ฮ Audit: Sub-protocol for the audit of encoded shares.
ciphers, Single uses the procedure ฮ ComShrฯ which generates random MUSS shares, together with commitments to the values. For multiplication triples, ฮ GenTrpฯ computes a product of the two random values and output them with commitments in Triples. These sub-protocols can be found in Figure 8. If we assume the presence of at least one honest server and that the adversary has a static strategy to corrupt the servers, ฮ CPRZKฯ(Error! Reference source not found.) and ฮ ChkZKP ฯ(Error! Reference source not found.) work as the audit to ensure that the following properties hold:
โข All commitments of shares have ZKPโs. All ciphertexts and commitments of MUSS ciphers
have ZKPโs, which are verified in the online phase.
โข The procedure ฮ CPRZK ๐ was executed such that the ciphertexts of MUSS ciphers were correctly
encrypted from the plaintexts.
โข The procedure ฮ ChkZKP๐ was executed such that the generation of shares followed the protocol, otherwise the malicious parties that cheat in Single and Triples of ฮ Offline were identified. The security of offline protocol is provided as below with the proof deferred to Sec. 4.2. The reader can refer to [26] for the details of ฮ ChkZKP๐, which are omitted here.
Theorem 3 (Offline Security): Let โ be a semi-homomorphic cryptosystem. Then ฮ Offlineimplements โฑ Offline with computational security against any static adversary corrupting all parties but one honest computing party and auditor in the (โฑKGD, โฑCom, โฑBlt)-hybrid model if the DLP is hard in ๐พ.
While we do not consider guaranteed output delivery for the offline phase, we compose playerelimination on the online phase, that invokes a copy of the offline phase to achieve the robustness.Since information is revealed due to the failed audit, everything will need to be generated again fora newly setup copy in the next iteration.
3.3.1 Distributed Encryption
Figure 7. ฮ Offline: Protocol for the offline phase.
We have a semi-homomorphic encryption scheme โ = (๐ช๐ฆ, ๐ค๐๐ผ,๐ฃ๐พ๐ผ,โ,โ) with a message space ๐ฝ and randomness distribution ๐. The ciphertext encrypted by ๐ป is denoted as โฆ๐ฅโง๐๐โถ= ๐ค๐๐ผ๐๐(๐ฅ, ๐) with key pair (๐๐, ๐ ๐). In addition, โ has a predicate ๐๐จ๐ซ:{0, 1}๐(ฮป) ร {0, 1}๐(ฮป) ร {0, 1}๐(ฮป) ร {0, 1}๐(ฮป) โ {0,1}
Figure 8. Sub-protocols for the generation of MUSS shares.
(๐๐, ๐, ๐ฅ, ๐) โ ๐๐จ๐ซ (๐๐, ๐, ๐ฅ, ๐), that maps to 1 if ๐๐$โ ๐ช๐ฆ(1๐), ๐ฅ โ ๐ฝ, ๐$โ ๐ and c โ ๐ค๐๐ผ๐๐(๐ฅ, ๐), but otherwise indicates that at least one of these four conditions are not true. The operator โ then guarantees that ๐ฃ๐พ๐ผ๐ ๐(โฆ๐ฅ + ๐ฆโง๐๐) = ๐ฃ๐พ๐ผ๐ ๐(โฆ๐ฅโง๐๐ โ โฆ๐ฆโง๐๐), whereas we do not use homomorphic multiplication. The scalar multiplication โ guarantees that ๐ฃ๐พ๐ผ๐ ๐(๐ฆ โ โฆ๐ฅโง๐๐) = ๐ฃ๐พ๐ผ๐ ๐( โฆ๐ฅ โ ๐ฆโง๐๐).In addition, we require the interactive functionality โฑKGD that will be used for the preprocessing.The key pair can be securely generated by a key-generation protocol, where the secret key is
Figure 9. Sub-protocols for the generation of MUSS shares.
additively shared by all parties. The ciphertext can be jointly decrypted by yielding the plaintext publicly from all parties, or providing it to a specific party privately.
3.3.2 Generation of Multiplicative Ciphers
The ciphers are jointly generated by the computing parties. The protocol has two key pairs (๐๐๐, ๐ ๐๐) and (๐๐๐, ๐ ๐๐) . The first one is obtained using โฑKGD invoked by all computing parties. The second one is given by the external TTP. Henceforth, each party encrypts his share twice with ๐๐๐ and ๐๐๐ . With ๐ = {1}๐โ{โ}, ๐๐,๐$โ ๐ฝโ, and ๐ข๐$โ ๐ฝ the ciphertext ๐๐,๐ = โฆ๐ โ๐ผ๐,๐โง๐๐๐= ๐ค๐๐ผ๐๐๐(๐ โ ๐ผ๐,๐, ๐๐,๐) is broadcasted for the generation of correlated randomness, andc๐ = ๐ค๐๐ผ๐๐๐({๐ถฬ
๐, ๐ฝ๐}, ๐ข๐) for ๐ถฬ
๐ = {๐ผ๐,๐}iโ{๐} is always held private until the output delivery of online phase. The relation between two ciphertexts is built by committing ๐ผ๐,๐ toward the bulletin. Therefore, we need ZKP to ensure that these encryptions are all derived from the same plaintext. For ๐ค(๐,โ)(๐)(๐ถฬ
๐, ๐ฝ๐) = โ ๐ค(๐๐,โ)(๐ผ๐,๐, ๐ฝ๐)๐๐=1and ๐ถ๐ = {๐ผ๐,๐}๐โ{๐}, and the relation is formalized as: ๐
๐ถ๐๐
,๐(๐,โ) = {(๐ฌ,๐)|๐ฌ = ({๐๐,๐}๐โ{๐}, ๐๐, ๐๐, ๐๐๐,๐๐๐) , ๐ = (๐ถ๐, ๐ฝ๐, ๐๐,๐, ๐ข๐), ๐๐จ๐ซ(๐๐๐, ๐๐,๐, (๐ โ
Figure 10. ๐ฎOnline: Simulator for the protocol ฮ Online.
๐ผ๐,๐), ๐๐,๐) = 1, ๐๐จ๐ซ(๐๐๐, ๐๐,{๐ถฬ ๐, ๐ฝ๐}, ๐ข๐) = 1,{๐๐,๐}๐โ{๐}= {โฆ๐ โ ๐ผ๐,๐โง๐๐๐}๐โ{๐}, c๐ =๐ค๐๐ผ๐๐๐({๐ถฬ ๐, ๐ฝ๐}, ๐ข๐), ๐๐=๐ค(๐,โ)(๐)(๐ถฬ ๐, ๐ฝ๐)}.Based on [19], the ZKP protocol ฮ CPRZK(๐,โ)is described in the conference version of this paper [26].
PROOFS
Figure 11. โฑOffline: Ideal functionality for the offline phase.
4.1 Security of the Online Phase
We will now prove security for the construction from Sec. 3.1 in the UC framework. which implies thatฮ Online implements โฑ Online as in Figure 9 in a hybrid model as defined in Theorem 2. Proof: The prooof the statement is provided by the simulator ๐ฎOnline in Figure 10, which requires at least onehonestparty to run an instance of ฮ Online. The simulator and the honest parties are controlled by ๐. During Initialize, Input, Add, Multiply, ๐ฎOnline performs the same steps as in
Figure 12. ๐ฎOffline: Simulator for the protocol ฮ Offline
ฮ Online and obtains MUSS ciphers ฮฑ๐ from โฑOffline. It also sets up the Random Oracle (RO) for commitment keys and uses a fixed default input ๐ขฬ๐ defined by ๐ for the simulated honest parties during Input.
Every set of at most ๐ โ 1 MUSS encoded and plain shares of a value is uniformly random and does not reveal any information about the shared secret, so it is indistinguishable from a real transcript. During Output, the shares of one simulated honest party are adjusted to match the correct output ๐ฆ from โฑOnline. By obtaining shares from โฑCom, the simulator derived the result ๐ฆโฒ of the simulation, so it can adjust the encoded and plain shares of a simulated honest party. For each encoded share ๐ฆ๐, there exists only one ๐๐ that opens the commitment ๐ธ(๐ฆ๐, ๐๐) correctly, so it is indistinguishable. The same is true for the plain shares.
If the encoded shares generated by โฑOffline follow uniform distribution, the property still holds after any linear operation and scalar multiplication. It follows from Theorem 1 of [24] that except negligible probability o(1/q) the matrix composed of opened encoded shares achieves full rank, leading to perfect secrecy as stated in Theorem 1. This ensures that no information about the output can be gained from every set of MUSS encoded shares of ๐ results. In the ideal world, the simulator outputs Reject in Output if any of the values opened by the dishonest parties was inconsistent, while ฮ Online does so if ฮ ChkPln๐กand ฮ ChkEnc๐ may pass. This occurs with a probability of o(1/p), which is negligible in ฮป.
At the beginning of execution, ๐ decides to stop the execution or affect the outcome by corrupting dishonest parties, then ๐ฎOnline will forward the set of malicious parties to the ideal functionality. During the Audit and Opening stage, we also do exactly the same as in the protocol. The MUSS ciphers ฮฑ๐ given by โฑOffline are uniformly random and thus indistinguishable from the counterparts from โฑOnline.
4.2 Security of the Offline Phase
We will now prove security for the construction from ฮ Offline in Figure 7 in the UC framework,
which implies that ฮ Offline implements โฑOffline described in Figure 11 and Theorem 3.
Proof: The simulator ๐ฎOffline in Figure 12 will generate MUSS shares that are uniformly random, and use the decryption key to fit these shares to the commitments that โฑOffline outputs for the honest parties. Hence, the values of the dishonest parties are consistent with those values that the honest parties obtain and are indistinguishable. If ๐ cheats during the decryption, then the simulator will always abort by running ฮ ChkZKP๐, which guarantee the correctness and soundness,assuming the existence of an honest verifier. We do not directly decrypt the ciphertexts and check MUSS correlation, because it is impossible to differentiate the misbehavior in the proofs and that in the corresponding shares. Since there is at least one honest computing party, the opening will always be invoked if the MUSS correlation is violated. One can see that if the check fails, ๐ฎ makes โฑOffline abort which is consistent with the protocol.
5. DISCUSSIONS AND CONCLUSIONS
Comparisons. We compare our proposed MPC with the other three works in [9], [12], and [13], as summarized in Table 1. Cachin and Camenisch [9] use encrypted circuits for computation where two parties exchange input tokens through verifiable oblivious transfer. Moreover, it uses a TTP to resolve misbehavior. The protocol in [12] uses Shamirโs sharing to construct a public auditable MPC in a lack of the TTP. The fairness is achievable when there exist enough honest parties to recover the secret. Seoโs work in [13] requires all party to provide verifiable encrypted shares to the TTP such that it can verify and decrypt the shares.
Result delivery: โDecrypt to open?โ means if the opening procedure requires decryption, which could be done unconditionally (by โYes, alwaysโ) or in case of detected misbehavior (by โYes,optimisticโ). โVerify firstโ denotes the verification of results before revealing their plaintexts tothe parties, and โReveal firstโ indicates the verification after the revealing. Fairness: [9], [13], and our work are fair if there exists at least one honest party and TTP to detect the misconduct of other malicious parties. However, [12] needs at least t honest party due to threshold- t sharing and the lack of TTP.
Privacy: [12] can protect privacy against at most t โ 1 malicious and colluding computing parties
Table. 1. Comparisons with previous works in various properties.
due to threshold- t sharing. [13] and our work can do with at most n โ 1 malicious ones. [9] is susceptible to input corruption attack, as mentioned in [14]. Furthermore, it should be noted that in the schemes of [9] and this paper TTP has no knowledge of secret, but the TTP in [13] has the access to opening share in plaintext.
Communication: The protocol in [9] needs to check non-interactive ZKP (NIZKP) for each encrypted gate in a garbled circuit for each pair of parties. As a consequence, the number of messages is ๐(โฮปn2|๐|). Its offline number of messages is N/A because of its lack of preprocessing. The delivery procedure in [12] broadcasts NIZKP for the commitment of ach share to each party. Besides, using beaver triples needs to broadcast ๐ messages for each multiplication gate in online computing. The computing parties in [13] have to sends NIZKP of encrypted shares to the TPP, so the factor is only n. However, our work only requires ๐(n2 |๐|) for broadcasting shares in plaintext for result delivery and multiplication. In addition, [12], [13], and ours all use ๐(ฮปn2 |๐|) messages to generate correlated randomness in offline preprocessing, and our work additionally sends ๐(โฮป๐2) to broadcast NIZKP for ฮ CPRZK๐.
Summary. We described a proposed scheme to address the issues of privacy and correctness in multi-party computation protocols. The solution introduced a semi-trusted third party as the key manager and redesigns the secret-sharing mechanism. The design ensures that the malicious parties cannot know the output by causing an abort, and the output delivery is guaranteed by excluding cheaters and restarting the protocol. The offline sub-protocols can be audited publicly by verifying zero-knowledge proofs based on KEA, holding corrupted parties accountable. The security of the protocol can be proven in the universal composability framework.
REFERENCES
[1] I. Damgรฅrd, V. Pastro, N. P. Smart, and S. Zakarias, “Multiparty Computation from Somewhat Homomorphic Encryption,” CRYPTO 2012, pp. 643-662, 2012.
[2] I. Damgard, M. Keller, E. Larraia, V. Pastro, P. Scholl, and N. P. Smart, “Practical Covertly Secure MPC for Dishonest Majority – Or: Breaking the SPDZ Limits,” ESORICS 2013, pp. 1-18, 2013.
[3] C. Baum, I. Damgรฅrd, and C. Orlandi, “Publicly Auditable Secure Multi-Party Computation,” SCN 2014, pp. 175-196, 2014.
[4] G. Spini and S. Fehr, “Cheater Detection in SPDZ Multiparty Computation,” ICITS 2016, pp. 151-176, 2016.
[5] M. Keller, V. Pastro, and D. Rotaru, “Overdrive: Making SPDZ Great Again,” EUROCRYPT 2018, pp. 158-189, 2018.
[6] C. Baum, D. Cozzo, and N. P. Smart, “Using TopGear in Overdrive: A More Efficient ZKPoK for SPDZ,” SAC 2019, pp. 274-302, 2019.
[7] R. Cohen and Y. Lindell, “Fairness versus Guaranteed Output Delivery in Secure Multiparty Computation,” ASIACRYPT 2014, pp. 466-485, 2014.
[8] N. Asokan, V Shoup, and M. Waidner, โOptimistic Fair Exchange of Digital Signatures,โ EUROCRYPT 1998, pp. 591-606, 1998.
[9] C. Cachin and J. Camenisch, โOptimistic Fair Secure Computation (Extended Abstract),โ CRYPTO 2000, LNCS, vol. 1880, pp. 93-111, 2000.
[10]H. Kฤฑlฤฑnรง and A. Kรผpรงรผ, “Optimally Efficient Multi-Party Fair Exchange and Fair Secure Multi-Party Computation,” CT-RSA 2015, pp. 330-349, 2015.
[11]C. Baum, E. Orsini, and P. Scholl, “Efficient Secure Multiparty Computation with Identifiable Abort,”TCC 2016-B, pp. 461-490, 2016.
[12]M. Rivinius, P. Reisert, D. Rausch, and R. Kรผsters, “Publicly Accountable Robust Multi-Party Computation, ” IEEE S&P 2022, pp. 2430-2449, 2022.
[13]M. Seo, “Fair and Secure Multi-Party Computation with Cheater Detection,” Cryptography, vol. 5, no.3, pp. 19-39, 2021.
[14]A. Herzberg and H. Shulman, โOblivious and Fair Server-Aided Two-Party Computation,โ ARES 2012,pp. 75-84, 2012.
[15]M. Bellare and A. Palacio, “The Knowledge-of-Exponent Assumptions and 3-Round Zero-Knowledge Protocols, ” CRYPTO 2004, vol. 3152, pp. 273-289, 2004.
[16]J. Groth, “Short Pairing-Based Non-interactive Zero-Knowledge Arguments, ” ASIACRYPT 2010, col.6477, pp. 321-340, 2020.
[17]R. Cleve, โLimits on the Security of Coin Flips When Half the Processors Are Faulty (extendedabstract),โ STOC, pages 364โ369. ACM, 1986.
[18]D. Beaver, “Efficient Multiparty Protocols Using Circuit Randomization,” CRYPTO โ91, pp. 420-432,1991.
[19]R. Cramer and I. Damgรฅrd, “On the Amortized Complexity of Zero- Knowledge Protocols,” CRYPTO2009, pp. 177-191, 2009.
[20]R. Canetti, “Universally Composable Security: A New Paradigm for Cryptographic Protocols,” FOCS2001, pp. 136-145, 2001.
[21]MP-SPDZ 2022 [online] Available: https://github.com/data61/.
[22]M. Keller, “MP-SPDZ: A Versatile Framework for Multi-Party Computation,” CCS 2020, pp. 1575-1590, 2020.
[23]E. Orsini, “Efficient Actively Secure MPC with a Dishonest Majority: A Survey,” WAIFI 2020, pp. 42-71, 2020.
[24]C. Cooper, “On the distribution of rank of a random matrix over a finite field,” Random Structures and Algorithms, vol. 17, pp. 197-212, 2000.
[25]I. Damgรฅrd, “Non-Interactive Circuit Based Proofs and Non-Interactive Perfect Zero-Knowledge with Preprocessing, ” EUROCRYPT 1992, LNCS, vol. 658, pp. 341-355, 1992.
[26]C. Wang, ” Efficient Fair and Robust SPDZ-Like Multi-Party Computation,” CRYPIS 2023, Available: https://aircconline.com/csit/abstract/v13n13/csit131327.html.sit131327.html.
AUTHORS
Chung-Li Wang
He is a Ph. D. from University of California,
Davis and now a staff engineer with Alibaba, Inc. His research topic includessecure computation, cryptography,error-control coding, and information theory.