Criptosistemas Simtricos

Descargar como pdf o txt
Descargar como pdf o txt
Está en la página 1de 23

 Simétricos

Algoritmo Texto cifrado Algoritmo de


Texto Plano de cifrado descifrado Texto Plano

??
k k

Requerimientos para el uso seguro del cifrado simétrico:

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

Un cifrador por bloques es un esquema de cifrado/descifrado,


en el cual un bloque de texto plano es tratado como un todo y
utilizado para producir un bloque de texto cifrado de la misma
longitud.

Estos cifradores de bloques son cifradores de producto o


iterados que contienen varias etapas. En cada una se lleva a
cabo un proceso de sustitución seguido de un proceso de
permutación, de acuerdo con la función de etapa.

Cada etapa utiliza una clave diferente ki, generada a partir de


la expansión de la clave original k.

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

Tomada de KAUFMAN CHARLIE, Network security

Marcela Mejía
32 bits 32 bits

Li-1 Ri-1 Li = Ri-1


Ri = Li-1 f(Ri-1, ki )
F ki
48 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

𝑦 = 𝑒𝑘3 𝑑𝑘2 𝑒𝑘1 𝑥

K3 K2 K1

y x
DES descifrado DES cifrado DES descifrado

𝑥 = 𝑑𝑘1 𝑒𝑘2 𝑑𝑘3 𝑦

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:

• Cifra texto plano en bloques de 128 bits


• Longitud de clave variable
• Número de etapas variable con la clave
• La clave de etapa tiene longitud 128 bits
• El cifrador es diferente al descifrador
• Las operaciones están orientadas a bytes

CIFRADOR Longitud Clave Numero Etapas


AES – 128 128 bits 10
AES – 192 192 bits 12
AES - 256 256 bits 14

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.

Estructura del texto Plano Estado Actual


X0 X4 X8 X12 Salida de la
S0,0 S0,1 S0,2 S0,3
etapa i-1
X1 X5 X9 X13 S1,0 S1,1 S2,1 S3,1
X2 X6 X10 X14 S2,0 S2,1 S2,2 S2,3
X3 X7 X11 X15 Ki S3,0 S3,1 S3,2 S3,3

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

Etapa 10 Sustitución Sustitución Inversa Etapa 1


Desplazamiento Desplazamiento Inv.
k10 k10
Adición de la Clave Adición de la Clave

Texto Cifrado Texto Cifrado

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

Este proceso se repite para


cada columna del estado
actual

Tomada de KAUFMAN CHARLIE, Network security

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

• No es aconsejable para mensajes largos y


K Cifrador estructurados, por la información dada al
n bits
criptoanalista.

Texto Cifrado yi • Es seguro para la transmisión de un único valor


ECB CBC
Texto Cifrado yi
n bits

K Descifrador
n bits

Texto Plano xi Tomado de wikipedia

Marcela Mejía
 CBC (Cipher Block Chaining)

CIFRADO

x1 x2 xn

IV Cn-1

K Cifrador K Cifrador K Cifrador

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

Texto Cifrado y1 Texto Cifrado yi

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

También podría gustarte