Describe the enhancement
This is a tracking issue to remove signing capabilities and requirements to handle private key material from Wallet. The new recommended flow will leverage rust-bitcoin Psbt::sign. Please comment below or mention this issue in related issues and PRs.
Proposed timeline
| When |
What |
Available now since 3.1.0 |
Allow users to bring in their private keys at the last minute while still using our APIs (Wallet::sign_with_signers). |
| Available now (but) |
Make sure users can sign using Psbt::sign. |
| Coming up (bookofbdk) |
Write documentation, recommendations, release notes, etc. |
| ? |
Mark signing-related APIs as deprecated. |
4.0 (Option 1) |
Remove signers entirely from the Wallet type and crate. |
4.0 (Option 2) |
Remove signers entirely from the Wallet, but keep them as separate helper module if required (after deep dive into SignOptions, see todos below). |
Todos
Related issues and PRs
Describe the enhancement
This is a tracking issue to remove signing capabilities and requirements to handle private key material from
Wallet. The new recommended flow will leveragerust-bitcoinPsbt::sign. Please comment below or mention this issue in related issues and PRs.Proposed timeline
3.1.0Wallet::sign_with_signers).Psbt::sign.4.0(Option 1)Wallettype and crate.4.0(Option 2)Wallet, but keep them as separate helper module if required (after deep dive intoSignOptions, see todos below).Todos
Signersbut bring in your private keys just at the moment of signing (not in the constuction of theWallet)SignOptiontype, which currently potentially offers options not covered by rust-bitcoin'sPsbt::signAPIRelated issues and PRs
GetKeyforKeyMapandDescriptorSecretKeyrust-bitcoin/rust-miniscript#851derivation_pathfor keys with origin rust-bitcoin/rust-miniscript#867hwi-async#20finalize_psbtwhen returning false #73Psbt::signinstead. #235