What is blockchain, exactly
A blockchain is a sort of database that is unique. You may have also heard the term distributed ledger technology (or DLT) — they refer to the same thing in many circumstances.
A blockchain has some distinct characteristics. There are rules about how you can add data, and it’s nearly impossible to change or delete information once it has been saved.
Data is accumulated over time in the form of blocks. Each block is built on top of the one before it, and each one contains information that connects to the one before it. We can verify that the most recent block was formed after the previous one by looking at it. So, if we follow the “chain” all the way down, we’ll arrive at our very first block, also known as the genesis block.
What is the relationship between the blocks?
The glue that holds blocks together is hashing. It involves sending data of any size through a mathematical procedure to generate a result (a hash) that is always the same length.
The hashes employed in blockchains are intriguing since the chances of finding two pieces of data that produce the exact same outcome are quite slim.
Decentralisation and blockchains
The fundamental structure of a blockchain has been described. When people talk about blockchain technology, they’re probably not just referring to the database but to the ecosystems that have grown up around it.
Blockchains are only really helpful in limited applications as autonomous data systems. When we use them as instruments for strangers to coordinate amongst themselves, things get interesting. A blockchain, when combined with other technology and some game theory, can operate as a decentralised ledger owned by no one.
This indicates that no one has the authority to change the entries outside of the system’s rules (more on the rules shortly). In that way, you could argue that everyone owns the ledger at the same time: participants agree on what it looks like at any given time.

The Problem of the Byzantine Generals
The main roadblock to a system like the one described above is something known as the Byzantine Generals Problem. It defines a problem in which isolated participants must communicate to coordinate their actions. It was first proposed in the 1980s. The specific scenario involves a small group of army generals who are considering whether or not to attack a city. The generals are only able to communicate through messengers.
Each player must choose whether to fight or flee. It makes no difference whether they attack or retreat as long as all of the generals agree on a strategy. They will only be successful if they move in at the same time if they decide to assault. So, how do we know they’ll be able to pull it off?
They could, of course, connect via messenger. But what if the message “we’re attacking at dawn” gets intercepted and substituted with “we’re assaulting tonight”? What if one of the generals is deliberately deceiving the others in order to assure their defeat?
When attacking, all generals are successful. They will be vanquished if some retreat while others fight.
We need a mechanism that allows us to establish a consensus even if players become malevolent or messages are intercepted. Although not being able to maintain a database isn’t as dire as attacking a city without reinforcements, the same idea applies. Users must be able to interact amongst themselves if there is no one to control the blockchain and provide “correct” information.
The blockchain’s procedures must be carefully designed to withstand such setbacks. The term “Byzantine fault-tolerant” refers to a system that can achieve this.
Why is it necessary for blockchains to be decentralised?
Of course, you could run a blockchain on your own. However, you’d end up with a database that was clumsy in comparison to better options. Its whole potential can be realised in a decentralised environment, where all users are treated equally. The blockchain can’t be destroyed or taken over maliciously this way. Anyone can perceive it since it is a single source of truth.
What exactly is a peer-to-peer network?
Our layer of users is the peer-to-peer (P2P) network (or the generals in our previous example). Because there is no administrator, instead of calling a central server every time they wish to share information with another user, they transmit it to their peers directly.
To put it another way, every peer uses the blockchain to store the full database on their computer. Even if a member leaves the network, the remaining users will be able to access the blockchain and share information. When a new block is added to the chain, the data is distributed throughout the network, allowing everyone to update their own copy of the ledger.

