去中心化
在去中心化网络中,设计出合理的规则和技术方案,让每个节点在不依赖中心机构的情况下,能够公平、透明地参与到网络运行中,是去中心化技术的关键。
信任问题是去中心化系统需要解决的核心问题。它通过共识机制、防恶意行为、数据一致性、隐私保护、激励机制等手段,来保证网络的安全性、稳定性和可持续发展。
p2p网络
P2P网络是一种去中心化的网络结构,节点之间直接连接,不需要依赖中心服务器。
每个节点既是客户端又是服务器,能够向其他节点提供服务。
节点数量
10 < 小网络 < 50 < 中网络 < 1000 < 大网络(10000)
节点选择
理想的去中心化网络需要广泛分布的节点。如果节点集中在一个地区或由少数人控制,去中心化会受到限制,即使节点数量较多。
因此,节点的地理分布和所有权多样性对于去中心化至关重要。
区块链相关概念
区块链是去中心化的基础技术,用于支持加密货币、智能合约和去中心化金融(DeFi)等应用。
它通过节点的去中心化存储和验证,使得单一实体无法对数据进行控制。
特点:
- 不能改,只能新增
- 链式哈希结构 → 改旧记录必坏链
缺点
- 数据永远不能删除
- 存储成本高
- 私密数据要谨慎
| 区块链编程工具 | Truffle | 以太坊开发框架,提供编译、测试、部署等功能 | JavaScript, Solidity | | | Hardhat | 以太坊开发框架,支持更复杂的开发流程,如自动化测试和合约部署 | JavaScript, Solidity | | | Anchor | Solana 开发框架,简化 Rust 智能合约开发,支持高效构建 DApp | Rust |
分类
公链: 智能合约: 自动执行、不可修改的程序 Solidity rust Dapp: 是通过使用智能合约来与区块链交互 go js 钱包: 用户与公链的交易入口 go js
| 类型 | 代表币种 | 类似传统世界中的 | 核心用途 | 特点 |
|---|---|---|---|---|
| 货币类(支付型) | Bitcoin(BTC)、Litecoin(LTC) | 现金 | 数字货币、价值储存 | 类似“数字黄金”或“电子现金”,不依赖银行 ,总量有限(如比特币2100万枚) |
| 稳定类(Stablecoin) | USDT(Tether USD)、USDC、DAI | 美元储蓄账户 | 锚定法币、保持稳定 | 价格稳定,用作交易媒介或避险 |
| 基础设施类(平台币 / 公链币) | ETH(Ether)、BNB(Binance Coin)、SOL(Solana)、ADA | 操作系统 | 支撑区块链生态 | 代表底层公链的“燃料”与治理代币,支撑区块链网络运行 |
| 功能类(功能代币 / 应用代币Utility Token) | UNI、LINK、AAVE、MANA | 公司股份或积分 | 平台内部使用、治理、奖励 | 通常用于去中心化应用(DeFi、GameFi、元宇宙等) |
| 资产类(Asset-backed Token / NFT) | NFT、WBTC、PAXG | 收藏品、黄金 | 表示现实或数字资产的所有权 | 可能代表艺术品、房产、黄金或其他加密资产 |
数据同步
增量同步
数据广播
共识机制: 区块链值得信任的根基
全节点与轻节点
拜占庭将军问题 -> 共识算法
概念
拜占庭将军问题 是分布式计算领域的一个经典问题,形象地描述了在一个分布式系统中,如何让所有节点达成一致,特别是当其中存在恶意节点(即拜占庭将军)时。
问题描述:
想象一群将军围攻一座城市,他们必须达成一致:要么一起进攻,要么一起撤退。问题在于,其中可能存在一些叛徒(拜占庭将军),他们会故意发送错误信息,导致其他将军做出错误的决定。
总结
拜占庭将军问题是一个经典的分布式系统问题,它的复杂性在于如何在一个不完全信任的环境中达成一致。虽然没有完美的解决方案,但通过研究和实践,我们可以找到适合不同场景的共识算法,从而构建出安全可靠的分布式系统。
常见的共识算法的优缺点:
PoW(工作量证明): 安全性高,但能耗大,扩展性差。 PoS(权益证明): 能耗低,但存在中心化风险。 PBFT(实用拜占庭容错): 性能高,但去中心化程度低。