O que é o
DKIM?
O DKIM (DomainKeys Identified Mail) é um protocolo criptográfico de autenticação de e-mail que adiciona uma assinatura digital às mensagens de saída, permitindo que os destinatários verifiquem que o e-mail realmente tem origem no domínio alegado e não foi alterado em trânsito.
Verificação criptográfica em três etapas
O DKIM usa criptografia de chave pública para provar que uma mensagem de e-mail foi enviada pelo domínio que ela alega e não foi modificada após o envio.
O remetente assina
Quando o seu servidor de e-mail envia um e-mail, ele cria um hash de cabeçalhos selecionados e do corpo da mensagem, criptografa o hash com uma chave privada e anexa o resultado como o cabeçalho DKIM-Signature.
A mensagem viaja
O e-mail assinado atravessa a internet. Como a assinatura DKIM faz parte do cabeçalho da mensagem, ela viaja com o e-mail através de qualquer número de servidores intermediários e encaminhadores.
O destinatário verifica
O servidor destinatário lê o cabeçalho DKIM-Signature, busca a chave pública no DNS em selector._domainkey.yourdomain.com, descriptografa o hash, o recalcula e compara. Uma correspondência significa que o DKIM passa.
Como é um registro DKIM
no DNS
Um registro DKIM é um registro DNS TXT publicado em selector._domainkey.yourdomain.com. Ele contém a chave pública que os destinatários usam para verificar a assinatura DKIM anexada às suas mensagens de saída.
- O seletor é escolhido pelo seu provedor de e-mail (por exemplo, google, selector1)
- A chave pública é codificada em Base64 e pode ter 1024 ou 2048 bits
- O NIST recomenda chaves RSA de 2048 bits no mínimo por segurança
- As chaves Ed25519 são menores e mais rápidas, mas ainda não são universalmente suportadas
selector1._domainkey.example.com. IN TXT "v=DKIM1; k=rsa; p=MIGfMA0GCSqGSIb3DQEB..."
v=DKIM1 k=rsa p=MIGf... Como os seletores identificam qual chave usar
Um seletor DKIM é uma string no cabeçalho DKIM-Signature (a tag s=) que informa ao destinatário qual registro DNS contém a chave pública. Cada serviço de e-mail usa seu próprio seletor, permitindo que um domínio tenha várias chaves DKIM ativas simultaneamente.
google google._domainkey.example.com selector1, selector2 selector1._domainkey.example.com s1, s2 s1._domainkey.example.com k1 k1._domainkey.example.com personalizado (CNAME) xxxxxxx._domainkey.example.com 20230601xxxxx CNAME para dkim.postmarkapp.com DKIM vs SPF vs DMARC
Os três protocolos funcionam juntos para fornecer uma autenticação de e-mail em camadas. O SPF autoriza os servidores de envio e o DMARC os une com política - cada um protege contra diferentes vetores de ataque.
Problemas comuns de DKIM e como corrigi-los
As falhas de DKIM geralmente se resumem à gestão de chaves, à configuração de DNS ou à modificação de mensagens por intermediários.
Incompatibilidade de assinatura
A chave privada usada para assinar não corresponde à chave pública no DNS. Geralmente causada por uma rotação de chaves incompleta ou pela publicação da chave errada. Verifique com uma ferramenta de consulta DKIM.
Lacunas na rotação de chaves
Chave antiga removida do DNS antes que todas as mensagens assinadas com ela tenham sido entregues e verificadas. Publique sempre a nova chave primeiro, aguarde pelo menos 48 horas e depois remova a antiga.
O encaminhamento quebra a assinatura
Listas de discussão e encaminhadores que modificam cabeçalhos ou o conteúdo do corpo invalidam a assinatura DKIM. O ARC (Authenticated Received Chain) ajuda, mas sua adoção ainda está crescendo.
Registro DNS longo demais
Alguns provedores de DNS dividem incorretamente registros TXT longos. As chaves públicas DKIM, especialmente RSA de 2048 bits, podem exceder 255 caracteres e devem ser corretamente concatenadas em várias strings.
Registro DKIM ausente
O registro DNS TXT nunca foi publicado, foi excluído por acidente ou está no local de seletor errado. Verifique se o registro existe em selector._domainkey.yourdomain.com.
Assinatura expirada
A tag x= no cabeçalho DKIM-Signature define um carimbo de data/hora de expiração. Se a mensagem for verificada após esse carimbo, o DKIM falha. Comum com entrega atrasada ou mensagens na fila.
Perguntas frequentes sobre DKIM
O que é o DKIM?
O DKIM (DomainKeys Identified Mail) é um protocolo criptográfico de autenticação de e-mail, definido na RFC 6376, que adiciona uma assinatura digital às mensagens de e-mail de saída. O servidor de e-mail destinatário usa a assinatura para verificar duas coisas: se o e-mail realmente tem origem no domínio de onde alega vir e se o conteúdo da mensagem não foi alterado em trânsito. Ao contrário do SPF, que verifica o IP do servidor de envio, o DKIM assina o conteúdo real da mensagem, tornando-o o método de autenticação mais confiável para e-mails encaminhados.
Como o DKIM funciona?
O DKIM funciona em três etapas. Primeiro, o servidor de e-mail de envio cria um hash de cabeçalhos selecionados e do corpo da mensagem, depois criptografa esse hash com uma chave privada armazenada no servidor. O hash criptografado torna-se o cabeçalho DKIM-Signature anexado ao e-mail. Segundo, o proprietário do domínio publica a chave pública correspondente como um registro DNS TXT em selector._domainkey.yourdomain.com. Terceiro, quando o e-mail chega, o servidor destinatário busca a chave pública no DNS, descriptografa o hash, recalcula o hash a partir da mensagem recebida e compara. Se corresponderem, o DKIM passa.
O que é um seletor DKIM?
Um seletor DKIM é uma string que identifica qual chave pública usar ao verificar uma assinatura DKIM. Ele aparece no cabeçalho DKIM-Signature como a tag s= e no local do registro DNS como selector._domainkey.yourdomain.com. Os seletores permitem que um domínio tenha várias chaves DKIM ativas simultaneamente, o que é essencial para a rotação de chaves e para domínios que usam vários serviços de e-mail. Seletores comuns incluem google para o Google Workspace, selector1 e selector2 para o Microsoft 365, e s1 para o SendGrid.
Qual é a diferença entre DKIM e SPF?
O SPF (Sender Policy Framework) verifica se o endereço IP do servidor de envio está autorizado no registro DNS do domínio. Ele verifica o remetente do envelope (Return-Path), não o cabeçalho From visível. O DKIM verifica se o conteúdo da mensagem não foi alterado em trânsito ao anexar uma assinatura criptográfica. A diferença fundamental: o SPF falha quando o e-mail é encaminhado porque o IP do encaminhador não está no registro SPF original, mas as assinaturas DKIM sobrevivem ao encaminhamento porque estão anexadas à própria mensagem. O DMARC une os dois exigindo que o SPF ou o DKIM passe e se alinhe com o domínio do cabeçalho From.
Por que o DKIM falha?
O DKIM falha por várias razões: o cabeçalho DKIM-Signature ou os cabeçalhos assinados foram modificados em trânsito (comum com listas de discussão que adicionam rodapés ou modificam a linha de assunto), a chave pública no DNS não corresponde à chave privada usada para assinar (muitas vezes causado por uma rotação de chaves incompleta), o registro DNS TXT está ausente ou inacessível, a assinatura expirou (a tag x= na assinatura especifica um carimbo de data/hora de expiração), ou o corpo da mensagem foi alterado por um servidor intermediário. A modificação de conteúdo por software de listas de discussão como Mailman e Google Groups é a causa mais comum de falha do DKIM.
Como encontro meu seletor DKIM?
Você pode encontrar seu seletor DKIM examinando o cabeçalho DKIM-Signature em qualquer e-mail enviado a partir do seu domínio. Abra os cabeçalhos do e-mail (no Gmail, clique nos três pontos e selecione Mostrar original) e procure a tag s= no cabeçalho DKIM-Signature. O valor de s= é o seu seletor. Como alternativa, use a ferramenta DKIM Lookup do DMARC Report em dmarcreport.com/tools/dkim-lookup/ para descobrir todos os seletores publicados para o seu domínio.
Com que frequência devo fazer a rotação das chaves DKIM?
A boa prática é fazer a rotação das chaves DKIM a cada 6 a 12 meses para chaves RSA e anualmente para chaves Ed25519. O NIST recomenda chaves RSA de 2048 bits no mínimo. A rotação de chaves envolve gerar um novo par de chaves, publicar a nova chave pública sob um novo seletor, configurar seu servidor de e-mail para assinar com a nova chave e remover a chave pública antiga do DNS após um período de carência. Os seletores tornam esse processo transparente porque as chaves antigas e novas podem coexistir durante a transição.
Descubra seus seletores DKIM
Use nossa ferramenta DKIM Lookup gratuita para encontrar todas as chaves DKIM publicadas para o seu domínio e verificar se estão configuradas corretamente.
Verificar registro DKIMO que as equipes de segurança dizem sobre o monitoramento de DKIM
Rated 4.8/5 on G2 · 469 verified reviews
Verified User in Information Technology and Services
"Best security tool for your own domains"
The weekly reports help me a lot to analyze quickly the emails sent from my domains and that gives me peace of mind.
Ryan C.
Director
"Control Centre for Email Security"
I like that we can see and check all reports on just 1 platform. We manage multiple domains, and monitoring them all in one place is essential.
eddy g.
Director
"A great solution to a common email problem."
I have been using them for the last month after my Google business email started giving DMARC errors. I didn't even know what it meant at that time. After a little googling I found that people can spoof it as well. So far so good — the best thing is it protects every email.