Ir para o conteudo principal

RSA vs Ed25519 para DKIM: qual algoritmo de assinatura escolher?

Por CaptainDNS
Publicado em 6 de março de 2026

Comparação visual dos algoritmos RSA 2048 e Ed25519 para assinatura DKIM
TL;DR
  • RSA 2048 bits continua sendo o padrão universal para DKIM: suportado por todos os provedores, mas chave pública de ~392 caracteres e assinatura de 256 bytes
  • Ed25519 (RFC 8463) produz chaves de 44 caracteres e assinaturas de 64 bytes, com assinatura até 30× mais rápida
  • Em 2026, Ed25519 é suportado pelo Google, Fastmail e alguns MTA open source, mas Microsoft 365 e Yahoo ainda não o verificam
  • A dupla assinatura (RSA + Ed25519 em paralelo) é a estratégia recomendada para preparar a migração sem riscos
  • Não use mais RSA 1024 bits: rejeitado pelo Google, Microsoft e Yahoo desde 2024

Seu registro DKIM utiliza RSA 2048 bits. É sólido, mas a chave pública ocupa sozinha mais de 390 caracteres na sua zona DNS. Cada e-mail transporta uma assinatura de 256 bytes nos seus cabeçalhos. Na escala de milhões de mensagens, esse peso não é desprezível.

Ed25519, padronizado para DKIM pela RFC 8463 em 2018, promete chaves 9 vezes mais curtas e assinaturas 4 vezes mais leves, com um nível de segurança equivalente ao RSA 3072 bits. Mas o suporte dos provedores permanece incompleto em 2026.

Este guia compara os dois algoritmos em profundidade: criptografia subjacente, tamanhos de chave e de assinatura, desempenho, segurança, compatibilidade dos provedores e estratégia de migração recomendada. Público-alvo: administradores de sistemas e engenheiros DevOps que gerenciam a infraestrutura de e-mail.

Como o DKIM assina os e-mails?

O DKIM utiliza a criptografia assimétrica para assinar cada e-mail enviado. O servidor de envio assina um hash dos cabeçalhos e do corpo com uma chave privada. O servidor de recebimento recupera a chave pública no DNS e verifica a assinatura.

O cabeçalho DKIM-Signature contém a tag a= que indica o algoritmo utilizado:

DKIM-Signature: v=1; a=rsa-sha256; d=captaindns.com; s=s202603; ...

ou:

DKIM-Signature: v=1; a=ed25519-sha256; d=captaindns.com; s=ed202603; ...

Os dois algoritmos disponíveis são rsa-sha256 (padrão desde 2007) e ed25519-sha256 (adicionado pela RFC 8463 em 2018). O hash é sempre SHA-256 nos dois casos.

RSA 2048 para DKIM: o padrão comprovado

Funcionamento

RSA (Rivest-Shamir-Adleman) é um algoritmo de chave pública baseado na dificuldade de fatorar o produto de dois grandes números primos. Para DKIM:

  • A chave privada assina o hash SHA-256 da mensagem
  • A chave pública, publicada em um registro TXT, permite a verificação
  • O tamanho mínimo recomendado é 2048 bits desde 2024

Registro DNS RSA

s202603._domainkey.captaindns.com  IN  TXT  "v=DKIM1; k=rsa; p=MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA3pZ..."

A chave pública RSA 2048 bits codificada em Base64 tem aproximadamente 392 caracteres. Alguns provedores DNS limitam os registros TXT a 255 caracteres por string, o que obriga a dividir o valor em várias strings entre aspas.

Pontos fortes e limitações

AspectoDetalhe
SuporteUniversal: todos os MTA e provedores
MaturidadePadrão DKIM desde 2007 (RFC 4871, depois 6376)
SegurançaSólida até 2030+ segundo o NIST
Tamanho chave pública~392 caracteres (Base64)
Tamanho assinatura256 bytes
DesempenhoAssinatura mais lenta, verificação rápida
Tamanho DNSPode necessitar divisão em várias strings TXT

Ed25519 para DKIM: a alternativa moderna

Funcionamento

Ed25519 é um algoritmo de assinatura baseado em curvas elípticas (Curve25519), projetado por Daniel J. Bernstein em 2011. Para DKIM, foi padronizado pela RFC 8463 em setembro de 2018.

