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
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
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
David Rusu
847e253f10
goas: user intent constraint
2024-08-09 20:20:18 +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
Giacomo Pasini
5b03e070b5
Add evolved nonce
2024-08-02 17:57:19 +02:00
Giacomo Pasini
ca2c141d91
use NullifierNonce::evolve
2024-08-02 17:44:03 +02:00
Giacomo Pasini
ca42d3ed4f
simply merkle root calc
2024-08-02 17:43:53 +02:00
Giacomo Pasini
584f814465
check zone id in zone funds auth
2024-08-02 15:06:40 +02:00
Giacomo Pasini
e7ba67d09b
add death constraints to metadata
2024-08-02 14:42:13 +02:00
Giacomo Pasini
4cf93c4ef1
validate zone input/output notes
2024-08-02 00:10:17 +02:00
David Rusu
2c32905112
aat: scaffolding for the user ptx
2024-08-01 16:57:20 +04:00
David Rusu
7ab248646c
cl: rename goas/zone to goas/atomic_asset_transfer
2024-08-01 16:45:08 +04:00
Giacomo Pasini
7e67014042
Deposit ( #8 )
...
* Add native zone deposits
* check note unit and death constraints
* fix deposit logic
* fix ptx merkle root derivation
* restrict ptx inputs/outputs
* re-org directories
2024-08-01 12:46:17 +02:00
David Rusu
4abd98b951
cl: ban zero valued outputs
2024-07-30 18:22:39 +04:00
David Rusu
762fdcc980
cl: typo
2024-07-29 14:52:45 +04:00
David Rusu
1d16f40a4c
cl: add death constraints to simple transfer scenario
2024-07-27 18:55:43 +04:00
David Rusu
884232b2d3
pol: risc0 implementation of the PoL zk statemetn
2024-07-25 02:19:03 +04:00
David Rusu
c5bcf3ebe7
cl: InputWitness does not need utxo_balance_blinding
2024-07-23 13:47:27 +04:00
David Rusu
247f3f042b
cl: give a name to the balance unit point in zero commitment
2024-07-22 19:02:30 +04:00
David Rusu
6463d9c65b
cl: use BundleWitness in bundle proof
2024-07-22 18:08:54 +04:00
David Rusu
61388121fb
cl: doc zero commitment; drop Ptx::balance_delta, rm InputProof
2024-07-22 16:39:15 +04:00
David Rusu
05fbbdfe81
cl: make transfer scenario readable
2024-07-21 19:59:10 +04:00
David Rusu
9ca5e8af57
goas: output + partial_tx + bundle proofs all working together!
2024-07-21 19:05:35 +04:00
David Rusu
91e0108fb2
goas/ledger: test_input_nullifier_prover to test_input_prover
2024-07-19 01:30:59 +04:00
David Rusu
5208164204
goas/ledger: move prove_input to ProvedInput::prove
2024-07-19 01:29:26 +04:00
David Rusu
d424a95786
goas/ledger: build ProvedInput artifact from input proof
2024-07-19 01:27:27 +04:00