你是否曾想过,为什么双重支付在加密货币中如此重要?它基本上就相当于数字化地把同一张 20 美元钞票花两次——一旦这成为可能,就会彻底击垮任何货币体系。



让我来拆解一下它到底是如何运作的。在传统的数字系统中,你通常需要有人在场监管一切——本质上就是一家银行。David Chaum 在 1982 年用盲签名以及他的 eCash 系统提出了一个巧妙的解决方案。基本做法是:银行会向你发行带有唯一标识符的数字票据。你拿这些票据在商家处消费,商家会立刻向银行进行验证,以防你把同一批票据拿去别处重复使用。问题在于?如果银行宕机,整个系统就会崩塌。这就是中心化所带来的致命弱点。

比特币则用另一种方式解决了这个问题。比特币不依赖信任中介,而是通过区块链技术让网络本身来阻止双重支付。当你发送比特币时,你的交易会广播到整个网络,但它在矿工把它打包进区块之前并不算最终生效。这一点至关重要——商家应该至少等待 6 个区块确认(大约一个小时),再把付款视为安全。一旦确认完成,交易就会被锁定在链上,想要逆转它需要付出极其惊人的计算能力。

现在,重点来了,而且这里确实更有意思。攻击者实际上有几种方式试图利用系统,尤其是当你接受未确认交易时。竞态攻击发生在有人使用同一笔资金广播两笔相互冲突的交易,并希望其中一笔能更快被确认。Finney 攻击则更隐蔽——攻击者会在某个区块中提前挖出一笔交易,并先把它藏起来,随后再用同一批硬币进行另一笔交易,同时广播他们隐藏的区块,从而使原本的付款无效。无论哪一种攻击,都要求商家接受未确认的付款。

真正的要点是?只要你正确遵循协议,比特币的设计就让双重支付攻击几乎不可能成功。等到确认完成,你就安全了。如果不等待而接受即时付款,你就等于在承担不必要的风险。这也是为什么理解这些内容很重要——它正是去中心化货币真正能够运作的基础。
BTC1.50%
XEC2.20%
查看原文
此页面可能包含第三方内容,仅供参考(非陈述/保证),不应被视为 Gate 认可其观点表述,也不得被视为财务或专业建议。详见声明
  • 赞赏
  • 评论
  • 转发
  • 分享
评论
请输入评论内容
请输入评论内容
暂无评论