Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Murisi/zip32 support #61

Open
wants to merge 7 commits into
base: main
Choose a base branch
from
Open

Conversation

murisi
Copy link
Contributor

@murisi murisi commented Aug 30, 2024

Added ZIP 32 support to the Ledger app by copying its implementation from the Zcash Ledger app. This could close #52. More specifically, the following changes have been made:

  • Modified the Ledger app and its Rust library to support HD paths of length 3
  • Added checks to ensure that the ZIP 32 paths have the correct prefix (32) and correct coin (877)
  • Obtain ZIP 32 seed by doing a SLIP 10 derivation on the path m/44'/877'/0'/0'/0' from the root seed
  • Copied and integrated ZIP 32 derivation code from Zcash Ledger app and applied MASP personalizations
  • Changed the app to respond to viewing key request with an extended full viewing key (instead of a full viewing key)
  • Modified the app to display the bech32 encoding of the full viewing key (like the Namada client)

The above changes were partly necessitated by the fact that the Namada client only supports the importation and usage of extended full viewing keys. Additional note: the behaviour of the app on non-hardened ZIP 32 paths is currently untested.

@murisi murisi force-pushed the murisi/zip32-support branch from 467c9b9 to 96e7119 Compare September 18, 2024 14:22
…32 account instead of the spend authorization key.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

ZIP 32 Support
1 participant