package octez-plonk

  1. Overview
  2. Docs
Plonk zero-knowledge proving system

Install

Dune Dependency

Authors

Maintainers

Sources

tezos-17.3.tar.gz
sha256=7062cd57addd452852598a2214ade393130efa087b99068d53713bdf912b3680
sha512=08e4091144a03ce3c107fb91a66501bd8b65ca3278917c455a2eaac6df3e108ade63f6ab8340a4bb152d60f404326e464d0ec95d26cafe8e82f870465d24a5fc

doc/octez-plonk.distribution/Plonk_for_distribution/Kzg_pack/Kzg_pack_impl/index.html

Module Kzg_pack.Kzg_pack_implSource

Extension of the KZG_pack implementation with additional types and functions used in by Distributed_prover

Sourcemodule PC = Kzg.Kzg_impl
Sourcemodule BasePC : sig ... end
Sourcemodule Commitment : sig ... end
include module type of BasePC with module Commitment := Commitment
Sourcetype secret = PC.secret
Sourcetype query = PC.query
Sourceval query_t : PC.query Repr.t
Sourcetype answer = PC.answer
Sourceval answer_t : PC.answer Repr.t
Sourcetype transcript = PC.transcript
Sourcemodule Public_parameters : sig ... end
Sourcetype proof = {
  1. pc_proof : PC.proof;
  2. packed_values : Aggregation.Pack.packed list;
  3. pack_proof : Aggregation.Pack.proof;
}
Sourceval proof_t : proof Repr.t
Sourcetype prover_aux = {
  1. r : Plonk.Bls.Scalar.t;
  2. s_list : Plonk.Bls.Scalar.t Plonk.SMap.t list;
}
Sourceval batch_polys : Plonk.Bls.Poly.scalar -> Plonk.Bls.Poly.t Plonk.SMap.t -> Plonk.Bls.Poly.t
Sourceval batch_answers : Plonk.Bls.Scalar.t -> Plonk.Bls.Scalar.t Plonk.SMap.t Plonk.SMap.t -> Plonk.Bls.Scalar.t Plonk.SMap.t
Sourceval evaluate : PC.secret -> PC.query -> PC.answer
Sourceval prove_pack : Public_parameters.prover -> Bytes.t -> Plonk.Bls.Poly.t Plonk.SMap.t list -> Commitment.prover_aux list -> PC.query list -> Plonk.Bls.Scalar.t Plonk.SMap.t Plonk.SMap.t list -> (proof * prover_aux) * bytes
Sourceval prove : Public_parameters.prover -> bytes -> Plonk.Bls.Poly.t Plonk.SMap.t list -> Commitment.prover_aux list -> PC.query list -> Plonk.Bls.Scalar.t Plonk.SMap.t Plonk.SMap.t list -> proof * bytes
Sourceval prove_super_aggregation : Public_parameters.prover -> bytes -> Plonk.Bls.Poly.t Plonk.SMap.t list -> Commitment.prover_aux list -> PC.query list -> Plonk.Bls.Scalar.t Plonk.SMap.t Plonk.SMap.t list -> (proof * prover_aux) * bytes
Sourceval verify : Public_parameters.verifier -> bytes -> Aggregation.Pack.commitment list -> PC.query list -> Plonk.Bls.Scalar.t Plonk.SMap.t Plonk.SMap.t list -> proof -> bool * bytes
Sourceval verify_super_aggregation : Public_parameters.verifier -> bytes -> Aggregation.Pack.commitment list -> PC.query list -> Plonk.Bls.Scalar.t Plonk.SMap.t Plonk.List.t -> proof -> bool * Plonk.Bls.Scalar.t * bytes
Sourcetype worker_msg = Plonk.Bls.Scalar.t * string list list
Sourceval worker_msg_t : (Plonk.Bls.Scalar.t * string list list) Repr.t
Sourcetype main_prover_msg = Plonk.Bls.Poly.t list * Commitment.prover_aux list
Sourceval main_prover_msg_t : (Plonk.Bls.Poly.t list * (PC.Commitment.t * PC.Commitment.prover_aux) list) Repr.t
Sourcetype main_prover_state = Public_parameters.prover * transcript * Plonk.Bls.Scalar.t * query list * Plonk.Bls.Scalar.t SMap.t list * main_prover_msg
Sourcetype partial_prover_aux = {
  1. r : Plonk.Bls.Scalar.t;
  2. s_list : Plonk.Bls.Scalar.t SMap.t list;
}
Sourceval merge_answers : answer list -> answer
Sourceval distributed_prove_worker : Plonk.Bls.Poly.t SMap.t list -> 'a -> (Plonk.Bls.Scalar.t * string list list) -> Plonk.Bls.Poly.t list * 'a
Sourceval distributed_expand_transcript : bytes -> PC.query list -> PC.answer list -> bytes
Sourceval distributed_prove_main1 : Public_parameters.prover -> Bytes.t -> query list -> Plonk.Bls.Scalar.t SMap.t SMap.t list -> Plonk.Bls.Poly.t SMap.t list -> Commitment.prover_aux list -> worker_msg * main_prover_state
Sourceval distributed_prove_main2 : main_prover_state -> main_prover_msg list -> proof * bytes * partial_prover_aux
OCaml

Innovation. Community. Security.