Skip to content

A blockchain application used to teach students the fundamentals of blockchain.

Notifications You must be signed in to change notification settings

blockchainpsu/diy-blockchain

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

26 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Blockchain Logo

DIY Blockchain App

In this application you will gain an understanding of the technology that makes bitcoin and other cryptocurrencies so popular and secure.

If you do not know what blockchain is, I recommend checking out the links in the resources section before attempting this project, or give just it a shot, up to you.

Contents

Overview

This is an introductory blockchain application to teach you about blockchain, cryptocurrencies, and the other technologies behind the hype. You will use mathematical hash functions to create private and public keys for the transactions. You will also use the same hash functions to both verify and mine blocks. The hashing will lead to immutable blocks within the chain. At the end of the project you will have your very own fully functioning blockchain application!

Setup

To begin we must install everything necessary

  1. Download Git. This is a useful tool for version control and general programming. You can ensure that everything installed correctly by running git --version in the terminal. It would be useful to familiarize yourself within this environment.
  2. Download Node.js. We will use npm to test our application. You can ensure that everything installed correctly by running node -v and npm -v in the terminal.
  3. Download an IDE that you like. We recommend Visual Studio Code
  4. Clone the repository (click the green code button and copy the link) then in your terminal execute the command git clone (link) you can paste the link in with control + v.
  5. Change directories into your newly cloned repo with cd diy-blockchain\blockchain-app and then install the dependecies with npm install.

If you have any issue installing anything, google it. Google is a source of infinite knowledge.

Resources

These will be useful to understand the theory behind what you will be doing in this project. Below are links to contact our organization, feel free to message us in the slack or shoot us an email with any questions!

Links

Brief Explanation

Blockchain on the most basic level is a way to store information. It is similar to a linked list in the sense that they both store information and the blocks point to each other.

A blockchain (for our use) will store the transactions between people. Each block will house a number of transactions and will be connected with the chain via the previous blocks' hash. The first block, the genesis block, has no previous hash, but all subsequent blocks will reference the hash of the prior block. This is one of the many reasons why the structure is very secure. If you change the hash of one block (the content stored within the block) all of the blocks down the chain will change too.

If any of that sounded like nonsense, I recommend looking at the resources listed above. If you already checked them out, maybe watch them again, or do some reseach further on your own, again, Google is a source of infinite knowledge.

Time to get into the project!

Navigate to the blockchain-app folder above, or click the link to get into the project!

About

A blockchain application used to teach students the fundamentals of blockchain.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published