Вы находитесь на странице: 1из 21

Introduccin a la

Criptografia

Descripcin

Conceptos bsicos y Terminologa

Fundamentos Matemticos

Fundamentos de Criptografia

Conceptos bsicos y Terminologa

Definicin de Criptografa

Ciencias usadas en Criptografa

Conceptos en Criptografa

Historia de la Criptografa

Conceptos Basicos

Definicin de Criptografa

Las races etimolgicas de la palabra criptografa son:


z
z

kriptos, que significa oculto, y


graphos, que se traduce como escribir,

Lo que da una clara idea de su definicin clsica:

Arte de escribir mensajes en clave secreta o


enigmticamente.

Fue considerada un arte

Hasta que Shannon public en 1949 la Teora de las


comunicaciones secretas. Entonces la criptografa empez
a ser considerada una ciencia aplicada

Ciencias usadas en Criptografa


Teora de la informacin

Estadstica

Teora de nmeros

CRIPTOGRAFA

Teora de la complejidad

Tecnologas de la informacin
y de las comunicaciones

Conceptos en Criptografa

Criptografa.- es la tcnica de convertir el texto inteligible,


texto claro (plaintext) en otro llamado criptograma
(ciphertext)

Criptograma.- su contenido es igual al anterior pero solo se


entienden las personas autorizadas.

Criptoanlisis.- es la tcnica de descifrar un criptograma


sin tener autorizacin.

Criptologa.- es el conjunto de dos tcnicas


complementarias: la Criptografa y el Criptoanlisis.

Historia de la Criptografa

El primer uso de la escritura secreta de que se tiene


constancia data del siglo v a. C., durante la guerra
entre Atenas y Esparta. el cifrado conocido como
esctala se basaba nicamente en la alteracin del
mensaje mediante la escritura de los smbolos.

poca de los romanos. El cifrado en ese caso consista


en una sustitucin de determinados smbolos por otros
segn una regla fija.

En el siglo XIV la obra ms antigua que existe sobre


criptografa. Se titula Lber Zifrorum y su autor, Cicco
Simoneta.

Historia de la Criptografa

cont..

En el siguiente siglo, Alberti (1404-1472) destaca en el


campo del criptoanlisis, siendo considerado por ello
el padre de la cristologa

El mayor desarrollo de la criptologa tuvo lugar durante


las dos guerras mundiales.

En la primera guerra fue fundamental la ruptura por


parte de los aliados britnicos del conocido como
telegrama Zimmermann.

En la segunda guerra mundial, la mquina de cifrado


alemana Enigma fue rota por la oficina criptoanaltica
britnica capitaneada por el matemtico Alan Turing

Conceptos Bsicos

La teora de la informacin estudia el proceso de la


transmisin ruidosa:
canal ruidoso

mensaje transmitido ============== > mensaje recibido

La Criptografa estudia el proceso de cifrado de un


texto
transformacin criptogrfica
texto original ================== > texto cifrado

Teora de la informacin se intenta transmitir el


mensaje lo ms claro posible, mientras que en
criptografa se trata de lo contrario.

Alternativamente se puede utilizar la codificacin

Conceptos Bsicos

Se llama cifrado (o transformacin criptogrfica) a una


transformacin del texto original (llamado tambin
texto inicial o texto claro) que lo convierte en el
llamado texto cifrado o criptograma.

Cada una de estas transformaciones est determinada


por un parmetro llamado clave.

Cada una de estas transformaciones est determinada


por un parmetro llamado clave.

La familia de transformaciones criptogrficas se llama


sistema criptogrfico.

Fundamentos Matemticos

Fundamentos Matemticos ?

Fundamentos Matemticos
Espacio de Claves

M
Emisor

C = Tk(M)

M
Receptor

Intruso

Fundamentos Matemticos

En teora, el sistema criptogrfico se puede describir como:

T = {T k : l n < }
n

Siendo Tkn(x)=y, donde y es la n-palabra cifrada que


