Miklix

Calculadora de código hash CRC-32B

Publicado: 17 de febrero de 2025, 18:23:53 UTC

Calculadora de código hash que utiliza la función hash CRC-32B (verificación de redundancia cíclica de 32 bits, variante B) para calcular un código hash basado en la entrada de texto o la carga de un archivo.

Esta página ha sido traducida automáticamente del inglés para hacerla accesible al mayor número de personas posible. Lamentablemente, la traducción automática no es todavía una tecnología perfeccionada, por lo que pueden producirse errores. Si lo prefiere, puede consultar la versión original en inglés aquí:

CRC-32B Hash Code Calculator

La comprobación de redundancia cíclica (CRC) es un código de detección de errores que se utiliza habitualmente para detectar cambios accidentales en los datos sin procesar. Aunque técnicamente no es una función hash criptográfica, a CRC-32 se le suele denominar hash debido a su capacidad de producir una salida de tamaño fijo (32 bits) a partir de una entrada de longitud variable. La versión que se presenta en esta página es la variante CRC-32B, que en realidad es solo una peculiaridad del lenguaje PHP que invierte los bits (little-endian vs big-endian en el CRC-32 original).

Divulgación completa: Yo no escribí la implementación específica de la función hash utilizada en esta página. Es una función estándar incluida en el lenguaje de programación PHP. Sólo hice la interfaz web para ponerla a disposición del público aquí por conveniencia.


Calcular nuevo código Hash

Los datos enviados o los archivos cargados a través de este formulario sólo se conservarán en el servidor durante el tiempo necesario para generar el código hash solicitado. Se eliminarán inmediatamente antes de que el resultado se devuelva a su navegador.

Datos de entrada:



El texto enviado está codificado en UTF-8. Dado que las funciones hash operan sobre datos binarios, el resultado será diferente que si el texto estuviera en otra codificación. Si necesitas calcular un hash de un texto en una codificación específica, debes subir un archivo en su lugar.



Acerca del algoritmo hash CRC-32B

No soy matemático, pero intentaré explicar esta función hash con una analogía sencilla. A diferencia de muchas de las funciones hash criptográficas, no es un algoritmo especialmente complicado, por lo que probablemente no habrá ningún problema ;-)

Imagina que estás enviando una carta por correo, pero te preocupa que se dañe antes de que llegue al destinatario. Según el contenido de la carta, calculas una suma de comprobación CRC-32 y la escribes en el sobre. Cuando el destinatario recibe la carta, también puede calcular la suma de comprobación y ver si coincide con lo que escribiste. Si es así, la carta no sufrió daños ni modificaciones durante el envío.

La forma en que CRC-32 hace esto es un proceso de cuatro pasos:

Paso 1: Agrega algo de espacio adicional (relleno)

  • CRC agrega un poco de espacio extra al final del mensaje (como si se tratara de cacahuetes de embalaje en una caja).
  • Esto ayuda a detectar errores más fácilmente.

Paso 2: La regla mágica (el polinomio)

  • CRC-32 utiliza una "regla mágica" especial para medir los datos.
    • Piense en esta regla como un patrón de protuberancias y ranuras (este es el polinomio, pero no se preocupe por esa palabra).
    • La "regla" más común para CRC-32 es un patrón fijo.

Paso 3: Deslizar la regla (proceso de división)

  • Ahora CRC desliza la regla sobre el mensaje.
    • En cada punto, comprueba si las protuberancias y las ranuras están alineadas.
    • Si no se alinean, CRC toma nota (esto se hace usando XOR simple, como encender o apagar interruptores).
    • Sigue deslizándose y activando interruptores hasta que llega al final.

Paso 4: El resultado final (la suma de comprobación)

  • Después de deslizar la regla por todo el mensaje, queda un número pequeño (de 32 bits de largo) que representa los datos originales.
    • Este número es como una huella digital única para el mensaje.
    • Esta es la suma de comprobación CRC-32.

La versión que se presenta en la página es la variante CRC-32B, que es principalmente una peculiaridad de PHP que cambia el orden de los bits (little-endian vs big-endian). Probablemente deberías usar esta versión solo si necesitas específicamente compatibilidad con otra aplicación PHP que la use.

También tengo calculadoras para las otras variantes:


Compartir en BlueskyCompartir en FacebookCompartir en LinkedInCompartir en TumblrCompartir en XCompartir en LinkedInPin en Pinterest

Mikkel Bang Christensen

Sobre el autor

Mikkel Bang Christensen
Mikkel es el creador y propietario de miklix.com. Tiene más de 20 años de experiencia como programador informático profesional y desarrollador de software, y actualmente trabaja a tiempo completo para una gran empresa europea de TI. Cuando no está escribiendo en su blog, dedica su tiempo libre a una gran variedad de intereses, aficiones y actividades, que en cierta medida pueden verse reflejados en la variedad de temas tratados en este sitio web.