前言:Solana在区块链世界中是“异类”的存在。因为它采用跟传统区块链不同的时钟机制,传统区块链如比特币、以太坊、Cosmos等,将时间和状态耦合在一起,只有新区块诞生才能产生全局一致的状态。而Solana则提供了全局可用的时钟,它将基于哈希的时间链与状态更新解耦,不是将每个区块的哈希链接在一起,而是网络中验证者持续在区块内对这些哈希本身进行哈希。这种机制称为POH(Proof of History)。那么,具体来说,Solana是什么?它能完成以太坊的“世界计算机”的梦想吗?Solana主网即将上线,它未来能走多远?是嘴炮还是脚踏实地的项目?未来的一年应该就会有初步的答案。本文作者是“Andrew Hyde”,由“蓝狐笔记”社区的“huhu”翻译。
“对于区块链开发者来说,Solana是最接近于“世界计算机”的项目,“世界计算机”是加密世界的早期概念。Solana是迄今为止我们评估过的最具吸引力的layer1平台之一。我们鼓励世界各地的开发者能够认真考虑Solana。” Multicoin资本的联合创始人Kyle Samani解释说,该公司的投资组合包括了开创性的区块链项目,其中包括Bakkt、Algo、Helium等。(蓝狐笔记注:近期也投资了Nervos)。
本文提供一个机会让大家来熟悉Solana的技术基础设施,以及它对区块链开发状态的意义。(本文主要部分参考的是Samani的文章。)
首先,对于dApp的开发者来说,其成功需要6个关键属性,Solana具有所有这些属性:
· 高吞吐量
如今其网络在200个共识节点的全球网络中可以支持50,000tps
· 低延迟
约1秒的最终性
· 交易费用低
通常来说以一分钱的零头来衡量
· 编程语言
Rust是其旗舰编程语言,同时也支持C,C++,Libra的Move
· 异步算法
异步的BFT共识算法
· 全球状态
支持可组合智能合约的全球单一状态
构建智能合约的开发者不想处理layer 2和分片。拥有智能合约链的全部意义在于,链本身抽象出所有低层级的复杂性和经济系统,这些是提供信任最小化计算所需的,这使得应用的开发者专注于应用的逻辑。
事实上,当vitalik于2014年1月在迈阿密向全世界推出以太坊时,这正是他所强调的:世界计算机的意义在于抽象所有的一切,而不是特定应用。
虽然有很多类型的扩展解决方案正在进行中,但它们大多都为应用开发者、用户以及整个生态系统创造了特质的复杂形式。这些复杂形式的最后一种,我称之为“创造生态系统的包袱”,它处理起来尤其有挑战性。
所有的异构扩展解决方案都是对这一事实的回应:到目前为止,没有人指出,在实现足够的架构和去中性心化的前提下如何扩展layer1。直到Solana的出现。
Solana的情况是开发者不必依赖于扩展解决方案,开发者肯定会也能够基于Solana部署layer2,因为Solana是无须许可的。对于大多数用户案例,开发者基于Solana构建应用不必考虑扩展性问题,因为Solana的layer1的全部要义在于抽象复杂性。
硬件、软件以及计算丰富性
至于说到区块链技术,货币供应的稀缺性和去信任化计算的稀缺性之前已经耦合在一起。Solana则将其解耦。世界计算机必须提供丰富的计算,但是由稀缺的货币来支持。Solana的指导原则是软件不会妨碍硬件。这其中有三个主要的含义:
首先,Solana网络作为整体以单一验证者的相同速度来运作。这实际上是直观的:如果软件不妨碍硬件,网络将以单个机器相同的速度运行,假设带宽不是瓶颈(它不是;在下面的Turbine部分有更多内容来解释)。
其次,总体网络性能与带宽和GPU核心数量一起扩展。带宽持续每18-24个月翻一番,而现代互联网连接距离光纤物理极限的饱和还有很远距离。虽然单线程CPU性能不再与摩尔定律成线性增长,GPU的核心数量则持续以每18-24个月翻一番,且还没有结束的迹象。
再次,由于Solana的总体网络性能与底层硬件增长成比例增长,Solana在当前存在稀缺性的情况下创造丰富性:信任最小化计算的丰富。
技术概述
Solana有七个主要的技术突破,这使得它成为可能。其中包括:
· POH(Proof of History)
POH是一个微妙但基础的创新,Solana的其他独特架构构建于其上。
· Tower BFT
优化POH的PBFT版本,更青睐活性而不是一致性。
· Turbine
它是区块传播协议,大量借用了BitTorrent。Solana随着最快的2/3节点的带宽的增长成线性扩展。所有其他链以次线性方式扩展。
· Gulf Stream
一种无内存池交易转发协议
· Pipeine VM
Pipeline(管道)是一种自定义的VM(虚拟机),它利用LLVM为GPU编译代码,以实现大规模并行交易执行(不仅仅是签名验证)。这为Solana带来了与众不同的扩展性效果。
· Cloudbreak
是一种可横向扩展的账户数据库。传统数据库,例如LevelDB在单个实例上每秒的随机写入次数不能超过5000次左右。Cloudbreak是Solana针对水平扩展磁盘I/O的革新性解决方案,它是基于诸如分散-聚集等OS技术,可提供无与伦比的磁盘I/O。(蓝狐笔记:磁盘I/O是指磁盘的输入和输出,I/O是Input/Output。)
· Replicators
分布式账本的存储,用于解决PB级数据的数据可用性问题。跟要求共识节点存储所有历史记录不同,Solana利用第二类节点——Replicators——它的唯一责任就是存储交易历史的片段。
这些创新的共同主题可以用一个词来概括:优化。Solana是我看到基于第一性原理对堆栈的每一层进行工程的最明显的案例。Solana团队系统地辨认出让其他链变慢的每一点,例如,共识负载、单线程计算以及磁盘I/O,并设计了解决每个问题的独特解决方案。
Libra和Move
Facebook的Libra团队创造了一种新的VM和编程语言Move。虽然Libra在2020年发布主网时无法编程,但Libra团队已经开源了其代码库。它证明了Move和Solana的PiPeline VM有更多的相似,而不是差异。
Solana本身可以支持Move,包括BFT和GPU上的并行交易处理。这意味着开发者可以轻而易举地将为许可链Libra编写的应用移植到无须许可的Solana链上,并且可以获得Solana提供的所有性能。
对Solana来说,这是一个令人难以置信的催化剂。因为Solana可以受益于Libra的渠道,同时还能以完全无须许可的方式来运行。Solana的主网将在2019年10月推出,Solana可能是第一个实际上支持基于Move的应用的链。
独特的应用
Solana非常高效,它能支持之前无法支持的全新类别的应用类型。举个例子:Solana可以验证比特币的全部历史(从创世区块到最新区块)的区块头。这对于比特币的山寨如莱特币和Zcash也是如此,甚至以太坊也一样。因为Solana可以在本地验证其他链的当前状态,Solana并不需要依赖于oracle(如Cosmos IBC)来理解外部状态。
这意味着Solana能为非托管的跨链DEX提供支持;交易在Solana上发生,结算在资产的本地链上进行。并且,因为POH充当区块内的时钟,而不仅仅是区块间的时钟,就区块内交易排序来说,Solana提供更强大的保证。结合Solana令人难以置信的吞吐量,该网络可以支持链上的订单簿。这就是DEX的圣杯。