An Introduction to Blockchain Technology

An Introduction to Blockchain Technology

What is Blockchain?

Blockchain is a decentralized distributed database of immutable records, where transactions are protected by strong cryptographic algorithms and the network status is maintained by the Consensus algorithm.

Immutability refers to the ability of blockchains to prevent the alteration of transactions that have already been confirmed.

Consensus refers to the ability of the nodes within a distributed blockchain network to agree on the true state of the network and on the validity of transactions. Typically, the process of achieving consensus is dependent on the so-called consensus algorithms.

Combined, consensus and immutability provide data security in blockchain networks.

Blockchains rely on cryptography to achieve their data security.

Types of Blockchains:

Depending on the need of the application, Blockchain can be divided into four types:

  1. Public Blockchain
  2. Private Blockchain
  3. Hybrid Blockchain
  4. Consortium Blockchain

Public Blockchain (No central Authority)

Public Blockchain is publicly accessible. It has no restriction on who can participate or be a Validator. In these Blockchains, no one has complete control over the network.

Private Blockchain (Controlled by One Authority)

A Private Blockchain has restrictions on who can access it and participate in transactions and validation. Only pre-chosen entities have permission to access the Blockchain. These entities are chosen by the respective authority and are given permission by the Blockchain developers while building the Blockchain application.

Hybrid Blockchain (Controlled by one authority with a permission less process)

This type of Blockchain is a mixture of private and public blockchains. In this, one part is controlled by any organization, and the other makes are made visible as a public blockchain. It provides a remedy in situations where data is to be accessed publicly but needs to be shielded privately.

Consortium Blockchain (Controlled by a Group)

In Consortium Blockchain some nodes control the consensus process, and some other nodes may be allowed to participate in the transactions. One part is Public, and some are Private. It is public because the Blockchain is being shared by different nodes, and it is private because the nodes that can access the Blockchain are restricted. Hence, it is partly public and partly private.

How does Blockchain work?

Depends on the type of blockchain.

If the data is about Bitcoin, the blockchain contains information about a transaction such as a sender, receiver, and transaction amount.

Hash:

Block also has a Hash, like a fingerprint. If anything in the block changes, the hash will change. If the Block’s hash changes, it is no more the same block.

Hash of the previous block:

In a blockchain, each block is related to the previous block’s hash. The first block is special because it has no previous block, it is called the genesis block. If any of the blocks’ data tamper with, the hash changes instantly, and the subsequent block recognizes it and makes the changes immediately.

The Security is further enhanced by proof of work.

Proof of work:

A decentralized consensus mechanism that needs members of a network to expend effort in solving an arbitrary mathematical puzzle to prevent anybody from gaming the system.

So, the security of blockchain comes from hashing and proof of work mechanisms.

Another way of keeping it secure is, that blockchain is distributed, and uses peer to peer network.

When a transaction is requested by the user, A block containing that transaction is created.

When a new block is to be included in a blockchain, it is sent to every node. Every node verifies the block to make sure it has not been tampered with and if everything checks out, each node adds this block to its own blockchain. All the nodes in this network create a consensus. They agree on which blocks are valid and which are not. Blocks that got tempered, will be rejected by other nodes in the network.

To successfully tamper with a block, one will have to tamper with all the blocks on the blockchain, redo the proof of work for each block and take control of more than 50% of the peer-to-peer networks. Only then, his tampered block will get acceptance by everyone else which is almost impossible.

  • A Transaction requested by a user
  • The transaction represented online as a block
  • The selected block sent to every node in the network
  • The block and Transaction validated by all the nodes
  • The nodes receive a reward for the proof of work
  • The transaction added to a new block in the blockchain
  • The transaction undergoes verification and execution

What are blockchain nodes?

Nodes are simply what we call the machines connected to the network – they are the ones that store copies of the blockchain and share information with other machines. Users do not need to manually manage these processes. All they need to do is download and run the blockchain’s software, and the rest will be done automatically.

