Commit Graph
163 Commits
Author SHA1 Message Date
Moudy 4690ca56cc fix: remove epoch and ratcheting, fix PDA identifier 2026-04-30 16:34:26 +02:00
Moudy 4c28133448 fix: resolve merge conflicts 2026-04-30 15:04:33 +02:00
Moudy f375a35929 fix: address PR review feedback
- Add SealingPublicKey/SealingSecretKey type aliases for seal_for/unseal
- Generalize PrivateGroupPda to PrivatePda with pre-resolved keys
- Rename group_pda_spender to private_pda_spender
- Rename group_pda_accounts to pda_accounts with serde alias
- Remove unused storage_mut()
- Remove stale group_pda_router.bin artifact
2026-04-30 09:11:08 +02:00
Moudy 460d7e7fd2 fix: fmt 2026-04-29 14:54:24 +02:00
Moudy 198eac1cf1 refactor: address PR #449 review feedback 2026-04-29 10:11:37 +02:00
Moudy 9927e6e690 fix: rebuild artifacts 2026-04-27 14:37:15 +02:00
Moudy 48f95b1b7a feat: add GroupKeyHolder storage and PrivateGroupPda wallet variant 2026-04-27 02:43:51 +02:00
Moudy f3215606fb feat: add GroupKeyHolder with per-PDA derivation, epoch ratchet, and seal/unseal 2026-04-27 02:43:26 +02:00
Sergio Chouhy 584bfb2052 clippy 2026-04-24 00:42:54 -03:00
Sergio Chouhy 6f9c3b2af3 fmt 2026-04-24 00:37:36 -03:00
Sergio Chouhy 9c90a6d182 remove unused impl 2026-04-24 00:36:25 -03:00
Sergio Chouhy e19c9ff20a return impl iterator 2026-04-24 00:04:22 -03:00
Sergio Chouhy 4719b1265a replace typedef with struct 2026-04-23 23:44:31 -03:00
Sergio Chouhy 9d2abc76a1 fix tests 2026-04-21 22:39:14 -03:00
Sergio Chouhy 42842dfbb1 clippy 2026-04-20 22:07:03 -03:00
Sergio Chouhy 7ccd6ae331 wip 2026-04-20 11:27:15 -03:00
Sergio Chouhy 6316f59777 fmt 2026-04-19 23:13:51 -03:00
Sergio Chouhy c43418721e remove unused methods 2026-04-19 23:13:33 -03:00
Sergio Chouhy a42144cb3c minor refactor. update ffi 2026-04-17 19:45:30 -03:00
Sergio Chouhy b34e301023 rollback and remove identifier arguments in new private account wallet command 2026-04-17 14:26:50 -03:00
Sergio Chouhy f28ac0f092 return account id on new private account creation 2026-04-17 12:52:07 -03:00
Sergio Chouhy 4c050f35dd refactor private key tree to store a vec<(Identifier, AccountId)> 2026-04-16 03:03:13 -03:00
Sergio Chouhy 0ecec7016e refactor key trees 2026-04-15 23:34:49 -03:00
Sergio Chouhy 985f610cea wip 2026-04-15 15:42:04 -03:00
Sergio Chouhy dae617c673 wip: add dummy identifier 2026-04-14 18:02:38 -03:00
r4bbit 3e24ae2736 fix(wallet): use cryptographically secure entropy for mnemonic generation
The mnemonic/wallet generation was using a constant zero-byte array for entropy ([0u8; 32]), making all wallets deterministic based
solely on the password. This commit introduces proper random entropy using OsRng and enables users to back up their recovery phrase.

Changes:

- SeedHolder::new_mnemonic() now uses OsRng for 256-bit random entropy and returns the generated mnemonic
- Added SeedHolder::from_mnemonic() to recover a wallet from an existing mnemonic phrase
- WalletChainStore::new_storage() returns the mnemonic for user backup
- Added WalletChainStore::restore_storage() for recovery from a mnemonic
- WalletCore::new_init_storage() now returns the mnemonic
- Renamed reset_storage to restore_storage, which accepts a mnemonic for recovery
- CLI displays the recovery phrase when a new wallet is created
- RestoreKeys command now prompts for the mnemonic phrase via read_mnemonic_from_stdin()

Note: The password parameter is retained for future storage encryption but is no longer used in seed derivation (empty passphrase is used
 instead). This means the mnemonic alone is sufficient to recover accounts.

Usage:

On first wallet initialization, users will see:
IMPORTANT: Write down your recovery phrase and store it securely.
This is the only way to recover your wallet if you lose access.

Recovery phrase:
  word1 word2 word3 ... word24

To restore keys:
wallet restore-keys --depth 5
Input recovery phrase: <24 words>
Input password: <password>
2026-04-01 16:04:47 +02:00
jonesmarvin8 ffcbc15972 Issue 258 - remove secp256k1 for k256 (#399)
* initialize branch

* fix signatures to use k256

* fixed error

* lint fix

* lint fix

* clippy fixes

* clippy
2026-03-30 17:15:25 -04:00
Pravdyvy 9c90930bd6 Merge branch 'main' into Pravdyvy/hardcoded-initial-state 2026-03-20 14:55:42 +02:00
Daniil Polyakov 7b20a83379 fix: fixes after rebase & address comments 2026-03-20 00:48:04 +03:00
Daniil Polyakov b631ef02c6 fix: final fixes & polishing 2026-03-20 00:47:37 +03:00
Daniil Polyakov b254ebb185 feat: refactor sequencer RPC client-side 2026-03-20 00:41:05 +03:00
Pravdyvy dc3650edd7 Merge branch 'main' into Pravdyvy/hardcoded-initial-state 2026-03-19 19:02:19 +02:00
Pravdyvy afa0a63c95 fix: suggestions fix 2 2026-03-19 18:01:15 +02:00
Daniil Polyakov c40c62a484 fix: satisfy clippy 2026-03-19 18:03:23 +03:00
jonesmarvin8 83ef789002 lint issues 2026-03-18 18:44:07 -04:00
jonesmarvin8 4fdefd3557 fix typo 2026-03-18 16:53:07 -04:00
jonesmarvin8 ce729f112d Merge branch 'main' into marvin/bip-32-comp 2026-03-18 16:47:39 -04:00
Pravdyvy a0ab6ad92d fix: lint fix 2026-03-18 18:32:05 +02:00
Pravdyvy 5ab7d40727 Merge branch 'main' into Pravdyvy/hardcoded-initial-state 2026-03-18 18:18:52 +02:00
Daniil Polyakov 252848a145 feat: update rust to 1.94.0 2026-03-17 21:25:30 +03:00
Daniil Polyakov aa462b66eb feat: add nursery clippy lints 2026-03-17 21:25:30 +03:00
Daniil Polyakov e3b93b6e9a feat: add restriction clippy lints 2026-03-17 21:25:30 +03:00
Daniil Polyakov efe8393ba0 feat: add pedantic clippy lints 2026-03-17 21:25:30 +03:00
Daniil Polyakov 756f2f4135 feat: add workspace lints to every crate 2026-03-17 15:13:44 +03:00
Pravdyvy b5afcba4c4 fix: moved constants into consts 2026-03-16 17:02:22 +02:00
Pravdyvy 02953999aa feat: general initial state 2026-03-13 18:23:39 +02:00
jonesmarvin8 b1747548b2 fix nullifer typo 2026-03-09 12:23:57 -04:00
jonesmarvin8 1cfc710024 Merge branch 'main' into marvin/bip-32-comp 2026-03-09 05:23:24 -04:00
Daniil Polyakov 0aec6028f6 fix: remove unused serde_json dev-dependency from key_protocol 2026-03-05 21:14:25 +03:00
Pravdyvy 4950c1277c fix: suggestions fix 2026-03-05 17:25:53 +02:00