This commit is contained in:
parent
84c3b8bec5
commit
8fbcb19bd6
5 changed files with 19 additions and 19 deletions
|
|
@ -173,7 +173,7 @@ let mk_keys ~db_conn (module Keys : Keys.S) ~last_issue_date =
|
||||||
|> Hash.H64.hash
|
|> Hash.H64.hash
|
||||||
in
|
in
|
||||||
let open Signatures.ExchangeKeySet in
|
let open Signatures.ExchangeKeySet in
|
||||||
signf (Keys.sign ~pub:exchange_pub) R.{ list_issue_date; hc }
|
signf (Keys.sign exchange_pub) R.{ list_issue_date; hc }
|
||||||
in
|
in
|
||||||
|
|
||||||
let recoup = (* TODO /recoup *) [] in
|
let recoup = (* TODO /recoup *) [] in
|
||||||
|
|
|
||||||
|
|
@ -8,15 +8,15 @@ module Make (Conn : Pg.CONN) = struct
|
||||||
open Crypto
|
open Crypto
|
||||||
|
|
||||||
let master_pub = Config.Exchange.master_public_key
|
let master_pub = Config.Exchange.master_public_key
|
||||||
let secmod_rsa_pub = Secmod_rsa.sm_key_pub
|
let secmod_rsa_pub = Secmod_rsa.sm_pub
|
||||||
let secmod_eddsa_pub = Secmod_eddsa.sm_key_pub
|
let secmod_eddsa_pub = Secmod_eddsa.sm_pub
|
||||||
|
|
||||||
let sign ~pub s =
|
let sign pub s =
|
||||||
Secmod_eddsa.sign ~pub s |> function
|
Secmod_eddsa.sign ~pub s |> function
|
||||||
| Error e -> Fmt.failwith "sign failure: %s." e
|
| Error e -> Fmt.failwith "sign failure: %s." e
|
||||||
| Ok v -> v
|
| Ok v -> v
|
||||||
|
|
||||||
let sign_denom ~pub s =
|
let sign_denom pub s =
|
||||||
Secmod_rsa.sign ~pub s |> function
|
Secmod_rsa.sign ~pub s |> function
|
||||||
| Error e -> Fmt.failwith "sign_denom failure: %s." e
|
| Error e -> Fmt.failwith "sign_denom failure: %s." e
|
||||||
| Ok v -> v
|
| Ok v -> v
|
||||||
|
|
|
||||||
|
|
@ -6,8 +6,8 @@ module type S = sig
|
||||||
val master_pub : eddsa_pub
|
val master_pub : eddsa_pub
|
||||||
val secmod_rsa_pub : eddsa_pub
|
val secmod_rsa_pub : eddsa_pub
|
||||||
val secmod_eddsa_pub : eddsa_pub
|
val secmod_eddsa_pub : eddsa_pub
|
||||||
val sign : pub:eddsa_pub -> string -> eddsa_sig
|
val sign : eddsa_pub -> string -> eddsa_sig
|
||||||
val sign_denom : pub:rsa_pub -> string -> string
|
val sign_denom : rsa_pub -> string -> string
|
||||||
val find_signkey : eddsa_pub -> Signkey.t option result
|
val find_signkey : eddsa_pub -> Signkey.t option result
|
||||||
val find_denomination : denom_hash -> Denomination.t option result
|
val find_denomination : denom_hash -> Denomination.t option result
|
||||||
val signkeys : unit -> Signkey.t list result
|
val signkeys : unit -> Signkey.t list result
|
||||||
|
|
|
||||||
|
|
@ -12,7 +12,7 @@ type key = {
|
||||||
|
|
||||||
type t = {
|
type t = {
|
||||||
sm_key_priv: EddsaPrivateKey.t;
|
sm_key_priv: EddsaPrivateKey.t;
|
||||||
sm_key_pub: EddsaPublicKey.t;
|
sm_pub: EddsaPublicKey.t;
|
||||||
ht: (EddsaPublicKey.t, key) Hashtbl.t;
|
ht: (EddsaPublicKey.t, key) Hashtbl.t;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -137,10 +137,10 @@ let load () =
|
||||||
| [] -> Ok None
|
| [] -> Ok None
|
||||||
| _l ->
|
| _l ->
|
||||||
let* sm_key_priv = read_key sm_key_fpath in
|
let* sm_key_priv = read_key sm_key_fpath in
|
||||||
let sm_key_pub = EddsaPrivateKey.pub_of_priv sm_key_priv in
|
let sm_pub = EddsaPrivateKey.pub_of_priv sm_key_priv in
|
||||||
let ht = Hashtbl.create 0xff in
|
let ht = Hashtbl.create 0xff in
|
||||||
let () = List.iter (fun k -> Hashtbl.replace ht k.pub k) keys in
|
let () = List.iter (fun k -> Hashtbl.replace ht k.pub k) keys in
|
||||||
Ok (Some { sm_key_priv; sm_key_pub; ht })
|
Ok (Some { sm_key_priv; sm_pub; ht })
|
||||||
|
|
||||||
let init () =
|
let init () =
|
||||||
let* opt = load () in
|
let* opt = load () in
|
||||||
|
|
@ -148,10 +148,10 @@ let init () =
|
||||||
match opt with
|
match opt with
|
||||||
| Some t -> Ok t
|
| Some t -> Ok t
|
||||||
| None ->
|
| None ->
|
||||||
let sm_key_priv, sm_key_pub = EddsaPrivateKey.generate () in
|
let sm_key_priv, sm_pub = EddsaPrivateKey.generate () in
|
||||||
let* () = write_eddsa sm_key_fpath sm_key_priv in
|
let* () = write_eddsa sm_key_fpath sm_key_priv in
|
||||||
let ht = Hashtbl.create 0xff in
|
let ht = Hashtbl.create 0xff in
|
||||||
Ok { sm_key_priv; sm_key_pub; ht }
|
Ok { sm_key_priv; sm_pub; ht }
|
||||||
in
|
in
|
||||||
let now = Absolute.of_ptime (Ptime_clock.now ()) in
|
let now = Absolute.of_ptime (Ptime_clock.now ()) in
|
||||||
let keys = List.of_seq @@ Hashtbl.to_seq_values t.ht in
|
let keys = List.of_seq @@ Hashtbl.to_seq_values t.ht in
|
||||||
|
|
@ -167,7 +167,7 @@ let t =
|
||||||
| Error e -> Fmt.failwith "secmod_eddsa initialization failure: %s." e
|
| Error e -> Fmt.failwith "secmod_eddsa initialization failure: %s." e
|
||||||
| Ok t -> t
|
| Ok t -> t
|
||||||
|
|
||||||
let sm_key_pub = t.sm_key_pub
|
let sm_pub = t.sm_pub
|
||||||
|
|
||||||
let keys () =
|
let keys () =
|
||||||
Hashtbl.to_seq_values t.ht
|
Hashtbl.to_seq_values t.ht
|
||||||
|
|
|
||||||
|
|
@ -14,7 +14,7 @@ type key = {
|
||||||
|
|
||||||
type t = {
|
type t = {
|
||||||
sm_key_priv: EddsaPrivateKey.t;
|
sm_key_priv: EddsaPrivateKey.t;
|
||||||
sm_key_pub: EddsaPublicKey.t;
|
sm_pub: EddsaPublicKey.t;
|
||||||
ht: (RsaPublicKey.t, key) Hashtbl.t;
|
ht: (RsaPublicKey.t, key) Hashtbl.t;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -153,10 +153,10 @@ let load () =
|
||||||
| [] -> Ok None
|
| [] -> Ok None
|
||||||
| _l ->
|
| _l ->
|
||||||
let* sm_key_priv = read_eddsa sm_key_fpath in
|
let* sm_key_priv = read_eddsa sm_key_fpath in
|
||||||
let sm_key_pub = EddsaPrivateKey.pub_of_priv sm_key_priv in
|
let sm_pub = EddsaPrivateKey.pub_of_priv sm_key_priv in
|
||||||
let ht = Hashtbl.create 0xff in
|
let ht = Hashtbl.create 0xff in
|
||||||
let () = List.iter (fun k -> Hashtbl.replace ht k.pub k) keys in
|
let () = List.iter (fun k -> Hashtbl.replace ht k.pub k) keys in
|
||||||
Ok (Some { sm_key_priv; sm_key_pub; ht })
|
Ok (Some { sm_key_priv; sm_pub; ht })
|
||||||
|
|
||||||
let init () =
|
let init () =
|
||||||
let* opt = load () in
|
let* opt = load () in
|
||||||
|
|
@ -164,10 +164,10 @@ let init () =
|
||||||
match opt with
|
match opt with
|
||||||
| Some t -> Ok t
|
| Some t -> Ok t
|
||||||
| None ->
|
| None ->
|
||||||
let sm_key_priv, sm_key_pub = EddsaPrivateKey.generate () in
|
let sm_key_priv, sm_pub = EddsaPrivateKey.generate () in
|
||||||
let* () = write_eddsa sm_key_fpath sm_key_priv in
|
let* () = write_eddsa sm_key_fpath sm_key_priv in
|
||||||
let ht = Hashtbl.create 0xff in
|
let ht = Hashtbl.create 0xff in
|
||||||
Ok { sm_key_priv; sm_key_pub; ht }
|
Ok { sm_key_priv; sm_pub; ht }
|
||||||
in
|
in
|
||||||
let now = Absolute.of_ptime (Ptime_clock.now ()) in
|
let now = Absolute.of_ptime (Ptime_clock.now ()) in
|
||||||
let all_keys = List.of_seq @@ Hashtbl.to_seq_values t.ht in
|
let all_keys = List.of_seq @@ Hashtbl.to_seq_values t.ht in
|
||||||
|
|
@ -193,7 +193,7 @@ let t =
|
||||||
| Error e -> Fmt.failwith "secmod_rsa initialization failure: %s." e
|
| Error e -> Fmt.failwith "secmod_rsa initialization failure: %s." e
|
||||||
| Ok t -> t
|
| Ok t -> t
|
||||||
|
|
||||||
let sm_key_pub = t.sm_key_pub
|
let sm_pub = t.sm_pub
|
||||||
|
|
||||||
let keys () =
|
let keys () =
|
||||||
Hashtbl.to_seq_values t.ht
|
Hashtbl.to_seq_values t.ht
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue