Documentos de Académico
Documentos de Profesional
Documentos de Cultura
CRIPTOSISTEMAS CLSICOS
Antes de comenzar este captulo, permtame una breve aclaracin. Como habr podido comprobar por
el contenido si es que lo ha ledo claro- al apartado de la criptografa clsica le he dedicado un buen
nmero de pginas, casi la cuarta parte del libro. Si esto es mera historia cultura dira alguien y con
toda razn- por qu dedicarle tantas pginas en un libro con un perfil universitario y carcter tcnico?
Buena pregunta, pero tengo para ello una buena respuesta. Los temas de Teora de la Informacin y
Matemtica Discreta vistos en un captulo anterior pueden entenderse mucho mejor aplicando estos
conceptos a criptosistemas reales. Por otra parte, los sistemas que hemos denominado clsicos son
especialmente sencillos y didcticos, lo que los convierte en idneos para fortalecer aquellos conceptos.
Adems, si este libro cae en manos de un lector o lectora que no tenga este perfil universitario, le ser
de gran ayuda y seguramente pasar un rato divertido. No hay mucha bibliografa sobre estos temas.
Ahora bien, si no desea inmiscuirse en la historia de la criptografa, puede obviar su lectura No obstante,
siempre es bueno adquirir una cierta cultura sobre un tema tan apasionante como ste y que, por una u
otra razn, puede estar de moda. As, en cualquier tertulia podr hacer el comentario oportuno y
ocurrente ante sus amigos/as y quedar muy bien. Por lo tanto, aunque sea a vuelo de pjaro, le
recomiendo su lectura. Adems del libro electrnico ya comentado, en la asignatura de Seguridad
Informtica de la EUIUPM se ha desarrollado diverso software de prcticas con diversos algoritmos,
entre ellos stos clsicos, entre otros, permitiendo al usuario comprobar en su ordenador las tcnicas de
cifra, descifrado y, lo que es ms interesante, el criptoanlisis de muchos de ellos. Puede encontrarlos
junto a otros programas en: http://www.criptored.upm.es/paginas/software.htm#propio.
1.1. INTRODUCCIN
CRIPTOSISTEMAS CLSICOS
Khan, David, "The Codebreakers. The Story of Secret Writing", Macmillan Publishing
Company, New York, 1967, pp. 266 ss. y 282 ss.
CRIPTOSISTEMAS CLSICOS
que los norteamericanos llamaron Purple, cuyo cdigo fue roto por William Friedman,
quizs el criptlogo ms importante de la historia, y un grupo de criptoanalistas. Si
bien es cierto que ello no pudo evitar el ataque de los japoneses a Pearl Harbor, el
esfuerzo realizado por todos en la destruccin de tales cdigos jug luego un papel
fundamental y marc la derrota del pueblo nipn as como el fin de la guerra.
En resumen, si se repasa la historia de la primera mitad del siglo XX y en
especial todo lo relativo a la informacin secreta que se transmita por radio en forma
cifrada y que, tras ser interceptada por el enemigo, era criptoanalizada en verdaderas
empresas rompedoras de cdigos, no resulta nada extrao las afirmaciones hechas
por polticos de la poca en cuanto a que el uso de las tcnicas criptogrficas cambi
el curso de los acontecimientos, desequilibrando la balanza hacia un sentido. El lector
interesado en este apasionante tema histrico, encontrar en el libro de David Khan
"The Codebrackers" -verdadero tratado sobre la historia de la criptologa clsica- una
lectura amena y llena de ancdotas sobre las aplicaciones de la criptografa desde sus
albores hasta la dcada de los sesenta. A partir de esta poca, sern los ordenadores
y la informtica quienes toman el relevo del protagonismo en los sistemas de cifra.
Decamos en un captulo anterior que dos hechos significativos marcan un
punto de inflexin en el mundo de la criptografa. El primero de ellos, los estudios que
en el ao 1948 realiza Claude Shannon sobre teora de la informacin y criptologa:
desde ese momento, la criptologa deja de ser considerada como un mero arte
rodeado de un cierto aire de misterio y en algunos casos excepticismo, para ser
tratada como una rama ms de las matemticas. Hoy tambin tienen un papel
fundamental la informtica y las ciencias de la ingeniera. El segundo hecho es la
publicacin en el ao 1976 de un artculo por parte de Whitfield Diffie y Martin Hellman
en el que proponen una nueva filosofa de cifra, dando lugar a los criptosistemas de
clave pblica.
Segn lo anterior, podramos afirmar entonces que la criptografa clsica abarca
desde tiempos inmemoriales, como veremos a continuacin, hasta los aos de la
posguerra, es decir, hasta la mitad del siglo XX. El adjetivo de clsica, en
contraposicin al de criptosistemas modernos, se debe tanto a las tcnicas utilizadas
en las primeras, bsicamente operaciones de sustitucin y transposicin de
caracteres, con o sin clave pero siempre unido al concepto de clave secreta, como al
uso de mquinas dedicadas a la cifra. En el caso de los sistemas modernos, stos
hacen uso, adems de lo anterior, de algunas propiedades matemticas como, por
ejemplo, la dificultad del clculo del logaritmo discreto o el problema de la factorizacin
de grandes nmeros, como vimos en el captulo anterior, unido esto a la
representacin binaria de la informacin. No obstante, muchos sistemas modernos y
que en la actualidad se siguen utilizando, como los algoritmos de clave secreta DES e
IDEA, se basan en conceptos que podramos denominar clsicos como son los de
transposicin y sustitucin con una clave privada, si bien en estos sistemas la
operacin se realiza sobre una cadena de bits y no sobre caracteres.
Muchos de los criptosistemas clsicos, en particular aquellos que transforman
el mensaje en claro aplicando tcnicas de sustitucin y transposicin, basan su
seguridad principalmente en el secreto de la transformacin o algoritmo de cifra. Es
sta tambin una diferencia fundamental con respecto a los sistemas modernos, en
los que el algoritmo se hace pblico puesto que la fortaleza del sistema reside en la
imposibilidad computacional de romper una clave secreta. Observe que el hacer
CRIPTOSISTEMAS CLSICOS
La esctala
R
A
A
E
B
S
CRIPTOSISTEMAS CLSICOS
El cifrador de Polybios
A
B
C
D
E
A
F
L
Q
V
B
G
M
R
W
C
H
N
S
X
D
IJ
O
T
Y
E
K
P
U
Z
1
2
3
4
5
A
F
L
Q
V
B
G
M
R
W
C
H
N
S
X
D
IJ
O
T
Y
E
K
P
U
Z
CRIPTOSISTEMAS CLSICOS
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
Solucin:
A partir del ejemplo anterior, es fcil apreciar ciertas debilidades en este cifrador
como, por ejemplo, la repeticin de la cadena de caracteres YL en el criptograma
primero y FHVDU en el segundo que entregan demasiadas pistas a un posible
criptoanalista. Estos y otros puntos dbiles del cifrador del Csar que por ahora no
saltan a la vista sern analizados y comentados ms adelante.
El cifrador de Alberti
CRIPTOSISTEMAS CLSICOS
Solucin:
CRIPTOSISTEMAS CLSICOS
El cifrador de Wheatstone
CRIPTOSISTEMAS CLSICOS
Solucin:
El cifrador de Bazeries
El cifrador de tienne Bazeries, criptlogo francs nacido a finales del siglo XIX,
est basado en el cifrador de ruedas de Jefferson, inventado unos 100 aos antes por
Thomas Jefferson reconocido como el padre de la criptografa americana. El
criptgrafo mostrado en la Figura 1.6 consta de 20 discos, cada uno de ellos con 25
letras en su circunferencia, de forma que la clave se establece sobre la generatriz del
cilindro, determinndose 25 alfabetos diferentes. Su funcionamiento es el siguiente:
para cifrar el mensaje, primero se divide ste en bloques de 20 letras, procediendo
luego a su colocacin en forma longitudinal en la lnea del visor. El criptograma que se
enva puede ser cualquiera de las 25 lneas, tambin llamadas generatrices del
cilindro. Por ejemplo, si se elige la generatriz de distancia +2 en la Figura 1.6, el
mensaje M = JE SUIS INDECHIFFRABLE del visor se cifrara como C = LOVS PQUU
10
CRIPTOSISTEMAS CLSICOS
TPUKEJHHCFDA.
CRIPTOSISTEMAS CLSICOS
Solucin:
11
12
R G I S X F W G B A N L F M J H A A S H
13
U I D V C R I I Z D D C Z A K I M B L X
14
K L B O T Z H Y L V C O N D W A L M V Z
15
W H S K L P O U I E E P D N C G Q E O B
......
a) C = KLBOTZHYLVCONDWALMVZ.
b) Segn la secuencia indicada, tomamos caracteres consecutivos de
las lneas 11,12,13,12,11,10,9,10,11,12,13,12,11,10,9,10,11,12,13,12
que se encuentran subrayados. C = IGDSNMBEOADLRUDEIALH.
La mquina Enigma
Deavours, Cipher; Khan, David; Kruh, Louis; Mellen, Greg; Winkel, Brian,
"Cryptology: Machines, History & Methods", Artech House, 1989. Bauer, F.L.,
Decrypted Secrets. Methods and Maxims of Cryptology, Springer, 1991.
12
CRIPTOSISTEMAS CLSICOS
Mundial, en especial por parte del ejrcito alemn. El imperio japons tambin cifra
sus mensajes con una mquina similar denominada Purple. Estos cdigos, por muy
difciles que puedan parecer, fueron rotos por los criptoanalistas de la poca.
Los rotores se desplazan como un odmetro. Es decir, al cifrar un carcter el
primer rotor avanza una posicin y slo cuando ste ha realizado una rotacin
completa, el segundo se desplaza un carcter, y as sucesivamente. Estos volvern a
su posicin inicial, tras un perodo igual a nt. Por ejemplo, en un sistema con 4 rotores,
se utilizan de 264 = 456.976 alfabetos. Si aumentamos los rotores a 5, esta cantidad
asciende a 11.881.376. La operacin de cifra para estas mquinas sigue la siguiente
congruencia:
Ei(M) = (fi(M - pi)mod 26 + pi) mod 26
1.1
1.2
La mquina Hagelin
La mquina Hagelin fue inventada por el criptlogo sueco Boris Hagelin, quien
adquiri en 1927 la fbrica de mquinas de cifrar de Arvid G. Damm, otro inventor
sueco que no tuvo la suerte de sacar un producto competitivo en el mercado. Entre los
aos veinte y los treinta, Hagelin disea diversas mquinas (B-21, B-211, C-36, C-48,
etc.) en las que a travs de ruedas con piones realiza una cifra similar a la utilizada
por el sistema de Beaufort que veremos ms adelante.
La particularidad de estas mquinas que a la postre hizo millonario a Hagelin,
probablemente ante la desesperacin de Damm, estaba en una periodicidad muy alta
puesto que el nmero de dientes de las diferentes ruedas eran primos entre s. Para
seis ruedas estos valores eran 26, 25, 23, 21, 19 y 17, de forma que el perodo era
igual a su producto, un valor que supera los 100 millones. La ecuacin matemtica
que representa al cifrado de Hagelin es:
Eki(Mj) = (ki - Mj) mod 26
1.3
CRIPTOSISTEMAS CLSICOS
Alfabeto 2:
Alfabeto 3:
Alfabeto 4:
Alfabeto 5:
13
A1
A2
10
20
30
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6
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
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 1 2 3 4 5 6 7 8 9 0
14
CRIPTOSISTEMAS CLSICOS
CRIPTOSISTEMAS CLSICOS
15
0,10
Frecuencia Alta
Frecuencia Media
Frecuencia Baja
Valores de frecuencia relativa expresadas en tanto por ciento
16
CRIPTOSISTEMAS CLSICOS
cerca del 2,5 por ciento. Asimismo, existirn digramas con frecuencia nula como sera
el caso de QA, KK, L, WZ, etc., pues no forman parte de palabra alguna ni son
trmino e inicio de dos palabras contiguas. No ser ste el caso, por ejemplo, de un
digrama como NF pues puede ser final e inicio de palabras contiguas en un mensaje
como, por ejemplo, rocnflaco, mastnfurioso, o atraccinfatal.
Ejemplo 1.6:
Solucin:
A B C D E F G
A
5 6 7 13 6 1 0
B
7 0 0 0 0 0 0
C
7 0 0 0 0 0 0
D 10 0 0 1 22 0 0
E
3 1 9 3 2 0 1
F
0 0 0 0 0 0 0
G
5 0 0 0 0 0 0
H
3 0 0 0 1 0 0
I
1 0 1 3 6 0 2
J
2 0 0 0 0 0 0
H
0
0
3
0
1
0
0
0
0
0
I
0
0
4
1
1
2
0
2
0
0
J
0
0
0
0
1
0
0
0
1
0
K
0
0
0
0
0
0
0
0
0
0
L
13
0
1
0
14
2
0
0
2
0
M
5
0
0
0
2
0
0
0
0
0
N
9
0
3
0
18
0
1
0
7
0
0
0
0
0
0
0
0
0
0
0
O
3
0
11
5
0
0
6
2
0
0
P
1
0
0
0
1
0
0
0
0
0
Q
5
0
0
0
1
0
0
0
0
0
R
10
5
0
1
8
1
1
0
1
0
S T
14 0
0 0
00
0 0
11 1
0 0
0 0
0 0
2 0
0 0
U
2
0
3
2
0
0
1
0
0
1
V
0
0
0
0
3
0
0
0
1
0
W
0
0
0
0
0
0
0
0
0
0
X
0
0
0
0
1
0
0
0
0
0
Y
2
0
0
0
1
0
0
0
0
0
Z
2
0
0
0
0
0
0
0
0
0
CRIPTOSISTEMAS CLSICOS
K
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
L 14 0 0 0 4 0 5 0 0 0 0 7 0 0 0 13
M 6 2 0 0 1 0 0 0 4 0 0 0 0 0 0 3
N
8 0 4 2 3 1 1 1 0 1 0 4 2 0 0 8
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
O
2 2 5 9 0 0 1 2 0 0 0 2 9 7 0 0
P
5 0 0 0 0 0 0 0 1 0 0 2 0 0 0 3
Q
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
R
7 0 0 2 10 0 1 0 2 0 0 0 2 3 0 8
S
7 1 4 8 6 2 0 0 1 0 0 3 2 1 0 2
T
3 0 0 0 6 0 0 0 3 0 0 0 0 0 0 4
U
3 0 2 1 11 1 2 1 3 0 0 0 1 6 0 0
V
2 0 0 0 4 0 0 0 2 0 0 0 0 0 0 0
W 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
X
0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0
Y
1 0 0 0 0 0 1 0 0 0 0 1 0 0 0 2
Z
4 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1
0
1
3
1
0
1
0
0
0
2
0
0
0
0
0
1
0
0
0
0
0
0
3
0
0
1
0
0
0
0
0
0
1
0
0
2
0
2
0
5
0
0
1
0
4
1
0
0
0
0
0
0
1
3
6
0
16
0
0
0
1
0
1
0
0
0
0
0
0
0
0
8
0
3
0
0
2
6
0
1
0
0
0
0
0
0
3
1
2
0
0
0
11
2
5
1
0
0
0
0
2
0
0
0
0
0
0
0
0
0
0
3
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
3
0
0
1
1
0
1
0
0
0
0
0
17
0
1
0
1
0
1
0
0
0
0
0
0
0
0
0
0
0
ALFABETO ESTNDAR
Cifrador del Csar
POLIGRMICA
DIGRMICA
Cifrador de Playfair
N-GRMICA
Cifrador de Hill
ALFABETO MIXTO
TRANSFORMACIN
PERIDICA
ALFABETOS PROGRESIVOS
Mquina Enigma
NO PERIDICA
Cifrador de Vernam
ALFABETOS LINEALES
ALFABETO ESTNDAR
Cifrador de Vigenre
ALFABETO MIXTO
18
CRIPTOSISTEMAS CLSICOS
CRIPTOSISTEMAS CLSICOS
19
Esta operacin se repetir en cada bloque de 5 caracteres del mensaje. Por lo tanto,
la transposicin implica que los caracteres del criptograma sern exactamente los
mismos que los del texto en claro.
Ejemplo 1.7:
Solucin:
20
CRIPTOSISTEMAS CLSICOS
Mi
A1
A2
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
O P Q R S T U VW X Y Z A B C D E F G H I J K L M N
K L M N O P Q R S T U VW X Y Z A B C D E F G H I J
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
< > ( ) & % / $ T D A C U E N ? @ # [ ]
CRIPTOSISTEMAS CLSICOS
21
realiza mediante un algoritmo que hace corresponder una letra del texto en claro a una
nica letra del criptograma, es decir, cifra monogramas. De ah su denominacin de
cifrador monogrmico. En cuanto al trmino monoalfabeto, quiere decir que se utiliza
un nico alfabeto de cifrado, el mismo que el del texto en claro o uno mixto, pero
distribuido bien de forma aleatoria o bien a travs de una transformacin matemtica.
Luego, si a la letra M del texto en claro le corresponde la letra V o el smbolo # del
alfabeto de cifrado, se cifrar siempre igual pues existe una nica equivalencia o, lo
que es lo mismo, un nico alfabeto de cifrado.
Por su parte, en los cifradores por sustitucin monogrmica polialfabeto, la
operacin de cifra tambin se realiza carcter a carcter, es decir por monogramas.
No obstante, como ya hemos mencionado en apartados anteriores, a travs de una
clave, algoritmo o mecanismo, se obtienen varios alfabetos de cifrado de forma que
una misma letra puede cifrarse con caracteres distintos, dependiendo de su posicin
dentro del texto en claro.
Por ltimo, los cifradores por sustitucin poligrmica tratan el mensaje en
bloques de dos o ms caracteres sobre los que se aplica la transformacin del
criptosistema en cuestin, sustituyendo ngramas del mensaje por ngramas de texto
cifrado.
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
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 VW X Y Z A B C
Con la tabla del cifrador del Csar de la Figura 1.12, cifre el mensaje:
M = CSAR EL EMPERADOR HA SIDO ASESINADO.
Aplicando a cada carcter Mi su equivalente Ci, se obtiene:
C = FHVDU HHOS HUDGR UKDVL GRDVH VLPDG R.
22
CRIPTOSISTEMAS CLSICOS
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
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
E S T O Y A B U R I D
Mi
En este tipo de cifrado se aplica tambin una relacin nica entre un elemento
del alfabeto en claro y un elemento del alfabeto de cifrado, salvo que este ltimo
puede contener otros caracteres o smbolos que no pertenezcan al alfabeto del
mensaje.
Mi
Ci
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
[ { } @ % & ( ) = > < 0 1 2 3 4 5 ]
CRIPTOSISTEMAS CLSICOS
Solucin:
23
I/J
24
CRIPTOSISTEMAS CLSICOS
Para cifrados del Csar sin clave, una forma elemental de criptoanlisis
consiste en escribir bajo el texto cifrado todas las combinaciones de frases, con o sin
sentido, que se obtienen al aplicar a dicho criptograma desplazamientos de 1, 2, 3, ...,
n-1 caracteres, siendo n el nmero de caracteres del alfabeto utilizado. Una de estas
combinaciones dar con el texto en claro y esto ser vlido independientemente del
valor asignado a la constante de desplazamiento. Retomemos el Ejemplo 1.9 en el que
tenamos el siguiente par mensaje/criptograma, respetando los espacios en blanco
para una mayor claridad:
M = CESAR EL EMPERADOR HA SIDO ASESINADO.
C = FHVDU H HOSHUDGRU KD VLGR DVHVLPDGR.
Como nuestro alfabeto contiene 27 caracteres tenemos el cuadro de posibles
mensajes a partir del criptograma que se muestra en la Figura 1.17. En esta figura,
la nica solucin con sentido corresponde a un desplazamiento de 24 caracteres en la
operacin de descifrado. Si al cifrar el mensaje M nos hemos desplazado 3 espacios
hacia delante para obtener el criptograma C, representado en la posicin b = 0 de la
figura, para descifrarlo habr que desplazarse 3 caracteres hacia atrs o bien, de
acuerdo con la modularidad, un desplazamiento hacia delante de 27-3 = 24 espacios.
C:
b=0
b=1
b=2
b=3
b=4
b=5
b=6
b=7
b=8
b=9
FHVDU
GIWEV
HJXFW
IKYGX
JLZHY
KMAIZ
LNBJA
MCKB
NODLC
PEMD
H
IO
JP
KQ
LR
MS
NT
U
OV
PW
HOSHUDGRU
IPTIVEHSV
JQUJWFITW
KRVKXGJUX
LSWLYHKVY
MTXMZILWZ
NUYNAJMXA
VZBKNYB
OWAOCLZC
PXBPDMOAD
KD
LE
MF
NG
H
OI
PJ
QK
RL
SM
VLGR
WMHS
XNIT
YJU
ZOKV
APLW
BQMX
CRNY
DSZ
ETOA
DVHVLPDGR
EWIWMQEHS
FXJXNRFIT
GYKYSGJU
HZLZOTHKV
IAMAPUILW
JBNBQVJMX
KCCRWKNY
LDODSXLZ
MEPETYMOA
Texto cifrado
CRIPTOSISTEMAS CLSICOS
M:
b = 10
b = 11
b = 12
b = 13
b = 14
b = 15
b = 16
b = 17
b = 18
b = 19
b = 20
b = 21
b = 22
b = 23
b = 24
b = 25
b = 26
OQFNE
PRGF
QSHOG
RTIPH
SUJQI
TVKRJ
UWLSK
VXMTL
WYNUM
XZVN
YAOW
ZBPXO
ACQYP
BDRZQ
CESAR
DFTBS
EGUCT
QX
RY
SZ
TA
UB
VC
WD
XE
YF
ZG
AH
BI
CJ
DK
EL
FM
GN
QYCQENPBE
RZDRFQCF
SAESGORDG
TBFTHPSEH
UCGUIQTFI
VDHVJRUGJ
WEIWKSVHK
XFJXLTWIL
YGKYMUXJM
ZHLZNVYKN
AIMAWZL
BJNBOXAMO
CKCPYBNP
DLODQZCQ
EMPERADOR
FNQFSBEPS
GRGTCFQT
TN
U
VO
WP
XQ
YR
ZS
AT
BU
CV
DW
EX
FY
GZ
HA
IB
JC
FUPB
GVQC
HWRD
IXSE
JYTF
KZUG
LAVH
MBWI
NCXJ
DYK
OEZL
PFAM
QGBN
RHC
SIDO
TJEP
UKFQ
NFQFUZNPB
GRGVAQC
OHSHWBORD
PITIXCPSE
QJUJYDQTF
RKVKZERUG
SLWLAFSVH
TMXMBGTWI
UNYNCHUXJ
VZDIVYK
WOAOEJWZL
XPBPFKXAM
YQCQGLYBN
ZRDRHMZC
ASESINADO
BTFTJBEP
CUGUKOCFQ
25
Texto en claro
1.4
26
CRIPTOSISTEMAS CLSICOS
CRIPTOSISTEMAS CLSICOS
27
1.5
28
CRIPTOSISTEMAS CLSICOS
parte, para la existencia de inversos deber cumplirse que los valores de la constante
a y el mdulo n sean primos entre s; es decir mcd (a,n) = 1. Al trabajar en mdulo 27 =
33, los valores permitidos de la constante de decimacin a sern los 18 elementos del
CRR(27) que no tengan como factor comn el nmero 3, es decir: 1, 2, 4, 5, 7, 8, 10,
11, 13, 14, 16, 17, 19, 20, 22, 23, 25 y 26.
En cuanto a la constante de desplazamiento b, sta puede tomar cualquier
valor comprendido entre 0 y n-1 pues se asegura en todo momento la existencia del
inverso para la adicin. Desplazamientos mayores que n-1 caern dentro del mismo
anillo por lo que su valor se reduce mdulo n. Por ejemplo, un desplazamiento de b =
32 espacios equivale a (32-kn) = (32-127) = 5 espacios efectivos. As mismo, un
desplazamiento negativo (caracteres hacia la izquierda del alfabeto) puede
trasladarse a su equivalente en el intervalo [0, n-1]. Por lo tanto, podemos decir que un
desplazamiento de b = -8 caracteres equivale a (-8+kn) = (-8+127) = 19 caracteres
hacia la derecha.
De esta manera, diremos que cuando la constante de decimacin a es igual a
la unidad, el cifrador genrico de sustitucin se transforma en uno de desplazamiento
puro; cuando la constante de desplazamiento b es igual a cero hablamos de cifradores
por decimacin pura y cuando se cumple que la constante a es mayor que la unidad y
b es distinto de cero, la cifra es por sustitucin afn.
1.6
Mi = (Ci - b) mod n
1.7
Mi = (Ci + n - b) mod n
1.8
CRIPTOSISTEMAS CLSICOS
29
1.9
1.10
donde a- 1 ser el inverso del factor de decimacin en el cuerpo n; es decir inv (a,n).
Ejemplo 1.16: a) Encuentre el alfabeto de cifrado para la transformacin
monoalfabtica por decimacin Ci = 20 Mi mod 27.
b) Cifre con este alfabeto el siguiente mensaje M = DILE A LAURA QUE
LA QUIERO.
Solucin:
a) 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6
Mi 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
Ci A T N G Z S M F Y R L E X Q K D W P J C V O I B U H
C0 = 20A mod 27 = 200 mod 27 = 0 = A
C1 = 20B mod 27 = 201 mod 27 = 20 = T
C2 = 20C mod 27 = 202 mod 27 = 40 mod 27 = 13 = N, etc.
30
CRIPTOSISTEMAS CLSICOS
Solucin:
1.11
1.12
1.13
CRIPTOSISTEMAS CLSICOS
31
_ _ _ _ _ R E F A N O S P L _ _ _ _ _ _ _ _ _ _ _ _
32
CRIPTOSISTEMAS CLSICOS
a4 = 6 mod 27
a = 67 mod 27 a = 15
CRIPTOSISTEMAS CLSICOS
33
se corresponde con
se corresponde con
Criptograma: F(5)
Texto claro: A(0)
Criptograma: N(13)
Texto claro: O(15)
Criptograma: I(8)
Luego:
(a4 + b) = 5 mod 27
(a0 + b) = 13 mod 27 b = 13
(a15 + b) = 8 mod 27
34
CRIPTOSISTEMAS CLSICOS
Criptograma: N(13)
Texto claro: A(0)
Criptograma: F(5)
Texto claro: O(15)
Criptograma: I(8)
Luego:
(a4 + b) = 13 mod 27
(a0 + b) = 5 mod 27 b = 5
(a15 + b) = 8 mod 27
Restando la primera ecuacin a la tercera: a11 = 22 mod 27.
Luego a = (22inv(11,27))mod 27 = 225 mod 27 a = 2.
Esto da lugar a E(M) = (2Mi + 5) mod 27, cuyo alfabeto es:
Mi 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
Ci F H J L N O Q S U W Y A C E G I K M P R T V X Z B D
CRIPTOSISTEMAS CLSICOS
35
36
CRIPTOSISTEMAS CLSICOS
03
19
23
62
07
25
13
55
43
18
53
10
33
06
M = B A J A M E
C = 62 36 43 03 71 25
36
83
91
28
70
62
70
60
71
88
89
97
80
L A
J A U L A J A I M E
18 91 43 19 06 53 83 43 83 55 10 97.
(01-10)
(11-20)
(21-30)
(31-40)
(41-50)
(51-60)
(61-70)
(71-80)
(81-90)
(91-100)
(101-107)
CRIPTOSISTEMAS CLSICOS
37
24
9
4
15
7
25
18
21
52
33
27
77
65
63
37
28
90
84
36
45
92
94
49
79
85
51
81
83
88
98
89
Deavours Cipher, Kahn David, Kruh Louis, Mellen Greg, Winkel Brian, "Cryptology:
Machines, History & Methods", Artech House, 1989, pp. 491-505.
38
CRIPTOSISTEMAS CLSICOS
99
CRIPTOSISTEMAS CLSICOS
39
asignar nmeros de tres dgitos a las letras del alfabeto, obteniendo dichos nmeros a
partir de una pgina en particular de una Gua de Telfonos; si es de otro pas y
antigua mejor an. Dicha posicin o pgina sera la clave secreta del criptosistema en
cuestin.
...
40
CRIPTOSISTEMAS CLSICOS
A
B
C
D
E
F
G
H
I
J
...
60
39
73
12
40
14
96
4
74
7
47
8
1
48
88
95
85
61
29
49
13
53
21
2
97
66
15
28
77
68
37
72
94
84
26
22
69
46
86
30
5
9
65
20
52
83
25
100
50
45
91
89
10
59
71
78
51
24
62
75
33
57
82
3
79
16
42
98
6
63
19
93
58
11
35
41
76
70
43
87
92
38
36
55
64
34
17
67
44
31
80
54
18
99
56
27
23
90
32
81
CRIPTOSISTEMAS CLSICOS
Solucin:
41
42
CRIPTOSISTEMAS CLSICOS
CRIPTOSISTEMAS CLSICOS
43
1.14
1.15
S S O S S O S S O S S O S
V
E+S = (4+19) mod27 = 23
W
S
A+O = (0+15) mod27 = 15
O
L
R+S = (18+19) mod27 = 10 K
S
E+S = (4+19) mod27 = 23
W
H
N+O = (13+15) mod27 = 1 B
M
M+S = (12+19) mod27 = 4 E
K
U+S = (21+19) mod27 = 13 N
S
R+O = (18+15) mod27 = 6 G
F
U+S = (21+19) mod27 = 13 N
N
R+S = (18+19) mod27 = 10 K
Q
O+O = (15+15) mod27 = 3 D
D
A+S = (0+19) mod27 = 19
S
44
CRIPTOSISTEMAS CLSICOS
TEXTO
EN
C LAR O
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6
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
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
P
Q
R
S
T
U
V
W
X
X
Z
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
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
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
A
C
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
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
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
D
F
G
H
I
J
K
L
M
N
O
P
Q
R
S
T
U
V
W
X
Y
Z
A
B
C
D
E
G
H
I
J
K
L
M
N
O
P
Q
R
S
T
U
V
W
X
Y
Z
A
B
C
D
E
F
H
I
J
K
L
M
N
O
P
Q
R
S
T
U
V
W
X
Y
Z
A
B
C
D
E
F
G
I
J
K
L
M
N
O
P
Q
R
S
T
U
V
W
X
Y
Z
A
B
C
D
E
F
G
H
J
K
L
M
N
O
P
Q
R
S
T
U
V
W
X
Y
Z
A
B
C
D
E
F
G
H
I
K
L
M
N
O
P
Q
R
S
T
U
V
W
X
Y
Z
A
B
C
D
E
F
G
H
I
J
L
M
N
O
P
Q
R
S
T
U
V
W
X
Y
Z
A
B
C
D
E
F
G
H
I
J
K
M
N
O
P
Q
R
S
T
U
V
W
X
Y
Z
A
B
C
D
E
F
G
H
I
J
K
L
O
P
Q
R
S
T
U
V
W
X
Y
Z
A
B
C
D
E
F
G
H
I
J
K
L
M
O
P
Q
R
S
T
U
V
W
X
Y
Z
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
A
B
C
D
E
F
G
H
I
J
K
L
M
N
P
Q
R
S
T
U
V
W
X
Y
Z
A
B
C
D
E
F
G
H
I
J
K
L
M
N
Q
R
S
T
U
V
W
X
Y
Z
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
P
R
S
T
U
V
W
X
Y
Z
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
P
Q
S
T
U
V
W
X
Y
Z
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
P
Q
R
T
U
V
W
X
Y
Z
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
P
Q
R
S
U
V
W
X
Y
Z
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
P
Q
R
S
T
V
W
X
Y
Z
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
P
Q
R
S
T
U
W
X
Y
Z
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
P
Q
R
S
T
U
V
X
Y
Z
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
P
Q
R
S
T
U
V
W
Y
Z
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
P
Q
R
S
T
U
V
W
X
Z
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
CRIPTOSISTEMAS CLSICOS
45
1.16
1.17
Por ejemplo, para el primer elemento del criptograma del ejemplo anterior (R),
con letra de clave (T) obtenemos: (R-T) mod 27 = (18-20) mod 27 = -2 mod 27 = 25 =
Y. Contine Ud. con el resto del criptograma.
46
CRIPTOSISTEMAS CLSICOS
Cifrado de Vigenre, cuya caracterstica radica en que se cifra el mensaje con una
clave que consiste en el mismo mensaje al que se le aade al comienzo una clave
denominada primaria. Luego, la secuencia de clave ser tan larga como el propio
mensaje. Por ejemplo, si utilizando la clave K = MARKETING deseamos cifrar el
mensaje M = YA ES PRIMAVERA EN EL CORTE INGLS, usando la Tabla de
Vigenre obtenemos el siguiente criptograma:
M = Y A E S P R I M A V E R A E N E L C O R T E I N G L E S
K = M A R K E T I N G Y A E S P R I M A V E R A E N E L C O
C = K A V C T L P Y G T E V S T E M W C K V L E M Z K V G H
Y
A
E
S
P
R
I
M
A
Con este mtodo seremos capaces de descifrar slo los primeros 9 caracteres
del criptograma KAVCTLPYG correspondientes a la clave primaria MARKETING. Para
continuar descifrando, hacemos uso de los 9 caracteres ya descifrados (YAESPRIMA)
que, segn el mtodo, irn a continuacin de dicha clave. Por lo tanto, desciframos
ahora el criptograma TEVSTEMWC con la clave YAESPRIMA y as sucesivamente
hasta obtener el mensaje original que se lo dejo como ejercicio. Aunque impresione
ms que otras tcnicas de cifra, el secreto de este criptosistema reside nicamente en
el de la clave. Conocida sta, el criptoanlisis es elemental.
Ejemplo 1.29: Si la clave usada en un cifrador autoclave es PIZZA, descifre el siguiente
criptograma.
C = SWMCE HHGDI OLXCV OMSGC WXQVO MSGKX TSQDT MEFL
Solucin:
Bloque 1: SWMCE
Clave: PIZZA
M1 = DONDE
Bloque 2: HHGDI
Clave: DONDE
M2 = ESTAE
Bloque 3: OLXCV
Clave: ESTAE
M3 = LSECR
Bloque 4: OMSGC
Clave: LSECR
M4 = ETOEL
Bloque 5: WXQVO
Clave: ETOEL
M5 = SECRE
Bloque 6: MSGKX
Clave: SECRE
M6 = TOEST
Bloque 7: TSQDT
Clave: TOEST
M7 = AENLA
Bloque 8: MEFL
Clave: AENL
M8 = MASA
Luego, incluyendo los signos de puntuacin, este sabroso mensaje es:
M = DNDE EST EL SECRETO? EL SECRETO EST EN LA MASA.
(He incluido los signos)
CRIPTOSISTEMAS CLSICOS
47
1.18
TEXTO EN CLARO
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6
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
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
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
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
Z
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
Y
Z
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
P
Q
R
S
T
U
V
W
X
X
Y
Z
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
P
Q
R
S
T
U
V
W
W
X
Y
Z
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
P
Q
R
S
T
U
V
V
W
X
Y
Z
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
P
Q
R
S
T
U
U
V
W
X
Y
Z
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
P
Q
R
S
T
T
U
V
W
X
Y
Z
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
P
Q
R
S
S
T
U
V
W
X
Y
Z
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
P
Q
R
R
S
T
U
V
W
X
Y
Z
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
P
Q
Q
R
S
T
U
V
W
X
Y
Z
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
P
P
Q
R
S
T
U
V
W
X
Y
Z
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
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
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
A
B
C
D
E
F
G
H
I
J
K
L
M
M
N
O
P
Q
R
S
T
U
V
W
X
Y
Z
A
B
C
D
E
F
G
H
I
J
K
L
L
M
N
O
P
Q
R
S
T
U
V
W
X
Y
Z
A
B
C
D
E
F
G
H
I
J
K
K
L
M
N
O
P
Q
R
S
T
U
V
W
X
Y
Z
A
B
C
D
E
F
G
H
I
J
J
K
L
M
N
O
P
Q
R
S
T
U
V
W
X
Y
Z
A
B
C
D
E
F
G
H
I
I
J
K
L
M
N
O
P
Q
R
S
T
U
V
W
X
Y
Z
A
B
C
D
E
F
G
H
H
I
J
K
L
M
N
O
P
Q
R
S
T
U
V
W
X
Y
Z
A
B
C
D
E
F
G
G
H
I
J
K
L
M
N
O
P
Q
R
S
T
U
V
W
X
Y
Z
A
B
C
D
E
F
F
G
H
I
J
K
L
M
N
O
P
Q
R
S
T
U
V
W
X
Y
Z
A
B
C
D
E
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
D
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
C
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
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
A
1.19
48
CRIPTOSISTEMAS CLSICOS
Ejemplo 1.30: Usando la Tabla de Beaufort con clave K = ULTIMTUM, cifre el mensaje
M = ESTO ES LA GUERRA SEORES.
Solucin:
Siguiendo la tabla de la Figura 1.23 se obtiene:
C = QSATI IJUGA HCQMI PHXDH B.
Por la operacin de sustitucin empleada, es posible que, a diferencia del de
Vigenre, un carcter se cifre con su valor en claro con una clave distinta de la letra A,
como es el caso en el ejemplo anterior en que el segundo (S) y el noveno (G)
caracteres se cifran en claro, con las claves (L) y (M), respectivamente. La operacin
de descifrado, tal como comentbamos, es la misma que la de cifrado, con la
excepcin que en vez de texto claro M contamos ahora con texto cifrado C, esto es:
Mi = Dki(Ci) = (ki - Ci) mod n
1.20
Por ejemplo, para los cinco primeros caracteres del ejemplo anterior (QSATI )
aplicando la ecuacin 1.20 se obtiene:
k1 = U; C1 = Q
k2 = L; C2 = S
k3 = T; C3 = A
k4 = I; C4 = T
k5 = M; C5 = I
M1 = (21-17) mod 27 = 4
M2 = (11-19) mod 27 = 19
M3 = (20-0) mod 27 = 20
M4 = (8-20) mod 27 = 15
M5 = (12-8) mod 27 = 4
M1 = E
M2 = S
M3 = T
M4 = O
M5 = E
1.21
Al ser el inverso del algoritmo de Vigenre, este cifrador se puede utilizar para
descifrar criptogramas obtenidos con Vigenre y viceversa. Algo obvio por lo dems.
CRIPTOSISTEMAS CLSICOS
49
Mtodo de Kasiski
C3
C9
C15
C21
C4
C10
C16
C22
C5
C11
C17
C23
C6
C12
C18
C24
Cm-3
Cm-2
Cm-1
Cm
50
CRIPTOSISTEMAS CLSICOS
VICAD
MNPWK
ZYEAC
CLPQP
QMVNF
GNNIL
RYVLP
RSFHV
SKAS
UBZVS
EYEDS
MBRRN
OHASE
AGSJI
WJIFW
NUEJI
DETSJ
FNVRD
ETFPH
BPVI
SRJWR
DSVSU
XOTGG
BCHAS
PSIED
MTIPW
LBHGU
MTIBV
SFQCO
EEINT
RPQRR
EHEUE
BGGMP
UEQVV
ESOM
VEID
TWVMB
GRUEE
JSKET
UOTIE
SLRPW
CBOVN
EHLBX
ANSJA
JGRPW
TFGGM
XRNBL
FFGYA
RPWY
UEDIF
VAEEP
MTJOK
VSUEX
PORDF
ZETGG
TGGMP
EDSDE
QLONM
UELI
MDODS
INQRS
OGTSS
NEMUO
IKTBW
DRDP
WNUVR
SEVEF
ELPWI
JEUEM
TOSEQ
TXJAT
UEEN
CRIPTOSISTEMAS CLSICOS
51
El valor del mximo comn divisor de estas distancias debera ser un mltiplo
de la longitud de la clave, esto es: mcd (256,104,72,156,32) = 4. Luego, la clave
podra tener una longitud igual a cuatro caracteres. Hay que tener cuidado con elegir
cadenas muy cortas ya que stas pueden deberse solamente al azar y echar por tierra
todas nuestras esperanzas de romper la cifra al aparecer una distancia cuyo valor sea
primo con las dems. En nuestro ejemplo sera el caso de elegir, entre otras, tambin
la cadena VR (subrayada) que aparece tres veces al comienzo del criptograma con
una separacin de 65 y 31 caracteres, que no cumple con el mximo comn divisor 4
encontrado anteriormente. Lo mismo ocurre con la cadena RR (subrayada), que se
repite dos veces con una separacin de 142 y luego 19 espacios. Para ms inri, en
ambos casos aparece un nmero primo, lo que asegura que el mcd sea igual a uno.
Si sospechamos que la clave tiene cuatro caracteres, vamos a romper el texto
cifrado en cuatro criptogramas independientes CA, CB, CC y CD de 101 caracteres cada
uno y que llamaremos subcriptogramas, tomando para el primero, segundo, tercero y
cuarto los caracteres separados por cuatro espacios, siguiendo la escritura en
columnas que indicbamos al comienzo de este apartado; es decir:
Primer subcriptograma:
Segundo subcriptograma:
Tercer subcriptograma:
Cuarto subcriptograma:
PQAAEPDMREEDCNUSRIECNIONSAAETLUOLAUIEULMNIIEAAOOLU
MNARSOMRSISERNAISIRTMDTOORLIORRENENOAVSNIAEOFAMTEI
CB =
BVDTSBPPPDPPPBFDPQBUFNUEZCDFBMBESFNPBBBNMKDPF
QFSJFTBPUNJMBNGDUNUFPFSSRPFTPJTBTETTJFUBSUTFTPBE
CC =
VISSSIGSWWSDCQWZNMWVOEQMVIYESPHEEXEEEWMQRPMVISTMSWO
MOEWQWJWEQEGDISSETEGOOSETYWWGQSXLGMXOHHECEEIGGIWEE
CD =
RCKDJEGLRYDRRMKVVTUVVDLWRKEYEHGSHVPLVHCPRVTVDJJDEIZ
VHSRCVGVXRUGGLJVEGEGRGTQGVJXGRKRZGUJRRVJHHUEYGKUNU
Para descifrar los caracteres de la clave, suponiendo una cifra del tipo
Vigenre, debemos encontrar el desplazamiento que se observa en cada uno de estos
cifrados monoalfabticos. Aplicaremos un Mtodo por Coincidencia Mltiple que he
llamado Regla EAOS. Consiste en observar las frecuencias relativas de los caracteres
de cada subcriptograma y marcar las cuatro mayores de forma que sigan
modularmente la posicin de las letras A, E, O y S en el alfabeto, las cuatro letras ms
frecuentes del lenguaje castellano. Evidentemente, si se desea una mayor precisin
pueden tomarse ms letras con el mismo sentido pero en la mayora de los casos y
para lo que aqu nos interesa es suficiente con estas cuatro. Por lo tanto, para estas
cuatro letras, los caracteres m que las representen debern tener una frecuencia
relativa alta y estar situadas en las siguientes posiciones:
52
CRIPTOSISTEMAS CLSICOS
m
m+4
m+15
m+19
mod 27
mod 27
mod 27
mod 27
Esto quiere decir que al ser todos los subcriptogramas resultado de cifrados
monoalfabticos, entonces alguna letra del texto cifrado tendr aproximadamente la
frecuencia caracterstica de la letra A en el lenguaje, otra la de la letra E, otra de la
letra O y otra de la letra S. Estos valores altos de frecuencia debern estar separados
por una relacin de distancias constante pues de la A a la E hay cuatro espacios, de la
E a la O hay once, de la O a la S cuatro y, por ltimo, de la S a la A siete.
En la Figura 1.24 se muestra la tabla con la contabilizacin de los caracteres de
cada subcriptograma para este ejemplo.
A
CA 11 0
CB 0 14
CC 0 0
CD 0 0
C
2
1
1
3
D E F G
3 12 1 0
6 4 12 1
2 18 0 7
5 7 0 12
H I
0 11
0 0
3 7
6 1
J
0
4
1
7
K
0
1
0
5
L M
5 6
0 3
1 7
4 1
N
9
6
1
1
O P
1 10 2
8 6 14
0 0 2
0 6 2
Q R S
1 9 7
2 1 6
6 1 12
1 13 2
T
4
9
3
3
U V W
5 1 0
7 1 0
0 3 12
7 14 0
X
0
0
3
2
Y
0
0
2
3
Z
0
1
1
2
1.22
siendo mA, mE, mO y mS las posiciones de los caracteres con mayor frecuencia relativa
en el criptograma que cumplan este sentido modular.
En este caso, siguiendo la Figura 1.24, para el criptograma CA se observa que
la nica solucin que cumple con la modularidad de (1.22) es aquella en la que el
texto cifrado coincide con el texto en claro AEOS con valores (11,12,10,7), luego es
posible que la primera letra de la clave sea la A. El valor alto que muestra la letra I no
cumple esta condicin y se descarta. Para CB la relacin de letras con alta frecuencia
en este orden modular est muy claro que se encuentra desplazada un carcter a la
derecha, BFPT (14,12,14,9) con lo cual la clave puede ser B. Para el tercer
criptograma CC los nmeros 18, 7, 12, y 12 cumplen con la modularidad exigida por la
ecuacin obteniendo ahora un ciclo EISW por lo que podemos suponer que la tercera
letra de la clave es la E. Por ltimo para el criptograma C D, elegimos los caracteres
RVGK con frecuencias (13,14,12,5) con lo que la clave ser la letra R. Con esto
llegamos a la conclusin de que la clave puede ser K = ABER. Descifraremos
entonces el criptograma C segn Vigenre con la clave ABER, "a ver" qu sucede.
C = PBVRQ VICAD SKAS DETSJ PSIED BGGMP SLRPW RPWY
K = ABERA BERAB ERABE RABER ABERA BERAB ERABE RABER
M = PARAQ UELAC OSANO MESOR PREND ACOMO OTROS AOSH
CRIPTOSISTEMAS CLSICOS
53
Como el texto "Para que la cosa no me sorprenda como otros aos..." tiene
sentido en castellano, y es imposible que se d por pura casualidad, seguimos
descifrando y obtenemos el texto que se indica. No obstante, observe que la cadena
repetida GGMP de criptograma corresponde a la palabra como, bastante comn en
nuestro lenguaje. Como ejercicio, encuentre a qu cadenas de caracteres en claro
corresponden las cadenas de cifrado YEDS, HASE y VSUE que nos han servido para
romper la cifra. El texto completo es:
"Para que la cosa no me sorprenda como otros aos, he comenzado ya con unos
suaves ejercicios de precalentamiento; mientras desayunaba he contemplado una
bola plateada y una tira de espumilln y maana me iniciar en el amor al prjimo con
los que limpien el parabrisas en los semforos. Esta gimnasia del corazn metafrico
es tan importante como la del otro corazn porque los riesgos coronarios estn ah,
escondidos tras la vida sedentaria y parapetados en fechas como estas de Navidad."
Comienzo del artculo "Gimnasia" del periodista Andrs Aberasturi publicado en el peridico El Mundo el
4/12/94, ao del primer curso en que se imparti la asignatura Seguridad Informtica en la EUI.
54
CRIPTOSISTEMAS CLSICOS
uno y luego buscar cadenas de caracteres largas, de una longitud mayor o igual a 3 y
en lo posible que se repitan ms de una vez.
ndice de Coincidencia
12
MD = (pi - )
n
i=0
n-1
1.23
n-1
p 1
i
1.24
i=0
26
MD = pi2 - 0,037
1.25
i=0
CRIPTOSISTEMAS CLSICOS
Ejemplo 1.34:
Solucin:
MD = p - 0,037
26
2
[
p
i -(
55
2
1
) pi + ( )2]
27
27
26 26
2 12
MD = p - pi + ( )
i=0 27 i=0 i=0 27
2
i
26
26
2
1
MD = pi2 - + 27( )2 MD = pi2 - 0,037
27
27
i=0
i=0
La Medida de Dispersin MD evala la altura de los picos y los valles en una
distribucin de frecuencias con respecto a una distribucin uniforme. Para el lenguaje
castellano con n = 27, tenemos que 1/n = 0,037 ser la lnea base, de forma que los
picos sern frecuencias relativas por sobre esta lnea y los valles frecuencias relativas
por debajo de la misma. Luego, si frM es la frecuencia relativa de la letra M, frM - 0,037
ser el tamao del pico o del valle observado y pM - 0,037 el tamao esperado del pico
o del valle. Puesto que los picos sern positivos y los valles negativos, para que estos
valores no se cancelen en la ecuacin de la MD se utiliza (pi - 1/n).
Para una distribucin uniforme, esto es las 27 letras del alfabeto equiprobables,
se tiene MD = 27(1/27) - 1/27 = 0 que es lo esperado pues el Indice de Coincidencia
indica la variacin de la frecuencia de las letras respecto a una distribucin uniforme.
Es lgico que un texto que tenga una distribucin de caracteres equiprobables
presente una medida de dispersin igual a cero. En el otro extremo, si los caracteres
del texto presentan la distribucin caracterstica del lenguaje castellano se tendr:
i=z
2
2
2 2
2
2
2
=
+
+
+
...
+
+
+
p
p
p
p
p
p
p
i a b c x y z = 0,072
1.26
i=a
Luego, la varianza ser MD = 0,072 - 0,037 = 0,035. Esto quiere decir que la
varianza de los caracteres de un criptograma tendr un valor mximo igual a 0,035
cuando el cifrado haya sido monoalfabtico y tiende a cero cuando el cifrado es
polialfabtico y el nmero de alfabetos utilizados es muy grande.
0 MD 0,035
1.27
56
CRIPTOSISTEMAS CLSICOS
n-1
IC = pi2
1.28
i=0
N(N - 1)
1.29
f (f
i
IC =
- 1)
i=0
1.30
N(N - 1)
Ejemplo 1.35: Al cifrar M = ANIMAL RARO con mtodo de Beaufort y K = CERDO (no
tengo nada contra estos nobles animales) se obtiene C = CRKRO
RNRMA.
a) Encuentre la probabilidad de elegir dos caracteres iguales R en
C.
b) Demuestre con este criptograma la ecuacin (1.29).
Solucin:
a) C = CRKRO RNRMA
01234 56789
Como hay 10 letras en el criptograma y existen 4 caracteres R, el valor
de fR es igual a 4, a lo que podramos asociar una probabilidad pR = 0.4
b) Tendremos fR(fR-1) = 4(4-1) = 12 formas de tomar un par de letras R
del criptograma (1-3; 1-5; 1-7; 3-1; 3-5; 3-7; 5-1; 5-3; 5-7; 7-1; 7-3 y 7-5)
pero como tomar el par 1,3 es igual que tomar el par 3,1 etc., el nmero
efectivo de formas ser fR(fR-1)/2. Por otra parte, como el criptograma
tiene 10 letras, habr N(N-1) = 10(10-1) = 90 pares de letras: (0-1; 0-2;
0-3; 0-4; 0-5; 0-6; 0-7; 0-8; 0-9; 1-0; 1-2; 1-3; 9-4; 9-5; 9-6; 9-7; 9-8 y
9-9). Pero como el par jk es igual que kj, entonces el nmero efectivo de
pares de letras ser N(N-1)/2.
Podemos entonces concluir que el Indice de Coincidencia es un mtodo para
encontrar de forma aproximada la varianza que presentan los caracteres de un
CRIPTOSISTEMAS CLSICOS
57
1.31
1.32
IC
0,072
0,054
0,049
0,046
d
5
10
...
Grande
1.33
IC
0,044
0,040
...
0,037
OCTUK GNUKI WKGOV GETKR VQITC CRGT VGOGE GCWOE KHTCF QRQTU
WUVKV WEKQO QOQC NHCDG VKECQ RQNKC NHCDG VKEC
Solucin:
B=1
L=0
U=4
C=15
M=0
V=9
D=2
N=7
W=6
E=12
=3
X=0
F=7
O=11
Y=0
G=16
P=0
Z=0
H=3
Q=11
I=2
R=4
J=0
S=0
58
CRIPTOSISTEMAS CLSICOS
IC = 0,070
IC = 0,073
IC = 0,075
IC = 0,065
CRIPTOSISTEMAS CLSICOS
59
60
CRIPTOSISTEMAS CLSICOS
siglo veinte.
SADOY HARTO DETOD ODESC ANSA
ARTEA LRIOP IENSA LODOS VECES
SRWSY RRZIE LIGHD ZRHHU VQUE
Observe que, debido al tipo de mensaje y clave elegidos, casi todos los pares
de letras de TextoEnClaro y TextoCifrado que generan C son de alta frecuencia. Estn
marcados con una flecha y se indican a continuacin.
Ci
S
U
X
W
MiKi
SA
IN
ET
SE
Ci
W
I
E
R
MiKi
SE
AI
NR
AR
Ci
Z
I
L
I
MiKi
RI
TO
DI
EE
Ci
D
R
H
H
MiKi
DA
DO
ED
SO
CRIPTOSISTEMAS CLSICOS
M
D
TS
AD
W
S
DT
OE
G
H
TN
OS
Q
E
61
NE
AE
A B C D
S R Q P
S S S S
Letra en claro:
Letra clave:
Letra criptograma:
A B C D E F G H I J K L M
U T S R Q P O N M L K J
U U U U U U U U U U U U U
Letra en claro:
Letra clave:
Letra criptograma:
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
X W V U T S R Q P O N M L K J I H G F E D C B A Z Y
X X X X X X X X X X X X X X X X X X X X X X X X X X X
Letra en claro:
Letra clave:
Letra criptograma:
A B C D
W V U T
W W W W
O P Q R
I H G F
W W W W
S
E
W
T U V W X Y Z
D C B A Z Y X
W W W W W W W
Letra en claro:
Letra clave:
Letra criptograma:
A B C D E F G H I J K L M N O P Q R
M L K J I H G F E D C B A Z Y X W V U
M M M M M M M M M M M M M M M M M M M
S
T
M
T U V W X Y Z
S R Q P O N
M M M M M M M
Criptograma:
S
A-S
E-O
O-E
S-A
U
D-R
I-N
N-I
R-D
E F G H I J K L M N O P Q R S T U V W X Y Z
O N M L K J I H G F E D C B A Z Y X W V U T
S S S S S S S S S S S S S S S S S S S S S S S
E F G H
S R Q P
W W W W
N O P Q R S T U V W X Y Z
I H G F E D C B A Z Y X W V
U U U U U U U U U U U U U U
I J K L M N
O N M L K J
W W W W W W W
X
E-T
T-E
W
D-T
E-S
I-O
O-I
S-E
T-D
M
E-I
I-E
S-T
T-S
62
CRIPTOSISTEMAS CLSICOS
M = SESUP ONEQU
K = CUAND OUSAM
C = UYSHS DHWQG
EAPAR
OSCOM
SSROD
ECEND
OCLAV
SEONY
OSCIF
REDUN
GWFCR
RADOS
DANTE
UAPIW
A B C D E F G H I J K L M
U T S R Q P O N M L K J
U U U U U U U U U U U U U
N O P Q R S T U V W X Y Z
I H G F E D C B A Z Y X W V
U U U U U U U U U U U U U U
Letra en claro:
Letra clave:
Letra criptograma:
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
Y X W V U T S R Q P O N M L K J I H G F E D C B A Z
Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y
Letra en claro:
Letra clave:
Letra criptograma:
A B C D
S R Q P
S S S S
E F G H I J K L M N O P Q R S T U V W X Y Z
O N M L K J I H G F E D C B A Z Y X W V U T
S S S S S S S S S S S S S S S S S S S S S S S
U
D-R
I-N
N-I
R-D
Y
-
S
A-S
E-O
O-E
S-A
CRIPTOSISTEMAS CLSICOS
63
1.34
1.35
donde:
para i = 1,2,...,N
Ci = Mi ki
1.36
1.37
Clave
Operacin de
Descifrado
Texto en claro
1100 1011 1001
Criptograma
1110 0110 1101
Texto en claro
1100 1011 1001
64
CRIPTOSISTEMAS CLSICOS
Solucin:
= C
I
F
R
= 2
8
5 18
= 73 12 39 81
= 75 20 44 99
= U
T
Q
R
A
D
O
R
D
E
V
E
R
N
0
3 15 18
3
4 22
4 18 13
07 28 95 52 30 18 32 29 47 20
7 31 110 70 33 22 54 33 65 33
H
E
C
P
G
V
A
G
L
G
A
M
0 12
07 62
7 74
H
T
CRIPTOSISTEMAS CLSICOS
65
1.38
1.39
1.40
66
CRIPTOSISTEMAS CLSICOS
restantes letras del alfabeto hasta completar toda la matriz. Por ejemplo, si la clave es
VERANO AZUL (memorable serie de TV de Antonio Mercero), la matriz ser:
En las Figuras 1.33 y 1.34 se muestran las matrices comentadas para el lenguaje
castellano de 27 caracteres. En este caso supondremos que las letras I y J ocupan
una nica celda, al igual que la y la N. La segunda matriz lleva como clave
VERANO AZUL, memorable serie de televisin espaola.
A
I/J
N/
N/
I/J
Criptograma
RN
BL
FC
Criptograma
ZK
MF
LA
CRIPTOSISTEMAS CLSICOS
67
Criptograma
ZS
WB
Recuerde, adems, que las letras I y J ocupan una misma celda, al igual
que la N y la , por lo que se cumplen por ejemplo tambin las siguientes
transformaciones en dicha matriz:
Pares del texto en claro
MI = MJ
EN = E
Criptograma
PK
RV
Ejemplo 1.41: Cifre el mensaje, M = "Las sombras llaman a la puerta del castillo hoy"
con una matriz de Playfair con clave K = MIEDO.
68
CRIPTOSISTEMAS CLSICOS
Solucin:
I/J
N/
CRIPTOSISTEMAS CLSICOS
I/J
I/J
N/
N/
Figura
69
1.36.
n veces
1084
1010
901
764
649
639
610
563
560
559
544
536
535
520
Inverso
ED
SE
NE
SO
DA
ET
NI
RE
SA
LE
RO
TN
TS
AR
n veces
290
547
370
212
436
115
191
537
227
245
372
24
19
493
Konheim, Alan G., "Cryptography: A Primer", John Wiley & Sons, 1981, pp. 95-110.
70
CRIPTOSISTEMAS CLSICOS
M1M2 C1C2
ED
FE
NE
RC
M1M2 C1C2
ES
FO
ER
KY
M1M2 C1C2
SE
OF
RE
YK
CRIPTOSISTEMAS CLSICOS
71
mod 26
mod 26
mod 26
mod 26
1.41
Por otra parte, Hill define un alfabeto de cifrado arbitrario como el que se indica
en la Figura 1.38 aunque en el libro usaremos el habitual: A = 0, B = 1, ... Z = 26.
A B
5 23
C D E F
2 20 10 15
G
8
H I J
4 18 25
K L M
0 16 13
N
7
O
3
P Q
1 19
R S T U V W X Y
6 12 24 21 17 14 22 11
Z
9
mod 26
mod 26
mod 26
mod 26
1.42
10
10
11
y
2
y
3
x1
y
4
x2
1.43
x3
x4
72
CRIPTOSISTEMAS CLSICOS
x1
20
25
22
18
11
20
23
x2
x3
x4
25
25
y1
y
2
1.44
y
3
y
4
1.45
M = KD x C mod n
1.46
CRIPTOSISTEMAS CLSICOS
73
16
K =
11
18
15
19
15
1.47
-1
T Adj(K)
|K|
1.48
Si K = k 21
k 31
k12
k13
k11
k 21
k 31
k 22
k 23
k 22
k 32
k 32
k13
k 23
k 33
1.49
k 33
Ejemplo 1.43: Encuentre la matriz trigrmica traspuesta de la matriz con clave simblica
K = NO ESTA MAL.
Solucin:
N = 13; O = 15; E = 4; S = 19; T = 20; A = 0; M = 12; A = 0; L = 11. As:
13
K = 19
12
15
20
0
0
11
13
19
12
luego T (K) = 15
20
11
74
CRIPTOSISTEMAS CLSICOS
k 13
K = k 21
k 31
k 22
k 23
k 32
k 33
k 11
Adj (K)
|a11|
-|a 12 |
= -|a 21|
|a 31|
|a 22 |
|a 13 |
-|a 23 |
|a 33 |
-|a 32 |
1.50
Para obtener |aij| eliminamos la fila i y la columna j y con los elementos que
quedan calculamos su determinante. Por ejemplo, en la matriz de la ecuacin (1.50) el
elemento |a11| = k22k33 k32k23; |a22| = k11k33 k31k13; etc.
Ejemplo 1.44: Para la matriz con los valores que se indican, se pide encontrar su matriz
adjunta: k11=2, k12=4, k13=6, k21=3, k22=5, k23=7, k31=1, k32=9 y k33=0.
2
Solucin:
Adj (K)
|a 11|
-|a12 |
= -|a 21|
|a 31|
|a 22 |
-|a 32 |
|a 13 |
-|a 23 |
|a 33 |
- 63
54
-6
-2
22
- 14
- 2
CRIPTOSISTEMAS CLSICOS
K1 = 1
1
Solucin:
12
2
K 2 =
75
1.51
en donde se cumplir que inv(|K|,n) |K| mod n = 1. En realidad, este resultado nos
permitir encontrar la denominada matriz de identidad I que veremos ms adelante.
Como bien sabemos, el valor de este inverso no siempre existe; la condicin necesaria
para su existencia es que |K| y el mdulo n sean primos entre s. Seguro que ya est
convencido de esto.
Recapitulando entonces, en el cifrado de Hill deber existir una transformacin
inversa que permita recuperar el mensaje en claro, y dicha operacin slo la puede
dar la matriz clave. Esto quiere decir que las claves KE y KD que aparecan en las
ecuaciones (1.45) y (1.46) debern ser matrices inversas en el mdulo de trabajo.
Luego, la condicin sine qua non del cifrador de Hill es que la matriz de cifrado tenga
inversa, es decir:
KD = KE-1
1.52
Ejemplo 1.46:
Solucin:
a) Si K =
k11
k12
k 21
k 22
entonces | K | = (k11 x k 22 - k 21 x k 22 )
-1
1
|K|
k 22
k 21
- k12
k11
76
CRIPTOSISTEMAS CLSICOS
1
|K|
k 22
k 21
- k12 k11
k11 k 21
k12
k 22
= I
K =
K
-1
mod 27
10 - 1
3
-1
4 * 19
- 2 * 19
- 1 * 19
3 * 19
K * K -1 =
22 16
mod 27 =
mod 27
2 22 16
1 0
mod 27 =
mod 27
3
4 8
0 1
Por ltimo, al igual que en todos los sistemas que implican una multiplicacin
en el cifrado, para que exista la operacin inversa debe cumplirse que el determinante
de la matriz clave no sea mltiplo con el orden del grupo en el que se trabaja. Slo si
mcd[|K|,n] = 1 se podr usar esa matriz K para cifrar. Luego, la condicin suficiente y
necesaria de esta matriz K ser:
|K| mod n 0
1.53
mcd[|K|, n] = 1
1.54
Ejemplo 1.47: Se puede utilizar esta matriz K para cifrar digramas en mdulo 27 cuyos
elementos son k11 = 4, k12 = 3, k21 = 2, k22 = 6?
Solucin:
Resolviendo el determinante de K obtenemos:
|K| = (k11k22-k21k12) = (46-23) = 18. Como mcd(18,27) = 3, no puede
usarse K como matriz de cifrado al carecer de inversa.
Con estos antecedentes, podremos entonces cifrar cualquier texto en claro
mediante matrices usando una clave de dimensin dxd y agrupando el mensaje en
bloques de tamao d-gramas. Al igual que en otros sistemas, si es necesario se
aaden al final del texto en claro caracteres de relleno para obtener el d-grama.
Ejemplo 1.48: Cifre el texto M = AMIGO CONDUCTOR, SI BEBES NO CONDUZCAS
mediante trigramas usando la matriz simblica con clave PELIGROSO.
Solucin:
Primero vamos a comprobar que la matriz tiene inversa. El valor de |K|
en mdulo 27 es igual a 4 como se indica:
|K| = [16(615 - 1918) - 4(815 - 1518) + 11(819 -156)] mod 27
|K| = [-9 + 6 + 7] mod 27 = 4. Los valores de |K| y el mdulo n son primos
entre s, luego la clave es vlida.
CRIPTOSISTEMAS CLSICOS
77
16
C2
C
3
11 0
8
6 18 12 mod 27
15 19 15 8
4
(1.55)
(1.56)
C1
k11
C2
k 21
k12 M1
mod n
k 22 M 2
(1.57)
Ejemplo 1.49: Si la clave K es k11 = 4; k12 = 2; k21 = 9; k22 = 2, cifre el siguiente mensaje
M = QUE TODA LA VIDA ES SUEO Y LOS SUEOS SUEOS SON.
Solucin:
|K| = (k11k22 - k21k12) mod 27 = (42 - 29) mod 27 = -10 mod 27 que es
igual a 17 mod 27. El mcd(17,27) = 1, luego existir la matriz inversa.
Representamos el mensaje como se muestra y procedemos a cifrar el
primer digrama con la matriz K; los dems se los dejo como ejercicio.
M = QU ET OD AL AV ID AE SS UE O YL OS SU E OS SU E OS SO NX.
78
CRIPTOSISTEMAS CLSICOS
5
1 k 22 - k12
1
mod 27
| K | - k 21
2 - 17
k11
14 * 5 - 14 * 10
-1
mod 27
K =
14 * 2
- 14 * 17
16 22
-1
mod 27
K =
1
5
K
-1
- 10
mod 27
0 1
0 1
0 0
0 1
1 0
1 1
0 0
0 1
1 0
1 0
1 0
1 0
1 0
1 1
1 1
1 1
;
;
;
;
;
;
0 0
0 1
1 0
1 1
0 0
0 1
1 0
1 1
1 1
;
1 1
CRIPTOSISTEMAS CLSICOS
79
1.58
Trigramas:
1.59
MB = OH
1.60
80
CRIPTOSISTEMAS CLSICOS
anlisis de frecuencias. Por otra parte, el ataque por fuerza bruta puede ser
extremadamente difcil si se elige un primo como mdulo de trabajo y se cifran bloques
de texto de un tamao igual o mayor que 5.
Ejemplo 1.51: Si el grupo de trabajo es el primo 37 y por tanto casi el 100% de las
matrices de cifrado son vlidas, qu tamao de poligrama debe usarse
para que la entropa de la clave H(K) del cifrado de Hill sea del orden de
la del algoritmo DES calculada en el captulo segundo e igual a 56?
Solucin:
Para d=3, la matriz clave K tendr 3x3=9 elementos, por lo que el
nmero de matrices puede estimarse en 37 9 1,3 x10 14. Luego la
entropa de la clave H(K) = log2(1,3x10 14) = 46,9. Aumentando a
tetragramas, el nmero de matrices es del orden de 37 16 1,2x10 25 con
lo que la entropa en este caso se eleva a H(K) = log2(1,2x10 25) = 83,3.
Luego, para un poligrama igual a 4 caracteres, este cifrado tendra una
fortaleza similar al DES estndar en cuanto a la distancia de unicidad. Y
si ahora ciframos con bloques de texto en claro de 8 caracteres (64 bits)
como lo hace el DES?
Colmo es fcil apreciar, en estas condiciones un ataque por fuerza bruta es
impensable. La nica posibilidad de ataque a este tipo de cifra es la eleccin de un
texto en claro y buscar vectores unitarios en el mensaje o en el criptograma, y en el
caso de no encontrarlos aplicar el mtodo de Gauss-Jordan contando ahora slo con
un criptograma y su correspondiente texto en claro. En cualquier caso supondremos,
adems, que el criptoanalista conoce que el cifrado se trata de Hill, que conoce el
tamao del poligrama usado para la cifra y la correspondencia entre los caracteres del
alfabeto en claro y su equivalente numrico. He aqu el verdadero Taln de Aquiles de
este cifrador y la razn por la que, incluso alcanzando un valor de distancia de
unicidad muy alto, no es seguro y por tanto ha cado en desuso por completo. A
comienzos de este ao 1999 ha vuelto a ponerse de moda como decamos el uso de
la matemtica de matrices en la cifra, pero no se trata de este tipo de algoritmo.
Si I3 = 0
1 = [ 1 0 0 ]
entonces
2 = [ 0 1 0 ]
3 = [ 0 0 1 ]
1.61
CRIPTOSISTEMAS CLSICOS
81
k 12
k 13
K x 1 = k 21
k 31
k 22
k 23
k 32
k 33
1
x 0
0
k 11
= k 21
k 31
1.62
1.63
K =
82
CRIPTOSISTEMAS CLSICOS
K = k 21
k 31
= k 21
k 31
4
0
x 19
Resolviendo:
0 = (k114 + 319 + 44) mod 27 k11 = 2
4 = (k214 + 519 + 64) mod 27 k21 = 5
0 = (k314 + 819 + 94) mod 27 k31 = 7
(vase la explicacin a continuacin del ejemplo)
Luego la matriz clave K ser:
2
K = 5
k21:
k31:
k11 = 2
k21 = 5
k31 = 7
CRIPTOSISTEMAS CLSICOS
83
11
= k 21
k 31
5 6
8 9
3
13
x 8
k 11
20
11
= k 21
k 31
15
x 4
19
k 11
= k 21
k 31
18
5 6
8 9
3
15
84
CRIPTOSISTEMAS CLSICOS
C=IBSDWJQQLCLQBESVABJOXHLIKNBAHSREOKSVCTMKTYBKAYFI
Solucin:
18
K -1 =
25
Como K = (K-1) -1, se puede deducir que la matriz clave ser entonces:
23
K =
18
11
Amigo lector(a); le dejo como ejercicio comprobar que con esta matriz
de cifra K se obtiene el criptograma indicado.
Para el caso de cifra con digramas, buscamos algn digrama que contenga el
valor cero o la letra A, bien en el mensaje en claro o bien en el criptograma;
planteamos entonces un sistema de ecuaciones en donde la nica condicin a cumplir
es que el elemento que acompae a esa letra A tenga inverso en el cuerpo de cifra. De
esta manera se obtiene una de las columnas de la matriz clave. Para encontrar la
columna restante planteamos otra ecuacin de cifra, en donde el elemento que
multiplica a los kij debern tambin tener inverso, como se mostrar en el siguiente
ejemplo. Y si no contamos con estos vectores unitarios? Aunque no lo crea, todava
podremos atacar al sistema si conocemos el texto en claro.
Ejemplo 1.56: Se nos pide realizar un ataque al sistema de cifra de Hill digrmico segn
el mtodo explicado. El texto en claro y su criptograma son:
M=HABIAVIDAENMARTE
C=PIEBXPQYXYNFARIQ
Solucin:
Agrupando texto en claro y criptograma por digramas:
M = HA BI AV ID AE NM AR TE
C = PI EB XP QY XY NF AR IQ
Como no vemos vectores unitarios por ninguna parte, vamos a plantear
la primera ecuacin de cifra para el primer digrama HA en donde
aparece la letra H = 7 en el texto en claro acompaado de la letra A = 0.
Puesto que inv (7,27) = 4, entonces:
k 11 k 12
k 11 k 12
P
H
16
7
x
x
=
=
I
A
8
0
k 21 k 22
k 21 k 22
16 = k117 k11 = 16inv(7,27) mod 27 = 164 mod 27 = 10
8 = k217 k21 = 8inv(7,27) mod 27 = 84 mod 27 = 5
La ecuacin del digrama (XP) = K (AV), en donde V = 22 tiene como
inverso 16, nos entrega la siguiente matriz:
k 11
k 21
k 12
24
k 11
k 22
16
k 21
k 12
k 22
22
CRIPTOSISTEMAS CLSICOS
10
K =
85
13
Este mtodo podra generalizarse para matrices de mayor rango, aunque como
es lgico aumentar la dificultad de encontrar poligramas con todos los elementos
excepto uno iguales a cero, por lo que este mtodo resulta poco prctico. La
generalizacin del ataque anterior mediante el planteamiento de un sistema de
ecuaciones matriciales, se conoce como mtodo de Gauss-Jordan y ser tratado en el
prximo apartado. En este otro escenario prcticamente no hay criptograma que se
resista a este ataque; no obstante, si se desconoce el texto en claro, debido al alto
valor de la distancia de unicidad de este cifrador resulta absurdo intentar un ataque
por fuerza bruta.
13
21
23
22
24
13
11
21
17
18
15
Matriz Trigrmica
11
20
17
Texto en Claro
A
N
12
15
13
25
12
21
25
22
15
13
15
21
14
18
18
11
Texto Cifrado
12
20
11
Konheim, Alan G., "Cryptography: A Primer", John Wiley & Sons, 1981, pp. 116-120.
86
CRIPTOSISTEMAS CLSICOS
10
12
26
19
16
21
26
20
21
24
0
0
11
17
26
12
15
13
19
11
25
12
0
0
11
17
25
24
26
16
26
Matriz Trigrmica
Texto en Claro
Texto Cifrado
11
20
CRIPTOSISTEMAS CLSICOS
87
Texto Cifrado
0
0
diagonalizada
0
0
Matriz Trigrmica
Texto en Claro
agrupando los
vectores unitarios
K = 5
C = KxM = 5
4
4
6 x 13
21
9
1.8
88
CRIPTOSISTEMAS CLSICOS
CRIPTOSISTEMAS CLSICOS
Solucin:
89
M' = MS1MS2MS3
MS1 = 1, 2, 3, 5, 7, 11, 13, 17, 19, 23
MS2 = 4, 6, 8, 10, 12, 14, 16, 18, 20, 22, 24
MS3 = 9, 15, 21, 25
C = m1m2m3m5m7m11m13m17m19m23m4m6m8m10m12m14m16m18m20m22m24m9m15m21m25
Al no tener perodo, este algoritmo de cifrado posee una mayor fortaleza pues
dificulta el criptoanlisis, residiendo su seguridad en el secreto de las series utilizadas.
No obstante, es necesario recorrer el texto en claro completo por lo que el mtodo es
muy lento.
Ejemplo 1.58: Utilizando las series MS1MS2MS3 vistas anteriormente y en ese orden,
cifre el mensaje M = ERRAR ES HUMANO, PERDONAR DIVINO.
Solucin:
El mensaje tiene 27 caracteres. Si se transmite la secuencia M S1, luego
MS2 y finalmente MS3, tenemos los siguientes bloques:
MS1 = 1,2,3,5,7,11,13,17,19,23
MS2 = 4,6,8,10,12,14,16,18,20,22,24,26
MS3 = 9,15,21,25,27
El mensaje ordenado segn las posiciones de los caracteres es:
123456789012345678901234567
ERRARESHUMANOPERDONARDIVINO
Permutando los caracteres segn la serie MS3MS2MS1 so obtiene:
90
CRIPTOSISTEMAS CLSICOS
Columna de cifrados
C2
C3
C4
C5
C8
C9
C10
C11
C14
C15
C16
C17
C20
C21
C22
...
C6
C12
C18
...
1.64
1.65
Hecho esto, escribe el texto cifrado de forma vertical en tantas filas como
indique el valor de NF y procede a leerlo por filas.
CRIPTOSISTEMAS CLSICOS
91
de
en
en
de
1.66
1.67
123456789101112131415161718
PIENSOLUEGOEXISTO
PLXIUIEESNGTSOOOEX
Por ejemplo, se observa que las letras del texto en claro N (i=4), L (i=7), U
(i=8), G (i=10), T (i=16) y el digrama EX (i,k=12,13) del texto en claro se desplazan, a
las posiciones 10, 2, 5, 11, 12, 17 y 3 respectivamente. Como el receptor conoce el
nmero de columnas NC empleadas en el cifrado y la longitud L C del criptograma,
deduce que el nmero de filas NF = j es igual a LC/NC = 18/6 = 3. Comprobaremos a
continuacin estos valores en particular aplicando la ecuacin (1.66).
N:
L:
U:
G:
T:
E:
X:
Et(4)
Et(7)
Et(8)
Et(10)
Et(16)
Et(12)
Et(13)
Ejemplo 1.61: Aplicando la ecuacin (1.66) cifre en columnas usando una clave NC = 3
92
CRIPTOSISTEMAS CLSICOS
Solucin:
= C1
= C4
= C7
= C10
= C13
= C16
M1 = P
M2 = I
M3 = E
M4 = N
M5 = S
M6 = O
CRIPTOSISTEMAS CLSICOS
93
EJLOR
ELPAT
IODEM
ICASA
ESPAR
TICUL
ARCUA
NDOLL
UEVES
EMOJA
COMOL
OSDEM
ASXXX
LTPAE
OMDEI
CAASI
SRPAE
ILCUT
RACUA
DLOLN
ESVEU
MAOJE
OLMOC
SMDEO
SXXXA
94
CRIPTOSISTEMAS CLSICOS
1.68
C = E2[E1(M)]
1.69
ERIESNERNLAADA
LIORETGAEURIID
PSNOERAELGYNCO
CRIPTOSISTEMAS CLSICOS
95
similar a la anterior, es mediante una figura de zig-zag de forma que la clave tambin
se encuentra en el nivel de profundidad de dicha figura, como se indica en el prximo
ejemplo.
Ejemplo 1.66: Utilizando el cifrado por lneas con figura zig-zag con una profundidad
igual a 3, cifre el mensaje M = EL ESPAOL COMO EL JUDO,
DESPUS DE COMER SIENTE FRO.
Solucin:
El mensaje se escribe como se indica:
E
L S
E
A O
O
M E
J
L
U
D
U
E
E
E
F
D O E P E D C M R I
N E R O
I
S
S
O
S
T
I
96
CRIPTOSISTEMAS CLSICOS
E
N
Y
E
A
G
S
O
Q
N
R
L
T
H
U
L
R
E
O
A
I
O
E
X
1.70
1.71
1.72
donde pCx es la posicin relativa donde comienza la cadena que se est comparando y
pC1 es la posicin de inicio del criptograma y de la ventana. La media se calcula
sumando las frecuencias relativas fr de los digramas en el lenguaje:
CRIPTOSISTEMAS CLSICOS
1 V
X = fr
V i=1
97
1.73
( f
i=1
- X)
1.74
oTo285
aPa181
oNo222
pOp131
205
56,44
aTa436
oPo225
pNp49
oOo40
188
161,32
do 354
ra 520
yu
8
ar 493
os 764
au 72
un 338
ra 520
Puesto que se mantiene una media alta, se confirma que el perodo podra ser
igual a 5. No obstante, en estas comparaciones no se cumple que la media alta vaya
98
CRIPTOSISTEMAS CLSICOS
1.75
C = EK (M) = M - K
1.76
CRIPTOSISTEMAS CLSICOS
99
Para descifrar basta con realizar la operacin inversa. Esto es, el primero y el
segundo bloques del criptograma C1 y C2 se descifraran como sigue:
C1
- K1
M1
240.028
130.016
110.012 = LAM
C2
- K2
M2
192.019
151.104
040.915 = EJO
100
CRIPTOSISTEMAS CLSICOS
C = E(M) = M
M = E(M)
1.77
XOR
C = EK(M) = M K
M = EK(M) K
1.78
1.79
1.80
CRIPTOSISTEMAS CLSICOS
101
Para que exista inversa en la suma, ser necesario que las matrices sean de la
misma dimensin, en tanto que para el producto como ya hemos visto se debe cumplir
que la matriz clave sea cuadrada, no singular y posea una inversa nica.
Ejemplo 1.70: Cifre el mensaje M = CAMISA, usando una transformacin de suma de
matrices como la indicada en la ecuacin 1.79 con la clave K =
ROSADA. La cifra es mdulo 27 y se usarn matrices de 2 filas y 3
columnas.
Solucin:
Las matrices de texto y su correspondiente cdigo mod 27 sern:
C11
C 21
C12
C 22
C13
C
C 23 I
A
S
R
A A
O
D
C 21
C12
C 22
C13
20
C 23
8
15
22
2
A
8
0
19
12
18
0 0
15
3
31
mod 27
0
C = 20 15 04 08 22 00 = TOD IVA
Observe la similitud con el cifrado de Vigenre.
2.
3.
4.
5.
19
102
CRIPTOSISTEMAS CLSICOS
7.
8.
9.
10.
11.
Los sistemas de cifra polialfabtica con clave continua en la que dicha clave
corresponde a un texto en el mismo lenguaje, suaviza la distribucin de
frecuencias. Si bien no existe perodo en este caso, puede criptoanalizarse
mediante el Mtodo de Friedman que consiste en buscar pares MiKi de alta
frecuencia que entreguen el carcter del criptograma analizado. Mediante
combinaciones mltiples de texto en claro y claves posibles puede
determinarse, bajo ciertas condiciones, trozos del mensaje y de la clave en
cuestin.
12.
13.
14.
CRIPTOSISTEMAS CLSICOS
103
mtodo de cifra muy interesante, no pudo competir con otras mquinas de cifrar
de la poca como el Enigma.
15.
16.
17.
18.
19.
El cifrado de Vernam usa como clave una cadena de bits para realizar la suma
or exclusivo con el mensaje. Aunque fue diseado para cifrar mensajes
representados por el cdigo Baudot, el cifrador de Vernam puede usarse para
cifrar de forma binaria cualquier archivo, con o sin formato, mediante la
representacin en cdigo ASCII o ANSI de todos los caracteres.
20.
21.
22.
23.
104
CRIPTOSISTEMAS CLSICOS