Blockchain for absolute beginners
--
Blockchain is as significant now as the internet was 25 years ago. — Blythe Masters
Blockchain. Maybe you’ve heard of it before, maybe you haven’t. If you have, did you click on this article because you’re a little confused by all the techy lingo that comes up when you Google blockchain, or did you just want to come back to the basics? And if this is your first time delving into blockchain, welcome!
When I first started learning about blockchain, I was STUMPED by some of the content I found on the internet. I could explain it and gloss over basic terms, but I found it difficult to fully grasp the concept. I still didn’t have that “aha” moment. The content I was reading was too high level, and didn’t clearly convey the power and potential of building distributed, decentralized applications. I now feel comfortable enough to help others in the same position. I’m gonna make this a practical, comprehensible, clear article for anyone to use, specifically beginners.
We won’t go too deep for the sake of your brain and to keep it concise, but look out for more of my future work here on Medium where we’ll get into the nitty gritty details.
I promised this would be a practical, clear article, so let’s go over what I’ll touch on in the next couple paragraphs:
What is Blockchain?
- general history and overview
- three main aspects of blockchain
How does it work?
- key elements
- blockchain architecture
- how blocks are added to a chain
- byzantine general’s problem
- consensus mechanisms
- exemplary transaction
How can it be applied?
- possible applications
Conclusion + key takeaways
- conclusion
- tldr
What is blockchain?
You might have heard of the name Bitcoin. Bitcoin is a cryptocurrency that uses blockchain as its underlying technology. The idea of Bitcoin was first brought to light in 2008 by an unknown person or group of people called Satoshi Nakomoto. The Bitcoin whitepaper is an intriguing and accessible read.
Since then, blockchain has expanded from just the technology behind Bitcoin, and has shown to have a multitude of other uses. It’s an emerging technology that shows very promising future applications because of its potential to influence almost every aspect of our lives like finance, education, trade, and even healthcare. Such promising possibilities make it a hot investment choice for tech nerds, businesses, and hopeful spectulators alike.
Simply put, blockchain is a continuously updated record of who holds what.
It’s a distributed ledger for storing information. The information is stored in blocks that are linked together with fancy computer code called cryptography. It is immutable, always current, and anyone can see it (to some degree), making it transparent. It’s also decentralized.
Let’s go over three main aspects that you’ll need to understand to grasp the concept of blockchain.
- Decentralized
- Immutable
- Current
Decentralized
As mentioned above, blockchains are a decentralized technology. This means it’s not all in one place. The information on the blockchain is part of a network, and all the users of the network store individual identical copies of the network’s data. This enables it to be distributed throughout the network, like shards of porcelain from a shattered plate. A decentralized network eliminates the need for a third party to manage data. We often open our computers and use Google to access information, or we go to the bank to cash a cheque someone has given us. These are both examples of using a third party. With blockchain, since information is distributed throughout the network, no single entity maintains it. This in turn reduces the risk of centralized corruption and failure.
You might hear about blockchains being peer-to-peer. Like a decentralized technology, peer-to-peer means all the users of the network share resources amongst themselves, without the use of a centralized administrative system. In short, it’s also a distributed system.
Immutable
Blockchains are immutable and unchangeable. Immutability, in the context of the blockchain, means that once something has been entered into the blockchain, it cannot be tampered with. It’s therefore very secure. Because the system is run using computer code and cryptography, it is more reliable than using a third party. Blockchain technology accounts for the issues of security and trust in several ways — users can be sure the information on the blockchain is verified and secure, and can’t be altered or edited. It’s virtually impossible to hack a blockchain because of its distributed nature. We’ll take a closer look at how this works later.
Current
Blockchains are continuously updated and kept current for everyone on the network. All information is time stamped and recorded in chronological order. Once a new block is added to the network, all users will receive the updated blockchain. It’s important for blockchain to be current, especially when valuable information needs to be accessed.
What do decentralized, immutable, and current give us? It gives us a revolutionary method for storing information, sending transactions, and managing all sorts of data. For example, I can trust that my money will safely and quickly make it from point A to point B.
To recap, blockchain is:
- Not owned by a single entity, hence it is decentralized
- The data is cryptographically stored inside
- The blockchain is immutable, so no one can tamper with the data that is inside the blockchain
How it works
Before we can get into the process of how a block is added to the network, we’ve got to have some vocab down:
Let’s learn some elements of a blockchain network.
- Nodes
- Wallets
- Keys
- Hashes
Nodes
The users of a blockchain network are called nodes. The nodes collectively moderate and host the network. Remember what we read about a decentralized network? This is how blockchain functions in a decentralized manner.
Wallets
How do we know where our cryptocurrency goes after we make a transaction? It goes to a wallet. A wallet can be considered an address on the blockchain. Each node on the network has a virtual wallet that is made to function with blockchain technology. We use wallets to store cryptocurrencies and keys.
Keys
Each wallet has two cryptographic keys: a public key and a private key. In the case of sending a transaction, both the public and private key are included in the transaction data. Public keys are used to send an encrypted message to another public key — it’s like mailing a letter from one address to another. However, the message can only be decrypted by the corresponding private key. For example, Joe sends one Bitcoin to Adam using Adam’s public key address as the destination, but only Adam can extract the money using his private key. This makes sending transactions simple, secure, and effective.
Hashes
A hash is a shortened version of data. It’s like creating a code name. We can input something very large in size and data like a movie, and create a shortened name for it. Hashes allow us to encode information, and keep it secure and concise. Hashing data plays a key part in the function of the blockchain.
For example:
My name, Anneka Tracey, in a type of hash called SHA-256 is…cabf06b0e944d98395cdfd335206be63c4ea0b9b46f705795326d8e5cd302444
Poetic, right? Though hashes are created by inputting data, it’s impossible to determine the data by looking at the hash. Similarly, if any piece of data in the input is altered or edited in any way, the hash will be completely different. Every hash is unique. Therefore, we can be sure a block hasn’t been tampered with — if the data is changed, the hash will become invalid.
To recap, nodes are the users on the network. Each user has their own wallet that keeps track of their cryptocurrencies and public and private keys. Hashes correspond to data and are handy when you don’t want to reveal the true value of something, and when you want to make sure that it hasn’t been tampered with.
The blockchain does one thing: it replaces third-party trust with mathematical proof that something happened. — Adam Draper
Blockchain architecture
A blockchain works by linking together pieces of information, or blocks, using code.
It functions in a linear and chronological fashion, so that recent blocks are added to the front of the chain.
Each block contains data, the hash of the block, and the hash of the previous block, hence creating the chain. There’s a couple other pieces of information that are contained within a block, but for now I’ll go over these three.
When a block contains the hash of the previous block, we would consider them linked. This makes it easy to detect changes and prevent fraud— if the data changes, the hash will change and therefore invalidate the hashes on all subsequent blocks.
How is a block added to the chain?
When a new block is added to the chain, it is broadcast to all the nodes on the network. All users of the blockchain system independently hold their own copy of the blockchain, and the current known “state” is calculated by processing each new block in order as it appears in the blockchain. This is how blockchains continue to be current — everyone has the same version of the blockchain at the same time.
We haven’t talked about how nodes are able to trust each other, and therefore the network as a whole. Determining trust often boils down to proving identity (authentication) and proving permissions (authorization). But how do we verify that potential blocks are real and trustworthy, before we add them to the chain? And how do nodes who don’t necessarily trust each other reach a consensus about what blocks to add?
Introducing the Byzantine General’s problem.
This is, quite literally, a problem that describes the challenges in reaching consensus between multiple entities that do not trust each other. How can users be sure that a pending block is real and trustworthy without even really knowing if the other nodes on the network are real and trustworthy? Furthermore, how would the network verify that transactions are valid without the use of a central authority like a bank? In a network with thousands of users, there is a high chance of some evil intent. What if the evil infiltrates and starts to add blocks that are malicious?
There are several solutions to the Byzantine General’s problem. These are also known as consensus mechanisms or protocols that allow the nodes to come to an agreement about which blocks to add to the network. I’ll go over two of the most commonly known mechanisms, but keep in mind there are a a number of them currently being implemented, and more variations being developed all the time.
Consensus mechanisms
- PoW (proof of work) — nodes on the network mine for the solution to a complex cryptographic puzzle. The nodes are called miners. The puzzles take a considerable amount of computational power and time to complete, and require special hardware. One miner is always the first to find the correct solution. They’ll verify the block, and then they’ll receive a cryptocurrency reward. Rewards give everyone in the network the incentive to participate in the process and to keep it running properly.
- PoS (proof of stake) — a node can validate blocks or transactions according to how much currency they hold. Nodes put stake in the form of cryptocurrency into the network in hopes of being selected to forge the next block. It allows validators to be elected. If they are chosen as validator, the node receives the transaction fees that are associated with the transactions in the block as a reward. Proof of stake incentivizes nodes to act with integrity, because upon false validation of transactions, the amount staked will be forfeited.
This is how blocks are added to the system. Once a block is verified, it’s broadcast to everyone on the network. Everyone has the same iteration of the blockchain, and everyone can see the history of it. Decentralized, immutable and current babyyyyy!
Perfect. Let’s recap. We’ve learned basic blockchain architecture, and we understand that blocks are interconnected. We also know that blocks have to be approved before they get added to the chain, and we can name two common protocols used to verify blocks — proof of work and proof of stake.
An exemplary transaction.
It’s a hot and sunny day and my friend Donya buys me an ice cream cone. I want to pay her back, but I don’t have have money in my bank account (typical). I do, however, have money in the form of cryptocurrency — Bitcoin. I decide to repay Donya in Bitcoin. Bitcoin runs on the blockchain, remember? So I go about transferring her 1 BTC. This transfer of 1 BTC would be considered our transaction. The transaction details (1 BTC), my public key address, as well as Donya’s public key address, are calculated to form a digital signature. Once the transaction is conducted, it goes into a mining pool. From there, transactions are authenticated and validated prior to being permanently added onto the blockchain.
How can it be applied?
There have been several exponential periods of growth in the area of cryptocurrency and blockchain, and I believe that its popularity will only increase with time. As the technology behind blockchain continues to accelerate and newer iterations continue to surpass what we know today, we could see blockchains being implemented in every area of life. The potential benefits of blockchain are more than just economic — the extend into political, social, and scientific domains. Because of its secure, distributed, efficient, and transparent qualities, blockchain has numerous possible real-world uses waiting to be put into action.
Education
Information like grades, credentials, assignments and personal records could all be stored on a blockchain for comprehensible and efficient education. Employers and teachers would easily be able to review a student’s performance, for the benefit of all parties.
Finance
Introducing DeFi (decentralized finance). Since blockchain is a cryptographically secure way of sending assets, a need for things like banks and financial institutions will diminish. Blockchain could disrupt several things in the finance industry, including:
- payment processing and money transfers
- personal banking
- insurance
- loans and credit
Smart property
We could keep track of ownership of tangible or intangible things on the blockchain using smart contracts.
Digital ID
With their personal details stored on a blockchain, users would easily be able to identify themselves and decide what parts of their data to reveal. Users would have full control over their personal information.
Voting
Blockchains could be used for voter registration and verification, and counting votes. Using electronic voting would greatly enhance fair and secure counting, and eliminate voter fraud. This is possibly one of the most important applications of blockchain.
Government
Blockchain is progressively becoming more and more of an institutional technology. Because it doesn’t rely on centralized trust and rather relies on verification through cryptography and code, it has tremendous potential to transform governments. Because much of what the government does is record-keeping, it could be applied in:
- distribution of benefits
- compliance
- supply chain traceability
Healthcare
Blockchain would provide hospitals with a secure platform to store and share data. A patient’s medical records could be easily accessible to doctors and institutions, and having a patient’s history readily available could even speed up diagnosis.
Music
Using a blockchain to organize ownership rights and royalty distribution would benefit artists and other people involved in the production fairly and transparently.
Our blockchain knowledge and its capacity to disrupt so many things is one of the reasons that I wouldn’t be surprised if we saw even more unconventional applications in the future. Think about some other areas we could implement this technology. Do you think it would be useful in your everyday life, or do you think we should just leave it as a platform for trading cryptocurrencies? Let me know in the comments — I’d love to hear your thoughts.
Conclusion
The internet today often compromises security and truth. We can find ways to maintain a safer and more veritable internet using the blockchain. Blockchain removes the power from intermediaries and hands it to the people actively using the network. It gives us the power to control our data and our privacy, and to ultimately control our information. It gives companies a way to smoothly create and collaborate, and it helps institutions to record, maintain, and process data, which in turn benefits EVERYONE.
Blockchain is still an emerging technology. New iterations are consistently appearing and developers work hard to ameliorate systems every day. We can count on seeing some pretty cool things in the near future involving blockchain. I believe blockchain has the capacity to revolutionize our internet and our society.
Congratulations on knowing more than you did ten minutes ago. Keep learning about blockchain and the world of emerging tech by immersing yourself in information — we have the whole internet at our fingers.
TL;DR
- blockchain is an emerging technology with vast potential
- blockchain is the technology underlying cryptocurrencies like Bitcoin
- blockchain is a distributed and decentralized ledger
- once a transaction is recorded on the blockchain and the blockchain has updated, then that transaction cannot be altered, making it immutable
- it negates the need for a third party, therefore there is no single point of failure
- every user on the network (called nodes) have the same version of the blockchain and work together to keep to network running
- every user on the blockchain has a wallet with corresponding public and private keys
- hashes are an encrypted version of data and are a key part of keeping the system secure
- all transactions occurring on a Blockchain are recorded there, so the transactions of any person using the network are public and completely transparent, even though they may be anonymous
- new blocks are verified using a consensus protocol like proof of work or proof of stake and then added to the end of the blockchain
- each block contains data, the hash of the block, and the hash of the previous block, hence creating a chain.
- blockchain’s unique and secure qualities give it capacity to be applied in many different areas such as healthcare, finance, and education.