In a recent interview with Bitcoin Magazine, Shinobi sat down with Blockstream’s Andrew Poelstra to discuss colleague Rusty Russell’s ambitious proposal. Rusty plans to restore several abandoned features in the Bitcoin code. This is a bold move that will significantly improve the functionality and expressiveness of Bitcoin Script.
Understand the new costing model
One of the key aspects of the “Restoring Great Scripts” proposal is the introduction of a new cost model for opcodes. Currently in Bitcoin, all operations cost the same regardless of computational complexity. However, this model does not accurately reflect the actual cost of script execution, resulting in potential inefficiencies and limitations. Rusty’s new costing model attempts to solve this problem by assigning different costs to opcodes based on their computational requirements. This approach is a significant departure from existing models and aligns more closely with how computational costs are handled in other blockchain platforms such as Ethereum.
Andrew Poelstra highlighted the potential benefits and challenges of this new model. “The new cost model is very interesting and somewhat different from how Bitcoin works today,” he said. The new model ensures that scripts are priced more fairly based on the resources they consume, potentially preventing spam attacks and other issues.
Tasks and consensus building
Implementing this plan will be difficult. One major concern is the complexity of determining script execution time. For example, in Ethereum, transactions have gas limits to prevent overcomputation. Poelstra acknowledged the similarities, saying, “I’m going to say something malicious here and say this looks like a gas, right?” However, he emphasized that unlike Ethereum, where gas shortages incur costs to users, in Bitcoin there is no loss of funds due to failed transactions.
To move forward, the Bitcoin developer community must build consensus on this plan. Poelstra noted that the community’s attitude toward scripted representation has changed noticeably over the past few months. This shift is due in part to the emergence of new use cases and the recognition that limited approaches can stifle innovation. “There has been a very interesting shift in tone in the Bitcoin developer community over the past six months,” he said.
Bitcoin ossification problem solved
The path forward includes several key steps. First, developers must write an appropriate proposal, including a reference implementation and test vectors. These proposals are then reviewed and discussed within the community to gather feedback and build consensus. Poelstra emphasized the importance of this process, saying, “The first steps are very simple, right? Write a proper proposal, have a reference notation, write a test vector, get a benchmark.”
An important part of the consensus-building process includes addressing the debate about ossification (the idea that Bitcoin’s protocol should remain unchanged to maintain stability and security). Some community members, known as ossificationists, believe that Bitcoin should resist change to maintain its current robustness without introducing potential vulnerabilities. Poelstra recognizes these concerns, but argues that certain changes like Rusty’s proposal are necessary for Bitcoin’s continued growth and functionality.
The debate centers on whether the risks associated with change outweigh the benefits. Poelstra pointed out that Bitcoin is already evolving, citing the emergence of ordinal numbers and inscriptions as examples of how the network is being used in new and unexpected ways. He emphasized that refusal to adapt could limit Bitcoin’s potential and that economic incentives within the network will naturally sort usage priorities.
“We need to talk to people who call themselves ossificationists, or people who might call themselves ossificationists, right? People who don’t want Bitcoin to change. And I think we need to passionately and accurately argue that this is a good thing. I think Bitcoin does,” Poelstra said. He believes that by clearly articulating the benefits of improved text representation and addressing the concerns of osteochemists, a balanced and informed consensus can be reached.
Poelstra also emphasized that while change comes with risks, it also opens up opportunities for essential improvements, such as better scalability, increased security through vaults, and more efficient use of blockchain space through mechanisms such as coin pools. These improvements will make Bitcoin more robust and adaptable to future requirements.
The next steps include a technical process of formulating the proposal and conducting thorough testing, as well as engaging in a broader conversation within the community. These conversations must balance the preservation of Bitcoin’s core principles with the need to innovate and adapt to ensure the network can continue to thrive and meet evolving user needs.
conclusion
Rusty’s plan to make Bitcoin script great again represents an important step toward improving the expressiveness of the Bitcoin network. Although there are challenges to overcome, the potential benefits in terms of functionality and innovation are significant. As the Bitcoin developer community continues to evolve and embrace new ideas, proposals like these will be critical in shaping the future of the network.