Nota SeguraBR

Ed25519: o que é e como funciona

Uma assinatura digital moderna, rápida e determinística, desenhada para evitar os erros mais comuns de implementação.

O que é

Ed25519 é um algoritmo de assinatura digital do tipo EdDSA, que usa a Curve25519 na forma de Edwards. Ele foi publicado em 2011 por Daniel J. Bernstein, Niels Duif, Tanja Lange, Peter Schwabe e Bo-Yin Yang, e padronizado no RFC 8032, em 2017. Em 2023, o NIST também o incluiu no padrão de assinaturas FIPS 186-5.

Ele cumpre o mesmo papel do ECDSA e do RSA-PSS: a chave privada assina, e qualquer pessoa confere com a chave pública.

Como funciona

A chave privada é um valor aleatório de 32 bytes, e a chave pública é um ponto da curva, também com 32 bytes. A assinatura tem 64 bytes.

A grande diferença em relação ao ECDSA é que a assinatura é determinística. O número secreto de cada assinatura não vem de um gerador aleatório: ele é calculado com o SHA-512 a partir de uma parte da chave privada e da própria mensagem. Assim, a mesma mensagem sempre gera a mesma assinatura, e um gerador aleatório ruim não tem como vazar a chave.

A curva e as fórmulas foram escolhidas para rodar em tempo constante e sem casos especiais, o que dificulta ataques que medem o tempo ou o consumo de energia.

Exemplo

No playground desta página, escolha Ed25519, digite um texto e clique em "Assinar". O resultado é uma assinatura de 64 bytes, e a chave pública aparece com 32 bytes. Clique em "Verificar" para conferir, e depois troque uma letra para ver a verificação falhar.

Os navegadores passaram a oferecer o Ed25519 na Web Crypto entre 2023 e 2025. Em um navegador antigo, o playground mostra que o algoritmo não é suportado.

Onde é usado

O Ed25519 é suportado no SSH desde 2014 e, desde 2023, é o tipo de chave padrão do ssh-keygen; as chaves que começam com ssh-ed25519 estão em todo servidor moderno. Ele também é usado nos endereços .onion da rede Tor, na assinatura de commits do Git, em atualizações de software e em várias criptomoedas.

Protocolos de mensagens seguras, como o Signal, usam a mesma família de curvas para assinaturas e troca de chaves.

Pontos fortes e fracos

Pontos fortes: é rápido para assinar e conferir, tem chaves e assinaturas pequenas, é determinístico e foi desenhado para evitar erros de implementação. Oferece segurança equivalente a cerca de 128 bits.

Pontos fracos: ainda não é aceito em todos os sistemas antigos, como alguns certificados e dispositivos de hardware. E, como todas as assinaturas com curvas elípticas, seria quebrado por um computador quântico grande.

Quando usar

Use o Ed25519 como primeira escolha para assinaturas em sistemas novos: chaves SSH, assinatura de arquivos, tokens e mensagens entre serviços.

Use o ECDSA ou o RSA-PSS quando um padrão ou um sistema existente exigir, como em certificados HTTPS antigos. Para dados que precisam continuar protegidos por décadas, acompanhe a adoção das assinaturas pós-quânticas.

Teste os algoritmos

Escolha um algoritmo, escreva um texto e veja como ele fica. Tudo acontece no seu navegador e nada é salvo.

Criptografia

Hash

Autenticação e assinatura

Troca e derivação de chaves

Codificação

Cifras clássicas

Ed25519

Seguro

Assinatura digital

Assinatura digital moderna em curvas de Edwards, rápida e com chaves de 32 bytes. Não depende de um número aleatório a cada assinatura, o que evita um erro comum do ECDSA.

Ver todos os algoritmos

0/500

Veja também

Precisa enviar um segredo?

Use uma nota segura: o texto é criptografado com AES-256-GCM e se apaga sozinho.

Criar uma nota