Tinta Tech

Evidencia digital

Cómo comprobar que un archivo no fue modificado

Por Tinta Tech8 min de lecturaRead in English

En corto

Para comprobar que un archivo no fue modificado, calcula su huella SHA-256 y compárala con una huella de referencia obtenida antes: la que publica el sitio de descarga, la que figura en un certificado o la que alguien te envió en su momento. Si las dos coinciden carácter por carácter, el contenido es idéntico; si difieren, el archivo cambió. La fecha de modificación y el nombre del archivo no prueban nada, y la huella por sí sola tampoco dice desde cuándo existe el archivo: eso lo agrega un sello de tiempo.

  • El nombre y las fechas de un archivo se cambian en segundos; no sirven para saber si el contenido es el mismo.
  • La huella SHA-256 es un código calculado a partir del contenido: un solo byte distinto produce una huella completamente diferente.
  • Comparar huellas solo sirve si tienes un valor de referencia obtenido antes y por un canal confiable.
  • Una huella distinta indica que el archivo cambió, no por qué: volver a guardarlo o enviarlo por una aplicación de mensajería también la altera.
  • La huella no tiene fecha. Para acreditar desde cuándo existe el archivo hace falta un sello de tiempo emitido por un tercero.

¿La fecha de modificación indica si un archivo fue alterado?

No. La fecha de modificación, la de creación y el nombre son datos que el sistema operativo guarda junto al archivo, y cambian con operaciones cotidianas o a voluntad.

  • Copiar un archivo a otro disco, descargarlo de la nube o extraerlo de un .zip puede darle fechas nuevas aunque el contenido sea idéntico.
  • Existen utilidades comunes que permiten poner la fecha que se quiera.
  • Al revés, se puede editar un archivo y restaurar después su fecha anterior.
  • El nombre no guarda relación con el contenido: dos archivos llamados igual pueden ser distintos, y dos con nombres diferentes pueden ser el mismo.

Para saber si el contenido cambió hay que mirar el contenido. Comparar dos archivos byte por byte funciona, pero exige tener ambos. La huella resuelve eso: resume el contenido en una cadena corta que se puede anotar, enviar y publicar.

¿Qué es la huella o hash SHA-256 de un archivo?

Es el resultado de pasar el contenido del archivo por una función matemática que siempre entrega un código de 64 caracteres hexadecimales. También se la llama hash o suma de verificación (checksum). Tiene tres propiedades que la hacen útil:

  • Es determinista. El mismo contenido da siempre la misma huella, en cualquier computador y con cualquier programa.
  • Es sensible. Cambiar una letra, un píxel o un espacio produce una huella totalmente distinta, sin parecido con la anterior.
  • No es reversible. A partir de la huella no se puede reconstruir el archivo, de modo que publicarla no revela su contenido.

La huella depende solo del contenido. Renombrar el archivo o moverlo de carpeta no la cambia.

¿Cómo calculo el hash SHA-256 en Windows, macOS y Linux?

Los tres sistemas traen una herramienta incorporada; no hay que instalar nada. Abre la terminal en la carpeta donde está el archivo y escribe el comando, reemplazando archivo.pdf por el nombre real.

SistemaDóndeComando
WindowsSímbolo del sistema o PowerShellcertutil -hashfile archivo.pdf SHA256
Windows (alternativa)PowerShellGet-FileHash archivo.pdf -Algorithm SHA256
macOSTerminalshasum -a 256 archivo.pdf
LinuxTerminalsha256sum archivo.pdf

Si el nombre tiene espacios, enciérralo entre comillas. El resultado es una línea con 64 caracteres, formada por dígitos y letras de la a a la f. Da igual que aparezca en mayúsculas o minúsculas: es el mismo valor.

Si no quieres usar la terminal, hay herramientas que calculan la huella en el navegador. Prefiere las que procesan el archivo en tu equipo y no lo suben a un servidor.

Contra qué comparar la huella

Contra un valor de referencia que se haya obtenido antes y que venga de una fuente en la que confíes. Sin referencia, una huella no dice nada: es solo el nombre matemático del archivo que tienes hoy.

  • Páginas de descarga. Muchos proyectos de software publican el SHA-256 de cada instalador. Compara la huella de lo que descargaste con la de la página oficial.
  • Un certificado. Si el archivo se certificó en su momento, el certificado contiene la huella que tenía ese día.
  • Un valor enviado antes. Un correo, un acta o un contrato donde alguien dejó escrita la huella del documento.

Compara la cadena completa, no solo el comienzo y el final. Lo más seguro es pegar ambas en un mismo documento, una debajo de la otra, o usar la función de búsqueda para ubicar una dentro del texto de la otra.

¿Qué significa que la huella no coincida?

Significa que el archivo que tienes no es idéntico, byte por byte, al que originó la huella de referencia. No dice qué cambió, cuánto ni con qué intención. Muchas diferencias tienen causas inocentes:

