¿Por qué es importante un buen Hash?

La importancia de un buen Hash

En Informática lo más preciado son las contraseñas, pues estas son las llaves a todo tipo de información, desde datos personales a cuentas bancarias e incluso toda la información de grandes corporaciones.

Por lo general estas se guardan en el servidor que almacena la información y al confirmar que el usuario ingrese sus datos correctamente lo deja acceder a su información, en ese caso, ¿no sería fácil para alguien mal intencionado acceder a las contraseñas?, bastaría con entrar al servidor y dirigirse a la carpeta que contiene las contraseñas para leerlas y manipular toda esa información, el modo en el que se suelen proteger las contraseñas es a través del HASH.

La función de Hash (que en inglés viene a ser “picadillo”), es una función que usa un algoritmo que toma una contraseña como tal y la “resume” mediante operaciones matemáticas complejas y entregan le asignan un valor completamente distinto y lo guardan en el archivo correspondiente a contraseñas /etc/shadow en el caso de servidores Linux, pero siendo una función matemática, ¿no sería entonces reversible aquella función?, la verdad es que si es posible, pero el tiempo que conllevaría el cálculo de todas las operaciones necesarias para obtener la información que ha pasado por HASH sería demasiado largo, por ponerlo de cierto modo, el algoritmo de Hash MD5 entrega la información en una cadena de 128 bits representado como número hexadecimal de 32 dígitos, por lo que para calcular todas las posibilidades que genera este algoritmo es necesario hacer  operaciones, algo así como 3.402823669*10^38 posibilidades, esto hace que en cuanto a tiempo una equipo capaz de generar una operación por microsegundo, le tome más de mil años, sin exagerar, el determinar completamente todas las posibilidades del algoritmo, aunque aun así, hay otros flancos por los cuales atacar a un sistema, uno de ellos es el archivo de /etc/shadow, si este llegara a manos de un tercero, fácilmente se puede tomar el hash de la contraseña del usuario root y comenzar a pasar por hash palabras desde un diccionario hasta encontrar la que genere un valor idéntico, para ello existe el programa conocido como John the ripper, el cual como ya se dijo viene acompañado de un diccionario de palabras el cual verifica una por una, modificando caracteres o mutando las palabras para así dar rápidamente con la clave. John puede ser usado para probar la seguridad de las contraseñas de algún sistema, que nunca, NUNCA, debieran ser frases o palabras con algún grado de coherencia o información de la persona, pues son las claves más fáciles de obtener.

Como conclusión, hay que asumir la necesidad de pasar por alguna función de Hash las contraseñas importantes que se vayan a guardar en nuestro sistema, pues es la mejor manera de mantenerlas seguras a la vez también de restringir los permisos a los archivos que las guardan, para cerrar las posibles entradas que hayan a nuestros servidores , recuerda que la seguridad es lo más importante para cualquier equipo.

Post Más Recientes

Ver más Entradas

Ver más

Mantenimiento de datacenter

Al trabajar con servidores de distinta índole, ya sea web, correo, dns, ftp u otros servicios, los cuidados que se deben tener básicamente son los

Leer más »

Servidores Compartidos

SERVIDORES COMPARTIDOS   La estructura base del hosting compartido está basada comúnmente en el servidor Apache, y aprovecha una funcionalidad de ésta plataforma denominada Hosting

Leer más »

Casos de éxito: Radio Chévere

“Todos buscan productos y servicios por Internet y hay que estar ahí”, señala Marielse López, fundadora de Radio Chévere. Conozcamos su caso. Marielse López llegó

Leer más »

Migración.

Existen varios motivos por los que uno puede llegar a la decisión de migrar el servidor que se esté usando, una de ellas puede ser que

Leer más »