“真理”不可能三角。区块链中流传着一个令许多人津津乐道的“真理”:不可能三角。很多项目方打着“打破不可能三角”、“突破不可能三角”的旗号也不绝于耳。人们始终认为,不可能三角问题就是区块链当前面临最大的问题,“打破它”是意件极具意义的事情。但是这很矛盾。科学意义上的“不可能”就是指无论如何也不可能,那它怎么可能“被打破”、“被突破”呢?
这不是一篇要盖棺定论的文章,它的出发点是为了探讨,探讨区块链领域一个几乎人人都知晓的概念:不可能三角。
我们要探讨它是一个真概念,还是一个伪概念。因为只有当我们分辨出真伪,不再聚焦、不再利用、不再浪费开发能力在伪上,才有可能去探索区块链中真正需要被关注、被解决的问题。
本文分为三个部分,分别是:不可能三角的演变史;对不可能三角的质疑;分布式系统CAP定理是真正的不可能三角。
“以讹传讹”的不可能三角演变史
区块链不可能三角是指一个区块链系统不可能同时满足三个角,它必须以部分的牺牲某个角为代价,换取另外角的指标的提升。
1.长铗版本
在中国,最早提出不可能三角理论的是长铗。他在2014年发表了一篇名为《不可能三角形:安全,环保,去中心化》的文章,并引起了广泛的讨论。
不过,这篇文章讨论的是加密货币的不可能三角,结论是“环保型密码学货币”是不存在的。这与我们如今谈论的不可能三角的适用领域完全不同。长铗是这么描述不可能三角的:
Soul平台将于9月9日发售数字藏品头像盲盒“Soul-Mobius”:金色财经消息,Soul平台将于9月9日10:00起限量发售其数字藏品头像盲盒“Soul-Mobius”,总量15996个,数字藏品头像包含专属八边形头像框、专属身份标识别、合作潮牌专项折扣券等权益。[2022/9/7 13:13:47]
在此,我提出一个三元悖论:去中心化、安全、环保构成一个不可能三角形。
设计一个既环保又安全的密码学货币,它必然是中心化的,比如PPcoin、Nextcoin、Ripple,它们要么本身就是中心化的架构,要么其去中心化的架构不可维持,它们本质上仍是和PayPal、网银一样的中心化验证机制。
设计一个既环保又去中心化的密码学货币,它必然是不安全的,比如IP投票制的P2P货币,中本聪起初就已排除了这种可能,他认为“如果决定大多数的方式是基于IP地址的,一IP地址一票,那么如果有人拥有分配大量IP地址的权力,比如僵尸网络,就有可能主宰比特币网络”。
设计一个安全的去中心化货币,它必然是以付出能源与计算力为代价。工作量证明是以去中心化形式构建安全产权认证系统的第一个解决方案,也可能是唯一解决方案。
长铗提出的“去中心化”和“安全”在用词上与现今的流行版本一模一样,但它们所代表的意义却截然不同,长铗版本中指的是货币的机制和货币的安全。
传奇基金经理Mark Mobius:比特币仍将下跌:金色财经报道,新兴市场大师、传奇基金经理Mark Mobius表示,尽管最近有所复苏,但比特币仍将下跌。Mobius称,看不出在这种环境下对加密货币的热情会如何增长。Mobius预计政府将“越来越多地”打击该行业。他指出主要加密货币交易所目前面临的监管压力越来越大。[2021/7/28 1:19:26]
2.VitalikButerin版本
流行版本的不可能三角理论来自“Vitalik”,是指一个区块链系统无法同时兼顾去中心化、可扩展性、安全性,这个三角被广泛地引用进了各种演讲、报告、文章,甚至白皮书中。
但它真的是由Vitalik提出来的吗?
该不可能三角发源于GitHub以太坊目录下的一篇文章,名为《Onshardingblockchains》,文中首次提出了这个三元悖论。
这篇文章隶属于以太坊的《ShardingFAQs》系列,由一位名叫JamesRay的团队成员创建并维护。这个系列用来做什么?用来回答大家关于分片的种种问题。
也就是说,所谓的Vitalik提出的理论,其实只是以太坊团队成员在一篇回答社区问题的文章中提及,不仅与Vitalik无关,不仅不是论文,它连主题性文章都算不上。但真相还不止于此。
为清晰起见,逐条说明关于“Vitalik”版不可能三角的一些事实。
动态 | SILUBIUM公链区块链浏览器“Silkchain”收到发明专利审查合格通知书:近日,SILUBIUM开源公链区块链浏览器“Silkchain”(丝路区块链浏览器)收到了发明专利申请初步审查合格通知书,专利名称为:一种数字货币区块链运行状态的可视化方法及浏览器。通知书显示,该浏览器经审查符合专利法实施细则第46条规定,专利申请进入公布准备程序。[2018/12/30]
1.原文用的是“Thissoundslikethere’ssomekindofscalabilitytrilemmaatplay”,再结合上下文,会发现不可能三角这一理论的提出是没有经过任何逻辑的、系统的论证,作者只是列举了一些问题后就提出了这个观点。而且作者在文中用的就是不确定的表达,却在后来被人们当作了无疑的真理。
2.原文的上下文都在讨论“scalability”,甚至作者也称其为“scalabilitytrilemma”,也就是说,这个三角本是针对“区块链可扩展性”的,但却被扩大到“区块链”,从ScalabilityTrilemma演变成了BlockchainTrilemma。
3.对于三个角:Decentralization、Scalability、Security,作者给出了明确的定义,比如安全是“beingsecureagainstattackerswithuptoO(n)resources”。也就是说,作者的三角是限定状态下,并基于这种限定状态进行讨论,但却被扩大到无限定条件的区块链。
不过,“Vitalik”不可能三角最大的问题还不是上述事实,而是提出这个观点的环境。它出现在用来介绍以太坊分片技术的文章中。
写过论文的人知道,为了证明自己的研究解决了问题,第一步就是提出问题;为了证明自己的研究厉害,第一步就是把问题描述的很重要、很难解决。《Onshardingblockchains》这篇文章的结构正是如此。
首先通过对现状的描述,给出“不可能三角”这个问题;接下来分析多种方法,指出别人无法解决这个问题;最后提出自己的方案,论证该方法可以如何完美地解决问题。
没错,如果耐心一些,把“Vitalik”提出不可能三角理论的文章看完,就会发现以太坊已经通过它的分片技术解决掉这个三角难题了。所谓的“不可能”,在它诞生的第一天就被论证为“可能”了。
JamesRay在文章中写下这个不可能三角,只是为了论证以太坊通过分片技术可以实现可扩展性,只是为了证明wecanbreakthroughscalabilitytrilemma。
关于这个三角,文中定义清晰、描述严谨,并无问题,只是在后来被多维度误解了。下图是以太坊在这个问题上能实现的解决程度。
立不住脚的不可能三角
不可能三角得到广泛的认可,除了与长铗或Vitalik的知名度有关,更多的是因为这个理论看上去是正确的。但它真的经得起推敲吗?
加密支付公司Maplerad完成600万美元融资,Valar Ventures领投:10月17日消息,非洲加密支付公司Maplerad完成600万美元融资,此轮融资由Peter Thiel创立的的Valar Ventures领投,Golden Palm Investments Corporation、Fintech Fund、Armyn Capital、Dunbar Capital、Strawhat Investment、Polymath Capital、Unpopular Ventures、Sean Mahsoul和My Asia VC等参投。该笔资金将用于扩大团队,并在非洲市场进一步扩张。
据报道,Maplerad创立于2020年,其首款产品名为Wirepay。该应用程序通过提供加密货币的跨境支付解决方案来帮助用户进行国际支付。目前该应用已支持一种用户以多种货币接收、持有和支付,创建虚拟和实体卡,并支付账单。(TechCrunch)[2022/10/17 17:29:06]
不妨重新思考三个问题:
什么叫去中心化?什么叫可扩展性?什么叫安全性?能确切的回答它们各自的含义吗?如果一个理论中的概念都无法准确定义,该理论有什么价值?
把三个角变成两个角,“不可能”的矛盾关系还存在吗?把三个角变成四个角,“不可能”的矛盾关系还存在吗?如果存在,提“不可能”三角的独特意义何在?
不可能三角对区块链项目的工程实现有什么实际的指导作用?
“可扩展性”在少数版本中被替换成了“性能”,但即使没被替换,人们在语义上也是用“可扩展性”来指“性能”。但这两个概念是不具备等价性的,扩展性只是提高性能的方法之一,性能只是扩展性实现的功能之一。下图是常见的不可能三角的版本。
EOS的21个节点常被用来证明不可能三角的正确性,人们认为它是牺牲了“去中心化”,换来了“性能”,但当我们担心EOS的“去中心化”时,担心的是什么?担心的是EOS因为中心化而不够“安全”,去中心化与安全是紧密相关的。
“去中心化”和“性能”是不可能两角的说法反而比不可能三角更为精准,仅仅两角就能说明区块链现阶段的状况。
另一个角度,牺牲去中心化和可扩展性就能保证区块链系统的安全吗?显然不是。安全很大一部分是纯技术的解决方案。那么不可能三角中的安全指的是什么?提这种局限的安全的意义又何在?
除了用于“吹牛”,不可能三角似乎对区块链项目的工程实现没有任何实际的指导作用。我们无法想象一个项目的负责人对团队成员说,“为了提高性能,我们可以对系统的安全性做一些牺牲”,也无法想象负责人会说“为了去中心化,这个系统不要求高性能”。
事实也正是如此。从来没有一个项目说自己为了提高不可能三角的某个指标,而牺牲了其他的指标,他们说的是自己“突破了不可能三角”。
如果说不可能三角是真概念,那么它最大的意义恰恰就是告诉项目方,系统必须要在这三个指标间做出取舍,而不是“突破”,可以突破的都不叫“不可能”。
分布式系统CAP定理是真正的不可能三角
追究不可能三角的真伪,一方面是因为伪概念给了伪项目生存的土壤,这很糟糕;另一方面是希望人们能把焦点集中到真正的问题上。
在区块链,有价值的不可能三角是分布式系统CAP定理。它是指分布式系统无法同时确保一致性、可用性和分区容忍性。
EricBrewer在ACMPODC会议上首次提出了CAP猜想,之后,麻省理工学院的SethGilbert和NancyLynch从理论上证明了该猜想,使之成为一个定理。
CAP定理是分布式系统领域最重要的原理之一,深刻影响着分布式计算与系统设计的发展。
CAP定理一致性、可用性和分区容忍性的具体含义如下:
一致性:如果系统对一个写操作返回成功,那么之后的读请求都必须读到这个新数据;如果返回失败,那么所有读操作都不能读到这个数据,对调用者而言数据具有强一致性。
可用性:所有读写请求在一定时间内可以得到响应,不会一直等待。
分区容忍性:系统中的网络可能发生分区故障,即节点之间的通信无法保障,但这不影响系统正常服务。
CAP定理认为分布式系统最多只能同时实现上述三个要素中的两个。在某时刻如果满足AP,即分隔的节点对外服务,但不能相互通信,这将导致状态不一致,不能满足C;如果满足CP,那么在网络分区的情况下为达成C,请求只能一直等待,这将无法满足A;如果满足CA,即在一定时间内要达到节点状态一致,则要求不能出现网络分区,这将不能满足P。
这一结论告诉设计者不要浪费时间去研究如何兼顾这三要素,因为根本不可能,在进行分布式架构设计时,必须根据具体系统的需求做出取舍。
不可能三角并不是限制,它反而是在正确的道路上开拓了设计师的思路,让他们在多样化的取舍方案下设计出了多样化的系统。
过去十几年里涌现出不计其数的分布式的新系统,正是基于数据一致性和可用性的相对关系产生的——对于分布式系统,分区容忍性必须满足,否则该系统就毫无意义,因此,其实是在一致性和可用性之间做选择。
区块链系统的设计也正是如此。
在区块链中,C(一致性)是保证各个链的各个节点读出来的数据都一样,A(可用性)是保证各个链的各个节点可以在不同步完全的情况下实现交易,而因为节点是分布的,P(分区容错性)是必须要保证的。基于这三个要素和对三个要素的取舍,有了BFT类共识、PoW类共识和其他共识算法。
小结
就像没有一个通用的分布式系统,也没有通用的共识算法。CAP定理指导着区块链共识和治理的设计,决定着其分布式系统的功能和实现。
不可能三角的迷人之处在于:科学告诉我们什么是不可能的,而工程告诉我们可以付出一些代价,把它变成可行。CAP定理具有这种带张力的美感,反观流行版本的不可能三角,似乎并不具备。
标签:区块链CAPITATALI区块链存证说法错误的是CAPOsaitama币值得长期持有吗Social Capitalism
ThousandsINBHandedOutforCelebratingtheLaunchofINBPublicChain 2019-07-10 Dearcommunities:Tocelebra.
尊敬的Hubi全球用户:为庆祝TERA重磅上线,现举行《TERA交易赛,齐享31万TERA》活动.
近日,三大游戏引擎之一的h5游戏引擎白鹭的区块链项目Egretia在BiUP正式上线,上线三周上涨400%,成为了BiUP交易所的明星项目之一!据介绍.
大约再过30天,也就是8月6日左右,莱特币即将迎来奖励减半。届时,挖矿奖励会从25变为12.5,年通货膨胀率会从8.77%降至4.26%。当前,市面上流通中的LTC容量为6254.935万.
特大喜讯!! 据权威数据统计网站Coinmarketcap数据统计:EGT24小时最高报价0.0548美元,突破新高,24小时交易量超5876万美金,目前流通市值超出2.18亿美元,排名第38.
美国社交网络巨头脸书在今年6月18日发布了加密货币项目Libra(天秤币)白皮书,一石激起千层浪.