From 91281b5dce59548bc7dcefe17b1a0967cfc66e24 Mon Sep 17 00:00:00 2001 From: swrup Date: Tue, 17 Feb 2026 16:49:33 +0100 Subject: [PATCH] --- src/data_file.ml | 21 --------------------- src/secmod.ml | 25 +++++++++++++++++++------ 2 files changed, 19 insertions(+), 27 deletions(-) diff --git a/src/data_file.ml b/src/data_file.ml index 27526ace..e69de29b 100644 --- a/src/data_file.ml +++ b/src/data_file.ml @@ -1,21 +0,0 @@ -open Bos.OS -open Syntax -open Crypto - -let read fname = File.read fname |> unwrap_err_msg - -let write_eddsa fname priv = - EddsaPrivateKey.to_octets priv |> File.write fname |> unwrap_err_msg - -let write_rsa fname priv = - RsaPrivateKey.to_octets priv |> File.write fname |> unwrap_err_msg - -let read_eddsa fname = - let* data = read fname in - let+ v = EddsaPrivateKey.of_octets data in - v - -let read_rsa fname = - let* data = read fname in - let+ v = RsaPrivateKey.of_octets data in - v diff --git a/src/secmod.ml b/src/secmod.ml index 8eaa47a0..c6535d51 100644 --- a/src/secmod.ml +++ b/src/secmod.ml @@ -45,6 +45,19 @@ module Make (Conn : Pg.CONN) = struct open Crypto module DenominationHash = Hash.DenominationHash + let read fname = Bos.OS.File.read fname |> unwrap_err_msg + let write fname s = Bos.OS.File.write fname s |> unwrap_err_msg + let write_eddsa fname priv = write fname (EddsaPrivateKey.to_octets priv) + let write_rsa fname priv = write fname (RsaPrivateKey.to_octets priv) + + let read_eddsa fname = + let* data = read fname in + EddsaPrivateKey.of_octets data + + let read_rsa fname = + let* data = read fname in + RsaPrivateKey.of_octets data + type sk = Signkey.t type future_sk = Api.FutureSignKey.t type dn = Denomination.t @@ -205,10 +218,10 @@ module Make (Conn : Pg.CONN) = struct let list_to_ht l = Hashtbl.of_seq (List.to_seq l) let load () = - let* sm_key = Data_file.read_eddsa sm_key_fname in + let* sm_key = read_eddsa sm_key_fname in let sm_pubkey = EddsaPrivateKey.pub_of_priv sm_key in - let* sk_keys = list_map Data_file.read_eddsa (List.init 1 sk_fname) in + let* sk_keys = list_map read_eddsa (List.init 1 sk_fname) in let* sk_l = list_map (fun priv -> @@ -226,7 +239,7 @@ module Make (Conn : Pg.CONN) = struct list_map (fun coin -> let section_name = coin.Config.Coin.section_name in - let+ priv = Data_file.read_rsa (dn_fname section_name) in + let+ priv = read_rsa (dn_fname section_name) in (section_name, priv)) Config.Coin.all_coins in @@ -447,11 +460,11 @@ module Make (Conn : Pg.CONN) = struct Ok () let save () = - let* () = Data_file.write_eddsa sm_key_fname t.sm_key in + let* () = write_eddsa sm_key_fname t.sm_key in let* () = Hashtbl.to_seq_values t.sk_key_ht |> List.of_seq - |> List.mapi (fun i priv -> Data_file.write_eddsa (sk_fname i) priv) + |> List.mapi (fun i priv -> write_eddsa (sk_fname i) priv) |> list_iter Fun.id in let* () = @@ -463,7 +476,7 @@ module Make (Conn : Pg.CONN) = struct | None -> Error "invalid state, section_name not found" | Some s -> Ok s in - Data_file.write_rsa (dn_fname section_name) priv) + write_rsa (dn_fname section_name) priv) in Logs.info (fun m -> m "saved secmod private keys data"); Ok ()