Repository navigation
Conversation
…versions avoid converting in getXpub which is only used to verify address and convert to xpub/tpub device format inside signing, while when importing convert to zpub/vpub for backend/display format
SYSCOIN‑PALI2025‑007 (too-fast SHA512/HMAC, single iteration): fixed because we're no longer doing a single fast hash; we're doing 100k/120k PBKDF2 iterations. SYSCOIN‑PALI2025‑001 (xprv decryptable using stored hash): fixed because the stored value (vault-keys.hash from encryptSHA512Auth) is not the same key used to encrypt xprv (encryptSHA512 session key), and the session key is not stored.
more secure storage in blob using aes-gcm and use derived session key for all vault enc/dec
testnet failure was because test app wasn't used, hardened to fetch xpub from device instead of recreating in software derviation
recreate web3 provider if its not synced with active network, currently it was assuming and never did a reinit
xpub will be missing for some hw wallets potentially so set evm signer and just log a warning
This reverts commit e902bb1.
Preserve BIP84 public key versions for imported extended accounts and enrich Syscoin PSBT paths so imported zpub/vpub accounts can sign reliably. Remove zkSync-specific EVM transaction paths now that zkTanenbaum uses standard EVM handling. Co-authored-by: Cursor <cursoragent@cursor.com>
Fix imported zpub signing and remove zkSync handling
Co-authored-by: Cursor <cursoragent@cursor.com>
|
Closing because this was opened against the wrong repository. Reopening against sidhujag/sysweb3, which is the official target for this change. |
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 642f17b964
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
|
|
||
| // v4 vault is encrypted with the derived session password key (PBKDF2 output). | ||
| // If the password is wrong, this will throw and we return canLogin:false below. | ||
| await getDecryptedVault(sessionPasswordKey); |
There was a problem hiding this comment.
Handle legacy vaults before v4 decrypt
For existing wallets created by the previous initializeSession, vault-keys contains only hash and salt while the vault itself was encrypted with the raw password, not the new PBKDF2 sessionPasswordKey; those users do not enter the currentSessionSalt migration branch, so this decrypt attempt throws and unlock() returns canLogin: false. Add a fallback/migration path for the raw-password vault shape before requiring v4 decryption, otherwise upgraded users are locked out.
Useful? React with 👍 / 👎.
Summary
sysweb3-keyring.Review context
Test plan
lint-stagedran on the staged TypeScript files during commit.Made with Cursor