diff options
| author | Adam Soltys <[email protected]> | 2026-06-24 15:06:26 -0700 |
|---|---|---|
| committer | Adam Soltys <[email protected]> | 2026-06-24 15:06:26 -0700 |
| commit | bdc5779b425151f47a4f5c93566a9f40f952428d (patch) | |
| tree | 0cfc95ac751f0d857d8d4ec2322fe29142c77aa0 /src/i18n.js | |
| parent | c81616ed0024c0cec693b552de5c5b6d7056eff3 (diff) | |
| download | coinosv3-bdc5779b425151f47a4f5c93566a9f40f952428d.tar.gz coinosv3-bdc5779b425151f47a4f5c93566a9f40f952428d.zip | |
Add optional password-encrypted persistence for full accounts
Per-account "Save on this device" encrypts a seed account into a
localStorage vault (scrypt KDF + XChaCha20-Poly1305 via @noble), so it
survives a browser close. On reopen, a vault prompt unlocks all saved
wallets with the password (or "Use another wallet" to skip). Default
stays session-only; the password is held only in memory for the session
and re-encrypts on save/forget. Wrong password fails closed (AEAD).
Adds @noble/ciphers dependency. New strings translated across all 19
locales.
Co-Authored-By: Claude Opus 4.8 (1M context) <[email protected]>
Diffstat (limited to 'src/i18n.js')
| -rw-r--r-- | src/i18n.js | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/src/i18n.js b/src/i18n.js index f75e014..9a48796 100644 --- a/src/i18n.js +++ b/src/i18n.js @@ -49,6 +49,23 @@ const STR = { labelOptional: 'Label (optional)', walletLabelN: 'Wallet {n}', watchLabelN: 'Watch {n}', + saveDevice: 'Save on this device', + forgetDevice: 'Saved · forget', + savedTag: 'saved', + setPassword: 'Set a password', + setPasswordDesc: 'Encrypts this wallet on this device. You will need it to unlock saved wallets later.', + enterPassword: 'Enter your password', + enterPasswordDesc: 'Unlock your saved wallets to continue.', + password: 'Password', + confirmPassword: 'Confirm password', + pwTooShort: 'Use at least 8 characters.', + pwMismatch: 'Passwords do not match.', + pwWrong: 'Wrong password.', + unlockSaved: 'Unlock saved wallets', + unlockSavedDesc: 'Enter your password to open the wallets saved on this device.', + unlock: 'Unlock', + useAnotherWallet: 'Use another wallet', + save: 'Save', publicKey: 'Public key', publicKeyDesc: 'Share this to watch this wallet read-only on another device or app. It reveals your addresses, not your keys.', copyKey: 'Copy key', |
