Skip to content

Verify a batch of KZG proofs #201

@roynalnaruto

Description

@roynalnaruto

At the moment, the batch circuit's blob consistency module exposes functionality to verify a single KZG proof via the verify_kzg_proof method.

We would like to add functionality to verify a batch of KZG proofs:

/// Request to verify a single KZG proof
struct VerifyKzg {
    /// random point of evaluation
    z: Scalar,
    /// evaluation of the blob polynomial evaluated at `z`
    y: Scalar,
    /// KZG commitment
    commitment: G1Affine,
    /// KZG proof
    proof: G1Affine,
}

/// Alias for request to verify a batch of KZG proofs
type BatchVerifyKzg = Vec<VerifyKzg>;

/// Verify a batch of KZG proofs
pub fn verify_kzg_proof_batch(input: &BatchVerifyKzg) -> bool {
    // refer: https://github.com/ethereum/consensus-specs/blob/dev/specs/deneb/polynomial-commitments.md#verify_kzg_proof_batch
    todo!()
}

The verify_kzg_proof_batch should implement deneb specs as per verify_kzg_proof_batch.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions