You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Merge #461: Cleanly separate experimental/insane miniscripts from sane miniscripts
6a06a11 Allow parsing expr fragments from string/script (sanket1729)
94d5eba Cleanup psbt translator APIs (sanket1729)
fff727c Remove Hash associated type from RawPkh. (sanket1729)
328d15f Rename the Semantic::translate_pkh to translate_pk (sanket1729)
b1d6477 Change Semantic KeyHash(Pk::Hash) to Key(Pk) (sanket1729)
372377a Remove PkTranslator trait (sanket1729)
Pull request description:
Cleanly separates how we deal with insane and unspecified miniscripts in the library. Insane minsicripts are well-defined that could
- It is unsafe(does not require a digital signature to spend it)
- It contains a unspendable path because of either a) Resource limitations or b) Timelock Mixing
- The script has malleable satisfaction
- It has repeated public keys
There are some unspecified features like PartialDescriptors that we use to allow parsing miniscripts from scripts or inferring descriptors. For this only includes
- Parsing rawpkh fragments with `hash160`
All of these can be individually enabled or disabled using the `ExtParams` builder.
As a consequence of this, we removed the Miniscript::Hash associated type and change the Semantic policy to operate only on keys.
Also fixes another issue in the usage of PkTranslator that made it impossible to implement the trait in downstream libraries
ACKs for top commit:
apoelstra:
ACK 6a06a11
Tree-SHA512: 200cbe8bd9a42f75db8f5c74c6e811d70210f2202352beb82326f6ada3b19ce683feab06419dac2f2c94c8fa5ea0f8ee1fa5f9c84a4ce2e8193b5a631eddd111
0 commit comments