如果我从中使用load_pem_private_key from,我将得到ValueError(“无法反序列化密钥数据。”)密码学.危险品.原语.序列化
要添加更多上下文:
我的钥匙从
-----BEGIN OPENSSH PRIVATE KEY-----
引发此错误的代码段
key = serialization.load_pem_private_key(data=private_key.encode(),
password=None,
backend=default_backend())
错误的回溯显示backend=default\u backend())—>;returnbackend.load_pem_私有密钥(数据,密码)在load_pem_private_key中->password,在load_pem_private_key中 ->;self.\u handle_key_loading_error()在_load_key中
pyca/cryptography主要使用OpenSSL和for private key supports mostly the formats OpenSSL supports,后者不包括OpenSSH的“new”格式。但是,它确实添加了OpenSSH公钥格式,因此询问他们添加OpenSSH private可能并不荒谬。在此期间。。。在
如果您有OpenSSH,您可以使用
ssh-keygen
将OpenSSH的“new”格式转换回OpenSSH的“old”格式,即OpenSSL的“传统”或“legacy”格式,即使您使新密码与旧密码相同,或者您显然想要一个未加密的文件,将新密码设为空,就像旧密码一样:或者,如果您已经安装了putty0.69,puttygen也可以这样做,尽管Windows和Unix的UI各不相同。在
重复:
SSH key generated by ssh-keygen is not recognized by Paramiko: "not a valid RSA private key file"(Paramiko在Python中是SSH)
"Invalid privatekey" when using JSch(Java,但问题相同)
相关问题 更多 >
编程相关推荐