Definición de cyclic redundancy check (CRC)
En informática, el cyclic redundancy check (CRC) o control de redundancia cíclica es un método de verificación de integridad de datos ampliamente utilizado en comunicaciones y almacenamiento de datos. Su objetivo principal es detectar errores accidentales que puedan ocurrir durante la transmisión o el almacenamiento de información.
El CRC funciona generando un valor de comprobación, conocido como checksum o suma de verificación, a partir de los datos originales mediante la aplicación de una operación matemática basada en divisiones binarias y un polinomio generador predefinido. Este valor se adjunta a los datos antes de ser enviados o almacenados.
Cuando los datos llegan a su destino, el receptor realiza el mismo cálculo CRC sobre los datos recibidos y compara el resultado con el valor de comprobación recibido. Si ambos valores coinciden, se asume que los datos no han sufrido alteraciones. Si los valores difieren, se detecta que ha ocurrido un error y normalmente se solicita la retransmisión de los datos.
Ejemplo: En una red Ethernet, cada trama de datos incluye un campo CRC de 32 bits. Si el receptor detecta una discrepancia en el CRC, descarta la trama y solicita su retransmisión.
Existen diferentes tipos de CRC (por ejemplo, CRC-8, CRC-16, CRC-32), que varían en la longitud del valor de comprobación y el polinomio utilizado. Todos los tipos comparten el mismo principio básico de operación.
Ventajas del CRC:
- Alta eficiencia en la detección de errores, incluso en grandes volúmenes de datos.
- Bajo costo computacional, permitiendo su implementación en hardware y software.
- Capacidad para detectar errores simples y múltiples, como inversión de bits, pérdida o inserción de bits.
Desventajas del CRC:
- No puede corregir errores, solo detectarlos.
- En casos muy raros, ciertos patrones de error pueden no ser detectados si coinciden con el polinomio utilizado.
- No protege contra manipulaciones intencionadas de los datos, ya que no es un mecanismo de seguridad criptográfica.
Comparación: El CRC suele ser más eficiente y confiable que la simple suma de comprobación (checksum), pero menos robusto que los códigos de detección y corrección de errores como el código de Hamming o los códigos Reed-Solomon, que pueden corregir ciertos errores sin necesidad de retransmisión.
Resumen: cyclic redundancy check
CRC es una técnica informática que verifica la integridad de los datos transmitidos o almacenados, usando un código especial calculado mediante operaciones binarias y un polinomio generador.
Para más información ver: CRC.
¿Qué es el Cyclic Redundancy Check (CRC)?
La comprobación de redundancia cíclica (CRC) es un algoritmo eficiente de detección de errores, utilizado para identificar alteraciones accidentales en los datos durante su transmisión o almacenamiento.
¿Cómo se utiliza el CRC en la transmisión de datos?
En la transmisión de datos, el emisor calcula el valor CRC de cada bloque de datos y lo adjunta al mensaje. El receptor realiza la misma operación sobre los datos recibidos y compara ambos valores CRC. Si no coinciden, se detecta un error y se solicita la retransmisión del bloque afectado.
¿Cómo funciona el algoritmo de CRC?
El algoritmo de CRC representa los datos como una secuencia de bits y los divide por un polinomio generador, obteniendo un residuo que se utiliza como valor de comprobación. Este proceso se puede implementar de manera eficiente tanto en hardware como en software.
¿Qué tipo de errores puede detectar el algoritmo CRC?
El CRC puede detectar errores simples (como la inversión de un solo bit), errores múltiples, ráfagas de errores y pérdida o inserción de bits. Sin embargo, no garantiza la detección de todos los posibles errores, especialmente si estos coinciden con ciertos patrones específicos.
¿Cuál es la principal ventaja de utilizar el CRC en la transmisión de datos?
La principal ventaja del CRC es su alta capacidad para detectar la mayoría de los errores de transmisión de manera rápida y eficiente, asegurando que los datos recibidos sean fieles a los datos enviados.
¿El algoritmo CRC puede corregir errores en la transmisión de datos?
No, el algoritmo CRC solo puede detectar errores en la transmisión de datos. No tiene la capacidad de corregirlos; para corregir errores es necesario recurrir a técnicas adicionales o solicitar la retransmisión de los datos.
Autor: Leandro Alegsa
Actualizado: 13-07-2025
¿Cómo citar este artículo?
Alegsa, Leandro. (2025). Definición de cyclic redundancy check. Recuperado de https://www.alegsa.com.ar/Dic/cyclic_redundancy_check.php