corresponde a la n-palabra original x.

Suposiciones:
z

Tkn es biyectiva

Se usa el mismo alfabeto

Se define el cifrado de todas las posibles palabras

Cada n-palabra se cifra en una n-palabra (no cambia


longitud del texto original)

Fundamentos Matemticos

0
1
2
3
.
.
.
25

Ejemplo: Las sustituciones Tk(n) se definen segn el alfabeto francs


A
A
B
C
D
.
.
.
Z

B
B
C
D
E
.
.
.
A

C
C
D
E
F
.
.
.
B

D E
D E
E F
F G
G H
. .
. .
T.= {Tk
.
C D

F GH I
FGH I
GH I J
H I J K
I J K L
. . . .
. . . .
:.l .n <
.} .
E F G H

J K L MN
J K L MN
KL MN O
L MN O P
MN O P Q
. . . . .
. . . . .
. . . . .
I J K L M

O
O
P
Q
R
.
.
.
N

P
P
Q
R
S
.
.
.
O

Q
Q
R
S
T
.
.
.
P

R
R
S
T
U
.
.
.
Q

S
S
T
U
V
.
.
.
R

T U V WX
T U V WX
U V WX Y
V WX Y Z
WX Y Z A
. . . . .
. . . . .
. . . . .
S T U VW

Y
Y
Z
A
B
.
.
.
X

Z
Z
A
B
C
.
.
.
Y

Una vez elegida la clave, por ejemplo 3, la transformacin


T3
A) D, B) E, C ) F, D ) G,...
T3(TEMA)= WHPD

Conceptos Bsicos

Los sistemas criptogrficos T se pueden describir de una forma


alternativa segn la teora de grafos
X[1]

Y[1]

X[2]

Y[2]

X [mn]

Y [mn]

Clasificacin de los Criptosistemas


Clasificacin de los criptosistemas:

Segn el tratamiento del mensaje se dividen en:


z

Cifrado en bloque (DES, IDEA, RSA) 64-128 bits

Cifrado en flujo (A5, RC4, SEAL) cifrado bit a bit

Segn el tipo de claves se dividen en:


Cifrado con clave secreta Sistemas simtricos
Cifrado con clave pblica Sistemas asimtricos

Sistema de cifrado
Cualquier medio de transmisin es inseguro
Medio de
Transmisin

Transmisor
M

MT

Mensaje cifrado

Descifrador

T
Cifrador

Receptor
C

Confidencialidad
Usurpacin de identidad

Interceptacin del mensaje

Integridad

por un intruso (I)

por un intruso (I)

Estos dos principios de la seguridad informtica, el de la


confidencialidad y la integridad, (adems de la disponibilidad y
el no repudio) sern muy importantes en un sistema de
intercambio de informacin segura a travs de Internet.

Sistemas de encriptacin

Medio de
Transmisin

Transmisor
M

Receptor

MT

Cifrador

Mensaje cifrado

Descifrador

Usurpacin de identidad
por un intruso

Interceptacin del mensaje


por un intruso

Sea cual sea el medio de transmisin (enlace, red telefnica, red de


datos, disco magntico, disco ptico, etc.) ste ser siempre y por
definicin inseguro y habr que adaptarse a este medio. Esto podra
dejar de ser cierto en los futuros sistemas con criptografa cuntica.

Esquema de un criptosistema
Texto
Base

Transmisor

Receptor
Texto cifrado

Cifrador

Descifrador

C
K

Texto
Base

Clave

Clave

Canal inseguro

Un espacio de Textos en Claro M


Un espacio de Textos Cifrados C
Un espacio de Claves K
Unas transformaciones de Cifrado EK(M) y de Descifrado DK (C)

Funciones y operaciones de cifrado

C = E(M)

M = D(C)

M = D(E(M))
Si se usa una clave k:

C = E(k,M) o Ek(M)

M = D(k, E(k,M))

M = D(kD, E(kE,M))

E: Cifrado del mensaje M


D: Descifrado del criptograma C
Las operaciones D y E son
inversas o bien lo son las
claves que intervienen. Esto
ltimo es lo ms normal, con
los inversos dentro de un
cuerpo finito. Por lo tanto, se
recupera el mensaje en claro.

En este ltimo caso los algoritmos E y D son iguales

10

Espacio de mensajes M
M = {m1, m2, ..., mn}

Est muy claro que esto


es un texto en claro...
z

z
z

Componentes de un mensaje inteligible (bits, bytes,


pixels, signos, caracteres, etc.) que provienen de un
alfabeto previamente establecido como en el ejemplo.
El lenguaje tiene unas reglas sintcticas y semnticas.
En algunos casos y para los sistemas de cifra clsicos
la longitud del alfabeto indicar el mdulo en el cual se
trabaja. En los modernos, no guarda relacin.
Habr mensajes con sentido y mensajes sin sentido

Espacio de textos cifrados M


VjbmljYSB3kZSBNYWRy+
WQgQ0ExLTAr8BgN...

C = {c1, c2, ..., cn}

Normalmente el alfabeto es el mismo que el utilizado para


crear el mensaje en claro.
Supondremos que el espacio de los textos cifrados C y el
espacio de los mensaje M (con y sin sentido) tienen igual
magnitud.
En este caso, a diferencia del espacio de mensajes M,
sern vlidos todo tipo de criptogramas.

11

Espacio de claves K

K = {k1, k2, ..., kn}

Si el espacio de claves K es tan grande como el de los


mensajes M, se obtendr un criptosistema con secreto
perfecto.
Se supone que es un conjunto altamente aleatorio de
caracteres, palabras, bits, bytes, etc., en funcin del sistema
de cifrado. Al menos una de las claves en un criptosistema
se guardar en secreto.

Transformaciones de cifrado E
Ek: M C

kK

Ek es una aplicacin con una clave k, que est en el espacio


de claves K, sobre el mensaje M y que lo transforma en el
criptograma C.
Es el algoritmo de cifrado. Slo en algunos sistemas
clsicos el algoritmo es secreto. Por lo general el algoritmo
de cifra ser de dominio pblico y su cdigo fuente debera
estar disponible en Internet.

12

Transformaciones de descifrado D
Dk: C M

kK

Dk es una aplicacin con una clave k, que est en el espacio


de claves K, sobre el criptograma C y que lo transforma en
el texto en claro M.
Se usa el concepto de inverso. Dk ser la operacin inversa
de Ek o bien -que es lo ms comn- se usa la misma
transformacin Ek para descifrar pero con una clave k que
es la inversa de k dentro de un cuerpo.

Criptosistema de clave secreta

Clave

Clave

M
Texto
Base

Medio de
Transmisin

Cifrado

MT

Descifrado

Ek

Mensaje cifrado

Dk

Texto
Base

Clave
nica

Cifrado: Ek

Descifrado: Dk

13

Requisitos de un criptosistema
z
z

z
z

Algoritmo de cifrado y descifrado rpido y fiable.


Posibilidad de transmitir ficheros por una lnea de datos,
almacenarlos o transferirlos.
No debe existir retardo debido al cifrado o descifrado.
La seguridad del sistema deber residir solamente en el
secreto de una clave y no de las funciones de encriptacin.
La fortaleza del sistema se entender como la imposibilidad
computacional (tiempo de clculo en aos que excede
cualquier valor razonable) de romper el criptograma o
encontrar la clave secreta a partir de otros datos de carcter
pblico.

Recomendaciones de Bacon

Filsofo y estadista ingls del siglo XVI


z

Dado un texto en claro M y un algoritmo de cifra Ek, el


clculo de Ek(M) y su inversa debe ser sencillo.
Ser imposible encontrar el texto en claro M a partir del
criptograma C si se desconoce la funcin de descifrado Dk.
El criptograma deber contener caracteres distribuidos para
que su apariencia sea inocente y no d pistas a un intruso.

