This commit is contained in:
parent
92a4f9a469
commit
76acc6b7d8
3 changed files with 48 additions and 20 deletions
|
|
@ -18,6 +18,25 @@ type t = {
|
|||
master_sig: EddsaSignature.t option;
|
||||
}
|
||||
|
||||
module Unsigned = struct
|
||||
type t = {
|
||||
pub: RsaPublicKey.t;
|
||||
section_name: string;
|
||||
value: Amount.t;
|
||||
stamp_start: Ptime.t;
|
||||
stamp_expire_withdraw: Ptime.t;
|
||||
stamp_expire_deposit: Ptime.t;
|
||||
stamp_expire_legal: Ptime.t;
|
||||
fee_withdraw: Amount.t;
|
||||
fee_deposit: Amount.t;
|
||||
fee_refresh: Amount.t;
|
||||
fee_refund: Amount.t;
|
||||
age_mask: int;
|
||||
h_pub: Bin_type.DenominationHash.t;
|
||||
sign: string -> RsaSignature.t;
|
||||
}
|
||||
end
|
||||
|
||||
let make
|
||||
({
|
||||
section_name;
|
||||
|
|
@ -50,7 +69,7 @@ let make
|
|||
let pub = pub_of_priv priv in
|
||||
let h_pub = Bin_type.DenominationHash.hash (RsaPublicKey.to_octets pub) in
|
||||
let sign = RsaSignature.sign ~key:priv in
|
||||
let master_sig = None in
|
||||
Unsigned.
|
||||
{
|
||||
pub;
|
||||
section_name;
|
||||
|
|
@ -66,5 +85,4 @@ let make
|
|||
age_mask= 0;
|
||||
h_pub;
|
||||
sign;
|
||||
master_sig;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -11,6 +11,7 @@ module Secmod_signkey = struct
|
|||
keys: Signkey.t list;
|
||||
}
|
||||
|
||||
|
||||
let v =
|
||||
let finally _key = () in
|
||||
Vif.Device.v ~name:"secmod_signkey" ~finally [] @@ fun (_env : env) ->
|
||||
|
|
|
|||
|
|
@ -10,6 +10,16 @@ type t = {
|
|||
master_sig: EddsaSignature.t option;
|
||||
}
|
||||
|
||||
module Unsigned = struct
|
||||
type t = {
|
||||
pub: EddsaPublicKey.t;
|
||||
stamp_start: Ptime.t;
|
||||
stamp_expire: Ptime.t;
|
||||
stamp_end: Ptime.t;
|
||||
sign: string -> EddsaSignature.t;
|
||||
}
|
||||
end
|
||||
|
||||
let generate () =
|
||||
(* TODO
|
||||
- look if it exists
|
||||
|
|
@ -24,5 +34,4 @@ let generate () =
|
|||
let stamp_end = stamp_expire in
|
||||
let priv, pub = Mirage_crypto_ec.Ed25519.generate () in
|
||||
let sign s = EddsaSignature.sign ~key:priv s in
|
||||
let master_sig = None in
|
||||
{ pub; stamp_start; stamp_expire; stamp_end; master_sig; sign }
|
||||
Unsigned.{ pub; stamp_start; stamp_expire; stamp_end; sign }
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue