Vitalik Buterin took part in a "fireside chat" at the Techcrunch Blockchain conference 2018 in Zug. In this article I break down what was talked about and highlight some key topics for further reading.
Scaling, privacy and security are what Vitalik wants to focus on with Ethereum's growth in the coming months. Scaling was covered in Vitalik's main talk so this chat was more about the latter subjects.
Critics of Proof of Stake
Proof of stake (PoS) is a consensus algorithm being developed in an Ethereum upgrade proposal named Casper. The project is at https://github.com/ethereum/casper, whereas a full FAQ breakdown can be found at https://github.com/ethereum/wiki/wiki/Proof-of-Stake-FAQs.
Buterin:
Back in 2013 when GHash briefly had 51%, that was a big scare moment - and eventually GHash backed down and voluntarily dropped themselves to 40%. But now it has happened a second time, people are not talking so much.
…
Proof of work is like rich get richer squared. So if we can get a rich getting richer to the power of 1 that already is a substantial improvement.
From a pool's perspective, there are real incentives to hide the level of centralisation from the public. Reasons range from PR reasons of the pool company to the overall reputation of Bitcoin - but it is quite clear that the top 3 mining pools have half of the Bitcoin hash power.
We can refer to the geographic concentration in relation to the floods that happened in Sichuan, China in early July that knocked around 20% of the hashpower offline. This is a clear indication of centralised PoW. PoS is somewhat immune to geographic concentration due to the less strict requirements for operating it.
Security, Ethereum Hack Headlines
Ethereum hack is a great headline for FUD news, and for the ill informed, may believe that the Ethereum network has indeed been hacked. These headlines however stem from smart contracts having buggy code and consequently leading them to become compromised, often resulting in a loss of funds.
The question here is: how can we decrease the rate at which smart contracts are being deployed with bugs and consequently become abused?
One of the important things is the continued development of better programming languages and standards. One of the examples is a recent high level programming language was released in Beta called Vyper.
Head over to https://github.com/ethereum/vyper to check out the project. There exists a coherent overview of the language and its goals, as well as installation and smart contract compilation instructions. For more in depth documentation visit the ReadTheDocs site, at http://vyper.readthedocs.io/en/latest/.
Vyper was designed from the start to be more restrictive and target readability and security to make it harder to write deliberately misleading code. It is a Python like language with a stronger type system.
Python, although not the speediest language under the hood, is praised for its structural simplicity and friendly learning curve. It makes sense to introduce a language to the Ethereum ecosystem with similar characteristics to encourage developer adoption, and less bugs.
Apparently Vyper looked at the 10 biggest screw-ups in Solidity programming history and are trying to make features that deliberately make those as hard as possible, or impossible entirely.
Grants are being given to groups aiming to create another high level language that was based more on functional programming principles. The Ethereum Foundation announced 2 subsidy programs back January 2018 to encourage research and adoption into the ecosystem. Check out this Coindesk article that covered the announcement.
There have been various improvements in Solidity over the past couple of years like safe math libraries and stricter checks. The community is very actively developing new ways to make the Solidity language more secure and less prone to bugs. I will naturally become safer over time.
Having good code samples and code templates will be another key factor in bug free code. E.g. if you want a multi sig wallet, where do you go and whose code do you implement?
According to Buterin, there should just be standardised versions that have been formally audited / verified and ready to use. It is not there yet but is getting closer.
Buterin:
With better standards, better templates and better defaults, we can really start reducing the smart contract security issues by a lot, probably to the point where like at some point private key security once again becomes the dominant issue, and that is something we want to tackle as well.
Multi-sig bug and locked funds
In regards to locked funds (funds locked in a smart contract as a consequence of a bug or poor logic, with no means of recovery without a network modification), there are 2 ways that money could theoretically move.
The first way is if the Ethereum community agrees on a hard fork. This fork would modify the smart contract and be able to recover the funds associated with it. But there is negative sentiment on doing that, at least in the short term.
Historically, hard forking the network to recover human mistakes is not something the Ethereum community is interested in. And if they were, they now support Ethereum Classic.
The second way to recover is if someone makes another blockchain which hard spoons or airdrops all the ETH account balances, but makes the one modification to unlock the wallet. This way the ETH blockchain’s immutability will not be compromised.
To familiarise yourself on the hard spoon concept, check out this article from Cryptovest.
Ethereum is community driven, and Vitalik wants to stay away from becoming too heavily involved in making high level decisions.
Vitalik as a Celebrity Driving Force and Chief Scientist behind Ethereum
Jokes about parrallel to Microsoft and who is Vitaliks Steve Ballmer? took place on stage. The chief executive director (didn’t catch his name) of the foundation has been doing a great job at holding the fort on the administrative side to make sure the foundation continues to “smoothly role”, as well as managing the bureaucracy; a side Vitalik has been stepping away from for a while.
Strong individual team leaders and strong managers exist, with a growing team on research and development.
An important difference between the Ethereum foundation and Microsoft (or pretty much all corporations) is that Ethereum tries very hard to be a decentralised organisation. Ethereum try very hard to not have inside / outside divides. There are multiple ways to interact with the Ethereum community:
Become a full time contributor
Apply for a grant (The budget for the grant program is larger than the budget for the foundation’s full time staff.
Work for a project in the Ethereum ecosystem (e.g. OmiseGo) and in time end up collaborating with Ethereum researchers closely.
The questions of who is on the biggest pay role, or who are the core members of the team, often end up diverging a lot.
Talk on Privacy
Vitalik is confident that Ethereum is “Absolutely” moving more in the direction of ZCash and zero proof technologies. E.g. shielding the sender, receiver and amount of the transaction from outsiders, even though it is publically verified and guaranteed on the Blockchain.
In October 2017, the Byzantium upgrade was deployed that optimized cryptographic and zero knowledge proof constructions, and there are already projects that are starting to use them to build various kinds of privacy preserving applications.
One person in the community is building a ring signature mixing contract. “Barry Whitehat”, who released the project on Reddit, said that he used ZK-SNARKs to build a zero knowledge shielded token that is already running on the testnet, and could theoretically run on the mainnet tomorrow.
In the longer term: Raw virtual machine optimization. Not optimised for cryptography today. If its faster more kinds of cryptographic primitives can be implemented.
Buterin:
The current VM can be good for certain kinds of 256bit stuff, but there is a much wider space of it that is still not performing well right now, but we have efforts like web assembly and so forth to try to really improve on that.
Ethereum plan to do a lot more on SNARKs in the future, participating and supporting development of zero knowledge and proof technologies including the tooling around SNARKs. Trying to see what it will take to make the Ethereum blockchain to be friendly towards SNARKs, Buterin suggests supporting finite field operations amongst other things in SNARK verifications, like optimised hash functions.
The takeaway here: the community is still developing the building blocks for privacy preserving schemes, and is also planning to look at computing models that can be built on top of Ethereum. The ultimate goal is to develop a smart contract privacy preserving ecosystem that is as friendly to interact with as the current ecosystem.
Will zero knowledge implementations attract regulatory attention?
Sure it will at some point down the road, but it is important to keep in mind that ETH is a general purpose technology that can be used for ordinary people:
To protect their online privacy in general
Institutions to protect their trading privacy
To minimise front running and market manipulation on the blockchain
To improve mechanisms in auctions where privacy on inputs is a must.
Buterin:
More than half of the excitement of ZK-SNARKS and ZK-STARKS isn’t because of the privacy angle, its because they allow you to prove arbitrarily complex computations in a single proof that can be very compact and verified in a few milliseconds. I do hope that people see this much wider array of general purpose applications for privacy technologies.
What if someone eventually uses Ethereum for something bad?
Realistically the darknet market is already using Monero, there is not much more Ethereum can do to make the state of affairs larger than it already is. Focus on usability and security of these technologies will allow them to be used by regular people.
If regulatory entities have problems, they will ban exchanges now. Developers are fungible people; if someone goes down, someone else will fill that void.
A humorous example was presented that if a gun is held to Vitalik’s head, he would definitely publish a hard fork patch and oblige to all the gunman’s demands, but no one will adopt it, rendering the patch useless. Decentralisation at work.
Tokens for gaming and virtual collectables
A comparison to World of Warcraft was made where the community were heavily against real money trades; gamers persecuted it as much as possible. WoW is a mutual playground that you cannot get ahead just by throwing money at the problem, therefore using tokens with real-world value poses a threat to the fundamental phycology of in-game trading.
Asset tradability on a blockchain does create a mutual playground where you don’t have centralised providers that end up taking over the ecosystem as rent seekers. Interoperability makes it easier for newer games to plug themselves in, and the existing infrastructure for trading can readily be utilised.
Overall, gaming tokens and virtual collectables is a viable next stage use case to bring the technology to the mainstream.
The bottleneck of the Blockchain experience is losing your private key, or getting hacked
There is not much difficulty to sign a private key; press a button and see a confirmation. Where user experience starts fraying is a hack or you lose your password. This is where authentication technologies need to evolve. If self-sovereign user authentication technologies end up failing, then it will be very difficult for the blockchain space to achieve mass adoption, or fulfil its promises.
Social recovery may be an option, or multi-key schemes where you have one key and a server has another.
Social recovery is used today, .e.g. in WeChat where you select some of your friends that you recognise in order to unlock your account. This concept is currently in active experimentation for the blockchain. We will see if they end up being good enough for regular people to use and stay secure.
Buterin:
If not use Coinbsase Custody.
Buzz about security tokens — shares in companies or real estate ownership
Advantages of using tokenised assets were run down:
Access to an open ecosystem where you can trade
Use as collateral and means of payments
Store them and use with financial contracts
Any ERC20 token can work with any other app that uses ERC20 tokens.
The main concern with tokenised assets is what value are you getting by blockchainifiying the underlying asset? It doesn’t seem psychologically viable for people who go from paying $40 million for an original painting to $40 million for a digital private key that has some attachment to a painting.
Centralised Exchanges
Buterin:
I definitely personally hope centralised exchanges burn in hell as much as possible.
On the fiat to crypto side you are ultimately interfacing with the Fiat world, which only has centralised gateways, making it hard to decentralise the service. On Crypto to crypto — its still early days but the technology will become more efficient.
The advantages of decentralised exchanges available today were run down:
Don’t have to register and create an account.
Just send tokens from one address to another.
These features undeniably need to be refined, but offer a fundamentally better experience that a centralised exchange.
Buterin:
Ultimately I guess, even if decentralised exchanges end up having a lot of volume through the better decentralised exchanges as a baseline, kind of the most happy I am because that way we can really take away this stupid king making power that centralised exchanges have where they have the ability to decide which tokens become big by deciding to list them and charge these crazy $10–15million listing fees. The more we can get away from that world and something that actually satisfies the values of the blockchain world like openness and transparency the better.
Other takeaways — Ethereum world has less strife compared to Bitcoin world
People know what the social contract is with at Ethereum.
Often times 2 sides have different ideas, and further down the line didn’t realise they had different expectations from the start.
Ethereum’s vision always was one of social evolution, PoS, sharding, etc. There definitely are disagreements on how to best implement technologies, but everyone involved is convinced what their opponents are proposing are vastly better than what exists in current systems.
So the goals are aligned with moving forward and people understand what moving forward means, and people understand what sacrifices are required to achieve it.
Ethereum as a foundation is trying to:
Promote the right values that in turn attract the right people, both internally and externally.
Promote fundamental blockchain purposes for political and social betterment.
Value intellectual diversity. The core people have been exposed to these values early on.
Value technology and technological progress; cryptography, fault tolerance theory, etc
Value not being maximalist.
And that concludes our roundup!