Why is `SIGHASH_ALL` allowed in taproot when `SIGHASH_DEFAULT` is more efficient?

The existence of SIGHASH_DEFAULT makes SIGHASH_ALL redundant for Taproot, since both produce the same behavior — except SIGHASH_DEFAULT saves a byte by being implicit.

Given Bitcoin’s usual focus on minimizing blockspace usage (e.g. x-only pubkeys, minimal ScriptSig rules), why isn’t there a consensus or policy rule to disallow or discourage SIGHASH_ALL in Taproot signatures?

I’m not suggesting it’s a bad design choice — I just want to understand the rationale behind allowing the redundant form.



from Recent Questions - Bitcoin Stack Exchange https://ift.tt/3HkUf0R
via IFTTT

Popular posts from this blog

How to compute MAST commit bytes in bitcoin payment?

Isit possible to swap my MBTC into BTC

Anyone help with some tbtc?