Miniscript fans will know that Ledger guru Salvatore Ingala (aka salvatoshi) has been advancing miniscript in hardware signers for some time.
The latest Ledger Bitcoin update brings an new development: human readable miniscript policy description.
miniscript ELI5
Miniscript is a set of Bitcoin script chunks that are well-known and codified so that they can be used a little like a shorthand. It allows bitcoiners to have more complicated wallets (eg decaying multisigs or wallets with timelocks that allow different keys to spend your coins at different times) without having to start from scratch every time.
Unfortunately, miniscript is a hellish-looking thing that is not very easy to parse unless you are very familiar with it.
human readable miniscript policies
Descriptors were designed as a standard for expressing all the ways a particular wallet can lock coins so that if you have the keys and the descriptor, you are able to create signatures for that wallet with any software that supports descriptors. A descriptor may be quite simple or it may be quite complex -- and the complex descriptors sometimes include spending conditions expressed in miniscript.
The ability for the user to completely validate on-screen the kind of script used (and each of the involved keys) is crucial for secure usage, as the machine that is interacting with the hardware signer (and running the software wallet) is considered untrusted.
It is my understanding that Ledger used to show the user miniscript in their descriptor. For example, something like this:
And the user was supposed to compare this against what the untrusted coordinating or broadcasting device said they were signing. It was not exactly intuitive.
From v2.5.0, Ledger will now display the same descriptor like this:
Which is at least a little easier to read. The abstraction does seem to carry a little risk (translation always risks muddying the meaning of things), but I don't think Ingala plans on stopping here.
BIP 388:
Ingala is the author of BIP 388, and references this implementation of it in the X thread (linked above).
This seems to be where Ledger is heading with regards to displaying wallet descriptors.
https://twiiit.com/salvatoshi/status/2086727660353261863