-
Notifications
You must be signed in to change notification settings - Fork 35
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
feat: store account authentication information separate from client information #637
Comments
cc @dagarcia7 - this is something we chatted briefly about today. |
Regarding this issue, I think the most straightforward solution would be to decouple the authentication data from the Additionally, I would remove the secret key requirement from |
Largely agree. I think I would start with removing authentication related methods from the
I would probably start with something very simple - more like a PoC rather than a robust authenticator (e.g., I wouldn't worry about encrypting things just yet). I would think about this more like an authenticator that could be used by the CLI rather than something more general. It could even be file system-based. For example, we could store public-private key pairs in some directory and the authenticator would just read them from there.
As mentioned above, I agree with removing secrete key parameter from |
Yes, I agree that it should be as simple as possible at first.
I started working on this and realized that this would only work for the CLI and other std uses of the client but not for the web client. The web client will probably need a separate implementation that's compatible with wasm.
Oh ok, I think I understand. So the client should only use the authenticator for signatures. The responsibility of storing the private keys for every new account will fall on the user of the client (for example, the CLI binary). |
Yes, exactly. We can even provide some default implementations that work in
Correct, but I think WebClient may be using some custom implementation of the authenticator already (which uses the store as initial key repository). |
Apart from using it to sign transactions, some of the other places where we currently use the
|
Another option could be to move the responsibility of building the
Yes, I think this should be fine.
Agreed - that's how I think it should work long-term (or maybe even relatively soon). I actually think it would be great if we could move most (all?) of this logic to |
Currently all the authentication information is stored in the client's
Store
and accessed viaget_account_auth_by_pub_key
.Stemming from #631 (comment) we should try to remove the responsibility of tracking authentication information from the
Store
and move it directly to the authenticator. Auth information may be stored in a separate database or file.The text was updated successfully, but these errors were encountered: