V神科普的“Danksharding”到底是什么?

北京时间2月14日情人节当晚,以太坊创始人Vitalik Buterin联合以太坊基金会(EF)研究人员Dankrad Feist一起举办了一场关于扩容解决方案“Danksharding”的教育研讨会,如果你想了解区块链如何在增加“去中心化”和“安全性”属性的同时大规模实现扩容,那么这场研讨会就是一个好的切入点。

注:关于“Danksharding”对以太坊的意义,建议读者先阅读一下《一文了解以太坊的“扩容杀手锏”danksharding》这篇文章。

以下内容来自Dankrad Feist提供的《Dude, what’s the Danksharding situation??》PPT,如果你想观看完整的研讨会视频,可以访问以太坊基金会的官方youtube频道?。

1、什么是旧的:

(1)数据分片;

(2)使用KZG 承诺的数据可用性;

(3)使用分离分片方案进行原始数据分片;

2、什么是新的:

(1)提议者-构建者(数据生成者)分离 (PBS);

(2)crList;

(3)2D方案;

V神:ETH在2018年就应该进行类似NXT的基于链的PoS:金色财经报道,以太坊开发者Evan Van Ness在社交媒体上称,Merge应该更早就开始,过去的十天就是我们应该更早合并的证据。

对此,以太坊联合创始人Vitalik Buterin回复称,我同意,尽管存在短程重组问题和缺乏异步保证,但我们应该实现类似NXT的基于链的PoS,并在2018年完成。[2022/9/26 7:20:33]

(4)建议的架构

3、总结优点和缺点

数据分片

为Rollup和其他扩容解决方案提供数据可用性(DA);

数据的含义由应用层定义;

以太坊基础共识(全节点和验证者)除了确保数据可用外不承担任何责任;

为什么没有执行分片?与原生执行相比,rollup二层网络的效率要高100 倍,很难看出执行分片会有什么需求;

目标:提供约 1.3 MB/s 的数据可用性层和完整的分片功能(目前最大数据容量的10倍,平常容量的200倍);

自2019年底以来,数据分片一直是以太坊的目标;

数据可用性采样(DA sampling)

想知道通过 O(1) 工作获得的O(n) 数据是可用的;

思路:将数据分布到 n 个chunk分块中;

V神:在eth2和EIP 1559实施前,“满足健全货币信仰”是不可能发生的:V神今晨发推特称,关于“供应门”为何重要的问题,我听过的最好的论据是,如果ETH社区没有努力建立便利函数来计算总供应量,那意味着我们不太在乎“健全的货币信仰(the sound money religion)”,而您想要一种货币。我认为在eth2和EIP 1559发行时间表实施并证明其可持续性之前,“满足健全货币信仰”是不可能发生的。因此无论如何我们都必须耐心等待几年。您会发现,许多以太坊人已经完全融入eth2之后的经济体系,尽管与此同时一些其他出色的团队已经制作出供应量计算脚本。此前消息,比特币咨询公司Bitcoin Advisory创始人Pierre Rochard表示,将发布赏金计划、寻求更多供应脚本计算ETH总供应量。[2020/8/11]

每个节点下载 k 个(随机选择的)chunk分块;

纠删码(Erasure coding)

使用?Reed-Solomon 编码(多项式插值)扩展数据;

V神:我最糟糕的预测之一就是认为CSW退出后BCH开发会改善:8月4日午间,V神在推特回复网友时表示,不理解BCH团队的人为什么那么在意难度调整算法的细节。与此同时,V神还称,很诚实地说,乐观地认为在CSW退出后,BCH的开发会得到改善,这绝对是我最糟糕的预测之一。[2020/8/4]

例如,在编码率 r=0.5 时,这意味着任何 50% 的区块(d0 到 e4)都足以重建整个数据;

现在采样变得高效(例如,查询30个随机区块,如果全部可用,超过 50%不可用的概率为2 ^ (-30))

但是,我们需要确保编码是正确的;

KZG承诺(KZG Commitments)

承诺 C(f)

评估 y = f(z)

证明者可以计算证明 π(f,z)

使用C(f), π(f,z), y 以及 z,验证者可以确认f(z) = y

C(f)以及 π(f,z) 是一个椭圆曲线元素(每个48 字节)

KZG 承诺作为数据可用性根

声音 | V神:短期内需并行开发区块链第1层和第2层协议:12月26日,以太坊创始人V神在其个人网站发文探讨区块链协议分层相关问题称,“保持第1层功能简单,在第2层上加以弥补”并不是解决区块链可扩展性和功能性问题的普遍答案,因为它没有考虑到第1层本身必须为此具有足够的可扩展性和功能性,才能实现这种“基于顶层的构建”(除非所谓的“第二层协议”只是可信的中介)。但是,在一定程度上,任何第1层的功能都可以复制到第2层,而且在很多情况下,这是一个好想法,这样做可以提高可升级性。因此,短期内需要第1层( layer 1)开发与第2层 (layer 2)开发并行进行,从长远来看,需要更多地关注第2层。[2019/12/27]

将“KZG 根”想象成类似于 Merkle 根的东西;

不同之处在于“KZG 根”承诺了一个“多项式”(所有点都保证在同一个多项式上,而Merkle根不能保证这一点);

