Blockchain Basics

By on September 21, 2017 7:20 am

“Blockchain” is the newest term to enter the tech industry’s buzzword repertoire. Whether a company is processing sub-second banking transactions or transporting artisanal goat cheeses across state lines, it seems as though any company not investigating this technology, the same technology that powers infamous cryptocurrencies like Bitcoin, will surely go the way of the dodo. But what is this magical “blockchain” and how can a technology commonly associated with dark and scary cryptocurrencies ever be used to change entire industries as we know them? Well, let’s find out!

“Blockchain” Overload

Much like the term “cloud”, the term “blockchain” is heavily overloaded and oftentimes used incorrectly. Without delving into the historical origins behind the confusion around the term itself, let’s understand exactly what a blockchain is.

A blockchain is list of transactions that’s stored on many different machines. Sometimes called a “distributed ledger”, modifications to this transactional list are replicated to all connected machines or “peers” very quickly. A blockchain is implemented as a piece of software; in theory, this software contains a local database with its own replicated dataset, capable of notifying other peers when data is changed and guaranteeing that all peers maintain the same data.

While each blockchain implementation is different, most provide key pieces of functionality beyond the ability to store an identical list of transactions on multiple machines; they can also provide permission systems for who can read and write transactions, and perhaps most importantly, they can cryptographically guarantee the validity of transactions, making malicious modifications either glaringly obvious or outright impossible.

It’s important to understand that there is no single “blockchain” in computing much like there is no single “cloud”; rather, a blockchain is a peer-to-peer network with a distributed ledger that’s created by running the same software on many different computers.

What About Bitcoin?

The idea of a blockchain as a decentralized ledger that can guarantee the validity of each transaction lends itself perfectly to the use-case of financial payments. Bitcoin is a form of digital currency – a way to send, receive, and store value – that uses a blockchain for all payments.

Bitcoin’s Blockchain

The blockchain that Bitcoin is built on top of has the same architecture as described above: many individual computers run official Bitcoin software and have identical lists of every past bitcoin transaction. As new transactions occur, such as when one user sends bitcoins to another user, the transactions are validated independently by each computer running the software, using complex, computationally-expensive algorithms. These validation algorithms verify new transactions using cryptographically-secure techniques that rely on all previous transactions. So, because each peer independently and concurrently verifies new transactions, and because this verification relies on the cryptography of all past transactions, it’s very difficult for any single peer to maliciously create, destroy, or modify transactions. This mathematically-guaranteed security is why every bitcoin transaction ever made can securely be viewed publicly.

Where Do Bitcoins Originate?

It’s critical to have a basic understanding of how the bitcoin blockchain works in order to answer its most common question: “Where do bitcoins come from?”

Computers running the official Bitcoin software that verifies transactional validity are rewarded a fractional amount of bitcoin for every transaction they verify, a process commonly referred to as “mining” for bitcoins. The computation involved in verifying and adding transactions is very difficult and thus requires powerful computers that consume high amounts of electricity. By design, the difficulty of these algorithms increases as more peers install the Bitcoin software in the hopes of verifying transactions to mine bitcoin. This means that the monetary cost to mine a single bitcoin in terms of electricity and physical space (over $1,000 at the time of this post) increases as network usage increases. This important fact, coupled with inevitable investor speculation, directly drives the fiat value of a single bitcoin.

Blockchain in Business

Bitcoin has proven to be a promising method for transferring value due to certain key advantages it offers over traditional payment systems: transactions are instant and don’t involve banks, transaction records are permanent, and transactions can be proven. But while Bitcoin may get more headlines, its underlying blockchain technology is the focus of global industries for the same potential business advantages: decentralization, immutability, and provability. While there’s no shortage of vaporware reminiscent of the early dot-com era, promising to solve problems users never knew they had using the “power of the blockchain,” real use cases for blockchains in business do potentially exist outside of finance.

Decentralization

Several businesses rely on a centralized service model where data is stored or processed by a single entity. Think of popular social media services where user data is stored in central databases: users are solely reliant on the social media service for the integrity and longevity of their data. What happens if the service ceases operations, experiences a data breach, or inexplicably removes user content? By serializing certain data and storing it as transactions on a public blockchain instead of in a traditional centralized database, risks of malicious data tampering could be greatly reduced. For example, if user data is maliciously changed by one compromised peer, all other peers would reject the change, drastically limiting the effect a hacker can have on a social network. Similarly, if one peer crashed altogether, all other peers would continue operating transparently to end users.

Immutability

Another use case being actively investigated in the context of distributed ledger technology is an immutable record of events. This type of technology is far more common than it may sound; for example, consider a car sharing service where users pay to check out and drive shared cars. In a traditional database architecture, records of who checked out what car would be kept in a database table. What happens if a hacker checks out multiple cars, never returns them, and erases any database records that proved who last checked out each car? While safeguards against such hacking already exist, storing car checkout transactions on a distributed blockchain can mitigate this risk almost entirely. Because a record of old transactions is required to verify new transactions, rewriting blockchain history is exceedingly difficult in a multi-peer network.

