sdc criptografía sistemas clasicos

53
1 Criptografía Conceptos y ejemplos de Criptografía Clásica Rosa Muñoz Calanchie, PhD

Upload: pablitoplx

Post on 13-Apr-2016

26 views

Category:

Documents


0 download

DESCRIPTION

mknkjnjknj

TRANSCRIPT

Page 1: SdC Criptografía Sistemas Clasicos

1

Criptografía

Conceptos y ejemplos de Criptografía

Clásica

Rosa Muñoz Calanchie, PhD

Page 2: SdC Criptografía Sistemas Clasicos

2

Conceptos Básicos

TEXTO PLANO

• Se llamará texto plano al texto que se quiere proteger mediante el uso de técnicas criptográficas.

• Se denotara a este conjunto como “M”.

CRIPTOGRAMA

• Se llamará criptograma al texto que se desea proteger una vez que se ha trasformado mediante alguna técnica criptográfica. Este texto es ilegible, a no ser que se conozca la clave para volver a recuperar el texto plano original.

• Se denotara al conjunto de estos textos como “C”.

Page 3: SdC Criptografía Sistemas Clasicos

3

Conceptos Básicos

DESENCRIPTACIÓN

• Se llamará desencriptación al proceso que recupera el

texto plano de un criptograma.

CLAVES O LLAVES

• Se denotará por “K” a todo el conjunto de claves que se

puede utilizar para encriptar mensajes utilizando un

determinado sistema criptográfico.

Page 4: SdC Criptografía Sistemas Clasicos

4

Conceptos Básicos

DISPOSITIVO DE ENCRIPTACIÓN

• Se llamará dispositivo de encriptación a cualquier dispositivo que transforme un elemento de M (conjunto de textos planos) en un elemento de C (conjunto de criptogramas).

• Al conjunto de estos elementos se le denotará como “E”.

DISPOSITIVO DE DESENCRIPTACIÓN

• Se llamará dispositivo de desencriptación y se denotará como “D”, a cualquier dispositivo que transforme un elemento de C en un elemento de M.

Page 5: SdC Criptografía Sistemas Clasicos

5

Conceptos Básicos

ALFABETOS

• Tanto los textos planos como los criptogramas están formados por palabras, y estas están constituidas por símbolos. Por ejemplo las letras, números y signos de puntuación al escribir.

• Se llamarán alfabetos al conjunto de símbolos utilizados en los textos planos o en los criptogramas.

• Los símbolos utilizados en los textos planos y en los criptogramas no tienen que ser los mismos.

• Se denotará al alfabeto utilizado en los textos planos , y

al alfabeto utilizado en los criptogramas.

M , C

Page 6: SdC Criptografía Sistemas Clasicos

6

Conceptos Básicos

EL PROCESO DE ENCRIPTACIÓN

• Dado un criptosistema cualquiera (M, C, K, E, D) un dispositivo de encriptación seria, desde el punto de vista matemático, una función:

• Dado un texto plano y una clave se genera un criptograma.

:

( , ) ( , )

E M x K C x K

m k c k

Page 7: SdC Criptografía Sistemas Clasicos

7

Conceptos Básicos

EL PROCESO DE DESENCRIPTACIÓN

• Dado un criptosistema cualquiera (M, C, K, E, D) un dispositivo de desencriptación será, desde el punto de visto matemático, una función:

• Dado un criptograma y una clave recuperamos el texto plano

:

( , ) ( , )k

D C x K M x K

c k m k

Page 8: SdC Criptografía Sistemas Clasicos

8

Conceptos Básicos

FUNCIONALIDAD

• Dado un criptosistema cualquiera (M, C, K, E, D), la pregunta es la siguiente: ¿funcionan los procesos de encriptación y desencriptación?

• La respuesta es sí, pero se debe tener en cuenta en ambos procesos lo siguiente:

• Si se encripta un mensaje y luego se desencripta obtenemos el texto plano original.

( ( , )) ( , )D E m k m k

Page 9: SdC Criptografía Sistemas Clasicos

9

Conceptos Básicos

PRECAUCIONES

• Las claves han de permanecer seguras. Si se compromete la seguridad de las claves empleadas en el sistema no importa lo seguro o infranqueable que éste sea terminará por caer tarde o temprano.

• Existen ciertas claves, denominadas claves débiles, que comprometen la seguridad.

