Algorand, MIT Bitcoin Expo '18
Talk given by Professor Silvio Micali
Professor Silvio Micali spoke at the 2018 MIT Bitcoin Expo about his revolutionary consensus algorithm: Algorand. What follows below is a summary of that talk, starting with a competitor: Bitcoin.
Bitcoin Summary
Main idea: Consensus via PoW // Main Assumption: Honest majority of mining computing power
Algorand
Algorand is effortless and blocks are One-By-One. No Forks and No PoW
Byzantine Agreement — Communication Protocol that when the majority of players are honest, guarantees
Agreement — Start: people have values in their head → End: Will agree on same value
Consistency — Start: people have one value in their head → End: Will agree on the one value
Both properties are important
Challenges: slow and players are fixed and known in advance
Algorand Summary
Main Idea: Message-passing Byzantine Agreement // Main Assumption: Honest majority of Money
Main Technical Advantages
More on Security → Adversary can…
- Immediately corrupt any player he wants, but n/3 overall
- Totally controls and perfectly coordinates all bad players
- Attack the protocol
- Attack the communication NETWORK on which protocol runs
- Can’t forge signatures
Algorand’s Structure — 2 phases
To start: Algorand is able to support billions of users (it scales). There are good guys and bad actors, but majority are honest
Magic Phase 1: one user is randomly selected → his/her public key becomes common knowledge to the entire network
- User A makes a new block → looks at all the values/transactions in a blockchain, brings them all together in one block and propagates the block
Magic Phase 2: 1000 people are randomly chosen and they form a committee
- They agree on the block proposed by User A
Key → If 10% of the committee are bad actors and are dishonest → they don’t agree that the block^ wasn’t made by User A. *Extremely low probability that bad actors are the majority and disagree that User A made the block.
- Majority are honest and will agree that User A made the block^
If you see a block and you weren’t User A or a part of the committee, then you still know that majority chose that block
TL;DR 2 phases. Phase 1—one person is randomly chosen to make a block. Phase 2 — 1000 people are randomly chosen to approve a block
Common Q & A
Q: Who selects the committee? A: Each committee member secretly selects himself
A: Can bad actors choose themselves…those who choose themselves will have to run his/her own lottery, in which he cannot cheat, but can prove he won! If he wins, then propagates his winning proof and plays the Byzantine Agreement (BA) protocol (thousandth of a second). The probability of winning the lottery is proportional to the total amount of money you have relative to the total amount of money in the network
If there is a Sybil Attack → when user clones himself/herself and attacks the network in large → Algorand ensures that if you have 1mil algos in one key or 1mil keys with one also each → probability is the same
Q: Aren’t Byzantine Agreement (BA) very slow? A: New Super (BA)
A: Expected Handful of Steps. Single and short messages per step!
Q: Can’t the Adversary (Dragon) corrupt the all the committee members after the first step??? A: Separate committee for each Step x!
A: Adversary can’t corrupt the first message sent bc adversary doesn’t know who to corrupt. A committee member speaks once: his winning proof + his step-x message. Nonsense! Player Replaceability → Brand New Property!
Committee members are replaced → Player Replaceability → the block is saved and propagated to the network
Committee Members have no relation to each other bc they are RANDOMLY SELECTED — > TRULY DISTRIBUTED
Shared environment allows committee to act as one
In Sum Algorand has — No Forks, No Miners, No PoW, No Wait to Confirmation, Trivial Computation, Perfect Scalability, Transaction Finality, Great Security
In Addition — Security without arbitrary partitions, Flexible Governance without hard forks, Secure Incentives, Deep Roadmap
To learn more, check out our video from the MIT Bitcoin Expo '18
If you liked what you read ❤️❤️❤️, please upvote and follow @gosathya. More coming soon!!
Congratulations @gosathya! You have completed some achievement on Steemit and have been rewarded with new badge(s) :
You made your First Comment
Click on the badge to view your Board of Honor.
If you no longer want to receive notifications, reply to this comment with the word
STOP
Congratulations @gosathya! You have received a personal award!
1 Year on Steemit
Click on the badge to view your Board of Honor.
Congratulations @gosathya! You received a personal award!
You can view your badges on your Steem Board and compare to others on the Steem Ranking
Vote for @Steemitboard as a witness to get one more award and increased upvotes!