Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Next sync committee program #65

Closed
tchataigner opened this issue Jun 27, 2024 · 0 comments · Fixed by #96
Closed

Next sync committee program #65

tchataigner opened this issue Jun 27, 2024 · 0 comments · Fixed by #96
Assignees
Labels
ethereum Related to the Etheruem Light Client

Comments

@tchataigner
Copy link
Contributor

tchataigner commented Jun 27, 2024

This is a tracking issue about the implementation of the program used to prove a correct sync committee change. The program leverages primarily the validate_light_client_update to check a correct committee change.

Its input should be:

  • a LightClientSnapshot
  • a LightClientUpdate
  • a GenesisRoot

Its output should be:

  • a hash of the previous sync committee
  • a hash of the newest sync committee

Moreover, this program should have a benchmark that would tell us the total number of cycles needed to generate a STARK proof, along with the proving time for both a STARK and a SNARK proof. See the benchmarks done for the Aptos Light Client: e2e bench & isolated test.

To run the benchmark, data can be fetched from the necessary endpoints described in #62 and #59 and saved in static files containing the SSZ serialized data.

@tchataigner tchataigner added the ethereum Related to the Etheruem Light Client label Jun 27, 2024
@tchataigner tchataigner changed the title Next committee proof Next sync committee proof Jun 27, 2024
@tchataigner tchataigner changed the title Next sync committee proof Next sync committee program Jun 27, 2024
@tchataigner tchataigner self-assigned this Jul 10, 2024
tchataigner added a commit that referenced this issue Jul 11, 2024
tchataigner added a commit that referenced this issue Jul 11, 2024
tchataigner added a commit that referenced this issue Jul 12, 2024
fix: as str

fix: fix ProvingMode/str conversion

feat: benchmark

fix: fixed zkvm logs validate update

refactor: zkvm logs validate update

refactor: zkvm logs process update

refactor: remove dbg logs

refactor: clearer logs

refactor: remove log

fix: length of hash for output

fix: compiled proper keccak usage

fix: proper keccak usage

refactor: keccak instead of merkle root

refactor: compile program

refactor: log cycles

fix: assert in execute

New sync committee should be the one we had in store

fix: fix order of outputs

feat: wip #65
tchataigner added a commit that referenced this issue Jul 12, 2024
fix: as str

fix: fix ProvingMode/str conversion

feat: benchmark

fix: fixed zkvm logs validate update

refactor: zkvm logs validate update

refactor: zkvm logs process update

refactor: remove dbg logs

refactor: clearer logs

refactor: remove log

fix: length of hash for output

fix: compiled proper keccak usage

fix: proper keccak usage

refactor: keccak instead of merkle root

refactor: compile program

refactor: log cycles

fix: assert in execute

New sync committee should be the one we had in store

fix: fix order of outputs

feat: wip #65
tchataigner added a commit that referenced this issue Jul 12, 2024
fix: as str

fix: fix ProvingMode/str conversion

feat: benchmark

fix: fixed zkvm logs validate update

refactor: zkvm logs validate update

refactor: zkvm logs process update

refactor: remove dbg logs

refactor: clearer logs

refactor: remove log

fix: length of hash for output

fix: compiled proper keccak usage

fix: proper keccak usage

refactor: keccak instead of merkle root

refactor: compile program

refactor: log cycles

fix: assert in execute

New sync committee should be the one we had in store

fix: fix order of outputs

feat: wip #65
tchataigner added a commit that referenced this issue Jul 15, 2024
fix: as str

fix: fix ProvingMode/str conversion

feat: benchmark

fix: fixed zkvm logs validate update

refactor: zkvm logs validate update

refactor: zkvm logs process update

refactor: remove dbg logs

refactor: clearer logs

refactor: remove log

fix: length of hash for output

fix: compiled proper keccak usage

fix: proper keccak usage

refactor: keccak instead of merkle root

refactor: compile program

refactor: log cycles

fix: assert in execute

New sync committee should be the one we had in store

fix: fix order of outputs

feat: wip #65
tchataigner added a commit that referenced this issue Jul 30, 2024
fix: as str

fix: fix ProvingMode/str conversion

feat: benchmark

fix: fixed zkvm logs validate update

refactor: zkvm logs validate update

refactor: zkvm logs process update

refactor: remove dbg logs

refactor: clearer logs

refactor: remove log

fix: length of hash for output

fix: compiled proper keccak usage

fix: proper keccak usage

refactor: keccak instead of merkle root

refactor: compile program

refactor: log cycles

fix: assert in execute

New sync committee should be the one we had in store

fix: fix order of outputs

feat: wip #65
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
ethereum Related to the Etheruem Light Client
Projects
None yet
Development

Successfully merging a pull request may close this issue.

1 participant