0

In BIP-0141, it states:

  1. a new block rule is added which requires a commitment to the wtxid.
  2. the coinbase's input's witness must consist of a single 32-byte array for the witness reserved value.

However, I spotted two recent blocks (732085 and 767471) that broke the mentioned rules and didn't include a scriptPubKey starting with 0x6a24aa21a9ed

And, their txinwitness field is 5b5032506f6f6c5d5b5032506f6f6c5d5b5032506f6f6c5d5b5032506f6f6c5d, which decodes to the text '[P2Pool][P2Pool][P2Pool][P2Pool]'

Apparently, both the above rules stipulated in BIP-0141 were ignored.

So, unconforming to BIP-0141 (or other BIPs) by miners doesn't render the blocks invalid?

0

1 Answer 1

2

The commitment is placed on an output's spk. In 732085, is the first output.

6a24aa21a9ed69e5a4d80fbc380c2fef1fbb91f0184ffd74e4612f6c6d7ca9d08c7e995c583c

This satisfies the first rule. The second one, since this value has no consensus meaning yet, any 32-byte array can be placed there. They pushed a silly string, but it's 32-byte, so rule 2 isn't violated either.

Segwit commitment is only optional if there is no segwit tx in a block.

2
  • Thank you. I just realized the my calculation of witness commitment was wrong. I assumed the reserved value to be 32 bytes of zeros.
    – Simon L
    Feb 6, 2023 at 13:18
  • The second block also has a witness commitment.
    – Murch
    Feb 6, 2023 at 19:00

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.