go-blockchain is a blockchain implementation in Golang.
- Build the underlying network transport layer(P2P).
- Add block scaffolding to realize data encoding, decoding and hash generation.
- A key pair is generated using an elliptic curve encryption algorithm and is used for signing and verifying signatures.
- Implement transaction handling with signing and verification to ensure secure and valid transactions within the blockchain.
- Block signing and verification, blockchain structure and storage, and block addition and validation functionality in a blockchain system.
- Added validator, block validation, and transaction validation.
- Adding Mutex Locks & Expanding Transaction Pool with Tests.
- The added RPC functionality includes processing decoded messages and broadcasting transactions.
- Change the encoding mode to protobuf
- Connect local server transport nodes, start the server, create a transaction every second, and create a block every five seconds.
- Reconstructing the transaction pool, adding block broadcasting
- impl VM basic (supporting basic arithmetic operations and stack manipulation)
- Implement virtual machine contract state transition
- Implements custom smart contract