区块链应用 | 将底层公链模块化,NULS想让开发者定制属于自己的公链

区块链应用 | 将底层公链模块化,NULS想让开发者定制属于自己的公链

去中心化应用(DAPP)都需要搭建在某个底层链上。不同的业务场景对底层公链的性能、共识机制等有不同的要求,某的应用甚至需要搭建自己的一条底层链(包括私有链、联盟链和公有链等)。 

然而,开发一条适配自身业务底层链往往需要一定的技术门槛和时间。有很多具有落地场景的业务并无了解区块链底层的技术人员,同时业务需要尽快上线,即便有也难以在短时间内搭建一条完全合适的底层链。

本文要介绍的NULS(https://nuls.io/),就打算将底层链“模块化”,降低开发者快速定制自身底层链的门槛。

NULS是一个可定制的区块链基础设施,是全球性区块链开源社区项目,基金会注册在新加坡。团队搭建了一条主链,同时将底层链拥有主要组成部分模块化,这些组件都是可重用开源的,开发者可以通过组装和修改不同的模块,来定制一条不同的底层链。

区块链应用 | 将底层公链模块化,NULS想让开发者定制属于自己的公链

NULS发起人张星表示,原来比特币和以太坊,“如果你要改它的底层,就会牵一发而动全身”。NULS团队有点像将单体结构的底层链微服务化,以接口的形式对外提供服务,同时各个微服务组件的代码是开源的。底层架构需要升级,也可以直接升级某个模块,而不需要把整条链再写一遍。

发起人和白皮书从四个方面总结了NULS的特点:

1、共识机制:

NULS将其主链的共识机制命名为POC(Proof-Of-Credit,基于信用的共识机制),这个机制有点像DPOS。持币少的散户可以将币委托给代理人,代理人可以形成节点参与共识。

节点的历史出块数量、违规情况和出块正确情况影响节点信用。节点信用达标的情况下,锁定一定保证金即可加入共识,共识节点重新排序后每轮轮流出块。

区块链应用 | 将底层公链模块化,NULS想让开发者定制属于自己的公链

POC共识机制中代理人和委托人角色的不同

2、模块化架构:

张星介绍,目前Nuls有账本模块、网络模块,存储模块,帐户模块、共识模块、跨链共识模块、智能合约模块等九个模块,使用Nuls在线模块仓库管理。不同模块通过接口调用或事件监听的方式通讯,开发者不需要了解底层。

开发者可以根据自己对性能和安全的要求,改变共识机制、区块大小、打块机制和存储机制等,把底层链建成公有链、联盟链、私有链等不同形式。

区块链应用 | 将底层公链模块化,NULS想让开发者定制属于自己的公链

3、多链并行:

多链并行是提高区块链性能的一个机制,弱化了主链的概念,不同的链可以处理不同业务,理论上可以不断平行扩展。Nuls社区会针对不同子链开发不同的跨链共识模块,Nuls用跨链共识模块将不同的链连接在一起从而实现跨链通讯。

主链部分节点与子链部分节点组成跨链共识域,跨链共识域内节点对跨链交易达成共识,将跨链数据协议转换后分享跨链数据到其他对等节点。

区块链应用 | 将底层公链模块化,NULS想让开发者定制属于自己的公链

区块链应用 | 将底层公链模块化,NULS想让开发者定制属于自己的公链

4、智能合约:

根据项目白皮书,Nuls 内置 NulsVM 处理智能合约。智能合约模块处于对外服务模块(如 RPC 模块)和底层设施模块(如网络模块、存储模块、账户模块等)之间,后者为其提供底层支撑。Nuls 设计了一些智能合约模板,其解释器将支持多种高级编程语言,开发者可自由选择。

区块链应用 | 将底层公链模块化,NULS想让开发者定制属于自己的公链

张星介绍,应用级产品可以直接部署在Nuls的公链上,或者将私有链的数据给到公链审计,前者可以共享Nuls底层升级的性能提升,后者可以获得团队的技术支持。Nuls目前正在开发阶段,计划今年3月上线测试网络,5月上线正式网络。

区块链应用 | 将底层公链模块化,NULS想让开发者定制属于自己的公链

NULS项目的核心开发者目前约有7人(具体可查看官网介绍)。发起人和首席开发者张星毕业于天津大学,从事金融领域数据安全工作6年,是一名全栈工程师,曾就职于信息安全技术研发商江南科友,主导公司产品设计和研发工作。

Be the first to comment

Leave a Reply

Your email address will not be published.


*