What are blockchain nodes, and how do they work?
The machines connected to the network are referred to as nodes, and they are the ones that store copies of the blockchain and share information with other devices. These processes do not need to be handled manually by users. In most cases, they only need to download and execute the blockchain software, and the rest will be handled automatically.
In the purest sense, the above represents a node, but the term can also include additional users who interact with the network in any way. A simple wallet application on your phone, for example, is referred to as a light node in bitcoin.
Blockchains: public vs private
Bitcoin, as you may know, provided the groundwork for the blockchain sector to become what it is today. Since Bitcoin began to establish itself as a viable financial instrument, inventors have begun considering the technology’s potential in other fields. As a result, blockchain is being investigated for a variety of non-financial applications.
A public blockchain is what we refer to as Bitcoin. This implies that anyone can view the transactions on it, and all you need is an Internet connection and the appropriate software to participate. We can call this a permissionless environment because there are no further restrictions for participation.
Private blockchains, on the other hand, are a different form of blockchain. These mechanisms define who has access to the blockchain and how they can interact with it. As a result, we call them permissioned environments. While private blockchains may appear to be redundant at first glance, they have a number of essential applications, mostly in the workplace.
What is the process of a transaction?
Lucy notifies her bank if she wants to pay Jim by bank transfer. For the purpose of simplicity, let’s assume that both parties utilise the same bank. Before changing its database (e.g., -$50 to Lucy, +$50 to Jim), the bank verifies that Lucy has sufficient funds to complete the transaction.
This is quite similar to what happens on a blockchain. It is, after all, a database. The main distinction is that the checks and balances are not performed by a single party. It must be completed by all nodes.
If Lucy wishes to transmit five bitcoins to Jim, she sends a message to the network stating so. It won’t be uploaded to the blockchain right once — nodes will notice it, but the transaction won’t be validated until further steps are finished.
All nodes on the blockchain will be able to see that transaction once it is posted to the blockchain. They’ll make the necessary changes to their blockchain copy. Lucy can no longer transmit those same five units to Sarah (due to double-spending), as the network recognises that she has already spent them in a previous transaction.
To validate ownership of funds, public-key cryptography is employed instead of usernames and passwords. Jim must first generate a private key in order to receive payments. That’s merely a really long random number that would be nearly difficult for anyone to estimate, even if they had hundreds of years. However, if he shares his private key with anyone, they will be able to prove ownership of (and hence spend) his funds. As a result, it’s critical that he keep it a secret.
Jim, on the other hand, can generate a public key from his private one. He can then distribute the public key to anyone because reverse-engineering it to retrieve the private key is nearly impossible. To get a public address, he’ll usually execute another operation (like hashing) on the public key.

What is a blockchain transaction, and how does it work?
He’ll give Lucy the public address so she can send money to him. She creates a transaction that instructs the recipient to send the funds to this public address. She then generates a digital signature using her own private key to verify to the network that she isn’t attempting to spend funds that aren’t hers. Anyone may take Lucy’s signed message and compare it to her public key, ensuring that she has the legal authority to deliver those cash to Jim.
Who is the inventor of blockchain technology?
Bitcoin, the first and most popular blockchain, was released in 2009, formalising blockchain technology. Satoshi Nakamoto, who goes by the pseudonym Satoshi, was inspired by earlier technology and concepts.
Hash functions and cryptography, which had been used for decades before Bitcoin, are heavily used in blockchains. The blockchain’s structure can be traced all the way back to the early 1990s; however, it was only used for timestamping documents, so they couldn’t be changed afterwards.
See History of Blockchain for additional information.
The benefits and drawbacks of blockchain technology
Blockchains that are well-designed tackle a problem that affects stakeholders in a variety of industries, from finance to agriculture. A distributed network has several benefits over a standard client-server paradigm, but it also has certain drawbacks.
Pros
One of the first benefits mentioned in the Bitcoin white paper is that payments may be sent without the use of a middleman. Following blockchains have gone even further, allowing users to send any type of data. By removing counterparties, customers are exposed to less risk and pay cheaper fees because there is no intermediary taking a cut.
As previously stated, a public blockchain network is also permissionless, meaning that there is no barrier to entry because no one is in charge. A potential user can engage with other peers on the network if they can connect to the Internet.
Many people believe that an essential feature of blockchains is that they are resistant to censorship. A bad actor would only need to target a server to cripple a centralised service. In a peer-to-peer network, however, each node operates as its own server.
Bitcoin, for example, has over 10,000 visible nodes all around the world, making it nearly hard for even the most well-resourced attacker to compromise the network. It’s worth noting that there are numerous hidden nodes that aren’t visible to the rest of the network.
Cons
Blockchains aren’t a panacea for all problems. They end up lacking in other areas as a result of being optimised for the benefits mentioned in the previous section. The fact that blockchains do not scale effectively is the most obvious barrier to their widespread adoption.
This is true for every network that is distributed. Because all participants must be in sync, new information cannot be added too quickly; otherwise, the nodes would become out of sync. As a result, developers often limit the speed at which the blockchain may update in order to keep the system decentralised.
If too many people are trying to make transactions on a network, this might result in long wait times for users. Blocks can only carry a certain amount of data and aren’t added to the chain immediately. Any more transactions must wait until the next block if there are more transactions that can fit in the current block.
Another disadvantage of decentralised blockchain systems is their inability to be quickly upgraded. You can add new features whenever you want if you’re writing your own programme. You don’t need to collaborate with others or seek permission to make changes.
Making modifications in an ecosystem with possibly millions of users is far more complex. You could tweak some of the settings in your node software, but you’d eventually be cut off from the rest of the network. Other nodes will notice and refuse to engage with your node if the updated software is incompatible with them.
Let’s say you wanted to update a regulation about the size of blocks (from 1MB to 2MB). You may attempt sending this block to the nodes with which you’re linked, but they have a rule that says “blocks over 1MB will not be accepted.” They will not include anything larger in their blockchain copy if they receive something larger.
The only way to force changes is for the ecology as a whole to accept them. Before significant blockchains can be coordinated, months – or even years – of intense discussion on forums are required.