美文网首页区块链世界最新发展
公共链面临的主要挑战 2 扩展性的限制

公共链面临的主要挑战 2 扩展性的限制

作者: yrm23 | 来源:发表于2018-01-08 03:33 被阅读57次

    Preethi Kasireddy, medium.com  (来源)

    有限的可扩展性

    目前,所有公共区块链共识协议都具有挑战性的局限性:网络中每个完全参与的节点都必须处理每个事务。

    为什么?那么回顾一下,区块链从根本上说是“分散化”的 - 这意味着没有一个中心负责保护和维护这个系统。相反,网络上的每个节点都负责通过处理每个事务来保护系统,并维护整个状态的副本。

    虽然权力下放的共识机制为我们提供了我们所关心的区块链的核心优势 - 安全保障,去中立,去信任等等,但这是以可扩展性为代价的,因为根据定义的分权限制了区块链可以交易的数量处理网络中单个完全参与节点的限制。

    这意味着两方面:

    1. 低处理量:区块链只能处理有限数量的交易。

    2. 缓慢的处理时间:处理一个交易区块链所需的时间很慢。例如,比特币块时间是10分钟,而以太坊块时间是14秒左右。在交易高峰时段,这些时间甚至更长。相比较,使用Square或Visa等服务时,交易的处理几乎是即时确认的。

    因此,公共链不得不在低交易量和中心化程度之间进行权衡。

    换句话说,随着区块链规模的增长,网络中完全参与的节点对存储,带宽和计算能力的要求也在增加。在某些情况下,它变得很笨重,只有少数节点能负担得起处理数据块的成本,从而导致中心化的风险。

    那样发展的结果是,我们完成了一个360度(个人认为原作者说的应该是180度)的发展方向转变,回到了油几个大公司控制的中央系统的老路上,而实际上我们想要的是,加密货币当初承诺提供的, 每秒可以处理数千次交易,并且具有一定的去中心水平的系统。

    有限的可扩展性的解决方案

    理想情况下,我们希望区块链设计具有与比特币和以太坊类似或更好的安全属性,同时能够在没有每个节点处理网络中总交易量的一定百分比的情况下运行。换句话说,我们需要一种机制来限制需要验证每个交易的节点的数量,而不会丢失网络对每个交易的有效性和真实性的信任。这可能听起来很简单,但在技术上是非常困难的。

    可扩展性是平台未来成功的一大障碍。目前正在由区块链系统的各种开发团队提出一些建设性的解决方案。我已经在之前的文章中广泛地写过这个话题,如果你有兴趣,我建议你阅读。有关当前一些解决方案的简要总结,请参阅下面的内容:

    1)链下支付渠道

    小额支付渠道网络背后的设想是保持区块链上的大部分交易在链下进行。它本质上是将通常会在区块链上发生的交易放在区块链链下进行的机制。区块链纯粹用作结算层来处理最终结算的一系列交易的最终交易,这有助于减轻底层区块链的负担。

    这个方案解决了我们上面讨论的吞吐量问题,因为现在区块链可以扩大到更大的交易量。而且,由于支付通道一经处理就处理一个交易,而不是一个区块整体得到确认,小额付费通道解决了交易速度问题,消除了典型的延迟。

    生态系统中的微支付信道网络的一些例子,包括雷电网络和闪电网络。

    2)分片

    分片背后的概念是区块链的整体状态被分成不同的“碎片”,并且状态的每个部分都被网络中的不同节点存储和处理。每个分片只处理一小部分状态,并行处理。区块链分区与传统数据库领域的分区类似,除了需要在分散的一组节点之间保持安全性和真实性的额外难题之外。

    3)脱链计算

    这与状态渠道类似,除了范围较大。这个想法是运行安全和验证的计算(而不仅仅是币传输)的离线运行,这样可以避免这些运算在区块链上运行的昂贵代价。将计算和验证过程从区块链转移到单独的协议中,可以实现高交易吞吐量。一个例子是以太坊上的项目TrueBit。

    4)DAGs

    定向非循环图的缩写“DAG”是具有顶点和边的图数据结构。 (顶点是图上的一个点,边是从一个顶点到另一个顶点的路径)DAG保证没有办法从任何顶点开始,并沿着一系列的边,最终循环返回到顶点即没有循环)。这使得我们可以按照拓扑顺序获得一系列节点(或顶点)。

    5)DAG

    以DAG为基础的协议(例如IOTA的Tangle)的前提是将全局线性区块链排在一起,而使用DAG数据结构来维持系统的状态。为了保护网络,这些协议依赖于他们自己的新方法,不要求每个节点都以线性方式处理每个交易。

    另一种基于DAG的方法,例如SPECTER协议,使用块的直接非循环图(DAG)和并行的DAG块,以实现更高的吞吐量和更高的事务处理时间。

    我希望能在以后的文章中多写一些关于基于DAG的方法。现实情况是,这些协议还处于很早的阶段,尚未得到大规模的实施和使用。坦率地说,他们有一些根本性的局限/弱点,尚未解决被认为是可行的可扩展解决方案。

    有关这些可伸缩性解决方案以及其他一些更详细的概述,我建议您阅读我之前编写的有关可伸缩性的文章。

    相关文章

      网友评论

        本文标题:公共链面临的主要挑战 2 扩展性的限制

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