-
Notifications
You must be signed in to change notification settings - Fork 987
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
[Fixes #9088] Store eip1581 path #9096
Conversation
Pull Request Checklist
|
Jenkins BuildsClick to see older builds (24)
|
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.
LGTM
68354f0
to
c51b70a
Compare
@guylouis @dmitryn I am not able to test this change on keycard accounts as I don't own one. Is that correct or I misunderstand something? @churik are you able to test creating/recovering an account and generating new wallets (in both cases) on this? |
c51b70a
to
c4ec970
Compare
96% of end-end tests have passed
Failed tests (2)Click to expand
Passed tests (45)Click to expand |
OFC, on it! |
It seems as though this was prematurely approved without testing out keycard. Am I misreading that? If that is the case, maybe a label like |
Tested on Android 8:
All cases work fine for me. |
@corpetty we have such label |
@corpetty I think there's some confusion on the workflow:
In terms of testing, up until last week all PRs went through manual QA, and I believe we add a label when manual QA is required. This one does not really need manual QA, other than someone needs to validate that it works with keycard, as specified in the comment (any developer can do). @churik thanks, I'll wait for either @yenda or @flexsurfer to approve then is ready to merge. |
Does it means that a second account created with keycard will be different than one created with the same multiaccount without keycard? |
@yenda No it should not, the path is identical, But best to check that is the case: @churik would you mind doing a test please if you have some time?
Thanks! |
mmh turns out that they do seem to differ (I tried with a pre this commit and this commit, not on keycard), it might be that the path is relative to the key, let me check |
c4ec970
to
a786f2a
Compare
@yenda turns out we need to use the relative path, so if deriving from @churik could you have a look at the test with keycard when you have some time? It should show identical wallet addresses now. |
It shouldn't be possible according to #9062 (comment)
Due to #9019 it is not possible for now So can't help here. |
@cammellos |
@guylouis No, I think it's fine, as one functionality is not supported (restore same account with keycard), and the other is not implemented yet (add multiple wallets with keycard). |
@cammellos could you summarize why so many changes? I thought we just want to store an encryption key in this PR? |
(if error | ||
(re-frame/dispatch [::generate-new-account-error]) | ||
(let [path (str constants/path-root "/" path-num)] | ||
(fn [{:keys [derivation-info |
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.
just wondering why keys in a column and not in a row?
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.
i like columns :) but i can put them on a row, np
@flexsurfer that was he initial idea, but turns out we were also storing the master key on disk, which we should not have ( after a discussion with @corpetty), so I have changed the behaviour to store the root wallet key instead. It is explained as well in the issue |
d179a17
to
ba34af0
Compare
master key When creating the account we store as well the path specified in eip1581 https://github.com/ethereum/EIPs/blob/master/EIPS/eip-1581.md , `m / 43' / 60' / 1581'`. The reason for doing so is that eventually we might want to derive an encryption key from it, which would require the user to re-enter their seed phrase if we would not store this. This commit changes the behavior not to store the master key, and instead store `m /44'/60' /0'/0`, from which wallets are now derived. Signed-off-by: Andrea Maria Piana <andrea.maria.piana@gmail.com>
When creating the account we store as well the path specified in eip1581
https://github.com/ethereum/EIPs/blob/master/EIPS/eip-1581.md ,
m / 43' / 60' / 1581'
.The reason for doing so is that eventually we might want to derive an
encryption key from it, which would require the user to re-enter their
seed phrase if we would not store this.
This commit changes also the behavior not to store the master key, and instead store the key at
m /44'/60' /0'/0
from which wallets can be derived.I could not test on keycard as I do not own one.
status: ready