词汇表
双重支付
2026/4/16
双重支付是指尝试多次使用相同的加密货币资金——同时将相同的币发送给两个不同的接收者。这是区块链技术旨在解决的根本问题。
问题所在
在传统的数字文件中,数据可以自由复制。如果没有防止复制的机制,数字货币可以被无限复制——相同的币可以被发送给多个人。银行通过维护一个中央账本来解决这个问题。比特币则无需中央权威来解决。
区块链如何防止双重支付
工作量证明共识确保:
- 只有一个版本的交易历史被接受(最长的有效链)
- 修改历史需要重新做比整个诚实网络更多的工作
- 一旦交易有足够的确认,逆转它在计算上是不可行的
0确认攻击
唯一实际的双重支付风险是针对接受0确认交易的商家:
- 攻击者向商家发送交易TX1(支付商品)
- 同时向网络广播交易TX2,将相同的币花回给自己
- 如果TX2先确认,TX1无效——商家被骗
即使等待1次确认也会使这种攻击极其困难。多次确认使其几乎不可能。
51%攻击
如果攻击者控制了超过50%的网络算力,他们理论上可以重写最近的区块以逆转自己的交易。这对于像比特币这样的大型网络来说既昂贵又不切实际,但在较小的PoW币上曾发生过。
