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

feat(protocol): support backward-compatible batch-proof verification #17968

Merged
merged 112 commits into from
Aug 29, 2024

Conversation

dantaik
Copy link
Contributor

@dantaik dantaik commented Aug 23, 2024

This PR introduces support for batch proofs (also known as aggregated proofs) in our BCR protocol. The changes include new interfaces and functions to accommodate both individual and batch proof verification.

Added verifyBatchProof function to IVerifier interface.

Most verifiers haven't implemented this function yet, but the protocol remains functional.

Introduced proveBlocksV2 function in ITaikoL2.

It supports two modes:

  • Separate-proving mode: Each block transition has its own proof, allowing different tiers.
  • Batch-proving mode: All block transitions share an aggregated proof, requiring the same tier for all transitions.

Mode selection for proveBlocksV2

  • If a verifier doesn't support verifyBatchProof, separate-proving mode should be used.
  • If supported, batch-proving mode is preferred for efficiency.
  • Verifiers supporting only verifyBatchProof require batch-proving mode exclusively.

Original PR: #17938

@dantaik dantaik disabled auto-merge August 29, 2024 01:29
@dantaik dantaik changed the title feat(protocol): support backward-compatible batch proof verification feat(protocol): support backward-compatible batch-proof verification Aug 29, 2024
@dantaik dantaik enabled auto-merge August 29, 2024 01:32
@dantaik dantaik requested review from adaki2004 and removed request for smtmfft, cyberhorsey and adaki2004 August 29, 2024 04:52
@dantaik dantaik added this pull request to the merge queue Aug 29, 2024
Merged via the queue into main with commit c476aab Aug 29, 2024
6 checks passed
@dantaik dantaik deleted the refactor_propose_prove_block branch August 29, 2024 08:44
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants