Gerador de registro DNS DKIM

Informe um nome de seletor e uma chave pública (formato PEM) para gerar o registro DNS TXT de assinatura DKIM (v=DKIM1; k=rsa; p=...). Chaves públicas com mais de 255 caracteres são divididas automaticamente no formato de arquivo de zona BIND.

Dicas

  • Você pode colar diretamente o conteúdo de um arquivo PEM gerado com opendkim-genkey ou com openssl genrsa → openssl rsa -pubout do OpenSSL. Quebras de linha e linhas de cabeçalho são removidas automaticamente.
  • Ativar o modo de teste (t=y) pode fazer com que alguns servidores de destino sejam mais tolerantes com falhas de DKIM em vez de rejeitar o e-mail. É uma opção mais segura durante o período de validação antes de ir para produção.
  • Depois de publicar o registro gerado no DNS, recomendamos confirmar que ele entrou em vigor usando a ferramenta de diagnóstico de entregabilidade de e-mail deste site (diagnóstico SPF/DKIM/DMARC).
  • Os tamanhos de chave mais comuns são 1024 e 2048 bits; com 2048 bits, a string da chave pública normalmente passa de 255 caracteres e é dividida em várias partes. Essa divisão não é um erro.
  • O nome do seletor pode ser escolhido livremente, mas se um domínio usa vários provedores de e-mail, incluir o nome do provedor (por exemplo, "google", "mailgun") facilita a gestão.

Perguntas frequentes

É um identificador que permite usar várias chaves DKIM no mesmo domínio. O registro é publicado no DNS com o nome "seletor._domainkey.domínio", e a assinatura é verificada com a chave pública do seletor que corresponde ao valor da tag s= indicada no cabeçalho DKIM-Signature do e-mail enviado.

Como uma string de caracteres (character-string) de um registro TXT do DNS é limitada a 255 bytes, o que exceder esse limite é dividido em várias strings entre aspas, concatenadas sem espaços em um único registro TXT. O formato BIND gerado por esta ferramenta já trata essa divisão.

Não. Esta ferramenta apenas monta o registro que você publica no DNS; ela não gera a chave privada. Gere e guarde sua chave privada com segurança no seu próprio ambiente, usando uma ferramenta confiável como opendkim-genkey ou OpenSSL.

Use logo após implantar o DKIM, enquanto confirma que a assinatura e a verificação funcionam corretamente no seu ambiente real de envio. Alguns destinatários tratam falhas de DKIM de domínios com t=y de forma mais tolerante, funcionando como uma rede de segurança antes de ir totalmente para produção.

Hoje em dia, RSA (k=rsa) é o padrão de fato, por ser compatível com a maior variedade de servidores de envio e recebimento. Ed25519 (k=ed25519, RFC 8463) tem chaves mais curtas e assinatura mais rápida, mas ainda há servidores de e-mail que não o suportam, então adote-o apenas se puder confirmar que funciona nos dois lados.
ツールくん

Curiosidade — como a criptografia de chave pública impede a falsificação de e-mails

O DKIM (DomainKeys Identified Mail) foi padronizado em 2004 unindo duas tecnologias desenvolvidas separadamente pela Yahoo! e pela Cisco — DomainKeys e Identified Internet Mail. Seu núcleo é a criptografia de chave pública: o remetente criptografa com a chave privada um hash calculado a partir dos cabeçalhos e de parte do corpo da mensagem, anexando-o como o cabeçalho DKIM-Signature. O destinatário verifica essa assinatura usando a chave pública publicada no DNS e, se o par de chaves corresponder, pode confirmar matematicamente que o conteúdo não foi alterado após o envio.

Enquanto o SPF verifica a legitimidade em nível de rede — o endereço IP de origem —, o DKIM é fundamentalmente diferente por aplicar uma assinatura digital ao próprio conteúdo do e-mail. Por isso, mesmo que a mensagem seja retransmitida várias vezes por servidores legítimos (algo com que o SPF costuma ter dificuldades), a assinatura DKIM permanece válida enquanto o corpo não for alterado. Essa característica faz com que o DKIM seja considerado mais confiável que o SPF em caminhos de entrega que envolvem encaminhamento, como listas de e-mail.

O mecanismo de seletor também é importante na prática. Quando um mesmo domínio usa vários provedores de e-mail (servidor próprio, Gmail, SendGrid etc.), atribuir um par de chaves e um nome de seletor distintos para cada um permite revogar ou renovar as chaves de forma independente por provedor. Essa flexibilidade operacional — uma chave vazada afetando apenas o seu próprio seletor — é um dos motivos pelos quais o DKIM, mesmo sendo apenas um registro DNS simples, continua amplamente usado em infraestruturas de e-mail de grande escala.