(麦田与柏树,梵高)

公链是加密经济时代最大的基础设施之一,有机会参与创造数万亿美元级别以上的大市场。它在开放金融、dApp 以及价值存储方面都有捕获价值的机会。公链有别于中心化公司构建的平台,它是无须许可的设施,所有人都可以在它的设施上搭建应用和创造价值,这是前所未有的形态。这让公链有机会成为区块链领域最大的价值捕获者之一。

圣杯级别的大市场,决定了公链市场一直不会平静。蓝狐笔记一直非常关注公链领域的发展,而 Nervos 也是蓝狐笔记重点关注的项目。为什么 Nervos 值得关注?

Nervos要搅动公链市场格局


比特币开启了加密货币,而以太坊开启了智能合约。比特币诞生之后,为解决比特币交易延迟、费用高等问题,涌现了一大堆竞争币。以太坊出现之后,为解决交易吞吐量、费用高、延迟等问题,也涌现了不少公链。

蓝狐笔记关注过不少公链,Nervos 的白皮书是为数不多的能把区块链的事情说得很清楚的白皮书,它直接地反映了团队的深厚功力,以及对区块链技术和加密经济模式的深入理解。基于这样的原因,蓝狐笔记很愿意看到 Nervos 项目在接下来的落地实践。目前通用公链市场,其实跨链项目本质上也算,已经有非常多的项目在推进。而 Nervos 能否在高手如云的公链市场中开拓出自己的一番天地,甚至取得更大突破?让我们看看未来会发生什么吧。

由于 Nervos 对区块链技术和加密经济的清晰理解,它有机会成为公链市场上的新鲶鱼,搅动公链市场的格局,以取得更大突破。那么,Nervos
Network 到底是什么?

Nervos Network 的哲学:顺势而为中的坚守


从 Nervos
Network 设计中可以看出它对整个公链所处阶段的理解,包括对比特币和以太坊的两大标志性公链的理解,在此基础上,Nervos 提出了自己的发展路径。

公链本质是一个无须许可,任何人都可以参与的网络。它的核心在于去中心化和安全。这是区块链存在的最大意义。公链在这个方面不能妥协。只有去中心化和安全,才能让公链真正不可逆转,实现不依赖于任何第三方的信任。

基于对公链核心特性的深刻认知,Nervos Network 没有考虑在其底层上进行妥协,所以,它没有采用 dpos 之类的共识协议来实现性能的提升。

Nervos Network 的 layer 1 区块链是 Nervos CKB (Common Knowledge
Base),也就是公共知识库。Nervos 所指的公共知识库可以理解为一种公开、透明、不可逆转的事实,通过去中心化的机制来记录和保存,是人人皆可读取的事实,由此称为公共知识,交易、状态、数据等都可包括在内。CKB 采用 PoW 的共识机制,这使得它有抗审查和自运转的能力。它允许任何节点自由参与。

上面我们提到了公链的优点,不可篡改、可信、安全等,但由于它需要在所有节点之间达成共识,并且在所有节点中复制相同的记录,这意味着,在区块链上存入任何数据,其成本都是非常高的,且性能是存在瓶颈的。

也就是说,公链上的交易不仅很贵,而且很慢。但这就是区块链实现去中心化和安全所付出的代价。为了解决这个问题,当前有不同的路径,有分片,有 layer
2,甚至对共识机制上进行优化等。行业中有很多不同妥协和改进,也有坚守。但能做到两全的很少。

此外,目前的公链项目对于共识和计算成本有很多考虑,但对于数据和状态的存储成本考虑较少。且加密货币价格波动大,加密货币价格上涨时,对于普通用户来说,在公链上的操作成本过于昂贵,这也阻碍了它向主流人群扩展的脚步。

Nervos Network 承认了 layer 1 的特点,它把扩展问题放到了 layer 2。Nervos 认为 layer
1 要达成共识,要实现去中心化和安全,本身很贵,性能也有瓶颈,这是一种代价,是一种现实。它并不是试图改变这一点,而是顺应这一点,并把扩展的路径放到了 layer
2。

Nervos 把状态生成和验证分离,把计算放到了链下,满足性能的需求,顺应现有应用的规模,开发者可根据自己的业务特色,采用不同的共识机制,最终把状态托管到 layer
1,这样在兼顾性能和安全上达到了一种均衡。

这是一种顺势而为的哲学,承认 layer 1 的根本特性和弱点,通过与 layer 2 结合,兼顾不同程度的安全和性能的需求,推动加密经济走向主流人群采用。

总结来说,Nervos
Network 的哲学是,坚守公链的根本特性,延续比特币和以太坊的精华,但在此基础上,顺势而为,通过分层架构的均衡设计,以实现公链潜力的最大化。除了顺势而为,Nervos
Network 的设计中,在可持续性上做了很多考虑,这也是值得关注的一个方面。

Nervos 的架构:分层设计**


有什么样的哲学,就有什么样的设计。Nervos 对公链的理解,决定了它的设计方向。Nervos 采用了分层的设计。具体来说,它的 layer
1 负责全球共识、负责安全,layer 2 负责可扩展,承担大部分的应用工作,实现低延迟和高隐私。同时,layer 1 和 layer 2 紧密协作。Layer
1 主要用于定义和存储状态,layer 2 主要处理大部分交易以及生成新状态。也就是说,未来的大规模的网络活动会发生在 layer 2,而 layer
1 服务于最终状态的存储,为 layer 2 的网络活动提供不可逆转的记录、共识和安全。

如此可见,Nervos 通过分层设计,对状态和计算进行解藕,从而让 layer 1 和 layer 2 各司其职,各自发挥更大的作用。Layer
1 提供最基础的全球共识,layer 2 则具备灵活性和可扩展性。

有了 Nervos layer 1 的基础,Nervos layer 2 的状态生成有了更多的灵活性。layer
2 的状态生成可以来自于私有链,来自于无须许可的公链,也可以来自于状态通道,甚至还可以来自现有的网络服务(如互联网公司可以将关键数据上链)、以及客户端本地生成的状态。

比特币和以太坊的 layer 2 也可以发展,为什么还需要 Nervos 的 layer
2 呢?比特币的闪电网络由于套利模型相对于以太坊的 Defi 并没有展示出更大的空间,在其前期快速发展一段时间之后,进入了瓶颈期,它需要找到更好的经济模型,且还受制于比特币的底层协议。以太坊的链下扩容方案受制于其经济模型,且以太坊是面向计算的设计,交易并发的执行较难,存在一定的扩容瓶颈。

作为公链,Nervos
CKB 有共识机制、有它的虚拟机、有它的加密经济机制、有它的点对点通信网络等。其中让人印象最深刻的是它的编程模型、加密经济机制以及共识机制。这也是理解 Nervos 特色的最重要的方面,其中的核心关键词包括 CKB 虚拟机、Cell 模型、代币的二级发行。

1. 对 ASIC 中性化的 PoW 机制

Nervos CKB 的共识机制也是 PoW 机制,它基于比特币的中本聪共识进行了不少优化。首先是尽可能让更多节点参与进来挖矿。

既然是基于工作量的挖矿证明,任何节点都可以自由进入和退出,无须许可,但与此同时,也带来了用户为什么要参与挖矿以及如何实现在节点不可信的情况下最终结果可信的问题?比特币通过挖矿的代币奖励机制、非对称加密、拜占庭容错等来解决这一问题。

Nervos Layer
1 的 CKB 共识也是无须许可挖矿,每个节点自由进入和退出,节点可以参与挖矿生产新区块,也可以验证区块有效性参与共识。为了实现去中心化,让更多的节点能参与进来,CKB
采用的是对 ASIC 中立的 PoW 算法,可以避免挖矿走向中心化。

此外 CKB 共识机制在保留中本聪共识优点的同时,还针对中本聪共识的一些不足(如性能低和自私挖矿等)进行了优化。它可以减少区块传播延迟,缩短区块产生的时间间隔,同时增大对自私挖矿的阻力,让自私挖矿无利可图。

CKB 共识协议通过将中本聪共识的交易确认分解为提案和提交两个步骤来消除区块传播的瓶颈。交易如果将其 txid 发布到区块或叔块,则打包到提案区,如果交易在提案后的几个周期中出现在提交区,则打包该交易。由于新块中的已提交交易已被所有节点接收并在提交时验证,两步确认规则可消除传播瓶颈。此外 CKB 共识协议将所有孤块看作为叔块,并据此预估区块传播延迟,动态调整区块间隔,以缩短延迟提高吞吐量。

Nervos 提出其挖矿机制要实现最终一致性、可用性和公平性,包括所有节点看到完全相同的副本、在合理的时间内对请求进行响应,确保矿工的投入能够得到公平回报。

2. Cell 模型与 CKB 虚拟机


CKB 编程模型是带状态的图灵完备的编程模型,它基于自己的虚拟机和独有的 Cell 模型。CKB 的编程模型主要包含状态生成、状态验证以及状态的存储。

在 Nervos
CKB 的设计中,跟其他去中心化应用不同的是,基于 CKB 的去中心化应用,其状态的生成和验证是分离的。也就是说,状态的生成和验证在不同的地方执行,且可以采用不同的算法实现。将状态生成和验证解藕为系统的扩展性和应用的大规模采用奠定了逻辑的基础。

首先是状态在链下生成(例如本地客户端执行),新状态生成后会被打包到交易并广播到网络。CKB 的节点在链上执行验证,输入相同的前置状态和用户输入,验证结果是否跟交易输出相同。客户端生成的新状态是交易的输出,也是 CKB 中提到 Cell。Cell 是 CKB 中最基本的状态存储单元,这在下文的 Cell 模型会提及。

CKB 的状态生成和验证分离的设计有几个好处:由于交易输入的是链下生成的新状态(也就是结果),它无须在链上进行计算生成新状态(这跟多数公链不同),这样对应用来说,新状态是确定的,在链上进行的交易只是验证。此外,它还可以实现并行处理、实现更高效的资源利用(因为应用的逻辑被分离,且在不同地方执行)、更灵活的状态生成等。

接下来重点介绍 Cell 模型,这是 Nervos 独有的设计。

Cell 是 Nervos
CKB 中最基本的状态存储单元,用户可以在其中包含任意的状态,也是用户拥有的资产。Cell 由容量、数据、类型脚本、锁定脚本字段组成。容量代表 Cell 的大小限制。数据主要是状态数据在 Cell 中的存储,它的总字节数不能大于 Cell 的容量。类型脚本就是验证状态的脚本,锁定脚本则代表了 Cell 的所有权。

Cell 存储的是状态,也是不可篡改的,每个 Cell 不能同时作为两个不同交易的输入,一旦用户提供包含新状态的 Cell,存储旧状态的 Cell 会被标记为历史数据。也就是说,所有包含新状态的 Cell 代表了 CKB 的最新共同知识。

由于拥有类型脚本和锁定脚本,Cell 模型跟比特币的 UTXO 模型和以太坊的账户模型相比,更加通用。UTXO 模型使用锁定脚本定义资产所有权,账户模型则根据余额来定义资产所有权。Nervos
CKB 通过类型脚本和锁定脚本的设计,带来一些好处,例如可以方便创建 M-N 多签脚本,实现多重签名;可以把闲置 Cell 租借给其他人,同时还拥有对 Cell 的所有权等。

最后是 Nervos CKB 的虚拟机。虚拟机是通过软件模拟的拥有硬件系统功能的完整计算机系统,它运行在完全隔离的环境中。CKB 虚拟机用于执行类型脚本和锁定脚本
,它使用的是标准的 RISC-V 指令集。

Nervos CKB 虚拟机有两个值得关注的特色:一是,它是一个跟密码学操作无关的虚拟机;二是,它是一个面向硬件的指令集架构。这有什么好处?

跟以太坊不同的是,CKB 虚拟机没有将任何密码学指令写死在 CKB 虚拟机上。比特币和以太坊都将密码学原语写死在协议中,如果需要新增密码学原语,只能通过软分叉或硬分叉方式实施。Nervos 的 CKB 虚拟机能像普通脚本一样部署和使用新密码学原语。这样就带来了灵活性,例如 dApp 开发者可以在 Nervos 上使用新的加密技术,例如 Schnorr 签名、BLS 签名、zkSNARKs 等。

CKB 虚拟机使用标准 RISC-V 指令集,也有利于其获得更多的产业支持。此外,RISC-V 是面向硬件设计的指令集,有稳定的特性,利于在无须硬分叉的情况下实现与生态系统的兼容性。

