-
Notifications
You must be signed in to change notification settings - Fork 19
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
Problem: Solana wallet couln't be used to control the VM #700
Conversation
bbbbbab
to
e4964be
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks good overall !
Small comments regarding the use of Enums and best practices for optional imports.
The dependencies pulling qrcode
and pillow
seem a bit overkill but well 🙄 ...
Thanks for the review I will make the correction. I can try porting using Solder if you want, should have less deps. |
1bfbee3
to
1081f84
Compare
3d9518a
to
4b8abfb
Compare
Codecov ReportAttention: Patch coverage is
Additional details and impacted files@@ Coverage Diff @@
## main #700 +/- ##
==========================================
+ Coverage 62.18% 62.35% +0.17%
==========================================
Files 69 69
Lines 6079 6128 +49
Branches 643 646 +3
==========================================
+ Hits 3780 3821 +41
- Misses 2147 2154 +7
- Partials 152 153 +1 ☔ View full report in Codecov by Sentry. |
Had do ignore since mypy expect a DataClassIstance that don't exist
1ecbe8a
to
0fb7f7b
Compare
Add Solana authentication method for the VM operator endpoint.
First version on how to implement this. It is the same method as with Ethereum using an ephemeral key, but that key is signed with Solana private key instead of Ethereum.
On the SignedPubKeyPayload a
chain
argument that can be eitherETH
orSOL
so we know which chain signing method to validate against. It default to ETH as to remain backward compatible with current client implementations.Also added a docstring on the
require_jwk_authentication
decorator.Related Jira tickets : ALEPH-50
Self proofreading checklist
How to test
Not really much to test as the client part (Python/ web) is not developed yet. So you will have to rely on the tests.
Print screen / video
N/A
Notes
This add the new dependency Solathon to sign and validate the signature via a Solana wallet, it itself use the nacl.sign module (which is a binding on top of libsodium). An alternative would be to use the Solders lib which is running in rust. The API we use is quite small. So it shouldn't be much trouble to port from one to the other.