Optimistic Rollups on Bitcoin

Bitcoin, scaled. NOS is a fast, stable, and scalable Bitcoin L2 blockchain.


By bringing smart contracts to Bitcoin, Bitcoin Virtual Machine lets developers create DEX, DAO, tokens, data storage, and many other use cases on Bitcoin. However, the biggest challenge is Bitcoin's 10-min block time.

Increasing Bitcoin capability in terms of speed is fundamental to the mass adoption of decentralized applications on Bitcoin.

The main goal of NOS (or "Nitrous Oxide") is to turbocharge Bitcoin transactions (reduce transaction latency) without sacrificing decentralization or security.


NOS reuses the battle-tested Optimism codebase. It is a modified version of the OP Stack that adds support for Bitcoin.

Like Optimism, NOS uses Optimistic Rollup, a fancy way of describing a blockchain that piggybacks off the security of another blockchain.

In this case, NOS takes advantage of the consensus mechanism of Bitcoin instead of its own. This is possible thanks to the Bitcoin Virtual Machine protocol, which brings smart contract capability to Bitcoin.


Data Validation

Implementation: The Bitcoin Network

The foundation of the NOS software stack is the Data Validation component. This component significantly impacts the security model of the whole stack. Everything else in the entire stack is derived from the Data Validation component.

Data Availability

Implementation: The Polygon Network

For pragmatic reasons, NOS currently stores data on both Bitcoin and Polygon. Bitcoin is arguably the most secure blockchain. NOS stores the data hash on Bitcoin. Polygon is the most cost-effective storage solution. NOS stores the data (compressed transactions) on Polygon.

Smart Contract Platform

Implementation: Bitcoin Virtual Machine #0 Trustless Computer #0

Bitcoin Virtual Machine #0 is a special computer. It is a modified version of the EVM that adds smart contracts to Bitcoin. Bitcoin Virtual Machine #0 is used to glue all the components of the NOS software stack together.

Decentralized Sequencing

Implementation: Under development

We're actively working on decentralizing the sequencer. ETA: Q3 2023.



Implementation: op-batcher

A sequencer (block producer) determines how transactions are collected and published to Layer 1. The sequencer compresses transactions into batches and writes these batches to Polygon, and writes the hash to Bitcoin via Bitcoin Virtual Machine to ensure data availability and integrity.

NOS blocks are currently produced every 2 seconds.

Rollup Node

Implementation: op-node

The Rollup node defines how the raw data stored in the Data Availability component (Polygon) is processed to form the inputs for the Execution Engine.

This is also referred to as the Derivation component, which derives the L2 blocks from the L1 blocks.

Execution Engine

Implementation: op-geth

The Execution Engine defines the state transition function. It takes inputs from the Rollup node, executes on the current state, and outputs the new state.

op-geth is a modified version of the EVM that adds support for L2 transactions.


Implementation: op-proposer

The Settlement component commits the Merkle root of the new state (the output from the Execution Engine) to Bitcoin.

Note that the state roots are not immediately valid. In an optimistic rollup setup, state commitments are published onto Bitcoin as pending validity for a period (currently, set as 7 days) and subject to challenge.

The Optimism team is developing the fault-proof process. Once it’s completed, we’ll add it to NOS.


Users can deposit Bitcoin assets (BTC and BRC-20 tokens) from Bitcoin to NOS and, vice versa, withdraw them back.

For example, to deposit BTC from Bitcoin to NOS

  1. Wrap BTC to WBTC via Trustless Bridge

  2. Deposit WBTC to NOS via L1StandardBridge contract

To withdraw BTC from NOS to Bitcoin

  1. Initiate a withdrawal on NOS

  2. Wait for the next Merkle root to be committed to Bitcoin

  3. Submit the withdrawal proof

  4. After the fault challenge period ends, withdraw your WBTC

  5. Unwrap WBTC to BTC via Trustless Bridge



Implementation: NOS as a BRC-20 token

NOS is the governance token to decentralize decision-making.


Implementation: Under development

The NOS DAO manages NOS configurations, upgrades, design decisions, development grants, etc.

Last updated