Advantages and Disadvantages of Blockchain Technology

Blockchain is a distributed network, so it comes with many advantages but also has some disadvantages

Advantages:

  • One of the immediate benefits of blockchain is that payments can be transmitted without involving any intermediary, so transaction fees are low because there is no intermediary taking a cut
  • A public blockchain network is permissionless; there is no hurdle in the entry because there is no one in charge
  • Blockchain has peer to peer network, so it has a high degree of censorship resistance
  • There are a considerable number of visible nodes that are scattered around the world, so it is virtually impossible for any attacker to compromise the network
  • Confirmed blocks are impossible to be reversed, meaning that once data has been registered into the blockchain, it is extremely difficult to remove or change it. This makes blockchain a great technology for storing financial records or any other data where an audit trail is required

Disadvantages:

  • The primary disadvantage which is an obstacle to the mass adoption of blockchain is Scalability
  • Another disadvantage of the decentralized blockchain systems is that making changes is more difficult; they cannot be upgraded easily
  • There are a few potential attacks that can be performed against blockchain networks, 51% attacks are among the most discussed
  • Users need private keys to access their funds, meaning they are their own banks. If a user loses his private key, the money is lost and there is nothing he can do about it
  • In blockchains using proof of work, mining is highly competitive and there is just one winner every ten minutes, the work of every other miner is wasted.

Blockchain Scalability

Scalability means how well a system can manage increasing amounts of data. In Blockchain, scalability is how well it can handle an increasing number of transactions. A major part of the issue occurs because blockchain requires all the nodes to validate the transaction to get it successfully done.

The Blockchain Trilemma

When three factors make up a structure, only two of them can be achieved at the same time. This is called a trilemma.

An impossibility for blockchains to simultaneously achieve decentralization, security, and scalability. As such, a decentralized and secure blockchain cannot provide scalability. And a scalable, secure network lacks decentralization.

Blockchain Use Cases

Most blockchains function as distributed ledgers that record and protect digital data through the use of cryptography. The technology is often applied to networks of digital currencies (cryptocurrencies), but its decentralized and secure nature also makes it a powerful tool for many other industries.

Blockchain technology provides the ability to create a distributed yet unified record. This offers opportunities for improving performance and security in several industries and organizations

Charity

Resource management, operational transparency, and effective governance are the challenges that many charity organizations are dealing with. Blockchain technology can help them to improve the process of receiving and managing their funds.

Supply chain

Transparency and efficiency are the major problems in supply chain networks. In these networks, blockchain technology can be used for tracking the entire process of creating and distributing materials.

Governance

Blockchain technology has the potential to improve governance in various sectors, by managing networks, and operations in a more democratized, fair, and secure manner. Blockchain-based systems may be used as a tool to eliminate voting fraud and the need for trust during elections or other constitutional processes.

Payment solutions and dApps

When it comes to sending money worldwide, blockchain technology has already proven itself to be very efficient. Sending cryptocurrencies to friends, families, and others around the world is cheaper and faster compared to what centralized banks and payment solutions have to offer.

Moreover, centralized websites and Apps do not give users control over their data and often do not reward them according to the true value they bring to the platform. Blockchain-based decentralized applications take out the agent, giving users the potential to enjoy reduced fees, and greater transaction efficiency, while also being able to send and receive digital money.

Internet of things

Blockchain technology allows organizations to hold an immutable and transparent ledger of Internet of things (IoT) devices, the amount of data they collect, and their interactions with one another. Because blockchain is a technology that is based on facilitating accurate and secure transactions, it makes sense that it is integrated with IoT to ensure accountability and data accuracy and security.

Blockchain and Healthcare

Blockchain has a wide range of applications and uses in healthcare. Distributed ledger technology facilitates the secure transfer of patient medical records, manages the medicine supply chain, and helps healthcare researchers unlock genetic code