3125 Commits

Author SHA1 Message Date
Artem Gureev
131ed6d025 fix(wallet): locate shared-account spends by their update nullifier 2026-07-28 22:00:17 +04:00
agureev
b5d5d862af chore: regenerate artifacts 2026-07-28 16:14:06 +04:00
Artem Gureev
7a80ab026d refactor!(lee_core): bump the note-encryption KDF domain to v0.3
BREAKING!

Before: note encryption KDF used 0.2 tag

After: now uses 0.3 tag

Mitigation: cipher keygen needs to utilize 0.3 tag after this commit
2026-07-28 16:13:14 +04:00
agureev
8cebe109fe chore: regen artifacts, fixtures 2026-07-28 11:13:47 +00:00
Artem Gureev
626ba01449 test: order-independent output assertions + wrong-nullifier decrypt 2026-07-28 11:13:19 +00:00
agureev
a4805382bd chore: format, regenerate artifacts and fixtures 2026-07-28 11:12:52 +00:00
Artem Gureev
899ee34989 refactor(wallet): route note decryption through decrypt_note_at 2026-07-28 11:12:21 +00:00
Artem Gureev
590ad2b53c test(circuit): assert obfuscate_output_ordering sorts and keeps notes paired 2026-07-28 11:12:21 +00:00
Artem Gureev
e282ef30e1 refactor(circuit): extract obfuscate_output_ordering 2026-07-28 11:10:23 +00:00
agureev
9a22a06333 chore: formatting 2026-07-28 11:10:18 +00:00
Artem Gureev
664d046b9f fix(wallet): locate self-sent notes by nullifier 2026-07-28 11:10:08 +00:00
Artem Gureev
29ee254322 feat!: byte-sort private outputs to obfuscate note order
BREAKING!

Before: Commitments, nullifier, and ciphertexts of a transaction were
position-aligned. The position revealed which nullifier was hiding a
pre-state to a commitment to which post-state. Similarly with
ciphertexts.

After: The nullifier-cipher connection remains, but now they (and
commitments independently) are shuffled by the byte-order of the
hashes.

Mitigation: Expect the circuit outputs to be jumbled.
2026-07-28 11:09:44 +00:00
Artem Gureev
e13b4cb237 feat!: key note encryption on the nullifier, drop the output index
BREAKING!

Before: The ciphertext key got generated via using the commmitment and
its index as the key.

After: The ciphertext key replaces the commitment dependence by a
nullifier dependence, still making the key unique by global state. The
nullifier is assumed to be the nullifier of the pre-state of the account.

Mitigation: Use the new decryption algorithm.
2026-07-28 11:09:28 +00:00
Artem Gureev
a9f492bb3f refactor(lee_core): expose nullifier byte-array 2026-07-28 10:58:57 +00:00
Pravdyvy
787a15aad3
Merge pull request #638 from logos-blockchain/Pravdyvyi/parallel-client-actualization
feat(wallet): multi-sequencer client parallelizm
2026-07-28 11:37:41 +03:00
Pravdyvy
7df30eb90f
Merge pull request #646 from logos-blockchain/Pravdyvy/valid-proof-test-runs-only-on-main-or-dev-commits
ci!: valid_proof_test removed from PRs
2026-07-28 10:12:11 +03:00
Pravdyvy
012464a719 ci!: valid_proof_test removed from PRs 2026-07-28 08:03:29 +03:00
Pravdyvy
277f641472 fix(wallet): suggestions 3 2026-07-28 07:55:43 +03:00
Artem Gureev
e018dc9ac4
Merge pull request #592 from logos-blockchain/artem/dummy-note-padding
feat: dummy note padding
2026-07-27 21:11:01 +04:00
Pravdyvy
8389f060c4 fix(wallet): suggestions 2 2026-07-27 16:14:03 +03:00
Pravdyvy
b8818950c9 Merge branch 'dev' into Pravdyvyi/parallel-client-actualization 2026-07-27 13:36:33 +03:00
Pravdyvy
60a78aec08 fix(wallet): suggestions fix 2026-07-27 13:24:56 +03:00
Sergio Chouhy
63e1a952c5
Merge pull request #596 from logos-blockchain/schouhy/add-wallet-cli-change-network-command
feat(lez/wallet): add change-network command
2026-07-25 00:27:39 -03:00
Sergio Chouhy
d958066d78 feat(lez/wallet): add change-network command 2026-07-24 22:58:32 -03:00
Sergio Chouhy
1335593cb3
Merge pull request #594 from logos-blockchain/schouhy/fix-wallet-recipient-signing
fix(lez/wallet): drop signing with recipient keys
2026-07-24 22:57:48 -03:00
Sergio Chouhy
b3eb74cf46 fix(lez/wallet): drop signing with recipient keys 2026-07-24 18:05:40 -03:00
agureev
df13f3f17d chore: regenerate artifacts 2026-07-24 21:48:24 +04:00
Artem Gureev
2e8a01ac95 refactor: warn on private-padding saturation and rename to execute_and_prove_with_padded_inputs 2026-07-24 17:00:36 +00:00
agureev
2ed620097b chore: regenerate artifacts and fixtures 2026-07-24 16:38:04 +00:00
Artem Gureev
147967c1d8 test(wallet): pin private-transaction note padding to max 2026-07-24 16:38:04 +00:00
Artem Gureev
2999288a57 test(lee): pin for_dummy nullifier and commitment derivations 2026-07-24 16:38:04 +00:00
agureev
93b1ee2839 chore: regenerate artifacts and fixtures 2026-07-24 16:38:04 +00:00
Artem Gureev
fd3646e127 feat(wallet): pad private transactions to a fixed maximum 2026-07-24 16:37:52 +00:00
Artem Gureev
d30490442d fix(wallet): encapsulate dummy note epk in wallet 2026-07-24 16:37:52 +00:00
Artem Gureev
0a783a35ca refactor(wallet): dedup randomness helpers, fill dummy note directly 2026-07-24 16:37:15 +00:00
Artem Gureev
4ba0268bab feat(wallet): construct and submit dummy inputs
Ciphers submitted currently have no data
2026-07-24 16:36:13 +00:00
Artem Gureev
5d13e0acc5 feat(circuit): use dummy_inputs in ppc 2026-07-24 16:36:13 +00:00
Artem Gureev
31a17d74a3 feat(lee): add for_dummy nullifier and commitment derivations 2026-07-24 16:36:13 +00:00
Artem Gureev
b9c03d3805 feat(lee): add dummy account type for function-privacy padding 2026-07-24 16:36:13 +00:00
Moudy
fb98e2d564
Merge pull request #615 from logos-blockchain/moudy/cross-zone-cleanup
refactor!(cross-zone): deploy programs at genesis instead of builtins
2026-07-24 18:24:43 +02:00
moudyellaz
d6a2075a7c fix(sequencer): gate bootstrap republish on channel existence, not finalized-scan emptiness 2026-07-24 14:33:24 +02:00
Pravdyvy
ee0313b80c Merge branch 'dev' into Pravdyvyi/parallel-client-actualization 2026-07-24 13:48:10 +03:00
Pravdyvy
a3c2f08ea5 fix(wallet_ffi): simplification 2026-07-24 13:46:45 +03:00
Pravdyvy
7e5728b535
Merge pull request #623 from logos-blockchain/Pravdyvy/request-distribution-for-multiple-sequencers
feat(wallet)!: Request distribution for multiple sequencers
2026-07-24 12:50:22 +03:00
moudyellaz
cf83da946a test(sequencer): give bootstrap finalize-waits a dedicated longer timeout 2026-07-24 08:32:55 +02:00
moudyellaz
113d5db6f5 fix(cross-zone): make InitConfig idempotent under genesis replay 2026-07-24 08:32:45 +02:00
Pravdyvy
bfb62d9b30 Merge branch 'Pravdyvy/request-distribution-for-multiple-sequencers' into Pravdyvyi/parallel-client-actualization 2026-07-24 08:11:51 +03:00
Pravdyvy
a27255c5ce Merge branch 'dev' into Pravdyvy/request-distribution-for-multiple-sequencers 2026-07-24 08:10:42 +03:00
Pravdyvy
93eed48112 fix(wallet): suggestion fix 3 2026-07-24 08:02:03 +03:00
moudyellaz
d9787eb72f style(sequencer): backtick InitConfig in build_initial_state doc comment 2026-07-24 01:07:41 +02:00