O DKIM é uma norma de autenticação de correio eletrónico que utiliza criptografia de chave pública/privada para assinar mensagens de correio eletrónico. Os registos DKIM ajudam-no a verificar se uma mensagem de correio eletrónico recebida foi efetivamente enviada do domínio ao qual a chave DKIM está associada. Consequentemente, um registo DKIM permite-lhe verificar se uma mensagem de correio eletrónico foi manipulada em trânsito e se é seguro abri-la.
O DKIM existe no seu DNS como um registo DNS TXT (Texto) ou CNAME (Nome Canónico). A utilização de TXT ou CNAME depende de uma série de factores, explorados abaixo.
Principais conclusões
- O DKIM é uma norma de autenticação de correio eletrónico concebida para identificar endereços de remetente de correio eletrónico falsos.
- Os registos DKIM são sempre registos TXT. No entanto, alguns fornecedores utilizam a delegação CNAME para apontar o seu domínio para um registo TXT alojado nos seus servidores.
- Cada um destes métodos tem o seu próprio conjunto de vantagens e limitações.
- A escolha de um ou de outro depende da sua prioridade: controlo e segurança ou facilidade e comodidade.
- As armadilhas comuns incluem um formato de seletor errado, misturar TXT/CNAME para o mesmo seletor e atrasos TTL durante a rotação de teclas.
Compreender a publicação de registos DKIM
Vamos ver em que consiste um registo DKIM.
O que está num registo DKIM?
Um registo DKIM envolve um seletor, uma chave pública e um algoritmo. O utilizador pode gerar seu registro DKIM com a ferramenta online do PowerDMARC.
Selectores DKIM
Os selectores DKIM permitem que o servidor de correio eletrónico do destinatário localize e verifique a chave pública do remetente. Ajuda a identificar qual a chave pública DKIM a utilizar para verificação entre várias. Pode encontrá-lo no cabeçalho DKIM-Signature de cada correio eletrónico assinado. É o parâmetro "s=".
Chave pública
A chave pública DKIM é publicada no DNS do seu domínio como um registo TXT (ou, por vezes, um CNAME que aponta para a chave do seu fornecedor). É utilizada pelos servidores receptores para verificar o hash da mensagem criado utilizando a chave privada do remetente, garantindo a integridade e autenticidade do correio eletrónico.
A chave, fornecida pela organização que envia o seu correio eletrónico, será inserida diretamente na sua zona DNS como um registo TXT. Em alternativa, será um CNAME que apontará para a chave no DNS do seu fornecedor.
Algoritmo
O algoritmo utilizado para o hashing é definido no a= do cabeçalho DKIM-Signature (e não no registo DNS). Os algoritmos de assinatura DKIM suportados são:
- rsa-sha256 (recomendado e mais comum)
- rsa-sha1 (obsoleto devido a uma segurança mais fraca)
Localização e sintaxe do DNS
O registo DKIM é um registo TXT que contém vários pares de valores de etiqueta, normalmente separados por ponto e vírgula:
v=DKIM1; k=rsa; p=PUBLIC_KEY
- v=DKIM1 especifica a versão DKIM.
- k=rsa, em que "k" se refere ao tipo de chave (RSA é o único atualmente suportado)
- p=PUBLIC_KEY A chave pública efectiva utilizada para verificar a assinatura
Aqui está um exemplo: seletor._domainkey.example.com
Aqui, "seletor" é um identificador único para a chave DKIM e example.com é o seu domínio.
Método 1 - DKIM como um registo TXT
Com este método, a sua chave pública DKIM é publicada como um registo DNS TXT na localização seletor._domainkey.example.com. O correio de saída é assinado com a chave privada e os servidores de receção utilizam a chave pública no seu DNS para verificar a assinatura.
Prós
- Controlo total: A utilização do DKIM como um registo TXT dá-lhe controlo total sobre as suas chaves DKIM e DNS.
- Sem dependência de terceiros: Não precisa de depender de fornecedores terceiros ao utilizar este método. Este método proporciona-lhe uma maior sensação de privacidade e segurança, uma vez que é o proprietário dos seus dados.
Contras
- Rotação manual de chaves: É responsável pela atualização das chaves, o que pode ser complicado para os utilizadores não técnicos.
- Maior risco de configuração incorrecta: A configuração "faça você mesmo" aumenta a probabilidade de erros que podem enfraquecer a segurança do correio eletrónico. Utilize o nosso verificador DKIM gratuito para evitar erros.
Método 2 - DKIM através de delegação CNAME
Este método funciona de forma bastante diferente do primeiro. Em vez de publicar diretamente a sua chave pública DKIM, cria um registo CNAME em seletor._domainkey.example.com que aponta para o registo DKIM do seu fornecedor de serviços de correio eletrónico (ESP).
Quando um servidor de receção procura a sua chave DKIM, a consulta DNS segue o CNAME para o DNS do ESP. É aqui que está alojado o registo TXT real com a chave pública. Os principais provedores, como SendGrid, Mailchimp e Amazon SES, usam isso.
Prós
- Rotação automática das teclas: Este método não requer actualizações manuais e a rotação de chaves é feita automaticamente.
- Configuração fácil: Este método é mais adequado para principiantes ou para gerir vários domínios. Permite uma gestão contínua sem problemas e sem trabalho pesado.
Contras
- Menos visibilidade: Uma configuração mais fácil tem o custo de um controlo e uma visão limitados das suas chaves DKIM e do DNS.
- Restrições de CNAME: CNAMEs profundamente aninhados ou encadeados podem atingir os limites de resolução do DNS ou causar problemas de desempenho. Alguns fornecedores exigem formatos específicos ou não suportam a delegação CNAME, o que pode quebrar o DKIM se não for seguido.
TXT vs. CNAME - Qual deve ser utilizado?
Ao decidir se deve utilizar o DKIM em TXT vs. CNAME, eis alguns conselhos gerais que deve seguir.
Utilizar TXT se...
- Aloja o seu correio eletrónico e tem conhecimentos técnicos
- Pretende ter controlo total sobre o DKIM e o DNS.
- Prefere gerir e rodar as chaves você mesmo.
Nota: Em alguns casos, o seu fornecedor pode exigir a introdução direta de TXT, tornando este método não opcional.
Utilizar CNAME se...
- Utiliza um ESP como o Mailchimp, SES ou SendGrid.
- Prefere a gestão automatizada do DKIM.
- Não tem tempo ou conhecimentos técnicos para efetuar a configuração manual.
Mistura de TXT/CNAME para o mesmo seletor
O DNS não permite ter um registo TXT e um registo CNAME no mesmo nome de domínio (ou seja, no mesmo seletor DKIM). Utilize apenas um tipo de registo (TXT ou CNAME) por seletor. Escolha TXT para controlo manual ou CNAME se delegar a um ESP.
Exemplos do mundo real
Se está à procura de exemplos de DKIM em TXT vs. CNAME, aqui está um para cada, com uma descrição concisa.
Exemplo de DKIM TXT
google._domainkey.example.com. IN TXT "v=DKIM1; k=rsa; p=MIIBIjANBgkqhkiG..."
Este registo armazena diretamente a chave pública DKIM no seu DNS sob o seletor e o domínio especificados.
Exemplo de CNAME DKIM
em1234._domainkey.example.com. IN CNAME em1234.example.dkim.emailsvc.com.
Este registo delega a pesquisa da chave DKIM a um fornecedor terceiro, apontando para o seu registo DKIM alojado.
Resumo
A escolha de DKIM em TXT vs. CNAME pode parecer difícil. Ambos os métodos funcionam bem, e ambos são normalmente utilizados, pelo que a decisão cabe-lhe a si. A sua escolha dependerá muitas vezes da prioridade que dá ao controlo total e direto sobre a conveniência, ou vice-versa.
Qualquer que seja a sua escolha final, audite sempre a configuração atual do DKIM para verificar a conformidade. Isto pode ajudá-lo a evitar falhas de segurança e a garantir o mais elevado nível de segurança para as suas comunicações!
- DKIM em TXT vs. CNAME - Principais diferenças e melhores práticas - 14 de maio de 2025
- Endereço do destinatário rejeitado: Acesso negado - Causas e correcções (SMTP 550 5.7.1) - 9 de maio de 2025
- Todos os meus e-mails estão a ir para o spam - eis o que pode fazer - 1 de maio de 2025