最后,来看看 Nervos 的交易过程。交易的本质是状态的变化。Nervos 的每笔交易都会导致 Cell 的转移或更新。每笔交易的状态变化要么全部成功,要么全部失败。交易包括依赖、输入以及输出。依赖是指提供验证交易所需要的只读 Cell。输入则包含了 Cell 引用和证明。Cell 引用指向交易中要被转移或更新的 Cell;证明主要用于验证交易创建者交易权限。输出就是状态发生变化所产生的新 Cell。

Nervos CKB 的二级发行:可持续发展之路**


让人耳目一新的还有 Nervos 的代币经济学设计,它不仅要保证安全,还要实现长久的安全,也就是实现分布式网络的可持续性。

区块链代币经济机制的最核心目的是要实现其系统的安全。而激励是它实现目的的手段。它充分利用了博弈论,不同的主体做出贡献不仅利于自身利益最大化,也利于整体系统的发展。

随着时间的推移,比特币网络的 btc 逐渐形成了价值存储和交易媒介的功能。但如果考虑到它每四年区块奖励减半的发行模式,它的安全性如何实现可持续?比特币的安全来源于网络的价值,比特币价值越高,算力竞争越激励,攻击其网络的成本就越高。由于比特币每四年减半,2020 年 5 月份中旬,区块奖励将其从 12.5 个 btc 减少到 6.25 个 btc,相当于每天新发行的 btc 从 1800 个直接减少到 900 个,2024 年还会继续减半。从目前的矿工收益来看,按照目前价格每天大约在 2000 多万美元,区块奖励占据矿工收益的绝大部分,而交易费占据比例很小。一旦代币奖励变小或者消失,那么,矿工只剩下交易手续费的收益。

与此同时,在比特币的设计中,它对区块大小进行了限制,它交易处理能力有天然的限制,这意味者手续费模式可能无法为矿工带来足够的激励。因为交易的规模不可能很大,而且很多持有者交易的次数并不频繁。以手续费维持矿工的收益水平可能无法持续。如果矿工的收益得不到保证,那么矿工有什么意愿来贡献算力?如果矿工得不到恰当的激励,那么比特币的网络就无法得到可持续的安全。这是比特币未来需要解决的问题。

CKB 的代币经济模型希望激励用户、开发者和节点运营者持续为安全做贡献。跟多数区块链不同的是,CKB 经济模型的核心对象不是计算,而是状态。它对利益相关者的奖励通过 Cell 容量和交易费。

目前 Nervos
CKB 主要的成本来自于状态的验证和存储。全节点验证新状态需要付出计算成本,状态的存储需要全节点持续提供磁盘空间。CKB 针对存储空间成本作了更合理的设计,使用 Cell 的用户,其付出的存储成本同时跟时间和空间相关。也就是占用容量越大、占用时间越长,用户要付出的成本越高。这样设计的好处是用户占用 Cell 容量,就要付出更多状态成本,这促使用户做出更理性的选择:尽可能少地产生 Cell,提高存储效率,同时把闲置的 Cell 租借给其他人。

除了存储成本,对 Cell 状态的更新或转移都会产生交易费用。矿工设定交易的费率,由市场决定实际的交易费用。另外,Nervos 的交易费采用了经济抽象,也就是矿工可以接收 CKB 的原生资产作为交易费用,也可以接收其他自定义的资产作为交易费用。这也是因为其原生资产的核心在于保护 CKB 共同知识的存储安全,而不是计算为中心。这样可以提供更好的用户体验。

Nervos 的原生代币是 CK Byte,代表了 Cell 的空间。比如一个人拥有 100 个 CK Bytes,TA 就可以创建空间大小为 100
Bytes 的一个或多个 Cell。这个空间可以用来存储资产、应用状态或其他数据。

上面提到 CKB 的代币激励机制考虑了其长期的可持续性。为什么这么说?CKB 有一个二级发行的机制。为什么叫二级发行?它是相对于基础发行来说的。比如比特币的区块奖励就是基础发行,每 4 年减半一次。而 CKB 除了跟比特币一样有减半的基础发行之外,还有额外的二级发行。

为什么会有二级发行?这不是产生通胀吗?这里首要考虑的是链的可持续的安全。它可以激励矿工持续为链提供贡献,同时,对于代币的持有人来说,通过同比发放代币,也不用担心稀释问题。

在 Nervos 的 Layer
1,其原生代币代表的是对全局状态的占用。它是一种稀缺的资源,它会限制状态存储的增长。因此,它在市场上会因为其资源的稀缺性而变得有价值。

基础发行减半模式意味着两个事情:一是,原生代币的基础发行逐渐减少,由于原生代币代表了对全局状态的占用,随着对全局状态存储空间需求的增加,原生代币能够捕捉到 Nervos 整个生态增长的价值。二是,如果原生代币发行完毕,矿工的收益将有限,对系统的维持安全不利。

在这样的背景下,Nervos CKB 二级发行的设计出现了。Nervos
CKB 考虑了存储状态的时间属性,不是采用一次性收费然后完结的方式。它通过二级发行,相当于对使用原生代币 CK
Byte 存储状态的用户收取状态租金,也类似于通胀税。

而有些用户并没有使用原生代币 CK
Byte 存储状态,因为有二级发行,他们也承担了通胀。这个时候怎么办?Nervos 有一个 NervosDAO,它允许用户将其原生代币 CK
Byte 锁在一个自动合约 NervosDAO 中。所有将原生代币 CK Byte 锁入其中的用户,都能获得二级发行的相应比例代币。

举个例子,如果所有 CK Byte 的 50% 被用户用于存储状态,所有 CK
Byte 的 30% 锁定于 NervosDAO 合约,剩余 20% 处于流动中。在这种状态下,二级发行怎么分配?二级发行的出块奖励中,50% 会奖励给矿工,30% 会按比例分配给在 NervosDAO 中锁定代币的用户,剩余 20% 的代币,通过社区的治理机制来处理,在达成治理共识之前,这部分代币会被烧毁。

这个二级发行机制根本目的是保持系统的可持续的安全。矿工在挖矿时,不仅可以获得基础发行的代币奖励和交易手续费,还可以根据状态存储占用获得一定比例的二级发行代币。将来基础发行完毕之后,矿工可以继续获得状态租赁收益,维持系统长期安全。同时,它的 NervosDAO 设计还兼顾了持币者的利益,不用担心代币稀释问题。

Nervos CKB 原生代币 CK Byte 如何捕获价值?

CK Byte 捕捉价值从两个方面来看,一个是对存储空间的需求规模。由于 CK
Byte 代表了对全局状态空间占用。随着越来越多的应用将其最新状态(资产或数据等)存储在 Nervos CKB 上,那么对 CK
Byte 的需求就会增加,原生代币的流通量减少,CK Byte 的价值会提升。也就是说,CK Byte 的价值跟 Nervos CKB 网络经济的总价值相关,最终 CK
Byte 的价值有多高,取决于对 Nervos CKB 链上状态托管的需求规模有多大。

二是,由于 CKB 有二级发行机制,为了避免被稀释,代币持有人也有动力将其代币锁定在 NervosDAO 上,这有利减少流通量和降低流通的速率。

此外,Nervos
CKB 的代币价值提升能让所有参与者获益,存储资产用户的资产更加安全、矿工的收入更高、代币持有者的代币更有价值、开发者可以存储更大的价值。代币的价值越高,就越能激励更多人参与,从而提升系统的安全性和实现可持续。

如果将来原生代币 CK
Byte 价格比较贵,早期的开发者可以采用租赁的形式来进行项目的启动,以较低的成本来完成产品的市场验证;此外,也可以将 CKB 上资产转移到 Nervos 网络中其他交易型的区块链,以降低成本。


结语


通过 layer1 和 layer2 的分层设计,Nervos CKB
让它们各自发挥自身的优势,从而兼顾安全和性能,为构建大规模人群采用的 dApp 准备了基础设施。此外,它的二级发行的代币激励机制使其解决了分布式系统长期可持续性发展的问题。Nervos 在公链设计上有不少自身的特色,这让人期待它的落地和后续发展。

------

风险警示:蓝狐笔记所有文章都不能作为投资建议或推荐投资有风险,投资应该考虑个人风险承受能力
,建议对项目进行深入考察,慎重做好自己的投资决策。

通往区块链的新世界:关注“蓝狐笔记”公众号:lanhubiji

加入蓝狐笔记的知识星球https://t.zsxq.com/iaQNnIq

加入蓝狐笔记群微信:pacinoli

来源链接:mp.weixin.qq.com