Skip to content

Adapt the handling of the 2 FEP vkey hash #189

@hadjiszs

Description

@hadjiszs

Context

The aggchain proof requires 2 vkey hash:

  1. range vkey commitment
  2. aggregation vkey hash

Both referring to the FEP verified within the aggchain proof.

Before #183

  • those vkey hash were hardcoded within the aggchain proof program, hence completely tied to the aggchain proof vkey/version.

After #183

  • the vkeys are now in the aggchain proof public inputs, so no need to be hardcoded anymore.

Question

  • How do we want to handle those vkey hashes?

Suggestions from @Freyskeyd:

I see multiple options here:

  1. Either we stick to have this vkey as constant in the docker image, meaning that if they're changing, we need to rebuild the docker image even if there are no changes
  2. Do a sanity check at the start of the aggkit-prover to assert that we're aligned with the L1 vkeys by calling the contract that hold them. The vkeys are still "constant" in the docker image, and it's need to be rebuilt every time one of those key changes.
  3. For every aggchain-proof that we're generating, we retrieve those vkey hashs from L1 contract to use them, making the aggkit-prover not dependant of those vkey

WDYT?

Originally posted by @Freyskeyd in #183 (comment)

Metadata

Metadata

Assignees

Labels

No labels
No labels

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions