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

Improve wallet login by introducing a user password #2600

Closed
mmsinclair opened this issue Jan 4, 2022 · 2 comments
Closed

Improve wallet login by introducing a user password #2600

mmsinclair opened this issue Jan 4, 2022 · 2 comments
Assignees

Comments

@mmsinclair
Copy link
Contributor

mmsinclair commented Jan 4, 2022

Currently it requires the mnemonic every time, it would be nice if the user had an option to save the generated key and protect it with a password

@fmtabbara fmtabbara self-assigned this Jan 14, 2022
@fmtabbara fmtabbara changed the title Improve wallet login. Currently it requires the mnemonic every time, it would be nice if the user had an option to save the generated key and protect it with a password. Improve wallet login by introducing a user password Jan 18, 2022
@mmsinclair
Copy link
Contributor Author

@jstuczyn I was thinking you could use https://docs.rs/rust-crypto/0.2.36/crypto/pbkdf2/fn.pbkdf2.html to generate a symmetrical key from a password. An RSA encryption key would be randomly created from an IV that would be encrypted with the pbkdf2 key and written as a fixed length byte buffer to disk. The RSA key would encrypt the mnemonic and that would be written after the encrypted IV.

It would be worth wrapping it in JSON (you can split out the encrypted IV and payload) and base64 the cyphertext.

{ format_version: 1, iv: ..., payload: ... }

@mmsinclair mmsinclair assigned jstuczyn and unassigned MarcinSN Jan 21, 2022
@mmsinclair
Copy link
Contributor Author

@futurechimp futurechimp assigned octol and unassigned jstuczyn Feb 3, 2022
@futurechimp futurechimp transferred this issue from another repository Dec 12, 2022
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

No branches or pull requests

5 participants