Anda di halaman 1dari 31

CRIPTOANLISIS

CLSICO
DESARROLLO
Mdulo I Criptografa clsica
Definicin, objetivos y fundamentos de criptologa.
Introduccin a los criptosistemas. Definiciones.
Necesidades. Seguridad terica y prctica. Criptografa
por software y por hardware. Ataques criptogrficos.
Clasificacin general de sistemas criptogrficos. Principios
de Kerckhoff. Procedimientos clsicos de cifrado: mtodos
histricos (esctala espartana, etc.). Primalidad, aritmtica
modular (Z
n
, Z*
n
) y funciones numricas elementales (MCD,
mcm). Clave de Julio Csar. Mtodos generales de
transposicin y sustitucin. Cifrador afn. Cifrador de Hill.
Claves polialfabticas (Vigenre). Otros mtodos
especiales (Playfair, Autokey, etc.). Criptoanlisis
elemental: ataque estadstico. Mtodo de Kasiski. ndice
de coincidencia e ndice de coincidencia mutuo.
2
cripto I-scolnik-hecht
ENCRIPTOR DE HILL
|
|

\
|
=
+ = + =
= =
=
= =
7 3
8 11
) , ( ) , (
es matricial notacin en que 7 8 , 3 11
como , de lineal n combinaci
una ser podra Entonces ) , ( es cifrado elemento un y ) , (
forma la de es plano texto de elemnto un que sea o 2 sea ejemplo, Por
cifrado. elemento un as generando
plano, texto del elemento un de carcteres los de lineales nes combinacio
tomar es bsica idea La ) ( y positivo entero un Sea
S.Hill. Lester por 1919 en inventado tico polialfab algoritmo otro Es
2 1 2 1
2 1 2 2 1 1
2 1
1 2 1 2 1
26
x x y y
x x y x x y
x x
y y y y x x x
m
m
m Z C P m
m
3 cripto I-scolnik-hecht
26) mdulo (siempre
1 0
0 1
131 182
286 261
11 23
18 7
7 3
8 11
pues
11 23
18 7
7 3
8 11
ejemplo, Por
entonces , inversible es matriz la si
sea o
. . .
. . . . . . . . . . . . . . . .
. . .
. . .
) ,..., ( ,..., ( ) (
calculamos
y ) ,..., ( Si . de matriz una ser clave la general En
1
1
, 2 , 1 ,
, 2 2 , 2 1 , 2
, 1 2 , 1 1 , 1
1 1
1
|

\
|
|

\
|
= |

\
|
|

\
|
|

\
|
= |

\
|
=
=
|
|
|
|
|

\
|
= = =
=

yK x
xK y
k k k
k k k
k k k
x x y y x e y
K k P x x x mxm K
m m m m
m
m
m m k
m
ENCRIPTOR DE HILL
4 cripto I-scolnik-hecht
) 24 , 11 (
11 23
18 7
) 22 , 11 (
) 20 , 9 (
11 23
18 7
) 4 , 3 (
: ar desencript Para . Entonces
) 22 , 11 ( ) 168 88 , 72 121 (
7 3
8 11
) 24 , 11 (
) 4 , 3 ( ) 140 72 , 60 99 (
7 3
8 11
) 20 , 9 (
(11,24) (9,20)
palabra la s Encriptemo
= |

\
|
= |

\
|

= + + = |

\
|
= + + = |

\
|
= =
DELW july
ly ju
july
ENCRIPTOR DE HILL
5 cripto I-scolnik-hecht
ENCRIPTOR DE PERMUTACION
) ,..., ( ) ,..., (
y ) ,..., ( ) , ,..., ( ) ,..., ( definimos
n permutaci una sea (o dada clave una Para }. ,..., 1 { de nes permutacio
las todas de conjunto el sea y ) ( fijo, positivo entero un Sea
: e Formalment
1563. en Porta Giovanni por
sealada fu n subtituci de el y nes permutacio de cifrador el entre diferencia
la hecho de y siglos, por usado ha se idea Esta posicin. su alterar pero
, originales carcteres los a mantener es nes permutacio de cifrador un de idea La
cifrado. texto al ientes correspond otros por reemplazan de plano texto del
carcteres que sea o ones, substituci involucran ahora hasta vimos que algoritmos Los
) ( ) 1 (
1
1 ) ( ) 1 ( 1
26
1 1
m
m
m m m
m
y y y y d
y y x x x x e
k m
K Z C P m

=
= =
= =

6 cripto I-scolnik-hecht
ENCRIPTOR DE PERMUTACION
padding" " necesita lss?o cnael eoismr nmaaa
solos alcine iremos maana
letras 6 de grupos en dividimos lo
los osalcineso maanairem es texto el Si
4 2 5 1 6 3
6 5 4 3 2 1
inversa su y
2 4 6 1 5 3
6 5 4 3 2 1
por dada n permutaci la a clave como usamos y 6 Sea
: Ejemplo
modulares. s operacione hay no que puesto mdulo residuos
de en vez s alfabtico carcteres usar e convenient ms es ones substituci de cifrador el en Como
1

m
q
7 cripto I-scolnik-hecht
t
j i
K K K
K
j i
k
mxm K
m

=
|
|
|
|
|
|
|
|

\
|
=

=
=
1
.
siendo
0 0 1 0 0 0
0 0 0 0 1 0
0 1 0 0 0 0
0 0 0 0 0 1
1 0 0 0 0 0
0 0 0 1 0 0
: es matriz la anterior caso el Para
n permutaci la usa se cuando nes permutacio de encripcin la a
e equivalent es matriz la usando Hill de mtodo el que entonces ver fcil Es
contrario lo de 0
) ( si 1

frmula la segn de asociada nes permutacio
de matriz una definir podemos } ,..., 1 { enteros los de n permutaci
una Dada Hill. de del especial caso un es nes permutacio de mtodo El
8 cripto I-scolnik-hecht
CRIPTOGRAFIA CLASICA
se han visto
Clave de Corrimiento
Clave de Permutacin
Clave de Substitucin Monoalfabtica
Clave de Sustitucin Homofnica
Clave de Sustitucin Polialfabtica (Vigenre)
Clave Afn
Clave de Hill
Clave de Vernam
LFSR (nociones)
9 cripto I-scolnik-hecht
CRIPTOGRAFIA CLASICA
comentaremos
Clave Autokey
Claves Beaufort (Vigenre modificado)
Clave PlayFair
Nomencladores
Rotor Jefferson
Rotores Hebern-Koch
Rotor Scherbius (Enigma)
Rotor Hagelin M-209
10 cripto I-scolnik-hecht
AUTOKEY
Es un Vigenre polialfabtico de s-caracteres,
de long variable, en la cual el propio texto
cifrado sirve como clave
k = k
1
k
2
k
3
k
t
(secuencia concatenada)
para i t ; C
i
= (P
i
+ k
i
) mod s
para i> t ; C
i
= (P
i
+ C
i-t
) mod s
(una variante usa P
i-t
en vez de C
i-t
)
11 cripto I-scolnik-hecht
BEAUFORT
Es un Vigenre modificado que emplea
la resta modular en vez de la suma. La
clave de cada carcter es la propia
inversa modular aditiva
k = k
1
k
2
k
3
k
t
(secuencia concatenada)
Beaufort directo ; C
i
= (k
i
- P
i
) mod s
Beaufort inverso ; C
i
= (P
i
- k
i
) mod s
12 cripto I-scolnik-hecht
PLAYFAIR
es una sustitucion por
digramas; EJ: XO KZ
M I C L A
V E B D F
G H K N O
P Q R S T
U W X Y Z
X
O
KZ
misma fila: elementos
de la derecha circular
misma Col: elementos
inferiores circulares
idnticos: interponer
carcter raro (Z)
Se ataca estadsticamente por digramas
13 cripto I-scolnik-hecht
NOMENCLADORES
Libros de Claves
A VX
GAK
HZAM
LPWKM
AL
AMANECER
MG
FOQ
NUYY
SWAAT
...
encripcin
desencripcin
A BATALLA
AA CAMINO
AAA E
AAAA DIRECTO
AAAB OBUS
AB RUTA
ABIX 45
ABUZ DE
BCCAI UNA SOLA
...
14 cripto I-scolnik-hecht
ROTOR JEFFERSON
Fines del Siglo XVIII
36 cilindros apareados, cada uno con las 26
letras permutadas en forma diferente, se alinean
segn el texto plano y luego se sustituye por
cualquier otra lnea de las 25 restantes
A X N R F
G R A N Z
H U L A B
15 cripto I-scolnik-hecht
ROTORES HEBERN-KOCH
Siglo XX : 1918-1921
mquinas de escribir / calcular electromecnicas
modificadas para sustituciones polialfabticas
hardcodeadas por la permutacin y posicin inicial
de cilindros y por el cableado interno entre cilindros
y con output luminoso o impreso. Los cilindros se
desplazan por engranajes tipo contador de Km
A
H
R
D
F
E
Y
A
M
D
F
E
16 cripto I-scolnik-hecht
ENIGMA (rotor Scherbius)
1923-1934
Modelo C (Alemania II GM):
Tres rotores R
1
, R
2
, R
3
. R
1
cicla a R
2
que cicla a R
3
, ademas R
2
se
cicla a s mismo. Perodo: 26.25.2617000 La clave era la posicin
inicial de los rotores (17000), su orden (3!=6) y el estado de un
tablero externo que implementaba una sustitucin polialfabtica
fcilmente programable (26!) (manualmente cada hora) mas las
sustituciones internas (fijas) de los rotores. Semi-quebrado en 1940
por el equipo de Alan Turing auxiliado por una computadora digital
rudimentaria de Ira generacin. En 1942 se captur una Enigma
intacta en el U-110 cerca de Islandia. Enigma fue el secreto mejor
guardado por los aliados durante 30 aos (decenas de miles
guardaron silencio, ejemplo nico en la historia)
A
H
R
D
F
E
Y
A
M
17 cripto I-scolnik-hecht
HAGELIN M-209
1934 USA
La mquina del ejrcito EEUU durante la II GM.
Tena 6 rotores con sustitucin polialfabtica Beaufort
de perodo 101405850= 26.25.23.21.19.17 letras. El
cifrador de rotores mas evolucionado. Hoy da pieza
de museo.
A
H
R
D
F
E
Y
A
M
D
F
E
18 cripto I-scolnik-hecht
CRIPTOANALISIS CLSICO
GENERALMENTE SE ASUME KERCKHOFF
SELECCIONAR EL ATAQUE ESPECIFICO DEL
CRIPTOANALISIS ELEMENTAL PARA LOS CASOS
DE CRIPTOGRAFIA CLASICA
EL CRIPTOANALISIS DEBE ATACAR TANTO A LA
PRIMITIVA COMO AL PROTOCOLO, Y EN ESTO
PUEDEN FALLAR LAS IMPLEMENTACIONES DE
LAS MAS POTENTES PRIMITIVAS ACTUALES
EN CRIPTOGRAFIA ACTUAL, EL CRIPTOANALISIS
ESTARA ORIENTADO A RESOLVER PROBLEMAS
COMPLEJOS DE LA TEORIA DE NUMEROS
(factorizacin, logaritmo discreto, raiz modular,
generadores, residuosidad cuadrtica, etc.)
19 cripto I-scolnik-hecht
TERMINOLOGIA BASICA - 1
ATAQUES CRIPTOANALITICOS
Son sistemas que permiten a un
ADVERSARIO quebrar un criptosistema o
reducir su complejidad interna de manera de
facilitar estadsticamente su quiebre respecto
al ataque de fuerza bruta
ATAQUE DE FUERZA BRUTA
Consiste en explorar sistemticamente el
espacio de claves {d
k
}. Esto implica tantear
todas las combinaciones posibles para claves
legales.
20 cripto I-scolnik-hecht
TERMINOLOGIA BASICA - 2
CRIPTOSISTEMA SEGURO
Es aquel para el cual no se conoce mejor
sistema de ataque que el de Fuerza Bruta. Es
el ideal perseguido por la criptografa aplicada.
Si el espacio de claves fuese (por ejemplo) del
orden de 2
128
( 10
38
), y se hiciesen tanteos de
fuerza bruta a razn de 10
20
claves por
segundo (imposible!!!), no alcanzara la edad
del universo desde el big-bang ( 10
17
seg)
para quebrar ese sistema. La esperanza de
acertar en un tanteo de un espacio |N| es |N|/2.
21 cripto I-scolnik-hecht
El ataque es estadstico. La sustitucin simple
conserva las frecuencias de letras, digramas,
trigramas, etc.
Frecuencias decrecientes de letras (ingls): @=sp
@, E, T, A, O, I, N, S, H, R, D, L, C, U, M, W, F, G, Y, P, B, V, K,
J, X, Q, Z
Frecuencias decrecientes de digramas:
TH, HE, IN, ER, AN, RE, ED, ON, ES, ST, EN, AT, TO, NT, HA, ND,
OU, EA, NG, AS, OR, TI, IS, ET, IT, AR, TE, SE, HI, OF
Frecuencias decrecientes de trigramas:
THE, ING, AND, HER, ERE, ENT, THA, NTH, WAS, ETH, FOR, DTH
Tener en cuenta digramas y trigramas prohibidos:
ZZ, TXZ, AAA, KPL, etc
CRIPTOANALISIS ELEMENTAL:
ataque a la sustitucin monoalfabtica
22 cripto I-scolnik-hecht
23 cripto I-scolnik-hecht
Observar la distribucin no uniforme (redundancia)
que facilita el ataque estadstico a las claves de
sustitucin
Ejemplo concreto: el Quijote El texto del Quijote contiene 1.640.502 letras:
LETRA CANTIDAD PORCENTAJE
e 229188 14,0%
a 200492 12,2%
o 162512 9,9%
s 125726 7,7%
n 108440 6,6%
r 100953 6,2%
i 90070 5,5%
l 89141 5,4%
d 87237 5,3%
u 79471 4,8%
t 61749 3,8%
c 59435 3,6%
m 44658 2,7%
p 35464 2,2%
24 cripto I-scolnik-hecht
C13R70 D14 D3 V3R4N0 3574B4 3N L4 PL4Y4 0853RV4ND0 D05 CH1C45
8R1NC4ND0 3N 14 4R3N4, 357484N 7R484J484N MUCH0 C0N57RUY3ND0 UN
C4571LL0 D3 4R3N4 C0N 70RR35, P454D1Z05, 0CUL705 Y PU3N735.
CU4ND0 357484N 4C484ND0 V1N0 UN4 0L4 D357RUY3ND0 70D0
R3DUC13ND0 3L C4571LL0 4 UN M0N70N D3 4R3N4 Y 35PUM4...
P3N53 9U3 D35PU35 DE 74N70 35FU3RZ0 L45 CH1C45 C0M3NZ4R14N 4
L10R4R, P3R0 3N V3Z D3 350, C0RR13R0N P0R L4 P14Y4 R13ND0 Y
JU64ND0 Y C0M3NZ4R0N 4 C0N57RU1R 07R0 C4571LL0
C0MPR3ND1 9U3 H4814 4PR3ND1D0 UN4 6R4N L3CC10N; 64574M05 MUCH0
713MP0 D3 NU357R4 V1D4 C0N57RUY3ND0 4L6UN4 C054 P3R0 CU4ND0
M45 74RD3 UN4 0L4 L1364 4 D357RU1R 70D0, S010 P3RM4N3C3 L4
4M1574D, 3L 4M0R Y 3L C4R10, Y L45 M4N05 D3 49U3LL05 9U3 50N
C4P4C35 D3 H4C3RN05 50NRR31R.
LA REDUNDANCIA DEL LENGUAJE LE
CONFIERE ROBUSTEZ A LAS
COMUNICACIONES
25 cripto I-scolnik-hecht
Por ejemplo, en el texto cifrado:
YIFQFMZRWQFYVECFMDZLCVMRZWNMDZVEJBTXCDDUMJN
DIFEFMDZCDMQZKCEYFCJMYRNCWJCSZREXCHZUNMXZNZU
CDRJXYYSMRTMEYIFZWDYVZVYFZUMRZCRWNZDZJJXZWG
Se hallaron las siguientes frecuencias decrecientes
de letras:
Z, M, C, D, J, F, Y, R, N
Se les asignan inicialmente (por tanteo):
E, T, A, O, I, N, S, H, R
Usando las frecuencias decrecientes de digramas:
TH, HE, IN, ER, AN, RE, ED, y los digramas prohibidos, se
resuelven loas casos dudosos. Por computadora
en minutos (o segundos) se resuelve cualquier
clave de este tipo
CRIPTOANALISIS ELEMENTAL:
ataque a la sustitucin monoalfabtica
26 cripto I-scolnik-hecht
Supongamos que el cifrado sea
FMXVEDKAPHFERBNDKRXRSREFMORUDSDKDVSHVUFEDKAPRKD
LYEVLRHHRH
Las letras mas frecuentes son R y D. Si se le asignan (para
ingls) las letras E y T, se obtiene un sistema lineal:
4a+b=17 (ER)
19a+b=3 (TD)
Resolviendo se obtienen a=6 y b=19 (en Z
26
), lo que es
ilegal (el MCD(6,26)>1). Pero tanteando con otras
posibilidades, resulta:
4a+b=17 (ER)
19a+b=7 (TH)
Se obtiene a=3 y b=5, lo que permite desencriptar sin
problemas: x=a
-1
(y-b) mod 26
ALGORITHMSAREQUITEGENERALDEFINITIONSOFARITHMETICPR
OCESSES
CRIPTOANALISIS ELEMENTAL:
ataque al cifrador afn
27 cripto I-scolnik-hecht
TEST DE KASISKI
(Friedrich Kasiski 1863)
Se trata de descubrir la longitud de clave -m-
empleada como primer paso para su quiebre
1. BUSCAR DISTANCIAS ENTRE n-GRAMAS
(n>=3) IDENTICOS (d1, d2, d3, .)
2. LA LONGITUD DE LA CLAVE (m) ES MUY
PROBABLEMENTE EL MCD(d1, d2, d3, )
CRIPTOANALISIS ELEMENTAL:
ataque a la sustitucin polialfabtica (tipo Vigenre)
28 cripto I-scolnik-hecht
INDICE DE COINCIDENCIA
Wolfe Friedman (1920)
Probabilidad de que dos elementos x de un string x
1
..x
n
sean
idnticos
I
c
(x)= (f
i
(f
i
-1) )/(n(n-1))
f
i
:frecuencia observada de x
i,
(x
i
= AZ)
suma desde cero a 25 para letras sin ee.
Para 26 letras en strings aleatorios I
c
(x)=0.038,
para cualquier idioma y por la redundancia
informtica es superior, para ingls es I
c
(x)=0.065
Esta distancia estadstica permite reconocer
longitud (m) de claves, al correlacionar series
desplazadas de strings.
CRIPTOANALISIS ELEMENTAL:
ataque a la sustitucin polialfabtica (tipo Vigenre)
29 cripto I-scolnik-hecht
INDICE MUTUO DE COINCIDENCIAS (mtodo del
corrimiento)
Probabilidad de que un elemento x de un string
x
1
..x
n
sean idntico a un elemento y de otro string
y
1
..y
n
independiente
MI
c
(x,y)= (f
i
f
i
)/(nn)
f
i
: frecuencia observada de x
i,
(x
i
= AZ)
f
i
: frecuencia observada de y
i,
(y
i
= AZ)
suma desde cero a 25 para letras sin ee.
Presenta mximos cuando hay correlacin
significativa (debida a la redundancia del
lenguaje) y por eso permite inferir claves.
CRIPTOANALISIS ELEMENTAL:
ataque a la sustitucin polialfabtica (tipo Vigenre)
30 cripto I-scolnik-hecht
Es difcil de atacar por ataque CIFRADO-SOLO
pero sucumbe muy fcil ante un ataque PLANO-
CONOCIDO
Supongamos que Oscar sabe que se trata de un
Hill m=2 posee fridayPQCFKU
Entonces, de las tres parejas tipo (fr)->(PQ) sabr
que: ek(5,17)=(15,16) , ek(8,3)=(2,5) y
ek(0,24)=(10,20)
Se plantea y resuelve un sistema lineal y se
obtiene la matriz K usada como clave.
CRIPTOANALISIS ELEMENTAL:
ataque al mtodo de Hill
31 cripto I-scolnik-hecht

Anda mungkin juga menyukai