In a recent interview with bitcoin Magazine, Shinobi sat down with Blockstream's Andrew Poelstra to discuss his colleague Rusty Russell's ambitious proposal. Rusty plans to restore several abandoned features of the bitcoin code, a bold move that could significantly improve the functionality and expressiveness of bitcoin scripts.
Understand the new cost model
One of the central aspects of the “Great Script Restoration” proposal is the introduction of a new cost model for opcodes. Currently, in bitcoin each operation costs the same, regardless of its computational complexity. However, this model does not accurately reflect the true cost of script execution, leading to potential inefficiencies and limitations. Rusty's new cost model seeks to address this by assigning different costs to opcodes based on their computational requirements. This approach is a significant departure from the existing model and aligns more closely with how computational costs are handled on other blockchain platforms such as ethereum.
Andrew Poelstra highlighted the potential benefits and challenges of this new model. “The new costing model is very interesting and is something of a departure from the way bitcoin works today,” he said. The new model would ensure that scripts are priced more fairly based on the resources they consume, which could prevent spam attacks and other problems.
Challenges and consensus building
The implementation of this plan is not without challenges. A major concern is the complexity of determining the execution time of scripts. On ethereum, for example, transactions have a gas limit to prevent overcomputation. Poelstra acknowledged the similarities, stating, “I'm going to say something mediocre here and say this looks like gas, right?” However, she emphasized that unlike ethereum, where running out of gas still costs the user, in bitcoin a failed transaction does not result in a loss of funds.
To move forward, the bitcoin developer community needs to build consensus around this plan. Poelstra mentioned a notable shift in the community's attitude toward script expressiveness in recent months. This shift is due in part to the emergence of new use cases and the realization that restrictive approaches can hinder innovation. “There has been a really interesting mood shift in the bitcoin developer community over the last six months,” she observed.
Addressing bitcoin Ossification
The path forward involves several key steps. First, developers must write a proper proposal, including reference implementations and test vectors. This proposal will then be reviewed and discussed within the community to gather feedback and build consensus. Poelstra highlighted the importance of this process, stating, “Initially, the steps are pretty simple, right? You write a proper proposal, you have a reference notation, you write test vectors, and you get benchmarks.”
An important part of the consensus-building process will involve addressing the debate over ossification – the idea that the bitcoin protocol must remain unchanged to preserve stability and security. Some members of the community, known as ossificationists, believe that bitcoin should resist changes to avoid introducing potential vulnerabilities and maintain its current strength. Poelstra acknowledges this concern, but maintains 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 the changes outweigh the benefits. Poelstra noted that bitcoin is already evolving, citing the emergence of ordinals and inscriptions as examples of how the network is being used in new and unforeseen ways. She emphasized that refusing to adapt could limit bitcoin's potential and that economic incentives within the network will naturally determine usage priorities.
“We need to talk to people who identify as ossificationists or who we might call ossificationists, right? People who don't want bitcoin to change. And I think we need to passionately and correctly argue that this is something that would be good for bitcoin,” Poelstra said. He believes that by clearly articulating the benefits of greater script expressiveness and addressing the concerns of ossificationists, a balanced and informed consensus can be reached.
Furthermore, Poelstra highlighted that while the change comes with risks, it also opens up opportunities for essential improvements, such as better scalability, greater security through vaults, and more efficient use of blockchain space with mechanisms such as coin pools. These improvements can make bitcoin more robust and adaptable to future needs.
The next steps involve not only the technical process of formalizing the proposal and conducting extensive testing, but also engaging in a broader dialogue within the community. This dialogue will need to balance the preservation of bitcoin's founding principles with the need for innovation and adaptation, ensuring that the network can continue to thrive and meet the changing demands of its users.
Conclusion
Rusty's plan to make bitcoin script great again represents a significant step toward improving the expressiveness of the bitcoin network. While there are challenges to overcome, the potential benefits in terms of functionality and innovation are substantial. As the bitcoin developer community continues to evolve and adopt new ideas, proposals like this will be crucial in shaping the future of the network.