package octez-shell-libs

  1. Overview
  2. Docs
Legend:
Page
Library
Module
Module type
Parameter
Class
Class type
Source

Module Tezos_client_base.Client_keysSource

Cryptographic keys tables

Sourcetype pk_uri = private Uri.t
Sourcemodule Pk_uri_hashtbl : Tezos_base.TzPervasives.Hashtbl.S with type key = pk_uri
Sourcetype sk_uri = private Uri.t
Sourcetype sapling_uri = private Uri.t
Sourcetype aggregate_pk_uri = private Uri.t
Sourcetype aggregate_sk_uri = private Uri.t
Sourceval pk_uri_parameter : unit -> (pk_uri, 'a) Tezos_clic.parameter
Sourceval pk_uri_param : ?name:string -> ?desc:string -> ('a, 'b) Tezos_clic.params -> (pk_uri -> 'a, 'b) Tezos_clic.params
Sourceval sk_uri_parameter : unit -> (sk_uri, 'a) Tezos_clic.parameter
Sourceval sk_uri_param : ?name:string -> ?desc:string -> ('a, 'b) Tezos_clic.params -> (sk_uri -> 'a, 'b) Tezos_clic.params
Sourceval aggregate_sk_uri_parameter : unit -> (aggregate_sk_uri, 'a) Tezos_clic.parameter
Sourceval aggregate_sk_uri_param : ?name:string -> ?desc:string -> ('a, 'b) Tezos_clic.params -> (aggregate_sk_uri -> 'a, 'b) Tezos_clic.params
Sourcetype Tezos_base.TzPervasives.error +=
  1. | Unregistered_key_scheme of string
Sourcetype sapling_key = {
  1. sk : sapling_uri;
  2. path : int32 list;
  3. address_index : Tezos_sapling.Core.Client.Viewing_key.index;
}
Sourcemodule Aggregate_alias : sig ... end

Aggregate_alias contains the implementation needed for the wallet to have the correspondence between aliases and keys. It has three sub-module Public_key Public_key_hash Secret_key. The reason of a sub-module inside a sub-module is not confuse them with the alias module for the standard signature (i.e. Public_key, Public_key_hash, and Secret_key).

Sourcemodule Aggregate_type : sig ... end
Sourcemodule Logging : sig ... end

Interface for external signing modules.

Sourcemodule type COMMON_SIGNER = sig ... end
Sourcemodule type AGGREGATE_SIGNER = sig ... end
Sourcemodule type SIGNER = sig ... end
Sourcetype signer =
  1. | Simple of (module SIGNER)
  2. | Aggregate of (module AGGREGATE_SIGNER)
Sourceval register_signer : (module SIGNER) -> unit

register_signer signer registers first-class module signer as signer for keys with scheme (val signer : SIGNER).scheme.

Sourceval registered_signers : unit -> (string * signer) list
Sourceval register_aggregate_signer : (module AGGREGATE_SIGNER) -> unit

register_aggregate_signer signer registers first-class module signer as signer for keys with scheme (val signer : AGGREGATE_SIGNER).scheme.

Sourceval register_aggregate_key : Client_context.wallet -> ?force:bool -> (Tezos_crypto.Aggregate_signature.Public_key_hash.t * aggregate_pk_uri * aggregate_sk_uri) -> ?public_key:Tezos_crypto.Aggregate_signature.Public_key.t -> string -> unit Tezos_base.TzPervasives.tzresult Lwt.t
Sourceval list_aggregate_keys : Client_context.wallet -> (string * Tezos_crypto.Aggregate_signature.Public_key_hash.t * Tezos_crypto.Aggregate_signature.Public_key.t option * aggregate_sk_uri option) list Tezos_base.TzPervasives.tzresult Lwt.t
Sourceval import_aggregate_secret_key : io:Client_context.io_wallet -> aggregate_pk_uri -> (Tezos_crypto.Aggregate_signature.Public_key_hash.t * Tezos_crypto.Aggregate_signature.Public_key.t option) Tezos_base.TzPervasives.tzresult Lwt.t
Sourceval alias_aggregate_keys : Client_context.wallet -> string -> (Tezos_crypto.Aggregate_signature.Public_key_hash.t * Tezos_crypto.Aggregate_signature.Public_key.t option * aggregate_sk_uri option) option Tezos_base.TzPervasives.tzresult Lwt.t
Sourceval aggregate_sign : Client_context.wallet -> aggregate_sk_uri -> Tezos_base.TzPervasives.Bytes.t -> Tezos_crypto.Aggregate_signature.t Tezos_base.TzPervasives.tzresult Lwt.t
Sourcemodule type S = sig ... end
Sourcemodule V0 : S with type public_key_hash := Tezos_crypto.Signature.V0.Public_key_hash.t and type public_key := Tezos_crypto.Signature.V0.Public_key.t and type secret_key := Tezos_crypto.Signature.V0.Secret_key.t and type watermark := Tezos_crypto.Signature.V0.watermark and type signature := Tezos_crypto.Signature.V0.t
Sourcemodule V1 : S with type public_key_hash := Tezos_crypto.Signature.V1.Public_key_hash.t and type public_key := Tezos_crypto.Signature.V1.Public_key.t and type secret_key := Tezos_crypto.Signature.V1.Secret_key.t and type watermark := Tezos_crypto.Signature.V1.watermark and type signature := Tezos_crypto.Signature.V1.t
Sourcemodule V_latest : S with type public_key_hash := Tezos_crypto.Signature.V_latest.Public_key_hash.t and type public_key := Tezos_crypto.Signature.V_latest.Public_key.t and type secret_key := Tezos_crypto.Signature.V_latest.Secret_key.t and type watermark := Tezos_crypto.Signature.V_latest.watermark and type signature := Tezos_crypto.Signature.V_latest.t
include module type of V_latest
Sourcemodule Signature_type : sig ... end

Signature_type is a small module to be included in signer to conform to the module type SIGNER instead of rewriting all type.

Sourcemodule Public_key_hash : Client_aliases.Alias with type t = Tezos_crypto.Signature.V_latest.Public_key_hash.t
Sourcemodule Public_key : Client_aliases.Alias with type t = pk_uri * Tezos_crypto.Signature.V_latest.Public_key.t option
Sourceval import_secret_key : io:Client_context.io_wallet -> pk_uri -> (Tezos_crypto.Signature.V_latest.Public_key_hash.t * Tezos_crypto.Signature.V_latest.Public_key.t option) Tezos_base.TzPervasives.tzresult Lwt.t
Sourceval public_key : pk_uri -> Tezos_crypto.Signature.V_latest.Public_key.t Tezos_base.TzPervasives.tzresult Lwt.t
Sourceval public_key_hash : pk_uri -> (Tezos_crypto.Signature.V_latest.Public_key_hash.t * Tezos_crypto.Signature.V_latest.Public_key.t option) Tezos_base.TzPervasives.tzresult Lwt.t
Sourceval sign : Client_context.wallet -> ?watermark:Tezos_crypto.Signature.V_latest.watermark -> sk_uri -> Tezos_base.TzPervasives.Bytes.t -> Tezos_crypto.Signature.V_latest.t Tezos_base.TzPervasives.tzresult Lwt.t
Sourceval append : Client_context.wallet -> ?watermark:Tezos_crypto.Signature.V_latest.watermark -> sk_uri -> Tezos_base.TzPervasives.Bytes.t -> Tezos_base.TzPervasives.Bytes.t Tezos_base.TzPervasives.tzresult Lwt.t
Sourceval check : ?watermark:Tezos_crypto.Signature.V_latest.watermark -> pk_uri -> Tezos_crypto.Signature.V_latest.t -> Tezos_base.TzPervasives.Bytes.t -> bool Tezos_base.TzPervasives.tzresult Lwt.t
Sourceval supports_deterministic_nonces : sk_uri -> bool Tezos_base.TzPervasives.tzresult Lwt.t
Sourceval register_key : Client_context.wallet -> ?force:bool -> (Tezos_crypto.Signature.V_latest.Public_key_hash.t * pk_uri * sk_uri) -> ?public_key:Tezos_crypto.Signature.V_latest.Public_key.t -> string -> unit Tezos_base.TzPervasives.tzresult Lwt.t
Sourceval register_keys : Client_context.wallet -> (string * Tezos_crypto.Signature.V_latest.Public_key_hash.t * Tezos_crypto.Signature.V_latest.Public_key.t * pk_uri * sk_uri) list -> unit Tezos_base.TzPervasives.tzresult Lwt.t

Similar to repeated calls to register_key, but is more efficient. Always forces addition of new elements.

Sourceval list_keys : Client_context.wallet -> (string * Tezos_crypto.Signature.V_latest.Public_key_hash.t * Tezos_crypto.Signature.V_latest.Public_key.t option * sk_uri option) list Tezos_base.TzPervasives.tzresult Lwt.t
Sourceval alias_keys : Client_context.wallet -> string -> (Tezos_crypto.Signature.V_latest.Public_key_hash.t * Tezos_crypto.Signature.V_latest.Public_key.t option * sk_uri option) option Tezos_base.TzPervasives.tzresult Lwt.t
Sourceval get_key : Client_context.wallet -> Tezos_crypto.Signature.V_latest.Public_key_hash.t -> (string * Tezos_crypto.Signature.V_latest.Public_key.t * sk_uri) Tezos_base.TzPervasives.tzresult Lwt.t
Sourceval get_public_key : Client_context.wallet -> Tezos_crypto.Signature.V_latest.Public_key_hash.t -> (string * Tezos_crypto.Signature.V_latest.Public_key.t) Tezos_base.TzPervasives.tzresult Lwt.t
Sourceval get_keys : Client_context.wallet -> (string * Tezos_crypto.Signature.V_latest.Public_key_hash.t * Tezos_crypto.Signature.V_latest.Public_key.t * sk_uri) list Tezos_base.TzPervasives.tzresult Lwt.t
Sourceval force_switch : unit -> (bool, 'ctx) Tezos_clic.arg
OCaml

Innovation. Community. Security.