Hash y Seguridad

Generador de Hash CRC32

Convierte cualquier texto en su suma de verificación CRC-32 de 8 caracteres al instante.

Valora esta herramienta

Cómo usar Generador de Hash CRC32

  1. Escribe o pega tu texto en el cuadro.
  2. Elige la variante: CRC-32B es la estándar, la que casi siempre necesitas.
  3. La suma de verificación aparece a medida que escribes; haz clic en Copiar para obtenerla.

Acerca de Generador de Hash CRC32

CRC-32 es una comprobación de redundancia cíclica, no un hash en el sentido criptográfico. Trata tus datos como un enorme número binario, lo divide por un polinomio fijo y se queda con el resto: 32 bits, escritos como 8 caracteres hexadecimales. Esa matemática es lo que lo hace bueno en su verdadero trabajo: detectar daños accidentales, en particular errores en ráfaga, donde una serie de bits consecutivos se invierte por un cable defectuoso, un disco rayado o un enlace de radio con ruido. Es la comprobación integrada en zip, gzip, PNG y las tramas Ethernet.

Hay un detalle que confunde constantemente a la gente. PHP expone dos nombres, y no dan el mismo resultado para la misma entrada. crc32b es el CRC-32 estándar que coincide con zip, gzip y PNG; ese es el que quieres cuando comparas con una suma de verificación que otra herramienta imprimió. crc32 es la variante BZIP2, que usa el mismo polinomio pero un orden de bits diferente, así que los dígitos salen completamente distintos. Si tu suma de verificación "no coincide", casi siempre es por esto. La tercera opción, CRC-32C, usa el polinomio de Castagnoli: tiene propiedades de detección de errores mensurablemente mejores y se implementa directamente en hardware mediante el conjunto de instrucciones SSE4.2, razón por la que sistemas con mucho almacenamiento como iSCSI, ext4 y Btrfs lo eligieron.

Un CRC no es una herramienta de seguridad y no puede convertirse en una. Es una función lineal, lo que significa que un atacante que modifique tus datos puede calcular exactamente qué bytes ajustar para volver a la suma de verificación original, sin necesidad de fuerza bruta, solo aritmética. Un CRC te dice que el archivo sobrevivió al viaje; no te dice nada sobre si alguien lo manipuló en el camino. Para eso necesitas un hash criptográfico real como SHA-256, e incluso MD5 es mucho más fuerte que un CRC pese a estar roto él mismo.

Preguntas frecuentes

¿Por qué CRC-32 y CRC-32B dan resultados diferentes?

Son variantes diferentes. CRC-32B es la estándar, usada por zip, gzip y PNG; el CRC-32 de PHP es la variante BZIP2, que ordena los bits de otra forma. Misma entrada, salida diferente: elige CRC-32B salvo que necesites específicamente BZIP2.

¿Por qué un CRC-32 siempre tiene 8 caracteres?

El resultado siempre son 32 bits, y cada carácter hexadecimal aporta 4 bits, así que todo CRC-32 tiene exactamente 8 caracteres sin importar el tamaño de la entrada.

¿Puedo usar CRC-32 para contraseñas o firmas?

No, nunca. CRC-32 está diseñado para detectar errores accidentales, no deliberados, y es trivial de falsificar: cualquiera puede ajustar unos pocos bytes para forzar la suma de verificación que quiera. Usa bcrypt para contraseñas y SHA-256 para firmas.

¿Para qué sirve CRC-32C?

CRC-32C usa el polinomio de Castagnoli, que detecta más patrones de error, y las CPU modernas lo calculan en hardware mediante SSE4.2. Esa combinación es la razón por la que iSCSI, ext4 y Btrfs lo usan para comprobaciones de integridad en disco y en tránsito.

¿Se envía mi texto a algún sitio?

Tu texto se envía a nuestro servidor para calcular la suma de verificación, porque los navegadores no pueden calcular CRC-32. Se procesa y se descarta de inmediato: nunca se registra ni se almacena.