160 Commits

Author SHA1 Message Date
r4bbit
a3983f5a89
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-02-17 13:06:38 +01:00
Sergio Chouhy
177235a2c7 add prove feature 2026-02-16 12:28:31 -03:00
Sergio Chouhy
26d6286b8c revert prove feature 2026-02-16 11:52:31 -03:00
Sergio Chouhy
2954faa5ec add prove feature 2026-02-16 11:34:58 -03:00
Daniil Polyakov
85d2a13148 chore: update keccak 2026-02-14 00:48:39 +03:00
Daniil Polyakov
8b16318c38 fix: use base58 encoding for account in Explorer & some formatting chores 2026-02-14 00:23:34 +03:00
Daniil Polyakov
9bf3edbaad chore: remove risc0-zkvm dep from wallet 2026-02-12 16:39:23 +03:00
Daniil Polyakov
60be2b6d00 chore: satisfy CI 2026-02-12 16:31:34 +03:00
Daniil Polyakov
975cfb9ec6 feat: fully integrate Sequencer, Indexer and Explorer with Bedrock 2026-02-12 16:31:13 +03:00
jonesmarvin8
d40232abcc Merge branch 'main' into marvin/refactor-amm-program 2026-02-11 19:05:16 -05:00
jonesmarvin8
68254a835d fix license for amm and machete issue 2026-02-10 20:54:42 -05:00
jonesmarvin8
7c930415a6 Merge branch 'main' into marvin/public_keys 2026-02-10 20:31:02 -05:00
jonesmarvin8
0930e4dd86 Merge branch 'main' into marvin/refactor-amm-program 2026-02-10 20:28:13 -05:00
Daniil Polyakov
72c45be083 feat: implement Explorer 2026-02-11 02:06:40 +03:00
jonesmarvin8
f891f57cab Merge branch 'main' into marvin/public_keys 2026-02-10 09:19:45 -05:00
danielSanchezQ
042854653c Merge branch 'main' into feat/nixify
# Conflicts:
#	wallet-ffi/wallet_ffi.h
2026-02-10 12:38:04 +00:00
Sergio Chouhy
01d33788e5 update time dep 2026-02-09 10:09:55 -03:00
Daniil Polyakov
9909f02803 refactor: split token program into crates 2026-02-06 00:08:43 +03:00
Sergio Chouhy
2fc1ec0fdc Merge branch 'main' into schouhy/add-wallet-ffi-tests 2026-02-04 20:48:36 -03:00
Sergio Chouhy
7c3182d903 add wallet ffi get private keys test 2026-02-04 15:29:36 -03:00
Sergio Chouhy
2b07c02129 update bytes to v1.11.1 2026-02-04 09:42:56 -03:00
Sergio Chouhy
50b253fa00 move ffi tests to integration tests 2026-02-03 19:07:13 -03:00
Sergio Chouhy
629a3d1ef6 scaffolding 2026-02-03 19:07:13 -03:00
David Rusu
38f1f68030 feat(license): MIT/Apache2 license and add cargo deny config 2026-01-31 23:13:36 +04:00
danielSanchezQ
45a4063aea Merge branch 'main' into dsq/wallet-ffi
# Conflicts:
#	Cargo.lock
#	Cargo.toml
2026-01-30 10:39:25 +00:00
Sergio Chouhy
de54744893 use own type MantleMsgId 2026-01-29 15:21:15 -03:00
Sergio Chouhy
22258435ff Merge branch 'main' into schouhy/sequencer-retries-pending-blocks 2026-01-29 10:13:22 -03:00
Sergio Chouhy
c606e7fe75 Merge branch 'main' into schouhy/sequencer-retries-pending-blocks 2026-01-28 14:39:53 -03:00
Pravdyvy
e6b603ba44 Merge branch 'main' into Pravdyvy/block-parsing-validation 2026-01-28 05:32:03 +02:00
jonesmarvin8
19a53ed44e Merge branch 'main' into marvin/refactor-amm-program 2026-01-27 18:28:36 -05:00
jonesmarvin8
1dd0f16a5c fixed edge case 2026-01-27 16:19:56 -05:00
Pravdyvy
c0e879edae fix: suggestions fix 1 2026-01-27 09:46:31 +02:00
Pravdyvy
4c4e30864b fix: dep updated, merge fix 2026-01-27 08:13:53 +02:00
Pravdyvy
516feee101 Merge branch 'main' into Pravdyvy/block-parsing-validation 2026-01-27 07:57:41 +02:00
Sergio Chouhy
fe4a89191c add state to rocksdb 2026-01-27 01:20:17 -03:00
Daniil Polyakov
2288a725d2 feat: implement indexer service skeleton 2026-01-26 23:31:28 +03:00
Sergio Chouhy
e897fd6076 fix parent when resubmitting pending blocks 2026-01-26 14:51:39 -03:00
Sergio Chouhy
ded6e8123d Merge branch 'main' into schouhy/adapt-sequencer-to-bedrock 2026-01-26 11:38:42 -03:00
Sergio Chouhy
eaab2e042a
Merge pull request #270 from logos-blockchain/Pravdyvy/indexer-client
Bedrock client adoption
2026-01-26 11:03:07 -03:00
Daniel
272cbfe400 Remove unused dependency once_cell from Cargo.toml 2026-01-26 10:43:53 +01:00
jonesmarvin8
15d78527fe fixed fmt 2026-01-23 16:35:18 -05:00
Pravdyvy
505e653ff0 fix: machete update 2026-01-23 10:54:32 +02:00
Pravdyvy
df58511bf0 Merge branch 'main' into Pravdyvy/block-parsing-validation 2026-01-23 10:49:16 +02:00
Pravdyvy
9896cd3767 fix: updates, added test 2026-01-23 10:39:34 +02:00
Daniil Polyakov
652be426ae refactor: split token program into crates 2026-01-23 00:53:21 +03:00
Pravdyvy
2a2fe1347a fix: new model rewrite 2026-01-22 14:44:48 +02:00
Sergio Chouhy
f04b299b1a minor changes 2026-01-21 11:47:28 -03:00
Daniel
17b36b924e Vibecoded wallet-ffi 2026-01-21 15:22:38 +01:00
Pravdyvy
eb77217318 fix: suggestions 1 2026-01-21 14:50:29 +02:00
Pravdyvy
66d01d69d7 fix: dep fix 2026-01-20 10:26:22 +02:00