fix check for replay attack + revoke 1sec in the future

This commit is contained in:
swrup 2026-02-26 17:52:30 +01:00
parent a3880e5377
commit b1602a5020
5 changed files with 67 additions and 48 deletions

View file

@ -299,7 +299,14 @@ let enable_auditor ~output ~master_key ~auditor_url ~auditor_name ~auditor_pub =
let disable_auditor ~output ~master_key ~auditor_pub =
let* key = read_master_key_file master_key in
let ns = Mtime_clock.now_ns () in
let validity_end = Timestamp.of_s @@ Int64.unsigned_div ns 1_000_000_000L in
let open Time in
let validity_end =
TimeAbsolute.of_s @@ Int64.unsigned_div ns 1_000_000_000L
in
(* hack for tests: +1sec to be sure it overwrite previous timestamp *)
let validity_end =
Timestamp.of_absolute (TimeAbsolute.add validity_end TimeRelative.(of_s 1L))
in
let master_sig =
let open Signatures.MasterDelAuditor in
signf (EddsaSignature.sign ~key) { end_date= validity_end; auditor_pub }
@ -397,7 +404,14 @@ let enable_wire ~output ~master_key ~payto_uri ~bank_label ~priority =
let disable_wire ~output ~master_key ~payto_uri =
let* key = read_master_key_file master_key in
let ns = Mtime_clock.now_ns () in
let validity_end = Timestamp.of_s @@ Int64.unsigned_div ns 1_000_000_000L in
let open Time in
let validity_end =
TimeAbsolute.of_s @@ Int64.unsigned_div ns 1_000_000_000L
in
(* hack for tests: +1sec to be sure it overwrite previous timestamp *)
let validity_end =
Timestamp.of_absolute (TimeAbsolute.add validity_end TimeRelative.(of_s 1L))
in
let h_wire = Hash.FullPaytoHash.hash payto_uri in
let master_sig_del =
let open Signatures.MasterDelWire in