-
Notifications
You must be signed in to change notification settings - Fork 315
Description
Similar to #1625, there are several instances in the consensus critical code path in blockchain and stake that call txscript.GetScriptClass however, as indicated by being in the standard.go file, that function is only intended explicitly for working with standard script forms which only apply in the context of the more restrictive standardness policy rules (e.g. what is permitted to enter to the mempool and be relayed across the network) as opposed to the consensus rules.
This is important because the standardness rules can, and do, change over time independently of the consensus rules, whereas the consensus rules must not change without an explicit vote since it constitutes a fork.
Consequently, every reference to the function in the consensus critical code paths in blockchain and stake must be replaced to explicitly enforce the exact semantics expected by the current consensus rules.