撰文:LeftOfCenter,链闻
区块链世界在起伏中依然一路向前,经历了 2017 年末和 2018 年初的加密货币热潮和 2018 年后半年的区块链寒冬,对于曾经融得数千万美元的大型公链项目来说,终于到了交作业和亮成果的时刻。
在全球瞩目的公链项目中,Nervos 算作是中国明星公链项目的代表之一。
这个项目每每被当作是中国新一代区块链的代表项目,原因之一是,其创始团队在区块链和加密行业深耕多年,算得上明星团队。Nervos 架构师是曾与 Vitalik Buterin 共同开发 Casper 和 Sharding 的谢晗剑(社区中更多人以「Jan」称之) 。
创始人有云币交易平台的核心开发者太檑(Terry Tai)、曾任云币网 CTO 与 imToken 联合创始人的吕国宁(Daniel),以及远在美国密歇根州、但是对代币经济模型很有建树的 Kevin Wang。该团队的众多开发者也都在区块链开发社区颇为活跃,拥有丰富的开发经验。
左二 Daniel Lv、左三 Kevin Wang、左四 Terry Tai、右一 Jan Xie
原因之二是,Nervos 在去年 7 月公开亮相,当时完成了 2800 万美元的融资。这笔融资由红杉和 HashKey Capital 两家顶级投资机构领投,招银国际、经纬中国、九合创投、策源创投、峰瑞资本、imToken、星火矿池、币信、Polychain Capital、FBG Capital、1kx、1Confirmation 等一众中外一线投资机构参与了投资。明星投资机构的加持让其光环闪耀。
就在最近,Nervos 团队顺利完成新一轮募资,于近日冻结 CKB 代码库,并计划在 11 月 16 日启动 CKB 主网「Lina」。
在 Nervos 公开亮相一年多之后,主网上线箭在弦上,是时候全面了解这个项目究竟要做什么,以及在过去的一年多时间里,这个明星公链项目究竟做了些什么。
作为明星项目 Nervos 的架构师,谢晗剑非常低调,除了偶尔撰写一些文章外,很少出头露面。但是在区块链开发社区中有关于他的江湖传闻,其中较出名的一则是,「他曾经为以太坊手撸一条 Ruby-Ethereum」——意思是说,他用 Ruby 语言完整实现了 Ethereum。
他说,之所以选择 Ruby,一方面是因为本身的 Ruby 程序员背景,更重要的是,Ruby 作为一门开源的动态编程语言,句法优雅,注重简洁和效率。「简洁」和「效率」,是他笃信的美学。
也正是对「简洁」和「效率」的执念,才有了 Nervos 的最初创想:利用「分层解耦」的解决方案,解决了区块链的性能难题。
这种思路完全有别于去年市场上出现的大量试图解决区块链性能难题的公链项目。与那些更多希望尝试通过创新性的「共识算法」解决所谓的「区块链不可能三角」的项目不同,Nervos 团队则更倾向于用一种「重新理解区块链」的思路,提出全新的架构和分层设计。
他们给区块链爱好者和开发者们带来了新的视野。
区块链的性能难题是指,在单层公链上,既要考虑性能,也要考虑安全性,还要尽可能实现去中心,很难三全。每一次智能合约的调用和每一次状态的更新,都必须发起一个链上交易,达成所有节点共识、验证和记录后生效。
既然如此,谢晗剑和他的团队认为,那为何不切换一下视角,重新想想「区块链到底能做什么?」
他指出,如果只做一件事,那么,区块链就是创造最小共识成本的信任,然后通过这个信任作为锚点,创造很多新的价值。作为 Nervos 的架构师, 谢晗剑认为:「区块链最大优势是创造安全和信任,既然如此,那么区块链该做它应该做的事情,而不是什么都做,要把三个都满足」。
谢晗剑认为,目前很多 Layer 2 方案难以落地。究其原因,谢晗剑称,是因为目前 Layer 1 都没有很好地适配 Layer 2。
他说,如果认为分层是未来的发展方向,那么,就应该从一开始就考虑到上层协议和分层网络的需求,在分层的大框架下去设计区块链协议,「这是为什么区块链并不天然是 Layer 1,Layer 1 是需要设计的。这也是为什么我们选择设计 CKB 这样一个新的区块链协议」。
在过去这一年中,在中国的区块链社区中,谢晗剑和他的团队因积极向社区「布道」区块链知识而著名。他们的「布道」,并不是推荐某个区块链项目的代币,或者预测某种代币的价格走势,而是用自己的理解重新阐述区块链技术的内涵及可能的架构设计。
Nervos 提出了专为 Layer 2 设计的 Layer 1 底层公链解决方案,采用分层解耦的方法,最大化利用底层生成的信任,通过多组协议把底层链安全性传递到 Layer 2。
由 Layer 2 负责效率,追求极致的性能,从而解决了区块链的性能难题。分层就像是分工协作,不仅提高了效率,架构上实现起来也更加简洁。
听上去很简单,但是让区块链社区理解其中的奥秘并不容易。
在 Nervos 的系统架构中,分别由 Layer 1 和 Layer 2 两层组成。其中,Layer 1 作为信任的锚,只专注安全性,通过多组协议将安全性传递到上层。
也就是说,智能合约的执行可以在 Layer 2 完成,无需进入 Layer 1 的区块链,只是将最后状态发送回链上进行清算,或者 Layer 2 出现作弊的情况下,才调用 Layer 1 层,返回 Layer 1 进行确认。
Nervos 网络中的 Layer 1 底层区块链被称为「Common Knowledge Base」,即「共同知识库」。它是 Nervos 整个网络的信任引擎,就像是能识别密码学证明的「法院」(Crypto Court),通过对用户提交的证明来进行各种审判。
Layer 1 层专注创建全球范围的共识,解决安全和信任问题,并通过多个协议,嫁接好与第二层间的交互关系,至于性能和扩展性等问题,则交给 Layer 2 来解决。
Nervos 团队说,他们的工作重点是做好 Layer 1 这一层,未来为更多的 Layer 2 层提供服务,为全球的 Layer 2 团队提供支撑。
基于「分层解耦」的框架设计,在过去一年多的时间里,Nervos 团队的 20 多位核心开发者经过 400 多个日夜、5 次封闭开发后,完成了一系列里程碑产品的开发和交付:2018 年 11 月,Nervos 网络的底层公链 CKB 代码开源;2019 年 5 月,第一个 CKB 测试网 Rylai 正式上线;2019 年 7 月,PoW 哈希算法 Eaglesong 正式发布;近日 CKB 代码库完成并冻结。
Nervos 开发团队
所有这些,都是为实现该团队今年的核心目标而服务:Nervos 将于 11 月 16 日启动 CKB 主网「Lina」。
这一年多的时间里,Nervos 团队除了完成核心技术和产品开发之外,更是积极在社区中进行区块链和分层解决方案的布道和科普——对于一个公链项目,获得开发者的支持并在开发者社区中建立共识,是实现生态系统良性循环的关键。
一年以来,Nervos 在杭州持续举办了近 30 期线下技术分享活动。这个城市中的区块链开发者和爱好者在 Nervos 团队的组织下,在周三的晚间集聚,交流行业中的新技术和热门趋势。「Crypto Wednesday」已经成为杭州区块链爱好者们的接头暗号。
欧洲的区块链投资基金 1kx 创始合伙人 Lasse Clausen 向链闻讲过他认识 Nervos 团队的故事。他说,在一次中国之行中,他在杭州参加了一个区块链开发者的线下聚会。「我没有想到在中国,竟然有这么多对区块链感兴趣的开发者。并且,其中几个人让人印象深刻。」他后来发现,原来他们是 Nervos 团队的成员。
Lasse Clausen 在柏林驻扎多年,他熟悉柏林这个密码朋克聚集地和硬核技术社区的一切。他坦言,之前一直怀疑中国团队是否有真正的硬核技术开发能力,直到他遇到 Nervos 团队,和他们深入交流之后,并目睹了围绕在 Nervos 团队周围的开发者生态,改变了这个看法。
Nervos 团队还运营着一档针对区块链技术的播客节目「forkit」,科普区块链技术的方方面面和发展方向。全国范围内,Nervos 团队开展了 12 场以「拥抱百花齐放 Layer 2」为主题的巡回线下活动,以及在杭州举办了近 30 场面向开发者的 Dev Meetup,科普区块链这门晦涩的技术。
Nervos 运营的区块链科普向播客「forkit」
这样的活动还活跃在美国硅谷、旧金山、纽约、柏林、莫斯科,以及东京、首尔、曼谷等亚洲城市。自今年 7 月以来,Nervos 举办了十余场以「Beyond Consensus」为主题的 Meetup,和区块链爱好者讨论超越共识之外的方方面面,探讨区块链未来更多的可能性。
在旧金山、纽约、柏林等城市的区块链周上,Nervos 是最活跃的中国公链项目。
Nervos 举办多场 Meetup。
曾在活动海报中留下一段字符串,有心人可以尝试解锁彩蛋?
过去这一年多时间,Nervos 的社区已经开始有机生长:Nervos 经济模型英文版发布后,来自社区爱好者自发翻译成中文,并撰写了众多探讨和解读的文章;CKB 测试网 Rylai 上线后,论坛「矿工酒馆」中自发产生了测试网教程,甚至还有来自韩国开发者提交的反馈意见。
同时,在这一年时间中,Nervos 的生态建设已经取得显著进展。作为一个专为 Layer 2 设计的区块链网络,这个引人瞩目的特征也吸引了不少优秀的 Layer 2 项目。Nervos 和链下扩容技术方案 Celer 以及定位 Layer 2 操作系统的美国初创团队 Alacris 建立了合作关系。
Nervos 联合创始人吕国宁曾经是 Ruby 开源软件在中国的倡导者,是 Ruby 开源社区在中国的核心组织者和推动者。
Nervos 几位创始人同时也是以太坊中国社区最早的活跃分子和建设者。他们明白,在区块链这个开源世界中,如何通过布道和分享带来更广泛的关注,在开发者中形成共识,知道这其中的巨大意义。
在开发语言的选择上,底层公链 Nervos CKB 采用了 Rust 语言编写。这是一种适用于大规模系统开发的强类型语言,其安全、高性能、并发编程的属性,天然适合区块链需要的分布式、加密和安全敏感的特性。
目前越来越多的大型区块链项目都在采纳 Rust 为开发语言,微软在新的 Azure 物联网框架中部分使用了 Rust,Facebook 稳定币项目 Libra 采用的智能合约语言 MOVE,也是深受 Rust 语言的影响,还有很多明星区块链项目也采用了 Rust ,包括 Polkadot、Near、Solana 等即将上线的公链项目。
而 Nervos 团队很早已经开始布局,推动 Rust 开发社区的发展,并吸引 Rust 开发者进入区块链世界。
2019 年 4 月底,Nervos 团队与分布式关系型数据库公司 PingCAP 在中国北京主办了一场 Rust 开发者大会。这是首次在亚洲举办的 Rust 大会,吸引了来自亚洲、乃至全球各个地区的 Rust 开发者齐聚北京。
Nervos 联合创始人吕国宁说,来自全球的开发者在这场大会上与国内的开发者进行了广泛的交流,在他们看来,「Rust 是一门最适合区块链开发的编程语言」。
除了采用 Rust 这种「最适合区块链开发的编程语言」,Nervos 希望在各方面向开发者提供友好的环境。
Nervos 自主开发的虚拟机 CKB-VM 使用的是 RISC-V 指令集。Nervos 联合创始人吕国宁介绍说,这是团队经过慎重的考虑后的决定,RISC-V 拥有强大的生态,意味着有更加成熟的开发环境,对开发者来说在智能合约语言的选择上有更多可能性。
Nervos 还基于 UTXO 模型,设计出泛化、具有可扩展性的 Cell 模型,从而可以天然地契合链上验证链下计算的业务逻辑。
「我们还可以提供灵活的交易签名,这样,开发者可以自行选择更合适自己场景的签名方案,从而能够应用在更多的场景中。总之,我们自己是开发者出身,我们希望给开发者提供最佳、最便利的开发环境。」吕国宁说。
吕国宁认为,区块链对技术的要求较高,导致区块链技术的科普仍然面临认知上的障碍,这是无法实现普遍使用的主要原因,也是整个行业尚待解决的关键问题,但是最起码,可以先从让更多开发者参与区块链开发做起。
设定了分层框架,建立了开发者社区,但是这还远远不够。对一个公链项目,如何通过代币经济学的设计来激励其社区长期持续运转,是一个比扩容本身更重要的一个问题。
对于一个公链项目而言,好的经济模型设计绝不亚于分布式技术上的研发突破。就如同设计一个复杂的社会体系,经济模型可以让公链生态体系中不同的角色合理分工,齐心协作,实现真正的「社会可扩展性」。公链经济系统的设计之难,难在「如何捕捉价值」。
大概去年 9 月左右,身在美国密歇根州安娜堡的 Nervos 另一位联合创始人 Kevin Wang 便已经和其他几位创始人一同开始着手设计 Nervos 的经济模型。
在设计经济模型的过程中,Kevin Wang 研究了比特币和以太坊这两个目前最成熟的去中心化区块链网络,比较了它们的实践经验,还有被市场诟病的「弱点」,拿出了初步的思路。
然后,又与包括经济学家邹传伟、乔治梅森大学金融系助理教授李家荪、北京大学前沿计算研究中心邓小铁教授等经济学专家进行了交流和探讨。经过多次修改之后,直到今年 3 月初,Nervos 团队拿出了一套经济模型提案。
这套经济模型提案甫一发表,迅速在海内外加密社区中掀起众多讨论。
Kevin Wang 提出,对于一个底层公链来说,只有捕获到生态系统中产生的价值,平台上资产价值才会随着资产价值上涨而升值 ,从而提高双花攻击的成本。
他说,「安全是整个平台的关键,其重要程度不亚于一个国家的军队,在现实世界中,国家靠军队实现信用担保,让主权国家的货币流通成为可能。而在加密网络中,靠矿工保卫整个加密网络的安全。」
基于此,Kevin Wang 认为,对于一个智能合约平台,必须通过经济模型的设计实现「价值存储」的功能。也就是,平台上价值的增长一定要反映到平台中的原生资产上,使加密货币的原生资产能够随着生态资产的增长而升值,这样,才能保证整个网络的安全。
那 Nervos 网络这种「价值存储」功能如何实现呢?
结合了将区块链底层和 Layer 2 分层设计的特点,Nervos 提出,有价值的东西一定是稀缺资源,而在公链中,这个稀缺资源就是全球共识的存储空间。存储本身并不稀缺,拥有共识的存储也不稀缺,但有安全度的存储一定是稀缺的,因为安全需要矿工持续投入资金和电力来提供。
为此,Kevin Wang 和他的团队为 Nervos 提出了一种约束全球状态的定价方法,运用货币政策对状态存储空间进行限制发行,让状态存储空间成为稀缺资源,可以通过市场被定价和交易。
在 Nervos 网络中,CKB 代表的是占用全局状态的权利。具体来说,Nervos 将固定空间大小的全局共识存储锚定到原生代币 CKB 上,通过挖矿的方式奖励给矿工,作为保护网络的激励措施。其中出块奖励分为两个部分,「基础发行」和「二级发行」,奖励的都是 CKB 代币。
「基础发行」总供给量有限,大约每 4 年减半一次,直到所有「基础发行」的代币被挖出。
在 Nervos 的网络系统里, Layer 1 用来存储全局的状态共识,即存储功能,Layer 2 负责的是状态生成,即计算功能。也就是说,业务运算在 Layer 2 上实现,但状态验证和存储,一定要回 Layer 1 上处理。这样,所有接入 CKB 网络的应用,都共享 Layer 1 提供的安全性;而当这些应用回到 Layer 1 验证或存储数据时,需要向网络支付 CKB 请求矿工验证。
随着 Layer 2 上应用越来越多,生态建设更加繁荣,特定的拥有共识和安全性的存储需求会增加,相应的存储空间成为越来越稀缺的资源,带动 CKB 增值,由此产生了生态提供的价值反映到原生代币上的一条路径。
如果觉得这样的描述非常抽象,不妨看看现实世界中对应的例子:在现实世界中,只有基础设施和社区资源成熟的城市,才会吸引更多的居民涌入,带动整个城市繁荣后,最后才有可能透过地价的传导,让这个城市的土地增值。让土地增值的方法有多种,比如做生意、装修转让、开发商品房出售、开发写字楼出租等。
而 Nervos 底层公链原生代币 CKB 代表的是公链存储空间,随着开发者创造更多有价值的应用,能为整个网络提供更多价值,从而推动整个社区的发展和地价增值。生态中任何有价值的应用都会带来对底层公链状态存储的需求,从而链上的任何其他应用的价值都会传导至 CKB,带动 CKB 本身的升值。
不过,Nervos 和比特币一样,采取了有限通缩模式,虽然能够保证稀缺性,但当所有代币被挖完后,矿工激励将只剩下手续费,网络的安全性有可能因为矿工收入下降而无法得到保障。
为了让区块链网络的运营者(如矿工)获得足够的补偿,在「基础发行」之外,Nervos 别具创意地提出了一个「二级发行」的概念——CKB 的「二级发行」,随着时间的推移,二次发行率逐渐趋近于零。,主要目的是用于补贴矿工,让「基础发行」之后仍然对矿工保持足够的吸引力,维护网络安全。
通过「二级发行」这种巧妙的增发方式,Nervos 实现了对作为网络基础设施中关键资源的 CKB 存储状态收费,并将其转移给提供存储空间的矿工。
对于那些没有长期持有 CKB 而没有出售意图的持有者,可以将代币存入并锁定 NervosDAO,以抵消二次增发带来的稀释效应。
Nervos DAO 是一个智能合约,类似于银行的定期存款功能,或者现在火热的 Staking,对于长期代币的持有者,只要持币用户将代币锁定在 NervosDAO 中,可以得到一定利息作为回报,从而抵消增发带来的影响。
通过这样的经济模型设计, Nervos 希望让整个系统的所有参与者和利益相关方为了一个长期的共同目标而努力,所有人都自驱地为这个目标努力,只有这样,生态系统才可持续发展。
在亮相一年多的之后,Nervos 团队目前所有的重心皆放在今年第四季度主网上线之上。现在,倒计时已经开始。
Nervos 将于 11 月 16 日启动 CKB 主网「Lina」
按照 Nervos 最新公布的消息,当今年第四季度主网上线之时,其底层 CKB 区块链将在创世区块中释放原生代币 CKB 的初始发行量约为 336 亿枚,其中,有 25% 释放后即刻销毁。
所谓即刻销毁,其实是将这 84 亿 CKB 永远冻结在 Nervos 区块链上,旨在致敬中本聪,按照 CKB 代币的公开销售价格,这份送给中本聪的礼物约合 8400 万美元。
这个乐于拿出价值 8400 万美元向中本聪致敬、其核心成员曾经在以太坊早期与 Vitalik 并肩建设的团队当然明白,等到今年第四季度主网上线,其探索之旅也不过是刚刚开始。
无论是分层的构架设计,还是激励体系的设计,以及对开发者社区的教育和建设,Nervos 团队为其网络的未来发展设定了一个良好的开始。
但是这也仅仅只是开始。如果将 Nervos 底层公链看作是一座城市,那么拥有 1 枚 CKB 对应的空间就类似于拥有一平方米的土地。如同在一个现实世界中,一个城市的繁荣离不开这个城市的建设者。
在一个底层公链中,能够为整座城市创造价值的是开发者,通过使用 CKB 的存储空间开发 DApp 或 DeFi 应用,建立一个 Layer 2 应用链,让更多的人来平台上二次开发,或者把这块存储空间像土地一样出租出去,收取固定的利息,才能真正推动 Nervos 网络的健康发展。那才是一个更长的旅途,也是摆在 Nervos 团队面前新的征程。