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

Save seed & birthday in keychain (IOS) keystore (Android) #656

Open
wants to merge 20 commits into
base: dev
Choose a base branch
from

Conversation

juanky201271
Copy link
Contributor

@juanky201271 juanky201271 commented Jun 18, 2024

on top of: #675

  • Keystore (Android) - when you uninstall the App you lost the info inside of Keystore. With AES & CBC encryption or RSA encryption only available with Strong (level 3) Biometry method.
  • Keychain (IOS) - when you uninstall the App the info inside of Keychain persist. With Standard IOS keychain encryption or using Secure Enclave only available with any Biometry method.

How works:

  1. New option in settings, Enabled by default. Also there is a Legend at the end on this screen explaining what is store in KeyStore or KeyChain.
  2. The App always store the last seed & birthday used.
  3. The App don't store anything if you use an UFVK,
  4. When you disable this option, the App immediately remove that info from the KeyStore/KeyChain.
  5. IOS - When you install the App, it can recover the Seed & birthday if previously the App was installed before. In IOS this info is persistent.
  6. Android - When you uninstall de App, the keyStore info is removed as well.
  7. In the first screen, there is a new right menu option to recover the seed & birthday from the device.

We have two use cases to Store the recovery info (seed & birthday):

  1. Really Safe: require active Biometrics method in the device: any for IOS [Keychain Secure Enclave] and strong (level 3) for Android [RSA].
  2. Safe: no active Biometrics method in the device: IOS [Keychain] and Android (AES & CBC).

@juanky201271 juanky201271 linked an issue Jun 18, 2024 that may be closed by this pull request
@juanky201271 juanky201271 self-assigned this Jun 19, 2024
@juanky201271 juanky201271 force-pushed the dev_RN_keychain_keystore_saving_wallet_keys branch from 3122b51 to d9e4026 Compare June 19, 2024 22:58
@juanky201271 juanky201271 force-pushed the dev_RN_keychain_keystore_saving_wallet_keys branch 2 times, most recently from 3d54da3 to 7b6ce4a Compare August 13, 2024 23:52
@juanky201271 juanky201271 marked this pull request as ready for review August 16, 2024 21:58
@juanky201271 juanky201271 marked this pull request as draft August 16, 2024 23:42
@juanky201271 juanky201271 marked this pull request as ready for review August 17, 2024 19:11
@juanky201271 juanky201271 force-pushed the dev_RN_keychain_keystore_saving_wallet_keys branch from d16b2ce to 4e68a70 Compare September 9, 2024 14:56
@juanky201271 juanky201271 force-pushed the dev_RN_keychain_keystore_saving_wallet_keys branch from 0d46041 to 02ff05e Compare September 15, 2024 20:12
@juanky201271 juanky201271 force-pushed the dev_RN_keychain_keystore_saving_wallet_keys branch from 02ff05e to 2036177 Compare September 20, 2024 20:18
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

Successfully merging this pull request may close these issues.

We need to preserve the seed phrase inside the device somehow.
2 participants