DK

Posted on May 11, 2022Read on Mirror.xyz

区块链的不可能三角

前言

本文首先将分析当前区块链技术的特点,介绍当前区块链技术所面临的瓶颈以及原因,并结合当前现存的区块链系统,分析不同系统对不可能三角的取舍。

接着,从突破区块链不可能三角出发,介绍当前的一些技术,对区块链不可能三角的影响以及突破区块链不可能三角的可能性。

全文将按照如下的结构展开:

全文结构


一、什么是区块链的不可能三角?| 可拓展、去中心化、安全

在传统货币理论中存在“不可能三角”,即一国无法同时实现货币政策的独立性、汇率稳定与资本自由流动,最多只能同时满足两个目标,而放弃另外一个目标。

相类似,当前的区块链技术也存在“不可能三角”,即无法同时达到可扩展(Scalability)去中心化(Decentralization)安全(Security)三者只能得其二

这三者的关系如下图所示:

区块链的不可能三角

关于区块链的不可能三角

以太坊创始人Vitalik Buterin如是说:

“扩展性也许是排在第一位的问题。扩展性问题已经成为很多系统的坟墓。这是一个重大而艰巨的挑战。这些都是已知的事实。

二、区块链不可能三角体现在当前哪些方面?| 无法同时满足三角

当前的区块链技术多多少少多有这样那样的不足。其实,这些不足,归纳起来,其实是对这三个特性的不同选取而已。

1. 比特币区块链技术

比特币区块链技术便是一种追求“去中心化”与“安全”的技术组合。

追求“安全”与“去中心化”则无法达到“可扩展性”。

它的每一个节点都下载和储存所有的数据包,使得网络可以民主自治,但也同时带来了巨大的储存空间损耗和校验成本。比特币每秒只能处理7笔交易,这是远远无法承载全球货币支付场景需求的。

由于比特币的发展,1M的区块大小已经不够用了,社区中矿工与开发团队之间就这个问题产生了分歧,矿工的扩展区块大小到8M的计划,实际上是选取了“安全”与“可扩展性”而部分放弃了“去中心化”,因为对节点的运算能力有更高的要求。

2. 以太坊区块链技术

以太坊的区块分片化存储的方案便是一种追求“可扩展性”与“去中心化”的技术组合。

追求“可扩展性”与“去中心化”则需要牺牲“安全”。

以太坊的分片其实相当于同构的半独立的多链,世界状态是共享的,但是交易历史是分开的。多链也就是选取了“去中心化”与“可扩展性”而部分牺牲了“安全”,因为算力分散了。

3. 超级账本区块链技术 | EOS 区块链技术

以超级账本为代表的联盟链的区块链方案是一种追求“可拓展性”与安全的技术组合。

追求“可扩展性”与“安全”则需要牺牲“去中心化”。

在超级账本区块链技术中,达成共识的节点由联盟链中的成员组成。这大大减少了节点了数量,加快了网络的吞吐量(即可拓展性)。

再比如,当前比较火热的EOS,公链,竞选的21个超级节点,其实也是对“去中心化”的牺牲。

EOS-logo


三、为什么会造成区块链的不可能三角?| 去中心化的三个维度

在一谈到区块链技术的时候,人们总是习惯将“区块链技术”与“去中心化”绑定在一起。这是因为,最开始的比特币区块链技术,是一个完完全全去中心化的系统。

神化“去中心化”的段子从来不少。比如:

 

我打开冰箱,拿出一瓶啤酒,觉得不够凉…… 来!你给我去中心化地把这啤酒冰镇一下?

为什么会有“区块链的不可能三角”?

这和我们想要达到的“去中心化”的目的有关。

所以,我们接下来,讨论一下,究竟什么是去中心化。

Ethereum的创始人之一Vitalik Buterin从结构、政治和逻辑三个维度剖析了去中心化的含义。

 

三种类型的去中心化

当大家在讨论软件去中心化的时候,实际上往往有3种不同维度的中心化/去中心化。虽然在一些情况下这些中心化形式往往缺一不可,但通常它们还是彼此相对独立的。这几个维度是:

1、结构(去)中心化——系统由多少物理计算机组成?该系统可容忍这些计算机多少台同时发生崩溃?

2、政治(去)中心化——有多少个人或者组织最终控制着组成该系统的那些计算机?

3、逻辑(去)中心化——该系统展现和维护的界面和数据结构看起来更像是 单一的一体式对象 呢,还是 无定形的一大群 ?或者用这个问题来启发一下:如果包括提供商和用户在内把你的系统一分为二的话,那两部分是不是还可以继续作为独立单元完全运作。

 

我们可以把这三个维度用下面这张表来表示:

不同维度去中心化举例

要指出的是这些设定还是非常粗糙的,还有待商榷。但我们先稍微过一下这几种情况

 

传统企业是政治中心化(有一个CEO),结构中心化(一个总部)以及逻辑中心化的(并不能真正一分为二)

 

民法依赖于一个中心化的法律制定实体,而习惯法是基于许多独立判决的基础上制订的。民法仍然有一些结构上的去中心化,因为有很多法庭仍然是由很大的自由裁量权的,但习惯法的自由裁量权更大。这两个都是逻辑中心化的。

 

语言是逻辑去中心化的;Alice和Bob之间讲的英语与Charlie和David之间讲的英语完全不需要一致。语言并不需要一个中心化的基础设施存在,而英语的语法规则也不是由一个人创建或控制的(世界语则是源自Ludwig Zamenhof,的发明,尽管其现在的功能更像是一门无人监管、逐渐演变的活语言)。

 

BitTorrent在逻辑上是去中心化的,类似于英语的样子。内容交付网络也类似,但却是被一个公司所控制。

 

区块链是政治去中心化(没人控制区块链)、结构去中心化(没有基础设施性的中心失败点)的,但是在逻辑上是中心化的(有一个公认的状态,整个系统行为就像一个计算机一样)。

结构中心化往往导致政治中心化。

逻辑中心化会导致结构去中心化更加困难。

而我们的区块链系统是结构上去中心化、政治上去中心化、但是在逻辑上却是中心化的!

所以,这种要求,是导致区块链不可能三角的内在原因。

 


四、如何突破区块链的不可能三角?

当前的区块链系统,或多或少的,都是在这个三角之内做出取舍。

有的在优化共识算法,提高共识的效率,比如POS、DPOS等机制被采用,实际上都是对“去中心化”的退让,形成了部分中心化;有的采用闪电网络,是指将小额的,频繁交易,先通过一些分支节点进行储存和计算,并在一定时间内整合归并到主链上,这种方式也是部分放弃了“去中心化”。

当前的区块链技术,在这个三角下,衍生了公有链,联盟链和私有链这几类代表。

联盟链只允许预设的节点进行记账,加入的节点都需要申请和身份验证,这种区块链技术实质上是在确保安全和效率的基础上进行的“部分去中心化”或“多中心化”的妥协。

而私有链已经成为了完全“中心化”的技术。

区块链网络

今后区块链面临不可能三角的制约,会如何演化呢?

我想,更多的会是根据不同的业务场景,对这三者做出取舍。

另外,未来的区块链、IOT架构很可能是中心化与去中心的结合保障了安全性和可扩展性,究竟哪种技术会胜出目前还很难说,让历史来见证吧!