CausaQué ocurre
Abrir y volver a guardarEl programa reescribe datos internos, como la fecha de edición o el autor, aunque el texto visible no cambie.
Convertir el formatoPasar de Word a PDF, o de HEIC a JPG, genera un archivo nuevo.
Enviar por mensajería como foto o videoLa aplicación recomprime el contenido para que pese menos.
Volver a comprimir un .zipEl nuevo .zip tiene otra huella aunque los archivos de adentro sean los mismos.
Descarga incompleta o dañadaFaltan o cambian bytes durante la transferencia.
Comparar otro archivoSe calculó la huella de una versión distinta, o del .zip en lugar del documento que contiene.

Antes de concluir que hubo manipulación, busca la copia original: la que quedó en el correo enviado, en el respaldo o en el dispositivo de origen. Si se trata de un instalador y su huella no calza con la publicada, no lo ejecutes; descárgalo de nuevo desde el sitio oficial.

¿Por qué no conviene usar MD5 o SHA-1?

Porque para ambos se conocen ataques de colisión: es posible construir a propósito dos archivos diferentes que comparten la misma huella. Eso rompe justo la garantía que se busca cuando hay dinero o un conflicto de por medio.

MD5 y SHA-1 todavía sirven para detectar errores accidentales, como una descarga dañada. Para comprobar que nadie alteró un archivo, usa SHA-256 u otra función de la familia SHA-2 o SHA-3. Si la única referencia disponible está en MD5, tómala como un indicio y no como una garantía.

¿La huella prueba desde cuándo existe el archivo?

No. Una huella no contiene ninguna fecha: se puede calcular hoy sobre un archivo creado esta mañana. Tampoco dice quién hizo el archivo ni si su contenido es verdadero.

La fecha la agrega un sello de tiempo: una autoridad de sellado firma la huella junto con la fecha y la hora, según el estándar RFC 3161, y con eso queda acreditado que ese contenido exacto existía a más tardar en ese momento. Lo explicamos en qué es un sello de tiempo. Si necesitas dejar esa constancia para un archivo tuyo, puedes hacerlo con Certificar archivo.

¿Cómo funciona la página de verificación de un certificado?

Compara el archivo que tienes con la huella guardada en el certificado. En la página de verificación ingresas el código del certificado, o llegas a ella con el QR del PDF, y ves su estado y la fecha del sello. Luego seleccionas el archivo: la huella se calcula en tu navegador y se coteja con la del certificado. El archivo no se sube. Si no tienes el código, también puedes empezar directamente por el archivo.

Si coincide, tienes en la mano el mismo contenido que se certificó en esa fecha. Si no coincide, es otro archivo o una versión alterada, por alguna de las causas de la tabla anterior. Esa comprobación acredita integridad y fecha; no garantiza valor legal ni reemplaza a un notario o a un perito.

Lista de pasos y errores frecuentes

  1. Trabaja sobre una copia y deja el original sin abrir.
  2. Calcula el SHA-256 con el comando de tu sistema.
  3. Obtén la huella de referencia desde una fuente confiable y anterior.
  4. Compara las dos cadenas completas.
  5. Si no coinciden, busca la copia original antes de sacar conclusiones.
  6. Si necesitas acreditar una fecha, agrega un sello de tiempo.

Errores que se repiten:

  • Fiarse de la fecha de modificación o del nombre del archivo.
  • Tomar la huella de referencia del mismo lugar del que vino el archivo sospechoso. Quien pudo cambiar el archivo pudo cambiar también el valor publicado junto a él.
  • Calcular la huella del .zip y compararla con la del documento que contiene, o al revés.
  • Abrir el archivo "solo para mirar" y guardarlo al cerrar.
  • Comparar a ojo los primeros caracteres y dar el resto por bueno.
  • Creer que una huella coincidente prueba autoría o veracidad. Prueba que el contenido es idéntico, nada más.

Preguntas frecuentes

¿Cambiar el nombre de un archivo cambia su hash?
No. La huella se calcula solo a partir del contenido. Puedes renombrar el archivo o moverlo de carpeta y la huella sigue siendo la misma.
¿Dos archivos distintos pueden tener el mismo SHA-256?
En teoría sí, porque los archivos posibles son infinitos y las huellas no. En la práctica no se conoce ninguna colisión de SHA-256 ni un método viable para fabricarla, a diferencia de lo que ocurre con MD5 y SHA-1.
¿Se puede saber qué parte del archivo cambió a partir del hash?
No. La huella solo indica si el contenido es idéntico o no. Para ver las diferencias necesitas las dos versiones y una herramienta de comparación.
¿Por qué cambió la huella si solo abrí el documento?
Abrirlo no la cambia; guardarlo sí puede. Muchos programas reescriben datos internos al guardar, como la fecha de la última edición, aunque no hayas tocado el texto.
¿Mi archivo se sube al verificar un certificado?
No. En la página de verificación la huella se calcula en tu navegador y lo único que se compara es ese código con el del certificado.
¿Una huella coincidente demuestra que el documento es auténtico?
Demuestra que es idéntico al que originó la huella de referencia. Quién lo creó y si lo que dice es cierto se acredita por otros medios.

Fuentes

Este artículo es información general, no asesoría legal. Si necesitas presentar una prueba en un juicio o trámite, consulta a un abogado de tu país. ¿Encontraste un error? Escribe a hola@tintatech.com.

Sigue leyendo