好好学习,天天向上

  • 后端开发
    • Rust
  • 区块链
    • BTC
    • Layer2
  • 经济投资
  • 文学创作
    • 哲学思考
    • 随笔
HhxxTtxs
人生到处知何似,应似飞鸿踏雪泥。
  1. 首页
  2. 区块链
  3. BTC
  4. 正文

如何撤销一个比特币交易

11 6 月, 2024 484点热度 0人点赞 0条评论
内容 隐藏
1 前言
2 RBF
3 双重支付
4 总结

前言

我们经常听到的是比特币的交易是无法篡改的,但你是否想过有方法可以撤销一笔已经提交的比特币交易?当一笔交易已经写入区块链,那么该笔交易就无法被撤销了,因为区块链本身是不可篡改的。但是如果该笔交易还在交易池中未被矿工打包,那么就可以通过以下两种方式来撤销一个已经发出但还未上链的比特币交易。

RBF

RBF之前是为了解决一笔交易在比特币网络中存在时间太久依然未被打包的情况。例如用户发送了一笔手续费非常低的交易,导致该笔交易因为手续费较低一直未被矿工打包的情况。那么用户就可以通过发送一笔相同的交易(但增加了手续费),来替换原有的交易,以使该笔交易能够快速被矿工打包,而原来的交易被取消。

Replace-by-Fee (RBF) 策略是指用户可以通过发送一个相同的交易(但提升了手续费)来替换长时间存在于交易池中未被矿工打包的交易。

详细实现可参考: https://help.tokenpocket.pro/cn/faq/btcwallet/rbf-cpfp

双重支付

上面提到的RBF是比特币客户端给出的一个交易选项。还有其他骚操作也可以撤销一笔交易。那就是利用“双重支付”的“特性”来处理。

当交易发出后还未打包时,我们可以发送另一个交易,该交易会花费我们要替换交易中使用的UTXO,但是手续费更高(手续费更高意味着会被矿工优先打包),当前的交易在被矿工打包后。之前的那笔交易因为UTXO已经被花费的缘故,将变成一个非法交易,被矿工抛弃,这样我们就完成了撤销的操作。

总结

以上就是撤销一个比特币交易的两种方式,这两种方式的前提都是交易未被持久化到链上,依然存在于交易池之时,已经上链的交易是无法篡改的(忽略分叉的情况)。

Ending !

本作品采用 知识共享署名 4.0 国际许可协议 进行许可
标签: 区块链 比特币
最后更新:12 6 月, 2024

hhxxttxs

五年服务端开发,现专职区块链,偏零知识Layer2工程方向

点赞
< 上一篇
下一篇 >

文章评论

razz evil exclaim smile redface biggrin eek confused idea lol mad twisted rolleyes wink cool arrow neutral cry mrgreen drooling persevering
取消回复

Archives

  • 2026 年 2 月
  • 2025 年 9 月
  • 2025 年 8 月
  • 2025 年 7 月
  • 2025 年 1 月
  • 2024 年 9 月
  • 2024 年 8 月
  • 2024 年 7 月
  • 2024 年 6 月
  • 2024 年 5 月
  • 2024 年 4 月
  • 2024 年 3 月

Categories

  • BTC
  • cuda
  • L2
  • rust
  • 其他
  • 区块链
  • 后端开发
  • 哲学思考
  • 文学创作
  • 算法
  • 经济投资
  • 链开发
  • 零知识

COPYRIGHT © 2024 好好学习,天天向上. ALL RIGHTS RESERVED.

Theme Kratos Made By Seaton Jiang