RSA
キーペアの精度を確認したいです。私が知っている限り、次のコマンドを使用して秘密鍵から公開鍵を作成し、2つの公開鍵が等しいかどうかを比較できます。
ssh-keygen -y -f <PRIVATE-KEY>
問題は、上記のコマンドを使用したときにキーをロードできないのはなぜですか?
RSA鍵ペアの精度を確認する他の方法はありますか?
参考までに:
root@bt:~# ssh-keygen -y -v -f /root/Desktop/PROIVA
debug1: PEM_read_PrivateKey failed
debug1: read PEM private key done: type <unknown>
Enter passphrase:
debug1: PEM_read_PrivateKey failed
debug1: read PEM private key done: type <unknown>
load failed
root@bt:~# file /root/Desktop/PROIVA
/root/Desktop/PROIVA: data
root@bt:~#
root@bt:~# openssl rsa -in /root/Desktop/PROIVA -inform der -noout -text
unable to load Private Key
1819:error:0D094065:asn1 encoding routines:d2i_ASN1_SET:bad class:a_set.c:190:
1819:error:0D0680A8:asn1 encoding routines:ASN1_CHECK_TLEN:wrong tag:tasn_dec.c:1316:
1819:error:0D07803A:asn1 encoding routines:ASN1_ITEM_EX_D2I:nested asn1 error:tasn_dec.c:380:Type=RSA
1819:error:0D09A00D:asn1 encoding routines:d2i_PrivateKey:ASN1 lib:d2i_pr.c:99:
root@bt:~#
root@bt:~#
root@bt:~# openssl rsa -in /root/Desktop/PROIVA -inform DER -out /root/Desktop/PROIVA.pem -outform PEM
unable to load Private Key
1820:error:0D094065:asn1 encoding routines:d2i_ASN1_SET:bad class:a_set.c:190:
1820:error:0D0680A8:asn1 encoding routines:ASN1_CHECK_TLEN:wrong tag:tasn_dec.c:1316:
1820:error:0D07803A:asn1 encoding routines:ASN1_ITEM_EX_D2I:nested asn1 error:tasn_dec.c:380:Type=RSA
1820:error:0D09A00D:asn1 encoding routines:d2i_PrivateKey:ASN1 lib:d2i_pr.c:99:
root@bt:~#
root@bt:~#
ただし、次のコマンドを使用するとProiva.der
デスクトップに作成されます。
root@bt:~# openssl base64 -in /root/Desktop/PROIVA -out /root/Desktop/Proiva.der
root@bt:~#
root@bt:~# openssl rsa -in /root/Desktop/Proiva.der -inform der -noout -text
unable to load Private Key
1826:error:0D094065:asn1 encoding routines:d2i_ASN1_SET:bad class:a_set.c:190:
1826:error:0D0680A8:asn1 encoding routines:ASN1_CHECK_TLEN:wrong tag:tasn_dec.c:1316:
1826:error:0D07803A:asn1 encoding routines:ASN1_ITEM_EX_D2I:nested asn1 error:tasn_dec.c:380:Type=RSA
1826:error:0D09A00D:asn1 encoding routines:d2i_PrivateKey:ASN1 lib:d2i_pr.c:99:
root@bt:~#
私の公開/個人ファイルのBase64ビューは次のとおりです。
プライベート:
m37jkNportKxhOtP84bKXPY5JR16dzt2ZgdnGNrx7Q9u31jkn2lUPxDwdjlTzU8sIWUxHP4inC56
sxlbv9oeQQxhzF0CxclBuiR1kkfzRVMoEiXmacbozqM4+oh/+Bd1+jok25BQPnXkOq5tu/SIclkv
9zL20p+YsqL0esPUJvcAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAASN5x6F8svVvzGBu70a4MeMTqeX128LoJhMRDUx2
Z0uWgc0jEsXr2fSpgLL4UU4+Cet0ksfykyLe18+UsYIL2WrSvEIQRspgq3u5sYGSyn4tWs701V76
cOR/j//O1rCPp/ose/2L+muW28D8wMwq2jIZog7HKMGzgj1KiLuNhICBzXfh3UqoiOArZWVY48Vm
/ZAp9+YhsiAKQ8Z0mpL9mxCmdD24HxGiGJ7uZW4a8X4bRPj0SZYlCbiL3X8Glq3ImcG8xSo7+PaX
CcuTQAeER/EtIdnTkES5/ge1YEg3OjTAG6zeVmV3L/901G0g5bWK3ynJBB+gWuskNnD7K7+SVg8M
n0K2z3FPB0ZjMjiltWjARuztF6wWPzWiODzNih4eOoWfOnNnJTQqAwluHbd2AmM2d3y6UIjx8e5V
qwoCk6ZxrPAZu/Ke8Vev2bYO0Obm5UWZUv1EaeTw+uaQFMafwZi+25f43UgAY3NhcCyOgHh/bqhO
cwDMR9wicMX0rmQtRwmMjZSf0OE0r1NE058hACna/y1zKu5+lEw2pHi1i6SuiE/FebJ4yCTd7BqN
NDbDk5C6aE/J9R9X57as5YcFXwM=
人々:
m37jkNportKxhOtP84bKXPY5JR16dzt2ZgdnGNrx7Q9u31jkn2lUPxDwdjlTzU8sIWUxHP4inC56
sxlbv9oeQQxhzF0CxclBuiR1kkfzRVMoEiXmacbozqM4+oh/+Bd1+jok25BQPnXkOq5tu/SIclkv
9zL20p+YsqL0esPUJvcAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAQ==
これで上記のファイルのbase64ビューが作成されました。これオンラインツール。
答え1
ファイルがDER
バイナリ形式のようです。まず、ファイルをフォーマットなどに変換する必要がありますPEM
。
ファイルがDER
バイナリ形式であることを確認するには、次の手順を実行します。
openssl rsa -in /root/Desktop/PROIVA -inform der -noout -text
次のような結果が返されると、実際にはうまくDER
設定されています。
Private-Key: (1024 bit)
modulus:
00:a9:07:0c:59:20:6f:48:c0:34:59:c1:10:17:f5:
................................
..............................
次のコマンドを実行します。
openssl rsa -in /root/Desktop/PROIVA -inform DER -out /root/Desktop/PROIVA.pem -outform PEM
これでPROVIA
ファイルがフォーマットに変換されましたPEM
。
ついに逃げた。
ssh-keygen -y -v -f /root/Desktop/PROIVA.pem