信标链由区块和不断递进的状态组成;区块被产出、签名、传遍网络,然后用于更新状态。下图展示了主要的相互关系:
- 实线表示聚合关系,虚线表示依赖关系。即发出箭头的部分是 聚合/依赖 于箭头所指向的内容的 -
此图基于以太坊 2.0 详述的 0.10.1 版所绘。与刚发布的 0.11.0 版本相比,上图描述的内容在计算 Domain 的部分有些微区别,但整体关系与前一版本一致。
创建一个新的区块
创建区块,要从当前的区块链顶部开始。
如果当前存在一条短的分叉链(例如,某个时隙因为其中的区块传播速度太慢而被跳过,导致不同验证者获得的最新区块有所区别),则由分叉选择算法,帮你选出 “最合适”(获得的验证者见证消息权重越大则越 “合适”)的区块链头。
以太坊二层扩容方案Fuel Labs获得150万美元融资,CoinFund领投:9月21日消息,Fuel Labs宣布获得150万美元融资,投资公司CoinFund领投,Fenbushi Capital、Origin Capital参投。据悉,Fuel Labs正在构建去中心化扩容解决方案Fuel optimistic Rollup,该解决方案利用第二层技术创建具有独特UTXO设计的非托管、抗审查和无需许可的平台。开发基于以太坊的协议是为了大幅降低高吞吐量价值转移交易的成本。Fuel用户无需注册就可以使用任何以太坊地址进行发送和接收,费用可以通过任何代币支付,而不仅仅是ETH。(Businesswire)[2021/9/21 23:41:13]
此外,即使某些 slot 被跳过(没有产生区块),状态仍会推进(但不执行任何操作)。
三箭资本CEO:长期非常看好以太坊、DeFi和加密资产:三箭资本(Three Arrows)创始人Su Zhu发推称,长期非常看好以太坊、币安、DeFi和加密资产。[2021/2/19 17:30:29]
BeaconBlockBody (“信标链区块区块体”)会包含所有需要被执行的操作(保证金存入、见证消息、验证者退出,等等)。这些操作会被用于改变状态、生成新的 BeaconState(“信标链状态”)。
时隙、父区块根、操作的根哈希(body root,区块体根)会作为 BeaconBlockHeader(“信标链区块区块头”)的组成元素被添加进状态。要注意的是,BeaconBlockHeader 组成元素之一的状态根是零(0x000…),因为状态不能递归包含自己的哈希,否则会出现死循环。
最终状态(带有上述 0x000… 值的状态)的根哈希被算出并加入区块,然后区块哈希得到 Block root(“区块根”)并跟链的 Domain 放在一起,经过签名后在网络中传播。Domain 的意义是防止区块被传播到其他主网或测试网上发生碰撞(collision)。
动态 | Etherscan 独立月活达500万 已验证7万个以太坊智能合约:以太坊区块浏览器Etherscan在邮件中表示,经过四年的发展之后,Etherscan目前的用户增长情况为:独立月活跃用户最多达到了500万,每月交付几十亿次接口调用,已验证超过7万个智能合约。Etherscan曾获得过DigitalCurrencyGroup的投资,是目前以太坊区块浏览器中最常用的一款。[2020/2/17]
执行状态转换
节点收到 SignedBeaconBlock (“经过签名的信标链区块”)后,要执行一些验证,包含:确认签名的有效性,及是否有对应父区块的状态(父区块由 parent root “父区块根” 指出)。
通过将状态时隙推进到区块所在时隙(可以是被跳过的时隙),然后执行 BeaconBlockBody 所包含的操作(比如保证金存入、见证消息、验证者退出等等),我们便可以更新状态。
动态 | 今日以太坊总交易额达309万ETH 日活跃用户近18万:根据amberdata.io数据显示,今日以太坊总交易额为309.37万ETH,较此前数据下降7.85%;日活跃用户量177138,用户活跃上升2.12%;新增合约12597个,较此前数据下降31.66%;平均交易费用为10.92GWEI,下降13.20%;通证代币交易总额为354417,较此前数据上升1.12%。[2019/5/9]
要注意的是,出现被跳过的时隙时,也会产生新的内部状态,并推进当前状态至下一个时隙,区别只是不会有其他附带的执行动作。
结果状态应该与区块生产者得到的状态相同,因此我们能通过计算新的 BeaconState(包含 0x000...)的哈希值,与收到的区块所记载的状态根进行校验。
BeaconBlockHeader*
信标链状态包含了四个区块基础组成信息中的三种 —— 时隙、父区块根哈希,和 BeaconBlockBody (即要执行的操作)的根哈希。
在计算内部状态时,最新的区块时隙要和最新的状态时隙要有所区别,因为如果出现被跳过的时隙,会使得最新的区块时隙和状态时隙不一致。比如,如果时隙 7 被跳过,则我们仍会以时隙 6 作为最新区块,父区块根和区块体根哈希都仍将指向时隙 6 的区块。
这几个元素作为一个集群,使用和 BeaconBlockHeader 相同的结构,不过使用的区块根状态永远为零(0x000...),因为状态不能递归包含自己的哈希;在图中表示为 “BeaconBlockHeader”。
这么做的好处是,我们可以轻易的计算出区块根的状态——通过计算状态的根哈希,然后创建区块头的副本并插入正确的根状态,最后计算整个区块头的哈希(这个值会与收到的区块的哈希值相同)。
链接的区块能增加信任
区块链的重要特征就是,它以系统性信任(经由算法达成的处理器多数)取代了原来个体间的信任(交易对手或第三方)。
系统性信任又可以通过以下几个特征描述:
1. 大量处理器(例如,公有链)—— 这些处理器去中心化程度越高,可信程度也越高。
2. 客户端多样性(例如,开发团队)—— 如果有多种客户端供使用者选择,就越能避免算法被集中掌控。
3. 开源 —— 既可以让公众检查算法,又可以进行分叉(如果大多数人都希望改变系统方向)。
将区块链接在一起也可以增强系统信任 —— 因为越早产出的区块,它具有的权重就越大。在一般的 分布式账本/分布式数据库 中,因为不需要系统性信任,所以不需要这种链接。
仅对最新区块发动 51% 攻击也许会成功,但是如果你想改动 100 个时隙之前的一个区块,则攻击者必须在这 100 个时隙都拥有控制着绝对多数的处理器(因此非常困难)。
对于短程的分叉攻击,整个网络可能会对 “哪条链才是主链” 产生疑惑 —— 例如,两个竞争的区块以不同的速度在网络中传播。
但好消息是,由于区块被链接在一起,因此真正的主链会更快被确认,而其他分叉链都不再有机会反客为主。
如此一来,安全性可以得到保证,系统也可从容允许验证者撤出自己的资金,不必担心 “无利害关系(nothing at stake)” 攻击。
原标题:科普 | 以太坊 2.0 信标链中的状态转换
原文链接:
https://sgryphon.wordpress.com/2020/03/17/eth-2-0-state-transition/作者: Sly Gryphon译者&校对: IAN LIU& 阿剑
纳斯达克已与区块链软件公司R3达成协议,开发可让金融机构创建自己的代币和数字资产市场的技术。R3成立于2014年,是Corda区块链背后的公司.
1900/1/1 0:00:00金色周刊是金色财经推出的一档每周区块链行业总结栏目,内容涵盖一周重点新闻、行情与合约数据、矿业信息、项目动态、技术进展等行业动态.
1900/1/1 0:00:00本文为金色财经记者于2020年1月的采访,今日再次推荐,使读者更加了解央行数字货币对民众生活的影响。未来的“钱”是怎样的?央行数字货币无疑是最受瞩目的存在.
1900/1/1 0:00:00金色财经 区块链4月19日讯 本周,中国人民银行主导开发的数字货币DC/EP已在中国农业银行开始内部测试,并开放了深圳、雄安、成都、苏州四个网点参与测试.
1900/1/1 0:00:00本周美国的一些居民陆续收到了美国国税局发放的1200美元救济金,很多人使用这些钱来购买加密货币.
1900/1/1 0:00:004月28日,开曼群岛立法议会在公报上公布了五项新法规,以管理加密货币业务,尤其是交易所。金色财经挖矿数据播报:ETH今日全网算力上涨2.45%:金色财经报道,据蜘蛛矿池数据显示: BTC全网算力.
1900/1/1 0:00:00