What is Ethereum’s difficulty bomb?

With an alarming name for a relatively straightforward workaround (although in blockchain land, even straightforward things aren’t really), the “difficulty bomb” is an ingenious way to get all Ethereum miners to switch to another consensus system.

by Blake Richard Verdoorn for Unsplash - Ethereum
by Blake Richard Verdoorn for Unsplash

A bit of background: Ethereum currently uses the Proof of Work consensus algorithm, but has always planned to switch to a Proof of Stake system at some point in the future. Casper, as its Proof of Stake system will be called, is in development, and will be rolled out sometime in early 2017, according to the current plan.

One problem has been, as with every decentralized permissionless system, how to get everyone to switch over to the new system, to avoid split chains, replay attacks, etc. As we saw with the recent hard fork, there is always a strong possibility that some will stick with the old system, and there’s not much that the Foundation can do to coerce them into following everyone else.

Unless it’s in their interest to do so. Here’s the ingenious part: the difficulty of mining Ethereum blocks (= the time it takes to find the nonce that will, when combined with the block data, give a hash within a certain parameter) has been gradually increasing since August 2015, and will continue to do so with exponential increments.

What does that mean? That Ethereum blocks will gradually take longer and longer to mine. The time between bitcoin blocks is in theory about 10 minutes (although recently it’s more like 20 minutes). The time between Ethereum blocks is about 17 seconds. This is one of several aspects that makes Ethereum more attractive to some.

But that is likely to change when Ethereum blocks take longer to process than bitcoin blocks. And it will certainly change, for the miners especially, when Ethereum blocks are so “difficult” to process that it no longer is profitable to mine them, since the electricity consumed in the calculations costs more than the potential ether reward.

The “difficulty bomb” is a clever way to force miners to stop using one system and move to another. Rather than pressure through centralized control (“do this or else…”), it does so through decentralized incentives. No-one is told what to do. But the current Proof of Work algorithm has a built-in self-destruct function that, since it is part of the code, no-one can do anything about. You either move to the new system, or you go out of business. Your choice. No coercion.

Since the increase occurs very gradually, “bomb” is perhaps not the best word for the concept, since no explosions or sudden changes disrupt operations. But it does successfully imply the destructive intent of the code, and subliminally encourages everyone to jump over as soon as Casper becomes available. Ethereum developers call it the “difficulty adjustment algorithm” or the “difficulty adjustment scheme”, which are not nearly as dramatic.

It’s worth noting that the difficulty bomb was conceived as a way to get everyone to move over to Casper when the time came. But it could be used to get everyone to move over to a different hard fork. Ethereum has committed to moving to a version of Proof of Stake. But who knows? Change happens. There’s also no guarantee that Casper will be ready in time. What everyone jumps over to, is not yet “written in stone”, as they say. But they will be jumping over to something different.

It’s also worth noting that the difficulty increase could be modified in the upcoming hard fork that will introduce Metropolis, the next planned iteration of the Ethereum platform (expected in the fall of 2016). This type of modification has already happened once. With the Homestead release in mid-March, the difficulty adjustment algorithm was relaxed a bit. Could this indicate a delay in the release of Casper? With the adjusted system, blocks will become un-mineable by 2021, but the slowness will, according to the founder of Ethereum, become “very annoying by the second half of 2017”. This may change.

Ethereum Classic, the alternative result of the latest fork, also has this ticking difficulty bomb, obviously. But what it doesn’t have is the obligation to migrate to a Proof of Stake consensus system, it doesn’t have the commitment to move to Casper. Its miners do have to move to a different algorithm, though. Or, Ethereum Classic could hard fork to remove the difficulty bomb. It will probably let Ethereum launch Casper and see how it goes, before deciding or not to adopt it. Only by then it will have had to do something about its difficulty levels. Assuming, of course, that it’s still around.

The genius here was in knowing that a possibly contentious hard fork was coming, and devising a way to pre-empt resistance. That doesn’t mean that the process won’t be without drama, though. It’s possible that disagreement emerges as to whether Casper is the right consensus algorithm to be using. Some may believe that another alternative is preferable, and independently fork to that. As we’ve seen with Ethereum Classic, it is possible for more than one Ethereum chain to exist (for now, anyway). The difficulty bomb does not solve the problem of trying to get intelligent and strong-willed people to agree on an optimum process, to facilitate the communication as to why the Casper version is the best, and to demonstrate that the entire community is buying into the Ethereum mainstream creed. Clever as it may be, what the difficulty bomb fails to do is to achieve consensus about consensus.

What is the difference between an algorithm and a protocol, and why does it matter?

This is a deep dive into supremely nerdy territory, but being a stickler for detail, I think it’s worth clarifying: algorithms and protocols are not the same thing. And in the bitcoin-blockchain world, the difference is important.

Which is surprising, since they seem to be used interchangeably. I certainly have used them as if they were the same thing, as have people much more knowledgeable than myself. And my inner Thesaurus desperately wants it to be so, to avoid over-using one word or the other. But a niggling doubt at the back of my mind pushed me to look into it a bit, and here is what I found:

That our confusion in this respect is holding us back.

So in this article, I hope to clarify the differences, and to show how a deeper understanding of this can lead to new breakthroughs. In part, it’s my fondness for the pedantic, but mainly it’s because I firmly believe that if we can understand something more profoundly, it’s more likely that we can come up with useful variations, innovations and use cases.

Here goes:

A protocol is a set of rules that governs how a system operates. The rules establish the basic functioning of the different parts, how they interact with each other, and what conditions are necessary for a healthy implementation. The different parts of a protocol are not sensitive to order or chronology – it doesn’t matter which part is enacted first. And a protocol doesn’t tell the system how to produce a result. It doesn’t have an objective other than a smooth execution. It doesn’t produce an output.

It’s like the engine of a car, how a car works.

An algorithm, on the other hand, is a set of instructions that produces an output or a result. It can be a simple script, or a complicated program. The order of the instructions is important, and the algorithm specifies what that order is. It tells the system what to do in order to achieve the desired result. It may not know what the result is beforehand, but it knows that it wants one.

It’s what you need to do to drive the car, the actions that the driver performs.

The protocol is a set of rules that determines how the system functions.

The algorithm tells the system what to do.

The protocol is. The algorithm does.

In the kitchen, the protocol would be a set of conditions and instructions such as:

  • The knife cuts
  • The flame heats
  • Olive oil is delicious
  • Frying pans are good for sautéing onions
  • Wash your hands before handling food
  • Burnt food tastes bad

An algorithm in the same kitchen could be:

  • First, chop the onion
  • Then, heat up the olive oil in the pan
  • Put the onion in the pan, add some salt, and stir until the onion is translucent
by Matthew Wiebe for Unsplash - algorithm
by Matthew Wiebe for Unsplash – the bridge is a protocol, the bike is a protocol, the rider is an algorithm

How is any of this applicable to the blockchain? Because the blockchain needs both protocols and algorithms, and each have a distinct role.

In blockchains, the protocol:

  • tells the nodes how to interact with each other (without telling them to do so)
  • determines how data gets routed from one node to the next (without telling the data to move)
  • defines what the blocks have to look like
  • stipulates who decides which transactions are valid
  • establishes how consensus is determined (without dictating the procedure)
  • identifies who maintains the ledger
  • delegates who determines how the rules of the system change
  • decides if identities are needed
  • determines who can create new coins (but not how)
  • triggers procedures in case of error

The algorithm, on the other hand:

  • verifies signatures
  • confirms balances
  • decides if a block is valid
  • determines how miners validate a block
  • establishes the procedure for telling a block to move
  • establishes the procedure for creating new coins
  • tells the system how to determine consensus

So far so good, right? Now here’s the truly befuddling part: are “Proof of Work” and “Proof of Stake” protocols or algorithms? In crypto journalism they tend to get used interchangeably, with frequency coming down on the side of algorithms, but with protocols getting a relatively high score (check out “proof of work algorithm” vs “proof of work protocol” in Google). So I’ve been furrowing my brow and staring into my empty cup of coffee and I’ve concluded:

They’re algorithms. Not protocols.

Both Proof of Work and Proof of Stake tell the miners how to go about validating a block. They establish conditions, like protocols do, but the instructions are fundamental, and there is definitely a desired outcome: to process transactions, to determine which blocks enter the chain, and to provide a consensus as to which chain is the correct one. Both use the underlying protocol to achieve those goals.

Continuing along this brain-wrinkling train of thought, are Bitcoin and Ethereum algorithms or protocols?

They’re protocols. Not algorithms.

They establish the ground rules, set up the “engines” and determine who does what and how. We, the users, then play around with algorithms to get coins sent, to execute smart contracts and to create new business models. The algorithms are what make the protocols useful.

So, if we understand that the rules are one thing and the instructions are another, we can get creative. What is our desired outcome? And what algorithms, using the rules of the protocol, can we come up with to get us those desired outcomes?

That is why the difference is important. We need to understand the distinction between the state and the action. Between the rules and the procedure. Between what we can and can’t do. We can’t change the rules (if you want to, go ahead and set up a new blockchain). But we can create a series of actions, instructions and processes that can get us to where we need to be.

 

Hard fork confusion and unexpected twists

So, the Ethereum hard fork happened. And then things got confusing. So I rolled up my sleeves, opened something like 24 tabs on Google Chrome, and furrowed my brow in concentration. Almost a week later, I’m still confused. So much so that I almost decided to not write about this. But then I figured that I’m probably not the only one, and my confusion is itself pretty telling. I’m not a total beginner when it comes to cryptocurrencies. And if I’m confused, then this whole scenario not good for mainstream adoption. So, here is an account of what I understand, and what I don’t, and I share it with you in the assumption that I will continue to learn more about this as the situation unfolds. Things sure ain’t boring in cryptoland.

ethereum-homestead-with-forks

First of all, for those who don’t know what the fork is or why it happened (if you do, skip the next two paragraphs): Ethereum is a powerful blockchain platform that aims to be “the world’s computer” by making it easy to program smart contracts in a decentralized, token-based network. It has attracted a lot of attention from cryptocurrency enthusiasts and businesses alike, and is well on its way to being a solid sibling for bitcoin, only focussed more on utility than currency. Ether, its virtual currency, is the second largest cryptocurrency by market capitalization, although still only 1/10th that of bitcoin. Just over a couple of months ago, a ton of hype exploded around theDAO, a complex smart contract coded on Ethereum, which wanted to decentralize project investment by collecting investable funds from the “community” and then letting the “community” vote on which projects would get those funds. The novelty was that no management was necessary, the community would run things, everything was democratic, and the code was the law. The appeal of the idea exceeded all expectations, and ended up raising over $150 million from over 16,000 investors. It was called “the end of business as we know it”, “the organization that will kill corporations” and a whole lot of other hype-fuelled declarations. And then all hell broke loose.

A hacker spotted a flaw in the code and siphoned off about $50 million worth of ether. This was obviously not good for the investors, some of whom were Ethereum developers. While to some it seemed like a fair hack (if “the code is law” and the code allowed it, was it a crime?), to many it was unfair, and they wanted their money back. So the Ethereum community decided to change the code, and to turn back code-time to before the hack, so everyone could pretend it didn’t happen. Because this was a pretty fundamental change (and the proposed soft-fork code had flaws), it would have to be done via a hard fork, which means that everyone who uses or works with Ethereum would have to move over to the new system, or we would end up with two different Ethereums. The possibility that some participants would not move over was deemed so unlikely as to not be a problem, and the hard fork went through on July 20th.

Only it turned out to be not quite so unlikely. Some holdouts did refuse to move over, citing philosophical differences with the idea that a cryptocurrency, based on immutability and resistance to censorship, could be changed to suit the convenience of a few. So what if the DAO hacker gets to keep his (or her) ill-gotten gains? Much more than money is at stake: cryptocurrency code can’t be manipulated for profit, period.

But cryptocurrencies can make mistakes, right? There could be an error in the code, and that should be fixed, shouldn’t it? Yes. But that’s not what happened here. I’m not saying that Ethereum’s coding is perfect. But the DAO hack was because of faulty coding on the part of the DAO team, not the Ethereum team. It was not Ethereum’s fault, and Ethereum was not therefore under a moral obligation to restitute losses. So why did it?

It’s about more than just getting their money back. Without the fork, $50 million that was destined for project investment would be removed from the market. That would have a significant impact on the Ethereum ecosystem. And, with a loss of that size, the SEC and other regulatory bodies would take an interest and most likely clamp down on cryptocurrency crowdsales, other DAO projects, etc. The negative effect on experimentation and creativity would set the evolution of the sector back. Pro-fork advocates insist that the DAO was an experiment, just that, and it went wrong. There’s no point in deeply hurting the development of Ethereum because of an experiment gone wrong.

It turns out that the group of holdouts is nowhere near as small as Ethereum expected, and seems to be growing by the day. It is now about 15% of the total Ethereum market, measured by market capitalization, and is now the 6th largest cryptocurrency. Several “big names” in the cryptocurrency world have expressed support. Barry Silbert (early bitcoin adopter, founder of the Digital Currency Group), Charles Hoskinson (former CEO of Ethereum, co-founder of Bitshares, current adviser to Lisk), the Stampery team… The pre-fork Ethereum chain, instead of dwindling away as everyone switches over to the post-fork chain, is growing, and more and more exchanges, miners and wallets are adding functionality. Ethereum Classic is even having its first meetup in London in August. And while most Ethereum-friendly businesses did upgrade their software for the fork, many exchanges, mining pools and wallets are choosing to incorporate trading/storage/mining/support for the old pre-fork Ethereum into their offering: Poloniex, Kraken, Shapeshift, Bitfinex, Yunbi, F2Pool, Ledger, MyEtherWallet to name just a few.

Here’s how it works, technically (and this is the part I understand least, so please correct me if I get any details wrong): anyone who owned ether (Ethereum’s cryptocurrency) right before the fork, now owns that amount in both the new Ethereum (ETH) and the old Ethereum, now called Ethereum Classic (ETC). So, all pre-fork ether holders have, in effect, been given free ether. This didn’t seem like a bad idea at the time because no-one expected the old ether (ETC) to have any value. But it does, not as much as the new ether, but at $1.78 at time of writing (vs price of $12.70 for the new), not insignificant, either.

The problem is that both ETH and ETC accounts have the same public and private keys. So, if someone broadcasts a transaction on one network, it could also be reflected in the other network (this is known as a replay attack). In effect, this would be like spending more than you need to. You only meant to transfer ETH, but you ended up also transferring an equivalent number of ETCs, even though that wasn’t your intention. Or, you could get an unexpected result if you go to withdraw ether. This shouldn’t happen if the networks have taken proper precautions. But it has happened, and it can be (is being?) used by some to profit at the expense of others. Vitalik Buterin, the founder of Ethereum, has urged the Ethereum Classic developers to update their code (yes, to do another hard fork) to close off this possibility. The Ethereum Classic developers have responded that it’s not their responsibility, that Ethereum should have coded this intotheir hard fork. Until this is solved, confidence in the network will be understandably low.

“For transactions to be final and unmodifiable, blockchains need to be immune to third party interference. This promise was completely broken by Ethereum. Hard forks should only happen when a catastrophic bug puts in danger the core values of the technology. In this case the consensus mechanism worked just fine. The blockchain was modified simply because a group of people lost too much money and they decided to bail themselves out.” – Stampery, in an article on Medium

Medium-term things are going to get even more interesting. Will ETC survive as a separate cryptocurrency? Will it eclipse the new ETH? Or will it enjoy a brief spurt of enthusiasm before participants realise that the resulting confusion doesn’t benefit anyone?

I think it will survive. I see a philosophical enthusiasm for the Classic chain that reminds me of bitcoin. It goes beyond the practical and cherishes the original ideals. It seems willing to accept sacrifices to maintain those ideals. Among those sacrifices are a divided community, and the fact that the DAO hacker has a stash of over 3.6m of the currency, which he (or she) will presumably want to offload at some stage. That threat should keep the price low for a while.

But the trading volume of ETC is almost 1.5x that of the new ETH. And the hash rate (a function of how many miners are participating) has been steadily increasing from 2% a few days ago to over 12% at time of writing. The ETC price at time of writing is 135% higher than the price immediately post-fork. New ether’s price (ETH) has fallen by 15% over the same period.

“We believe in decentralized, censorship-resistant, permissionless blockchains. We believe in the original vision of Ethereum as a world computer you can’t shut down, running irreversible smart contracts. We believe in a strong separation of concerns, where system forks are only possible in order to correct actual platform bugs, not to bail out failed contracts and special interests. We believe in censorship-resistant platform that can be actually trusted – by anyone.” – from the Ethereum Classic manifesto

So, the “successful hard fork” that everyone was celebrating a couple of days ago? Not looking so successful now. Ethereum has been plunged into a whirl of confusion which, given that it’s pretty confusing anyway, is not going to help its image. Emotions are high, with each side accusing the other of greed and complicity. Insults are flying, reputations are called into question, and motives are doubted. Conspiracy theorists are pointing fingers at the bitcoin community, accusing them of deliberately trying to destroy the competition. We all know that people behave strangely when money is at stake. And that the very idea of a decentralized, censorship-resistant form of value transfer incites passions. But Twitter and Reddit clearly show how extensive and deep the lack of information combined with strong opinions go. And we thought the bitcoin bickering was silly…

Meanwhile, the core Ethereum team is maintaining its cool and staying above the fray, while getting down to the tricky business of managing the new chain and the communication around it. Other key crypto participants and ETH supporters are scratching their heads and elegantly saying “whoa, didn’t see that coming”. Vitalik himself has said that he welcomes any Ethereum spin-off. So whether you agree with the hard fork or not, it does seem that the sector heavyweights are handling the situation with poise and good intentions.

What we are all getting from this situation is an insight into hard forks. We’ve never had the chance to witness one up close before, and this is relevant to the battle going on in bitcoin over the block size. We also get – and this is potentially even more useful – the opportunity to reflect on what we think cryptocurrencies should stand for, the inevitability of human error, and the dignity of owning your mistakes.

(Note: I do not own any ether, old or new, and did not subscribe to theDAO. A similar version of this post was first published on LinkedIn, and I twitter away at @NoelleInMadrid. Come and say hi!)

Hello, DAO? I have some questions.

by Gabriel Garcia Marengo for Unsplash
by Gabriel Garcia Marengo for Unsplash

I’ve been trying to get a handle on the concept of The DAO (and all DAOs in general), and I have a ton of questions. So I’m going to throw them out there, because maybe you have the same questions. Maybe you even have some of the answers. That would be great. Please share.

  1. First (actually, these are in no particular order), I notice that we rapidly moved from “Digital Autonomous Corporation” (coined back in late 2013) to “Digital Autonomous Organization”. I get why. A “corporation” is a legally constituted entity which has to abide by certain regulatory and financial rules. An “organization” is a collective that is organized. Since a DAO seems to be a collection of rules and tasks, with some degree of organization, the name makes sense. What I don’t understand are headlines like “The DAO: How the Employeeless Company Has Already Made a Boatload of Money” (from The Observer), “Can A Company Be Run Without Leadership, Management Or Employees? $150m Invested In The DAO Says Yes” (from Forbes), “The Tao of “The DAO” or: How the autonomous corporation is already here” (from TechCrunch), and “Chiefless Company Rakes In More Than $100 Million” (from The Wall Street Journal). From what I gather, the DAO is not a company, or a corporation. It has not been constituted as such, and I have not yet come across one (maybe they do exist) that even claims to be a company. So why the leap from “organization” to “company”? Other than the pressing need for attention-grabbing headlines, of course.
  2. Since DAOs are not technically companies, can they legally issue shares? Yes, I know that technically they’re not issuing shares, most of them operate on a “token” basis for their crowdsales. But, operationally, is there much of a difference? Except that one has a lot of enforceable rules and regulations designed to protect the investor, and the other doesn’t. Since financial regulatory bodies do like their investor protection laws, how long before they deem token sales as an investment worthy of heavy regulation? And when that happens, what will happen to current token holders? Or token issuers?
  3. Has anyone seen anything that resembles a business plan? I’m not averse to risk, but I’d like my investment to have some sort of scenario at least thought of, other than best case = lots, worst case = dunno. Right now the “business plan” seems to be along the lines of “let’s kickstart the Ethereum ecosystem with a crowdfunded investment pool”. It’s a good idea: all Ethereum-linked business will benefit if the platform grows and extends. But that’s a conceptual, almost ideological bet rather than an investment one.
  4. In the case of The DAO, if the ether (contributed in exchange for tokens) is distributed to viable investments (those that receive enough votes to qualify), does that not reduce the amount of ether backing the issued tokens? Does that not make the tokens worth less?
  5. Unless of course you assume that the future value of the investment will be higher than the invested amount. But, let’s be real, the world of apps and “startups” is fraught with investments with no return. Even trained and seasoned VCs get it wrong most of the time. Why do we believe that a collection of untrained enthusiasts will do any better?
  6. Perhaps the “profits” will come from the increase in value of ether, pushed by the increased activity in Ethereum, financed by the funds of The DAO. But that is a financial profit rather than an operating profit. Different concept, different motivation. And, if token holders start to “cash out” as the currency moves up, would that not push down the price? And the value of the tokens?
  7. Will the DAO be subject to taxation? If so, what? Which? Where? And if not, does that mean that it is possible to evade taxes by setting up DAOs? I can’t see the regulators liking that.
  8. The proposals submitted to The DAO for funding have to specify (again, if I understand correctly) how much ether they need to produce or create their product or service. Now, unless they can pay for the services that they need in ether, which unfortunately is still very unlikely, they’re going to need to convert it into some sort of officially recognized fiat currency. And even if they can pay for their services in ether, their suppliers are going to need to convert. And, the exchange rate of ether is not exactly stable. So, given that the project creators understand how much local fiat currency they would need, how do they know how much ether to ask for? They apply the current exchange rate and pray that it holds for the duration of the voting and execution?
  9. If the price of ether crashes, the project will probably no longer be viable. Can a project be cancelled and funds returned if that happens? Can token holders get their money back if the market environment changes?
  10. With projects receiving ether and cashing out in order to do what they need to do,would that not apply downward pressure to the price of ether?
  11. What about quality control? And delivery control? The “contractors” (those who submit successful proposals) get the funds whether they end up delivering or not, right?
  12. Let’s say a really great proposal comes along that needs, for example, $20 million (or $10 million or $50 million, the amount is not important). Let’s say the smart contract stipulates that the funds are disbursed in stages, $5 million each month. After receiving the first $5 million, imagine that the “contractors” (the ones who submitted the proposal) disappear. True, the fund can then find another “contractor” to finish the work. But contractor A has stolen a good chunk of the funds’ money. And say this happens a few times. Since code is not a legally recognized language in any jurisdiction that I know of, does that mean that there is no legally binding contract? And therefore no breach of contract? Does that mean that there is nothing that law enforcement could do to recover the funds?
  13. Let’s imagine that one of the proposals gets funded and turns out to be an efficient and novel service that adds value to the network. Who would own the intellectual property rights? If I understand correctly, The DAO “owns” the projects, and pays the “contractors” (the ones who submitted them) to make them happen. Who gets to file the patent?
  14. If a token holder is not happy with the investments the DAO is funding, he or she can “fork” the DAO by withdrawing their tokens from the main one, and forming another. There are certain conditions that need to be fulfilled for this to come to pass, but they don’t look onerous, and it’s not hard to imagine an ecosystem populated with many DAOs that started as part of this one. So, the funds have split into several DAOs. To which do the projects submit their proposal?
  15. And what happens if something goes terribly wrong with one of the funded projects? Say an Ethereum app manages to delete data, or execute something that causes a loss somewhere. Who is liable? That matters to the person or persons who were hurt by that action. And it matters a lot to lawyers.
  16. I could go on for quite a lot longer, but I’ll end with the ultimate question: how safe is our invested money? What are the chances of a hack? I know that the DAO has procedures in place to prevent malicious attacks. But what about an outright hack? Or a hack of the funded projects? People who know about this assure me that the code is solid. But as we’ve seen, very few systems are totally hack-proof. And the cost to the entire system, not only in terms of ether (and the equivalent fiat currency) but especially in terms of reputation, could set development back by years.

The idea is exciting, and I hope that it is a great success. I hope that it helps us to see how we can change processes and structures, and that we can gradually move towards a new form of business logic. But I fear that the risks are very high, and that so much can go wrong. The attention that the surprise success has brought is not necessarily a good thing. It would be preferable, much, to let us test this concept far from the glare of public scrutiny. To make mistakes, to iterate and to build on small triumphs. As it is, the project has the world’s attention. And knowing how the press love their failures, if it doesn’t live up to expectations, the fallout will be unreasonably severe.

(This article was originally published on Medium.)

The DAO: Investments Meet the Invisible Hand

