DKIM explicado: firmas digitales para el correo electrónico
DKIM (DomainKeys Identified Mail) es un sistema que añade una firma criptográfica a cada correo saliente. Cuando el servidor receptor recibe el mensaje, verifica esa firma usando una clave pública publicada en el DNS del dominio emisor. Si la firma es válida, confirma que el mensaje proviene realmente de ese dominio y que no fue alterado en tránsito.
Cómo funciona DKIM
El proceso usa criptografía asimétrica de clave pública:
- El servidor de correo del dominio emisor genera un par de claves: una clave privada (guardada en el servidor) y una clave pública (publicada como registro DNS TXT en una dirección del estilo
selector._domainkey.dominio.com). - Al enviar un correo, el servidor firma ciertos campos del mensaje (como el header From, el Subject y el cuerpo) con la clave privada. La firma se añade como una cabecera
DKIM-Signature. - El servidor receptor consulta el DNS para obtener la clave pública y verifica la firma. Si coincide, el mensaje no fue modificado y proviene del dominio declarado.
Ejemplo de cabecera DKIM en un correo real:
DKIM-Signature: v=1; a=rsa-sha256; d=bbva.es; s=mail2024;
h=from:to:subject:date; bh=...; b=...
El campo d= indica el dominio firmante; s= es el selector que apunta al registro DNS con la clave pública.
Qué verifica DKIM y qué no
- Verifica que: el mensaje proviene del dominio que firma, y que el contenido no fue alterado desde que se firmó.
- No verifica que: el dominio firmante sea legítimo. Un dominio de phishing como
bbva-alertas.compuede tener DKIM perfectamente configurado para sí mismo y superar la verificación. DKIM confirma la integridad, no la honestidad del remitente. - No protege el header From visible: DKIM puede firmar el envelope pero no exige que el dominio firmante coincida con lo que el usuario ve en el campo "De:". Esa alineación la impone DMARC.
Ventaja frente al reenvío de correo
A diferencia de SPF, DKIM resiste el reenvío. La firma viaja dentro del mensaje y sigue siendo válida aunque el correo pase por servidores intermedios, siempre que el contenido no se modifique. Por eso DKIM y SPF se complementan: SPF valida el servidor emisor, DKIM valida el contenido y el origen del dominio.
Cómo ver el resultado de DKIM en un correo
En las cabeceras completas del mensaje busque Authentication-Results. Verá una línea como:
dkim=pass header.d=correos.es
Si aparece dkim=fail o dkim=none, el mensaje no pudo ser verificado, lo que puede indicar manipulación o que el dominio no tiene DKIM configurado.
DKIM como parte del trío de autenticación
DKIM es más eficaz junto a SPF y DMARC. DMARC usa los resultados de ambos para decidir qué hacer con los correos que no superan la autenticación, y exige que el dominio autenticado coincida con el header From que ve el usuario.
Compruebe un enlace sospechoso
Pegue una URL, mensaje o código QR en 2check.click para analizar el destino, las redirecciones y otras señales de phishing.
Preguntas frecuentes
¿DKIM pass significa que el correo es legítimo?
No del todo. DKIM confirma que el mensaje proviene del dominio que lo firma y que no fue alterado. Pero si ese dominio es un dominio de phishing (por ejemplo, bbva-seguridad.net), DKIM pass no indica que sea seguro. Revise siempre el dominio real, no solo la firma.
¿Cuánto tiempo es válida una firma DKIM?
Las firmas DKIM pueden incluir un campo x= con una fecha de expiración, normalmente entre 24 horas y varios días. Para el correo recibido en tiempo real esto no supone un problema; el receptor verifica la firma al recibir el mensaje.
¿Qué ocurre si DKIM falla?
Sin DMARC, un fallo DKIM no tiene consecuencias automáticas: el correo puede llegar igual. Con DMARC configurado, un fallo DKIM (combinado con un fallo SPF) activa la política del dominio: el correo puede ir a spam o ser rechazado.
¿Puede un atacante falsificar una firma DKIM?
No, siempre que la clave privada esté bien protegida. Sin acceso a la clave privada del dominio legítimo, es computacionalmente inviable falsificar la firma. Si una clave privada se compromete, el administrador debe rotarla inmediatamente cambiando el selector DNS.
¿DKIM protege los adjuntos de un correo?
Depende de la configuración. La firma DKIM puede incluir el cuerpo completo del mensaje, incluidos los adjuntos codificados en MIME. Si alguien modifica un adjunto después del envío, la firma fallará, alertando al servidor receptor.