Proof of Stake and the History of Distributed Consensus: Part 2, Thunderella

zk - Zubin Koticha
Sep 10, 2018 · 4 min read

Thunder: A Breakthrough

The simplicity breakthrough has been achieved by two Cornell professors, Elaine Shi and Rafael Pass in 2017.

It’s called Thunderella.

Professors Pass and Shi have created the simplest protocol mathematically proven to bridge classical BFT consensus and Nakamoto consensus.

Thunderella takes the idea of “Hybrid Consensus” one step further than the original. It retains a PBFT style committee which comes to consensus atop the slow chain.

The first aspect of Thunderella is the creation of an accelerator and a committee, which came to consensus in a responsive manner. This is the most efficient BFT PoS framework ever in terms of message passing rounds and latency (in the literature, the property of speed, characterized by consistency and low latency, is known as liveness).

A well-known idea in the classical BFT world, known as the pigeonhole principle, suggests a tradeoff between security and speed (safety and liveness). More validator signatures required on a block means less likelihood of forking (i.e., more safety), but also it takes longer to accrue that many signatures (i.e., less liveness). This means that for any additional liveness gained in a protocol, it must sacrifice on safety. Said another way, if you want more speed in a distributed system, your system becomes less secure. This presents an upper limit to scalability.

Professors Pass and Shi have figured out how to solve the dilemma of the pigeon hole principle.

They realized that classically, asynchronous protocols like PBFT have both an asynchronous fast path and an asynchronous recovery mechanism. Unfortunately, this recovery path is extremely complicated. Though PBFT system designers want the system to almost always operate on the fast path, the recovery path constitutes the majority of the codebase, and that’s where all the bugs and complexities are. Is there any way to simplify this recovery path?

Thunderella answers this question by removing the traditional recovery path from PBFT, and implements a to the recovery path problem, a PoW blockchain, operating in tandem below their PBFT-style fast path. Nine years of solid functioning has shown Nakamoto consensus is robust, and so Thunderella keeps it as a safety net. In the Thunderella paper, this Nakamoto chain — whether it be Bitcoin, Ethereum — helps promote to establish consistency, and thus finality, on the fast path.

With this underlying Nakamoto-style chain for recovery, there is no need to run a full-fledged PBFT algorithm on top. As stated earlier, most of the PBFT code is involved in recovery. We can completely strip PBFT down to a bare minimum that consists of a single round of voting coordinated by a “leader.”

This system has consistency but not liveness if the leader has crashed or is corrupt. However, in the latter case, rather than using an asynchronous recovery path, the slowchain is used for recovery. The Nakamoto chain, although slow, is a sure and steady consensus mechanism that is always there, even when the fast path fails.

The beauty of Thunderella lies in its simplicity. It combines the best of both worlds: the responsiveness of an asynchronous algorithm, the simplicity and decentralization of a blockchain, and the speed and throughput previously reserved for centralized systems.

In normal conditions, Thunderella is high-speed (asynchronous) as an algorithm. What makes it unique is that it is the first to feature its level of simplicity and liveness. Thunderella’s fast path functions as an extremely efficient BFT algorithm and uses a Nakamoto-style blockchain for robustness, and in doing so, operates at a high level of performance while maintaining decentralization, trustlessness, and strong safety guarantees.

The ThunderCore blockchain uses Ethereum as its slow chain, giving it another considerable advantage: the ability to use the EVM. This means that Thunder has the safety and versatility of the Ethereum main chain — with Truffle, Solidity, Mist, and all the great developer and users tools made for the Ethereum ecosystem. It also features a serious pickup in performance, allowing DApps to compete with centralized applications on performance for the first time.

In a field built on trustlessness and attack resilience, new projects built on top of robust and proven software have a lot of value. When billions of dollars are on the line, as they are in public blockchains today, it makes sense to leverage an existing, thriving PoW chain to secure a PoS system, rather than moving straight to PoS completely.

But a fast path is not the only thing that our project has in store…

The ThunderCore Project

Thunderella is not just an asynchronous fast path. It is a technological and theoretical blockchain breakthrough. It’s just the first in a series of steps that Thunder plans to implement in the future. We are working on solutions for storage space, interoperability, and more.

ThunderCore is a project marrying both industry and academia that aims to deliver a scalable, decentralized, and democratic blockchain to users.

Thunder Research is an industry research group headed by the top scientists in the field to bring rigor to decentralized technology, and in turn bring decentralized technology to the world.


Bringing blockchain to the masses.

Medium is an open platform where 170 million readers come to find insightful and dynamic thinking. Here, expert and undiscovered voices alike dive into the heart of any topic and bring new ideas to the surface. Learn more

Follow the writers, publications, and topics that matter to you, and you’ll see them on your homepage and in your inbox. Explore

If you have a story to tell, knowledge to share, or a perspective to offer — welcome home. It’s easy and free to post your thinking on any topic. Write on Medium

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store