查看原文
其他

Nervos 主网升级 AMA 文字稿 | 4 月 21 日

yongge.bit CKBfans 2022-04-26

AMA基础信息

主题:Nervos 主网升级 AMA

嘉宾:Nervos 首席架构师&核心开发团队成员 Jan Xie

时间:2022.04.21

链接:https://twitter.com/i/spaces/1gqxvlYdPyAGB?s=20

上周,Nervos 公布了主网升级的时间点,计划在第 5,414 epoch 到来的时候正式启动主网升级。我们知道,这是自2019年11月16号 Nervos 主网上线以来的第一次网络升级,但可能很多人不知道,这次升级涉及到的面之广,如果去看 github 的提交记录的话,会看到基本所有的核心组件都做了优化升级,并且为了确保安全、稳定地升级,核心开发团队几乎花了整整一年的时间来准备这次升级。

此次AMA由nervosyixiu.bit主持,邀请了 Nervos 首席架构师&核心开发团队成员 Jan Xie 来到直播间,他将对此前推特、discord上收集到关于本次主网升级的相关问题进行一一解答。



AMA 精简文字版

Q1:请JanXie给大家介绍下你的个人经历吧?

Jan:我自己学IT出身,在13、14年接触到比特币,出于对比特币的兴趣一直在研究这个领域。
最初看到比特币的时候,很多人都觉得这东西是骗钱的。如果把时间回拨到过去,你很难想象,作为程序员的我们可以去构建一个新的货币,那是一个很疯狂的想法,太不真实了;不过,你又会看到比特币在技术上、设计上一些非常有意思的地方,它的整个设计的思路完全和我们那时在做互联网时的设计完全不同,完全是反着来的,
比如,互联网追求性能高、效率高,比特币的POW追求效率低(你要安全需要这么做);比如,互联网要精致,比特币就特别粗糙。一开始比特币的软件是非常粗糙的,就像加入比特币网络需要连接种子节点,比特币就非常简单,只需加入一个聊天室,在聊天室里的人就是你的种子节点,这种粗糙、取巧的方法在真正的生产环境中肯定是不会用的,但比特币它就用了...
比特币是一个从工程各方面看非常粗制滥造但在设计上又非常闪耀着智慧的光芒的一个东西,你会不由自主的被它吸引然后就开始研究。我先是深入其中,后被朋友拉来创业。从一开始的感兴趣,到开始创业,跨过一些门槛,之后就一直在这个行业沉淀下来,做了一些事情。

一开始是做交易所,GitHub上有一个叫貔貅的开源项目是我写的,因为当时我在GitHub上找了很久没有找到任何有用的交易所代码,所以只能自己写,这应该是第一个开源的交易所。后来,貔貅的代码也在某种程度上推动了这个行业的发展,有交易所用过,某些现在还非常牛逼的大的交易所和貔貅也有很多渊源。
在做了交易所之后,我又开始去折腾新的事情。因为交易所离区块链不是那么近,其本质上还在应用层,之后就想往更加底层的方向去研究,所以我就去研究以太坊。那时候以太坊刚出来,还非常新主要还是在国外,大家仍旧觉得以太坊是骗人的。

从技术的眼光看以太坊很明显是往前走了一步,从一个只能打电话的手机变成了一个智能手机,这让我们觉得很厉害,于是我一边做社区一边写代码,后来以太坊研究团队需要招人的时候我就直接找Vitallk,随后在以太坊团队里参与了几个事情。
另外一方面我在杭州也成立了一家公司叫秘猿科技,秘猿科技刚开始是做许可链的一些东西,顺便帮助星火矿池设计和实现了第一版矿池。

正是由于我之前的个人经历和积累的很多想法,在各方面条件似乎都很成熟的时候,我们觉得可以尝试做公链,在我看来,公链在整个行业里面还是最有挑战最有意思的事情,因为它不光涉及技术,还有各种能力的整合,我们就和行业内的几个合作伙伴一起发起了 Nervos 这个项目一直到今天。

Q2:这次Nervos网络升级的背景,为什么会有这次升级?

Jan首先,升级是一个必然的事情。一般的软件项目也是需要升级的,一开始你不可能预料到所有的需求,需求在变的话,软件也要跟着变;那么对于公链来说也一样,区块链也是一个软件系统,升级是必然的。
因为 Nervos 是一个完全新的思路,一开始确定的东西只有60%,剩下的40%连蒙带猜。一方面,因为我们很难预料未来开发者会怎么样用,主网上线之后,很多开发者在主网上做开发,不停的抱怨这里不好用那里不好用,所以需要调整;另外一方面,主网刚上线只是第一阶段,后面还有一长串的事情需要去做,需要一步一步来,那些想要做的更高级、更复杂的一些东西也是需要升级来完成的。

Q3::这次升级能解决的问题有哪些,会带来什么样的一些改变?

Jan:Nervos和很多区块链项目不一样,很多时候我看到一些问题本身是出于对 Nervos 和CKB 的一些误解才出现的,所以第一步,要明白大家理念其实不一样。
CKB 其实不论是从设计还是理念上来说更像是比特币,因为无论是 POW 共识算法加上中本聪共识,状态编程模型是基于 UTXO 的类似拓展的 UTXO 模型,还有各种各样的理念方面其实都更像比特币。
一方面,我们通常认为比特币是一个价值存储,它需要非常安全,我们宁可它什么都不变,什么都不干是最安全的,这其实是比特币的态度;那么 CKB 需要延伸这一点,不仅是单一的价值存储,而是一个多种资产的价值存储,你可以放心的把各种各样的资产放到链上,这是一个延伸。
另一方面,比特币具有非常好的可用性。简单来说,你没有看过比特币停机吧,但是今天各种各样的区块链,它要不出BUG停机了,要不因为升级停机一下,在我眼里这种就不叫公链,因为你跟互联网服务差不多;比特币是不会这样的,当然没有人可以保证比特币永远绝对一万年不停机,因为毕竟是人写的它总有可能出BUG,但是它的理念很清楚,我们需要保证不能随便弄一个改动它就停了;比特币10年都没有停过,有很多一两年的链都停过无数次了,其实它们是不同的东西,那么 CKB 其实是类似比特币的,CKB在上线两年其实也没有停过,中间也遇到很多问题,我们需要非常迅速的通过一些贴胶带的手法保证这个网络能正常运行,这个对于我们来说是非常重要的,也很不容易。
我们还需要把一层变的更加强大和灵活一点,但是只是变强大一点点。如果说比特币是从 0 到 1,以太坊是从 1 到 10,后面区块链是想从 10 到 20,甚至到100,那么CKB可能是从 1 走到 5,这个听起来有点反直觉,以太坊都从 1 走到 10 了你才走到 5,那你还不如以太坊。
需要理解的是,Nervos 作为一个分层网络整体上是想要从 1 走到 100 的,但 CKB 这个分层网络的核心,这个内核应该是刚刚好最精简的状态,因为你把越多的东西塞到内核里面它会非常臃肿,代码很多容易出 BUG 不安全,这是它的后果,如果你走的不够多,你就会像比特币一样,你非常难改,你非常难在比特币上开发二层网络,你非常难在比特币上实现各种各样的资产,所以这里需要的是一个平衡,你需要找到那个平衡点,你不能走多了,你也不能走少了,你找到一个刚刚恰好的点然后以这个刚刚恰好的点为基础去构建二层网络、三层网络,然后整个分层的网络体系它是一个可以走到100的体系,这是 CKB 和其他很多链不一样的地方,所以你可以把 CKB 理解为一个把比特币稍微延伸了一下的内核。
很多区块链它试图做的是把所有的东西都塞到内核里面,这也很正常,因为当我们回顾操作系统发展的时候,早期的操作系统可能就是这样,就是什么东西都放在一块。所以从定位上来说从设计的理念上来说,他就会离普通用户,甚至是一般的应用开发者有点远,这个点其实和比特币也很像,因为大家如果关注比特币和以太坊生态的不同的话,大家都会是以太坊上的开发者都非常酷,写应用跟玩似的,一天就能蹦出100个应用,比特币的开发者非常苦哈哈的,可能要写个两年才能写出个应用,这两种社区是非常不一样的。那么 CKB 其实会更接近比特币社区一样。因为在 CKB 上的编程其实非常接近在操作系统上做系统级的编程,而不是在你的机器上做网页开发。这是两种非常不一样的领域,定位理念设计通通不一样。
说这么多是为了回答这样一个问题,这次升级有多少是用户能感知的,这个问题是非常难回答的。
升级本身离用户非常远,你可能直接感知不到,但会间接感受到这些升级。因为中间是有一层或者二层开发者在中间做这个桥的工作,把底层的改动吸收到他们的应用,吸收到他们的工具,吸收到他们的库里面,这样用户在使用这些应用的时候才会感觉到这个好像比以前更好用了,它是一种间接的关系。这次升级大家可以把它理解为一个操作系统内核升级,操作系统应用可能还要滞后一段时间。
第一块大的变动其实是虚拟机,第二块大的变动是区块的结构,第三块大的变动是共识规则,第四块大的变动是P2P的网络。共识规程的改变和P2P网络对用户应该是基本透明的,共识规则的改变大部分是在解决一些之前定义不好的规则或者说有 BUG 的地方。本次升级一个重要的部分在虚拟机,为了保证 CKB 能够成为价值存储,我需要实现你今天存下一笔钱几十年后甚至一百年后中间无论升级多少次它依然是你的。

Q4:本次主网升级对长短地址的影响?

Jan:这次升级会将地址默认为一种新的长地址,用来解决当下的问题。这是一个短期方案,以后可能也会出现不同的应用映射出不同的地址的情况。
目前,不同的地址给用户带来不好的体验的原因主要还是中间层缺失。其实用户本身不用关心我这个账户上面对应了到底是 10 个地址还是 100 个地址,只要中间层能够帮我自动处理好我的所有地址,我在我的账户看在所有的地址的资产等等都汇集在这个账户里面就行。后续只要中间层好了,那么对多种格式地址,用户不会有感知了,那体验就上来了。 
另一方面讲,不同地址和账户区分也有好处的。比如说隐私问题,这个不展开讲了。还有一个好处。因为我可以有不同的地址,我的地址本身是能够编码信息的。这个编码的信息能够提示钱包我应该做什么相应的动作,这样钱包和应用之间的协议变得更加强大。
总结来讲,有几个地址其实不是关键。这次更新是用来解决当下的问题,关于地址这个我们可以未来慢慢的去探索。这个点目前还缺乏研究和探索,因为大家现在都被以太坊的对应设计给带走了。但是也不妨碍我们现在说我们先缓一缓,我们先让大家的用户体验变得更好,在未来,我们要在保证用户体验很好的情况下去探索这个空间。这是一个双赢的结果,大家都满意。

Q5:团队会考虑自己去开发二层应用吗?

Jan:我们不会去做二层的应用,那和我们的想法不符。

Q6:本次升级是否会有轻钱包?

Jan:本次升级不会有轻节点协议,但今年我们计划会开发轻节点协议。轻钱包我更希望看到社区开发,我觉得这是不一样的理念,对 Nervos 来说最好是社区大家一起来做这件事,开源和一开始去中心化非常重要。

Q7:关于二层网络的更新有时间节点吗?

Jan:Godwoken更新,推出V1版本,测试网会在下个月出来,预计测试网会测试一个月左右,如果没有问题就会上线主网,大概在6月份。Axon上线在下半年三季度,它的性能可能好过市面上所有的链。
(完)
往期回顾




科普 | 一文读懂 Nervos 工作原理(上)Nervos首次主网升级,都有哪些重大更新?Nervos CKB : 百倍潜力项目推荐 | 中文字幕版思考 | 度过熊市,如何让你钱包里的 CKB 增值?




了解 Nervos :
官网:https://www.nervos.org/
CKB浏览器:https://explorer.nervos.org/

相关中文渠道:
Nervos 公众号:搜索 字节元CKB
Discord:https://discord.gg/X2VGqQX6zT
电报群:https://t.me/NervosNetworkcn
字节元宇宙推特:https://twitter.com/CKBMeta

如果你是开发者,可以参考以下文档:
github:https://github.com/nervosnetwork/
技术论坛:https://talk.nervos.org
中文技术文档:https://docs.ckb.dev

您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存