前言
本文的主要目的是支持EIP-2537。它希望在eth1成为eth2分片之前,可以将eth2上使用的新加密原语集成到EVM中,从可以让eth1利用新系统的功能,可以为实现互操作性奠定基础。
新前沿
随着eth2.0主网的第一阶段(“信标链”)预计在今年晚些时候启动,现在是时候问问现存的网络是否可以做些什么来促进新系统的顺利生成。我们可以想象一些利用两个网络之间互操作性(eht1合并到eth2之前)的让人激动的用例,但结果证明,这些应用程序会无法实施,需要修改EVM以理解在eth2上使用的新加密原语。
我想提供新密码学的高层级概述,并说明在将eth1状态迁移到新系统之前,将其集成到EVM中会为在eth1中利用新系统的功能奠定基础。
eth1缺少什么?
考虑到在以太坊区块链上的所有数据都是公开的,需要加密签名确保特定的交易可以反映相关方的需求。以太坊上使用的签名方案是基于“椭圆曲线”的数学对象,其中使用的特定曲线称为secp256k1。该曲线上的点用于特定签名方案ECDSA,它提供我们期望的加密签名属性。
https://en.wikipedia.org/wiki/Elliptic_curve_point_multiplication,这一数学运算属性提升了ECDSA作为签名方案的安全性。
尽管secp256k1的ECDSA已经经历多年的实践,但定义它们的标准分别有20年和10年的历史。eth2使用新的结构,新结构利用了从那时以来的加密技术的进步。eth2上的验证者(类似eth1的矿工)使用BLS签名机制,它基于另外一种称为BLS12-381的椭圆曲线。(请注意,名称中的“BLS”都是缩写,表示“B”、“L”、“S”的不同集合!)
使用这堆栈的主要原因是,它允许将很多签名有效地聚合到一个签名中,这对eth2的安全性的可扩展有直接帮助。关于eth2中签名聚合重要性的更多信息,可以参考Carl Beekhuizen的文章。
虽然这些进步对eth2非常有用,但是,由于eth1并不原生支持这种新加密技术,并且基础数学的计算需求性质使我们无法在EVM中执行BLS签名,因此我们立即就遇到了问题。幸运的是,我们可以通过将计算添加为“预编译”来规避EVM的性能限制,这是硬编码算法,当智能合约调用时,它会在EVM解释器外遵循本地实现。
我们如何得到它
以太坊上的预编译是稀缺资源,因此仅保留给社区认为是重要的计算。此外,它们需要为部署进行硬分叉(因为它们改变了EVM语义),因此协调成本很高。幸运的是,关于这些BLS预编译,目前的EIP-2537草案已经提出来了。
ETH跌破720美元关口:火币全球站数据显示,ETH短线下跌,跌破720美元关口,现报719.99美元,日内跌幅达到1.27%,行情波动较大,请做好风险控制。[2020/12/29 15:57:15]
这个EIP包括基于BLS12381曲线进行操作的几种预编译,并且将包括另外一种称为“曲线映射”(用于BLS签名方案)的昂贵操作。如果你深入研究BLS签名方案本身的数学原理,则会发现需要一些机制才能将特定信息转化为曲线上点的表示,它有助于“映射到曲线”。
它对于我们有什么帮助?
通过提高存储合约的用户体验和为在eth1中构建eth2轻客户端奠定基础,EIP-2537预编译将可以立即帮助到eth2。BLS12-381曲线本身可用于构建zk-SNARKs,且在其他区块链中BLS的使用可以为这些网络间的互操作性铺平道路。
声音 | 胥康:ETH和ETC会互助互惠,发挥彼此的长处,达成生态共荣:在TokenInsight举办的《对话首席》线上活动中,以太经典亚太区负责人胥康先生表示:ETC的算力在最近猛增,连续创造历史新高。以太坊原来在GPU算力中的的比例差不多可以占到8成,ETH 2.0过渡到PoS以后,这些算力一定会寻找新的去处。而算力都是逐利的,况且ETH和ETC算法相同,这些算力转移的成本也是最小的。算力是评估PoW区块链网络运行状况的一种指标,很大程度上算力和数字货币价格是互相影响,正向互动的。
以太坊在很多方面并不是一个向后兼容的网络,在重大升级以后往往会有一些老的功能和特性不能继续使用,例如一些智能合约。因此当ETH 2.0完成后,会有一些Dapp需要跟着升级或重构,这会给这些项目带来额外的开发成本,而有一个现成可行的方案便是迁移到ETC上来。因为到目前,ETC网络和ETH网络是完全兼容的,ETH上的Dapp迁移到ETC上完全是零成本的。反过来,这也会大大丰富ETC的生态和网络。我相信从现在开始,大家一定会看到大量的Dapp和Defi生态在ETC上出现。ETH和ETC会互助互惠,发挥彼此的长处,达成生态共荣。[2020/2/7]
存储合约用户体验
UPbit关于BTC/ETH/USDT市场手续费返还20%的相关说明:返还对象和支付方式时间为2018.03.06~03.31BTC/ETH/USDT市场交易手续费的20%,根据不同的市场分别以BTC、 ETH,、USDT支付,返还手续费将在两周内按序支付。BTC/ETH/USDT市场手续费返还活动将于2018年3月31日结束。韩币市场交易手续费折扣(0.05%)结束时间另行通知。[2018/3/30]
要成为eth2信标链的验证者,最初的方法是通过将ETH存入eth1上的智能合约(“存储合约”)。为了节省gas成本或最小化复杂性,这个智能合约只是对特定存款进行加密承诺(在Merkle tree上),它是可在信标链上消费的证明,除此之外,没有做更多其他的事情。
重要的是,验证存储所需的BLS签名并没在eth1链上验证。当由于bug,一系列的BLS签名未得到正确计算时,这一事实导致测试网ETH的丢失。通过在eth1链上支持BLS签名的验证(EIP-2537),我们可以编写“转发”智能合约,这样的智能合约接收存款数据,验证签名,然后发送存款数据到存款合约。不要求存款合约以安全方式工作,但确实为跟存款合约对接的开发者添加一些额外的安心。
EVM内的eth2轻客户端
我们也希望eth1可以理解eth2加密技术,并将其作为在eth1链上构建eth2轻客户端的前提条件。这个能力使得在智能合约中BTC中继方式的轻客户端成为可能。这样的轻客户端是让人兴奋的,因为它形成了eth1和eth2网络之间的“桥梁”。这样的双向桥接可以解锁在eth1和eth2之间转移ETH的能力,而且它也允许将eth2分片用作为大规模可扩展数据层,以支持在eth1上进行Layer 2的构建(例如Optimistic Rollups,zk-rollups等。
令人兴奋的是,在EVM内构建轻客户端(作为智能合约)可能不是向eth1添加eth2意识的最佳方法(在eth1客户端层面替代实现轻客户端),并且关于“双向桥接”的最新研究表明,考虑到每个网络的其他安全参数,这是不可行的。(相反,只需将eth1状态放入eth2分片中会更合理)。话虽如此,今天奠定基础并没有什么坏处,且eth1-eth2合并策略未来有可能会改变。
zk-SNARKs
创建BLS12-381曲线是为了支持在Zcash中使用的更高效的zk-SNARKs,并将曲线添加到EVM中,这会让以太坊验证此SNARKs,从而允许零知识协议在隐私应用中使用且实现可扩展性。
其他网络
还有很多“下一代”的区块链(Filecoin、Chia、Cosmos......)都打算在某种程度上使用BLS签名机制,以便于拥有在EVM中本地验证这些签名的能力,并解锁类似于eth1和eth2之间类似的互操作性用例。
这有多紧急?
EIP-2537支持的所有用例都没有阻碍eth2的启动。但是,这对存款合约的提升很好,且不久之后,我们越早为互操作性奠定基础,就越早可以对这些应用进行原型设计。这似乎确实有利于推动这一EIP进入代号为柏林的下一次以太坊硬分叉。你可以通过在你喜欢的客户端中支持这个EIP的实现来推进这些努力。
本文作者Alex Stokes,由“蓝狐笔记”的“DR”翻译。
郑重声明: 本文版权归原作者所有, 转载文章仅为传播更多信息之目的, 如作者信息标记有误, 请第一时间联系我们修改或删除, 多谢。