Hi 游客

更多精彩,请登录!

比特池塘 区块链前沿 正文
在这篇文章中,我们基于欺诈证明(Fraud Proof)和有效性证明(Validity Proof)之间的区别,分析和比较各种2层(L2)可扩展性解决方案。我们认为,有效性证明拥有根本性优势,因为它确保只有正确的状态转换才会被接受。
- ~8 g( O( J' w! g3 X+ l* o1 y, C3 g9 O7 ?" d/ M
背景
2 X" D. c3 Z6 m# r7 t8 ?8 ]! n7 Q
最近几个月出现了几个旨在解决以太坊可扩展性问题的项目(诸如Truebit,Gluon Plasma,dFusion,Roll-Up和Ignis等),它们都是基于证明的。基本的想法很简单:不用将很多交易写入区块链,而是生成一个证明(proof),用这些交易的某些简洁表示(例如哈希)来代表新的状态。$ K# T( ^: P' ~6 v0 }/ s

5 R  g/ n, i. V3 V1 l上述提到的项目都是L2解决方案:它们定义了一个在1层(L1)上运行的协议(和逻辑),依靠它来提供各种服务,如存款/取款,确认链下状态的分类账以及作为“通用时钟”使用。重要的是,L1不了解L2的逻辑,因此也不能执行任何L2逻辑。$ S* W' D* j- ]( T  \* f9 d" C

5 p" \. O; [. U我们想提出一个比较这些解决方案的框架,特别关注欺诈证明与有效性证明之间的区别。从本质上说,欺诈证明和有效性证明都可以存在于L1中,但目前的尝试以及我们的分析都把关注点放在了L2上。
5 _8 o& U5 h1 V- ?9 V# }
7 S( h2 j! H% @3 Q0 M- l  M% E3 z欺诈证明提出证据,表明状态转换是不正确的。它们反映了对世界的乐观看法:假设区块代表L2数据的正确状态,直到被证明不是这样。但实际上,一个已提交的区块可能包含错误的状态转换。
+ s. U1 q0 F; e  F1 K7 b+ D- s
$ T* }( l2 [) N2 V3 N有效性证明则提出证据,表明状态转换是正确的。它们反映了对世界更悲观的看法。区块只有在状态是正确的时候,才会将代表L2状态的数值包含在内。7 S- {. J- C7 V% v
5 b( O! l: X& V5 A/ y; O! u( v
值得强调的是:使用证明系统(例如SNARK,STARK)时有两种形式:欺诈证明和有效性证明。人们不应该将我们如何证明(例如SNARK,STARK)与我们证明了什么(欺诈或有效性)混淆起来。
' j2 T0 I/ O4 B: L2 ^4 [9 P
" X; T  ]; o0 E, @更深入的探讨
* |+ m/ C* y, e  ], x# h5 e2 U' o8 k: u6 ]
欺诈证明
& Y$ t  {+ w0 K/ h( }/ f
5 O6 x7 ]- ~1 f" v9 o欺诈证明的主要优势是,并不是每次状态转换都需要它们。因此,它们需要较少的计算资源,并且更适合可扩展性受限的环境。这些协议的主要缺点源于它们的交互性:它们定义了一个多方之间的“对话”。对话要求当事方—— 特别是声称有欺诈的一方 ——在线(活跃),并允许其他方通过各种方式中断对话。但问题的核心在于协议将沉默(即没有对新状态发起挑战)解释为默认的同意。实际上,攻击者可能会尝试使用DDoS攻击来产生沉默的假象。
( v* d4 D; f* u0 ?3 c9 l" p+ K0 G
0 }3 H4 T5 J/ z9 t/ w4 V7 f让我们描述一下概念协议:由于区块可能包含不正确的状态转换,因此欺诈证明协议允许在一个时间范围 ——争议时间段(Dispute Time Frame,DTF)—— 对此错误状态提出异议。该时间窗口以区块为单位进行衡量。如果在DTF内未提交欺诈证据,则认为L2状态转换是正确的。如果欺诈证明被提交给智能合约,并且被发现是正确的(即,在DTF内提交,并且确实证明了状态转换是错误的),则至少会导致智能合约恢复到上一次正确的L2状态。其他措施,例如对违规方进行处罚,也可能会执行。
) M8 T  k1 D) D# s8 C" D. k" h$ w7 V9 u9 X0 \% c5 s
DTF持续时间的不同选择会带来这样的结果:它越长,检测到错误状态转换的概率就越高——这是好的一面。但是,时间越长,用户必须等待的时间也会越长,例如,提取资金——这是不好的一面。
: W3 P! p+ n/ \& M8 G
3 {* P2 g+ ~1 \! ?8 }. M2 b有效性证明
# @- c; t/ t" a0 Z2 g! m9 \. _" a6 E
有效性证明相比之下就简单很多了:一些离线计算的代表形式被发送到智能合约。只有在验证为正确后,智能合约才会使用这个新的数值更新区块链。有效性证明的主要优点是区块链将始终反映正确的L2状态,可以立即使用新的状态。主要缺点是,每次状态转换都需要证明,而不仅仅是在这种转换受到争议时,这会影响可扩展性。
% x5 ^0 s( H/ Y( X, Q: P2 X, Z* P/ B9 N& T
51%Attacks
8 q4 \: I% p" y. v# Y: p
1 j- ~" u  u9 C) l! H在众多可能的攻击中,我们这里主要关注L1上的51%攻击。我们最近看到这种攻击事件不断发生,包括对以太坊经典的攻击。欺诈证明和有效性证明如何抵御此类攻击呢?
" Z) h( u( C$ Q+ |
  v" d6 \4 }7 ?. v1 f6 ?欺诈证明:51%攻击允许攻击者将区块链引入欺诈状态,例如,从被攻击的交易所中窃取资金。$ V: W8 S9 `7 r  H
% N7 Y$ P9 Z; d5 y; d
· 攻击者使用欺诈性状态转换创建BlockFr。例如,这包括将交易所中的所有资金转移到他们自己的账户。
( d' K4 i" j- F3 H! X/ R7 ]) D
" T4 z4 p$ O8 a·在BlockFr之上,他们将添加DTF区块,最终形成一个区块,其中包括取出BlockFr中授予的全部资金。
1 z2 Y& g0 L+ g' l. V" V
& U- G9 S  p  O& ?$ X·然后,他们继续将链扩展到DTF以外,以及当前的链以外。他们有能力这样做,因为他们控制了51%的哈希值。+ T3 T6 j" ~+ n4 ~9 t. V: q
# c8 L& E  }# Q: ]8 ^* Q# n
·发动这种攻击的成本(目前非常低,对发动以太坊攻击的成本低于10万美元/小时)与获得潜在收益(即受到攻击的交易所控制的资金)无关。但随着加密交易所中交易活动的增加,它们更加有可能成为这种攻击的目标。  z9 i/ y. s5 ?9 Q) w" E1 u
  r0 I6 X0 h" ~3 Q) ]7 c5 W0 Q
总而言之,根本问题在于,L2解决方案定义了自己的逻辑,允许包含欺诈状态转换的区块。攻击者偷走资金后的分类帐状态仍然是合法的状态!没有发生双重支付,但是发生了欺诈行为。8 C( j9 ^  E9 e# P7 z

7 K# y( Z; b/ i6 L有效性证明:51%攻击只能逆转记录的历史,并可能提供新的历史记录;重要的是,这个替代历史也是正确的。可在此处执行的攻击范围仅限于L1可能发生的攻击。在币币交易所中(特别是当所有的交易资产都驻留在同一区块链上时),逆转记录有时可能是一个暴利的举动:例如,卖方可能会很乐于去逆转一个事后才发现是最低价的交易,但是在一个加密资产存放在给定区块链的交易所中,没有任何手段可以去直接盗窃加密资产。
, B: T( `' X; p& n; G0 g- r
7 W) S2 ~7 U' y' f提议的解决方案- V9 T: P7 e# _- D7 c
1 k" e* U! Z7 |. G; P
鉴于这些明显的缺点,为什么很多项目(例如Gluon Plasma和dFusion)还是要使用欺诈证明呢?主要原因是有效性证明过于昂贵和繁琐。! d3 q3 h; ^. b" v+ l( Z6 o6 m7 R  Z9 k1 t

2 r  [: g, N* M3 ?) F% q在使用证明系统之前,在一个无需许可的系统中,“有效性证明”涉及原生重放(native replay),因此极大地限制了可扩展性;本质上,当前这种重放在L1上仍在进行,大家已经了解其对可扩展性的限制。证明系统提供了一个非常吸引人的特点,称为简洁性:为了验证状态转换,只需要验证证明,这样做所需的成本实际上与状态转换的大小无关(更确切地说,它是状态转变大小的多对数函数)。
. ~, ^, [0 U. g* j6 H$ ?2 q5 J" R& o+ I, w9 o
Ignis / Roll-Up都依赖于需要可信设置的SNARK,而它比STARK需要更多的证明计算资源。 StarkWare正在努力部署StarkDEX(DEX的可扩展性解决方案),它将使用STARK来实现有效性证明。
2 r, E! [& m$ ^# W2 B2 c% y7 u. i& z2 ~( A, Z( E
结论
) I* F5 j% h: i- p5 F6 ~" I; d- w5 @& E9 Z' i5 x# q
我们强调了有效性证明在51%攻击方面的固有优势。凭借其快速的验证时间,简洁的验证和无信任的设置,STARK将是生产级有效性证明的有力手段。
BitMere.com 比特池塘系信息发布平台,比特池塘仅提供信息存储空间服务。
声明:该文观点仅代表作者本人,本文不代表比特池塘立场,且不构成建议,请谨慎对待。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

成为第一个吐槽的人

真无牙泛 初中生
  • 粉丝

    1

  • 关注

    0

  • 主题

    26