Carlos Bruno Castañeda y Pino Caballero Gil Sistemas ......Los sistemas criptográficos donde la...

16
NÚMEROS Revista de didáctica de las matemáticas 30, junio de 1997, págs. 15-30 Sistemas criptográficos de sustitución Carlos Bruno Castañeda y Pino Caballero Gil Se denomina Criptografía al arte de escribir mensajes en clave secreta o enigmáticamente [1]. El desarrollo de la criptografía, que en occidente está documentado desde la Grecia clásica, viene asociado a la comunicación en los entornos de poder, políticos o militares. Se deno- mina Criptografía clásica a todas aquellas técnicas criptográficas ante- riores a la mitad de este siglo [ 4]. Entonces, la criptografía empezó a ser considerada como una ciencia aplicada, debido a su relación con ciencias como la estadística, la teoría de números o la teoría de la información. En la actualidad, su uso, debido a lo generalización de medios informáticos y telemáticos, adquiere nuevos aspectos que sobre- pasan la pura confidencialidad de mensajes intercambiados entre dos comunicantes. Este salto tecnológico ha llevado a desarrollar nuevos, ingeniosos y sofisticados sistemas que permiten mantener al ojo no autorizado, lejos de la lectura de la información que únicamente desean compartir los ojos sí autorizados. Tanto los métodos clásicos como los actuales, mantienen una estrecha relación con las matemáticas. De hecho, tanto el diseño de un sistema como la medida de su efectividad se pueden realizar en términos matemáticos. En es te trabajo nos ocuparemos de describir el sustrato matemático que poseen algunos sistemas criptográficos clásicos. En estos sistemas, además de contar con material manipulativo de fácil construcción, se manejan conceptos que creemos pueden servir como situación proble- mática adecuada para desarrollar conceptos matemáticos que están incluidos en nuestros currículos de las distintas etapas de secundaria. Comunicación y criptografía La comunicación es una actividad que implica a dos partes y un medio. Si dos comunicantes desconfían de la confidencialidad de su medio de comunicación pueden recurrir al uso de sistemas criptográficos. Un sistema criptográfico es elegido de mutuo acuerdo por ambos. Cualquier mensaje se verá transformado por dicho sistema, de manera

Transcript of Carlos Bruno Castañeda y Pino Caballero Gil Sistemas ......Los sistemas criptográficos donde la...

Page 1: Carlos Bruno Castañeda y Pino Caballero Gil Sistemas ......Los sistemas criptográficos donde la clave de cifrado y descifrado coincidan, o al menos sea posible deducir la clave de

NÚMEROS Revista de didáctica de las matemáticas

Nº 30, junio de 1997, págs. 15-30

Sistemas criptográficos de sustitución Carlos Bruno Castañeda y Pino Caballero Gil

Se denomina Criptografía al arte de escribir mensajes en clave

secreta o enigmáticamente [1]. El desarrollo de la criptografía, que en occidente está documentado desde la Grecia clásica, viene asociado a la comunicación en los entornos de poder, políticos o militares. Se deno­mina Criptografía clásica a todas aquellas técnicas criptográficas ante­riores a la mitad de este siglo [ 4]. Entonces, la criptografía empezó a ser considerada como una ciencia aplicada, debido a su relación con ciencias como la estadística, la teoría de números o la teoría de la información. En la actualidad, su uso, debido a lo generalización de medios informáticos y telemáticos, adquiere nuevos aspectos que sobre­pasan la pura confidencialidad de mensajes intercambiados entre dos comunicantes. Este salto tecnológico ha llevado a desarrollar nuevos, ingeniosos y sofisticados sistemas que permiten mantener al ojo no autorizado, lejos de la lectura de la información que únicamente desean compartir los ojos sí autorizados. Tanto los métodos clásicos como los actuales, mantienen una estrecha relación con las matemáticas. De hecho, tanto el diseño de un sistema como la medida de su efectividad se pueden realizar en términos matemáticos.

En este trabajo nos ocuparemos de describir el sustrato matemático que poseen algunos sistemas criptográficos clásicos. En estos sistemas, además de contar con material manipulativo de fácil construcción, se manejan conceptos que creemos pueden servir como situación proble­mática adecuada para desarrollar conceptos matemáticos que están incluidos en nuestros currículos de las distintas etapas de secundaria.

Comunicación y criptografía La comunicación es una actividad que implica a dos partes y un

medio. Si dos comunicantes desconfían de la confidencialidad de su medio de comunicación pueden recurrir al uso de sistemas criptográficos.

Un sistema criptográfico es elegido de mutuo acuerdo por ambos. Cualquier mensaje se verá transformado por dicho sistema, de manera

Page 2: Carlos Bruno Castañeda y Pino Caballero Gil Sistemas ......Los sistemas criptográficos donde la clave de cifrado y descifrado coincidan, o al menos sea posible deducir la clave de

