Criptosistemas Simtricos
Criptosistemas Simtricos
Criptosistemas Simtricos
??
k k
1. El algoritmo de cifrado debe ser suficientemente robusto para que un oponente que conoce el algoritmo,
un texto cifrado y su respectivo texto plano no pueda deducir la clave secreta k.
2. Toda la seguridad esta en la clave secreta k, por tanto emisor y receptor deben ponerse de acuerdo en la
clave y mantenerla secreta.
3. Por cada par transmisor – receptor se bebe tener una clave secreta única.
Marcela Mejía
Algoritmos de Cifrado por Bloques
Marcela Mejía
1. DES (Data Encryption Standard)
DES es un cifrador iterado FEISTEL desarrollado por IBM en 1975 y estandarizado por la NIST
bajo el FIPS 46-3 y tiene las siguientes características:
• 16 etapas
• En cada una se lleva a cabo un proceso de sustitución y permutación
• Bloques de texto plano de 64 bits
• Clave k de 56 bits (Utilizada para generar 16 subclaves de 48 bits)
• Produce un bloques de texto cifrado de 64 bits
• Etapa de permutación inicial y final
• El proceso de descifrado es idéntico al cifrado pero utilizando en la primera etapa la clave k16
Marcela Mejía
L0 R0
L1 R1
L16 R16
Marcela Mejía
32 bits 32 bits
+
Li Ri
32 bits 32 bits
Marcela Mejía
Ri-1
Ri-1 32 bits
Expansión/ Permutación E
32 bits
48 bits
48 bits
48 bits
+ ki
f ki 48 bits
S-Box
32 bits
32 bits
f(Ri-1, ki ) Permutación
32 bits
Marcela Mejía
2. TRIPLE-DES
K1 K2 K3
x y
DES cifrado DES descifrado DES cifrado
K3 K2 K1
y x
DES descifrado DES cifrado DES descifrado
Marcela Mejía
3. AES (Advanced Encryption Standard)
Desarrollado por Daemen/rijmen criptologos Belgas y dado a conocer oficialmente en el 2001 por la NIST bajo el
estándar FIPS 197, sus características son:
Marcela Mejía
AES esta basado en 4 operaciones primitivas
1. Adición de la clave, X-OR
2. Sustitución octeto por octeto, llamado S-Box
3. Reorganización de octetos a través de desplazamientos circulares
4. Mezcla de Columnas, donde se remplaza una columna de 4 octetos por otra.
Marcela Mejía
Texto Plano 128 bits Clave 128 bits 128 bits Texto Plano
Adición de la Clave Adición de la Clave
K K
Etapa 1 Sustitución Sustitución Inversa
Etapa 10
Desplazamiento Desplazamiento Inv
128 bits
Mezcla de Columnas
k1 Mezcla Inversa
Adición de la Clave
k1
Expansión de Clave
Adición de la Clave
Sustitución Inversa Etapa 9
…
Desplazamiento Inv
Sustitución
…
Desplazamiento
Etapa 9
Mezcla de Columnas
k9 Mezcla Inversa
Adición de la Clave k9
Adición de la Clave
Marcela Mejía
S-Box
19 8A FF D4 D4
33 41 53 CC
13 F8 F3 DE
25 AC A0 1A
Estado Actual Nuevo Estado Actual
Marcela Mejía
Consiste en hacer desplazamientos circulares hacia la izquierda del arreglo de estado actual, la cantidad
de veces que indique la fila así:
Fila 0 S0,0 S0,1 S0,2 S0,3 S0,0 S0,1 S0,2 S0,3 0 Bytes desplazados
Fila 1 S1,0 S1,1 S1,2 S1,3 S1,1 S1,2 S1,3 S1,0 1 Byte desplazado
Fila 2 S2,0 S2,1 S2,2 S2,3 S2,2 S2,3 S2,0 S2,1 2 Bytes desplazados
Fila 3 S3,0 S3,1 S3,2 S3,3 S3,3 S3,0 S3,1 S3,2 3 Bytes desplazados
Marcela Mejía
Columna actual Nueva Columna
Marcela Mejía
Marcela Mejía
Marcela Mejía
k0 k4 k8 k12 Etapas Ci
K k1 k5 k9 k13 1 -10 1 2 4 8 10 20 40 80 1B 36
11-20
k2 k6 k10 k14 21-30
6C D8 AB 4D 9A 2F 5E BC 63 C6
k3 k7 k11 k15 97 35 6A D4 B3 7D FA EF C5 91
Ci
S
S
Ki-1
S
S
Ki
Marcela Mejía
ECB (Electronic Code Book)
• Al cifrar dos bloques idénticos la salida será la
Texto plano xi
misma.
n bits
K Descifrador
n bits
Marcela Mejía
CBC (Cipher Block Chaining)
CIFRADO
x1 x2 xn
IV Cn-1
y1 y2 yn
• Este modo obtiene distintos textos cifrados para el mismo texto plano
• Las dos partes que se quieren comunicar necesitan conocer tanto la clave como el vector de
inicialización (IV).
Marcela Mejía
CBC (Cipher Block Chaining) ….
DESCIFRADO
x1 x2 xn
K
K Descifrador Descifrador K Descifrador
IV Cn-1
y1 y2 yn
Marcela Mejía
CFB (Cipher FeedBack)
• El tamaño del flujo a cifrar puede ser variable hasta el tamaño máximo del bloque del cifrador a utilizar
CIFRADO
IV
s bits
Registro de Desplazamiento Registro de Desplazamiento
n bits n bits – s | s bits
n bits n bits
K Cifrador K Cifrador
n bits n bits
Selecciona Descarta Selecciona Descarta
S bits | n - s bits S bits | n - s bits
s bits
x1 xn
s bits …
y1 yn
Marcela Mejía
CFB (Cipher FeedBack)…
DESCIFRADO
IV
s bits
Registro de Desplazamiento Registro de Desplazamiento
n bits n bits – s | s bits
n bits n bits
K Cifrado K Cifrado
n bits n bits
Selecciona Descarta Selecciona Descarta
S bits | n - s bits S bits | n - s bits
s bits
y1 … yn
s bits
x1 xn
Marcela Mejía
CTR (Counter)
Contador Contador + ( i – 1)
n bits n bits
K Cifrador … K Cifrador
n bits n bits
Texto plano x1 Texto plano xi
n bits n bits
Para evitar la realimentación con el texto cifrado de la etapa anterior, este método utiliza un contador para dar el
valor de entrada inicial que cada bloque de cifrado necesita, permitiendo el funcionamiento en paralelo
Marcela Mejía
Marcela Mejía