RSK and RIF OS bringing smart contracts over Bitcoin

Giotto De Filippi
7 min readNov 19, 2018

--

For a long time everyone has been talking about how innovative Ethereum is compared to Bitcoin. This is just plainly wrong, it’s just that Bitcoin innovates in a completely different way. Ethereum innovates by adding features and complexity, Bitcoin innovates by becoming more robust and ensuring that it can be used as a settlement platform by other protocols. RSK will be the first one of those protocols that will operate on top of the Bitcoin layer.

RSK may soon mark the beginning of Bitcoin 2.0. This project is led by Sergio Lerner, one of the most brilliant developers in the blockchain world. He personally found 6 bugs in Bitcoin out of 10. He also was security auditor for Ethereum. Being able to do that requires an extremely deep understanding of blockchain technology.

So what is RSK? It’s basically a layer on top of Bitcoin that allows Bitcoin to have the same functionalities as Ethereum and more. The way it works is very simple, if you want to do advanced operations with your Bitcoin you can convert one Bitcoin into one Smart Bitcoin coin 1:1.

RSK

For the bitcoiners out there, RSK also provides a very interesting roadmap to scale the Bitcoin network: Bitcoin currently processes approximately 6 tps. With Smart Bitcoins RSK can process more than 100 tps and with Lumino (3rd layer over BTC/RSK for off-chain payment channels) the network will be able to scale to up to 20,000 tps!

There are multiple benefits for Bitcoin in operating with multiple layers. Let’s look at them in detail:

First of all a smart contracts platform like RSK is completely blockchain agnostic. By not being tied to the store of value in the same blockchain RSK will be able to evolve faster than ETH. This is extremely important, as unlike Ethereum it doesn’t force you to use ETH as the reserve of value. Let’s say you make a contract with someone that would be resolved in several years. In order for the contract to be self enforcing the unit of accounting must be a crypto currency. Do you really want to use ETH as the reserve of value? Or you would rather have the choice to use anything you want? Like Bitcoin, Litecoin, etc.? Which is going to be more likely to survive over the next few years? With RSK the choice is yours to decide, no one can force you to use ETH.

Choice!

As a general rule do you really want to be forced to store value in a protocol where the founder and leader seems to be considering to abandon the project? And also a project which is still in its early stages and is supposedly going to switch to PoS in a transition that could be very problematic.

Vitalik Buterin

Bitcoin not only is the oldest crypto currency, but core developers came and went multiple times, and the project not only survived but thrived. Bitcoin has shown resilience and robustness. It is not clear if Ethereum would be able to survive the departure of its leader.

Who remembers this guy?

In the real world when you create a contract you’re free to use whichever currency you want. You can use the Euro or the Dollar or any other minor currency. It’s your choice. That’s what RSK enables by being completely blockchain agnostic.

Would you really accept to have to make a contract in a specific currency that may be completely unknown to you and not really time-tested just because “you have to”? The choice of currency to use for contracts should be left to the parties, and should not be imposed by the protocol. Technology is about empowering people to make more choices and not about forcing them towards choices that have been pre-selected for them.

Zimbabwe Dollar

RSK not only enables smart contracts on Bitcoin with the ability to be completely free to use whichever currency one prefers, but it also adds important features that Ethereum doesn’t have.

Those features are added by RSK on top of the Bitcoin layer, meaning that the increasing complexity doesn’t create any risk for the Bitcoin protocol. In general in software development there is a trade-off between security and features. But in the model of Bitcoin as a settlement layer this trade-off disappears. Bitcoin simply tries to be as robust as possible and open enough to allow additional layers to be built on top of it, of which RSK would be the first one. That means that all the actual features will be on RSK without making the core protocol of Bitcoin more complex than it should be.

Layers

On this second layer RSK will allows not only smart contracts just like Ethereum, but it will also allow micro-transactions without having to bloat the Bitcoin blockchain and will also have something that Ethereum seriously misses: an Oracle.

Oracle

Smart contracts are not really contracts, they are more like a series of instructions that will be executed by multiple computers that are connected to each other by a consensus protocol. What has been missing so far is the ability to incorporate in smart contracts information that lives outside of the blockchain.

In Ethereum smart contracts can only operate with information that is already present in the blockchain. Usually in the real world contracts are about parties agreeing to future outcome based on a future event. Most contracts have the same structure as bets. For example if something happened then someone has to pay someone. Being able to know if the event has happened or not is of extreme importance. A smart contract platform that is not able to do that is extremely limited. It basically becomes just a ledger where you can store structured data and the only future event on which you can establish a payment is simply a specific date. So you can make a contract which based on a future date would make a payment to a specific address. But you cannot include outside events from the real world like let’s say for example who won the Presidential election.

Ethereum

To be fair to Ethereum, they actively have tried to implement some solutions, like for example Augur and Gnosis.

Augur even if it has been there for a long time doesn’t seem to be used by anyone. Gnosis on the other hand which operates as a prediction market marketplace unfortunately was distributed very poorly in a way that only 5% of the tokens were distributed to the investors and the remaining 95% remained in the hands of the developers. This problem has not yet been solved as far as I know, and of course with that kind of distribution the Oracle is not decentralized nor reliable.

The funny thing is that even if Augur and Gnosis end up being successful they could still run on RSK :-)

Gnosis

The main issue of having the Oracle as an external component is that the Oracle is really the core part of the contract.

It’s like saying that it’s extremely important to store carefully the original copy of the contract (robustness of the Ethereum blockchain) but it doesn’t really matter who is going to be the judge (Oracle as an external component).

In the current Ethereum model the Oracle will be the weakest link. All the security of Ethereum won’t matter if the Oracle is weak.

Ethereum Oracle model

In the case of RSK however the Oracle is considered as important as the smart contracts platform. This is the right vision as the wording of the contract only has value in the context of who is going to judge it.

RSK Oracle model

RSK has already partnered with 25 top companies in the field in order to create a federation of Oracles which would give an extremely high level of security to its users.

Also being subsidized by BTC through merge-mining, RSK will be able to be many times more secure than the ETH network given BTC+BCH hashing power, plus much lower transaction fees (RSK miners pay the bills with income coming from BTC).

In the end, despite which platform will provide the most secure network at the lowest cost for users, the good news is that we are getting closer to build an inclusive financial system that can empower billions of forgotten users around the world!

So many currencies :-)
So many people :-)

--

--