It’s a question many of us have been asking, as we watch new ICOs and cryptocurrencies pop up every day: do they really need a blockchain to do that? Fortunately there’s a white paper, written by academic computer scientists, which answers this question.
The paper is written by Karl Wüst and Arthur Gervais, who work in the Department of Computer Science at the Swiss Federal Institute of Technology in Zurich, Switzerland. On page two of seven, they make this statement:
In general, using an open or permissioned Blockchain only makes sense when multiple mutually mistrusting entities want to interact and change the state of a system, and are not willing to agree on an online trusted third party.
That last bit – “not willing to agree on an online trusted third party” – is why blockchain is so appealing to proponents of an Open Web (of which I’m one). Blockchain technology could enable the creation of fully decentralized web services. It holds the promise of getting us out of the gated communities we currently live in on the Web: Facebook, Twitter, Google, Amazon and others.
In my column this week for Stuff.co.nz, I outlined how a blockchain startup might go about creating a decentralized version of Twitter. What I didn’t mention was that using a centralized database, like Twitter Inc does currently, is much more efficient in terms of network speed and performance. But using a decentralized blockchain system would prevent Twitter from clamping down on third party developers and imposing restrictions on use of its data (both of which it has done in recent years).
So the general idea with decentralized services is that you accept a less optimal database setup for the huge benefits of a truly open, democratic network.
Of course I’m glossing over the scaling issues of using a blockchain. If CryptoKitties clogged up the Ethereum blockchain, imagine what a Twitter-scale user base would do! So I do understand the technical roadblocks that blockchain has to overcome, if it’s to live up to its promise.
Nevertheless, the reason why blockchain is so interesting is that it could eventually lead to a more open, less Walled Garden experience. Removing trusted third parties is the ideal that many of the most interesting blockchain startups are aiming for.
Wüst and Gervais helpfully provide a flow chart, to help with the decision making process of deciding whether to deploy a blockchain:
TTP = trusted third party
My only quibble with the above diagram is the third decision box: “Can you use an always online TTP?” I’d re-word it, “Do you want to use an always online TTP?” Because if we asked the former question about a blockchain version of Twitter, then Twitter Inc would raise its hand and wave vigorously.
“Yes,” Twitter Inc would say, “I’m always on and you can trust me. What’s that? Well, yes I know what I did…but it’s different this time. I promise!”
We all know that’s not true: we can’t trust Twitter, ever again. We don’t want to either. Why would we, when a decentralized version of Twitter built on a blockchain would mean no one entity controls the data. Throw in a token system too, to incentivize the users and developers.
That’s why blockchain is so appealing.
One person who disagrees and thinks blockchains generally aren’t needed is David Gerard, who also wrote a post about this academic paper. Gerard’s view is that “append-only transaction ledgers with cryptographic tamper-proofing are good and deserve wider use — but the “distributed” bit is largely superfluous.”
As I’ve noted, I don’t think the distributed bit is at all superfluous. If anything, in this era of the Web, it’s very much needed.
Gerard is a blockchain skeptic and has written an entertaining and well researched book, entitled Attack of the 50 Foot Blockchain. He makes some great points in his post, but ultimately all his solutions veer towards a trusted third party (or “central authority,” as he rightfully termed it). His position is summed up in this reply to a commenter:
I think in the general case the answer is “don’t try to use a blockchain” and instead assume that a system for human purposes will have a trusted human actor or organisation somewhere in it already 😉 and if it doesn’t, it’ll evolve toward having one, because it’s just so ridiculously more efficient.
I can’t argue with the technical aspects of blockchain inefficiency (especially since Gerard is more technical than I am), but I think he too easily dismisses the potential benefits of decentralization on the Web.
We’ve seen too many “trusted human organisations” screw us in the recent past. Twitter f**ked over its developers, Facebook has put the mafia squeeze on everyone from its users to the media, Google shuts down nearly every innovative service it creates (hello and goodbye, Google Reader), and on and on.
This cycle has repeated itself too many times now.
So do you need a blockchain? Well use the flow chart to find out if it’s practical. But I think there’s more to that third decision box – whether to use a central authority – than meets the eye.
I for one am keen to see as many startups as possible challenge the “trusted third parties” of the Web today, by building decentralized systems using blockchain.
cheers 🙂 I won’t say it’s philosophically impossible – if someone does a completely decentralised Twitter or whatever and makes it work, then good!
I fully appreciate the promise of decentralisation and the urge to the open web. But it’ll take more than the promise and the urge.
There’s an attempt I found in 30 sec googling here https://github.com/yep/eth-tweet that I have no idea if it works. Not touched in a couple of years though.
There are some people trying to be a twitter-like app on blockchain, which I referenced here: https://www.stuff.co.nz/technology/digital-living/101349742/building-a-blockchain-version-of-twitter. But I have to admit, it’s 5-10 years away at least due to the current scaling limitations. Still, if the infrastructure overcomes those and other challenges, it becomes more and more possible.
I think you may also be underestimating how powerful convenience is.
I keep finding myself having to explain to blockchain advocates that git is strongly decentralised by design, and isn’t actually Github or another centralised website. Though I too primarily use it through Github.
If someone wants a blog, my standard advice is “use wordpress.com” – I administer my own WordPress installation ‘cos I’m like that, but nobody wants to.
In both cases, you have the possibility of just picking up and leaving at your convenience. (Though e.g. Github issues are not nearly as portable.)
In this sort of question – decentralisable online social activity – I find it more practicable to make sure there’s an escape route, so I don’t find myself muttering “Stallman was right again.”
You’re right that convenience is very powerful. I use WordPress too; and actually probably would’ve gone with WordPress.com if they allowed more functionality.
Decentralized apps don’t have a great record so far, especially social ones (Diaspora anyone?). So I’m not suggesting this is ready to ramp up now. But I like to think blockchain at least gives a path towards that. Tech changes so quickly – who would’ve predicted Twitter at the turn of the century? So I wouldn’t discount decentralized tech just yet 🙂