What is the difference between a blockchain and a cryptocurrency? This is a question I find myself answering frequently when I tell people about the Everest project, so I thought I would share my answer with everyone here.
The confusion is natural because most people first hear about the blockchain in the context of Bitcoin, or a Bitcoin scandal (MtGox, Silkroad, Pincoin/iFan… whatever happened this week…).
The Bitcoin blockchain is hosted on a network of computers, called nodes, that have stored complete copies of the blockchain. Some nodes are also mining the blockchain, which involves solving a complex math problem before anyone else, to have the privilege of recording the block to gain the reward paid in Bitcoin (BTC). The original purpose of the Bitcoin blockchain was to record, track, and display the exchange of the Bitcoin (BTC) cryptocurrency. The Bitcoin blockchain is used to view the distribution of addresses that hold the platform’s native BTC cryptocurrency and the amount of BTC held by each address. Using cryptocurrency as a medium of exchange is just one application of the blockchain technology — that platform-level distributed ledger technology is capable of powering many different applications.
Think of the blockchain as a generic tool like a database, like MySQL — as versus a specific implementation using the tool MySQL, like a social network’s timeline feature. You can use your imagination and a technology to do many different things — a social networking timeline or cryptocurrency are just products of a person who is skilled at using that tool. Further, you could use many different databases (NoSQL, Postgresql, etc) to accomplish the same timeline application on top of different technology stacks.
A blockchain is a technology which, like a database, records information. It is different in a number of ways, first, it is temporal, or has a time-based component. This block came before that block is a concept that has to be calculated in a database – take the two timestamps for the data writes, compare them, return the “newer” item. Also, the concept of immutability has only been implemented in storage hardware before (WORM drives, anyone… anyone… Bueller?) but blockchains implement database immutability, as blocks can not be changed once written. Further, tamper resistance is inherent in blockchains as the distributed nature means everyone is holding a copy of the information, so it is simple to compare a suspect block of information to a plurality of network copies for validation.
There are now many blockchains other than the Bitcoin blockchain software stack. Everest is built using the Ethereum software stack, which includes a smart-contract “programming toolkit” on top of the unchangeable blockchain storage. Using Ethereum allows access to the most vibrant smart-contract development community in the blockchain space. Everest uses two private permissioned Ethereum blockchains – one for identities, and one for transactions – and a number of specialized smart-contracts to power the platform.
To recap – the difference between a blockchain and a cryptocurrency is that a cryptocurrency is just one application that can be built on top of the blockchain technology. Learn more about the differences between a cryptocurrency and a token in our next posts: “Token vs. Cryptocurrency, What’s the Difference” or check out “How the blockchain and tokens power DApps.”