Descripcion algoritmo de cifrado des
ALGORITMO DE CIFRADO DES (Data Encryption Standard)
Carlos Harvey Yara Clavijo 20062020081
El 15 de mayo de 1973, el NBS (National Bureau of Standars) hoy en día denominada NIST (National Institute of Standars and Technology), hizo un llamamiento en el Federal Register para la creación de un algoritmo de cifrado. A finales de 1974, IBMpropuso "Lucifer", que gracias a la NSA (National Standard Agency) fue modificado el 23 de noviembre de 1976, convirtiéndose en DES. El DES fue estandarizado por el ANSI (American National Standard Institute) bajo el nombre de ANSI X3.92, mas conocido como DEA (Data Encrytion Algorithm).
Carlos Harvey Yara Clavijo 20062020081
Es un sistema de cifrado de bloques. En este
caso, el algoritmotoma la información en bloques de 64 bits produciendo un bloque de texto cifrado también de 64 bits. La clave es codificada en 64 bits y se compone de 16 bloques de 4 bits, generalmente anotadas de k1 a k16. Dado que "solamente" 56 bits sirven para el cifrado, ¡puede haber hasta 256 claves diferentes!
Carlos Harvey Yara Clavijo 20062020081
Carlos Harvey Yara Clavijo 20062020081
Procesar la clave.
Dividir la clave en bloques de 8 bits. Eliminar el ultimo bit de cada bloque. Realizar permutación PC-1. Dividir clave en dos sub-bloques. Desplazamiento en cada sub-bloque.* Concatenar los sub-bloques.* Aplicar permutación de compresión PC-2*
* Estos pasos se realizan 16 veces para generar el mismo numero de sub-claves.
Carlos Harvey Yara Clavijo 20062020081Tabla de 64 bits Inicial 1 9 2 10 3 11 4 12 5 13 6 14 7 15 8 16 1 9 2 10
Tabla de 56 bits 3 11 4 12 5 13 6 14 7 15
17
25 33 41 49 57
18
26 34 42 50 58
19
27 35 43 51 59
20
28 36 44 52 60
21
29 37 45 53 61
22
30 38 46 54 62
23
31 39 47 55 63
24
32 40 48 56 64
17
25 33 41 49 57
18
26 34 42 50 58
19
27 35 43 51 59
20
28 36 44 52 60
21
29 37 4553 61
22
30 38 46 54 62
23
31 39 47 55 63
Permutación PC1 57 1 10 19 63 7 14 21 49 58 2 11 55 62 6 13 41 50 59 3 47 54 61 5 33 42 51 60 39 46 53 28 25 34 43 52 31 38 45 20 17 26 35 44 23 30 37 12 9 18 27 36 15 22 29 4
Sub-bloque de clave superior C0
Sub-bloque de clave inferior D0
Carlos Harvey Yara Clavijo 20062020081
A cada sub-bloque se realiza desplazamiento circular ala izquierda de 1 o 2 bits dado por esta tabla, generando así 16 sub-claves. Vuelta (i) No. Bits desplazados. Izda. 1 1 2 1 3 2 4 2 5 2 6 2 7 2 8 2 9 1 10 2 11 2 12 2 13 2 14 2 15 2 16 1
Después de realizar el desplazamiento, para cada vuelta se concatena Ci y Di y luego se realiza la permutación PC2 generando cada una de las Sub-claves.
Tabla ( Ci, Di) 1 8 15 2 9 16 3 10 17 4 11 18 5 12 19 613 20 7 14 21 14 3 23 Permutación PC2 17 28 19 11 15 12 24 6 4 1 21 26 5 10 8
22
29 36 43 50
23
30 37 44 51
24
31 38 45 52
25
32 39 46 53
26
33 40 47 54
27
34 41 48 55
28
35 42 49 56
16
41 30 44 46
7
52 40 49 42
27
31 51 39 50
20
37 45 56 36
13
47 33 34 29
2
55 48 53 32
Carlos Harvey Yara Clavijo 20062020081
Procesar el bloque de datos de64 bits. Aplicar permutación inicial PI. Dividir el mensaje en dos sub-bloques. Realizar Red de Feistel de 16 rondas. Concatenar sub-bloques resultantes Aplicar permutación final PI-1.
Carlos Harvey Yara Clavijo 20062020081
Tabla antes la Permutación 1 9 17 25 33 2 10 18 26 34 3 11 19 27 35 4 12 20 28 36 5 13 21 29 37 6 14 22 30 38 7 15 23 31 39 8 16 24 32 40
Se separan elmensaje original de 64 bits en bloques de 8 bits, previo a la permutación, la tabla P1 muestra el resultado de la permutación.
41
49 57
42
50 58
43
51 59
44
52 60
45
53 61
46
54 62
47
55 63
48
56 64
Li = Ri-1 Ri = Li-1 f ( Ri-1 , Ki )
Permutación Inicial (PI) 58 60 62 64 57 59 61 50 52 54 56 49 51 53 42 44 46 48 41 43 45 34 36 38 40 33 35 37 26 28 30 32 25 27...
Regístrate para leer el documento completo.