Solana的技术理解、设计框架、最新产品以及生态简介 (一)

2022年7月18日 271点热度 0人点赞 0条评论

总览


Solana相比于其他L1,拥有最高的交易吞吐量,较短的确认时间,增长最快的开发者社区,以及强大的机构支持。同时Solana引入了POH 机制, 这里需要注意Proof of History 本身并不是共识机制,而是用于提高 Solana 的 Proof of Stake (权益证明) 共识的性能。它还可以用于提高数据平面协议的性能。历史证明 (POH) 建立了一个历史记录,证明在特定时间点存在特定事件。每个验证者都会跟踪时间,通过在 SHA-256、顺序散列可验证延迟函数 (VDF) 中对其进行编码。因此,验证者之间无需在处理前进行相互通信确认( 通常每个节点需要沟通自己的 precommit 和 prevote),这大大提高了在速度以及容量上的效率。举个例子,汽车制造厂,以往在零部件生产出来后,汽车需要依次通过冲压,焊接,涂装,总装加工等流程,而汽车制造厂也是依据这个步骤生产不同的零件,而POH允许汽车制造厂同时完成不同零件的生产,之后这些零件再按照拼装顺序,完成冲压,焊接,涂装,总装加工等,POH允许并行生产的可能性,大大减少了沟通成本和时间成本。在我们上篇文章Solana 的逆袭之路 - SQLANA,我们重点介绍了Solana的特性, 包括Proof of History 共识机制, TPS 和TTF 完美结合,优先交易模型, Solana的去中心化之路, Solana上流动性质押协议, NFT 市场等,而本文我们将进一步挖掘其技术细节,设计框架,最新上线的Solana Mobile Stack等产品,生态简介以及其潜在的新上线的L1竞品


Solana目前主要背靠FTX以及Jump Crypto。与中心化交易所的紧密联系,会加速新用户以及资金的流入。如果做类比的可以考虑币安及BNB链, 除了提供低交易费用, BNB 链的搭建也意在战略层面为巨大的币安用户群提供Defi的第一个入口。此外,币安的Launchpad和币安Defi质押等产品是用户与BNB生态交互的关键,  进一步加速了网络的蓬勃发展。当然币安除了BNB链以外,还有币安智能链(BSC), 币安智能链(BSC)可以理解为与币安链并行的区块链。与币安链不同的地方在于,BSC (POA) 拥有智能合约功能并与以太坊虚拟机(EVM)兼容。这里的设计目标是保持完整币安链的高吞吐量的同时,能够将智能合约引入其生态系统。(之前有社区小伙伴不了解mapofzone中Crypto.Org以及Cronos的区别,我们也与Cronos上POA进行了沟通。本质上你可以将Crypto.Org理解为BNBchain, 通过质押等产品拓展生态,而Cronos可以理解为BSC, 其引入了EVM兼容,并且通过POA共识机制提供开放,可扩展性以及可互操作性的开放式平台。) 因此,Solana采用了类似的策略, 包括集成FTX以及利用FTX团队开发的Serum’s CLOB模型。而Jump Crypto 在Solana的早期提供了非常大的作用, 作为行业头部的资本巨鳄以及做市商, 其深度的参与做市帮助Solana减少了交易流动性风险,而低流动性, 高滑点对于早期项目的发展是非常不利的。当然随着网络的发展,用户的增长以及生态的搭建, 做市商的作用将会逐渐被弱化。

Electic Capital 是一家专注于技术开发社区的Web3.0资本,根据2021的报告结果,Solana的开发者在这一年增长了500%, 在开发者增长率上排名第一。同时Rust语言, Solana, Polkadot, Cosmos都在使用的, 在2021Stack Overflow 开发者问卷调查中也排名第一, 这个结果也帮助解释了Rust开发者社区的快速增长。尽管目前以以太坊主导的EVM开发社区仍然是加密行业中主导力量,我们认为新的开发语言(比如Rust)会为行业输入更多新的开发者(包括Web2.0) ,并且带来更多的创新。当然,具有Solana可扩展性以及流动性的Neon以太坊兼容环境的出现(可以理解为Cosmos上的Evmos 或者Polkadot上的MoonBeam等) ,以及Solana Mobile 等新产品的上线,会进一步为Solana带来更多的项目和用户。

核心技术

POH

快速可靠的同步是 Solana 能够实现如此高吞吐量的最大原因。一般区块链L1在区块上进行同步, 区块可以理解为一篮子交易。区块时间指的是开采一个新区块所需的时间。在以太坊中,平均出块时间在12 到14 秒之间,并在每个区块挖出后再进行评估。预期区块时间在协议层面被设定为一个常数,当矿工增加计算能力时,用于保护网络的安全。平均区块时间与预期区块时间进行比较,如果平均区块时间较高,则区块头的难度会降低。所以通过同步区块,交易只有到一定区块时间才会被处理。在POW共识机制中,这个区块时间通常比较,需要10分钟, 以减少多个验证节点在同一时间生产有效区块的可能性。这个问题我们在加密经济的MEV 博弈:Osmosis的阈值加密技术 vs Flashbot 的SGX?中提到过,  在POW中(概率出块), 两个矿工可以同时算出这个概率结果, 但是由于网络延迟等原因,你无法保证其他人是否也在同一时间算出了这个结果。而对于节点来说, 你需要决定将哪个区块加入到公共账本。这个会根据两个区块的计算工作总量来决定。这里面的问题在于如果能够即时回滚几个区块,快速执行比实际规范更多的计算工作,然后将其显示给网络。这个就是我们通常指的时间强盗攻击Time bandit attack。所以在POW中区块是同时提交的,而确认会需要更多时间,因为攻击者在解密后可以通过潜在的重组给链带来MEV漏洞。而在POS中没有这种限制,但是验证者需要通过时间戳决定区块顺序。通常的做法是给每个区块标注时间戳,但是受到网络延迟等影响,时间戳的有效性通常在1-2小时为了解决这个问题, 区块时间也被相应延长,确保每个区块的中位时间戳总是在增加

而在Solana的POH机制设计中, 领导节点通过加密证明(自从上次证明已经过去了一段时间) “时间戳”区块。所有散列到证明中的数据肯定是在证明生成之前发生的。然后这个领导节点和验证节点共享新区块,验证节点负责验证这些证明。所以本质上POH可以理解为一堆证明,每一个都证明一些数据存在在创建证明之前,同时在上一个证明之前已经过去了一段时间。这些区块可以以任意顺序发送给验证节点。通过这种可信同步的概念,Solana可以将区块分解为更小的条目(相比于区块包括更小的批次交易)。而在区块共识确认之前,这些条目(entries) 将以实时流(Stream) 的形式传输给验证节点,所以通过这种技术,Solana可以实现毫秒级别的确认时间(800毫秒=0.8秒)。

这里要注意的是, 领导节点将有效批次交易放置于条目之后,这些条目可以迅速以实时流(Steam)的形式传输给验证节点, 而在的假设下, 这个过程并不会出现延迟,也就是接受条目之后,验证节点可以立即投票, 而这个乐观处理技术我们称为乐观并发控制 Optimitstic Concurrency Control。所以相较于大部分主打POS机制的Layer1链,通过将交易广播至全网后才能完成确认(节点间也需要再沟通自己的 precommit 和 prevote, 之后节点集投票代表某个区块高度的全账本,交易确认), 在Solana上,交易确认只需要验证上个条目的POH 哈希。

VDF

POH最先于2017年11月Solana提出,而次年斯坦福大学介绍了一种类似的技术,称为可验证延迟函数,或者称为VDF, 是个需要固定时间来执行的函数, 并且可以生成它运行的证明, 而这个证明相较于生成所需的时间,可以在更短的时间内进行验证,所以其核心特性是快速的验证时间。Solana验证其延迟函数的方法与创建其所花费的时间成正比。拆分4000 core GPU , 速度足以满足Solana的要求, 但是Solana的算法相对较慢。所以VDF泛指可验证延迟函数的类别,而不仅仅是具有特定性能特征的子集。PoH 和 VDF 之间的另一个区别是 VDF 仅用于跟踪持续时间。而PoH 的哈希链包括应用程序观察到的任何数据的哈希值。所以在POH中,尽管数据证明了历史,证明了某事件在某个特定时间点发生——数据肯定存在于它之后的哈希之前。但另一方面,这意味着应用程序可以通过更改数据被哈希的时间来操纵哈希链(POH)。因此,PoH 链不能作为随机性的良好来源,而没有该数据的 VDF 则可以。例如,Solana 的领导者旋转算法仅来自 VDF 高度,而不是来源于其在该高度的哈希值。

设计框架

相比于以太坊的12-13秒区块时间,和每个区块7,000笔交易的区块大小, Solana可以实现0.4秒区块时间,和每个区块2,000笔交易的区块大小, 同时用户可以享有极低的交易手续费。同时,Solana引入的POH机制,VDF函数等执行层的创新,使其实现了底层的扩展, 相比于模块化的设计,此设计的优势在于可编程性以及可组合性,而Rollup为代表的模块化区块链会存在分散性流动性以及Rollups之间的可信桥互通问题,当然虽然目前Rollups之间的无需信任互操作性仍然没有完全解决,但是Slush等相关提案已经在关于如何在不同ZKR间实现无缝分型拓展进行讨论。同时Polynya也公开表示, Solana的执行层创新是Rollups应该学习的。尽管Rollups它们在很多方面都具有不可持续的架构,但可以通过采用欺诈证明、有效性证明和/或数据可用性抽样来解决很多问题, 而下文也会介绍Solana也将计划引入这些技术。

除了执行层的创新, Solana非常依赖于摩尔定律,所以Solana节点需要的硬件配置要求相较于其他L1也会高很多,一个Solana的验证节点可以加载几百个以太坊2.0节点, 而其扩展性也随着时间依赖于硬件的性能和迭代对这块感兴趣的可以看我们之前的文章单片链 vs 模块链- Solana 和Celestia创始人最新辩论。所以尽管硬件的性能有助于其扩展性, 也会带来与之而来的trade off问题。目前考虑到较高的门槛,大部分的节点都以Solana基金会的名义运营, 同时在1876个节点中,前25个节点就掌握了33.%的质押,而33.33%的质押勾结就可以摧毁整个网络。所以无论是高度依赖基金会的节点分布, 还是头重脚轻的节点权重,都给整个网络带来了潜在的中心化风险。

而本文的开头也提出,Solana目前用的是Rust语言,而目前以太坊主导的EVM开发社区仍然是加密行业的核心力量, 对于开发者来说,EVM可以快速,轻松地在其他兼容链上部署,而EVM使用的是Solidity语言。然而,我们看到Rust (Wasm语言区中最大的,第二大的是Assembly Script, 第三大Go等) 社区正在经历快速的增长, 不管在不同生态 (Cosmos, Solana, Polkadot)人气增长, 还是从Web2.0开发者社区迁移来的大量新开发者, 同时Rust的高门槛,大量减少了分叉项目。这里要提几个核心点,Solana上的项目是部分开源(Serum, Magic Eden没有开源?), 而在Cosmos上通常情况下,尽管可以直接分叉项目 (比如分叉Osmosis, 但是实际上并不可行,你需要去寻找一系列安全的验证节点), 但是消费链的上线似乎又降低了这个门槛, Proposal 72提及的 P2P Validator 开发的Neutron似乎是分叉了Juno Network, 因而引发了Juno生态的极度方案。当然分叉某个模块没为什么问题,比如Sceret等链分叉Gravity Bridge, Goland 分叉了Cosmos SDK等。

中心化以及扩展性解决方案

Solana 现有的中心化性质对网络的安全构成了风险。然而随着时间的推移,节点数量增多,网络可能会变得更加分散。当然我们之前也多次强调去中心化和节点数量并没有直接联系。什么是真正的去中心化呢,比如质押/哈希算法的分发范围,比如代币的分发范围,比如客户端的个数,比如参与共识的验证节点数,比如可以影响POS33%或者POW51%的节点和矿工数。举个例子,虽然Cosmos目前协议从150个节点增加到了175个节点,但也并不说明了更去中心化。他们希望实现的是真正实现投票权/治理的分散。所以Cosmos希望通过治理解决,将Community Pool的资金分发给不同的长尾节点(质押数量不多,新的节点),但是有非常好的,产品服务发展路径,通过提供质押资金,让他们更好地为Cosmos生态赋能 (funding public goods - Optiminism Two Token house model)。那么Solana上是怎么解决的呢?这里不得不提到Solana上的流动性质押协议,其中目前排名第一的Marinade一定程度上帮助实现了治理/质押权益的分散。Marinade Finance将质押分散给不同的小社区节点,确保收益和激励分发给到社区, 最终反哺给生态,同时也缓解了中心化的问题。

