Skip to content

akhilnadigatla/goblock

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

15 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

goblock

A basic blockchain prototype built with Golang.

A blockchain is a dynamic collection of records that are referred to as blocks. Each block is identified by a header, which consists of:

  • A timestamp
  • Transaction data
  • Transaction history
  • Hash value for the previous block in the chain

Therefore, a blockchain represents a distributed ledger of transactions that resides in public domain. This means that adding a new block requires significant work and permission of the keepers of this growing list.

This implementation uses the SHA-256 hashing algorithm to generate hash values for the blocks. A proof-of-work system is used to ensure mining blocks is sufficiently hard. Blocks are stored as key-value pairs on a database to ensure persistence.

About

A simple blockchain prototype

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages