mte/.jjconflict-base-0/src/secmod.mli

47 lines
1.5 KiB
OCaml
Raw Normal View History

2026-01-22 05:12:20 +01:00
module type S = sig
open Crypto
val sign_with_sm_key : string -> eddsa_sig
val sign_with_signkey : pub:eddsa_pub -> string -> eddsa_sig
val verify_with_master_key : eddsa_sig -> msg:string -> (unit, string) result
val verify_with_sm_key : eddsa_sig -> msg:string -> (unit, string) result
val verify_with_signkey :
pub:eddsa_pub -> eddsa_sig -> msg:string -> (unit, string) result
(* TODO query database instead? *)
val get_sm_key_pub : unit -> eddsa_pub
val get_signkeys_data : unit -> Signkey_data.t list
val get_denoms_data : unit -> Denom_data.t list
val find_signkey_data : eddsa_pub -> Signkey_data.t option
val find_denom_data : denomination_hash -> Denom_data.t option
val find_denom_section_name : denomination_hash -> string option
(* - management operations - *)
(* TODO
problem of keeping db and secmod state syncronized
do db interaction from secmod? *)
2025-12-15 16:43:49 +01:00
2026-01-22 05:12:20 +01:00
val add_signkey_master_signatures :
2026-02-05 19:26:59 +01:00
(eddsa_pub * Signatures.ExchangeSigningKeyValidity.t) list ->
2026-01-22 05:12:20 +01:00
(unit, string) result
2025-12-15 15:01:40 +01:00
2026-01-22 05:12:20 +01:00
val add_denom_master_signatures :
2026-02-05 19:26:59 +01:00
(denomination_hash * Signatures.DenominationKeyValidity.t) list ->
2026-01-22 05:12:20 +01:00
(unit, string) result
2025-12-16 14:20:41 +01:00
2026-01-22 05:12:20 +01:00
val revoke_signkey :
2026-02-05 19:26:59 +01:00
eddsa_pub ->
Signatures.MasterSigningKeyRevocation.t ->
(unit, string) result
2025-12-16 14:20:41 +01:00
2026-01-22 05:12:20 +01:00
val revoke_denomination :
denomination_hash ->
2026-02-05 19:26:59 +01:00
Signatures.MasterDenominationKeyRevocation.t ->
2026-01-22 05:12:20 +01:00
(unit, string) result
val store : unit -> (unit, string) result
2026-01-22 05:12:20 +01:00
end
2025-12-15 15:01:40 +01:00
2026-01-22 05:12:20 +01:00
module Make (_ : Pg.CONN) : S