• La clave k, es una clave débil, si deja el criptograma igual que el texto plano. O muy parecido al texto plano.

( , ) ( , )k K E m k m k

Page 10: SdC Criptografía Sistemas Clasicos

10

Conceptos Básicos

PRECAUCIONES

• Otra clave débil es si al encriptar el mismo texto plano n veces consecutivas se obtiene el mismo texto plano

• En un buen criptosistema la cantidad de este tipo de claves es nula o muy pequeña, comparada con la cantidad total de claves, con lo cual la probabilidad de utilizar una de estas claves es nula o prácticamente nula.

( ) ( , ) ( , )nk K E m k m k

Page 11: SdC Criptografía Sistemas Clasicos

11

MATEMÁTICAS EN LA CRIPTOGRAFÍA

GRUPOS

• Desde el punto de vista matemático un “grupo” es un conjunto, “G”, dotado de una operación, “ ”. Llamaremos grupo al par (G, ).

• Muchas veces la operación se denotará como “+”, diciendo entonces que estamos utilizando notación “aditiva” o como “*”, diciendo entonces que estamos utilizando notación multiplicativa. Tanto “+” como “*” no tienen por que ser la suma y producto que conocemos sobre los números reales, R.

Para un grupo se debe verificar:

• Dados , cualesquiera, se tiene que

,a b G a b G.

Page 12: SdC Criptografía Sistemas Clasicos

12

MATEMÁTICAS EN LA CRIPTOGRAFÍA

Existencia de un elemento neutro:

– Utilizando notación aditiva existirá un elemento, que se denotará

0, tal que:

– Utilizando notación multiplicativa existirá un elemento, al que

denotaremos 1, tal que:

0 G y 0 + a = a + 0 = a; a G.

1 G y a * 1 = 1 * a = a; a G.

Page 13: SdC Criptografía Sistemas Clasicos

13

MATEMÁTICAS EN LA CRIPTOGRAFÍA

Para

– Utilizando notación aditiva existirá un elemento, que se denotará -a, tal que:

el elemento – a recibe el nombre de elemento negativo o opuesto.

– Utilizando notación multiplicativa existirá un elemento, al que denotaremos , tal que:

el elemento recibe el nombre de inverso.

-a G y a + (-a) = -a + a = 0; a G.

1a

1a G y 1 1* * 1a a a a ; a G.

1a

a G:

Page 14: SdC Criptografía Sistemas Clasicos

14

MATEMÁTICAS EN LA CRIPTOGRAFÍA

• Llamaremos orden de un “grupo” G y lo denotaremos como |G| al

número de elementos que posee el grupo.

• Uno de los grupos mas utilizados dentro de la criptografía es

, donde .

• Fijado un número n si dividimos por él entonces obtenemos los

siguientes restos: {0, 1, 2, …………, n-1}

• Luego obtendremos que:

• = {0, 1, 2, …………, n-1}

( Z/n,+) n Є N

( Z/n,+)

Page 15: SdC Criptografía Sistemas Clasicos

15

MATEMÁTICAS EN LA CRIPTOGRAFÍA

• El grupo , con la operación + se define de la siguiente forma:

a + b = resto de a + b al dividir por n

• Con esta suma se puede sumar cualquier número entero en Z/n, por ejemplo para n = 5 se tiene la siguiente tabla:

• Diremos que dos elementos de Z son equivalentes en Z/n o simplemente son equivalentes módulo n siempre y cuando tengan el mismo resto al dividir por n.

( Z/n,+)

0 1 2 3 4 5 6 7 8 En Z

0 1 2 3 4 0 1 2 3 En Z/n

Page 16: SdC Criptografía Sistemas Clasicos

16

Sistemas de Encriptación con Estructura de

Grupo

• Se debe tener en cuenta en los sistemas de encriptación, independientemente de si son simétricos o asimétricos, si tienen o no estructura de grupo.

• Diremos que un sistema criptográfico tiene estructura de grupo si

tal que para cualquier

se verifica que:

• Es importante que un sistema criptográfico no tenga estructura de grupo, ya que si ciframos un mensaje con una clave y luego ciframos el criptograma obtenido con otra clave entonces aumentamos la seguridad del sistema.

• Si el sistema hubiera tenido estructura de grupo no habríamos hecho nada, ya que existiría una clave que realizaría la misma operación, con lo cual no habríamos incrementado la seguridad del sistema.

