Commit 24818cb
committed
Merge rust-bitcoin/rust-miniscript#349: Fix e/o bug in miniscript threshold correctness rules
c74934bf0864a463c42c5a44502f803bf61eb57c Fix compiler test cases for new typing rules (sanket1729)
9766e30c94f85562e3687f00b84a281ac76d2eff Fix bug in exec stack elements calculation (sanket1729)
db97c39afa4053c2c3917f04392f6e24964b3972 Remove `u` property from `d` (sanket1729)
77d7d796aab10373a3dd5e49a232a920f59c05b4 Fix malleability rules according to website (sanket1729)
6a1ceac81dfd275aecc7ee6594d2f2e88de37473 Fix e/o bug in miniscript threshold correctness rules (sanket1729)
Pull request description:
Multiple type system bugs:
The first two bugs are not severe: They relax rules so existing systems should not be affected. However the third commit is a fix that will be backported.
Pasting description #348
> The value it leaves on the stack depends on the last element on the
stack. However, we can't make sure this element is OP_1 (which would
give us the 'u' property) without the MINIMALIF rule.
MINIMALIF is only policy for P2WSH, therefore giving 'd:' the 'u'
property breaks consensus soundness: it makes it possible (by consensus
but not policy) for instance to satisfy a thresh() without satisfying
at least k of its subs.
This bug was found and reported by Andrew Poelstra rust-bitcoin/rust-miniscript#341.
ACKs for top commit:
apoelstra:
ACK c74934bf0864a463c42c5a44502f803bf61eb57c
Tree-SHA512: 274a3c2f93eb56b8cda3bf8f9befd9c93494f398d1564b90716330e1c73fbb503e7c1dcc1ffd232bcbae8f1c4e316bfbc705b3d5fc02b9491de1fcdb8c3dbe79File tree
7 files changed
+283
-275
lines changed- integration_test
- src
- miniscript
- types
- policy
7 files changed
+283
-275
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
13 | 13 | | |
14 | 14 | | |
15 | 15 | | |
16 | | - | |
| 16 | + | |
17 | 17 | | |
18 | 18 | | |
19 | 19 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
615 | 615 | | |
616 | 616 | | |
617 | 617 | | |
618 | | - | |
| 618 | + | |
619 | 619 | | |
620 | 620 | | |
621 | 621 | | |
| |||
0 commit comments