forked from bitcoin/bitcoin
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
[mempool] Restrain carve-out acceptance to only-spending tagged output
Offchain multiparty transaction may allow one of the party to spend exclusively one of the output. A party with the ability to spend two or more of this kind of output can use one to hit the descendant limit and the other one to carve-out the transaction with a CPFP good enough to get into the mempool but not get confirmed and so pin the parent transaction. It lets other parties without remedy to bump parent transaction feerate and may incumber a loss of funds on cascade of time-constrained offchain transactions, e.g LN-channels. This change restrain carve-out to enable it to play its end-goal design. A CPFP to get benefits of carve-out relaxation rules must spend first output of parent transaction. Offchain protocols while building pre-signed transaction MUST verify than the first output is a anyone-can-spend or than any party is able to redeem it. This output is "tagged" by being inserted as first one at transaction construction. Explicitly test a non-first-output carve-out spend in mempool_package_onemore which should fail
- Loading branch information
Antoine Riard
committed
Nov 6, 2019
1 parent
94a26b1
commit be173a1
Showing
2 changed files
with
26 additions
and
11 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters