Skip to content

Instantly share code, notes, and snippets.

@pauldougan
Last active June 6, 2024 08:02
Show Gist options
  • Save pauldougan/91eab34396abcf3e631083ade9668243 to your computer and use it in GitHub Desktop.
Save pauldougan/91eab34396abcf3e631083ade9668243 to your computer and use it in GitHub Desktop.
public_key example

example public key

create an RSA key pair

openssl genpkey -algorithm RSA -out private_key.pem -pkeyopt rsa_keygen_bits:2048
openssl rsa -pubout -in private_key.pem -out public_key.pem

convert the PEM encoded public key to JWKS format

brew install jphastings/tools/jwker
jwker public_key.pem | jq . > public_key.jwks

convery JWKS format to PEM

jwker public_key.jwks
{
"kty": "RSA",
"n": "vQXZezwdrScOXSerf7xWDyluXERdNndY9ppZlgXd6v1CICVD-1_lP5IW-sI_6-8LujFrtS1Re0ugrKJgfJ26-SQke_ZegzUyjziKwvXzz0wHm30RmGzusQqhfDqtw3xWOmgzOs1L-jm9cFOy2ijPOc4o6ZiDdlDetI15dTdCovqd7e4VKkCcEpuGiM5sqkcYJk1zhYR82RZ_bR-SVljWdqnIcQzG_vEzRq0lvf2WwqtCRpuLo1G3Dm_e24wSWlYUzKudN_QbTC8I0u60P-bfNlmgJZhWoWbgyC7jLElgFKuvUXfo6XokUIDapao4SyO-bBbSvw2g12CPo7FZXvpaTQ",
"e": "AQAB"
}
-----BEGIN PUBLIC KEY-----
MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAvQXZezwdrScOXSerf7xW
DyluXERdNndY9ppZlgXd6v1CICVD+1/lP5IW+sI/6+8LujFrtS1Re0ugrKJgfJ26
+SQke/ZegzUyjziKwvXzz0wHm30RmGzusQqhfDqtw3xWOmgzOs1L+jm9cFOy2ijP
Oc4o6ZiDdlDetI15dTdCovqd7e4VKkCcEpuGiM5sqkcYJk1zhYR82RZ/bR+SVljW
dqnIcQzG/vEzRq0lvf2WwqtCRpuLo1G3Dm/e24wSWlYUzKudN/QbTC8I0u60P+bf
NlmgJZhWoWbgyC7jLElgFKuvUXfo6XokUIDapao4SyO+bBbSvw2g12CPo7FZXvpa
TQIDAQAB
-----END PUBLIC KEY-----
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment