什么是区块链三难问题,又称不可能三角

 2023-08-28 20:42:46发布 2023-09-03 14:57:54更新

区块链有一个著名的“三难问题”,也常称为“不可能三角”,即区块链系统无法同时在可扩展性(Scalability,国内也常译为高效性)、安全性(Security)和去中心化程度(Decentralization)这三项指标上做到最优。从另一个角度来说,那就是每个区块链项目必须得在这三者之间做出一个优化的权衡。

区块链三难问题是一个经常被提及的概念,这一术语,最初是由以太坊的联合创始人 Vitalik Buterin 在 2018 年之前的某个时候在 GitHub 帖子上提出的,该帖子后来被删除。

在该帖子中,Vitalik 引用了 CAP 定理,这是一个关于分布式共识的计算机科学理论,它指出,如果发生网络故障,你不可能同时拥有一致性和可用性。

许多人指出,这个类似的理论是区块链三难问题的灵感来源,也是无法获得所有三者(可扩展性、去中心化和安全性)的证据。

三难问题分为哪三部分?

区块链三难问题(也被称为“不可能三角”)指的是区块链不可能同时实现所有三个理想的属性:去中心化、安全性和可扩展性。

不可能三角

去中心化,指的是区块链由分布式计算机网络,而非单一实体操作的性质。去中心化允许区块链协议由世界各地的多个个人进行操作和维护,而不是由单一的中央机构进行垄断。

安全性,指的是区块链保护其数据不受恶意行为影响的能力。在一定程度上,安全性与欺诈行为改变区块链上存储信息的难度密切相关。

由于区块链在网络上的不同用户之间存储了同一信息的多个副本,所以每当涉及到区块链的三难问题的权衡之时,安全性与去中心化两者之间往往是密切相关的。然而,许多人觉得也可以通过对区块链达成共识的方式来对它们进行权衡,以促使其获得更高的效率。

可扩展性,指的是区块链每秒处理大量交易而不放慢速度的能力。随着越来越多的人开始使用区块链网络,难免会需要更多的计算机算力来及时处理这些交易。归根结底,可扩展性指的是区块链网络能多有效地验证交易。

如何权衡区块链三难问题?

让我们来探讨一下区块链三难问题择二取之的排列组合:

  1. 倾向于去中心化和可扩展性而不是安全性,意味着虽然区块链分布在许多用户之间,并且每秒可以处理大量的交易,但提交到链上的信息可能是假的。
  2. 倾向于可扩展性和安全性而不是去中心化,意味着虽然区块链能够每秒处理大量的交易,并在此过程中保持准确的信息,但需要对维护该链的单个或少数实体有大量的信任。
  3. 倾向于去中心化和安全性而不是可扩展性,意味着虽然区块链是集体维护的,并且能够可靠地验证准确的交易,但它每秒只能处理少量的这些交易。这往往导致网络吞吐量低,交易成本高,即所谓的 Gas 费用。

许多人认为,最著名的区块链网络,如比特币和以太坊,偏向于去中心化和安全性,而牺牲了可扩展性。

因为如果区块链一开始就不能将维护网络的责任分摊给几个参与者,那么每秒可处理的交易数量也就无关紧要了。

如何解决区块链的三难问题?

不同的区块链协议旨在以不同的方式解决区块链三难问题。

开发人员也正在探索各种技术,旨在提高协议的可扩展性的同时,能不对协议已经建立的底层去中心化和安全性做出太大的牺牲。

分片是将区块链网络划分为更小的部分,以提高可扩展性的过程。

侧链是独立的区块链,与主区块链相连,允许为主链增加可扩展性和安全性。

第二层解决方案是建立在主区块链之上的协议,允许更快的交易速度并增加可扩展性。

其他解决方案包括链外交易、状态通道和零知识证明等。

为什么三难问题很重要?

通过关注区块链的这三个属性,可以理解整体。此外,还可以通过观察个别区块链如何处理三难问题来评估它们的价值。

在考量一个新的区块链时,需要关注它的安全性、去中心化性和可扩展性。这些是区块链的关键属性,决定了其在实际应用中的价值。

同时,在决定支持某个区块链项目之前,我们应该了解开发者是如何解决这些问题的。

他们是否在白皮书或技术文档中详细解释了他们对安全性、去中心化性和可扩展性的计划和措施?他们是否采用了安全性增强措施,如密码学技术和合规审计?他们是否提供了完备的去中心化架构和协议?他们是否有扩容方案,如分层设计或侧链技术?

三难问题是一个挑战,但技术的发展使我们有机会寻找解决方案。

推荐阅读