Smart Contract Platforms: The Architectural Design & Its Limitations

DanielApril 19, 2019

Over the last decade, blockchain technology has generated hundreds of billions of dollars in wealth, captured public interest, and changed the way we conceive of money.

While these are noteworthy achievements, blockchain technology has also failed to live up to many of the expectations set during the ICO craze and roaring bull market of 2017.

In many ways, this lack of mass adoption is due to limitations in the technology itself. These technological limitations are exemplified by the blockchain projects known as smart contract platforms. While smart contract platforms brought countless new developers and entrepreneurs into the industry, flaws in the foundational design of these platforms is now preventing any of the recent adopters from becoming successful.

Before we can truly grasp the limitations of smart contract platforms, it’s necessary to gain an understanding of these platforms are designed. Let’s begin with an examination of Ethereum, the world’s very first smart contract platform.

Ethereum: The World’s First Smart Contract Platform

In 2015, the launch of Ethereum made blockchain technology more accessible than ever before. Prior to Ethereum, users had to either fork an existing blockchain’s source code or develop a new blockchain protocol from scratch in order to implement the technology. Both of these tasks are extremely difficult, time consuming, and expensive.

Ethereum solved these problems with the introduction of the EVM (Ethereum Virtual Machine), enabling the adoption of blockchain technology without the need to fork or create a blockchain. Stated simply, the EVM is a decentralized method for processing code. Any developers can submit code to the EVM and, assuming the developer pays the required fees (known as “gas”), the network will execute that code as instructed.

These bits of code submitted to the EVM are known as smart contracts. The idea of smart contracts was first published by Nick Szabo way back in 1997— more than ten years before the first block in the Bitcoin blockchain was mined. Back then, the idea was merely a theoretical proposition. Ethereum was groundbreaking because it made smart contracts a reality.

While smart contracts can be programmed to perform any number of functions, the underlying concept is the same for all of them: you submit code and the required “gas” fees, then the EVM will process your contract exactly as you’ve designed it.

It’s helpful to think of the EVM like an ordinary vending machine. A user puts in the required fee— let’s say $1— and enters the code for the item they want— a bag of potato chips, for instance. The machine accepts the fee, process the transaction, and dispenses the potato chips. There is no need for a cashier or centralized authority. The EVM works much the same way. The code is executed in a fully decentralized manner.

The Proliferation of ERC-20 Token Contracts

A smart contract known as the ERC-20 token contract quickly became the most popular on the Ethereum network. In fact, in November 2018, researchers found that 20.9% of all smart contracts deployed on the Ethereum network are token generation contracts, such as ERC-20.

In short, the ERC-20 contract allows users to quickly and easily generate tokens on the Ethereum blockchain. These new digital assets are called tokens, rather than coins, because they are generally not minable and they are tied to the Ethereum blockchain. They do not exist on an independent blockchain.

It quickly became apparent that anyone who launched an ERC-20 contract on the Ethereum blockchain could then sell their tokens to the public to raise funds. These fundraising events, known as initial coin offerings (ICO), existed prior to the development of ERC-20 contracts but were relatively uncommon. ICOs exploded in popularity after ERC-20 tokens were introduced.

With such a low barrier for entry and so much hype surrounding blockchain technology, entrepreneurs were able to raise massive amounts of capital with little more than an idea and a website. There was almost no red tape. A startup could raise an enormous amount of capital in a decentralized manner, in a very short period of time.

This tokenization and fundraising model is so straightforward that it’s not hard to see why Ethereum attracted so much excitement and so many new projects. The barriers to adoption had been drastically reduced. As such, an influx of adoption quickly followed the innovations of the EVM, the ERC-20 token contract, and the ICO fundraising model.

As Ethereum exploded in popularity, several new smart contract platforms emerged. While these new projects sought to improve upon Ethereum in minor ways, they all followed the same general model— a single blockchain with a virtual machine environment that could run smart contracts submitted by developers and entrepreneurs.

Limitations of Smart Contract Platforms

Smart contract platforms— Ethereum, Tezos, NEO, Stellar, Cardano— certainly have their benefits. First and foremost, they make adopting blockchain technology simple. Anyone can write a smart contract, pay the “gas” fees, and submit it to the network. The blockchain industry grew at an unprecedented rate all throughout 2017, and much of this growth is owed to the advent of smart contract platforms.

However, these smart contract platforms are fundamentally limited in their design. While anyone can adopt blockchain technology via a smart contract, the defects of the underlying architecture makes operating that smart contract financially unviable. Let’s dig deeper into the limitations of smart contract platforms.