1k , 2k K 3k K , m M

2 1 3( ( , ), ) ( , )E E m k k E m k

Page 17: SdC Criptografía Sistemas Clasicos

17

MATEMÁTICAS EN LA CRIPTOGRAFÍA

PERMUTACIONES

• Sea P un conjunto de n elementos. Se llamarán permutaciones de n

elementos al conjunto formado por todas las reordenaciones de

esos elementos y lo denotaremos por .

• Se supone P = {1, 2, 3}, entonces las posibles permutaciones de P

serán: (1, 2, 3); (1, 3, 2); (3, 2, 1); (2, 1, 3); (3, 1, 2); (2, 3, 1)

• Se consideran los elementos de , como aplicaciones biyectivas de

P en P:

nS

3S

~:i P P 1,2,3,4,5,6i

Page 18: SdC Criptografía Sistemas Clasicos

18

MATEMÁTICAS EN LA CRIPTOGRAFÍA

• Se utilizará la siguiente notación:

• Podemos definir una operación dentro de a esta operación se

denotará como “o” y se tendrá que ( , o) es un grupo. Esta

operación se llamará composición.

5

1 2 3

3 1 2

5 , indicará que 1 lleva a 3, 2 lleva a1 y 3 lleva a 2.

Se obtendrá por lo tanto 3S = { 1 2 3 4 5 6, , , , , }

nS

nS

Page 19: SdC Criptografía Sistemas Clasicos

19

MATEMÁTICAS EN LA CRIPTOGRAFÍA

• Sea y

• Tendremos entonces

• El orden del grupo vendrá dado por n!. De donde se deduce que

el orden de será 3! = 6.

5

1 2 3

3 1 2

nS

6

1 2 3

2 3 1

3S

5 6

1 2 3 1 2 3 1 2 3

3 1 2 2 3 1 1 2 3

Page 20: SdC Criptografía Sistemas Clasicos

20

SISTEMAS CRIPTOGRÁFICOS

• Los sistemas criptográficos los podemos clasificar según como encripten los diferentes símbolos del alfabeto que se están usando:

Monoalfabéticos:

• Son aquellos en los que cada símbolo del alfabeto se encripta siempre con el mismo símbolo, la encriptación de cada símbolo es independiente del mensaje.

• Por ejemplo todas las “B” que aparecen en el texto plano siempre aparecerán en el criptograma como “L”.

• Este tipo de sistemas son inseguros ya que se pueden romper mediante análisis estadísticos de frecuencias.

Page 21: SdC Criptografía Sistemas Clasicos

21

SISTEMAS CRIPTOGRÁFICOS

Polialfabéticos:

Son aquellos en los que cada símbolo del alfabeto no se encripta con el mismo símbolo, la encriptación depende del mensaje.

Por ejemplo las “B” que aparecen en el mensaje se encriptan unas veces con “L”, otras veces con “T”, otras veces con “˜N”.

El primer requisito para que un sistema criptográfico sea seguro es que sea polialfabético.

Page 22: SdC Criptografía Sistemas Clasicos

22

Análisis Criptográfico

• Suponiendo conocidos los algoritmos de encriptación, el criptoanálisis consiste en comprometer la seguridad de un sistema criptográfico, es decir, consiste en buscar los puntos débiles de un sistema criptográfico.

Análisis por frecuencias:

Este tipo de ataque es utilizado para romper sistemas criptográficos simétricos y se basa en estudiar la frecuencia con la que aparecen los distintos símbolos en un lenguaje determinado y luego estudiar la frecuencia con la que aparecen en los criptogramas, y de esta manera establecer una relación y obtener el texto plano.

Page 23: SdC Criptografía Sistemas Clasicos

23

CIFRADORES DE SUSTITUCIÓN

• Los símbolos del texto plano se reemplazan por un sustituto fijo, es decir, consiste en cambiar los caracteres componentes del mensaje original en otros según una regla determinada de posición natural en el alfabeto.

Dos tipos de algoritmos de sustitución:

• Sustitución Monoalfabética: A cada letra del alfabeto ordinario se le hace corresponder un símbolo y el mensaje se cifra cambiando las letras iniciales por su equivalente, si a la letra A le asignamos el símbolo "@" en el mensaje cifrado tendremos siempre @ en lugar de A.

• Sustitución Polialfabética: Distinto del anterior porque una vez establecida la correspondencia entre alfabetos (que en este caso puede utilizar otro tipo de caracteres) a una misma letra pueden tocarle distintos símbolos cada vez.

Page 24: SdC Criptografía Sistemas Clasicos

24

EL CIFRADO DE CÉSAR

• Este sistema de encriptación es uno de los más antiguos que se conocen.

• Este sistema, además de ser completamente inseguro, es un caso particular de una familia de sistemas de encriptación conocidos como “Vigenere”, pero es útil para explicar los fundamentos de los métodos criptográficos.

• Supongamos que tenemos un alfabeto con n elementos.

• El método consiste en asignar un número a cada símbolo del alfabeto. Para encriptar, a cada letra le sumaremos un número, menor estrictamente que n, y le haremos corresponder la letra asociada.

• Por ejemplo si nuestro alfabeto tiene 26 símbolos y elegimos como clave para encriptar 3 tendremos: A → 0 y A + 3 = 3 => 3 ≡ mod 26, 3 → D , ya que a D le corresponde el 3.

Page 25: SdC Criptografía Sistemas Clasicos

25

EL CIFRADO DE CÉSAR

• Si para encriptar se suma 3 mod n, entonces para desencriptar se resta 3 mod n. Siendo n el número de símbolos del alfabeto.

• Claramente este sistema es simétrico. Las claves para encriptar y desencriptar deben mantenerse en secreto, ya que conocer una de ellas implica conocer la otra, sin embargo, es sensible a ataques por análisis estadístico de frecuencias al ser monoalfabético.

• Tiene estructura de grupo, ya que si primero desplazamos munidades cada letra, y luego lo hacemos n unidades es como si lo hubiésemos desplazado m + n unidades desde el principio.

Page 26: SdC Criptografía Sistemas Clasicos

26

EL CIFRADO DE CÉSAR

• Las transformaciones son:

a b c d e f g h i j k l m n o p q r s t u v w x y z

D E F G H I J K L M N O P Q R S T U V W X Y Z A B C

• Matemáticamente a cada letra le damos un número

a b c d e f g h i j k l m

0 1 2 3 4 5 6 7 8 9 10 11 12

n o p q r s t u v w x y Z

13 14 15 16 17 18 19 20 21 22 23 24 25

• Entonces

C = E(p) = (p + k) mod (26)

p = D(C) = (C – k) mod (26)

Page 27: SdC Criptografía Sistemas Clasicos

27

Criptoanálisis del Cifrado de Cesar

• Hay sólo 26 claves posibles (25 útiles)

– A se mapea a B, C ...... Z

• Regla básica del criptoanálisis “asegúrese que el cifrador no se ha equivocado y enviado un mensaje en texto claro por error”

• búsqueda por fuerza bruta

• dado el texto cifrado, probar todos los desplazamientos de letras

• se necesita reconocer cuando se tiene el texto plano

• eg. rompa el texto cifrado “HCEKN FG TQORGT "

Page 28: SdC Criptografía Sistemas Clasicos

28

PHHW PH DIWHU WKH WRJD SDUWB

KEY

1 oggv og chvgt vjg vqic rctva

2 nffu nf bgufs uif uphb qbsuz

3 meet me after the toga party

4 ldds ld zesdq sgd snfz ozqsx

5 kccr kc ydrcp rfc rmey nyprw

6 jbbq jb xcqbo qeb qldx mxoqv

7 iaap ia wbpan pda pkcw lwnpu

8 hzzo hz vaozm ocz ojbv kvmot

9 gyyn gy uznyl nby niau julns

10 fxxm fx tymxk max mhzt itkmr

11 ewwl ew sxlwj lzw lgys hsjlq

12 dvvk dv rwkvi kyv kfxr grikp

13 cuuj cu qvjuh jxu jewq fqhjo

14 btti bt puitg iwt idvp epgin

15 assh as othsf hvs hcuo dofhm

16 zrrg zr nsgre gur gbtn cnegl

17 yqqf yq mrfqd ftq fasm bmdfk

18 xppe xp lqepc esp ezrl alcej

19 wood wo kpdob dro dyqk zkbdi

20 vnnc vn jocna cqn cxpj yjach

21 ummb um inbmz bpm bwoi xizbg

22 tlla tl hmaly aol avnh whyaf

23 skkz sk glzkx znk zumg vgxze

24 rjjy rj fkyjw ymj ytlf ufwyd

25 qiix qi ejxiv xli xske tevxc

Figure 2.3 Brute-Force Cryptanalysis of Caesar Cipher

Ejemplo de Criptoanálisis

Texto cifrado:

PHHW PH DIWHU WKH WRJD SDUWB

Texto plano:

meet me after the toga party

Page 29: SdC Criptografía Sistemas Clasicos

29

Si el lenguaje del texto plano es desconocido, entonces el

texto plano puede ser no reconocible. En el ejemplo, se usa

el algoritmo ZIP y el cifrador se expande para incluir mas que

solo 26 caracteres, entonces el texto plano puede no ser

reconocido cuando se use el criptoanálisis por fuerza bruta.

Page 30: SdC Criptografía Sistemas Clasicos

30

Cifrador Monoalfabético

• en vez de desplazar el alfabeto

• se puede cambiar las letras arbitrariamente

• cada letra del texto plano se mapea a una letra aleatoria diferente en el texto cifrado

• la clave es de 26 letras de longitud

Plano: abcdefghijklmnopqrstuvwxyz

Cifrado: DKVQFIBJWPESCXHTMYAUOLRGZN

Texto Plano: ifwewishtoreplaceletters

Texto Cifrado: WIRFRWAJUHYFTSDVFSFUUFYA

Page 31: SdC Criptografía Sistemas Clasicos

31

Seguridad del Cifrador Monoalfabético

• ahora hay 26! = 4 x 1026 claves

• con tantas claves, se podría pensar que es

seguro

• pero no es asi!!!

• el problema es una característica del lenguaje

Page 32: SdC Criptografía Sistemas Clasicos

32

Redundancia del Lenguaje y Criptoanálisis

• los lenguajes humanos son redundantes, podemos sacar las

vocales y aún así entender

• además, las letras no se usan de igual manera

• en inglés la e es la letra más común, después vienen la

T,R,N,I,O,A,S

• otras letras son mas raras, ej, . Z,J,K,Q,X

• se puede tener tablas de frecuencias de letras solas, dobles y triples

Page 33: SdC Criptografía Sistemas Clasicos

33

Frecuencias de Letras en Inglés

Page 34: SdC Criptografía Sistemas Clasicos

34

Tabla de Frecuencias de Letras en Castellano

(aproximada)

e- 16,78% r - 4,94% y - 1,54% j - 0,30%

a - 11,96% u - 4,80% q - 1,53% ñ - 0,29%

o - 8,69% i - 4,15% b - 0,92% z - 0,15%

l - 8,37% t - 3,31% h - 0,89% x - 0,06%

s - 7,88% c - 2,92% g - 0,73% k - 0,00%

n - 7,01% p - 2,776% f - 0,52% w - 0,00%

d - 6,87% m - 2,12% v - 0,39%

Page 35: SdC Criptografía Sistemas Clasicos

35

Uso en Criptoanálisis

• Concepto clave – cifradores de sustitución monoalfabética no cambian la frecuencia relativa de las letras

• Descubierto por científicos Arabes en el siglo 9no

• Se calcula la frecuencia de las letras de texto cifrado

• Se compara cuenta/diagramas con valores conocidos

• si cifrador Cesar se busca peaks/combinaciones/secuencias comunes – peaks en: A-E-I triple, NO pares, RST triple

– combinaciones, secuencias en: ING, THE, JK, X-Z

• para monoalfabético se debe identificar cada letra– tablas de letras comunes dobles/triples ayudan

Page 36: SdC Criptografía Sistemas Clasicos

36

Ejemplo de Criptanálisis

• Dado el tecto cifrado:UZQSOVUOHXMOPVGPOZPEVSGZWSZOPFPESXUDBMETSXAIZ

VUEPHZHMDZSHZOWSFPAPPDTSVPQUZWYMXUZUHSX

EPYEPOPDZSZUFPOMBZWPFUPZHMDJUDTMOHMQ

• cuenta relativa de la frecuencia de letras

• suponer que P & Z son e y t

• suponer que ZW es th y por esto ZWP es the

• siguiendo con prueba y error se obtiene:

it was disclosed yesterday that several informal but

direct contacts have been made with political

representatives of the vietcong in moscow

Page 37: SdC Criptografía Sistemas Clasicos

37

Cifrador Playfair

• Ni siquiera el mayor número de claves en un cifrador

monoalfabético provee securidad

