Skip to main content

Round-Efficient Byzantine Agreement and Multi-party Computation with Asynchronous Fallback

  • Conference paper
  • First Online:
Theory of Cryptography (TCC 2021)

Part of the book series: Lecture Notes in Computer Science ((LNSC,volume 13042))

Included in the following conference series:

Abstract

Protocols for Byzantine agreement (BA) and secure multi-party computation (MPC) can be classified according to the underlying communication model. The two most commonly considered models are the synchronous one and the asynchronous one. Synchronous protocols typically lose their security guarantees as soon as the network violates the synchrony assumptions. Asynchronous protocols remain secure regardless of the network conditions, but achieve weaker security guarantees even when the network is synchronous.

Recent works by Blum, Katz and Loss [TCC’19], and Blum, Liu-Zhang and Loss [CRYPTO’20] introduced BA and MPC protocols achieving security guarantees in both settings: security up to \(t_s\) corruptions in a synchronous network, and up to \(t_a\) corruptions in an asynchronous network, under the provably optimal threshold trade-offs \(t_a \le t_s\) and \(t_a + 2t_s < n\). However, current solutions incur a high synchronous round complexity when compared to state-of-the-art purely synchronous protocols. When the network is synchronous, the round complexity of BA protocols is linear in the number of parties, and the round complexity of MPC protocols also depends linearly on the depth of the circuit to evaluate.

In this work, we provide round-efficient constructions for both primitives with optimal resilience: fixed-round and expected constant-round BA protocols, and an MPC protocol whose round complexity is independent of the circuit depth.

C.-D. Liu-Zhang—This work was partially carried out while the author was at ETH Zürich.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 89.00
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 119.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Similar content being viewed by others

Notes

  1. 1.

    This is when requiring full security. When striving for weaker security guarantees, such as security with abort, there are solutions that run in a constant number of rounds (e.g. [3]).

  2. 2.

    Achieving such MPC constructions in the expected constant-round realm requires composing protocols with probabilistic termination in a round-preserving fashion. We leave this interesting line of research for future work. See [16, 33] for interesting discussions and challenges in this setting.

  3. 3.

    However, note that our protocols for BA are adaptively secure.

  4. 4.

    When the network is asynchronous, the adversary can delay messages for any arbitrary (but finite) amount of time, and so the protocols may run for longer.

  5. 5.

    For simplicity, we describe our protocols and proofs assuming an ideal coin flip that outputs a common uniform random bit to all honest parties in one round (e.g. [12]). If a q-weak coin flip is used instead, where honest parties agree with probability q, the round complexity increases by a factor of O(1/q).

  6. 6.

    The asynchronous protocol described there has probabilistic termination and runs in an expected constant number of rounds when the network is synchronous. It is straightforward to achieve a variant of the protocol that runs in \(O(\kappa )\) rounds when the network is synchronous, following Sect. 4.2, by substituting the weak consensus protocol with the increased-validity graded consensus protocol from [9].

  7. 7.

    This is without loss of generality, since any arithmetic circuit can be transformed into a boolean one, and the set \(\{\texttt {NAND}\}\) is functionally complete.

  8. 8.

    Yao first introduced garbled circuits in talks related to his paper [46], but they do not explicitly appear in the paper. For a formal treatment, cf. [6].

  9. 9.

    Personal communication with Yehuda Lindell.

  10. 10.

    Respectively, the BA protocol and the adaptation of Dolev-Strong broadcast from [9].

References

  1. Abraham, I., Dolev, D., Halpern, J.Y.: An almost-surely terminating polynomial protocol for asynchronous byzantine agreement with optimal resilience. In: Bazzi, R.A., Patt-Shamir, B. (eds.) 27th ACM PODC, pp. 405–414. ACM, August 2008

    Google Scholar 

  2. Abraham, I., Malkhi, D., Nayak, K., Ren, L., Yin, M.: Sync HotStuff: simple and practical synchronous state machine replication. Cryptology ePrint Archive, Report 2019/270 (2019). https://eprint.iacr.org/2019/270

  3. Ananth, P., Choudhuri, A.R., Goel, A., Jain, A.: Two round information-theoretic MPC with malicious security. In: Ishai, Y., Rijmen, V. (eds.) EUROCRYPT 2019. LNCS, vol. 11477, pp. 532–561. Springer, Cham (2019). https://doi.org/10.1007/978-3-030-17656-3_19

    Chapter  Google Scholar 

  4. Bar-Ilan, J., Beaver, D.: Non-cryptographic fault-tolerant computing in constant number of rounds of interaction. In: Rudnicki, P. (ed.) 8th ACM PODC, pp. 201–209. ACM, August 1989

    Google Scholar 

  5. Beaver, D., Micali, S., Rogaway, P.: The round complexity of secure protocols (extended abstract). In: 22nd ACM STOC, pp. 503–513. ACM Press, May 1990

    Google Scholar 

  6. Bellare, M., Hoang, V.T., Rogaway, P.: Foundations of garbled circuits. In: Proceedings of the 2012 ACM Conference on Computer and Communications Security, pp. 784–796 (2012)

    Google Scholar 

  7. Ben-Or, M., Goldwasser, S., Wigderson, A.: Completeness theorems for non-cryptographic fault-tolerant distributed computation (extended abstract). In: 20th ACM STOC, pp. 1–10. ACM Press, May 1988

    Google Scholar 

  8. Ben-Or, M., Kelmer, B., Rabin, T.: Asynchronous secure computations with optimal resilience (extended abstract). In: Anderson, J., Toueg, S. (eds.) 13th ACM PODC, pp. 183–192. ACM, August 1994

    Google Scholar 

  9. Blum, E., Katz, J., Loss, J.: Synchronous consensus with optimal asynchronous fallback guarantees. In: Hofheinz, D., Rosen, A. (eds.) TCC 2019. LNCS, vol. 11891, pp. 131–150. Springer, Cham (2019). https://doi.org/10.1007/978-3-030-36030-6_6

    Chapter  Google Scholar 

  10. Blum, E., Katz, J., Loss, J.: Network-agnostic state machine replication. Cryptology ePrint Archive, Report 2020/142 (2020). https://eprint.iacr.org/2020/142

  11. Blum, E., Liu-Zhang, C.-D., Loss, J.: Always have a backup plan: fully secure synchronous MPC with asynchronous fallback. In: Micciancio, D., Ristenpart, T. (eds.) CRYPTO 2020. LNCS, vol. 12171, pp. 707–731. Springer, Cham (2020). https://doi.org/10.1007/978-3-030-56880-1_25

    Chapter  Google Scholar 

  12. Cachin, C., Kursawe, K., Shoup, V.: Random oracles in constantinople: practical asynchronous byzantine agreement using cryptography. J. Cryptol. 18(3), 219–246 (2005)

    Google Scholar 

  13. Canetti, R.: Universally composable security: a new paradigm for cryptographic protocols. In: 42nd FOCS, pp. 136–145. IEEE Computer Society Press, October 2001

    Google Scholar 

  14. Canetti, R., Rabin, T.: Fast asynchronous byzantine agreement with optimal resilience. In: 25th ACM STOC, pp. 42–51. ACM Press, May 1993

    Google Scholar 

  15. Chaum, D., Crépeau, C., Damgård, I.: Multiparty unconditionally secure protocols (abstract) (informal contribution). In: Pomerance, C. (ed.) CRYPTO 1987, vol. 293 of LNCS, p. 462. Springer, Heidelberg, August 1988

    Google Scholar 

  16. Cohen, R., Coretti, S., Garay, J., Zikas, V.: Probabilistic termination and composability of cryptographic protocols. J. Cryptol. 32(3), 690–741 (2018). https://doi.org/10.1007/s00145-018-9279-y

    Article  MathSciNet  MATH  Google Scholar 

  17. Coretti, S., Garay, J., Hirt, M., Zikas, V.: Constant-round asynchronous multi-party computation based on one-way functions. In: Cheon, J.H., Takagi, T. (eds.) ASIACRYPT 2016. LNCS, vol. 10032, pp. 998–1021. Springer, Heidelberg (2016). https://doi.org/10.1007/978-3-662-53890-6_33

    Chapter  Google Scholar 

  18. Cramer, R., Damgård, I., Dziembowski, S., Hirt, M., Rabin, T.: Efficient multiparty computations secure against an adaptive adversary. In: Stern, J. (ed.) EUROCRYPT 1999. LNCS, vol. 1592, pp. 311–326. Springer, Heidelberg (1999). https://doi.org/10.1007/3-540-48910-X_22

    Chapter  Google Scholar 

  19. Cramer, R., Damgård, I., Maurer, U.: General secure multi-party computation from any linear secret-sharing scheme. In: Preneel, B. (ed.) EUROCRYPT 2000. LNCS, vol. 1807, pp. 316–334. Springer, Heidelberg (2000). https://doi.org/10.1007/3-540-45539-6_22

    Chapter  Google Scholar 

  20. Damgård, I., Ishai, Y.: Constant-round multiparty computation using a black-box pseudorandom generator. In: Shoup, V. (ed.) CRYPTO 2005. LNCS, vol. 3621, pp. 378–394. Springer, Heidelberg (2005). https://doi.org/10.1007/11535218_23

    Chapter  Google Scholar 

  21. Damgård, I., Nielsen, J.B.: Universally composable efficient multiparty computation from threshold homomorphic encryption. In: Boneh, D. (ed.) CRYPTO 2003. LNCS, vol. 2729, pp. 247–264. Springer, Heidelberg (2003). https://doi.org/10.1007/978-3-540-45146-4_15

    Chapter  Google Scholar 

  22. Deligios, G., Hirt, M., Liu-Zhang, C.-D.: Round-efficient byzantine agreement and multi-party computation with asynchronous fallback. Cryptology ePrint Archive, Report 2021/1141 (2021). https://ia.cr/2021/1141

  23. Dolev, D., Strong, H.R.: Authenticated algorithms for byzantine agreement. SIAM J. Comput. 12(4), 656–666 (1983)

    Google Scholar 

  24. Feldman, P., Micali, S.: Optimal algorithms for byzantine agreement. In: 20th ACM STOC, pp. 148–161. ACM Press, May 1988

    Google Scholar 

  25. Fischer, M.J., Lynch, N.A., Paterson, M.S.: Impossibility of distributed consensus with one faulty process. J. ACM (JACM) 32(2), 374–382 (1985)

    Google Scholar 

  26. Fitzi, M., Hirt, M., Maurer, U.: Trading correctness for privacy in unconditional multi-party computation. In: Krawczyk, H. (ed.) CRYPTO 1998. LNCS, vol. 1462, pp. 121–136. Springer, Heidelberg (1998). https://doi.org/10.1007/BFb0055724

    Chapter  MATH  Google Scholar 

  27. Goldreich, O., Micali, S., Wigderson, A.: How to play any mental game or a completeness theorem for protocols with honest majority. In: Aho, A. (ed.) 19th ACM STOC, pp. 218–229. ACM Press, May 1987

    Google Scholar 

  28. Guo, Y., Pass, R., Shi, E.: Synchronous, with a chance of partition tolerance. In: Boldyreva, A., Micciancio, D. (eds.) CRYPTO 2019. LNCS, vol. 11692, pp. 499–529. Springer, Cham (2019). https://doi.org/10.1007/978-3-030-26948-7_18

    Chapter  Google Scholar 

  29. Hirt, M., Maurer, U.: Robustness for free in unconditional multi-party computation. In: Kilian, J. (ed.) CRYPTO 2001. LNCS, vol. 2139, pp. 101–118. Springer, Heidelberg (2001). https://doi.org/10.1007/3-540-44647-8_6

    Chapter  MATH  Google Scholar 

  30. Hirt, M., Nielsen, J.B., Przydatek, B.: Cryptographic asynchronous multi-party computation with optimal resilience. In: Cramer, R. (ed.) EUROCRYPT 2005. LNCS, vol. 3494, pp. 322–340. Springer, Heidelberg (2005). https://doi.org/10.1007/11426639_19

    Chapter  Google Scholar 

  31. Katz, J., Koo, C.-Y.: On expected constant-round protocols for byzantine agreement. In: Dwork, C. (ed.) CRYPTO 2006. LNCS, vol. 4117, pp. 445–462. Springer, Heidelberg (2006). https://doi.org/10.1007/11818175_27

    Chapter  Google Scholar 

  32. Katz, J., Koo, C.-Y.: On expected constant-round protocols for Byzantine agreement. In: Dwork, C. (ed.) CRYPTO 2006. LNCS, vol. 4117, pp. 445–462. Springer, Heidelberg (2006). https://doi.org/10.1007/11818175_27

    Chapter  Google Scholar 

  33. Lindell, Y., Lysyanskaya, A., Rabin, T.: Sequential composition of protocols without simultaneous termination. In: Ricciardi, A. (ed.) 21st ACM PODC, pp. 203–212. ACM, July 2002

    Google Scholar 

  34. Liu, S., Viotti, P., Cachin, C., Quéma, V., Vukolić, M.: XFT: practical fault tolerance beyond crashes. In: 12th USENIX Symposium on Operating Systems Design and Implementation, pp. 485–500 (2016)

    Google Scholar 

  35. Liu-Zhang, C.-D., Loss, J., Maurer, U., Moran, T., Tschudi, D.: MPC with synchronous security and asynchronous responsiveness. In: Moriai, S., Wang, H. (eds.) ASIACRYPT 2020. LNCS, vol. 12493, pp. 92–119. Springer, Cham (2020). https://doi.org/10.1007/978-3-030-64840-4_4

    Chapter  Google Scholar 

  36. Loss, J., Moran, T.: Combining asynchronous and synchronous byzantine agreement: The best of both worlds. Cryptology ePrint Archive, Report 2018/235 (2018). https://eprint.iacr.org/2018/235

  37. Malkhi, D., Nayak, K., Ren, L.: Flexible byzantine fault tolerance. In: Proceedings of the 2019 ACM SIGSAC Conference on Computer and Communications Security, pp. 1041–1053 (2019)

    Google Scholar 

  38. Nakamoto, S.: A peer-to-peer electronic cash system (2008)

    Google Scholar 

  39. Pass, R., Shi, E: Hybrid consensus: efficient consensus in the permissionless model. In: LIPIcs-Leibniz International Proceedings in Informatics, vol. 91. Schloss Dagstuhl-Leibniz-Zentrum fuer Informatik (2017)

    Google Scholar 

  40. Pass, R., Shi, E.: Thunderella: blockchains with optimistic instant confirmation. In: Nielsen, J.B., Rijmen, V. (eds.) EUROCRYPT 2018. LNCS, vol. 10821, pp. 3–33. Springer, Cham (2018). https://doi.org/10.1007/978-3-319-78375-8_1

    Chapter  Google Scholar 

  41. Patra, A., Choudhary, A., Rangan, C.P.: Simple and efficient asynchronous byzantine agreement with optimal resilience. In: Tirthapura, S., Alvisi, L. (eds.) 28th ACM PODC, pp. 92–101. ACM, August 2009

    Google Scholar 

  42. Pease, M., Shostak, R., Lamport, L.: Reaching agreement in the presence of faults. J. ACM (JACM) 27(2), 228–234 (1980)

    Google Scholar 

  43. Rabin, T., Ben-Or, M.: Verifiable secret sharing and multiparty protocols with honest majority. In: Proceedings of the Twenty-First Annual ACM Symposium on Theory of Computing, pp. 73–85 (1989)

    Google Scholar 

  44. Shostak, R., Pease, M., Lamport, L.: The byzantine generals problem. ACM Trans. Programm. Lang. Syst. 4(3), 382–401 (1982)

    Google Scholar 

  45. Yao, A.C.-C.: Protocols for secure computations (extended abstract). In: 23rd FOCS, pp. 160–164. IEEE Computer Society Press, November 1982

    Google Scholar 

  46. Yao, A.C.-C.: How to generate and exchange secrets (extended abstract). In: 27th FOCS, pp. 162–167. IEEE Computer Society Press, October 1986

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Chen-Da Liu-Zhang .

