Commit Graph

114 Commits

Author SHA1 Message Date
thomaslavaur 893ab94ce0
Merge pull request #41 from logos-co/origin/master
fix poseidon error
2024-09-11 13:37:16 +02:00
thomaslavaur 4af413b3ac fix minor poseidon error (hash is now truncation of the addition of the state elements) instead of the addition of the entire state 2024-09-11 10:50:21 +02:00
thomaslavaur e6165cd064
Merge pull request #40 from logos-co/PoE
add proof of equivalence PoC
2024-09-11 09:31:21 +02:00
thomaslavaur fb7ed0ddeb remove unwanted files 2024-09-11 09:30:51 +02:00
thomaslavaur ba564a3f38 add proof of equivalence PoC 2024-09-10 16:02:15 +02:00
davidrusu 7baa1caf77
Merge pull request #39 from logos-co/goas/nonce-in-note
goas: Rename death constraint to constraint; move nonce into note
2024-08-27 16:06:45 +04:00
David Rusu 1fd4c6bd64 goas: move nonce into note 2024-08-27 15:57:19 +04:00
David Rusu cffd687e50 goas: rename DeathConstraint to Constraint 2024-08-27 15:56:41 +04:00
Giacomo Pasini 23df7331c8
Use efficient comm for balances (#38)
* Use efficient comm for balances

At the moment we're using merkle trees even though we don't need
inclusion proofs, which means we're calculating more hashes than
necessary and limiting the account set size to 256.
This change is a temporary solution that chooses a more efficient
way to calculate a commitment to the account balances, while we
wait for something more scalable like a Verkle Tree.

* remove leftover constants
2024-08-26 19:29:49 +02:00
davidrusu da18cef987
Merge pull request #36 from logos-co/goas/hash-based-balance-commitments
goas: switch balance commitments to hash based commitments
2024-08-23 16:18:37 +04:00
davidrusu 75930a5ac8
Merge pull request #37 from logos-co/goas/mmr-in-zone-state
goas: MMR for the zone transaction log
2024-08-23 16:18:23 +04:00
David Rusu 30354a08bd goas: remove found flag from balance insert helpers 2024-08-23 13:39:36 +04:00
David Rusu 5151438d3f goas: reduce the width of the MMR height field 2024-08-23 13:05:33 +04:00
David Rusu 226da49440 remove old implementation 2024-08-23 03:09:40 +04:00
David Rusu 362749b1b6 goas: MMR for the zone transaction log 2024-08-23 03:06:15 +04:00
David Rusu 7a706583dc goas: switch balance commitments to hash based commitments 2024-08-21 22:00:49 +04:00
davidrusu 8aba1c8e68
Merge pull request #34 from logos-co/goas/ptx-proof
goas: aggregate input/output proofs into a single ptx proof
2024-08-21 18:18:46 +04:00
davidrusu 6480637e76
Merge pull request #35 from logos-co/goas/ptx-level-balance-blinding
goas: move balance blinding to ptx level
2024-08-21 18:08:44 +04:00
David Rusu 7488dea9d1 goas: move balance blinding to ptx level 2024-08-21 13:00:35 +04:00
David Rusu edd69d63bd goas: remove input/output proofs 2024-08-21 00:03:41 +04:00
David Rusu 310932818a goas: replace input/output proofs with ptx proof 2024-08-20 23:58:38 +04:00
Giacomo Pasini ff0afeebd7
Provide state roots instead of whole state (#33) 2024-08-20 19:12:10 +02:00
davidrusu 5fd3c299c1
Merge pull request #32 from logos-co/goas/isolated_proof_tests
goas: isolated executor proof tests
2024-08-19 21:53:35 +04:00
David Rusu e38b76e020 goas: don't expose nullifier nonce/commitment bytes 2024-08-19 21:52:33 +04:00
Giacomo Pasini 8870a32cbe
Use basepoint as the blinding point (#31) 2024-08-19 19:18:42 +02:00
David Rusu 6862f291ef goas: isolated test for user atomic transfer proof 2024-08-19 21:11:50 +04:00
David Rusu a4e52b75aa goas: add isolated test for zone fund constraint 2024-08-19 20:46:48 +04:00
David Rusu 341c8b44d3 goas: isolated test for zone stf proof 2024-08-19 19:29:43 +04:00
davidrusu 9541c4b34d
Merge pull request #26 from logos-co/goas/atomic-transfer-scenario
goas: atomic transfer scenario
2024-08-19 13:01:18 +04:00
davidrusu fea5dfbcbb
Merge pull request #27 from logos-co/goas/collision-resistant-nullifier
goas: make nullifier collision resistant
2024-08-19 13:01:01 +04:00
davidrusu 08756d7cac
Merge pull request #28 from logos-co/goas/robust-nonce-evolution
goas: robust nonce evolution
2024-08-19 13:00:44 +04:00
davidrusu e1e20a4489
Merge pull request #29 from logos-co/goas/fix-tx-binding
goas: cryptography in zone
2024-08-19 13:00:22 +04:00
David Rusu ed4bfca90e goas: in zone tx signing/verifying 2024-08-17 20:45:56 +04:00
David Rusu 213be6ccd7 goas: more robust nonce evolution strategy 2024-08-17 16:58:13 +04:00
David Rusu 75ff879770 goas: nullifier does not need to re-commit to nonce
since it's included in note commitment
2024-08-17 15:17:09 +04:00
David Rusu c0aa2b0e08 goas: make nullifier is collision resistant 2024-08-17 10:52:29 +04:00
David Rusu 733b316815 goas: clippy + print proof cycles 2024-08-11 23:17:37 +04:00
David Rusu 034fe8eda5 goas: reuse ZoneNotes struct in the deposit/withdrawal scenarios 2024-08-11 23:08:40 +04:00
David Rusu d73508a43c goas: atomic transfer scenario 2024-08-10 21:09:36 +04:00
davidrusu 1e49131c12
Merge pull request #23 from logos-co/aat/user-atomic-transfer-constraint
goas: user atomic transfer constraint
2024-08-09 20:22:59 +04:00
David Rusu 847e253f10 goas: user intent constraint 2024-08-09 20:20:18 +04:00
davidrusu da437db677
Merge pull request #21 from logos-co/aat/deposit_ptx
aat: Deposit Scenario
2024-08-09 20:18:34 +04:00
David Rusu 0e278d9284 goas: remove state from alice's deposit note 2024-08-09 20:14:34 +04:00
David Rusu 7a7bea3931 goas: factor out common zone config to executor lib 2024-08-09 20:00:31 +04:00
David Rusu 72e198eeb5 goas: bind the deposit tx to the deposit note 2024-08-09 19:46:36 +04:00
David Rusu aa4e03b567 aat: deposit ptx test 2024-08-09 19:41:34 +04:00
Giacomo Pasini 1aa7a7f81f
bind proofs (#22)
* bind proofs

* refactor to remove cycle
2024-08-09 17:33:01 +02:00
Giacomo Pasini 85a3e941b9
add zone tx inclusion proof (#20)
* add zone tx inclusion proof

* rename input to tx
2024-08-09 11:52:42 +02:00
Giacomo Pasini 5d3f3ab9fb
Refactor zone auth (#19)
* Refactor zone auth

* remove redundant check
2024-08-08 17:50:28 +02:00
davidrusu a320c20d25
Integrate zone withdrawal with CL (#17)
* aat: integrate withdraw with CL

* aat: withdrawal passes!

* aat: cleanup withdrawals a bit

* aat: move Ptx{Input|Output|Private to cl::partial_tx

* aat: zone_state zone transition validation coded w.r.t. metadata

* aat: rename meta to in_meta in zone transition validation
2024-08-07 21:37:21 +02:00