以太坊的基本理解
文章目录
- 概述
- 一、以太坊账户和地址
- 二、以太坊区块结构
概述
以太坊=“区块链 2.0”
- 在“区块链 1.0”(比特币)只能做点对点转账的基础上,以太坊新增了可编程的图灵完备层,允许你把业务逻辑写成“链上程序”运行。
1.用户在去中心化应用发起交易时写入(from to value等),广播出去,那其他节点就会验证交易并放入交易池并向邻居继续广播,旷工节点验证放入交易池,紧接着跟比特币不一样的地方出现了。
^
2.通过质押32ETH加入到验证者注册表(最活跃,有钱),随机选举出一个验证者称为旷工,旷工节点会拿着上一个区块的世界状态树,也可以理解为每增加一个区块,世界状态树都会发生变化,也相当于每个旷工节点有拥有这个世界状态树的副本,旷工节点就知道每个要修改的账户所在的叶子节点,把多个交易通过EVM进行账户修改,每一次修改都会沿着树枝一直往上到根节点重新算出一个新的stateRoot,直到最后一个账户修改完之后生成的成新的stateRoot就是最终的根节点。 (理解为参考着世界状态树,去算每个交易的路径到根哈希,实际上区块中只包含交易列表树和交易回执树)
^
3.然后旷工节点打包成区块,广播出去,其他节点会拿着这个区块的根哈希跟交易列表参考着自己本地的世界状态树重新计算修改的交易到根哈希是否与区块的根哈希是否一致,验证无误后会更区块并状态树也会更新为最新状态,此时已上链生成交易回执,但不代表交易完成,需要后面继续追加12个区块,代表着已完