Why Ethereum is doomed or why smart contracts are more smart than contracts

in #crypto7 years ago (edited)

Ethereum will go to 1000$. Ethereum is the new Bitcoin. Ethereum will soon have bigger market cap than Bitcoin... Or so they say.
I disagree - for the simple reason that IMO Ethereum has one fundamental problem - its smart contracts are either too simple to be usable or too complex to be immutable.
Let's reiterate - what is a smart contract? What problems does it solve? Mainly two problems: availability and trust.
it means that once you deploy the smart contract into the cloud - you don't need to host it. And since the contracts are immutable - and execute as programmed on the blockchain - you don't need to trust the author. This is great, isn't it? Think again.

Remember the DAO disaster? I 'll remind you: "In June 2016, users exploited a vulnerability in the DAO code to enable them to siphon off one-third of The DAO's funds to a subsidiary account".
What was the problem with DAO? It was a non-trivial smart contract which happened to have bugs. All sufficiently complex programs have bugs. How you handle bugs in production? Fix the bug and patch the servers.
But... Ethereum contracts are immutable. All bugs are there forever. Same with new features - Ethereum contracts will need no maintenance, as all features will have to be implemented in version 1.0. No software upgrades. So, can we make the contracts upgradable? Yes! We can make the smart contracts in such a way that they will delegate to other contracts based on some variable that can be mutated.
But, this means the smart contracts are mutable. Which means they are either smart or contracts.
In other words - Ethereum blockchain provides solutions only for decentralized application hosting. It cannot realistically solve the problem of enabling decentralized applications that can be trusted. Besides the trivial ones.
So is all lost? I don't know. I personally look forward to RChain.
"RChain contracts are matchless in throughput and programmability. What's more, every line of code on RChain obeys a well-tested, formal model of concurrent computation, allowing automatic formal verification".
The only way to make sufficiently complex smart contracts a real thing is IMO a "formal verification". I.E. a programming language that allows proving correctness mathematically. Probably this will be not an easy task to write programs in such a language, but at least those can be trusted to do only things as intended.
To summarize - Ethereum claims to solve the problems of decentralized hosting and decentralized trust but in reality, fails to provide decentralized trust.

Sort:  

Congratulations @vega113! You have completed some achievement on Steemit and have been rewarded with new badge(s) :

You got a First Reply

Click on any badge to view your own Board of Honor on SteemitBoard.
For more information about SteemitBoard, click here

If you no longer want to receive notifications, reply to this comment with the word STOP

By upvoting this notification, you can help all Steemit users. Learn how here!

Very interesting. Is the ETH code full of bugs or is it the application/altcurrency that's running on the ETH blockchain ?

Ethereum code can be patched as long as it doesn't create a hard fork, i.e. as the changes are backward compatible. The issue is with the decentralized applications that run on the Ethereum blockchain.

Thanks for the clarification.

Totally agree. I don't think Ethereum will ever pass Bitcoin in market cap. Bitcoin is King and Litecoin will be the Prince.

I don't see Ethereum or Bitcoin being mass adopted by companies, because if a ton of people are using the blockchain it slows payments down. Ripple was built for scalable use, they could have every bank in the world use it and transactions would still take 8 seconds long

Well I think it is possible to a piece of code to be immutable yet valuable. It is only necessary to consider the risks involved. For instance, bitcoin code is almost 'immutable', very difficult to change. Yet it is valuable.

Exactly, bitcoin transactions are valuable because they are written in a very simple script. You can trust Bitcoin scripts because there's a very easy way to validate the correctness.
Ethereum allows writing arbitrary complex programs in Turing complete language. Vitalik came up with solution to the termination problem - i.e. you pay the gas as you go for program evaluation, which prevents programs from running forever. This is innovation. But, solving the termination problem is not enough. You need also to ensure that the programs actually work as intended and only as intended.

Excellent post. Upvoted!

Congratulations @vega113! You have completed some achievement on Steemit and have been rewarded with new badge(s) :

You got your First payout

Click on any badge to view your own Board of Honor on SteemitBoard.
For more information about SteemitBoard, click here

If you no longer want to receive notifications, reply to this comment with the word STOP

By upvoting this notification, you can help all Steemit users. Learn how here!