以太坊技术及应用大会 | ETH2.0全盘大揭密
金色财经6月29日讯 2019以太坊技术及应用大会于6月29日在北京长城饭店举办,本次大会由CSDN和灵钛科技联合主办。V神及以太坊基金会多位核心成员、海内外顶级以太坊开发者、技术专家等参与大会,围绕以太坊的生态全景、未来发展和开发实战进行主题分享,精彩观点总结如下。
以太坊创始人
Vitalik Buterin
:以太坊
2.0
之跨分片交易
在热烈的掌声中,Vitalik发表了本次大会的第一个演讲,向开发者介绍以太坊2.0的理念及进展,着重解释跨分片交易的原理。
以太坊 2.0 的设计理念
现在的链,所有节点下载和验证所有交易,这样虽然很安全,但严重限制扩展性,我们想改善这个情况,提高其扩展性。未来区块链是分片的,这意味着每个节点只下载和验证一部分的交易。
在以太坊2.0的设计中,有1024个分片,每个分片都相当于一个短链,有自己的共识算法。信标链管理共识算法和跨分片的沟通,每6分钟不同分片间进行交流,了解其它分片的哈希值。
提高分片交流效率的策略
异步交易是我之前设计的。比如我有5个币,想把它转给Bob,Bob的账户在底端的分片,我的账户在顶端的分片。首先我要在顶端分片做一个交易请求,此交易会在顶端分片处理并产生哈希值,但它并不会立即完成,之后把它放到底部的分片中,当它在底部分片进行验证后,交易就能够处理了。
另外一个是“火车票和酒店”的问题,在订火车票和酒店时,你当然希望他们订在一起,如果只有一个而没有另外一个就没有意义。问题是:如果订火车和订酒店在不同的分片怎么办?
想象两个智能合约,一个合约用来订火车票,另外一个用来订酒店。其中任何一项失败,我们都可以把交易撤回。但由于这两个合约在不同的分链中,确保一致性更难。
其中的一个解决方案是“猛拉”,每张火车票有一个合约,每个房间有一个合约,这样每个合约都能代表我们订座位或订房间的能力。在“猛拉”中发起一个合约,它的功能就是一次用一个合约。从酒店分片拉一个合约,从火车票再拉一个合约,两个分片同时预定。而如果你放弃订票,而别人还想订,就可以通过“猛拉”拉到他们的合约里。它是一个自动的过程,要么2个都订,要么都不订。
用一个更短的区块链,但需5分钟让一个分片知道另一个分片的数据或者哈希值,我们希望这个过程变得更加快捷。
比如,最开始Alice有10个,Bob有20,charlie有52个,把这些压缩之后进行存储。有两种情况,一种情况是Bob有20个coin,还有一种情况是Bob之后有25个coin。如果我们的钱包上面看到上面的根是R,下面的分片就可以做个推测,就是Bob有25个coin,就可以取25个coin给其他人。
在这个过程中,虽然看起来交易已经完成,但我们的计算并没有最终化。那么你可能会问,似乎Bob有了这些coins,但是他还没有花这些coins。我们假设Bob要把25个coins发给Charlie,他会做什么?
我们不用去思考到底R是真实的还是假的,因为Charlie现在有52个coins,所以知道R一定是真实的。这个逻辑是在后台进行的,逻辑效应是通过Bob、Charlie的钱包分析,我们至少先知道发生了这样的交易。你可以用通信的方式在跨区块链中进行交易,还可以让它创造应用程序,让不同的区块链进行跨链的交易。
我们还可以实现其他目标,比如通过Plasma方法做同步交易,在任何分片都可以发起交易,资产会存在合约里,但我们不会马上去数状态的总数是多少,取出需要等一周。此时,如果任何人能证明那个状态不是有效的,他们就能取消取款。
通过这个方法可以保证如果我们收到了coin,没有进行非法支付的话,我们的交易就会同步到整个区块链上进行广播。我们有两个资产,X和Y,我们的分片有自己的轻重缓急,可能先进行某一次交易再进行下一次交易。
如果在参加交易过程中,自己有了资产,而且希望发送交易信息,就可以把它公布到任何分片上。如果你是某个资产的所有者,你可以仅仅分析这些分片,评估这些交易的历史记录。
这种设计被称为“积极虚拟机(OVM)”,你所有权的资产并没有立即转移,我们开始一个流程,不需要把钱取出来,可能一整周时间才可以真正到帐,但如果你是用户,你可以知道为什么不能马上取出某个资产,而且你有一种感觉,就是这个交易是可以真正到账的。
这样做的好处是,我们会获得公开交易的能力,而且还可以得到及时确认,可能0.5秒的时间就可以立即确认,用户体验非常好,类似中心化服务器提供的这种体验。
如果我们从不同的分片进行数据的公布,逻辑会非常复杂,智能合约也会变得很复杂,用户钱包会进行大量的计算,需要更长时间进行计算。
对 ETH2.0 的总结
如果想做出一个通用型的区块链,首先要有一个通用的基础设施,能够把数据放在此链上,还可以在其上做更快的计算。我们利用工具进行应用的过程比较复杂,不同的用户有不同的实施方式。区块链要求我们有一个全节点共识。也就是,怎样进行储存?怎样对用户coin的数量进行准确,这些都需要通过更进一步的应用来实现。而且,我们还需要保证整个流程的简便性,需要对共识机制进行不断的提升,创造出不同应用的底层协议。
我们正在研究如何设计这些机制,让我们创造出扩展区块链的不同应用,它拥有很强的性能,可以进行非常快速的交易,甚至是异步的、同步的交易都可以实现,而且还可以实现跨分片的交易。
在2.0设计中,提高交易的确认速度不需要提高区块的速度,分片是分配数据和计算的工具,在这个底层上有很多方法实现可扩展的应用环境,通过这些方法可以在分片的区块链上保持速度和有用性。以太坊Layer1作为简单和安全的不用应用的底层协议,然后在Layer2继续研究和改进。
以太坊核心研究员Hsiao-Wei Wang:以太坊 2.0 和信标链验证者
Hsiao-Wei Wang首先解释为什么以太坊 2.0需要信标链Beacon Chain。
信标链的主要功能:第一,取代原本早期的设计,信标链现在是整个系统分片互动的核心。
第二,作为Whistleblower去举报恶意验证者。举报者不一定是proposer本人,但是如果它纳入更多Slashing Operation,就能够获得更高奖励。
其次,她介绍了如何如何成为信标链的验证者。
首先在ETH1主链部署一个特殊合约保管合同,合约接受使用者付出的抵押金,抵押金至少是要30个以太币,这个合约每收到一笔有效的押金,放出event log,但并不是马上加入到 validator 之中就算是有效的active validator,还有一部分需要在链上做验证。
之后,Hsiao-Wei Wang提到了以太坊的惩罚和退出机制及其对应的处理方法。
最后,Hsiao-Wei Wang分享了今年和明年初可以期待的事情。第一,希望有稳定版本的stable testnet;第二,目前开发端都是各自研究,希望接下来可以形成交互;第三,正在形成新签章机制的标准化和审计。另外如果一切顺利,Hsiao-Wei Wang 团队会部署抵押合约并开放staking。
Go-Ethereum核心开发者Gary Rong:深入以太坊轻节点协议
Gary首先说明了轻节点协议的基本概念。
以太坊轻节点协议就是为以太坊设计的,有两个目标,一是对资源要求足够低,二是有能力验证从网络中收集到的证据。目前有两类协议,一类是Les端实现的,另一类是PIP客户端实现,今天主要为大家介绍第一类协议。目前以太坊中的节点根据类别主要分为三类,第一类是Archive node,第二类是Full node(全节点),最后是 Light client(轻节点)。
之后,Gary解释了Merkle Trie的含义及checkpoint的相关情况。
Merkle Trie是以太坊网络中非常常用的一种数据结构,第一个特点是它通过路径来编码与这个节点对应的数据项的key值。第二个特点是每个副节点都会存储所有hash节点的hash。副节点本身的hash又是通过所有节点的hash内容再进行一轮hash计算得到的,所以最终Merkle Trie 节点root节点的hash值包含整棵树中所有节点的hash信息。
轻节点可以从checkpoint同步,它必须满足两个条件,首先,它一定是可信的,或者checkpoint一定是最长链上的点,其次,轻节点必须能够利用checkpoint信息做历史数据的校验,这样它才能够真正不去同步所有历史的block headers。
轻节点刚进入网络时没有任何数据,所以它很难验证checkpoint是否正确。有两个解决方法:一是开发者通过编码方式在代码中确认最新的checkpoint,它是较为中心化的解决方案;二是在区块链部署一个智能合约 ,通过这个智能合约完成checkpoint的更新操作。
对于用户可以在轻节点中做哪些事情,Gary提到了五点:交易转积、查询账本服务、本地调用智能合约、智能合约事件订阅和基于历史智能合约事件的搜索。
Gary 还分享了协议中流量控制与容量管理的解决办法。
流控问题采取比较传统的技术,但在去中心化架构下,client需要往一个单点发送请求,server为其进行复杂均衡、流量控制。通过这种方式 client 能够借助本地令牌信息更好地管理和分发它的请求,避免很低的处理优先级或者很高的响应延时。server 端的容量管理通过提供 4 个参数让 server 运维限制 server资源使用:lightserv、两个网络带宽的参数、以及 lightpeers。server 处理请求有一个较为精确的计算公式,需要同时考虑两方面内容:时间开销与网络带宽。
위믹스3.0 최초의 DAO ‘원더다오’, 노드 카운슬 파트너 합류
위믹스3.0 최초의 DAO ‘원더다오’, 노드 카운슬 파트너 합류 l 탈중앙화 자율조직 형태로 결성…구성원 모두가 위믹스3.0 운영에 참여 가능l 스마트 컨트랙트 기반 모듈화 ...
[주간톡톡] 양의 탈을 쓴 늑대는 양일까? 늑대일까?
주간톡톡은 한주간의 블록체인 소식을 재구성해 독자들과 재미있게 이야기해보는 코너입니다. 이번주는 페이스북의 스테이블 코인 프로젝트 '디엠(Diem)'에 대해 알아보겠습니다. 그럼 ...
IBM, 블록체인 와인 추적 서비스 '빈어슈어(Assure)' 공개
IBM이 재배지부터 매장까지 와인 공급망을 추적할 수 있는 블록체인 기반 플랫폼을 공개했다.10일(현지시간) 발표에 따르면 IBM은 와인 모니터링 업체 e프로브넌스(eProven...