🤔 What is Algorand ?
Algorand is a blockchain that supports smart contracts. It aims to overcome Etherium’s limitations(scalability trilemma).
Scalability trilemma was first described by Vitalik Buterin, the co-founder of Ethereum. It states that it is very difficult to develop a blockchain that has all the three features:
A developer can choose a maximum of 2 of the desired qualities.
Algorand blockchain aims to solve the scalability trilemma becoming secure, decentralized and scalable.
💡 What role does ALGO token play ?
ALGO is the native cryptocurrency of Algorand. It is used for:
- Transactions fees: Users have to pay transactions fees in ALGO to include their transactions on the Algorand blockchain.
- Staking: Users can stake their tokens to participate in the process of validating blocks.
- Validator rewards: Validators receive ALGO tokens as rewards for building blocks.
- Governance: ALGO holders propose and vote on updates to Algorand protocol.
📝 Origin of Algorand
- April 2019 – Public TestNet Release: Algorand opened its functioning testnet to the public, following a private testing period with reportedly hundreds of known participants.
- June 2019 – Algorand 1.0 Launch (Mainnet Launch): The official launch of the Algorand blockchain occurred after the project completed its first on-chain Dutch auction (i.e., token sale), which raised over $60 million.
- November 2019 – Algorand 2.0 release: Algorand v2.0.0 was a major upgrade for the network that introduced three key changes:
- Algorand Standard Asset (ASA): A standardized Layer-1 solution to represent any asset on the Algorand blockchain
- Atomic Assets: A secure Layer-1 method of transferring a number of assets to a number of parties.
- Algorand Smart Contract (ADC1): Layer-1 smart contracts that enforce custom rules and logic.
👴🏻 Silvia Micali - Founder
- Silvio Micali was born in October 13, 1954.
- Micali graduated in mathematics at La Sapienza University of Rome in 1978 and earned a Ph.D. degree in computer science from the University of California, Berkeley in 1982.
- Micali has been on the faculty at MIT, Electrical Engineering and Computer Science Department, since 1983.
- Micali won the Gödel Prize in 1993. He received the RSA Award for Excellence in Mathematics in 2004. In 2007, he was selected to be a member of the National Academy of Sciences and a Fellow of the International Association for Cryptologic Research (IACR).
- He received the Turing Award for the year 2012 along with Shafi Goldwasser for their work in the field of cryptography.
- Silvio is the co-inventor of probabilistic encryption, Zero-Knowledge Proofs, Verifiable Random Functions and many of the protocols that are the foundations of modern cryptography.
- In 2015 the University of Salerno acknowledged his studies by giving him an honoris causa degree in Computer Science. He was elected as an ACM Fellow in 2017.
- In 2017, Micali founded Algorand.
😌 What problems does it solve ?
- Carbon negative: Algorand uses a unique consensus mechanism(Pure-proof-of-stake) which is much more efficient than proof-of-work. The project has partnered with projects like ClimateTrade to sponsor climate change projects to offset its carbon footprints.
- Scalability: Algorand performs 1,300 transactions per second (TPS) that is soon expected to touch 3,000 TPS.
- Speed: Algorand blocks are finalized in 4 seconds, whereas it takes 5 minutes on Etherium for a transaction to be considered final.
- Cheap: Transaction fee on Algorand is about 0.0017 USD.
Note: This may increase as more apps are built on Algorand, but can also reduce if the team is able to scale Algorand even further.
- Live now, no future promises: Decentralized apps can easily migrate to Algorand with minimal effort and changes to enjoy super-fast transactions and cheap fees.
- No downtime: Thousands of nodes running 24 X 7 ensure the network is always online.
- Efficiency gains: Projects building on Algorand do not have to run servers and hire an army of network engineers.
- Open source: Users do not have to trust Algorand team. They can view Algorand code themselves to verify what the team is claiming.
🤖How does it work ?
Pure proof of stake
The Algorand blockchain uses a decentralized Byzantine agreement protocol based on pure proof-of-stake (PPoS). It works as follows:
- Every online user who possesses ALGOs can participate in the consensus protocol.
- To reduce exposure, users do not use their spending keys (i.e., the keys they use to spend stake) for consensus. Instead, a user who wishes to participate in the protocol generates and registers a participation key.
- With this key, an account can participate in proposing and voting on blocks. Using participation keys ensures that a user’s ALGOs are secure even if their participating node is compromised.
- Selection via Verifiable Random Function:
- Every block in Algorand reveals a new random and unpredictable selection seed that determines which users should participate in the next round of the consensus protocol.
- When a new block gets committed to the blockchain, everyone becomes aware of this seed (and everyone sees the same seed).
- A user secretly checks whether they were selected to participate by evaluating a Verifiable Random Function (VRF) with their secret participation key and the selection seed.
- This computation is minimal, so even a limited device such as a Raspberry Pi can do it.
- The VRF computation produces a pseudorandom output with a cryptographic proof that anyone can use to verify the result. By sending this proof, a user can prove to anyone that they were indeed selected to participate.
- Users are chosen to participate in the protocol based on the stake (number of ALGOs) that they have. The VRF behaves similarly to a weighted lottery. The more ALGOs in an online account, the better chance the account has of being selected to participate.
- The selection of users to participate in the certification of blocks using the VRF is done randomly and secretly, without any communication among the users. Since executing this procedure requires a user’s private key, no one except for that user knows whether they were selected.
- An adversary does not know who matters in generating the next block (and thus should be targeted) until after a selected user participates in the consensus protocol. And by the time an adversary realizes that a user is selected, it is too late for them to benefit from an attack; the user has already sent their message and fulfilled their responsibility in the consensus protocol.
- Furthermore, for each step of the protocol, a unique subset of participants is randomly and privately selected, independent of earlier subsets.
- Soft vote:
- Each node will run the VRF for every participating account it manages to see if they have been chosen to participate in the soft vote committee.
- Each account chosen will filter the proposals down to one by voting to confirm the block. These votes will be for the lowest VRF block proposal calculated at the timeout and will be sent out to the other nodes along with the VRF proof.
- Each node will validate the committee membership VRF proof before adding it to the vote tally. Once a quorum is reached for the soft vote, the process moves to the certify vote step.
- Certify vote:
- A new committee is then selected to check the block proposal that was voted on in the soft vote phase for overspending, double-spending, or any other problems. If valid, the committee votes again to certify the block.
- This is done in a similar manner to the soft vote where each node iterates through its managed accounts to select a committee and to send votes.
- These votes are collected and validated by each node until a quorum is reached, triggering an end to the round and prompting the node to create a certificate for the block and write it to the ledger.
Algorand network has two types of nodes:
- Relay nodes:
- Relay nodes serve as central network hubs and maintain connections to other nodes.
- These nodes have high-performance network connections which allow efficient communication paths, ultimately reducing the number of hops and the transmit time of sending a message throughout the network.
- Relay nodes decongest noise in the system by accumulating protocol messages from participation nodes and other relay nodes connected to them, performing deduplication, signature checks, and other validation steps and then re-propagating only the valid messages.
- Relay nodes are also often located at internet exchange points to decrease propagation time.
- Participation nodes:
- Participation nodes run consensus protocol and communicate with each other through relay nodes.
- Authorized by the user’s participation key, these nodes propose and vote on blocks on behalf of the user’s stake
Algorand blockchain has 2 layers:
- Layer 1:
- Layer-1 smart contracts execute common, simple transactions directly on the blockchain itself.
- Smart Contracts are written in a language called Transaction Execution Approval Language (TEAL) as well as in Python using the PyTeal library, a python language binding.
- Algorand’s Smart Contracts are further strengthened by Algorand’s Virtual Machine (AVM) that interprets TEAL programs comprised of a set of operation codes (opcodes) used to implement the logic of smart contracts and smart signatures.
- Layer 2(off-chain contracts):
- While many simple blockchain transactions are appropriate for the Layer-1 fast path, there is also a “long tail” of complex applications that require more specialized tools.
- When a user calls an off-chain contract, the call is not directly executed by the consensus committee. Instead, the call is executed and validated by a parallel committee, called the contract execution committee.
- Each validator on contract execution committee executes the contract call and generates a sequence of effects: the sequence of blockchain transactions generated by the contract call.
- The contract execution committee then produces a signed certificate endorsing the call’s effects. The simple list of effects, together with the signed certificate and other validation conditions, are then submitted to the consensus committee.
- For efficiency, multiple contract calls can be executed in a batch, so they can all be endorsed with a single certificate.
🏛️ Governance model
- Algorand team has decentralized governance of the protocol.
- ALGO token holders can voluntarily choose to participate in the governance process.
- The governors( volunteers who choose to participate in the governance) must lock their tokens for a specific time(1 year) to participate in the governance process.
- Governors are compensated with ALGO tokens as rewards for participating in governance.
- Governing mechanics:
- Voting sessions: The Algorand foundation(non-profit based in Singapore) lists set of proposals for governors to vote on.
- Voting deadlines: Governors are given 30 days to vote on proposals. The votes have weight proportional to the number of tokens locked by the governor.
🤑 How much money does the project have for future development ?
- The project raised:
- Feb 2018 – seed round: $4 million.
- Oct 2018 – Venture round: $62 million.
- Jun 2019 – Inicial coin offering: $60.4 million.
- 2.5 billion ALGO(25% of the total supply) have been allocated to Algorand foundation to fund future development.
- Growing ecosystem:Large number of projects are building on Algorand blockchain.
- Rising demand: More and more decentralized apps are being built. As a result demand for scalable blockchain is growing.
- Switching cost: It will be difficult for the projects to migrate to other blockchains with their ecosystem and userbase once they have established themselves on Algorand.
- Network effects: More people will use Algorand as more apps are being built. More apps will be built as more people use Algorand. This positive feedback loop has potential to cause explosive growth in a short period of time.
😨 Risks and challenges
- Centralized relay nodes: Algorand team decides who runs relay nodes. This is a single point of centralization.
- Competition: There are many crypto projects building smart contract blockchain.
ALGO tokens have fixed max supply of 10 billion tokens. They will be distributed as follows over the period of time:
Although ALGO token has a fixed max supply, however only a small percentage of the supply is in circulation.
Token’s price increases due to demand pressure.
Demand pressure on ALGO will come from:
- Governance: Users will acquire and lock ALGO tokens to participate in the governance process.
- Transaction fees: Users will acquire and pay ALGO tokens to include their transactions in Algorand blockchain.
- Staking: Users will also acquire ALGO tokens to participate in the process of block validation.
- Speculators: They will acquire ALGO tokens for future price appreciation.
🧐 Indicators to watch out for
- Transaction volume is growing:
- Number of addresses are growing:
- Long term holders are growing:
- YouTube channel is growing:
- Twitter account is growing:
Although Algorand has one of the most reputed founders and claims to have solved the scalability trilemma. But I will not be investing in Algorand because:
- I do not like their views on CBDCs(click here).
- Algorand team controls who run relay nodes. This makes the project centralized.