From e4e2b7ccd10af0ad0fdab6358461567326ee21e8 Mon Sep 17 00:00:00 2001
From: Salvatore Ingala <6681844+bigspider@users.noreply.github.com>
Date: Sun, 22 Jun 2025 20:27:23 +0200
Subject: [PATCH] 443: add paragraph on fee management
---
bip-0443.mediawiki | 12 ++++++++++++
1 file changed, 12 insertions(+)
diff --git a/bip-0443.mediawiki b/bip-0443.mediawiki
index 5acffdf8..4aaca42f 100644
--- a/bip-0443.mediawiki
+++ b/bip-0443.mediawiki
@@ -129,6 +129,18 @@ Note that the ''deduct'' semantic does not allow to check the exact amount of it
a scheme similar to figure 3 or 4 above, amounts should be constrained either with a signature, or with future
introspection opcodes that allow fixing the amount. In lack of that, amounts would be malleable.
+=== Paying fees ===
+
+Since the amount-checking semantics of OP_CHECKCONTRACTVERIFY
are designed to preserve the entire input
+amount across one or more outputs, transaction fees must be paid exogenously. This can be achieved by adding an extra
+input to the transaction, by using an anchor output, or with other future mechanisms.
+
+The ''ignore'' amount mode is not a safe mechanism for paying endogenous fees. An output checked with this mode has no
+amount constraint, which would allow a miner to claim the entire value of that input. This mode is included for forward
+compatibility with potential future soft forks that may introduce other amount-related logic that is compatible with
+OP_CHECKCONTRACTVERIFY
's script checks.
+
+
== Specification ==
The tapscript opcode OP_SUCCESS187
(0xbb
) is constrained with new rules to implement