El problema que resuelve
Imagina que tienes un contrato firmado digitalmente con fecha del 1 de enero. Pero tu contraparte alega que el documento fue creado el 15 de enero, después del evento en disputa. ¿Cómo demuestras que el contrato existía el 1 de enero?
Con un archivo digital ordinario, es imposible. Los metadatos de los ficheros (fecha de creación, fecha de modificación) son trivialmente manipulables. Cualquier usuario puede cambiar la fecha de su sistema operativo y crear un fichero «con fecha pasada».
El sello de tiempo RFC 3161 resuelve exactamente este problema.
¿Qué es el RFC 3161?
RFC 3161 es el nombre de un estándar técnico publicado por el IETF (Internet Engineering Task Force) en el año 2001. Su nombre completo es Internet X.509 Public Key Infrastructure Time-Stamp Protocol (TSP). Define el protocolo de comunicación entre un cliente y una Autoridad de Sellado de Tiempo (TSA).
En términos sencillos: es el protocolo que establece cómo pedir y recibir un «certificado de existencia» de un fichero en un momento concreto.
¿Qué es una TSA (Autoridad de Sellado de Tiempo)?
Una TSA (Time Stamping Authority) es una entidad de confianza que emite sellos de tiempo. Para que un sello de tiempo sea reconocido como fiable en entornos legales, la TSA debe estar acreditada.
En Europa, las TSA acreditadas aparecen en la Trusted List que cada estado miembro mantiene conforme al Reglamento eIDAS (UE 910/2014). Una TSA en la Trusted List tiene reconocimiento legal en toda la Unión Europea.
En el caso de Certifirm, los sellos de tiempo son emitidos por Izenpe, la Autoridad de Certificación del Gobierno Vasco, que figura en la Trusted List española como TSA acreditada.
¿Cómo funciona técnicamente?
El proceso es el siguiente:
- Hash del documento: Se calcula el hash SHA-256 del fichero. El hash es una «huella digital» única de 64 caracteres que representa el contenido exacto del fichero. Cualquier cambio, por mínimo que sea, produce un hash completamente diferente.
- Petición TSQ: El cliente envía el hash a la TSA mediante una petición TimeStampRequest (TSQ). Importante: el fichero en sí nunca se envía a la TSA, solo su hash. Esto garantiza la privacidad del documento.
- Token TSP: La TSA recibe el hash, registra la fecha y hora exacta de su reloj sincronizado (sincronizado con servidores NTP de alta precisión) y firma el conjunto (hash + fecha) con su clave privada. El resultado es un TimeStampToken (TSP) en formato CMS SignedData (PKCS#7).
- Embebido en el documento: El token se incorpora al fichero PDF (o se entrega junto con él). El token es la prueba de que ese hash concreto fue presentado a la TSA en ese momento.
¿Qué certifica exactamente el sello de tiempo?
Un sello de tiempo RFC 3161 certifica dos cosas y solo dos cosas:
- Existencia: el fichero con ese hash existía antes del momento indicado en el sello.
- Integridad: el fichero no ha sido modificado desde que se emitió el sello. Cualquier modificación cambiaría el hash, haciendo el sello inválido.
El sello de tiempo no certifica la autoría del documento, ni que fue firmado por alguien en particular, ni su contenido. Para eso se necesita una firma electrónica avanzada, que es complementaria al sello de tiempo.
Validez legal del sello de tiempo RFC 3161 en España
El Reglamento eIDAS reconoce expresamente los servicios de sellado de tiempo electrónico cualificado (artículo 41). Un sello de tiempo de una TSA incluida en la Trusted List europea goza del siguiente efecto legal (art. 41.2 eIDAS):
«Un sello de tiempo electrónico cualificado gozará de la presunción de exactitud de la fecha y la hora que indica y de la integridad de los datos a los que dicha fecha y hora están ligadas.»
En términos prácticos: cuando presentas un documento con sello de tiempo de Izenpe ante un juzgado español, la fecha del sello se presume correcta salvo prueba en contrario. La carga de la prueba se invierte: es la otra parte quien debe demostrar que el sello es incorrecto, lo cual es prácticamente imposible sin comprometer la clave privada de Izenpe.
Diferencia entre sello de tiempo y firma electrónica
Son conceptos complementarios que a menudo se confunden:
- Firma electrónica: vincula el documento con el firmante. Prueba «quién» firmó y «qué» contiene el documento.
- Sello de tiempo: vincula el documento con un momento. Prueba «cuándo» existía ese documento.
La combinación de firma electrónica avanzada + sello de tiempo RFC 3161 es la base de los sistemas de documentación certificada con máxima solidez probatoria, como Certifirm.
¿Cuánto dura la validez de un sello de tiempo?
El token RFC 3161 no tiene una «caducidad» intrínseca como tal: la vinculación hash-fecha es matemáticamente permanente. Sin embargo, el certificado digital de la TSA con el que se firmó el token sí tiene una vida útil (generalmente entre 5 y 20 años).
Para garantizar que el sello sea verificable indefinidamente, Certifirm usa el formato LTV (Long-Term Validation): el informe PDF incorpora toda la cadena de certificados, listas de revocación (CRL/OCSP) y los contraselos necesarios. Con LTV, el sello puede validarse décadas después, incluso cuando el certificado original de la TSA haya expirado.