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 연결을 설정할 때 개인 키가 여전히 유효한 것으로 나타납니다.

관련 정보