type Block_Header struct {
Major_Version uint64 `json:"major_version"`
Minor_Version uint64 `json:"minor_version"`
Timestamp uint64 `json:"timestamp"`
Nonce uint32 `json:"nonce"` // TODO make nonce 32 byte array for infinite work capacity
ExtraNonce [32]byte `json:"-"`
Miner_TX transaction.Transaction `json:"miner_tx"` // has_one
}
Major_Version 和 Minor_Version 为版本信息;
Timestamp 为时间戳;
Nonce 参与 PoW 运算的随机数(相当于凭证);
ExtraNonce 如 Nonce 不够用,可使用此字段;
Miner_TX 即 Coinbase,由挖矿产生。
注意,不保存难度值。
PoW 或后续查阅区块的难度值,均可根据区块和链上数据计算出来。