Bitcoin Core contributor Jeremy Rubin has announced his work on a new smart contract language for Bitcoin that he hopes will increase users’ “financial self-sovereignty”.
Rubin demonstrated the new Sapio language on Saturday at a RecklessVR meetup presentation in virtual reality. Many viewers attended the lecture in VR headsets. He plans to release the programming language as part of his new research organization Judica.
Stateful smart contracts allow users to lock money so that money cannot be spent until certain conditions are met or a series of interactive steps has been taken. These contracts are most commonly associated with the Ethereum blockchain, which is very flexible and makes it easy to write stateful smart contracts.
Read more: How do Ethereum Smart Contracts work?
However, it is less well known that Bitcoin also supports various types of more complex smart contracts, e.g. For example, more than one person must sign a transaction before it can be issued. Compared to Ethereum, however, Bitcoin smart contracts are much more complicated and unwieldy to create, or they are stateless – that is, the conditions are either met all at once or not at all. Until now, there have been fewer options for developing smart contracts for Bitcoin.
Rubin hopes to expand smart contract use cases for Bitcoin to give users even more control over what they can do with their money.
New opportunities for smart Bitcoin contracts
Sapio could work for smart bitcoin contracts today. Most of the types of smart contracts Rubin envisions are not yet available with Bitcoin.
He built Sapio specifically on CHECKTEMPLATEVERIFY (CTV), a change that, if adopted, could bring smarter contracting features to the Bitcoin network, namely the ability for users to secure their Bitcoin in new ways.
In his talk, Rubin described CTV as “a simple alliance system for Bitcoin”. The idea of covenants, which have been around for a long time, is to add security measures, e.g. B. Baking additional rules for a bitcoin stack to prevent the owner of the bitcoin from sending to all but a few addresses.
“In practice, this means that you can do more complex smart contracting tasks [determining] How Bitcoin can be spent when a coin is created, ”said Rubin.
One use case for covenants is Bitcoin safes. Usually, once a private key is taken, a malicious actor can scurry away with the associated coins. However, locking your money in such a vault puts restrictions on the movement of Bitcoin in the event of a mistake or other security issue.
“I think vaults are one of the most important use cases CTV will bring to the table. They provide an immense amount of financial sovereignty tools for a wide audience, ”said Rubin, adding that this technology gives users the ability to do it themselves without a third party.
Read more: The “Great Lockdown” increases the demand for Bitcoin Custody Solutions
Safes are currently possible in Bitcoin, but could be a lot easier to create using CTV, argued Rubin.
While Rubin is most passionate about safes, CTV opens up a variety of other use cases, such as congestion control. CTV could help Bitcoin users wait out high fees for a time when the blockchain has less transaction traffic and therefore lower fees.
Now that Rubin develops Sapio, a smart contract language specifically for CTV, these use cases will be easier for developers to program and thus easier to implement for everyday users.
Bitcoin as “justice”
Rubin’s newborn research organization Judica will focus on this bundle of technologies. There are plans to release tools that he hopes will “massively expand the Bitcoin economy,” Rubin told CoinDesk in an email.
The word “judica” is Latin for “judgment”: Rubin sees Bitcoin as justice, and he wants to push it forward to grow in that role.
“If you look at the relationship between the market and government, free market absolutists will usually say that government is just a disruptive agent and it will go away. However, on closer inspection, the functionality of the courts is vital to the development of the economy. Without reliable courts or a judicial system (including private arbitration proceedings), dealing with relatively foreigners is far too risky, which severely restricts economic activity. “Bitcoin is coming in and making it all easier. “The ability to enforce contacts through a legal system (rather than personal violence) enables an economy to thrive,” he said.
But he argues Bitcoin is too limited in what it can do today.
“The Bitcoin blockchain acts as a judicial system, but right now the types of contracts it can resolve are quite limited and it is difficult to develop more advanced contracts,” added Rubin.
As part of Judica, Rubin plans to release Sapio “along with drafts of a variety of smart contracts” implemented in the language of smart contracts. With Judica still in the early stages, Rubin said he was looking for grants, funding, and other team members to join.
Shipping CTV and Sapio
However, it is unclear when (and if) CTV will be used, explained Rubin in his talk. This is a major bitcoin change so it may take some time before the opcode can be used.
“I don’t know exactly when it will happen. I’d rather see it sooner than later, ”said Rubin.
Since Bitcoin is decentralized, there is no central decision-making authority. Therefore the developers do not always agree on the further way forward.
“If you ask any developer when [CTV will be deployed]You will get a completely different answer, ”said Rubin in his lecture. “There’s a reasonable number of people who say it’s three years from now – at least.”
Rubin has advocated CTV which, if successfully activated, would add these capabilities to Bitcoin. Most of the changes to Bitcoin – large or small – are implementation details or local guidelines. However, because CTV changes a global consensus rule, it is delivered over a “soft fork” even though the code changes actually required for CTV are small. As such, it would require enough network subscribers to support it in order to activate smoothly. So Rubin isn’t sure when the change will be available.
Read more: Hard Fork vs. Soft Fork
Many Bitcoin developers are more cautious and only bless changes that have been verified to some extent.
But in Rubin’s opinion, a period of three years is far too long. He called this timeline “sad” and said, “I find it difficult to say that this is important when it’s not really usable for at least three years.”
“Some people say,” Ship it out and see if we can get it in six months. “I fall more into this camp,” he said, suggesting that changes should be made quickly while Bitcoin is still in its early stages and more malleable. “I contend that Bitcoin is so early and experimental that we are very Have to put pressure on quickly. Other people believe that Bitcoin is ossified and must move very slowly. “
Rubin believes this type of change is important for Bitcoin’s future.
In his lecture he said: “We need a lot of new things [features]So when we say Bitcoin fixes this, it actually means what we think it does. “