项目实训第八周 区块链部分的性能优化

基于我自己的一篇论文给现在项目测试时候用的区块链网络进行了性能的优化。

将参与的账户根据活跃度划分,分为活跃账户与非活跃账户,对于活跃账户部分采用A3 MPT,对于非活跃账户采用之前的普通MPT,优化了活跃账户的性能。

1. 左侧:Activity Account R-B Hash Tree(活跃账户红黑哈希树)

  • 该结构维护当前区块 Block i 中的活跃账户列表。

  • 类似红黑树的结构(有红色/黑色节点)用于平衡性和查找效率。

  • 每个叶子节点存储一个活跃账户的地址和它在当前区块 block i 中的活跃信息,例如:

    • a3, blocki 表示地址 a3block i 中为活跃账户。

  • 上方小表格展示了活跃账户表格(Activity Account),例如:

    Address | Activity 0xd818...34 | 32 0xd981...65 | 31


2. 中间右侧:Word State Tree(Verkle Tree)

这部分是整个状态数据库的主结构,类似以太坊计划引入的 Verkle Trie,用于更高效地替代 Merkle Patricia Trie。

  • root 是整个状态树的根哈希。

  • 其下分为多个分支节点:

    • Verkle root:整个状态树的主干(普通账户等)

    • Activity Verkle Root:专门记录活跃账户的 Verkle 子树(即活跃账户状态结构)

  • 每个叶子节点如 Hash(a1), Hash(a3) 等代表具体账户地址的状态数据哈希。

  • 中间节点如 Hash AHash E 是 Verkle Tree 的中间节点,用于组合子节点哈希形成路径。


3. 状态更新流程(动态箭头说明)

  • 从红黑树 → 活跃账户 Verkle 子树:图中黑色箭头表示活跃账户在红黑树中被检测后,会触发状态树的更新

  • 活跃账户在 R-B Tree 中被标记(比如 a3, a4),它们的状态对应在 Verkle Tree 的 Hash(a3)Hash(a4) 中被更新,进而更新上层 Verkle 节点,最终影响 root 哈希。

  • 下一区块 Block i+1 将继承更新后的 root

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值