diff --git a/test/validate_response.ml b/test/validate_response.ml index fd6072be..0ce0fbc3 100644 --- a/test/validate_response.ml +++ b/test/validate_response.ml @@ -64,7 +64,19 @@ let keys content = if Signkey.is_valid_at ~timestamp:now sk then Ok () else Fmt.error "exchange_pub is not valid at the current time" in - (* validate exchange_sig *) + let* () = + let hc = + v.denominations + |> List.map (fun (DenomGroup.Rsa g) -> g.RsaDenomGroup.denoms) + |> List.concat_map (List.map (fun dn -> dn.RsaDenom.master_sig)) + |> List.map Signatures.DenominationKeyValidity.to_octets + |> String.concat "" + |> Hash.H64.hash + in + let open Signatures.ExchangeKeySet in + verify v.exchange_pub v.exchange_sig + R.{ list_issue_date= v.list_issue_date; hc } + in (* validate denominations *) (* validate global-fees *)