本文系链捕手原创文章,作者为胡韬。
如今来看,头部公链的市场空间正在受到市场越来越广泛的认可,多条公链的生态建设堪称是如火如荼,被诟病较多的Cardano也在近期上线Coinbase,可以预见公链技术方案百家争鸣的状况还将持续很长时间。
近日,链捕手关注到一个崭新的公链项目Starcoin,定位是新一代分层的智能合约和分布式金融网络,项目方已经宣布即将主网上线并推出「安全赏金计划」,开发团队则包括前微博技术管理层Tim及知名架构师Jolestar等。据知情人士透露,比特币星空等多名行业人士参与了该项目的早期投资。
主网上线以后的Starcoin能否进一步搅动竞争激烈的公链市场,占据一席之地呢?我们带着疑问仔细研读了Starcoin的技术白皮书,并发现该项目的设计机制和技术底层具备一些独特的性能优势,因此本文将对Starcoin公链进行系统性的解读及与部分同类项目的横向对比,供读者参考。
近期,公链赛道再度成为加密市场的焦点,Polkadot、Cosmos、Algorand、Stellar、Fantom、Harmony等公链项目代币在二级市场的表现都非常惊人,自去年以来的涨幅都在10倍以上,「以太坊杀手」的故事似乎受到了更多的认可。
究其原因,主要在于以太坊的性能瓶颈越来越凸出,单笔交易手续费动辄达到五六十美元,而Layer 2与ETH 2.0的计划迟迟未能落地,也对区块链应用落地生态形成制约。
同时,考虑到不同应用场景对区块链网络的架构与性能要求不同,比如游戏、金融、流媒体等场景特性就差异很大,一条公链几乎不太可能同时满足所有场景的需求,而跨链技术的日益成熟也将进一步打通各大公链间的壁垒,因此未来多链并行发展的概率非常大。
在这种情况下,公链技术方案百家争鸣的状况还将持续很长时间,围绕着技术架构、经济模型、社区建设、生态应用等要素,公链项目在竞争中将进一步激发区块链技术的潜力与活力,推动真正具有市场需求的应用走向大规模落地,从DeFi迈向更广阔的实体产业。
从国内公链格局来看,目前Nervos、Conflux、Platon、Vechain等公链处于头部位置,凭借创新的技术路线以及一些地方政府的支持,获得了相对更高市场热度与认可度,近期币价涨幅也都不错,但从应用落地来看都处于非常早期的阶段,距离以太坊等公链生态还有很长的距离。
Starcoin则是近期新涌现出来的一个公链项目,定位是新一代分层的智能合约和分布式金融网络,让区块链能够更低门槛地应用在更多领域。据链捕手了解,该项目由Westar区块链实验室开发。
开发团队背景亦颇为亮眼,包括前微博技术管理层Tim及知名架构师Jolestar等人,此外比特币星空等多名知名行业人士都有参与投资该项目。
目前,Starcoin正处于主网上线前的测试阶段,3月24日该公链还正式启动为期一个月的「Starcoin安全赏金计划」,计划通过高额奖金吸引外界开发者检验 Starcoin 区块链测试网络系统存在的潜在漏洞,奖金最高达5000 USDT加5000 STC,同时开发者只要在Github页面提交有效BUG即可获得项目方免费赠送的Starcoin矿机,主网上线后即可挖得Starcoin主网币。
丰厚奖励的背后可见项目方对其网络安全的重视,公链是区块链网络中最复杂的系统性工程,也是行业的重要基础设施,对安全的重视也是项目方的责任所在。
那么在激烈的公链竞争中,Starcoin为什么仍然要瞄准DeFi领域并试图与以太坊竞争?从该项目的白皮书以及其它资料来看,Starcoin的底气可能主要来自于四个设计思路及其组合。
第一,相比目前大部分公链使用PoS共识机制,乃至以太坊也计划转向PoS,Starcoin仍然坚持去中心化程度最高的PoW共识机制,但同时也进行了很大程度的优化,即通过引入叔块机制(注:可参见文末解释),并以难度周期内的叔块率评估网络的拥塞情况为依据,动态调整区块大小与出块速度,从而在不影响网络安全性的前提下,达到提升网络的吞吐量的效果。
同时,Starcoin针对⼀个难度调整周期内的所有gas消耗进行统计,并结合出块速度动态调整gas limit,当网络较为拥堵时系统可以调大区块的 gas limit,反之亦然,由此可以避免出现极端情况下gas费剧烈上升的情况,为用户提供快捷的交易体验。
第二,该项目采用了Facebook专门为Libra开发的MOVE编程语言,这也是一种专门面向数字资产设计的开发语言,同时也针对以太坊Solidity语言的缺陷进行了优化,例如不支持形式化验证等问题,很多设定对开发者不太友好。
根据Nervos开发公司秘猿科技的文章,目前Solidity语言主要存在三大问题,一是不能直接描述资产,资产被编码为一个数字,没有类型;二是稀缺性无法扩展。这些语言只能描述一种稀缺资产。稀缺性被硬编码到语言的语义中,用户自定义的资产要非常小心的重新实现稀缺性;三是访问控制不灵活,访问控制被嵌入语言的语义,用户无法自定义自己的访问控制策略。
相比之下,MOVE语言使用自底向上的静态类型系统,支持形式化验证,逻辑约束更加严格,在代码部署前就可以通过编译器检查出绝大多数的资源使用错误;不仅支持智能合约,还能支持受线性逻辑启发的带语义的自定义资源类型;模块系统可以将数字资产的概念打包封装,开发者可以在模块接口上可以进行灵活的权限控制。
第三,Starcoin设计了灵活的链上治理机制,最主要的特点在于元编程功能,目前大部分公链无法通过去中心化治理对治理本身的规则做动态的调整,但Starcoin可以通过其链上治理策略对该系统本身的治理参数与机制进行去中心化治理,实现比其它公链更高的去中心化程度。同时,Starcoin用户需要质押其治理代币STC方能参与投票治理。
值得注意的是,Starcoin另一个特点在于直接将合约治理内置在 Starcoin 的合约标准库中,这就使得该公链上的项目无需接入第三方DAO工具就可以直接进行去中心化治理,降低了项目方的开发门槛以及更加便于社区建设。
第四,该项目采取了容量可控的状态存储机制,有效缓解以太坊面临的状态爆炸问题。近期,以太坊联合创始人Vitalik Buterin在其撰写的《以太坊状态规模管理诸提议》一文中,再次强调了状态数据爆炸问题的严峻形势:
「以太坊协议所面临的一个最为长久且尚未解决的挑战,就是由于状态数据规模不断增长而带来的问题。以太坊区块链上的许多操作(创建账户、写入一个合约存储槽……)都会给以太坊添加状态内容,而所有全节点都必须存储全量的状态数据,这样才能验证新区块以及制造新区块。」
根据etherscan.io统计的数据显示,当前最流行的以太坊全节点GETH的存储数据大小已达到了671.29 GB,而在去年同期这个数据仅有270.59 GB。
对于该问题,Starcoin的解决方案是把状态相关的信息抽象成了资源,分成 resource 以及 code,其中Resource用来保存用户的数字资产相关信息, code 保存用户的合约脚本。
这些资源的存储对于运行Starcoin 的节点仍然具有相当大的成本压力,Starcoin则计划进一步通过状态存储的计费策略来达到平衡,类似于Nervos与EOS的机制,以激励用户删除、或者清理掉部分老旧状态资源,提升网络整体的存储效率。
在充分汲取行业经验以及创新思路的基础上,Starcoin通过前述设计在很大程度上解决了去中心化、安全性与可拓展性的「不可能三角」问题,同时为金融应用提供了全面优化的运行环境,拥有了在技术与性能方面与其它主流公链抗衡的实力。
随着主网及其安全赏金计划进入启动阶段,Starcoin也将进一步公布具体的DeFi布局进展,这也将是所有公链项目最难「啃」的一道难关,目前绝大多数公链在这一块都动作不大,很难吸引并激励开发者长期开发应用生态,Starcoin如果策略得当,将有机会在这方面取得突破并形成竞争壁垒,但也有待具体观察。
如前所述,如今的公链格局还存在很大的变数,也需要更多的技术方案探索与实践,才能真正推动区块链技术的大规模商业应用,而这个目标已经越来越近了。
注1:如果在同一区块高度,多名矿工都挖出了新的区块,其中一个区块将成为最长链上的区块,而其他区块如果被后续区块引用,将被称为叔块。
注2:访问https://starcoin.org可获取更多项目信息。