This article is a gentle introduction to blockchain technology and assumes minimal technical knowledge. It attempts to describe what it is rather than why should I care, which is described in other posts.
People use the term ‘blockchain technology’ to mean different things, and it can be confusing. Sometimes they are talking about The Bitcoin Blockchain, sometimes it’s The Ethereum Blockchain, sometimes it’s other virtual currencies or digital tokens, sometimes it’s smart contracts. Most of the time though, they are talking about distributed ledgers, i.e. a list of transactions that is replicated across a number of computers, rather than being stored on a central server.
The common themes seem to be a data store which:
usually contains financial transactions
-
is replicated across a number of systems in almost real-time
-
usually exists over a peer-to-peer network
-
uses cryptography and digital signatures to prove identity, authenticity and enforce read/write access rights
-
can be written by certain participants
-
can be read by certain participants, maybe a wider audience, and
-
has mechanisms to make it hard to change historical records, or at least make it easy to detect when someone is trying to do so
I see “blockchain technology” as a collection of technologies, a bit like a bag of Lego. From the bag, you can take out different bricks and put them together in different ways to create different results.
I see blockchain technology as a bag of Lego or bricks
What’s the difference between a blockchain a a normal database? Very loosely, a blockchain system is a package which contains a normal database plus some software that adds new rows, validates that new rows conform to pre-agreed rules, and listens and broadcasts new rows to its peers across a network, ensuring that all peers have the same data in their databases.
DATA STORAGE: What is a blockchain?
A blockchain is just a file. A blockchain by itself is just a data structure. That is, how data is logically put together and stored. Other data structures are databases (rows, columns, tables), text files, comma separated values (csv), images, lists, and so on. You can think of a blockchain competing most closely with a database.
Blocks in a chain = pages in a book
For analogy, a book is a chain of pages. Each page in a book contains:
the text: for example the story
information about itself: at the top of the page there is usually the title of the book and sometimes the chapter number or title; at the bottom is usually the page number which tells you where you are in the book. This ‘data about data’ is called meta-data.
Similarly in a blockchain block, each block has:
the contents of the block, for example in bitcoin is it the bitcoin transactions, and the miner incentive reward (currently 25 BTC).
a ‘header’ which contains the data about the block. In bitcoin, the header includes some technical information about the block, a reference to the previous block, and a fingerprint (hash) of the data contained in this block, among other things. This hash is important for ordering.