• Una manera de mejorar la securidad fue encriptar multiples letras

• Un ejemplo de esto es el cifrador Playfair

• Inventado por Charles Wheatstone en 1854, aunque nombrado por

su amigo el Baron Playfair

• Utiliza una matriz de letras de 5X5 basada en la clave

– se llena con las letras de la clave (sin duplicadas)

– el resto se llena con las demás letras

– eg. Usando la clave MONARCHY

MONAR

CHYBD

EFGIK

LPQST

UVWXZ

Page 38: SdC Criptografía Sistemas Clasicos

38

Encriptación y Desencriptación

• Del texto plano se encriptan dos letras a la vez:

1. si un par es una letra repetida, inserte un relleno como 'X', eg. "balloon" se encripta como "ba lx lo on“

2. si ambas letras están en la misma fila, reemplace cada una con la letra a la derecha, eg. “ar" se encripta como "RM"

3. si ambas letras están en la misma columna, reemplace cada una con la letra que está debajo de ella, eg. “mu" se encripta como "CM"

4. en otro caso cada letra se reemplaza por la que está en su fila en la columna de la otra letra del par, eg. “hs" se encripta como "BP", y “ea" como "IM" o "JM" (a gusto)

Page 39: SdC Criptografía Sistemas Clasicos

39

Seguridad del Cifrador Playfair

• Mejor que el monoalfabético

• Se tiene 26 x 26 = 676 digramas

• Necesitaría una tabla de frecuencia con 676 entradas para analizar (versus 26 para el monoalfabético)

• y correspondientemente mas texto cifrado

• Fué ampliamente usado por muchos años (eg. US & British military en WW1)

• Puede ser roto, dados unas pocos cientos de letras

• Todavía conserva mucha de la estructura del texto plano

Page 40: SdC Criptografía Sistemas Clasicos

40

Cifrador Polialfabético

• Llamados cifrados de sustitución polialfabética

• Dificulta el criptoanálisis con mas alfabetos para adivinar y disminuye la frecuencia de la distribución

• Usa una clave para seleccionar cual alfabeto se usa para cada letra del mensaje

• Usa cada alfabeto en turno

• Repite desde el comienzo después que se alcanza el fin de la clave

Page 41: SdC Criptografía Sistemas Clasicos

41

Cifrador Vigenère

• El mas simple cifrador de sustitución polialfabética es el Cifrador Vigenère

• Consiste en múltiples cifradores César

• La clave está compuesta de múltiples letras, de longitud K = k1 k2 ... kd

• ith letra especifica el ith alfabeto a usar

• Cada alfabeto se usa en turno

• Se repite desde el comienzo después de d letras en el mensaje

• Desencripción trabaja al revés

Page 42: SdC Criptografía Sistemas Clasicos

42

Ejemplo

• escriba el texto plano

• escriba la clave repetida debajo de él

• use cada letra de la clave como una clave de cifrado César

• encripte la letra del texto plano correspondiente

• use la palabra clave deceptive

key: deceptivedeceptivedeceptive

plaintext: wearediscoveredsaveyourself

ciphertext:ZICVTWQNGRZGVTWAVZHCQYGLMGJ

Page 43: SdC Criptografía Sistemas Clasicos

43

Seguridad del cifrador Vigenère

• tiene multiples letras cifradas por cada letra plana,de aqui que la

frecuencia de las letras se oculta un poco, pero no se pierde

totalmente

• comience con la frecuencia de las letras

– vea si luce monoalfabetico o no

• si no, entonces determine el número de alfabetos, para después

atacar cada uno

• método desarrollado por Babbage / Kasiski

• las repeticiones en el texto cifrado dan pistas sobre el período, ej.

“VTW” repetido en el ejemplo previo sugiere tamaño 3 o 9

• entonces ataque cada cifrador monoalfabético individualmente

Page 44: SdC Criptografía Sistemas Clasicos

Cifrador Vigenère Autoclave

• Una clave se concatena con el texto plano para proveer una clave

del largo del mensaje

• Ejemplo:

key: deceptivewearediscoveredsav

plaintext: wearediscoveredsaveyourself

ciphertext: ZICVTWQNGKZEIIGASXSTSLVVWLA

• Aun este esquema es vulnerable al criptoanálisis

– Debido a que la clave y el texto plano comparten la misma

frecuencia de distribución de las letras, una técnica estadística

puede ser aplicada

