Detectar corrupción no es del todo correcto. Determinar la integridad del software sería un uso más correcto. Normalmente, un software no se distribuye desde un único servidor. El mismo software puede distribuirse desde muchos servidores. Entonces, cuando descarga un software en particular, el servidor más cercano a su destino se elige como fuente de descarga para aumentar la velocidad de descarga. Sin embargo, no siempre se puede confiar en estos servidores 'no oficiales' (de terceros). Pueden / pueden incluir troyanos / virus / adware / puertas traseras en el programa, lo que no es bueno .
Por lo tanto, para garantizar que el software descargado sea exactamente el mismo que el software 'oficial' lanzado por la organización en cuestión, se utiliza la suma de comprobación. Los algoritmos utilizados para generar sumas de verificación son tales que incluso un ligero cambio en el programa da como resultado una suma de verificación completamente diferente.
Ejemplo tomado de Practical Unix e Internet Security
MD5 (Hay $ 1500 en el cuadro azul) = 05f8cfc03f4e58cbee731aa4a14b3f03
MD5 (Hay $ 1100 en el cuadro azul) = d6dee11aae89661a45eb9d21e30d34cb
Los mensajes, que difieren en un solo carácter (y, dentro de ese carácter, en un solo bit binario), tienen resúmenes de mensajes completamente diferentes.
Si el archivo descargado tiene la misma suma de comprobación que la suma de comprobación proporcionada en el sitio web "oficial", se puede suponer que el software no se ha modificado.
Nota al margen: en teoría, dos archivos diferentes PUEDEN tener el mismo valor hash. Para que el algoritmo Hash / suma de verificación se considere seguro, debería ser muy costoso desde el punto de vista informático encontrar otro archivo que produzca la misma suma de verificación.