MD5


MD5 es algoritmo de resumen o HASH, recordemos que los algoritmos de HASH no poducen contraseñas o mensajes codificados, sino resumenes de mensajes o archivos.

Los resumenes generados, sirven para generar un identificador unico para poder validar o autentificar un mensaje o un archivo descargado, MD5 es el algoritmo de HASH mas extendido en el mundo, pero veamos como funciona

Debido a que no crea claves, es facil encontrar informacion sobre su funcionamiento, la version mas usual de MD5 es la de 128 bits, la cual genera una cadena en hexadecimal.

Este algoritmo funciona a traves de 4 pasos

primer paso: expansion del mensaje.

en este paso se añaden bits al mensaje para que al momento de restarle 448 a la cadena de bits, nos de como resultado un multiplo de 512, con esto normalizamos el tamaño del mensaje

segundo paso: medicion del mensaje

la longitud del mensaje se añade al mensaje en forma de un numero entero de 64 bists, esto complementa el paso anterior para que mensaje tenga una longitud exacta en multiplos de 512

tercer paso: inicializacion del buffer

se crean 4 cadenas de 32 bits, las cuales serviran de buffero valores iniciales

cuarto paso: procesado

se toman 3 bloques de 16 bits del mensaje, a estos tres bloques se les hace pasar por 4 funciones logicas que daran como resultado un solo bloque de 16, es decir, por cada tres bloques obtenemos un bloque, esto es por cada funcion, los mismo tres bloques se aplican en cada funcion y el valor resultante se suma al buffer que le corresponde

el valor obtenido de la primera funcion logica se suma al valor del primer buffer, el valor obtenido de la segunda funcion logica se suma al valor del segundo buffer y  asi sucesivamente.

la cadena identificador se creara a partir de la concatenacion de los 4 buffers resultantes.

Ahora bien, si no nos queremos complicar codificando todo esto, existen las librerias MD5 y las instrucciones correspondientes para muchos lenguajes de programacion y de scripts en internes, por citar algunos que tiene soporte para MD5  tenemos C++, javascript y php.

Anuncio publicitario

¿Qué estas pensando?

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Salir /  Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Salir /  Cambiar )

Conectando a %s

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.