← RFC Reference

ARC — Cadena de Recepción Autenticada

Email Authentication Published March 2026
ELI5: Imagina un formulario de cadena de custodia para pruebas. Cada persona que manipula la prueba firma el formulario y registra su condición cuando la recibió. Incluso si la prueba cambia ligeramente durante la manipulación, el destinatario final puede rastrear hacia atrás en la cadena para verificar que comenzó en un estado verificado y fue manipulada solo por partes de confianza. ARC hace lo mismo para los resultados de autenticación de correo electrónico mientras un mensaje pasa a través de intermediarios.

Por Qué Existe Este RFC

El reenvío de correo electrónico es el talón de Aquiles de SPF y DKIM. Cuando un mensaje se reenvía a través de una lista de correo, un alias o una regla .forward:

Cuando tanto SPF como DKIM fallan en el destino final, DMARC también falla, y el mensaje puede ser rechazado o puesto en cuarentena, aunque haya sido enviado legítimamente y reenviado a través de infraestructura de confianza.

ARC (Cadena de Recepción Autenticada), definida en RFC 8617, resuelve esto haciendo que cada intermediario registre una captura de los resultados de autenticación que observó, y luego firme esa captura. El receptor final puede examinar la cadena para determinar que el mensaje fue autenticado en el punto de origen, incluso si las verificaciones directas de SPF y DKIM ahora fallan.

Cómo Funciona

Los Tres Conjuntos de Encabezados ARC

Cada intermediario que procesa un mensaje añade un conjunto de tres encabezados, numerados con un contador de instancia (i=) que se incrementa en cada salto:

Encabezado Propósito
ARC-Authentication-Results (AAR) Registra los resultados de autenticación (SPF, DKIM, DMARC) observados por este intermediario. Sigue el mismo formato que el encabezado estándar Authentication-Results.
ARC-Message-Signature (AMS) Una firma similar a DKIM sobre los encabezados y cuerpo del mensaje tal como los ve el intermediario. Usa la misma sintaxis de firma que DKIM.
ARC-Seal (AS) Una firma sobre todos los conjuntos de encabezados ARC anteriores más la AAR actual. Esto sella la cadena, evitando que alguien manipule o reordene entradas anteriores.

Ejemplo de Cadena de Custodia

# Mensaje original de alice@example.com
# SPF: pass, DKIM: pass, DMARC: pass

# Salto 1: Lista de correo en lists.org recibe el mensaje
ARC-Authentication-Results: i=1; lists.org;
dkim=pass header.d=example.com;
spf=pass smtp.mailfrom=example.com;
dmarc=pass header.from=example.com
ARC-Message-Signature: i=1; a=rsa-sha256; d=lists.org; s=arc; ...
ARC-Seal: i=1; a=rsa-sha256; d=lists.org; s=arc; cv=none; ...

# lists.org añade un pie, modifica el Asunto, reenvía
# La firma DKIM original ahora es inválida (cuerpo cambiado)
# SPF ahora hace referencia a la IP de lists.org, no a example.com

# Salto 2: Destino final mx.receiver.com
Verificación DKIM directa: FALLAR (cuerpo modificado por la lista)
Verificación SPF directa: FALLAR (IP es lists.org, no example.com)
Verificación DMARC directa: FALLAR (ninguno alineado)

Validación de cadena ARC:
i=1 ARC-Seal: válido (firmado por lists.org)
i=1 AAR: dkim=pass, spf=pass, dmarc=pass en lists.org
Veredicto de cadena: cv=pass
Receptor confía en lists.org => anular fallo de DMARC

Detalles Técnicos Clave

La Validación de Cadena (cv)

El encabezado ARC-Seal incluye una etiqueta cv= (validación de cadena) con uno de tres valores:

ARC y Anulación de DMARC

ARC no reemplaza DMARC. En su lugar, proporciona información adicional que un receptor puede usar al tomar decisiones de anulación de DMARC. La lógica del receptor podría ser:

  1. Verificar DMARC directamente. Si pasa, entregar normalmente.
  2. Si DMARC falla, verificar la cadena ARC. Si la cadena es válida (cv=pass) y el receptor confía en los intermediarios en la cadena, anular el fallo de DMARC.
  3. Si la cadena ARC es inválida o los intermediarios no son de confianza, aplicar la política de DMARC como de costumbre.

La decisión de confiar en un intermediario es política local. Gmail, por ejemplo, mantiene una lista de firmantes ARC de confianza (proveedores principales de listas de correo, sistemas de correo universitarios, etc.).

Requisitos de Firma

Las firmas ARC usan el mismo formato criptográfico que DKIM (RSA-SHA256 o Ed25519). El dominio de firma publica su clave pública ARC en DNS en un selector bajo _domainkey, idéntico a la publicación de clave DKIM:

arc._domainkey.lists.org. IN TXT "v=DKIM1; k=rsa; p=MIGfMA0GCSqGSIb3DQEB..."

Numeración de Instancias

Los conjuntos ARC se numeran secuencialmente comenzando desde i=1. Cada intermediario añade un conjunto con el siguiente número. El receptor final valida la cadena verificando todos los sellos en orden. Si algún sello falla o falta alguna instancia, toda la cadena es inválida.

Lo Que ARC No Hace

Errores Comunes

Impacto en Entregabilidad

Related RFCs