Академический Документы
Профессиональный Документы
Культура Документы
Algoritmos de encriptacin
Profesor:
Gerardo Prez
Alumno:
Cesar Daniel Ureo Martnez
9 Semestre
MD5
Este algoritmo fue desarrollado por Ronald Rivest en 1995 y est basado en dos
algoritmos anteriores MD2 y MD4. Todos estos protocolos producen un nmero de 128
bits a partir de un texto de cualquier longitud.
MD5 procesa mensajes de cualquier longitud (longitud variable) y procesa bloques
uniformes de 512 bits a la vez, hasta concluir con el mensaje total a fin de entregar a la
salida un bloque "resumen" de 128 bits (longitud fija). El procesamiento consta de cinco
pasos:
Paso 1: En principio, para que el mensaje sea procesado en bloques de tamao fijo se
requiere que su longitud en bits sea:
de manera que su longitud
sea de no menos de 64 bits de diferencia para completar un mltiplo de 512, as, de ser
necesario se aplica un relleno, el cual vara en longitud en cada caso, esto es, el nmero
de bits adicionados est en un rango de 1 a 512 bits con el formato 100000.
Paso 2: Una representacin de 64 bits de la longitud del mensaje original (antes de aplicar
el relleno) se aade al resultado del paso 1. Estos dos pasos permiten hacer coincidir la
longitud del mensaje en un mltiplo exacto de 512 bits de longitud (requerido para el resto
del algoritmo), en tanto adicionalmente se garantiza que mensajes distintos no sern
iguales despus del complemento de los bits.
Paso 3: Es hasta este paso que da inicio el proceso de reduccin, para ello se utiliza un
registro de 128 bits que permite almacenar y mantener los resultados intermedios y final
de la funcin hash. El registro se divide en cuatro secciones de 32 bits cada una, las
cuales corresponden a las variables A, B, C, y D que son inicializadas con los valores
hexadecimales:
A = 67 45 23 01
B = EF CD AB 89
C = 98 BA DC FE
D = 10 32 54 76
Paso 4: El mensaje se procesa en bloques de 512 bits a la vez a travs de 16 bloques de
32 bits cada uno, para lo cual las cuatro variables de concatenacin se copian en
variables distintas:
a=A
b=B
c=C
d=D
La parte medular del algoritmo es una funcin de compresin que consta de cuatro
rondas, las cuales tienen una estructura similar; pero cada una utiliza operaciones
distintas durante 16 iteraciones; cada operacin realiza una funcin no lineal sobre tres de
las variables a, b, c y d, y el resultado es sumado a la cuarta variable que no fue elegida,
un sub-bloque del texto y una constante.
A ese resultado se le aplica una rotacin circular a la izquierda un nmero variable de bits
y se suma el resultado a una de las variables a, b, c o d. Finalmente el resultado
reemplaza a una de las variables a, b, c o d. La salida de la cuarta ronda se suma a la
entrada de la primera en una operacin modular 232.
incorporan
cumpla:
bits
de
relleno
al
mensaje
de
entrada
de
tal
modo
que
La entrada a cada ronda consta del bloque de 512 bits que se est procesando (Yq) y los
160 bits de la memoria MD, ntese que cada bloque de 512 bits actualizar el valor de la
memoria temporal. Cada ronda tambin hace uso de la constante aditiva Kt,
donde
5. Una vez que se procesan los L bloques de 512 bits, el resumen del mensaje son los 160
bits de salida del ltimo bloque.
SSL
Secure Sockets Layer es un proceso que administra la seguridad de las transacciones
que se realizan a travs de Internet. El estndar SSL fue desarrollado por Netscape, junto
con Mastercard, Bank of America, MCI ySilicon Graphics. Se basa en un proceso
de cifrado de clave pblica que garantiza la seguridad de los datos que se envan a travs
de Internet. Su principio consiste en el establecimiento de un canal de comunicacin
seguro (cifrado) entre dos equipos (el cliente y el servidor) despus de una fase de
autenticacin.
Funcionamiento
Algunas aplicaciones que estn configurados para ejecutarse SSL incluyen navegadores
web como Internet Explorer y Firefox, los programas de correo como Outlook, Mozilla
Thunderbird, Mail.app de Apple, y SFTP (Secure File Transfer Protocol) programas, etc.
Estos programas son capaces de recibir de forma automtica conexiones SSL.
La seguridad de las transacciones a travs de SSL 2.0 se basa en el intercambio de
claves entre un cliente y un servidor. Una transaccin segura SSL se realiza de acuerdo al
siguiente modelo:
Referencias
UNAM, Facultad de ingeniera, Fundamentos de criptografa. http://redyseguridad.fip.unam.mx/proyectos/criptografia/criptografia/index.php/5-criptografia-asimetrica-o-declave-publica/55-funciones-hash
http://neo.lcc.uma.es/evirtual/cdd/tutorial/presentacion/md5.html
http://www.redeszone.net/2010/11/09/criptografia-algoritmos-de-autenticacion-hash/
https://www.digicert.com/es/ssl.htm
http://revista.seguridad.unam.mx/numero-10/el-cifrado-web-ssltls
http://es.kioskea.net/contents/141-criptografia-secure-sockets-layers-ssl