Solana高度依赖的摩尔定律认为集成电路上可以容纳的晶体管数目在大约每经过18个月便会增加一倍,所以相同的价格下购买的机器,每18个月可以提升一倍的性能,所以Solana节点需要的硬件配置要求非常之高,而其扩展性也随着时间依赖于硬件的性能和迭代, 硬件的提升也会一定程度上解决这个验证节点的高门槛问题。

同时,基于其在执行层的现有创新,Anatoly会考虑引入欺诈证明,有效性证明以及数据可见采样等技术, 在不牺牲性能的前提下,提升网络的安全性。值得注意的是,区块链网络首先是社会经济运动,其次是代码。因此,虽然采用更好的代码是最受欢迎的,并且可能会带来技术上的可持续性,但实现社会和经济上的可持续性同样重要。目前为止,Solana 上的费用微不足道,没有任何拥堵费,它可以支付运行复制品(replicas) 的成本,至少在牛市的时候是这样。硬件并不昂贵,任何具有任何 PMF 的链都可以支付费用 (Polynya和Anatoly的Twiter讨论)。当然其社会可持续性体现在较低门槛的DPOS机制, 实现真正的全民民主制度。

产品方面, Solana带来了极好的用户体验, Phantom以及Magic Eden 都已经上线了手机版本,同时Solana Mobile Stack 和 Saga 将会推动Solana 移动兼容性,助力Solana的mass adoption进度。目前,大部分加密行业的产品还主要集中于电脑端, 而Solana手机的上线致力于改变这种现状。通过Solana Mobile Stack,一个适用于 Android 的开源软件工具包,使用 Seed Vault 安全托管协议在 Solana 上可以启用原生 Android web3 应用程序,该协议有助于即时签署交易,同时将私钥与钱包、应用程序和 Android 操作系统分开。其中的核心功能包括移动钱包适配器:一种用于将 Web 应用程序和原生 Android 应用程序连接到移动设备上的钱包的协议。开源协议旨在支持所有移动平台,而不仅仅是 Android,并且可以与钱包应用程序一起使用,为远程运行的应用程序(如其他移动设备、台式机或笔记本电脑)提供签名服务。

Seed Vault:内置于移动设备中的安全环境,将私钥、助记词和机密与应用程序层分开,但仍能够与设备或移动浏览器中运行的应用程序进行交互。Seed Vault 可访问设备上可用的最高特权安全环境,从处理器的安全操作模式到专用安全元素,通过 Android 内置的 UI 组件实现安全的交易签名体验。

适用于 Android 的 Solana Pay:Solana Pay 是 Solana 上的分散式支付轨道,内置于 Solana Mobile Stack,使钱包应用能够使用 Android 设备的系统功能通过 QR 码、NFC 点击、消息和用于启动 Solana Pay 请求的 Web 浏览器交互。此外,即时虚拟卡发行将允许用户通过传统支付渠道在全球数千万商户进行基于自托管资金的非接触式移动支付。

此外,Solana dApp Store 是 Android 上用于去中心化应用程序的新应用程序分发系统。Solana dApp Store 将为希望与客户建立直接关系的应用程序提供分销渠道,让他们无需支付平台费用即可进行交易。Solana dApp Store 将与设备上的 Google Play 共存,提供对 web2 和 web3 应用程序的访问。

所以Solana Mobile 在将新用户引入 Solana 方面的重要性是非常巨大的。同时还宣布承诺提供 1000 万美元的生态系统捐赠,以加速移动dApp的开发, 有兴趣的童鞋可以联系我们。

除了Rust社区, Solana也在向EVM社区扩展, Neon Labs 的开发——Solana 上的原生 EVM。这让 Solana 可以更具有可扩展性并提高其在其他 L1 中的竞争力。它目前在

