The growing demand for Web3 applications that support the scalability needs of consumers and businesses while retaining decentralization and censorship resistance has led to the emergence of 3 distinct design categories for blockchains, each of which exists to improve the speed, security, or flexibility of the other.
These categories are known as Layer Zero (L0), Layer 1 (L1), and Layer 2 (L2).
In this piece, we will cover what each layer does and its significance in advancing the functionality of a blockchain network. We will also discuss where the Accumulate network fits in this paradigm and how its unique architecture embraces the best of all 3 design categories, with a primary focus on Layer 2.
While L0s come first numerically, their primary reason for existence is to serve as a solution to the challenges of L1 chains, which is why it makes more sense to begin by explaining what an L1 blockchain is.
An L1 is an independent blockchain network that operates with its own validator set and consensus mechanism such as proof of work or proof of stake. Miners or validators of L1s secure the network by participating in the staking or mining process in order to be rewarded with the newly issued cryptocurrencies from the network.
Examples of L1s include Ethereum, Solana, and Cardano.
L1s are regarded as such because they provide an infrastructure for developers to build and launch decentralized applications or DApps. DApps like Uniswap or OpenSea operate on top of the Ethereum L1 in a similar way to how a web2 internet startup operates on top of AWS’s cloud server infrastructure.
DApp developers benefit from the ability to launch applications without worrying about also managing a validator set since the underlying blockchain takes care of validating all transactions that occur on the DApp.
The downside of this arrangement is that DApps are beholden to the scalability challenges of the blockchain network they operate on. If a single DApp on the Ethereum network experiences higher than normal traffic, it can create a level of network congestion that negatively impacts the user experience across all DApps, making transactions slow or more expensive for every user.
In addition, DApp developers are limited in how much they can customize their platforms or tokens since these all depend on the underlying protocols of the blockchain, which can only be altered through a hard fork or a lengthy improvement proposal process.
For these reasons, Layer 0s emerged. If L1s provide an infrastructure for developers to launch DApps, L0s provide an infrastructure for developers to launch their own L1s with independent validator sets, consensus mechanisms, and native cryptocurrencies.
Examples of L0s include Cosmos, Polkadot, Avalanche, and Horizen.
An L0 is typically designed as a single network (referred to as the main chain) that provides an open-source software development toolkit (or SDK) for developers to launch L1s or sidechains that are connected to but not dependent on the L0 mainchain. A sidechain is a name commonly used to refer to an L1 that was launched from an L0.
The three most important aspects of L0s are flexibility, interoperability, and scalability.
Flexibility comes from the ability for a developer to choose the type of blockchain they wish to launch (including settings like private or public, PoW or PoS, one cryptocurrency or several, etc) in addition to the ability to launch multiple chains if they choose.
A natural consequence of creating an infrastructure for launching multiple blockchain networks is that you can leverage that same infrastructure to enable these independent networks to become interoperable. L0s like Cosmos have excelled at enabling interoperability between their various L1s using the Inter-Blockchain Communication (or IBC) protocol.
As a developer, the ability to operate multiple blockchains also means that you can offload transaction data onto other networks as a way to alleviate congestion within a single chain, thereby creating a more scalable system to support DApps on your chains.
For L0s like Polkadot or Cosmos or Horizen, their L1 side chains are like branches while the L0 mainchain is the tree itself. Even though each L1 operates independently, the ‘state’ of each L1 is ultimately “backed up” by the more secure L0 mainchain using different shared security models.
For example, Horizen uses zk-snarks to validate proofs of transactions on its L1 sidechains, while Cosmos and Polkadot have validators stake DOT and ATOM in addition to the native token of the L1s in order to make the cost of a 51% attack on an L1 basically the same as an attack on the L0 mainchain.
Now that we know why L1s and L0s exist, we can talk about L2s. L2s are solutions that emerged slightly before L0s with the sole focus on improving the scalability of an L1.
While an L0 tries to provide developers with greater flexibility in their blockchain and DApp design choices, L2s seek to achieve a more simple goal, which is to enhance the speed and reduce the costs of transacting on an L1.
Examples of L2s include Polygon, Arbitrum, Lightning Network, and Starkware.
L2s achieve scalability by forming separate networks or channels on top of an L1 that allows participants to submit transactions that are validated using fewer nodes, thereby reducing the amount of time required to achieve consensus. Alternatively, an L2 can simply consist of a smart contract payment channel that locks one party’s tokens in a contract until the other sends their tokens, ensuring that no fraud can be committed even though both parties are transacting ‘off-chain’.
These off-chain transactions are periodically batched together and submitted back to the L1 to be validated as a single transaction and added to the L1 chain.
L2s provide a convenient way for DApps to outsource the transaction execution process to a payments channel or smaller network of validators who can process each transaction more quickly without the need to wait for all nodes on the L1 to verify them.
While this makes transacting on a blockchain faster, it also makes the transaction data less secure because L2 networks or channels are inherently more centralized. This risk is mostly mitigated when transactions are batched together and validated as a single transaction added to a block on the L1 chain, ensuring that they inherit the security of the L1 blockchain.
In summary, if we can describe each layer in a few words it would be as follows:
Layer 2 – Enabling scalability of a single L1
Layer 1 – A Network with an independent validator set and consensus mechanism
Layer 0 – An infrastructure for launching and connecting multiple L1s or ‘sidechains’.
Where does Accumulate fit within these 3 design categories?
Accumulate is a blockchain network that serves as the de-facto communication and audit layer between blockchains, enabling the seamless transfer of tokens or other kinds of digital assets between Accumulate Digital Identifiers (ADIs) across different chains regardless of their consensus mechanism.
The Accumulate Network’s modular architecture allows it to fall into more than one design category of blockchain network.
At its core, Accumulate is an L2 that sits on top of all blockchains, serving as a universal identity layer for enabling cross-chain communication in a more scalable and cost-effective way.
Using ADIs to represent wallet addresses or assets, Blockchains can effectively reproduce entire sections of their network on Accumulate, enabling them to perform transactions between other ADIs at much faster speeds and for lower costs compared to interchain or cross-chain transfers between L1 blockchains.
Currently, the Accumulate network can handle over 70,000 transactions per second with an average transaction fee of $0.0025.
What gives Accumulate L1 properties is having its own validator set, meaning a set of nodes whose sole purpose is to validate transactions on the Accumulate network using a proof of stake consensus mechanism.
L0s are synonymous with the concept of a modular blockchain, which is a type of blockchain architecture that separates each layer of the network (execution, consensus, and data availability) into specialized components through the use of sidechains, shards, and layer 2 scaling solutions.
What gives Accumulate Layer 0 properties is the fact that it can also be described as a ‘network of chains,’ where each ADI is made up of a collection of independent sub-chains that are managed by 4 account types:
- Token Accounts:
- For issuing tokens and tracking deposits and withdrawals from a token account.
- Data Accounts:
- For tracking and organizing data approved by an ADI
- Staking Accounts:
- For staking Accumulates ACME tokens to participate in consensus and secure the network
- Scratch Accounts: For accruing data that is needed to build consensus across the Accumulate network and enabling the coordination of multisig validation.
Accumulate also features a Directory Network, which is a central network that consolidates the records of all transactions that occur between the 4 ADI accounts and their various sub-chains, thereby allowing Accumulate to maintain a single unified state, even while existing as many fragmented networks running in parallel.
The Accumulate Network: An interoperability layer for achieving scalable cross-chain communication
The key focus areas of the Accumulate network are in helping blockchains of all forms optimize scalability and interoperability.
This mission effectively implies Accumulate as an L2 that also carries properties from other layers, simultaneously connecting and scaling blockchains through the help of a digital identity layer that interacts with each chain through the application and execution layers (in other words, the most surface-level layers of the chain where users operate).
While L2 networks like Starkware leverage ZK-technologies and state channels to scale specific L1s, and while L0s like Cosmos leverage IBC to advance cross-chain communication primarily for L1s within the Cosmos network, Accumulates ADI system enables both interoperability and scalability to be achieved through a simple identity framework that any chain (including an L0 mainchain, an L1, an L1 sidechain, or an L2) can plug into without disrupting their underlying protocol design.
We can think of this as a software container or wrapper that allows users on one network to assume a different role on another network without changing anything fundamental about the original network that their identities or assets are hosted on.
This ultimately makes for one cohesive format for achieving scalable cross-chain communication, which will be essential for enabling the rapid adoption of Web3 protocols by a diverse set of individuals, companies, governments, and other institutions in the coming years.