From badaf01360374ed9c95ed70042761d5bca99af20 Mon Sep 17 00:00:00 2001 From: Luke Dashjr Date: Wed, 26 Jul 2023 19:59:59 +0000 Subject: bip-0300: Forbid extraneous OP_DRIVECHAIN outputs in M5/M6 --- bip-0300.mediawiki | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/bip-0300.mediawiki b/bip-0300.mediawiki index a265374..6f8a13c 100644 --- a/bip-0300.mediawiki +++ b/bip-0300.mediawiki @@ -398,7 +398,7 @@ Every time a deposit/withdrawal is made, the old CTIP is spent and a new one is Every M5 is valid, as long as: -* It has at least one OP_DRIVECHAIN output -- this becomes the new CTIP. +* It has exactly one OP_DRIVECHAIN output -- this becomes the new CTIP. * The new CTIP has '''more''' coins in it, than before. @@ -412,6 +412,7 @@ M6 is invalid if: * The first output of M6 is NOT an OP_DRIVECHAIN. (This OP_DRIVECHAIN becomes the new CTIP. In other words: all non-withdrawn coins are paid back to the sidechain.) * The second output is NOT an OP_RETURN script of exactly 10 bytes, of which 8 bytes are a serialized Bitcoin amount. * The txn fee of M6 is NOT exactly equal to the amount of the previous bullet point. +* There are additional OP_DRIVECHAIN outputs after the first one. Else, M6 is valid. -- cgit v1.2.3