Vous êtes sur la page 1sur 45

Encriptación Simétrica,

Asimétrica e Híbrida

Presentado por: Sang Guun Yoo, Ph.D.


Objetivos de la Clase
• Al final de la clase, usted podrá responder:
– ¿Cuáles son los objetivos principales de la seguridad?
– ¿Qué es la encriptación y cómo ésta puede asegurar
algunos de los objetivos de la seguridad?
– ¿Cuáles son los diferentes tipos de encriptación y cómo
es el funcionamiento de cada uno de ellos?
Contenido de la Clase

Objetivos de la Tipos de Encriptación


Encriptación Híbrida
Seguridad Encriptación

Encriptación
Simétrica
Encriptación
Encriptación Híbrida
Objetivos de
y conceptos (Sobre
la Seguridad Encriptación
básicos Digital)
Asimétrica (de
llave pública)
Beneficios de la Encriptación
• A través de la encriptación puedo garantizar:
– Confidencialidad
– Integridad (en parte)

Seguridad

Disponibilidad
Conceptos Básicos de Encriptación

• Encriptación es el proceso mediante el cual cierta información es cifrada


(transformada) de forma que el resultado sea ilegible a menos que se
conozcan los datos necesarios para su interpretación.

Clave Clave
Secreta Docum. Docum.
Secreto Secreto Secreta

Bob Alice

La encriptación
garantiza la
confidencialidad de
la información
Atacante
Conceptos Básicos de Encriptación

• Encriptación es el proceso mediante el cual cierta información es cifrada


(transformada) de forma que el resultado sea ilegible a menos que se
conozcan los datos necesarios para su interpretación.

Clave Docum.
Clave
Secreta Secreto Secreta

Bob Alice

Modifi-
La encriptación
cado ayuda verificar la
integridad del
mensaje
Atacante
Conceptos Básicos de Encriptación

Clave Docum. Docum. Clave


Secreta Secreto Secreto Secreta

Bob Alice

Definiciones
Docum. Clave
Secreto Secreta

Texto en Texto cifrado Llave


claro (encriptado)

Docum. Docum.
Secreto Encriptación Secreto Desencriptación
Tipos de Encriptación

1 llave compartida
entre los usuarios

Simétrica
(privada)
Encriptación
Asimétrica
(de llave pública)

2 llaves por usuario:


- 1 pública
- 1 privada (secreta)
Encriptación Simétrica

Idea Principal:
Una sola llave compartida
Encriptación Simétrica

• Descifre la siguiente frase

CJFÑWFÑJEPT UPEPT
Encriptación Simétrica

• Descifre la siguiente frase

CJFÑWFÑJEPT UPEPT

BIENVENIDOS TODOS
Secreto: Para decodificar, seleccionar la
letra anterior del alfabeto
Encriptación Simétrica
• Fue el único tipo de encriptación hasta fines de 1970
(cuando se inventó la encriptación de llave pública)
• Es más rápido que la encriptación asimétrica
• Se usa la misma llave para encriptar y para desencriptar
(la razón de su nombre)
Llave

Docum. Docum.
Secreto Secreto

Algoritmo de
Algoritmo de
desen-
Encriptación
criptación

Bob Alice
Encriptación Simétrica

• Una ejemplo básico de encriptación


simétrica: utilización de XOR
Texto 10001100
Texto en 01 0 0 0 0 0 1 Letra “A” en
cifrado
claro: ASCII
(Texto XOR
Llave: 11001101 Llave)
Texto 10001100 Letra “Œ” en Llave: 11001101
cifrado ASCII
(Texto XOR Texto en 01000001
Llave) claro:

Texto cifrado:
10001100

