美文网首页
TokenGazer一问到底 | 第九期:研究员 vs Nerv

TokenGazer一问到底 | 第九期:研究员 vs Nerv

作者: TokenGazer | 来源:发表于2018-09-29 14:30 被阅读0次

      

    前言

    TokenGazer《一问到底》是一档辨析区块链领域一级市场项目优劣的优质栏目。每一期将针对区块链领域早期的一级市场项目,邀请项目负责人做客现场,和社群内百余名研究员深度问答、科学辨析。旨在通过项目方与研究员高质量的对弈问答,打造专业级别的项目评析平台,厘清项目价值,探寻早期优质项目。同时,让社群用户真正参与价值评析,传递评析方法,在“问与答”中获取价值信息。

    本期项目:Nervos Network

    活动时间:9月13日 20:00

    Nervos致力于构建一个分层架构的分布式应用网络。它把区块链底层基础设施分为两层,分别是Layer1和Layer2。Layer1不关注效率,只关注安全及为上层链做优化,Layer2关注效率性能和易用性。

    本次邀请项目方嘉宾:吕国宁Daniel,关于Daniel,可以用一个 Daniel 四件套来简单解释:如果你在云币(貔貅)交易所买过币,我曾经是云币的CTO。如果你用过imToken钱包,我曾经是imToken的联合创始人兼CTO。如果你曾经在星火矿池挖过矿,那么我曾经是星火矿池的管理员。如果你现在关注并准备使用Nervos项目,那么我现在正在做这个项目。

    TokenGazer不久前撰写过Nervos项目研究报告,点击“阅读原文”即可查看。

    以下为互动文字整理版:

     01.TokenGazer研究员-L:Nervos采用的是PoW共识,模型设计时是否会有预挖矿的考虑?

    Nervos Daniel:Nervos的底层Layer1,这一层会首先采用PoW共识算法,并且支持挖矿。后续的计划是准备走混合共识这条路,会兼顾平衡PoW的灵活性和BFT共识的高效。

    你问到有没有预挖矿,其实是有的。我们有一定比例的Token是用于Private Sale的,而Private Sale已于今年6月份结束了。另外有一部分Token作为基金会保留,会被用于包括比如团队激励、社区激励、以及挖矿奖励,而挖矿奖励将会占大头部分。

    我们认为BTC这种从创世区块开始,所有的Token都通过挖矿产生,这个模型最公平,也最优美。问题是如果现在采用这个模式,恐怕时间上、资源上都等不到能发展出来的那一天就死了。所以我们有社区激励、团队激励、Private Sale,并且借助资本的力量早期加速发展。

    02.HD@TokenGazer: 吕总啊,云币当年可挺卡的啊......

    Nervos Daniel:云币非常卡的这个锅我并不是没有责任...

    https://github.com/peatio/peatio

    这是云币在github上的开源版本,在15年年中我们离开云币之前,其实线上版本跟github上代码是完全一样的。但是云币的主要实现用的是Ruby语言,而Ruby语言最擅长的是快速开发,快速原型实现,当流量上来的时候,对系统的扩展性挑战是极大的。

    可以这么说,如果不是用Ruby语言,不会有之后的云币,也是因为Ruby语言,我跟Jan(秘猿的CEO,Nervos的架构师)不会以两人之力就能做出一个交易所。如果当时的技术团队的人力资源够强,我们是有实力做出更好的交易所的。

    03.HD@TokenGazer:吕总聊聊你们对于PoS/PoW的思考吧,MIT Micali教授(Aglorand创始人)等很多美国学术界认为PoW的能耗问题是需要解决的,ETH也在走这条路,虽然PoS历史上有很多不安全的问题,你们觉得PoS的改进努力有没有突破的机会? 

    Nervos Daniel:这一点我跟反对PoW耗能的人的观点角度不同,或者说Nervos团队对于PoW的能耗问题有自己的看法:

    https://www.jianshu.com/p/2dfed83fee1f

    这里有一篇我们的架构师谢晗剑写的文章,专门解释了这个问题,在此就不赘述了。 

    CKB自身使用PoW共识,通过PoW将CKB与现实世界中的能量锚定。选择PoW是因为这是目前已知的最为可靠的开放网络共识协议。Nervos网络由此形成一个树状的信任传递网络:

    能量 -> Layer1(CKB) -> Layer2(AppChain etc.) -> DApp

    关于PoS,在一条主链的情况下,PoW算法将会成为这条主链的瓶颈,而现有的基于算力竞争的PoW算法,其实已经被优化到了性能的极限。如果还想走扩展主链的道路,那么就必须在公式算法层面上替换成更高效的算法,比如PoS,并且新一代的Sharding算法和方案都是基于PoS作为基础的。

    但是Nervos的场景不同,Nervos走的是L1+L2方向,性能扩展是L2这一层的问题,所以L1的职责是安全和去中心,以及将安全能有效传递到L2,所以在L1上首要考虑的是安全而非性能,只要安全能传递到L2,性能并不是最高优先级需要设计考虑的,选择PoW也是顺理成章的。

    04.HD@TokenGazer:理解PoW锚定能量的观点,我想问的是,你们是不是认为PoS在可以预见的时间里看不到足够安全的可能性 ?

    Nervos Daniel:PoS其实带来的问题更多,而且很多问题其实是无解的,展开讲篇幅过大。我们并不是不看好PoS,而是如前面所说的原因,在Nervos的L1体系设计中,PoW可以很好的满足我们的需求,并且非常可靠。而PoS一方面缺乏外部依赖性,导致在经济学安全方面总是备受质疑。另外一方面是没有在大规模生产环境下经历多年的验证,这对我们一个创业创新的团队来说,是太大的挑战和风险。

    05.TokenGazer研究员-HK:Nervos的L1初始版本用PoW,在现有硬件条件下,如何尽可能提高TPS?

    Nervos Daniel:PoW算法其实有很多种,比如BTC的PoW算法跟ETH其实并不相同。而优化PoW的最关键是主链的Context,也就是上下文环境。在Nervos场景下,L1的设计思路是尽可能将一切能够抽离出L1的功能全部抽出来,只保留最后不能抽离的部分,并且我们在L1上采用的是链下计算,链上验证,并且执行验证的VM虚拟机是图灵不完备的,刻意这样设计,以及L1的功能只做到最小的去支持L2... 这些都是限定,有了足够的限定,就非常容易去定制优化PoW的算法和参数,以榨取出所有的硬件/网络性能。

    我们会在10月或者11月左右发布我们的PoW共识算法白皮书,届时大家会看到我们是如何在一个限定的主网下充分优化PoW算法,以及我们在PoW算法实现中一些新的idea是如何去优化,实现更好的共识算法性能的。

    06.TokenGazer社区成员 林燚:对于公链开发,目前有一种说法,公链在开发时,处理速度、社区共识等方面,难以做到全而美,咱们的项目是怎么考虑这个问题的?又是如何处理的?

    Nervos Daniel:一切都在我们的白皮书中都有描述,我们是通过技术手段把当前的区块链底层基础设施向前推进一步,解决大规模商业应用场景落地的扩展性问题,并且采用L1/L2分层设计这条路。具体的展开实在太大,容我以后还有机会拆成几个不同的话题来回答吧,谢谢。

    07.TokenGazer社区成员 林燚:同样也是分为两层,这与区块链基石项目有何不同?

    Nervos Daniel:目前的区块链扩展分三条路:

    ① 扩充主网络,用更高效的共识算法,以及Sharding分片,代表是ETH;

    ② 分层,用二层扩展,代表是Nervos;

    ③ 放弃去中心化,放弃安全性,代表是EOS。

    在②这条路上,如果只有Nervos 这一家,就显得太过冷清了吧。

    08.TokenGazer社区成员 王备-Sofer:从投资的角度,我们不该注意项目是否够好,而是要关注项目是否会被低估,实际上EOS等都不是差项目,但高价不会让投资者受益。

    Nervos Daniel:你们为什么要关心投资啊?我们难道不应该关心下一代区块链基础设施应该怎么发展?

    TokenGazer 研究员:了解好技术本身才能更好地帮助我们做判断去投资。

    TokenGazer社区成员 王备-Sofer:不过从反应来看, Nervos 今天完全没准备问道投资价值的问题。

    Nervos Daniel:我以为大家都是来怼白皮书的。

    09.TokenGazer社区 逍遥哥:轻节点和轻客户端是否主要为移动端考虑而设计的?

    Nervos Daniel:轻节点其实也是服务端节点,如果你是一个DApp服务提供方,你可能需要自己维护一个轻节点。这个轻节点不需要参与达成共识,也不需要保存整个Cell的完整历史数据,只需要保存当前的整个“世界状态”,就能很好的提供服务给DApp的客户端,比如手机钱包等。对于DApp服务提供方来说,轻节点可能是必须的。或者网上可能会有一些人作为信任的第三方提供节点服务。

    10.TokenGazer研究员-HK:L2有多种不同的方案,那么跟L1之间的通信方式也不会是一种。Nervos目前有没有对这个的解决方案的考虑?

    Nervos Daniel:L2有多种不同的方案,但是所有的L2的诉求其实都一样,比如如何将L1的资产映射到L2,并保证在需要的时候安全的回到L1层清算,比如在用户退出L2的时候如何保证用户的财产不受损失。

    从这个角度出发,其实是可以抽象所有L2的需求的。从Nervos的角度,所有的L2不管采用什么方式去跟L1通讯,都可以抽象成在L1上提交数据、验证、存储。基于这一点,Layer1的设计目标就是对所有的L2的抽象层提供支持,然后再以各种adapter或者扩展的方式支持L2。

    目前还没有任何一个L2方案可以很好的去跑在目前的L1(BTC,ETH)上,一方面L2自己的方案还在迭代,并用各种奇技淫巧去想办法适配现有的L1。我们的策略是在很早的早期去接触各种L2的团队,学习、理解他们的方案搞明白他们的需求,然后在我们的L1这一层设计的时候就直接支持他们。甚至请求这些L2的项目方能在早期就考虑支持Nervos的L1。尤其是开源的L2项目,对于重点项目,我们是有能力去直接参与到对方的开源开发流程中,帮助他们去完善对Nervos的支持,或者我们fork一份对方的代码,维护一份针对Nervos的L2来支持Nervos。

    11.TokenGazer研究员-HK:L2的哪些信息记录在L1上由用户决定,这个操作复不复杂?用户如果不知道该把哪些重要信息记录在L1,Nervos会有相关指导吗?

    Nervos Daniel:其实,准确的说,L2什么信息存在L1上是开发者决定的。Nervos的经济模型设计的一个核心要点就是想办法迫使开发者不要针对L1直接开发DApp。虽然直接针对L1去开发DApp是可行的,但是这相当于你在北京的核心地区买了一块地,但是选择盖四合院,而不是摩天大楼。针对L1直接开发DApp就是盖四合院,针对L1跑一条L2的链,然后在L2这条链上做DApp并给用户提供服务就是盖摩天大楼。摩天大楼的空间效率更高,但是占用更少的地皮。

    一个道理,Nervos的经济模型设计会迫使开发者在Nervos的L1上用更少的存储去支持更高效的L2方案。而用户最理想的情况是拿来就用,根本不要去关心你在用L1还是L2,以及L2上什么会存到L1上,以及一旦出现L2上矿工作恶,或者对手方欺诈作恶,整套系统能从L2上退出,在L1上执行仲裁,并确保用户的资产不受损失。

    所以Nervos对于未来整个生态上L2的设想,是L1作为所有L2的注册器,以及提供针对L2的仲裁,在存储方面只需要存储L2的block hader或者Merkle Tree的Root。采用存储Merkle树的Root的方式,可以用非常小的存储空间来证明整个树的数据一致性。因为在L1上存储数据是有成本的,而L1上的存储空间是跟Token总量对应的,那么如果整个系统的总价值越高,平均到每个Token单价会越高,那么会迫使L2的维护者用更少的L1空间去支持L2。

    综上所述,Nervos通过经济学的方式迫使开发者决定存什么,不存什么,而不是指导。

    12.TokenGazer社区成员 AV数字化教主|Viviyorg|周鹏:如果基于网络层角度看,Nervos是不是在中心化网络上做去中心化的?基于了解的深入,感觉Nervos在存储理念上与市面上如IPFS/ELA等分布式存储有些冲突,请问吕老大怎么看? 

    Nervos Daniel:我并没有完全看懂这个题目。

    Nervos是在当前的整个互联网IT基础设施上做去中心化的服务,这点跟BTC/ETH并无分别。

    Nervos在存储理念上跟IPFS区别非常大,首先IPFS上存储的任何数据都不需要验证,并基于验证达成全部节点的共识,而Nervos的Cell中存储任何数据都需要共识的参与。我觉得更简单的回答是:Nervos的L1 做的事“达成共识并存储”,IPFS是去中心化存储。

    13.TokenGazer研究员-L:在Nervos中,Token可以用来购买Cell存储空间,Cell空间用于支撑L2扩展应用。如果Token价格剧烈波动或者Token聚集到了少数人手中,这对于开发者或者是商业应用非常不利,这个问题如何解决?

    Nervos Daniel:其实在任何一个不成熟的市场,价格剧烈波动是因为供需不平衡,或者价格发现机制失效,通过制度,或者机制设计去平抑价格在所有过往的人类社会实践当中,都是被证明是失败的。

    一个生态有投机者,有开发者,有用户,所以在价格博弈层面是各种复杂的情况交织的,在这一点上我个人信奉自由市场经济,我相信来自市场的调节,当然短期内的确有失效的时候,但是我看长期(不好意思我不是经济学科班出身)。如果Token聚集到少数人手中,那么会抑制商业的繁荣,然后会反馈到Token价格本身,并且未来Nervos一定会面对来自外部的竞争,这些都会对冲Token过于集中的问题,再加上Nervos会有大量的Token是通过PoW挖矿的方式distribute的,所以我并不担心Token集中。

    14.TokenGazer社区成员 雨-林:我可以在Nervos上发自己的Token么?如果可以,Nervos会不会有官方教学文档?Nervos链上的主要开发语言是什么呢? 

    Nervos Daniel:答案是可以,并且可能比在Ethereum上用ERC20协议部署一个合约来发Token还简单。Nervos肯定会有官方教学文档,毋庸置疑。Nervos底层CKB链,以及Nervos自己的L2方案AppChain的主要开发语言是Rust,一门现代的、高效的、安全的系统级语言。

    http://teahour.fm/2018/07/08/how-to-build-blockchain-from-scratch.html

    这个链接是我、Terry、还有Kevin做了很多年的一档硬核技术prodcast,这期就是我作为主持人采访我们的核心架构师Jan,其中提到了他如何用Ruby自己手撸一条Ethereum链,以及为什么他选择用Rust作为区块链的首选开发语言,特别推荐希望学习区块链底层开发的朋友去听。

    15.TokenGazer社区成员 雨-林:想知道从Solidity迁移到Rust会不会很难,Nervos CKB开源了以后开发者可以做些什么? 

    Nervos Daniel:Solidity是一门语言,是Ethereum上一种给EVM写合约的语言,Rust是一门系统级别语言,用来做区块链,或者任何高性能分布式系统的语言。

    两者不能混为一谈,Nervos CKB开源后,当然是吸引全世界最好的开发中,在全世界范围内跟其他项目去竞争。

    16.TokenGazer社区成员 王备-Sofer: 巧舌如簧让我产生了疑虑,也就是大多数人会高估nervos的价格。从投资的角度,我们不该注意项目是否够好我的意见代表个人的投资建议,从回避话题的经验看,你是个老司机了,这更加剧了Nervos被过高期待的可能性,被高估的项目有很多,Nervos做得不错,但我更倾向于归结于价格容易被高估,投资者受损的那种。

    Nervos Daniel:我不建议各位投资任何自己有疑惑,或者不理解的项目,我们是做基础设施的,我们的关注点并不在投资层面,这些问题留给大家。

    17.TokenGazer社区成员 宋城:前几天说图灵奖攻克不可能三角问题,Silvio Micali教授及其团队正式推出Algorand协议。其因突破区块链“不可能三角”而备受技术人士的关注。吕总有没有看到,可以聊一下吗?

    Nervos Daniel:前面我回答了,我对Micali的方案理解不深,我希望十一长假的时候,能抽一点时间去认真学习研究一下。但是我不信区块链主链设计的不可能三角是可以突破的,这是哲理层面的问题,虽然有些形而上,但是我更愿意相信是媒体和PR的需要,而不是这个不可能三角经不起推敲。

    18.TokenGazer社区成员 AV数字化教主|Viviyorg|周鹏:Nervos有没有类似于HyperLedger开放各种API/SDK/CLI接口呢? 

    Nervos Daniel:目前Nervos CKB还在开发中,我们预计下个月会全部开源,包括文档。目前Nervos的L2方案AppChain已经开源,包括链,手机钱包客户端,区块链浏览器,各种 SDK,CLI,以及文档,具体见:

    http://appchain.nervos.org

    19.TokenGazer社区成员 逍遥哥:CKB中Cell capacity的设计是否有借鉴EOS的地方?

    Nervos Daniel:Cell capacity的设计并没有什么地方借鉴过EOS,这是我第一次听到有人这么问,能否详细问一下什么地方你觉得有共通之处?我可以展开解释。

    CKB提出的Cell model的整体设计背后,其实是一整套完整自洽的设计哲学和逻辑,这些逻辑放在一起,推导出Cell model是一件非常自然而然的事情,如果时间来得及,恐怕得用半个通宵来细细阐述......

    20.TokenGazer社区小群秘 场外提问:想知道Nervos对Algorand这个项目的看法?

    Nervos Daniel:因为对Algorand理解的还不深刻,所以怕回答方向弄错。我只能承认因为最近半年多,实在太忙了,研究其他项目的技术细节已经跟不上时代了,特别抱歉。

    我冒死谈谈我对确定性随机函数的看法,不成体系。首先随机确定性函数,可以做到随机的选择全部节点中的一部分子集来达成共识,因为随机子集在产生之前是不确定的,但是在之后又是可以验证的。这里跟我们在Layer1这一层追求的达成最广泛的全局安全共识有一定冲突。

    我们认为,Layer 1的安全性是由全局达成共识来保证的,而且目前以BTC等PoW主链为代表的主网,算法和安全性经历了多年的生产环境级别的检验,这才叫真正的安全让人放心。而一种新的算法,还未经过生产环境监测,并且其达成共识的范围是一个子集,子集达成共识的范围的安全性的极限是全局共识安全性,所以我们需要最大范围的共识安全性,所以我们愿意保守一点,选择在Layer 1这一层直接做全局共识,并且使用经过多年验证过的成熟方案。

    责任编辑:ToeknGazer

    本文为TokenGazer原创内容,转载请注明出处.   

    相关文章

      网友评论

          本文标题:TokenGazer一问到底 | 第九期:研究员 vs Nerv

          本文链接:https://www.haomeiwen.com/subject/mmavoftx.html