Bitcoin is by far the most popular cryptocurrency in the world. Whether it is viewed from liquidity, on-chain transaction volume, or other arbitrary indicators, Bitcoin’s dominant position is self-evident.

However, for technical reasons, developers often prefer Ethereum. Because Ethereum is more flexible in building various applications and smart contracts. Over the years, many platforms have focused on the development of advanced smart contract functions, but obviously Ethereum is the leader in this particular field.

As these technologies were developed in full swing on Ethereum, Bitcoin gradually became a storage tool for value. Someone tried to narrow the gap between Bitcoin and it through the compatibility of Ethereum’s RSK side chain and TBTC ERC-20 token technology.

What is Simplicity?

Simplicity is a new bitcoin programming language that is more flexible than today’s bitcoin network in building smart contracts. This low-level language was created by Russell O’Connor, developer of the Blockstream infrastructure.

Blockstream’s CEO Adam Back explained in a recent webinar on this topic: “This is a new generation scripting language for Bitcoin and networks that include Elements, Liquid (sidechain), etc.”

Bitcoin creator Satoshi Nakamoto restricted Bitcoin scripts for security reasons early in the project, while Simplicity was an attempt to make Bitcoin scripts more flexible while ensuring security.

Although not Turing-complete, Simplicity’s expressive power is sufficient for developers who want to build most of the same applications on Ethereum.

In addition, Simplicity’s goal is to enable developers and users to more easily verify that smart contract deployment is in place, safe, and cost-effective.

“For security reasons, we really want to analyze before running the program,” David Harding, a technical writer dedicated to writing open source software literature, said in the first issue of the Noded Bitcoin blog,

“For Bitcoin, we do not allow Turing completeness, so we can analyze the program statically. Simplicity will not reach Turing completeness, so you can analyze the program statically.”
It is worth noting that the TBTC mentioned above was recently shut down by the creator shortly after it was released on the Ethereum mainnet because they discovered a vulnerability in a smart contract that supports ERC-20 tokens. Over the past few years, Ethereum smart contracts have exploded a number of security issues, such as the multi-signature vulnerability in Parity wallet and the infamous DAO incident.
What does Simplicity mean for Bitcoin?

In order to explore the real meaning of Simplicity for Bitcoin, LongHash contacted Dan Robinson of Paradigm Research Partner, who has both Simplicity and Ethereum research.

Robinson tells us: “Simplicity will be an extensive upgrade of the Bitcoin script function, not a collection of every script upgrade in Bitcoin history. As a ‘complete function’ instruction set, basically no need for the Bitcoin script function in the future Upgrade again, of course, in order to improve the efficiency of some functions, some upgrades are still needed. ”

This problem can be viewed from the perspective of a soft fork. In the past, the upgrade of the Bitcoin script was achieved through a soft fork, which requires community consensus to be activated on the network. If Simplicity is enabled, anyone can effectively implement some commonly used soft fork changes through this language without the need for network nodes to update Bitcoin consensus rules.

This solution has two major effects: Bitcoin development speed will be faster than before, and it also has a certain help for potential Bitcoin protocol ossification problems. However, in the end, the rigidity of the Bitcoin protocol is also desirable, because it effectively reflects the basic rules of the network, such as the token policy, etc. These will not change, so it can block the potential social attack vector to give this bitcoin value The first factor has an impact.

“Interesting meaning: If Bitcoin today deploys the Simplicity script, it will be able to self-expand,” Adam Back wrote on Reddit. “Improvements such as Schnorr / Taproot and SIGHASH_NOINPUT will be directly implemented.”

The Back example here is a soft fork scheme, which is one of the types of additions that can be made without changing the Bitcoin consensus rules after Simplicity is enabled. When asked what he thought of this, he clarified:

“I think from a technical point of view, the Taproot extension solution cannot be implemented in Simplicity language as Pieter Wuille said-but Schnorr can.”
As far as Robinson is concerned, if Simplicity is really added to Bitcoin, then the first thing that will work is some improvements that developers are currently studying, such as the design of payment channels such as Eltoo, new signature algorithms, and perhaps some privacy. Aspects of the promotion plan.
Robinson added:

