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

Criptografa

ESCUELA SUPERIOR
POLITECNICA DE CHIMBORAZO
Maestra en Seguridad Telemtica
Cap. II
Criptografa Clasica
Criptografa
Agenda
Herramientas de Criptografa clsica
Clasificacin
Cifrador Esctala
Cifrador Polybios
Cifrador de Cesar
Cifrador Vigenere
Cifrador Playfair
Cifrador de Hill
Cifrador de Verman
Tanto mquinas, artilugios de cifra, como los algoritmos que
trabajaban matemticamente dentro de un cuerpo finito n,
hacen uso de dos tcnicas bsicas orientadas a caracteres y
que, muchos siglos despus, las propondr Shannon como
herramientas para fortalecer la cifra:
Tcnicas de sustitucin: Los caracteres o letras del mensaje en
claro se modifican o sustituyen por otros elementos o letras en
la cifra. El criptograma tendr entonces caracteres distintos a
los que tena el mensaje en claro.
Tcnicas de transposicin o permutacin: los caracteres o
letras del mensaje en claro se redistribuyen sin modificarlos y
segn unas reglas, dentro del criptograma. El criptograma
tendr entonces los mismos caracteres del mensaje en claro
pero con una distribucin o localizacin diferente.
Herramientas de la criptografa clsica
y algunos
ejemplos...
TRANSPOSICIN SUSTITUCIN
MONOGRMICA POLIGRMICA NO PERIDICA PERIDICA
ALFABETO
ESTNDAR
ALFABETO
MIXTO
DIGRMICA
N-GRMICA
LINEALES PROGRESIVOS
CSAR
PLAYFAIR
HILL
VERNAM
ENIGMA
VIGENRE
AFN
OTROS
ALFABETO
ESTNDAR
ALFABETO
MIXTO
OTROS
COLUMNAS
FILAS
SERIES
GRUPOS MONOALFABTICA POLIALFABTICA
ESCTALA
Clasificacin de los criptosistemas clsicos
La esctala era usada en el siglo V a.d.C. por el pueblo griego de
los lacedemonios. Consista en un bastn en el que se
enrollaba una cinta de cuero y luego se escriba en ella el
mensaje de forma longitudinal.
Al desenrollar la cinta, las letras aparecern desordenadas.
Para descifrar el criptograma y recuperar el mensaje en claro
habr que enrollar dicha cinta en un bastn con el mismo
dimetro que el usado en el extremo emisor y leer el mensaje
de forma longitudinal. La clave del sistema se encuentra en el
dimetro del bastn. Se trata de una cifra por transposicin
pues los caracteres del criptograma son los mismos que en el
texto en claro pero estn distribuidos de otra forma dentro del
criptograma.
Primer cifrador por transposicin esctala
A S I C I F R A B
A N C O N L A E S
C I T A L A
El texto en claro es:
M = ASI CIFRABAN CON LA ESCITALA
El texto cifrado o criptograma ser:
C = AAC SNI ICT COA INL FLA RA AE BS
En ese bastn resida la
fortaleza de un pueblo.
Por ello, y como smbolo
de poder, el bastn de
mando que se le entrega al
alcalde de una ciudad en la
ceremonia de su
nombramiento, proviene
de estos tiempos tan
remotos.
Bastn y cinta para cifrar
Mtodo de ciframiento de la esctala
Cifrado de transposicin - columnas
Los cifrados por sustitucin conservan el orden de los smbolos de texto
normal, mientras que los cifrados por transposicin reordenan las
letras,( o los bits)
152463
El texto cifrado se obtiene cogiendo el texto normal por
columnas con la ordenacin determinada por la clave
Ejemplo: texto normal P = La clave secreta es AR, clave k = cripto
ordenacin: 1-c 2-i 3-o 4-p 5-r 6-t
La clave k, se utiliza para reordenar columnas del texto normal (no debe
tener letras duplicadas)
La cla
ve sec
retaes
AR
Se coloca el texto normal
C = Lvr tRacs csa aeeAlee
cripto
Es el cifrador por sustitucin de caracteres ms antiguo que se conoce
(siglo II a.d.C.) pero como duplica el tamao del texto en claro, con letras o
nmeros, ... no fue tan buena la idea.
A B C D E 1 2 3 4 5
A A B C D E 1 A B C D E
B F G H IJ K 2 F G H IJ K
C L M N O P 3 L M N O P
D Q R S T U 4 Q R S T U
E V W X Y Z 5 V W X Y Z
M
1
= QU BUENA IDEA
C
1
= DA DE AE AB DE AE
CC AA BD AD AE EA
M
2
= LA DEL GRIEGO
C
2
= 31 11 14 15 31 22
42 24 15 22 34
Primer cifrador por sustitucin: Polybios
En el siglo I a.d.C., Julio Csar usaba este cifrador. El algoritmo
consiste en el desplazamiento de tres espacios hacia la derecha
de los caracteres del texto en claro. Es un cifrador por sustitucin
monoalfabtico en el que las operaciones se realizan mdulo n,
siendo n el nmero de elementos del alfabeto (en aquel entonces
el latn).

M
i
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
C
i
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

Alfabeto de cifrado del Csar para castellano mod 27
0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26
El cifrador Cesar

M
i
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
C
i
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

M = EL PATIO DE MI CASA ES PARTICULAR
C = H SDWLR GH OL FDVD HV SDUWLFXDU
Cada letra se cifrar siempre igual. Es una gran debilidad y hace que
este sistema sea muy vulnerable y fcil de atacar, simplemente usando
las estadsticas del lenguaje. Puede ver la tabla de frecuencias tpicas
del lenguaje castellano.
Cifrado: C
i
= M
i
+ 3 mod 27 Descifrado: M
i
= C
i
- 3 mod 27
Ejemplo de cifra del Cesar en mod 27
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
00 01 02 03 04 05 06 07 08 09 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26
Cifrado: C
i
= (M
i
+ b) mod 27 Descifrado: M
i
= (C
i
b) mod 27
La letra ms frecuente del criptograma la hacemos coincidir
con la ms frecuente del lenguaje, la letra E, y encontramos as
b.
C = LZAHL ZBTHW YBLIH XBLKL ILYOH ZLYCH ROKH
Frecuencias observadas en el criptograma: L (7); H (6); Z (3); B (3);
Y (3); I (2); K (2); O (2); A (1); T (1); W (1); X (1); C (1); R (1).
Es posible que la letra E del lenguaje se cifre como L.
Comprobamos adems si la letra A (segunda ms frecuente) se cifra
como H:
E + b mod 27 = L b = L - E mod 27 = 11 4 mod 27 = 7
A + b mod 27 = H b = H - A mod 27 = 7 0 mod 27 = 7
M = ESTA ES UNA PRUEBA QUE DEBERIA SER VALIDA
Criptoanlisis del cifrador por sustitucin
Este cifrador polialfabtico soluciona la debilidad del cifrado del Csar
en que una letra se cifra siempre igual. Se usa una clave K de longitud L
y se cifra carcter a carcter sumando mdulo n el texto en claro con los
elementos de esta clave.
C
i
= M
i
+ K
i
mod 27
Sea K = CIFRAy el mensaje M = HOLA AMIGOS
M = H O L A A M I G O S
K = C I F R A C I F R A sumando mod 27...
C = J W P R A P L G S
Ms de un alfabeto: la letra
O se cifra de forma distinta.
Observe que el criptograma P se obtiene de un texto L y de un texto I.
El cifrador de Vigenre
Si la clave de Vigenre tiene mas de 6 caracteres distintos, se logra
una distribucin de frecuencias en el criptograma del tipo normal,
es decir ms o menos plana, por lo que se logra difuminar la
redundancia del lenguaje.
Aunque pudiera parecer que usando una clave larga y de muchos
caracteres distintos, y por tanto varios alfabetos de cifrado,
Vigenre es un sistema de cifra seguro, esto es falso.
La redundancia del lenguaje unido a tcnicas de criptoanlisis muy
sencillas, como los mtodos de Kasiski y del ndice de
Coincidencia, permiten romper la cifra y la clave de una manera
muy fcil y con mnimos recursos. En la siguiente diapositiva
veremos un ataque por el mtodo de Kasiski.
Es Vigenre un algoritmo seguro ?
El mtodo de Kasiski consiste en buscar repeticiones de cadenas de
caracteres en el criptograma. Si estas cadenas son mayores o iguales a
tres caracteres y se repiten ms de una vez, lo ms probable es que esto
se deba a cadenas tpicas del texto en claro (trigramas, tetragramas, etc.,
muy comunes) que se han cifrado con una misma porcin de la clave.
Si se detectan estas cadenas, la distancia entre las mismas ser mltiplo
de la longitud de la clave. Luego, el mximo comn divisor entre esas
cadenas es un candidato a ser la longitud de la clave, digamos L.
Dividimos el criptograma en L subcriptogramas que entonces han sido
cifrados por una misma letra de la clave y en cada subcriptograma
hacemos un ataque simple ahora de tipo estadstico monoalfabtico.
La idea es buscar ahora a travs de los tres caracteres ms frecuentes
en cada subcriptograma las posiciones relativas de las letras A, E y O
que en castellano estn separadas por 4 y 11 espacios. La letra de la
posicin que ocupe la letra A (A = 0) ser entonces la letra clave
correspondiente.
Ataque por el mtodo de Kasiski
Ataque por el mtodo de Kasiski
Sea el criptograma C de 404 caracteres que vamos a criptoanalizar el siguiente:
PBVRQ VICAD SKAS DETSJ PSIED BGGMP SLRPW RPWY EDSDE DRDP CRCPQ MNPWK
UBZVS FNVRD MTIPW UEQVV CBOVN UEDIF QLONM WNUVR SEIKA ZYEAC EYEDS ETFPH
LBHGU ESOM EHLBX VAEEP UELI SEVEF WHUNM CLPQP MBRRN BPVI MTIBV VEID
ANSJA MTJOK MDODS ELPWI UFOZM QMVNF OHASE SRJWR SFQCO TWVMB JGRPW VSUEX
INQRS JEUEM GGRBD GNNIL AGSJI DSVSU EEINT GRUEE TFGGM PORDF OGTSS TOSEQ
OTGR RYVLP WJIFW XOTGG RPQRR JSKET XRNBL ZETGG NEMUO TXJAT ORVJH RSFHV
NUEJI BCHAS EHEUE UOTIE FFGYA TGGMP IKTBW UEEN IEEU.
Entre otras, se observan las siguientes cadenas (subrayadas) en el criptograma:
3 cadenas GGMP, separadas por 256 y 104 posiciones.
2 cadenas YEDS, separadas por 72 espacios.
2 cadenas HASE, separadas por 156 espacios.
2 cadenas VSUE, separadas por 32 espacios.
Luego el perodo de la clave puede ser mcd (256, 104, 72, 156, 32) = 4. La clave tendr
cuatro caracteres, por lo tanto tomaremos del criptograma el carcter 1, el 5, el 9,
etc. para formar el primer subcriptograma C
A
; luego el 2, el 6, el 10, etc. para formar
el subcriptograma C
B
, y lo mismo para subcriptogramas C
C
y C
D
.
Ataque por el mtodo de Kasiski
Tenemos ahora 4 subcriptogramas de slo 101 letras c/u (muy importante tenerlo en
cuenta en las estadsticas) que han sido cifrados con la misma letra de la clave:
C
A
= PQAAEPDMREEDCNUSRIECNIONSAAETLUOLAUIEULMNIIEAAOOLU
MNARSOMRSISERNAISIRTMDTOORLIORRENENOAVSNIAEOFAMTEI
C
B
= BVDTSBPPPDPPPBFDPQBUFNUEZCDFBMBESFNPBBBNMKDPF
QFSJFTBPUNJMBNGDUNUFPFSSRPFTPJTBTETTJFUBSUTFTPBE
C
C
= VISSSIGSWWSDCQWZNMWVOEQMVIYESPHEEXEEEWMQRPMVISTMSWO
MOEWQWJWEQEGDISSETEGOOSETYWWGQSXLGMXOHHECEEIGGIWEE
C
D
= RCKDJEGLRYDRRMKVVTUVVDLWRKEYEHGSHVPLVHCPRVTVDJJDEIZ
VHSRCVGVXRUGGLJVEGEGRGTQGVJXGRKRZGUJRRVJHHUEYGKUNU
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
12 0 2 3 12 1 0 0 11 0 0 5 6 9 1 10 2 1 9 7 4 5 1 0 0 0 0
0 14 1 6 4 12 1 0 0 4 1 0 3 6 8 0 14 2 1 6 9 7 1 0 0 0 1
0 0 2 2 18 0 7 3 7 1 0 1 7 1 0 6 2 6 1 12 3 0 4 12 3 2 1
0 0 3 5 7 0 12 6 1 7 5 4 1 1 0 0 2 1 13 2 3 6 14 1 2 3 2
C
A
C
B
C
C
C
D
La frecuencia relativa observada en cada uno de los subcriptogramas es:
Luego, la letra ms frecuente del subcriptograma debera corresponder a la letra E del
texto en claro, la segunda a la letra A y la tercera a la letra O.
Ataque por el mtodo de Kasiski
Si la posicin relativa de la letra A es el valor 0, entonces la letra E est
cuatro espacios a la derecha de la A (m+4 mod 27) y la letra O est 15
espacios a la derecha de la letra A (m+15 mod 27) y a 11 de la letra E.
Buscaremos en cada subcriptograma C
i
las tres letras ms frecuentes
y que cumplan adems con esa distribucin: 0 +4 +11 mod 27.
Es suficiente contar con estas tres letras para que el ataque prospere.
No obstante, podemos afinar un poco ms el ataque si tomamos en
cuenta la siguiente letra frecuente en castellano S, en la posicin
(m+19) mod 27.
En el ejemplo para C
A
se observa que la nica solucin que cumple con
esto es la que coincide la AEO (12, 12, 10) luego la letra clave sera la
A. Para C
B
elegimos BFP (14, 12, 14) por lo que la letra clave sera B.
Para C
C
elegimos EIS (18, 7, 12) por lo que la letra clave sera E. Para
C
D
elegimos RVG (13, 14, 12) por lo que la letra clave sera R.
Con la clave K = ABER obtenemos Para que la cosa no me
sorprenda.... Al ser ste un texto largo y con sentido, hemos encontrado
la clave .
Los cifrados anteriores se hacan carcter a carcter, es decir eran
monogrmicos. Para aumentar la seguridad de la cifra y romper las
estadsticas, podemos cifrar por poligramas, bloques de caracteres.
Un cifrador inventado a finales del siglo XIX es el de Playfair que trabaja
con una matriz de 5x5 letras, cifrando por digramas. Si el texto en claro
tiene un nmero impar de elementos, se rellena con una letra
preestablecida, por ejemplo la letra X.
Z Y X W V
U T S R Q
P O N/ M L
K I/J H G F
E D C B A
Si M
1
M
2
estn en la misma fila, C
1
C
2
son los dos caracteres de la derecha.
Si M
1
M
2
estn en la misma columna,
C
1
C
2
son los dos caracteres de abajo.
Si M
1
M
2
estn en filas y columnas
distintas, C
1
C
2
son los dos caracteres
de la diagonal, desde la fila de M
1
.
Cifrador poligrmico de Playfair
Si la clave K = BEATLES y eliminamos la letra (ingls), cifre el mensaje M = WITH
A LITTLE HELP FROM MY FRIENDS.
Z Y X W V
U R Q P O
N M K I/J H
G F D C S
L T A E B
M = WI TH AL IT TL EH EL PF RO MX MY FR IE ND SX
C = EP BM TB ME LB BI AB RC UP KY RT MY PC KG DV
Estos sistemas tambin son criptoanalizables pues en el criptograma C
persisten algunas propiedades del lenguaje; en este caso la distribucin de
digramas tpicos; por ejemplo en el castellano en, de, mb, etc.
Se rompe la doble
MM agregando una
X y se rellena al
final tambin con X
Ejemplo de cifra con Playfair
En 1929 el matemtico Lester Hill propone un sistema de cifra usando una matriz
como clave, cifrando Ngramas de forma que:
C
1
k
11
k
12
k
13
... k
1N
M
1
C
2
k
21
k
22
k
23
... k
2N
M
2
C
3
k
31
k
32
k
33
... k
3N
M
3
.. .. .. .. .. ..
C
N
k
N1
k
N2
k
N3
... k
NN
M
N
=
X mod n
La matriz clave K debe tener inversa K
-1
en el cuerpo de cifra n.
Luego, como K
-1
= T
ADJ(K)
/|K| mod n, en donde ADJ(K) es la
matriz adjunta, T es la traspuesta y |K| el determinante, este ltimo
valor |K| no podr ser cero ni tener factores en comn con n puesto
que est en el denominador (concepto de inverso ya visto).
Si el texto en claro no es mltiplo del bloque N, se rellena con
caracteres predeterminados, por ejemplo la letra X o la Z.
El cifrador de matrices de Hill
Sea M = AMIGO CONDUCTOR y la clave K la que se muestra:
C
1
16 4 11 0
C
2
8 6 18 12
C
3
15 19 15 8
=
X mod 27
M = AMI GOC OND UCT ORZ
C
1
= (160 + 412 + 118) mod 27 = 136 mod 27 = 1 = B
C
2
= (80 + 612 + 188) mod 27 = 216 mod 27 = 0 = A
C
3
= (150 + 1912 + 158) mod 27 = 348 mod 27 = 24 = X
C = BAX PMA BJE XAF EUM (compruebe Ud. los dems trigramas)
K = PELIGROSO ser la clave
simblica. Se cifrar el primer
trigrama: AMI = 0, 12, 8.
Para descifrar encontramos K
-1
= inv (K, 27) = K
-1
= T
ADJ(K)
/|K| mod n
|K| = 16(615 - 1918) 4(815 - 1518) + 11 (819 - 156) mod 27 = 4
Encontramos luego la matriz adjunta de K, la trasponemos cambiando
filas por columnas y la multiplicamos por inv (|K|, 27) = inv (4, 27) = 7
con lo que se obtiene la matriz que se indica (hgalo Ud.)
Ejemplo de cifrado de Hill
C = BAX PMA BJE XAF EUM y la clave K
-1
es la que se muestra:
M
1
18 26 15 1
M
2
24 6 13 0
M
3
11 24 10 24
=
X mod 27
C = BAX PMA BJE XAF EUM
M
1
= (181 + 260 + 1524) mod 27 = 378 mod 27 = 0 = A
M
2
= (241 + 60 + 1324) mod 27 = 336 mod 27 = 12 = M
M
3
= (111 + 240 + 1024) mod 27 = 251 mod 27 = 8 = I
M = AMI GOC OND UCT ORZ (compruebe Ud. los dems trigramas)
Descifrado del primer trigrama
del criptograma: BAX = 1, 0, 24.
18 26 15
M = K
-1
x C mod n y K
-1
= 24 6 13
11 24 10
Ejemplo de cifrado de Hill
Cifrado Hill no es seguro, debido a su linealidad y ser muy fcil hacer un
ataque con texto claro conocido segn el mtodo de Gauss Jordan y
encontrar as la matriz clave K.
En 1917 Gilbert Vernam propone un cifrador por sustitucin binaria con
clave de un solo uso (one-time pad) basado en el cdigo Baudot de 5 bits:
La operacin de cifra es la funcin XOR.
Usa una secuencia cifrante binaria y aleatoria S que se obtiene a partir de
una clave secreta K compartida por emisor y receptor.
El algoritmo de descifrado es igual al de cifrado por la involucin de la
funcin XOR.
La clave ser tan larga o ms que el mensaje y se usar una sola vez.
Criptograma M M
S S
Clave K Clave K
Algoritmo
Determinstico
Algoritmo
Determinstico

