有没有办法从 GnuPG 中存储的 ed25519 密钥对创建 id_ed25519 (不是 id_ed25519.pub)文件?
我已经开始在 GPG 中跟踪我的 SSH 密钥:
sec rsa3072 2017-12-12 [C]
DDD8CEFDE281D48CBBF0C56FE2AA8C94C8A7C456
uid [ultimate] Dave <dave@example.com>
ssb rsa3072 2017-12-12 [S]
ssb rsa3072 2017-12-12 [E]
ssb rsa3072 2017-12-12 [A]
ssb ed25519 2017-12-12 [A]
Run Code Online (Sandbox Code Playgroud)
为了导出我的公钥以供 SSH 使用,我使用了--export-ssh-keyGnuPG 中自 2.1 版本以来可用的选项。这适用于 RSA 和 ed25519 密钥。
$ gpg -o id_rsa.pub --export-ssh-key 5D61D0F9!
$ gpg -o id_ed25519.pub --export-ssh-key 0A072B72!
Run Code Online (Sandbox Code Playgroud)
(! 强制 GnuPG 使用指定的子密钥,而不是第一个可用的身份验证密钥。)
为了导出 RSA 私钥,我使用了如下工作流程:
$ gpg --export-secret-subkeys \
--export-options export-reset-subkey-passwd 0A072B72! | \
openpgp2ssh 0A072B72 …Run Code Online (Sandbox Code Playgroud)