Opinion: Ethereum hard fork severely undermines its usefulness

in #ethereum8 years ago

The common sentiment on forums is that the Ethereum's fork (there are two Ethereum blockchains now, which are both considered valid) is not a big deal, as combined "market capitalization" is higher than the pre-fork level.

As a person who have been a blockchain tech developer for 4 years, I strongly disagree with this sentiment, as the Ethereum's fork seriously undermines usefulness of smart contracts on public blockchains, and thus is going to affect Ethereum's future potential. (If you wonder how it is possible to be a block chain dev for 4 years: I was leading the colored coins project in 2012, and have been a CTO of ChromaWay, a blockchain tech company, since 2014.)

First, we need to clarify the definitions of smart contracts and blockchain technology.

Smart contracts were first described by Nick Szabo back in 1997. In his view, smart contracts are self-executing/self-enforcing contracts. One of examples he provides is a vending machine, which automatically provides goods for a payment. Another example is a car which might be automatically immobilised in a case of non-payment.

As we see, this concept of smart contracts is not tied to blockchains, but it's tied to valuable objects in the real world.

The concept of smart contracts got a new life with the invention of a blockchain. A blockchain can enforce rules, thus if a smart contract can be embedded in a blockchain, it will be automatically executed and enforced by the blockchain. This means there is no need to implement tamper-proof hardware, find trusted sort parties, debate about legalities: everything is implemented in software.

But there is one drawback: a blockchain only has an authority over things which happen within the blockchain. Also it isn't able to observe things outside of a blockchain. Thus pure blockchain smart contracts only work with cryptocurrencies.

For example, we can make a contract which will allow Alice and Bob to put their funds into an escrow in such a way that funds will be released only in case of a mutual agreement between Alice and Bob, or in case of a 3rd party dispute mediator (Claire) siding with one of parties. This dispute mediation contract can be implemented using a simple 2-of-3 multisig, which can be done in Bitcoin. In this case it is 100% trustless and free of counter-party risks (aside from the risk that Clair might be corrupt or will lose her private key).

But cryptocurrencies like Bitcoin have a problem that their exchange rate fluctuates wildly, so few businesses want to engage in long-term contracts involving Bitcoin. Does it mean that blockchain-based smart contracts are not useful for business?

No, it is actually possible to connect assets which exist in the real world to a blockchain using so-called user-defined assets. I believe colored coins was the first implementation (although Namecoin, which predates colored coins, could be potentially used for that too), then many other have followed: Mastercoin (Omni), Counterparty, Bitshares, NXT and so on.

Now we have a more complex arrangement where there is also an issuer who backs the blockchain asset. If we assume that the issuer is reputable and will do a payout according to the state of the blockchain, then we can use the power of blockchain-based smart contracts.

But it's debatable whether we still need a blockchain in this case. De-facto the issuer receives a cryptographic evidence that funds were transferred in a particular way, and he does payout accordingly. But this evidence doesn't need to be blockchain based. (Public key cryptography, hashes, Merkle trees etc. predate blockchains by several decades.)

But blockchains are useful, since they provide a means to synchronize the state between parties, and they help to establish consensus. Thus we can say that blockchain-based contracts are in many cases stronger (more resilient) than other cryptography-based contracts.

Cryptographic evidence can be ambiguous: e.g. Alice provides her version, which is valid. But Bob's version is valid too, yet it contradicts Alice's version. An issuer, who is going to enforce the contract in the real world cannot decide who's version is valid. But if a blockchain is involved, only one of this versions will be valid, as blockchains offer unambiguous view of the history.

There are many other ways to link a blockchain to the real world: oracles, data fees, smart property, etc. For example, the company which fucked up Ethereum, Slock.it, was going to develop blockchain-controlled smart locks which let a blockchain to control objects in the real world, thus allowing smart contracts involving physical objects.

Ethereum was designed as a neutral, Turing-complete medium for blockchain-based smart contracts, and it was expected that it can be tremendously useful in a wide variety of industries, from finance to personal electronics.

But now all of this goes down the drain, as Ethereum blockchain is no longer unambiguous.

Recall that the whole point of using blockchains in smart contracts which do not deal with cryptocurrencies was to make sure that only one version is valid. But Ethereum blockchain now exist in two versions, and all contracts which exist within in can potentially have a different state in different versions.

There are certainly ways to deal with ambiguities, for example, MakerDAO and Digix have announced that their contracts are only valid on the forked version of Ethereum blockchain. But this means that we bring human judgement and trusted third parties back to the equation.

So why bother paying Ethereum fees if it doesn't provide any hard guarantees? There are many other ways to disambiguate different versions, such as trusted timestamping, private & federated blockchains, Byzantine fault tolerant state machine replication and so on. In the end it might be easier to appoint a trusted third party which will stamp transactions as valid than to integrate with a blockchain, pay all the fees ... while still relying on a trusted third party to decide which of blockchains is valid.

