惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

月光博客
月光博客
让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com
阮一峰的网络日志
阮一峰的网络日志
罗磊的独立博客
T
Tailwind CSS Blog
博客园_首页
博客园 - 司徒正美
Google DeepMind News
Google DeepMind News
Hugging Face - Blog
Hugging Face - Blog
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
V
V2EX
J
Java Code Geeks
量子位
D
DataBreaches.Net
MongoDB | Blog
MongoDB | Blog
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
Microsoft Azure Blog
Microsoft Azure Blog
P
Proofpoint News Feed
C
Check Point Blog
V
Visual Studio Blog
H
Help Net Security
Recent Announcements
Recent Announcements
Engineering at Meta
Engineering at Meta

smallyu的博客

为什么买的加密货币一定要去中心化 RISC-V 虚拟机无法代替 EVM 虚拟机 Polkadot 的 Existential Deposit 机制错在哪里 利息,套利,交易策略,金融市场 LayerZero 从来不挑战比特币的地位 默认参数引起的以太坊节点运行错误 硬件钱包与资产安全 预测市场比币圈更赌场 为什么去中心化的跨链桥不可能实现 我对于 AI 时代的答案 不要投资任何隐私币 区块链技术世界的三大真理 以太坊 AA 钱包的致命问题是什么 基于 AI 语义执行的 MCP 区块链的设计 一个集成 Geth 和 CometBFT 的兼容层 我的加密货币定投策略(二) DeFi 基础: 理解 AMM 定价机制 Go 语言 GMP 调度器的原理是什么 Web3 项目分析计划 对 Psyche Network 项目的分析 continuation 教程: 理解 CPS 如何开发一个比特币符文(Runes)协议 比特币脚本开发教程 我从王垠的计算机科学视频班学到了什么 区块链技术面试题(2025年版) Rust 语言容易让新手困惑的一个“过度优化” Solana 智能合约开发教程 (1) 尝试开发一个最小 EVM 虚拟机 基于 ZK 的链上身份系统设计 一个 Web3 打赏系统的设计
如何区分公有链和联盟链
2023-07-11 · via smallyu的博客

如何区分公有链和联盟链

2023-07-12

简短版

发币的就是公链,不发币的就是联盟链。

详细版

因为我经常否定联盟链,就自然而然产生一个问题:到底什么是联盟链?公链和联盟链的根本区别是什么,分界线在哪儿?本以为这是一个简单的问题,但是仔细想想又没那么简单,不是特别容易去下一个明确的定义,

简单来说,公开给所有人访问使用的区块链就是公链,在一个小范围内部使用的区块链就是联盟链。这种区别就像是互联网和局域网的区别。但是如果把一条联盟链开放出来,给所有人使用了,它就变成公链了吗?如果这条链使用原始版本的 PBFT 作为共识机制,那它仍然还是联盟链,始终都是联盟链。公链和联盟链的区分,不能仅仅根据使用人群范围的大小。

再比如存在一个主观的问题,什么是所有人?多大范围算是所有人?如果一共有 100 个人,100 个人就是所有人,那么 99 个人算不算?在现实生活中,似乎也算,99 个人在使用的链,不可能说它是一条联盟链。那 80 个人算不算?好像也算,已经是大多数人了,比起 20 个人的小部分,80 个人不至于认为是一个联盟。60 个人呢?已经超过半数了,能代表所有人吗?

所以如何判断一条链是公链还是联盟链?经过一段时间的思考,从技术特点的角度去考量,我认为要同时满足这三个条件,才算是公链:

  1. 节点之间网络互联互通
  2. 每个节点平等地拥有成为出块节点的机会
  3. 成为出块节点的门槛是合理的

你可能注意到,在简短版中,把有没有加密货币作为了区分公链和联盟链的唯一指标,而在详细版里却没有提加密货币。主要是判断的维度不一样,有没有发币是整个系统体现出来的使用方式,上面列举的三个条件要更通用一点,是技术方面的特性。满足三个条件而没有发币仍然能认为是公有链,只不过加密货币对于矿工是很重要的激励手段,是整个系统的一部分,一般是不可或缺的,项目方通常会把加密货币设计进去。

节点之间网络互联互通

这一点要求节点不能从网络层面设置访问权限,任何人都能通过互联网访问节点。如果节点没有部署在公网上,而是运行在局域网中,这个节点就不属于公链的节点。如果节点部署在公网上,但是仅限指定的 IP 访问和使用,那这个节点就属于设置了访问权限,是不够开放的行为,如果所有节点都存在类似的设置,整条链就不算是公链。

每个节点平等地拥有成为出块节点的机会

比如 PoW,只要算力足够,就会被认可成为出块节点。比如 PoS,只要质押 32 ETH,就有机会成为出块节点。这种属于典型的公链的例子。像是原始版本的 PBFT,出块节点是固定的,还不能更换,就属于联盟链。有一些链在 PBFT 的基础上加入了随机更换共识组的功能,每隔一段时间就会随机选择一些节点作为共识节点负责出块,包含这种设计的区块链是属于公链的,不过项目方需要考量这样的做法是否安全,容错能力怎么样,是否面临女巫攻击的风险。

成为出块节点的门槛是合理的

合理是一种主观的感受,因为不好量化,需要项目在设计上去权衡。比如 PoW,获得足够算力去出块是有很高成本的,这个成本就是门槛,如果门槛太低,所有节点都轻易出块,网络会乱,如果门槛太高,没有人能达到,出不了块,都是不合适的。这个门槛需要一个折中的、合适的位置。再比如有些 PBFT 联盟链中,成为出块节点需要 CA 发行的证书,而这个 CA 是由项目方控制的,需要线下通过一系列认证,才能够加入联盟获得证书,这种属于典型的联盟链。

为什么喜欢区块链

技术属性上,区块链有一种反叛的精神在里面,区块链主张去中心化的技术理念,自成一套体系,既然你中心化的机构靠不住,那我们就各自为营,我们首先相信自己,其次才相信别人,在这样的模式下,历史记录的准确性非常高。目前能在全世界范围达成数据一致的系统,也就只有区块链才能做到。

资产属性上,加密货币抵抗地缘政治变化的能力非常强,你可以轻易地持有和世界货币锚定的货币资产,不会因为世界局部的货币价值波动而受到影响。

为什么不喜欢联盟链

国内的联盟链项目,很多是政府机构搞信息化建设,最后都是政府出钱。假如雄安新区一个信息平台的项目 2000 W,其中会包含各种技术领域像人工智能、大数据、物联网,区块链是其中一项,具体到这一个区块链类目上,可能 300 W,这 300 W 也不是一般小公司能拿下的,至少得有点强硬的关系,比如外包大厂。然后这个区块链类目又包含很多小的部分,比如某个部门的数据管理平台,要接入区块链进行数据上链,如果这家外包大厂不具备区块链的研发能力,就会从 300 W 中分出 30 W,找一家专门开发区块链的公司,把这部分功能完成了。最终开发联盟链的公司,挣个辛苦钱,同时指望一年能多做几个项目,多挣点钱。

这种项目大都会走招投标的流程,可以想象一下,光是能不能把项目揽下来就会牵扯到多方的利益纠缠,投标的时候人家会给你公司的整体实力打分,包括申请过多少专利、企业过往的营收能力之类。而且这种项目和区块链的理念没有半点关系,换一个名头比如 5G 技术,还是一模一样的项目流程,招标投标做项目交付,只是其中用到的具体技术不一样而已。所以我说联盟链不是真正的区块链,联盟链是在用金锄头锄地。