I am using paramiko==2.11.0
and I am trying to create a RSAKey
representation of a public key which I have in memory, because I will later add it as a known host key.
import paramiko
host_public_key_data = b"""
---- BEGIN SSH2 PUBLIC KEY ----
Comment: ""
AAAAB3NzaC1yc2EAAAADAQABAAACAQCHr4+70xMW2KkShW0/+VAZQQ/dMgGPcKRS
zOWhkSgvAuKPTpxkmkMh5/tXHKkFuTWdrGF4hP0acBIzkYTubpwJO3q4aqnSCD1C
xpMa8uZXgTHKAx3xUkBlZGUYrNSqjD4+yNIV/mkApzAnjGlupLxwH+pfKIY6IfbA
B2HtD3RbvUCWGKbPORRZKCuDLmztfDajM2l8eyixWn2/iwbI00usuUnvMbKsaN9t
NNjHz06dQITWWNuQICwBNiyWiWpVPezdxkXZ2MkfbdIKdFK72MAtXG4CFvk5x9Jl
7xjb53Yv5Dv94HmCXR43WQ8+WB2iBhUWt08SWr9qG3CAir4GT5D3l3esdV5mIKZ+
7T9TtATXa8HJE8EcB4nAblKXnAFSbzIL/qvCiEJkk2GfwUDWzll21o4HljZWHK0T
odwReL7aQb44XdTB26CMGnDxLhCImbRYeFrolm6Q/K8yAm6QSiZdFYXolQ7wj1fU
aTwzCea+EY1nEj/Uq77l4w7zU6YaQtiotEtVqb/4x5YRyJI/JiPDA56k+gXB+Rm6
jBS+qOL+dP/LeTQNt3d1nz4jw6E0MkXqSIk8drd/TOnIslkBJtm2YpBDaBvRLg2b
EXMDBCtTnjBA/Xnk7LnRFUcq1PjI/4kckNlhRgIbj0d9S6RzFPHjq9i0iCCX47ws
eI7DoRWLXw==
"""
host_public_key = paramiko.RSAKey(data=host_public_key_data) # public key used as host key
ssh_client = paramiko.SSHClient()
ssh_client.get_host_keys().add(HOST, 'ssh-rsa', host_public_key)
ssh_client.connect(HOST, port=PORT, pkey=my_client_private_key)
However, I am getting the following error:
SSHException: Invalid key (class: RSAKey, data type: - BEGIN SSH2 PUBLIC KEY ----
Comment: ""
AAAAB3NzaC1yc2EAAAADAQABAAACAQCHr4+70xMW2KkShW0/+VAZQQ/dMgGPcKRS
zOWhkSgvAuKPTpxkmkMh5/tXHKkFuTWdrGF4hP0acBIzkYTubpwJO3q4aqnSCD1C
xpMa8uZXgTHKAx3xUkBlZGUYrNSqjD4+yNIV/mkApzAnjGlupLxwH+pfKIY6IfbA
B2HtD3RbvUCWGKbPORRZKCuDLmztfDajM2l8eyixWn2/iwbI00usuUnvMbKsaN9t
NNjHz06dQITWWNuQICwBNiyWiWpVPezdxkXZ2MkfbdIKdFK72MAtXG4CFvk5x9Jl
7xjb53Yv5Dv94HmCXR43WQ8+WB2iBhUWt08SWr9qG3CAir4GT5D3l3esdV5mIKZ+
7T9TtATXa8HJE8EcB4nAblKXnAFSbzIL/qvCiEJkk2GfwUDWzll21o4HljZWHK0T
odwReL7aQb44XdTB26CMGnDxLhCImbRYeFrolm6Q/K8yAm6QSiZdFYXolQ7wj1fU
aTwzCea+EY1nEj/Uq77l4w7zU6YaQtiotEtVqb/4x5YRyJI/JiPDA56k+gXB+Rm6
jBS+qOL+dP/LeTQNt3d1nz4jw6E0MkXqSIk8drd/TOnIslkBJtm2YpBDaBvRLg2b
EXMDBCtTnjBA/Xnk7LnRFUcq1PjI/4kckNlhRgIbj0d9S6RzFPHjq9i0iCCX47ws
eI7DoRWLXw==
---- END SSH2 PUBLIC KEY ----
Any idea why paramiko is declaring it as an invalid key?