原作者|?VitalikButerin
本文目的在于阐述在eth1链和eth2链之间建立
双向桥接的一些挑战(例如,支持ETH的双向转换),以及如何实现。
Eth2提案中已经包含eth1->eth2的
单向桥接,这对能够把Eth1中的ETH抵押到eth2中是必要的。这种单向桥接通过eth1数据投票机制来实现。请注意,
该机制
假设大多数的PoS验证者是诚实的,同时PoW链没有受到攻击(具体来说,就是PoW链中回滚不会超过5个小时)。如果这两个假设中的任一假设失败,那么eth1和eth2这两条链将不再彼此“一致”。其中一开始便存在一条隐式的“社会合约”,即
美国总统当选人拜登任命前CFTC主席Gary Gensler为SEC主席:美国总统当选人拜登周一任命前美国商品期货交易委员会(CFTC)主席Gary Gensler为其选择的美国证券交易委员会(SEC)主席。据悉。Gensle是一位对加密货币领域进行了深入研究的华尔街资深人士。此外,拜登政府还宣布任命Rohit Chopra为消费者金融保护局局长,Chopra此前曾公开批评了Facebook主导的加密货币项目Libra(已更名为Diem)。(coindesk)[2021/1/19 16:28:21]
如果发生任何一种意外都有补救措施,很可能通过PoS链的软分叉来补救;然而也有可能如果PoW链回滚确实超过5个小时,那么社区可能会达成攻击链无效的共识。需要注意的是,不管在哪种情况下,PoS链的故障是不可能需要PoW链进行软分叉的。
大和证券和Digital Garage合作建立1.1亿美元基金 用于投资区块链等新技术公司:11月5日,Digital Garage和日本投资证券巨头大和证券宣布,将合作建立价值约125亿日元(约合1.1亿美元)的基金。该基金将用于投资拥有下一代技术优势的新兴公司,如以区块链,人工智能(AI)和生物技术领域的技术为目标的国内外初创公司。两家公司合作创立的DG Daiwa Ventures公司将符合管理该基金。(日经新闻)[2020/11/5 11:41:13]
而如果我们希望eth1链知道eth2的状态,有两种方法可以实现:
一种是使PoW链接受一个PoS链的轻客户端;
另一种是使PoS终态也敲定PoW链。
声音 | Blockstream CEO:Brad Garlinghouse可能是通过倾销XRP来买入BTC:Ripple首席执行官Brad Garlinghouse近期在接受CNN采访时坚称,Ripple并不想“倾销”XRP,也不能控制XRP的价格。The Block分析师Larry Cermak对此评论称,Brad Garlinghouse在这段采访视频中所说的几乎都是谎言。引用CoinMarketCap上的每日交易量对我来说几乎难以置信,因为他知道至少90%是假的。但XRP的投资者还是要为此买单。此外,Blockstream首席执行官Adam Back表示,Brad Garlinghouse很可能支持BTC,因为他很可能是先通过零售倾销预开采的XRP来积累BTC。[2020/1/9]
第一种方法要求eth1中实现eth2客户端?(见下图)
Vitalik Buterin:并不认为zkPorter具有比Optimistic Rollup更强的安全保证,且没有紧密耦合性:以太坊联合创始人Vitalik Buterin针对Matter Labs披露的zkPorter扩容方案表示:并不认为zkPorter具有比Optimistic Rollup更强的安全保证,宁愿将资产放在Optimistic Rollup中,而不是链下数据可用性系统中。zkPorter链下数据可用性的安全级别要低于基础链,且没有紧密耦合性(Tight coupling)。另一方面,分片中的数据可用性层将受到整个以太坊网络的保护,并兼具紧密耦合性。如果某些应用程序同时使用链下数据可用性也是可以的,但前提是链下数据在基于分片的数据可用性可用之前明确为临时措施,但是我认为这没有必要。[2021/4/14 20:17:45]
。这将需要对BLS-12-381验证的webassembly或者原生支持,不要期望这种支持能够很快实现。另外,
这种方法仅提供轻客户端级别的安全性。
第二种方法可以通过添加这一机制来实现,即如果一个经由?eth1_data?投票的PoS区块?
Bs?包含一个指向PoW区块?
Bw?的引用(reference),
当区块Bs确认后,Bw区块也可视为被确认?(见下图)。不过这意味着PoW矿工(和客户端)也要运行eth2实现版,以便他们知道哪些eth2链被确认。
第二种方法更有趣,因为它为eth1提供了“原生”版回滚限制。请注意,这与第一种方法有所不同,因为虽然它确实使eth1的分叉选择知道eth2,但并没有立即使eth1知道eth2的状态。例如,理论上有可能两条竞争的eth2链确认同一个eth1区块(这意味着eth2已经出故障,但从理论上讲还是有可能出现的)。更常见的情况是eth2链确认的两个区块,其中一个区块是另一个的子区块,而这两个区块都支持相同的eth1区块,从而有些矿工可能知道这两个eth2区块的最近状态,而另一些矿工不知道。这对“eth2作为终态小工具”来说不是问题,但这确实意味着我们需要更多底层设计,使eth1清楚知道eth2的区块状态,以便允许从抵押合约(DepositContract)中提取ETH。
一种可能方案是在eth1中简单地创建一个?eth2_data?投票机制;本质来说,就是复制使eth2知道eth1状态的同一种机制。可将其与上文方案结合起来确保一致性:eth1矿工仅会为?eth2_data?区块进行投票,条件是只有当这些区块满足已确认,以及引用的?eth1_data?区块是矿工正在打包的eth1区块的祖块。
面临的挑战
这两种方法都需要对eth1方面进行改动。目前在eth1->eth2的“最终转换”之前,eth2路线图对eth1方面没有改动。而如果eth2中断,这两种方法都需要eth1采取紧急补救措施。
第二种方法将要求所有eth1矿工也要运行eth2节点。因此,
尽管这两个中方法都是绝对可行的,但并不会很快实现。但是,随着eth2持续运行并证明其稳健性,那么
肯定会到一个实现这种双向桥接很有意义的阶段。为了降低风险,可以做一些事情:
在eth1上运行eth2投票时有一周的投票时间,以便在出现问题时有时间进行人工干预;
由于同样的原因,eth1通过轻客户端知道eth2中已敲定的区块时,ETH的提取也会有一周时间的延迟;
当抵押的ETH数量足够多的时候才开启这种桥接;
将投票阈值设置为高于50%;并使系统更倾向于不包含任何eth2区块(除非这些区块获得了很强的共识)。
原文链接:
https://ethresear.ch/t/two-way-bridges-between-eth1-and-eth2/6286
参考链接:
:https://github.com/ethereum/eth2.0-specs/blob/fffdb247081b184a0f6c31b52bd35eacf3970021/specs/core/0_beacon-chain.md
郑重声明: 本文版权归原作者所有, 转载文章仅为传播更多信息之目的, 如作者信息标记有误, 请第一时间联系我们修改或删除, 多谢。