“I would rather see a token standard developed, similar to Ethereum’s ERC-20, so that I can see some new applications, such as stablecoins, decentralized exchanges, and leveraged trading.”

Simplicity’s difference between Ethereum and Bitcoin

If the Simplicity language is added to the Bitcoin mainnet, then obviously someone will conclude that we have no reason to continue using Ethereum. However, even if Bitcoin has Simplicity, there will still be significant differences between it and Ethereum.

Robinson said, “I am interested in Simplicity not because it makes Bitcoin more‘ Ethereum ’but because it makes Bitcoin more‘ Bitcoin ’.”

Despite the use of Simplicity, contrary to Ethereum’s account-based settings, Bitcoin will still operate in UTXO (unspent transaction output) mode.

Robinson explained:

“The UTXO model is an excellent choice for the efficiency of validators, but its trade-off is that it is difficult to build applications to meet the needs of multiple people interacting with contracts.”
In addition, Ethereum has made great progress in developing platform network effects, at least in terms of smart contracts.
“The tools and developer ecosystem around Simplicity may take a long time to form,” Robinson said.

“Simplicity is not a human-readable language, so someone may need to develop a language to compile it and then use it for ordinary developers. In addition, the development of a smart contract design platform compatible with the UTXO model also needs to be carried out Numerous studies.”
From a development perspective, the network effect of Ethereum is explaining why RSK (Ethereum-style Bitcoin sidechain) designed the platform to be compatible with the Ethereum virtual machine.
But whether Bitcoin users will eventually need some cryptocurrency applications similar to those on the Ethereum network is currently unknown.

Robinson said,

“The overflow of the Bitcoin block capacity is larger than Ethereum, and its speed of producing a block in 10 minutes may also exclude some applications. Accordingly, it seems that it is not clear whether the Bitcoin community really wants to Build these applications (instead of using Bitcoin as a simple payment channel or vault), because such applications may cause blockchain congestion and even increase the yield of attacks by 51%-if new miners are introduced to mine Words of value. ”
As far as Robinson’s point of view is concerned, many bitcoin users have been critical of Ethereum since the early days of the oracle problem. The oracle problem has become an increasingly concerned issue in the development of various types of decentralized applications (DeFi).
When can Simplicity be implemented?

It should be noted that Simplicity may still have a long way to go before landing on the Bitcoin mainnet. But it is expected that this scripting language may be first added to the Liquid sidechain later this year.

This is an important step to start using Simplicity language on real-world assets, but some developers, such as those dedicated to Bitcoin privacy wallets, have shown little interest in the federal model of Liquid sidechains.

We asked Robinson what he thought of this, he said:

“I don’t think Liquid’s federal nature will destroy transactions. But it really makes it harder to harvest a large number of developers or users.”
According to Greg Maxwell, a long-term contributor of Bitcoin core and co-founder of Blockstream (also known as nullc on Reddit), since the introduction of a multi-version script system through SegWit upgrades, Simplicity can be added to the form of soft fork Bitcoin. Of course, this is based on the assumption that community consensus can be established around changes to the Bitcoin consensus rules.
Grubles (pseudonym) working at Blockstream tells us,

“I’m not sure how to deploy it through a soft fork, but it will not replace the mainnet and anything on the Liquid sidechain. It will only be one that can be used with existing address types (eg Legacy, P2SH, Bech32) New address type. ”
Grubles added that he believes that Ethereum has damaged the “smart contract” criticism because there are many problematic smart contracts that have been deployed on the platform for many years. Therefore, they feel that Bitcoin users who have been paying attention to Ethereum are not willing to see smart contracts being used flexibly on Liquid.
“I think this will be an interesting topic, but it will take a few years,” Back added. “The precedent can be verified on the side chain first.”


Post time: May-26-2020