Shared Networks and an Inability to Scale

Smart contract platforms are just one blockchain with a single, shared network. That puts a strict limit on the number of transactions that the network can process in any given second. To again take Ethereum as an example, the Ethereum blockchain can only process 15 transactions per second, or 900 transactions per minute.

That might sound like more than enough transactions for a functional network, but it is not. Complicated applications, like Facebook or Uber, individually need to perform hundreds or even thousands of processes per second to function. Complex blockchain-based apps would cost tens of thousands of dollars per hour to run, rendering all but the most basic of applications prohibitively expensive for any profit-driven organization.

Making matters worse, there are currently over 182,000 ERC-20 contracts running on the Ethereum blockchain. For better or worse, “over 60% of contracts have never been interacted with.” But, even if we assume that only 40% of the 182,000 existing ERC-20 contracts are real projects, the network can’t even process 1 transaction per hour for every active project.

Of course, any real project needs far more than 1 transaction per hour to be useful. This leads to competition among third-party projects to fill the limited number of transaction slots available.

The Ethereum developer community is currently working on Layer 2 scalability solutions like Plasma to address this issue. However, these efforts are in an early beta stage, technologically overcomplicated, and completely untested in real-world applications.

Moreover, Plasma is an aftermarket solution that is both extraordinarily complex and potentially insecure. It’s likely that a Plasma is several years away from being production-ready for main net integration.

Insecure Smart Contracts

Yet another consequence of decentralization is a lack of security auditing of the smart contracts run on a platform. The platforms allow anyone to run any smart contract they please, as long as they pay the necessary gas fees.

This means developers may run smart contracts with bugs and serious security vulnerabilities. To get an understanding of how serious the issue if, see this list of known bugs and vulnerabilities from Consensys.

As most smart contracts on the first generation of blockchain platforms are balance-based, a bug in a smart contract leaves all addresses associated with that contract exposed. If hackers find a vulnerability and are able to exploit it, they can drain the funds from every single address that ever transacted with the flawed smart contract.

For ordinary investors and end users, auditing a smart contract is well beyond their technical capability. This asymmetry of information leads to uninformed investment, which may result in insecure smart contracts allowing hackers to make off with tens of millions of dollars. This unfortunate situation has occurred on more than one occasion.

The Oracle Problem

In the blockchain space, the term “oracle” refers to a small group of nodes with the power to put off-chain data onto a specific blockchain. The off-chain data might be the current exchange rate between two currencies, for example. This would allow smart contracts to use function calls to receive real-time price data from the oracle.

Of course, this presents a paradox: while blockchain technology is meant to be completely decentralized and trustless, the use of oracles is, by its very nature, centralized and trusted. The oracle is a small group of nodes that are trusted with the special power of putting important data onto the blockchain. This method of importing data to a blockchain is neither trustless or decentralized. The oracle nodes are a single source of truth and therefore susceptible to attack, compromise, manipulation, and collusion.

This is what’s known as the oracle problem. While it is extremely useful to have verified off-chain data on a blockchain and thus accessible to smart contracts and applications, getting off-chain data onto a blockchain in trustless way is tricky. This remains an open problem and has not yet been overcome by smart contract platforms.

Komodo, always developing at the bleeding edge of the blockchain industry, recently developed a trustless oracle technology. Learn more about Komodo's solution the oracle problem.

Proprietary Vendor Lock-In

Finally, every project that builds on a first-generation smart contract platform is stuck there. This is what’s known as proprietary vendor lock-in. While most smart contract platforms are open source projects, they operate their platforms like a typical proprietary, closed platform corporation. Projects are not allowed to migrate away.

If a project doesn’t like the ecosystem in which they’ve built, they’re forced to abandon all of their work, leave the platform, and start anew in a different environment. This prevents startups from fully committing to a particular platform. There is no investment protection and entrepreneurs don’t want to be locked in. The blockchain industry is still young and smart contract platforms may become obsolete a few years down the road.

Lastly, the development team of a smart contract platform makes decisions independent of the needs of any specific third-party projects. Third-party projects have no say in platform-wide code or policy changes. As a result, development decisions may disrupt the functionality of a specific smart contract or dApp. If a project becomes unsuited for the platform, they are locked-in regardless, with no path for migration or success.

The Upside-Down Economics of Smart Contract Platforms

In addition to the technical limitations of smart contract platforms, there are several major flaws in their economic models that prevents the mass adoption of blockchain technology.

A Fundraising Free-For-All

