Now you may be asking yourself, what really is blockchain? We know who created it, and what can it be used for, but what’s behind it all?
In the simplest of terms, it’s a publicly distributed ledger.
As we were just talking about in the ‘who & when’ section, a ledger has traditionally always been held by a trustworthy central authority. This has been historically necessary as some source needed to hold all information in one place so no faulty transactions could occur. Blockchain technology eliminates the need for a central authority by distributing the entire ledger across the peer-to-peer network. Each transaction is verified via inter-node communication and mining. When a transaction is verified, a block is created. Blocks can never be retroactively altered in any way.
So let’s break this down a bit more.
Imagine a ledger in your mind, in fact, imagine your own! Imagine your bank account transaction history. When you look at your transaction history, you’re going to see a list of debit and credit transactions. Debit being when money is deposited into your account and credit being when money is removed from your account.
Now imagine each one of those transactions being converted in the shape of a block. Each block contains a transaction (or usually a batch of transactions), its own cryptographic hash and the cryptographic hash of the block before it. The reason each block contains its own hash as well as the one before it, is to connect the two blocks into a chain. Think of the two cryptographic hashes coming together to form a link.
All of these links and blocks and then encoded to into a hash tree (sometimes called a Merkle tree) and forms what we’ve come to call the blockchain.
This continuous iterative process goes all the way back to the origin block. Picture it like picking up the end of a chain by your feet. If you walked along the chain far enough, you’ll find the origin.
We’ve already lightly touched on the concept of mining before so I don’t want to go to much further in-depth on the subject as it is not required aspect for all blockchains. We know that mining is what verifies a ‘block’ within the Bitcoin blockchain. The block is verified when a miners computer solves the cryptographic hash. But how often does this happen?
Block time is the term used to refer to the amount of time it takes for a new block to be added onto the chain. The faster the block time, the more transactions that are verified. A common complaint against Bitcoin is their block time; their average is around 10 minutes. The altcoin Ethereum was designed to have faster block time than Bitcoin, and they do. Ethereum’s average block time is between 10 & 20 seconds.
With multiple nodes trying to verify blocks all at once, it sometimes happens that two blocks are created at the same moment. This creates a temporary fork in the blockchain. One of the two blocks will eventually become what is know as an orphan block. As you may have guessed an orphaned block is just that, orphaned. No new blocks will be built on top of this. So in your are ever investigating a blockchain, always trust the longer chain.
What’s so great about the blockchain system is that it has no vulnerability. This is because blockchain technologies utilize the security of public & private key cryptography. A public key is a long string of numbers (typically 20 bytes) that acts like a road address on the public chain. Any tokens or assets that are sent to the public key are recorded as belonging to that address. That public key address is protected by what is called a private key. Every user on the blockchain is issued a private key, which unsurprisingly is a long string of numbers (typically 32 bytes). You never want to give out your public key! It’s the combination of your private key, along with the public key that allows you to unlock your assets.
Because of the necessity of having both keys to unlock any assets, the blockchain is often called unhackable. This is revolutionary because the blockchain is public and considered user-friendly. Most things that are public and user-friendly are the things that get hacked the most (e.g. Facebook).
In conclusion, the blockchain is a publicly distributed ledger that can be accessed from any node on the network. When a transaction request is placed, a cryptographic hash function in encoded into the block along with the transaction details. This information is then broadcasted across the network awaiting verification by miners. Block time can take anywhere from 5 seconds to 20 minutes depending on the blockchain. Once the block is verified it is then sealed into the chain and broadcasted across the network. Any transaction on the blockchain is irreversible. To access your assets on the blockchain, you need your private and public keys.