Skip to main content
Log in

A theoretical and empirical evaluation of an algorithm for self-healing computation

  • Published:
Distributed Computing Aims and scope Submit manuscript

Abstract

In the problem of reliable multiparty computation (RMC), there are n parties, each with an individual input, and the parties want to jointly compute a function f over n inputs; note that it is not required to keep the inputs private. The problem is complicated by the fact that an omniscient adversary controls a hidden fraction of the parties. We describe a self-healing algorithm for this problem. In particular, for a fixed function f, with n parties and m gates, we describe how to perform RMC repeatedly as the inputs to f change. Our algorithm maintains the following properties, even when an adversary controls up to \(t \le (\frac{1}{4} - \epsilon ) n\) parties, for any constant \(\epsilon >0\). First, our algorithm performs each reliable computation with the following amortized resource costs: \(O(m + n \log n)\) messages, \(O(m + n \log n)\) computational operations, and \(O(\ell )\) latency, where \(\ell \) is the depth of the circuit that computes f. Second, the expected total number of corruptions is \(O(t (\log ^*{m})^2)\), after which the adversarially controlled parties are effectively quarantined so that they cause no more corruptions. Empirical results show that our algorithm can reduce message cost by a factor of 432 when compared with algorithms that are not self-healing.

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

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Fig. 1
Fig. 2
Fig. 3
Fig. 4
Fig. 5
Fig. 6
Fig. 7
Fig. 8
Fig. 9
Fig. 10
Fig. 11
Fig. 12
Fig. 13

Similar content being viewed by others

Notes

  1. Note that RMC differs from secure multiparty computation (MPC) only in that there is no requirement to keep inputs private.

  2. We note that any gate of any fixed in-degree and out-degree can be converted into a fixed number of gates with in-degree 2 and out-degree at most 2.

  3. In particular, if we call COMPUTE \(\mathcal {L}\) times, then the expected total number of messages sent will be \(O(\mathcal {L} (m + n\log n) + t(m \log ^{2} n))\). Since t is fixed, for large \(\mathcal {L}\), the expected number of messages per COMPUTE is \(O(m + n\log {n})\). Similar for the cost of computational operations.

  4. We note that such asymptotic improvements can be significant for large networks. For example, if \(n = 4095\), then our algorithm reduces message cost by a factor of \(O(\log ^2 n) = 336\).

  5. A technical point is that we may need to unmark all parties in a quorum if too many parties in that quorum become marked. However, a potential function argument (Lemma 9) shows that after O(t) markings, all bad parties will be marked.

  6. This probability can be made arbitrarily close to 1 by adjusting the hidden constant in the \(O(\log ^*{m})\) rounds.

References

  1. Fiat, A., Saia, J.: Censorship resistant peer-to-peer networks. Theory Comput. 3(1), 1–23 (2007)

    Article  MathSciNet  MATH  Google Scholar 

  2. Saad, G., Saia, J.: Self-healing Computation. SSS’14, pp. 195–210 (2014)

  3. Hildrum, K., Kubiatowicz, J.: Asymptotically efficient approaches to fault-tolerance in peer-to-peer networks. Distrib. Comput. 2848, 321–336 (2003)

    Article  MATH  Google Scholar 

  4. Naor, M., Wieder, U.: A Simple Fault Tolerant Distributed Hash Table. IPTPS’03, pp. 88–97 (2003)

  5. Scheideler, C.: How to Spread Adversarial Nodes? Rotate! STOC’05, pp. 704–713 (2005)

  6. Fiat, A., Saia, J., Young, M.: Making Chord Robust to Byzantine Attacks. ESA’05, pp. 803–814 (2005)

  7. Awerbuch, B., Scheideler, C.: Towards a scalable and robust DHT. Theory Comput. Syst. 45(2), 234–260 (2009)

    Article  MathSciNet  MATH  Google Scholar 

  8. King, V., Lonargan, S., Saia, J., Trehan, A.: Load Balanced Scalable Byzantine Agreement Through Quorum Building, with Full Information. ICDCN’11, pp. 203–214 (2011)

  9. Frisanco, T.: Optimal Spare Capacity Design for Various Protection Switching Methods in ATM Networks, Vol. 1 of ICC’97, pp. 293–298 (1997)

  10. Iraschko, R.R., MacGregor, M.H., Grover, W.D.: Optimal capacity placement for path restoration in STM or ATM mesh-survivable networks. IEEE/ACM Trans. Netw. 6(3), 325–336 (1998)

    Article  Google Scholar 

  11. Murakami, K., Kim, H.S.: Comparative Study on Restoration Schemes of Survivable ATM Networks, Vol 1 of INFOCOM’97, pp. 345–352 (1997)

  12. Van Caenegem, B., Wauters, N., Demeester, P.: Spare Capacity Assignment for Different Restoration Strategies in Mesh Survivable Networks, Vol. 1 of ICC’97, pp. 288–292 (1997)

  13. Xiong, Y., Mason, L.G.: Restoration strategies and spare capacity requirements in self-healing ATM networks. IEEE/ACM Trans. Netw. 7(1), 98–110 (1999)

    Article  Google Scholar 

  14. Boman, I., Saia, J., Abdallah, C., Schamiloglu, E.: Brief Announcement: Self-healing Algorithms for Reconfigurable Networks, Vol. 4280 of SSS’06, pp. 563–565 (2006)

  15. Saia, J., Trehan, A.: Picking Up the Pieces: Self-healing in Reconfigurable Networks. IPDPS’08, pp. 1–12 (2008)

  16. Hayes, T., Rustagi, N., Saia, J., Trehan, A.: The Forgiving Tree: A Self-healing Distributed Data Structure. PODC’08, pp. 203–212 (2008)

  17. Hayes, T.P., Saia, J., Trehan, A.: The Forgiving Graph: A Distributed Data Structure for Low Stretch Under Adversarial Attack. PODC’09, pp. 121–130 (2009)

  18. Pandurangan, G., Trehan, A.: Xheal: localized self-healing using expanders. Distrib. Comput. 27(1), 39–54 (2014)

    Article  MathSciNet  MATH  Google Scholar 

  19. Sarma, A.D., Trehan, A.: Edge-preserving self-healing: keeping network backbones densely connected. In: IEEE Conference on Computer Communications Workshops (INFOCOM WKSHPS), pp. 226–231 (2012)

  20. Knockel, J., Saad, G., Saia, J.: Self-healing of Byzantine Faults. SSS’13, pp. 98–112 (2013)

  21. Yao, A.C.: Protocols for Secure Computations. SFCS’82, pp. 160–164 (1982)

  22. Beaver, D.: Efficient Multiparty Protocols Using Circuit Randomization. CRYPTO’91, pp. 420–432 (1992)

  23. Ben-Or, M., Goldwasser, S., Wigderson, A.: Completeness Theorems for Non-cryptographic Fault-tolerant Distributed Computation. STOC’88, pp. 1–10 (1988)

  24. Rabin, T., Ben-Or, M.: Verifiable Secret Sharing and Multiparty Protocols with Honest Majority. STOC’89, pp. 73–85 (1989)

  25. Asharov, G., Lindell, Y.: A full proof of the BGW protocol for perfectly-secure multiparty computation. Electron. Colloq. Comput. Complex. 18, 36 (2011)

  26. Prabhakaran, M., Sahai, A.: Secure Multi-Party Computation, vol. 10. IOS Press, Amsterdam (2013)

    MATH  Google Scholar 

  27. Kate, A., Goldberg, I.: Distributed Key Generation for the Internet. ICDCS’09 pp. 119–128 (2009)

  28. Moore, C., Mertens, S.: The Nature of Computation. Oxford University Press Inc, New York, NY (2011)

    Book  MATH  Google Scholar 

  29. Van Der Hofstad, R.: Random Graphs and Complex Networks. Available on http://www.win.tue.nl/rhofstad/NotesRGCN.pdf (2009)

  30. Janson, S., Luczak, T., Rucinski, A.: Random Graphs. Wiley Series in Discrete Mathematics and Optimization. Wiley, New York (2011)

    Google Scholar 

  31. Hadar, J., Russell, W.R.: Rules for ordering uncertain prospects. Am. Econ. Rev. 59(1), 25–34 (1969)

    Google Scholar 

  32. Bawa, V.S.: Optimal rules for ordering uncertain prospects. J. Financ. Econ. 2(1), 95–121 (1975)

    Article  Google Scholar 

  33. Klenke, A., Mattner, L.: Stochastic ordering of classical discrete distributions. Adv. Appl. Probab. 42(2), 392–410 (2010)

    Article  MathSciNet  MATH  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to George Saad.

Additional information

This research is partially supported by NSF Award SATC 1318880.

Rights and permissions

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

Saad, G., Saia, J. A theoretical and empirical evaluation of an algorithm for self-healing computation. Distrib. Comput. 30, 391–412 (2017). https://doi.org/10.1007/s00446-016-0290-y

Download citation

  • Received:

  • Accepted:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s00446-016-0290-y

Keywords

Navigation