Blockchain and the future of the Internet part 1
A technical overview of blockchain technology
Before the prevalence of the Blockchain technology, Internet applications are mostly based on the central trust paradigm. For example, our financial data are stored on the servers managed by the banks and the security of the data and the financial transactions depends largely on how well the banks manage their systems. Another example is that our social network data are mostly handled by companies such as Facebook/Meta and Twitter. While the systems of those companies are reliable, they are not free from engineering errors, operators errors or malicious external attacks. Several incidents have occurred in the past, which have put users’ credential data at risk. Some of them are listed below.
- In 2019, a hacker gained access to 100 million capital one credit card applications and accounts. (CNN reports)
- Account details of over 500 million Facebook users were leaked. (BBC reports on Facebook data breach.)
- Data leak of Robinhood involved 7 million users. (CNBC reports)
Besides security, transparency is another concern. It is sometimes not clear to the end users how their data are stored or used. For instance, Facebook was reported to show bias in its algorithms (Wall Street Journal 2021) or misleading the public on progress against hate speech, violence, misinformation (CBS news 2021).
Blockchain is one of the efforts to challenge the status quo of the central trust infrastructure. In the idea terms, blockchain advocates “ a decentralized, transparent and more democratic version of the Internet”[1]. Besides cryptocurrencies, blockchain has been applied to fields as varied as “energy sector, forestry, fisheries, mining, material recycling, air pollution monitoring and supply chain management”[1].
In this blog, we will give a comprehensive review of the blockchain technology. In the part 1, we will look at the blockchain technology, smart contracts and digital assets such as NFT. Following that, we will discuss the applications of blockchains in various fields in the part 2. We will end the blog with a review of current challenges facing blockchain in the part 3.
Blockchain technology
Part of the goals of the blockchain technology is to remove third managing parties. For example, no banks or financial institutions are necessary for bitcoin transactions. Users also don’t need to trust each other when they transact. Instead they rely on the mathematical evidence provided by the blockchain technology to verify or audit a transaction. (Refer to distributed consensus section for more details) Such a model is sometimes called trustless property of blockchain.
The transactions are stored in a block and blocks are chained together. (Hence the name, blockchain.)

Inside each block, two types of information are stored. First is the data. Data can be of any content. The second is the metadata, which is also referred to as blocker header. Block header stores the block number, a hash of the whole block and the hash of the previous block.
The prev field is used to link the blocks together. If you are familiar with linked list, you will easily recognize this is similar to the pointer in the linkedlist.
Besides chaining blocks, hash and prev hash fields together render the blockchain immutable. Imagine you want to change the data in the second block. (Maybe there is a record of a transfer of a large number of bitcoins and you want to change the receiver to be yourself.) After updating the transaction data in the second block, you also need to update the hash of the block. Well, besides the second block, it turns out you would also need to update a few other blocks. The prev hash field of the third block is now incorrect. After updating that field, you then need to update the hash of the third block because the value of prev hash is used to compute the hash. You now end up with the need to update the whole chain following the block you changed!
Together with the distributed consensus mechanism discussed in the next section, an adversary would not be able to tamper with the blockchain unless they have gained more than half of the computation power. Such an attack is sometimes called 51% attack.
Distributed consensus
Distributed consensus is the process where peers of the network reach an agreement on a decision. One example is that which block to append to the end of the current blockchain. Within the blockchain field, one protocol called Proof-of-Work is widely adopted and used.
Proof-of-Work
With this protocol, a new field called nonce is introduced. A nonce is any value which makes the hash of the block conform to a pattern. For example, one such pattern can be that the hash of the block starts with a few zero’s.

The process of finding such a nonce is random and computation-intensive. This property makes it hard to adversarial to tamper with the blockchain. Because now they also need to find a new nonce for all the blocks following the block they change. It is extremely hard as long as they don’t have more than half of the computation power. However, it should be note that verifying the nonce is straightforward.
The process of finding the nonce is often referred to as mining. The person who finds a nonce is called a miner. Once a miner finds a nonce or mines a block, the network awards the miner with some crypto’s.
Proof-of-Stake
The primary drawback of Proof-of-Work is that it is inefficient and environmental unfriendly. Some protocols are developed to address this. One example is Proof-of-Stake. It works as following.
One person can become a validator. However in order to become a validator, he/she needs to contribute or stake some of their crypto. The network will select some validators when it needs to append a block. If a certain number of validators validate the block, the block will be accepted and those validators will be awarded some crypto. However, if they validate bad blocks, they will lose some of the stake they placed.
This protocol is much more efficient and has gained much popularity. Ethereum for example is migrating to proof-of-stake from proof-of-work in its Ethereum 2.0 project.
Smart contracts
Simply put, a smart contract is a program that executes on the blockchain. Each smart contract contains functions and some states. The functions are normally written in high level programming languages such as Python. They are compiled into the bytecode and those bytecode are deployed on a blockchain network (Bytecode is simply some data and can be placed into the block.) Once the block containing the bytecode reaches a node, those bytecode will be run by a virtual machine locally.
Digital assets
A digital asset is the digital representation of an asset that can be owned or traded. The digital representation is sometime called a token. Non fungible token (NFT) is such an application. NFT is built on a smart contract standard called ERC721. ERC721 specifies that each token is associated with a unique identifier and therefore it is not fungible.
Blockchain applications
In the next part, we will introduce the applications of blockchain in various fields, from crypto to supply chain management to environmental control. Stay tune and subscribe so that you don’t miss it!
Reference
[1] Ali, Anwaar, et al. “Blockchain and the future of the internet: A comprehensive review.” arXiv preprint arXiv:1904.00733 (2019).