Bob Alice
Encriptación Simétrica
• Algoritmos de Encriptación Simétrica más
usados
Algoritmo Tamaño de la llave Usado en
AES El más usado en la
(Advanced Encryption 128, 192, 256 bits actualidad (estándar para la
Standard) mayoría de productos)
Usado en el protocolo WEP
RC4 40 - 2048 bits de la red inalámbrica (WiFi)
Triple DES Usado por Microsoft para
(Triple Data Encryption 112, 168 bits encriptar contenido en
Standard) OneNote y Outlook
Usado en dispositivos
Blowfish 1 - 448 bits ligeros. No es muy usado
en la actualidad
Encriptación Simétrica
• Dos tipos de ataques:
– Criptoanálisis
• Analiza la naturaleza del algoritmo para determinar la llave o
el mensaje
– Ataque de Fuerza Bruta (Brute Force attack)
• Intenta repetidamente hasta descifrar el mensaje

Tamaño de la Número de Tiempo requerido Tiempo requerido (si


Llave combinación de llaves (si 1 desencriptación por 106 desencriptaciones
(en bits) s) por s)
32 232 232 s = 71.5 min 1.54 horas
56 256 256 s = 2316.6 años 50.04 horas
128 2128 2128 s=1.09 x 1025 años 1.09 x 1019 años
168 2168 2168 s=1.2 x 71037 años 1.2 x 1031 años
Encriptación Simétrica

• Un simple ejercicio de encriptación /


desencriptación
– AES Crypt: Una aplicación simple que permite
encriptar archivos
• https://www.aescrypt.com/
Encriptación Simétrica

• Existen 3 requerimientos
– Un algoritmo seguro de encriptación/desencriptación
– Una llave segura (difícil de adivinar)
– El transmisor y el receptor deben compartir la llave de
manera segura ¿Cómo asegurar esto?
Llave Llave

Algoritmos Algoritmos
seguro seguro
(p.ej.: AES) (p.ej.: AES)
Bob Alice
Seúl - Corea Quito - Ecuador

Atacante
Encriptación Asimétrica
(Encriptación de Llave Pública)

Idea Principal:
Usa 2 llaves: 1 pública y 1 privada
Encriptación Asimétrica
• Encriptación asimétrica elimina el problema de compartir la llave
secreta de manera segura
– Cada usuario crea su propia llave pública y privada
– Comparte la llave pública (no es secreto)
– Guarda la llave privada (sí es secreto)
• Supongamos que Bob quiere enviar información confidencial a Alice

PúblicaAlice
PúblicaAlice
PúblicaAlice

Bob Alice
PrivadaAlice
PúblicaAlice

Atacante
Encriptación Asimétrica
• Para envío de mensajes:
– El transmisor usa la llave pública del receptor para encriptar
– El receptor usa su llave privada para desencriptar

Docum. Docum.
PúblicaAlice
Secreto PrivadaAlice Secreto

Algoritmo de Algoritmo de
Encriptación des-
Asimétrica encriptación
Bob Alice

PúblicaAlice

Atacante
Encriptación Asimétrica

• Algoritmos de Encriptación Asimétrica


– RSA
• Desarrollado por Ron Rivest, Adi Shamir y Len
Adleman en MIT en 1977 (publicado en 1978)
• El más utilizado hasta el momento
– Elliptic Curve Cryptography (ECC)
• Un algoritmo que intenta solucionar las limitaciones
del RSA (lentitud y tamaño de las llaves)
• Su popularidad está en crecimiento
Encriptación Híbrida
Idea Principal:
Mezcla la encriptación simétrica y
asimétrica
Encriptación Híbrida / Sobre Digital
• Encriptación simétrica
– Ventaja: Es rápido
– Desventaja: Es difícil compartir de manera segura la llave secreta
• Encriptación asimétrica (de llave pública)
– Ventaja: Resuelve el problema de compartición de llaves, usando
la llave pública
– Desventaja: Es lenta

RSA

AES
Encriptación Híbrida / Sobre Digital
• Combinación de las encriptaciones simétrica y asimétrica

Docum. Encriptación Desencriptación Docum.


Secreto Simétrica Simétrica Secreto

Llave
simétrica Llave
Llave
randómica Encriptación Desencriptación simétrica
simétrica
Asimétrica randómica
Asimétrica randómica

PrivadaAlice

Bob
PúblicaAlice Alice
Resumen
1. Objetivos de la Seguridad

Encriptación

Seguridad

1 llave 2 llaves por usuario:


compartida entre - 1 pública
Disponibilidad los usuarios - 1 privada (secreta)

2. Tipos de Encriptación
Simétrica
(privada)
Encriptación Híbrida
Asimétrica (Sobre Digital)
(de llave pública)
Pensamiento para la Próxima Clase

• ¿Es todo perfecto con la solución híbrida?


• Problema: ¿Cómo Bob puede estar seguro que
la llave pública que recibió es de Alice y no del
atacante?
Soy Alice!!!

PúblicaAlice
PúblicaAlice
PúblicaAlice
PrivadaAlice
Bob Atacante
Ejercicio
• El padre desea que el testamento pueda ser leído cuando los tres
hijos estén reunido.
• Utilice los conceptos de criptografía aprendidos para lograr esto

Hijo 1 Hijo 2 Hijo 3

Testamento
Encriptado
Algoritmo RSA
Algoritmo RSA
• El nombre se debe a sus inventores:
Algoritmo RSA

• Publicado en:
Algoritmo RSA
• Por primera vez, los autores mencionados, a través de la
publicación mencionada dieron la siguiente idea
PubKeyAlice PriKeyAlice

Mensaje Mensaje

Mensaje encriptado
Algoritmo de Algoritmo de
Encriptación des-
Asimétrica encriptación

PriKeyAlice PubKeyAlice

Mensaje Mensaje

Mensaje encriptado
Algoritmo de Algoritmo de
Encriptación des-
Asimétrica encriptación
Algoritmo RSA

• Idea básica
– La multiplicación de números inversos es siem
pre igual a cero

– Ejemplo:
• Mensaje = 7
• 7 x 328 = 2296 (El número 7 está oculto)
• 2296 x =7
Algoritmo RSA
• En RSA
– Encriptación: me mod n = c
– Decriptación: cd mod n = m
• m = mensaje
• c = mensaje cifrado
• (me mod n)d mod n = m
– Llave pública = (e, n)
– Llave privada = d
Algoritmo RSA
• En RSA
– Está basado en Prime Factorization
(multiplicación de números primos)
• 15 = 3 * 5
• 255 = 3 * 5 *17
• Es difícil: #primo1 * #primo2 = 6,700,283
• Es fácil multiplicar 2 números primos: 1889
* 3547 = 6,700,283
Algoritmo RSA

• Un ejemplo de Llave Pública (4096 bits)


Algoritmo RSA

• Un ejemplo de Llave Pública (4096 bits)

#primo1 * #primo2 =
Algoritmo RSA
• Encriptación: me mod n = c
• Decriptación: cd mod n = m
– m = mensaje
– c = mensaje cifrado
• Ejemplo (Ejercicio en clase)
– m = 42
– p = 61, q = 53, e =17
– n = 3233, d=2753
– Calcular c (encriptación)
– Calcular m en base a c (decriptación)
Algoritmo RSA
• Encriptación: me mod n = c
• Decriptación: cd mod n = m
– m = mensaje
– c = mensaje cifrado
• Ejemplo (Ejercicio en clase)
– m = 42 https://www.wolframalpha.com
– p = 61, q = 53, e =17 /
– n = 3233, d=2753
– Calcular c (encriptación)
• c=4217 mod 3233 = 2557
– Calcular m en base a c
• m=25572753 mod 3233 = 42
Algoritmo RSA
Encriptación: me mod n = c
Decriptación: cd mod n = m
m = mensaje
c = mensaje cifrado
(me mod n)d mod n = m
Llave pública = (e, n)
Llave privada = d

• Cómo calcular las Llaves e, n, d


