http://www.7klian.com

在 CKB 上编程到底有什么样的优势?

刊行资产是区块链开拓者的一项重要的需求,原生代币和其它刊行的资产,都应该是一等国民(First-class Asset),也就是任何一个资产的所有者可以拥有本身的状态所有权,而不是像 ERC20 Token 那样,所有持有者的同范例资产都必需共用一把钥匙。因此,在 Nervos CKB 中,岂论是持有 CKByte 这样的原生代币,照旧持有其他用户自界说的 Token(User Defined Token,UDT),用户都是将这些资产别离锁在本身独自所有的小格子之中,而且只有用户本身才有解锁的钥匙。

Nervos 从项目降生之初,就一直秉持着本身的设计理念,僵持分层的设计方案,底层去办理安详和去中心化的问题,上层去办理效率、扩容、多成果的问题,但愿可以通过这样的方法去办理世界的不行能三角问题。Nervos 是一套完整的办理方案,经济模子、共鸣、虚拟机、Cell 模子、Layer 2 等等,彼此之间环环相扣,形成一个完整又细密的系统。
为什么单个合约裂痕就能造成如此大的伤害呢?因为 ERC20 刊行的 Token 本质上是将所有用户的资产都存在一个合约地点中,因此当这些 dApp 发生裂痕时,所有该资产的状态都大概产生变换,从而造成经济损失。在 ERC20 这样的模子下刊行的资产,就像将该种资产全部都锁进大金库中。可想而知,只要金库的任何一个处所产生了裂痕,那么外来的人就可以进入金库,并将所有的资产都搬走。
开拓者刊行的资产在 CKB 上都是一等国民
3.CKB 上可以实现可更新合约
在 Nervos CKB 的设计哲学中,假如要将智能合约的风险降到最低,那么必需要将这些智能合约的「状态」去中心化。因为状态抉择了资产的所有权,唯有将其去中心化,才气制止因状态的中心化而导致的智能合约裂痕,进而发生系统性风险,最终造玉成部人的资产损失。
假如您曾经在以太坊长举办开拓,就会知道在以太坊上无法通过一个生意业务挪用两个先前的合约,因为本质上我们需要挪用的是两个合约账户,这时候就必需得到两次的合约授权(Approved),但在 CKB 中,我们可以将很多的合约通过 cell dep 与 type script 被挪用,可以在利用更少的资源下实现更高的组合性。
对付 CKB 而言,其实生意业务的手续费付出具有很是大的机动性,我们可以通过 Open Transaction 的方法,将各个生意业务举办结构,这样的环境下我们不单可以更机动的用各类非原生的代币付出手续费,绕开因原生代币不敷而无法付出手续费 ,生意业务无法乐成的困境,甚至在结构生意业务时,我们还可以选择让生意业务的另一方帮你付出手续费。
这种特性的威力是庞大的,举例来说,你可以用和其他公链的地点和私钥去签署和收发 CKB 上的生意业务,因此如 MetaMask 等,这类在其他链上拥有成千上万用户的东西,可以在开拓者开拓好一款 CKB 上的产物之后直接为他所用,今朝 Lay2 团队 的 ckb.pw 正在做这个偏向的尽力;别的,像各类先进的暗码学技能如 Schnorr 签名、BLS 签名,和 zkSNARKs/zkSTARKs 等,都可以在 CKB 上利用。这也让安详性相关的签名机制、异构跨链、zk rollup 或 BLS rollup 平分层的尝试性技能将来更有时机在 Nervos 上实现。
5.Cell dep 挪用的机动性
为什么可以或许让资产成为一等国民?这是因为在 Nervos CKB 中,所有的资产都储存在泛化的 UTXO 模子——Cell 之中,而且可以通过 Cell 中的 lock script 验证所有权,以及通过 type script 验证新 cell 的生成,这样的状态储存与验证法则同时合用于 CKByte 和 UDT,因此低落了任何资产刊行时,因合约裂痕而造成资产损失的风险。
CKB 是开拓者可以或许任意玩耍的机动平台
最后,CKB 为各人提供了极大的机动性和安详性,而对付它的摸索还只是方才开始,它的许多成果和潜力还远远没有被各人发明。

CKB 焦点只界说了底层的虚拟机模子,理论上任何提供了 RISC-V 后端的语言均可以用来开拓 CKB 合约,而不需要范围在特定语言才气够举办编程,因此这样的设计在将来可以低落更多开拓者的进入门槛,而且更可以或许捕捉利用各类语言的开拓者进入 CKB 生态之中。
除了上面提到了机动性之外,在 CKB 上的开拓者还可以在拥抱机动编程模子的同时,享有确定性。因为做为 Layer 1 的 Nervos CKB,,它只认真执行状态的验证,状态的生成产生在链下,因此它并不会像以太坊那样,开拓者的合约需要颠末计较才气获得成就。在 CKB 中,我们在链下就可以或许预期生意业务的输出状态,让整体生意业务的执行可以满意「确定性」这个去中心化应用的焦点要求。所以,在状态具有确定性的特性下,开拓者的合约可以制止被挪作它用,或是受到恶意进攻。这样一来,我们就可以或许最洪流平简直保整体系统的不变性。
2.你可以用各类暗码学原语来作为资产的钥匙:
Nervos CKB?哦,这是条公链啊?那他们的智能合约用啥语言写啊?
这样的问题在 CKB 上是不存在的,因为 CKB VM 是基于开源的 RISC-V 指令集开拓的,利用了遍及实现的 ELF 名目,也就是说,任何可以编译成 RISC-V 措施的语言均可以直接用来为 CKB 开拓智能合约;同时团结 Cell 模子这样的编程模子,我们可以将待验证的合约放在 type script 中,并将所有权的验证放在 lock script 中,这两大设计可以让在 CKB 上的编程拥有很是大的机动性。
本文试着从 CKB 中资产是一等国民、编程上的机动性,以及状态简直定性这三个角度举办叙述。
回首已往,我们可以看到 ERC20 的 Token 存在着很多系统的懦弱性,譬喻著名的 The DAO 事件,以及 2018 年美链的合约裂痕,它们都因为智能合约中有 bug,进而造成无数资产所有者的损失。
我们简朴罗列了一些优势来汇报你 Nervos CKB 毕竟机动在那边:
机动之余,CKB 简直定性让你更定心
合约陈设后无法更新一直是区块链开拓者的心头之痛,然而因为 CKB 生意业务中,可以验证 input cell 中 lock script 中的所有权,以及验证 type script 中的生陈法则,而且还能通过 cell dep 引用其他的 cell,所以我们可以或许在 CKB 上发生像是 Type ID 这样的利器。所谓 Type ID 是指某个 Cell 在确定只有某个唯一无二的 Type ID 的条件下,一连更新合约,分身可进级与确定性,让开拓者更机动地陈设并进级本身的合约剧本。
4.可以更机动的付出手续费
1.任何语言都有大概在 CKB 上开拓:
回到一个开拓者所体贴的问题,此刻已经降生这么多公链平台,那么在 Nervos CKB 长举办编程,毕竟会有什么与众差异的体验?在 CKB 上编程,又有什么样的优势呢?
在 CKB 虚拟机上没有写死的暗码学原语,因此任何暗码学原语理论上都可以像普通的剧本一样被陈设在 cell 中。这让 Nervos 的生态可以在不需要分叉的环境下,有了利用各类暗码学技能的大概性。

郑重声明:本文版权归原作者所有,转载文章仅为传播更多信息之目的,如作者信息标记有误,请第一时间联系我们修改或删除,多谢。