Bitcoin was conceptualized as an act of defiance. Cryptocurrency emerged shortly after the global economic crisis. It intends to be the remedy for the injustice and corruption of the traditional financial system.
Its creator was confident that Bitcoin would compete with real money and ultimately supplant the institutions that affected the crisis. Intermediaries, bankers, untrustworthy third parties created problems for others by diminishing profits and making transactions more difficult.
Bitcoin has sought to replace the services provided by these intermediaries with unique code and cryptography.
For example, when a person pays a mortgage, a series of transactions occur in the background between his bank and other financial institutions. In this case, they withdraw the money from the user’s account.
The bank guarantees that everything is fine with the money since it stores information about the account’s spending history.
Bitcoin and other cryptocurrencies replace these background operations and transactions with a distributed and secure database software called blockchain. Moreover, many computer control BTC owners’ changing processes. The right to use cryptocurrency can be transferred to anyone.
What is Blockchain Technology
Blockchain is a continuous persistent chain of blocks that contains information built according to specific rules. As a matter of fact, the block number, as well as its hash sum and the previous block’s hash sum, determines the connection between blocks.
To change the information in a block, you will have to edit all subsequent blocks. More often than not, many computers store copies of blockchains independently. Thus, it makes it difficult to change information within the blocks.
To be more clear, blockchain is often compared to a standard diary or file cabinet where records are made in chronological order about everything that has been done. (e.g sleeping, eating, washing, walking, borrowing, paying $100 for dinner, etc.)
All encrypted information prevents any changes in the diary from the outside. Suppose the diary does not have a copy. In that case, anything can happen to it considering emergencies and other incidents.
Therefore, for reliability, the diary has many copies that are stored in different places. Moreover, when the diary recognizes new information, it updates all copies after verification.
Read More: What is Blockchain Technology?
Why is it Called Blockchain?
There are many different versions of the blockchain definition, but all of them work in a very similar way. Let us split the word blockchain into two — block and chain — to explain what it does.
Imagine a large shipping container that holds many boxes as it travels from destination A to B. In the cryptocurrency world, a container is a ” block,” and each box that is in a container is a separate transaction.
|Container = Block|
Box = TransactionContainer that can hold many boxes = Block that can hold many transactions
Using the Bitcoin blockchain as an example, it takes approximately 10 minutes to confirm one block of transactions on the network.
As in a real container, a block holds a certain number of transactions depending on the maximum block size. Each blockchain has its maximum block size, usually equal to the amount of data (megabytes) that it can contain.
The bigger the block size, the more transactions it can contain.
Now you know what a block is, how about a chain?
Imagine that the container with boxes has reached its first destination. This means that the block has been confirmed and is now available to everyone on the blockchain. However, the container is ready to be shipped to the next destination.
Each new or old box (transaction) will also be publicly viewable on the blockchain. This works for every transaction. Once confirmed, the transaction data becomes available to everyone. That is why it is called a “chain” of transactions.
The Basic Principle of Blockchain
Jess had several ways to transfer funds to his colleague, Elvi:
- Cash transfer (Jess is giving cash to Elvi personally)
- Using a third party (Jess transfers money to a bank, postal service, or courier which transfers money to Elvi)
Usually, there is not a single third party. We have a whole chain of intermediaries who do not disclose their scheme of work. Even if we go to the bank and demand to tell us the technical details, no one will do this.
Without knowing the technical details, we remain to trust the banking system with their chains of transferring money.
Intermediaries and Centralized System
Specialized computers store all information about the bank’s clients, including their name, residence address, personal account numbers, and financial transactions (payment or transfers).
When Jess transfers money from his account to Elvi’s account using an ATM or an online bank, he requests this database, where the software runs. It checks:
- Does Jess have money to send to Elvi?
- From where did Jess get this money?
- Was Jess engaged in earning money illegally?
Bank software performs other similar checks. After that, they deduct the required amount from Jess and credit to Elvi’s account.
This centralized system has its own regulator and controls. The system has maintenance personnel, and without them, this whole chain of checks will not function.
Unlike a centralized system, the main advantage of blockchain remains to be decentralization. This changes our understanding of trust. A network of computer (nodes) store the blockchain’s digital ledger of transactions. No single entity controls the system.
Since there is no central system in the blockchain to generate and trace all transaction data, modification seems impossible.
What Blocks Consist of
A transaction is not just a money transfer. Under the transaction, you can execute a script, or simply write a note in the blockchain and save some data.
Each block has nonce parameters, the hash of the previous block, the hash of the current block, and the transactions. A nonce is a one-time-use and random or pseudo-random code that is used to transmit the master password, preventing a replay attack to happen.
To understand how transactions work, imagine a book page that says, for example:
- Jess transferred $100 to Elvi.
- Someone transferred some money to someone else.
In one block, a thousand transactions can be recorded. Once confirmed, the block closes and signs, moving to a new block.
Hash and Merkle Tree
All transactions and hashes follow the Merkle tree structure.
Before the advent of blockchain technology, many of us already used torrent to download files to our media. This is where the Merkle tree was originally used. When someone downloaded something to his computer, he could see a line filled with some small cubes.
Once uploaded to the network, the file splits into many small pieces. These parts form a Merkle tree through hashes. It is needed in order to quickly check the integrity of the entire system, particularly the integrity of the user’s file.
The same thing happens in the blockchain: after transactions completely fill the block, the code calculates the hash sum based on each transaction. This hash is a digital imprint from the transaction.
The transaction itself weighs much more than its hash sum.
Hash, made of certain set of symbols, bears an imprint. The imprint will be unique for each transaction. What does it mean? If any point or other symbol in the hash sum changed, the system would perceive it as a completely different hash.
With every transaction, the system would start to check the lower hash of the block, the previous block’s hash, until the last upper hash of the Merkle tree. Thus, receiving the total hash of all transactions. A block keeps transactions and their specific hashes. If suddenly some attacker enters the fourth transaction and adds a couple of zeros to himself (for example, Jess transferred not $100, but a million), then the hash of this transaction will be different.
Suppose we combine them with the hash of the third transaction. In that case, the overall hash of the fourth transaction will also be different, alongside the whole tree and the final hash.
To ‘stitch’ one page of the book to another, they use the hash of the previous block. This means taking all information from the first block, including:
- Number of the previous block
- Number of transaction
All of this is hashed, and the hash of the whole page is added to the hash of the next one, and then everything follows the already described scheme.
Thus, if at least one symbol of the book is changed — something is added or removed — then this will not find confirmation on the network, and this block will simply be invalid.
That is why this whole system is called blockchain. The chain of blocks is rigidly connected by a chain of hashes according to the principle of checking each block. And, if something somewhere does not match, the system does not accept it.
Each new block becomes a part of a single whole, giving the necessary protection against replacing any information in the past.
If someone replaces a page, it will be visible in the blockchain, and the hash in the next block will be different.
Furthermore, the information within the blockchain updates regularly. To change the information in one specific block, you will have to recalculate the sum of all previous ones, which is difficult due to the nonce parameter.
What Does Mining Have to Do With It
Like the banking system, blockchain has its own service personnel. But unlike banks, the program code installed on the systems of miners performs the service.
Miners assemble systems specifically for calculating all hashes by buying powerful processors and video cards and building their mining farms.
In order to carry out an operation on the blockchain, it is necessary to create this operation. The mempool stores all pending transactions for confirmation. Without this, the blockchain system cannot exist.
What is a miner doing? The miner enters a mempool and compiles a list of transactions. After the completion of the block, he makes calculations with the given hash on the Merkle tree and the hash of the previous block to calculate the current block’s hash and sign it.
It is necessary to understand that there are a number of miners in the blockchain.
Imagine there is a blockchain that has just started, and there are ten miners. Each one enters the mempool and fills its blocks with transactions. If 10 people simultaneously upload a new block to the blockchain, then with each block, there will be some kind of blockchain division.
As we can understand, there is no single correct chain that would be consistent between all miners.
In this regard, to reach consensus and decide which block suits better, developers created the Proof-of-Work (PoW) algorithm. The algorithm allows the usage of powerful application-specific integrated circuits (ASICs) to calculate the required block hash.
In the context of Bitcoin, the program adjusts the complexity of the network in a way that a new block appears approximately once every ten minutes.
The number of zeros that should be counted is also a variable question and depends on the complexity of the situation. If there are a million miners, we will have to count tens of zeros to find a number that matches our hashes.
It is a tedious process. That is the reason why miners get block rewards.
Read and learn more about bitcoin and cryptocurrency mining here.
Decentralization and Distribution
We found out that necessary calculations require enormous computing power.
Today, the blockchain network has the most powerful computing resource on the planet. Giants such as Google, Amazon, and Apple are not even close to the blockchain network’s power.
Interestingly, as more people use blockchain, the more powerful and safer it becomes.
The moment when people become interested in the blockchain system and install the mining software on their computers, they become nodes.
Each computer will have a copy of the records within the blockchain. In a bird’s eye view, there are thousands of miners around the world.
Suppose some attacker wants to hack into the system and “draw” a million for himself. In that case, he will not only have to recalculate all these blocks but gain control of at least 51% of all the nodes involved.
Let’s say the hacker is now ready to send this million to his account, other nodes simply will not let this happen. The system synchronizes in such a way that more nodes with the same hashes prevail over the smaller one.
Suppose there is a person who did something wrong with the hashes (some byte is missing or a character mismatch), it will simply not be taken into account. Furthermore, the network bans them to avoid further manipulation.
In order to hack this system, an attacker will need to hack all computers, the numbers of which are growing every day. Thus, protection, decentralization, and distribution increase.
A smart contract is a program in the cryptocurrency blockchain that is unquestioningly executed by all nodes of the network and helps coin holders to interact with each other.
Due to the immutable nature of blockchain, a properly executed smart contract leaves no space for corruption and eliminates the need for third-party authentication.
A smart contract then monitors the terms and gets access to the contract subject, which is a certain amount of cryptocurrency. Once participants transfer the amount into the program and it meets the conditions, the process will be automatically done.
Requests, threats, or deception cannot take away the assets from the contract. Once executed, the seller gets the amount and the buyer gets the goods.
For a more comprehensive guide about smart contracts and how it works, visit: What is a Smart Contract?
As we previously mentioned, the blockchain does not require any personal information from us. The system requires only two keys.
Every person that wants to make transactions has his own public key. There is also a private key that serves as both an identifier and login credential.
Public key is a certain phrase made of numbers and symbols, available for viewing to everyone. In a crypto analogy, the public key is the wallet number that you can send to anyone for them to transfer funds to your account.
Private key is the most valuable private data that must only be known to the owner of this key. By keeping the user’s private key in secret, it guarantees the impossibility of forging a document and digital signature by an attacker.
In our example, both Jess and Elvi have their own private keys:
- Jess writes a message to Elvi: Hello, Elvi!
- Jess encrypts it with Elvi’s key by previously calling her and asking for a public key.
- Now Elvi, in order to read the message from Jess, needs to decrypt it all with her private key.
Everything encrypted with your public key can only be decrypted by your private key. The same works the other way around: everything that you signed with your private key can be decrypted by anyone with your public key.
When someone sends a transaction on the blockchain, he signs it with his private key.
Through blockchain explorers, anyone can view the information for each transfer and various account transactions, which ensures complete transparency.
The only thing that cannot be proven is that the wallet belongs to you since there is no connection to anything. Thus, the owner achieves complete anonymity.
All of us used to see the balances of our accounts. Interestingly, there is no concept of balance in blockchain, as it is just a public ledger.
- After setting up a crypto wallet, Jess asks Elvi to transfer $100 worth of BTC to him.
- Elvi asks him for the public key.
- Jess’ public key creates a transaction: “Here is $100”.
- After receiving, Jess wants to transfer $50 to Diana.
- Another transaction will be done using Diana’s public key: ” I want to transfer $50 to Diana", and Jess signs it with his private key. The system automatically checks Jess’ history of transactions. After confirming the availability of funds, it will allow the transfer.
- Diana will soon receive her $50 from Jess.
By simply saying, blockchain creates a task for miners to check the transaction history of Jess’ wallet, and if everything is correct and there are enough funds, Jess can make a transfer and the miner who checked the wallet’s history gets his reward.
In fact, for each transaction, you need to re-prove to the system the origin of all funds in the entire history of the wallet. It sounds complicated, but in practice, smart contracts program all actions so humans do not have to worry about anything.
There is no concept of variable balances in the blockchain. Recorded transactions look like simple texts in a ledger.
How Can Blockchain be Used in the Real World
Imagine all hospitals are running on the blockchain. You no longer need to have an outpatient card to present or carry any papers and certificates with you. It is enough just to give the doctor your public key and let them check your entire medical history there.
The doctor looks at the history and adds his diagnosis there. He cannot fix, rip out a page, or lose the card. Insurance, elections, logistics, sales, mortgage, transportation, agriculture, and many other industries can work in a similar way.
Blockchain technology represents a radically new approach to organizing business operations. It heralds a new generation of reliable and smart applications for registering and exchanging physical, virtual, tangible, and intangible assets.
Moreover, blockchain has brought us reliable data exchange in the digital world, where trust becomes part of the system itself.
With key concepts of cryptographic security, decentralized consensus, and a shared open ledger (properly monitored and limited invisibility), blockchain technology has the potential to revolutionize the way we organize our economic, social, political, and scientific activities.