比特币网络中,一笔交易的平均确认时间是10分钟,但是标准偏差是15分钟,只有64%的区块生成时间少于10分钟,余下的需要10到40分钟不等。对交易确认的依赖妨碍了快速交易场景下的案例。比特币声称只要一个区块后面链接6个区块,那么攻击者就不可能重做POW实行攻击。
Slow payments:交易确认过程
Fast payments:交易接收
默认情况下,区块链网络中节点的默认连接上限是125,当然这个可以动态调整。
A在向V发起交易的同时,也就是TRv,也向自己的帮手H发起交易,即TRa,问题是这两笔交易是同样的输入,使用的是同一笔比特币,达到双花攻击的条件是:
1)V更先收到TRv这笔交易
2)TRa在比特币网络中得到确认,而不是TRv。
所以网络中大部分节点认为TRa才是有效交易。
一般在快支付场景下,服务方不愿等待支付确认,因为快支付涉及到的金额不是很大,恶意者正是利用了这一点,先表面上付钱,然后背后让这笔钱失效,将这笔钱转到受自己控制的钱包当中。