Skip to main content
New SPF lookups must resolve in milliseconds — why a DMARC tool's add-on isn't enough Learn Why → →

O Que É DKIM?

O DKIM (DomainKeys Identified Mail) é um protocolo de autenticação de e-mail que usa criptografia de chave pública para verificar que uma mensagem de e-mail foi enviada por um servidor autorizado e que o conteúdo da mensagem não foi alterado em trânsito. O servidor de envio assina as mensagens de saída com uma chave privada, e o servidor receptor verifica a assinatura usando uma chave pública publicada no DNS do remetente. Ao contrário do SPF, que apenas verifica o endereço IP do servidor de envio, o DKIM verifica a integridade da mensagem e sobrevive ao encaminhamento de e-mail. O DKIM é definido na RFC 6376.

Este guia faz parte do nosso guia completo sobre DKIM. Relacionado: o registro DKIM e como funcionam as assinaturas DKIM.

O DKIM - DomainKeys Identified Mail - é o segundo pilar da autenticação de e-mail moderna. Enquanto o SPF verifica que uma mensagem foi enviada de um servidor autorizado, o DKIM vai além: ele assina criptograficamente a própria mensagem, provando que o conteúdo não foi adulterado e que o domínio de envio declarado realmente autorizou a mensagem.

A RFC 6376 define o DKIM como um método para associar um nome de domínio a uma mensagem de e-mail, permitindo assim que uma pessoa, função ou organização assuma alguma responsabilidade pela mensagem. A assinatura sobrevive ao encaminhamento de e-mail, o que é uma vantagem crítica sobre o SPF.

Entender o DKIM é essencial para qualquer pessoa que gerencie infraestrutura de e-mail, porque o alinhamento DKIM é um dos dois caminhos para passar na autenticação DMARC - e para e-mail encaminhado, muitas vezes é o único caminho.

Como o DKIM Funciona: O Panorama Geral

O DKIM opera com base em um princípio criptográfico simples: o servidor de envio assina a mensagem com uma chave privada, e o servidor receptor verifica a assinatura com uma chave pública publicada no DNS.

O Processo de Assinatura (Saída)

  1. O servidor de e-mail de envio gera um hash de cabeçalhos de e-mail específicos e do corpo da mensagem
  2. O servidor criptografa esse hash usando a chave privada DKIM do domínio
  3. O servidor adiciona um cabeçalho DKIM-Signature à mensagem contendo o hash criptografado, o nome do seletor, o domínio de assinatura e metadados sobre quais cabeçalhos foram assinados
  4. A mensagem é transmitida ao servidor receptor

O Processo de Verificação (Entrada)

  1. O servidor receptor extrai o cabeçalho DKIM-Signature da mensagem
  2. Ele lê os valores d= (domínio) e s= (seletor) da assinatura
  3. Ele executa uma consulta DNS para <selector>._domainkey.<domain> para recuperar a chave pública
  4. Ele usa a chave pública para descriptografar a assinatura e recuperar o hash original
  5. Ele faz o hash de forma independente dos mesmos cabeçalhos e corpo usando o algoritmo especificado
  6. Se os dois hashes corresponderem, a assinatura é válida - a mensagem é autêntica e não foi modificada

Para um passo a passo técnico detalhado desse processo, consulte Como o DKIM Funciona: Um Guia Abrangente para Autenticação de E-mail.

Para os detalhes em nível de RFC do algoritmo de verificação, consulte Por Dentro da RFC 6376: Como a Verificação DKIM Realmente Funciona.

O Cabeçalho DKIM-Signature

Um cabeçalho de assinatura DKIM tem esta aparência:

DKIM-Signature: v=1; a=rsa-sha256; d=example.com; s=selector1;
    c=relaxed/relaxed; q=dns/txt; t=1618884473;
    h=from:to:subject:date:message-id;
    bh=2jUSOH9NhtVGCQWNr9BrIAPreKQjO6Sn7XIkfJVOzv8=;
    b=AuUoFEfDxTDkHlLXSZEpZj79LICEps6eda7W3deTVFOk...
TagSignificado
v=1Versão do DKIM (sempre 1)
a=rsa-sha256Algoritmo de assinatura
d=example.comDomínio de assinatura (usado para alinhamento DMARC)
s=selector1Seletor - identifica qual chave pública usar
c=relaxed/relaxedMétodo de canonicalização para cabeçalho/corpo
q=dns/txtMétodo de consulta da chave pública
t=1618884473Timestamp da assinatura
h=from:to:subject:...Lista de cabeçalhos incluídos na assinatura
bh=...Hash do corpo
b=...A assinatura em si

Chaves DKIM: Pública e Privada

O DKIM usa criptografia assimétrica. O proprietário do domínio gera um par de chaves:

  • Chave privada - Armazenada com segurança no servidor de e-mail de envio. Nunca compartilhada ou publicada. Usada para assinar mensagens de saída.
  • Chave pública - Publicada no DNS como um registro TXT em <selector>._domainkey.<domain>. Usada pelos servidores receptores para verificar assinaturas.

Formato do Registro DNS

Um registro DNS DKIM tem esta aparência:

selector1._domainkey.example.com  TXT  "v=DKIM1; k=rsa; p=MIGfMA0GCSqGSIb3DQEBAQUAA4..."
TagSignificado
v=DKIM1Versão
k=rsaTipo de chave (RSA é o padrão; Ed25519 está surgindo)
p=...A chave pública, codificada em base64

Você pode consultar a chave pública DKIM de qualquer domínio usando a Ferramenta de Consulta DKIM.

Tamanhos de Chave

  • RSA de 1024 bits - O tamanho mínimo de chave recomendado. Ainda amplamente usado, mas considerado fraco pelos padrões modernos.
  • RSA de 2048 bits - O padrão atualmente recomendado. Oferece forte segurança, mas produz registros DNS mais longos que podem exigir a divisão do registro TXT.
  • Ed25519 - Um algoritmo mais novo e eficiente que produz assinaturas e chaves mais curtas. Suportado por um número crescente de servidores de e-mail, mas ainda não universal.

Guia detalhado: Entendendo os Algoritmos Criptográficos do DKIM: RS256 vs RS512 e Tendências Emergentes

Seletores: Gerenciando Múltiplas Chaves

Os seletores DKIM permitem que um domínio publique várias chaves DKIM simultaneamente. Cada chave é identificada por uma string de seletor, e a tag s= no cabeçalho DKIM-Signature informa ao receptor qual seletor (e, portanto, qual chave pública) usar para verificação.

Os seletores servem a vários propósitos:

  • Múltiplos serviços de envio - O seu servidor de e-mail principal e cada serviço de terceiros (SendGrid, Mailchimp, etc.) podem ter cada um o seu próprio par de chaves DKIM com um seletor único
  • Rotação de chaves - Ao rotacionar chaves, você pode publicar a nova chave sob um novo seletor enquanto o seletor antigo permanece ativo durante o período de transição
  • Separação departamental - Diferentes equipes ou divisões podem usar diferentes seletores para fins de rastreamento e gerenciamento

Convenções comuns de nomenclatura de seletores incluem s1, s2, google, sendgrid, k1, ou nomes baseados em data como 202604.

Canonicalização: Lidando com Modificações da Mensagem

Mensagens de e-mail são frequentemente modificadas em trânsito - espaços em branco são adicionados ou removidos, cabeçalhos são reescritos, e quebras de linha podem mudar. A canonicalização define como os processos de assinatura e verificação normalizam a mensagem antes de fazer o hash, para que pequenas modificações não quebrem a assinatura.

Há dois modos de canonicalização, aplicados de forma independente aos cabeçalhos e ao corpo:

  • simple - Quase nenhuma tolerância a modificações. Os cabeçalhos devem corresponder exatamente (exceto por espaços em branco no final). O corpo é normalizado apenas para linhas vazias no final. Use isto quando você controla todo o caminho de entrega e nenhum intermediário modificará a mensagem.
  • relaxed - Mais tolerante. Os nomes dos cabeçalhos são convertidos em minúsculas, os espaços em branco são normalizados, e múltiplos espaços são reduzidos a um. No corpo, os espaços em branco no final são removidos de cada linha. Use isto para a maioria das implantações do mundo real.

A configuração c=relaxed/relaxed (relaxed tanto para cabeçalhos quanto para corpo) é a configuração mais comum e recomendada.

Alinhamento DKIM

O alinhamento DKIM é um conceito do DMARC que determina se o domínio na assinatura DKIM (valor d=) corresponde ao domínio no cabeçalho From visível. Isso é crítico porque o DMARC exige que pelo menos um entre SPF ou DKIM seja tanto válido quanto alinhado.

Alinhamento Relaxado

Os domínios organizacionais devem corresponder, mas subdomínios são permitidos. Por exemplo:

  • From: user@example.com com d=mail.example.com - Passa no alinhamento relaxado (mesmo domínio organizacional)
  • From: user@example.com com d=example.com - Passa no alinhamento relaxado

Alinhamento Estrito

Os domínios devem corresponder exatamente:

  • From: user@example.com com d=example.com - Passa no alinhamento estrito
  • From: user@example.com com d=mail.example.com - Falha no alinhamento estrito

Guia detalhado: Dominando o Alinhamento DKIM: Chaves, Assinaturas e Por Que E-mails Falham na Verificação

Rotação de Chaves DKIM

As chaves privadas DKIM devem ser rotacionadas periodicamente para limitar os danos caso uma chave seja comprometida. O processo de rotação envolve:

  1. Gerar um novo par de chaves com um novo seletor
  2. Publicar a nova chave pública no DNS
  3. Configurar o servidor de envio para assinar com a nova chave privada
  4. Aguardar a propagação do DNS e verificar as assinaturas com a nova chave
  5. Remover a chave pública antiga do DNS após um período de transição

Com que frequência você deve rotacionar? Não há um padrão universal, mas as recomendações comuns variam de a cada 6 meses a anualmente. Ambientes de alta segurança podem rotacionar com mais frequência.

Guia detalhado: Quando Você Deve Rotacionar Suas Chaves DKIM?

Por Que o DKIM Falha

A verificação DKIM pode falhar por vários motivos:

Modificação da Mensagem em Trânsito

Se qualquer cabeçalho assinado ou o corpo da mensagem for modificado após a assinatura, o hash não corresponderá e a verificação falhará. Os culpados comuns incluem:

  • Listas de discussão que adicionam rodapés ou modificam a linha do Assunto
  • Gateways de e-mail que reescrevem cabeçalhos para conformidade ou verificação de segurança
  • Serviços de encaminhamento que alteram os cabeçalhos da mensagem

Problemas de DNS

  • O registro da chave pública DKIM não existe ou está inacessível
  • O seletor na assinatura não corresponde a nenhuma chave publicada
  • Atrasos na propagação do DNS após uma rotação de chaves

Erros de Configuração

  • A chave privada não corresponde à chave pública publicada
  • O algoritmo de assinatura especificado na assinatura não corresponde ao tipo de chave
  • Cabeçalhos listados na tag h= não foram incluídos no cálculo real da assinatura

Guias detalhados:

DKIM vs SPF: Complementares, Não Concorrentes

O DKIM e o SPF servem a propósitos diferentes e têm forças diferentes:

RecursoSPFDKIM
O que verificaEndereço IP do servidor de envioIntegridade e origem da mensagem
Como funcionaConsulta DNS de IPs autorizadosVerificação de assinatura criptográfica
Sobrevive ao encaminhamentoNão - o encaminhamento muda o IP de envioSim - a assinatura viaja com a mensagem
Protege a integridade do conteúdoNãoSim - detecta adulteração
Tipo de registro DNSTXT no domínioTXT em selector._domainkey.domain
Base do alinhamento DMARCDomínio Return-PathDomínio d= na assinatura

Como o SPF quebra durante o encaminhamento de e-mail (o IP do servidor de encaminhamento não está no registro SPF do domínio original), o DKIM é frequentemente o único método de autenticação que passa para mensagens encaminhadas. Isso torna o alinhamento DKIM essencial para domínios que usam listas de discussão, regras de encaminhamento ou qualquer infraestrutura de retransmissão.

Guias detalhados:

DKIM para E-mail Encaminhado e Retransmitido

Uma das vantagens práticas mais importantes do DKIM sobre o SPF é o seu comportamento durante o encaminhamento de e-mail. Quando uma mensagem é encaminhada através de um servidor intermediário (uma lista de discussão, uma regra de encaminhamento automático ou um serviço de retransmissão), o SPF quebra porque o endereço IP do servidor de encaminhamento não está listado no registro SPF do domínio original. O DKIM, por outro lado, sobrevive ao encaminhamento desde que o conteúdo da mensagem não seja modificado. Se você é novo na configuração disso, o FAQ do AutoSPF responde às perguntas de configuração mais comuns.

É por isso que o DKIM é crítico para a conformidade com o DMARC em ambientes com:

  • Listas de discussão - Organizações que participam de listas de discussão do setor ou grupos de distribuição internos
  • Encaminhamento de e-mail - Usuários que encaminham e-mail de um provedor para outro (por exemplo, encaminhar um endereço universitário para o Gmail)
  • Hospedagem compartilhada - Ambientes onde o e-mail passa por servidores de retransmissão compartilhados
  • Gateways de e-mail - Appliances de segurança que retransmitem e-mail sem modificar o conteúdo

No entanto, o DKIM quebrará se o intermediário modificar as partes assinadas da mensagem. Modificações comuns que quebram o DKIM incluem adicionar rodapés, reescrever a linha do Assunto ou remover anexos. Softwares de lista de discussão como Mailman e LISTSERV frequentemente adicionam cabeçalhos e rodapés de lista, o que pode quebrar assinaturas DKIM baseadas no corpo.

A solução é configurar o DKIM com canonicalização c=relaxed/relaxed (que tolera pequenas alterações de espaços em branco) e garantir que qualquer software de lista de discussão que você opere esteja configurado para preservar as assinaturas DKIM sempre que possível.

Padrões Comuns de Configuração DKIM

Diferentes configurações de infraestrutura de e-mail exigem abordagens diferentes de configuração DKIM:

Provedor Único

Se todo o seu e-mail passa por um único provedor (por exemplo, Google Workspace), esse provedor lida com a assinatura DKIM automaticamente. Você só precisa publicar a chave pública que ele fornece no seu DNS.

Múltiplos Provedores com Seletores Separados

Quando múltiplos serviços enviam e-mail em seu nome, cada serviço recebe o seu próprio par de chaves DKIM com um seletor único. Por exemplo:

  • google._domainkey.example.com - Chave DKIM do Google Workspace
  • s1._domainkey.example.com - Chave DKIM do SendGrid
  • k1._domainkey.example.com - Chave DKIM do Mailchimp

Cada serviço assina mensagens com a sua própria chave privada, e os receptores procuram a chave pública correta com base no seletor no cabeçalho DKIM-Signature.

Assinatura On-Premises

Organizações que executam os seus próprios servidores de e-mail (Exchange, Postfix, Exim) precisam gerar os seus próprios pares de chaves, instalar a chave privada no servidor de e-mail e publicar a chave pública no DNS. Você pode criar um par de chaves com o nosso gerador DKIM gratuito. Isso lhe dá controle total sobre o processo de assinatura, mas exige que você gerencie a geração, rotação e armazenamento de chaves.

DKIM e TLS: Camadas Diferentes de Segurança

