3 月 29 日上午 11:00,ArcBlock 区块基石创始人兼 CEO 冒志鸿参加 Odaily 星球日报超话社区直播访谈活动,介绍代表区块链未来发展方向的“织链为网”技术以及即将于次日上线发布的ABT 链网

作者: 芦荟、秦晓峰

媒体: Odaily 星球日报

cover

引言

美国时间 29 号下午三点,ABT Network 正式上线,这是继 Cosmos 之后上线的另一代表性跨链项目。

ArcBlock 在 2017 年 10 月启动第一轮融资,并在 2018 年 2 月在数字交易所上线其代币。宣称 “为区块链 3.0 为生” 的 ArcBlock,在投资人网易 CEO 丁磊、创始人冒志鸿与染色币主力创建者 Flavien Charlon 的光环加持下,成为明星项目。

当前跨链技术成为区块链 3.0 的关键词,ArcBlock 以提供融合区块链和云计算技术的完整解决方案为特色,在链网上线的同时,ArcBlock 也推出了 ABT 节点与 Forge 发链框架,致力于降低开发者造链门槛。

本期超话主题,Odaily 星球日报邀请了 ArcBlock 创始人兼 CEO 冒志鸿来为大家分享。

作为区块链圈子中的 KOL,大家都亲切地称他为老冒,老冒介绍了 ArcBlock 的技术理念,分享了其对区块链 3.0 的看法,他认为区块链 3.0 技术最重要的一个代表特征,就是需要具有织链为网的能力。他用交通系统作比,形象地形容了当前已存的扩容技术与链网技术。在接下来的自由提问环节,老冒回答了 ArcBlock 与 Cosmos、Polkadot 的区别,并回应了云节点偏中心化的质疑,最后他给出了 ArcBlock 的未来计划。

演讲

robert

嘉宾介绍:冒志鸿,美国 ArcBlock 创始人兼 CEO、连续创业和技术革新者。毕业于东南大学计算机科学与工程系。1994 年毕业后连续创建天择软件、北极星软件、优友地带三家公司,是国内最早的 VoIP 通讯系统和社交网络服务创造提供者。2007 年至 2010 年在微软欧洲工作,带领团队研发了第一个基于 3G 移动数据的流量管理系统,2010 年至 2012 年在微软美国研究院 FUSE Labs(未来社交体验实验室,现 AI Labs)从事社会化计算(social computing)和机器学习研究。2013 年离开微软研究院,重返创业征程,先后推出移动故事创作平台 Pixotale、人工智能辅助的知识协同服务系统 CrossCourse,并开始关注研究区块链技术,多次在美国各活动上受邀发表区块链技术相关演讲为传播区块链技术布道。2017 年,在美国创立 ArcBlock,和原微软欧洲同事 Flavien Charlon 再度合作打造新一代区块链应用服务平台 ArcBlock 平台,为区块链 3.0 时代的到来奠定坚实的基础。

冒志鸿: 非常感谢星球日报对我们的大力支持,我发现我们跟星球日报一直很有缘,在我们 ArcBlock 成长的过程之中,好几次产品的发布和这个关键时间点,星球日报对我们进行了采访,或者参加星球日报的活动。大家都知道,我们忙了将近两年时间的 ABT Network,也就是我们的 ABT 链网——将在美国时间 29 号下午三点,也就是北京时间 30 号早晨,正式的亮相。

ABT 链网在 2019 年初这三个月的时间里,就迭代了 97 个内部版本、合并了 315 个代码提交、解决 290 个问题、完成了 12 个里程碑。经历了一个月的内测以及合作伙伴亲自踩坑之后,ABT 链网已到一个可以推出并且公测的状态。

ABT Network 之所以称为链网,是因为我们的核心理念是“织链为网”。我们认为,未来的区块链世界,或者要在现实世界中把区块链真正利用起来,光靠一条链、几条链是不够的,而是需要大量的链,有大量的链才能支撑我们现实生活中的应用。但这些大量的链之间都需要能够有效率的联系起来,也就是链和链之间必须要能够畅通无阻,如果能畅通无阻地连接起来,就形成了一个网络,。我们 ABT Network 推出的区块链技术,就是来帮助大家织链为网,也就是形成链网。

ABT Network 从推出的时候,一直把自己定位成是区块链的 3.0 技术。大家会在什么是区块链 3.0 这件事情上有所争议。我觉得从现在我们即将推出的 ABT Network 这个角度来讲,大家应该更加容易看清楚,什么才是区块链 3.0。

btceth

区块链 1.0 的代表是比特币。比特币的特点就是说,一个区块链上只有一个协议,只做一种应用。比特币既是一条区块链,也是链上跑的一种应用,叫做比特币,它上面跑的协议,只有比特币的协议,它只能干这样一件事情。

在 1.0 时代,如果想要改造一下比特币,或者说想要在这方面做点什么新的东西,那么办法就是分叉,所以比特币生出了一大堆的分叉币(BCH、BCHSV)。现在呢,也还是有一部分仍然活跃的数字货币,实际上也都是比特币的分叉币,属于 1.0 的技术。

以太坊为代表的 2.0 技术,就是把区块链作为一个运算平台。在这个平台上,你可以通过部署智能合约的方式,来实现跟应用相关的一些小功能。可以看到,大家在以太坊上部署了大量的智能合约,其中最常见的智能合约,就是用 ERC20 发一个新的 token。这种 2.0 区块链,也就是我们常说的公链,最大的特点是,所有的业务都跑在主链上,遇到的一个问题就是性能。

以太坊的性能问题,引发了如何提高性能的很多设想,其中最出名的就是 EOS。EOS 本质上在设计理念上跟以太坊其实是一样的,但是确实比以太坊更加中心化,因为它采用的是 DPOS 这样一个超级节点有限的机制。其他各种各样的分叉技术或者说链下扩容,基本上都是与公链思维比较密切相关的做法。

区块链 3.0 最关注的是,如何才能让区块链的应用变得更容易实现、更容易部署。在考虑到要想让区块链变成一个真正好的应用平台的时候,性能是非常重要的,但这只是一方面。除了性能之外,其实还有很多方面需要去考虑,比如说用户体验。我认为用户体验可能是最重要的一个部分,一个区块链的应用,应该在用户体验上不能比传统的应用更差。另外,去中心化的应用需要非常多的节点参与,所以区块链的部署必须非常容易。

要想实现这一点,最可能的办法就是多链技术。也就是说,我们能让一个应用一条链,或者一个应用几条链,或者是一组应用一条链,总之链的数量是应该根据自己的实际情况来决定的。这些链互相之间能够通信,不能互相孤立。

举个例子,1.0 的分叉链,其实都是各自独立的,都是信息的孤岛,互相之间是没法连通的。区块链 2.0,比如以太坊,同一条链上通讯是相对比较容易的,但是一旦是以太坊有意外事件,或者以太坊和一个改进的以太坊之间,那么它们之间这个通信就有问题了。

所以区块链 3.0 技术最重要的一个代表特征,就是需要具有织链为网的能力。平台能够非常容易地让应用可以快速地构建自己的区块链,并且能让自己的区块链加入网络中去。这个网络需要具备区块链的安全、公开可验证、不可随意篡改这些特点,同时还能让各个不同的链之间实现有效的资产交换或者信息交换,并且这些链之间能够有机地联系起来,形成完整的网络。

abtnetwork

我们发布的 ABT 链网,它就是由一组主链形成的网络,这个网络会不断的扩展、演变、衍生,最终形成一个错综复杂的、能提供各种服务的网络。

链网架构和传统区块链所谓的测试网、主网有非常大的区别。大家如果对以太坊比较熟悉,都会知道以太坊有若干条测试网,每个测试网之间首先是互不通的,你的账号经常是不一致的。有的时候如果在用一些应用,这个应用是跑在某个测试网的时候,你经常会看到这样的警告:比如说这是某一个测试网,千万不要把你的以太打到这边来,如果打到这边来,可能会丢失。这就对用户来说,感觉是比较困惑的。

所以有人问我,你们 ABT 这个链网是测试链上线呢还是主链上线?我有时会告诉他们,我们既是测试网上线也是主链上线;我们既不是测试网上线,也不是主链上线。

原因非常简单,作为一个网络来讲,这个网络是一个综合体,里面有一些链是处于测试状态的,有些链是产品状态的。在我们的理念里面,我们不认为应该像过去的那种区块链一样,测试链的数据可以随意地删掉重来。那么作为一个链网来讲,我们这里面是试图把测试跟产品一起同步来运行的。

highway

我觉得可以用交通系统来理解:什么是区块链?为什么区块链是有容量问题?如何去有效的扩容?以及说为什么要组成这个链网,比一个主链更强?

大家可以把区块链理解成一条路,公链的思维是说,我们修出一条非常强大非常宽的高速公路,所有的车都在这条高速公路上跑,每一个智能合约好比是车。很明显如果我们只有这一条路的话,车多了之后路上就会拥堵,那么怎么办?

一个最直接想到的方法就是说,让路上的车速度跑得更快行不行?原来最高速度只能 60 公里每小时,现在让它跑到 120 公里每小时行不行?在这种情况之下,可能会有一些跑得比较慢的车会被淘汰出局了,但是整体上交通的性能提高了。但是公路的速度不可能无限制的提高,当它提高到一定程度之后,一方面可能有安全问题,另外一方面有性能跟不上的问题,所以当这个路的速度提高到一定程度,是没法升级的,那怎么办?我们最后可以对路进行扩容,比如说从一个两车道公路变成一个四车道的,再变成十车道的,车道不断扩容之后,它的容量也提高了。

那么还有一种做法,比如说 Sharding,相当于我们修出多条路,跟扩车道实际差不了多少,但是修出很多条路可以做的更优化,在某些路上是高速车道,某些是比较低速的车道,这样也能把路的性能提得更好。

这样大家就比较容易理解,在一个公链思维之下,如何扩容?比如提高 TPS,让少量的节点来参与,这个思路就相当于加速;后来一段时间我们说扩容的方法,就相当于加车道,把这个车道变得更宽;闪电网络链下扩容,就是说在这个主路的边上修辅路。

如果我们以交通系统来考虑这样一个区块链架构的话,大家就会很快意识到,整个交通系统就是一个网络。这个网络里面有无数条高速公路,同时还有很多条低速公路,它有城市的路,有乡间的羊肠小路,在山上可能是一些小径。除了公路之外,我们可能还有船运还有航空,甚至在未来可能有火箭,所有的这些不同的路径形成了整个的交通系统。

从某种角度,我们可以认为这是一个全球大交通系统。在这个交通系统之中,有的性能特别好特别快,有的性能比较小比较差,但是在有些场合,性能差的可能就是故意的。

为什么是故意的?举个例子,如果是在一个乡村,本来就没有多少人,那么有没有必要为这个乡村修一个十车道的高速公路呢?显然是没有必要的。也就是说,一个区块链系统系统并不是说性能越高越好。而是说,最好的系统应该根据你的需要能够灵活地扩展和变化,这才是最好的。

从这个角度去理解的话,不难发现,最理想的、真正能解决问题的结构,一定是一个有大量区块链、每个区块链是根据各种情况形成的设计。比如说在某些应用里,它可能非常注重性能,要求反应速度特别快,但是对安全性的要求没有那么高。举一个例子,微信需要发消息的时候性能非常之好,没有人愿意等消息,但是对安全不需要达到军事通讯和银行保密通信的级别。

另外一个应用,比如说银行。银行在性能上也需要比较好,但是可能是故意要让一些事情变得比较慢,比如说如果要去银行去提款,那么提款的次数可能故意就需要一些间隔,一次提款的数量估计要有一些间隔,才能够更好的保证它的安全性,所以在银行这种应用里面,需要非常强的安全性,可能会故意限制单个性能,不希望让性能变得更好。

因为各个应用都有各自不同的需求,现实社会中有各种不同的应用。每个应用既然有不同的需求,那么希望链的能力就是不一样的。比如说有的要求性能特别好,有的要求安全性特别高,有的是希望上面能够承载大量的数据,有的是需要保护用户的隐私,每一个应用的需求都是千变万化的。要想满足这个千变万化的需求,用同一套链或者在同一个公链上,几乎是根本没有办法做到的。想做到这个怎么办?要为每个应用根据自己的需求,发出最好的链出来,那么这些链之间要通信怎么办?那么这时就需要我们这样的框架能把底层的中心的工作给做好。

那么其实跟这个多链技术有一些比较接近的,比如说侧链、子链、链下扩容的技术。那么它们的特点有一个区别,就在于状态最终都必须要同步到主链(根链)上去,本质上来讲它仍然非常依赖于主链。所以从整个架构的角度来讲,实际上跟主链的思维是差不多的。

链网的一个最大的特点是,它就像互联网一样,它是一个非常高度去中心化的,也就是说在这个链网里,各个网之间理想的状态应该是互相等同的、对等的,不存在根链、主链这样一个东西。

另外同样也采用链网技术的公司,值得注意的有两个:Cosmos、Polkadot。Cosmos 是三个星期前刚刚发布它的测试版,Polkadot 原来计划是第二季度或者第三季度发布,但现在好像是要延迟。总之,目前真正采用这种链网架构的公司只有 ArcBlock、Cosmos、Polkadot。

comparision

那为什么会出现链网并不是很多的情况。原因非常简单,因为现在还属于区块链技术发展的早期,属于百花齐放的状态。尤其在去年的时候,整个区块链行业非常红火,有各种各样的这种声音。在一个技术早期的时候,大家都很难去判断究竟哪个是对的,哪个是错的,究竟该朝什么方向去走。

在去年的这个时候,公链思维占据主导地位,所以非常多的创业的公司和团队会选择去跟随以太坊,去做一个公链。我们可以看到一大堆的区块链的项目,都是朝这个方向去走的。也有少数的人,比如我们 ArcBlock,我们选择走一个少数人的路。因为我们进行了自己的思考,我们觉得更合适的办法应该是这个样子的。

我们经常采用第一性原理方法来进行自己独立的来思考,做出这样一个系统它究竟应该是一个什么样的样子?那么我们的理解是必须是这样一个联网架构,它才能真正的解决问题。所以我们在过去花了这么长时间,也经历了被质疑,在孤独中前行这样一个过程。但是非常幸运的是我们坚持了下来。并且在喧嚣过后,越来越越多的人开始加入了这个阵营,越来越多人意识到就采用这样的架构才可能是一个更好的解决问题的方法。

所以,我相信在未来的几个月到一两年的时间里面,那么链网架构将会成为区块链发展的主流,那么也会有越来越多的更多的公司开始加入到这个阵营里来。

链网非常之重要,而对于开发者来说,光是提供这样一个链网架构,如果他还是要做很多的事情,这还是很痛苦的。所以对于每一个开发平台来说,我们干的事情不仅仅是提供这个架构,还要提供一系列的工具,能让这个开发者实现自己的链变得足够的容易,足够的简单,不能有太多的学习成本。

问答

Q1:ArcBlock 的 OCAP 支持的跨链方案和 Cosmos、Polkadot 的跨链方案有什么区别?ArcBlock 打算如何发展跨链?

首先三者有非常大的共性,都是链网架构,都提供了工具,让每一个开发者可以非常容易地创造出自己的链,并且这些链之间能够互联互通。

区别在哪里呢?ArcBlock 的链网架构,我们的这个链是一个本质上我们是称为叫同构链,也就是说我们 ArcBlock 所产生的每一个应用链,他的底层协议是完全是相通的。因为它是同构链,所以 ArcBlock 各个链之间的通信变得非常之容易。

ocap

第二个就是 OCAP(开放链访问协议),这是一个从协议层统一的东西,每一个通过 ArcBlock 产生的链都默认支持 OCAP。

我们 OCAP 协议是最先开发的,现在已经支持了比特币和以太坊,并且能够提供服务。我们觉得不能闭门造车,我们 OCAP 体系在自己的链上究竟能不能跑起来,我们不能自己先想当然做一条链,然后在上面做 OCAP。然后再将 OCAP 套到其他链上去。既然我们这个 OCAP 想变成一个跨链的标准,那么我们想能不能先把现有的最主流的链给支持了。在这个过程中,我们也可以更好地学习其他链上有什么样的特点,以及我们在做这个协议的时候遇到什么样的问题。

这里区别最大的是 Polkadot,它在自己官网上明确说自己是异构链。但因为现在其产品并未发布,目前并不清楚其异构到什么程度。总体上来讲,它要作为一个异构链,它的难度就要比同构链要困难很多。

Q2:DID 在整个系统中起什么作用呢?

在我们 ArcBlock 整个这个架构之中,有一个非常重要的设计,就是 DID(decentralized identity)。并且我们对 DID 非常的重视,我们是从最底层开始支持 DID 的。不仅仅是一个用户、一个账号、一条链或者一个节点,所有需要用到 ID 的地方,我们统统都是 DID。通过 DID 的支持,实际上在各个不同的这个链之间形成一个以用户来贯穿的看得见的维度。因为这些 ID 都是属于同一个用户,所以从某种角度来讲,他们都被串起来了。

我们还有一个 ABT Wallet,其不仅是保证数字资产的钱包,更是贯穿用户 DID 的部件。通过 ABT Wallet,我们能够以用户为中心,让用户在各个不同的链之间产生不同的联系。

Q3:有声音质疑云节点不是去中心化,您怎么看?成为云节点有什么门槛吗?

从某种角度来讲,中心化和去中心化本身不是绝对的,而是相对的。我觉得云计算已经成为现代社会的基础架构。基本上只有原教旨主义者才会说,只要是云节点就是中心化的。

今天的区块链,即使你采用矿机的形式,矿机还是需要通过互联网来连接。那么原教旨主义者最终会发现互联网本身现在还不够去中心化。从第一天开始,ArcBlock 就认为区块链和云计算之间不仅没有任何矛盾,也不存在中心化和去中心化之争。ArcBlock 的所有节点都是云节点设计,采用云节点之后也有非常多的优势:云节点的计算能力非常之强,可以实现非常多的强劲的计算跟存储的功能,可以开发出真正有意义的应用;云节点的安全性非常好,有更好的这种安全性的设置,安全容错、灾备等各方面都已经有非常充分的考虑。总体上来讲,我觉得云节点是未来区块链必然的趋势,

Q4:ArcBlock 作为一家区块链公司,它未来的价值如何体现,ABT 的生态如何商业化”?

ArcBlock 最重要的一点就是我们是一个去中心化的社群,我们希望 ArcBlock 这个公司只是作为整个体系的一个推动者。将来我们整个的价值应该体现在,更多的人加入我们,一起来开发更多的区块链的应用,整个 ArcBlock 的生态应该是属于许多的公司一起来参与的。

Q5:现在交易所中的 ABT 是 ERC20 Token 吗?需要做链网映射呢?如果要,有什么注意事项?

是的,现在 ABT 仍然是 ERC20 状态,那么我们在未来会把 ERC20 变成原生的 Token,转化也将通过我们的 ABT 钱包来进行。当然转换不会突然进行,会平滑过度,并且也会提前通知。

Q6:ArcBlock 存在哪些挑战?

现在我们有太多的挑战了。首先,我们需要更多的同仁和我们一起,在这个体系之上把这个应用真正的实现落地,那么这时候这个技术才能成功。

其次,我们也需要完善配套设置。在商业发展过程中也曾有一些技术不错的、想法也不错的产品,但最终并没有取得商业的成功,就是因为其他方面并没有能得到足够的配套。

Odaily