Layer 2 scaling solutions are becoming a viable way for blockchains to achieve their full potential. Last week we wrote about Polygon and how it is attempting to be the “Swiss army knife” of scaling solutions, offering developers a degree of flexibility when it comes to choosing their optimal design.
Other projects have taken a more specific approach and currently focus on a particular approach to solving the scalability problem. One of these projects is Optimism, an EVM-compatible Optimistic Rollup chain.
What is Optimism?
Optimism was founded in 2019 by Jinglan Wang, Benjamin Jones, Karl Floersch, and Kevin Ho. It is an Ethereum-focused scaling solution that uses Optimistic rollups as its underlying technology.
They closed a funding round led by a16z in 2021, where they raised $25m, and another in early 2022, which was co-lead by a16z and Paradigm, where they raised $150m.
The first Optimism testnet was launched in 2019, which was followed by an EVM-compatible testnet in 2020.
On the 31st of May this year, Optimism did a retrospective airdrop where they distributed 5% of the total OP token supply to 248 699 different wallets that had used or contributed to the network in some way.
According to the Optimism developers, the network was designed on four core pillars: simplicity, pragmatism, sustainability, and optimism.
Blockchains are complex networks of computer code communicating with one another. The more complexity you add to the code of any project, the more likely there is something that can go wrong. Security should be of utmost importance when designing a layer 1 or 2 network. As one can imagine, every line of code written increases the surface area through which a hacker may attack. Therefore, the simpler you can keep it, the more flexible and scalable it can be and the less chance of bugs being introduced.
This is one of the core tenets on which Optimism was built. Developers have purposefully relied on tried and tested code and made the network as straightforward as possible. Optimism has embraced the open nature of blockchain development and has used software such as Ethereum’s Geth to provide its service.
Simplicity should be the goal of any developer, and Optimism has made this a core part of their long-term vision.
A pragmatic approach vs an idealistic approach in blockchain development can be beneficial. Instead of building what the developers viewed as the perfect solution, they engaged with those using the platform to create their required solutions.
Due to this approach, Optimism has been developed iteratively and relies heavily on user feedback. An example of where this has happened is the introduction of a feature such as the Ethereum Virtual Machine (EVM) Equivalence.
Optimism has used a design philosophy that prioritises user and developer needs instead of designing what the team thinks is best.
When a developer builds an application, they expect that the platform on which they launch it will remain operational for a long time. This also includes continuous improvement of the protocol itself.
Due to crypto’s open nature, the ecosystem surrounding a project is critical to its success. Therefore the greater the number of people who can freely contribute, the more chance a project has of success. Sustainability goes hand-in-hand with simplicity. The more simple the code, the greater the number of people who can understand it and contribute to it over the long term.
The final pillar of design philosophy is optimism. Optimism in Ethereum’s future. The team believe that Ethereum will change the way we as humans coordinate our activities, and they want to be a part of enabling that. This means that when designing new features, they are intended to be an extension of Ethereum’s capabilities.
“Optimism exists so that Ethereum can succeed.” – Optimisim Documentation
The above four are the philosophies on which Optimism is designed. In the next section, we will dive into how it works.
How Does Optimism Work?
Optimism gets its name from the scaling technology it uses, Optimistic rollups. Rollups inherit their security from their parent chain, in this case, Ethereum.
Several types of rollups exist; however, the two main types are Optimistic and Zero-Knowledge rollups. From a high-level, zkRollups uses complex cryptography called a Zero-Knowledge proof to determine whether a transaction is valid. Optimistic rollups are different in that they “optimistically” assume all transactions contained within the rollup are true. This makes Optimistic rollups extremely quick as the network doesn’t expend resources confirming these transactions. However, to keep the network honest, there is a challenge period (usually about a week) in which anyone can contest what they believe to be fraudulent transactions. Therefore, one of the significant drawbacks of using this scaling approach is that withdrawing funds from the network can take a long time as you have to wait for this challenge period to end. These are how Optimistic rollups work in theory, but let’s dive deeper into Optimism specifically.
Optimism essentially acts as an extensive list of append-only transactions. These rolled transactions are stored within a special smart contract on Ethereum called the CanonicalTransactionChain(CTC), and this append-only list effectively acts as the Optimism blockchain. Within the CTC, there is code that guarantees the existing list of transactions cannot be altered by any new Ethereum transactions. The only situation in which transactions can be altered is if Ethereum itself experiences a reorg (a reorg occurs when one or several blocks are removed from the blockchain because a longer chain has been accepted as valid). These reorgs happen every so often, and if Ethereum experiences a reorg of more than 50 blocks, Optimism will reorg as well. This ensures that both layer 1 and layer 2 are in sync.
A “sequencer” is the primary party responsible for block production on Optimism. Currently, only one is operating, run by the Optimism team; nevertheless, there will be more in the future as the network decentralises. It serves three core roles within the network:
- Providing instant transaction confirmations and state updates
- Constructing and executing L2 blocks
- Submitting user transactions to L1
It begins when a user submits a transaction to the network. The sequencer first checks if the transaction is valid; if it is, then the sequencer submits it as a pending block. Unlike with Bitcoin or Ethereum, there is no concept of a mempool on Optimism; a transaction is either accepted or rejected in the order it arrives. After a specific period, the pending block that contains all the rolled transactions is submitted to Ethereum, where they are stored in the CTC and are considered finalised (unless there is a reorg on Ethereum). Submitting a large number of transactions in one block distributes the gas required between them, allowing Optimism to effectively lower gas fees.
In this system, the sequencer is also given priority write access to the Optimism chain. This means that the sequencer can provide strong guarantees to users, and the Optimism chain can be updated quickly.
Relying on this sequencer does introduce centralisation risk where a user could theoretically be censored. Because of this, Optimism developers have also created a way for transactions to be submitted to the CTC directly, bypassing the sequencer. The drawback of going through this process is that you will now bear the brunt of the entire gas fee payable on the Ethereum chain.
With a basic understanding of how blocks are produced and stored on Optimism and Ethereum, we can now explore how assets can be moved between the different chains and how the system maintains consensus.
Bridging Assets Between Ethereum and Optimism
Optimism is EVM compatible, which means that both tokens and smart contracts that exist on Ethereum can be used on the Optimism layer 2. This is possible because arbitrary messages can be sent between the chains, which trigger specific actions, such as a transfer of tokens between them.
The most crucial part of building a layer 2 is ensuring you don’t create two representations of usable assets on the layer 1 and layer 2 chains. This means that Ethereum should lock up assets represented on the Optimism chain at all points in time, making them unusable. “Transferring/bridging” assets from Ethereum to Optimism is relatively straightforward. They do this by locking the token in a special smart contract, triggering the CTC contract on Ethereum, which creates a new block on the Optimism chain. However, transferring assets from Optimism to Ethereum is a lot more complex.
Source: Kyle Charbonnet
When moving assets from Optimism to Ethereum, the chain needs to make provable statements about the current state or ledger of the Optimism blockchain. In order to make a provable statement, you are required to submit a cryptographic commitment. As with all blockchains, the state is changed after every block; therefore, this commitment changes. This commitment is posted to a special smart contract called the StateCommitmentChain once or twice per hour. These state commitments exist on the Ethereum blockchain and can be challenged through a “fault proof” process.
As briefly explained earlier, the difference between zkRollups and Optimistic rollups lies in the proofs they produce.
In the Optimism system, changes in the blockchains state are published on the Ethereum blockchain without direct proof of validity. This makes the network extremely fast at the Optimism level; however, this leaves it vulnerable to malicious actors.
Once a state commitment has been submitted to the Ethereum blockchain, it remains in a pending state for seven days. If it goes unchallenged during this period, it is considered finalised. This is when Ethereum releases your locked tokens and returns them to your wallet.
However, if someone believes the state commitment is fraudulent or incorrect, they can challenge it through a fault proof. If the challenge is successful, the sequencer who proposed it will have the stake they have put up slashed or taken away, and the challenger will be rewarded. If a successful challenge occurs, the Optimism chain itself doesn’t roll back; only the state commitments are reversed.
Source: Kyle Charbonnet
After all that has been said, fault proofs are currently not active on the Optimism network due to the previously referenced EVM Equivalence upgrade. This means that, as it stands, network users trust the sequencer the Optimism team runs to post valid states to Ethereum.
While not too different, they plan to rectify this in an upgrade and will introduce a “next-gen fault proof” called Cannon. This move also comes as a result of the Optimism team’s perceived shortcomings with current fault proofs and has detailed their “pragmatic path to decentralisation” in which they explain them.
As the project becomes more decentralised and others can participate in block production, the OP token will also be used more.
OP is the network’s native token which will be used to coordinate activities. The main uses are governance, incentives and gas.
Governance on the network is done through the Optimism Collective. This collective is further broken down into the Token House and the Citizens’ House.
The Token House is considered the short-term governance platform. Here holders of the OP token can submit, debate and vote on certain governance proposals either directly or through delegating their voting rights.
The type of votes that take place in the Token House include:
- Governance fund grants
- Protocol upgrades
- Inflation adjustment
- Director removal
- Treasury appropriations
- Rights protection
The second platform is the Citizens’ House. This is focused on longer-term objectives. They plan to implement a non-plutocratic governance structure that focuses on retroactive funding of public goods. You will be considered a citizen of the House if you have a “soulbound” NFT (non-transferrable NFT).
The funds for this will come from the following sources:
- 20% of the initial OP supply is dedicated to RPGF
- Redeployment of some of the sequencer revenue generated on Optimism
- Donations from other sources.
The other use of the token is incentives. To run a sequencer, you will be required to put a stake in the form of the OP token to show that you intend to act honestly. You will have that stake taken away if caught manipulating transactions and acting dishonestly.
Source: Optimism Documentation
The final use is gas; as with Ethereum, you are required to pay with the network’s native token to have your transactions processed and settled.
Optimism has positioned itself well as a core contender in the scaling sector. Even if blockchains can scale meaningfully at a layer 1 level, it is generally accepted that there will still be a demand for other solutions that can help them increase their scalability even further. There is also the added benefit of other features that may not be possible to implement on a layer 1 chain, whether that is privacy or application-specific requirements.
The Optimism team has emphasised their slow, pragmatic approach to scaling and is open to adopting other scaling technologies, such as zkRollups, when they believe they are ready.
While still very centralised, they have made plans to decentralise over time, and we look forward to watching the project develop as we go on.
If you are interested in staying up to date, please subscribe to our newsletter at etherbridge.co
This is not financial advice. All opinions expressed here are our own. We encourage investors to do their own research before making any investments.