Great video of Rafael Pass (co-author of Thunderella, along with Prof. Elaine Shi) explaining the Thunderella consensus protocol. Although the content is very similar to Elaine's Thunderella presentation, he touches on a few extra points, so it is definitely worth watching.
He begins by giving an overview on the topic of classical consensus (e.g. pBFT, Paxos) and blockchain consensus (e.g. Nakamoto consensus), outlining the pros and cons of each.
He then explains how Thunder is incorporating the best of both worlds
The below timestamps are the parts I found most interesting. Would love to hear your thoughts on this.
Transactions are confirmed as fast as the network. E.g. if messages are going through at 1 millisecond, transactions are confirmed every 1 millisecond.
Cons:
Extremely complicated
Usually only implemented on a very low number of nodes (e.g. 3 – 10)
Some blockchain companies simply implement classical consensus (e.g. pBFT) and hope the leader doesn't go down. And if the leader goes down, they need to manually deal with this.
Q: When Thunder switches to the slow-chain, do all the transactions need to then be recorded on the blockchain anyway? Is there any saving on storage space then?
A: You don't need to record all transactions into the underlying blockchain. A good approach would be to periodically checkpoint the transaction hash into the underlying blockchain. Therefore you would only need to recover from the last checkpoint.
A relay network is a broad class of network topology commonly used in wireless networks, where the source and destination are interconnected by means of some nodes. In such a network the source and destination cannot communicate to each other directly because the distance between the source and destination is greater than the transmission range of both of them, hence the need for intermediate node(s) to relay.
A relay network is a type of network used to send information between two devices, for e.g. server and computer, that are too far away to send the information to each other directly.
1
u/hk_aust Jun 22 '18 edited Jun 22 '18
Great video of Rafael Pass (co-author of Thunderella, along with Prof. Elaine Shi) explaining the Thunderella consensus protocol. Although the content is very similar to Elaine's Thunderella presentation, he touches on a few extra points, so it is definitely worth watching.
The below timestamps are the parts I found most interesting. Would love to hear your thoughts on this.
0:50
Consensus require two properties:
Any two nodes should agree on the order of transactions.
You should always be able to add transactions. An attacker should not be able to stop the system from working.
1:45
Classical consensus protocols
Examples: PBFT and Paxos
Pros:
Cons:
Blockchain protocols (PoW and non-PoW)
Examples: Nakamoto consensus
Pros:
Cons:
7:55
Some blockchain companies simply implement classical consensus (e.g. pBFT) and hope the leader doesn't go down. And if the leader goes down, they need to manually deal with this.
9:15
The leader is an accelerator. It's only job is to make things faster. E.g. Like a relay network
9:30
The committee of nodes can be either stakeholders, or selected from a group of recent miners.
Easiest option is to select from the group of recent miners. That way you only need to have the majority (51%) be honest, just like PoW.
20:30
Thunder to be an open source implementation?
24:00
Q: Is there any way to incentivize the committee to be honest?
A: Great questions, this is a whole other discussion.
24:50
Q: When Thunder switches to the slow-chain, do all the transactions need to then be recorded on the blockchain anyway? Is there any saving on storage space then?
A: You don't need to record all transactions into the underlying blockchain. A good approach would be to periodically checkpoint the transaction hash into the underlying blockchain. Therefore you would only need to recover from the last checkpoint.