package octez-bls12-381-signature

  1. Overview
  2. Docs
Implementation of BLS signatures for the pairing-friendly curve BLS12-381

Install

Dune Dependency

Authors

Maintainers

Sources

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

doc/octez-bls12-381-signature/Bls12_381_signature/index.html

Module Bls12_381_signatureSource

Follow the BLS signature draft of CFRG, version 4

Sourcetype sk

Type of the secret keys.

Sourceval sk_size_in_bytes : int

The size of a serialized value sk

Sourceval sk_of_bytes_exn : Bytes.t -> sk

sk_of_bytes_exn bs attempts to deserialize bs into a secret key. bs must be the little endian representation of the secret key. In this case, secret keys are scalars of BLS12-381 and are encoded on 32 bytes. The bytes sequence might be less of 32 bytes and in this case, the bytes sequence is padded on the right by 0's.

Sourceval sk_of_bytes_opt : Bytes.t -> sk option

sk_of_bytes_opt bs is the same than sk_of_bytes_exn but returns an option instead of an exception.

Sourceval sk_to_bytes : sk -> Bytes.t

sk_to_bytes sk serialises the secret key into the little endian representation.

Sourceval generate_sk : ?key_info:Bytes.t -> Bytes.t -> sk

generate_sk ?key_info ikm generates a new (random) secret key. ikm must be at least 32 bytes (otherwise, raise Invalid_argument). The default value of key_info is the empty bytes sequence.

Sourcemodule MinPk : sig ... end

BLS signatures instantiation minimizing the size of the public keys (48 bytes) but use longer signatures (96 bytes).

Sourcemodule MinSig : sig ... end

BLS signatures instantiation minimizing the size of the signatures (48 bytes) but use longer public keys (96 bytes).

OCaml

Innovation. Community. Security.