mte/src/secmod.mli
2025-12-16 14:21:00 +01:00

44 lines
1.1 KiB
OCaml

open Crypto
type t
val sign_with_sm_key : t -> string -> eddsa_sig
val verify_with_sm_key : t -> eddsa_sig -> msg:string -> (unit, string) result
val sign_with_signkey :
t -> pub:eddsa_pub -> string -> (eddsa_sig, string) result
val verify_with_signkey :
t -> pub:eddsa_pub -> eddsa_sig -> msg:string -> (unit, string) result
val get_sm_key_priv : t -> eddsa_priv
val get_sm_key_pub : t -> eddsa_pub
val get_signkeys : t -> Signkey_data.t list
val get_denoms : t -> Denom_data.t list
val init : (module Pg.CONN) -> t
(* - management operations - *)
val add_signkey_master_signatures :
(module Pg.CONN) ->
t ->
(eddsa_pub * Bin_sig.ExchangeSigningKeyValidity.t) list ->
(unit, string) result
val add_denom_master_signatures :
(module Pg.CONN) ->
t ->
(denomination_hash * Bin_sig.DenominationKeyValidity.t) list ->
(unit, string) result
val revoke_signkey :
t ->
eddsa_pub ->
Bin_sig.MasterSigningKeyRevocation.t ->
(unit, string) result
val revoke_denomination :
t ->
denomination_hash ->
Bin_sig.MasterDenominationKeyRevocation.t ->
(unit, string) result