This Saturday, a group of cryptocurrency advocates will unveil a new system that they hope will rewrite the rules of cryptocurrency.
Officially titled Ethereum, creators are calling it "Cryptocurrency 2.0". It's a decentralized mining network and software development platform rolled into one, and it will allow people to create their own altcoins, among other things.
The project, which will be unveiled at the North American Bitcoin Conference, is the brainchild of Vitalik Buterin, co-founder of Bitcoin Magazine, who has also been working on competing browser-based wallets Dark Wallet and KryptoKit. He wants new altcoins to be written for, and run on, Ethereum:
"You would have no need for mining if you do it on top of Ethereum. That's the thing; Ethereum makes it dead easy to make a new crypto."
The Ethereum network uses its own mining technology, Dagger. It utilises some of the concepts in the scrypt mining algorithm to keep the mining process even and fair.
Scrypt (which is used by altcoins like litecoin), was designed to be more friendly to CPUs (and unfriendly to ASIC miners), so that a core elite of powerful ASIC users didn't get an unfair advantage. Slowly, people are circumventing that protection, and developing powerful mining hardware for ASIC, so Dagger tweaks those concepts in an attempt to make things more democratic once again.
Dagger is an initial proof of concept, and the Ethereum team is considering a contest for the best possible ASIC-resistant proof of work. The developers are also looking into proof of stake, and they have developed a new PoS algorithm called Slasher. It solves many problems associated with older algorithms.
So, Ethereum is a mining network, but it's also a kind of operating system, on which cryptocurrency 'apps' can run. People write those apps using a programming language designed by the Ethereum team. Then they publish it on the system, in the form of a 'contract'.
A contract is an automated agent on the Ethereum network, with an Ethereum address. It can receive and send transactions, and it stores the balances of those transactions.
If I create 'dancoin', and publish it as a contract on the system, and give you a dancoin address, then you can send me dan coin. Rather than sending it directly to me, though, you send a message to the dan coin contract's address. This message will contain my address, and a value. The contract – which is effectively an app, remember – processes the code, and stores the value.
This makes it possible to create sub-currencies backed by assets, anything from gold and other currencies, to digital property or even securities.
It opens up lots of possibilities, according to the white paper here. One of them is the creation of colored coins, which are altcoins marked with certain properties to reflect digital or physical assets (a stock, a derivative, a car, or a house). Ethereum will be able to overcome some basic shortcomings that have hindered the development of colored coins, says the paper.
Custom currencies are potentially extremely powerful in e-commerce, explains Buterin:
"Paypal dollars are a custom currency. Airmiles are a custom currency. Starbucks gift cards are a custom currency. The potential applications are unlimited."
Financial derivatives are another interesting option. They can be implemented in a few different ways and tied with various contracts. This makes complex transactions not only possible, but relatively simple and automated to a degree. One point to note: since there is no enforcement on the network, all financial contracts need to be fully collateralized.
Ethereum can also be used in identity and reputation systems, simply by designing the necessary contracts. It can also be employed in decentralized autonomous organizations, peer-to-peer betting and online gambling, prediction markets, on-chain stock markets or in the insurance industry.
One of the major uses of Ethereum will likely be standardised contracts that will employ specialised data feeds, allowing developers to peg currencies to other currencies, commodities or securities.
Although Ethereum designed to be much more than a currency, the network does feature its own currency, too, dubbed ether. Ether is rewarded to miners and it also serves as a mechanism for paying transaction fees and eliminating spam. It will be sold in an initial fundraiser, but from then on it will be mined, resulting in a permanent linear inflation model. There is no cap, says Buterin.
An operating system for cryptographic finance
So, how does the platform actually work under the bonnet? A contract can be found at its address on the Ethereum network, but what's sitting at that address? The contract's code is there, along with the current state of all its addresses, and the transactions they made in the current block.
But an address is a logical thing: where is this data actually stored? It's stored in every block mined on the Ethereum block chain. And a new block will be mined every minute.
“The Internet is the greatest test lab in the world.”
The most obvious worry is that this would create a massive block chain. Every full client will have a copy of the Ethereum block chain (although not smartphones). If that block chain includes lots of altcoin contracts, each with thousands of individual addresses, that's a lot of data.
Buterin says the team has avoided this using functional data structures. Ethereum stores all of its data as branches of a tree. Only small changes will occur on the tree from block to block, and the system will store the common data between versions of the tree in a highly compressed way.
Ethereum also dispenses bitcoin's input and output-based mechanism, instead just storing one object with a balance, per address.
Client P2P protocol, currency
The group is working on clients for Ethereum in at least three languages, Buterin says. Windows, OSX, Linux and likely web browsers and Android will be supported.
When asked how securities regulation might affect certain types of Ethereum contracts, Buterin explained that the most interesting legal challenges will revolve around decentralized autonomous corporations (DACs). The trouble with DACs is that nobody owns a traditional stake and the ownership is allocated by the Ethereum networks, or other decentralized application platforms. Buterin continued:
"Decentralization in general is a very new topic for regulatory agencies, and we've been seeing that all too plainly with Bitcoin. Some laws simply no longer apply, many other laws still do apply, and other laws fall into a murky middle where at least initially it will end up in a regulatory agency's discretion."
He also pointed out that Ethereum plans to participate in the Consortium of Decentralized Applications (CODA).
The people associated with the project give it traction. Buterin is one of four core developers, all of whom will get a cut from the initial fundraiser.
One of these developers is Charles Hoskinson, founder of the Bitcoin Education Project, and now-departed co-founder of Invictus Innovations. Another is Anthony Di Iorio, founder of the Bitcoin Alliance of Canada, who is also founder of KryptoKit, which Buterin says will become an Ethereum wallet.
The team is also working closely with several other players. Humint, the branded coin project, are considering basing their platform on it, Buterin says. he says. The fourth core member of the team is Mihai Alisie is the creator of Bitcoin Magazine, where he works with Buterin.
Buterin has been a prominent member of the bitcoin community since 2011, and last year he quit university to pursue bitcoin opportunities full time. He also spent a lot of time working on colored coins and Mastercoin last year. However, he left when Mastercoin decided to work on top of Bitcoin.
"The projects were being significantly hampered from reaching their full potential. So I came up with the idea for Ethereum in November to fix these issues, and create a superior platform for these kinds of protocols to develop and grow on," Buterin told CoinDesk. Hoskinson added:
"Ethereum is a totally independent project that doesn't seek to compete with Invictus nor Mastercoin or Colored Coin. Think of these as applications and Ethereum as something a level lower like an operating dystem. We are Android, they are apps."
Technical and legal challenges
Buterin likes to point out that Ethereum development at a bare minimum level is easy, since much of the work has already been done, allowing users to employ off-the-shelf clients.
"The challenge is making the client actually modular, scalable, and most importantly of all secure. That will be the bulk of our efforts over the next few months; continually refining the client, and at the same time continuing to tweak the protocol, so that we can create a cryptocurrency that can actually survive the challenges of real-world usage levels, and real-world attackers," he said.
This isn't a direct attack on the bitcoin network, but there's no doubt that the group is trying to introduce a host of new features that aren't in the protocol. In fact, they're trying to re-engineer things at a far lower level, creating what the white paper calls the "Lego of crypto-finance".
Bitcoin's core developers seemed mostly bemused, although several of them rate Buterin highly.
"Many altcoin experiments pop up seemingly almost daily. We can wait until the dust settles, and incorporate any highly desirable features into a future bitcoin revision," said Jeff Garzik, a Bitcoin developer. He added that the Internet was "the greatest test lab in the world."
Story co-authored by Danny Bradbury and Nermin Hajdarbegovic