徐令予 |撰文
一周前,我撰写了《150 亿美元比特币被盗案的真相》,对比特币系统的安全性进行了简单介绍。文中指出,比特币所依赖的密码学算法与区块链结构在整体上是安全稳固的,所谓“150 亿美元比特币被盗”事件,并非源自密码学算法被攻破,而更可能是由低级技术错误或机构内部管理不善所引发。
该文发表后,一些读者反映,由于缺乏对比特币基本原理的了解,阅读时难免产生内容跳跃之感,对文中观点的理解与接受也造成困难。同时,亦有多位朋友建议,针对比特币的基础概念与安全设计,补充一篇更为系统且通俗易懂的科普文章,应该会受到更多读者的欢迎。
这正是撰写这篇文章的缘起。
事实上,尽管比特币已广为人知,却对它到底是什么、如何保存、如何交易、为何安全,仍然模糊不清。本篇将以尽量通俗的方式介绍比特币的基本概念,只要读完本文的上篇,你就具备了理解比特币的必备知识。
一、比特币不是“账户和余额”,它更像是“有序列号的纸币”
比特币资金不是存放在银行系统的账户余额,而是由一个个的数字化钱币“UTXO”组成,这是理解比特币的关键。
UTXO,即未花费交易输出(Unspent Transaction Output),指的是已收到但尚未花费的数字化纸币,它是区块链上记录的一条仍未被引用的交易输出。UTXO 很像数字钱包中的单张纸币,而您的比特币总余额则是您拥有的所有纸币(UTXO)面值的总和。
你可以把每个 UTXO 理解成一张纸币:
每个 UTXO 都有一个固定面额(例如 0.015 BTC);
每个 UTXO 都有一个地址,这个地址确定了 UTXO 的“归属权”。地址可以理解为纸币上印的序列号,你知道多少个地址,如同手中握有了多少张有确定序列号的纸币。
UTXO不可拆开使用,就像纸币不能撕掉一半花出去。当您发送加密货币时,必须交付一个或多个 UTXO ,系统会为收款人创建一个新的 UTXO,并为您收到的任何“找零”创建另一个新的 UTXO。
请注意,这是UTXO和纸币的最大区别:一张纸币本身可以用于多次交易(你花给别人、别人再花给别人),某个序列号的纸币在交易中可以反复使用,它可以归属于不同的主人。但一个 UTXO 在比特币里是“一次性用品”,花费后即彻底失效。每个UTXO 在交易结束后就被废弃,它从一而终,一仆不事两主。
二、比特币和区块链
区块链是一个巨大的、不可篡改的历史账本,记录所有过去发生过的所有交易,包括:
- 哪张纸币被花掉
- 新纸币(新 UTXO)发给了哪个地址
- 金额是多少
- 何时发生
基于历史账本数据,在系统的每个节点维护的是“当前未花费纸币清单”,也就是 UTXO 集合。
区块链就像是档案室,保存着全部流水记录。
UTXO 集合是最新余额表,存放着当前每一个有效的UTXO的面值和相对应的地址。
这两者一起构成比特币系统的核心结构。
区块链记录历史 → 节点扫描历史生成 UTXO集合 → 交易时节点只用 UTXO
三、钱包里存的是什么?不是比特币,而是“钥匙”
许多人以为自己的比特币保存在电脑或手机里。事实上,比特币的UTXO永远存在于区块链上,钱包并不保存比特币,而是保存能动用这些UTXO的钥匙。
钱包存放的核心内容包括:
- 私钥:通过数字签名作为“钱的所有权”的唯一凭证,它必须得到严格保护;
- 公钥:由私钥计算而来,用于验证签名;
- 地址:由公钥的哈希计算而来(相当于纸币的序列号),收款时你只需要公布地址,而不是公钥本身。
四、A 给 B 支付比特币的完整过程
步骤 1:B 给 A 一个地址
B 打开钱包,生成一个新的地址,通过电邮或其它网络社交软件发给 A。
步骤 2:A 在钱包中填写金额并发起支付
A 输入金额,例如 0.01 BTC。钱包自动选择属于A 的某个 UTXO,例如一个0.02 BTC 的 UTXO(就像在真实钱包中拿出一张纸币)。
步骤 3:构造交易
钱包自动构造交易:
- 将 0.02 BTC 的地址输入并写进交易
- 将 0.01 BTC 输出给 B 提供的地址
- 将剩余金额找零到 A 的新地址
- 公布与0.02 BTC 的地址相对应的公钥
- 使用0.02 BTC 的地址相对应的私钥对交易进行数字签名
交易被发送到比特币网络。各节点检查签名是否有效、UTXO 是否存在。
步骤 5:矿工更新区块链
矿工将这笔有效交易写入新的区块。当区块被确认后:
- A 拥有的旧 0.02 BTC UTXO 作废
- B 获得新的 0.01 BTC 的 UTXO
- A 的找零地址获得新的 UTXO
五、本篇总结
- 比特币是由 UTXO 组成的系统,而不是“账户余额”系统
- 每个 UTXO 像一张纸币,地址像序列号
- 钱包不存比特币,钱包存的是私钥
- 私钥通过椭圆曲线算法生成公钥,公钥哈希生成地址
- A 到 B 的支付流程
下篇将对比特币的安全问题作更深入的探讨,内容包括:
- 为什么地址是公钥的哈希?公钥为何推迟公布
- 签名时随机数 K 的意义
- HD 钱包的分层结构和私钥保护
徐令予 作于南加州 (2025年11月23日)