Description
In the security section, when "exporting backup keys", we now export a json format that besides storing the plain mnemonic also stores each unencrypted private key. So that when the user attempts to recover these keys they will get encrypted with the new password and be updated on the backend.
For existing files the account recoery remains the same, meaning that if the json.parse fails we fallback to interpreting the file as the plain mnemonic
Related Issues
Related Pull Requests
Checklist
- Changes have been tested locally.
- Unit tests have been written or updated as necessary.
- The code adheres to the repository's coding standards.
- Relevant documentation has been added or updated.
- No new warnings or errors have been introduced.
- SonarCloud issues have been reviewed and addressed.
- QA Passed
How Has This Been Tested?
How Has This Been Tested
-
Export Backup Key from Settings:
- Navigate to the Preferences -> Security.
- Export the backup key file saving it locally.
-
Account Recovery Process:
- Go to the login screen.
- Click on the "Forgot Password" link.
- Follow the prompts to recover the account using the exported backup key file.
- Verify that the account recovery process completes successfully and that the account is accessible.
-
Testing with Legacy Backup Files:
- Obtain a legacy backup file or edit it to match the legacy format (only contains plain mnemonic text).
- Repeat the account recovery process:
- Go to the login screen.
- Click on "Forgot Password."
- Attempt to recover the account using the legacy backup file.
- Confirm that the recovery process works as expected with the legacy backup file.
All these steps can only be tested with the changes being introduced in internxt/drive-server-wip/pull/506