In the second post on the topic of Ethereum, Dr. Neeraj Oak examines some of the outstanding technical and legal challenges that Ethereum faces.
In this post I’m going to give a brief outline of the kinds of challenges and obstacles that Ethereum will have to overcome before it launches. But before I do that, I want to consider some of the advantages that Ethereum could bring to the virtual currency community.
Bitcoin was designed to be a value transfer mechanism, but in its original form it only supports the transfer of one commodity: Bitcoins. In recent years, the idea that other commodities could be traded on the Bitcoin blockchain has grown in popularity. So-called coloured coins have been proposed that can be used to represent other items on the blockchain, using the benefits of decentralisation to record ownership without the need for a trusted third-party registry.
If Ethereum achieves what it has set out to do, it would represent a far more flexible implementation of the coloured coin concept, not only allowing other commodities to be traded but also enabling the creation of complex trading instruments like derivatives and options. It would also open up the possibility of decentralised versions of existing services such as Dropbox.
If it succeeds, Ethereum holds a great deal of promise in terms of the opportunities it would open up for entrepreneurs in the blockchain technology space. But for this to happen, Ethereum must tackle a few serious concerns about its technical operation and the legal ramifications users may face by using Ethereum contracts.
Bitcoin’s creators are believed to have purposely left Turing-completeness out of their service because of the unnecessary hassles it creates. For instance, when code is executed in a pseudonymous decentralised system, the processor of that code is unaware of its origin. This is dangerous, since the code could be malicious, both in its operation on the funds it is given and its interaction with the computer on which it is being processed.
As an example, imagine an Ethereum user who decided to upload a virus to the blockchain. This virus would be contained within a smart contract and would eventually reach a processor for execution. If the processor attempts to execute the code without any safeguards, they could risk infecting their own computer. However, if they were to somehow screen the code before processing, they may have to perform considerably more computations (in verifying the code is secure) than they are being paid for. Further, even the most sophisticated screening process cannot guarantee that any piece of code is safe to execute, so processors would still run a risk of infection even after they take due precautions.
Ethereum partially addresses this problem by forcing a finite execution time on all contracts by charging the contract ether for the computational time it takes up. This makes infinite loops impossible, because they would require infinite money to perform. Unfortunately, this does not tackle the security challenge of finitely long malicious code.
An immediate problem with the idea of smart contracts is that in practice it is hard to hold anybody to account for their actions. Because the contracts execute autonomously from their creators once deployed, their activities are hard to stop should they become destructive or malicious. Moreover, one cannot track down the creators of the code easily because Ethereum upholds the principle of pseudonimity, the representation of users with account numbers or public keys. Even if the creator of a piece of malicious code were located, it would be difficult to punish him/ her for the potentially unintended or unforeseen actions of their autonomous code.
It may also be the case that a smart contract created between two people was the result of deception or coercion. Ordinarily, a physical contract drawn up by two parties is witnessed by independent signatories to minimize the risk of coercion. However, in the digital world there is no way of knowing if one of the parties signing the contract is doing so against their wishes. Moreover, neither party has any recourse to a court of law should the contract have been misrepresented, since it is unclear which nation’s jurisdiction applies. After all, the contract signatories may be in different countries, as may be the processor who executed the contract code. As a further complication, the execution of the contract cannot be stopped once it has been deployed, so in practice the only law that counts in the world of Ethereum is the computer code that resides within each contract. This leaves users of such contracts dangerously exposed, something that they should be made aware of before they put their digital signatures to any smart contract.
Ethereum is an innovative idea, but one of the problems with innovations is that they stretch the institutions that already exist in our societies. This would not be a problem if the idea was to remain experimental, but as things stand at least $15 million worth of investment has been put into Ethereum and several million more may follow once the service is brought to market. If credible solutions to the legal issues that Ethereum could face were not made public by then, the creators of Ethereum should probably prepare to face some stern criticism.
Join me for my next post, in which I sum my views on Ethereum and the possible risks and rewards it offers to investors.
Chief Analyst, Digital Money
Join us to explore ideas at The Digital Money Group on LinkedIn