全面解析以太网2.0片与其他片链的差异
ETH 2.0的Merge阶段即将到来,官方预计约9月15日左右实现POW到POS的转换。 此次的POS转换与以往的公链分支中使用的方式不同,并不是采用在特定区块高度分支的方式,而是规定TTD,设置“难易度炸弹”。 TD都称为Total Terminal Difficulty,是过去所有块难度的总和。 当全网积累的开采难度值达到TTD时,ETH主网将启动“难度炸弹”。 “难易度炸弹”是进行以太坊难易度调整的后门函数。 以太坊的POW屏蔽时间不固定通过根据全网计算力的大小动态调整开采难度,将分块时间固定在大致范围内。 难度炸弹的部署是使用后门函数将开采难度调整到非常大的值,以便没有矿工可以通过开采难度生产区块正在推动矿工放弃POW。 POW - POS转换规定了TTD作为Merge发生的时间,而不是固定块的高度。 部分原因是避免实际上故意破坏Merge进程。
1.1分支音和可能的延期利空
社区关于ETH分支的争论主要集中在POW和POS哪个更符合区块链本身的定义和特性上也就是说,POS是否违背了区块链去中心化的精神,以及是否经得起检验。 但是,无论争论的结果如何,矿工集团、交易所集团、ETH大户等众多势力都在为各自的利益而进行投票。
可能延期利空是因为8月份Goerli测试网合并时出现了一些问题,这些问题没有影响测试网的合并。 但是在Merge这样影响以太网未来发展的重要事件中,小问题可能会推迟主网络的合并几个月。 另外,合并的延迟也相当于为POW分支创造了时间,增加了系统整体的混乱度。
如果最后真的实现了POS/POW分支,则有可能存在的是
- ETH POW链支链缺少预言机,DeFi失效;
-分支链中的中心化机构发行的资产,例如WBTC资产等,没有了实际价值的支撑
- ETH POW链缺少RPC接口,用户无法与ETH POW在链上进行交互; [ xy 002 ] [ xy001 ]-uni swap pow独立运行,因为AMM dex的定价与预言机无关但是,大多数DeFi货币都没有价值,所以将所有AltcoinPOW先换成ETH POW可以获得最大利润[ xy 002 ] [ xy001 ] -因为没有连接到ETH POW的RPC接口钓鱼攻击的频率增加。 黑客可能利用用户在RPC上授权、ID为1的TX,在POS链上展开重播攻击,骗取用户ETH 2.0主网络资产
-交易所是最大的受益者,ETHPOW的改变必须在交易所实现。 也就是说,交易所只要支持ETHPOW的买卖就可以取得交易手续费
- ETH POW生态的虚无也给了各个项目一个可乘之机、例如通过ETH POW链发行以ETH POW为抵押品的稳定货币;
- ETH主网上关于ETH的借出利率激增;
普通交易者在整个过程中能做的其实并不多最重要的是注意不要遭遇钓鱼攻击和重播攻击。
1.2 ETH 2.0的实现路线图
ETH 2.0从提出到开始运行经历了巨大的变化最初的ETH 2.0的设计(以下都称为Sharding 1.0 )实现了状态片。 状态砖可以简单理解为,将粗和尚网分解为多个子链,并将其命名为Shard1、Shard2 ……,每个Shard具有以太网主控的所有功能,具有独立的状态,独立处理每个交易,最后利用信标链整合所有子链,实现了状态片。 但在2020年,随着Rollup潜力的凸显以太坊变更其实现状态片的路线图,将数据片(以下称为Sharding 2.0 )作为ETH 2.0的最终目标。 数据片类似于模块化区块链,将以太网拆分为多个数据片,每个数据片连接到一个或多个Rollup,Rollup作为执行层,以太网是数据层和协议层的基础。
因此,当前的整个Sharding 2.0路线图大致分为三个部分:“合并”、“主动绘制”和“停止绘制”。
Merge预计9月15日发生,proto-Danksharding(EIP-4844 )预计两年内完成,danksharding的实现将在未来3-4年。 实现钉钉后,以太网TPS有望达到互联网水平,奠定了区块链APP应用的未来。
Harmony/Near片2.1 Harmony
Harmony平铺模式与ETH的Sharding 1.0版本非常相似,如果在ETH 2.0中路线图没有更改将来以太坊大师关于Sharding的形态机制将与Harmony基本一致。 Harmony利用信标链统一切片链的状态,不同的切片可以理解为同质化的子链,子链内部的交易由管理子链的验证者进行验证。 每个分片屏蔽分片后,必须将分片块的块标题存储在信标链中相应位置的块中。 这样,信标链块就可以存储所有分片的状态信息。 除了统一瓷砖链的状态之外、信标链执行的功能还包括为随机轮换每个片提供随机数的验证者和块建议者、记录每个片的BLS聚合签名以及验证者的状态。
信标链建立块建议者以及每个块对应的委员会方案通过随机数实现。 块提议者负责块的提议,负责其片的委员会在片内部达成FBFT的共识然后在确认后将协议上载到信标链。 (FBFT协议是指选择一个领导节点,领导节点收集其他验证者的签名,因此通信的复杂度为o(n ),容易迅速达成协议)。
-块提议者在所属的Slot中提议块,将其块标题信息传播给其他验证者;
-验证者收到消息后,确认该块头并附加自己的签名,表示该块提议者接受该块提议;
-这些签名被聚集到块提议者,并被计算合成为一个BLS聚合签名;
-块提议者将BLS签名发送给验证者,如果BLS签名包含2/3以上的验证者的权重验证者验证块内的交易,验证完成后附加自己的签名,表示交易验证完成,将签名发送给块提案人;
-区块提议者收集BLS签名,当BLS签名超过2/3的权重时确认其区块,将该块和所有BLS签名广播给所有验证者,区块链上的Slot成功屏蔽;
-当片链上的Slot被阻止时中选择所需的族。 此块标题信息以及生成此块时每个验证者的BLS聚合签名记录在与信标链相对应的Slot中。 另外,其他的片也接收该片的块标题信息,记录在块中,以促进片间交易的验证;
一旦所有区块被阻塞,相应位置的信标块将收集所有块标题信息、BLS聚合签名和所有验证者的状态,并将这些信息打包在信标链块中。 但是,这个过程中存在着砖链分块和信标链分块的协同性问题。 由于区块链过多,信标链无法在短时间内收集所有区块链的报头信息,可能发生块丢失。 为了解决这方面的问题、Harmony从两个方面给出了解决方法:一是用FBFT共识代替PBFT快速实现片块内共识; 二是利用高性能节点快速协同信标链块和砖链块信息。 Harmony的问题其实是所有瓷砖链都面临的问题,对于这个问题,Near和ETH 2.0分别给出了自己的答案。
Harmony与ETH 2.0的Sharding 1.0版本在结构上略有相似,但具有与ETH 2.0不同的特点,具体包括
-验证者担保的货币随机分配给不同的瓷砖。 也就是说,发起攻击的人无法将货币集中在某个瓷砖上
-验证者的当铺获得的奖励与当铺货币的数量和线性无关,而是具有凹陷性也就是说,边际担保收益减少的
-新入驻的节点能够通过Hashlink连接各Epoch的Checkpoint,实现迅速的状态同步;
-片间交易时可以绕过信标链直接进行片链间交易; [ xy 002 ] [ xy001 ] 2.2 near [ xy 002 ] [ xy001 ] near一直以来都将瓷砖作为这条公共链的特色但是,到目前为止,Near还没有实现类似于Harmony的状态片。 Near在体系结构上也与Harmony这样的以信标链为协调中枢的分片结构不同。 Near的瓷砖集中在一个块内,分割整个块,分为不同的Chunk。 Chunk实际上也可以认为是瓷砖。
Near的逐步切片过程处于以下阶段。
- 2021年第4季度实现简单朴素阴影,将Near的块空间分为4个Chunk;
- 2022年第一、第二季度在Near生态中部署只做产品;
- 2022年第3季度用Nightshade实际实现切片;
- 2022年第4季度实现动态切片。 即,根据容量需求动态调整Chunks的尺寸;
以上概念可能存在疑问实际上,直到2022年第3季度Near的Nightshade被执行之前,Near没有实现状态片,状态片的执行是逐渐推进的。 在Simple Nightshade阶段,您只需平铺块空间但交易的确定和验证与其他第1层pos公共链相差不大,验证者同时处理所有交易。 2022年第二季度,Near引入了新的角色“- “Chunk-Only-Producer”,它本质上还是验证者,但作用范围仅限于单个分片内,用于专门验证每个Chunk内的交易。 在这个阶段,Near生态总共有两种验证者,第一种是可以发出块的高性能验证者、负责合并所有Chunk块,汇总成整个块,跟踪所有片的状态,进行交易验证; 第二个是仅限于瓷砖内的Chunk-Only-Producer负责瓷砖内Chunk的屏蔽及Chunk内交易的验证。 由于第二类验证者对节点性能要求不高,Near雄链可以在单链生产水平上实现一定程度的中心化但是,仍然需要高性能的第二类验证者负责大块的生成。 第三阶段Near执行发光阴影。 此时,Near真正实现了状态片。
状态分片的实现意味着每个分片都可以被视为“链”。 此分片上的事务由负责该分片的Chunk-Only-Producer验证。 进一步减少验证者节点的性能要求,Near使用纠错编码技术处理Chunk中的数据,而不选择广播Chunk中的所有数据。 如果直接广播Chunk上的所有数据,删除修复技术可能会在性能较低的块节点上发生丢包验证节点只需接受Chunk的碎片信息,减轻了节点的性能负担。 删截是对数据的冗长处理方法,将整个数据处理为n部分,需要恢复数据时只需要其中的任意f部分。 在播放某Chunk数据的过程中,Chunk数据被冗余处理,各验证节点随机获取修改删除码。 当大多数验证节点从所有片内的Chunk数据中收到修改删除码时,这些节点将开始协商投票,汇总各节点手中的Chunk修改删除数据段,恢复原Chunk,按分片顺序排列所有Chunk,建立Near的主块,进行聚合签名。
Near用于解决验证者网络中心化问题的纠错编码技术目前用于许多协议或公共链,ETH 2.0的Danksharding也同样使用纠错编码技术来进行非中心化验证和可扩展的有效
ETH 2.0基本机制3.1客户端变化
Merge表示信标链与当前以太网主控的集成,以太网将“无感”转换为POS “麻木不仁”主要针对用户但是,对于矿工和验证者节点来说,为了POS转换,需要进行客户端级别的更改。
就像模块化区块链进行执行和协议分离一样,在Merge之后,以太网客户端也进行执行和协议分离。 POW阶段的以太网客户端称为ETH 1.0,包括采掘、POW共识、交易验证、内存事务池等多种功能。 但是,在共识机制转移到POS之后、ETH 1.0 Client的采掘以及POW共识相关的部分全部被废止,剩下的部分作为执行客户端继续在以太网上运行。 共识层由共识客户负责,也称为eth 2.0客户端,在信标链节点上运行,主要负责达成POS协议。 共识客户端和执行客户端集成在一起,构成Merge后的以太网客户端。 两者之间的连接通过API实现,并通过JWT私钥进行验证。
一致客户端和执行客户端可以分离,验证者可以只运行执行客户端并将一致客户端托管在信标节点上,也可以在同一台计算机上同时运行执行客户端和一致客户端
如下表所示,运行客户端不是高性能的,消费级电脑就可以了。
POW封锁是通过解决散列问题实现的,当净计算力动态变化时,封锁时间也会动态变化。 但是,POS是指定区块的人各块的时间间隔是固定的。 在Merge之后,以太网将6.4分钟作为一个Epoch,总共32个Slot,因此每个Slot应该为12s,理想情况下每个Slot都有一个块。
信标节点需要通过RANDAO和VDF建立每个Slot的验证者委员会和块建议者,一个Epoch选择32个建议者和32个验证者委员会。 每个Slot应该有一个块如果没有,表示方框提案人没有履行自己的义务,ETH的一部分将被处罚。 根据泊松分布,考虑块有可能丢失块的情况,块的生成时间平均约为13s。
[ xy001 ]举个简单的例子来说明如何理解randao和VDF。RANDAO是一种生成随机数的方式,班上有10名同学,老师想随机选择一名学生进行奖励。 老师给出的选择方法是,所有同学同时给出一个随机数,老师把得到的10个随机数相加,最后得到的数字对10求馀数,剩下的数字是要选的同学。 但是,从上述RANDAO的执行过程中其实可以发现一个问题。 如果某个同学作弊后,9个同学出现随机数,可以根据9个同学出现的随机数信息,选择对自己最有利的数字把最后的结果指向自己。 因此,RANDAO的有效运用需要引入反欺诈机制。 也就是说,需要用一定的方法保证所有人同时做出回答。 VDF也很有用。 VDF都称为可验证的延迟函数中选择所需的族。 这个函数的重要特征是得到结果的计算过程不能并行计算,也就是不能加速。 但在得到结果后,验证该结果的计算量非常小。 VDF由散列函数实现,散列函数计算慢、验证快的特性也与VDF的性质一致。
VDF的具体实现过程比较复杂,但有简单的理解方式。 f(x )=((x ) )2) . )2) xy002 ) xy001 )上述函数的)不是简单的算术表示),而是某种复杂的函数。 要计算f(x )的值,必须进行多次串行运算。 当一次的计算时间确定时,由于该函数的计算所需的时间是一定的,因此也解决了RANDAO可能存在的非法问题。
研究特定的VDF算法维持VDF计算时间的稳定性对ETH 2.0网络的稳定非常重要。 Ethereum Foundation曾经与Filecoin合作开发了ASIC化的VDF算法。 稳定的ASIC算法可将VDF计算时间限制为102分钟。
3.3 Gasper FFG和LMD GHOST
Gasper FFG在ETH 2.0中主要实现区块的最终确定性,而LMD GHOST根据分支选择规则,选择某个区块访问当前链。 这两个机制都以投票的形式达成共识。 每个验证者在验证块时必须在信标链上提供三条信息。 区块内交易的签名确认、Gasper FFG投票、LMD GHOST投票。 上传以确认每个验证者的签名是在验证者提供了错误的证明之后、上传信标链签名,作为惩罚其验证者ETH的证据。
Gasper FFG投票是每个Epoch中的所有验证者都必须参加的投票,一个Epoch只投一次票的作用是建立此Epoch和上一个Epoch的检查点。 Checkpoint是指每个Epoch中的第一个块。 由于块信息的传输有时会来不及,不同的验证者观察到的Epoch中的第一个块可能不同。 因此,Gasper FFG投票的本质是统一这种可能存在的信息差异,确定每个Epoch的Checkpoint。
当前Epoch结束时,具有2/3以上权重的验证者背书了该Epoch的某个块另外,如果认为是该Epoch的Checkpoint,并对上一个Epoch的Checkpoint进行了投票,则可以认为上一个Epoch块已经达到了最终确定并且,该Epoch的块被定义为Justification的状态,可以被解释为最终确定。 因此,以太体实现Merge后,其块最终确定的时间反而变长,至少为6.4分钟最多12.8分钟。 在Merge之前,以太体的最终确定性是通过最长的链原则实现的,可以在6个块中确定最长的链,因此最终确定时间大约只需要1分钟。 但是,实际上POW的最终确定和POS的最终确定性存在一定的差异。 POS达到最终确定性的时间很长,但一旦达到就无法回滚。 对于POW来说,达成最终确定的区块有永远回滚的风险。
LMD GHOST也称为分支选择规则,各Slot内的验证者需要根据权重选择当前Slot连接到主链的区块,LMD GHOST投票也解决了区块确认中存在的信息差异问题。 举一个简单的例子,在Slot 1的位置生成块a,在Slot 2的位置生成块b,但是由于信息传递延迟,极小部分的Slot 2的验证者没有接收到块b生成的信息因此,错误地将区域a视为Slot 2对应位置的区域,此时区域b获得了最多的票数,因此在Slot 2的位置连接到主链。
3.4 ETH通货膨胀率、GAS、TPS的变化
以太网主网络转为销售点后,每年ETH产量大幅下降,而且EIP-1559继续丢弃ETH,因此ETH有望从通货膨胀转为通货紧缩。 但是,Merge后的以太网主控的GAS和TPS没有明显的变化。 由于封锁时间固定为12s,因此与POW阶段12-30s的浮动封锁时间相比,单位时间内能够容纳的交易变多近年来,TPS增加。 由于TPS的增加,以太网运营商并不那么拥堵,因此Basegas Fee略有下降,每单交易的价格更便宜。 总体上Merge对ETH流通量的影响远大于对GAS和TPS的影响。 TPS和GAS的革命性调整必须等到钉钉的落地。
[ xy001 ] 3.5 proto-danksharding [ xy 002 ] [ xy001 ] proto-danksharding也称为EIP-4844提案,主要内容是在以太体块中引入Blob交易格式。 EIP-4844的建议是为以太坊彻底实现钉钉做准备,并不是在以太坊进行分片,验证者节点需要下载所有数据进行验证。在目前阶段,以太体的块大小由Gas容量决定,实施EIP-4844后,Blob的数量成为决定块大小的另一个维度。 Blob是二维数据结构,大小约为128 KB。 以太网模块对可容纳在各模块中的Blob设置限制,目标Blob数为8,最大为16。 因此,每个块将增加1-2 MB的存储容量。 Blob主要用于存储第2层数据,之前数据的保存是用Calldata进行的,但一个块内的Calldata的容量只有约10 KB。 这意味着部署Blob后,块中可用于存储的空间将至少增加100倍。 但是,由于单位空间内的Calldata和Blob的信息密度不同,Blob空间比Calldata大100倍,但实际能够收容的交易数量有可能达不到100倍。 Blob数据大中选择所需的族。 每个块至少引入1 MB的Blob数据,每月添加数TB的数据。 为了解决数据量快速增长的问题,将脱机保存每月生成的Blob数据。
EIP-1559是对块大小调整的建议,调整了块内可以容纳的Gas量,设定了目标Gas和最大Gas量。 在块内Gas量高于目标Gas的情况下、每笔交易的基础Gas费用上涨12.5%,产生的基础Gas费用将被放弃。 (基础Gas费用被取消的理由是为了防止矿工恶意发送垃圾交易堵塞ETH网络获得高额手续费)。。 EIP-4844也调整了块大小。 如果Blob的数量超过8,下一块的基本Gas费用将上升,产生的基本Gas费用也将同样被丢弃。 EIP-1559和EIP-4844的集成为以太网数据块大小和Gas速率引入了更动态的调整机制。 [ xy 002 ] [ xy 001 ] 3.6 danksharding [ xy 002 ]
“中心化块、去中心化验证”是对以太体未来形态的v神构想,该构想有机会通过PBS、Crlist及DAS变为现实。
PBS的全名“Proposer-Builder- Separation”,即构建块时的块提议者和块构筑者的分离。 其核心思想是在系统中引入Builder的作用(Builder必须是高性能验证者),Proposer提出分隔,Builder竞争交易排序权计算分隔标题,Proposer根据Builder的计算结果对交易进行打包,将块头写入块中完成块。
PBS的引入主要是为了解决以下四个问题。
- ETH 2.0面临的MEV问题: Proposer负责打包交易和交易排序,能够以其特殊身份获取MEV;
-分片和信标链的同步问题: Sharding 1.0的构想是64条分片链在12s的时间内被分块,验证的块头信息、签名、验证器的状态、交联等数据被发送到信标链。 如果整个过程变得复杂,就有可能发生块泄漏。 (桥接是Crosslink,每个分片块与信标链块桥接,以便于分片之间的通信。)。
-验证者子集分离的安全问题: Sharding 1.0的64个片中的每个片在一个Epoch的时间被划分为32个Slot,每个Slot需要一个委员会来进行投票验证。 因此,原始的验证者组被分割为(64 ) x32的验证者子集,每个验证者子集需要负责生成和验证一个Slot内块;
-能否抗中心化检阅的议题
以上,说明了Harmony对于信标链和区块链的协同问题的解决方法,其核心思想是利用FBFT迅速达成协议和迅速进行高性能节点的区块化。 该解决方案的缺点是无法解决检查对策的问题、没有考虑MEV、验证者网络保持分离。 Danksharding解决协同问题的方式也是基于中心化的方式,但可以考虑到上述问题。 与Sharding 1.0相比,每12s选择64个宣传者和委员会,负责所有瓷砖和信标链的封锁和封锁验证,Danksharding每12s只选择一个Proposer、一个Builder和一个委员会。 信标链和所有瓷砖的分隔由Proposer提出,由1个Builder构成,由一个委员会验证。 由于所有的封锁信息最后只被汇总到1个Proposer中,所以信标链和砖链的封锁可以同步进行。 另外,原本64个委员会的子集在Danksharding后被集中在一起,可以解决验证者子集过于分散的问题。
Proposer和Builder共同承担所有块的构建任务但是,为了保证Proposer的去中心化,无法处理高性能计算的问题。 因此,高性能计算任务也交给了Builder。 Builder在整个系统中所起的作用是“无情的计算机”主要原因是无法筛选交易,只能对Crlist中的交易进行排序和哈希计算。 Proposer在发布构建块的竞争任务时将发布Crlist此Crlist包含所有可以看到宣传者的交易,Builder在对交易进行排序时必须囊括此Crlist的所有交易,否则无法参与竞争。 因为Proposer是随机中心化的Builder只是对打包机器进行排序,对交易的筛选没有任何帮助,因此也保持了交易的可审查性。 针对
MEV的问题,通过使用PBSETH 2.0中的MEV流通路径可以归结为,在交易者向Builder请求租赁的- Builder竞争顺序权-市场化竞价下,Builder能够获得的追加利润与拍卖成本大致相同,Builder租金收益接近0 -收益由验证者网络获取。 最后的MEV收益由全网验证者共享,而不是流入个人钱包。 这个解决方法也很符合MEV的本质。 毕竟MEV是公共系统创造的额外利润,这部分公共收益应由维持网络运营的人共享。
数据可用性采样(DAS )是解决块链状态爆炸的有效方法。 状态爆发是指随着时间的推移以太网主控积累的过多的交易数据和账户历史余额数据节点负担过重,提高了验证节点的进入门槛,不利于验证者网络的扩展。 利用DAS技术,验证节点在同步和验证块数据时不需要下载所有数据,只需要下载块的一部分冗馀片段,如果需要块重建,则多个节点将协作。
但是,DAS在重建数据碎片时可能会出现一些问题。 大规模块的碎片重组需要高性能的处理器,违背了DAS低性能中心化要求的初衷。 因此,DAS需要不需要高性能节点的大块重构算法。 [ xy 002 ] [ xy001 ]钉钉的DAS采用RS代码和KZG多项式承诺。 大块数据利用RS先进行一维展开利用KZG多项式约定二维展开。 由于在二维展开中引入了很多一维,所以可以根据该维对冗馀数据进行分割,分成多个区域。 在需要块中某一部分的数据的情况下,拾取与该块对应的区域,重构该区域即可。 因为每个分区都可以单独重建,所以整个大块的重建以在不同分区中并行重建的模式进行,从而降低了对节点的重建数据的性能要求。
das可以并行处理块数据将来即使增加Sharding的数量,验证节点的性能负担也不会变得很大。 这部分的负担可以通过增加验证者的数量来解决,但Builder的性能还需要进一步提高。
4.0公链的终局?
Danksahrding通过PBS实现以太体中心化分块,通过DAS实现去中心化验证,以以太体为可扩展数据可用性基础,以太体未来APP链Rollup、智能合约平台Rollup等很多Rollup。 EIP-4844中Blob交易格式的引入也将大幅降低Rollup的成本。 由此看来,Danksharding实际上是在为模块化区块链的未来下注。 目前,许多公众链的主流选择仍然是共识和执行层的结合,钉钉模块化区块链剑走偏锋的选择正确与否有待于时间的考验