Antes de leer el artículo es posible que no te hayas cruzado aun con el término «calcular MD5». Quizá no sepas que es MD5, para que sirve y mucho menos como utilizarlo. En cualquiera de los casos posibles, no te preocupes. Tras la lectura de este artículo saldrás sabiendo que es, como se calcula, e incluso cómo y dónde utilizarlos de manera útil y efectiva.
El artículo de hoy veremos en primer lugar que es MD5. Posteriormente veremos como codificarlo y por último veremos en qué casos y qué lugares es útil utilizarlo optar a un plus de seguridad cuando el texto plano no nos ofrece más en este sentido.
Qué es MD5
El primer paso para seguir leyendo es entender que es MD5. El MD5 es un algoritmo que se usa para verificar la integridad de los archivos y los mensajes. A grandes rasgos, el MD5 genera un código de 32 caracteres llamado hash, que es único para cada archivo o mensaje. Si se cambia algo en el archivo o el mensaje, el hash también cambia.
Podemos resumir su funcionamiento a que es un método de encriptación de archivos y mensajes. Nosotros lo veremos concretamente sobre mensajes de texto plano, para darles seguridad. De esta manera podemos cambiar una palabra o contraseña en texto plano a una combinación de letras y números. Lo que hemos mencionado anteriormente como hash.
Esta encriptación se utiliza en páginas web seguras para pasar el texto plano de los formularios de login a un formato no rastreable a través de sniffing. Si no estás familiarizado con este término te dejamos esta página web para que puedas completar la definición de este término.
El punto débil de este método de cifrado es que si un usuario malintencionado o hacker averigua, probablemente a través del código de la página web sobre la que ha detectado actividad del usuario espiado, podrá ver que se está utilizando una función MD5. Por consiguiente bastará con pasar el texto extraído a través del login cambiando su propiedad para no volver a ejecutar el MD5 sobre la entrada del campo y se podría entrar con las credenciales capturadas.
En cualquier caso, quizá esta última parte se haya puesto algo técnica. Lo que puede hacer MD5 y veremos en algún ejemplo posterior es traducir una palabra existente y legible a una combinación de caracteres aparentemente aleatorios para ocultar su verdadero significado.
Lo que sí debemos tener en cuenta es que este método de cifrado no es reversible. Es decir, no podremos posteriormente traducir el resultado de una encriptación para saber que significaba. Explicaremos el motivo en el siguiente punto.
Cómo calcular MD5
Esto se puede calcular MD5 de diferentes maneras a nivel de software. Sin embargo, para nuestro pequeño experimento y que puedas conocer el proceso lo veremos a través de una herramienta web.
Desde esta página web, aunque buscando en internet podrás encontrar muchas más, podremos calcular MD5 fácilmente con escribir un texto plano. Podemos utilizar una contraseña, por ejemplo. Lo que debemos tener en cuenta es que no podremos hacerlo al revés. Es decir, un código generado por MD5 no será posible descifrar que contenido original lo ha generado.
Para explicar mejor por qué MD5 no es reversible, pongamos un ejemplo; cuando usamos el generador MD5, en los datos de texto de vamos a indicar 120 caracteres, de los cuales obtendremos solo unos 32 caracteres al codificarlo. Por lo tanto, si quisiéramos revertir esto, ¿cómo podría el sistema de determinar con exactitud que se utilizaron 120 caracteres partiendo sólo de 32 caracteres? Esta es la razón por la cual el generador MD5, simplemente no tiene este tipo de función.
Sabiendo esto, el funcionamiento es unidireccional, y resultar muy sencillo. Nos bastará con escribir un texto y hacer clic en generar. Sin embargo, lo más interesante viene después, en los métodos útiles donde utilizarlo.
Dónde y cómo utilizar MD5
Existen muchas formas de utilizar MD5 para nuestro beneficio. En especial en el ámbito de la programación y servicios a través de internet, como mencionábamos anteriormente, para pasar en un formato protegido un texto de una contraseña de un formulario de login. Esto es una manera muy sencilla y efectiva de ocultar ese texto de contraseña mientras llega al servicio de la página web donde se está haciendo el login. Aunque tenemos más ejemplo, este sería el más popular, y el que utilizan páginas web populares que no mencionaremos en el artículo para conservar su seguridad.
Calcular MD5 y utilizarlo en contraseñas personales
Te preguntarás quizá como es posible que utilicemos este método de cifrado que no es reversible. La respuesta en realidad es sencilla. Podemos utilizar MD5 para proteger nuestras propias contraseñas. No necesitamos traducir algo que ya conocemos, solo convertirlo en la llave que abre la puerta.
Podremos un ejemplo efectivo donde veremos dónde y cómo utilizar MD5. Imaginemos que queremos establecer una contraseña para un disco duro externo donde tenemos información sensible cifrada. Nuestro objetivo para utilizar MD5 será establecer como contraseña de acceso un texto pasado por MD5. De esta manera, aunque nosotros sepamos que la contraseña es una concreta, ni tan siquiera si alguien llega a averiguar que se trata de cierta palabra podrá acceder, porque será necesario pasarla antes por un MD5.
De este modo nosotros habremos establecido como contraseña de acceso un texto codificado en MD5 y solo este mismo texto codificado será el que permita el acceso al supuesto disco duro.
Podemos utilizar este método de cifrado también para contraseñas de páginas web. Podemos dotar a nuestras claves de un extra de seguridad o sencillamente utilizarlas para hacerlas más seguras ante ataques de fuerza bruta. El único pero ante esto será que dejaremos de poder recordarlas, pues es prácticamente imposible. Tendríamos que recurrir a algún software gestor de contraseñas para almacenar todas las credenciales cifradas con MD5.
Ahora te toca a ti contarnos que te parece este método de cifrado, si lo has utilizado alguna vez, si no lo conocías, o si se te ocurre algún uso más para utilizarlo.
¡Te leemos en los comentarios!