From c8b47a8d48914254a17c43a16872362e46785019 Mon Sep 17 00:00:00 2001 From: Gregory Sanders Date: Fri, 21 Aug 2020 16:20:51 -0400 Subject: Slight cleanup of signet commitment description --- bip-0325.mediawiki | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) (limited to 'bip-0325.mediawiki') diff --git a/bip-0325.mediawiki b/bip-0325.mediawiki index 4b45030..5c7d47d 100644 --- a/bip-0325.mediawiki +++ b/bip-0325.mediawiki @@ -26,13 +26,15 @@ A new type of test network would be more suitable for integration testing by org A new type of network ("signet"), which takes an additional consensus parameter called the challenge (scriptPubKey). The challenge can be a simple pubkey (P2PKH style), or a k-of-n multisig, or any other script you would want. -The witness commitment of the coinbase transaction is extended to include a secondary commitment (the signature/solution) of either: +In order to provide a non-empty solution to the block challenge the block's BIP 141 commitment's optional data must include an additional commitment of the signature/solution for the block: 1-5 bytes - Push the following (4 + x + y) bytes 4 bytes - Signet header (0xecc7daa2) x bytes - scriptSig y bytes - scriptWitness +In the special case where an empty solution is valid (ie scriptSig and scriptWitness are both empty) this additional commitment can optionally be left out. This special case is to allow non-signet-aware block generation code to be used to test a custom signet chain where the challenge is trivially true. + The scriptSig is serialized by first encoding its length as CompactSize. If the scriptWitness is empty, it is encoded as 0 bytes, otherwise it is encoded in the usual way (see BIP 141 "witness" encoding). Any push operations that do not start with the 4 byte Signet header are ignored. Multiple push operations with the 4 byte Signet header are ignored except for the first instance of the header. -- cgit v1.2.3 From 6d7d3011e8ebf37ee51d79c2e286aa1f1f7d6d86 Mon Sep 17 00:00:00 2001 From: Gregory Sanders Date: Wed, 9 Sep 2020 09:38:35 -0400 Subject: bip141 commitment is required for signet blocks Co-authored-by: MarcoFalke --- bip-0325.mediawiki | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'bip-0325.mediawiki') diff --git a/bip-0325.mediawiki b/bip-0325.mediawiki index 5c7d47d..968ea6f 100644 --- a/bip-0325.mediawiki +++ b/bip-0325.mediawiki @@ -26,7 +26,7 @@ A new type of test network would be more suitable for integration testing by org A new type of network ("signet"), which takes an additional consensus parameter called the challenge (scriptPubKey). The challenge can be a simple pubkey (P2PKH style), or a k-of-n multisig, or any other script you would want. -In order to provide a non-empty solution to the block challenge the block's BIP 141 commitment's optional data must include an additional commitment of the signature/solution for the block: +Signet requires all blocks to have a BIP 141 commitment in the coinbase transaction. In order to provide a non-empty solution to the block challenge the block's BIP 141 commitment's optional data must include an additional commitment of the signature/solution for the block: 1-5 bytes - Push the following (4 + x + y) bytes 4 bytes - Signet header (0xecc7daa2) -- cgit v1.2.3