Teniendo en cuenta los siglos trascurridos desde estas


afirmaciones, stas siguen siendo vlidas hoy en da.

14

Recomendaciones de Kerchoffs

Profesor holands en Pars del siglo XIX


z

K1: El sistema debe ser en la prctica imposible de


criptoanalizar.
K2: Las limitaciones del sistema no deben plantear dificultades a
sus usuarios.

K3: Mtodo de eleccin de claves fcil de recordar.

K4: Transmisin del texto cifrado por telgrafo.

K5: El criptgrafo debe ser portable.

K6: No debe existir una larga lista de reglas de uso.


Al igual que en el caso anterior, siguen siendo vlidas.

Fortaleza: tipos de ataque

Conociendo el algoritmo de cifra, el criptoanalista intentar


romper la cifra:
1. Contando nicamente con el criptograma.
2. Contando con texto en claro conocido.
3. Eligiendo un texto en claro.

Mayor
trabajo

4. A partir de texto cifrado elegido.


ATAQUE POR FUERZA BRUTA

5. Buscando combinaciones de claves.

15

Clasificacin de los criptosistemas

Sistemas de encriptacin: clsicos


vs. modernos
z Clasificacin histrica y cultural
(no tcnica).
Sistemas de encriptacin: en
bloque v/s en flujo
z Clasificacin de acuerdo a cmo
se produce la cifra.

Sistemas con clave: secreta vs. pblica


Clasificacin de acuerdo al uso de una nica clave
secreta (simtricos) o bien con dos claves, una de ellas
pblica y la otra privada (asimtricos).

Cifrado en bloque y en flujo

CIFRADO EN BLOQUE:
z

El mismo algoritmo de encriptacin se aplica a un bloque de


informacin (grupo de caracteres, nmero de bytes, etc.)
repetidas veces, usando la misma clave. El bloque ser
normalmente de 64 128 bits.

CIFRADO EN FLUJO:
z

El algoritmo de encriptacin se aplica a un elemento de


informacin (carcter, bit) mediante un flujo de clave en
teora aleatoria y mayor que el mensaje. La cifra se hace bit
a bit.

16

Comparativa cifrado en bloque vs. flujo


CIFRADO EN BLOQUE
Ventajas:

Desventajas:

* Alta difusin de los elementos


en el criptograma.

* Baja velocidad de cifrado al tener


que leer antes el bloque completo.

* Inmune: imposible introducir

* Propenso a errores de cifra. Un

bloques extraos sin detectarlo. error se propagar a todo el bloque.

CIFRADO EN FLUJO
Ventajas:

Desventajas:

* Alta velocidad de cifra al no

* Baja difusin de elementos en el

tener en cuenta otros elementos. criptograma.


* Resistente a errores. La cifra es * Vulnerable. Pueden alterarse los
independiente en cada elemento. elementos por separado.

Confidencialidad vs. Integridad

Vamos a ver cmo se obtienen en cada uno de estos sistemas de


encriptacion (cifrado con clave secreta y cifrado con clave pblica) los
dos aspectos ms relevantes de la seguridad informtica:

La confidencialidad y la
integridad de la informacin

Llegaremos a un concepto de mucha utilidad en


criptografa al analizar el sistema con clave pblica...

17

Confidencialidad con clave secreta

k
M

Medio de
Transmisin

Texto
Base

DDKK

MT

EK

Criptograma
protegida

Texto
Base

Protegemos el
extremo receptor
Buscamos la
confidencialidad

no permitido

intruso

El criptoanalista no podr descifrar el criptograma C o


cualquier otro texto cifrado bajo la transformacin EK.

Integridad con clave secreta

k
M
Texto
Base

Medio de
Transmisin

EEKK

MT

protegida

Criptograma

DK

M
Texto
Base

Hola... soy Paquito!

intruso

no permitido
Buscamos la
integridad

Protegemos ahora el extremo emisor

El criptoanalista no podr cifrar un texto en claro M y


enviarlo al destinatario como C = EK(M).

18

Resumen para sistemas de clave secreta

Integridad
k
M
Texto
Base

Confidencialidad

Medio de
Transmisin

EEKK

MT

DDKK

protegida

Criptograma

protegida

Hola... soy Paquito!

Texto
Base

Era algo
obvio

no permitido

no permitido

La confidencialidad y la integridad se lograrn


simultneamente si se protege la clave secreta.

Confidencialidad con clave pblica


clave pblica de B

Usuario A
M

Usuario B

C
MT

EB

Texto
Base

clave privada de B

Medio de
Transmisin

Criptograma

Observe que se cifra


con la clave pblica
del usuario receptor
Buscamos la
confidencialidad

C = EB(M)
M = DB(C) = DB(EB(M))

DDBB

protegida

Texto
Base

M no permitido

intruso

Cadausuario
usuariousa
usa
Cada
dosfunciones:
funciones:una
una
dos
otra
pblicaEEXyyotra
pblica
privadaDDXX. .
privada
X

EB y DB son operaciones
inversas dentro de un cuerpo

19

Integridad con clave pblica


clave privada de A

Usuario A

Usuario B

EA

MT

DAA

Texto
Base

clave pblica de A

Medio de
Transmisin

Texto
Base

Criptograma

protegida

Observe que se cifra


con la clave privada
del usuario emisor

Hola... soy Paquito


otra vez!

no permitido
Buscamos la
integridad

intruso

C = DA(M)
M = EA(C) = EA(DA(M))

DA y EA son operaciones
inversas dentro de un cuerpo

Resumen para sistemas con clave pblica


K privada
de A
M

DA

K pblica
de B

K privada
de B

K pblica
de A

DDBB

EA

EB

Usuario A

M
Usuario B

Confidencialidad
Integridad
La integridad y la confidencialidad se
obtendrn ahora por separado ...

C = EB(DA(M))
M = EA(DB(C))

Esta caracterstica
ser muy importante

Cifrado del mensaje con firma digital


Descifrado y comprobacin de firma

20

Cuestiones de repaso
1. Un empleado poco satisfecho ha robado varios discos duros de muy
alta calidad con datos de la empresa. Qu importa ms, el costo de
esos discos o el valor de los datos? Justifique su respuesta.
2. En una empresa se comienza a planificar estrategias de acceso a las
dependencias, polticas de backup, de proteccin de los equipos ante
fuego, agua, etc. Eso es seguridad fsica o lgica? Por qu?
3. En nuestra empresa alguien usa software pirata. Es una amenaza de
interrupcin, interceptacin, modificacin o de generacin?
4. Una clave de sesin en Internet para proteger una operacin de cifra
dura 45 segundos. Si alguien intercepta el criptograma, debemos
preocuparnos si sabemos que la prxima vez la clave ser otra?
5. Si se prueban todas las combinaciones posibles de una clave para
romper un criptograma, qu tipo de ataque estamos realizando?

Cuestiones de repaso

(cont.)

6. Si protegemos una clave en el extremo emisor, qu buscamos, la


confidencialidad o la integridad? Y si es en el extremo receptor?
7. Por qu en un sistema simtrico se obtiene la confidencialidad y la
integridad al mismo tiempo protegiendo la clave?
8. Explique qu significa que en un sistema de cifra asimtrica se
obtengan la confidencialidad y la integridad por separado.
9. Si se cifra un mensaje con la clave privada del emisor, qu se
obtiene? Y si el emisor cifra con la clave pblica del receptor?
10. Tiene sentido que el emisor cifre de forma asimtrica con su clave
pblica? Qu logramos con ello? Para qu servira?
11. Queremos comunicarnos 10 usuarios con un sistema de cifra de
clave secreta nica entre cada dos miembros. Cuntas claves sern
necesarias? Es eficiente el sistema? Y si hay un usuario ms?

21