Of course, smart contracts which work with cryptocurrencies (e.g. The DAO) but to stay within a public blockchain. But such contracts were not Ethereum's main goal, ethers were supposed to be used as tokens when moving various user-defined assets, they weren't supposed to be used as money.

Ethereum traders haven't yet realized that the dream that Ethereum will eventually be a "world computer" used across many industries was shattered. Most people see smart contracts as some sort of magical thing which makes things "trustless" and do not really understand the trade-offs.

I discussed blockchain matters with many people working in banks and fintech companies. (Our company was the first one to bring bank-backed tokens to a public blockchain, as far as I know.) They are already very suspicious of public blockchains, the running joke is "Are we supposed to pay Chinese miners to confirm our transactions?". But previously we could use an argument that public blockchains like Bitcoin can work flawless for years, and we assume that messy forks which can make contract states ambiguous are extremely unlikely. We no longer can assume that, as Ethereum have demonstrated that a messy fork is possible. So people will stay away from public blockchains unless they really need to work with native cryptocurrency assets.

So Ethereum didn't just screw itself up, it poisoned the well for all public blockchains.

Private and federated blockchains are obvious winners from this situation. Of course, a private/federated blockchain can be forked too, but then you'll know WHO is responsible, and you can sue them. This paradigm is much easier to deal with for bank people then the "some group of people have disagreed with other people, and now we have a fork" paradigm of public blockchains.

Sort:  

All the big players, pumpers, shorters and the hacker have their (your) money and are plotting the next manipulative move on a beach in supposed paradise.

This seems possible perhaps likely. We'll see how this plays out. Lots of points of failure for ETC.

That's true. Some people made a lot of money out of it.

Ethereum Classic is the true Ethereum. The purists are getting behind ETC. I think once people realize they're overpaying for ETH when they could get ETC for a fraction of the price there will be a big correction.

Totally agree. I just sold all my Ethereum and put some into Classic. I feel like I'm fighting back again big players who think they can do what they like without caring what consensus thinks.

They did care. That's why there are more people, higher price, higher hashing and dapps on ETH and none on ETC. How do you define consensus?

I'd define consensus as a coin having more miners, users, and overall utilization, which ETH undoubtedly has, at the moment. How much of that is being directed politically by exchanges and the Ethereum foundation? Time will tell. The people will vote with their money and hash power. It's a beautiful system. I THINK ultimately ETC will come out on top once people realize what the hard fork means. But I could be wrong. Either way it'll be very interesting to see how it all plays out.

None of the dapps will work on it or be recognized on it. So what is it exactly? Just a currency like Bitcoin or Litecoin? How can it compete with Bitcoin or Litecoin as a currency?

I address these issues in my valuation post and tried to put all the issues in one place that make ETC valuable. One core thing I left out is that ETC is at risk of a 51% attack like we've never really see before in crypto because there is a large based of profit oriented miners who have the equipment and hash (fungible between ETH and ETC) to short ETC and do a 51% attack with the sole result of making money on their short. They could sustain an attack for a couple days, capture ALL the block rewards, censor transactions from exchanges, sell all their own ETC as they mine, all while their short remains live. They could then stop the attack, close the short, wait for the price to rise again and do it again and again. It would take an unethical miner but only 6-8% of ETH hasing. It's on the table and it's an existential risk to ETC. What business will take that risk?

The true Ethereum, ETC, will merge all of the changes made by the fake Ethereum, ETH. How does that make any sense? The true ETC, is 100% dependent on the developers of the fake Ethereum, ETH.

What is the value of purity? Who values it? Have you done business? Does business value purity over pragmatism?

When you're dealing with the integrity of the blockchain, purity is paramount. Having a core foundation direct the future of a purported "decentralized currency" is no different than having a reserve bank dictate monetary policy. Just my opinion, happy to discuss further.

The worst is that Ethereum showed that if you have enough power, you can reverse what's recorded on the blockchain. The best we can hope now is that ETC takes over, and that ETH goes down the drain. That would show that some central authority can initialize a fork, but that the power to repel that fork remains with the users.

The worst is that Ethereum showed that if you have enough power, you can reverse what's recorded on the blockchain.

  1. This is true for ALL blockchains based on Satoshi consensus. That's how it works.
  2. ETH did not reverse anything or rollback any transactions. All the Ether remained in TheDAO contract, so they didn't have to do that. This makes this significantly different than trying to rollback for a Mt Gox theft or the like. This was uniquely possible.

Thank you for some interesting history

Coin Marketplace

STEEM 0.27
TRX 0.13
JST 0.032
BTC 62875.98
ETH 2948.16
USDT 1.00
SBD 3.55