summaryrefslogtreecommitdiff
path: root/paramiko/ed25519key.py
diff options
context:
space:
mode:
authorJeff Forcier <jeff@bitprophet.org>2017-08-28 21:26:18 -0700
committerJeff Forcier <jeff@bitprophet.org>2017-08-28 21:26:18 -0700
commit59f9a64239b5e4be7b6a067cb63fa4a5420121fe (patch)
tree815e556207f20cb720d4c0ce31932abb146c36c6 /paramiko/ed25519key.py
parente0babd7a2da93501fed8a83da0cfb70ce6a90bbd (diff)
downloadparamiko-59f9a64239b5e4be7b6a067cb63fa4a5420121fe.tar.gz
Implement ed25519 certs.
God damn it took me ages to notice that frickin self.public_blob = None bit :( :( :( :(
Diffstat (limited to 'paramiko/ed25519key.py')
-rw-r--r--paramiko/ed25519key.py8
1 files changed, 5 insertions, 3 deletions
diff --git a/paramiko/ed25519key.py b/paramiko/ed25519key.py
index d904f1ac..2e1eb18a 100644
--- a/paramiko/ed25519key.py
+++ b/paramiko/ed25519key.py
@@ -50,8 +50,11 @@ class Ed25519Key(PKey):
if msg is None and data is not None:
msg = Message(data)
if msg is not None:
- if msg.get_text() != "ssh-ed25519":
- raise SSHException("Invalid key")
+ self._check_type_and_load_cert(
+ msg=msg,
+ key_type="ssh-ed25519",
+ cert_type="ssh-ed25519-cert-v01@openssh.com",
+ )
verifying_key = nacl.signing.VerifyKey(msg.get_binary())
elif filename is not None:
with open(filename, "r") as f:
@@ -63,7 +66,6 @@ class Ed25519Key(PKey):
self._signing_key = signing_key
self._verifying_key = verifying_key
- self.public_blob = None
def _parse_signing_key_data(self, data, password):
from paramiko.transport import Transport