filter un-signed signkeys
This commit is contained in:
parent
bf61b306ba
commit
0fed6735db
1 changed files with 18 additions and 19 deletions
|
|
@ -117,8 +117,11 @@ let mk_keys ~db_conn ~sm ~last_issue_date =
|
|||
List.map denomgroup_of_denomdata denom_data_l
|
||||
in
|
||||
|
||||
let* signkeys =
|
||||
let+ signkey_data_l = Pg.get_active_signkeys db_conn |> unwrap_err_caqti in
|
||||
let signkeys =
|
||||
(* TODO
|
||||
use database signkey data / verify secmod and database are in sync *)
|
||||
(*let+ signkey_data_l = Pg.get_active_signkeys db_conn |> unwrap_err_caqti in*)
|
||||
let signkey_data_l = Secmod.get_signkeys_data sm in
|
||||
let signkey_data_l =
|
||||
List.sort
|
||||
(fun a b ->
|
||||
|
|
@ -126,7 +129,7 @@ let mk_keys ~db_conn ~sm ~last_issue_date =
|
|||
Stdlib.compare a.stamp_start b.stamp_start)
|
||||
signkey_data_l
|
||||
in
|
||||
List.map
|
||||
List.filter_map
|
||||
(fun Signkey_data.
|
||||
{
|
||||
pub;
|
||||
|
|
@ -136,12 +139,12 @@ let mk_keys ~db_conn ~sm ~last_issue_date =
|
|||
master_sig;
|
||||
revoked_sig= _;
|
||||
} ->
|
||||
let master_sig =
|
||||
match master_sig with
|
||||
| None -> Fmt.failwith "signkey_data without master_sig"
|
||||
| Some v -> v
|
||||
in
|
||||
SignKey.{ key= pub; stamp_start; stamp_expire; stamp_end; master_sig })
|
||||
| None -> None
|
||||
| Some master_sig ->
|
||||
Some
|
||||
SignKey.
|
||||
{ key= pub; stamp_start; stamp_expire; stamp_end; master_sig })
|
||||
signkey_data_l
|
||||
in
|
||||
|
||||
|
|
@ -155,17 +158,13 @@ let mk_keys ~db_conn ~sm ~last_issue_date =
|
|||
(* Compact EdDSA signature (binary-only) over the
|
||||
contatentation of all of the master_sigs (in reverse
|
||||
chronological order by group) in the arrays under "denominations". *)
|
||||
let l =
|
||||
List.map
|
||||
(fun v ->
|
||||
match v.Denom_data.master_sig with
|
||||
| None -> Fmt.failwith "denom_data without master_sig"
|
||||
| Some v -> v)
|
||||
let hc =
|
||||
denom_data_l
|
||||
|> List.filter_map (fun v -> v.Denom_data.master_sig)
|
||||
|> List.map Bin_sig.DenominationKeyValidity.to_octets
|
||||
|> String.concat ""
|
||||
|> Bin_type.Hash_64.hash
|
||||
in
|
||||
let l = List.map (fun v -> Bin_sig.DenominationKeyValidity.to_octets v) l in
|
||||
let data = String.concat "" l in
|
||||
let hc = Bin_type.Hash_64.hash data in
|
||||
let open Bin_sig.ExchangeKeySet in
|
||||
sign_f
|
||||
~f:(Secmod.sign_with_signkey sm ~pub:exchange_pub)
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue