<100 subscribers

以太坊在12月3日完成Fusaka升级,小伙伴们已经明显感觉到 L2 手续费降低。
其实,Fusaka 升级是以太坊Blob数据发展路线Proto-Danksharding → PeerDAS → Full Danksharding上一个非常重要的时间节点,真正实现了 peerDAS(数据可用性采样)。
今天我们就来详细讲解一下 Fusaka 升级,以及PeerDAS是如何实现的。
PeerDAS是这次Fusaka升级最重要的一个方面。
以太坊的扩容路线中分片是非常重要的一部分。
其中,针对Layer2数据(以太坊Blob空间)的发展路线如前文所说,会沿着Proto-Danksharding-PeerDAS-Full Dankshardinng的方式进行。
坎昆升级中的EIP-4844实现了Proto-Danksharding,也就是Layer2的DA不再永久存储到Layer1,而是把它们放到Layer1上临时性的存储空间Blob里面。
而这次Fusaka升级中涉及到的EIP-7594实现了PeerDAS。真正实现了节点不需要完全下载和验证Blob数据,而是进行采样。
所以PeerDAS也就是Peer to Peer Data Availability Sampling点对点数据可用性采样的意思。
为什么只要采样就能确保Layer2上传到Layer1 Blob空间的DA没有问题呢?
首先我们要理解DA这个概念。所谓DA,要满足2个方面,分别是数据无误和数据完整(没有隐藏)。
要实现PeerDAS,其中主要是用到了纠删码技术(erasure coding)和KZG承诺(KZG commitment)。
KZG承诺是一个多项式。你可以把它想象成一条曲线,给你一个点,你就可以验证这个点在不在这条曲线上。(数据无误,没有被隐藏)
至于纠删码,你可以把它想象成把原来组成曲线的点延伸出更多的点(冗余备份)。
以太坊peerDAS是做了2倍的冗余备份。就算节点只下载验证其中部分数据,或者部分数据丢失了,只要全网节点的数据达到原来数据一样多的点(不需要都是原来数据,可以是原来数据+冗余数据),就可以推导出曲线,并计算和恢复所有数据。(数据可恢复)

在PeerDAS阶段,每个Blob有128KB数据。通过纠删码,每个Blob的数据被扩充到128*2=256KB。每个Blob的数据被切成128个column,不同类型的节点被要求下载和处理不同数量的column:
validator
质押≥32ETH的节点就是validator。validator是PeerDAS数据采样想针对的主要节点之一。
validator要下载和处理8个及以上的column数据。并且能力越强,承担的责任就越大。validator质押的ETH越多,要下载和验证的column数量就越多。
validator负责对proposer提议的区块进行验证。
其中针对Blob数据,validator通过采样8个以上column的数据,下载这些数据,进行KZG commitment计算来验证DA。采样的数据不可得或者验证失败时,validator就拒绝这个区块。
validator也是slash机制的对象。如果它们投票通过的区块(包括Blob)出现问题,它们质押的ETH就会被罚没。
它们也决定了区块的最终性。
validator是所有节点中数量比较多的存在。
PeerDAS实现后,validator对Blob数据的处理方式从下载和验证所有Blob数据变成采样+下载+处理一部分的Blob数据,相当于做了减负提效。
supernode
以太坊网络中有一类节点是supernode。它们的特点是财力雄厚,持有≥4,096个ETH。
supernode不需要质押ETH。但是当一个节点又是supernode,又是validator时,它就需要下载所有128个columnn的数据并保存大约18天(Blob数据不是永久存储)。
supernode和validator有交集,相交的这部分属于特殊的validator。它们是Blob数据有效性最后的一道保障。
现实世界中,supernode数量不多,因为资金和硬件门槛非常高。
PeerDAS实现后,对supernode的影响不大。
proposer
proposer属于validator。它们从validator中被随机选出,负责提议区块。
在The Merge之后,以太坊就开始上线“软PBS(proposer builder separation)”,并且大力推进proposer和builder,两种角色和它们各自权利义务的隔离。
区块由builder构建,builder来自市场中的各种参与者,它们互相竞争获得区块提议。builder要收集交易+生成KZG commitment+构建区块。每个Blob的数据一旦固定,生成的KZG commitment就是确定的。因为要生成KZG commiment,所以builder要下载完整的blob数据。以太坊把这类“重任务”外包给市场竞争。
而proposer只是提议选哪个block,具体来讲就是做计算,验证,签名,发布,仍然是轻任务。proposer的工作也不涉及到采样。
PeerDAS实现后,对proposer影响不大。
full node
full node不需要质押ETH。它们作为个体存在。
针对Blob数据,full node的任务就是随机下载4个column的数据。它们是真正的Blob DA冗余存储的来源。validator采样的Blob数据就来自full node。
针对非Blob数据,full node就是交易执行者,跑EVM,更新网络余额状态等。
PeerDAS实现后,full node只要随机下载4个column数据就可以了。
可以看到,PeerDAS让validator可以只采样和验证少量Blob数据,让full node可以只下载少量的Blob数据,同时也减轻了proposer的工作量。
通过PeerDAS,这些节点的硬件要求被降低。可以想象,就算Layer2上传更多的数据到以太坊Layer1 Blob,它们工作起来也能游刃有余。
测试网结果证明,增加以太坊测试网Layer1 Blob数量(总的Layer2测试网数据增加),对validator和full node的带宽要求上涨非常轻微,节点们的状态比较稳定。
这样就能确保小节点们可以参与以太坊网络,不会因为硬件门槛太高而被拒之门外,从而确保以太坊网络的去中心化。
接下来,问题就转变成了为什么只采样一小部分数据就可以确保Blob DA没问题呢?
从工程安全边界来讲,33%往往是攻击下限。
假设攻击者需要控制33%的Blob DA来进行攻击。假设有5个validator,每个validator采样验证8个分片(column)。5个validator都没检查出DA有问题的概率是(1-33%)^40=0.0000105%。
考虑到网络中有那么多validator,每个validator采样和验证2-5个分片,攻击者控制Blob DA不被发现的概率接近于0。
所以以太坊网络对于Blob数据可以大胆地采用peerDAS。
更何况网络中还有那么多full node在备份DA数据,还有supernode下载了完整的Blob数据。
就算数据丢失,只要全网能凑齐64个分片的数据,通过纠删码技术,就能恢复原始数据。网络安全性仍然得到保障。
最后做个总结。
以太坊Fusaka是一次非常重要的升级,尤其是实现了PeerDAS,为未来的Full Danksharding,完全的DAS和PBS打好了基础。
我们也看到以太坊在持续地做一些升级。以太坊节点无论是地理位置上还是节点差异上足够去中心化。PeerDAS让以太坊在扩容的同时延缓节点硬件门槛上升的速度。
以太坊的路线图在逐步推进。小编还是比较看好以太坊的。

