Redundancia Ciclica

22

Transcript of Redundancia Ciclica

Comprobacin de redundancia cclica (CRC) Es un cdigo de deteccin 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 verificacin adjunto, basado en el residuo de una divisin de polinomios; el clculo es repetido, y la accin de correccin puede tomarse encontra de los datos presuntamente corrompidos en caso de que el valor de verificacin no concuerde; por lo tanto se puede afirmar que este cdigo es un tipo de funcin que recibe un flujo de datos de cualquier longitud como entrada y devuelve un valor de longitud fija como salida.

Comprobacin de redundancia cclica (CRC) El trmino suele ser usado para designar tanto a la funcin como a su resultado. Pueden ser usadas como suma de verificacin para detectar la alteracin de datos durante su transmisin o almacenamiento. Las CRC son populares porque su implementacin en hardware binario es simple, son fciles de analizar matemticamente y son particularmente efectivas para detectar errores ocasionados por ruido en los canales de transmisin. La CRC fue inventada y propuesta por W. Wesley Peterson en un artculo publicado en 1961.

INTRODUCCION El CRC es un cdigo de deteccin de error cuyo clculo es una larga divisin de computacin en el que se descarta el cociente y el resto se convierte en el resultado, con la importante diferencia de que la aritmtica que usamos conforma que el clculo utilizado es el arrastre de un campo finito, en este caso los bits. El tamao del resto es siempre menor que la longitud del divisor, que, por lo tanto, determina el tamao del resultado. La definicin de un CRC especifica el divisor que se utilizar, entre otras cosas.

INTRODUCCION Aunque un CRC se puede construir utilizando cualquier tipo de regla finita, todos los CRC de uso comn emplean una base finita binaria, esta base consta de dos elementos, generalmente el 0 y 1. El resto de este artculo se centrar en este tipo de composicin, es decir el mbito binario y los principios generales de los CRC.

La integridad de los datos frente a la codificacin Es til para deteccin 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 que el mensaje no ha podido ser alterado durante su transmisin, aunque se haya transmitido por un canal abierto.

La integridad de los datos frente a la codificacin Esta suposicin es falsa porque CRC es un mal mtodo de cifrado de datos. De hecho, el CRC no se trata realmente de un mtodo de cifrado, lo que realmente hace es utilizarse para el control de integridad de datos, pero en algunos casos se supone que se utilizarn para el cifrado. Cuando un CRC se calcula, el mensaje se conserva (no cifrado) y la constante de tamao CRC se sita hacia el final (es decir, el mensaje puede ser tan fcil como leer antes de la posicin que ocupa el CRC).

La integridad de los datos frente a la codificacin Adems, la longitud del CRC es por lo general mucho ms pequea que la longitud del mensaje, es imposible para una relacin de 1:1 entre la CRC y el mensaje. As, numerosos cdigos producirn el mismo CRC. Por supuesto, estos cdigos estn diseados para ser lo suficientemente diferentes como para variar (y por lo general slo en uno o dos bits). Pequeos cambios en la palabra clave produciran una gran diferencia entre un CRC y otro; por ese motivo es posible detectar el error.

La integridad de los datos frente a la codificacin Si la manipulacin del mensaje (cambios de los bits) es deliberada, entonces se tomara una nueva clave, produciendo un falso CRC el cual puede ser calculado para el nuevo mensaje y sustituir el CRC real en el final del paquete y esta modificacin no podr ser detectada. La CRC sirve para verificar la integridad, pero no para saber si el mensaje es correcto. Por el contrario, un medio eficaz para proteger a los mensajes contra la manipulacin intencional es el uso de un cdigo de autenticacin de mensajes como HMAC

Clculo de CRC La mecnica de la informtica con su lenguaje binario produce unas CRC simples. Los bits representados de entrada son alineados en una fila, y el (n + 1) representa el patrn de bits del divisor CRC (llamado polinomio) se coloca debajo de la parte izquierda del final de la fila. Aqu est la primera de ellas para el clculo de 3 bits de CRC: 11010011101100