现在区块链平台的最大问题可以通过一个简单的类比来说明。

在21世纪初,互联网非常缓慢。如果你当时有一个博客,那么用户访问它既费时又费钱。

人们注意到了这个问题,但他们也认识到互联网的有用性。为了解决这个问题,他们致力于改善互联网的基础设施和设计。与此同时,他们构建了更好的硬件来运行互联网的重要元素,正如我们今天所知道的那样。

由于这些变化,互联网变得更快,访问网站的成本变得更低。之前,开发人员只能创建一个网页。但在这些变化之后,开发人员现在可以在改进的基础架构上构建Facebook,Google和Twitter等网站。所有这一切都是可能的,因为互联网现在非常快速和可扩展。

目前,区块链交易面临着类似的障碍:它们既缓慢又昂贵。

区块链公司正致力于提供可扩展的基础设施,以便区块链平台在未来成为主流。一旦发生这种情况,人们不仅可以使用区块链进行支付,而且还可以构建类似于Google和Facebook的应用程序。Zilliqa是寻求解决这一问题的公司之一。

区块链和可扩展性问题

如果不先解释吞吐量的概念,就无法解释可扩展性问题。

图片来源:Susi Susanti

想象一下,你在火车站。这里的火车间隔一小时,内部只有10人。一旦火车充满,第十一名乘客将不得不等待下一个。

使用此示例,乘客代表交易。像比特币和以太坊这样的流行区块链平台平均每秒可处理大约10笔交易。

图片来源:Susi Susanti

相比之下,像Visa这样的支付公司平均每秒处理大约5,000到8,000笔交易。

处理事务的速率称为吞吐量。与Visa等支付平台相比,区块链平台的吞吐量显着降低。

图片来源:Susi Susanti

现在想象一下你在同一个火车站,但这次和其他一百个想乘坐同一列火车的人在一起。火车到了。售票员看着人群说道:“能够支付最多票价的10个人将登上火车。”你很匆忙,所以你要为你的机票支付巨额款项并登上培养。

由于区块链平台的吞吐量低,交易费用上升。例如,10美元的交易很容易在今天更拥挤的区块链平台上增加2美元的交易费。

因此,区块链平台上交易的低速和高成本是目前在这些平台上进行主流交易的巨大障碍。

提高可扩展性

对于区块链平台的主流采用,这些平台需要扩展。区块链公司已经为此提出了几种解决方案。

1.增加块大小

图片来源:Joshua Lim

第一个也是最直接的解决方案是增加块大小。

回到火车比喻,这意味着将火车的座位容量从10增加到20人。这样,火车可以一次运送更多的乘客并减少车站的拥堵。

比特币的当前块大小为每块1 MB。每块最多2 MB的速度可以使每秒处理的事务数量翻倍。块大小越大,每秒处理的事务数越多。

但这在实践中存在问题。

正如Zilliqa的Jia解释的那样,“假设您将块大小从1 MB增加到1 GB。问题是,当你创建块时,你必须将它发送给网络中的其他人。“

他继续说道,“如果您使用Gmail,您就会知道,当您上传文件时,Google会开始抱怨。网络无法快速处理那个巨大的文件。这是增加块大小的问题。你不能超过一定的块大小,因此这个解决方案可以扩展的范围是有限的。“

2.脱链解决方案

图片来源:Joshua Lim

第二种可能性是通过脱链解决方案,如比特币的Lightning网络,以太网的Raiden网络和Neo的Trinity。

使用当前方法,每次进行交易时,都必须得到网络中每个节点的批准。(节点是运行算法来处理事务的计算机。)

例如,您想每天从特定咖啡馆购买一杯咖啡一个月。咖啡的价格为1美元,但您不想为整个网络承担1美元的交易负担。在网络上每天进行1美元的交易是非常昂贵的。

所以你和咖啡馆老板签了合同。合同规定,每天,你将用价值1美元的代币支付你的咖啡。30天后,所有者可以在网络上以30美元的价格兑换这30个令牌。您将一个事务发送到网络以标记此合同的开始。为了标记合同的结束,您将在30天后发送另一份合同。然后,所有者以30美元现金从网络中交换他的代币。

因为这些是在区块链网络之外发生的私人协议,所以它们被称为脱链解决方案。

该系统的缺点是该过程将集中在托管这些离线交易的服务器周围。这些脱链网络也是黑盒子,这种解决方案的透明性和安全性值得怀疑。

3.委托共识议定书

图片来源:Joshua Lim

区块链网络上的处理事务当前很慢,因为网络中的每个节点都必须处理每个事务。因此,如果网络中有一千个节点,那么所有节点都必须处理该网络中的每个事务。

就好像你有一群1000人一样,每个人都必须达成一致意见。这个过程不仅会很漫长,而且会非常混乱。

相反,如果您从社区中挑选10名成员,指定他们作为该组的管理成员,并让这10人进行投票,该怎么办他们达成共识会更容易,更快捷。

同样,您可以委派一组节点来运行协议并就事务达成一致。他们的协议将被视为该集团共识的代表。

大多数可扩展的区块链项目都使用此协议。要进入“管理机构”或财团,该集团的成员必须注册他们的利益并进行某些测试(称为股权证明或权威证明)。如果他们成功,他们将获得加入该联盟的证书并运行共识协议。

但是,问题在于协议现在围绕运行它的委托节点集中集中。

4.分片

图片来源:Joshua Lim

这就是分片 - 一种将网络划分为“分片”的链式解决方案 - 。

分片不是数据库领域的新概念。Sharding将大型数据库分成更小,更快,更易于管理的部分,称为数据分片。

直到Loi Luu,Prateek Saxena和他们的团队在他们的研究论文Elastico中探讨了这个概念之前,这个概念从未应用于区块链。Saxena是新加坡国立大学计算机学院的助理教授,也是Zilliqa的首席科学顾问。Luu,作为顾问在公司工作,在撰写论文时是同一所大学的博士生。

Zilliqa的解决方案称为网络分片。

图片来源:Joshua Lim

为了说明它是如何工作的,想象一下你有一个五步问题。

图片来源:Joshua Lim

现在你在10个学生的教室里。您遇到此问题,并且可以并行解决这些步骤。您将班级划分为五组,每组两名学生,并让每组解决每个子任务。第一组将解决第一个子任务,第二组将解决第二个子任务,依此类推。

图片来源:Joshua Lim

一旦组完成其子任务,它就会将信息传递给教师。教师将汇总五个小组的答案,并将全套信息传递给所有小组。通过这种方式,所有参与者都可以了解每个小组的工作内容,即使他们在专注于子任务时不知​​道其他人正在做什么。

这个例子中的学生是Zilliqa平台上的节点。“类”由网络中的所有节点组成,“组”称为分片。“老师”代表目录服务(DS)委员会,它本身就是一个分片。

将此与比特币网络上的教室相比较,学生必须自己解决问题的每一步。这种方法需要更长的时间,并且每个参与者都要付出更多的代价。

使用Zilliqa的网络分片,如果您有10,000个节点,它们将通过称为工作证明的过程随机分为10组。每个组称为分片。

图片来源:Joshua Lim

每个分片都会处理一组不同的交易,并提出一组他们都同意的交易。然后,他们将这些交易的摘要报告给另一个称为DS委员会的分片,该委员会将汇总来自不同组的这些摘要,并将它们组合成一个称为最终块的更大实体。来自最后一个区块的信息将被发送回所有组。

这个过程称为网络分片,Zilliqa是目前唯一知道正在处理它的公司。网络分片是一种分散的,安全的链路解决方案,为您提供线性可扩展性 - 也就是说,您拥有的节点越多,您获得的吞吐量就越高。Zilliqa目前每秒可处理2,488笔交易,并计划在未来每秒处理10,000笔交易。

以太坊正在研究一种类似但不同的过程,称为状态分片。在网络分片中,并非每个节点都必须处理每个事务,但每个节点都必须存储有关网络中其他分片中发生的事情的信息。但是使用状态分片,每个节点只会存储它们已处理的信息的子集。虽然这减轻了每个节点的负担,但是分片之间的通信变得复杂。

然而,分片的缺点是设计和实现的复杂性。

“我们在2015年开始了我们的研究,并且仍在进行分片实验,”贾说。“实现一个简单的分片版本很简单,但很难正确和安全地完成。这就是为什么很少有团队在努力的原因。“

“将此与增加块尺寸的想法相比较,”他说。“这是最简单的解决方案。您只需调整一个参数。增加块大小,增加吞吐量。当您引入分片时,我们还需要考虑很多其他事情。你如何正确选择每个小组成员你如何分割任务所有这些都给系统带来了复杂性。但如果操作正确,您的系统将是分散的,安全的,并提供线性吞吐量。“

带宽和存储也将是常见的缺点 - 不仅适用于分片,还适用于所有可扩展的区块链解决方案。

对于像比特币和以太坊这样的流行区块链平台来说,这不是一个问题,因为它们的吞吐量很低。

“比特币和以太坊每秒处理10笔交易,”贾说。“按照目前的速度,一年内的所有交易都将达到几GB。但是,当我们每天处理数万或数亿的交易时,数据会爆炸,为了存储所有这些交易,我们必须找到更好的存储解决方案。这是网络分片无法直接解决的问题。“

运行公共测试

网络分片已在Zilliqa内部成功实施。

该团队现在希望公众在他们的测试网上试用它,该测试网将在3月底发布。

测试网基本上是一个复制系统,供团队在将其部署为生产系统(称为主网)之前运行和测试平台。

在测试网上试用Zilliqa的目标是Zilliqa的支持者 - 包括对协议感兴趣的开发人员和社区成员 - 以及对分片概念感兴趣的区块链开发人员。

在testnet中,用户可以观察区块链系统的状态,例如正在处理的翻译数和当前的纪元号。与此同时,用户可以使用钱包创建有效帐户,以便在测试令牌中发送和接收交易。

目标

Zilliqa团队成员在新加坡。

在不久的将来,Zilliqa计划推出其区块链系统和智能合约平台,这将使区块链上的应用程序运行。下一步是在平台上发布锚应用程序 - 称为分散应用程序(简称dApps)。将这些视为谷歌和Facebook等应用程序,但在分散的区块链平台上发布。这些应用程序可以将Zilliqa推向主流用途。

“如果区块链是一个操作系统,我们希望Zilliqa成为未来的Android或iOS,”贾说。“我们希望普通人能够轻松地使用和开发dApp,并且有一天会注意到他们最喜欢的应用程序是建立在Zilliqa上的。”

未来,Zilliqa还希望解决区块链中的开放性问题,例如可扩展的解决方案,隐私和存储。

“这些问题不仅针对行业,也针对学术界,”贾说。“从长远来看,我们希望提供可扩展的区块链平台。与此同时,我们也希望研究,发表论文,支持区块链行业,以便我们能够解决这些未解决的问题并构建未来的互联网。“