135 | @@ -136,6 +136,9 @@ In summary, the semantics of the [[bip-0143.mediawiki|BIP143]] sighash types rem
136 |
137 | ==== Taproot key path spending signature validation ====
138 |
139 | +A Taproot signature is a 64-byte Schnorr signature, as defined in [[bip-0340.mediawiki|BIP340]], with the sighash byte appended in the usual Bitcoin fashion.
140 | +However, in the common case of <code>SIGHASH_DEFAULT</code>, encoded as ''0x00'', a space optimization can be made by ''omitting'' the sighash byte, resulting in a 64-byte signature with <code>SIGHASH_DEFAULT</code> assumed.
I read "a space optimization can be made" as suggesting that you could have a 65 byte SIGHASH_DEFAULT signature, as omitting the sighash byte would just be optional.
Perhaps
However, in the common case when the default sighash flags being used (<code>SIGHASH_DEFAULT</code>, encoded as ''0x00'') the sighash byte is omitted from the encoding entirely, resulting in a 64-byte signature.
?
or just replace can with must?
Can confirm that 65bytes sig with 0x00 appended is considered invalid for bitcoind (v24.0)
Can confirm that 65bytes sig with 0x00 appended is considered invalid for bitcoind (v24.0)
Hopefully, it's explicitly spelled out in footnote 21 that that is not allowed.
I will make it explicit, give me a minute.