Detectar fotos editadas con una huella SHA-256

SHA-256 en lenguaje sencillo: qué prueba una coincidencia, qué significa que no coincida, por qué las fotos enviadas por WhatsApp o Messenger nunca coinciden.

La forma más fiable de saber si un archivo de imagen ha cambiado desde que se registró por primera vez es comparar las huellas SHA-256 de los dos archivos: si coinciden, son idénticos byte a byte; si no coinciden, el archivo ha cambiado. Pero “cambiado” no es lo mismo que “falsificado”: basta con enviar una foto por WhatsApp o Messenger para que deje de coincidir. Esta guía explica SHA-256 en términos sencillos, qué prueba y qué no, y un flujo de trabajo que funciona en la práctica.

Nota: Este artículo es información general, no asesoría legal. Cómo se valora la evidencia en un caso concreto lo decide la autoridad competente.

Qué es SHA-256, en lenguaje sencillo

Piensa en SHA-256 como una máquina que crea una huella de un archivo. Le das cualquier archivo, una foto de 3 MB o un video de 2 GB, y devuelve una cadena fija de 64 caracteres, algo que empieza como 9f2c1a…. El algoritmo está especificado en la norma FIPS 180-4 del NIST de Estados Unidos y se usa en todas partes, desde la banca hasta las descargas de software.

Importan tres propiedades:

  1. Mismo archivo, misma huella. No importa cuántas veces ni en qué computadora la calcules, obtienes la misma cadena.
  2. Un cambio mínimo, un resultado completamente distinto. Cambia un píxel o quita una línea de metadatos, y la nueva huella no se parece en nada a la anterior. No existe “casi coincide”.
  3. Unidireccional. No puedes reconstruir la foto a partir de la huella, y en la práctica nadie puede fabricar a propósito un archivo distinto con la misma huella.

Diagrama SHA-256: la huella del archivo original se registra al subirlo; el mismo archivo enviado como documento da el mismo hash, una copia reenviada por una app de chat no coincide

Eso significa que guardar 64 caracteres cuando llega una foto basta para comprobar más adelante si cualquier archivo es exactamente esa foto, sin conservar ni volver a enviar la imagen.

Qué prueba una coincidencia y qué te dice una no coincidencia

Resultado Prueba No prueba
Coincide El archivo que tienes es idéntico byte a byte al archivo cuya huella se guardó Que la escena sea auténtica, ni que no se haya preparado nada antes de la toma
No coincide El archivo difiere del original de alguna forma Que alguien haya alterado el contenido a propósito

La segunda fila es donde la gente se equivoca. Los archivos se apartan del original por muchas razones inofensivas:

  • Las apps de chat recomprimen las imágenes. WhatsApp, Messenger y muchas otras reducen y recomprimen las fotos enviadas como “fotos”.
  • Las redes sociales recomprimen y eliminan metadatos al publicar.
  • Capturas de pantalla en lugar de enviar el archivo.
  • Girar, recortar o ajustar el brillo, aunque sea un poco, en la app de galería.
  • Convertir formatos, por ejemplo de HEIC a JPEG, o “guardar como” desde un visor.

Así que cuando ves una no coincidencia, la pregunta correcta no es “¿es falsa?”, sino “¿por qué canales pasó este archivo?”.

Por qué las fotos enviadas por WhatsApp o Messenger nunca coinciden

Para ahorrar almacenamiento y ancho de banda, las apps de mensajería suelen volver a codificar las imágenes JPEG: menor resolución, compresión más fuerte, menos metadatos. A simple vista la imagen se ve igual, pero los bytes internos son completamente distintos, y por tanto el SHA-256 también.

Cómo se envió ¿Suele conservar el archivo original? Comparación SHA-256
Como “foto” en una app de chat No, se recomprime Casi con seguridad no coincide
Como “archivo” o documento en una app de chat Normalmente sí Normalmente coincide
Adjunto de correo electrónico Normalmente sí Normalmente coincide
Original descargado de Google Drive o OneDrive Sí Coincide
Captura de pantalla No No coincide

El código QR impreso en la foto normalmente se sigue pudiendo escanear después de la compresión, así que el destinatario puede comprobar la hora de captura y la zona aunque falle la comparación de huellas. Consulta verificación de fotos con QR.

Un flujo práctico de comparación

Si eres quien envía las fotos (contratistas, técnicos, personal de campo)

  1. Enviar fotos rápidas por chat para las novedades del día a día está bien.
  2. Para las fotos importantes (inspecciones, entregas, reclamos de seguro), envía también el original como archivo, por correo o mediante una carpeta compartida.
  3. No recortes, gires ni edites antes de enviar el original.
  4. Pon el código SnapID en tu mensaje para que el destinatario pueda buscarlo rápido.

Cualquiera puede verificar: cada foto tiene un código SnapID y un QR; el destinatario lo escanea sin cuenta y ve la hora, la zona y los avisos de integridad, y puede comparar el archivo con SHA-256

Si eres quien recibe las fotos (propietarios, clientes, gerentes, aseguradoras)

  1. Escanea el código QR o abre la página de verificación con el código de la foto.
  2. Comprueba la hora de captura, la zona y los avisos de integridad.
  3. Haz clic en comparar con mi archivo y elige el original que recibiste.
  4. Coincide: el archivo está intacto. No coincide: revisa si pasó por un canal que comprime y luego pide el original.
  5. Si un original enviado por un canal que no comprime sigue sin coincidir, pregunta al remitente y observa con atención la miniatura de la página de verificación.

Calcular SHA-256 por tu cuenta

Para tus propias comprobaciones o tu archivo, bastan las herramientas integradas:

  • Windows (Símbolo del sistema): certutil -hashfile photo.jpg SHA256
  • macOS (Terminal): shasum -a 256 photo.jpg
  • Linux: sha256sum photo.jpg

Compara el resultado con la cadena que te dio el remitente. Un solo carácter distinto significa dos archivos distintos.

Cómo usa SnapID Mark SHA-256

Cuando se sube una foto de SnapID Mark, el servidor guarda las huellas SHA-256 tanto del original como de la imagen con sello. La página pública de verificación muestra la huella junto a la hora de captura fiable, una zona aproximada y los avisos de integridad. El botón “comparar con mi archivo” calcula el SHA-256 dentro del navegador del destinatario, así que la foto no se sube, y lo compara con el valor guardado. La página también explica el caso de la recompresión de las apps de chat para que los destinatarios no saquen conclusiones precipitadas.

Página pública de verificación de un código SnapID: Valid SnapID, la fecha y hora de la toma, una zona redondeada a aproximadamente 1 km con un enlace al mapa, el espacio de trabajo, la cuenta y la partida de trabajo

En conjunto, eso da tres capas: la hora fiable dice cuándo (consulta hora fiable frente a la hora del teléfono), el código SnapID y el QR llevan a un registro independiente, y SHA-256 dice si el archivo sigue intacto. Más información en seguridad o prueba la demo de verificación.

Ten en cuenta que es una herramienta técnica de comprobación, no una firma digital ni un sello de tiempo certificado. Fotos con marca de tiempo como evidencia en Vietnam analiza ese aspecto con más detalle.

Si necesitas enviar fotos cuya integridad pueda comprobar el propio destinatario, descarga SnapID Mark y prueba a comparar un original con una copia enviada por chat.

Preguntas frecuentes

¿Una huella SHA-256 revela lo que hay en la foto?

No. La imagen no se puede reconstruir a partir de 64 caracteres, así que mostrar la huella públicamente no expone la imagen.

Una foto enviada por una app de mensajería no coincide. ¿Es falsa?

No. Las apps de mensajería recomprimen las imágenes enviadas como “fotos”, lo que cambia el archivo aunque se vea idéntico. Pide el original enviado como archivo o por correo y compara ese.

Cuando comparo en la página de verificación, ¿se sube mi foto?

No. Tu navegador calcula la huella en tu dispositivo, y el archivo de imagen nunca sale de él.

¿Una coincidencia significa que la foto es auténtica con seguridad?

Una coincidencia solo prueba que el archivo es idéntico al que se guardó al subirlo. No prueba que la escena no se haya preparado. Revisa también la hora, la zona y los avisos de integridad.

¿Puedo comparar un PDF exportado a partir de la foto?

No uses un PDF para la comparación, porque la imagen que contiene es un archivo distinto. Compara usando el JPEG original.