• Pasos:
1. Escoger 2 números primos grandes (p, q) y calcular
n
2. Calcular  (Función φ de Euler)
3. Escoger exponentes e y d
Algoritmo RSA
• Cómo calcular las Llaves e, n, d
• Pasos:
1. Escoger 2 números primos grandes (p, q) y calcular n
• n=p*q
• Qué tan largo debe ser p y q? P.ej.: 2048 bits
• Ejemplo: (con números pequeños para ilustración)
– p = 5, q = 11
– n = 5 * 11 = 55
2. Calcular  (Función φ de Euler)
• (n)=(p-1)(q-1)
• Ejemplo:
– (n) = (p-1)(q-1) = (5-1) (11-1) = 40
Algoritmo RSA

• Cómo calcular las Llaves e, n, d


• Pasos: (p=5, q=11, n=55, (n)=40)
3. Escoger exponentes e y d
• Se escoge un entero positivo e que
1<e<(n)
• e y (n) deben ser coprimos
– (n) no puede ser divisible por e
• Ejemplo:
–e = 7
Algoritmo RSA

• Cómo calcular las Llaves e, n, d


• Pasos: (p=5, q=11, n=55, (n)=40, e=7)
3. Escoger exponentes e y d
• Encontrar d que satisfaga e * d mod (n) = 1
d1 (n) = 40 d2 (n)=40 d1 7 d2 1
d3 e=7 d4 1 d3 5 d4 35
d5 d1/d3= 40/7 = 5 (sin decimales) d5 d1/d3= 7/5 = 1 (sin decimales)
d6 d5*d3= d7 d5*d4= d6 d5*d3= d7 d5*d4=
5*7 = 35 5*1 = 5 1*5=5 1*35=35
d8 d1-d6= d9 d2-d7= d8 d1-d6= d9 d2-d7=
40–35= 5 40–5=35 7–5= 2 1–35=-34
5 35 2 Cuando es númer
o negativo:
-34 mod (n) = 6
Algoritmo RSA

• Cómo calcular las Llaves e, n, d


• Pasos: (p=5, q=11, n=55, (n)=40, e=7)
3. Escoger exponentes e y d
• Encontrar d que satisfaga e * d mod (n) = 1
d1 7 d2 1 d1 5 d2 35
d3 5 d4 35 d3 2 d4 6
d5 d1/d3= 7/5 = 1 (sin decimales) d5 d1/d3= 5/2 = 2 (sin decimales)
d6 d5*d3= d7 d5*d4= d6 d5*d3= d7 d5*d4=
1*5=5 1*35=35 2*2=4 2*6=12
d8 d1-d6= d9 d2-d7= d8 d1-d6= d9 d2-d7=
7–5= 2 1–35=-34 5–4= 1 35–12=23
2 Cuando es númer Cuando es 1, d=23
o negativo: Finalizado.
-34 mod (n) = 6 d9 es d
Algoritmo RSA
• Cómo calcular las Llaves e, n, d
• Pasos: (p=5, q=11, n=55, (n)=40, e=7, d=23)
– Llave pública (e, n)
– Llave privada (d)
– Encriptación: me mod n = c
– Decriptación: cd mod n = m
• m = mensaje
• c = mensaje cifrado
– Ejemplo (Ejercicio en clase)
• m = 42
Encriptación con llave pública Encriptación con llave privada
c=427 mod 55 = 48 c=4223 mod 55 = 3
m=4823 mod 55 = 42 m=37 mod 55 = 42
Material Bibliográfico

• Libros
– W. Stallings, L. Brown, “Computer Security Principles and Practice”,
2nd Edition
– Network Security: Private Communication in a Public Work, 2nd
Edition
– W. Stallings, “Cryptography and Network Security Principles and
Practice”, 6th Edition
• Artículos
– J. Thakur et al., “DES, AES and Blowfish: Symmetric key cryptography
algorithms simulation based performance analisys”, International
Journal of emerging technology and Innovative Research, 2011
– A. Naddem et al., “A performance Comparison of Data Encryption
Algorithms”, Conference on Information and communication
technologies, 2005

Vous aimerez peut-être aussi