Ethereum & The Ethereum Foundation

The Ethereum Foundation’s mission is to promote and support research, development and education to bring decentralized protocols and tools to the world that empower developers to produce next generation decentralized applications (dapps), and together build a more globally accessible, more free and more trustworthy Internet.

–¬†https://ethereum.org/foundation

Ethereum is a decentralized platform that runs smart contracts: applications that run exactly as programmed without any possibility of downtime, censorship, fraud or third party interference.

https://ethereum.org

Ethereum & The Ethereum Foundation

Metropolis, Serenity & The DAO

There has been much debate and significant coverage of The DAO Attack¬†however, no surprise,¬†more¬†questions have been raised than answers. There isn’t an¬†easy¬†answer¬†because¬†we can’t¬†predict how¬†people and markets¬†will react to the proposed¬†solutions,¬†and even if this entire anomaly was¬†orchestrated, the exposure¬†of Ethereum¬†combined with its autonomous nature makes controlling¬†an¬†outcome unlikely.¬†Alas, a network decision¬†must¬†be made¬†and¬†I¬†believe¬†there¬†is a¬†perspective which is overlooked, yet important to recognize.

First let’s¬†take a peak at¬†what the¬†future¬†holds for Ethereum. Specifically, EIP#86¬†is a¬†set of changes proposed for Metropolis. Here is a high level summary of what has been proposed:

  • Some block¬†data will be moved into Ethereum’s “World State”
    • Today,¬†blocks¬†are¬†stored outside the data structure which represent the Merkle state root.
    • This is the first step towards moving all state data accessible by the EVM into the world state.
  • Medstate removal
    • Today, all transactions are executed serially and¬†after¬†a transaction is executed the state root is calculated and stored in the transaction receipt.
    • This collapses state transitions into blocks, which¬†increases efficiency and is a step forward towards parallel execution of transactions.
  • “we take initial steps toward a model where in the long term all accounts are contracts

The proposal, posted by Vitalik in April, is an important change that moves toward all accounts having code. When all accounts are code, state transitions such as balance transfers are initiated by account code instead of the underlying implementation of Ethereum.

This a win for censorship resistance and it means that in Metropolis we will have a high level account interface which is vetted and capable of employing fail-safe mechanisms such as multisig.

With respect to the attack, principles, immutability, code vs consensus, etc., the most pragmatic path forward becomes clear when we also consider the currency and crypto abstraction in Serenity. From EIP#101:

2. Moving ether up a level of abstraction, with the particular benefit of allowing ether and sub-tokens to be treated similarly by contracts

In Serenity a token contract like The DAO will be a first-class account in Ethereum. Naturally, if the functionality of token abstraction is compromised, the immediate course of action would be a hard fork. Fortunately by the time we get to Serenity, we will have battle-tested and formally verified code to power these first class token accounts.

How Metropolis and Serenity are¬†implemented isn’t final¬†and its not clear¬†how the market will react to¬†a hard fork, but one thing is clear ‚Ästthe future protocol¬†of Ethereum¬†is inclusive of secure token contracts.

 

 

Metropolis, Serenity & The DAO