区块链基础
资料核对:2026-10-05。
区块链通过区块承诺、网络传播和共识规则维护交易历史。哈希链接约束历史数据之间的关系,数字签名表达授权,共识协议决定不同候选历史中哪一条被接受。
分布式账本与节点
节点的角色和数据保留范围并不相同。全节点验证协议规则,归档节点保留更多历史状态,轻客户端依据区块头和证明检查部分信息。开放参与不代表所有节点都持有完整历史数据。
交易被接受需要满足签名、余额、执行和共识规则。比特币 PoW 的链选择依赖累计工作量,以太坊 PoS 的投票依赖质押权重;二者都不是简单按联网节点的人数多数表决。
密码学机制
| 机制 | 作用 | 边界 |
|---|---|---|
| 哈希 | 为数据生成承诺,连接区块和状态 | 数据哈希不证明原始输入真实,也不负责保密 |
| 数字签名 | 验证消息由相应密钥授权 | 密钥泄露或签名业务含义错误仍会造成损失 |
| Merkle 树及其变体 | 用根哈希承诺数据集合,支持包含证明 | 包含证明仍需可信的根和可用的数据 |
ECDSA 是数字签名算法,不是对交易内容进行加密的算法。公开链上的交易和状态通常可被观察;隐私功能需要额外的协议设计。
一笔交易如何改变状态
以以太坊上的普通代币转账为例,用户向代币合约发送调用,合约执行余额检查并更新自己的存储。代币余额属于合约状态;账户支付的 ETH Gas 费用属于另一项状态变化。
flowchart LR
A[构造并签名交易] --> B[提交到节点]
B --> C[进入候选区块]
C --> D[按顺序执行并验证]
D --> E[读取回执与状态]
E --> F[等待所需确认或最终性]
这张图展示一般处理顺序,交易也可能被拒绝、长时间未被打包或被替换。节点收到交易、交易进入区块、执行成功以及所在区块达到最终性,分别表达不同的事实。
在以太坊中,已被包含但执行失败的交易通常仍消耗 Gas,并推进发送者的交易 nonce;失败调用的业务状态变化被回滚。因此,交易哈希不能独立证明转账成功,需要检查回执及相应状态,见 Ethereum 交易文档。
eth_call 常用于读取或模拟执行,它本身不提交交易,也不将模拟结果写入链上。合约事件则是执行产生的日志,分析业务结果时还要核对日志来源和合约状态,见 Ethereum JSON-RPC 文档。
共识与最终性
- PoW:通过计算工作竞争提议权,以累计工作量选择历史。重组风险取决于攻击者算力、确认深度和网络条件。
- PoS:用质押建立参与权重,具体协议另行定义分叉选择、投票、罚没及最终性。
- BFT:在明确的故障数量与网络假设下,通过法定人数证据和跨轮规则维持一致性。
哈希链让历史修改可被检测,但重新计算哈希本身不等于完成有效重组。攻击者还需要满足工作量或投票等共识约束。确认深度下的成功概率与累计工作成本是不同量,不能统一表述为计算成本指数增长。
概率最终性表示重组风险随确认积累下降;确定性或可追责最终性则由协议投票和故障假设定义。不同协议的“确认”不能直接按区块数量等价比较,见共识机制。
执行、网络与扩展
节点通过 P2P 网络传播交易和区块,执行规则定义交易如何改变账本。智能合约扩展了状态转换的表达能力,但程序部署后仍需外部交易或调用触发执行。
Rollup、状态通道和侧链具有不同的数据发布、结算和故障恢复方式。扩容效果与交易类型、数据可用性和安全假设有关,不能仅凭某个 TPS 数值判断整个系统的能力。
以太坊早期的执行分片规划与后续围绕 Rollup、Blob 和数据可用性采样的路线不同。不能把“64 个执行分片”描述为当前已经部署的主网机制。
当前路线可结合 Fusaka 官方说明阅读:该升级已于 2025-12-03 上线主网,其中 PeerDAS 支持 Blob 数据可用性采样。采样和容量扩展并不自动提供永久历史存储;后续升级状态见应用与技术方向。
参与权限与应用边界
公有链通常允许开放发送交易或运行节点;联盟链和私有系统通常限制参与者身份。参与权限、验证权和治理权可以分别设置,分类名称本身不能证明系统的去中心化程度或容错能力。
代币转移、借贷、存证和供应链记录是不同的应用场景。链上记录能证明某份数据在特定规则下被接受,却不能自动验证实物、身份、价格或链外权利。此类信息依赖预言机、身份系统和外部业务流程。
主要约束
- 吞吐量、状态增长、带宽和节点验证成本之间存在权衡。
- 跨链交互引入源链验证、消息重放、桥接权限和数据可用性问题。
- 共识安全不能替代合约权限检查、经济模型分析和密钥管理。
- 治理升级和管理员权限会改变系统行为,属于整体信任模型的一部分。
阅读实例时先记录哪些条件
| 条件 | 需要记录的内容 |
|---|---|
| 网络与协议 | 主网、测试网或本地链,当前激活的协议升级 |
| 执行环境 | 虚拟机或程序模型,编译器与目标版本 |
| 权限与输入 | 签名者、管理员、预言机和外部凭证提供者 |
| 数据与恢复 | 验证所需数据的来源,重组、退出和故障恢复方式 |
这些条件决定示例结论可以适用于哪里。掌握基础后,可从开发工具与数据入口选择本地工具,并对照以太坊账户模型观察一次实际的状态变化。