Slight cleanup of signet commitment description #976

pull instagibbs wants to merge 2 commits into bitcoin:master from instagibbs:patch-13 changing 1 files +3 −1
  1. instagibbs commented at 8:23 PM on August 21, 2020: member

    "either" and "Signet scriptSig header" seem to make no sense here, if other touchups are disagreeable I can drop them.

  2. in bip-0325.mediawiki:29 in 9d2a575548 outdated
      25 | @@ -26,10 +26,10 @@ A new type of test network would be more suitable for integration testing by org
      26 |  
      27 |  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.
      28 |  
      29 | -The witness commitment of the coinbase transaction is extended to include a secondary commitment (the signature/solution) of either:
      30 | +The witness commitment scriptPubKey of the coinbase transaction is extended to include an additional commitment in the optional data portion of the signature/solution for the block:
    


    MarcoFalke commented at 3:05 PM on August 22, 2020:

    I think it could make sense to clarify that this is the BIP 141 commitment, and not some other random witness commitment. Also, it could mention that the BIP 141 commitment is required. So I suggest the following replacement

    Signet requires all blocks to have a BIP 141 commitment in the coinbase transaction. The BIP 141 commitment's optional data must include an additional commitment of the signature/solution for the block:
    

    instagibbs commented at 5:43 PM on August 22, 2020:

    great idea, adding more hooks into bip141 makes this section clearer

  3. MarcoFalke commented at 5:36 PM on August 22, 2020: member

    I think the either refers to the fact that one of (scriptSig, scriptWitness) can be empty, but not both.

  4. MarcoFalke commented at 6:03 AM on August 25, 2020: member

    Could mention the BIP number in the pull subject line?

    Also, cc @kallewoof

  5. kallewoof commented at 6:09 AM on August 25, 2020: member

    ACK. Thanks for making that more understandable!

    Ping @luke-jr.

  6. in bip-0325.mediawiki:29 in eedc08810d outdated
      25 | @@ -26,10 +26,10 @@ A new type of test network would be more suitable for integration testing by org
      26 |  
      27 |  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.
      28 |  
      29 | -The witness commitment of the coinbase transaction is extended to include a secondary commitment (the signature/solution) of either:
      30 | +Signet requires all blocks to have a BIP 141 commitment in the coinbase transaction. The BIP 141 commitment's optional data must include an additional commitment of the signature/solution for the block:
    


    ajtowns commented at 6:41 AM on September 3, 2020:

    This seems like it contradicts the text from #983: "There is one other acceptable special case: if a block's challenge is e.g. OP_TRUE (0x51), where an empty solution would result in success, the block is also considered valid if the signet commitment is absent"


    kallewoof commented at 7:26 AM on September 3, 2020:

    Yeah, good point. @instagibbs there is an exception now for the case where if the challenge is enough to satisfy (e.g. OP_TRUE); in this case, the signet commitment may be omitted entirely.


    MarcoFalke commented at 7:46 AM on September 3, 2020:

    In which case the BIP 141 commitment isn't required either


    ajtowns commented at 3:12 PM on September 8, 2020:

    How about:

    Signet requires all blocks to have a BIP 141 commitment in the coinbase transaction. In order to provide a solution to the block challenge, the BIP 141 commitment's optional data must include an additional commitment of the solution for the block: [...]. 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 OP_TRUE.


    instagibbs commented at 3:39 PM on September 8, 2020:

    Took a modified version of what you posted, noting that bip141 commitment is only required with non-empty solutions, and that any "trivial" challenge can be used to avoid requiring fancy mining software for non-signature tests.


    ajtowns commented at 4:09 PM on September 8, 2020:

    I believe the current code requires a bip141 commitment even with empty solutions. Should this be changed?


    instagibbs commented at 4:12 PM on September 8, 2020:

    kallewoof commented at 4:26 AM on September 9, 2020:

    Simplicity is good. Let's require

  7. in bip-0325.mediawiki:31 in eedc08810d outdated
      25 | @@ -26,10 +26,10 @@ A new type of test network would be more suitable for integration testing by org
      26 |  
      27 |  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.
      28 |  
      29 | -The witness commitment of the coinbase transaction is extended to include a secondary commitment (the signature/solution) of either:
      30 | +Signet requires all blocks to have a BIP 141 commitment in the coinbase transaction. The BIP 141 commitment's optional data must include an additional commitment of the signature/solution for the block:
      31 |  
      32 |      1-4 bytes - Push the following (4 + x + y) bytes
    


    ajtowns commented at 6:44 AM on September 3, 2020:

    I believe this should be 1-5 bytes (1 byte if 4+x+y <= 75, 2 bytes for PUSHDATA1 if 4+x+y < 256, 3 bytes for PUSHDATA2 if 4+x+y < 65536, and 5 bytes for PUSHDATA4).


    kallewoof commented at 7:34 AM on September 3, 2020:
  8. narula cross-referenced this on Sep 8, 2020 from issue bip-325: change signature scheme to be tx-based by ajtowns
  9. MarcoFalke commented at 5:46 AM on September 8, 2020: member

    @instagibbs needs rebase

  10. instagibbs force-pushed on Sep 8, 2020
  11. instagibbs commented at 2:13 PM on September 8, 2020: member

    rebased/squashed

  12. Slight cleanup of signet commitment description c8b47a8d48
  13. instagibbs force-pushed on Sep 8, 2020
  14. kallewoof commented at 4:27 AM on September 9, 2020: member

    ACK, please merge at your convenience, @luke-jr.

  15. in bip-0325.mediawiki:29 in c8b47a8d48 outdated
      25 | @@ -26,13 +26,15 @@ A new type of test network would be more suitable for integration testing by org
      26 |  
      27 |  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.
      28 |  
      29 | -The witness commitment of the coinbase transaction is extended to include a secondary commitment (the signature/solution) of either:
      30 | +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:
    


    MarcoFalke commented at 7:12 AM on September 9, 2020:
    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:
    

    Could keep this for clarification?


    instagibbs commented at 1:39 PM on September 9, 2020:

    yes it's more correct, so re-adding this. Sorry for back and forth!

  16. MarcoFalke approved
  17. MarcoFalke commented at 7:12 AM on September 9, 2020: member

    Better with or without my suggested change

  18. bip141 commitment is required for signet blocks
    Co-authored-by: MarcoFalke <falkemarco@gmail.com>
    6d7d3011e8
  19. kallewoof commented at 2:04 PM on September 9, 2020: member

    ACK

  20. MarcoFalke commented at 2:15 PM on September 9, 2020: member
  21. luke-jr merged this on Oct 5, 2020
  22. luke-jr closed this on Oct 5, 2020


github-metadata-mirror

This is a metadata mirror of the GitHub repository bitcoin/bips. This site is not affiliated with GitHub. Content is generated from a GitHub metadata backup.
generated: 2026-04-19 09:10 UTC

This site is hosted by @0xB10C
More mirrored repositories can be found on mirror.b10c.me