Mic92 / ssh-to-age

Convert SSH Ed25519 keys to age keys. This is useful for usage in sops-nix and sops
MIT License
98 stars 5 forks source link

GPG (PGP) Key to AGE #62

Closed noggynoggy closed 3 months ago

noggynoggy commented 3 months ago

On the pursuit to have one single place to manage cryptographic keys, I like to use GPG ECC keys for ssh connections. Therefore, I don't really use an "ssh-key" by default. And since, as far as I can tell, there is no way to export GPG ECC keys to ssh-keys (openpgp2ssh only works for RSA keys) I asked myself: Is the this tool useless for me?

This issue is meant for discussion what would be the best approach. Is there an openpgp2ssh alternative? Is it possible to maybe convert from Open PGP directly to AGE? Should I just bite the bullet and either dig up my old ssh-key or make a new key with age? Or am I maybe even fundamentally mistaken somewhere?

Mic92 commented 3 months ago

So pinpox, had to also deal with extracting ed25519 keys from gnupg, also he targeted ssh instead of age: https://github.com/pinpox/pgp2ssh If you are familiar with Go, I suggest reading the implementation. Go's crypto library and age are of decent code quality and many datastructure in that can be converted from one crypto container to another.

Good luck!