Abstract
Most existing Byzantine fault-tolerant State Machine Replication (SMR) protocols rely explicitly on either equivocation detection or quorum certificate formations to ensure protocol safety. These mechanisms inherently require \(O(n^2)\) communication overhead among n participating servers. This work proposes the Unique Chain Rule (UCR), a simple rule for hash chains where extending a block by including its hash in the next block, is treated as a vote for the proposed block and its ancestors. When a block obtains a vote from at least one correct server, we can commit the block and its ancestors. While this idea was used implicitly earlier in conjunction with equivocation detection or quorum certificate generation, this work employs it explicitly to show safety.
We present three applications of UCR. We design Apollo, and Artemis: two novel synchronous SMR protocols with linear best-case communication complexity using round-robin, and stable leaders, respectively as the first two applications. Next, we employ UCR in a black-box fashion toward making any SMR commits publicly verifiable, where clients will no longer have to wait for \(2t+1\) confirmations on every block, where t is the number of Byzantine faults tolerated by the protocol, but can instead collect a UCR proof consisting of \(\min (\kappa , t) +1\) extensions on a block, where \(\kappa \) is a security parameter. This results in faster syncing times for clients as the publicly verifiable proofs can also be gossiped with every new block extension confirming a new block.
An extended version is available at https://eprint.iacr.org/2021/180.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Notes
- 1.
It is possible for SMR protocols to tolerate more than 1/2 faults. However, these SMR protocols cannot safely convince any external observer of statements regarding the latest state of the system due to the dishonest majority [30].
- 2.
- 3.
This list is not exhaustive.
- 4.
Our protocol is adaptively secure, but a different randomization protocol will be needed. There is a trade-off between constant latency and increased signature complexity using [11], or \(O(f\delta )\) latency and constant signature complexity using round-robin.
- 5.
In practice, \(\delta \) varies between pairs of servers, instances of time, and size of the message. However, the analysis here assumes that a single \(\delta \) value is the optimistic delay time, a violation of which implies that we are not in the optimistic scenario.
- 6.
We use the notation from Python.
- 7.
Non-synchronous includes partial synchrony, asynchronous networks, etc. that are not standard synchrony.
- 8.
This assumption can be removed by slightly changing the blaming mechanism to not blame if the local transaction buffer is empty and attempting to send transactions to \(L _v\) on timeout first, and then blaming. An example of this implementation can be found in Concord-BFT [22].
- 9.
In Proof-of-Stake protocols, the stake is defined by the chain, and thus the leaders are publicly verifiable. However, the public verifiability of the chain depends on the underlying SMR used in the protocol.
- 10.
We cannot discuss it in terms of block heights because any number of blocks might be successfully committed within \(\varDelta \) because of the responsiveness of our protocols. For partially synchronous systems it is not possible to guarantee any form of the latest state before GST.
References
Abraham, I., Devadas, S., Dolev, D., Nayak, K., Ren, L.: Synchronous Byzantine agreement with expected O(1) rounds, expected \(O(n^2)\) communication, and optimal resilience. In: Goldberg, I., Moore, T. (eds.) FC 2019. LNCS, vol. 11598, pp. 320–334. Springer, Cham (2019). https://doi.org/10.1007/978-3-030-32101-7_20
Abraham, I., Malkhi, D., Nayak, K., Ren, L.: Dfinity Consensus, Explored. IACR Cryptology ePrint Archive, Report 2018/1153 (2018). www.eprint.iacr.org/2018/1153
Abraham, I., Malkhi, D., Nayak, K., Ren, L., Yin, M.: Sync HotStuff: simple and practical synchronous state machine replication. In: 2020 IEEE Symposium on Security and Privacy (SP), Oakland, May 2020, pp. 106–118. IEEE (2020)
Abraham, I., Nayak, K., Ren, L., Xiang, Z.: Good-case latency of Byzantine broadcast. In: Proceedings of the 2021 ACM Symposium on Principles of Distributed Computing, July 2021, pp. 331–341. ACM, New York (2021)
Abraham, I., Nayak, K., Shrestha, N.: Optimal good-case latency for rotating leader synchronous BFT. In: Bramas, Q., Gramoli, V., Milani, A. (eds.) 25th International Conference on Principles of Distributed Systems, OPODIS 2021. Leibniz International Proceedings in Informatics (LIPIcs), vol. 217, pp. 27:1–27:19. Schloss Dagstuhl – Leibniz-Zentrum für Informatik, Dagstuhl, Germany (2022)
Baudet, M., et al.: State machine replication in the libra blockchain (2019). www.developers.diem.com/papers/diem-consensus-state-machine-replication-in-the-diem-blockchain/2020-05-26.pdf
Bhat, A., Bandarupalli, A., Bagchi, S., Kate, A., Reiter, M.: Unique chain rule and its applications (2021). www.eprint.iacr.org/2021/180, full version of this draft
Boneh, D., Lynn, B., Shacham, H.: Short signatures from the weil pairing. J. Cryptol. 17(4), 297–319 (2004)
Buchman, E., Kwon, J., Milosevic, Z.: The latest gossip on BFT consensus (2019)
Buterin, V., Griffith, V.: Casper the friendly finality gadget (2019)
Cachin, C., Kursawe, K., Shoup, V.: Random Oracles in Constantinople: practical asynchronous Byzantine agreement using cryptography. J. Cryptol. 18(3), 219–246 (2005)
Castro, M., Liskov, B.: Practical Byzantine fault tolerance and proactive recovery. ACM Trans. Comput. Syst. (TOCS) 20(4), 398–461 (2002)
Castro, M., Liskov, B.: Practical Byzantine fault tolerance and proactive recovery. ACM Trans. Comput. Syst. 20(4), 398–461 (2002)
Chan, B.Y., Shi, E.: Streamlet: textbook streamlined blockchains. In: Proceedings of the 2nd ACM Conference on Advances in Financial Technologies, AFT 2020, New York, October 2020, pp. 1–11. Association for Computing Machinery (2020)
Chan, T.H.H., Pass, R., Shi, E.: PaLa: a simple partially synchronous blockchain. IACR Cryptology ePrint Archive, Paper 2018/981 (2018)
Chan, T.H.H., Pass, R., Shi, E.: PiLi: an extremely simple synchronous blockchain. IACR Cryptology ePrint Archive, Paper 2018/980 (2018)
GitHub - vmware/concord-bft: concord Byzantine fault tolerant state machine replication library (2021). www.github.com/vmware/concord-bft
Danezis, G., Kogias, E.K., Sonnino, A., Spiegelman, A.: Narwhal and Tusk: A DAG-based Mempool and Efficient BFT Consensus, vol. 1. Association for Computing Machinery (2021)
David, B., Gaži, P., Kiayias, A., Russell, A.: Ouroboros Praos: an adaptively-secure, semi-synchronous proof-of-stake blockchain. In: Nielsen, J.B., Rijmen, V. (eds.) EUROCRYPT 2018. LNCS, vol. 10821, pp. 66–98. Springer, Cham (2018). https://doi.org/10.1007/978-3-319-78375-8_3
Duan, S., Meling, H., Peisert, S., Zhang, H.: BChain: Byzantine replication with high throughput and embedded reconfiguration. In: Aguilera, M.K., Querzoni, L., Shapiro, M. (eds.) OPODIS 2014. LNCS, vol. 8878, pp. 91–106. Springer, Cham (2014). https://doi.org/10.1007/978-3-319-14472-6_7
Gelashvili, R., Kokoris-Kogias, L., Sonnino, A., Spiegelman, A., Xiang, Z.: Jolteon and Ditto: network-adaptive efficient consensus with asynchronous fallback. arXiv arxiv.org/abs/2106.10362, June 2021
Golan Gueta, G., et al.: SBFT: a scalable and decentralized trust infrastructure. In: 2019 49th Annual IEEE/IFIP International Conference on Dependable Systems and Networks (DSN), June 2019, pp. 568–580. IEEE (2019)
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
Hanke, T., Movahedi, M., Williams, D.: DFINITY technology overview series, consensus system (2018)
Hot-Stuff: hot-stuff/libhotstuff (2021). www.github.com/hot-stuff/libhotstuff
Keidar, I., Kokoris-Kogias, E., Naor, O., Spiegelman, A.: All you need is DAG. In: Proceedings of the 2021 ACM Symposium on Principles of Distributed Computing, New York, July 2021, pp. 165–175. ACM (2021)
Keidar, I., Naor, O., Shapiro, E.: Cordial miners: blocklace-based ordering consensus protocols for every eventuality, August 2022
Lamport, L., Shostak, R., Pease, M.: The Byzantine generals problem. ACM Trans. Program. Lang. Syst. 4(3), 382–401 (1982)
Malkhi, D., Szalachowski, P.: Maximal Extractable Value (MEV) Protection on a DAG. arXiv arXiv:2208.00940, September 2022
Momose, A., Ren, L.: Multi-threshold Byzantine fault tolerance. In: Proceedings of the 2021 ACM SIGSAC Conference on Computer and Communications Security, CCS 2021, New York, November 2021, pp. 1686–1699. Association for Computing Machinery (2021)
Nakamoto, S.: Bitcoin: a peer-to-peer electronic cash system. Technical report. Manubot (2019)
ConsenSys/quorum, September 2021. www.github.com/ConsenSys/quorum. Original-date: 2016–11-14T05:42:57Z
Schneider, F.B.: Implementing fault-tolerant services using the state machine approach: a tutorial. ACM Comput. Surv. 22(4), 299–319 (1990)
Shrestha, N., Abraham, I., Ren, L., Nayak, K.: On the optimality of optimistic responsiveness. In: Proceedings of the 2020 ACM SIGSAC Conference on Computer and Communications Security, New York, October 2020, pp. 839–857. ACM (2020)
Spiegelman, A., Giridharan, N., Sonnino, A., Kokoris-Kogias, L.: Bullshark: DAG BFT protocols made practical. In: Proceedings of the 2022 ACM SIGSAC Conference on Computer and Communications Security, CCS 2022, New York, November 2022, pp. 2705–2718. Association for Computing Machinery (2022)
The DFINITY Team: The Internet Computer for Geeks (2022). https://eprint.iacr.org/2022/087
Tendermint: tendermint/tendermint: Tendermint core (BFT consensus) in Go. www.github.com/tendermint/tendermint
Wood, G., et al.: Ethereum: a secure decentralised generalised transaction ledger. Ethereum Project Yellow Paper, 151, 1–32 (2014)
Yin, M., Malkhi, D., Reiter, M.K., Gueta, G.G., Abraham, I.: HotStuff: BFT consensus with linearity and responsiveness. In: Proceedings of the 2019 ACM Symposium on Principles of Distributed Computing, PODC 2019, New York, July 2019, pp. 347–356. Association for Computing Machinery (2019)
Acknowledgements
We thank Ling Ren and Ittai Abraham for helpful feedback on the applications of UCR, Kartik Nayak for discussions regarding good-case latency, Nibesh Shrestha for feedback on the draft, and Manish Nagaraj for early discussions. This work was supported in part by NIFA award number 2021-67021-34252, the National Science Foundation (NSF) under grant CNS1846316, the United States Department of Agriculture, and the Army Research Lab Contract number W911NF-2020-221.
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2024 International Financial Cryptography Association
About this paper
Cite this paper
Bhat, A., Bandarupalli, A., Bagchi, S., Kate, A., K. Reiter, M. (2024). The Unique Chain Rule and Its Applications. In: Baldimtsi, F., Cachin, C. (eds) Financial Cryptography and Data Security. FC 2023. Lecture Notes in Computer Science, vol 13950. Springer, Cham. https://doi.org/10.1007/978-3-031-47754-6_3
Download citation
DOI: https://doi.org/10.1007/978-3-031-47754-6_3
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-031-47753-9
Online ISBN: 978-3-031-47754-6
eBook Packages: Computer ScienceComputer Science (R0)