imgtool: allow verify mode to use public ed25519 keys
Verify mode already works for the public halves of RSA and ECDSA keypairs.
This patch corrects an apparent oversight, enabling that functionality
in Ed25519.
Signed-off-by: Ross Younger <crazyscot@gmail.com>
diff --git a/scripts/imgtool/keys/ed25519.py b/scripts/imgtool/keys/ed25519.py
index 6ca7b10..08f67b6 100644
--- a/scripts/imgtool/keys/ed25519.py
+++ b/scripts/imgtool/keys/ed25519.py
@@ -57,6 +57,13 @@
def sig_len(self):
return 64
+ def verify_digest(self, signature, digest):
+ """Verify that signature is valid for given digest"""
+ k = self.key
+ if isinstance(self.key, ed25519.Ed25519PrivateKey):
+ k = self.key.public_key()
+ return k.verify(signature=signature, data=digest)
+
class Ed25519(Ed25519Public):
"""
@@ -98,10 +105,3 @@
def sign_digest(self, digest):
"""Return the actual signature"""
return self.key.sign(data=digest)
-
- def verify_digest(self, signature, digest):
- """Verify that signature is valid for given digest"""
- k = self.key
- if isinstance(self.key, ed25519.Ed25519PrivateKey):
- k = self.key.public_key()
- return k.verify(signature=signature, data=digest)