Solana Devnet 上面向开发人员和测试人员的 Alpha 阶段。该项目提出由 Jump Capital 和 Spartan 等知名投资者领投的 4000 万美元。Neon 的 EVM 实现将允许它处理

到 4,500 TPS,如果成功, 这将使 Solana 成为全球最快的 EVM 兼容区块链。虽然没有明确的主网启动日期,我们CFG Labs将保持持续关注。当然,鉴于与 EVM 架构相关的工具和基础设施以及其强大的网络效应,除了Solana以外,其他链,比如Polkadot(Moonbeam), Polygon, Avalanche 也接入了EVM。

聊到跨链这块,Solana上跨以太坊的两个值得注意的桥包括和 Allbridge。最近,FTX 宣布支持

Wormhole 的 Portal 桥成为他们首选的跨链桥。这意味着FTX 将扩大对 Portal-wrapped代币 存款和取款的支持。这意味着,Portal 桥将支持为FTX上500 百万用户提供了更加无缝的桥接体验。通过启用 Portal 包装的 ERC-20 代币(如 $ETH $YFI 和 $SUSHI)的存款/取款,FTX 社区的用户可以轻松地在 Solana 上的各种 DeFi 协议中使用他们的代币。所有Portal包装(Portal Wrapped) 的资产都可以在链之间自由移动,而不会被双重包装。这意味着,用户可以将 ETH(Portal) 从 Ethereum 发送到 Polygon,再到 Solana 到 Oasis - 他们仍然拥有 ETH(Portal)。

关于生态系统的增长,Solana 通过举办一系列黑客马拉松吸引开发者 。2020 年 11 月的第一届黑客马拉松,吸引了超过 1,000 名参与者和 60 多名项目。从那以后,又举办了四次黑客马拉松,每一次的人数都在增加项目提交和申请人的数量。IGNITION,第四届黑客马拉松,共计收到近6000名申请者和568个项目提交。 

潜在风险

如果经常发生中断,Solana 上的网络不稳定将会是一个重大问题。2022 年迄今已发生 5 次停机,停机时间从 最近一次的4 小时到1月份的一次长达 6 天,网络中断主要归因于 NFT 铸造机器人和套利机器人。因此为了提高网络稳定性并减少链上造成的停机时间,Solana 在其测试网上的 v1.10 更新中实施了更改网络。Metaplex(帮助开发和启动 NFT 的协议)也

将进行更改以稳定网络,例如实施机器人Metaplex Candy Machine 中的罚款以及试图执行无效交易的任何钱包的 0.01 SOL 罚款。这些手段可以在机器人交易发生时检测它们,大大减少未来的网络拥塞情况。大多数新的#SolanaNFT 项目都使用 Candy Machine 来推出他们的系列和作品。在这个更改中,当钱包尝试完成无效交易时,将收取 0.01 SOL 罚款,这通常由盲目尝试铸造的机器人操作。为了防止human 支付罚款,前端铸造应用程序需要验证目标Candy Machine是否有资格进行铸造。收集到的 Botting 惩罚将提供给 Candy Machine 实例的配置帐户。随后Candy Machine的创建者将自行决定如何使用从这些罚款中收取的资金。

同时Solana 生态系统的互连性是需要考虑的网络失败的重要因素。根据 SolanaFM 的报告,超过 39% Solana 的程序执行通过 Serum。对于 Mango Markets 和 Raydium,

他们 13% 和 99% 的程序执行也被路由到 Serum。2022年第一季度, Solana中50%涉及Serum程序。这给Solana生态系统带来了巨大的例如Serum的单点故障风险, 如果涉及到流动性和交易问题, 那么多Solana上的核心Defi协议将会受到影响。

图片

我们将在Solana的技术理解、设计框架、最新产品以及生态简介 (二)中继续介绍其即将上线的几个Meta 大公链竞品 (Aptos, Sui等) , 生态情况以及更多观点分享。


CFG Labs 第四次Office Hour 将于7月20日晚上9点举行, 本期主题CosmWasm以及Solana的最新进展, 本期社区小伙伴Jazzlost (腾讯高级工程师, Wasm专家) 会参与分享, 请感兴趣的童鞋扫码入群


图片

46700Solana的技术理解、设计框架、最新产品以及生态简介 (一)

这个人很懒,什么都没留下

文章评论