make run
make test
- 生成随机区块
- header 的 hash 方法
- 验证区块头 hash
-
blockchain.go -- GetHeader() 增加 bc.lock.Lock() -- Height() 增加 bc.lock.RLock() -- addBlockWithoutValidation() 增加 bc.lock.Lock()
-
增加 txPool.go -- Add() -- Has() -- Len() -- Flush()
-
增加 txPool_test.go
-
server.go -- handleTransaction()
-
txPool.go -- NewTxMapSorter() FIFO的tx排序方法
-
txPool_test.go -- TestSortTransactions()
-
encoding.go 注册elliptic.P256()椭圆曲线的签名算法 -- Encode(tx *Transaction) -- Decode(tx *Transaction)
- rpc.go -- DefaultRPCDecodeFunc(rpc RPC) (*DecodedMessage, error) -- RPCProcessor interface{}
-
server.go -- processTransaction()
-
localTransfer.go -- Broadcast(payload []byte)
- server.go -- ServerOpts struct -- Server struct
- todo s.peerMap[peer.conn.RemoteAddr()] = peer