Algoritmos De Encriptacion
mike731513 de Diciembre de 2013
812 Palabras (4 Páginas)338 Visitas
Algoritmo DES
Trabajaba sobre bloques de 128 bits, teniendo la clave igual longitud. Se basaba en operaciones lógicas booleanas. DES cifra bloques de 64 bits, mediante permutación y sustitución y usando una clave de 64 bits, de los que 8 son de paridad (esto es, en realidad usa 56 bits), produciendo así 64 bits cifrados.
DES tiene 19 etapas diferentes.
La primera etapa es una transposición, una permutación inicial (IP) del texto plano de 64 bits, independientemente de la clave. La última etapa es otra transposición (IP-1), exactamente la inversa de la primera. La penúltima etapa intercambia los 32 bits de la izquierda y los 32 de la derecha. Las 16 etapas restantes son una Red de Feistel de 16 rondas. En cada una de las 16 iteraciones se emplea un valor, Ki, obtenido a partir de la clave de 56 bits y distinto en cada iteración.
Se realiza una permutación inicial (PC-1) sobre la clave, y luego la clave obtenida se divide en dos mitades de 28 bits, cada una de las cuales se rota a izquierda un número de bits determinado que no siempre es el mismo. Ki se deriva de la elección permutada (PC-2) de 48 de los 56 bits de estas dos mitades rotadas. La función f de la red de Feistel se compone de una permutación de expansión (E), que convierte el bloque correspondiente de 32 bits en uno de 48. Después realiza una or-exclusiva con el valor Ki , también de 48 bits, aplica ocho S-Cajas de 6*4 bits, y efectúa una nueva permutación (P). Para descifrar basta con usar el mismo algoritmo empleando las Ki En orden inverso
Algoritmo Idea
En cada paso elemental por el que pasa el texto de 64 bits, este sufre las siguientes alteraciones para dar el cifrado:
1¦ División del bloque de 64 bits de texto en cuatro subbloques de 16 bits: X1, X2, X3 y X4, y de los 128 de la clave en 8: Z1 ... Z8. Estos últimos son intencionadamente m s complicados, y se tratar n aparte.
2¦ Multiplicación de X1 por el primer sub bloque de la clave Z1.
3¦ A ello se añade X2 y el segundo sub bloque de la clave Z2.
4¦ A lo que se añade X3 y el segundo sub bloque de la clave Z3.
5¦ Lo que se multiplica por X4 y por el cuarto sub bloque de la clave.
6¦ Se hace una operación de or exclusivo (XOR) entre el bloque resultado de las operaciones segunda y cuarta
7¦ XOR entre el resultado de la tercera y la quinta operación
8¦ Se multiplican los resultados de la sexta operación con el quinto sub bloque de la clave, Z5
9¦ Se suma el resultado de las operaciones sexta y séptima
10¦ Se multiplica el resultado de la novena operación con el sexto sub bloque de la clave, Z6
11¦ Se suman los resultados de la octava y la décima operación
12¦ XOR del resultado de la segunda y la décima
13¦ XOR del resultado de la cuarta y la décima
14¦ XOR del resultado de la tercera y la undécima
15¦ XOR del resultado de la quinta y la undécima
De esta forma se consigue el texto cifrado, juntando los cuatro bloques resultantes de las operaciones cuatro últimas operaciones. Evidentemente, la seguridad del cifrador aumenta cuando el texto pasa
Varias veces por el algoritmo, y el IDEA lo hace 8 veces. Para retroalimentarlo, basta con permutar los bloques segundo y tercero de la salida, y hacerlos entrar de nuevo, en todas las etapas menos en la última.
Después de la octava ronda, hay una transformación final, que consiste en
Los cuatro pasos siguientes:
1§ Multiplicar X1 por el primer sub bloque de la clave
2§ Añadir X2 al segundo bloque de la clave
3§ Añadir X3 al tercer sub bloque de la clave
4¦ Multiplicar X4 por el cuarto sub bloque de la clave
Finalmente, se concatenan estos últimos
...