This commit is contained in:
swrup 2025-12-15 17:05:04 +01:00
parent f0254c6f5d
commit ab7b627d1a
2 changed files with 46 additions and 3 deletions

View file

@ -77,13 +77,15 @@ module MK (R : sig
val bin : r Bin.t
end) : sig
open Crypto
type r = R.r
type t
val sign : key:Crypto.EddsaPrivateKey.t -> r -> t
val sign : key:EddsaPrivateKey.t -> r -> t
(* Ok () on verification success *)
val verify : key:Crypto.EddsaPublicKey.t -> t -> r -> (unit, string) result
val verify : key:EddsaPublicKey.t -> t -> r -> (unit, string) result
val jsont : t Jsont.t
val caqti : t Caqti_type.t
end = struct
@ -102,7 +104,45 @@ end = struct
| true -> Ok ()
let jsont = EddsaSignature.jsont
let caqti : EddsaSignature.t Caqti_type.t = EddsaSignature.caqti
let caqti = EddsaSignature.caqti
end
module MK' (R : sig
type r
type key
val bin : r Bin.t
end) : sig
open Crypto
type key = R.key
type r = R.r
type t
val sign : key:EddsaPrivateKey.t -> r -> t
(* Ok () on verification success *)
val verify : key:EddsaPublicKey.t -> t -> r -> (unit, string) result
val jsont : t Jsont.t
val caqti : t Caqti_type.t
end = struct
open Crypto
type key = R.key
type r = R.r
type t = EddsaSignature.t
let bin = R.bin
let sign ~key r = EddsaSignature.sign ~key (Bin.to_string bin r)
let verify ~key t r =
let b = EddsaSignature.verify ~key t ~msg:(Bin.to_string bin r) in
match b with
| false -> Error "signature verification failure"
| true -> Ok ()
let jsont = EddsaSignature.jsont
let caqti = EddsaSignature.caqti
end
module DenominationKeyAnnouncement = struct

View file

@ -2,6 +2,9 @@ open Crypto
type t
(*val sm_sign : t -> string -> eddsa_sig*)
(* *)
val get_sm_key_priv : t -> eddsa_priv
val get_sm_key_pub : t -> eddsa_pub
val get_signkeys : t -> Signkey_data.t list