Elea Notes.

词条 · 加密与分布式 · 入门

双重支付

同一笔电子货币被花两次——数字文件天生可复制,这是电子现金最根本的难题。

也称:双花、双重支付、double-spending、double spend

先做一个对比

我给你一张一百元纸币。这一刻我手里就没有了——转移和失去是同一个动作,物理世界替我们保证了这一点。

我给你一个文件。我手里还有一份。发送在这里叫「复制」,不叫「转移」,而复制是免费的。

现在把那个文件当成钱:我可以把同一枚「币」同时发给你和另外三个人,四份完全一样,谁都看不出哪份是原件。这就是双重支付,而它不是实现上的疏忽——它是数字之为数字的直接后果

所以任何「电子现金」都必须额外想办法,从别处补上物理世界白送的那个保证。

机制:传统解法是找个人记账

银行、支付宝、信用卡网络都这么干:有一个中心账本,每笔钱花掉就划掉。双花不可能,因为有个权威说了算。

代价是你得信这个中心:它可能宕机、可能冻结你的账户、可能收手续费、可能被监管要求回滚交易。白皮书开篇质疑的就是这个代价。

去掉中心之后,难在哪

没有中心账本,每个人各记一份。问题立刻来了:我可以把同一枚币,同时发给两个不同的人——

  • 给 A 的那份消息先传到网络的一半节点
  • 给 B 的那份消息先传到另一半节点

两边各自看到的都是”合法且没花过”。签名验证在这里完全帮不上忙,因为两笔交易的签名都是真的。问题不在真伪,而在顺序:谁先谁后?

所以真正要解决的是”时间”

要判定双花,全网必须对交易的先后顺序达成一致。这就是白皮书的核心贡献:不靠权威,而靠工作量证明,让全网就”哪个顺序是唯一公认的历史”达成共识。

理解这一点,就理解了为什么比特币要费那么大劲去算哈希——算力不是为了安全地加密,是为了给事件排序