secuencia cifrante
MENSAJE MENSAJE
C
El cifrador de Verman
Usando el cdigo Baudot (vea los cdigos en la tabla de Baudot que encontrar en
el Captulo 21) se pide cifrar:
M = BYTES
K = VERNAM
Solucin:
BV = 1100111110 = 00111 = U
YE = 1010100001 = 10100 = H
TR = 1000001010 = 11010 = G
EN = 0000101100 = 01101 = F
SA = 0010100011 = 00110 = I
C = UHGFI
El esquema de Vernam es el
nico cifrador matemticamente
seguro y, por tanto, imposible de
criptoanalizar pues la clave K se
usa una sola vez (one-time pad),
es aleatoria y tanto o ms larga
que el propio mensaje. En este
caso, no cabe ningn ataque por
estadsticas del lenguaje o por
correlacin de bits.
http://www.pro-technix.com/information/crypto/pages/vernam_base.html
Ejemplo de cifrado de Verman
LAS SIGUIENTES PREGUNTAS ESTN RELACIONADAS
CRIPTOGRAFA CLSICA
1. Qu significa cifrar por sustitucin y qu por transposicin?
2. Por qu que el mtodo esctala es un cifrado por permutacin?
3. Cul es la peor debilidad que tiene el sistema de cifra del Csar?
4. Ciframos el mensaje M = HOLA QUE TAL con un desplazamiento
de 6 caracteres, cul es el criptograma? Y si desplazamos 27?
5. Cmo podramos atacar un sistema de cifra tipo Csar?
Cuestiones de repaso (1 de 3)
6. En un sistema de cifra de Vigenre la clave a usar puede ser CERO
o bien COMPADRE, cul de las dos usara y por qu?
7. Cifre segn Vigenre el mensaje M = UN VINO DE MESAcon la
clave K = BACO sin usar la tabla, slo con operaciones modulares.
8. Por qu se dice que Vigenre es un cifrador polialfabtico?
9. Cmo podramos atacar un cifrado polialfabtico peridico?
10. Cifre con el mtodo de Vernambinario en mensaje M = VIDAy
clave K = TACOS suponiendo texto ASCII. Y si la clave es ahora
K = TACO? Cmo se comporta este cifrador si K es aleatoria?
11. Qu significa cifrar por homfonos? Qu es el cifrado de Beale?
Cuestiones de repaso (2 de 3)
12. Nombre dos mquinas de cifrar que se usaron en la Segunda Guerra
Mundial y diga de forma sencilla cmo funcionaban.
13. Se cifra por permutaciones usando para ello una distribucin en
columnas con clave. Qu similitud tendr luego este sistema de
cifra con algunas operaciones hechas en el DES?
14. Cifre con Hill digrmico el mensaje mod 27 M = ADIOS AMIGO.
Qu matriz simblica puede usar: GATO, GOTA, MISAo MESA?
15. Cifre con la matriz trigrmica simblica PELIGROSO el mensaje
HOY ES UN HERMOSO DIA.
16. Si K puede ser tan grande, por qu no es segura la cifra de Hill?
17. Cmo funciona el ataque de Gauss Jordan?
Cuestiones de repaso (3 de 3)

Вам также может понравиться