Crc32

Páginas: 6 (1482 palabras) Publicado: 1 de junio de 2012
Comprobación de redundancia cíclica
Saltar a: navegación, búsqueda
La comprobación de redundancia cíclica (CRC) es un código de detección de errores usado frecuentemente en redes digitales y en dispositivos de almacenamiento para detectar cambios accidentales en los datos. Los bloques de datos ingresados en estos sistemas contiene un valor de verificación adjunto, basado en el residuo de unadivisión de polinomios; el cálculo es repetido, y la acción de corrección puede tomarse encontra de los datos presuntamente corrompidos en caso de que el valor de verificación no concuerde; por lo tanto se puede afirmar que este código es un tipo de función que recibe un flujo de datos de cualquier longitud como entrada y devuelve un valor de longitud fija como salida. El término suele ser usadopara designar tanto a la función como a su resultado. Pueden ser usadas como suma de verificación para detectar la alteración de datos durante su transmisión o almacenamiento. Las CRC son populares porque su implementación en hardware binario es simple, son fáciles de analizar matemáticamente y son particularmente efectivas para detectar errores ocasionados por ruido en los canales de transmisión.La CRC fue inventada y propuesta por W. Wesley Peterson en un artículo publicado en 1961.1
Contenido * 1 Introducción * 2 La integridad de los datos frente a la codificación * 3 Cálculo de CRC * 4 Matemáticas del CRC * 5 Especificación de un CRC * 6 Referencias * 7 Véase también * 8 Enlaces externos * 8.1 Herramientas en línea |
Introducción
El CRC es un código dedetección de error cuyo cálculo es una larga división de computación en el que se descarta el cociente y el resto se convierte en el resultado, con la importante diferencia de que la aritmética que usamos conforma que el cálculo utilizado es el arrastre de un campo finito, en este caso los bits. El tamaño del resto es siempre menor que la longitud del divisor, que, por lo tanto, determina el tamaño delresultado. La definición de un CRC especifica el divisor que se utilizará, entre otras cosas. Aunque un CRC se puede construir utilizando cualquier tipo de regla finita, todos los CRC de uso común emplean una base finita binaria, esta base consta de dos elementos, generalmente el 0 y 1. El resto de este artículo se centrará en este tipo de composición, es decir el ámbito binario y los principiosgenerales de los CRC.
La integridad de los datos frente a la codificación
Es útil para detección de errores, pero, en condiciones de seguridad, no podemos confiar en que el CRC puede verificar plenamente que los datos son los correctos en caso de que se hayan producido cambios deliberados y no aleatorios.
A menudo se piensa que si, cuando llega un mensaje, éste y su CRC coinciden, quiere decir queel mensaje no ha podido ser alterado durante su transmisión, aunque se haya transmitido por un canal abierto.
Esta suposición es falsa porque CRC es un mal método de cifrado de datos. De hecho, el CRC no se trata realmente de un método de cifrado, lo que realmente hace es utilizarse para el control de integridad de datos, pero en algunos casos se supone que se utilizarán para el cifrado.
Cuandoun CRC se calcula, el mensaje se conserva (no cifrado) y la constante de tamaño CRC se sitúa hacia el final (es decir, el mensaje puede ser tan fácil como leer antes de la posición que ocupa el CRC).
Además, la longitud del CRC es por lo general mucho más pequeña que la longitud del mensaje, es imposible para una relación de 1:1 entre la CRC y el mensaje.
Así, numerosos códigos producirán elmismo CRC.
Por supuesto, estos códigos están diseñados para ser lo suficientemente diferentes como para variar (y por lo general sólo en uno o dos bits). Pequeños cambios en la palabra clave producirían una gran diferencia entre un CRC y otro; por ese motivo es posible detectar el error.
Si la manipulación del mensaje (cambios de los bits) es deliberada, entonces se tomara una nueva clave,...
Leer documento completo

Regístrate para leer el documento completo.

Conviértase en miembro formal de Buenas Tareas

INSCRÍBETE - ES GRATIS