mirror of
https://github.com/bitcoin/bitcoin.git
synced 2025-01-25 02:33:24 -03:00
[doc] package deduplication
This commit is contained in:
parent
d35a3cb396
commit
77202f0554
1 changed files with 15 additions and 0 deletions
|
@ -57,3 +57,18 @@ test accepts):
|
|||
|
||||
- Warning: Batched fee-bumping may be unsafe for some use cases. Users and application developers
|
||||
should take caution if utilizing multi-parent packages.
|
||||
|
||||
* Transactions in the package that have the same txid as another transaction already in the mempool
|
||||
will be removed from the package prior to submission ("deduplication").
|
||||
|
||||
- *Rationale*: Node operators are free to set their mempool policies however they please, nodes
|
||||
may receive transactions in different orders, and malicious counterparties may try to take
|
||||
advantage of policy differences to pin or delay propagation of transactions. As such, it's
|
||||
possible for some package transaction(s) to already be in the mempool, and there is no need to
|
||||
repeat validation for those transactions or double-count them in fees.
|
||||
|
||||
- *Rationale*: We want to prevent potential censorship vectors. We should not reject entire
|
||||
packages because we already have one of the transactions. Also, if an attacker first broadcasts
|
||||
a competing package or transaction with a mutated witness, even though the two
|
||||
same-txid-different-witness transactions are conflicting and cannot replace each other, the
|
||||
honest package should still be considered for acceptance.
|
||||
|
|
Loading…
Add table
Reference in a new issue