Conversor de chaves JWK 🔒 Roda localmente no seu navegador — nada é enviado.

Converta chaves RSA/EC entre formato PEM e JWK (JSON Web Key).

Saída
 

Sobre esta ferramenta

JSON Web Key (JWK) é a representação JSON de uma chave criptográfica usada por bibliotecas JWT, endpoints JWKS (/.well-known/jwks.json) e muitas APIs web. PEM é o formato de texto mais antigo, envolto em Base64, que a maioria das ferramentas de criptografia, servidores e autoridades certificadoras ainda utiliza. Esta ferramenta converte entre os dois inteiramente no seu navegador, usando o mesmo mecanismo WebCrypto em que seu navegador já confia para TLS.

Escolha a direção, depois o tipo de chave (RSA, ou curva elíptica P-256/P-384) e o uso (assinatura vs. criptografia) que corresponda à chave que você está convertendo — o WebCrypto precisa disso para saber como interpretar os bytes. Chaves públicas convertem para um JWK sem o campo d; PEMs privados/de par de chaves (PKCS#8) produzem um JWK com n/e/d (RSA) ou x/y/d (EC). Apenas chaves privadas PKCS#8 não criptografadas e chaves públicas SPKI são suportadas — PEMs PKCS#1 antigos (RSA PRIVATE KEY) ou protegidos por senha precisam ser convertidos para PKCS#8 primeiro (ex.: com openssl pkcs8).

Perguntas frequentes

O que é um endpoint JWKS e por que eu precisaria disso?

Um endpoint JWKS (JSON Web Key Set) é uma URL (geralmente `/.well-known/jwks.json`) que publica as chaves públicas que um provedor de autenticação (como um provedor de identidade OAuth/OIDC) usa para assinar JWTs, em formato JWK, para que as partes confiáveis possam buscá-las e usá-las para verificar assinaturas de tokens. Se você estiver configurando seu próprio emissor de tokens, converteria a metade pública da sua chave de assinatura para JWK para publicá-la lá.

Por que minha conversão falha com um erro de importação?

A causa mais comum é um seletor de tipo de chave ou uso incompatível — por exemplo, selecionar "EC P-256" para uma chave que na verdade é RSA, ou "Criptografia" para uma chave gerada para assinatura. O WebCrypto valida o algoritmo estritamente contra o material de chave real, então verifique novamente se os seletores correspondem ao propósito para o qual a chave foi originalmente criada.