The Ethereum Virtual Machine (EVM) is simply not effective when it comes to executing smart contracts. That’s because the blockchains of today can only sufficiently handle basic verification, such as document authenticity with Factom. The Factom protocol basically only requires that the information needed to verify a document’s authenticity be stored on the its blockchain, not the document itself. Running resource intensive DApps on the Ethereum blockchain has proven to be very inefficient because it cannot offer adequate computation speeds, or the necessary flexibility to implement the more sophisticated features.
Blockchains of Today are Instrumental for Blockchains of the Future
Moreover, the blockchains of today are not suitable for storing data. They are only somewhat suitable for processing transactions by maintaining accurate transactional history, however, even that is questionable considering the rampant 51% attacks.
In order to solve some of the issues present with existing blockchains, sidechains have been proposed and even implemented. In many of the projects that propose using sidechains, the main blockchain is used primarily for executing rudimentary transactions and processing simple payments. Meanwhile, some of the more heavy duty work, such as executing smart contracts, is handled by the sidechains. A few other more sophisticated application features and related services are also dumped onto sidechains.
Of course, to realize a blockchain model that incorporates sidechains would require a robust and secure runtime environment. Ideally, all data transmitted over this type of network should be transmitted via verifiable and trusted conduits. This is where the main blockchain can serve its ultimate purpose, as it can be used to authenticate data transmitted to its sidechains. All sets of transmitted data can have a unique ID assigned to them by the main blockchain that serves as a seal of authenticity. Notably, with projects like Elastos, this is the direction many of the newer blockchain projects are headed toward – a refreshing detour from the primitive blockchains of today.
Theoretically, with this approach, the integrity of the main blockchain can be maintained and extended to its sidechains and their runtime environment. So, what exactly can, could, and should constitute a runtime environment? Probably it’s own independently functioning / autonomous operating system, and a downloadable software development kit that is compatible with typical applications running on widely used operating systems such as Android, Windows, and Linux. This would help developers program using the language and operating system of their choice.
If this idea can be realized on mobile phones, which are now the most widely used method of connecting to the internet worldwide, then this could potentially help serve billions of users around the world. The beauty of this would be that the mobile phone users would be able to conduct their business without having to go through a trusted intermediary, which in most cases is an unfriendly bank.