当前位置: 首页 > news >正文

学习笔记《区块链技术与应用》ETH 第二天 状态树

账户地址到账户状态的映射
addr -> state
160 bits [ 40 16 0~f ] 40个16进制数表示

如何为账户构建merkle tree?

比特币系统基于交易总是newly的更新不需要全局查找
以太坊需要考虑查找,排序,更新等场景

数据结构:trie
在这里插入图片描述

Patricia tree 压缩前缀树

misunderstanding - 分歧
decentralization - 分散化
disintermediation - 去中心化
在这里插入图片描述
键值分布稀疏用Patricia tree效果更好。
在这里插入图片描述

21602^1602160 地址位数 及其稀疏 避免碰撞 账户冲突的概率比地球爆炸概率还小
MPT Merkle Patricia tree

状态树举例:
在这里插入图片描述
在这里插入图片描述
以太坊的结构是大的MPT包含小的MPT,每一个合约结构都是MPT


在这里插入图片描述
ParentHash 父节点 block hearder hash
UncleHash 叔叔 block header hash
Coinbase 矿工地址
Root 状态树根hash
TxHash 交易树根hash
ReceipHash 收集树
Bloom 根据收集树 高校查询 某种条件查询
Difficulty 挖矿难度
number 难度
GasLitmit 交易费
GasUsed 交易费相关
Time 产生时间
MixDigest
Nonce 猜的随机数 符合难度要求


在这里插入图片描述
transactions 交易列表
在这里插入图片描述
状态树中保存的k-v,k是地址,v是账户状态。
经过序列化RLP,Recursive Length Prefix。
protocol buffer 简称protobuf,是一个系列化库
nested array of bytes字节数组

http://www.lryc.cn/news/619007.html

相关文章:

  • 数据分析—双十一
  • B.10.02.3-分布式一致性:电商业务场景下的理论与工程实践
  • IDEA插件开发实践
  • 从阶段演进到智能跃迁:企业合同管理的发展与趋势
  • SynAdapt:通过合成连续思维链实现大语言模型的自适应推理
  • @Rancher简介部署使用 - Docker Compose
  • Spring MVC 处理请求的完整流程详解
  • 【Unity】Spine重新播放动画时会闪烁上次动画的残影
  • 秋招笔记-8.12
  • Tauri Qt孰优孰劣
  • 【Unity】Unity中ContentSizeFitter有时无法及时自适应大小问题解决
  • 终端安全检测和防御技术总结
  • Python初学者笔记第二十四期 -- (面向对象编程)
  • SpringBoot集成MyBatis的SQL拦截器
  • MES系统怎么实现数字化闭环与设备预测性维护?
  • SQL180 每类试卷得分前3名
  • 单例模式,动态代理,微服务原理
  • 大数据技术入门精讲(Hadoop+Spark)
  • 当机械臂装上「智能大脑」:Deepoc具身智能模型如何重构传统自动化​
  • JavaEE 初阶第十八期:叩开网络世界的大门(上)
  • 自己动手造个球平衡机器人
  • 13.深度学习——Minst手写数字识别
  • 【自动化运维神器Ansible】playbook文件内变量定义全流程解析
  • 实时域自适应检测SOTA方案RT-DATR,刷新多个跨域检测榜单!
  • wordpress数据库文件sql导入时出现#1253错误
  • Java数据结构之ArrayList
  • 嵌入式分享合集136
  • 移动端调用大模型详解
  • 关于淘宝双十一
  • 数据分析小白训练营:基于python编程语言的Numpy库介绍(第三方库)(上篇)