Algorand Blockchain Core Protocol Overview - YouTube

Channel: Algorand

[0]
Blockchain technology was created to enable economic systems where borderless
[5]
transactions can be achieved without the need for a central authority, but without
[11]
these how do users agree on which transactions should be written to the
[15]
blockchain, how do they come to consensus. Algorand securely and efficiently achieves consensus in a fully
[22]
decentralized Network, as long as the supermajority of honest users agree on
[27]
what should be added to the chain. Users participate in consensus through
[32]
participation nodes, and nodes submit users votes to the network. Algorand
[38]
ties the security of the whole economy to the honesty of the majority of the
[43]
economy, unlike other protocols which tie it to a small subset of their economy
[48]
such as miners or delegates. In Algorand, it's impossible for the owners of a
[53]
small fraction of the stake to harm the whole system, and it would be foolish for
[58]
the owners of the majority of the stake to misbehave, as it would diminish the
[62]
network overall. Algorand's consensus protocol is based on our unique approach
[67]
that we call Pure Proof of Stake. Users are selected to participate in consensus
[73]
based on their stake, or the number of tokens they own. It's similar to a
[77]
lottery, with each token representing a lottery spin. The more tokens a user has
[83]
the better chance they have of winning the lottery and being selected. This
[87]
method is used to select which users propose and vote on a block as well as
[92]
how many votes a user gets, one per lottery win in the voting process to
[97]
approve a block. users are selected to participate with a verifiable random
[102]
function, or VRF, which acts similar to the lottery. This function can be
[108]
executed on any node, for any user, and allows the selected user to prove their
[114]
selection or their winning lottery to the network with a cryptographically
[118]
signed proof that gets propagated to every participating node.
[123]
For each round of the protocol a unique set of users is randomly, and privately
[129]
selected independent of earlier sets. This selection process is very fast, as
[134]
it does not require any collaboration among nodes.
[138]
Therefore, the addition of nodes does not slow the process down. It's also very
[143]
secure. An adversary does not know who matters in generating the next block, and
[149]
therefore should be corrupted until after a selected user participates and
[154]
by the time an adversary realizes that a user is selected it is too late for them
[159]
to benefit from an attack. The user has already sent their message and fulfilled
[163]
their responsibility in the protocol. So here is how consensus is achieved and a
[168]
block is written to the blockchain. When Alice sends a transaction to Bob it's
[174]
submitted to a node in the Algorand network and placed in a queue with other
[178]
transactions. These transactions are propagated to all the nodes in the
[183]
network. Every node then executes the VRF, or plays the lottery, for every
[189]
participating user for essentially every token they own. If a user on a node gets
[195]
selected, that node selects a group of transactions from its queue to put into
[200]
a block and propagates the block along with its vrf proof to other nodes in the
[206]
network. Other nodes in the network will propagate blocks as well. As each node
[211]
receives this block it will hold it as the primary block proposal. If it
[215]
receives multiple blocks it will compare the vrf proof of each and only keep and
[220]
propagate the one with the lowest proof. Eventually only one block proposal will
[226]
remain. To verify agreement on the current block proposal another vrf, or
[232]
lottery, is executed for every participating user in the network to
[237]
select a group of users to vote on this proposal. Their voting power is
[241]
determined by how many times they win the lottery. This committee of users then
[247]
propagates votes for the block proposal to the network.
[250]
Every node in the network accumulates these votes, and when a supermajority
[254]
vote of the committee is reached for a proposal it is considered the block to
[259]
be certified. The VRF is executed a third time to select a group of users to
[266]
certify the selected block. Again, their voting power is determined by how many
[270]
times they win the lottery. The newly chosen committee then votes to
[275]
certify the block. These votes are propagated to the network and
[279]
accumulated by each node. Once a super majority of votes are accumulated the
[285]
block is written to the blockchain. This whole process takes less than five
[289]
seconds. Alice's transaction to Bob is finalized and the process begins again.