Smart contract platform running on the Bitcoin blockchain without adding additional network load
Brace for the wrath of the alien rainbow llamacorn.
It’s time to talk about one of the most divisive topics in cryptocurrency today: Ethereum competitors.
Meaning that one unhappy consequence here is that I risk the hatred of 11 distinct fan communities with every remark. So I’ll fight to be as objective as possible as we discuss the world domination plans of each of these platforms.
If you already know everything about Ethereum, smart contracts, and Turing completeness and you’re just here to learn about RSK (RootStock), scroll down until you see the big RSK logo.
What is Ethereum?
Founded and still guided by Vitalik Buterin (pictured above), Ethereum allows blockchain-based smart contracts and decentralized applications to be run on the nodes in its network.
Ethereum is a network running decentralized applications on a massive distributed worldwide computer called the Ethereum Virtual Machine.
The EVM can run almost any kind of application. The code for Ethereum smart contracts is publicly visible and verifiable, and the underlying blockchain tech provides censorship, hacking, and corruption resistance.
What is a Smart Contract?
The term “smart contract,” coined by Nick Szabo in 1994, refers to a computer system enforcing the conditions of a contract.
Let’s say you’re a freelance worker paid via smart contract. Your compensation can be set to only be paid when a certain milestone is met and verified. Meaning, very simply:
- If you meet your milestone, funds are automatically sent to your account.
- If you don’t meet your milestone, you don’t get any funds, and they are returned to your (disappointed) employer.
Ideally, neither party in your work agreement needs to trust the other to deliver. The smart contract code handles the transfer (or refund) of your money. You trust the code rather than your employer.
Smart contracts have wide-reaching applications in finance and accounting, but also in a large number of other economies of data.
In many cases, these contracts will remove some of the need for trusted third parties like lawyers, accountants, escrow agents, auditors, centralized property deed databases, administrators, and all kinds of other facilitators and middlemen. Smart contracts won’t necessarily eliminate the need for these parties entirely, as some things cannot be easily enforced by programming alone, but they will absorb a number of their various responsibilities.
What is Turing Completeness?
A number of computer programs are designed for specific functions. The original HTML, for example, was OK for building websites — but it couldn’t have built Minecraft very well. However, the most popular languages are designed to be able to create any reasonably conceivable application.
A language that can build basically any application you can think of is called Turing complete.
Some smart contract platforms’ development languages are not Turing complete. Others are.
Why would you want a language that’s not Turing complete? Well, a high level of flexibility generally makes a language both more complex and less efficient.
Specialized languages — not just in programming but in formal logic, chemistry formulas, math, accounting ledgers, etc. — are always more limited. But their limits make them more efficient, and even more useful. As long as you don’t try using them to do something they’re not designed to do.
So some companies building applications with limited scope will desire non-Turing-complete programming languages, since they can be more precise, more transparent, and more understandable.
These companies might use Bitcoin script, which has very limited smart contract capabilities. Lightning Network adds a few more abilities, such as timeouts. Other platforms like Stellar have specific smart contract features tailored to specific kinds of applications. Some platforms like Nexus plan to implement smart contracts but do not intend to make them Turing complete.
The only solutions we’ll be talking about as Ethereum competitors, including today’s competitor RSK (RootStock), do feature Turing-completeness. This means some groups may choose other solutions we don’t even consider in this series, depending on their specific needs.
So if I do need Turing-completeness, why not just use Ethereum?
Ethereum can hardly be called a mature platform. Maybe we could classify it as an alpha-stage product. It was truly original — and perhaps failed to adequately foresee the problems it is facing now.
As they say, it’s the first person through the door who gets shot.
Will Ethereum, like AltaVista or MySpace, be crushed by a subsequent product within a few years?
Will Ethereum, like Apple, surge back to profound dominance after a few years of disappointing results?
Or will Ethereum continue to lead the pack, implementing the best innovations that other open-source projects come up with and using its capital efficiently to change the world?
I don’t know. Take any random intelligent person in the space and you’re just as likely to hear arguments for the upcoming Flippening as you are to hear that Ethereum is the “biggest shitcoin of them all.”
No matter your position, it’s no secret that many people see issues with Ethereum that they argue must be addressed. As I introduce the 11 top projects looking to compete with — or coexist as alternatives to — Ethereum, I’ll be evaluating them based on how they solve these specific problems.
The Big Questions: How I’ll Examine the Ethereum Competitors
Elements 1–6: Perceived Problems with Ethereum
This is the largest issue, and the problem which Ethereum leaders are most concerned about and focused the most on resolving.
Some professionals argue that handling all the data Ethereum promises to will require at least millions of transactions per second, barring sidechain solutions. Vitalik Buterin, the creator of Ethereum, has recently suggested that those wishing to keep data on the Ethereum blockchain longer than for a certain set time period be charged rent.
Some scalability solutions have been proposed, but actually implementing them is a different matter.
Even if good scalability solutions can be presented, it’s unclear whether they will even be adopted.
For example, will Ethereum miners adopt the proof-of-stake transitions Ethereum needs in order to help its scaling issues? Why would they, when miners often do not hold much of the coin they mine and thus may be cut out of profits in a proof-of-stake system?
3) Development Complexity
Ethereum uses its own programming language, Solidity.
A specialized language has advantages, for sure — but encouraging developers in the short term to build decentralized applications on the Ethereum chain also requires them learning a new language.
Ethereum will likely solve the above issues — or solutions built on top of Ethereum will solve them. Some consensus will eventually be reached, even if dissenters fork off a new chain.
But how long will it take for the proposed solutions to be implemented? It is clear that whenever Buterin or another Ethereum leader speaks about true scalability, they have a timeline of at least several years in mind.
5) Generalized Features
The Ethereum Design Rationale states that it often refuses “to build in even very common high-level use cases as intrinsic parts of the protocol.” Even Bitcoin’s timelock feature is absent.
This policy reduces bloat, but it means that lots of different applications need to reuse code and different developers need to spend time building things that would not be needed if the platform provided common functionality — identity, authentication, file storage, and more.
By this, I mean prospects at mainstream adoption by the general public.
Cryptocurrency as a whole is hardly grandma-friendly. Like many other networks, transactions on Ethereum cost a small variable fee.
Also, user-friendly features like readable address names are not included (again, due to lack of generalized features). They may or may not be implemented in any number of ways by developers on the platform, and whether developers of dApps, wallets, etc. will safely and consistently interface with solutions like namebazaar.io is anyone’s guess.
Until these challenges are addressed, adoption of Ethereum may be more difficult to encourage.
Element 7: Market Position
The other platforms we’ll consider seek to solve the issues listed above in various ways. But they also face a major bonus challenge: Ethereum has a massive head start.
Well over 1,000 ICOs have launched on Ethereum. The Ethereum Foundation and Enterprise Ethereum Alliance have made significant headway funding development teams and promoting smart contract technology among businesses and policymakers. Ethereum’s market cap is far beyond that of its competitors.
Therefore, the final thing I will be commenting on for each of the alternative dApp platforms is their gameplan and prospects for overcoming this challenge.
So, over the next few weeks, we’ll be looking at these Ethereum alternatives. I’ve numbered them in descending order by market cap. RSK (RootStock) doesn’t fit the mold since it doesn’t have its own market cap, so let’s knock that one out right here in this intro article.
Here we go.
Ethereum Competitor #1: RSK (RootStock)
RootStock (now RSK)
Quick summary: Uses Bitcoin, but without causing additional congestion. Easily imports existing Ethereum dApps. Currently in MainNet Beta.
RSK (Rootstock) brings smart contracts to Bitcoin by using a two-way peg to the Bitcoin blockchain. What does that mean?
With RSK, companies can create products powered by bitcoins without contributing congestion to the Bitcoin network.
In the simplest terms, bitcoins are locked on the Bitcoin blockchain and then unlocked on the appropriate RSK chain for use in smart contracts.
Later, when the user wants to move bitcoins out of RSK and back to spendable currency on the main Bitcoin blockchain, the “smart bitcoins” are locked on the RSK chain and unlocked again on the Bitcoin chain.
This is a little more complicated in actual practice, especially since Rootstock uses a hybrid that includes drivechains and federation mechanics. There are many ways to implement sidechains, drivechains, federations, and combinations of the three, and the pros and cons of each are all discussed in this paper by RSK.
In short, here’s how RSK is doing it:
One advantage of this method is that compromised RSK contracts do not compromise the integrity of the Bitcoin blockchain, only the relevant RSK sidechain. Bitcoins can never be unlocked on both chains at once.
RSK’s biggest selling point, then, is offering all the advantages of utilizing the Bitcoin blockchain — proven security, wide distribution and awareness, strong hashing power, etc. — without the disadvantages. RSK is even merge-mined with Bitcoin, so miners can process RSK smart contracts without taking on additional workload.
As a bonus, RSK sidechains can feasibly be implemented to allow near-instant Bitcoin payments, all the while avoiding known “centralization initiatives.”
Let’s take a look at our seven objective criteria: first, how RSK solves the six Ethereum issues we identified, and then how it might challenge Ethereum’s market dominance.
RSK’s MainNet Beta can currently handle about 100 transactions per second, allegedly as many as PayPal. This is accomplished with probabilistic verification, fraud proofs, and blockchain sharding. According to RSK, their protocol does this “without sacrificing decentralization.” The RSK sidechain creates blocks at an average of 10 seconds per block.
RSK has a governance board of five seats. This doesn’t mean five people: one seat is for miners voting with hashing power, one for Bitcoin and RSK users voting with proof of stake, one for exchanges and web wallets voting through the RSK Federation, one for RSK and Bitcoin Core developers using a “special threshold voting system,” and one for a non-profit Bitcoin institution — tentatively the Bitcoin Foundation — representative of the largest segment of the community.
3) Development Complexity
One big selling point of RSK (RootStock) is compatibility with the EVM (Ethereum Virtual Machine) – meaning that the dApps created on Ethereum’s blockchain can easily be ported to RSK.
It looks like RSK also adds some new opcodes that give new functionality beyond Ethereum’s, most significantly contract code upgrades, allowing easier upgrading of smart contracts when they require it.
RSK has repeatedly expressed its wish to place security first, over rapid development. Nevertheless, Bamboo (RSK’s Beta MainNet) is already live. The non-Beta release date is contingent on how the Beta performs.
Registration for the RSK MainNet Beta will be open after a time, but for now developers can get whitelisted here.
5) Generalized Features
According to their whitepaper, RSK plans “native support for user-defined access structures” and “native support for user-defined signature schemes,” which Ethereum does not provide.
This will help streamline the development process by eliminating some repetitive lower-level work from the development workload.
RSK will include transaction fees and so far has not implemented many usability improvements over Ethereum. It’s too early in the project to know for sure what measures the RSK team might take to improve adoptability in the future.
7) How does Rootstock challenge Ethereum’s market position?
By piggybacking on Bitcoin without increasing load on the Bitcoin network — in fact, RSK will be a viable solution for near-instant Bitcoin payments — RSK wants to ensure it can compete with Ethereum. What better way than teaming up with the only coin with a higher market cap?
In addition, BTC miners can merge mine RSK, meaning that they can process RSK smart contracts as they mine Bitcoin with negligible additional workload.
However, since RSK doesn’t have its own token and hasn’t launched any kind of crowdfunding, it does not have the massive funds at its disposal that alternatives — including Ethereum — have.
In the next installment next week, I’ll be applying these same criteria to EOS. Unlike RSK, EOS:
- is separate from Bitcoin,
- claims thousands of transactions per second,
- has extensive generalized features and multiple programming languages available, and
- has billions of dollars in funding.
Will these advantages set EOS apart from the other products in the space? We’ll discuss that next time. But first, let us know in the comments what you think about RSK — and as always, please drop me a message or comment if you see something that needs improvement.