#evaluation #polynomial #kzg #order #opening #open #multi

crate_crypto_kzg_multi_open_fk20

This crate provides a multi-opening algorithm for KZG10 using FK20

14 releases (4 breaking)

0.5.4 Feb 21, 2025
0.5.2 Sep 24, 2024
0.3.0 May 21, 2024

#9 in #opening

Download history 1123/week @ 2024-11-19 1944/week @ 2024-11-26 1708/week @ 2024-12-03 1932/week @ 2024-12-10 1604/week @ 2024-12-17 558/week @ 2024-12-24 1560/week @ 2024-12-31 3134/week @ 2025-01-07 2988/week @ 2025-01-14 3480/week @ 2025-01-21 2960/week @ 2025-01-28 3167/week @ 2025-02-04 2729/week @ 2025-02-11 2516/week @ 2025-02-18 2245/week @ 2025-02-25 2356/week @ 2025-03-04

10,461 downloads per month
Used in 2 crates

MIT license

165KB
3K SLoC

KZG Multi Open

Overview

This crate provides a Rust API for KZG multi-opening polynomial commitment scheme (PCS).This allows you to commit to a polynomial over some field with prime order, and later on reveal multiple evaluations of that polynomial, along with an (opening) proof that attests to the correctness of those evaluations.

The opening proofs are efficiently computed using FK20.

The API is opinionated and although it is generic, it also does not support every use case. It has been made with the Ethereum Data Availability Sampling vision in mind. One can see that for example, we allow evaluations over particular cosets, where the order of the elements in each coset and the order of the cosets themselves are fixed. (Even though we test internally with permutations of the cosets)

Installation

Installation of this crate can be done by adding this to your Cargo.toml:

[dependencies]
crate_crypto_kzg_multi_open_fk20 = "0.1.0"

Dependencies

~5.5MB
~178K SLoC