Diferencia entre revisiones de «Suma de verificación»

De Wikipedia, la enciclopedia libre
Contenido eliminado Contenido añadido
EgrojSoft (discusión · contribs.)
m Revertidos los cambios de EgrojSoft (disc.) a la última edición de Eduardosalg
Línea 20: Línea 20:
== Enlaces externos ==
== Enlaces externos ==
* [http://www.jonelo.de/java/jacksum/index.html Jacksum], un proyecto [[Software de código abierto|de código abierto]] con varias funciones de verificación de datos
* [http://www.jonelo.de/java/jacksum/index.html Jacksum], un proyecto [[Software de código abierto|de código abierto]] con varias funciones de verificación de datos
* [http://www.egrojsoft.info/CheckSum.htm EgRoJ CheckSums] para archivos en la Web de [http://egrojsoft.info/ EgRoJ Soft!].


[[Categoría:Algoritmos de suma de verificación]]
[[Categoría:Algoritmos de suma de verificación]]

Revisión del 13:26 10 ago 2010

Una suma de verificación o checksum es una forma de control de redundancia, una medida muy simple para proteger la integridad de datos, verificando que no hayan sido corruptos. Es empleado para comunicaciones (internet, comunicación de dispositivos, etc.) tanto como para datos almacenados (archivos comprimidos, discos portátiles, etc.).

El proceso consiste en sumar cada uno de los componentes básicos de un sistema (generalmente cada byte) y almacenar el valor del resultado. Posteriormente se realiza el mismo procedimiento y se compara el resultado con el valor almacenado. Si ambas sumas concuerdan se asume que los datos probablemente no han sido corrompidos.

La forma más simple de checksum no detecta una variedad de corrupciones; particularmente no cambiará si:

  • Se cambia el orden de los bytes de la información.
  • Se agregan o eliminan bytes de valor igual a cero.
  • Múltiples errores que se cancelan unos con otros.

Los tipos de control de redundancia más sofisticados, incluyendo el checksum de Fletcher, Adler-32 y el control de redundancia cíclica (CRC) son diseñados para tratar estas deficiencias considerando no sólo el valor de cada byte sino también el de su posición. El costo de la capacidad de detectar más tipos de error aumenta junto con la complejidad del algoritmo de comprobación.

Estos tipos de control por redundancia son útiles en la detección de las modificaciones accidentales como corrupción de los datos o los errores de almacenamiento en un canal de comunicaciones. Sin embargo, no proporcionan ninguna seguridad contra un agente malévolo mientras que su estructura matemática sea simple. Para proveer este tipo de integridad, es necesario el uso de una función criptográfica hash, como SHA-256. Se han encontrado colisiones en SHA-1, actualmente la opción más popular, pero no hay evidencia en fecha de 2005 que SHA-256 sufra deficiencias similares.

En UNIX hay una herramienta llamada cksum que genera un CRC-32 y un checksum para un archivo determinado dado como parámetro.

Véase también

Enlaces externos