¿Qué es DKIM (firma de correo)?
El DKIM es la firma criptográfica que el servidor de salida agrega al encabezado de cada mensaje, probándole a quien recibe dos cosas: que partió realmente de quien controla el dominio y que el fragmento firmado no fue alterado en el camino. La clave que verifica esa firma queda publicada en el DNS del dominio, a la vista de cualquier servidor del mundo. Es el segundo de los tres registros de autenticación de correo y el único que sigue valiendo cuando el mensaje se reenvía sin alteraciones.
Cómo funciona el DKIM
El DKIM usa un par de claves: una queda guardada en el servidor que envía y firma, la otra se publica en el DNS para que cualquier destinatario pueda verificar. Nada de la clave que firma sale del servidor.
Genera el par de claves y elige un nombre
El servicio de correo crea dos claves ligadas entre sí y un nombre corto para identificar ese par, el selector. Una empresa puede tener varios selectores, uno por cada sistema que envía.
Publica la clave de verificación en el DNS
La clave pública entra como registro de texto en el dominio, bajo una dirección derivada del selector, con el formato selector._domainkey.sudominio.com. Es pública a propósito: su función es justamente permitir que cualquier servidor del mundo la use.
Firma el mensaje en la salida
Al enviar, el servidor calcula un resumen criptográfico de los encabezados elegidos y del cuerpo, sella ese resumen con la clave que solo él tiene y graba el resultado en un encabezado del propio mensaje.
El destino verifica y decide
Quien recibe lee el selector y el dominio en el encabezado, busca la clave en el DNS, recalcula el resumen y compara. Si coincide, la firma es válida y ese dominio asumió responsabilidad por el mensaje.
Fuente: RFC 6376, la especificación oficial del DKIM publicada por el IETF, que define la firma como declaración de responsabilidad de un dominio y la publicación de la clave pública en el DNS, la RFC 8301, que la actualiza en el punto de los algoritmos y el tamaño de clave, y el material de configuración de DNS de correo de N-able University.
Los límites del DKIM
- Una firma válida no significa un mensaje confiable. El DKIM afirma que un dominio asumió responsabilidad por el mensaje, y nada más. Un delincuente puede registrar un dominio, configurar un DKIM impecable y firmar con éxito su propio fraude. Y la propia especificación advierte que no define ningún mecanismo contra el reenvío abusivo: un mensaje legítimo capturado y redistribuido en masa llega con la firma todavía válida.
- El dominio que firma no tiene que ser el que usted lee. La especificación separa la responsabilidad del envío de la autoría aparente. Ese margen es exactamente el que el DMARC cierra al exigir que ambos coincidan.
- Una alteración legítima rompe la firma. Las listas de correo y los sistemas que agregan un pie o cambian el asunto modifican el fragmento firmado, y la verificación falla sin ninguna mala intención.
- Una clave olvidada es una clave debilitada. Un par generado una vez y dejado por años, o una clave demasiado corta, convierte la firma en formalidad. Vale la rotación periódica y la eliminación de los selectores de servicios que ya no se usan.
Las partes de una firma DKIM
- El selector El nombre corto que identifica qué par de claves se usó. Es lo que permite tener varias firmas activas al mismo tiempo, una por sistema que envía, y cambiar una sin afectar las demás.
- El dominio que firma El dominio que asume responsabilidad por el mensaje. Es el dato que el DMARC compara con el remitente visible, y por eso el punto que decide si la autenticación va a valer de verdad.
- El resumen criptográfico Un cálculo hecho sobre los encabezados elegidos y el cuerpo del mensaje. Cualquier cambio de contenido dentro del fragmento firmado, por pequeño que sea, hace que la cuenta no cierre. Lo que queda fuera del fragmento firmado, en cambio, no está protegido: la propia norma advierte que se puede agregar contenido después del punto firmado sin romper la firma.
- La clave publicada en el DNS La mitad pública del par, disponible para que cualquier servidor verifique. Su exposición es intencional: con ella se puede verificar una firma, nunca producirla. La salvedad es el tamaño: una clave demasiado corta puede romperse, y ahí sí la mitad publicada deja de ser inofensiva.
Por qué el DKIM es lo que mantiene la autenticación en pie
El valor práctico del DKIM aparece justamente donde el SPF falla. Cuando alguien reenvía un mensaje, el servidor que reenvía pasa a ser el origen y deja de estar en la lista de autorizados del dominio original, así que el SPF se rompe sin que nadie se haya equivocado. La firma del DKIM viaja dentro del encabezado del propio mensaje y sigue siendo válida después del reenvío, siempre que nadie altere el contenido en el camino, lo que la convierte en la pata más resistente de la autenticación y en la razón por la cual publicar solo SPF hace que se pierda correo legítimo. Existe, sin embargo, un falso consuelo específico de este registro: firmar con un dominio que no es el que ve el lector. La verificación del DKIM pasa, el informe muestra firma válida, y aun así el mensaje falla en el DMARC, porque lo que la persona lee en pantalla sigue sin prueba alguna. Traducido a lo que la empresa siente: la propuesta que su contacto reenvía al decisor, la factura que el cliente pasa a su área financiera y el comunicado que circula internamente son exactamente los mensajes que dependen del DKIM para llegar autenticados al final del recorrido. Sin firma, es justamente el correo que ya superó la primera etapa de la venta el que desaparece en el filtro de spam de otra empresa. Firmar es necesario; firmar con el dominio correcto es lo que hace que la firma cuente.
Cómo aplicar el DKIM correctamente
El DKIM entrega el máximo cuando cubre todos los caminos de salida y firma con el dominio que el destinatario ve:
- Firme todo lo que sale, no solo el correo corporativoCada sistema que envía en nombre de la empresa necesita su propia firma: la plataforma de campañas, el sistema de gestión, el emisor de facturas, la herramienta de soporte. Lo que no firma queda dependiendo solo del SPF, y el SPF se rompe en el reenvío.
- Use un selector por servicioSeparar los selectores permite cambiar la clave de un sistema, o apagarlo, sin afectar a los demás. También vuelve obvio, al leer un encabezado, qué plataforma envió ese mensaje.
- Prefiera la clave de 2048 bitsEs el tamaño que la norma manda preferir. Por debajo de 1024 bits la firma ya no puede considerarse válida: una clave demasiado corta puede romperse y usarse para falsificar la firma del dominio, que es el único escenario en el que publicar la clave se vuelve un riesgo.
- Verifique la alineación con el remitente visibleDe nada sirve que la firma sea válida si el dominio que firmó no es el que aparece para quien lee. Esa coincidencia es la que el DMARC exige, y es la que hace valer la autenticación.
- Rote las claves y limpie lo que ya no usaCambie los pares periódicamente y elimine del DNS el selector de todo servicio descontinuado. Una clave publicada de un sistema abandonado es superficie expuesta sin contrapartida.
En la práctica
El DKIM es el lacre del mensaje: no dice que el contenido sea bueno, dice que el paquete salió de quien controla ese dominio y que nadie tocó su contenido en el camino. Por eso un fraude puede llegar con una firma perfectamente válida, del dominio del estafador. La pregunta que importa nunca es solo si existe firma, sino de quién es la firma, y si coincide con el nombre que aparece en pantalla.
Cómo Zamak trata el DKIM
Zamak Technologies firma todos los caminos de salida, mantiene un selector por sistema para poder rotar sin interrumpir nada y verifica la alineación entre el dominio que firma y el remitente que ve el destinatario, junto al equipo que ya administra el entorno. La verificación de suplantación de correo muestra en segundos si su dominio publica firma hoy. El mantenimiento de esas claves forma parte de la Seguridad de Correo Gestionada y de la Ciberseguridad gestionada del Método Zamak.