44

Page 45: SdC Criptografía Sistemas Clasicos

Cifrador Vernam

• El cifrador Vernam fue introducido por un ingeniero de AT&T

llamado Gilbert Vernam en 1918.

• Su sistema trabaja sobre datos binarios (bits) en vez de letras.

• La esencia de este sistema es la construcción de la clave.

• Vernam propuso el uso de una cinta que eventualmente repite la

clave, de modo que este sistema trabaja con una clave muy larga.

• Aunque este esquema presenta formidable dificultad criptoanalítica

puede ser roto con suficiente texto cifrado, el uso de secuencias de

texto plano conocido o probable, o ambos.

45

Page 46: SdC Criptografía Sistemas Clasicos

Cifrador Vernam

46

Key stream

generator

Figure 2.7 Vernam Cipher

Cryptographic

bit stream ( ki )

Cryptographic

bit stream ( ki )

Plaintext

( pi )

Plaintext

( pi )

Ciphertext

( ci )

Key stream

generator

Page 47: SdC Criptografía Sistemas Clasicos

47

One-Time Pad

• La ultima defensa es elegir una clave que es tan larga como el texto plano y no tiene relación estadística con él.

• Si se usa una clave verdaderamente aleatoria del largo del mensaje, el cifrador será seguro

• es no rompible ya que el texto cifrado no tiene relación estadística con el texto plano

• ya que para cada texto plano & texto cifrado existe una clave que lleva de uno a otro

• la clave sólo se puede usar una vez

• tiene el problema de la distribución segura de la clave

Page 48: SdC Criptografía Sistemas Clasicos

48

Cifradores por Transposición

• Estos ocultan el mensaje mediante el reordenamiento del orden de las letras (algún tipo de permutación), sin alterar las letras usadas

• Puede reconocerse ya que tiene la misma distribución de frecuencias del texto original

• El mas simple se denomina técnica Rail Fence, el texto plano se escribe diagonalmente sobre un número de filas y entonces se lee como una secuencia de filas

• Ejemplo, el siguiente encriptado con profundidad 2:m e m a t r h t g p r y

e t e f e t e o a a t

• el texto cifrado es:

MEMATRHTGPRYETEFETEOAAT

Page 49: SdC Criptografía Sistemas Clasicos

49

Cifradores de Transposición de Filas

• Esquema mas complejo

• Escriba las letras del mensaje en filas sobre un número específico de columnas

• Entonces reordene las columnas de acuerdo a alguna clave antes de leerlas, se lee por columnas

Key: 4 3 1 2 5 6 7

Plaintext: a t t a c k p

o s t p o n e

d u n t i l t

w o a m x y z

Ciphertext: TTNAAPTMTSUOAODWCOIXKNLYPETZ

Page 50: SdC Criptografía Sistemas Clasicos

50

Cifradores de Transposición de Filas

• Se puede hacer significativamente mas seguro realizando mas de una etapa de transposición

• El resultado es una transformación compleja que no es fácilmente reconstruída

• Si lo aplicamos al ejemplo:

Key: 4 3 1 2 5 6 7

Plaintext: t t n a a p t

m t s u o a o

d w c o i x k

n l y p e t z

Ciphertext: NSCYAUOPTTWLTMDNAOIEPAXTTOKZ

Page 51: SdC Criptografía Sistemas Clasicos

51

Producto de Cifradores

• Cifradores que usan sustituciones o transposiciones no son seguros debido a las caracteristicas del lenguaje

• Por eso se considera el uso de varios cifradores , pero:

– dos sustituciones hacen una sustitución mas compleja

– dos transposiciones hacen una transposición mas compleja

– pero una sustitución seguida por una transposición hace un cifrador nuevo mucho mas fuerte

• Este es el puente desde cifradores clásicos a los modernos

Page 52: SdC Criptografía Sistemas Clasicos

52

Máquina rotatorias

• Antes de los cifradores modernos las máquinas rotatorias eran los cifradores producto mas comunes

• Ampliamente usados en la WW2

– German Enigma, Allied Hagelin, Japanese Purple

• Implementaban un complejo sistema de sustitución variable

• Usaban una serie de cilindros, cada uno dando una sustitución, el cual rotaba y cambiaba después que cada letra era encriptada

• Con 3 cilindros se tiene 263=17576 alfabetos

Page 53: SdC Criptografía Sistemas Clasicos

53