Bitcoin with BRC-20: Network Congestant or the Future of BTC?

HASHKEY CAPITAL Reading Time: 4.46Min

In the ever-evolving world of cryptocurrencies, misconceptions can often lead to unnecessary panic and misinformation. A case in point is the recent belief that BRC20 tokens are causing significant congestion in the Bitcoin network, resulting in elevated transaction fees. This notion has stirred concerns among developers and Bitcoin purists alike.


The Misnomer of Gas Fees in Bitcoin


Firstly, it’s essential to understand the terminology. The term ‘gas fee’ commonly associated with the Ethereum network, is a misnomer when applied to Bitcoin. Unlike Ethereum, where computations and some storage operations are priced based on gas units, Bitcoin operates on transaction fees. These fees are determined by the transaction size — how much space it occupies on the blockchain. This fundamental difference underlines the importance of not conflating the two concepts, as doing so leads to confusion and misunderstandings about how Bitcoin operates.


The Role of BRC-20 and Network Congestion


The belief that BRC-20 tokens are directly responsible for network congestion and high fees on Bitcoin deserves scrutiny. While it’s true that recent transaction blocks and fees have been notably high, affecting user experience, the problem is more nuanced. The growth of the Unspent Transaction Outputs (UTXO) set has been identified as a significant factor contributing to this congestion. This set, a critical component of Bitcoin’s blockchain that records the state of all transaction outputs, has seen exponential growth, posing challenges in terms of storage and verification processes.


Understanding the UTXO Set


The UTXO set is at the heart of how Bitcoin tracks ownership of coins. After processing all transactions, the UTXO set shows the remaining transaction outputs, their value, and the conditions under which they can be spent. This mechanism is fundamental to Bitcoin’s operation, as it ensures that only valid transactions are added to the blockchain.


How does it work? This article provides a pretty decent explanation. In short, when someone sends you Bitcoin, what you’re actually receiving is one or more UTXOs. These UTXOs are now linked to your Bitcoin address, indicating that you have the right to spend them. To spend Bitcoin, you use some of the UTXOs linked to your address as inputs in a new transaction. Let’s say you want to buy a coffee for $3, and you have a UTXO worth $5. You would use this $5 UTXO to pay, and the transaction would create two new UTXOs: one UTXO representing the $3 paid to the coffee shop and another UTXO representing $2 in change, which goes back to you.


Unlike bank accounts that show a total balance, your Bitcoin wallet balance is the sum of all UTXOs that can be spent by you. Your wallet software keeps track of these UTXOs and adds them up to show your total balance.


Impact of UTXO on Network Performance


Each time a new block is generated, nodes must locally download the block data and verify the transactions within, requiring access to the UTXO set to check identity verification information, including signatures and other details. This process involves significant disk usage for storage and verification, leading to concerns about the scalability and efficiency of the network. For example, earlier this year we had a 4 MB block size due to a specific transaction, but if the network needs to process too much information on a regular basis, this could become the norm, resulting in higher fees.


Think about this: depositing 1,000 $100 bills into a bank can be done fairly easily, but converting those $100 bills into dimes first would make the process much more cumbersome.


Last year, the network experienced a substantial increase in the UTXO set’s size, from approximately 86 million UTXOs (5 GB) in April 2023 to 140 million UTXOs (8.74 GB) by November, underscoring the scale of this issue.


The proliferation of things like BRC 20 objectively causes the UTXO set to bloat. Some projects try to disguise data as signatures in transaction outputs, which exacerbates the problem, making it worse than just filling the blockchain with data. Ideally, one might think it is the “civic responsibility” of the community to avoid harming the network — but Bitcoin was built on trustlessness for a reason. There are always bad and/or irresponsible actors.


OP_RETURN: A Non-Controversial Optimizer?


Amid these challenges, the OP_RETURN function presents an interesting aspect of Bitcoin’s protocol. What is OP_RETURN? The OP_RETURN function in Bitcoin is a feature that allows users to insert a small piece of non-transactional data into the blockchain. Essentially, it’s used to embed arbitrary data, like text or references, within a transaction in a way that is recognized as unspendable. This means the data is permanently recorded on the blockchain, but it doesn’t move or represent Bitcoin value and, therefore, does not contribute to the UTXO set bloat. This characteristic has led to discussions about its potential to alleviate some of the network’s scaling issues, especially in the context of BRC-20 tokens and ordinals.


Could OP_RETURN Make Ordinals and BRC-20 More Efficient?


The debate centers around whether using OP_RETURN for data storage could mitigate the impact of BRC-20 tokens on the UTXO set. While switching to OP_RETURN could reduce the direct addition of data to the UTXO set, it doesn’t address the underlying inefficiencies of the off-chain smart contract systems associated with these tokens. Moreover, the adoption of such practices without a thoughtful approach could lead to other issues, highlighting the need for balanced solutions that respect the network’s integrity.


A Call for Responsible Innovation


The growth of the Bitcoin network and the introduction of new technologies like BRC-20 tokens and ordinals bring both opportunities and challenges. As the community navigates these developments, it’s crucial to prioritize the network’s health and scalability. Despite its status as the original “crypto” network, the Bitcoin ecosystem is incredibly nascent, and we are excited to see how it develops with the addition of new updates, roll-ups, and data availability projects over the next few years.