carlos bruno castañeda y pino caballero gil sistemas ......los sistemas criptográficos donde la...
Post on 01-Mar-2021
7 Views
Preview:
TRANSCRIPT
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 denomina Criptografía clásica a todas aquellas técnicas criptográficas anteriores 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 sobrepasan 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 problemá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
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 caracterizados 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 conjuntos 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 conjunto 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 frecuencias, 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 conjunto amplio de correspondencias que generen distintos tipos de texto cifrado a partir de un mismo texto claro. Cada una de dichas correspondencias 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 correspondencias 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 suposiciones durante el estudio teórico de la operación de cifrado:
•Las correspondencias son biyectivas.
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.
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: Transposició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 manipulación numérica de estos conjuntos es de los campos de mayor desarrollo en las matemáticas actuales. Requiere de conocimientos que normalmente están reservados para la docencia en niveles superiores. Sin embargo, reservan conceptos y razonamientos que pueden ser abordados 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í,
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
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
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 conseguirí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
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 transformación afín [1]:
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 corresponde 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:
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
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'.
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
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.
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ÁTICAS". 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 inexpugnable 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
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 sustitució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 secuencia aleatoria de letras de igual tamaño que el mensaje.
Conocido el tamaño, k, del mensaje que deseamos cifrar, consideramos una sucesión finita de tamaño k de variables aleatorias independientes 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, consideraremos 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 maravillas , "SURCANDO LA TARDEDORADA"de21 letras. Generando un número aleatorio con la calculadora: 0'053 y calculando E(26·0'053) =
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)
cbcx@correo.rcanaria.es
Pino Caballero Gil Dpto. Estadística, Investigación Operativa y Computación.
Universidad de La Laguna. La Laguna (Tenerife)
pccaballero@ull.es
top related