This commit is contained in:
swrup 2026-02-27 20:42:10 +01:00
parent c833da2540
commit 33293dbad8
4 changed files with 21 additions and 19 deletions

View file

@ -16,6 +16,23 @@ type t = {
master_sig: Signatures.DenominationKeyValidity.t; master_sig: Signatures.DenominationKeyValidity.t;
} }
let verify_denomination_key_validity ~key dn =
let open Signatures.DenominationKeyValidity in
verify key dn.master_sig
{
R.master= key;
start= dn.stamp_start;
expire_withdraw= dn.stamp_expire_withdraw;
expire_spend= dn.stamp_expire_deposit;
expire_legal= dn.stamp_expire_legal;
value= dn.value;
fee_withdraw= dn.fee_withdraw;
fee_deposit= dn.fee_deposit;
fee_refresh= dn.fee_refresh;
fee_refund= dn.fee_refund;
denom_hash= dn.h_pub;
}
let make_denom_group_sorted denominations = let make_denom_group_sorted denominations =
let open Syntax in let open Syntax in
(* use hashtbl to re-group denoms *) (* use hashtbl to re-group denoms *)

View file

@ -288,7 +288,8 @@ module Make (Conn : Pg.CONN) : S = struct
= =
let* fdn = find_future_denomination h_denom_pub in let* fdn = find_future_denomination h_denom_pub in
let dn = dn_of_future_dn fdn h_denom_pub master_sig in let dn = dn_of_future_dn fdn h_denom_pub master_sig in
Verify_signature.denomination_key_validity ~key:Config.master_public_key dn Denomination.verify_denomination_key_validity ~key:Config.master_public_key
dn
let certify_future_signkey Api.SignKeySignature.{ key= pub; master_sig } = let certify_future_signkey Api.SignKeySignature.{ key= pub; master_sig } =
match Sm_eddsa.find_key pub with match Sm_eddsa.find_key pub with

View file

@ -1,17 +0,0 @@
let denomination_key_validity ~key dn =
let open Denomination in
let open Signatures.DenominationKeyValidity in
verify key dn.master_sig
{
R.master= key;
start= dn.stamp_start;
expire_withdraw= dn.stamp_expire_withdraw;
expire_spend= dn.stamp_expire_deposit;
expire_legal= dn.stamp_expire_legal;
value= dn.value;
fee_withdraw= dn.fee_withdraw;
fee_deposit= dn.fee_deposit;
fee_refresh= dn.fee_refresh;
fee_refund= dn.fee_refund;
denom_hash= dn.h_pub;
}

View file

@ -77,7 +77,8 @@ let keys content =
let* () = let* () =
denom_l denom_l
|> list_iter (fun dn -> |> list_iter (fun dn ->
Verify_signature.denomination_key_validity ~key:v.master_public_key dn) Denomination.verify_denomination_key_validity ~key:v.master_public_key
dn)
in in
let* () = let* () =
let last_issue_date = let last_issue_date =