Before you read the actual blog entry, I want you to imagine the future and think about an idea I have for human transport. Imagine how awesome it would be if humans didn't have to walk everywhere using their own feet, like peasants, but could be transported efficiently by some other means. Now, it's hard to outdo bipedal locomotion. Moving walkways, like at the airport, are fine, but they are a jarring experience, especially for older people. And if you want to go anywhere fast, you need lots of them side by side, operating at progressively faster speeds. But what if there was a liquid substance that flowed like water horizontally, but was incompressible vertically? I call this Flo. You could stand on it without sinking, and it'd flow like water. I imagine that it'd be a deep orange in color, or perhaps purple. We would replace urban sidewalks with rivers of Flo. Like a meandering brook, the edges of Flo would be moving slow, so even old people could step onto them easily, and watch the storefronts at slow speeds. And anyone who wants to travel fast would smoothly move towards the middle where the flow is fastest, accelerating gradually.
Got the image? Flo is a kind of a cool invention, right? Let's keep it in mind, it'll be useful later.
By the way, I imagine that Flo would be made of some material that organizes itself into sheets at the atomic level, kind of like graphite. And using my amazing background in atomic physics (for the record, I have none), I hereby declare that Flo is not going to be possible. Sorry to rain down on the parade there. Now, let's get back to Bitcoin.
So, some people are claiming that our work is "nothing new" and claim that the idea of selfish mining had been discovered by the Bitcoin community long before we came along and outlined in a forum discussion in December 2010. Oddly, these are typically the very same people who claim that this idea is "patently wrong," but are unable to furnish proof or counterargument. And they are also the same people who will one day have to concede the point to us, as math has a way of cutting through sophistry, but they sure seem intent on making a lot of noise until that point.
I want to point out how flawed this argument is.
First of all, that forum post does not describe our attack.
While that discussion seems to have started out with a similar insight as our attack, it did not explore the full attack, did not perform an analysis, and did not actually discover the implications. My reading of the forum discussion is that they discussed an attack that is a subset of ours and decided that their idea wouldn't work.
In contrast, our work does a few things not covered in that discussion:
- it shows a more extensive attack than the one described there, one that works,
- it performs a full analysis of the revenue to be obtained from that attack, and characterizes that revenue as a function of attacking pool size and attacking pool's ability to control information flow in the network,
- it shows that Bitcoin is not incentive-compatible,
- it shows that, even under the best of circumstances (i.e. the attacker has terrible network connectivity, no Sybils, no control over information propagation and loses to the honest miners every single time), defending against the attacker requires at least 2/3rds of the network to be honest.
Business Week is somehow parroting the line that this attack had been discussed before by the Bitcoin community and that our results were known. This is just sloppy, one-sided reporting.
Here's a simple demonstration of how badly the Bitcoin community dropped the ball on this one: conventional wisdom was that Bitcoin was safe from attack as long as the majority of miners were honest. It was us who showed that this is false.
That should place our work in perspective. The claim that the Bitcoin community "already knew about this attack" shows signs of a group desperately trying to manage the PR around a gold-laying hen, laying down a PR smokescreen, pretending that the hen's doing just fine even though there seem to be some real issues with the egg-laying process. We don't think the hen is destined to die, in fact, we hope not, but the fact that it is sick is a scientifically observable fact, an undeniable piece of objective reality backed by math. PR and sophistry might sow confusion through the news cycle, but it cannot cure the hen.
This brings us to the whole issue of "what does it take to develop an idea?" This is part and parcel of everyone's curriculum in graduate school, no matter what topic they may be studying; namely, what's the difference between a brainfart, an insight, an idea, a result and a contribution?
Those of you who have been in the presence of a truly creative person know just how awe-inspiring it can be to see the seeds of ideas spout from an energetic, creative source. It's truly a sight to see someone generate a stream of interesting proto-ideas. But half-baked ideas, even in the rare cases where they contain a genuine insight, require much more additional work to become actionable. Creative graduate students drop out of graduate school all the time because they lack the wherewithal or the tools to develop their half-baked, muddled thoughts into distilled, developed contributions. In our field of distributed systems, this development process typically requires mathematical analysis, sound reasoning, code development and sometimes system deployment. It takes, shall we say, substantial additional effort.
Take my Flo example above. I outlined a sort-of-an-okay-idea for urban transportation. But I didn't do jack to actually develop that idea. I'm not some kind of an urban transportation genius. To make the analogy to the Bitcoin fringe complete, I even falsely dismissed the Flo idea, using no science and no math! Imagine what would happen if some day, someone goes through the laborious process of developing a workable Flo molecule, and we do change our cities to replace sidewalks with a richly colored liquid that carries people. If I were to get up to claim that their work was not novel and I was the original inventor of Flo, I'd look silly. In fact, the creative guy who originally wrote the Bitcoin talk forum post did NOT claim anything remotely similar -- it's the PR flaks who are making this claim. And when a reporter lends credence to these claims, they're just being sloppy.