btcd
btcd copied to clipboard
[2/2]: BIP 322 Support
Change Description
- Adds
to_spend
andto_sign
transactions in accordance to BIP-322 generic signed message format. - Adds
EncodeWitness
function that encodes witness stack in a signed BIP-322 PSBT into base-64 encoded format.
Additional Context
Depends on #2151 Closes #2077
How Has This Been Tested?
- Added test cases for
BuildToSpendTx
function with an empty message and "Hello World" message as in BIP-322 - Added test cases for
BuildToSignTx
function with an empty message and "Hello World" message as in BIP-322. - Added test cases for
EncodeWitness
function where it encodes the input witnessFinalScriptWitness
of a finalizedto_sign
transaction into base64 and throws an error if theto_sign
transaction is not signed yet.
Remaining Parts
- Add a signing function following BIP-0322 and integrate it with the codebase.
- Add a verifying function following BIP-0322 and integrate with the codebase.
I would greatly appreciate your feedback during this draft phase to ensure it aligns with the desired objectives. Thank you. 🙏