Menu
Coddy logo textTech

¿Qué es un checksum (suma de verificación)?

Un checksum (suma de verificación) es un valor corto que se calcula a partir de un bloque de datos, como un archivo o un paquete de red, y se guarda o se envía junto a él. Volver a calcularlo más tarde y comparar los dos valores muestra si los datos cambiaron por corrupción o por un error de transmisión.

Por Kevin Spektor, Cofundador y CTO

Actualizado el 24 de septiembre de 2026

ChecksumEnviadoRecibidoResultado
Suma de bytes (mod 256)0B0BCoinciden
CRC-323F0F374D3F0F374DCoinciden

Invierte un bit y los dos checksums cambian. Intercambia dos caracteres y todos los bytes siguen ahí, así que su suma es la misma: solo CRC-32, que depende del orden, lo nota.

Las distribuciones de Linux como Ubuntu y Debian publican un archivo llamado SHA256SUMS junto a sus imágenes de instalación. Cada línea contiene una cadena de 64 caracteres y un nombre de archivo. Cuando termina la descarga, ejecutas un comando sobre el archivo que has recibido. Si imprime la misma cadena, sus miles de millones de bytes llegaron intactos. Si un solo bit cambió por el camino, la cadena sale completamente distinta.

Esa cadena es un checksum: un pequeño resumen que cambia cuando cambian los datos.

Cómo funciona un checksum, paso a paso

  1. El emisor ejecuta un algoritmo de checksum sobre los datos, byte a byte, y obtiene un resultado corto.
  2. El resultado viaja o se guarda con los datos: en la cabecera de un paquete de red, dentro de un archivo ZIP junto a cada archivo comprimido, o en una página de descarga.
  3. El receptor ejecuta el mismo algoritmo sobre los datos que realmente recibió.
  4. Se comparan los dos resultados. Si son iguales, los datos casi con seguridad no han cambiado. Si difieren, los datos se dañaron, y el receptor los rechaza, los vuelve a pedir o muestra un error de checksum.

Un checksum solo detecta el daño; no puede decir qué byte cambió ni repararlo. Para reparar hace falta un código corrector de errores, como los códigos Reed-Solomon de los CD y los códigos QR.

El checksum más sencillo suma todos los bytes y se queda con los últimos 8 bits del total. Ejecuta esto para ver dónde funciona esa idea y dónde falla:

original  sum= 78  crc32=a1628836
flipped   sum= 80  crc32=a597580b
swapped   sum= 78  crc32=59dbf74b

Cambiar un carácter cambia la suma. Intercambiar dos caracteres no la cambia, porque a la suma no le importa el orden, así que la suma de bytes da por bueno un pago de 10 en lugar de 100. CRC-32 (comprobación de redundancia cíclica) trata los datos como un único número binario largo y lo divide entre un polinomio fijo de 33 bits; el resto de 32 bits depende de la posición de cada bit, así que el intercambio se detecta. La demo de arriba te deja probarlo con tu propio texto. CRC-32 detecta cualquier ráfaga de errores de hasta 32 bits de largo.

Algoritmos de checksum comunes

AlgoritmoTamañoDónde te lo encuentras
Bit de paridad1 bitConexiones serie, memoria con paridad
Dígito de control de Luhn1 dígitoNúmeros de tarjetas de crédito, números IMEI
Checksum de Internet16 bitsCabeceras IPv4, TCP y UDP
Adler-3232 bitsEl formato comprimido de zlib
CRC-3232 bitsZIP, gzip, PNG, tramas Ethernet
MD5128 bitsPáginas de descarga antiguas, buscadores de archivos duplicados
SHA-256256 bitsDescargas de software, imágenes de Linux, Bitcoin

Los cinco primeros detectan accidentes, no atacantes. Quien edita un archivo puede ajustar unos pocos bytes para que su CRC-32 vuelva a coincidir. MD5 y SHA-256 son funciones hash criptográficas, diseñadas para que encontrar dos entradas con la misma salida sea inviable en la práctica. MD5 quedó roto (se publicaron colisiones en 2004), igual que SHA-1 (2017), así que las descargas donde importa la seguridad usan SHA-256 o algo más fuerte. MD5 sigue detectando la corrupción accidental perfectamente.

Cómo verificar un checksum

En tu propio ordenador, cada sistema operativo tiene un comando integrado:

# Windows (PowerShell)
Get-FileHash ubuntu.iso -Algorithm SHA256
# macOS
shasum -a 256 ubuntu.iso
# Linux
sha256sum ubuntu.iso

Compara la salida con el valor de la página de descarga oficial; da igual que las letras estén en mayúsculas o en minúsculas. En Python, hashlib hace la misma comprobación, leyendo el archivo por trozos para que un archivo de 6 GB nunca tenga que caber en memoria:

a948904f2f0f479b8f8197694b30184b0d2ed1c1cd2a1ec0fb85d299a192a447
OK

Cambia hello world por hello World y vuelve a ejecutarlo: cambian todos los caracteres del checksum, y la última línea dice Checksum mismatch.

¿Qué es un error de checksum?

Un error de checksum (checksum error) significa que la comprobación falló: el valor calculado a partir de los datos que tienes no coincide con el valor guardado o enviado con ellos. O bien los datos cambiaron, o bien se dañó el checksum guardado. El mensaje y la solución dependen de dónde aparezca.

Error de checksum del CMOS o de la BIOS al arrancar

El firmware de un PC (BIOS o UEFI) guarda sus ajustes, como el orden de arranque y el reloj, en una pequeña memoria que mantiene viva una pila de botón, normalmente una CR2032, mientras el ordenador está desenchufado. Junto a esos ajustes se guarda un checksum de ellos. En cada arranque el firmware lo recalcula y, si los valores no coinciden, muestra un mensaje como CMOS Checksum Error - Defaults Loaded y vuelve a los ajustes de fábrica.

La causa habitual es una pila débil o agotada, sobre todo cuando además el reloj se reinicia. Un corte de luz mientras se guardaban los ajustes, o borrar el CMOS con un jumper, tiene el mismo efecto. Para solucionarlo:

  1. Entra en la pantalla de configuración (normalmente Supr o F2 mientras arranca el PC), pon la fecha, la hora y los ajustes que hubieras cambiado, y guarda y sal (a menudo con F10). Si el mensaje no vuelve, fue algo puntual.
  2. Si vuelve después de cada arranque en frío, apaga, desenchufa el ordenador y cambia la pila CR2032.
  3. Si el mensaje menciona el propio firmware, como BIOS ROM checksum error o Main BIOS checksum error, la imagen del firmware está dañada. Las placas con un chip de BIOS de respaldo la restauran automáticamente; en las demás, usa la función de recuperación de BIOS de la placa o vuelve a flashear el firmware desde la web del fabricante, sin cortar la corriente durante la actualización.

Checksum mismatch tras una descarga

El SHA-256 de tu archivo no coincide con el de la página de descarga. Puede que el archivo esté incompleto o corrupto (una conexión interrumpida, un disco lleno), que lo estés comparando con el checksum de otro archivo (otra versión u otra arquitectura de CPU), o que estés comparando dos algoritmos distintos: un valor MD5 tiene 32 caracteres hexadecimales y un SHA-256, 64. En casos raros, el archivo fue manipulado.

Comprueba el algoritmo y el nombre del archivo, y vuelve a descargarlo desde el sitio oficial. Si una copia nueva de la fuente oficial sigue sin coincidir, no la ejecutes. Los gestores de paquetes hacen esta comprobación por ti: pip se detiene con THESE PACKAGES DO NOT MATCH THE HASHES cuando un paquete descargado no coincide con el hash fijado.

Error de checksum en un archivo ZIP, RAR o 7z

Los formatos de archivo comprimido guardan un CRC-32 del contenido original de cada archivo. Al extraer, la herramienta lo recalcula; WinRAR notifica la discrepancia como Checksum error y 7-Zip como CRC Failed. En un archivo cifrado, una contraseña equivocada produce el mismo mensaje, porque al descifrar con la contraseña equivocada sale basura. Vuelve a descargar el archivo, comprueba que estén todas las partes de un archivo dividido (.part1.rar, .part2.rar) y que sean de la misma subida, y vuelve a escribir la contraseña. El comando Reparar archivo de WinRAR funciona mejor con archivos creados con registro de recuperación, y la opción "Conservar los archivos dañados" guarda todo lo que sí se extrajo bien.

Errores de checksum en juegos y herramientas de red

Los juegos comparan checksums de sus archivos, así que una actualización a medias o un archivo modificado no pasa la comprobación. En Steam, "Verificar la integridad de los archivos del juego" vuelve a descargar cada archivo cuyo checksum no coincide. En Wireshark, los avisos de checksum en los paquetes que envía tu propio ordenador no suelen ser errores reales: la tarjeta de red rellena el checksum después de que Wireshark ya haya capturado el paquete.

Ideas equivocadas frecuentes

  • "Si el checksum coincide, el archivo es seguro." Demuestra que el archivo coincide con el valor publicado. Si un atacante controla la web, puede cambiar ambos, y por eso los proyectos también firman sus archivos de checksums con una clave.
  • "Un checksum puede reparar un archivo corrupto." Solo detecta el daño. La solución es conseguir una copia buena.
  • "Checksum y hash son cosas distintas." Checksum describe la tarea; una función hash como SHA-256 es una de las herramientas que pueden hacerla.

Qué leer después

Calcula valores MD5, SHA-1 y SHA-256 de cualquier texto en el generador de hashes. Los checksums trabajan sobre datos en bruto, así que qué es un byte y qué es un bit explican qué es exactamente lo que se suma. Una base de datos usa checksums de página para detectar la corrupción del disco, y la visualización de la tabla hash muestra otro uso de un valor corto calculado a partir de los datos.

Preguntas frecuentes

¿SHA-256 es un checksum?
Sí, cuando se usa para verificar datos. SHA-256 es una función hash criptográfica, y el valor de 64 caracteres que produce para un archivo se suele llamar el checksum SHA-256 de ese archivo. Es más lento que CRC-32, pero también protege contra cambios deliberados, porque en la práctica nadie puede construir un archivo distinto con el mismo valor SHA-256.
¿Cómo soluciono un error de checksum?
Depende de dónde aparezca. Al arrancar, entra en la configuración de la BIOS, revisa la fecha y los ajustes, guarda y sal, y cambia la pila de botón del CMOS si el error vuelve. Tras una descarga o en un archivo comprimido, vuelve a descargar el archivo desde la fuente oficial y comprueba que estén todas las partes de un archivo dividido y que la contraseña sea la correcta.
¿Qué causa un error de checksum?
Los datos cambiaron entre el momento en que se calculó su checksum y el momento en que se comprobó. Las causas habituales son una descarga interrumpida, un disco o una memoria USB que falla, una pila del CMOS gastada, un corte de luz mientras se escribían ajustes o firmware, y una contraseña equivocada en un archivo comprimido cifrado.
¿Por qué hace falta un checksum?
El almacenamiento y las redes no son perfectos. Los bits cambian por ruido eléctrico, interferencias de radio, memoria flash desgastada o discos que fallan, y sin una comprobación los datos dañados se usarían sin que nadie lo notara. Un checksum es una forma barata de detectar el daño para que los datos se vuelvan a enviar o se rechacen.
¿Cómo se genera un checksum?
Ejecuta un algoritmo de checksum sobre los datos. Para un archivo, usa sha256sum file en Linux, shasum -a 256 file en macOS o Get-FileHash file en Windows PowerShell. En Python, hashlib.sha256(data).hexdigest() da un checksum SHA-256 y zlib.crc32(data) un CRC-32.
Coddy programming languages illustration

Aprende a programar con Coddy

COMENZAR