Provability

Similarly to immutability, the architecture of a blockchain-based system inherently lends itself to a notion of provability: it can be proven that a particular transaction took place at a given time. In the context of bitcoin and other financial applications of distributed ledger technology, transactional provability isn’t just nice, it’s game changing. But the advantages offered by the ability to prove that transactions took place extend beyond finance. Consider a simple fishing supply chain that connects fisherman to fisheries and fisheries to restaurants. The restaurant owner should be paying prices for fish based on how much the fishery had to pay the fisherman. How can the restaurant owner be sure they’re paying a price that’s accurately based on what the fisheries paid? If all parties involved were part of the same blockchain-based network, and all transactions were recorded on a collective blockchain, the restaurant owner could be guaranteed that the price they pay is accurately derived from a provable transaction on the blockchain. Some blockchains even support the ability to write code that’s executed when certain transactions occur; in our example, the price that restaurants pay could be automatically calculated based on the previous transaction between fisherman and fishery.

So…profit?

While the benefits of blockchain technology sound promising, the successful and widespread application of blockchains outside of the financial sector simply hasn’t happened yet. Industries have been operating using traditional, centralized, database-driven models for years despite data breaches and service shutdowns. The promise of decentralization also comes with philosophical caveats: if middlemen are removed from common services like ride sharing, who takes responsibility when inevitable subjective issues occur? By design, data decentralization using blockchains necessitates multiple computers or “peers” to verify transactions independently of one another. This works well in the context of a cryptocurrency like bitcoin where users are incentivized to become verifiers with the promise of mining rewards; but in the context of social media as described above, how would users be incentivized to to become verifiers of blockchain-based social media transactions? If only one company is acting as the sole peer in a blockchain network, it’s as central as a traditional database. And while even companies like IBM are investigating supply chain issues similar to the contrived example described above, supply chains have been operating successfully for hundreds of years, long before blockchains could be used to verify product integrity.

Exciting blockchain-based research is focused on areas such as legal contracts, supply chain dynamics, medical records, and microeconomic industries

Despite rampant cross-industry attempts at using blockchain technology to solve problems no one has, the story of the blockchain is only beginning. Exciting blockchain-based research is focused on areas such as legal contracts, supply chain dynamics, medical records, and microeconomic industries that traditionally involve middlemen, including home sharing and data storage. While most current usage of blockchains for non-financial problems is investigatory and forced, as with any new technology, experimentation must be conducted before a technology can be correctly applied.

JS Foundation: Interledger.js

The shallow explanation of blockchain technology provided thus far has glossed over an important and limiting architectural aspect of distributed ledgers: transactions between two participants, such as when one user sends bitcoins to another user, can only take place on the same blockchain network. For example, if a user desperately needs to send 10 bitcoins to a friend, but the friend only uses another cryptocurrency like ethereum, the transfer isn’t possible. This is because the bitcoin network is made up of a different set of peer computers, each running different software than those on the ethereum network: the networks are independent and know nothing of one another. In a world where multiple cryptocurrencies are becoming more and more common and reliance on centralized banks is becoming less appealing, the ability to easily send value between architecturally-siloed networks like blockchains is essential.

Enter Interledger.js, a project of the JS Foundation, based on the W3C Interledger protocol standardization effort.

The Interledger standardization effort defines a set of open protocols and provides tools for transferring value between payment networks, including two completely independent cryptocurrency blockchains. It’s agnostic to the underlying payment network and enables interoperability between any two value stores even if those stores are completely incompatible, such as sending bitcoin to a wallet on the ethereum network. Interledger shields users from having to manage value exchange rates when transferring assets between disconnected networks.

The Future

The excitement that the potential benefits of blockchain technology has sparked in almost every industry on earth is extreme, and maintaining a concrete understanding of new concepts in such an emerging landscape can be difficult. Differing explanations of the term “blockchain” and its inevitable coupling with the term “Bitcoin” only add to the confusion, but one fact remains clear: the decentralized immutability of data that a blockchain can provide, especially within a network consisting of untrusting participants, is paradigm-shifting. Projects like Interledger open a door to new type of payment applications that must no longer be confined to a single payment network. Just like the dot-com boom of the ’90s, the question for blockchain technology has shifted from “what if” to “what’s next.”


Next steps

Let's Talk! Logo

Need help exploring how blockchain can help your organization, or leveraging blockchain or other emerging technologies within your applications? Contact us to discuss how we can help!

Support Logo

Get help from SitePen On-Demand Development, our fast and efficient solutions to JavaScript development problems of any size.

Contact Us Logo

Have a question? We’re here to help! Get in touch and let’s see how we can work together.

Comments

  • Agreed, and I think we made that point as well in the article hopefully!