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

Encrypt storage of mnemonic #3189

Open
smaroudasunicorn opened this issue Jul 18, 2024 · 7 comments · Fixed by #3275 or #3280 · May be fixed by #3231
Open

Encrypt storage of mnemonic #3189

smaroudasunicorn opened this issue Jul 18, 2024 · 7 comments · Fixed by #3275 or #3280 · May be fixed by #3231
Assignees

Comments

@smaroudasunicorn
Copy link
Collaborator

smaroudasunicorn commented Jul 18, 2024

STORY: Superhero Wallet mnemonic storage should be securely encrypted on user's device both for the browser extension and for the mobile apps.

Research and suggestion (by @onvisions ) As far as I have researched several other crypto wallets they usually have password option for accessing web and browser extension and biometric/PIN authentication to access the mobile apps.

Based on that I think that introducing both password and biometric/PIN authentication (on mobile) will be an overkill and it will require more complex logic on mobile. Instead I suggest to have:

  1. Secure login with Password for web wallet and browser extension.
  • Setting a password will be required during creation of new wallet or import of existing one;
  • Users who already have installed the wallet will be informed about the wallet being updated to a new version with upgraded security and that they need to set a password (modal to set pass before proceeding to Dashboard);
  • For security reasons the password is mandatory. It cannot be turned off;
  • The user will be able also to set lock up inactivity period; Default is 5 mins.
  1. Secure login via default mobile device authentication method (biometric/PIN). This one we should already have implemented. I think we don't need anything else on mobile unless I'm missing something here.
    The user is able to set different lock up intervals for the wallet and the device screen so that for example the Superhero wallet is locked immediately and the device screen after 15 mins. which gives good control over the desired behavior.

DESIGN:

1. Set Password

Image
Image
Image
Image
Image
Image
Image
Image
Image
Image
Image

..........................................................................................

2. Upgraded Security Modal. Set password.

Image
Image
Recording: https://github.com/user-attachments/assets/80ba40ce-f1d8-4de6-8613-b0eba742e0ad

..........................................................................................

3. Unlock with password

Image
Image
Image
Image
Image
Image
Image

..........................................................................................

4. Seetings: lock time interval, reset password

Auto-lock Interval:

Image
Image
Image
Image

Change your password:

Image
Image
Image
Image
Image
Image
Image

..........................................................................................

5. Update of wording needed:

Image

Image

Image

Image

FIGMA REFERENCE: https://www.figma.com/design/3oGLWzSH0oJljo4RETZtur/Superhero-Wallet-UI-(%E2%9C%94%EF%B8%8FUpdated)?node-id=33455-217248&t=yNhx5Cr7FQ1SiG9h-0

@smaroudasunicorn
Copy link
Collaborator Author

In the seed phrase screen we need to write that seed phrase is store encrypted.

@smaroudasunicorn
Copy link
Collaborator Author

We set the password only for web and extension, it will be mandatory option.

We keep lock timer but we cannot disable Secure Login.

@smaroudasunicorn
Copy link
Collaborator Author

For users upgrading the app they have to be prompted to set a password.

@onvisions
Copy link
Collaborator

onvisions commented Sep 17, 2024

@martinkaintas @peronczyk @smaroudasunicorn

  1. As discussed adding manual "Lock wallet" feature allowing the user to lock the wallet immediately from the "More" screen.

Design:

Image

Figma reference:
https://www.figma.com/design/3oGLWzSH0oJljo4RETZtur/Superhero-Wallet-UI-(%E2%9C%94%EF%B8%8FUpdated)?node-id=31920-193173&node-type=frame&t=9seIxZoOgv2mi7mz-0

  1. Additionally (as another low hanging fruit) I'm suggesting to add a default non-transparent background during locked wallet state. Thus there will be no security compromised as nothing will be loaded behind the overlay while the wallet is locked. At the same time it's a pure visual improvement from current blurred state (that looks broken from time to time).

Design:

Image
Image
Image

Figma reference:
https://www.figma.com/design/3oGLWzSH0oJljo4RETZtur/Superhero-Wallet-UI-(%E2%9C%94%EF%B8%8FUpdated)?node-id=33640-210784&node-type=frame&t=9seIxZoOgv2mi7mz-0

@peronczyk peronczyk self-assigned this Sep 19, 2024
@smaroudasunicorn
Copy link
Collaborator Author

I am ok with the proposal

@Liubov-crypto
Copy link
Collaborator

Liubov-crypto commented Oct 4, 2024

  1. Terms page is empty:

terms

Also if I'm opening it in extension there is no way to go back to the login page, I have to remove extension and install it once again.

  1. Haven't we added Pair Airgap on the login page?

f

  1. A little bit smaller pic inside an icon compared to design:

ic

  1. Probably not our issue but I'm wondering, why there are white fields after I saved my password in Chrome?

white fields
pas

  1. Caps lock feature is missing:

CAPS

  1. According to Figma password must be at least 8 characters long, but we have 4. Is it correct?

4

  1. After I changed my old password to the new one the header is missing and it seems that both passwords are not working when I'm trying to enter the wallet:
2024-10-04.1.07.54.mov

inc pass

In extension the header is present, but after I changed my password wallet is in endless update status and there is not possible to enter password. It seems broken too:

endless

@Liubov-crypto
Copy link
Collaborator

  1. The icon is different compared to Figma design:

lock

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment