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)
Construct the blockchain system according to the following structure. The block has the following basic content:
- Index: the height of the current block
- Timestamp
- Previous Block Hash
- Current Block Hash
- Difficulty: The number of bits at the beginning of block hash
- Nonce: The random number used to calculate the block hash
- Merkle Root of transactions
- Data: Transactions