A new way of running an investment fund

So, this is new. Or is it? The concept of a distributed autonomous organization (a DAO) has been talked about ever since bitcoin enabled rudimentary smart contracts. The launch of alternative cryptocurrency Ethereum pushed the chatter up several notches with their smart contract-friendly platform. And over the past week it seems that DAO-talk has become mainstream. Yet few know what they are, how they work and why they are so interesting. Because few have been put into real-world practice. And none have attracted significant public attention. Until now.

Backing up a bit, let’s briefly talk about Ethereum. Ethereum is a public distributed blockchain, similar to that of bitcoin, but with operational differences and a more intense focus on smart contracts. Its virtual currency is ether, which is used to power the mini-programs embedded in the transactions on the network. Executing a loop or completing an if-then statement will cost a certain (tiny) amount of ether. Ether can be mined as a reward for validating blocks of ether transactions, or it can be purchased on digital currency exchanges, just like bitcoin. Ether is still at a fraction of bitcoin’s market capitalization ($1.2bn vs $6.9bn), but its liquidity and value seems to be building.

A Distributed Autonomous Organization is what the name says: an organization that does not have a hierarchy, and functions pretty much on its own. No CEO, no Executive Directors, no central chain of command. Therein lies the “decentralized”. No administration staff, marketing executives or sales representatives. Therein lies the “autonomous”. There aren’t even any incorporation papers. The functions the company needs to fulfil are written in code and automatically executed when the time comes. The filing of accounts, the sending of emails, the disbursement of payments – there is no one person asking that these be done, and no one in charge of doing them. They just get done, because they are written in code. It runs itself. It exists as long as there is an internet connection.

What kind of organization can run like that, I hear you ask? Obviously relatively simple ones, such as a crowdfunding campaign (if enough money is collected, ship the product), voting (if enough votes are gathered, such-and-such happens), etc. But also more complicated scenarios have been implemented, such astransport management, content distribution, cloud storage… And even more complicated ones are possible. Just think of everything a business does, and ask yourself, how would I go about automating this?

So why have so few been put into real-world practice? Because the concept is relatively new, and the execution is risky. We can’t count on bitcoin for this (for now), as the protocol does not allow complicated scripts, and the currency’s scalability problem has not yet been overcome (although some DAOs run on topof bitcoin, which means they run off-chain but connect to the bitcoin blockchain for verifying and locking in).

Ethereum does give us that capability. With Ethereum we can program functions, with if/then/else queries and conditional responses. With Ethereum we can create all sorts of DAOs.

Such as the one launched with little fanfare at the end of April. Although often called the “Ethereum DAO” in the press, Ethereum neither owns it, nor did it develop the software. That credit goes to Slock.it, a Germany-based developer of blockchain IoT solutions. On the 30th of April they announced in their blog the activation of the confusingly named The DAO (a bit like naming your company, “The Company”), an automated association whose purpose is to invest in Ethereum applications. And they invited the community to participate by purchasing DAO tokens with Ethereum’s currency ether. DAO tokens give holders the right to vote in the investment decisions. Which makes The DAO, In effect, a crowd-sourced, crowd-run investment fund.

from the Ethereum Community Forum - DAO

In just 20 days, it has become the world’s largest crowdfunded project, by far. Up until now that honour has been held by the video game Star Citizen, which to date, as far as I know, has raised almost $110 million (the actual amount fluctuates in line with the ether exchange rate). As of this morning and with only two hours to go (the campaign ends today), The DAO had accumulated almost $130 million of ether (although this valuation fluctuates in line with ether’s exchange rate), which accounts for 15% of all ether ever mined. It also is now the most funded cryptocurrency startup ever, beating Coinbase’s $75m, Digital Asset Holding’s $60m and Blockstream’s $55m. And The DAO funds did not come from institutional investors. They came from ordinary crypto enthusiasts.

The blown-away success of the campaign has even surprised the developers. In an interview with the Wall Street Journal, Slock.it’s founder Stephen Tual said that they had hoped to raise perhaps $20 million.

What will the DAO do with the funds? Once the crowdfunding closes on the 28th of May, it will start accepting proposals from developers for their ideas for Ethereum applications, services, etc.. The token holders will then get to vote on which proposals will receive funding. The successful projects then reward The DAO with a percentage of the revenue from their deployed service (or some similar arrangement – each proposal specifies the terms of the funding and the terms of the payout).

This is similar to a VC fund, but without the VCs, without the high salaries, without the paperwork and without the interminable meetings. And, obviously, with ideas limited to projects on the Ethereum blockchain (for now).

Why has it attracted so much interest? Most of the PR has come after the fact, with headlines over the past few days heralding a new form of funding and a new way of developing. The bulk of the interest has not come from professional investors, but from the cryptocurrency community, a rapidly increasing collection of individuals all over the world that are fascinated by the potential of this new distributed consensus system.

The DAO

Yet there are increasing concerns that this may be over-blown hype. First, the legality is still dubious. Who owns the funds? Who owns the ideas? Holding tokens does not make you a shareholder, so while you can vote, you don’t technically own a share of the profits. Can The DAO be hacked? How good will an untrained “crowd” be at spotting worthwhile investments? Would it be possible for someone to buy lots of tokens and then fund their own business idea with The DAO’s money? What if the ether exchange rate crashes?

Whether The DAO ends up a success or not, it is testing new waters, and opening our eyes to what could become possible through automated transactions and governance. It is showing us the power of the community, and the interest in change. And it highlights the potential of cryptocurrencies and blockchains to show us a new way of looking at business. Whatever happens, things are about to get very interesting.

(This article was previously published on LinkedIn.)

Blockchain electricity

I’ve been doing some research recently into the role that blockchains could play in the management of supply chains. The fit seems obvious (one chain on top of another… geddit?), but it’s actually complex, and the potential impact is huge. In brief (and I’ll go into more detail in other posts), the blockchain could be used to track the progress of a good as it passes from one development stage to another. From design through to production through to shipping, with components’ information verified and embedded. Less bureaucracy, fewer middlemen, less chance of corruption, contamination or substitution. Greater transparency, lower costs. There’s a lot to talk about here.

But let’s step to one side for a moment and look at a supply chain that doesn’t move physical goods, or even digital goods. A supply chain that moves energy. The electricity grid. How can the blockchain help there?

From distributed generation to micro-supply, innovators both large and small are coming up with unusual ideas. Here are some examples:

RWE, a large German electricity producer, is working on a prototype (together with Ethereum Internet of Things specialist Slock.it) for an electric car charging station that communicates directly with your car. Your car downloads the electricity it needs, either at a plug-in station or while stationary over an induction point (such as at traffic lights), and pays exactly the right amount via its digital wallet on the blockchain. The contract is between the charging station and your car. Neither you nor the energy company need to get involved.  This system, if extended, would not only make it possible to keep your car charged in any country, since a contract with an electricity company is not needed. It also would make fleets of driverless cars more economically and logistically feasible, since responsibility for charging would fall to the car, not the owner.

Taking a huge distributed step forward, TransActive Grid (a joint venture between distributed tech company L03 Energy and Ethereum developer Consensys) can set up solar panels on your roof, and enable you to sell any excess electricity you generate to your neighbours through a “microgrid”. The aim isn’t to replace the big electricity companies, but to see if a peer-to-peer electricity network is technologically possible. At the moment the main obstacle is that these exchanges have to happen off the electricity grid, which puts physical barriers (distance) in the way of their potential spread. But if the exchange turns out to be practical, grid regulation could in the future allow adaptation of the existing electricity network. This experiment is already underway in Brooklyn, NY, and the first transaction took place successfully just a couple of weeks ago.

On the quirky end of the spectrum, SolarChange was created to reward generators of solar power, via the blockchain. For every 1Mw of green electricity produced, the producer is awarded 1 SolarCoin, which can be stored in a SolarCoin wallet and held for value appreciation, or converted into bitcoin (the current exchange rate is 0.00010001 BTC, or about 5 cents – a year ago it was a tenth of that).

solarcoin

Not as much for decentralized supply as for decentralized funding, South-Africa based Bankymoon – which develops bitcoin payment gateways for smart electricity meters – has set up Usizo, a crowdfunding platform for electricity supply. Schools are equipped with a smart meter, and donors are invited to contribute to the school’s electricity supply by sending bitcoin to the meter’s bitcoin address. Talk about a feel-good application.

Usizo - blockchain electricity

They are supported in this project by Vienna-based Grid Singularity, cofounded and led by some of Ethereum’s core team (and Bankymoon’s founder Lorien Gamaroff is a “Vision Partner”). Grid Singularity is developing a platform to use blockchain technology to connect power companies, and is exploring how to use the blockchain for smart grid management, energy trade verification and other applications. Their focus is use in developing countries, to help develop their solar energy deployment.

And as if to prove that things are warming up in the sector (there are so many opportunities for puns in this topic), just last week a potential new entrant emerged. Consensus 2016, a big bitcoin and blockchain conference organized by CoinDesk, was in full swing in New York. One of their features is a hackathon, in which ideas using the blockchain to improve lives compete for a $5,000 prize. Not a lot of money, true, but the PR isn’t bad. The winner this year is, drumroll, Decentralized Energy Utility, which aims to enable a network of smart meters and blockchain-based payments.

So, while the current electricity grid system is not about to be disrupted tomorrow, the talk about the blockchain disrupting the power supply seems to be passing from the theoretical to the practical. The potential is huge. Decentralized energy is more secure (less likelihood of power outages), involves less wastage (the power goes to where it’s needed), and once scale is reached, will save money (lower generation, distribution and maintenance costs). It also puts efficient electricity within reach of those without a bank account, even those without access to the power grid. Could we be witnessing the beginning of a fragmentation of the electricity market? How will this play out with the regulators? Could it be that the blockchain will reverse the centralization tendency of capitalism? With the stage set for the first act of a suspenseful disruption, the pre-show performance looks promising, and the cast of characters looks hopeful.

Ethereum and Bitcoin

