Decentralization Doesn’t Mean All Blockchain, All The Time

Justin Hunter
The Lead
Published in
3 min readApr 27, 2018

There is confusion as to what decentralization is and how it can be achieved, and it’s not surprising. With half of the tech population saying blockchain doesn’t need to be applied to THAT solution, and the other half saying “blockchain all the things,” who is right, and what does decentralization actually mean?

My take on this is no secret. Graphite fully supports data replication and storage without writing application data to any blockchain. I tweeted about it recently:

I’d like to expand my thoughts here. Blockchain technology enables wonderful things, and it does so globally and without consideration for a person’s status or location. But decentralization and blockchains are two different pieces of an overlapping Venn diagram. Blockchains enables decentralization, but decentralization does not rely entirely on blockchains.

Blockstack provides an open source platform for developers to build decentralized applications. These applications can use Blockstack authentication (which relies on the bitcoin blockchain) and storage (which does not rely on any blockchain). Because application data being stored is not being written to a blockchain, does that mean any application that uses Blockstack is not, in fact, decentralized?

No, of course not. Decentralization means the removal of a central authority. For the sake of storage, let’s assume the central authority is an app developer’s database. It does not require a transaction on any blockchain to take application databases out of the equation and enable decentralized storage. In fact, RemoteStorage has been doing this for a number of years. Blockstack now also enables this.

No blockchain necessary.

Decentralization is only effective if it removes the single point of failure issue from applications. Data replication removes that issue. Let’s say a user is using their own storage with Blockstack. If they choose to store data in Dropbox and Azure, they now have replication across two different providers. If one of those providers shuts the user out, goes out of business, or is rendered useless during a DDOS attack or some other hack, the user has not lost access to her data. She would simply connect to another storage provider.

That is decentralization. That is what Blockstack and RemoteStorage and others offer. All without the use of any blockchain.

But blockchain technology does enter this equation somewhere, doesn’t it? It has to. Data replication is great, but it does not afford any level of privacy on its face. Storing data with Dropbox AND Azure (or any other storage provider) just means Dropbox AND Azure can read that data.

This is where Blockstack’s authentication and identity system come into play. Graphite users can create a decentralized, self-sovereign identity. That identity information (a zonefile with meta data) is written to the bitcoin blockchain. That zonefile enables users to create app-specific encryption keys that they own. Graphite does not own, nor can Graphite access those encryption keys. Users can then use those keys to encrypt the data that will be replicated across multiple storage providers.

Those keys can only be used by the verified user thanks to the blockchain ledger verification. Every time a Graphite user logs in, their information is verified against the bitcoin blockchain’s immutable ledger. Once confirmed, that user has access to create and use those previously mentioned encryption keys.

This is the power of blockchain technology. Identity without a central authority. Verification of data that cannot be faked or changed. Combine this with encryption, data ownership, and replication, and that’s what true decentralization means for applications.

Want to see what this looks like in practice? Give Graphite a spin.

--

--

Justin Hunter
The Lead

Writer. Lead Product Manager, ClickUp. Tinkerer.