Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
The very first attempt at adding Ledger support. The Ledger support is feature-gated by a
ledger
feature on both thestarknet-signers
andstarknet
crates. It's turned off by default.The current Ledger app for Starknet is quite limited: it only supports blind signing. Nevertheless, it's a huge step forward compared to software keystores.
This PR adds 2 examples that work as long as you have Ledger plugged in, unlocked, and the Starknet app open. Test with:
Major caveats of the current implementation:
Account
andAccountFactory
still hold the assumption that all signers are non-interactive, and would request signatures even just for fee estimation; this results in excessive signing prompts on the Ledger device; (update: implemented in feat: signer interactivity #617)DerivationPath
.That said, if anyone wants to start using it from this PR, they totally can and it's 100% functional :)