In the spirit of decentralization, there is no screening or vetting process for startups that wish to launch an ERC-20 tokens contract and hold an ICO. It’s an easy process and literally anyone can do it without providing any kind of personal information.

As mentioned earlier, this was an improvement because it made adopting blockchain technology easier than ever before. However, it also opened the doors to underqualified developers and outright scammers. With no barrier to entry and no KYC requirements, the ICO space became rife with projects that had no value to offer the blockchain space.

Some of these projects were led by inexperienced developers who, either accidentally or intentionally, oversold their ideas and potential. Other projects were led by outright con artists who knowingly lied to investors for personal financial gain.

Whether inept or malicious, many of the ICOs launched on smart contract platforms throughout 2016 and 2017 have already shut down. After raising tens or hundreds of millions of dollars, project team members would often pay themselves outrageously high salaries until the ICO funds dried up, then simply close the project down and disappear.

Since the ICOs of 2016 and 2017 all classified their fundraises as the sale of “utility tokens,” as opposed to the sale of securities or “security tokens,” investors had no legal recourse if their funds were stolen by scammers. The holders of utility tokens have no rights, legal protection, or ownership of the project that created the tokens.

This sharp increase in failures and scams soured the reputation of the blockchain space.Without the technical knowledge to differentiate between scams and legitimate technology-focused startups, many outside observers came to distrust all digital assets, including Bitcoin and Ethereum itself. This is a huge barrier to adoption of blockchain.

An Unsustainable Business Environment

Almost all smart contract platforms require a “gas” fee for every process the network performs. These gas fees must be paid in the coin native to the platform (rather than the token of the smart contract submitting code to the network).

This model is wonderful for investors of the platform’s coin but devastating for startups trying to run a smart contract on the platform’s virtual machine. If the price of the platform’s coin increases by 20% in fiat value, so does the cost of running a contract on that platform. This is true if we assume that gas fees remain constant. However, gas fees don’t remain constant.

On the contrary, gas fees are variable. In times of severe congestion, when many processes are being submitted to the network at the same time, gas prices often increase in addition to increases in the price of the platform’s coin relative to fiat currencies.

For example, gas fees may increase from 1/20 to 1/10 of a platform’s coin per transaction. In other words, gas prices may double. If the price of the platform’s coin also jumps by, say, 20%, then the price of executing a single process actually increases by 140% [from 0.05*(coin price) to 0.1*1.2(coin price)].

For startups that want to run complex applications through a smart contract, this is catastrophic. If the network becomes congested, an application can become impractically expensive and the whole project’s business model can get destroyed in the blink of an eye. Inconsistent network activity means unpredictable gas prices, which ultimately makes it impossible to estimate operating costs for any dApp project.

A select few smart contract platforms, notably EOS, do not use gas, but this does not mean there are no hidden costs. EOS developers must rent resources (storage space, network bandwidth, and computational power) to run contracts. It is a bit more friendly towards end-users, as they don’t have to pay gas to interact with a contract (a game, for example), but it does not solve the underlying issue. Ethereum is reportedly considering adopting a rental fee-based model similar to that of EOS.

Unstable Price Pressure

When a new project holds an ICO on a smart contract platform, they must raise funds in the platform’s native coin. Of course, this creates demand for that coin, driving up the price. This is advantageous for investors but limits the fundraising options of the startup.

However, as noted earlier, sharp increases in price of the platform’s coin make it equally more expensive to process transactions on the platform’s network. Again, this might be good for the investors of that coin but it undermines the value of the platform itself by making the network too congested and expensive for any projects to actually use it.

In addition, because all projects raise their working capital in the platform’s coin, any decline in price can cause a massive sell off, generating lots of downward price pressure. As projects seek to protect their operating budgets, many startups may liquidate their holdings at the same time, creating a downward spiral of coin price. We witnessed this phenomenon on a number of smart contract platforms throughout 2018, with liquidation of ETH hitting an all-time high in December.

A Broken Economic Model

In economic parlance, an “economy of scale” is an increase in efficiency as a certain firm or industry grows. For example, it may cost a factory $60,000 for a single prototype of a new automobile, even if it’s just an ordinary economy vehicle. That’s because the machinery must be specially fitted to manufacture the car, which is a lengthy and costly process.

If the same factory were to produce, say, 10,000 units of the same vehicle, the price might come to $30,000 per car. That’s because, once the machines are all properly set, it becomes far easier to produce more of the same model.

