NULS——伴随商业世界发展不断自我进化的公链
比特币诞生至今,已有十个年头,其设计之精巧、逻辑之精密,让后来者难以望其项背。
虽然以太坊智能合约概念掀起了另一场风波,但以太坊和比特币还是有着本质的区别,比特币是一种点对点的加密货币,在设计上原本就没有足够可扩展性,而以太坊设计之初是一个世界计算机的角色,由此其性能就变得相当重要。
为此业界涌现不少要超越以太坊的项目,但都不尽如人意。知名公链项目NULS有自己不一样的哲学逻辑,他们借鉴了比特币的智慧。比特币之所以能发展至今,是因为其有一定的“自我进化能力”,其技术在社区的维护下不断更新迭代。
NULS团队认为,当今商业模式快速发展,未来商业模式更是不可预测。NULS不在商业发展上做任何猜测,而是全力搭建一个可以伴随商业世界高速发展的基础设施。这个基础设施的显著优势就是可持续升级。未来商业世界不可预测,技术更不容有任何局限!
模块化基础架构,让升级更加随意
说到区块链升级,人们可能会提出这个问题,难道以太坊不能升级吗?没错,以太坊也能够进行升级,但以太坊在结构设计上并未对升级打好基础,因此他的每一次升级都像一次大手术,如同把一个半智能手机修改成一个智能机,其难度可想而知。
NULS首先它是一个新的系统,这要比将旧楼翻新更加耐用,其次它也考虑到了未来行业的发展,因此项目选择了特有的模块化结构。
首先需要底层代码层,这层代码层包含了程序运行的基本逻辑。在代码层的基础上,产生了区块链的基础模块层。其中包括了共识机制、存储、网络、账本、智能合约等等基础模块。
NULS的最终目地是让这些模块可随意定制、并可实现热插拔,从而能根据实际要求配置成一条最适应当下环境的链。只有标准建立后,模块之间才能实现这样的功能,因此,如何建立模块标准,并统一所有接口标准,是至关重要的一步。经过不断的努力,NULS为模块提供了标准定义,一个完整的模块定义包含4个部分:基本信息,模块服务,模块事件,模块配置。目前阶段NULS的几大模块标准(账本、共识、存储、网络、智能合约等),已基本定义完成,并且NULS团队将根据行业发展动态来升级这些标准,同时维护模块内容。
模块化标准定义之后,再上一层就是链层,由不同模块自由选择组合成了链,值得一提的是,这些模块同样可以用相同的原理搭建成符合不同应用场景的友链。
最后一层是业务应用层,前面三层的设计最终目的都是为了支持业务应用层。介于第四层和第三层,有一个中间层,这样设计是因为在商业应用细分领域中,有一些共性的需求,这些需求在技术实现上可以抽象和提炼。比如防伪行业的特性有:数据量大,流转信息存在依赖性,使用场景要求快速查询完整溯源流转信息,并验证合法性。
这一设计使得NULS可以灵活升级,各个模块之间相互独立,每一个模块在需要时候都可进行独立升级,NULS坚持开源,社区成员可以共同为NULS的升级做贡献,并可以开发新的模块加入原有系统。同时这样的构造,也使得应用层业务搭建更加灵活,BUG更容易被定位、被修复。
NULS是最先几个采取这种架构的项目,得到了不少业内人士的认可,后续的很多项目也都在借鉴这一方法。
扩展性极高的业务逻辑,应用落地更方便
区块链应用落地,业界谈论最多的就是区块链处理速度,去中心化程度、处理速度、及安全性被称为区块链的不可能三角,NULS通过主链+友链的多链并行机制来解决处理速度问题。
在传统的业务逻辑中,所有业务都发生在主链上,其处理速度完全依赖于主链的性能,并且随着时间的延长会出现数据拥挤不堪的状况,NULS将业务分配至友链中,友链用于处理具体业务,根据业务需求选择最适合自己的共识机制,主链只负责存储并验证友链的区块头部。
这种处理方式将业务逻辑和验证分开,极大的提升了处理速度,并且每一个处理具体业务的友链又可通过平行扩展方式,扩展至多条友链,因此其处理速度得到了质的飞跃。友链上传区块头打包进主链,使主链不需要存储所有业务交易数据的同时,又保证了友链数据的不可篡改性,将审计与业务数据分离。
这种构造不仅在区块链处理速度上得到了质的提升,并且能将不同的业务进行归类,每一种业务对应一条自己的友链,可根据不同业务进行分类。团队同时考虑到各种友链业务之间的数据、价值、信任流通的问题,因此在整个NULS结构中接入卫星链模块,模块可实现各个友链之间及其它链之间的通讯,让整个生态的数据通过卫星链连接在一起。
这种业务逻辑,也是国内外顶尖区块链专家一致认同的方法,毕业于清华大学的国内顶尖区块链专家吴萌野曾公开发表演讲称,理想的基础链模型,要进行业务的分区,把业务进行垂直划分,并且弹性扩容,业务分配有规律可循。可以参考阿里云单元计算的概念,把不同的业务,例如区块链养猫、区块链借贷等,分配给不同的链上单元。
这正是NULS项目的设计理念。
独创POC共识,安全、可信两不误
在不可能三角中,NULS通过主链+友链模式解决了处理速度问题,但区块链的去中心化及安全也是不可忽视的因素。
这一点是通过共识机制来解决的,现有的共识机制都多少存在一些不足,如POW的耗能、速度慢、51%攻击;POS的权利集中、大户节点权限太高、容易出现分叉;DPOS的权力相对集中、普通用户参与不积极等。NULS研究目前所有共识的优缺点,独创了POC(Proof Of Credit)信用共识机制。
POC信用共识机制采用信用门槛、委托共识(委托人)、代理节点(代理人)三个部分来达成整个系统的一致性。委托人全员都可以参与,普通用户只需要持有2000及上NULS,将NULS抵押给自己认可的代理人,就可成为委托人;代理人负责提供硬件,创建出块节点,当代理人抵押20000NULS,且接收到委托人所委托的NULS大于或等于200000,并且小于等于500000,即可建立共识节点。
其中委托人和其认可的代理人可分享出块奖励及交易手续费,有效的提高了普通参与者的积极性。每一个代理人都会有相应的信用系数,系数会根据其是否作为相应改变,如果信用低于要求,将会被从代理人当中踢出。
POC共识有效的调动了全社区人员的积极性,并保证了出块速度以及出块的公平性,很好的解决了去中心化程度和信任之间的矛盾。NULS的信用共识机制驱使每个参与者都作出更有利于网络稳定的行为,保证网络安全稳定地运行。
全球化布局,一切才刚刚开始
NULS主网上线已经有一段时日,但团队认为这只是一个开始,仅完成其目标的5%。NULS目标不仅是上线主网,而是将生态布局于全球,让所有人都能用上NULS的高性能公链。
项目目前已在中国、美国、澳大利亚、韩国等地区进行布局,并已取得不错的进展,团队还将进一步扩展。
NULS将秉承以“链”为核心的发展理念,着力打造核心产品“链工厂”。通过“链工厂”,团队希望做到仅需4个步骤,就可以让一个对区块链底层不甚了解的开发者,经过简单的配置就可以在几分钟内拥有一条自己的公链(当然开发联盟链和私链也是可以的)。第一步选择自己所需要的模块,第二步配置系统参数,第三步下载系统完整的运行包,第四步部署系统。
链工厂四步搭链:
选择模块>配置参数>打包>云服务器搭链
如果计划实现,任何一个组织就可轻松发行一条自己的公链,发链将变得相当简单。NULS也欢迎更多的开发者参与其中,共同创建NULS生态社区。
值得一提的NULS的智能合约,NULS智能合约采用了模块化设计的创新理念,并将其加入NULS核心产品链工厂的模块仓库中,开发者在搭链时,选取NULS智能合约模块,就可以在链上编写和部署智能合约。同时,NULS智能合约实现了分钟级别部署,在开发者编写完智能合约之后,经过6个节点的确认(每个节点确认大约10秒钟),就可以快速在链上进行部署。
不仅如此,NULS智能合约的NVM是基于JVM实现,NULS智能合约解释器将无缝支持JVM体系编程语言,并将陆续支持其他主流编程语言,应用开发者可以使用自己熟悉的语言,设计NULS智能合约。
另外,NULS希望让智能合约的开发、部署和调用能够更加的便捷化,将能够打造一个丰富的智能合约库。
NULS从始至终,于设计之初就立志做一条让人人都能参与、简单易用的公有链,团队也在进一步努力,让区块链更好地融入人们生活。
original publish link:https://www.jinse.com/news/bitcoin/265302.html