# Unspendable keys in descriptors

**URL:** <https://delvingbitcoin.org/t/unspendable-keys-in-descriptors/304>\
**Category:** Implementation\
**Tags:** miniscript, taproot\
**Created:** [December 19, 2023, 12:46pm UTC](https://delvingbitcoin.org/t/unspendable-keys-in-descriptors/304 "2023-12-19T12:46:39Z")\
**Posts on this page:** 1\
**Showing post:** 24

<div class="post-metadata">

**Author:** ![salvatoshi](https://delvingbitcoin.org/user_avatar/delvingbitcoin.org/salvatoshi/32/72_2.png) [@salvatoshi](https://delvingbitcoin.org/u/salvatoshi)\
**Post date:** [January 16, 2024, 3:02pm UTC](https://delvingbitcoin.org/t/unspendable-keys-in-descriptors/304/24 "2024-01-16T15:02:53Z")

</div>

The `_` placeholder would be a wallet policy feature, so expecting to have the wallet policy seems a natural assumption, and I don’t think the standard should be optimized for “not having it”.

Other orders push code complexity to the hardware signer, that will now have to add more code to parse the “descriptor template” just to find the right order of keys.

Finally, a wallet policy might have the same `@i` multiple times (especially on taproot); in your version you’d either be concatenating the corresponding pubkey multiple times, or would need a stateful parser to skip the ones that have been seen already.

---

_[View the full topic](https://delvingbitcoin.org/t/unspendable-keys-in-descriptors/304)._
