好项目,闻出来!

 

吕国宁,曾任云币网CTO、imToken联合创始人,现在他的身份是Nervos联合创始人。


2014年,他以CTO身份进入云币网(前身为貔貅交易所)组建开发团队,并将整个交易所代码在github上开源,直到现在很多交易所仍在沿用他们的代码。

2015年以太坊刚出世,他便慧眼识英雄开始关注其背后的技术。2016年,他和何斌联合创建了imToken。2017年,他加入Nervos团队,开始了行业新篇章。


交易所、钱包、项目,其中一样做到行业顶尖已是难得,而他一把抓,堪称行业多面体。


他说区块链给了他自由,他可以选择自己想做的事情。入圈4年,行业纷纷扰扰,他依旧是那个相信技术、尊重技术,并且想要用技术改变世界的大男孩。

 

前天我们邀请吕国宁来到哔哔直播间讲述它对Nervos以及公链发展的理解,以下是吕国宁的直播内容整理。


01.Nervos小历史

 

Jan (谢晗剑)、Terry、何斌和我是多年的好友,当年我们都在一家美国咨询服务公司工作,之后一起跳槽进入云币网。15年离开云币之后,何斌和我创建了imToken,谢晗剑和Terry创建了杭州秘猿科技。


16年imToken第一版上线之后,我开始对智能合约以及相关的安全审计产生了很大的兴趣,后来就离开了imToken。在智能合约领域做了一年多的尝试之后,我发现这个领域不够成熟,很难形成大产业。


Jan 和Terry在筹备Nervos项目时,Terry列了一个长长的名单,打算把这些人拉进来一起做,而我是名单上的第一位。

当时,Terry打电话邀请我加入,我立马就答应了,然后我们就开始讨论如何去说服名单里的其他人。


Terry非常聪明,非常活泼,非常善良,非常帅……(此处省略10000字)他在项目管理方面经验丰富。

Jan技术非常好,他是以太坊的核心开发者,曾经有两年的时间在以太坊的核心开发团队,作为V神的左右手一起参与了Python客户端的维护以及以太坊下一步的协议——Casper的早期研究和立项。


曾经由Jan带领的秘猿团队在联盟链,尤其是高性能联盟链领域有两年的积累沉淀。Jan本人有多年的以太坊开发经历,见证了以太坊性能问题的始末,可以避免Nervos的重蹈覆辙,同时,他对未来公链的新方向有更多的理解。


这些都是我们的核心优势,是不能通过看白皮书或者开源代码就可以马上获取的,是我们的隐藏实力。


02.以太坊有历史包袱

 

我们对以太坊特别熟悉,不仅仅是以太坊的底层细节和生态,我们对以太坊的开发团队也非常熟悉。


我非常尊敬以太坊的核心开发团队,因为他们非常坚持去中心化,他们在去中心化这一点上从来不做任何的妥协。

大家都会拿以太猫导致以太坊拥堵这件事来表明以太坊性能不够好。曾经有一个投资人说,Nervos的方案需要解决以太坊的扩容问题,而在我看来,以太坊扩容的方案根本不work。


因为以太坊最核心的问题是它有历史包袱以太坊的口号是做世界计算机,希望设计一条公链承载所有的应用。以太坊是现阶段在用户数量、应用数量以及生态方面最为丰富的一条公链系统。


如果以太坊重新思考怎么解决问题,怎么修改架构设计经济模型,非常困难的。因为每一次改动都必须保证向后兼容技术方面来看挑战很大

因此,我们认为以太坊的优势会越来越小,新一代的公链会出来,这个行业会给后来的从业者更多的机会。

03.区块链发展进入资本时代


公链之争已经拉开序幕,但巨头可能还没出现。


根据我们对这个行业的观察和理解,现在的区块链发展已经进入到资本时代。由资本推动的行业有一个特点,它能快速地推动这个行业的分工和细化。


我们观察到,尤其是在国外,已经有资本把大量的钱和资源投入到密码学、加密经济学、分布式系统、共识算法、分片算法等不同的领域,很多优秀的研究者诞生了。不管是从算法、技术,还是从工程层面,区块链在可预见的未来都会有快速的演进。


相对于老的公链,新生公链没有历史包袱。老的公链能否和新生公链竞争取决于老的公链能否快速地演进。

这就需要从系统架构设计的角度去考虑,未来所有的模块是不是可以被替换。举个例子,共识协议是可以替换的,二层拓展也可能会有新的方案,而达成共识的数据存储这件事情是稳定的,不可被替换的。


因此,Nervos把系统设计成分层架构。最底层专注于最简单的、最稳定的、不会被替换的通用存储结构。同时,把上面的每一个层次都设计成可以被替换的模块。


如果将来有更好的共识算法、协议、密码学算法及机制出现,我们都可以把它引进来。尤其是在二层和DApp层面,要做到以最快的速度把它们吸收进来。



04.Nervos分层解决方案


Nervos有一个底层基础公链——Nervos CKB,以及在这个底层基础公链之上运行的若干条的应用链,比如钱包、区块链浏览器、开发框架SDK及相关基础模块等,所有的加在一起就构成了Nervos,一个一整套的公链解决方案。


Nervos是一个整体架构设计,它通过二层拓展方案去解决公有链的性能问题。


不管是比特币还是以太坊,大家都在尝试引入更好的共识算法或者更好的分片方式,去解决区块链的性能瓶颈问题。

但我们认为让一条公链去承载全世界所有的计算和存储,这件事情并不work。想象一下,如果全世界所有的人都使用一台计算机,这台计算机就会变得非常昂贵和复杂。


因此,Nervos项目提出了分层解决方案,把区块链底层基础设施分为两层,分别是 layer1和 layer2。 layer1不关注效率,只关注安全及为上层链做优化, layer2关注效率性能和易用性。


区块链的底层设计中有一个“不可能三角”,安全性、去中心化和性能三者只能取其二。我们把它工程化,通过分层用不同层次去满足不同的需求,并且把它们组合到一起的方式来打破不可能三角。



05.全局共识非常昂贵且低效

 

Nervos在共识方面有自己的思考。所有的人和事,不需要每一步都通过全局达成共识,与其相关联的部分直接达成局部共识即可。因为全局共识非常昂贵且效率最低。


我们认为单独的应用或场景,可以通过局部共识运行。他们可以单独跑一条链,并把这条链注册到一个全局共识的底层链上。如果这条链出现了争议,再去底层的全局链做仲裁。如果有人作恶,系统会对作恶方进行经济上的惩罚。我们认为这种方式更安全也更高效。



06.分片技术还远不成熟

 

为什么不使用分片?我们觉得目前解决区块链基础设施有两个方向,一个是二层解决方案,另一个是分片。

分片想要达到的结果是,在一个分片中,在不依赖整体共识的情况下达到性能的提升。这跟我们使用区块链全局共识保证安全性是矛盾的。


另外,分片的方案不止一种。比如把参与验证的节点进行分片,比如以太坊把存储的状态数据进行分片。目前,分片技术还远没有到成熟的这个阶段,一些实验室可能会有一些分片的方案出来。


如果区块链技术没有在真实环境中长期实践,同时能解决重大的问题,我们很难说这项技术是成熟的。分片这条路,是一条崎岖和漫长的路。


07.以中间路线做治理

公链治理是公链的灵魂,我觉得这种说法有点儿过了。治理依旧非常重要,但公链是属于世界的,不是属于某个团队的。


Nervos在治理方面做了很多考虑。公链治理的核心是去中心化,这其中最大的挑战是如何在去中心化激励的社区参与治理。


在治理方面,我们听到两种声音,一种认同链上治理,一种认同链下治理。我们会选择中间路线,后期我们会针对Nervos分层结构提出一整套自己的解决方案。


08.Nervos最大的亮点是经济模型


经济模型是Nervos最大的亮点。以太坊的经济模型是从计算的维度衡量经济激励,用户每做一次转账或者是合约调用,都需要支付Gas,这其实是购买(或租用)了整个网络的计算资源。但它缺失了另外一个维度——存储。

 

如果以太坊的扩展问题解决了,以太坊的性能提升了一百倍、一千倍,甚至一万倍。我们又会遇到一个新的问题——状态爆炸问题。运行一个以太坊节点,当性能提升一千倍时,它一小时产生的硬盘消耗也增加了一千倍。


我们做过联盟链高性能解决方案。在生产环境中,我们可以帮助客户把联盟链的TPS做到15000笔/S。但同时,它每小时产生的数据量也是非常惊人的。我们团队在如何优化和规划存储上花了很多的精力寻找更好的解决方案。


这暴露了一个现象,现有的公链都专注于怎么解决性能扩展问题,却没有人考虑之后的容量问题。


因此,Nervos经济模型是从计算和存储两个维度来设计的。


Nervos经济模型的核心用英文讲Cell Capacity,用存储空间衡量币的数量,一个token代表一个单位的存储空间。使用币置换出存储空间,实际上是用流动性的质押去支付手续费。这种经济模型能够实现时间和空间的平衡。


我们开发者可以用token置换出一定容量的空间去存储状态数据,当它释放空间之后,质押的token就不具流动性了。但是当他释放掉这个空间的数据之后,才可以重新获得token。



09.好项目闻出来


所有技术的发展都有三个阶段,技术为王阶段、用户体验为王阶段和市场营销精细化运营阶段。


现在的区块链还处于什么阶段?我认为远远没有达到用户体验为王的阶段或者是市场营销精细化运营的阶段,现在仍然是以技术为王的阶段。


现在去评估一个团队技术的好坏,技术从业者具有天然的优势。我们经常会说,看一个团队的技术好不好,最好是看这个团队对区块链的理解到不到位,区块链的核心技术掌握得扎不扎实。

 

我是从业者,我的评判比较主观。我一直在优秀的团队中工作,我知道优秀的团队是什么样的。我适应并且习惯优秀团队的味道以后,我判断一个新的项目是否优秀的时候就能够闻得出来。


我觉得这是搞技术的天分,靠你的鼻子闻。

推荐阅读更多精彩内容