We can take this a step further. Imagine the factory will produce 500,000 units of the same vehicle. Now, the price per unit may come all the way down to, say, $10,000. This is because the factory may start to get a price break on bulk orders of the materials and components needed to manufacture the car itself. This is an example of an economy of scale.

The problem with smart contract platforms is that they are the negative inverse of an economy of scale: the more projects that choose to build on a particular platform, the more expensive and time-consuming it becomes. Efficiency should increase as more people build on a platform. Unfortunately, the opposite is true— costs shoot up and performance plummets as more processes are submitted to the network.

The ideal scenario for a startup is to be the only project running a smart contract on the platform’s network. This would provide optimal performance, as well as minimal costs and transaction processing times. This is basic economics turned on its head.

Ad Hoc Solutions To Foundational Problems

Perhaps surprisingly, all of the limitations of smart contract platforms are widely recognized by advocates and critics alike. No one denies these issues exist. Rather, supporters and detractors disagree over the viability of implementing solutions to the existing limitations.

While most smart contract platforms have extremely talented development teams, the challenges they face may ultimately be insurmountable. They are trying to develop ad hoc solutions to fundamental problems caused by the design of the platforms themselves.

Attempts to solve the problems of smart contract platforms— sharding, side chain scaling solutions, interoperable protocols— are creating an entire auxiliary ecosystem of second-layer projects. The goal of these projects is to improve the functionality of the platform itself.

However, trying to develop solutions to overcome the limitations of a smart contract platform is like trying to turn a two-story house into a twenty-story building of luxury condos. The foundation simply wasn’t designed to host such a large number of people and activity. In reality, it would be easier to bulldoze the two-story house and start the twenty-story building from the ground up.

In short, this is what Komodo did. Komodo is a multi-chain ecosystem that was specifically designed to avoid the limitations of smart contract platforms.

Komodo Offers A Superior Solution For Blockchain Adoption

The primary difference between Komodo and ordinary smart contract platforms is the number of blockchains that the platform can support. Smart contract platforms are but a single blockchain with the ability to host third-party projects via smart contracts. Komodo, on the other hand, is an open, composable Smart Chain platform with the ability to give each project its own Smart Chain that can independently support smart contracts.

When building your Smart Chain with Komodo, the first step is to set your 18 customizable parameters to fit your project’s needs. This allows you to choose your consensus rules, hashing algorithm, block time, block rewards, and much more. You can also choose whether or not you'd like to activate the Antara Module library.

The next step is to secure your blockchain with the power of the Bitcoin network via Komodo’s Blockchain Security Service. This leverages delayed proof of work (dPoW), an innovative security mechanism that recycles the Bitcoin hash rate to protect other blockchains with the same level of security.

After that, you can launch your chain! At that point, you’ll have several white label products and services to choose from, including:

  • Access to a series of white label products, including a multi-coin wallet, decentralized exchange, decentralized crowdfunding app, block explorers, and SPV server integration
  • Integration to Komodo’s industry-leading atomic swaps powered exchange, AtomicDEX
  • On-demand scaling with Komodo’s Multi-Chain Syncing feature
  • Leverage existing Antara Modules to build dApps, games, or blockchain-based software
  • Code custom Antara Modules for maximum adaptability and performance
  • Optional updates from Komodo’s industry-leading development team

When you build with Komodo’s technology, you are given your own platform— an independent Smart Chain with its own consensus rules, decentralized network, and currency, plus the ability to natively host your own smart contracts, dApps, and games. Transaction fees are always paid in your chain’s coin. You’re never forced to use or depend upon the KMD chain or coin in any way.

Komodo’s multi-chain architecture circumvents all of the limitations of smart contract platforms described above. Launching a blockchain with Komodo is a superior solution in every way.

Try Komodo's Antara Composer to customize and launch your Smart Chain with just a few clicks. The Antara Composer is a  an easy-to-use web app for building custom Smart Chains. As Komodo is an Advanced Technology Partner with Amazon Web Services (AWS), the app is powered by AWS cloud servers. To learn more, watch this video tutorial on how to use Antara Composer and read this blog post on how to make a blockchain.

If you need some help beginning your journey into blockchain, please contact one of Komodo’s third-party service provider. You can get in touch with RedFOX Labs, Chainmakers, or Chainzilla for more information. If you have any questions or need some additional guidance, don’t hesitate to send an email to [email protected].

To receive future updates from the Komodo team, sign up for our weekly newsletter. Every Friday, we’ll send you a short email with a summary of the all the most important events from the previous week.

Join us as we continue to accelerate the global adoption of blockchain technology.