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

Replace AppSettings with an Encrypted sqlite instance #5

Open
kngako opened this issue Mar 29, 2022 · 1 comment
Open

Replace AppSettings with an Encrypted sqlite instance #5

kngako opened this issue Mar 29, 2022 · 1 comment

Comments

@kngako
Copy link
Collaborator

kngako commented Mar 29, 2022

The kotlin android app used encrypted Android preferences to store the user PIN. Since this isn't multiplatform we could more easily create encrypted sqlite instance on the user device to store user preferences like PINs and such. This would help keep the pin management logic multiplatform.

@tomastiminskas
Copy link
Collaborator

Just to clarify, the encrypted Android preferences are used to store:

  • Public and Private encryption keys
  • Relay Url and Authentication Token
  • Relay Transport key and HMac signing key (recently implemented)

All those items and some others are stored after being encrypted using the 6 digits PIN (symmetric encryption), but the PIN is not stored. When authenticating user will enter his PIN and it will be use to try to decrypt the encryption keys stored on shared preferences. If this action success then user is logged, otherwise it's not.

This can be replaced by a encrypted sqlite instance as suggested in the ticket

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

2 participants