时至今日,分布式技术和区块链概念已经为很多人所接受,同时也产生了巨大的商业和社会影响力。然而,比特币也存在功能性单一、隐私保护缺失、吞吐量不足等问题。针对比特币的这些问题,杨耀东老师为我们分享了“如何开发一个更好的基础设施来支持区块链上的应用”——打造一个支持百万级TPS的去中心网络。与单条区块链、闪电网络不同的是,夸克链提出了双层网络和跨片交易,使得在安全性、去中心化、吞吐量上都有了一定的提高,同时还将为用户创建一个操作简单的智能钱包。
杨耀东:
夸克链基金会科学家和核心团队成员,技术孵化器Demo 的创始人之一,也是西安交通大学的研究员。他从浙江大学获得学士学位,在美国弗吉尼亚理工大学获得博士学位。目前,杨博士已经发表了超过50篇研究论文(H指数为14),担任《自然》出版社旗下《科学报告ScientificReports》的编委。他参与了多个由中国自然科学基金、科技部和教育部支持的科研项目。
以下为杨耀东的演讲实录:
我今天的报告是和大家讨论“如何打造一个更好的基础设施来支持区块链上的应用”。在比特币的创新驱动下,时至今日,分布式技术和区块链概念已经为很多人所接受,同时也产生了巨大的商业和社会影响力。从技术上来说,比特币作为科技上的初步实验,本身还存在很多问题。我相信没有一个人期待比特币在诞生之初就是完美的。
比特币存在的三大问题
在这里,我仅仅列出三个人们比较关注的问题,很多团队已经做了大量尝试来解决这些问题:功能单一问题,隐私保护缺失问题,吞吐量不足问题。
一、功能单一问题。比特币本身功能比较单一,只是一个现金传递的工具,人们的经济活动需要更多的功能。现阶段一个可用的解决方案就是以太坊。以太坊这样的项目不仅可以提供现金功能,还有丰富的智能合约满足更多的交易场景。
二、隐私保护缺失问题。虽然比特币的钱包地址本身只是一段代码,但实际操作中,是有可能把这个钱包的主人给找出来的。很多国外执法部门实际上就是通过对比特币交易的追踪,最终把贩毒和走私网络给揪出来。匿名性不足是一个问题,为了把区块链技术应用到对隐私要求比较高的商业实践中,诞生了许多匿名区块链项目,比如:门罗币。
三、吞吐量不足问题。这已经是比特币中非常非常严重的一个问题,关注这个行业的同仁都知道,去年比特币分叉后诞生了比特币现金,使得社区分裂,其源头就是为了解决吞吐量问题。
这三个问题的三个代表性的解决方案,都是为了使得比特币在某些方面变得更加完美。解决方案本身的价值,可以从他们的市值中反映出来,来获得大家的认可。比如说,因为部分解决了比特币功能单一的问题,以太坊成为排名第二的加密货币。
今天,我们重点讨论刚才提到的第三个问题:吞吐量不足。很多嘉宾在前面介绍过,以太坊作为基础设施,它可以达到10TPS。但这远远不够,我们生活中VISA、alipay(支付宝)已经达到了万级TPS的处理能力。这表明,如果想支撑起一个全球性交易网络,需要相当高的交易处理能力。
但实际上区块链产品还需要运行包括智能合约在内其他的功能,它的交易处理量会远远大于前面的数字。去年DApp的兴起,使得以太坊交易费用高起和网络堵塞,以太坊的开发团队已经发现这是一个很大的问题。他们计划用两到三年时间,对以太坊进行升级,计划在未来达到1000TPS的处理能力。
打造一个支持百万级别TPS的去中心化网络
谈到性能,这样的“不可能三角”在很多场合都会被展示,要同时做到去中心化、安全和高通量非常困难。但我们做技术的,就是要在所谓的不可能中寻找可能性,发现最优解。如果我们只是追寻去中心化和安全性,比特币网络已经证明了这是可行的,其本身多年稳定的运行已经是一个非常好的例子;如果我们不需要去中心化,谷歌BigTable为代表的产品同时能具有安全性和高通量,也已经提供了很好的方案。那么,如何才能做到同时具有去中心化和高通量呢?我们有一些自己的思考。当然,安全性是最基本的,如果系统本身是不安全的,那一切就无从谈起。
首先,我想说这样一个基本观点:生活中的应用场景非常多,并不是只能有一种解决方案,这其实给我们整个区块链的从业者带来很多的机会。如果你只是需要一个非常快速的交易平台,而不需要担心中心化的问题,你完全可以选择现有的成熟的解决方案;如果你的需求位于上面三角形的中间区域,则需要在这个三角中寻求一个最优点。根据你的需求达到去中心化、安全性、高处理能力三者之间的一个平衡。我们正在思考的解决方案就是要达到这一点,根据需求场景,在“不可能”中达成平衡的艺术。
我们的最终目标就是打造一个支持百万级别TPS峰值处理能力的去中心化网络。这个TPS数据不是为了好看,因为支付宝处理业务量已经为十万级TPS,目前一个中型网络网络的访问处理能力需要在20万级别TPS,百万级TPS也只是为了满足正常的商业需要而已。
整体的系统的构架是这样的:我们有两层的区块链结构,有一个叫做根链,另一个是分片区。分片这个概念,在数据库里很常见。可以这样理解,我们把原来整个区块链网络切割成了一个一个的片。这个网络中,分片是弹性的,根据实际需要,还可以对其做二次或三次再分片。根链有两个主要的角色,一个是提升分片安全性,因为具体的一笔交易已经在分片上被确认了,在根链还将确认分片的区块信息,这样一来为这个交易提供了双重的安全保证。根链的第二个角色是实现跨片的交易。
为什么我们样的技术可以保证比较好的去中心化程度?因为我们有更多的分片。比特币世界里挖矿集中化的问题,降低了网络的去中心化程度。在我们这里挖矿,一个矿工,一次只能在一个片上工作,这样一来,众多的分片为矿工提供了更多的获得奖励的机会。如果你是一个独立的矿工,你可以选择到一个没有一个大矿主的分片上去挖矿,不加入矿池,同样有机会获得奖励。通过这样的思路,我们可以进一步达到去中心化。众多的分片会分散算力,为了提高安全性,分片上层还有根链,能够提供更多的算力来保护交易。
公链的三个主要特征
我们的公链将有三个主要特征:去中心化横向扩容,跨链交易和简单账号管理。因为系统中有很多分片,用户可能在很多分片上都会有钱包地址,我们希望能设计一个这样的智能钱包:用户不需要了解太多的底层细节,就可以在我们的链上做交易,并且操作过程非常简单,就像使用比特币钱包一样简单,而智能钱包则自行处理底层的细节问题。
大家可能会问:那么高的TPS,账本会变得非常重,对计算机的处理能力要求会很高,这个时候该怎么办?我们做过测算,达到一百万TPS的处理能力时,一个拥有全网账本的节点需要很强的处理能力,这样的节点通常会很贵。为此,我们将创造了一种叫做横向扩容的方法来解决这一问题。希望能通过一些彼此之间能够建立信任的普通电脑的合作,实现一个“贵”的节点的全部功能。
跟你合作这些普通电脑各自拥有部分信息,合在一起以后,将会提供全网的所有信息,这将能够很好的支持跨片交易。而普通人能够负担的电脑也保证了网络的去中心化程度。
我们目前集中力量解决吞吐量的问题。简单的一句分片,下面有非常多的细节要处理,有很多全新的尝试。我们不但要实现网络分片还要实现状态分片,绝不是简简单单就能做好。目前,我们就希望把分片这个事做好,支持更高的TPS。一旦我们分片做好了,我们整个网络将能非常好的支撑开发者在上面开发应用,不用担心很高的交易手续费和网络堵塞。
未来要做的三个重要升级
如果从项目的长期规划来看,未来我们会有几个重要的升级。我们认为至少需要做以下三个重要升级,并计划在今后三年完成。
一、对以智能合约的支持。几个月后,在我们开放测试网上线时就会提供智能合约,后面我们会对智能合约进行进一步升级,增加和外部数据交互的能力。目前的智能合约都是数据闭环,但一个商用的系统需要和生活实体交互,肯定需要外部数据的导入。提升智能合约适用性,将是我们的一个主要升级。
二、链上和链下交易能力。当我们谈论分片技术时,并不认为别的技术不好,这个世界不是非黑即白的二元选择。“不可能三角”中的优秀方案是根据能否满足特定的商务应用来确定的,根据特定的应用场景,选择适合的技术就好。未来,我们也会考虑加入类似于闪电网络的链外交易处理方案,满足更多元的需求。
三、用户的隐私问题。我们会在这方面做些工作,确实来保障用户的隐私。
应用场景和开发路线
作为底层技术,我们能支撑各种各样的应用。但结合我们最大的特点:高吞吐性能,我们特别欢迎那些需要高TPS处理能力的应用,比如:
- 小额快速交易,比如说去逛小吃街、超市购物。
- 高频交易场景,比如去中心化的交易所,这将是我们的很大机会。
- 下一代互联网广告,利用区块链打造去中心化的广告发放系统,将会非常有价值。
- 物联网交易。
- 游戏交易场景。
我们相信,具有高TPS处理能力的技术将会为这些应用提供更多的价值。
上图是我们的开发路线图,我们在2月份已经完成了白皮书。现在是三月底,我们已经有测试网和测试钱包了,第三季度将会推出0.2版的测试网络。这个版本中将支持智能合约,同时处理能力达到万级TPS。届时会开放给开发者在上面开发自己的应用。我们希望今年能主网上线。下面是我们部分团队成员的信息,这是一支来自于硅谷的团队,有深厚的技术积累。
如果大家对我们的方案感兴趣,想查看包括这个项目白皮书在内的更多信息,请访问我们的网址www.quarkchain.io,欢迎大家关注!