By Jameson Lopp
Compiled by: LlamaC
Main Text👇
In the context of network protocols, ossification refers to the slowing down of their rate of evolution and change. This seems to be a law of network physics. Essentially, as a network protocol gains wider adoption, the "mass" of the network increases, and the effort required to change the direction of the network by coordinating software updates among the protocol's users increases dramatically. Eventually, the ability to safely activate any protocol changes becomes overwhelmed by the sheer weight of the network, due to the inability to coordinate a large number of decentralized participants.
Therefore, Bitcoin’s ossification is inevitable. But as of today, we are still debating whether we should proactively ossify the protocol. I personally strongly disagree with this position and believe that there is still too much room for improvement and it is too early to abandon changes to the base protocol.
I submit to you that Bitcoin can only remain vibrant, relevant, and secure in the long term through a willingness to implement reasonable, broadly beneficial protocol improvements in a careful, consensus-driven manner. Rigidity that freezes progress at the current point in time is arrogant, ahistorical, and a rejection of the vision that created Bitcoin in the first place. Thoughtful, ongoing evolution is key to Bitcoin's long-term value proposition. Digital gold is superior to physical gold precisely because it is not inert. My point is this: physical gold has properties that cannot be improved upon, so financial innovation in gold is enabled by centralized IOUs... but Bitcoin has properties that can be improved upon, thereby enhancing its permissionless use.
Learning from history
Bitcoin is only 15 years old and has already gone through many consensus changes and upgrades. It is premature to assume that this point in time is the ideal stopping point. Protocols need to adapt over time to remain viable.
We should learn a lesson from other popular network protocols like SMTP. If Bitcoin ossifies, developers will build increasingly complex layers on top of it to add needed functionality. Complexity introduces vulnerabilities and exploits.
The Death of Decentralized Email: A Decade-Long History of Centralization and Destruction of Email Protocols
https://blog.lopp.net/death-of-decentralized-email/
This is not a criticism of complex layers like BitcoinOS/BitVM/Botanix’s Spiderchain/Citrea’s zero-knowledge rollups - they are doing the best they can with the available toolsets. While we don’t want Bitcoin to be an all-encompassing protocol, if adding low-level functionality at the base layer significantly reduces the complexity of building functionality at higher layers, then it makes sense to do so.
Potential Paths Forward
Many desirable features, such as contracts, vaults, and payment pools, require base layer upgrades. Building these features in a clean way on the protocol itself is far better than using hacky overlays. A base layer with more building blocks opens up new design space for Bitcoin.
Regarding the news that Bitcoin's second-layer developers want to introduce OP_CAT, he emphasized the benefits of OP_CAT to a variety of projects and that it will accelerate permissionless innovation. He believes that the view that all improvements can be done in other layers outside the base protocol is usually put forward by those who have not tried to build other layers.
https://x.com/lopp/status/1850847485033349390
Careful, well-tested upgrades that are thoroughly discussed and reach community consensus do not undermine property rights or Bitcoin’s core stable currency proposition. Upgrades reflect the will of users, not override them.
I believe the potential of Bitcoin is far greater than what we have achieved so far. I see the Bitcoin blockchain as a cryptographic accumulator for all kinds of systems that can be anchored in it. But we have only scratched the surface of what is possible. If we freeze today, when building permissionless second layer networks is so difficult, we will tie the hands of developers and greatly limit experimentation in finding the most valuable uses for block space.
People often say that we don’t need to change Bitcoin because we can scale it through other layers. Of course, it would be great if developers were not restricted! We simply don’t have all the necessary raw building blocks at the base layer to easily launch a permissionless second layer network. For example, we could make Bitcoin Script powerful again.
Rusty Russell explains his great script recovery project: Bitcoin's v0.3.1 version disabled many script opcodes, most notably OP_CAT. Re-enabling these opcodes would unlock a lot of potential, and in modern Bitcoin there are a few additional opcodes that complement them nicely (such as key addition). This talk aims to present a coherent model for making Bitcoin Script as powerful as possible while avoiding the pitfalls that led to its initial weakening.
https://www.youtube.com/watch?v=rSp8918HLnA
Note that we implemented 3 different forks to enable 3 different building blocks to create the Lightning Network. Without the features enabled by these forks, the Lightning protocol would be much more cumbersome and the game theory would not be as sound.
We can do other soft forks, like SIGHASH_ANYPREVOUT, which would greatly enhance the Lightning Network and allow channel factories, making the Lightning Network orders of magnitude more efficient. We can do some privacy-enhancing forks, like cross-input signature aggregation. We can also do forks like OP_CTV, which improves the security of self-custody through covenants and vaults. We can see many potential futures, but it is becoming increasingly difficult to move in these directions.
On sovereignty and self-custody
Scaling is another long-term issue. Greg Maxwell said in 2015:
If the system costs too much, people will be forced to trust a third party rather than independently enforce the rules of the system. If the Bitcoin blockchain is too large relative to the resources used by the available technology, Bitcoin will lose its competitive advantage over traditional systems because the cost of verification will be too high (making it unaffordable for many users), forcing trust back into the system. If the capacity is too low and the way we transact is too inefficient, then the cost of accessing the chain for dispute resolution will be too high, again pushing trust back into the system.
Decentralization of validation that won the blocksize debate is only part of the story. Decentralization of economic participants is also important to Bitcoin’s long-term success. Remember, it is not the will of the nodes that determines Bitcoin’s future, but the will of the economic majority of nodes. Bitcoin’s economic participants include miners, holders, and transactors (including companies and custodians). The point is - if the number of economically relevant nodes decreases due to centralization, and most Bitcoin users are unable to self-host due to cost, we should expect the “governance” of the protocol to become more centralized and fragile.
In its current state, Bitcoin may only have access to its fundamental properties to 100 million entities worldwide. In a world of 8 billion people, this scenario would not result in a new decentralized currency that changes the landscape of value and scarcity, but would simply create a new elite that, over time, will do what all elites in history have done, initially creating prosperity and ultimately degenerating into bread and circuses. For the first time, Bitcoin has the potential to do more than just transfer power from one elite group to another, but only if we remain committed to achieving maximum decentralization through improvements to the protocol and making Bitcoin’s fundamental properties accessible to more people around the world.
Note that the argument that “we can do whatever we want on other layers” often overlooks the fact that no layer on top of Bitcoin can provide the same security model as the base layer. Every time you build a layer on top of Bitcoin, you create a whole new set of game theory and tradeoffs for self-custodial users of that layer.
Rigid ideological stamp
Solidificationists believe that Bitcoin has already fulfilled its core functions as sound money and a store of value. Further changes, even with good intentions, would introduce unnecessary risks and could undermine the features that make Bitcoin valuable. By solidifying the protocol, we ensure that Bitcoin remains a trustworthy, decentralized, and immutable monetary system in the long term.
1. Maintain trust in the fundamental properties of Bitcoin:
Bitcoin’s main value propositions are its fixed supply and immutability. Any changes to the protocol, even soft forks, have the potential to undermine confidence in these core properties. Some claim that the ability to change the protocol would reduce confidence in inflation schemes, no matter how well-intentioned.
2. Reduce developer control and centralization risks:
Allowing continued changes to Bitcoin would give developers too much influence over the protocol. This would create centralization risks, as a small group of people could change the properties of Bitcoin.
3. Prevent unintended consequences:
Even well-intentioned and well-tested changes can have unforeseen effects on the network. As Bitcoin continues to grow in value and importance, the potential impact of these unintended consequences becomes increasingly severe.
4. Difficulty of change increases with growth:
As Bitcoin adoption increases, and more economic value is built on top of it, any changes become more risky and disruptive. Solidification advocates believe that the protocol should reach a stable point, similar to other foundational protocols like TCP/IP or power socket standards.
5. Maintaining Bitcoin’s function as sound money:
Bitcoin’s primary purpose is to serve as a new monetary system that is immune to debasement. Rigidity ensures that this core functionality is preserved without risking changes to its fundamental properties for the sake of potential improvements that may not be necessary.
Common arguments for rigidity
The rigid camp believes that Bitcoin currently works very well and that the protocol rules should be extremely resistant to change in order to preserve its core value proposition as an immutable, non-inflationary, and apolitical form of money. Even well-intentioned changes carry huge risks that could jeopardize Bitcoin's long-term success and stability.
1. Don’t fix what isn’t broken
Bitcoin has been successful under the existing protocol, growing from $0 to $1.4 trillion in market cap in just 15 years. There is no need to risk undermining that success with hasty or unnecessary changes.
2. Stability is crucial
Bitcoin's core value proposition is its stability and predictability. Protocol rules should not be changed at will. Frequent changes will undermine people's confidence in the immutable nature of Bitcoin.
3. Think before you act
Changing the Bitcoin protocol is an extremely serious undertaking, akin to amending a constitution or a law designed to last for hundreds of years. Any changes must be made slowly, carefully, conservatively, and only implemented after considering all long-term implications.
4. The higher the stakes, the steadier your hand
The larger and more successful Bitcoin becomes, the more important it is to be cautious about any protocol changes. Now with over a trillion dollars in value and nation-state-level buyers involved, we cannot afford to make mistakes or take unnecessary risks.
5. The road to hell is paved with good intentions
Even well-intentioned protocol changes can have unforeseen negative effects, such as harming the economic interests of miners, developers, and holders. The potential risks may outweigh any theoretical benefits.
6. Keep it simple, stupid
Not every new feature or improvement needs to be implemented at the base protocol layer. Many things can be implemented at a higher level like layer 2 or layer 3 without compromising Bitcoin’s core security model and stability.
7. Unchanging Currency in a Changing World
Constant "improvements" and protocol changes go against Bitcoin's promise as a stable, apolitical currency and settlement network. Rigidity is a property that prevents Bitcoin from being captured by special interest groups or mutating unpredictably.
8. Bitcoin should only be used as a currency
Using block space for non-monetary purposes like tokens/NFTs will only fuel fads and pump-and-dump scams that crowd out legitimate users from leveraging Bitcoin as a currency.
My response to the rigidity argument
Maintaining trust in the fundamental properties of Bitcoin:
Trust in Bitcoin's properties and the ability to resist implementing bad ideas ultimately comes down to the governance process for protocol changes, not making changes impossible. Bitcoin is crypto-anarchism, a system that defaults to apathy, which is a powerful veto. You either believe that Bitcoin's governance has served us well so far, or that we just got lucky and the whole system could collapse at any time.
Jameson Lopp - Keynote speech on using blockchain to disrupt bureaucracy
https://www.youtube.com/watch?v=_IMzSCSeM68
Reduce developer control and centralization risks:
Similar to the above, either you believe the game theory around protocol changes is sound, or we’ve just been lucky so far. Bitcoin developers can’t force anyone to run code they disagree with.
Who controls Bitcoin Core? Learn how Bitcoin development works.
https://blog.lopp.net/who-controls-bitcoin-core/
Furthermore, the internal development process is extremely challenging. Most proposed rules and code changes fail to pass muster.
Challenges for Bitcoin Core Contributors A deep dive into the history of accepted and rejected code changes in the Bitcoin Core project.
https://blog.lopp.net/bitcoin-core-contributor-challenges/
To summarize my research four years ago:
After going through all the rejected Bitcoin Core pull requests, we found:
- 9,011,209 Total number of rejected new lines of code
- 6,279,435 total lines of code rejected for deletion
That means 15,290,644 lines of rejected code changes, compared to 3,651,046 lines of accepted code!
This suggests that as of writing, only 19% of the lines of code proposed for change have been accepted into Bitcoin Core.
Preventing unintended consequences:
In my opinion, the fear of unknown unknowns and unintended consequences is not a valid argument. Why? Because every decision has unknown unknowns. Making a change to the protocol has unknown unknowns. Not making a change also has unknown unknowns. There are always unknown unknowns that cannot be quantified, so the argument is actually self-contradictory. Vigilance is key - this is exactly what makes Bitcoin anti-fragile.
The difficulty of change increases with growth:
I don’t think this is actually an argument that both sides disagree on. As the network grows and increases in value, it has always become harder to change, and will continue to do so in the future.
Maintaining Bitcoin’s functionality as sound money:
The world in which Bitcoin operates will never ossify. The world will constantly throw new problems at Bitcoin; if it fails to adapt and solve them, we should expect crude and potentially centralized solutions to be rammed into it. This is what led to the downfall of SMTP. The point is that Bitcoin’s features are not guaranteed to be preserved by ossification.
Don't fix what isn't broken
No one is pushing for hasty change, and no one can make a serious argument that Bitcoin will "break" without a particular feature. But what we can say is that the nature of Bitcoin's use will change. It has already changed significantly over the past 15 years.
Stability is crucial
Bitcoin's rules have never been "changed at will" since Satoshi left the project. Satoshi has ever made changes unilaterally without consulting others. I've noticed that some influential people disparage Bitcoin developers as "tinkerers", which couldn't be further from the truth. We can observe that the rate of change in Bitcoin has slowed down significantly over the years due to the extreme caution of developers.
Think before you act
Indeed, slow and steady improvement with a well-proven track record is exactly what innovators demand.
The greater the stakes, the steadier the action
We should absolutely strive to avoid mistakes. We should also have confidence that mistakes are not irreversible. For example, many vulnerabilities have been introduced into Bitcoin Core, but they have been patched without causing accidents. Even when the Bitcoin network suffered a consensus failure, it was able to recover within a few hours due to the vigilance of network participants. This is the fundamental characteristic of Bitcoin's antifragility.
Bitcoin does not exist in a vacuum. In a sense, it is a living organism. No life form can thrive by standing still.
Bitcoin is the mycelium of money —By Brandon Quittem
https://brandonquittem.com/bitcoin-is-the-mycelium-of-money/?ref=blog.lopp.net
The road to hell is paved with good intentions
I think this is another paradoxical argument. The Bitcoin ecosystem is extremely complex, consisting of countless moving parts and actors. As parts of the system outside of the protocol itself continue to change over time, we should be prepared to deal with unforeseen consequences of those changes.
Keep it simple, stupid
This is another point that I think both sides generally agree on. The changes that should be considered most important to the base layer are those that can have a huge impact on other permissionless layers, allowing them to experiment without having to worry about problems with the base layer.
The constant currency in a changing world
This seems to be another issue of not believing in the game theory behind Bitcoin governance. I think if you don’t believe in the checks and balances inherent in the system, then you don’t really believe in Bitcoin.
Jameson Lopp noted in his post that public permissionless consensus systems (such as public blockchains) allow users to use them without trusting any single individual, but users must collectively trust all participants.
https://x.com/lopp/status/747087056141164545
As I’ll mention later, rigidity itself also risks Bitcoin’s capture by special interest groups. The answer is not paralysis, but vigilance and the ability to adapt to new pressures and adversaries!
Bitcoin should only be used as currency
There has been a long-running debate about which use cases of Bitcoin should be considered spam. I don’t find this debate particularly interesting because it boils down to people arguing about subjective value, whereas we can empirically observe that non-financial uses of block space have objective value to people — they are willing to pay for the privilege.
Technically, Bitcoin is a data store; the blockchain is basically an append-only log with several other interesting properties. As a result, people have been using Bitcoin for non-financial purposes for over a decade. As I wrote 8 years ago, it is the credibility of the permanence and non-overwriteability of this data that attracts people to use it for non-financial purposes.
Bitcoin: An anchor of trust in a sea of blockchains Bitcoin is the strongest permissionless blockchain in terms of computational security because it has the most resources invested in securing it through a proof-of-work process.
https://blog.lopp.net/bitcoin-the-trust-anchor-in-a-sea-of-blockchains/
We don’t know what the long-term market for blockspace will look like — that is, which uses of blockspace will be found to provide the most utility and value. This question becomes increasingly important with each halving. I believe that more functionality and more layers to run experiments means we are more likely to find the highest-value use case for blockspace. For example, perhaps this could be powering zero-knowledge rollups. We don’t know yet, so I think we should let innovators continue to explore the potential design space.
What do all these arguments boil down to in my opinion?
Jameson Lopp discussed the relationship between “settlers” and “innovators” in the Bitcoin ecosystem at X.
https://x.com/lopp/status/1851219428374954363
Frequently asked questions
What if all of these non-bug-fixing protocol change ideas are “nice, but unnecessary”? Are these just Bitcoin tech geeks running wild in their ivory tower technical interests that aren’t strictly necessary for Bitcoin to one day become a global currency?
I don't think it's a question of necessity or not. I think it's a question of finding a path, exploring the design space of Bitcoin and maximizing the value of the system. To be clear, we can solidify Bitcoin now and it will continue to work fine for a long time until we encounter critical issues like quantum computing or timestamp overflow points. But due to development constraints, the nature of Bitcoin itself will evolve in different ways.
Where is your “stopping point” for change? When is Bitcoin good enough?
We should keep improving Bitcoin until we can’t improve it anymore. We’ve seen a sharp decline in Bitcoin Improvement Proposals since 2017 — averaging less than 1 per month since then. And many proposals don’t even come with activation guidelines because developers don’t want to go through that kind of rigor. As a result, we’re losing talent to protocol development, which is further exacerbating the slowdown.
Should protocol changes be limited to "bug fixes and maintenance" and not include "new features"?
That is certainly an option, and maybe that is the path we will take eventually. But I don’t think we should be satisfied with the status quo.
Describe possible scenarios where the Bitcoin ecosystem might agree to support and push for a soft or hard fork change
Any critical issues that threaten the continued operation of the system. However, the rigid nature may make emergency fixes very difficult in the future.
- Imagine that we haven’t made any changes to Bitcoin’s consensus rules in decades. So maybe the current crop of Bitcoin protocol developers have never really experienced making changes to consensus. In that case, that doesn’t bode well for us.
- Consider that there are potential problems where we don’t know exactly when they will become critical. The very nature of rigidity means that we keep putting off solving these problems… until it’s probably too late. I recommend watching my recent talk on quantum computing for a concrete example of this happening.
Jameson Lopp explored the risks posed by quantum computers in his keynote “Securing Satoshi’s Stash” at the Future of Bitcoin 2024 conference. This is a must-see for anyone serious about protecting their Bitcoin holdings.
https://www.youtube.com/watch?v=MTUzpR_mxAg
Conclusion
We should be working on changes to Bitcoin that increase its functionality and allow more permissionless systems to be anchored to it. I think we can all agree that Bitcoin shouldn’t become a hodgepodge of protocols like EVM-based networks, but as it stands, developers who want to innovate find it difficult to do so without creating extremely complex and cumbersome logic.
Rigidity is complacency. Yes, we all agree that Bitcoin is awesome. But I disagree that Bitcoin has reached its full potential. I think complacency is one of the biggest threats facing Bitcoin - we can’t rest on our laurels.
Technology is inherently deflationary. Bitcoin’s consensus rules should prioritize security and keep the system as decentralized as possible in multiple ways. This includes not only node operators, but also users of blockspace. After all, if someone can’t use blockspace due to price, they certainly won’t run a full node. I also believe that we should enhance the ability of developers to build permissionless second layers so that we can continue to explore potential use cases for blockspace as a cryptographic accumulator, with more opportunities to find a path to sustainable demand and pay for Bitcoin’s thermodynamically secure blockspace in perpetuity.
Do we want Bitcoin’s future to be driven by optimism or pessimism?
Jameson Lopp published a view on X comparing the positions of Bitcoin innovators and rigidifiers, arguing that Bitcoin's anti-fragilité (anti-fragilité) or fragilité (fragilité) depends on personal beliefs.
https://x.com/lopp/status/1851616186468884788
To be clear, caution is critical. You will never see me claim anywhere that “Bitcoin must implement feature X or it will fail.” In my opinion, Bitcoin’s success is actually one of the things that makes it harder to improve.
Jameson Lopp made the point in his post that Bitcoin’s exchange rate could continue to rise even as its unique properties gradually erode, and he warned against letting newfound wealth lure us into complacency.
https://x.com/lopp/status/1851236425632551392
But if we allow ourselves to be paralyzed by fear, we will sacrifice potential paths forward and greatly limit exploration of Bitcoin’s design space, which I think will naturally lead to limiting its adoption, use cases, and reinforcement of valuable properties.
The torments of precaution often outweigh the dangers to be avoided. -Napoleon Bonaparte
I'm going to caution this because I see a conflict ahead. Consider the motivations for why someone would want to improve the Bitcoin protocol. The only reason you would care about doing so is if you were a direct user of the protocol. In other words, protocol improvements are only interesting to those who self-custody. If you use a trusted third party to store your funds, you don't care how they use the protocol.
Jameson Lopp posted a tweet on X stating that Bitcoin adoption by the traditional financial community (TradFi) does not care about improving the protocol and scaling the network because they are not interested in self custody. He predicted that the next fight for the future of Bitcoin is about to begin.
https://x.com/lopp/status/1837472391364051419
Maybe Bitcoin has ossified and everything written above is in vain. We won’t know for sure until we have enough retrospective perspective. The world will never stop evolving, and we have to ask ourselves if we want Bitcoin to evolve with it, or be left behind.
Let us move forward together at a faster pace.
go ahead.