16 SISTEMAS CRIPTOGRÁFICOS DE SUSTITUCIÓN

que cualquier intruso que pueda acceder al mensaje (de forma casual o ilícita) no pueda entender dicho mensaje.

Existen multitud de sistemas criptográficos que vienen caracteriza­dos tanto por los comunicantes como por el medio de comunicación que estos usan. En este trabajo entendemos que un comunicante desea enviar a otro un mensaje formado por algún conjunto de palabras.

Entendemos por sistema criptográfico a un conjunto de reglas o técnicas que sirven para cifrar y descifrar un mensaje enviado. Cifrar y descifrarconsisten en estableceruna correspondencia entre dos conjun­tos de palabras. El emisor parte de un mensaje que llamamos texto claro u original, y aplica sobre él una transformación de manera que obtiene un nuevo mensaje que denominamos texto cifrado, que envía al receptor a través de un medio inseguro. Este a su vez, mediante otra transformación, descifra el mensaje cifrado recobrando el mismo texto original que redactó el emisor. Denominamos Criptoanálisis al conjun­to de métodos que utiliza un intruso o enemigo para romper el secreto guardado mediante un sistema criptográfico. La unión de Criptografía y Criptoanálisis es lo que se denomina Criptología. En el presente trabajo nos ocuparemos fundamentalmente de la criptografía, aunque mencionamos la técnica básica del criptoanálisis: el análisis de frecuen­cias, por ser especialmente sencilla y clarificadora. Es importante señalar que el criptoanálisis es un campo matemáticamente tan rico como lo es la criptografía y donde se pueden encontrar situaciones de interés para un tratamiento didáctico en matemáticas.

Dentro de cualquier sistema criptográfico debe existir un con­junto amplio de correspondencias que generen distintos tipos de texto cifrado a partir de un mismo texto claro. Cada una de dichas correspon­dencias la caracterizamos mediante una clave. Un emisor escoge entre todas las claves posibles del sistema, una para cifrar su mensaje, el receptor debe escoger entre las claves disponibles del sistema aquella que permita descifrar el mensaje.

Un sistema criptográfico viene definido por un conjunto de corres­pondencias caracterizadas por una clave: un conjunto K de claves y una familia { T k / k E K} de correspondencias [ 1].

Para evitar ambigüedades se suelen realizar las siguientes suposicio­nes durante el estudio teórico de la operación de cifrado:

•Las correspondencias son biyectivas.

Page 3: Carlos Bruno Castañeda y Pino Caballero Gil Sistemas ......Los sistemas criptográficos donde la clave de cifrado y descifrado coincidan, o al menos sea posible deducir la clave de

CARLOS BRUNO CASTAÑEDA Y PINO CABALLERO GIL 17

• Se usa el mismo alfabeto para los dos conjuntos de palabras, el

original y el cifrado.

• Es posible establecer el cifrado de todas las posibles palabras

formadas por el alfabeto escogido, independientemente de si

existen o no. • Cada palabra de tamaño n se cifra con una palabra de tamaño n, de

manera que el cifrado no cambia de tamaño el texto. A las palabras

de n letras las denominaremos n-palabras.

En el presente trabajo consideramos un alfabeto de 27 letras: A, B,

C, D, E, F, G, H, 1, J, K, L, M, N, Ñ, O, P, Q, R, S, T, U, V, W, X, Y, Z.

Además, cuando necesitemos aplicar operaciones aritméticas sobre las

letras codificaremos estas por los 27 primeros números naturales y

trabajaremos sobre el conjunto Z27

, aplicando aritmética congruencial

de módulo 27. La elección el tamaño del alfabeto es una decisión que

tendrá implicaciones posteriores. En la práctica es conveniente contar

con un alfabeto con un número primo de letras. En nuestro caso, por el

contrario, optamos por un alfabeto que pueda ser fácilmente entendible

por los alumnos.

A B e D E F G H 1 J K L M N

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

Ñ o p Q R s T u V w X y z

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

Los sistemas criptográficos donde la clave de cifrado y de descifrado

coincidan, o al menos sea posible deducir la clave de descifrado a partir

de la clave de cifrado, se llaman simétricos o de clave secreta. En los

cifrados de clave secreta, la seguridad depende de un secreto compartido

exclusivamente y previamente por el emisor y el receptor. Este punto es

una de las complicaciones de los sistemas de clave secreta. Dependiendo

de las facilidades y la confidencialidad que los comunicantes tengan

para llevar este proceso, se podrá elegir el sistema más adecuado para

cada circunstancia.

Page 4: Carlos Bruno Castañeda y Pino Caballero Gil Sistemas ......Los sistemas criptográficos donde la clave de cifrado y descifrado coincidan, o al menos sea posible deducir la clave de

18 SISTEMA S CRIPTOGRÁ FICOS DE SUSTITUCIÓN

Existen tres técnicas básicas de cifrado a partir de las cuales se generan todos los sistemas clásicos de clave secreta. Estas son: Trans­posición (alteración del orden de las unidades del texto original según una clave dada), Sustitución (reemplazamiento de las unidades del texto original por otras según una clave), Producto (composición de varios cifrados, de sustitución y/o transposición, que dependerán cada uno de ellos de una clave).

En este trabajo únicamente describiremos los sistemas de sustitución pues en ellos hemos encontrado una mayor cantidad de matemáticas adecuada a los niveles de secundaria. No obstante, los sistemas de transposición tiene aspectos matemáticos muy interesantes . El estudio de simetrías que en ellos aparecen y su criptoanálisis son aspectos que merecen un tratamiento detenido.

Sistemas de sustitución La sustitución definida mediante una clavek = (y0, y1, •• • , Yn' ... )es una

transformación Tk, que cifra la o-palabra original (x0

, x1, • •• , xn_

1) como

la o-palabra (y 0, y 1, • . . , Yn) con Y;(x) =Y;' O :S: i < n. Si Y; es única (i = 1, 2, ... , n) el sistema se llama de sustituciónmonoalfabética, en otro caso se llama de sustitución polialfabética.

Antes de pasar a analizar los sistemas criptográficos repasaremos algunos conceptos de matemática congruencia!.

Congruencias La aritmética congruencial es usada en codificación y criptografía

debido a que los alfabetos que se usan son conjuntos finitos, y sobre ellos generamos distintos tipos de aplicaciones matemáticas [3]. La manipu­lación numérica de estos conjuntos es de los campos de mayor desarrollo en las matemáticas actuales. Requiere de conocimientos que normal­mente están reservados para la docencia en niveles superiores. Sin embargo, reservan conceptos y razonamientos que pueden ser aborda­dos en la enseñanza secundaria. Como el tema de este trabajo no es la aritmética modular, ofrecemos el menor número de procedimientos que sirvan para manipular las cuestiones que la criptografía requiere.

Para simplificar, inicialmente tomaremos el conjunto Z6

= {O, 1, 2, 3, 4, 5}, que está formado por 6 elementos. Cualquier número entero es congruente módulo 6 con alguno de estos elementos. Así,

Page 5: Carlos Bruno Castañeda y Pino Caballero Gil Sistemas ......Los sistemas criptográficos donde la clave de cifrado y descifrado coincidan, o al menos sea posible deducir la clave de

CARLOS BRUNO CASTAÑEDA Y PINO CABA LLERO GIL 19

23 = 5 (mod 6) pues 23 = 3·6+5. Tomaremos pues el resto de las divisiones de cualquier número por 6. Las operaciones en este conjunto son sencillas. Para facilitar su uso podemos usar las tablas de las operaciones suma y producto.

+ o 1 2 3 4 5 X o 1 2 3 4 5 o o 1 2 3 4 5 o o o o o o o 1 1 2 3 4 5 o 1 o 1 2 3 4 5 2 2 3 4 5 o 1 2 o 2 4 o 2 4 3 3 4 5 o 1 2 3 o 3 o 3 o 3 4 4 5 o 1 2 3 4 o 4 2 o 4 2 5 5 o 1 2 3 4 5 o 5 4 3 2 1

¿Cómo calcular a- 1 (mod m)? Buscando aquel número tal que multiplicándolo por a se obtiene 1. Para que exista la inversa de un número es necesario que éste y m sean primos entre sí.

¿Cómo resolver la ecuación ax+ b = c (mod m)? Razonaremos de forma simple. Buscaremos en la tabla de la suma el sumando que, con b, da como resultado c. Una vez hallado, dicho término estará formado por dos factores. Buscaremos el factor que, multiplicado por a, dé como resultado aquel término. Podemos desarrollar este procedimiento de forma algorítmica para ayudar a su compresión. Hay que advertir que la solución hallada será única en el caso de que a y m sean primos entre sí. Veamos dos ejemplos:

Ejemplo 1: 5 X + 3 = 1 (mod 6). Buscamos un número de z 6 que, cuando lo sumemos con 3, se obtenga l. Este número será 4. Ahora buscaremos un número de Z

6 que, cuando lo multipliquemos por 5,

obtengamos 4. Este número será 2. Es fácil seguir estos razonamientos usando las tablas de las operaciones anteriores.

Ejemplo 2: 3 X + 4 = 4 (mod 6). Buscamos un número de z6 que, sumado con 4, se obtenga 4. Este número será O. Buscamos un número que, multiplicado por 3, dé O. Tendremos tres soluciones x =O, x = 2 y x = 4. Las tres soluciones son válidas, pues verifican la ecuación. La solución no es única, puesto que 3 es divisor de 6.

Existen resultados sencillos que permiten resolver sistemas lineales de ecuaciones congruenciales que no abordaremos aquí, pero que

Page 6: Carlos Bruno Castañeda y Pino Caballero Gil Sistemas ......Los sistemas criptográficos donde la clave de cifrado y descifrado coincidan, o al menos sea posible deducir la clave de

20 SISTEMAS CRIPTOGRÁFICOS DE SUSTITUCIÓN

pueden ser de interés para alguno de los sistemas que describimos en el presente trabajo.

Sustitución monoalfabética En el siglo I a. C., Julio César ideó un sencillo método para mantener

determinados escritos en secreto, que ha pasado a la historia como el Cifrado de César [ 4]. Sustituía cada letra por la que se encontrara tres posiciones más adelante en el orden alfabético, es decir, la A por la D, la B por la E, la C por la F, etc. Al parecer el emperador Augusto heredó dicho sistema, aunque se conformaba con sustituir cada letra por la siguiente en el orden alfabético. Este sencillo y clásico método se corresponde con el siguiente esquema:

Cifrado de César (s. I a. C.)

Conjunto de claves Transformación

{3} T3

(x) = x + 3 (mod 27)

Por ejemplo, deseamos cifrar el mensaje: "CAUCHY" procedere­

mos de la siguiente forma: T3(C) = T(2) = 2+3 (mod 27) = 5 = F,

T/ A) = T(O) = 0+3 (mod 27) = 3 = C, T/U) = T(21) = 21 +3 (mod 27) = 24 = X, T/H) = T(7) = 7 + 3 (mod 27) = 10 = K , T/Y) = T(25) = 25 + 3 (mod 27)=l =B. El cifrado será "FCXKB".

El sistema anterior se generaliza de forma evidente ampliando el conjunto de claves de un sólo número a un conjunto mayor de claves. Esta idea está detrás de los llamados Cifrados de Rotación que fueron descritos en el siglo XV por León Batista Alberti [4].

El rotador de Alberti consistía en dos discos concéntricos de distinto radio, fijos por sus centros, de manera que el pequeño giraba dentro del

Page 7: Carlos Bruno Castañeda y Pino Caballero Gil Sistemas ......Los sistemas criptográficos donde la clave de cifrado y descifrado coincidan, o al menos sea posible deducir la clave de

CARLOS BRUNO CASTA ÑEDA Y PINO CABALLERO GIL 2i

grande de forma independiente. En sus longitudes se escribía el alfabeto pudiendo hacer coincidir las letras de ambos círculos. Así, haciendo coincidir la A del círculo exterior con la D del círculo interior consegui­ríamos el cifrado de César. Si elegimos otra letra tendremos otro cifrado distinto. Manteniendo los dos círculos en en la posición elegida tenemos al alcance de la vista las sustituciones de todas las letras que se deben usar para cifrar un mensaje.

Cifrado por desplazamiento (s. XV)

Conjunto de Claves: Transformaciones:

{1, 2, ... ,26} Tk (x) = x + k (mod 27)

La clave k se denomina desplazamiento del cifrado. Por ejemplo, para k = 10, el mensaje "EULER" se cifrará siguiendo los pasos siguientes: EULER ~ 4,21,11,4,18 ~ 14,4,21 ,14,1 ~ ÑEUÑA:

Para descifrarun mensaje se emplea la transformación inversa T k- 1 (x) = x - k (mod 26).

Una variante de los Rotadores de Alberti es la Regla de Cifras de Saint-Cyr[ 4]. Evitaremos la dificultad que entraña dividir un círculo en 27 sectores idénticos mediante el uso de una regla. Necesitamos dos tarjetas, una tarjeta mayor se dobla en su ancho, de forma que dicho doblez sirva de guía a la otra tarjeta menor que se desplazará dentro de la primera, horizontalmente. Anotaremos sobre la parte visible de la mayor dos alfabetos consecutivos y sobre la menor un solo alfabeto. Así los desplazamientos de una tarjeta dentro de la otra haciendo coincidir las letras imitarán los movimientos del rotador de Alberti .

ABCDE?GHIJKI.MNflOPOl31UVWXYZ

Trabajar con sustituciones monoalfabéticas como el cifrado de César, los rotadores de Alberti o la regla de Saint-Cyr es un trabajo

Page 8: Carlos Bruno Castañeda y Pino Caballero Gil Sistemas ......Los sistemas criptográficos donde la clave de cifrado y descifrado coincidan, o al menos sea posible deducir la clave de

22 SISTEMA S CRIPTOGRÁFICOS DE SUSTITUCIÓN

entretenido para un alumno de primaria y fácil para un alumno de secundaria. El tratamiento matemático que se puede hacer con él es

relativamente sencillo simplemente haciendo coincidir las letras con

números cuando anotemos los alfabetos que sirven para cifrar. Después

hay que trabajar con las operaciones básicas y el funcionamiento de la

aritmética modular, que puede ser implícito o explícito de acuerdo al

tipo y nivel del alumnado. Para ni veles más altos de secundaria se puede

añadirun tratamiento informático del problema, que puede ser abordado

mediante un lenguaje de programación sencillo, un programa de cálculo

simbólico, o bien mediante una Hoja de Cálculo.

Podemos abordar además dos cuestiones que permiten hacer nuevos

desarrollos curriculares: 1 º Abordar el Criptoanálisis del sistema, 2º

Explicar una mejora del sistema mediante transformaciones afines.

1 ºEl criptoanálisis de la sustitución de letras se basa en alanálisis de frecuencias de las letras de la lengua usada por los comunicantes.

Así, en español tenemos el siguiente orden de acuerdo a las

frecuencias en que se usan las letras [2]:

I EIAlolLlslNIDIRlui11 TlclPI MIY IQIB 1 1HIGIFlvlÑIJ1 z lxl K lw 1

Si un intruso ha interceptado un texto cifrado (lo suficientemente

grande) mediante el sistema de desplazamiento, y del análisis de

frecuencias de sus letras se deduce que la letra U es la letra más frecuente

del texto cifrado, resulta lógico suponer que ésta corresponde al cifrado

de la letra más frecuente en la lengua usada, por ejemplo la E en español.

En este caso, como E= 4 y U= 20, se tiene que 20 = 4 + b (mod 27), de

donde se obtiene b = 16. No queda más que comprobar que la clave es

correcta tratando de descifrar un párrafo. En caso de no haber acertado,

procede probar con la siguiente letra más frecuente, y así sucesivamente. Este proceso es finito, ya que sólo hay 27 posibilidades.

2º El sistema de sustitución por desplazamiento puede ser mejorado

usando una transformación más general denominada transfor­mación afín [1]:

Page 9: Carlos Bruno Castañeda y Pino Caballero Gil Sistemas ......Los sistemas criptográficos donde la clave de cifrado y descifrado coincidan, o al menos sea posible deducir la clave de

CA RLOS BRUNO CASTAÑEDA Y PINO CA BALLERO GIL 23

Cifrado por transformación afín

Conjunto de claves Transformaciones

{ (a,b) /a, b E Z } T(a,b) (x) = a · x + b (mod m)

Porejemploparaa = 16, b =ll: T

06•11 /G) = T06.11 /6) = 16·6+11(mod27) = 19 =S.

Para descifrar el mensaje podemos usar la tabla anterior que corres­ponde a la función inversa de T, T(a,bJ- 1 (y) = a' ·y + b' (mod 27), donde a' = a- 1 (mod27) yb' =-a-1·b(mod27) [3]. Parahallarelinversomodular de un número podemos contar con la tabla de la suma y el producto del conjunto finito con que trabajamos, en nuestro caso Z

27 (tarea más

tediosa que complicada). También puede ser interesante hallar la gráfica de la transformación y de su inversa para entender estos procedimientos.

El criptoanálisis de un texto cifrado se puede hacer mediante el análisis de frecuencias , pero esta vez harán falta dos ecuaciones dado que existen dos incógnitas (a' y b' ) [3]. Veamos un ejemplo. Si un texto cifrado con este sistema tiene las letras K y D como las más frecuentes , las haremos coincidir con las letras E y A en español mediante el sistema de ecuaciones:

11 a' + b' = 4 (mod 27) 3 a' + b' = O (mod 27)

En el caso de que el sistema resultante no tuviera solución única, habría que continuar con el análisis de frecuencias obteniéndose una tercera ecuación, y así sucesivamente.

Sustitución bialfabética En el siglo II a.C. el historiador griego Polibio describe un sistema

de señales a distancia basado en el empleo de antorchas [ 4]. Para evitar posibles accidentes puede ser conveniente que en el aula estas antorchas sean sustituidas mediante un gráfico con diez círculos que, a modo de semáforo, puedan cambiar de color (o quizás podría ser entretenido sustituirlas por diez linternas). Se requiere de un alfabeto con 25 letras, así que podemos entender que Q = K y que V= W. Con las veinticinco letras construimos un damero de la siguiente forma:

Page 10: Carlos Bruno Castañeda y Pino Caballero Gil Sistemas ......Los sistemas criptográficos donde la clave de cifrado y descifrado coincidan, o al menos sea posible deducir la clave de

24

1 2 3 4 5

1 A B c D E

2 F G H 1 J

3 K=Q L M N Ñ

4 o p R s T

5 u V=W X y z

Cada letra vendrá identificada por un par de números, la fila y la

columna donde se encuentre. Para transmitir la letra R a distancia se encendían las cuatro primeras antorchas y las tres últimas. Debemos

observar que este sistema es de codificación y no sirve para ocultar un mensaje, y que cada símbolo es sustituido por dos, lo que es una desventaja pues duplica la longitud del mensaje.

El cifrado de Playfair se utilizó durante las dos guerras mundiales y está basado en el damero de Polibio. Este sistema lleva el nombre del

inglés Lyon Playfair, su difusor en las esferas diplomáticas de la

Inglaterra victoriana. Sin embargo su inventor fue su paisano, el cientí­fico Charles Wheatstone [ 4]. Requiere de un damero como el de Polibio

y la elección de una palabra clave, por ejemplo NÚMEROS, disponién­

dose las letras del alfabeto sobre el damero como sigue: primero la palabra clave y después las restantes letras del alfabeto.

N u M E R

o s A B c D F G H 1

J K=Q L Ñ p

T V=W X y z

El cifrado se realiza mediante los siguientes pasos: Se divide el mensaje en 2-palabras. Si aparece alguna 2-palabra que está formada por

una letra repetida, se añade una letra nula en medio, la Q por ejemplo. Si el mensaje resultante tiene un número impar de letras, se añade otra nula para emparejarse con la última letra del mensaje. Cada una de las

Page 11: Carlos Bruno Castañeda y Pino Caballero Gil Sistemas ......Los sistemas criptográficos donde la clave de cifrado y descifrado coincidan, o al menos sea posible deducir la clave de

2-palabras del mensaje, (x, x'), se cifra mediante la transformación T(x, x') =(y, y' ) definida como sigue:

25

a) Si las letras x, x' están en la misma fila y distinta columna, (x, x') = (y , y ) s-:/:- t, entonces le corresponden las letras en la misma fila y en

l, S l , t

las columnas adyacentes por la derecha, es decir, (y,y ' ) = (Yi ,s+i , Yi,t+ 1) .

b) Si las letras x, x' están en la misma columna y distinta fila, (x, x' ) = (y , y ) i-:/:- j, entonces le corresponden las letras en la misma columna

I, S J, S

y en las filas inmediatamente inferiores, es decir, (y,y') =(y 1

, y 1

) . I+ ,s j+ ,s

c) Si las letras x, x' están en distintas filas y distintas columnas, (x,x')=(y ,y) i-:t- j, s-:t- t,entonceslecorrespondenlasletrasenlamisma

1,S J,t

fila y esquinas opuestas del rectángulo (i,s) , (i,t) , (j,s) , (j,t), es decir, (y, y') = (Yi,L 'Y)·

Por ejemplo el mensaje "ISAAC NEWTON" se transforma en IS AQ AC NE VT ON, que mediante el damero escogido se cifrará como FC SL BO UR XV DO.

El descifrado se define con reglas semejantes a éstas.

Cifrado de Playfair (s. XIX)

Conjunto de claves: Transformaciones

Subconjunto k de letras Tk (x, x' ) =(y, y' )

del alfabeto definida como se indicó.

La transformación de Playfair recurre al damero de Polibio para su definición. Sin embargo, es posible encontrar una transformación bialfabética en términos más matemáticos.

Se puede realizar una ampliación de la definición de transformación afín al caso de las 2-palabras [1] . En primer lugar se expresala2-palabra original (x, y) como el entero M=x·m+y, y en segundo lugar se cifra mediante la transformación Tca,bJ (M) = a·M + b (mod m2

) , donde a y m2

deben ser primos entre sí. Por último se traduce el entero resultante C en una 2-palabra de texto cifrado (x ' ,y ' ) tal que C = x' ·m +y'.

Page 12: Carlos Bruno Castañeda y Pino Caballero Gil Sistemas ......Los sistemas criptográficos donde la clave de cifrado y descifrado coincidan, o al menos sea posible deducir la clave de

26 SISTEMAS CRIPTOGRÁFICOS DE SUSTITUCIÓN

El proceso descrito es (x,y) ---7 M=x·m+y---7 C=a·M+b(mod m2) ---7

C=x'·m+y' ---7 (x',y'). Por ejemplo, con a=l42, b=580 y m=27, se

tendremos: (x¡,y¡) = (1,0) ---7 MI = 1 . 27 +o= 27 ---7 el = 142. 27 +

580 (mod 27 2) = 40 ---7 40 = l ·27 + 13 ---7 (x/ ,y 1 ') = (1, 13).

(x2,yz) = (1,3) ---7 M

2 = 1·27 + 3 = 30---7 C

2 = 142·30 + 580 (mod 27 2

)

= 466 ---7 466 = 17·27 + 7 ---7 (x2

' ,y2') = (17 ,7)

Cifrado de transformación afín para 2-palabras

Conjunto de claves

{ (a,b) / a, b E Z, a y

m primos entre si}

Transformaciones

T(a,b) (x,y)= (x' ,y') tal que

a·(x·m+y)+b (mod m2) = x' ·m+y'

Para descifrar se utiliza T 1(a,b) (C) = a' · C + b' (mod m ), donde

a' = a-1 (mod m2) y b' = -a-1 ·b (mod m2 ).

Hacen falta dos correspondencias independientes de unidades de

texto originales y cifrados para poder criptoanalizar el sistema. De

nuevo estas correspondencias se consiguen mediante un análisis de

frecuencias , pero en este caso de las 2-palabras [2]. Así, en español

tenemos el siguiente orden en frecuencias en que se usan las

2-PALABRAS:

1 DE 1 LA 1 EN 1 EL 1 ES 1 QU 1 UE 1 UN 1 OS

l ~IAA l ~l 00 l~luloo l mlrn

Una generalización de un cifrado para 2-palabra será mediante el

sistema de Hill. Aunque el americano Les ter Hill lo ideó paran-palabras

es fácil de explicarlo para 2-palabras. Tiene un interés didáctico impor­

tante debido al uso de matrices que en él se hace.

11

Page 13: Carlos Bruno Castañeda y Pino Caballero Gil Sistemas ......Los sistemas criptográficos donde la clave de cifrado y descifrado coincidan, o al menos sea posible deducir la clave de

CARLOS BRUNO CASTAÑEDA Y PINO CABALLERO GIL 27

Cifrado de Hill para 2-palabras (siglo XX)

Conjunto de claves Transformaciones

{ (A,B)/A=(: :), T<A.BJ (x,y) =

B= (;) a, b, e, d, e, f E Z } (A-e) +B) (mod m)

Veamos un ejemplo, cifrando las siglas de la Sociedad Canaria Isaac Newton de Profesores de Matemáticas, SCINPM --7 se IN PM --7 (19,2) (8,13) (16,12).

Tomamos A = G ;) y B = ( ~) .El cifrado será:

. (19) - (1.19 + 3.2 + l(mod 27))-(26) A 2 +B- 2.19+4.2(mod27) - 19 ~ ZS,

(8) (1.8+3.13+l(mod27)) (21)

A· 13 +B = 2.8+ 4.13(mod 27) = 14 ~ UÑ,

(16) (1.16+ 3.12 + l(mod 27)) (26) A- 12 +B = 2.16+ 4.12(mod 27) = 21 ~ ZU.

El mensaje cifrado será ZSUÑZU.

Es necesario que la matriz A sea inversible, pues la transformación

de descifrado será: TCA.BJ-1 (C) = A- 1·C - A-1·B [3].

Para su criptoanálisis, será necesario tener tres parejas de 2-palabras originales y cifradas Aunque se trata de hacer coincidir las 2-palabras del texto cifrado de mayores frecuencias con las 2-palabras de mayor

frecuencia en español es necesario contar con gran cantidad de texto para asegurar una coincidencia fiable.

Page 14: Carlos Bruno Castañeda y Pino Caballero Gil Sistemas ......Los sistemas criptográficos donde la clave de cifrado y descifrado coincidan, o al menos sea posible deducir la clave de

28 SISTEMAS CRIPTOGRÁFICOS DE SUSTITUCIÓN

Sustituciones polialfabéticas. Por último, abordaremos de forma sucinta algunos sistemas

polialfabéticos. Estos sistemas, aunque tienen criptoanálisis asociados que los rompen, son aún usados en circunstancias de lo que se denomina secreto táctico, en las que lo importante no es tanto contar con una robustez absoluta del sistema sino que sea capaz de mantener el secreto durante un tiempo adecuado.

El diplomático francés, Blaise de Vigenere publicó en 1586 un sistema que es actualmente conocido como el Cifrado de Vigenere [ 4]. Este sistema es el ejemplo por excelencia de un cifrado de sustitución polialfabético.

El cifrado de Vigenere se define mediante una tabla donde se encuentran todas las rotaciones que podemos realizar con el alfabeto ordenado. Cada una de las filas corresponde a un desplazamiento en un rotador de Alberti.

Se eligirán un tamaño n y unan-palabra que usaremos como clave. Dividiremos el texto claro en bloques de tamaño n. La k-ésima letra de cada uno de los bloques será cifrada de acuerdo al desplazamiento de Alberti correspondiente a la k-ésima letra de la palabra clave.

Cifrado de Vigenere (s. XVI)

Conjunto de claves Transformaciones

{y= (y1 ,y2

, •• .,y) I Y¡E alfabeto Ty (x1,x

2, ••• ,x) = (y

1, y

2, •• • ,y)

de tamaño m} con y¡= x¡+y¡(mod m)

Veamos un ejemplo. Deseamos cifrar la palabra "MATEMÁTI­CAS". Elegimos n = 5 y una 5-palabra clave, por ejemplo: EULER. Dividimos el mensaje en bloques de 5 haciendo la siguiente correspon­

dencia con la palabra clave. Observemos el ejemplo:

Mensaje M A T E M A T I c A s Clave E u L E R E u L E R E

Cifrado p u E I D E Ñ s G R w

Durante siglos se consideró el sistema de Vigenere como inexpugna­ble cripoanalíticamente. No es así. Su criptoanálisis se basa en el hecho de que en un texto cifrado por este sistema aparecen palabras repetidas

Page 15: Carlos Bruno Castañeda y Pino Caballero Gil Sistemas ......Los sistemas criptográficos donde la clave de cifrado y descifrado coincidan, o al menos sea posible deducir la clave de

CA RLOS BRUNO CASTAÑEDA Y PINO CABALLERO GIL 29

que señalan una periodicidad del cifrado. Cuanto mayor sea la palabra clave usada, mayor será el periodo de texto cifrado y más difícil será su criptoanálisis. Evidentemente si se alarga la palabra clave se complica el proceso de cifrado y el intercambio de claves entre los comunicantes.

Existe un aspecto matemático interesante en un sistema de sustitu­ción polialfabético que no deberíamos dejar atrás, es el del Cifrado de Vernam o de cinta aleatoria. En él podemos abordar cuestiones probabilísticas, en concreto sobre la generación de números aleatorios. Para evitar el inconveniente del sistema de Vigenere, en 1917 el ingeniero americano, Vernam, propone un sistema de gran importancia en la criptografía moderna pues es el único sistema que se demuestra matemáticamente perfecto [1]. Consideramos como clave una secuen­cia aleatoria de letras de igual tamaño que el mensaje.

Conocido el tamaño, k, del mensaje que deseamos cifrar, considera­mos una sucesión finita de tamaño k de variables aleatorias independien­tes e idénticamente distribuidas según una distribución equiprobable sobre Zm, que será la clave usada. Entonces realizamos una suma módulo m entre cada letra del mensaje con cada letra de esta sucesión de claves.

Cifrado de Vernam o de cinta aleatoria (s XX) Conjunto de claves Transformación

{ y={ Y) i = º· '· n- 1 / 't/ i, Y¡ v.a. Ty({xi}i=O, l, ... ,n- 1) = independientes, idénticamenté {y ) i=O, t , ... ,n- t' donde

distribuidas según una y¡ =Y¡ + xi (mod m) distribución equiprobable}

¿Como generar una secuencia con las características deseadas? Podemos considerar cualquier método que permita obtener números aleatorios, como las tablas, una ruleta, la tecla RAN #de las calculadoras, la función Ramdom() de muchos programas informáticos (BASIC, Derive o cualquier Hoja de Calculo), etc. Estos procedimientos nos suelen ofrecer números aleatorios dentro del intervalo [O, 1]. Usando una transformación sencilla de estos valores podremos obtener una letra del alfabeto. Si el valor aleatorio del intervalo [0,1] obtenido es x, conside­raremos para tener un número del conjunto Zm, la parte entera del número (m - l)·x.

Tomemos las primeras palabras de Alicia en el País de las maravi­llas , "SURCANDO LA TARDEDORADA"de21 letras. Generando un número aleatorio con la calculadora: 0'053 y calculando E(26·0'053) =

Page 16: Carlos Bruno Castañeda y Pino Caballero Gil Sistemas ......Los sistemas criptográficos donde la clave de cifrado y descifrado coincidan, o al menos sea posible deducir la clave de

30 SISTEMAS CRIPTOGRÁFICOS DE SUSTITUCIÓN

1 = B obtendremos la primera letra clave. Continuando el proceso 21

veces conseguiremos una secuencia aleatoria de manera que se cifre el

mensaje como indicamos a continuación:

Mensaje 1 si ul RI cl Al NI DI ol LI Al TI Al RI DIEI DI ol RIAI DI Al

Clave 1 B 1 R 1 DI F 1T1 MI F 1 P 1 G 1 GI vi u 1 P 1 L 1 ul Y 1 B 1 ol LI MI G 1

Cifrado ITIMlulHITIYI I IEIQIGlol ulHI ÑIYIBIPIGILlolGI

Conclusión Las matemáticas que usa la criptografía no acaba con los sistemas

descritos en este trabajo. No solo exiten numerosos ejemplos más de

criptografía clásica, sino que, además, cabe estudiar sistemas contem­

poráneos que aportan problemas, los cuales podrían ser abordados en la

clase de matemáticas. Ofrecen distintos tratamientos que deben ser escogidos por el profe­

sor para su desarrollo. Podemos señalar como propuestas: un acerca­

miento histórico o literario, incluirla dentro de conceptos de codifica­

ción y tratamiento de la información, o como prácticas informáticas.

Bibliografía [1] Caballero, P. (1996) Introducción a la criptografía, Ra-Ma.

Sobre los aspectos matemáticos de los sistemas criptográficos.

[2] Greenwood G. (1986) Códigos y claves secretas, Anaya

Sobre aspectos de criptoanálisis. Aporta una colección de programas en

BASIC. [3] Rosen, K. (1988) Elementary number theory and its applications,

Addison-Wesley Sobre matemática finita con implicaciones en criptografía.

[4] Sgarro, A. (1990) Códigos secretos, Pirámide

Sobre referencias históricas.

Carlos Bruno Castañeda I.E.S. La Laboral. Lora Tamayo, sin. La Laguna (Tenerife)

[email protected]

Pino Caballero Gil Dpto. Estadística, Investigación Operativa y Computación.

Universidad de La Laguna. La Laguna (Tenerife)

[email protected]