Skip to content

A dynamic difficulty PoW blockchain system in Python + gRPC + MongoDB

Notifications You must be signed in to change notification settings

Myohannn/PoW_Blockchain_System

Repository files navigation

Dynamic-difficulty Proof-of-Work Blockchain System

This project is an implementation of the Proof of Work (PoW) blockchain system developed in Python 3.9 along with gRPC-python and MongoDB. It can help beginners to have an in-depth understanding on how the blockchain system works. You will be able to play around with some basic blockchain features including "Blockchain Prototype Construction", " Mining Process", "Transaction", "Consensus Network", and "Data Storage".

Basic Features

  • Blockchain Prototype
  • Dynamic-difficulty Proof-of-Work Algorithm
  • Transaction
  • Network (gRPC-python)
  • Storage (MongoDB)

Features Explanations

Blockchain Prototype

Construct the blockchain system according to the following structure. The block has the following basic content:

  1. Index: the height of the current block
  2. Timestamp
  3. Previous Block Hash
  4. Current Block Hash
  5. Difficulty: The number of bits at the beginning of block hash
  6. Nonce: The random number used to calculate the block hash
  7. Merkle Root of transactions
  8. Data: Transactions

Dynamic-difficulty Proof-of-Work Algorithm

Transaction

Network

Storage

About

A dynamic difficulty PoW blockchain system in Python + gRPC + MongoDB

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages