School of Computer Science
1, Cleveland St.,
NSW 2006 Sydney
Follow @VincentGramoli
Home | Research | Software | Publications | Blog |
Blockchain technologies rely on a large body of complex research topics like the Byzantine consensus problem. Although such a problem was defined four decades ago, its subtle ramifications are largely misunderstood by many blockchain developers, let alone application programmers who build upon these blockchains. These misconceptions are dramatic as they prevent these applications from working efficiently and they make them vulnerable to attacks. In a recent chapter [1], we debunk the 10 major myths about blockchain consensus by evaluating three distributed ledgers, Hyperledger Fabric, Redbelly Blockchain and R3 Corda, as well as three important consensus algorithms, BFT-SMaRt, Democratic BFT and HotStuff. Below we discuss the five first myths.
For blockchain to become securely interoperable, one must first solve the cross-chain payment problem. Not only should one user of a blockchain be able to pay the user of another blockchain successfully, but it should do so without assuming that messages always take less than some period to arrive. Otherwise the solution can be easily hacked. It turns out that the general problem is unsolvable but, fortunately, there exists a solution to a variant of this problem.
Most blockchains have an inherently centralised design, which restricts their scalability. It is the consequence of research on the consensus problem from the 80s and the influential leader-based consensus protocols from the 2000s. We had to wait until until 2021 for the problem to be redefined in a decentralised way for blockchains to scale to large networks.
With the digital revolution, services are becoming decentralised. This trend is driven by users wanting to retain the custody of their personal identifiable information or data, the growing use of Web3 over the Internet, and the desire for nations to become self-sovereign in a globalised world. In this decentralised setting, tech-savvy participants regularly front-run others to get an unfair access to resources before their victims. This unfair access impacts financial resources every day but could soon generalize to resources that are vital to a nation’s economy (e.g., energy). Here we discuss the problem and list recent cryptographic solutions to ensure a fair access to resources.
As a new flaw in the Solana consensus protocol will be presented in four days [1], it might be the right time to discuss the importance of formal methods. Update: 2 days later my colleagues from Bern also demonstrated that Avalanche consensus cannot provide a decent trade-off between security and performance [6]. Classic blockchains had a hard time being adopted in production. When the largest bank of Australia asked me to do some consulting work, I had to inform them that the way they were using Ethereum was flawed as we managed to hack a copy of their setup [2]. After we reported the vulnerability to both Geth and Parity security teams, they both acknowledged the problem but it took some time for Parity to implement our counter measure. It is thus not surprising that the traditional finance industry has been slow at integrating blockchain to their production system. We discuss the importance of the problem and how we tackled it with formal verification.
Non-dictatorship is a property that appeared in the work of Arrow back in 1950 [1]. We explain why it turns out to be a fundamental property of blockchain governance. We then explain how one can devise a governance protocol that ensures this property and refer to its smart contract implementation.