add deterministic NUT-20 quote locking derivation #373
No reviewers
Labels
No labels
breaking change
bug
documentation
enhancement
needs discussion
needs implementation
new nut
ready
wallet-only
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
forgejo-admin/nuts!373
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "Egge21M/nut-20-locking"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Summary
Adds deterministic wallet seed derivation guidance for NUT-20 quote locking keys using the Cashu SLIP-0044 coin type and a NUT-20-specific BIP32 path.
Updates the NUT-20 test vectors with the first five derived compressed secp256k1 public keys for the documented mnemonic.
Validation
Egge21M:nut-20-lockingagainstcashubtc/nuts:mainwith the GitHub connector: 1 commit ahead, 0 behind20.mdandtests/20-test.md@ -39,6 +39,26 @@ with the requested `amount`,`unit`, and `description` according to [NUT-04][04].>wut
@ -39,6 +39,26 @@ with the requested `amount`,`unit`, and `description` according to [NUT-04][04].>Fixed :)
As per my comment on the related deterministic P2PK key spec ( #331 ), unless there is an overwhelmingly strong reason to use BIP32, then a HMAC-SHA256 KDF is much faster, unless BIP-32 is carefully handled.
I have proposed a HMAC-SHA256 KDF derived alternative, which would close this PR
Iirc this has been discussed in the past in Leitos original PR for P2PK locking keys. Using BIP32 might be a tad slower, but it leaves the possibility to build something with the extended public keys. Imagine a watch-only wallet for mint quotes
Yeah, am not convinced it would not be a huge linkability issue compromising privacy. I mentioned it in my replacement pr
View command line instructions
Checkout
From your project repository, check out a new branch and test the changes.Merge
Merge the changes and update on Forgejo.Warning: The "Autodetect manual merge" setting is not enabled for this repository, you will have to mark this pull request as manually merged afterwards.