Ethereum based DApps have severe limitations such as oftentimes storing data is restricted to its overcrowded blockchain. As a result, we have witnessed disasters like CryptoKitties – a game developed on the Ethereum blockchain that caused severe congestion. CryptoKitties should have been a lesson to all who were considering implementing and executing smart contracts directly on the Ethereum blockchain.
Executing Smart Contracts on Ethereum is Simply TOO Expensive
Not only is the Ethereum network too clogged up, but also using its network is too costly at the moment. That’s because currently executing smart contracts and storing data are all done via the main Ethereum blockchain. What this basically means is that numerous network nodes are performing the same tasks repeatedly and continuously. So, why is this costly? Because each time you want to perform a task on Ethereum, such as simply executing smart contracts, you need to pay a network usage fee. So these fees obviously begin to add up, thus making Ethereum quite expensive to use.
In addition to the issues mentioned above, there is also a lot of garbage / crap data that has accumulated over the years on the Ethereum blockchain. This is due to a very obvious design flaw: after executing smart contracts on Ethereum, they remain forever on its immutable ledger. With the accumulation of this garbage data, which also includes redundant information, the efficiency of the Ethereum network suffers, thus leading to congestion.
Security issues with Ethereum are also a problem. Executing smart contracts on its network currently makes them susceptible to attacks from third parties when they leave the main Ethereum blockchain. Moreover, smart contracts implemented on and using Ethereum cannot be reversed or modified after they have been issued. Although not stopping a smart contract once its conditions have been satisfactorily met makes sense, it has given rise to DAO attacks. Furthermore, there is no reliable method yet to verify whether or not a smart contract is actually free of bugs or security vulnerabilities.
Design Flaw: Ethereum Virtual Machine and Blockchain Inextricably Linked
The Ethereum Virtual Machine (EVM) that is responsible for executing smart contracts and the Ethereum blockchain itself are inextricably linked. Therefore, any problems that might occur due to upgrades performed on the Ethereum blockchain can potentially adversely affect the EVM. Also, any issues with the EVM can impact Ethereum’s blockchain.
For now, working with Ethereum is severely limited to mainly eCommerce type transactions or something that involves some basic type of value or monetary exchange. Also, a rudimentary type of online voting system can be implemented on Ethereum. However, the concept of using blockchain based voting is also questionable considering that blockchain-powered voting / elections solutions cannot prevent someone who’s holding a gun to your head to force your decisions.