Sie sind auf Seite 1von 12

Alumnos: Israel Murillo Alberto Meja

INTRODUCCIN
Un algoritmo criptogrfico es una funcin matemtica

usada

en

los

procesos

de

encriptacin

desencriptacin. Trabaja en combinacin con una llave (un nmero, palabra, frase, o contrasea) para encriptar y desencriptar datos.

INTRODUCCIN
Para encriptar, el algoritmo combina matemticamente la

informacin a proteger con una llave provista. El resultado de este clculo son los datos encriptados.
Para desencriptar, el algoritmo hace un clculo combinando los

datos encriptados con una llave provista, siendo el resultado de esta combinacin los datos desencriptados (exactamente igual a

como estaban antes de ser encriptados si se us la misma llave).


Si la llave o los datos son modificados el algoritmo produce un resultado diferente.

OBJETIVO
Encriptar y desencriptar datos, mediante una red de Feistel

que por deficin es reversible.


Realiza este proceso soportando claves de hasta 448 bits y

encriptacin de a bloques de 64 bits.

DESARROLLO
El algoritmo Blowfish fue uno de los tantos diseados por

el experto en seguridad y criptografa, Bruce Schneier. El blowfish utiliza un cifrado en bloques de 64 bits y permite

utilizar una clave de longitud variable de hasta 448 bits (56


bytes).
Luego de tomar la clave inicial, se genera una expansin de

claves a partir de la dada para afirmar la seguridad del algoritmo.

DESARROLLO
La encriptacin se basa en una red de Feistel de 16 rondas (la

cantidad de rondas no es arbitraria pues se pueden implementar ms o menos rondas dependiendo de si se quiere ms seguridad

o ms velocidad). Antes de encriptar o desencriptar, se debe


inicializar el algoritmo, lo cual significa generar las subclaves a partir de una clave dada por el usuario.
Posee dos partes: una primera llamada Expansin de clave y

otra llamada Cifrado de datos.

La expansin de clave convierte una clave de cmo mximo 448 bits en varios arrays de subclaves haciendo un total de 4168 bytes. El Cifrado de datos se produce haciendo una red de 16 rondas de Fesitel. Cada ronda consiste en una permutacin dependiente de la claves y una sustitucin dependiente de los datos y clave.

CARACTERSTICAS
Rpido: Cifra datos en microprocesadores de 32 bits a una

tasa de 18 ciclos de reloj por byte. Compacto: Puede correr en un espacio de memoria inferior a los 5K. Sencillo: Tiene una estructura sencilla que lo hace fcil de implementar. Variables seguras: La longitud de la clave es variable y puede ser hasta de 448 bits, lo que permite negociar entre trabajar a alta velocidad y una alta seguridad. Opera con bloques de 64 bits. Toma 64 bits de texto plano y entrega 64 bits de texto cifrado. Se utilizan 2 operaciones bsicas, la XOR y la adicin.

Ejemplo
En primera instancia se ingresa una serie de 32 bits la cual se

divide en 4 bloque de 8 bits.


Ahora se procede a sustituir con las S-Box. Una vez realizado esto se comienza realizando una suma entre el

resultado de la S-Box 1 y la S-Box 2.


Despus se realiza una XOR entre el resultado de la suma

anterior y el resultado de la S-Box 3.


Por ltimo el resultado anterior se suma con el resultado de la S-

Box 4.Finalizando la funcin F.

Ejemplo

Das könnte Ihnen auch gefallen