Avalanche Network is relatively a new entrant to layer-1 smart contracts that promises a high throughput and compatibility with the Ethereum Virtual Machine (EVM) but quickly has grown to a blockchain protocol to be reckoned with in the industry.
With the increase of DeFi and NFT activity, the low scalability issues have snatched from Ethereum its unrivaled DeFi king status. With gas fees skyrocketing, new teams are looking for other fast, interoperable smart contract platforms. Solana, Algorand, Binance Smart Chain (BSC), and Polkadot are now in direct competition with Ethereum.
Avalanche Network is also one of the blockchain protocols that seek to unseat Ethereum as the blockchain ecosystem’s most widely utilized smart contract platform. The protocol claims to achieve greater scalability than Ethereum via a high transaction throughput and faster block times. After the launch of an Avalanche-Ethereum Bridge, it has attracted much attention from the DeFi community.
So, let’s take a look at the Avalanche Network.
What is Avalanche Network?
Avalanche Network is a layer-1 smart contract platform that allows the creation of application-specific blockchains, spanning permission and permissionless blockchains, highly scalable decentralized applications (Dapps), and complex digital assets with custom rules, covenants, and riders called Smart Assets. AVAX is the native coin of Avanalche Network.
Created by Ava Labs, a company led by Cornell researcher Emin Gün Sirer, the project launched its mainnet in September 2020.
Avalanche allows anyone to easily produce their own multi-functional blockchains and decentralized applications (dApps) with a special focus on DeFi.
To make sure that dApps works smoothly, Avalanche claims to be the fastest smart contracts platform in the blockchain industry with transaction per second (TPS) of 4,500 and near-instant transaction finality. Interoperability is now the must-have feature for a blockchain network and therefore, it is fully compatible with Ethereum.
Ethereum developers can quickly build on Avalanche as Solidity works out-of-the-box. At the core of this interoperability is the Avalanche-Etheruem bridge launched in February of 2021.
Thanks to these promising features, many Ethereum-based DeFi projects, such as bZx, SushiSwap, Reef, Securitize, and TrueUSD has integrated their platform with the Avalanche.
According to the whitepaper, the Avalanche Protocol targets three use cases: building application-specific blockchains, spanning both private and public; highly scalable decentralized applications (Dapps); building arbitrarily complex digital assets with custom rules, covenants, and riders (smart assets).
So, let’s take a brief look at Avalanche Network.
According to the documentation, Avalanche features three built-in blockchains that perform their specific tasks. These three blockchains are called Exchange Chain (X-Chain), Platform Chain (P-Chain), and Contract Chain (C-Chain).
Exchange Chain (X-Chain)
The Exchange Chain (X-Chain) performs the task of creating and trading digital smart assets including AVAX.
According to Ava Labs, the digital assets created with Avanlanche’s X-Chain are a representation of a real-world resource like equities and bonds as they can be created “with a set of rules that govern its behavior, like “can’t be traded until tomorrow” or “can only be sent to US citizens.”
The X-Chain is an instance of the Avalanche Virtual Machine (AVM). The X-Chain offers an API that allows clients to create and trade assets on the X-Chain and other instances of the AVM.
Platform Chain (P-Chain)
The P-Chain is a metadata blockchain that coordinates transaction validators, tracks active subnets, and enables the creation of new subnets and custom blockchains, including private blockchains.
Two of these blockchains, the P-Chain and C-Chain, are secured by the chain optimized Snowman consensus algorithm, helping to enable high throughput secure smart contracts. Whereas the X-Chain is secured by the Directed Acyclic Graphs (DAG)-optimized Avalanche consensus, a secure and scalable protocol that can achieve transaction finality in seconds.
Contract Chain (C-Chain)
The C-Chain allows for the creation of smart contracts using the C-Chain’s API and it is an instance of the Ethereum Virtual Machine powered by Avalanche.
As we now know, there are two types of consensus protocols in Avalanche: Avalanche Consensus and Snowman Consensus. The X-Chain uses Avalanche Consensus and the other two built-in chain uses Snowman consensus protocol.
Avalanche Consensus Protocol
There are a lot of similarities between Avalanche’s two consensus protocols. However, each one is tailored towards its specific blockchain. Avalanche uses all nodes to process and validate transactions by implementing a directed acyclic graph (DAG) optimized consensus.
The Avalanche consensus protocol operates through repeated sub-sampled voting. The documentation describes the working Avalanche Consensus as:
“When a validator is determining whether a transaction should be accepted or rejected, it asks a small, random subset of validators whether they think the transaction should be accepted or rejected. If the queried validator thinks the transaction is invalid, has already rejected the transaction, or prefers a conflicting transaction, it replies that it thinks the transaction should be rejected. Otherwise, it replies that it thinks the transaction should be accepted.”
When a transaction is created by a user, it is sent to a validating node that then propagates out to other nodes in the network via gossiping. when a transaction has no conflicts, finalization happens very quickly.
But if there is a conflicting or double-spend transaction, every node randomly selects a small subset of nodes and queries which of the conflicting transactions the queried nodes think is the valid one.
Every node in the network repeats this procedure until the entire network comes to a consensus on one of the conflicting transactions. The following block diagram describes the working of Avalanche consensus protocol.
This consensus protocol does not need a leader to reach a consensus like Proof of Work (PoW), Proof of Stake (PoS), or Delegated Proof of Stake (DPoS) chains. Validators are required to stake at least 2,000 AVAX coins to participate in consensus. Others can also delegate their AVAX to a validator with at least 25 AVAX.
Avalanche Consensus protocol is a breakthrough that combines the benefits of Nakamoto consensus (robustness, scale, decentralization) and all the benefits of Classical consensus (speed, quick finality, and energy efficiency) without the disadvantages.
Snowman Consensus Protocol
While Avalanche consensus validates transactions, Snowman creates blocks. The Snowman consensus protocol builds on the Avalanche consensus protocol but orders transactions linearly. This property is of most use when dealing with smart contracts and therefore, the C-Chain and P-Chain use Snowman Protocol.
Avalance describes Snowman as:
“Snowman is a chain-optimized consensus protocol–high-throughput, totally-ordered, and great for smart contracts. The Snowman is powered by the Avalanche consensus protocol.”
In short, Snowman is the name of Ava Labs’ implementation of the Avalanche consensus protocol for linear chains.
Subnets and Primary Network
The core of Avalanche’s architecture are sub-networks called Subnets and a Primary Network.
According to the documentation, a subnet is a dynamic set of validators working together to achieve consensus on the state of a set of blockchains. Each blockchain in the Avalanche ecosystem is validated by a single subnet, but an individual subnet can validate multiple blockchains. A validator node can be a member of many subnets.
These subnets are not random validator nodes. A key aspect of them is that each subnet manages its membership, and may require validators to have certain properties. For example, a subnet may require validators to meet certain requirements for regulatory purposes or to be in a specific country.
Private blockchains can create privates subnets where only certain pre-defined validators can join, and the content of the blockchains would be visible only to those validators. A blockchain application could require that validators meet certain hardware requirements. This subnet model allows controlling all these things.
The Primary Network is a special subnet that validates all three built-in chains: X-Chain, P-Chain, and S-Chain. All members of all custom subnets must also be a member of the Primary Network by staking at least 2,000 AVAX.
Validators are rewarded according to their uptime and response latency, and their rewards are proportional to their total stake. The thing to note is that the Avalanche platform does not slash nodes’ stakes if they behave maliciously. They do not simply receive any reward.
Avalanche AVAX Coin
AVAX is the native utility coin of Avalanche Network. It is a hard-capped coin with a maximum supply of 720 million. AVAX has four uses on the Avalanche platform.
AVAX holders can stake their assets to become a validator or delegate it to a validator. AVAX is the common unit of account for all subnets, improving interoperability. Transaction fees and subnets subscription fees are paid in AVAX. All fees paid on the network are burned as a deflationary mechanism.
The coin is also used for the governance of the platform, where both validator nodes and AVAX holders can participate in the governance. The whitepaper reads:
“Avalanche can use its consensus mechanism to build a system that allows anyone to propose special transactions that are, in essence, system-wide polls. Any participating node may issue such proposals.”
According to the paper, Avalanche does not allow unlimited changes to arbitrary aspects of the system. Only a predetermined number of parameters can be modified via governance.
Avalanche Bridge (AEB)
The Avalanche-Ethereum Bridge (AEB) was launched in early 2021 to provide a channel for moving native Ethereum ERC-20-based assets to the Avalanche ecosystem. In July 2020, Ava Labs replace AEB with a more secure and fast upgrade with the name changed to Avalanche Bridge (AB).
AB allows DeFi users to transfer their assets between the two ecosystems and developers to easily port their Ethereum dApps to Avalanche.
Avalanche also offers a non-custodial wallet for storing Avalanche assets. According to the documentation, unlike Metamask that requires manual addition of tokens other than Ethereum, Avalanche Wallet has built-in support for the most popular tokens.
As there are three chains in Avalanche with their own functionality and rulesets, users have to move their assets to the respective chain to perform the required function. For example, to interact with DApps built on Avalanche, users have to park assets on C-Chain. Avalanche Wallet allows moving assets between chains through its cross-chain functionality.
Furthermore, the address format for each is also different. The AVAX (C-Chain) wallet address format will be similar to that of the Ethereum or BSC, while the AVAX (X-Chain) wallet address format will always start with X- to distinguish.