Posted by dr-orlovsky
Jul 12, 2025/10:33 UTC
The challenges surrounding Bitcoin descriptors are multifaceted, primarily due to their non-deterministic nature. This issue stems from several ambiguities, including the inconsistent use of certain characters and formatting options, such as the use of '
, h
, or even H
, the variance in specifying derivation paths like /*/*
or /<0;1>/*
, and the arbitrary use of spaces, newlines, and upper- or lower-case encoding for the master key fingerprint. These irregularities hinder the ability to compare two descriptor strings effectively or to utilize a descriptor checksum as a reliable identifier.
Moreover, there exists a concern regarding the syntactical validity versus the semantic accuracy of a descriptor. A descriptor might be syntactically correct yet semantically invalid if it fails to represent a wallet accurately. This is particularly evident in scenarios where multisig descriptors with segwit or taproot involve repeated xpubs across different parts, creating redundancy and complicating manual verification processes.
In response to these issues, there's an initiative to standardize Bitcoin descriptor encoding. The proposed method involves separating the descriptor into a template and payload section, aiming for a more deterministic approach. Efforts towards this direction include the conceptualization of a binary descriptor encoding and a script template library, though these projects are still under development. A temporary solution that has been adopted is using the hash of the first derived scriptpubkey from a descriptor as a deterministic identifier for descriptors.
This ongoing work is part of a broader ambition to enhance Bitcoin infrastructure, exemplified by contributions to projects such as a Rust-based Bitcoin library that is independent from existing solutions like rust-bitcoin and rust-miniscript. These efforts are documented and can be explored further through resources available on GitHub (stingerjet-docs, BP-STD, and BP-CORE). Additionally, the author's involvement in creating mycitadel.io, a wallet platform, reflects a practical application of these advancements, showcasing a commitment to implementing these innovations in real-world scenarios.
TLDR
We’ll email you summaries of the latest discussions from authoritative bitcoin sources, like bitcoin-dev, lightning-dev, and Delving Bitcoin.
We'd love to hear your feedback on this project?
Give Feedback