在区块链领域里,我们经常能看到分布式、去中心化和多中心化这三个词语,它们到底是不是一回事儿?如果不是,那么又有什么区别呢?我们通过几个例子来说明。
有一卡车的砖需要高效快速地搬到工地,工长喊来一大群工人搬砖,每人每趟只需搬几块,很快就搬完了。工头发布的任务就叫作“分布式”任务。
有21个工人偷懒,围在一起玩丢手绢的游戏。根据规则,每个人背后都有可能被放手绢,每个人都可能需要表演节目,大家都觉得很公平,因为没人能在那么多人盯着的情况下作弊,这就是“多中心化”。
工地旁有条河,里面有鱼,任何人都可以随时到河里捕鱼,多劳多得。捕鱼的人也可以互相交换、出售自己捕到的鱼。在这条河里自由地捞鱼就是“去中心化”。
能否正确理解分布式、去中心化和多中心化,关系到对区块链以及许多项目的看法是否准确。
去中心化:相对于“中心化”的概念。在去中心化的系统网络里,每一个参与者(节点)都是平等且自由的关系,没有谁依赖谁。这就像朋友聚会,畅所欲言,你可以选择不说话,也可以选择中途离场。中心化则像领导开会,所有人要听从领导这个“中心”在会议上指示和安排。
多中心化:和去中心化有一些相近,是由多个中心节点组成的平等网络,对节点的参与和退出可能有所要求和限制。多中心化的参与者必须符合一定的要求、提供一定的软硬件设施才有可能成为候选节点。
分布式:分布也可以说分散,分布式的网络节点是分散的,它们之间互联互通,当一个节点出现故障时,其他节点仍然能够继续工作。所以,这个网络比单一节点更可靠。例如,现在的云计算服务商把多个地区机房的计算机串联起来提供分布式的服务器、存储、应用等服务,具有可靠、稳定、安全、能支持大型网络任务、付费方式灵活等优点。
再例如,“12306”火车票订购网站每年春运前后都可能承受数百亿次的访问,使用优秀的分布式架构的网络服务,让服务器遍布大江南北,不但可以提升全国各地用户的访问速度,还能安全稳定地处理巨量的火车票查询和订购业务。
因为分布式和去中心化都可以与区块链技术结合,所以很多人认为分布式就一定是去中心化的。其实不然,就像前面所举的例子,“12306”火车票订购网站采用了分布式的网络服务,那么它的服务就是去中心化的服务吗?显然不是。
那么,“多中心化”就一定是“去中心化”吗?
也不是,“去中心化”需要多个条件。联盟链有多个中心节点,很多人认为多中心的联盟链虽然效率很高,但是节点是受限的,而且节点数量不够多,不够自由,没有去中心化那么强大。
有人说,多中心化是对“区块链不可能三角”(指系统的可扩展性、去中心化、安全性无法同时得到满足)的较好的平衡;也有人认为去中心化或者多中心化都只是一种手段,真正让应用落地,发挥价值才是应该追求的目标。
可以这样理解三者的关系:在大部分情况下,去中心化是多中心化的子集,而多中心化是分布式的子集。分布式所指的范围最大,既包含多中心化,也包含去中心化。也可以说,去中心化的比特币就是分布式账本、多中心账本。