Subscribe / Unsubscribe Enewsletters | Login | Register

Pencil Banner

Blockchain: Under the Hood

Justin Ramos, ThoughtWorks | Oct. 5, 2016
Despite the growing interest in blockchain, people often lack a concrete understanding of the underlying technology. Click here to bring yourself up to speed.

A merge conflict can be thought of as any time the blockchain has conflicting versions of history. Imagine Robb only has five bitcoin (BTC), yet he sends five BTC to Arya and five BTC to Jon. Here is a double-spend dilemma, which is prevented by the concept of proof-of-work3, essentially a weighted lottery system that ensures transactions happen sequentially, so that the five BTC go to Arya and not Jon.

To win, one must be the first to solve a complex algorithm. Lottery winners are chosen by whoever is the first to solve a complex algorithm; nodes can increase their chances of winning by allocating more computing power to solve the algorithm.

This process is called mining. The more miners there are on a network, the less likely any one individual miner can monopolize the ability to choose transaction order. Once a miner has solved the algorithm, they receive a reward for their efforts: a freshly minted cryptocurrency. They then commit this newly mined block to the blockchain with all its transactions.

Whoever wins the lottery chooses the order of transactions. By default, transactions will execute in the order they were submitted, but without an arbiter, there is no guarantee the transactions will execute in the same order on everyone's instance because events are asynchronous. Therefore, someone has to decide what truth all nodes should follow.

As long as the amount of the reward exceeds the cost of maintaining the infrastructure for the winning node, the network itself is an economically viable utility service independently operated by those who transact on top of it.

Example of what starting a blockchain node and mining blocks looks like

Example of what starting a blockchain node and mining blocks looks like.

Most blocks in the blockchain will contain transactions, hashes of the current and previous blocks, unstructured data, as well as signatures for the miners and transactions senders. These signatures are public keys and do not correlate to a person's identity; therefore, all transactions on blockchain are pseudo-anonymous.4

Basic information within a block

Basic information within a block.

Real transaction between 17Embwz and 14LSva for 0.10415053 BTC

Real transaction between 17Embwz and 14LSva for 0.10415053 BTC.

Unlike Bitcoin, some blockchains have block sizes large enough to contain decentralized applications (dApps)5. These dApps use smart contracts which contain self-executing code and are stored on the blockchain. These smart contracts have many uses, ranging from crowd-funding an organization to renting your bike to strangers. All these dApps are reachable via their unique addresses, similar to a domain name one would visit on the internet.


Previous Page  1  2  3  4  5  Next Page 

Sign up for CIO Asia eNewsletters.