快速学习-以太坊中树结构

以太坊中树结构

  • 以太坊中所有的 merkel 树都是 MPT
  • 在一个区块的头部(block head)中,有三颗 MPT 的树根:
    • stateRoot
    • 状态树的树根
    • transactionRoot
    • 交易树的树根
    • receiptsRoot
    • 收据树的树根

在这里插入图片描述

  • 状态树(state trie)
    • 世界状态树,随时更新;它存储的键值对 (path, value) 可以表示为
    (sha3(ethereumAddress), rlp(ethereumAccount) )
    • 这里的 account 是4个元素构成的数组:[nonce, balance, storageRoot,
    codeHash]

  • 存储树(storage trie)
    • 存储树是保存所有合约数据的地方;每个合约账户都有一个独立隔离的存储空间

  • 交易树(transaction trie)
    • 每个区块都会有单独的交易树;它的路径(path)是rlp(transactionIndex),只有在挖矿时才能确定;一旦出块,不再更改

  • • 收据树(receipts trie)
    • 每个区块也有自己的收据树;路径也表示为 rlp(transactionIndex)

在这里插入图片描述

发布了2157 篇原创文章 · 获赞 2418 · 访问量 24万+

猜你喜欢

转载自blog.csdn.net/weixin_42528266/article/details/105537864
今日推荐