1 of 12

Not So Mini Script

2 of 12

What is Miniscript?

raw bitcoin script

the well formed

subset pieter sanket and andy said is good to use

3 of 12

sad.png

4 of 12

What is well formed?

  • We know how to solve it
  • Things don't "conflict (e.g., older(time) and older(height))
  • It's not "malleable" (e.g., can a third party modify our solution?)
  • It's "rountrippable"
  • No weird limits hit (e.g. ops count)

5 of 12

Miniscript is too hard to write though, harder than script

6 of 12

Where have I heard that before….

Like Rust!

Miniscript is "Safe" so it feels "harder", but if it felt easy to write your Bitcoin Script it was wrong™ and you should feel bad.

7 of 12

Policy to the Rescue

Concrete Policy ⇒ Miniscript ⇒ Bitcoin Script ⇒ Miniscript ⇒ Semantic Policy

Policy is easy to write, but not WYSIWG.

Miniscript is hard to write, but 1:1 with scripts.

8 of 12

"Multiple Implementations"

Meh, just use the Rust one.

9 of 12

Abstract Miniscript

Keys could be e.g. String IDs "alice" "bob", and you fill them in later with actual keys.

10 of 12

What can i do?

These names r dumb

11 of 12

YOU COULD WIN THE HACKATHON

Just by writing some really useful miniscript that hasn't existed before

In theory ¯\_(ツ)_/¯

12 of 12

PLAYTIME

Got Sapio Studio WOrking? Use that! Has Taproot!

Don't? https://jeremyrubin.github.io/sapio-testsite/ works for this

Use https://bitcoin.sipa.be/miniscript/

Visual? https://bitcoindevkit.org/bdk-cli/playground/

Wanna learn a diff lang that helps with this? https://min.sc