Bls12_381_signature.MinSigBLS signatures instantiation minimizing the size of the signatures (48 bytes) but use longer public keys (96 bytes).
val unsafe_pk_of_bytes : Stdlib.Bytes.t -> pkBuild a value of type pk without performing any check on the input (hence the unsafe prefix because it might not give a correct inhabitant of the type pk). It is safe to use this function when verifying a signature as the signature function verifies if the point is in the prime subgroup. Using unsafe_pk_of_bytes removes a verification performed twice when used pk_of_bytes_exn or pk_of_bytes_opt.
The expected bytes format are the compressed form of a point on G2.
val pk_of_bytes_exn : Stdlib.Bytes.t -> pkBuild a value of type pk safely, i.e. the function checks the bytes given in parameters represents a point on the curve and in the prime subgroup. Raise Invalid_argument if the bytes are not in the correct format or does not represent a point in the prime subgroup.
The expected bytes format are the compressed form of a point on G2.
val pk_of_bytes_opt : Stdlib.Bytes.t -> pk optionBuild a value of type pk safely, i.e. the function checks the bytes given in parameters represents a point on the curve and in the prime subgroup. Return None if the bytes are not in the correct format or does not represent a point in the prime subgroup.
The expected bytes format are the compressed form of a point on G2.
val pk_to_bytes : pk -> Stdlib.Bytes.tReturns a bytes representation of a value of type pk. The output is the compressed form of the point Mavryk_bls12_381.Mavryk_bls12_381.G2.t the pk represents.
val unsafe_signature_of_bytes : Stdlib.Bytes.t -> signatureBuild a value of type signature without performing any check on the input (hence the unsafe prefix because it might not give a correct inhabitant of the type signature). It is safe to use this function when verifying a signature as the signature function verifies if the point is in the prime subgroup. Using unsafe_signature_of_bytes removes a verification performed twice when used signature_of_bytes_exn or signature_of_bytes_opt.
The expected bytes format are the compressed form of a point on G1.
val signature_of_bytes_exn : Stdlib.Bytes.t -> signatureBuild a value of type signature safely, i.e. the function checks the bytes given in parameters represents a point on the curve and in the prime subgroup. Raise Invalid_argument if the bytes are not in the correct format or does not represent a point in the prime subgroup.
The expected bytes format are the compressed form of a point on G1.
val signature_of_bytes_opt : Stdlib.Bytes.t -> signature optionBuild a value of type signature safely, i.e. the function checks the bytes given in parameters represents a point on the curve and in the prime subgroup. Return None if the bytes are not in the correct format or does not represent a point in the prime subgroup.
The expected bytes format are the compressed form of a point on G1.
val signature_to_bytes : signature -> Stdlib.Bytes.tReturns a bytes representation of a value of type signature. The output is the compressed form a the point Mavryk_bls12_381.G1.t the signature represents.
aggregate_signature_opt signatures aggregates the signatures signatures, following section 2.8. Return None if INVALID is expected in the specification
module Basic : sig ... endBasic scheme described in section 3.1
module Aug : sig ... endAugmentation scheme described in section 3.2
module Pop : sig ... endFollow section 3.3.