Encriptacion md5

Solo disponible en BuenasTareas
  • Páginas : 3 (655 palabras )
  • Descarga(s) : 0
  • Publicado : 13 de junio de 2011
Leer documento completo
Vista previa del texto
1º como fnciona la encrptacion en MD5
Paso 1. Adición de bits
El mensaje será extendido hasta que su longitud en bits sea congruente con 448, módulo 512. Esto es, si se le resta 448 a la longituddel mensaje tras este paso, se obtiene un múltiplo de 512. Esta extensión se realiza siempre, incluso si la longitud del mensaje es ya congruente con 448, módulo 512.
La extensión se realiza comosigue: un solo bit "1" se añade al mensaje, y después se añaden bits "0" hasta que la longitud en bits del mensaje extendido se haga congruente con 448, módulo 512. En todos los mensajes se añade al menosun bit y como máximo 512.
Paso 2. Longitud del mensaje
Un entero de 64 bits que represente la longitud 'b' del mensaje (longitud antes de añadir los bits) se concatena al resultado del pasoanterior. En el supuesto no deseado de que 'b' sea mayor que 2^64, entonces sólo los 64 bits de menor peso de 'b' se usarán.
En este punto el mensaje resultante (después de rellenar con los bits y con 'b')se tiene una longitud que es un múltiplo exacto de 512 bits. A su vez, la longitud del mensaje es múltiplo de 16 palabras (32 bits por palabra). Con M[0 ... N-1] denotaremos las palabras del mensajeresultante, donde N es múltiplo de 16.
Paso 3. Inicializar el búfer MD
Un búfer de cuatro palabras (A, B, C, D) se usa para calcular el resumen del mensaje. Aquí cada una de las letras A, B, C, Drepresenta un registro de 32 bits. Estos registros se inicializan con los siguientes valores hexadecimales, los bits de menor peso primero:
palabra A: 01 23 45 67
palabra B: 89 ab cd ef
palabraC: fe dc ba 98
palabra D: 76 54 32 10
Paso 4. Procesado del mensaje en bloques de 16 palabras
Primero definimos cuatro funciones auxiliares que toman como entrada tres palabras de 32 bits y susalida es una palabra de 32 bits.




Los operadores son las funciones XOR, AND, OR y NOT respectivamente.
En cada posición de cada bit F actúa como un condicional: si X, entonces Y sino Z....
tracking img