The Most Important Cryptocurrency Debate
Ethereum has had many discussions over its lifetime on how to proceed with its development, but one of the biggest ones has always been the recovery of lost or stuck funds. This discussion has heated up recently as the result of EIP 867 (introduction of ERPs) and EIP 999 (restore contract code of Parity WalletLibrary contract which was destroyed), but the discussion has been mostly limited to the Ethereum community.
However, I think the discussion of these two EIPs has ramifications far beyond just Ethereum. The debate over these EIPs includes topics such as:
- Decentralization
- Immutability
- Changes at the protocol level vs the application level
- Cryptoasset governance
These factors are critical for ALL public blockchains. The general community, both in social media and on Github / Ethereum Magicians, appear to be against any EIPs relating to recovery. The reasons often quoted include:
- Sacrificing Immutability
- Providing too much power / responsibility to EIP editors
- Sets precedent which can lead to slippery slope (what do we allow to be recovered?)
- Sets precedent of too big to fail
- Bad code should have bad consequences
- Changes shouldn't be made at protocol level
- Many more - Check discussion links
The video includes details about what an EIP is, what these two particular EIPs are, and my overall opinion. Personally I am in favor of EIP 999 as I think it is undeniably an exception (due to both the amount and people involved), but am uncertain about EIP 867. EIP 867 will mostly benefit businesses who develop on top of Ethereum (in my opinion), which is excellent, but like many others, I am concerned of how it would turn out in practice.
What are your thoughts?
Links:
EIP Description: https://github.com/ethereum/EIPs/blob/master/EIPS/eip-1.md
EIP 867: https://github.com/ethereum/EIPs/blob/master/EIPS/eip-867.md
EIP 999: https://github.com/ethereum/EIPs/blob/master/EIPS/eip-999.md
EIP 867 (Discussion): https://ethereum-magicians.org/t/eip-867-standardized-ethereum-recovery-proposals-erps/139
EIP 999 (Discussion): https://ethereum-magicians.org/t/eip-999-restore-contract-code-at-0x863df6bfa4/130
"Too big to fail" — I HATE HAAAAAAATE that phrase
This is why I’m putting my money in EOS and ADA. “Sarcasm”
Interesting debate. I support both of the proposals. If 999 is passed then 867 is necessary for similar situations in the future.
bad code having consequences is a foundation of blockchain security and reliability. However, in software this is not always a hindrance for success. Microsoft windows deliberately has a corrupt kernel that needs constant patching and updating to remain secure and reliable. Linux does not suffer from this problem, yet Microsoft is the commercial success.
Ethereum may end up in the same boat, being commercially successful but foundationaly a hot mess that costs 100x more to maintain than it should.
The second bailout of Ethereum will be the final nail in the coffin, just like it was for fiat money.
This is a complex issue with no easy solutions. Next to none smart contracts will be be bug free so major bugs will happen.
In theory there should be some roll back procedure but the problem is how do you police it and who does the policing. It could potentially open the door to "too big to fail". If the ledger is no longer immutable it kind of defeats the reason for using a block chain.
I side with "code is law" and would disendorse both EIPs, but I believe innovative fund recovery schemes should be studied.
A sample situation I came up with
If your house got burned down, there's no way to beg the universe to un-burn the house. Most people have home insurance to deal with this problem.
The universe is totally "immutable", as in the valid state transition sense, but blockchains are actually governed by consensus, for example, the DAO fund recovery was authorized by protocol change.
Insurance schemes are proposed in discussions surrounding EIP 867 and EIP 999, and they are application or off-chain solutions.
Solving the problem with better smart contracts
I know immutability is important. I have heard every arguments for it, but I also know that lost funds is sometimes not the victim's fault and "all software have bugs" is something almost every software developer on Earth have accepted. This means, smart contracts themselves need to be amended to fix their security holes. However, echoing the immutability arguments, smart contracts (from 2-party gambling sessions and atomic swaps to complex ERC20 tokens) are contracts and are not meant to be broken, or else they are useless.
Some smart contracts solve this problem with migration schemes, either activated by the contract's owner or through a vote by participants.
On-chain fund recovery scheme
A solution I want to explore is fund recovery through block rewards (also mention in EIP 867 discussions). Every block reward has a % allocated to slowly pay off those who lost their money. The lost fund is paid off in months or in years, so that the right amount of consequences of bad decisions are suffered ($100 fine, not death penalty, for littering). Since hacking and lost funds are socially recognized, on-chain voting to allocate fund recovery seems to be a good idea. But there are details to iron out: What kind of majority is required? What about vote buying (Vitalik thinks every voting system suffers this), voter apathy, privacy of wallet owners, and using it for non-fund recovery situations?). Depending on the voting system, this scheme can also suffer "too big to fail" problem since major dApps are better at campaigning for votes.
Hi. I find this topic really interesting. I was sceptic about Ethereum for a long time, I still am but it's good sign that they include the community in this discussion and don't just do whatever they feel like.
I have a question about something else. Today I've read this post on reddit:
https://www.reddit.com/r/CryptoCurrency/comments/8g768p/eos_dont_believe_the_hype/
It explains how no current currency can be decentralized, secure and infinitely scalable at the same time. It also talked about the consensus form of EOS being very centralized because not a lot of people have enough computing power to maintain such a node. Also the ones who will run such a node will have an incentive to bribe other users that own a lot of EOS to vote for them again in return for a few percents of the node owners earnings.
Then I thought about my NEO. I like(d) NEO and was really happy when I got it last december. It seemed pretty similar and I dug up the stuff that I've read about it a few months ago and it acutally is quite similar if not the same. Only with NEO there is also the chinese government with their fingers in the game.
So I thought about selling it because I don't want to be invested in a project with no intrinsic value. If the nodes shut down, the whole thing is gone.
On the other hand there are so many people working on this project, the community stands behind it very strongly, there are a lot of upcoming ICOs and as I already mentioned the chinese government is backing the project which can actually be seen as a security too. Because if the chinese government is involved they certainly won't let it fail.
I'm in conflict because on one hand this sounds like the opposit of what crypto is about but on the other hand it most certainly won't fail.
I just wanted to get my thoughts out and hear your oppinion if you have time to answer. Thanks.
EOS, a centralized cryptocurrency is what we might need at the current moment. To have the platforms, even though centralized, but to have them functioning. Like coinbase or gemini, they are centralized but required for crypto to function.
I believe EOS could be the first step and then Ethereum he second. Just like right now we have decentralized exchanges, but that came after the centralized ones.
Great topic,
Possibly the most technical video you've put out,and nice way explaining of it.
I was watching this with my 2 IT guys at work...well done.
Kudos @cryptovestor
A great video as usual. I am also a bit concerned about how this will turn out. The discussion is far from over though. I understand that it might be good for the users to have the option to recover lost funds- remedy their mistakes. On the other hand, the people in charge would have too much power and that could end badly. I guess only time will tell...