DKIM é uma especificação que define um mecanismo para autenticação de e-mail baseado em criptografia de chaves públicas. Através do uso do DKIM, um domínio/empresa assina digitalmente as mensagens que envia, permitindo ao receptor confirmar a autenticidade da mensagem.
Para verificar a assinatura digital, a chave pública é obtida por meio de consulta ao DNS do domínio do assinante.
Ao contrário do SPF, que verifica somente o envelope, o DKIM verifica o cabeçalho da mensagem.
Para habilitar DKIM é necessário:
- Criar um par de chaves pública e privada;
- Disponibilizar a chave pública via DNS;
- Colocar a chave privada no MTA ;
Para utilizar DKIM no envio de mensagens basta assinar cada mensagem enviada com a chave privada colocada no MTA, a mesma sera inserida no cabeçalho da mensagem do remetente
Para verificar a autenticidade de uma mensagem recebida:
- Validar a chave pública do domínio (From);
- Validar a assinatura da mensagem recebida;
A assinatura pode ter três conclusões:
- Assinatura é válida: mensagem vem realmente do domínio indicado;
- Assinatura não é válida: a mensagem pode ser marcada como suspeita ou ser recusada;
- Domínio do remetente não possui um registro DKIM, não sendo possível usar a informação de DKIM como critério de decisão.
Mais detalhes sobre DKIM, bem como softwares de suporte:
Referência são as seguintes RFCs:
http://tools.ietf.org/html/rfc4686