O que é DKIM? Registro DKIM, seletor e como configurar
DKIM (DomainKeys Identified Mail) comprova duas coisas sobre um e-mail: que um servidor autorizado pelo domínio o enviou e que ninguém o alterou no caminho. Ele faz isso com um par de chaves: uma privada, que fica no servidor de envio, e uma pública, publicada no DNS. Este artigo aborda o registro DKIM, seletores, tamanho da chave, rotação e como configurá-lo com seus serviços de e-mail.
Como o DKIM funciona
- O servidor de envio pega cabeçalhos selecionados (From, Subject, Date e outros) e o corpo da mensagem, calcula um hash e o assina com a chave privada.
- Ele adiciona um cabeçalho
DKIM-Signaturecom a assinatura e as instruções para verificá-la. - O destinatário lê o cabeçalho, busca a chave pública no DNS e confere a assinatura. Se qualquer parte assinada tiver sido alterada, a verificação falha.
Um cabeçalho de assinatura abreviado fica assim:
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=example.com; s=mail2025;
h=from:to:subject:date:message-id; bh=…; b=…
d=: o domínio de assinatura. Para o DMARC, ele precisa estar alinhado com o domínio do From.s=: o seletor, que indica ao destinatário onde procurar a chave.h=: a lista de cabeçalhos assinados;bh=: o hash do corpo;b=: a própria assinatura.
Como é um registro DKIM
A chave pública é publicada como um registro TXT em selector._domainkey.domain. Para a assinatura acima, fica assim:
mail2025._domainkey.example.com. TXT "v=DKIM1; k=rsa; p=MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA…"
| Tag | Significado |
|---|---|
v=DKIM1 | Versão; recomendada e, se presente, deve vir primeiro. |
k=rsa | Tipo de chave. RSA é o padrão e a escolha segura; ed25519 existe, mas não é verificado em todos os lugares. |
p= | A chave pública em base64. Um p= vazio significa que a chave foi revogada. |
t=y | Modo de teste. Não use em chaves de produção. |
Uma chave de 2048 bits tem mais de 255 caracteres, o limite para uma única string em um registro TXT. Os painéis de DNS lidam com isso de formas diferentes: alguns dividem automaticamente, outros esperam que você cole o valor como várias strings entre aspas em um único registro. Se a chave chegar quebrada, geralmente o registro foi dividido por engano em dois registros separados: deve haver um único registro TXT cujas strings sejam unidas.
O que é um seletor DKIM e por que existem vários
O seletor é apenas um nome escolhido por você ou pelo seu provedor: google, selector1, s1, mail2025. Ele existe para que um mesmo domínio possa ter várias chaves ao mesmo tempo:
- uma para o provedor da sua caixa de e-mail;
- uma para a plataforma de newsletter;
- uma para o helpdesk ou CRM;
- uma nova durante a rotação de chaves, enquanto a antiga ainda é válida.
Não há como listar todos os seletores de um domínio pelo DNS: só é possível consultar um nome específico. Por isso os verificadores testam um conjunto de seletores comuns, e por isso a forma confiável é ler o seletor em uma mensagem real.
Como encontrar seu seletor nos cabeçalhos do e-mail
- Envie uma mensagem do serviço que você quer verificar para uma caixa de e-mail que você controla.
- Abra a mensagem original com os cabeçalhos completos. A maioria dos clientes de e-mail oferece "Mostrar original", "Ver código-fonte" ou "Cabeçalhos da mensagem" no menu da mensagem.
- Encontre o cabeçalho
DKIM-Signature. O valor des=é o seletor ed=é o domínio. - Veja também o
Authentication-Results, adicionado pelo destinatário: ele indicadkim=passoufaile para qual domínio. - Cole o domínio e o seletor no verificador de DKIM para ver a chave publicada, o tipo e o tamanho. Sem um seletor, a ferramenta testa cerca de 30 seletores comuns.
Tamanho da chave: 1024 ou 2048 bits
O padrão DKIM exige que os assinantes usem chaves de pelo menos 1024 bits e recomenda 2048. Chaves de 512 ou 768 bits são consideradas quebráveis e os destinatários podem ignorá-las. Na prática:
- Use 2048 bits sempre que seu provedor e seu painel de DNS permitirem, o que hoje é quase sempre.
- 1024 bits ainda é verificado, mas não há motivo para escolher esse tamanho em uma nova chave.
- Chaves maiores (4096) raramente são necessárias, e alguns painéis de DNS têm dificuldade com o tamanho delas.
Para referência, promopilot.link assina com o seletor mail e uma chave RSA de 2048 bits (verificado em outubro de 2026).
Chaves delegadas por CNAME
Muitos provedores não pedem que você publique a chave em si. Em vez disso, você publica um CNAME que aponta seu seletor para um registro controlado por eles:
selector1._domainkey.example.com. CNAME selector1-example-com._domainkey.provider.example.net.
A vantagem é que o provedor pode rotacionar as chaves sem que você precise mexer no DNS novamente. O Microsoft 365 funciona assim, com dois seletores, selector1 e selector2: você publica os dois CNAMEs, e ele alterna entre eles durante a rotação. Muitas plataformas de newsletter e de e-mails transacionais também fornecem dois ou três CNAMEs. Sempre copie os destinos exatos do painel de administração do seu provedor: eles contêm o nome do seu tenant ou da sua conta e não podem ser adivinhados.
Como configurar o DKIM
- Liste todos os serviços que enviam e-mails em nome do seu domínio: caixa de e-mail, newsletters, CRM, helpdesk, cobrança, formulários do site.
- No painel de administração de cada serviço, encontre a seção de autenticação de domínio ou DKIM e adicione seu domínio. O serviço gera um par de chaves ou registros CNAME.
- Publique os registros no seu painel de DNS exatamente como fornecidos: o nome do host (seletor mais
._domainkey), o tipo e o valor. - Aguarde a atualização do DNS e depois volte ao serviço e clique em verificar ou ativar a assinatura. Alguns provedores só começam a assinar depois que você faz isso.
- Envie uma mensagem de teste e confira nos cabeçalhos se aparece
dkim=passcomd=definido como seu domínio. - Repita para cada serviço e depois publique o DMARC para ter a visão geral: veja como configurar o DMARC.
Rotação de chaves
Uma chave que nunca muda é uma chave que talvez já esteja comprometida. Uma rotação bem feita funciona assim:
- Gere um novo par de chaves e publique a chave pública em um novo seletor.
- Mude a assinatura para o novo seletor.
- Mantenha o registro antigo por pelo menos alguns dias, para que mensagens atrasadas e em fila ainda sejam verificadas.
- Revogue a chave antiga publicando o registro com
p=vazio, ou remova-o.
Com a delegação por CNAME, o provedor faz as etapas 1 a 3 por você. Se você gerencia as chaves por conta própria, uma rotação a cada 6 a 12 meses é uma prática comum.
Problemas comuns do DKIM
- Registro não encontrado: nome do host incorreto. Alguns painéis acrescentam o domínio automaticamente, então
mail._domainkey.example.comviramail._domainkey.example.com.example.com. Digite apenasmail._domainkey. - Chave corrompida: espaços extras, aspas ou quebras de linha dentro de
p=, ou a chave dividida em dois registros. - A assinatura falha após o envio: algo modifica a mensagem depois da assinatura, como um rodapé adicionado por um gateway, uma lista de e-mails ou um appliance de segurança.
- O DKIM passa, mas o DMARC falha: o serviço assina com o próprio domínio. Ative a assinatura com o seu domínio.
Por que o DKIM importa mais que o SPF para o DMARC
O SPF está atrelado ao endereço IP que entrega a mensagem, por isso ele falha sempre que o e-mail é encaminhado: o servidor que encaminha não está no seu registro SPF. Uma assinatura DKIM viaja dentro da mensagem e sobrevive ao encaminhamento, desde que as partes assinadas não sejam alteradas. Por isso, um domínio que depende só do SPF vê falhas de DMARC em e-mails encaminhados, enquanto um domínio com DKIM alinhado em todos os fluxos não vê. Se você só puder corrigir uma coisa para um remetente terceiro, ative o DKIM com o seu próprio domínio.
O DKIM é uma de três partes. Como ele se encaixa com o SPF e o DMARC é explicado em SPF, DKIM e DMARC explicados; para verificar o restante da configuração de e-mail, use o verificador de SPF, a consulta de MX e a verificação de blacklist de IP.