OpenSSH秘密鍵がめちゃくちゃです:キーロード:無効な形式

OpenSSH秘密鍵がめちゃくちゃです:キーロード:無効な形式

SSH秘密鍵のパスワードを変更しようとすると、sshから次のエラーメッセージが表示されます。

Load key "/home/me/.ssh/id_rsa.pub": invalid format

パスワード暗号化はまだ機能し、私のパスワードは正しいです。パスワードを変更しようとし、間違ったパスワードを入力した場合

$ ssh-keygen -p -f id_rsa.broken
Enter old passphrase: 
Failed to load key id_rsa.broken: incorrect passphrase supplied to decrypt private key

ただし、正しいパスワードを入力すると、次の結果が表示されます。

$ ssh-keygen -p -f id_rsa.broken
Enter old passphrase: 
Failed to load key id_rsa.broken: invalid format

そのため、新しいパスワードが正しいと確信しています。また、OpenSSLを使用してキーを処理しようとしましたが、多くのエラーが発生しました(少なくとも詳細は含まれています)。

openssl rsa -text -in id_rsa.broken -out id_rsa.openssl-decrypt
Enter pass phrase for id_rsa.broken:
unable to load Private Key
140674488831512:error:0D0680A8:asn1 encoding 
routines:ASN1_CHECK_TLEN:wrong tag:tasn_dec.c:1199:
140674488831512:error:0D07803A:asn1 encoding 
routines:ASN1_ITEM_EX_D2I:nested asn1 error:tasn_dec.c:374:Type=RSA
140674488831512:error:04093004:rsa routines:OLD_RSA_PRIV_DECODE:RSA 
lib:rsa_ameth.c:121:
140674488831512:error:0D0680A8:asn1 encoding 
routines:ASN1_CHECK_TLEN:wrong tag:tasn_dec.c:1199:
140674488831512:error:0D07803A:asn1 encoding 
routines:ASN1_ITEM_EX_D2I:nested asn1 
error:tasn_dec.c:374:Type=PKCS8_PRIV_KEY_INFO
140674488831512:error:0907B00D:PEM 
routines:PEM_READ_BIO_PRIVATEKEY:ASN1 lib:pem_pkey.c:141:

注:この質問の元の著者は、類似しているが同じではないエラーを確認しました。

140405067433728:error:0D07209B:asn1 encoding 
routines:ASN1_get_object:too long:crypto/asn1/asn1_lib.c:91:
140405067433728:error:0D068066:asn1 encoding 
routines:asn1_check_tlen:bad object 
header:crypto/asn1/tasn_dec.c:1100:
140405067433728:error:0D07803A:asn1 encoding 
routines:asn1_item_embed_d2i:nested asn1 
error:crypto/asn1/tasn_dec.c:274:Type=RSA
140405067433728:error:04093004:rsa routines:old_rsa_priv_decode:RSA 
lib:crypto/rsa/rsa_ameth.c:72:
140405067433728:error:0D07209B:asn1 encoding 
routines:ASN1_get_object:too long:crypto/asn1/asn1_lib.c:91:
140405067433728:error:0D068066:asn1 encoding 
routines:asn1_check_tlen:bad object 
header:crypto/asn1/tasn_dec.c:1100:
140405067433728:error:0D07803A:asn1 encoding 
routines:asn1_item_embed_d2i:nested asn1 
error:crypto/asn1/tasn_dec.c:274:Type=PKCS8_PRIV_KEY_INFO
140405067433728:error:0907B00D:PEM 
routines:PEM_read_bio_PrivateKey:ASN1 lib:crypto/pem/pem_pkey.c:86:

私の秘密鍵は次のようになり、明らかに間違ったことはありません。

-----BEGIN RSA PRIVATE KEY-----
Proc-Type: 4,ENCRYPTED
DEK-Info: DES-EDE3-CBC,somehexvaluewith16digits

someblockofcharacterswith24linesand64charactersperline
-----END RSA PRIVATE KEY-----

私が理解していないのは、この鍵が最初にどのように台無しにされたかです。パスワードを変更するときに手動で編集していないことを確認できます。私はそれを編集するために使ったのがプログラムだけだと確信していますssh-keygen

何が間違っているのか、鍵を返す方法を知っている人はいますか?既知のホストへのSSH接続を確立すると、秘密鍵がまだ有効であることが表示されます。

ベストアンサー1

おすすめ記事