diff --git a/src/lib_protocol_environment/environment_V7.ml b/src/lib_protocol_environment/environment_V7.ml index e6070c4d8e97906d644fc2a9265ad1f8fb17100e..10ea8fab48f3974972926717a396937d595daa7d 100644 --- a/src/lib_protocol_environment/environment_V7.ml +++ b/src/lib_protocol_environment/environment_V7.ml @@ -100,10 +100,10 @@ module type T = sig and type Bls_signature.signature = Bls12_381.Signature.MinPk.signature and type ('a, 'b) Either.t = ('a, 'b) Stdlib.Either.t and type Bls12_381.Fr.t = Bls12_381.Fr.t - and type Plonk.transcript = Plonk.Main_protocol.transcript and type Plonk.proof = Plonk.Main_protocol.proof - and type Plonk.verifier_public_parameters = + and type Plonk.public_parameters = Plonk.Main_protocol.verifier_public_parameters + * Plonk.Main_protocol.transcript type error += Ecoproto_error of Error_monad.error diff --git a/src/lib_protocol_environment/environment_V7.mli b/src/lib_protocol_environment/environment_V7.mli index 581bfd651c731aa966c83b8ea5edd17b450a45c4..0cd0c7cdeaf8f1b7febd31847cc90907cdf98fcf 100644 --- a/src/lib_protocol_environment/environment_V7.mli +++ b/src/lib_protocol_environment/environment_V7.mli @@ -100,10 +100,10 @@ module type T = sig and type Bls_signature.signature = Bls12_381.Signature.MinPk.signature and type ('a, 'b) Either.t = ('a, 'b) Stdlib.Either.t and type Bls12_381.Fr.t = Bls12_381.Fr.t - and type Plonk.transcript = Plonk.Main_protocol.transcript and type Plonk.proof = Plonk.Main_protocol.proof - and type Plonk.verifier_public_parameters = + and type Plonk.public_parameters = Plonk.Main_protocol.verifier_public_parameters + * Plonk.Main_protocol.transcript (** An [Ecoproto_error e] is a shell error that carry a protocol error. diff --git a/src/lib_protocol_environment/sigs/v7.ml b/src/lib_protocol_environment/sigs/v7.ml index 55c7f5a5be1e552eb529a5432f4e979f189dc666..daf36f7dd9798c50c12843af4eeca07495c8c050 100644 --- a/src/lib_protocol_environment/sigs/v7.ml +++ b/src/lib_protocol_environment/sigs/v7.ml @@ -11318,39 +11318,28 @@ module Array : sig val to_list : 'a array -> 'a list end -type transcript - -type verifier_public_parameters +type public_parameters type proof -val verifier_public_parameters_encoding : - verifier_public_parameters Data_encoding.t +val public_parameters_encoding : public_parameters Data_encoding.t val proof_encoding : proof Data_encoding.t -val transcript_encoding : transcript Data_encoding.t - val scalar_encoding : scalar Data_encoding.t (** Verifier function: checks proof Inputs: - - transcript: transcript initialized with SRS - public_parameters: output of setup - public_inputs (scalar array): the first values of private_inputs that are public - proof: output of prove Outputs: - bool *) -val verify : - verifier_public_parameters * transcript -> - public_inputs:scalar array -> - proof -> - bool +val verify : public_parameters -> public_inputs:scalar array -> proof -> bool (** Verifier function: checks a bunch of proofs for several circuits Inputs: - - transcript: transcript initialized with SRS - public_parameters: output of setup_multi_circuits for the circuits being checked - public_inputs: StringMap where the lists of public inputs are binded with the circuit to which they correspond - proof: the unique proof that correspond to all inputs @@ -11358,7 +11347,7 @@ val verify : - bool *) val verify_multi_circuits : - verifier_public_parameters * transcript -> + public_parameters -> public_inputs:(string * scalar array list) list -> proof -> bool diff --git a/src/lib_protocol_environment/sigs/v7/plonk.mli b/src/lib_protocol_environment/sigs/v7/plonk.mli index 678d012f584f879142c4f276cf38300858d6f888..b06bab7ba1fc3ae8b2a0de6257a6ab3a96cc9ff4 100644 --- a/src/lib_protocol_environment/sigs/v7/plonk.mli +++ b/src/lib_protocol_environment/sigs/v7/plonk.mli @@ -33,39 +33,28 @@ module Array : sig val to_list : 'a array -> 'a list end -type transcript - -type verifier_public_parameters +type public_parameters type proof -val verifier_public_parameters_encoding : - verifier_public_parameters Data_encoding.t +val public_parameters_encoding : public_parameters Data_encoding.t val proof_encoding : proof Data_encoding.t -val transcript_encoding : transcript Data_encoding.t - val scalar_encoding : scalar Data_encoding.t (** Verifier function: checks proof Inputs: - - transcript: transcript initialized with SRS - public_parameters: output of setup - public_inputs (scalar array): the first values of private_inputs that are public - proof: output of prove Outputs: - bool *) -val verify : - verifier_public_parameters * transcript -> - public_inputs:scalar array -> - proof -> - bool +val verify : public_parameters -> public_inputs:scalar array -> proof -> bool (** Verifier function: checks a bunch of proofs for several circuits Inputs: - - transcript: transcript initialized with SRS - public_parameters: output of setup_multi_circuits for the circuits being checked - public_inputs: StringMap where the lists of public inputs are binded with the circuit to which they correspond - proof: the unique proof that correspond to all inputs @@ -73,7 +62,7 @@ val verify : - bool *) val verify_multi_circuits : - verifier_public_parameters * transcript -> + public_parameters -> public_inputs:(string * scalar array list) list -> proof -> bool diff --git a/src/lib_protocol_environment/structs/v7_plonk.ml b/src/lib_protocol_environment/structs/v7_plonk.ml index 1cfb15f82b99971321826e3f83a7fbf38944e4ad..208409f31bf1bf39e0c38a1417158224e3c82cfa 100644 --- a/src/lib_protocol_environment/structs/v7_plonk.ml +++ b/src/lib_protocol_environment/structs/v7_plonk.ml @@ -25,6 +25,11 @@ include Plonk.Main_protocol +type public_parameters = verifier_public_parameters * transcript + +let public_parameters_encoding = + Data_encoding.tup2 verifier_public_parameters_encoding transcript_encoding + module Array = struct let concat = Stdlib.Array.concat