O DKIM e o TLS (Transport Layer Security) ambos contribuem para a segurança do e-mail, mas operam em camadas diferentes:

  • TLS criptografa a conexão entre servidores de e-mail durante a transmissão, impedindo a interceptação em trânsito. Ele não verifica a identidade do remetente nem protege contra falsificação.
  • DKIM verifica a identidade do remetente e a integridade da mensagem, mas não criptografa o conteúdo da mensagem.

Ambos são necessários para uma segurança de e-mail abrangente.

Guia detalhado: TLS e DKIM: Por Que Você Precisa de Ambos para uma Segurança de E-mail Forte

Configurando o DKIM para a Sua Plataforma

A configuração do DKIM varia conforme a plataforma de e-mail. O processo geral é:

  1. Gerar um par de chaves DKIM (a sua plataforma de e-mail geralmente faz isso)
  2. Publicar a chave pública como um registro TXT do DNS no local correto do seletor
  3. Ativar a assinatura DKIM na plataforma de envio
  4. Verificar a configuração com uma Consulta DKIM

Para instruções específicas de cada plataforma, consulte estes guias:

O DKIM na Pilha de Autenticação

O DKIM é um dos três protocolos que trabalham juntos para autenticar e-mail:

  • SPF - Verifica que o servidor de envio está autorizado
  • DKIM - Verifica a integridade da mensagem e fornece uma assinatura em nível de domínio (este guia)
  • DMARC - Vincula SPF e DKIM com requisitos de alinhamento, define a política de imposição e habilita relatórios

O DMARC exige que pelo menos um entre SPF ou DKIM passe e esteja alinhado com o domínio do cabeçalho From. Na prática, configurar tanto SPF quanto DKIM maximiza suas chances de passar no DMARC, porque se um método falhar (por exemplo, o SPF falha devido ao encaminhamento), o outro ainda pode fornecer um resultado válido e alinhado.

Guias detalhados:

Ferramentas de Diagnóstico

Próximos Passos

  1. Verifique a sua configuração DKIM atual - Use a Ferramenta de Consulta DKIM para verificar se o seu domínio tem chaves DKIM válidas publicadas
  2. Verifique o alinhamento - Certifique-se de que o domínio d= nas suas assinaturas DKIM corresponde ao domínio do seu cabeçalho From
  3. Revise a força da chave - Confirme que você está usando pelo menos chaves RSA de 2048 bits
  4. Planeje a rotação de chaves - Estabeleça um cronograma de rotação e documente o processo
  5. Implante o DMARC - Se você ainda não o fez, configure o DMARC para impor o alinhamento de SPF e DKIM e receber relatórios agregados
  6. Monitore com relatórios DMARC - Use os relatórios agregados DMARC para identificar falhas de DKIM em todos os servidores receptores
Rated 5/5 on G2 · Trusted since 2018

Trusted by 50,000+ domains

"AutoSPF Flattens SPF Records Seamlessly & Keeps Changes Logged - I am quite pleased with the product"

It does what it promises to do, and does it very well. I appreciate that it keeps a log of changes made, which prevents many mistakes. A client's SPF record would have way too many lookups, but AutoSPF makes that problem go away. The length of the SPF record is typically not the issue; it's the amount of lookups in the record that are. AutoSPF "flattens" the record, automatically expanding the defined lookups to IP addresses or ranges. And it auto-updates the record when the un-flattened lookups change.
PJ

Peter J.

President · Small-Business (50 or fewer emp.)

"Helped us go beyond capacity"

AutoSPF did exactly as described, it helped us get past our 10 lookup limit. Afterwards, we hit another limit regarding overall capacity and when contacted, they quickly provided us with a new solution to eliminate capacity issues entirely going forward, so now we can add as many SPF records as needed. They also provided us with a personalized support video explaining their new method in its entirety using our instance as the example.
VU

Verified User

Financial Services · Mid-Market (51-1000 emp.)

"Great service and great support"

AutoSPF was easy to initially set up on our own and a great cost effective entry into spf flattening. Needed our first support assistance today and got great response including a video demonstrating the issue I was trying to solve, a quick fix, and more detailed followup.
GF

Greg F.

Mid-Market (51-1000 emp.)