以太坊在12月3日完成Fusaka升级,小伙伴们已经明显感觉到 L2 手续费降低。
其实,Fusaka 升级是以太坊Blob数据发展路线Proto-Danksharding → PeerDAS → Full Danksharding上一个非常重要的时间节点,真正实现了 peerDAS(数据可用性采样)。
今天我们就来详细讲解一下 Fusaka 升级,以及PeerDAS是如何实现的。
PeerDAS是这次Fusaka升级最重要的一个方面。
以太坊的扩容路线中分片是非常重要的一部分。
其中,针对Layer2数据(以太坊Blob空间)的发展路线如前文所说,会沿着Proto-Danksharding-PeerDAS-Full Dankshardinng的方式进行。
坎昆升级中的EIP-4844实现了Proto-Danksharding,也就是Layer2的DA不再永久存储到Layer1,而是把它们放到Layer1上临时性的存储空间Blob里面。
而这次Fusaka升级中涉及到的EIP-7594实现了PeerDAS。真正实现了节点不需要完全下载和验证Blob数据,而是进行采样。
所以PeerDAS也就是Peer to Peer Data Availability Sampling点对点数据可用性采样的意思。
为什么只要采样就能确保Layer2上传到Layer1 Blob空间的DA没有问题呢?
首先我们要理解DA这个概念。所谓DA,要满足2个方面,分别是数据无误和数据完整(没有隐藏)。
要实现PeerDAS,其中主要是用到了纠删码技术(erasure coding)和KZG承诺(KZG commitment)。
KZG承诺是一个多项式。你可以把它想象成一条曲线,给你一个点,你就可以验证这个点在不在这条曲线上。(数据无误,没有被隐藏)
至于纠删码,你可以把它想象成把原来组成曲线的点延伸出更多的点(冗余备份)。
以太坊peerDAS是做了2倍的冗余备份。就算节点只下载验证其中部分数据,或者部分数据丢失了,只要全网节点的数据达到原来数据一样多的点(不需要都是原来数据,可以是原来数据+冗余数据),就可以推导出曲线,并计算和恢复所有数据。(数据可恢复)

在PeerDAS阶段,每个Blob有128KB数据。通过纠删码,每个Blob的数据被扩充到128*2=256KB。每个Blob的数据被切成128个column,不同类型的节点被要求下载和处理不同数量的column:
validator
质押≥32ETH的节点就是validator。validator是PeerDAS数据采样想针对的主要节点之一。
validator要下载和处理8个及以上的column数据。并且能力越强,承担的责任就越大。validator质押的ETH越多,要下载和验证的column数量就越多。
validator负责对proposer提议的区块进行验证。
其中针对Blob数据,validator通过采样8个以上column的数据,下载这些数据,进行KZG commitment计算来验证DA。采样的数据不可得或者验证失败时,validator就拒绝这个区块。
validator也是slash机制的对象。如果它们投票通过的区块(包括Blob)出现问题,它们质押的ETH就会被罚没。
它们也决定了区块的最终性。
validator是所有节点中数量比较多的存在。
PeerDAS实现后,validator对Blob数据的处理方式从下载和验证所有Blob数据变成采样+下载+处理一部分的Blob数据,相当于做了减负提效。
supernode
以太坊网络中有一类节点是supernode。它们的特点是财力雄厚,持有≥4,096个ETH。
supernode不需要质押ETH。但是当一个节点又是supernode,又是validator时,它就需要下载所有128个columnn的数据并保存大约18天(Blob数据不是永久存储)。
supernode和validator有交集,相交的这部分属于特殊的validator。它们是Blob数据有效性最后的一道保障。
现实世界中,supernode数量不多,因为资金和硬件门槛非常高。
PeerDAS实现后,对supernode的影响不大。
proposer
proposer属于validator。它们从validator中被随机选出,负责提议区块。
在The Merge之后,以太坊就开始上线“软PBS(proposer builder separation)”,并且大力推进proposer和builder,两种角色和它们各自权利义务的隔离。
区块由builder构建,builder来自市场中的各种参与者,它们互相竞争获得区块提议。builder要收集交易+生成KZG commitment+构建区块。每个Blob的数据一旦固定,生成的KZG commitment就是确定的。因为要生成KZG commiment,所以builder要下载完整的blob数据。以太坊把这类“重任务”外包给市场竞争。
而proposer只是提议选哪个block,具体来讲就是做计算,验证,签名,发布,仍然是轻任务。proposer的工作也不涉及到采样。
PeerDAS实现后,对proposer影响不大。
full node
full node不需要质押ETH。它们作为个体存在。
针对Blob数据,full node的任务就是随机下载4个column的数据。它们是真正的Blob DA冗余存储的来源。validator采样的Blob数据就来自full node。
针对非Blob数据,full node就是交易执行者,跑EVM,更新网络余额状态等。
PeerDAS实现后,full node只要随机下载4个column数据就可以了。
可以看到,PeerDAS让validator可以只采样和验证少量Blob数据,让full node可以只下载少量的Blob数据,同时也减轻了proposer的工作量。
通过PeerDAS,这些节点的硬件要求被降低。可以想象,就算Layer2上传更多的数据到以太坊Layer1 Blob,它们工作起来也能游刃有余。
测试网结果证明,增加以太坊测试网Layer1 Blob数量(总的Layer2测试网数据增加),对validator和full node的带宽要求上涨非常轻微,节点们的状态比较稳定。
这样就能确保小节点们可以参与以太坊网络,不会因为硬件门槛太高而被拒之门外,从而确保以太坊网络的去中心化。
接下来,问题就转变成了为什么只采样一小部分数据就可以确保Blob DA没问题呢?
从工程安全边界来讲,33%往往是攻击下限。
假设攻击者需要控制33%的Blob DA来进行攻击。假设有5个validator,每个validator采样验证8个分片(column)。5个validator都没检查出DA有问题的概率是(1-33%)^40=0.0000105%。
考虑到网络中有那么多validator,每个validator采样和验证2-5个分片,攻击者控制Blob DA不被发现的概率接近于0。
所以以太坊网络对于Blob数据可以大胆地采用peerDAS。
更何况网络中还有那么多full node在备份DA数据,还有supernode下载了完整的Blob数据。
就算数据丢失,只要全网能凑齐64个分片的数据,通过纠删码技术,就能恢复原始数据。网络安全性仍然得到保障。
最后做个总结。
以太坊Fusaka是一次非常重要的升级,尤其是实现了PeerDAS,为未来的Full Danksharding,完全的DAS和PBS打好了基础。
我们也看到以太坊在持续地做一些升级。以太坊节点无论是地理位置上还是节点差异上足够去中心化。PeerDAS让以太坊在扩容的同时延缓节点硬件门槛上升的速度。
以太坊的路线图在逐步推进。小编还是比较看好以太坊的。
Share Dialog
Share Dialog
No comments yet