“去中心化”是密码经济学(cryptocurrency)领域中使用频率最高的词之一,甚至有人认为区块链是为了去中心化而存在的,但这是一个基本没有明确定义的术语。为了保护和改进当今世界的去中心化网络,人们不仅花费数千小时对其进行研究,还花费数十亿美元为其生成哈希算力。更有什者,当正反双方争论愈演愈烈时,某项协议的支持者打击提案反对者的终极秘密武器就是说出反对者的论点是“中心化”的。事实上,人们常常对“去中心化”一词的实际含义存在很多混淆。例如,参考下面三个经常用来分析“去中心化”的图:对去中心化的狭义理解我们先来讨论一下美版知乎(Quora)社交平台上的“分布与去中心化之间存在关系”。两个主要答案有什么不同”。第一个基本上模仿了上图,而第二个提出了完全不同的主张,“分布式意味着并非所有事务处理都在同一个地方完成”和“去中心化意味着没有单一的实体可以controlallsession”。同时,“EthereumStack”社交论坛上的一个热门答案也给出了一张与上图非常相似的图表,只是将“去中心化”和“分布式”这两个词调换了!显然,这样的分析是还不够,我们还需要进一步澄清“去中心化”这个词不包括另一个,一般来说它们是完全相互独立的。以下是对三种去中心化类型的描述:Architectural(de)centralization-一个系统由多少台物理计算机组成?它可以容忍多少台计算机同时发生故障?政治(去)中心化-个人或公司完全控制多少计算单元?逻辑(去)中心化——系统的外部接口和数据结构看起来更像是一个整体,还是一个没有特定形式的群体?这里有一个简单的提示,可以帮助你理解什么是逻辑上的(去)中心化:如果你把一个系统分成两半,既包括服务也包括用户,当两半独立时,它们能否在继续独立和完整地运行不需要对方?或者再举一个很流行很有意思的例子,有一种海洋生物,名字叫海星,很有意思。如果用刀把一只海星切成两半,每一半都能立即独立存活,它们又可以重新长成一只独立的海星。这就是我们在这里讨论的内容。海星的生物结构是合乎逻辑的。是去中心化的。我们可以尝试从三个维度来分析这三种“去中心化”,如下图所示:去中心化的三个维度注意虽然上图中很多说明性文字的显示位置很随意(这个是可以调整的),但通过其中任何一个都可以得出以下结论:传统公司在政治上是中心化的(只有一个CEO),其结构也是中心化的(一个总部,而且在很多情况下,每个部门也都在同一个办公区)),在逻辑上也是中心化的(把公司分成两半,任何一半都无法正常运作)。大陆法系依赖于中央集权的立法机关,而普通法系则建立在许多独立法官的经验之上。但大陆法系有时具有分权结构,即许多法院仍有自由裁量权,当然英美法系比大陆法系拥有更多的自由裁量权。两种法律体系在逻辑上都是集中的(即“法律就是法律”体系)。英语在逻辑上是分散的;例如,Alice和Bob之间说的英语不需要和Charlie和David之间说的英语完全一样(比如音量等)。一种语言也不需要一个集中的基础设施来存在,英语语法规则也不是由任何一个人创建或拥有的(世界语最初是由LudwigZamenhof发明的,尽管它现在的功能更像是一种不断发展的活语言,它不需要授权)BitTorrent在逻辑上类似于英语,它是去中心化的。内容分发网络类似,但它由一个集中的公司控制。区块链在政治上(没有人可以控制)和架构上是去中心化的(没有中心化的单点故障),但在逻辑上是中心化的(因为所有节点最终都会达到一致的状态。它是原始区块链。如果节点不能全部达成共识,区块链就会分叉。分叉后,就不再是原来的状态。整个区块链系统这个行为就像是在电脑上运行。)很多时候,当人们谈到区块链的优势时,他们描述了拥有“一个中央数据库”的便利优势;这个中心化是逻辑上的中心化,在很多场景下都可以算是一个很好的中心化。建筑集权化通常会导致政治集权化,尽管并非总是如此——在正式的民主场景中,政客们在一个实体会议厅开会并投票,而这个会议厅的所有者最终并没有任何实质性的决策权。在一个计算机化的系统中,如果有一个为了方便而使用中心化论坛的在线社区,可能会出现架构中心化但政治分散的情况,但如果有广泛认同的社会契约,如果论坛拥有或恶意行为,然后每个人都转移到另一个论坛(这可能会在实践中展示此属性,在另一个论坛上围绕他们反对的审查制度形成另一个社区)。逻辑中心化之后,很难让架构去中心化,但也不是不可能——去中心化的共识网络已经被证明是成功的,但比维护BitTorrent网络更难。逻辑上的集权使得政治权力下放变得更加困难——而在一个逻辑上集权的系统中,通过简单地同意“生活,让生活”来解决争论的问题也变得更加困难。去中心化的三个理由下一个问题是,为什么去中心化首先有用?一般有几个论点:容错性——分散式系统不太可能意外失败,因为它们所依赖的许多独立组件不能同时失败。抗攻击性——去中心化系统的攻击、破坏或操纵成本很高,因为它们没有敏感的关键中心点,可以以比周围系统的规模经济低得多的成本进行攻击。反串通——去中心化系统中的参与者更难串通损害其他参与者的利益,让共谋者受益,而中心化公司的高管或政府领导人很容易串通起来采取有效措施。以牺牲其他交流较少的公民、客户、员工或公众为代价来使自己受益。这三个论点都是重要且有效的,当您开始考虑这三个独立且不同的观点时,确实会得出一些有趣且不同的结论。让我们尝试逐一展开和讨论这些要点。关于容错的核心论点很简单。哪一个比一台计算机在十分之五的计算中同时失败的概率更小?这个结论应该是无可争辩的,并且在许多现实生活场景中都有使用,例如医院的备用发电机、军事基础设施、多样化的金融投资组合以及计算机网络都在使用。然而,尽管这种分散的方法仍然有效且非常重要,但事实证明它在预测故障方面不如朴素的数学模型准确。原因是共模故障。当然,四台喷气发动机比一台喷气发动机同时出现故障的可能性要小,但如果这四台发动机都是同一家工厂制造的,而且这四台发动机都是同一个流氓员工种下的,万一遇到同样的缺陷呢?区块链是否像现在这样设法防止了这种共模故障?我看不到它。看下面这种情况:区块链所有节点都运行同一个客户端软件,而这个客户端软件有bug。区块链中的所有节点都运行相同的客户端软件,但开发它的团队已被证明存在社会腐败。提出升级协议的科研团队被证明存在社会腐败问题。在工作量证明区块链中,70%的矿工都在同一个国家,其政府出于国家安全原因决定没收和没收所有矿场。大多数挖矿硬件都是由同一家公司制造的,这家公司已被证明被迫行贿并实施后门以允许随意关闭硬件。在股权证明区块链中,70%的抵押代币都在交易所持有。为容错而设计的去中心化应用程序将把所有这些问题作为一个整体来关注,并知道如何将它们的影响降到最低。一些自然的结论是显而易见的:确保多个解决方案相互竞争很重要。必须普及协议升级背后的技术知识,让更多人放心参与研究讨论,批评明显不当的协议修改。核心研发人员应同时为多家公司或组织工作(另一种方法是确保其中许多人是志愿者参与者)。挖矿算法的设计应避免中心化风险理想情况下,我们将使用权益证明来完全摆脱硬件中心化的风险(尽管我们也应该警惕由于采用权益证明算法而可能产生的新风险).请注意,容错的最简单设计要求主要集中在架构去中心化上,但是一旦您开始考虑管理协议持续开发的社区中的容错需求,那么政治去中心化也变得非常重要。接下来,让我们看看抗攻击性。在一些纯粹的经济模型中,你会得到分权根本无关紧要的结果。如果你设计一个协议,当发生51%攻击(即确定性逆转)时,100%的区块链验证者将损失5000万美元,那么这些区块链验证者是被一家公司控制还是100家公司控制都没有真的很重要——5000万美元的经济保证金就是5000万美元的经济保证金。事实上,中心化甚至可以最大化经济安全的想法有深刻的博弈论原因(现有区块链的交易选择模型会反映这种内部人,因为有深层次的博弈考虑,这就是为什么Centralization甚至可以放大这种经济安全性,实际上是通过矿工/区块创建者的操作将交易包含在区块中,这实际上是一种非常快速的轮换独裁)。然而,一旦你采用了更丰富的经济模型,尤其是承认可能存在强制(或更良性的东西,如针对特定节点的DoS攻击)的经济模型,去中心化就变得更加重要。如果你用死亡威胁某人,突然之间,5000万美元对他们来说不再那么重要了。但如果你把这5000万美元分给十个人,你就得同时威胁十倍的人。总的来说,现代世界在许多情况下的特点是攻击/防御不对称,有利于攻击者-一座花费1000万美元建造的建筑物可能花费不到100,000美元来摧毁,攻击者的杠杆努力通常是次线性的:如果建筑物花费1000万美元只需要10万美元就可以摧毁,一座价值100万美元的建筑实际上可能只需要花费3万美元就可以摧毁。较小的值给出更好的比率。这个推理会导致什么?首先,它导致了支持权益证明优于工作量证明的更强有力的论据,因为计算机硬件更容易检测、调整或攻击,并且代币更容易隐藏(权益证明出于其他原因有强有力的论据以及。抵抗攻击)。其次,拥有广泛分布的开发团队是有益的,包括地理分布的开发团队。第三,意味着在设计共识协议时需要同时考虑经济模型和容错模型。最后,我们讨论三个论点中最复杂的一个,即抵制共谋。共谋很难定义;也许唯一真正有效和简单的合谋分析是“每个人都不喜欢的恶意合作”。现实生活中有很多情况。就算大家有完美的配合,也是很理想的情况。如果团队中的一个小组可以合作,而其他小组不能合作,那是非常危险的。一个简单的例子是反托拉斯法——故意设置监管壁垒,使市场一方的参与者更难联合起来并表现得像垄断者一样,以牺牲市场另一方的利益为代价获得外部利润市场和一般社会福利。另一个简单的例子是美国反对候选人和超级政治行动委员会之间积极协调的规则,尽管这些规则在实践中已被证明难以执行。一个较小的示例是某些国际象棋锦标赛中的规则,该规则禁止两名玩家进行多场比赛以提高一名玩家的分数。无论从哪里看,在复杂场景中阻止恶意合作的尝试无处不在。在区块链协议的情况下,共识安全背后的数学和经济推理通常主要依赖于未使用的选择模型,或者假设游戏由许多独立做出决策的个体玩家组成。如果任何一个参与者在工作量证明系统中获得超过1/3的算力,他们就可以通过自我挖矿获得巨额利润。然而,当90%的比特币网络有90%的算力合作足以同时出现在同一个会议上时,我们真的能说非合作模型是最优的吗?区块链倡导者认为,区块链架构相对更安全,因为它们不能随意更改规则。但这种情况很难避免。区块链软件和协议的开发人员都为一家公司工作,属于一个家庭,坐在一个房间里。总而言之,这些系统不应该垄断和自私地只服务于一个对象。在这种情况下,你可以说区块链中各方之间的合作越少,区块链就越安全。然而,这是一个悖论。包括以太坊在内的许多社区都具有很强的社区精神,他们经常因能够在几天内快速实施合作、发行和激活硬分叉来解决协议中的DDOS问题而受到赞誉。我们如何鼓励和促进这种良好的合作,同时防止像矿工为了达到51%攻击的目的而试图反复合作这种损害他人利益的“恶意合作”?这个问题有三个答案:不要刻意努力,以防止恶意合作;相反,找到方法来构建可以抵抗它的协议。尝试找到一种更流行的方法,允许足够的合作来推动协议向前发展而不会产生攻击条件。尽量区分有益的合作和有害的合作,前者容易,后者难。第一种方法是Casper设计理念的主要组成部分。然而,仅靠经济激励是不够的,因为仅靠经济激励无法解决其他两种类型的权力下放。第二个从工程角度更难确定,尤其是从长远来看,但它确实经常发生在意想不到的情况下。例如,比特币的核心开发人员大多说英语,而矿工普遍说中文,这可以看作是一个很好的意外,因为它创造了一种“两院制”的治理方式,将两个社区聚集在一起,相互合作是比较困难的,但是它确实降低了开发者和矿工勾结导致比特币失败的风险,主要是因为距离和沟通困难,他们至少会在一定程度上将分析和分析分开。推理相关问题,因此两个社区同时犯同样错误的可能性较小。第三种方法的社会挑战远大于其他所有方法;以下解决方案是可能的:应用社会干预来尝试增加参与者对整个区块链社区的忠诚度,同时替代或阻止市场一侧的参与者直接相互忠诚于彼此的可能性。促进同一上下文中不同“市场主体”之间的交流,以最大限度地降低验证者、开发者或矿工将自己视为一个“阶级”并共同捍卫自己利益免受其他阶级侵害的风险。在设计协议时,应尽量减少验证者/矿工、中心化中继网络和其他类似超级协议机制形成的一对一“特殊关系”。清楚协议应该具有哪些基本属性以及哪些事情不应该做,或者至少应该只在非常极端的情况下做。所以,这第三种去中心化,避免恶意合作的去中心化,可能是最难实现的,所以必须要考虑取舍。也许最可靠的方法是严重依赖一个100%去中心化的群体:协议的用户。
