Stratos: Punto de Encuentro de Desarrolladores

¡Bienvenido a Stratos!

Acceder

Foros





Encriptación De Contraseñas Con Md5

Iniciado por Vivael13h, 25 de Febrero de 2005, 10:25:35 AM

« anterior - próximo »

Vivael13h

 Hola a todos. Esta pregunta no tiene que ver con videojuegos, pero es que no se a quién acudir.

Estoy haciendo un trabajo sobre encriptación de datos, y me ha parecido buena idea incluir un programita en C que simule el funcionamiento del algoritmo MD5. Sería un programa sencillo: símplemente se introduce una cadena, y te devuelve otra con la cadena encriptada. El problema es que estoy un poco perdido, y no se con exactitud cómo se encriptan los datos. Se cómo funciona a grandes rasgos:

* Es una función hash, es decir, de un sólo sentido (encripta, pero no "desencripta");
* La cadena encriptada tiene que ocupar 128 bits de longitud;
* La cadena de entrada se rellena con caracteres hasta que su longitud en bits más 448 es divisible por 512;
* La cadena de entrada se procesa iterativamente en bloques de 512 bits, y cada bloque se procesa en tres rotaciones;

Básicamente esto es lo que he encontrado sobre el funcionamiento del MD5, pero me surjen varias dudas. No se cuál es el modo de procesar la cadena de entrada para obtener la de salida (es decir, la encriptación en sí). A demás, en teoría, el MD5 encripta cadenas de cualquier longitud (o eso creo), así que ¿qué pasa si meto una pedazo cadena de 1 mega, por ejemplo?

Me interesa sobre todo el funcionamiento interno. El trabajo está orientado al envío de datos por red, así que lo bueno sería adaptar el algoritmo a lenguajes tanto de servidor como de cliente. Ya se que PHP y JavaScript incluyen una función que encripta con el MD5, pero creo que sería muy interesante desarrollar algo parecido por  mi cuenta. ¿Alguna idea de por dónde puedo empezar?.

Muchas gracias.
lgún día volverá el 13h

Zaelsius

 Quizá este libro de Manuel Lucena te ayude para aclarar conceptos, y por supuesto, ver como funciona el MD5.

Vivael13h

 Perfecto. Es un libro completísimo para mis necesidades. Me lo voy a leer de pe a pa. Gracias.  (ole)  
lgún día volverá el 13h

zupervaca

 para que se te resuelva la duda de un 1 mega de datos decirte que el md5 solo tiene un direccion que es la de encriptacion por que realmente el md5 es un checksum numerico que luego mucha gente la pasa a formato cadena de 32 caracteres si no creo recordar mal






Stratos es un servicio gratuito, cuyos costes se cubren en parte con la publicidad.
Por favor, desactiva el bloqueador de anuncios en esta web para ayudar a que siga adelante.
Muchísimas gracias.