服务器上生成的密钥是pem文件,需要转为pub文件xshell才能用
from cryptography.hazmat.primitives import serialization
def pem_to_pub(pem_file, pub_file):
with open(pem_file, 'rb') as f:
private_key = serialization.load_pem_private_key(
f.read(),
password=None # 如果有密码,请提供密码作为字符串
)
public_key = private_key.public_key()
with open(pub_file, 'wb') as f:
f.write(
public_key.public_bytes(
encoding=serialization.Encoding.OpenSSH,
format=serialization.PublicFormat.OpenSSH
)
)
# 使用示例
pem_to_pub('private_key.pem', 'public_key.pub')