Tezos_signer_services.Signer_messagestype pkh = | Pkh_with_version of Tezos_crypto.Signature.Public_key_hash.t
* Tezos_crypto.Signature.version| Pkh of Tezos_crypto.Signature.Public_key_hash.tval request_pkh :
?version:Tezos_crypto.Signature.version ->
Tezos_crypto.Signature.Public_key_hash.t ->
pkhrequest_pkh ?version pkh builds the pkh field of a signing request, tagging it with version only when the signature version changes how pkh signs.
BLS is the only scheme for which it does, and pkh is encoded accordingly: it has a versioned case for BLS only. The other schemes either sign identically in every version, or exist in a single one (Mldsa44 was introduced by version 3). A scheme whose signature starts to depend on the version needs both a branch here and a versioned case in the encoding.
module type Authenticated_signing_request = sig ... endmodule Sign : sig ... endmodule type Authenticated_request = sig ... endmodule Deterministic_nonce : sig ... endmodule Deterministic_nonce_hash : sig ... endmodule Supports_deterministic_nonces : sig ... endmodule Public_key : sig ... endmodule Authorized_keys : sig ... endmodule Known_keys : sig ... endmodule Bls_prove_possession : sig ... endmodule Request : sig ... end