
GnuPG に保存されている ed25519 キーペアから id_ed25519 (id_ed25519.pub ではない) ファイルを作成する方法はありますか?
GPG で SSH キーを追跡し始めました:
sec rsa3072 2017-12-12 [C]
DDD8CEFDE281D48CBBF0C56FE2AA8C94C8A7C456
uid [ultimate] Dave <[email protected]>
ssb rsa3072 2017-12-12 [S]
ssb rsa3072 2017-12-12 [E]
ssb rsa3072 2017-12-12 [A]
ssb ed25519 2017-12-12 [A]
--export-ssh-key
SSH で使用するために公開鍵をエクスポートするには、 GnuPG 2.1 以降で利用可能なオプションを使用します。これは、RSA キーと ed25519 キーの両方で機能します。
$ gpg -o id_rsa.pub --export-ssh-key 5D61D0F9!
$ gpg -o id_ed25519.pub --export-ssh-key 0A072B72!
(! は、GnuPG が最初に利用可能な認証キーではなく、指定されたサブキーを使用するように強制します。)
秘密 RSA キーをエクスポートするには、次のようなワークフローを使用しました。
$ gpg --export-secret-subkeys \
--export-options export-reset-subkey-passwd 0A072B72! | \
openpgp2ssh 0A072B72 > id_rsa
これにより、SSH が理解できる RSA 秘密キーが作成されますが、パスフレーズは作成されません。
パスフレーズを再度追加するには、次を使用します。
$ ssh-keygen -p -f id_rsa
私の Windows ワークステーションでは、PuTTYGen を使用してキーを PuTTY が理解できる形式に変換します。
openpgp2ssh
これは、ed25519キーを処理しないため、ed25519 キーでは機能しません。
私の知る限り、一部の人は GPG キーリングを SSH で直接使用していますが、私の環境ではうまくいきません。Windows 上の PuTTY で使用するには、秘密キーを分離する必要があります。