The media seems to relish headlines proclaiming the triumph of a bitcoin rival. And it’s not surprising. Ever since the origins of theatre in ancient Greece we have been fascinated by the inevitable fall of the great and the successful, especially if at the hands of a young competitor. It makes for a very good story, in which we acknowledge the fragility of existence and console ourselves with the knowledge that everything changes. So, the recent headlines will no doubt sound like a compelling combat to the death between Ethereum and Bitcoin, with only one virtual currency emerging victorious.

But it’s not like that. I love a good headline as much as anyone, but positioning the two as competitors does each a disservice. Bitcoin will end up suffering even more blows of misunderstanding and misled scepticism. And Ethereum’s potential will get tarnished with the flimsy “just another virtual currency” brush. The reality is that both can, and should, co-exist, as each targets a different functionality.

ethereum homestead

What is Ethereum, and how is it different from Bitcoin?

It is often labelled an “altcoin” (alternate cryptocurrency), and while that is not inaccurate, it is only a small part of a very big picture. Ethereum does have its own cryptocurrency: ether. But ether is not meant to be a currency as much as it is meant to be used to facilitate Ethereum transactions. It’s complicated, but stick with me.

Glossing over Ethereum’s interesting history and parallels to early computers (which can lead to premature conclusions about its future, I’ll talk about this more another time), the most useful and novel feature is its capacity for complicated instructions. Bitcoin is what they call a “stack” script, which means it executes orders from top to bottom, but it can’t go back a few steps. It can’t loop. Ethereum can include loops, and conditions, and all sorts of cool computing functions that make it flexible and capable of executing relatively complicated sequences. Looping is especially useful for “while this, then that” and “if… then… else” instructions, which contemplate various outcomes and produce different results accordingly. Bitcoin can include “if… then” statements, but if the condition is not met, it simply moves down to the next instruction.

Bitcoin chose to not include “Turing-completeness” (the ability to execute relatively complicated programs) to avoid the possibility of infinite loops. Ethereum gets around this problem by requiring the attachment of a certain amount of “gas”, units of transaction currency which are exchangeable for ether, the official Ethereum currency. Each step in the code packet “spends” a unit of gas. This is what eliminates the problem of infinite loops. Each transaction has a certain amount of gas assigned, each step (including loops) subtracts from the gas available, and when the attached funds run out, the program crashes. End of problem.

Why not just use ether, the official Ethereum currency, to pay for the program execution? Because each function has a set cost in gas units. The exchange rate of ether will fluctuate with the market. By separating the Ethereum currency from the cost of the execution functions, the system strips out the cost volatility, which will make developers’ lives much easier. The cost of an application in gas can remain constant, it won’t need to be frequently updated. What fluctuates is how many gas an ether can buy.

This same system keeps Ethereum light. Running complex code will end up being expensive, not just in computing power and storage, but also in money terms. With each step carrying a cost, developers have a strong incentive to write tight code.

This complexity makes Ethereum ideal for blockchain-based smart contracts. You can issue currency, manage domain registrations, create an identity management system, set up a decentralized social network, program on-blockchain gambling, create Decentralized Autonomous Organizations, file crop insurance, generate financial derivatives, build a blockchain dropbox, run a P2P crowdfunding campaign, set up prediction markets, manage escrow payments, run decentralized auctions, play around with the internet of things, and much more.

A lot of this can also be done on Bitcoin. Theoretically it is possible to do pretty much anything with Bitcoin that you can with Ethereum (note the with Bitcoin, not in Bitcoin). But programming complicated smart contracts in Ethereum is easier.

If Bitcoin can be called “programmable money”, Ethereum is even more so. Only Ethereum is not about “money”. Bitcoin is. And therein lies the main difference. Unlike Bitcoin, ether is not intended to be a universal currency. It is intended to facilitate transactions. Even the Ethereum blog acknowledges the difference: “What Bitcoin does for payments, Ethereum does for anything that can be programmed.”

Ethereum is still new: it only officially launched its development platform last July, with an update released in February 2016, just over a month ago. And as such, it is still relatively untested. Yet that doesn’t seem to dampen enthusiasm. The ecosystem is growing, and includes not only techies but also musicians, artists, politicians, lawyers, sports fans…  I went to an Ethereum event recently in Madrid that ended up standing room only.

The potential of Ethereum as a platform lies in the hands of its developers, very smart people coming up with breathtaking ways of improving efficiency and adding functionality to information transfers. It also lies in the hands of non-developers who want to push the boundaries of what is possible, and to see how far we can reconfigure established ways of doing things. It’s exciting. Both Bitcoin and Ethereum are disruptive and revolutionary. Bitcoin has a longer history (all of six years!), and as a result also has a longer list of problems and obstacles. Ethereum is learning from Bitcoin’s mistakes, and is focussing on a different path, in technical and also in philosophical terms. Both will contribute to a new level of innovation that will have a material and lasting impact on how our society and our economy works. It’s not a competition. It’s a joint project, with the explicit goal of pushing boundaries. Like the Captain said: “To boldly go where no one has gone before.”

ethereum

(For more on how Bitcoin works, see Bitcoin Basics.)