分离分片提案

提议者-构建者(数据生成者)分离 (PBS)

被发明用来对抗 MEV 导致的中心化趋势;

MEV意味着更成熟的参与者可以比普通验证者提取更多的价值,这对大型矿池而言意味着优势;

动态 | V神在深圳大学分享以太坊生态现状及发展:今日,V神在深圳大学向以太坊爱好者和大学生介绍、普及以太坊的生态现状和发展。V神在分享会中介绍了比特币、区块链的起源,PoW和PoS共识机制,Casper FFG,零知识证明,区块链和以太坊的应用,从简单的支付、域名、数字化资产(例如用于活动售票、纪念产品等)再到进一步的Token、智能合约、域名等,票、纪念产品等),再到进一步的Token、智能合约、域名等。

此外,V神还就Sharding分片技术以及Plasma、Rollup以及状态通道Channels等可扩展性技术做了介绍。V神表示,Plasma作为侧链和子链技术很早就被提出,其中Rollup更像一个内部媒介交互工具,其可以将部分链上数据压缩至最低10字节,所以在节省了区块空间的情况下间接增强了可扩展性。[2019/9/23]

PBS 在一个独立的角色中“包含”了这种复杂性/中心化,并具有诚实的少数假设;

提议者(Proposer)= 验证者,诚实的多数假设意味着高度的去中心化要求;

数据生成者(Builder)= 单独的角色,诚实的少数假设,意味着去中心化只需要确保一个诚实(非审查)的数据生成者;

审查阻力方案 – crList

PBS的危险之处:一个高效的构建者(Builder)可以(以一定的经济成本)永久审查一些交易;

[注:在今天的贿赂模型中, 审查一笔交易的成本是永久贿赂所有提议人而不将这笔交易纳入的成本;]

crLists允许提议者指定构建者必须包含的tx列表,从而恢复旧的平衡;

crList(“混合 PBS”设计)

KZG 2d 方案

为什么不在 KZG 承诺中编码所有内容?

需要一个超级节点(“构建者”)来构建和重建以防失败的情况;

我们希望避免这种假设的有效性;

目标:在 d 个KZG 承诺中编码 m 个分片 blob;

如果我们天真地去这样做,那就需要m * k个样本,这样数据就太多了;

相反,我们可以再次使用 Reed-Solomon编码将 m 个承诺扩展到 2* m 个承诺;

KZG 2d 方案属性

所有样本都可以直接根据承诺进行验证(没有欺诈证明!);

恒定数量的样本确保概率数据可用性;

如果 75%+1 的样本可用:

所有数据都可用;

它可以从只观察行和列的验证器中重构;

不需要节点观察所有的情况;

执行区块和分片区块是一起构建的;

我们以前需要分片委员会,因为每个分片 blob可能无法单独使用;

现在,数据生成者的责任是使执行区块有效,并且所有分片 blob 都可用;

? 验证可以是聚合的;

Danksharding 诚实多数验证

每个验证者选择 s = 2 随机行和列;

仅证明分配的行/列是否可用于整个epoch时期;

一个不可用的区块(<75% 可用)不能获得超过 2^(-2s) = 1/16 的证明;

Danksharding 重构

每个验证者都应该重构他们遇到的任何不完整的行/列;

这样做时,他们应该将丢失的样本转移到正交线;

每个验证器可以在行/列之间传输4个缺失的样本(大约 55,000 个在线验证器可保证完全重构)

Danksharding DA 采样(恶意多数安全)

未来升级

每个全节点检查方块矩阵上的 75 个随机样本;

这确保了不可用区块通过的概率< 2 ^(-30);

带宽 75*512 B / 16s = 2.5 kb/s;

优点

简单的设计:

不需要分片委员会基础设施;

不需要跟踪分片 blob 确认;

没有额外的构建者基础设施(来自执行层的同步支付取代了这一点)

可以使用现有的执行层费用市场基础设施;

执行链和分片之间的紧密耦合:

使得rollup设计更简单;

zkRollup 和执行链之间的同步调用是可能的;

分片不需要单独的 PBS;

随着数据立即被验证者集的 1/32(而不是旧分片方案中的 1/2048)确认,并在一个epoch时期内增加到完整的验证者集,抗贿赂的能力增强了;

得益于2d方案,全节点(无需运行验证器)将能通过75 个样本(2.5 kb/s)确保数据可用性,而不是 30*64=1920 个样本(60 kb/s);

新的挑战

增加了数据生成者要求:

构建32MB数据的KZG证明(需要100核,但目前正在研究CPU实现)

需要2.5 GBit/s的互联网连接来分发样本;

为数据生成者提供了更多权力,因为他们充当了执行+数据层服务提供商;

需要通过crList缓解;

郑重声明: 本文版权归原作者所有, 转载文章仅为传播更多信息之目的, 如作者信息标记有误, 请第一时间联系我们修改或删除, 多谢。

银河链

狗狗币价格Coindesk:BitANT让比特币变的更好

十二年前,Laszlo Hanyecz 用 10,000 比特币买了两个披萨。今天,这些比特币价值 3.4 亿美元,从 5 月 22 日(他做出决定性购买的那一天)开始,就被称为比特币披萨日。比特币是其自身成功的受害者.

[0:109ms0-1:274ms