KNOWARE  

Software for Education and Industry


Blockchain 101

Blockchain 101 is an interactive computer program that will give you an intrinsic understanding of blockchains.  No prior knowledge of blockchains, Bitcoins, banking, or computer science is assumed or required.  Blockchains were originally introduced in 1991 as a means to time stamp digital documents, much like a Notary Public time stamps paper documents. Then in 2009, Satoshi Nakamoto started using blockchains to create the crypto currency called Bitcoin and people started to recognize that blockchains could be used for all sorts of things beyond crypto currencies.

Why should I care about blockchains? 
Blockchains have the potential to revolutionize industries like banking, real estate transactions, automobile registration, medical records, and contracts.  Nobody knows exactly what the ramifications of this new technology will be, but it behooves everyone to have at least a basic understanding of what it is, even if they never intend to invest in Bitcoins. This program will give you a basic understanding of blockchains, hash functions, nonces, proof of work, bitcoin mining, and how blockchains may change your life in the future.

Here is the Table of Contents of the program... 


Blockchain 101

Table of Contents

             Chapter
            1.   Introduction
                        What is a blockchain?            
                        Why should I care about blockchains?
                        Where do I go from here?
                        Disclaimer
              
             2.  Centralized vs Decentralized Ledgers
                         Centralized Ledger
                         Decentralized Ledger
                         In summary   

             3.  Turning Ledgers into Blocks
                        Cryptography
                        Hash Function
                        Example of a very simple "hash function"
                        In Summary                     

             4.  Chaining Blocks Together
                       In Summary    
             
             5.  Proof of Work
                      Reason 1 to increase the time it takes to create a block 
                      Reason 2 to increase the time it takes to create a block
                      How the time to create a block is increased
                      Try being a miner
                      In Summary  

             6.  Further Reading
                      Smart Contracts
                      Useful Web Sites

             Index


Blockchain 101 is written in .html format so you can use your favorite internet browser to navigate through it using hyperlinks, bookmarks, and word searches.  Blockchain 101 requires no software installation on your computer.  Just double-click on the Table of Contents.html.

Following are some sample screens shots from Blockchain 101...


...part of Chapter 3.  Turning Ledgers into Blocks


.....In the previous Chapter 2 we saw how a decentralized system consists of a network of identical ledgers.


Now let's take a look at how those ledgers could be turned into blocks of data.  Assume everyone on our network started out with $100, then Bob makes a transaction, then Dick, then Jane as shown in Figure 1 below.


Figure 1.  Turning Ledgers into a Blocks

Turning
        ledgers into blocks



In the blocks, we will keep track of everyone's balance. Of course, the "wallet" software that drives the blockchain on each computer could hide everyone else's balances so that only the user's was visible.  But the information would be there in case we had to notify someone of an overdraft, or prohibit a withdrawal due to lack of funds, or settle a dispute. 


So instead of each person in the network having identical ledgers, they will now have a set of identical blocks on their computers representing transactions that have occurred as shown in Figure 2 below.



                                                                                                Figure 2.  Blocks representing transactions that have occurred on the network

Blocks at
        nodes of network


Now we need to chain the blocks together and to make them immutable (unable to be changed in the future).  To do that we will apply some cryptography........




...part of Chapter 4.  Chaining Blocks Together


.....Now our blocks will be chained together as shown in Figure 2 below because the hash of each block is dependent on the hash of the previous block:


Figure 2.  Three blocks chained together

Three blocks chained together

To test the integrity of our chain...
If Data 1 is changed, hash 1 will no longer be valid.
If hash 1 is recalculated to reflect the change in Data 1, hash 2 will no longer be valid.
If Data 2 is changed, hash 2 will no longer be valid.
If hash 2 is recalculated to reflect the change in Data 1 and Data 2, then hash 3 will no longer be valid, etc., etc.
If the position of any two blocks are interchanged, the chain will be broken as show in Figure 3 below because the hashes will not be correct..........
 

Hardware/Software Requirements:

Return to home page.
Go to order form.