Skip to content

Instantly share code, notes, and snippets.

@zircote
Created September 26, 2011 21:45
Show Gist options
  • Select an option

  • Save zircote/1243501 to your computer and use it in GitHub Desktop.

Select an option

Save zircote/1243501 to your computer and use it in GitHub Desktop.
Convert a AWS PEM into a ssh pub key
ssh-keygen -y -f private_key1.pem > public_key1.pub
@Faishal24

Copy link
Copy Markdown

doesn't work, it says "Load key "pubkey.pem": invalid format"

@ricsaka

ricsaka commented Dec 15, 2022

Copy link
Copy Markdown

doesn't work, it says "Load key "pubkey.pem": invalid format"

It's the same for me. Any ideas anyone?

@pony012

pony012 commented May 26, 2023

Copy link
Copy Markdown

@Faishal24 , @ricsaka , maybe you need to pass the param -m PKCS8

ssh-keygen -y -f private_key1.pem -m PKCS8 > public_key1.pub 

From the manual:

 -m key_format
        Specify a key format for the -i (import) or -e (export) conversion options.  The
        supported key formats are: “RFC4716” (RFC 4716/SSH2 public or private key), “PKCS8”
        (PEM PKCS8 public key) or “PEM” (PEM public key).  The default conversion format is
        “RFC4716”.

@danelec-hpm

danelec-hpm commented Jul 10, 2024

Copy link
Copy Markdown

My solution to Load key invalid format was to use -i instead of -y
ssh-keygen -i -m PKCS8 -f cert.pem > cert.pub

@coolpie72

Copy link
Copy Markdown

this works for me for AWS key pair with type ed25519

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment