-
Notifications
You must be signed in to change notification settings - Fork 21
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
BTC Replace by Fee (RBF) feature: Allow a BTC transaction to be replaced with a higher fee #82
Comments
Full RBFHere's an example of Full RBF processed on testnet. Let's look at the stats:
You can review the TX_2 here: fc081ae0faca52c421e6d7c3e37cb62f4e3ef3701fd4b42ce0bfc4045a3eb817. The two transactions have the same inputs[0], outputs[0], and outputs[1]. The idea was to not overcomplicate things at first, and just start simple by ignoring the existing inputs/outputs (don't edit them at all) in TX_1. The stretegy gives us the advantage of avoiding unknown issues and still achieving our goal: transaction acceleration. However, this method also has a disadvantage: In order to construct the RBF transaction (TX_2), the sender must have a balance more than sufficient, and additionally, the sender must have at least one more UTXO in the wallet. TX_1Transaction
Hex
TX_2Transaction
Hex
|
DiscussionLet's say How to automatically add
|
Maybe these APIs can help:
|
Enabling the RBF feature (allowing transactions to be replaced) is easy, but how to sign and send the same transaction again is a problem. The issue is that when we got the UTXOs to construct a transaction, we got them from the btc-assets-api. And once the transaction is constructed, it no longer contains some required properties for us to "reverse" the whole construction process and convert a Transaction to a PSBT.
For example, how does the process know which output (vout) in the transaction can be altered in order to pay more fees? And besides, what's the dust limit for each output? Since outputs can be normal UTXOs (dust_limit=1,0000) or RGBPP UTXOs (dust_limit=546)._limit=546).
Originally posted by @ShookLyngs in #37 (comment)
References
Opt-in Full Replace-by-Fee Signaling
https://github.com/bitcoin/bips/blob/master/bip-0125.mediawiki
two ways a transaction can signal that it is replaceable:
full-RBF allows any transaction to be replaced whether or not it signals BIP125 replaceability.
The text was updated successfully, but these errors were encountered: