Gerador de chaves ECDSA e Ed25519

Gere pares de chaves ECDSA (P-256/P-384) ou Ed25519 e assine ou verifique mensagens, exportadas como PEM ou JWK, inteiramente no seu navegador.

Carregando ferramenta…

Gerador de chaves ECDSA e Ed25519Crie um par de chaves de curva elíptica, depois assine uma mensagem com a chave privada e verifique a assinatura com a chave pública, tudo sem sair da página. Escolha P-256, P-384 ou Ed25519, exporte as chaves como PEM ou JWK e veja o resultado da verificação se atualizar sozinho. Cada chave é gerada localmente com a Web Crypto API e a @noble/curves, de modo que as chaves privadas nunca chegam a um servidor.

O que é Gerador de chaves ECDSA e Ed25519?

O Gerador de chaves ECDSA e Ed25519 é uma ferramenta gratuita no navegador para produzir pares de chaves de curva elíptica e praticar assinaturas digitais. Desenvolvedores, engenheiros de segurança e estudantes a usam para testar fluxos de assinatura e verificação, gerar chaves para JWTs ou fluxos no estilo SSH e aprender em que ECDSA e EdDSA diferem sem instalar o OpenSSL. Escolha uma curva no menu Curva, clique em Gerar para criar um par de chaves novo e copie as chaves pública e privada em formato PEM ou JWK. Depois digite uma mensagem, clique em Assinar para produzir uma assinatura Base64, e a ferramenta a verifica automaticamente em relação à chave pública, mostrando se a assinatura é válida. P-256 e P-384 são tratados pelo ECDSA nativo do Web Crypto do navegador, enquanto Ed25519 é calculado pela biblioteca @noble/curves, carregada apenas quando você a escolhe.

Como usar Gerador de chaves ECDSA e Ed25519

  1. Escolha uma curva no menu Curva: P-256 ou P-384 (ECDSA via Web Crypto) ou Ed25519 (EdDSA).
  2. Selecione PEM ou JWK como formato de exportação das chaves.
  3. Clique em Gerar chaves para criar um par de chaves aleatório novo; as chaves pública e privada aparecem abaixo.
  4. Copie a chave pública ou privada com o botão de copiar para usá-la em outro lugar.
  5. Digite uma mensagem e clique em Assinar para produzir uma assinatura Base64.
  6. Leia o resultado da verificação: a ferramenta confere a assinatura em relação à chave pública por conta própria e informa se ela é válida.

Exemplos

Gerar um par de chaves P-256 em PEM

Entrada

Curva: P-256, Formato: PEM, clique em Gerar chaves

Saída

-----BEGIN PUBLIC KEY-----
MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcD...
-----END PUBLIC KEY-----

Assinar e verificar uma mensagem com Ed25519

Entrada

Curva: Ed25519, mensagem: "hello noble", clique em Assinar

Saída

Assinatura (Base64): 3Lq8...== — resultado da verificação: A assinatura é válida.

Exportar uma chave pública Ed25519 como JWK

Entrada

Curva: Ed25519, Formato: JWK

Saída

{ "kty": "OKP", "crv": "Ed25519", "x": "11qYAYK..." }

Perguntas frequentes

As chaves privadas são enviadas para algum lugar?
Não. A geração de chaves, a assinatura e a verificação são executadas localmente no seu navegador usando a Web Crypto API (para P-256/P-384) e a biblioteca @noble/curves (para Ed25519). A chave privada é mantida apenas na memória desta página, nunca é enviada e desaparece quando você fecha a aba, por isso a ferramenta funciona offline.
Qual é a diferença entre ECDSA e Ed25519?
O ECDSA sobre P-256/P-384 é o consagrado padrão NIST usado por certificados TLS e muitos JWTs. Ed25519 é um esquema EdDSA moderno, mais rápido, com assinaturas de tamanho fixo e que evita várias armadilhas do ECDSA. Escolha aquele que o seu sistema de destino exigir.
O que significam PEM e JWK?
PEM envolve a chave binária em um bloco de texto Base64 com cabeçalhos BEGIN/END, a forma que o OpenSSL e a maioria dos servidores esperam. JWK é um objeto JSON que descreve a chave, comum em contextos web e OAuth/JWT. Troque o formato antes de gerar para obter a codificação de que precisa.
Como a assinatura é codificada?
A assinatura é mostrada em Base64. Para ECDSA é o valor bruto r||s produzido pelo Web Crypto; para Ed25519 é a assinatura EdDSA de 64 bytes. Você pode colar uma assinatura Base64 de volta no campo para verificá-la em relação à chave pública gerada.
Posso verificar uma assinatura criada em outro lugar?
Você pode verificar em relação ao par de chaves gerado aqui: cole sua mensagem e uma assinatura Base64, e a ferramenta a confere com a chave pública correspondente. A importação de um par de chaves externo não é suportada nesta ferramenta.

Ferramentas relacionadas