Remote.Makemodule S : sig ... endinclude Tezos_client_base.Client_keys.COMMON_SIGNER
with type public_key_hash = Tezos_crypto.Signature.Public_key_hash.t
and type public_key = Tezos_crypto.Signature.Public_key.t
and type secret_key = Tezos_crypto.Signature.Secret_key.t
and type signature = Tezos_crypto.Signature.t
and type pk_uri = Tezos_client_base.Client_keys.pk_uri
and type sk_uri = Tezos_client_base.Client_keys.sk_uritype pk_uri = Tezos_client_base.Client_keys.pk_uritype sk_uri = Tezos_client_base.Client_keys.sk_uritype public_key_hash = Tezos_crypto.Signature.Public_key_hash.ttype public_key = Tezos_crypto.Signature.Public_key.ttype secret_key = Tezos_crypto.Signature.Secret_key.ttype signature = Tezos_crypto.Signature.tdescription is a multi-line human readable description of the signer, that should include the format of key specifications.
val neuterize : sk_uri -> pk_uri Tezos_base.TzPervasives.tzresult Lwt.tneuterize sk is the corresponding pk.
val import_secret_key :
io:Tezos_client_base.Client_context.io_wallet ->
pk_uri ->
(public_key_hash * public_key option) Tezos_base.TzPervasives.tzresult Lwt.timport_secret_key ~io pk is the function to be called when interactively importing a key-pair and returning the public key and its hash.
Some signer implementations improve long-term security by requiring human/manual validation while importing keys, the ~io argument can be used to prompt the user in such case.
val public_key : pk_uri -> public_key Tezos_base.TzPervasives.tzresult Lwt.tpublic_key pk is the Ed25519 version of pk.
val public_key_hash :
pk_uri ->
(public_key_hash * public_key option) Tezos_base.TzPervasives.tzresult Lwt.tpublic_key_hash pk is the hash of pk. As some signers will query the full public key to obtain the hash, it can be optionally returned to reduce the amount of queries.
val sign :
?version:Tezos_crypto.Signature.version ->
?watermark:Tezos_crypto.Signature.watermark ->
sk_uri ->
Tezos_base.TzPervasives.Bytes.t ->
signature Tezos_base.TzPervasives.tzresult Lwt.tsign ?watermark sk data is signature obtained by signing data with sk.
val deterministic_nonce :
sk_uri ->
Tezos_base.TzPervasives.Bytes.t ->
Tezos_base.TzPervasives.Bytes.t Tezos_base.TzPervasives.tzresult Lwt.tdeterministic_nonce sk data is a nonce obtained deterministically from data and sk.
val deterministic_nonce_hash :
sk_uri ->
Tezos_base.TzPervasives.Bytes.t ->
Tezos_base.TzPervasives.Bytes.t Tezos_base.TzPervasives.tzresult Lwt.tdeterministic_nonce_hash sk data is a nonce hash obtained deterministically from data and sk.
val supports_deterministic_nonces :
sk_uri ->
bool Tezos_base.TzPervasives.tzresult Lwt.tsupports_deterministic_nonces indicates whether the deterministic_nonce functionality is supported.
val list_known_keys :
Uri.t ->
Tezos_crypto.Signature.Public_key_hash.t list
Tezos_base.TzPervasives.tzresult
Lwt.tlist_known_keys returns the list of public key hashes known by the signer.
val bls_prove_possession :
?override_pk:Tezos_crypto.Signature.Bls.Public_key.t ->
sk_uri ->
Tezos_crypto.Signature.Bls.t Tezos_base.TzPervasives.tzresult Lwt.t