The Basics of a Blockchain//Nashvegas, Here We Come!
Posted by Raina
Here, as a primer, we want to give you the basics of blockchain. In my own journey into this world, I realized that the actual concepts are not so difficult, and may even be intuitive, if one does not get too intimidated by the technical terminology. As is the key to so many technical topics, the reader must be prepared to abstract some terms, trusting that over time and with exposure, the details will sink in.
Child's play, Seriously
But let's talk about child's play before we dive into an overview of the potential of blockchain technology; the technical detail that follows this analogy admittedly prioritizes accuracy over efficiency. Those deep in the blockchain development space will realize the imperfect fit of the following analogy, but we are just starting to clear the foundation upon which we will base an understanding. As you can see from the picture, child's play is powerful because it primes one for understanding groundbreaking innovation.
Let's go back to that point in time when you were at a birthday party or on the playground with a group of kids playing "telephone." Remember that game? The first kid, Amy, would come up with a phrase and whisper it in Braydon's ear. Braydon would then whisper the phrase he heard to Cesar, and it would go on like this. You would eagerly wait until it was your turn to hear the phrase and pass it on. Then, the big reveal when the last person in line, Zelda (coincidentally, the name of my husband's obsession), would say out loud to everyone what word she heard.
Remember how deliciously delightful it was to find out that Amy started the game with the phrase "You smell like an orangutan!" only to have Zelda squeal that she heard "You're small like an orange!"? The kids would erupt in giggles. Conversely, remember how lame it was when the reveal announced EXACTLY what Amy said? Where is the fun in that?
Child's play is fun. Risky/costly transactions are not. Imagine instead that Amy is a customer, paying money for your product. Well, Braydon is the website that features where your product, which passes on what Amy gave, but takes a cut for the services it provides for keeping track of your inventory and its sales. Cesar is then a credit card processor, passing on what Braydon gave but taking out a fee for his services in handling records of transactions for you. Maybe then Danny is some malicious employee at your bank and wires a portion to his personal account. You get my drift. By the time anything comes to you, you're lucky if you have most of what Amy paid. (And let's just pity poor Zelda, who maybe embodies your savings account.) There are so many people ahead of you that you had to trust to do their part in the transaction. It's going to be a pain for you to figure out where things went wrong if/when you finally catch wind that something is awry.
Blockchain TECHNOLOGIES: Poised to Ruin Games of Telephone
Blockchain technology is a foundational technology that is developing to make the games of telephone we play in commerce a lot less 'exciting' and a lot more transparent. And it will develop to cut out many of the middlemen that drive up the cost of transacting. Imagine in that game of telephone, periodically a whisperee, upon being whispered to, would broadcast to everyone else what phrase he received. Each child decides whether that latest broadcast comports with the previously accepted broadcasts before the game continues. Every child keeps a record that reflects the validated periodic broadcasts. Pretty lame game of telephone, right? But pretty awesome for you in the commercial transactions scenario. You can knock off some of those fee-charging entities/people before you since you don't have to rely on them for information or for the value that you're due.
Blockchain technology uses a distributed ledger to create a publicly verifiable record of digital transactions; such a record mitigates the need for trust among the parties. These transactions in a blockchain network may include cryptocurrency or token transactions such as Bitcoin, Litecoin, Namecoin, Ethereum, or other digital transactions of both financial and non-financial natures. Especially for attorneys, the developing area of smart contracts is of great interest. Imagine that one day, your blockchain attorney will be programming (or directing the programming of) software to cheaply, safely, and efficiently execute transactions in compliance with the terms of your contract. You could even track the use of your intellectual property without prohibitively expensive measures.
A Technical Deep Dive
In a typical blockchain, each block contains units of information commonly called transactions. Each block is thus a grouping of transactions. When such a grouping of transactions is considered in its entirety, it represents a single atomic modification to a state machine. An entire block is accepted or rejected, as a block itself is the smallest practical unit of consensus on most blockchains. In most blockchain networks, physical computer processing devices known as nodes are directed to store the blockchain in its entirety, or a smaller version of the blockchain with a summation of older data (this smaller version is known as a pruned blockchain). Some nodes are configured to receive, validate, and store most or all of a blockchain network’s transactions; such nodes are termed “full nodes.”
The degree of “security” of a blockchain network is a measure of the immutability of the transactions recorded on it. “Security” is a function of the total resource expenditure of its miners. Great resource expenditure required in the blockchain’s mining protocol correlates with high security. Because of such decentralization of significant computational power used for mining in some blockchains, those blockchains are considered a way to have an immutable record of transactions.
To help illustrate this concept, Bitcoin’s blockchain may be considered a state machine in that every node can maintain an identical copy of the blockchain at any point in “time,” where “time” is measured by the height of the last considered blockchain block. Every full node is enabled to freely share all the block and transaction data it has with the rest of the network. Because of the difficulty of its mining protocol, portions (or blocks) of the Bitcoin blockchain which have been “confirmed” or accepted are considered immutable, the immutability of each portion being quantifiable by, in the case of Bitcoin, the computational resource expenditure required to overwrite the portion.
The process of blockchain mining provides a consensus mechanism designed to allow the network of nodes to agree on the blockchain’s correct state. Any number of nodes adhering to the same consensus rules will, when enabled to exchange information, come to the same consensus by processing all data available and arriving at the same conclusion regarding the legitimacy or illegitimacy of individual network blocks or other units of consensus. A node configured to produce the element of a block which enables the entirety of the network to validate it is a type of “miner.” Several consensus protocols use miners to propose a new block. In blockchains that utilize the proof-of-work (“PoW”) mining protocol, for example, miners produce solutions to a difficult problem, and in doing so, create a block which the rest of the network validates. All other nodes in the network employing the PoW protocol are configured to verify the new block proposed by the miner before the new block is added to the distributed ledger. As an example of how mining may be incentivized or gamified, the Bitcoin blockchain utilizes a PoW protocol, in which a miner is entitled to all of the transaction fees of all the transactions that the miner includes in the block that it creates, in additional to a number of native tokens created by the block mintage process.
Decentralization & Restrictive Protocols: Keeping Blockchains Tamper-Evident
Blockchains on a distributed network of devices with sufficiently restrictive rules of block validation and consensus (namely, the ability to deterministically decide which blocks comprise the best blockchain) are fairly secure against unauthorized changes to the data stored within them. This is why blockchains may be particularly useful for recording financial transactions. A critical limitation, however, is that the bandwidth and storage requirements of a full node grow with the number of transactions on the blockchain network. Visa's infrastructure processes about 2,000 transactions per second (TPS). These transactions could not run on the Bitcoin blockchain, which is limited to running approximately 7 TPS, or about 144 MB of data per day. An entity that processes thousands of transactions per second on a blockchain would have to have about 41 GB of data per day if they used software similar to the Bitcoin network’s software; such an increase in data storage and bandwidth requirements would drastically increase the physical size, density, and energy expenditure of a full node on that network. Due to the associated costs and maintenance, far fewer entities would be willing and able to deploy and maintain a full node. This shrinking of the pool of entities running full nodes would drastically increase the centralization of the blockchain network, diminishing the network’s decentralization, though decentralization is the property that gives the hallmark benefits of using blockchains as distributed ledgers to solve issues of trust.
See you at Vanderbilt soon!
Next week at Vanderbilt's "Blockchain and the Law" Conference, Jon and I will be giving a talk that picks up from here that is entitled "The Tension that Needs Attention: How Distributed is a Private 'Blockchain' Network, Really?" We'll present a high-level overview aimed at directing the audience towards the significance of centralized/quasi-centralized distributed ledgers and actual blockchains. We will discuss the technologies we've dived into that aim to achieve the holy grail of scalability and/or bring the best of both the centralized ledger and blockchain worlds. (We have our clients' blessings; thanks, guys!)