Skip to content

ARC20

ARC20 is the fungible token standard under the Atomicals protocol, designed to implement decentralized, interchangeable digital assets on the Bitcoin blockchain. Unlike BRC-20 tokens under the Ordinals protocol, ARC20 emphasizes binding token balances directly to Bitcoin UTXOs (Unspent Transaction Outputs), achieving more native "atomicity" and tight integration with Bitcoin's security model.

Problem Statement

  1. Lack of Native Asset Standards: Bitcoin primarily focuses on transactions and UTXO management, lacking a flexible and decentralized native token issuance and management standard.
  2. Centralization Risk: Existing off-chain asset management or token schemes relying on centralized indexers carry certain centralization risks and data inconsistencies.
  3. Interoperability Challenges: How to implement token minting, transfer, and burning on Bitcoin's UTXO model in a simple, atomized manner that is easy for indexers to understand and verify.

ARC20 aims to provide a direct and decentralized Bitcoin token standard that maximizes the inheritance of Bitcoin's security by closely associating token balances with satoshis.

Implementation Mechanisms and Principles

The core mechanism of ARC20 tokens is "Sat Coloring" and UTXO Atomic Binding.

Token Minting

  1. Commit Phase: A user embeds a JSON object in the OP_RETURN output of a special Bitcoin transaction. This JSON object contains token metadata (such as name, symbol, total supply, precision) and a mint operation instruction. The first input UTXO of this transaction is treated as the "initial atom."
  2. Reveal Phase: The minter sends a transaction that spends the UTXO containing the "initial atom" and distributes the token supply to new UTXOs. Each mint action requires the user to provide Bitcoin Proof of Work (PoW), making token issuance more fair and resistant to Sybil attacks.

Token Transfer

  1. ARC20 token balances are directly bound to the Bitcoin UTXOs that carry them. For example, if a UTXO contains 1,000 satoshis and those satoshis are "colored" as a certain ARC20 token, then this UTXO represents 1,000 of that ARC20 token.
  2. Transferring ARC20 tokens means transferring the Bitcoin UTXO that carries them. When a Bitcoin UTXO is spent and new UTXOs are generated, ARC20 token balances are split and transferred according to Bitcoin transaction input and output rules.
  3. The protocol stipulates that for all UTXOs containing ARC20 tokens, the amount (number of satoshis) must equal the token balance. This means a UTXO can only carry one type of ARC20 token.

Indexing and Verification

The Atomicals indexer scans the Bitcoin blockchain, parses OP_RETURN outputs containing Atomicals protocol data, and builds an off-chain index to track all ARC20 token minting, transfers, and ownership states. Since token balances are tightly bound to UTXOs, the indexer can relatively easily verify transaction validity.

Key Features

  • Atomicity: ARC20 tokens are directly bound to Bitcoin satoshis, and their ownership and transfer follow the atomicity principles of Bitcoin UTXOs. This means token security is highly consistent with Bitcoin blockchain security.
  • Fair Minting (Proof-of-Work Minting): Token minting requires Bitcoin Proof of Work, promoting fairer token distribution and preventing early large-scale hoarding.
  • Decentralization: The protocol design does not rely on centralized indexers to define token validity; while indexers provide convenience, their data can be verified through protocol rules.
  • UTXO Binding: Each token unit is associated with a specific UTXO, making asset management more explicit and transparent.
  • Atomicals Protocol
  • Satoshi
  • UTXO Model
  • OP_RETURN
  • BRC-20