On Sunday, December 20, 2020 9:37 PM, Karl-Johan Alm via bitcoin-dev 
<[email protected]> wrote:

> Thanks a lot for taking the time to brush up the BIP. For what it's
> worth, I am all for these changes, and I see them as clear
> improvements all around.
>
> IIRC Pieter was the one who originally suggested the two-checks
> approach (invalid, inconclusive, valid) which is being modified here,
> so would be good if you chimed in (or not -- which I'll assume means
> you don't mind).

I agree with the idea of permitting incomplete validators to return 
inconclusive as well. That doesn't really reduce the functionality (given that 
"inconclusive" was already a potential result), and it obviously makes it much 
more accessible to a variety of software.

This suggestion breaks the original use of inconclusive though: the ability to 
detect that future features are used in the signature. The idea was to use 
divergence between "consensus valid" and "standardness valid" as a proxy for 
future extensions to be detected (e.g. OP_NOPn, future witness versions, ...). 
I think it's undesirable that these things now become unconditionally invalid 
(until the BIP is updated, but once that happens old validators will give a 
different result than new ones).

Since the BIP no longer relies on a nebulous concept of standardness, and 
instead specifically defines which standardness features are to be considered, 
this seems easy to fix: whenever validation fails due to any of those, require 
reporting inconclusive instead of invalid (unless of course something actually 
invalid also happens). In practice I guess you'd implement that (in capable 
validators) by still doing validation twice, once with all features enabled 
that distinguish between valid/invalid, and if valid, again but now with the 
features enabled that distinguish between valid and (invalid or inconclusive).

Cheers,

--
Pieter

_______________________________________________
bitcoin-dev mailing list
[email protected]
https://lists.linuxfoundation.org/mailman/listinfo/bitcoin-dev

Reply via email to