区块链是一种由多个节点共同维护的分布式账本。交易经验证后写入区块,区块再通过哈希按顺序连接,使记录可核验且难以被单方改写。
它不是单一的加密算法,也不等于比特币。比特币是区块链的一种应用,而区块链系统还可能用于智能合约、资产登记和多方协作。理解它,需要把账本、交易、区块、密码学、节点与共识放在同一条流程中观察。

一条典型区块链至少包含以下部分:
这些组件各司其职。数字签名不能决定交易顺序,哈希也不会自动让所有节点达成一致;只有协议规则、网络传播与共识过程组合起来,系统才能持续形成共享历史。

用户先在钱包中创建交易,并用私钥生成数字签名。交易广播后,节点会按协议检查签名、余额或未花费输出、交易格式和费用等条件。通过初步检查的交易通常先进入待处理区,等待区块生产者选取。
区块生产者把交易组成候选区块。其他节点收到区块后,会独立执行或验证其中的交易及区块头。区块符合共识规则,才会被接到节点认可的链上。随后新增的区块会增加这笔交易的确认深度。
不同网络的出块、验证和最终确定机制并不相同。想按步骤查看这条路径,可阅读区块链如何工作。
哈希函数把任意长度的数据映射为固定长度摘要。输入只改动一点,摘要通常就会明显变化,因此节点可以用它检查数据是否被改动。区块头包含前一个区块的哈希引用,历史区块若发生变化,后续引用也会随之失效。
私钥用于签名,公钥用于验证。有效签名表明持有相应私钥的一方授权了特定数据,但不会隐藏交易金额或地址。公钥通常可以公开,私钥则必须保密。进一步可分别阅读哈希算法科普与公私钥密码学。
更准确地说,区块链能让篡改被发现,并提高改写历史的成本。修改旧区块会改变其哈希,破坏与后续区块的连接;攻击者还要让网络接受一段替代历史。区块越深,重写通常越困难。
但这不代表任何链上记录在数学上都无法变化。网络可能发生短暂重组,协议可能通过升级改变规则,掌握足够共识资源的一方也可能尝试重写近期历史。应用仍需根据网络特性设置确认数,并评估验证者集中度、软件缺陷和治理方式。
公有链通常允许任何人读取数据、提交交易或运行节点,但具体权限仍由协议决定。联盟链由多个已知组织共同管理,成员身份和写入权限受到控制。私有链则由单一机构或有限主体管理,更接近带密码学审计能力的内部系统。
分布式和去中心化也不是同义词。数据可以复制到多台服务器,却仍由一个主体控制规则;开放网络也可能在节点、验证权或客户端实现上形成集中。判断一条链的治理结构,要看谁能验证、谁能升级、谁能阻止交易,不能只看节点数量。
区块链适合多个参与方需要共享状态、又不希望完全依赖单一记账方的场景。它能提供一致的交易顺序、可追溯记录和独立验证能力。
这些能力也有成本。多个节点重复保存和验证数据,会带来吞吐量、延迟和存储开销;公开账本不天然保护隐私;错误输入一旦被确认,通常不能像普通数据库那样直接改行修复。若业务本来就有可信中心、无需多方共同验证,传统数据库往往更简单高效。
| 想解决的问题 | 推荐阅读 |
|---|---|
| 一笔交易怎样被确认 | 区块链如何工作 |
| 多个参与方怎样共享账本 | 分布式账本技术 |
| 数据指纹怎样发现改动 | 什么是哈希算法 |
| 钱包怎样证明交易授权 | 公私钥密码学 |
| 区块内部保存了什么 | 区块结构深度解析 |
| 怎样查询公开链上记录 | 区块链浏览器使用指南 |
| 不同节点保存哪些数据 | 完整节点、轻节点、归档节点 |
| 第一块从哪里开始 | 什么是创世区块 |
| 协议升级为何可能分链 | 软分叉与硬分叉 |
交易可以在离线设备上创建和签名,随后仍需通过联网设备广播给节点,才能进入网络验证与区块确认。离线签名主要用于隔离私钥,不能替代网络提交。
需要,只是信任对象发生了变化。用户仍要信任所用软件、密码学实现和协议规则,并判断验证者分布、预言机、跨链桥或托管服务是否可靠。
不能。智能合约只能处理链上可读取的数据。天气、价格或比赛结果等外部信息通常由预言机提供,因此会增加新的数据源和治理风险。
通常不能。停止使用地址或删除本地钱包,不会删除已经写入公共账本的交易。钱包主要管理密钥和交互界面,并不是链上历史的存储位置。


