offline tool: verify signature

This commit is contained in:
swrup 2025-12-06 19:18:53 +01:00
parent 325ca30fed
commit 5001cc35c3
4 changed files with 93 additions and 15 deletions

View file

@ -44,7 +44,9 @@ end) : sig
type t
val sign : key:Crypto.EddsaPrivateKey.t -> r -> t
val verify : key:Crypto.EddsaPublicKey.t -> t -> r -> bool
(* Ok () on verification success *)
val verify : key:Crypto.EddsaPublicKey.t -> t -> r -> (unit, string) result
val jsont : t Jsont.t
end = struct
open Crypto
@ -54,7 +56,13 @@ end = struct
let bin = R.bin
let sign ~key r = EddsaSignature.sign ~key (Bin.to_string bin r)
let verify ~key t r = EddsaSignature.verify ~key t ~msg:(Bin.to_string bin r)
let verify ~key t r =
let b = EddsaSignature.verify ~key t ~msg:(Bin.to_string bin r) in
match b with
| false -> Error "signature verification failure"
| true -> Ok ()
let jsont = EddsaSignature.jsont
end