Module Util_crypto

val key_25519_of_cstruct : ('a -> ('b, [< `At_infinity | `Invalid_format | `Invalid_length | `Invalid_range | `Low_order | `Not_on_curve ]) Stdlib.result) -> 'a -> ('b, [> `Msg of string ]) Stdlib.result
val pubkey_25519_of_cstruct : Cstruct.t -> (Mirage_crypto_ec.Ed25519.pub, [> `Msg of string ]) Stdlib.result
val privkey_25519_of_cstruct : Cstruct.t -> (Mirage_crypto_ec.Ed25519.priv, [> `Msg of string ]) Stdlib.result
val pubkey_25519_to_cstruct : Mirage_crypto_ec.Ed25519.pub -> Cstruct.t
val privkey_25519_to_cstruct : Mirage_crypto_ec.Ed25519.priv -> Cstruct.t
val pubkey_25519_of_string : string -> (Mirage_crypto_ec.Ed25519.pub, [> `Msg of string ]) Stdlib.result
val pubkey_25519_to_string : Mirage_crypto_ec.Ed25519.pub -> string
val privkey_25519_of_string : string -> (Mirage_crypto_ec.Ed25519.priv, [> `Msg of string ]) Stdlib.result
val privkey_25519_to_string : Mirage_crypto_ec.Ed25519.priv -> string
val privkey_25519_to_string_base64 : Mirage_crypto_ec.Ed25519.priv -> string
val pubkey_25519_to_string_base64 : Mirage_crypto_ec.Ed25519.pub -> string
val fingerprint_ed25519_sha256 : Mirage_crypto_ec.Ed25519.pub -> [> `SHA256 ] * Cstruct.t
val sign : Mirage_crypto_ec.Ed25519.priv -> string -> string
val verify : Mirage_crypto_ec.Ed25519.pub -> string -> string -> bool
val blake_str : ?size:'a -> (?size:'a -> bytes -> bytes) -> string -> string
val blake2b_32' : ?size:int -> Hacl_star.Hacl.Blake2b_32.bytes -> Hacl_star.Hacl.Blake2b_32.bytes
val blake2b_32 : ?size:int -> string -> string
val blake2b_256' : ?size:int -> Hacl_star.Hacl.Blake2b_256.bytes -> Hacl_star.Hacl.Blake2b_256.bytes
val blake2b_256 : ?size:int -> string -> string
val blake2s_32' : ?size:int -> Hacl_star.Hacl.Blake2s_32.bytes -> Hacl_star.Hacl.Blake2s_32.bytes
val blake2s_32 : ?size:int -> string -> string
val blake2s_128' : ?size:int -> Hacl_star.Hacl.Blake2s_128.bytes -> Hacl_star.Hacl.Blake2s_128.bytes
val blake2s_128 : ?size:int -> string -> string