rust-bitcoin / rust-bitcoin/rust-miniscript
Unspendable Miniscript key
Nobody has claimed this yet.
- Dominant language
- Rust
- Stars
- 426
- Forks
- 200
- Avg merge
- 7d 17h
- Merged PRs (30d)
- 8
Description
For testing purposes and for an unused Taproot internal key, it can be useful to have a key that is provably unspendable. For instance, there is lift_x(0x0250929b74c1a04954b78b4b6035e97a5e078a5a0f28ec96d547bfee9ace803ac0) from BIP 341. This should work in generic contexts.
We could add a sub trait of MiniscriptKey that returns a constant unspendable key. In rust-simplicity we recently added this. Randomized or iterative unspendable keys probably go a bit too far.
Any ideas?
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start by reading the MiniscriptKey trait and the referenced rust-simplicity policy/descriptor.rs implementation, then compare the proposed constant with the BIP 341 lift_x example. Done means the project has a decided generic API for a provably unspendable key, with its behavior covered by appropriate tests.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- rust
- Domain
- blockchain, cryptography
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 30/100