4 EjerciciosCriptografiaClasica Soluciones

Descargar como docx, pdf o txt
Descargar como docx, pdf o txt
Está en la página 1de 13

Fundamentos de Seguridad en las Comunicaciones

Ejercicios de criptografía clásica

Ejercicio 1

Siguiendo el método esteganográfico conocido como Baconian cipher, antes de ocultar el texto
original, cada letra se reemplaza por una combinación de cinco letras pertenecientes al grupo {‘A’,
‘B’}. El alfabeto codificado es el siguiente:

Una vez codificado el mensaje a cifrar se hace uso de un mensaje de base para insertar dicha
codificación para componer el criptograma.

NOTA: de las 32 combinaciones de las tuplas {‘A’, ‘B’} solo serán válidas 24.

a.) Basándote en esta teoría, determina el mensaje esteganografiado en el siguiente email:

HolA MArcO, coMO Te vA?

EspERo QUE tOdo BieN, aqUÍ SiN NOVEDaD.

uN ABRAZo Y DIsfRUtA dE LAS VAcACiONEs.

b.) ¿Se te ocurre alguna otra forma de ocultar el mensaje en texto?

c.) Menciona otros ejemplos de esteganografía. ¿En qué se diferencia de la criptografía


convencional?

Solución 1.

a) Los cambios de mayúsculas a minúsculas indican la codificación.

Sustituyendo las mayúsculas por A y las minúsculas por B obtenemos el mensaje codificado y
asignando la letra correspondiente según el alfabeto a cada grupo de 5 letras tenemos la solución:

ABBAA ABBAB BAAAB BAABB AABAA ABABB ABBAB BAAAB AAAAA ABABA AAAAA BAAAB
BAABA BAAAA AABAA BAAAB

ABBAA  N ABBAB  O BAAAB -> S BAABB ->U-V AABAA-> E ABABB ->M

ABBAB  O… Mensaje: Nos vemos a las tres.


b) Asignar un rango de letras a la A y otro a la B.

P.ej.

{a,b,c,….l} A

{m,…z}B

c) (ver teoría)

Se pueden combinar para un mayor nivel de seguridad

¿Qué es la esteganografía?

Es la ciencia que estudia la forma de ocultar la existencia de un mensaje, en lugar de ocultar el


contenido del mismo.

La Esteganografía es la ciencia que estudia los procedimientos encaminados a ocultar la


existencia de un mensaje en lugar de ocultar su contenido, mientras que, La Criptografía pretende
que un atacante que consigue un mensaje no sea capaz de averiguar su contenido.

El objetivo de la esteganografía es ocultar ese mensaje dentro de otro sin información importante,
de forma que el atacante ni siquiera se entere de la existencia de dicha información oculta.

No se trata de sustituir al cifrado convencional sino de complementarlo: ocultar un mensaje reduce


las posibilidades de que sea descubierto; no obstante, si lo es, el que ese mensaje haya sido cifrado
introduce un nivel adicional de seguridad.

La esteganografía puede usarse con o sin clave. Al usar un mensaje portador el tamaño combinado
suele ser mucho mayor que el de la información a proteger.

El término esteganografía fue usado por primera vez en 1499 por Johannes Trithemius

Ejercicio 2

Encuentra el mensaje esteganografiado:

Muchos añ os después, frente al pelotó n de fusilamiento, el coronel Aureliano Buendía había


de recordar aquella tarde remota en que su padre lo llevó a conocer el hielo. Macondo era
entonces una aldea de veinte casas de barro y cañ abrava construidas a la orilla de un río de
aguas diá fanas que se precipitaban por un lecho de piedras pulidas, blancas y enormes como
huevos prehistó ricos.

Solución 2

El mensaje está oculto usando una tipografía de word distinta. El texto general usa Cambria,
mientras que el mensaje se compone de los caracteres en calibri.

Muchos añ os después, frente al pelotó n de fusilamiento, el coronel Aureliano Buendía había


de recordar aquella tarde remota en que su padre lo llevó a conocer el hielo. Macondo era
entonces una aldea de veinte casas de barro y cañ abrava construidas a la orilla de un río de
aguas diá fanas que se precipitaban por un lecho de piedras pulidas, blancas y enormes como
huevos prehistó ricos.

Mensaje: Estoy en casa.

Ejercicio 3

a.) Cifrar el siguiente mensaje utilizando una escítala de 5 columnas:

ME GUSTA LA CRIPTOGRAFÍA

b.) ¿Cuál sería el mensaje correspondiente al siguiente criptograma obtenido utilizando la misma
escítala?

TEUEEOSETRNEHOITLANAOQCTS

Solución 3.

a) Criptograma: MTRGAEAIR GLPA UATF SCOI  no es bueno que aparezcan espacios al final
pues facilita el criptoanálisis del sistema (mejor usar relleno o no incluir estos espacios en
el texto cifrado, aunque esto no se puede hacer si la implementación es usar la escítala
físicamente).

M E G U S
T A L A C
R I P T O
G R A F I
A

MSAPAET TF ACOIG RGAULIR


M E G U
S T A L
A C R I
P T O G R
A F Í A

b) Mensaje descifrado: TONTOESELQUEHACETONTERIAS

Para descifrar habría que escribir por columnas y leer por filas. El problema es saber cuántos
caracteres poner en cada columna. Dividimos la longitud total entre el número de columnas  5

T O N T O
E S E L Q
U E H A C
E T O N T
E R I A S

Ejercicio 4

Descifra los siguientes criptogramas que han sido cifrados con el método de César (se utiliza el
alfabeto de 26 letras).

PHQVDMH GH SUXHED
FLIUDQGR FRQ FHVDU

AYUDA:

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

Solución 4

C(x)=x+3 (mod 26)

M(x)=x-3 (mod 26)

claro: 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
alfabeto cifrado: 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

1. C[PHQVDMH GH SUXHED] = M[MENSAJE DE PRUEBA]

2. C[FLIUDQGR FRQ FHVDU] = M[CIFRANDO CON CESAR]

Ejercicio 5

Considerando el cifrador afín que viene dado por la fórmula C=( 3 M + 3 ) mod 26 :

a.) Cifra M= HOLA

b.) El mensaje cifrado puede recuperarse utilizando una transformación afín de la forma:

M =( a' C +b ' ) mod 26

Determine los valores de las constantes a’ y b’ sabiendo que el cifrado se hace según:
C=( aM +b ) mod26
¿Es siempre posible descifrar? Comente la respuesta y las consideraciones a tener en cuenta al
realizar un cifrador afín como el anterior.

Solución 5

Ci = a*Mi + b mod n y se quiere encontrar los valores de a’ y b’ para Mi = a’*Ci + b’ mod n

Se podría deshacer como Mi = (Ci – b)*a-1 mod n ; donde a-1 mod n = inv(a,n) mod n es decir
cumple que a*a-1 mod n=1

 Mi = Ci*a-1- a-1*b mod n  a’= a-1 mod n y b’= - a-1*b mod n

a) C(H) = 3*7 + 3 mod 26 = 24 = Y


C(O) = 3*14 + 3 mod 26 = 45 mod 26 = 19 = T
C(L) = 3*11 + 3 mod 26 = 26 mod 26 = 10 = K
C(A) = 3*0 + 3 mod 26 = 3 = D

C(HOLA) = YTKD

b) a’= 9, b’=25, Se obtienen por las fórmulas anteriores o de planteando un sistema de ecuaciones
lineales como el siguiente:

H = (a·Y+b) mod 26 => 7 = 24a+b mod 26

A = (a·D+b) mod 26 => 0 = 3a+b mod 26

Restando:

7 = 21a mod 26 => a = 7*5 mod 26 = 35 mod 26 = 9 = a (5 es la inversa de 21 mod 26)

b = 25

El problema es que necesitan calcular inversos en aritmética modular y eso no lo han visto
todavía. Para este ejercicio les damos una tabla y breve explicación (diciéndoles que ya lo
verán en detalle más adelante).

Ejercicio 6

a.) Ciframos el mensaje M = HOLA, COMO VA ESO en el cuerpo n=26 con un desplazamiento de 6
caracteres, ¿cuál es el criptograma? ¿Y si desplazamos 26?

b.) ¿Se puede cifrar en el cuerpo n = 26 con la función C=( 12 M +5 ) mod 26? ¿Por qué?

c.) Cifra el mensaje M = HASTA LA VISTA con un sistema afín siendo el valor a = 5 y b = 2, usando
sólo operaciones modulares.
Solución 6

a) Criptograma = NURG IUSU BG KYU, Si desplazamos 26 el mensaje se queda como está.

H = 7+6 = 13 = N L = 11 + 6 =17 = R O=U


O = 14+6 = 20 = U A = 0+6 = 6 = G C=2+6=8=I M = 12+6 = 18 = S
O=U V = 21 + 6 = 27 = S = 18 + 6 = 24 = Y
25 + 2da letra = B O=U
A=G E = 4 + 6 = 10 = K

b) No, porque m.c.d(a,n)!=1, no son primos relativos. No existe inverso único para todos los
posibles casos. Distintas letras del mensaje original darían lugar a la misma letra cifrada 
imposible descifrar… mcd (12, 26) = 2.

c) M = HASTA LA VISTA, a = 5, b = 2

C(H) = 5*7 + 2 mod 26 = 37 mod 26 = 11 = L


C(A) = 5*0 + 2 mod 26 = 2 mod 26 = 2 = C
C(S) = 5*18 + 2 mod 26 = 92 mod 26 = 14 = O
C(T) = 5*19 + 2 mod 26 = 97 mod 26 = 19 = T
C(L) = 5*11 + 2 mod 26 = 57 mod 26 = 5 = F
C(V) = 5*21 + 2 mod 26 = 107 mod 26 = 3 = D
C(I) = 5*8 + 2 mod 26 = 42 mod 26 = 16 = Q

LCOTC FC DQOTC

Ejercicio 7

Asumiendo que el texto original está en lenguaje español (usando alfabeto de 27 letras) y que se le
ha aplicado un cifrado por sustitución afín, descifre el siguiente mensaje proporcionando una
breve explicación del proceso seguido. NOTA1: La imagen de la Figura 1 proporciona la
distribución de frecuencias de aparición en porcentajes de las letras en español donde no se ha
incluido la letra Ñ (puede asumirse que la Ñ tiene una probabilidad baja de aparecer de cara a la
resolución del problema). NOTA2: Para textos cortos como el del ejercicio la distribución de
frecuencias real será aproximada respecto a la distribución de la figura 1

TJBCGAVVYKTCHKVYITNBYVTIHOBTJOBTTIRHHFHNHKVTCTJGCRTYGVYKTBCQJVOBTKT
WVYSGNVCFYVRTNGKVTCBCHWHQGRHAGVCITJJHKHYVKTHKHFVYNBHYKGHIHYSHKVI

Figura 1: Distribución frecuencial de las letras en español


Solución 7

Para hacer el criptoanálisis deben seguir los siguientes pasos:

a) Determinar las frecuencias de las letras en el texto cifrado (coger las 3 primeras suele ser
suficiente al tratarse de un cifrador afín como veremos en c)
a. T  17 (La A o la E?)
b. H  17 (La A o la E?)
c. V  15 (la O?)
b) Formular hipótesis: Asociar las letras más frecuentes en el criptograma a las más
frecuentes en el idioma del mensaje origen.
c) Plantear sistema de ecuaciones y resolver
a. C=( aM +b ) mod 27
Si T es la E  20=4a+b mod 27
Si H es la A  7= b mod 27
Despejando  a=13*7 mod 27 = 10
Para ver si funciona usamos la tercera letra:
22=15*10+7 mod 27? Sí porque 157 mod 27 = 22 ok

Mensaje: EL
UNICO ORDENADOR SEGURO ES AQUEL QUE ESTA
APAGADO EN EL INTERIOR DE UN BLOQUE DE HORMIGON
PROTEGIDO EN UNA HABITACION SELLADA RODEADA POR
GUARDIAS ARMADOS

Ejercicio 8

a.) Cifra con el método Playfair el mensaje M = DON’T STOP ME NOW usando la clave K= QUEEN.
b.) El criptograma C = "FZ QL DB” ha sido obtenido utilizando Playfair con clave K = VIOLIN.
Descífralo.

Solución 8

Nota: i con la j

a) BR AS TO PR KA QS XY

M = DON’T STOP ME NOW usando la clave K= QUEEN. (Nota, al no poder repetirse letras en la
clave se usa solo una U).

Q U E N A
B C D F G
H I K L M
O P R S T
V W X Y Z
M = DO NT ST OP ME NO WX

C = BR AS TO PR KA QS XY

b) MUSICA (se usa la misma tabla para descifrar, pero ahora si las letras caen en la misma
columna se cogen las de arriba y si caen en la misma fila las de la izquierda).

C = "FZ QL DB” K = VIOLIN

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

Ejercicio 9

a.) En un sistema de cifra de Vigenère la clave a usar puede ser CARO o bien COMPADRE, ¿cuál de
las dos usaría y por qué?

b.) Cifra usando el método Vigenère el mensaje M = UNA CERVEZA POR FAVOR con la clave K =
VASO sin usar la tabla, sólo con operaciones modulares.

c.) ¿Por qué se dice que Vigenère es un cifrador polialfabético? ¿Qué ventajas tiene con respecto
al cifrado César? ¿Cómo podríamos atacarlo?

Solución 9

a) Si la clave tiene más caracteres distintos se acerca a la longitud del mensaje (one time pad)
y la distribución de frecuencias que se logra en el criptograma tiende a ser plana (si la
elección de la clave fuera aleatoria) Se difumina la redundancia del lenguaje

b) PNSQZRNSUAHCMFSJJR

UNA CERVEZA POR FAVOR


VAS OVASOVASOV ASOVA
C(U) = 20+21 mod 26 = 41 mod 26 = 15 = P
C(N) = 13+0 mod 26 = 13 mod 26 = 13 = N
C(A) = 0+18 mod 26 = 18 mod 26 = 18 = S
C(C) = 2+14 mod 26 = 16 mod 26 = 16 = Q
C(E) = 4 +21 mod 26 = 25 mod 26 = 25 = Z
C(R) = 17+0 mod 26 = 17 mod 26 = 17 = R
C(V) = 21+18 mod 26 = 39 mod 26 = 13 = N
C(E) = 4+14 mod 26 = 18 mod 26 = 18 = S

c) Ver teoría

Ejercicio 10

Se tiene un sistema de cifrado de tipo Vigenère como el mostrado en la Figura 2:

Figura 2: Diagrama de bloques para la implementación de un cifrador tipo Vigenère

a.) Siendo C iy M el criptograma y el mensaje en el instante i, respectivamente; escriba la función


de cifrado correspondiente al esquema de la figura.

b.) Determine la función de descifrado y dibuje cómo sería la implementación.

Solución 10

a) Ci = Mi-1 + Mi-2 (+ Ki) mod 26

La clave es opcional. Si no se usa clave se asume que el propio mensaje hace de clave para cifrar el
siguiente carácter del mensaje. El problema es que para descrifrar vamos a tener que conocer el
primer carácter del mensaje y al no tener clave podríamos recuperar todo el mensaje a partir del
criptograma y este primer carácter del mensaje. Si se usa clave estamos convirtiendo el cifrador en
bi-grámico lo cual dificultaría mucho el ataque de Kasiski.

b) Mi-1 = Ci – Mi-2 (- Ki) mod 26

Y el esquema:

M_i-2 D

M_i-1
Ci mod26

Se puede cifrar y descifrar un mensaje para comprobar, asumiendo cualquier carácter para los
instantes desconocidos.

Ejercicio 11

Se tiene la siguiente función de cifrado tipo Vigenère:

C i=( M i + M i−2) mod 26

a.) Escriba la función de descifrado. Cifre el mensaje M=HOLA y compruebe que la función de
descifrado es correcta.

b.) Dibuje los diagramas de bloques para las funciones de cifrado y descifrado.

Solución 11

Igual al anterior.

Ejercicio 12

Usando la codificación según el alfabeto del Ejercicio 1 y sustituyendo los símbolos de codificación
{A,B} por {0,1}, se pide usar el método Vernam para cifrar el mensaje M= MI MENSAJE con la clave
K=CLAVEVERNAM.

Solución 12

M= MI MENSAJE

01011 01000 01011 00100 01100 10001 00000 01000 00100

K=CLAVEVERNAM (la longitud de la clave debe ser mayor que el tamaño del mensaje)

AAABA ABABA AAAAA BAABB AABAA BAABB AABAA BAAAA ABBAA AAAAA ABABB

00010 01010 00000 10011 00100 10011 00100 10000 01100 00000 01011

Y luego se aplica el cifrado haciendo XOR binario:

M + C = 01011 + 00010 = 01001 (la suma no es más que XOR bit a bit)
I + L = 01000 + 01010 = 00010
M + A = 01011 + 00000 = 01011
E + V = 00100 + 10011 = 10111
N + E = 01100 + 00100 = 01000
S + V = 10001 + 10011 = 00010
A + E = 00000 + 00100 = 00100
J + R = 01000 + 10000 = 11000
E + N = 00100 + 01100 = 01000

Hay que tener en cuenta que se debe truncar la clave a la longitud del mensaje

Ejercicio 13

a.) Cifre con el método de Vernam el mensaje M = VIDA y clave K = TACOS suponiendo texto
ASCII. Nota: El resultado se deja en binario
b.) ¿Y si la clave es ahora K = TACO? ¿Cómo se comporta este cifrador si K es aleatoria?

Figura 3: representación ASCII de las letras mayúsculas

Solución 13

a) M = VIDA y clave K = TACOS

V + T = 0101 0110 + 0101 0100 = 0000 0010


I + A = 0100 1001 + 0100 0001 = 0000 1000
D + C = 0100 0100 + 0100 0011 = 0000 0111
A + O = 0100 0001 + 0100 1111 = 0000 1110

b) Genera el mismo mensaje, porque la clave se trunca… para demostrar que no es tan
seguro pero la probabilidad q ocurra es baja?

Ejercicio 14
Si queremos cifrar números y usamos una codificación decimal y cada dígito lo ciframos con un
cifrador tipo Alberti donde en el cilindro exterior estarían los números del 0 al 9 y en interior
las letras de la A a la J. Suponiendo que la posición inicial de cifrador hace coincidir el 0 con la
H, ¿Cómo se cifraría el número 123? ¿Qué vulnerabilidad muestra esta cifra?

Sol:

La posición inicial será:

0 1 2 3 4 5 6 7 8 9

H I J A B C D E F G

El 1 se cifraría con una “I”

Rotamos el cilindro interior:

0 1 2 3 4 5 6 7 8 9

G H I J A B C D E F

Y ciframos el número 2  I

Si hacemos los mismo para el número 3  I

El mensaje va rotando con el cilindro interior lo cual indica que son dígitos contiguos (no
sabríamos cuál si no conocemos la posición inicial del cifrador)

Ejercicio 15

Comente por qué no puede usarse como clave la siguiente en un cifrador de Hill: ABCACEADG

Sol:

Al pasar a números me quedaría la matriz de cifrado

0 1 2

0 2 4 mod 26

0 3 6

Esta matriz debe ser invertible. En nuestro caso las filas son linealmente dependientes pues la
segunda es 2 veces la primera y la tercera es 3 veces la primera lo cual hará que dicha matriz
no se pueda invertir.
Ejercicio 16

Si capturamos un criptograma cifrado con Vigenere como:

…PABCUINISCIÑSABCLPQUERABCPOPW…

¿Cuál sería la mejor estimación de la longitud de la clave para un ataque tipo Kasiski?

Sol:

El mcd(9,6)=3. En este caso sería justo la longitu de la clave al haber cifrado trigramas de la
misma forma (podría ser 1 pero no sería Vigenere sino afín).

También podría gustarte