Payments Blog • 13 MIN READ

The Blockchain More than Just a Ledger

Thivanka Aluwihare

Written by Thivanka Aluwihare

The Blockchain is an innovation gaining wide spread attention in the payments & fintech world. It's often explained as being a distributed ledger, which is the "true innovation of bitcoin". This is a half-truth, by itself the 'chain of blocks' does not give rise to any benefits of a blockchain system, such as 'immutability'.

The Blockchain is a design pattern for creating decentralized systems that allow consensus without the need for third-party arbitration.

When banks settle transactions, they use the central bank as a facilitator. There are many layers that are transparent to us as they are usually regulatory and institutional layers.

But how does one trust these facilitators? They need to be reputable institutions to gain trust, e.g. central banks, large multinationals. The cost of running these institutions is offset by high volume of interactions they process. The Blockchain pattern bypasses all of this. For this reason, the Blockchain has the potential to have a greater impact on society than the internet itself!

The easiest way to understand the main components of a decentralized system is through a simplified example. Let's make a decentralized system which keeps track of an employee's expenses. The system will then output the total expenses for the company.

The Chain of Blocks Data Structure

Behind any system are data structures. A blockchain system, uses a cryptographic ledger which makes it easy for an application verify that entries in the ledger weren't edited. A simply analogy is a spread sheet, where each row represents a block. Each row has a fingerprint of the previous block, forming links in a chain, as is shown below.

Block Number

Expenses

Fingerprint / Signature

1

100

0

2

240

Fingerprint (row 1 Contents)

Microsoft excel is an application that parses the spreadsheet file and display it to the user. This program then becomes the blockchain client. A blockchain network is full of interconnected clients each maintaining a ledger. It is the client's responsibility to ensure someone sneaky hasn't edited the expenses in block 1, as it downloads the ledger from another untrusted client. If someone modifies the expenses of block 1, Excel will throw an error because the fingerprint of the second row will be invalid!

The only way to edit a row without excel throwing an error, would be to re-calculate the fingerprint of each row and present a new valid ledger. However, this poses a problem. If you were presented two valid cryptographic ledgers (two different and valid states) how would you pick one? How does the chain of blocks solve this problem … well it doesn't. This is because the chain of blocks is simply designed to be a distributed data structure.

The Blockchain Client

A blockchain client is a peer to peer (P2P) application. It contains the business logic of the blockchain system and is responsible for implementing:

  1. The rules governing how the blockchain is updated, which defines a valid blockchain.
  2. Consensus system: determines which chain to follow if multiple valid states are detected.
  3. Reads the chain of blocks and allow users to interact with the system.

The rules of a decentralized system become a protocol, which is shared by clients in the P2P network.

Consensus System

The important layer is the consensus system which allows clients to resolve alternate states.
Two ledgers can be syntactically valid but they can represent different overall states.

For an attacker to alter the system for personal gain, they must defeat the consensus system, i.e. trick all blockchain clients to use a different chain. The simplest and most secure consensus system is called 'Proof of Work'.

Proof of Work (POW)

Conceptually, this layer must define a competitive 'game' which gives participants a reward and the right to update the blockchain. It is configured so the difficulty of the game scales as more users try to play this game. Remember how a cryptographic ledger makes it easy to validate its content against a fingerprint? The clever invention of bitcoin was to imbed the solution to this game in a cryptographic ledger!

All clients read the blockchain, check fingerprints and the solutions to the 'game/problem' that allowed each block to be linked. An attacker would have to re-solve each game to create a new valid chain of blocks. Therefore, as more people attempt to play this game the security is increased. The caveat, being this game should be fair as possible to avoid giving individuals or a group a competitive edge.

By summing up the total work to create the chain of blocks it is possible to determine the chain that that took the largest effort to create. All clients will follow the most 'difficult chain', which is the most secure chain.

The POW must be a hard problem that is easy to verify and impossible to reuse. The attacker must risk losing the reward while trying to defeat the consensus system. For which an attacker must capable of working faster than 51% of all participants.

Let's continue our expenses example and implement a proof of work system. The protocol mandates you have the following fields in the spreadsheet.

Block Number

Time Stamp

Expenses

Target

Video: Proof of Work

Fingerprint / Signature

1

5:30

123

100

Video 1

0

2

5:35

34

90

Video 2

Fingerprint (B1 Contents)

3

5:39

43

80

Video 3

Fingerprint (B2 Contents)

Every row must show a video of a user throwing a 1000-sided dice until they get a number lower than a target set in the previous block. The row contents must be seen in the background of the video. The dice is 1000 sided, therefore lower targets are harder i.e. rolling less than 10 is harder than rolling bellow 500.

We need the protocol to control the target based on the number of users that are attempting to roll dice. This can be done by comparing the timestamps of previous blocks. If blocks are produced too close to each other the protocol will lower the target for the next block (higher difficulty).

Publishing a New Block

To publish block four, we need to record a video off a dice roll lower than 80 (target set by block 3).

Block: 4

6:00

345

Target for next block: 100

Video 4 (showing content)

Fingerprint (B3 Contents)

Once we create a valid block, we broadcast it to the network. When another client receives the new block, it would:

  • Ensure the block obeys the protocol (syntactically valid)
  • Continually search for alternate chains which have a higher total difficulty – and switch to it.

The only attack on this blockchain system is to alter verified rows. If we want to edit block two, I need to re-create a new chain from block one. I would have to get lucky rolls to quickly produce block 2,3,4 and 5 to create a more difficult chain than everyone else. To achieve this, I must throw more dice than the rest of the network.

There more caveats and concepts to decentralized systems, but hopefully this simplified example will you gain holistic understanding of blockchain systems.

Summary

Most software applications follow the client server architecture, where customers or other programs communicate with a service created by some developer. Services may be distributed but not 'Decentralized'.

The concept of decentralization deserves another blog post, because its definition is unambiguous and political. But to put it simply a system is decentralized if its maintained collaboratively such that nobody has sole control of it. A blockchain system running on a single server is meaningless and provides no value. When its apart of P2P network across multiple geographic locations and is managed thousands of user personas it becomes an idea. An Idea from which benefits such as network decentralization, high availability and integrity arise.

Yet how can these benefits provide more value than the internet itself? Well the Blockchain is even more than just a design pattern, it has political and social aspects to it. To put it simply the Blockchain is a framework for consensus and in a world, that is divided … that is truly empowering.

Topics: Payments

Subscribe to our blog

Stay up to date with the latest
Communications, Payments and HP Nonstop
industry news and expert insights from IR.

We're committed to your privacy. IR uses the information you provide to us to contact you about our relevant content, products, and services. You may unsubscribe from these communications at any time. For more information, check out our privacy policy.