区块链平台的通道变得越来越拥挤。 尽管该技术正在飞速发展,并且在扩展性,可用性和治理等领域正在进行许多有趣的实验,但还没有任何平台已经建立了一个普通人非常关心可用的,可扩展的平台。 今天的区块链技术,网络和社区是Myspace和Friendster(即Facebook之前)鼎盛时期的社交网络。
当然,我们今天的立场取决于您的标准,成功标准是高度主观的。 诸如存在时间,交易量或市值之类的简单指标是不够的:一方面,它们可被操控,而且它们甚至不知道评判这些项目重要且有潜力巨大的标准有哪些。
为了评估各种项目,我从主观角度发现有一套明确的标准对衡量当前和潜在的成功项目非常有帮助。我的标准不基于任何特定的平台,而在于一套价值观,原则,目标和理想。以下文章的框架是向我自己和社区阐明这些标准,并基于这些标准比较比特币,以太坊和其他区块链平台的服务情况。
另一个问题是,设计,启动和运行成功的区块链平台遵循怎样的标准。比特币和以太坊已经做好了很多事情,但是像所有平台一样,它们也有很多缺点。我认为他们迄今为止的发展受到限制,因为他们没有满足其他标准。未来的平台可以从这些错误中吸取教训,留意这些标准,避免遭遇风险。
三个重要的警告。 首先,与所有复杂技术一样,区块链中有很多权衡。因此,主推一个标准可能会牺牲其他标准,采用“Goldilocks原则”,最好项目将会在所有解决方案中选择一个最合理的。我将重点介绍这种折衷方法。
第二个警告是,尽管我尽可能选择了相对客观,无争议的标准,但其中许多标准都是主观的。 这些标准也不完整。 您同意或不同意哪些观点? 忽略了哪些标准? 过分强调了哪些标准?可以和我分享您的想法。
第三是我所说的“区块链”:我希望以最通俗的方式讲述该术语。我不喜欢这个词,但这是目前最恰当的术语。我指的是所有分布式账本技术(DLT),包括严格意义上不是链的技术,例如基于DAG的技术和具有多个链的技术。 (我拒绝使用“ DLT”一词,因为首字母缩略词不好,并且扩展版本太长且晦涩。)我不仅指底层软件和技术,还指更广泛的生态系统平台和社区。我的想法主要适用于公共区块链,特别是关于社区和治理等主题,但是其中一些想法可能也与联盟链有关。
我将这些标准分为几类,并将针对每个标准推出一系列主题文章。第一篇文章探讨了最重要的一个标准:技术和协议。
第一部分:技术与协议
技术是任何区块链平台的核心。 技术的功能有多好,你在链上能做什么事,协议设计的如何?
- 协议激励是否合理?激励合理性始终是很重要的!这是因为,网络参与者可以通过遵循协议规则来实现自己利益最大化,而不是通过操控获利。即使是相对知名的系统,例如比特币挖矿奖励也已被证明并非完全合理。
- 协议是否简单易懂?区块链平台随着协议和技术路线进行创新和分化,整个协议系统越来越复杂。在其他条件相同的情况下,协议应尽可能简单。更复杂的协议需要更多的时间和资源来设计交付。此外,设计和构建更复杂协议面临团队沟通,促使开发人员在其平台上工作,获取用户信任等难题。这里要进行协调,因为要实现许多其他标准可能需要一定程度的复杂协议。协议是否容易理解与协议说明教育文档及其设计息息相关。
- 是否允许无需授权的参与?如果您像我一样相信区块链存在的理由是使世界各地的人们都可以加入更开放,更公平的价值创造网络,那么无需授权是必要的。这既指供应方面,也指需求方面:挖掘或执行验证程序,以及交易(发送资金,部署应用程序,使用应用程序等)。在理想情况下,任何用户都应该能够为网络做出一小部分有价值的工作,例如运行CPU几个小时,并获得代币的奖励,他们可以利用这些代币使用网络的服务。尽管 在比特币和以太坊早期 POW的挖矿是无需授权的,但现在已经不是这样了,这些因为网络中的挖矿奖励已被专业矿工完全垄断。基于POS网络并不是真正的无需授权,因为必须有人向您出售代币并给您提供验证者位置,然后您才能成为验证人,这意味着从理论上讲,> 50%的网络可以被一个人垄断,并且很可能不会被发现。
- 虚拟机是否可以让开发人员轻松,廉价且安全地进行开发?这里有很多权衡,专家对于什么是最优有不同意见。比特币脚本严格限制了在比特币上构建的应用程序种类,以换取安全性。相比之下,以太坊虚拟机在做图灵完备,这意味着从理论上讲它可以运行任意复杂度的应用程序,但实际上即使是运行相对基本的计算(例如加密功能)运行起来也非常昂贵。可能需要像WebAssembly这样的VM标准,因为它可以嵌入现有的编译器工具链(LLVM,例如Wasm),这就可以利用更成熟的工具生态系统(编译器,分析器,调试器等),受到更广泛的应用。
- 是否需要您在链上做太多事情?除了安全方面,功能强大,快速的VM还需要考虑其他缺陷,如全球共识缓慢,昂贵且不适用于绝大多数用例。像比特币这样的VM功能有限以及成本高昂可能被看作是一个特性,而不是一种缺陷,只要存在良好的工具将应用程序逻辑移到第二层,但仍将共识关键代码路径,如代币传输,放在第一层。像Holochain和SSB这样的平台(不是区块链,因为它们没有全球共识的概念)是轻量级架构,而图灵完整的VMS以太坊则正好相反。相比之下,Blockstack坚持了一个合理的中心路线。
- 共识引擎确认快速且准确吗?区块链的主要功能是在一组规范的交易或状态转换上达成共识,因此可以以达成共识是否快速可靠来衡量协议是否成功。诸如比特币和以太坊等基于POW共识的证明 机制永远不会提供100%的确定性(保证交易不会被逆转),但它们确实提供了极高概率的确定性:保证经过一定数量的确认后,使交易无效回滚的可能性迅速接近零。在比特币上等待一个小时的区块高度肯定是一种痛苦。以太坊在几分钟的数量级上提供了类似的确定性,这更易用。下一代,以太坊Serenity和Polkadot等基于POS的共识机制可能会更进一步,在几分钟内提供确定性(在低延迟和无网络攻击的情况下),Eth2.0是一个新纪元,可以做到6.4分钟更低甚至6.4秒。
- 用户能否为更安全或更快速的达成共识支付更多费用? 由于交易对其发送者的价值可能更大或更小,因此并非每种交易类型都需要相同的优先级或安全等级。 在比特币和以太坊等平台上,可能需要支付更高的费用才能确保更快地进行交易,但是共识只有两种情况:交易最终会被整个链确认,或者没有。 有分层共识的形式非常好,其中交易可以实现更高的安全性,例如如果交易者为达成更高的共识级别付出更多的代价,则可以被更多验证者确认。 从理论上讲,今天使用第二层技术是可行的(实际上是通过诸如闪电网络之类的状态通道发送资金与直接在主网上发送交易之间的区别),但是将来在第一层协议上也可能实现。
- 平台吞吐量高吗?比特币和以太坊目前都达到了10 tx / sec的数量级,这可能还不够,2017年底两个网络上的网络拥塞就是最好的证明。我认为目前约1000 tx / sec是一个合理的目标,因为共识应该是分层的(请参见前面的要点),并非每笔交易都需要在第一层进行确认,尽管如果便宜的话,第一层的额外吞吐量可能会很快被占用。更高价值,更高优先级的交易可以支付更高的费用,在第一层进行确认,而其他交易可以在更高的层次进行确认,或者分批在第一层进行缓慢的确认。
- 平台是否可以轻松实现互操作性? Cosmos和Polkadot等平台可实现不同程度的跨链互操作性。从理论上讲,任何具有图灵完备的VM平台(例如以太坊)都可以与任何其他平台完美地跨链,但实际上验证来自其他链的交易可能非常昂贵。互操作性还可能需要临时桥接,这在操作和维护方面成本很高。例如,以太坊的BTCRelay服务是没有维护且不好用的。扩展性较弱的VM的平台(例如比特币)需要基于扩展性较强的平台(如以太坊)构建相对笨拙,低效的解决方案。
- 该平台是否提供了共识以外的基本要素?智能合约区块链提供的最基本服务是协议内计算:特定代码段根据协议规则执行产生共识。但是,强大,用户友好的应用程序将依赖于其他服务,例如消息传递和存储。继续依赖集中的服务提供商来提供这些服务,就是放弃Web3雏形,但是直接使用比特币或以太坊交易存储数据对于所有应用程序来说都非常昂贵的。以太坊的Whisper和Swarm以及Protocol Labs的Filecoin等项目计划提供这些缺失的服务,但尚未有产品上线。无论是在协议内还是协议外提供此类服务,都需要直接集成到应用程序和智能合约中。
第二部分,去中心化:https://realsatoshi.net/15891/
第三部分,社区:https://realsatoshi.net/15891/
原文标题:The key ingredients to a better blockchain, Part I: Tech and protocol
原文链接:https://www.etherean.org/blockchain/2019/09/09/key-ingredients-better-blockchain-part-i-tech-and-protocol.html