Editor information

Editors and Affiliations

Appendices

Appendix

A Additional Definitions

Symmetric-Key Encryption. We recall the definition of a symmetric encryption scheme.

Definition 7

A symmetric encryption scheme is a triple \(({\mathsf {Enc}},{\mathsf {Dec}},{\mathsf {Kgn}})\) of algorithms such that:

  • the key generation algorithm \({\mathsf {Kgn}}\) outputs a secret key \(K \in \mathcal {K}\);

  • given a secret key \(K \in \mathcal {K}\) and a plaintext \(m \in \{0,1\}^*\), the encryption algorithm \({\mathsf {Enc}}\) outputs a ciphertext \(\mathcal {C} \ni c := {\mathsf {Enc}}_K(m)\);

  • given a ciphertext \(c \in \mathcal {C}\) and a secret key \(K \in \mathcal {K}\), the decryption algorithm \({\mathsf {Dec}}\) outputs \({\mathsf {Dec}}_K(c) \in \{0,1\}^*\);

  • \({\mathsf {Dec}}_K\left( {\mathsf {Enc}}_K(m)\right) =m\) for all \(m \in \{0,1\}^*\) and \(K \in \mathcal {K}\).

In a dual key encryption scheme, two keys \(K_1, K_2\) are needed to encrypt and decrypt. The semantics are otherwise unchanged.

Secret-Sharing. A secret-sharing scheme allows a dealer D to distribute a secret s among a set \(\mathcal {P}\) of n parties, so that only certain qualified subsets of parties can reconstruct the secret. Other subsets should obtain no information about the secret. A secret-sharing scheme is specified by its access structure \(\varGamma \subseteq 2^\mathcal {P}\): the collection of the qualified subsets of parties.

Definition 8

A secret-sharing scheme for access structure \(\varGamma \) is a pair of protocols \(({\mathsf {Share}}, {\mathsf {Reconstruct}})\)with the following properties.

  • After \({\mathsf {Share} (s)}\), there is a unique value \(s'\) that can be reconstructed, and \(s' = s\) if the dealer is honest. Furthermore, any subset of parties \(S \in \varGamma \) can execute \({\mathsf {Reconstruct}}\) to reconstruct s.

  • After \({\mathsf {Share} (s)}\), any subset of parties \(S \notin \varGamma \) obtains no information about s.

We are interested in t-out-of-n secret-sharing schemes, that is, secret sharing schemes where \(\varGamma := \{S \in 2^\mathcal {P} \,:\, \#S \ge t\}\).

B Gradecast with Asynchronous Weak Validity

We present, using slightly different notation, a 4-round gradecast protocol by Katz et al. [32] and explicitly show that their construction achieves t-weak graded validity (q.v. Definition 5) for all \(t < n/2\) when the network is asynchronous. We refer to the full version [22] for the security proofs.

figure j

Lemma 7

Assume \(t < n/2\). Protocol \(\varPi _\mathsf {GBC} ^t\) achieves the following security guarantees.

  • When run over a synchronous network: t-graded validity and t-graded consistency.

  • When run over an asynchronous network: t-weak graded validity.

C Proof of Lemma 1

Assume that that at most \(t_s\) parties are corrupted in an execution of protocol \(\varPi _{\mathsf {WC}}^{t_a, t_s}\left( \varPi _{\mathsf {GC}}^{\max \{t_a, t_s\}}\right) \) over a synchronous network.

[liveness] Synchrony of the network and \(t_s\)-graded validity of \(\varPi _{\mathsf {GC}}^{\max \{t_a, t_s\}}\) guarantee that each honesty party \(P_j\) sets \(b_{ij} := \varPi _{\mathsf {GC}}^{\max \{t_a, t_s\}}(i) = (v_i, 2)\) each time party \(P_i\) is honest. Therefore, \(\#(S_j^v \sqcup S_j^{1-v}) \ge n -t_s\), so that \(P_j\) sets \(b_j \in \{0, 1, \bot \}\) during output determination and does not output \(\top \). This proves \(t_s\)-liveness.

[validity] Suppose that all honest parties hold the same input v. synchrony of the network and \(t_s\)-graded validity of protocol \(\varPi _{\mathsf {GC}}^{\max \{t_a, t_s\}}\) guarantee that each honesty party \(P_j\) sets \(b_{ij} := \varPi _{\mathsf {GC}}^{\max \{t_a, t_s\}}(i) = (v, 2)\) each time party \(P_i\) is honest. Therefore, \(\#S^v_j \ge n-t_s\) and party \(P_j\) outputs v. It is worth noting that if both \(\#S_j^v \ge n-t_s\) and \(\#S_j^{1-v} \ge n-t_s\), then \(n \ge \#(S_j^v \sqcup S_j^{1-v}) \ge 2n - 2t_s > n\), which is absurd. This proves \(t_s\)-validity.

[weak consistency] Suppose an honest party \(P_j\) outputs \(v \in \{0,1\}\). There are two possibilities. The first is that

$$\begin{aligned} {\left\{ \begin{array}{ll} \begin{aligned} &{}\#S_j^{v} \ge n - t_s - t_a\\ &{}\#(S^{1-v}_j \sqcup U_j^{1-v}) \le t_a. \end{aligned} \end{array}\right. } \end{aligned}$$
(1)

If \(P_i\) is another honest party, then synchrony of the network and \(t_s\)-graded consistency of \(\varPi _{\mathsf {GBC}}^{\max \{t_a,t_s\}}\) guarantee that \( \#S_i^{1-v} \le t_a < n - t_s - t_a \le n - t_s.\) If this was not the case, by \(t_s\)-graded consistency of \(\varPi _{\mathsf {GBC}}^{\max \{t_a,t_s\}}\) we would have \(\#(S^{1-v}_j \sqcup U_j^{1-v}) > t_a\), which is a contradiction. Therefore, party \(P_i\) does not output \(1-v\). The second case is that \(\#S_j^v \ge n-t_s\). In this case (reasoning as above), for an honest player \(P_i\)

$$\begin{aligned} {\left\{ \begin{array}{ll} \#(S_i^{v} \sqcup U_i^{v}) \ge n - t_s > 2t_a \ge t_a\\ \#S_i^{1-v} < n - t_s \end{array}\right. } \end{aligned}$$
(2)

so that \(P_i\) does not output \(1-v\). This proves \(t_s\)-weak consistency.

Assume that that at most \(t_a\) parties are corrupted in an execution of protocol \(\varPi _{\mathsf {WC}}^{t_a, t_s}\left( \varPi _{\mathsf {GC}}^{\max \{t_a, t_s\}}\right) \) over an asynchronous network.

[weak validity] Assume all honest parties hold the same input v. Suppose an honest party \(P_j\) does not output \(\top \). This means \(\#(S_j^v \sqcup S_j^{1-v}) \ge n-t_s\). By \(t_a\)-weak graded validity of protocol \(\varPi _{\mathsf {GC}}^{\max \{t_a, t_s\}}\), party \(P_j\) sets \(b_{ij} := \varPi _{\mathsf {GC}}^{\max \{t_a, t_s\}}(i) \in \{v, \top \}\) for each honest party \(P_i\). Therefore, \(\#S_j^{1-v} \le t_a < n - t_s - t_a \le n - t_s\) (so that party \(P_j\) does not output \(1-v\)), but also

$$\begin{aligned} {\left\{ \begin{array}{ll} \#S_j^{v} \ge n-t_s - \#S_j^{1-v} \ge n - t_s - t_a\\ \#(S_j^{1-v} \sqcup U_j^{1-v}) \le t_a \end{array}\right. } \end{aligned}$$
(3)

so that party \(P_j\) outputs v. This proves \(t_a\)-weak validity and concludes the proof of the lemma.

D A Simpler Weak-Consensus with Asynchronous Weak Validity for \(t_a + 2t_s<n\) and \(t_a\le t_s\)

We show a simple 3-round construction for a weak consensus protocol that is 1) \(t_s\)-secure in a synchronous network, and 2) \(t_a\)-weakly valid in an asynchronous network, under the stronger assumptions that \(t_a + 2t_s < n\), \(t_a \le t_s\) (these assumptions are optimal for BA with full asynchronous fallback [9]). The public key infrastructure available allows parties to forward cryptographic evidence (in the form of digital signatures) that they received a given message from other parties by appropriately combining this evidence to generate what we refer to as certificates (see e.g. [30]). An \(\ell \)-certificate on a bit b is simply a concatenation of at least \(\ell \) valid signatures on b from distinct parties.

figure k

Lemma 8

Assume \(t_a + 2t_s < n\) and \(t_a \le t_s\). Protocol \(\varPi _{{\mathsf {WC}}}^{t_a, t_s}\) achieves the following security guarantees.

  • When run over a synchronous network: \(t_s\)-liveness, \(t_s\)-validity, and \(t_s\)-weak consistency.

  • When run over an asynchronous network: \(t_a\)-weak validity.

Proof

Assume that at most \(t_s\) parties are corrupted in an execution of \(\varPi _{{\mathsf {WC}}}^{t_a, t_s}\) over a synchronous network.

[liveness] Each honest party \(P_j\) sends message \((v_j, \mathsf {Sgn} (v_j, \texttt {pk}_j))\) to all parties at in Round 1. synchrony of the network guarantees all these messages are delivered within the round. It follows that, in Round 2, \(\#S_j \ge n - t_s\) for each honest party \(P_j\), so that \(P_j\) sets \(b_j = \bot \). This proves \(t_s\)-liveness, as \(b_j\) is never set to \(\top \).

[validity] Assume each honest party holds the same input \(v \in \{0, 1\}\). In Round 1, each honest \(P_j\) sends message \((v_j, \mathsf {Sgn} (v_j, \texttt {pk}_j))\) to all parties. synchrony of the network guarantees that \(\#S_j^v \ge n - t_s \ge n - t_s - t_a\) for each honest party \(P_j\), so that \(P_j\) sets \(b_j = v\) in Round 2. Notice that \(\#S_j^{1-v} \le t_s < n - t_s - t_a\). No honest party signs bit \(1-v\) at any point in the execution of the protocol, and the adversary cannot forge signatures on behalf of honest parties. Together with \(t_s < n - t_s -t_a\), this implies that no \((n-t_s-t_a)\)-certificate on bit \(1-v\) can be produced by corrupted parties, so that no honest party \(P_j\) sets \(b_j = \bot \) in Round 3. In conclusion, each honest party \(P_j\) outputs \(b_j = v\). This proves \(t_s\)-validity.

[weak consistency] Assume an honest party \(P_j\) outputs v. This means \(P_j\) sets \(b_j = v\) in Round 2, and sends a \((n-t_s-t_a)\)-certificate on v to all parties in Round 3. synchrony of the network guarantees that this certificate is delivered to all honest parties by the end of the round. In conclusion, no honest party outputs \(1-v\). This proves \(t_s\)-weak consistency.

Assume that that at most \(t_a\) parties are corrupted in an execution of \(\varPi _{{\mathsf {WC}}}^{t_a, t_s}\) over an asynchronous network.

[weak validity] Assume each honest party holds the same input \(v \in \{0, 1\}\) and assume an honest party \(P_j\) does not output \(\top \). This means \(\#S_j \ge n-t_s\). Notice that \(S_j = S_j^{v} \sqcup S_j^{1-v}\). The adversary cannot forge honest parties’ signatures, which guarantees \(\#S_j^{1-v} \le t_a\); this implies \(\#S_j^v \ge \#S_j - t_a \ge n - t_s - t_a\), so that \(P_j\) sets \(b_j = v\) in Round 2. The assumption \(t_a \le t_s\) guarantees that \(t_a \le t_s < n - t_s - t_a\), which means corrupted parties cannot produce an \((n - t_s - t_a)\)-certificate on \(1-v\). In conclusion, party \(P_j\) outputs \(b_j = v\) in Round 3. This proves \(t_a\)-weak validity and concludes the proof of the lemma.    \(\square \)

E Proof of Lemma 2

Assume that that at most \(t_s\) parties are corrupted in an execution of \(\varPi _{\mathsf {SBA}}^{t_a, t_s}\) over a synchronous network.

[liveness] We claim that each honest party \(P_j\) inputs \(b_j \in \{0,1\}\) to the execution of \(\varPi _{\mathsf {WC}}^{t_a, t_s}\) in iteration k (for all k). This holds trivially for \(k=1\). Suppose it holds for k. synchrony of the network guarantees that, by \(t_s\)-liveness of \(\varPi _{\mathsf {WC}}^{t_a, t_s}\), \(b_j \in \{0, 1, \bot \}\) for each honest party \(P_j\) after running weak-consensus in iteration k. Since \({\mathsf {coin}}_k \in \{0,1\}\), then \(b_j \in \{0,1\}\) for each honest party \(P_j\) at the end of iteration k, so that \(P_j\) inputs \(b_j \in \{0,1\}\) to the execution of \(\varPi _{\mathsf {WC}}^{t_a, t_s}\) in iteration \(k+1\). The claim follows by induction on k. Therefore, after iteration \(\kappa \), party \(P_j\) outputs \(b_j \in \{0,1\}\). This proves \(t_s\)-liveness.

[validity] Assume each honest party \(P_j\) holds the same input \(v \in \{0,1\}\). We claim that each honest party \(P_j\) inputs v to the execution of \(\varPi _{\mathsf {WC}}^{t_a, t_s}\) in iteration k (for all k). This holds trivially for \(k=1\). Suppose it holds for k. synchrony of the network guarantees that, by \(t_s\)-validity of \(\varPi _{\mathsf {WC}}^{t_a, t_s}\), \(b_j = v \in \{0,1\}\) for each honest party \(P_j\) after round the execution of weak-consensus in iteration k. Therefore, party \(P_j\) ignores the value \(\mathsf {coin} _k\) and keeps \(b_j = v\) at the end of the iteration. In conclusion, party \(P_j\) inputs v to the execution of \(\varPi _{\mathsf {WC}}^{t_a, t_s}\) in iteration \(k+1\). The claim follows by induction on k. Therefore, after iteration \(\kappa \), party \(P_j\) outputs \(b_j =v\). This proves \(t_s\)-validity.

[consistency] synchrony of the network guarantees that, by \(t_s\)-weak consistency of \(\varPi _{\mathsf {WC}}^{t_a, t_s}\), after the execution of weak consensus in iteration k, there is \(b^k \in \{0, 1\}\) such that \(b_j = b^k\) or \(b_j = \bot \) for each honest party \(P_j\) (for all k). Since \(\mathsf {coin} _k\) is a uniformly random bit (independent of \(b^k\), since the adversary only learns the value \(\mathsf {coin} _k\) after each honest party has produced output from weak consensus in iteration k), then \(\mathbb {P}(\mathsf {coin} _k = b^k) = 1/2\) for all k. Furthermore, synchrony of the network guarantees that, by \(t_s\)-validity of \(\varPi _{\mathsf {WC}}^{t_a, t_s}\), if \(\mathsf {coin} _k =b^k\) for some k, then \(b_j = b^k\) at the end of iteration k for each honest party \(P_j\) and for all \(k' \ge k\) (the proof is by induction on \(k'\) as above, and we omit it).

For each positive integer k, let \(\mathsf {agree} _k\) denote the event that there exists \(b \in \{0,1\}\) such that \(b_j = b\) for each honest party \(P_j\) at the end of iteration k. We denote by \(\mathsf {agree} _{0}\) the event that all honest parties hold the same input. Furthermore, let \(\mathsf {abort} _k\) denote the event that some honest party \(P_j\) outputs \(\bot \) from the execution of \(\varPi _{{\mathsf {WC}}}^{t_a, t_s}\) in iteration k. For each \(k \ge 0\) we have

$$\begin{aligned} \begin{aligned} \mathbb {P}(\mathsf {agree} _{k+1}\,|\,\mathsf {agree} _k^c)&= \mathbb {P}\big ( \mathsf {agree} _{k+1} \cap (\mathsf {abort} _{k+1} \sqcup \mathsf {abort} _{k+1}^c)\,|\,\mathsf {agree} _k^c\big )\\&= \mathbb {P}\big ( \mathsf {agree} _{k+1} \cap \mathsf {abort} _{k+1}\,|\,\mathsf {agree} _k^c\big )\\&= \mathbb {P}\big (\mathsf {agree} _{k+1}\,|\,\mathsf {abort} _{k+1}\cap \mathsf {agree} _k^c\big )\mathbb {P}\big (\mathsf {abort} _{k+1}\big )\\&+\mathbb {P}\big (\mathsf {agree} _{k+1}\,|\,\mathsf {abort} _{k+1}^c \cap \mathsf {agree} _k^c\big )\mathbb {P}\big (\mathsf {abort} _{k+1}^c\big )\\&= \mathbb {P}\big (\mathsf {coin} _{k+1}= b^{k+1}\big )\mathbb {P}\big (\mathsf {abort} _{k+1}\big )+ 1 \cdot \mathbb {P}\big (\mathsf {abort} _{k+1}^c\big )\\&= \frac{1}{2}\left( \mathbb {P}\big (\mathsf {abort} _{k+1}\big ) + \mathbb {P}\big (\mathsf {abort} _{k+1}^c\big )\right) + \frac{1}{2}\mathbb {P}\big (\mathsf {abort} _{k+1}^c\big ) \ge \frac{1}{2}. \end{aligned} \end{aligned}$$
(4)

Notice, once again, that the above equality \(\mathbb {P}\big (\mathsf {agree} _{k+1}\,|\,\mathsf {abort} _{k+1} \cap \mathsf {agree} _k^c\big ) = \mathbb {P}\big (\mathsf {coin} _{k+1}= b^{k+1}\big )\) holds because \(t_s\) corrupted parties alone cannot learn \(\mathsf {coin} _{k+1}\) in advance, so that the output of honest parties in the execution of \(\varPi _{{\mathsf {WC}}}^{t_a, t_a}\) is independent from the value of \(\mathsf {coin} _{k+1}\) in iteration \(k+1\). The observation that \(\mathsf {agree} _k^c \supseteq \mathsf {agree} _{k+1}^c\) allows us to finally estimate

(5)

This proves \(t_s\)-consistency.

Assume that that at most \(t_a\) parties are corrupted in an execution of \(\varPi _{\mathsf {SBA}}^{t_a, t_s}\) over an asynchronous network.

[weak validity] Assume each honest party \(P_j\) holds the same input \(v \in \{0,1\}\). We claim that each honest party \(P_j\) inputs v to the execution of \(\varPi _{\mathsf {WC}}^{t_a, t_s}\) in iteration k (for all k). The claim is trivially true for \(k=1\). Assume it is true for k. By \(t_a\)-weak validity of protocol \(\varPi _{\mathsf {WC}}^{t_a, t_s}\), each honest party \(P_j\) outputs either v or \(\top \) from \(\varPi _{\mathsf {WC}}^{t_a, t_s}\) in iteration k. Therefore, each honest party \(P_j\) ignores the coin-flip value and sets \(b_j = v\) at the end of iteration k, and therefore inputs \(b_j = v\) to the following execution of \(\varPi _{\mathsf {WC}}^{t_a, t_s}\) in iteration \(k+1\). The claim follows by induction on k. In conclusion, each honest party outputs \(b_j = v\) at the end of iteration \(\kappa \). This proves \(t_a\)-weak validity.

F Synchronous Broadcast with Asynchronous Weak Validity

We now explain how to obtain a broadcast protocol that is \(t_s\)-secure in a synchronous network and \(t_a\)-weakly valid in an asynchronous network, starting from a BA with the same guarantees. In addition to the rounds required by the BA, our construction runs only 2 rounds. In particular, given a fixed-round BA, it yields a fixed-round broadcast protocol. The opposite construction (BA from broadcast) is shown in [9]. Together, these result completely resolve the question of equivalence of BA and broadcast with asynchronous weak validity.

The idea, well known in the synchronous model, is for the sender \(P^*\) to send their input to all parties in the first round; parties then run a Byzantine agreement protocol on the values they received to ensure consistency. However, this construction cannot be directly translated to our setting: if an honest party \(P_j\) does not receive a message from the sender \(P^*\) within the first round, then \(P^*\) could be corrupted, or the adversary might have delayed the message. In the former scenario, an easy patch would be to input a default value to the BA protocol, but this solution does not allow to achieve weak validity in the latter scenario. On the other hand, not inputting any message to the Byzantine agreement protocol fails to provide consistency if the network is synchronous.

We solve this problem by having parties run two BAs: one to agree on whether the sender behaved honestly, and one to agree on a received value. These executions can be carried out in parallel for improved round efficiency.

Let \(\varPi _{{\mathsf {SBA}}}^{t_a, t_s}\) be a synchronous Byzantine agreement protocol (for example, our protocol with asynchronous weak validity from Sect. 4.2) which runs in s rounds.

figure l

Lemma 9

Assume protocol \(\varPi _{{\mathsf {SBA}}}^{t_a, t_s}\) achieves the following security guarantees.

  • When run over a synchronous network: \(t_s\)-validity and \(t_s\)-consistency.

  • When run over an asynchronous network: \(t_a\)-weak validity.

Then, protocol \(\varPi _{{\mathsf {SBC}}}^{t_a, t_s}\left( \varPi _{{\mathsf {SBA}}}^{t_a, t_s}\right) \) achieves the following security guarantees.

  • When run over a synchronous network: \(t_s\)-validity and \(t_s\)-consistency.

  • When run over an asynchronous network: \(t_a\)-weak validity.

Proof

Assume that that at most \(t_s\) parties are corrupted in an execution of \(\varPi _{{\mathsf {SBC}}}^{t_a, t_s}\left( \varPi _{{\mathsf {SBA}}}^{t_a, t_s}\right) \) over a synchronous network.

[validity] If the sender \(P^*\) is honest, they send \((v^*, \mathsf {Sgn} (v^*, \texttt {pk}^*))\) to all parties in round 1. synchrony of the network guarantees these messages are delivered within the round, so that each honest party \(P_j\) sets \(\mathsf {received-input} _j :=1\) and \(b_j := v^*\) in round 1. By \(t_s\)-validity of \(\varPi _{\mathsf {SBA}}^{t_a, t_s}\), each honest party sets \(\mathsf {received-input} _j := \varPi _{\mathsf {SBA}}^{t_a, t_s}( \mathsf {received-input} _j = 1) = 1\) and \(b_j := \varPi _{\mathsf {SBA}}^{t_a, t_s}(b_j = v^*) = v^*\) in round \(3+s\), and outputs \(b_j = v^*\) from \(\varPi _{{\mathsf {SBC}}}^{t_a, t_s}\left( \varPi _{{\mathsf {SBA}}}^{t_a, t_s}\right) \). This proves \(t_s\)-validity.

[consistency] Assume an honest party \(P_j\) outputs \(v \ne \top \). This means that \(\mathsf {received-input} _j\) equals 1 in round \(3+s\). Then, \(t_s\)-consistency of \(\varPi _{{\mathsf {SBC}}}^{t_a, t_s}\) guarantees \(\mathsf {received-input} _i = 1\) in round \(3+s\) for each honest party \(P_i\). Furthermore, \(t_s\)-validity of \(\varPi _{{\mathsf {SBC}}}^{t_a, t_s}\) guarantees that at least one honest party \(P_k\) inputs \(\mathsf {received-input} _k =1\) to \(\varPi _{{\mathsf {SBC}}}^{t_a, t_s}\) in round 3. This means party \(P_k\) received a validly signed message from the sender in round 1, and forwarded this message to all parties in round 2. synchrony of the network then guarantees \(b_i \ne \top \) for each honest party \(P_i\) in round 3. Since each honest party provides a valid input, \(t_s\)-consistency of \(\varPi _{{\mathsf {SBC}}}^{t_a, t_s}\) guarantees that \(b_i = b_j = v\) in round \(3+s\) for each honest party \(P_i\), so that \(P_i\) outputs v from \(\varPi _{{\mathsf {SBC}}}^{t_a, t_s}\left( \varPi _{{\mathsf {SBA}}}^{t_a, t_s}\right) \). This proves \(t_s\)-consistency.

Assume that that at most \(t_a\) parties are corrupted in an execution of protocol \(\varPi _{{\mathsf {SBC}}}^{t_a, t_s}\left( \varPi _{{\mathsf {SBA}}}^{t_a, t_s}\right) \) over an asynchronous network.

[weak validity] Assume the sender \(P^*\) is honest and has input \(v^*\). Up to (and including) round 3, an honest party \(P_j\) sets \(b_j :=v \ne \top \) only if they receive a message \((v, \sigma )\) such that \(\mathsf {Vfy} (v, \sigma , \texttt {pk}^*) =1\). Since corrupted parties cannot forge an honest sender’s signature, \(b_j \in \{v^*, \top \}\) in round 3 for each honest party \(P_j\). Observe that, if \(b_j = \top \) in round 3, party \(P_j\) does not send a message whenever they are supposed to share their input in \(\varPi _{{\mathsf {SBC}}}^{t_a, t_s}\); this does not break \(t_a\)-weak validity of \(\varPi _{{\mathsf {SBC}}}^{t_a, t_s}\), since messages can be arbitrarily delayed by the adversary. Therefore, \(t_a\)-weak validity of \(\varPi _{{\mathsf {SBC}}}^{t_a, t_s}\) guarantees that \(b_j \in \{v^*, \top \}\) in round \(3+s\) for each honest party \(P_j\). In conclusion, each honest party \(P_j\) outputs either \(v^*\) or \(\top \) from \(\varPi _{{\mathsf {SBC}}}^{t_a, t_s}\left( \varPi _{{\mathsf {SBA}}}^{t_a, t_s}\right) \). This proves \(t_a\)-weak validity, and concludes the proof of the lemma.    \(\square \)

G Proof of Lemma 6

We sketch the proof. Assume at most \(t_s\) parties are corrupted and the network is synchronous. Then, \(t_s\)-security of \(\varPi _{\mathsf {HMPC}}^{t_s, t_a}\) guarantees that each party receives the same correct output from the computation of \(f_\mathsf {GRBL} \) in Step 1 (which takes into account the input of all honest parties). Therefore, each honest party encrypts their (authenticated) shares of each gate of \(\mathsf {circ} _g\) and sends the resulting ciphertexts to all parties. synchrony of the network guarantees that each honest party receives at least \(n - t_s > t_s\) valid (i.e. such that the information checking protocol succeeds) and consistent shares for each gate within one extra round. Since dishonest parties cannot forge authentication vectors, even a rushing adversary cannot compromise the reconstruction of the function table entries. Together with the masked inputs and the relative keys for each input wire, as well as the masks for the accessible output wires, the (only) reconstructed function table entry for each gate allows each honest party \(P_j\) to evaluate the garbled version of \(\mathsf {circ} _g\) locally and recover the output. In particular, each honest party terminates.

Now, Assume at most \(t_a\) parties are corrupted and the network is asynchronous. Then, \(t_a\)-security of protocol \(\varPi _{\mathsf {HMPC}}^{t_s, t_a}\left( {\mathsf {circ}}_{f_{\mathsf {GRBL}}}; {\mathsf {circ}}_g; b_j\right) \) guarantees that each honest party receives the same output (taking into account the inputs of at least \(n-t_s\) honest parties) from the computation of \(f_\mathsf {GRBL} \) in Step 1. Notice that if \(\phi _j = 0\) (i.e. if \(P_j\) has not yet sent their encrypted shares), then party \(P_j\) does not terminate. Eventual delivery then guarantees that each honest party receives at least \(n-t_a \ge n - t_s \ge t_s+1\) valid and consistent encrypted shares of each function table entry of \(\mathsf {circ} _g\). Since dishonest parties cannot forge authentication vectors, each set of \(t_s+1\) valid shares identifies the same secret. Together with the masked inputs and the relative keys for each input wire, as well as the masks for the accessible output wires, the (only) reconstructed function table entry for each gate allows each honest party \(P_j\) to evaluate the garbled version of \(\mathsf {circ} _g\) locally and recover the output. In particular, each honest party terminates.

Rights and permissions

Reprints and permissions

Copyright information

© 2021 International Association for Cryptologic Research

About this paper

Check for updates. Verify currency and authenticity via CrossMark

Cite this paper

Deligios, G., Hirt, M., Liu-Zhang, CD. (2021). Round-Efficient Byzantine Agreement and Multi-party Computation with Asynchronous Fallback. In: Nissim, K., Waters, B. (eds) Theory of Cryptography. TCC 2021. Lecture Notes in Computer Science(), vol 13042. Springer, Cham. https://doi.org/10.1007/978-3-030-90459-3_21

Download citation

  • DOI: https://doi.org/10.1007/978-3-030-90459-3_21

  • Published:

  • Publisher Name: Springer, Cham

  • Print ISBN: 978-3-030-90458-6

  • Online ISBN: 978-3-030-90459-3

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics