以太坊:Web3 堆栈全景剖析_DAPP

本文来自链闻ChainNews,撰文:KyleSamani,Multicoin联合创始人,编译:詹涓,Odaily星球日报经授权转载。我还没有看到Web3堆栈的实际图解,所以做了一次尝试。考虑到Web3生态系统的扩展程度,我敢说,以下图示肯定不完整,而且可能有一些不准确之处。我将重点讲讲我从该图中提炼出的一些最有趣的观察结果。核心堆栈

核心开发堆栈到底需要为DApp开发人员提供什么?它必须为有序且有效的交易提供单一、规范的分类账。P2P、共识和状态转换机器层共同提供这些功能。今天,以太坊和比特币都只执行这些功能,尽管核心的以太坊协议最终将扩展至包括分片。相对于图表右侧「可选组件」的团队数量,图表左侧这些组件的团队数量较少。从堆栈底部向上,包含了可选组件,不包括互联网协议:OasisLabs正在构建Ekiden,这是一个中立平台,允许许多链支持基于可信执行环境TEE的非公开链下计算。Handshake正在构建去中心化DNS。鉴于DNS的操作系统默认设置,获得采用将非常困难。Monero正在构建Kovri,以在节点之间实现保护隐私的数据包路由,从而保证IP等级的隐私包括。Kovri正在建设中,以支持多个多个区块链。BloxRoute正致力于开发一种可以跨各种区块链的区块交付网络。以太坊基金会创建了DevP2P,ProtocolLabs创建了LibP2P。大多数新链在采用这两个框架中的一个,甚至出现了关于以太坊转向LibP2P的谣言。以太坊和Polkadot正在开发全状态分片。有十几个团队在共识层进行实验:基于领导者的区块链共识比特币和比特币现金——ASIC优化的PoW以太坊1.0、门罗币、Zcash、其他——抵御ASIC的PoWKadena——braidedPOWChia——空间和时间证明PoST和经过时间证明PoETFilecoin——含有用数据的PoST以太坊2.0——CasperTFG权益证明POS迅雷——带有PoW的PoSDecred——混合PoW/PoSPolkadot——HoneybadgerPOSEOS——委托股权证明DPoSTezos——另一种DPoS变体Tendermint——另一种DPoS变体Solana——历史证明PoHDfinity——阈值中继+概率插槽共识Algorand——与领导人选举签订的拜占庭协议BA?无领导的区块链共识Ripple共识协议Stellar共识议定书Avalanche共识协议有向无环图DAGByteball——Byteball主链共识Hashgraph——哈希图共识议定DAGlabs——SpectreBlink——Blink共识协议Spacemesh——委员会选择的PoST,然后是一种「快速+慢速」结合的共识一些主要的状态转换机:以太坊虚拟机EVM——以太坊1.0、Ethermint、Hashgraph、WANchain等网络装配虚拟机WASM——Dfinity、EOS、Polkadot、Ethereum2.0直接LLVM曝光——Cardano、Solana自定义状态转换机KadenaTezosRchainCoda这个列表提出了一个问题:相对于核心堆栈的其他层,为什么有那么多团队在共识层上工作?显而易见的答案是,因为那儿有钱。这自然会引出又一个问题:为什么所有的价值都在共识层产生?共识层是区块链中最大的瓶颈,共识方案受到基本权衡的限制。此外,共识方案是互斥的:单一链条不能同时采用两种共识方案。世界领先的协议设计师认识到比特币PoW的局限性,并看到了建立庞大的全球数字储备资产的机会,因此可以在一个价值数万亿的市场中理性竞争。到目前为止,可以顺理成章地得出结论:鉴于可扩展性三难动态,没有人能建立一个提供基本帕累托改进的共识算法。大多数在共识层进行创新的团队基本上都是押注他们为某些用例子集选择了最佳权衡集。如果一个团队确实提出了代表帕累托改进的机制,我们何以知道呢?一个简单的回答是,对去中心化区块的出产量进行量化。Dfinity、Algorand、Solana和其他团队认为这是可能的,不过Vitalik并不是这么认为。共识算法是可以复制的。不过,虽然这在技术上是可管理的,但在上可能无法实现,因为很难改变现有链上的共识算法,尤其是在具有紧密耦合的链式治理的系统中。链式治理越紧密联系,就越难以说服根深蒂固的利益改变。这正是以太坊可以放弃PoW转向PoS的原因,而原生PoS链不太可能愿意做出类似规模的变化。我们正在对核心堆栈的另一层,即状态转换机器层,进行大量实验。没有建立在WASM上的团队,往往会对区块链状态转换机器应该做什么、不应该做什么,存在非常针锋相对的看法:Kadena认为智能合约必须是人类可读的。Tezos认为所有智能合约必须经过正式验证。Rchain认为智能合约应该在DApp链中同时运行并得到正式验证。Coda认为一切都必须贯穿SNARK,确保即使很小的节点也可以验证链的完整性,从而在最大限度上保持永久去中心化的可能性。对状态转换机器层进行观察,最有趣的结果是:许多主要项目已就应用WASM达成共识,尽管事实上WASM从来无意于被区块链使用;Kadena、Tezos、Rchain和Coda正在进行押宝的特质。因为加密货币中的所有内容都是开源的,所以可以考虑堆栈的每一层的网络效应。例如,EVM已达到临界量,考虑到为EVM构建的工具、开发人员教育、库等,现在它还具有网络效应。这正是为什么许多其他项目,包括Hashgraph、CosmosEthermint、Wanchain、RSK、Blink等,决定采用EVM的原因,尽管以太坊自身倒是很想摆脱EVM。在实践中,我对状态转换机器可跨链移植的观点持怀疑态度。就以EVM为例,甚至连以太坊基金会都不想保留它。我的感觉是,开发人员通常不喜欢用Solidity写代码,他们这么做,只是因为Solidity是关于区块生产和开源软件开发的去中心化的以太坊理论。如果我的假设没错,那么采用EVM的非以太坊区块链将不会受益于「EVM的网络效应」。而WASM的情况可能会有所不同。因为大多数主要的加密团队都希望站在构建和维护WASM的巨头的肩膀上,可以猜想,或许存在着一种便携式的跨链网络效应,它围绕WASM为区块链构建状态转换机。如果围绕WASM的这种网络效应显现出来,那么开发独家状态转换机的团队将难以保持长期竞争力。扩展的核心堆栈

有一些元素不是、也不应该是底层链的一部分,并且尚未被认为对DApp的开发必不可少,但我相信它们将成为开发堆栈的核心组件:许多团队正在建造侧链。比特币中最值得注意的是Drivechains和Liquid。在以太坊体系中,最重要的是Plasma框架内的SKALE,以及作为主权DApp链的CosmosEthermint。有许多团队为比特币开发支付通道和状态通道网络,最着名的是LightningLabs和Blockstream。在以太坊生态系统中,则有Raiden和Celer。许多人,尤其是比特币社区内的人,都认为这是唯一的扩容方法。InterledgerProtocolILP于几个月前完成。相当多的团队正在使用它来实现跨链互操作性。直到最近,包括我在内的大多数开发人员和投资者都没有对ILP给予足够的重视。然而,完全可以推测,ILP将成为Web3堆栈中最重要的层。据我所知,TheGraph是唯一一个为以太坊构建去中心化查询层的团队。以前,在以太坊上构建DApp的每个团队都必须构建一个专有的索引基础架构。BigchainDB、OrbitDB和Bluezelle等许多团队正在构建不可变的结构化数据库见Web3图的右下角作为去许可的独立链。鉴于使用结构化数据库可以提升性能,观察下开发人员是否会选择原生地使用这些系统,或者像SKALE这样的团队是否会将这些开源系统作为plasma链,会很有意思。通常,扩展的核心堆栈相比核心堆栈更加不成熟。基本上这些组件中没有一个以任何有意义的规模生产。因此,DApp开发人员暂时无法使用这些组件。随着扩展核心堆栈趋于成熟,我预计DApp开发速度将大幅提升。DApp开发人员原本不应该考虑这些组件旨在解决的任何问题,但是鉴于堆栈的当前状态,他们只能硬着头皮构建自己的堆栈组件,说的好听点,这种做法是低效的。可选组件

现在存在着各种各样的云API,从发送电子邮件Sendgrid到短信Twilio再到地图谷歌地图,大量「去中心化库」以可选去中心化组件的形式存在。其中每个都可以执行DApp开发人员能够选择的一组独特功能。在这些可选组件服务中,只有少数服务架设在主网上。其中一些例子包括:Livepeer、0x、Kyber、Storj、Sia、Oraclize和Civic。但是,构建这些组件的大多数团队尚未发布已生产就绪的工具。这至少部分解释了DApp匮乏的现状:没有有用的库,就很难构建有用的DApp。没有可用的库,每个DApp都必须从头构建。同样有趣的是,大家认识到这些组件中的绝大部分都是为以太坊生态系统而构建的。一些团队,例如Keep和Truebit,已经公开讨论过支持Dfinity作为跨链服务。但是,今天加密生态系统中正在开发的绝大多数基础设施最少会支持EVM,更宽泛一些的会支持以太坊生态系统。在接下来的一年里,随着EOS、Tezos、Kadena、Dfinity、Solana、Tari、Hashgraph和其他公司推出并打磨他们的区块链,他们要争取赢得建立DApp基础设施组件团队的注意力。如今无缝支持跨链开发所需的工具并不存在,因此构建核心链的团队需要竞争,来让这些DApp基础设施提供商支持各自的区块链。如上所述,像WASM这样的状态转换机的网络效应可能很大程度上可以跨链进行移植,如果没有任何开发人员的努力,它们不太可能100%实现便携。底层链团队是否可以实现基础设施跨链移植,以吸引构建以太坊生态的第一批基础设施开发人员,这一点值得拭目以待。堆栈的顶部

在大多数堆栈图中,应用程序是堆栈的顶部。但基本上所有加密开发都是以后端为重点,而不是前端。因此,有一些元素存在于Web3堆栈中的DApp之上。有趣的是,加密货币圈里几乎没有人在谈论去中心化应用程序的托管。这一点特别让人好奇,因为今天的每一个DApp上,这一层都中心化的,要么是因为托管应用程序的网络服务器是中心化的,要以是因为有一个下载链接来下载应用程序并将其安装在客户端设备上,这将生态系统推回到带围墙的花园walled-garden模型,该模型是中心化的。在理想的世界中,应用程序主机可以既能去中心化、又能实现实时传递。为什么基本上没看到针对去中心化应用程序托管的解决方案?我可以确定有两个原因:要么就是该层是否去中心化无关紧要,要么就是这个问题太难,所有没人愿意着手去解决。我怀疑答案两种原因兼而有之。在任何DApp中,只要数据库和资产存储充分去中心化,应用程序主机是否集中就无关紧要。如果政府通过关闭应用程序主机来审查DApp,DApp作者可以开源前端代码,并让其他人启动一个新的主机,为同一个后端提供门户。这可能会像2000年代的种子追踪者那样发挥作用:关掉一个,会突然冒出五个。但是,如果你可以让应用程序主机实现去中心化呢?由Ripple发起的开源项目Codius试图在2015年做到这一点,可是之后Ripple不再为其分配资源。最近,Ripple的前首席技术官StefanThomas离开这家公司,创立了Cilus,打算借着Codius打下的底子继续开发。看看堆栈的这一层在实践中如何工作,考察它集成到现有DNS中的意义假定现有DNS是集中的、可信的应用程序主机,将会很有趣。最后,堆栈的顶部是最终用户实际与之交互的内容:DApp浏览器。这包括用于以太坊的Metamask和Toshi,以及用于EOS的Scatter。第2层扩展解决方案

我已经在本文中涉及了这些层,但我认为值得放在可扩展区块链的上下文中重新审视它们。首先是分片。基于以太坊和Polkadot团队所面临的挫折,分片似乎是在技术上最具挑战性的扩容解决方案。即使它有效,也不清楚会有多少人希望它能成为圣杯,我个人也对它持怀疑态度。分片的最大问题是跨分片延迟,放在以太坊中,这个延迟可能是几分钟。这可能会严重限制实际设置中分片的功效。此外,分片会产生各种下游问题,例如:客户端可能不知道根据用户查询,需要读取哪个分。第2层扩容解决方案,包括侧链、支付和状态通道网络以及ILP,会遇到相同的问题。随着侧链激增,如果用户忘记了自己的资产存放在哪个链时,事情就会变得一团糟。支付和状态通道网络存在严重的延迟问题,而且围绕着流动性路由、资金传输和隐私等方面,各种新问题也将层出不穷。比特币作为储藏价值型区块链,出块时间为10分钟,相比之下,ILP将面临真正的延迟挑战。设想一下,如果某个用户在一个分片的支付通道中有资金,并且希望将这些资产移动到不同分片上的侧链中,这一切将会多么混乱。在情况清晰之前,恐怕事情先会变得更加混乱。未来会怎样?

也许Web3堆栈中最迷人的部分就是堆栈本身的去中心化程度。大多数传统的应用程序开发堆栈,比如Windows、iOS、Android,几乎完全是中心化的,只有少数第三方开发者库和服务已达到临界量。这与Web3堆栈形成鲜明对比,Web3堆栈由全球数百个团队同时构建!虽然从理论上讲,构建DApp时不需要任何超出核心以太坊协议提供的东西,但实际上DApp开发人员需要以太网基金会没有也不会构建的各种工具。加密货币是开源合作的巅峰之作,这就是最重要的证据。考虑到大量Web3堆栈仍处于开发阶段,DApp应用现在非常糟糕也就不足为奇了:今天的Web3堆栈状态几乎不可能构建可用的DApp。像许多其他技术一样,Web3堆栈将缓慢前进,在超过某个引爆点后迅速发展。在Web3堆栈实现某种程度的可用性、稳定性和功能完整性之后不久,DApp革命就会发生。不过,我怀疑,这将是两三年后的事情。

郑重声明: 本文版权归原作者所有, 转载文章仅为传播更多信息之目的, 如作者信息标记有误, 请第一时间联系我们修改或删除, 多谢。

大币网

AAVEHAY:拜占庭经济学_moonrise币局

本文来自:蓝狐笔记,作者:ChrisBerg等,编译:芥弥,星球日报经授权转发。三十多年来,经济学家和密码学家一直在研究同一个问题。然而他们各自并不承认对方的研究工作.

[0:0ms0-4:289ms