区块头定义位于libethcore\BlockHeader.h文件中,是一个非常简单的类,我们来看看它包含哪些重要数据:
h256 m_parentHash
父区块的hash
值,区块与区块之间的连接点h256 m_sha3Uncles
叔区块的hash
值- h256 m_stateRoot
区块状态树根的hash
值 h256 m_transactionsRoot
区块内交易树根的hash
值h256 m_receiptsRoot
区块内交易收据树根的hash
值int64_t m_number
区块高度u256 m_gasLimit
区块中交易的gas
总数的上限,由挖矿者设定u256 m_gasUsed
区块中所有交易所用的gas
总和,不能超过m_gasLimit
Address m_author
挖矿者的地址u256 m_difficulty
挖矿难度
关于
Merkle Patricia Trie
的说明详见:明明白白以太坊Merkle Patricia Trie