U8.4 Algunas aplicaciones de las funciones HASH

Un algoritmo de HASH no es un algoritmo de encriptación, aunque sí se utiliza en esquemas de cifrado, como algoritmos de cifrado asimétrico (por ejemplo en el RSA). Ahora bien, tener una función de estas características puede tener muchas aplicaciones. Algunas de ellas pueden ser las siguientes:


Comprobación de integridad de ficheros
Supongamos que queremos transmitir un fichero a través de la red. Si antes de realizar este envío calculamos la función HASH del fichero, en el otro extremo es posible verificar la integridad del fichero aplicando el mismo algoritmo al archivo que recibe. Si ambos coinciden, podemos asegurar que el envío ha sido satisfactorio. Ésta es una aplicación real que se utiliza, por ejemplo, para comprobar la integridad de muchos paquetes que se descargan en distribuciones del sistema operativo GNU/Linux.

Seguridad en procesos de identificación en sistemas
Los procesos de identificación mediante Login+Password, se ven reforzados por estos algoritmos. Se utilizan de la siguiente forma: cuando un usuario accede a su computadora debe introducir su nombre de usuario y su contraseña. Pues bien, si el sistema operativo no registra estos datos como “texto claro”, si no que registra el resultado de aplicarles una función HASH, en el caso de que un usuario malicioso logre acceder a nuestro archivo de registros no conseguirá revertir el contenido de dicho registro, y por tanto no puede acceder a nuestro sistema. Esta misma idea se aplica en identificación de usuarios en muchas webs, con la diferencia de que para que este esquema sea seguro debe incluir información adicional y “aleatoria”, como marcas de tiempo y redundancias.

Firma digital
Estos algoritmos se utilizan en esquemas de firma digital para verificar la integridad de la información enviada por el canal de comunicaciones. Algoritmos de cifrado asimétrico, como RSA por ejemplo, realizan lo siguiente: calculan la función HASH del contenido del mensaje que se va a enviar y luego se firma dicho checksum con la clave privada del emisor. Así se asegura la integridad de la información y el “no repudio”.

investigacion8