私はssh-keygen -t rsa
鍵のペアを生成していました。公開鍵は「id_rsa.pub」ファイルに保存され、「ssh-rsa AAA...idJ」が含まれています。[メールアドレス]「」。
次にssh-keygen -y
、(RSA パスフレーズを確認するにはどうすればいいですか?) を使用して SSH 公開鍵を取得します。ただし、この方法で取得した公開鍵には「ssh-rsa AAA...idJ」のみが含まれます。(つまり、最後の部分「[メールアドレス])
これら 2 つの方法で生成される公開鍵に違いがあるのはなぜでしょうか。
答え1
キー自体に違いはありません。最後の部分は「コメント」フィールドです。
従来の形式のid_rsa
キーファイル(「RSA PRIVATE KEY」で始まるもの)を使用している場合は、単に標準的な場所がないため、店コメントなので、ssh-keygen はどこからもそれを取得することができません。(これは、暗号ライブラリがすでに持っていたため OpenSSH が採用した汎用キー形式です。)
「新しい」OpenSSH 秘密鍵形式 (「OPENSSH PRIVATE KEY」と表示されているもの)するコメント フィールドがあり、ssh-keygen で問題なく抽出できます。秘密鍵を変換する場合は、ssh-keygen -p
新しい OpenSSH バージョンでは を使用します。ssh-keygen -o -p
少し古いバージョンでは を使用し、実際に を使用して新しいコメントを設定しますssh-keygen -c
。