Technological advancements are becoming more of a routine affair than a breakthrough news these days. You look around and there is something new – in a phone, television, wearable device, air conditioner, speaker – the list goes on. Once the dust kicked up by new innovations settles down, we get the time to take a deep breath and analyze the effect it has had and the potential it has to solve problems for a long time to come without getting taken over by something new.
Blockchain is one such technology that has attracted a lot of attention from industrialists and technologists alike. Blockchain does, in fact, owe a lot of this attention to cryptocurrencies such as bitcoin that have taken the world by storm in the past few years. Thankfully, the maddening hype around Bitcoin has subsided as investors saw its value rise nearly 20 fold from $900 in Dec 2016 to $19600 in Dec 2017 and then plummet to under $4000 a year later. Billions were made and lost in this frenzied period. Now the world is scratching below the surface and looking at the underlying technology – Blockchain – and the potential it has across industries.
Though we have done posts about blockchain and its potential, in this article we take a step back and scratch below the surface to figure out what is it in Blockchain that can potentially change the fundamentals about currency, banking transactions, accounting and much more.
Cutting the technical jargon and drilling down to the simplest of terms, “trust” is one word that can explain everything about which missing piece of the jigsaw puzzle does Blockchain (and consequently, cryptocurrencies) complete. Trust is that invisible glue binding societies together for centuries. It initiates interactions and facilitates transactions. Trust works at three different levels – individual, institutional and authoritative. When you lend money to a friend in need, you trust him to repay you at a later point in time.
This transaction is facilitated by prevailing trust at individual level. At a larger scale, when you place an online order and pay in advance, you trust it to deliver your order in time and in brand new condition, even if there is no face in front of you to trust. At a more macro level, when we have a currency note and tender it in exchange of goods and services, the merchant happily accepts it. Both of us have full trust in the country’s central banking system.
Trusting a “central system” is of utmost importance here. Individuals and organizations place their trust on a single entity, a governing body and carry on with their day-to-day businesses. High trust societies have often found to be the happiest. Businesses build over a culture of trust and companionship rather than strict regulations have been found to be more successful. Centralized trust is still the driving force behind banking systems and economies around the world.
The United States took it a notch higher in 1971 that its economy was functioning in a high trust environment by de-linking its dollar from the bullion system – the gold standard still prevalent in major economies. This demonstrated that a dollar holder had full confidence in federal banking system, even if there was no corresponding asset to back the value of a dollar.
One major problem with centralized trust is that it lends itself to risks arising out of information asymmetry. Hackers have a great incentive to break into that one database, as they know they are going to find a goldmine of information if they succeed.
The system is often governed by a single entity – a single authority – which provides huge incentive for corruption. Recent history of the modern, technology driven world is full of instances where customer data gets leaked – intentionally or otherwise – by the top authorities/individuals entrusted with the task of protecting it.
While blockchain attempts to solve most of these concerns (we’ll see later how), a number of governments and social groups around the world have resisted its adoption. The major challenge is getting them to make peace with the fact that rather than viewing blockchain as a technology that presents alternative currency, they should look at it as redefining trust.
That the mechanism finds its way in disrupting the way currencies work is just a byproduct. After all, the world has learnt to trust electronically generated bank statements and payment receipts that substitute cash transactions and there is no reason to believe why cryptocurrency cannot gain popularity among the same stakeholders. DigiCash: Novel Innovation Destroyed by Centralized Trust
DigiCash: Novel Innovation Destroyed by Centralized Trust
Even though cryptocurrencies are starting to gain momentum in recent years, the idea of a substitute currency was first introduced by David Chaum decades ago, in 1983. Six years later, he founded DigiCash, which had a central controlling authority for issue, control and regulation. It combined elements of trust and security. It implemented security through blind signatures that wrapped it in a layer of anonymity to add to security. It was just a matter of time when DigiCash made huge waves in the financial sector and a major bank like ING offered a deal to Chaum within years.
Negotiations went on for months and but Chaum walked out at the final stage. That did not deter other industry giants from pursuing their interest and none other than Bill Gates tabled a $100 million offer for integrating DigiCash with Windows 95 but to everybody’s dismay, Chaum did not find it interesting enough either. The news was not received well within the company and an internal rebellion caused its downfall in the year 1999. Failed talks apart, the centralized nature of DigiCash’s structure posed a major challenge to its operations.
Why Did DigiCash Fail?
DigiCash started with a lot of promise but fell prey to the same mistakes that prevailed in existing systems for decades. Any database system is characterized by a central authority that has full control over it. They can decide what is available to public, who can access (or not access) the database, what rights can the users have, what gets stored in it and what gets deleted. This can have serious ramifications on two fronts:
First, such a strictly controlled master database with an entire system dependent upon it is a single point of failure. Wells Fargo learnt it the hard way recently, when their Shoreview datacenter reported smoke and customers could not complete their ATM/Debit Card/Credit Card transactions for many days after it. The bank’s Interactive Voice Response (IVR) systems too got severely affected which adversely affected customer calls.
Second major risk is that a server hosting a central database is a sitting target for hacker attacks. There is a huge prize for cracking its code, serving as a major motivation.
Double Spend Problem with Digital Currencies
Digitized currencies bring a number of benefits with them but they are not without flaws. Double spending problem is one of the most common problems of digital currencies. A digital token is relatively easy to reproduce, unlike physical currency like notes and coins. The legitimacy of physical currency can be verified instantly. Holder of a digital currency can easily retain the original with himself and transact its digital copy. As there is no central agency to verify that the currency is spent only once, adoption of digital currency hinged upon the participants’ ability to verify its authenticity.
Block Chain – Solution to Double Spend Problem
Satoshi Nakamoto (a pseudonym) presented this paper in 2008 to a mailing list where he introduced his own crypto currency (Bitcoin) and detailed upon the approach to tackle double spend problem. He proposed that all bitcoin transactions be recorded in a shared transaction log, a public ledger called “block chain”. It is a list of transactions that keeps building up over time and any change in ownership can be verified against its history to eliminate fraudulent transactions.
As ownership keeps changing, the log builds up and that is why verification takes a lot of time and considerable computing power. This is what makes blockchain based transactions inherently irreversible. Hackers have tried mechanisms such as out-computing to fool the blockchain system but have had very limited success. Most bitcoin thefts have resulted from users’ carelessness rather than from loopholes in the system.
The greatest threat to blockchain security is a 51% attack, where a user controls a majority of network’s computing power. This can enable him to reverse the ledger and transfer coins to his own wallet multiple times, completely eliminating the traces of original transactions.
What Keeps Blockchain Secure – Cryptography and Hash Function
Though detailed cryptography is out of the scope of a couple of articles, a basic understanding goes a long way in understanding security mechanism of blockchain. Cryptography involves sending encoded messages so that even if the message ends up with unintended recipients, it cannot be read by them. The intended recipient possesses a decryption code which is used to decode and read the message.
Public Key Infrastructure (PKI) is a popular form of cryptography, where a set of complementary keys (private key and public key) is generated before sending a message. A message is encrypted with the receiver’s public key before sending. Receiver uses his private key to decrypt the message and read it, preventing its misuse at the hands of an interceptor. This approach works better than the centralized passwords, which give absolute power once the password ends up in wrong hands.
Hash function lies at the core of blockchain trust. It is a unique function that has the capability to take data of any size and turns it into a fixed width output of hexadecimal characters. What sets it apart from other crypto mechanisms is the fact that whether the input of a hash function is a single character or an entire text book, width of output remains same. It is also unidirectional, which means you cannot trace the input string if you have the output. Therefore, the block identifiers generated by hash functions are unique and immutable.
Secure Hash Algorithm (SHA – 256) is capable of generating an astronomical number of combinations. These identifiers are then utilized to label blocks of data, addresses and transactions that are used to modify the public transaction ledgers, which also explains the relatively long time it takes to authenticate and modify it
Mining and Consensus
A blockchain ledgers is a very dynamic record and it needs to be kept up to date in real time, meaning a large number of computing units (and associated electricity supply) need to be available and work 24 hours a day, 7 days a week. The process of validating and verifying transaction ledgers is known as mining. The huge computing power required for it is shared by the entire network. The nodes that help in solving such huge problems are identified and rewarded. Solving more complex problems requires higher computing power and fetches higher rewards. This also serves as a motivation for network participants to bring in more processing power to the network.
As a blockchain database is distributed rather than centralized, a copy of it is stored over all participating nodes (computers). Its non-hierarchical, peer to peer architecture ensures all the nodes are of equal importance and there is no central authority to control the database. When a bitcoin transaction is made, it has to be authorized by the entire network before being allowed. Once all the nodes approve a transaction, it is then protected by hash signatures and miners add the block to the database.
In conclusion, we would like to stress that the immutability of blockchain transactions can be a boon and a bane. Elaborate precautions and authentication measures are in place to validate a transaction but once it enters the system, it cannot be reversed at any cost. Imagine a scenario where you want to send $100 to a merchant but instead entered $1000 in haste. This transaction cannot be reversed at any cost. It will entirely depend on the recipient’s good faith to correct the mistake, otherwise it stays in the system forever!