同样实现扩容,Rollup和Modular的区别
九龙槐哥撕
发表于 2022-12-13 17:35:33
374
0
0
+ n0 }; N% e! H, a2 Y% i
首先,二者的相同点是Rollup和模块化均采用链下处理交易数据的方式,通过提供加密证明来证明数据的可用性。
7 }- T h9 K8 v8 k; b
这样一样,可能会受到data withholding attacks。
K1 R: U1 N9 R$ r5 r& a" i! I% d
什么是data withholding attacks?# W. _# X9 H0 I' L, x
DWA攻击是指,当提议者发布新区块后,节点根据可用数据还原交易信息,并验证提议者发布的数据与节点还原出的数据是否相同。由于提议者只发布加密证明,不排除其隐藏或篡改数据,从而实现对交易发起攻击。
常见DWA攻击有四种:
Data Availability Committees: Pure Validium 通过提议者将交易数据存储在链下。 DAC离线记录链下数据的副本,在发生争议时使用。
信任假设:必须至少信任至少一位DAC成员。6 M1 d+ t% n! O0 E( j' u
Proof-of-stake data availability committees:( N) M" ^- O4 r* J- ?
验证者质押后在链下存储数据。 PoSDAC比DAC 更安全。 无需许可和无需信任,还有激励机制来鼓励诚实的行为。它一定程度解决了 DAC 的中心化风险的问题。
+ Q- Z3 k; A8 A
5/9 Data Availability Sampling(DAS):在 DAS 机制中,节点通过对小块多轮随机采样,以验证数据可用性。( Y/ _6 ~# G$ Y6 H( J
) Q7 l2 A0 L/ d, S5 w. H) ?- f
由于许多节点同时对块的不同部分进行采样,达到统计意义上对确定性以验证其可用性。5 S, [* Y' ]8 i2 r* l
DAS 不仅适用于轻客户端数据可用性,也广泛用于模块化 DA 方案。3 o) s* V% S7 y) h7 ]1 u
9 f# L0 O: P6 P) }0 N8 F) e
Data Availability Proofs:
将 DAS 与纠删码(erasure coding) 结合。由于 DAS 并没有验证全部的数据,区块提议者仍有可能实行DWA攻击。
8 ~$ {, t! Z: B) N* z. Q5 F/ Z
纠删编码是通过在数据本身上增加冗余数据,以此实现用更少的数据还原交易。6 G; Y" D3 v8 S& K8 F% @
0 M- m, L* r) Z' w) b& Z5 V( n
由于要求区块提议者发布的数据更少了,那么如果区块提议者想实施攻击,就需要保留至少 50% 的区块数据,而未使用纠删码时只需保留 1% 便可实施攻击。Celestia就是使用的DAS来保证安全性。3 I. }6 ?& Y# b; {
进一步研究纠删码后发现,它是一种允许通过添加冗余片段将数据集加倍的技术,可用于重建原始数据。
. v8 [8 E' W' s5 u6 |- _( {
Mustafa Al-Bassam 解释到,纠删码允许用户获取一个块,例如 1MB 大,然后将其“放大”到 2MB 大,其中额外的 1MB 是称为纠删码的特殊数据。 如果块中的任何字节丢失,用户可以通过代码轻松恢复这些字节。 Y% r1 T) i# V* z5 y
$ L: p) y! F3 A1 o2 j% W# J$ j
即使多达 1MB 的块丢失,您也可以恢复整个块。 u7 P2 A! U9 B9 u
: f L- p: ~8 x4 D1 w' t
相同的技术可以让计算机读取受损CD-ROM 中的数据。% t1 ^3 }8 ~! a2 [2 s) O
目前最常用的是 Reed-Solomon 编码。
+ P$ \' ^8 G& C5 g" j: k2 {
实现方式是,从 k 个信息块开始,构造相关的多项式,并在不同的 x 坐标处对其进行评估,以获得编码块。+ d5 F# y7 Q4 g$ _
- Y4 g7 Z# D* ]! T5 s1 Y
使用 RS 纠删码,随机采样丢失大块数据的可能性非常小。
成为第一个吐槽的人