O algoritmo utiliza uma curva de Edwards torcida sobre o corpo finito GF(2^255 - 19), daí o seu nome. A segurança se baseia na dificuldade do problema do logaritmo discreto em curva elíptica, fundamentalmente mais difícil que a fatoração RSA para tamanho de chave equivalente.

Registro DNS Ed25519

ed202603._domainkey.captaindns.com  IN  TXT  "v=DKIM1; k=ed25519; p=11qYAYKxCrfVS/7TyWQHOg7hcvPapiMlrwIaaPcHURo="

A chave pública Ed25519 tem exatamente 44 caracteres em Base64. O registro DNS cabe em uma única string TXT, sem divisão.

Pontos fortes e limitações

AspectoDetalhe
Tamanho chave pública44 caracteres (Base64), 9x mais curta que RSA
Tamanho assinatura64 bytes, 4x mais leve que RSA
DesempenhoAssinatura até 30× mais rápida que RSA 2048
SegurançaEquivalente a RSA ~3072 bits (128 bits de segurança)
ResistênciaImune a ataques de canal lateral (constant-time)
SuporteParcial: Google, Fastmail, alguns MTA open source
LimitaçãoMicrosoft 365 e Yahoo ainda não verificam Ed25519

RSA vs Ed25519: comparação técnica detalhada

Comparação técnica dos algoritmos RSA 2048 e Ed25519 para DKIM

CritérioRSA 2048Ed25519
AlgoritmoRSA (fatoração)EdDSA (curvas elípticas)
RFC DKIMRFC 6376 (2011)RFC 8463 (2018)
Tag a=rsa-sha256ed25519-sha256
Tag k=rsaed25519
Tamanho chave privada~1 700 bytes32 bytes
Tamanho chave pública~392 caracteres44 caracteres
Tamanho assinatura256 bytes64 bytes
Bits de segurança~112 bits~128 bits
HashSHA-256SHA-256
Tamanho registro DNS~430 caracteres~90 caracteres
Divisão TXT necessáriaFrequentemente (limite 255 car.)Nunca
Suporte provedores 2026UniversalParcial

Impacto no tamanho dos e-mails

Cada e-mail assinado com RSA 2048 adiciona aproximadamente 500 caracteres no cabeçalho DKIM-Signature (assinatura Base64 de ~344 caracteres + tags). Com Ed25519, esse cabeçalho tem apenas cerca de 200 caracteres (assinatura Base64 de ~88 caracteres + tags).

Para um servidor que envia 1 milhão de e-mails por dia, a diferença representa aproximadamente 300 MB de largura de banda diária a menos com Ed25519.

Impacto nas consultas DNS

A verificação DKIM requer uma consulta DNS TXT para recuperar a chave pública. Com RSA 2048, a resposta DNS tem ~500 bytes. Com Ed25519, tem ~150 bytes. Para os resolvedores DNS e os servidores de recebimento, essa diferença reduz a carga de rede e o tempo de resolução.

Compatibilidade dos provedores em 2026

Matriz de compatibilidade Ed25519 por provedor de e-mail em 2026

ProvedorAssinatura Ed25519Verificação Ed25519
Google (Gmail/Workspace)Sim (desde 2019)Sim
FastmailSimSim
Proton MailNãoSim
Microsoft 365NãoNão
Yahoo/AOLNãoNão
Postfix + OpenDKIMSim (desde 2.11)Sim
Postfix + rspamdSimSim
EximSim (desde 4.95)Sim
Amazon SESNãoNão
SendGridNãoNão
MailgunNãoNão

Ponto crítico: se você assinar apenas com Ed25519 e o servidor de recebimento não o suportar, a verificação DKIM falha. O servidor não faz fallback automático para outro algoritmo. É por isso que a dupla assinatura é indispensável.

Dupla assinatura: a estratégia recomendada

A estratégia mais segura consiste em assinar cada e-mail com duas assinaturas DKIM: uma RSA 2048 e uma Ed25519. Cada assinatura utiliza seu próprio seletor.

Como funciona?

O e-mail enviado contém dois cabeçalhos DKIM-Signature:

DKIM-Signature: v=1; a=ed25519-sha256; d=captaindns.com; s=ed202603;
  h=from:to:subject:date:message-id;
  bh=2jUSOH9NhtVGCQWNr9BrIAPreKQjO6Sn7XIkfJVOzv8=;
  b=dGVzdA==...

DKIM-Signature: v=1; a=rsa-sha256; d=captaindns.com; s=rsa202603;
  h=from:to:subject:date:message-id;
  bh=2jUSOH9NhtVGCQWNr9BrIAPreKQjO6Sn7XIkfJVOzv8=;
  b=AuUoFEfDxTDkHlLXSZEpZj79LICEps6eda7W3deTVFOk...

Dois registros DNS

rsa202603._domainkey.captaindns.com  IN  TXT  "v=DKIM1; k=rsa; p=MIIBIjANBg..."
ed202603._domainkey.captaindns.com   IN  TXT  "v=DKIM1; k=ed25519; p=11qYAYKxCrfVS/7TyWQHOg7hcvPapiMlrwIaaPcHURo="

Comportamento do servidor de recebimento

O servidor de recebimento verifica todas as assinaturas DKIM presentes. Segundo a RFC 6376, um único dkim=pass é suficiente para que a autenticação seja bem-sucedida:

  • Se o servidor suporta Ed25519: as duas assinaturas passam
  • Se o servidor não suporta Ed25519: somente a assinatura RSA é verificada, ela passa, DKIM é válido

Configuração com OpenDKIM (Postfix)

Em /etc/opendkim/signing.table:

*@captaindns.com  rsa202603._domainkey.captaindns.com
*@captaindns.com  ed202603._domainkey.captaindns.com

Em /etc/opendkim/key.table:

rsa202603._domainkey.captaindns.com  captaindns.com:rsa202603:/etc/opendkim/keys/captaindns.com/rsa202603.private
ed202603._domainkey.captaindns.com   captaindns.com:ed202603:/etc/opendkim/keys/captaindns.com/ed202603.private

Utilize o Gerador DKIM para criar os dois pares de chaves e obter os registros DNS prontos para publicar.

Como migrar para RSA 2048 ou Ed25519?

Se você ainda utiliza RSA 1024 bits, a migração é urgente. Google, Microsoft e Yahoo rejeitam assinaturas DKIM com chaves inferiores a 2048 bits desde 2024.

Etapa 1: auditar os seletores existentes

Utilize uma ferramenta de descoberta de seletores para identificar todos os seletores DKIM ativos no seu domínio e verificar o tamanho das chaves atuais.

Etapa 2: gerar as novas chaves

Crie um par RSA 2048 bits com um novo seletor com data. Se sua infraestrutura permitir, crie também um par Ed25519.

Etapa 3: publicar os registros DNS

Publique as novas chaves públicas na sua zona DNS. Mantenha as chaves antigas ativas durante a transição.

Etapa 4: migrar a assinatura

Configure seu servidor de envio para utilizar os novos seletores. Se estiver migrando para dupla assinatura, adicione Ed25519 além de RSA.

Etapa 5: verificar e revogar

Após 48 horas, verifique se os e-mails assinados com as novas chaves passam dkim=pass nos cabeçalhos Authentication-Results. Revogue as chaves antigas publicando p= vazio no registro DNS e remova-as após 30 dias.

Plano de ação recomendado

  1. Auditar: identifique seus seletores DKIM e o tamanho das suas chaves atuais
  2. Gerar RSA 2048: se você ainda está em RSA 1024, migre com prioridade
  3. Adicionar Ed25519: crie um segundo par de chaves Ed25519 com um seletor distinto
  4. Publicar as duas chaves no DNS com seletores descritivos (rsa202603, ed202603)
  5. Configurar a dupla assinatura no seu MTA (OpenDKIM, rspamd, Exim)
  6. Verificar: envie e-mails de teste para Gmail (suporta Ed25519) e Outlook (apenas RSA)
  7. Planejar a rotação: renove os dois pares de chaves a cada 3 meses

FAQ

Ed25519 é mais seguro que RSA 2048 para DKIM?

Ed25519 oferece 128 bits de segurança, equivalente a RSA 3072 bits. RSA 2048 oferece aproximadamente 112 bits de segurança. Na prática, ambos são considerados seguros até 2030+. Ed25519 tem a vantagem de ser resistente por design a ataques de canal lateral (constant-time), o que reduz os riscos de implementação falha.

É possível usar Ed25519 sozinho para DKIM?

É tecnicamente possível, mas desaconselhado em 2026. Microsoft 365 e Yahoo ainda não verificam assinaturas Ed25519. Se você assinar apenas com Ed25519, esses provedores não conseguirão validar o DKIM. Utilize a dupla assinatura (RSA + Ed25519) para compatibilidade máxima.

Como funciona a dupla assinatura DKIM?

O servidor de envio adiciona dois cabeçalhos DKIM-Signature à mensagem: um com rsa-sha256 e outro com ed25519-sha256. Cada assinatura utiliza seu próprio seletor e seu próprio par de chaves. O servidor de recebimento verifica todas as assinaturas presentes. Um único dkim=pass é suficiente para que a autenticação seja bem-sucedida.

RSA 1024 bits ainda é aceito para DKIM?

Não. Google, Microsoft e Yahoo rejeitam assinaturas DKIM com chaves RSA inferiores a 2048 bits desde 2024. Se você ainda utiliza RSA 1024, migre imediatamente para RSA 2048 ou adicione Ed25519 em paralelo.

É necessário usar RSA 4096 bits para DKIM?

RSA 4096 é mais seguro que 2048, mas a chave pública tem aproximadamente 800 caracteres, o que causa problemas de tamanho no DNS. A maioria dos provedores não assina com 4096 bits. Prefira a dupla assinatura RSA 2048 + Ed25519: você obtém um nível de segurança melhor com chaves mais curtas.

O Gmail suporta Ed25519 para DKIM?

Sim. O Google assina os e-mails do Gmail com Ed25519 desde 2019 e verifica as assinaturas Ed25519 recebidas. É o primeiro grande provedor a ter adotado Ed25519 para DKIM. O Google Workspace também permite configurar DKIM com Ed25519.

Qual é a RFC que define Ed25519 para DKIM?

A RFC 8463, publicada em setembro de 2018, define o uso de Ed25519-SHA256 como algoritmo de assinatura para DKIM. Ela complementa a RFC 6376 que definia apenas rsa-sha256. O algoritmo é identificado pela tag a=ed25519-sha256 no cabeçalho DKIM-Signature.

Ed25519 é resistente a computadores quânticos?

Não. Assim como RSA, Ed25519 é vulnerável a algoritmos quânticos (algoritmo de Shor para RSA, algoritmo modificado para curvas elípticas). No entanto, computadores quânticos capazes de quebrar esses algoritmos ainda não existem. O NIST trabalha em padrões pós-quânticos, mas nenhum ainda está disponível para DKIM.

Baixe as tabelas comparativas

Assistentes conseguem reutilizar os números consultando os ficheiros JSON ou CSV abaixo.

Glossário

  • RSA: algoritmo de criptografia assimétrica baseado na fatoração de grandes números primos, inventado em 1977 por Rivest, Shamir e Adleman.
  • Ed25519: algoritmo de assinatura digital baseado na curva elíptica Curve25519, projetado por Daniel J. Bernstein em 2011.
  • EdDSA (Edwards-curve Digital Signature Algorithm): família de algoritmos de assinatura em curvas de Edwards da qual Ed25519 é a instância mais utilizada.
  • Curva elíptica: estrutura matemática utilizada em criptografia, oferecendo um alto nível de segurança com chaves mais curtas que RSA.
  • Seletor DKIM: identificador de texto que localiza a chave pública no DNS em seletor._domainkey.dominio.
  • Dupla assinatura: técnica que consiste em assinar um e-mail com dois algoritmos DKIM diferentes (RSA + Ed25519) para maximizar a compatibilidade.
  • RFC 8463: padrão IETF que define o uso de Ed25519-SHA256 para assinatura DKIM.

Verifique suas chaves DKIM agora: Utilize nosso verificador DKIM para analisar seus registros e verificar o tamanho das suas chaves.


Guias de DKIM relacionados

Fontes

Artigos relacionados