Ep. 8 [Bitcoin Full-Nodes]: Verifying pending Bitcoin-Transactions

Note:
Gain a fundamental understanding of Cryptocurrency in an easy way. Before continue reading the story, I recommend to take a couple of minutes and read through the prior article again in order to refresh your present knowledge. The more often you read through the story, the more confident you will get with the technology behind cryptocurrencies like Bitcoin. Take your time, to understand cryptocurrencies, as a Steemian it's worth it.
If something in the story is not clear to you, don’t hesitate to ask. There are several people who might have the same question. So shoot me a comment, if something is unclear. Me and other readers will appreciate it!
So in the last article we came to the conclusion that all participants in the Bitcoin-Network must agree on one version of the record-book(=Blockchain) which keeps all Bitcoin-Transactions recorded. This is important to make sure, that all participants together agree who holds how much Bitcoins at any time.
Before answering the question „How the participants agree on one version of the book?“, we must first understand „why every participant can hold his own version of the Transaction-Book, which he can edit.
Therefore we need to go a step back and get a better understanding of the participants in the Bitcoin-Network. So back in article 2.1 ‚Bitcoin Mining‘ we saw that Alice joined the Bitcoin-Park(=Bitcoin-Network). In order to join the Bitcoin-Park, she had to download a free Bitcoin-Software. So after downloading, Alice is now a participant in the Bitcoin-Park. We mentioned that there are several things participants like Alice can do in the Bitcoin-Park. It is like in a real amusement park, where participants can join the rollercoaster, the auto-scooter or a magic-show etc. In article 2.1 ‚Bitcoin Mining‘ we got to know one of these attractions in Bitcoin. It was the mathematical-contest in which Alice participated as a Miner. We learned that this attraction is the "Bitcoin-Mining“ in the real word.

So the first attraction or „role“ in the Bitcoin-Network is: Bitcoin-Miner. In genreal there are two more roles which participants like Alice can take.
These roles are:
- „Full-Node“
- „Bitcoin-Wallet“
Now I want to start take a more detailed look on the „Full-Node“-role of a Bitcoin-Participant. Lets start with our analogy here.
In article 2.1 the Bitcoin-participant ‚Alice‘ decided to take the role as a „Bitcoin-Miner“ and hence participated in a Mathematical-Contest in order to win a reward in Bitcoins.

Now there is another person joining the Bitcoin-Park, lets call him „Flint“. Flint joined the Bitcoin-Park, but unlike Alice he decided to be a „Full-Node“.

So Flint decided to be a „Full-Node“ in the Bitcoin-Park(=Bitcoin Network). What is the role of a „Full-Node“ in the Bitcoin-Network?
Each Full-Node checks if pending Bitcoin-Transactions, which other participants initiated, are legitimate and can therefore be executed.
In order to be able to check Bitcoin-Transactions for correctness, a Full-Node needs two things:
- A Transaction-Book(=Blockchain) with all the prior Bitcoin-Transactions.
- A List with pending Bitcoin-Transactions which other participants sent.
Lets start with the 1st point:
"1. A Transaction-Book(=Blockchain) with all the prior Bitcoin-Transactions."
How does Flint(=Full-Node) get a copy of the Transaction-Book?
Well, when Flint joined the Bitcoin-Park as a Full-Node, he got the first page of the Transaction-Book at the entrance from the Bitcoin-Software. This first page is the first block in the Blockchain. It contains all the executed transactions on the 1st Boat(=1st Block).

On this first page(= 1st Block) there was only one Bitcoin-Transaction recorded. That transaction is the payout of the mining-reward to the winner of the 1st mathematical contest in the Bitcoin-Network.
In this very beginning of Bitcoin there were no many participants in the That explains why the first pages (first Blocks) of the Transaction-Book(=Blockchain) are quite empty.
This is the 1st-Page in the real world:

Check for yourself on the web:
Link: https://blockchain.info/block/00000000839a8e6886ab5951d76f411475428afc90947ee320161bbf18eb6048
Don’t get distracted by all the information. I highlighted the important information with a circle. Just focus on these.
So this is the 1st Page of the Transaction-Book, the 1st Blog! That 1st-Page was included in the free Bitcoin-Software which Flint downloaded before. Now Flint must fill his Blockchain-copy with the rest of the pages(=Blocks). But how does he get the rest? Well Flint gets copies of the other pages(=Blocks) from existing Full-Nodes in the Bitcoin-Park.
But first of all Flint must build a connection with the other nodes in the order to request copies of the Book-Pages. How does he do that? Well basically when Flint downloaded the Bitcoin-Software, the Bitcoin-Program provided him some contact-information of existing Bitcoin-Nodes in the Bitcoin-Park. Flint makes use of these contacts and start connection with the other Full-Nodes. Furthermore he asks them for their contacts so he can build connections with even more Full-Nodes.
This is the first thing Flint does as a Full-Node:
- He builds connections to already existing Full-Nodes in the Bitcoin-Network

Now as Flint is fully connected with other Full-Nodes, he can start ask them to send copies of the remaining Book-Pages to him. How? In the next article we will continue the journey of Flint as a Full-Node.
Summary:
- There are 3 roles which Bitcoin-Participants can take when entering the Bitcoin-Network:
- Bitcoin-Miner ( see Articles 2.1)
- Full-Node (this article)
- Bitcoin-Wallet
- Each Full-Node verifies pending Bitcoin-Transactions and checks them for correctness.
- Therefore the Full-Node(=Flint) needs a copy of the current Transaction-Book with all prior Bitcoin-Transactions recorded.
- The first page of this Transaction-Book is included in the download of the Bitcoin-Software.
- The following pages(=Blocks) of the Transaction-Book(=Blockchain) must be requested from other Full-Nodes in the Bitcoin-Network.
- Therefore the Bitcoin-Software provides the new Full-Node with contact informations of other Full-Nodes so the new Full-Node can start connecting with them.
Congratulations @manonlescaut! You have completed some achievement on Steemit and have been rewarded with new badge(s) :
Click on any badge to view your own Board of Honor on SteemitBoard.
For more information about SteemitBoard, click here
If you no longer want to receive notifications, reply to this comment with the word
STOP
Congratulations @manonlescaut! You have completed some achievement on Steemit and have been rewarded with new badge(s) :
Click on any badge to view your own Board of Honor on SteemitBoard.
For more information about SteemitBoard, click here
If you no longer want to receive notifications, reply to this comment with the word
STOP