PROYECTO
-
Upload
alberto-gascon -
Category
Documents
-
view
426 -
download
0
Transcript of PROYECTO
5/10/2018 PROYECTO - slidepdf.com
http://slidepdf.com/reader/full/proyecto-55a0c0597c30d 1/88
Autorizada la entrega del proyecto del alumno:
Alberto Gascón González
Madrid, 6 de septiembre de 2010
LOS DIRECTORES DEL PROYECTO
Dr. D. Francisco Alberto Campos Fernández
Fdo.: …………………… Fecha: ……/ ……/ ……
Dr. D. Jesús María Latorre Canteli
Fdo.: …………………… Fecha: ……/ ……/ ……
Vº Bº del Coordinador de Proyectos
Dr. D. Álvaro Sánchez Miralles
Fdo.: …………………… Fecha: ……/ ……/ ……
5/10/2018 PROYECTO - slidepdf.com
http://slidepdf.com/reader/full/proyecto-55a0c0597c30d 2/88
PROYECTO FIN DE CARRERA
APLICACIÓN DE ALGORITMOS
GENÉTICOS EN EL ATAQUE DETEXTOS CIFRADOS DURANTE LAGUERRA CIVIL ESPAÑOLA
ALBERTO GASCÓN GONZÁLEZ
MADRID, SEPTIEMBRE 2010
UNIVERSIDAD PONTIFICIA COMILLAS
ESCUELA TÉCNICA SUPERIOR DE INGENIERÍA (ICAI)
INGENIERO INDUSTRIAL
5/10/2018 PROYECTO - slidepdf.com
http://slidepdf.com/reader/full/proyecto-55a0c0597c30d 3/88
APLICACIÓN DE ALGORITMOS GENÉTICOS EN EL ATAQUE DETEXTOS CIFRADOS DURANTE LA GUERRA CIVIL ESPAÑOLA
Autor: Gascón González, Alberto.
Directores: Campos Fernández, Francisco Alberto. Latorre Canteli, Jesús María
Entidad Colaboradora: ICAI – Universidad Pontificia Comillas.
RESUMEN DEL PROYECTO
Los sistemas de cifrado están presentes continuamente en nuestra vida diaria y los
consideramos esenciales para tareas tales como proteger nuestros datos bancarios onuestro correo electrónico. Pero más importante, si cabe, se hace la transmisión de
mensajes secretos en tiempos de guerra. Los servicios de información, espionaje y
contraespionaje presentes en la mayoría de los bandos de una guerra, sea ésta del
carácter que sea, dan fe de la importancia que se le ha dado, y se le da, al secreto de las
comunicaciones, considerado éste un tema de carácter extremadamente clave. Este
hecho no fue menos relevante en la Guerra Civil Española. Muestra de ello es la gran
ventaja estratégica que el bando nacional logró obtener en los primeros años de laguerra debido a su mayor organización y disciplina en este aspecto.
El proyecto realizado, nace de la observación de que existen aún muchos textos cifrados
de la época que bien porque se han destruido las claves o bien porque no se ha realizado
un estudio de los mismos a fondo, permanecen cifrados y ocultando mensajes que
podrían considerarse auténticas joyas a nivel de investigación histórica.
Se ha propuesto, por lo tanto, crear una herramienta informática que sea capaz de
descifrar textos cifrados de la época, cuya clave se desconozca, y que fueran cifrados
mediante los métodos más utilizados durante la guerra; el cifrado por tabla de
homófonos y el cifrado por cinta móvil, o sistema español. El trabajo realizado, ofrece
además la posibilidad de comprobar las ventajas que ofrecen las técnicas modernas de
informática, matemática e investigación de operaciones a la hora de desencriptar un
texto cifrado de manera automática y sin ayuda humana.
Tanto el cifrado por tabla de homófonos como el cifrado de cinta móvil, consisten ensustituir cada letra del texto por un número de dos dígitos. Una tabla dada, proporciona
‐1‐
5/10/2018 PROYECTO - slidepdf.com
http://slidepdf.com/reader/full/proyecto-55a0c0597c30d 4/88
en cada uno de los casos una correspondencia entre cada letra y varios números, de
modo que distintos números sustituyan a la misma letra y su criptoanálisis resulte más
complejo. La Ilustración 11 muestra una clave utilizada para el cifrado por cinta móvil.
Las columnas de números son los denominados homófonos, ya que cada uno sustituye a
la misma letra. La última fila de la tabla consiste en un alfabeto desordenado, que es la
verdadera correspondencia entre los números y las letras. De este modo, todos los
números de la primera columna sustituyen a la letra ‘X’. Una tabla de homófonos, por
su parte, es prácticamente igual pero eliminando esa última fila. Los números sustituyen
directamente a la letra del alfabeto ordenado (la primera fila en gris).
Ilustración 1
Para resolver el problema planteado, se ha propuesto un modelo de programación
matemática y un algoritmo genético, que tratan de averiguar el texto en claro por medio
de encontrar las correspondencias de letras y números que hagan del mensaje
supuestamente enviado lo más parecido posible al castellano. Para evaluar cómo de
parecido al castellano es un texto, se estudian las frecuencias de las letras y bigramas, y
se comparan con las utilizadas en el castellano corrientemente (criptoanálisis por
1 Imagen obtenida de [1]. Fundación Francisco Largo Caballero. Fuente: Fondo de Julián Besteiro y
Dolores Cebrián.
‐2‐
5/10/2018 PROYECTO - slidepdf.com
http://slidepdf.com/reader/full/proyecto-55a0c0597c30d 5/88
análisis en frecuencia). En el algoritmo genético, además, se ha implementado una
función diccionario que busca palabras del castellano en una base de datos.
Un primer estudio del problema demuestra que encontrar toda la tabla de homófonos o
toda la tabla de cinta móvil resulta extremadamente complejo, sobre todo de maneracompletamente automática, por lo que en este proyecto se ha decidido atacar
exclusivamente el sistema de cifrado por cinta móvil bajo la suposición de que las
columnas de tabla fija son conocidas. Es decir, se sabe qué números van juntos pero no
a qué letra corresponden (ver Ilustración 1). Esta suposición está justificada desde la
investigación histórica realizada ya que era común reutilizar la misma tabla fija,
variando únicamente la cinta móvil en las comunicaciones.
En cuanto a los resultados, se ha observado que el algoritmo genético es claramente
superior al modelo de programación matemática y gracias a él se ha logrado obtener el
texto perfectamente en claro de un mensaje real, enviado durante la guerra.
El modelo de programación matemática sin embargo, requiere demasiadas variables si
se desea estudiar la frecuencia tanto de las letras como de los bigramas. Por lo que para
su ejecución bajo el programa GAMS sólo es posible estudiar la frecuencia de las letras.
Los resultados en este caso resultan insatisfactorios.
Se concluye, por lo tanto, que las técnicas operativas modernas son en general capaces
de alcanzar resultados igual de buenos que los obtenidos por expertos criptógrafos de la
época, pero en mucho menos tiempo.
Además, los resultados obtenidos son alentadores a la hora de desarrollar un algoritmo
más general que no precise de ninguna suposición para resolver el problema.
Referencia
[1] Fuensanta, José Ramón Soler and Espiau, Francisco Javier López-Brea (2007) 'The
Strip Cipher-The Spanish Official Method' , Cryptologia, 31: 1, 46 — 56
‐3‐
5/10/2018 PROYECTO - slidepdf.com
http://slidepdf.com/reader/full/proyecto-55a0c0597c30d 6/88
GENETIC ALGORITHMS TO ATTACK CIPHERTEXTS FROM THE
SPANISH CIVIL WAR
Author: Gascón González, Alberto.
Directors: Campos Fernández, Francisco Alberto. Latorre Canteli, Jesús María.
Collaborating Institution: ICAI – Universidad Pontificia Comillas.
PROJECT SUMMARY
Encryption systems are constantly present in our daily lives and we consider themessential for tasks such as protecting our bank data or our e-mail. But more importantly,
if possible, is the transmission of secret messages during wartime. The services of
information, espionage and counterespionage present in both sides of a war, be it of any
sort, attest to the importance it has been given to the secrecy of communications,
considered this an issue of extreme importance. The Spanish Civil War and the great
strategic advantage that nationalist troops succeeded in obtaining during the first years
of the war, due to their greater organization and discipline in this area, are evidence of this.
The completed project is born from the observation that there are still many ciphertexts
of the war, that, either because the keys have been destroyed or because the texts have
not been deeply studied, they keep hiding encrypted messages that could be considered
invaluable at the level of historical research.
It has been suggested, therefore, to create a software tool that would be able to decrypt
ciphertexts of the time, whose key is unknown, that were encrypted with the methods
used during the war; the homophone table substitution and the strip cipher method (or
Spanish method). The project also offers the possibility to check the advantages of
modern techniques of computer science, mathematics and operational research at the
attack of a ciphertext, doing so automatically and without any human assistance.
Both encryption methods consist on replacing each letter of the text by a two-digit
number. A given table provides in each case a correspondence between each letter andseveral numbers, so that the same letter can be replaced by more than one number, and
‐4‐
5/10/2018 PROYECTO - slidepdf.com
http://slidepdf.com/reader/full/proyecto-55a0c0597c30d 7/88
the cryptanalysis is more complex. Figure 12 shows an encryption key used for the strip
cipher. The columns of numbers are called homophones, as each one replaces the same
letter. The last row of the table is a messy alphabet, which is the real correspondence
between numbers and letters. Consequently, all numbers in the first column replace the
letter 'X'. A table of homophones is created by eliminating the last row. The numbers
then directly replace the letter of the ordered alphabet (the first row in gray).
Figure 1
To solve the problem, it has been proposed a mathematical programming model and a
genetic algorithm, which try to find the plaintext by finding correspondences of letters
and numbers that make the message supposedly sent as close as possible to Spanish. In
assessing how much does a text resemble to Spanish, the frequency of letters and
bigrams are studied and compared with normal Spanish (cryptanalysis by frequency
analysis). In the genetic algorithm it has also been implemented a search function that
looks up for Spanish words on a database.
A first study of the problem shows that finding the whole table of homophones or the
entire strip cipher table is extremely complex, even more if it has to be done
2 Image obtained from [1]. Fundación Francisco Largo Caballero. Source: Fondo de Julián Besteiro y
Dolores Cebrián.
‐5‐
5/10/2018 PROYECTO - slidepdf.com
http://slidepdf.com/reader/full/proyecto-55a0c0597c30d 8/88
‐6‐
automatically, so in this project it has been decided to attack only the strip cipher
method assuming that the fixed table columns are known. That is, we know what
numbers go together but not which letters they correspond to (see Figure 1). This
assumption is justified from the historical research carried out since it was common to
reuse the same tables, varying only the mobile strip.
As for the results, it has been observed that the GA is clearly superior to the
mathematical programming model and that it has managed to find the perfect plaintext
of a real message, sent during the war.
The mathematical programming model, however, requires too many variables in order
to study the frequency of both the letters and bigrams. Thereby, for execution under the
GAMS program it is only possible to study the frequency of the letters. The results in
this case are unsatisfactory.
We conclude, therefore, that modern operational techniques are generally able to
achieve results as good as those obtained by expert cryptographers at the time, but
spending much less time.
In addition, the results are encouraging when thinking on developing a general
algorithm that does not require any assumption to solve the problem.
Reference
[1] Fuensanta, José Ramón Soler and Espiau, Francisco Javier López-Brea (2007)
'The Strip Cipher-The Spanish Official Method' , Cryptologia, 31: 1, 46 — 56.
5/10/2018 PROYECTO - slidepdf.com
http://slidepdf.com/reader/full/proyecto-55a0c0597c30d 9/88
Í NDICE DE LA MEMORIA
I
UNIVERSIDAD PONTIFICIA COMILLASESCUELA TÉCNICA SUPERIOR DE INGENIERÍA (ICAI)
INGENIERO INDUSTRIAL
Índice de la memoria
Parte I Memoria .......................................................................................... 1
Capítulo 1 Introducción ................................................................................... 2
1.1 Introducción ..................................................................................................... 2
1.2 Relevancia del cifrado y del criptoanálisis .................................................... 2
1.3 Criptografía en la Guerra Civil Española ..................................................... 3
1.4 Métodos de cifrado .......................................................................................... 4
1.4.1 Cifrado con tabla de homófonos .................................................................................... 5
1.4.2 Cifrado de cinta móvil ......................................................... ........................................... 6
1.5 Criptoanálisis del cifrado de cinta móvil: estado del arte .......................... 10
1.6 Motivación ...................................................................................................... 13
1.7 Objetivo .......................................................................................................... 14
1.8 Metodología .................................................................................................... 14
1.9 Recursos y herramientas empleados ............................................................ 15
Capítulo 2 Enfoques de resolución ................................................................ 16
2.1 Criptoanálisis: hipótesis y enfoque general con optimización .................. 16 2.1.1 Información de partida ................................................................................................. 16
2.1.2 Criptoanálisis y optimización ......................................................... .............................. 18
2.1.2.1 Variable de decisión: propuesta inicial ........................................................ ......... 18
2.1.2.2 Región factible: simplificación de la variable de decisión ................................... 18
2.1.2.3 Función objetivo .......................................................... ......................................... 23
2.2 Enfoque clásico mediante modelos de programación matemática............ 23
2.2.1 Modelo básico: Frecuencia de los monogramas ........................................................... 24
2.2.1.1 Datos de entrada ................................................................................................... 24 2.2.1.2 Variables de decisión............................................................................................ 24
5/10/2018 PROYECTO - slidepdf.com
http://slidepdf.com/reader/full/proyecto-55a0c0597c30d 10/88
Í NDICE DE LA MEMORIA
II
UNIVERSIDAD PONTIFICIA COMILLASESCUELA TÉCNICA SUPERIOR DE INGENIERÍA (ICAI)
INGENIERO INDUSTRIAL
2.2.1.3 Función objetivo .......................................................... ......................................... 25
2.2.1.4 Restricciones ........................................................................................................ 26
2.2.2 Ampliación del modelo: Bigramas ............................................................ ................... 26
2.2.2.1 Datos de entrada ................................................................................................... 27
2.2.2.2 Variables de decisión............................................................................................ 27
2.2.2.3 Función objetivo .......................................................... ......................................... 27
2.2.2.4 Restricciones ........................................................................................................ 28
2.2.3 Tamaño de los modelos ................................................................ ................................ 28
2.3 Enfoque heurístico basado en algoritmos genéticos ................................... 30
2.3.1 Codificación del genoma ................................................................ .............................. 32
2.3.2 Inicialización de la población ......................................................... .............................. 33
2.3.3 Selección de individuos para la reproducción .............................................................. 34
2.3.4 Reproducción ............................................................................................................... 34
2.3.5 Mutación ...................................................................................................................... 36
2.3.6 Función Objetivo ................................................................. ......................................... 37
2.3.7 Búsqueda por diccionario ............................................................... .............................. 37
2.3.7.1 Búsqueda de palabras conocidas .......................................................................... 38
2.3.7.2 Modificación de la población ............................................................................... 39
2.3.7.3 Acerca de la búsqueda por diccionario y los operadores ...................................... 40 2.3.8 Criterios de finalización del algoritmo y método de elitismo ...................................... 41
Capítulo 3 Casos estudio y resultados ............................................................ 42
3.1 Elección de los casos estudio ......................................................................... 42
3.2 Resultados ...................................................................................................... 45
3.2.1 Resultados del algoritmo de tipo BB ......................................................... ................... 46
3.2.2 Resultados del algoritmo genético ............................................................................... 46
3.2.2.1 Caso estudio 1: Ajuste del algoritmo ........................................................... ......... 46
3.2.2.2 Caso estudio 2 ...................................................................................................... 50
3.3 Conclusiones acerca de los resultados ......................................................... 52
Capítulo 4 Conclusiones ................................................................................. 54
Capítulo 5 Desarrollos futuros ....................................................................... 55
Anexo A ....................................................................................................... 57
Algoritmo genético desconocida la tabla fija ........................................................... 57
Codificación del genoma ...................................................................................................... 57
5/10/2018 PROYECTO - slidepdf.com
http://slidepdf.com/reader/full/proyecto-55a0c0597c30d 11/88
Í NDICE DE LA MEMORIA
III
UNIVERSIDAD PONTIFICIA COMILLASESCUELA TÉCNICA SUPERIOR DE INGENIERÍA (ICAI)
INGENIERO INDUSTRIAL
Inicialización de la población................................................................................................ 57
Reproducción ........................................................................................................................ 58
Mutación ............................................................................................................................... 59
Anexo B ....................................................................................................... 60
Caso estudio 1 ............................................................................................................. 60
Caso estudio 2 ............................................................................................................. 64
Ejemplos de legibilidad .............................................................................................. 65
Bibliografía ....................................................................................................... 67
5/10/2018 PROYECTO - slidepdf.com
http://slidepdf.com/reader/full/proyecto-55a0c0597c30d 12/88
Í NDICE DE FIGURAS
IV
UNIVERSIDAD PONTIFICIA COMILLASESCUELA TÉCNICA SUPERIOR DE INGENIERÍA (ICAI)
INGENIERO INDUSTRIAL
Índice de figuras
Figura 1- Clave X [2] .............................................................................................. 5
Figura 2- Ejemplo de cifrado por cinta móvil [1] ................................................... 6
Figura 3- Creación del alfabeto móvil con la clave 'VICTORIA' (I) ...................... 7
Figura 4- Creación del alfabeto móvil con la clave 'VICTORIA' (II) ..................... 7
Figura 5- Clave 'VICTORIA T en K' ...................................................................... 8
Figura 6- Clave ‗GENERAL‘ [1] Fundación Francisco Largo Caballero. ............. 8
Figura 7- Mensaje transmitido en la clave 'OVIEDO' ............................................. 9
Figura 8- Ejemplo de mensaje cifrado con zonas en claro .................................... 11
Figura 9- Índices del modelo ................................................................................. 25
Figura 10- Aumento de las variables y restricciones (2 letras) ............................. 30
Figura 11- Diagrama de flujo del AG utilizado .................................................... 31
Figura 12- Genoma de la solución como vector de 100 elementos ....................... 32
Figura 13- Genoma de la solución como alfabeto de 27 elementos ..................... 32
Figura 14- Generación de un alfabeto aleatorio .................................................... 34
Figura 15- Individuos origen de la reproducción .................................................. 35
Figura 16- Proceso de reproducción (I) ................................................................. 35
Figura 17- Proceso de reproducción (II) ............................................................... 35
Figura 18- Proceso de reproducción (III) .............................................................. 36
Figura 19- Proceso de reproducción (IV) .............................................................. 36
Figura 20- Mutación de un individuo .................................................................... 37
Figura 21- Comprobación de los flags .................................................................. 40
5/10/2018 PROYECTO - slidepdf.com
http://slidepdf.com/reader/full/proyecto-55a0c0597c30d 13/88
Í NDICE DE FIGURAS
V
UNIVERSIDAD PONTIFICIA COMILLASESCUELA TÉCNICA SUPERIOR DE INGENIERÍA (ICAI)
INGENIERO INDUSTRIAL
Figura 22- Clave 'VICTORIA T en K' .................................................................. 43
Figura 23- Proceso de criptoanálisis de los casos estudio ..................................... 44
Figura 24- Optimalidad del mejor individuo en cada generación ......................... 49
Figura 25- Proceso de optimización del caso estudio 2 ........................................ 52
Figura 26- Codificación del genoma ..................................................................... 57
Figura 27- Inicialización de un individuo ............................................................. 58
Figura 28- Reproducción por single point ............................................................. 58
Figura 29- Reproducción uniforme ....................................................................... 58
Figura 30- Mutación de un individuo .................................................................... 59
5/10/2018 PROYECTO - slidepdf.com
http://slidepdf.com/reader/full/proyecto-55a0c0597c30d 14/88
Memoria
- 0 -
UNIVERSIDAD PONTIFICIA COMILLASESCUELA TÉCNICA SUPERIOR DE INGENIERÍA (ICAI)
INGENIERO INDUSTRIAL
Índice de tablas
Tabla 1- Complejidad de los modelos ................................................................... 29
Tabla 2- Relación de tamaño con el modelo básico (ampliado/básico) ................ 30
Tabla 3- Clasificación de los textos descifrados según su legibilidad .................. 45
Tabla 4- Resultados del modelo básico ................................................................. 46
Tabla 5- Resultados del ajuste de los parámetros del AG (10x2000) ................... 48
Tabla 6- Resultados del ajuste de los parámetros del AG (50x400) ..................... 48
Tabla 7- Resultados del caso estudio 2 (20x1000) ................................................ 51
Tabla 8- Resultados del caso estudio 2 (40x1500) ................................................ 51
5/10/2018 PROYECTO - slidepdf.com
http://slidepdf.com/reader/full/proyecto-55a0c0597c30d 15/88
Introducción
- 1 -
UNIVERSIDAD PONTIFICIA COMILLASESCUELA TÉCNICA SUPERIOR DE INGENIERÍA (ICAI)
INGENIERO INDUSTRIAL
Parte I M EMORIA
5/10/2018 PROYECTO - slidepdf.com
http://slidepdf.com/reader/full/proyecto-55a0c0597c30d 16/88
Introducción
- 2 -
UNIVERSIDAD PONTIFICIA COMILLASESCUELA TÉCNICA SUPERIOR DE INGENIERÍA (ICAI)
INGENIERO INDUSTRIAL
Capítulo 1 INTRODUCCIÓN
1.1 I NTRODUCCIÓN
Este proyecto consiste en el estudio y desarrollo de una herramienta capaz de
desencriptar, sin ayuda ninguna, textos que fueron cifrados durante la GuerraCivil Española (en adelante GCE) y que pueden encontrarse hoy en día, muchos
aún sin descifrar, en archivos históricos o bibliotecas particulares.
En este primer capítulo, se introducen conceptos y métodos de criptografía y
cifrado, especialmente aquellos más empleados durante la GCE y que darán paso
a la motivación, objetivos concretos y tareas del trabajo. En el Capítulo 2, se
plantean los modelos teóricos de resolución del problema, en concreto el uso de
los algoritmos genéticos (en adelante AG) y de Branch and Bound (en adelanteBB), para el alcance de soluciones. En el Capítulo 3, se explican los casos estudio
y los resultados obtenidos. Las conclusiones y los desarrollos futuros que se
plantean se pueden encontrar en el Capítulo 4 y el Capítulo 5 respectivamente.
1.2 R ELEVANCIA DEL CIFRADO Y DEL CRIPTOANÁLISIS
Los sistemas de cifrado son esenciales en nuestra vida diaria al proteger toda la
información que consideramos privada, estando presentes, por ejemplo, tanto en
nuestros datos bancarios (páginas web que usan el protocolo https, o HTTP
Secure) como en el propio correo electrónico. Quizás más relevante aún se hace la
transmisión de mensajes secretos en tiempos de guerra. Si bien es cierto que ni la
criptografía ni el criptoanálisis ganan batallas por sí mismos, conocer los mensajes
del enemigo puede resultar en una gran ventaja estratégica. Es por ello que en
cualquier guerra existe siempre un gran interés en tratar de escuchar y traducir
5/10/2018 PROYECTO - slidepdf.com
http://slidepdf.com/reader/full/proyecto-55a0c0597c30d 17/88
Introducción
- 3 -
UNIVERSIDAD PONTIFICIA COMILLASESCUELA TÉCNICA SUPERIOR DE INGENIERÍA (ICAI)
INGENIERO INDUSTRIAL
aquellos mensajes que no van destinados a uno mismo, y tratar de informar sin ser
escuchado. Los servicios de información, espionaje y contraespionaje presentes enla mayoría de los bandos de una guerra, sea ésta del carácter que sea, dan fe de la
importancia que se le ha dado y se le da al secreto de las comunicaciones,
considerado éste un tema de carácter extremadamente clave.
1.3 C RIPTOGRAFÍA EN LA GUERRA C IVIL ESPAÑOLA
Al comienzo de la GCE, ninguno de los dos bandos disponía de un servicio de
información eficaz ni bien organizado [2]. Sin embargo, la criptografía y el
criptoanálisis sí fueron concebidas, desde un comienzo, como cuestiones de
importancia capital en la lucha. Máxime cuando la mayor parte de los mensajes
transmitidos lo fueron a través de radio, lo que hacía que fueran fácilmente
interceptables y, por tanto, que el cifrado y la disponibilidad de un equipo de
personas formadas para el criptoanálisis se consideraran esenciales. El bando
nacional fue el primero de los dos bandos que con mayor premura e interés supo
entender y poner en práctica este aspecto claramente estratégico. Ejemplo de ello
fue la gran ventaja operativa que, con la ayuda de los italianos primeramente y de
los alemanes después, supieron sacar durante el primer periodo de la guerra. Algo
que el bando republicano nunca pudo posteriormente contrarrestar. Así, se puede
destacar la importancia de los mensajes captados y descifrados de las
comunicaciones del Gobierno vasco en el Gabinete Criptográfico de la
Comandancia Militar de Baleares al mando del capitán Baltasar Nicolau Bordoy yque permitieron la captura del buque ―Mar Cantábrico‖ por parte del bando
nacional.
5/10/2018 PROYECTO - slidepdf.com
http://slidepdf.com/reader/full/proyecto-55a0c0597c30d 18/88
Introducción
- 4 -
UNIVERSIDAD PONTIFICIA COMILLASESCUELA TÉCNICA SUPERIOR DE INGENIERÍA (ICAI)
INGENIERO INDUSTRIAL
1.4 M ÉTODOS DE CIFRADO
Los sistemas de cifrado que se utilizaron durante los tres años de duración (de
Feb. 1936 a Abril 1939) de la guerra fueron múltiples y variados. Así, debemos
distinguir entre sistemas que ocultan un mensaje mediante cifras o mediante
códigos.
Ocultar un mensaje mediante cifras, o cifrar un mensaje, consiste en manipular el
mensaje de modo que resulte incomprensible en base a la sustitución de las letras
por otras letras o por diferentes símbolos, o mediante su trasposición. Una mezcla
de ambos enfoques es igualmente válida. En la GCE en concreto, el método más
utilizado dentro de este primer tipo de sistema fue la sustitución, ya fuera de
manera automática (mediante la bien conocida máquina Enigma u otras máquinas
[4]) o de manera manual. El método de cifrado por excelencia durante la GCE fue
un método manual: la sustitución mediante tabla de homófonos, y una variación
de este método que es el cifrado mediante cinta móvil [1]. Ambos serán
explicados con detalle posteriormente ya que son la base sobre la que se ha
desarrollado este trabajo.
Al cifrar un mensaje mediante sustitución, puede utilizarse una clave que permita
sustituir cada elemento del texto original (letras, palabras u otro tipo de elemento,
según el sistema) por más de un símbolo. A esto se le conoce como sustitución
polialfabética en contraposición con la sustitución simple, donde cada elemento
tiene una única correspondencia o cifra.
Los códigos, por su parte, consisten básicamente en un diccionario de términos y
expresiones que se relacionan con grupos de letras o símbolos de modo que para
transmitir el mensaje se utiliza la correspondiente equivalencia. Es decir, el
código de la palabra ‗capitán‘ puede ser ―RFH22‖ o incluso . Los códigos
también fueron muy utilizados durante la GCE y tienen la ventaja de ser menos
criptoanalizables ya que no hay una relación lógica entre el mensaje original y el
mensaje cifrado. Sin embargo, requieren de un diccionario que en la mayoría de
los casos era grande y poco manejable, tenía que ser enviado antes de la
5/10/2018 PROYECTO - slidepdf.com
http://slidepdf.com/reader/full/proyecto-55a0c0597c30d 19/88
Introducción
- 5 -
UNIVERSIDAD PONTIFICIA COMILLASESCUELA TÉCNICA SUPERIOR DE INGENIERÍA (ICAI)
INGENIERO INDUSTRIAL
comunicación, por lo que era fácilmente interceptable y además era difícilmente
sustituible.
1.4.1 CIFRADO CON TABLA DE HOMÓFONOS
Como se ha comentado, el cifrado por tabla de homófonos fue uno de los métodos
de cifrado más comunes durante la guerra por parte de ambos bandos. Una tabla
de homófonos proporciona una manera de sustituir cada letra de un alfabeto
ordenado por un número de dos dígitos pero permitiendo elegir entre varias
opciones cada vez. (Es una sustitución polialfabética) En la Figura 1 se muestra laclave X, que fue utilizada por el anteriormente comentado buque ―Mar
Cantábrico‖ y que fue desencriptada por el Grupo de desencriptado de la
Comandancia de Mallorca.
Este método de sustitución múltiple tiene la ventaja de encubrir el hecho de que
en cualquier idioma se hace más uso de ciertas letras, y por lo tanto es un sistema
algo más robusto que la sustitución simple, la cual es más vulnerable a un ataque
por análisis en frecuencia de las letras del alfabeto español. En cualquier caso, noes invulnerable a este enfoque como se comentará más adelante.
Figura 1- Clave X [2]
5/10/2018 PROYECTO - slidepdf.com
http://slidepdf.com/reader/full/proyecto-55a0c0597c30d 20/88
Introducción
- 6 -
UNIVERSIDAD PONTIFICIA COMILLASESCUELA TÉCNICA SUPERIOR DE INGENIERÍA (ICAI)
INGENIERO INDUSTRIAL
1.4.2 CIFRADO DE CINTA MÓVIL
Como derivación del sistema anterior y con el objeto de complicar algo más el
criptoanálisis, se utilizaba también el criptógrafo de cinta móvil o sistema español
[1]. Este sistema se basa en la tabla de homófonos pero incorpora otra fila
movible en la que se coloca un alfabeto con las letras desordenadas. La
encriptación se produce entonces como en el caso anterior pero usando ahora, en
lugar del alfabeto ordenado, el desordenado de la cinta móvil. La Figura 2 muestra
un ejemplo.
Figura 2- Ejemplo de cifrado por cinta móvil [1]
Para crear el alfabeto desordenado de la fila en gris, se debe elegir una palabra
clave y, posteriormente para la encriptación, dos letras que servirán para fijar el
alfabeto desordenado frente al ordenado. Tanto la palabra como el par de letras
elegido serán finalmente la clave del sistema de cifrado de cinta móvil. A
continuación se explica detalladamente con un ejemplo cómo se genera el alfabeto
desordenado y la encriptación de mensajes.
Supóngase que se desea trabajar con la clave ―VICTORIA – T en K‖. Para formar
el alfabeto desordenado se colocan las letras de la clave sin repetir en una misma
fila y se rellenan las filas necesarias con las letras restantes del alfabeto, de
manera ordenada. En la Figura 3 se muestra cómo quedaría con la clave del
ejemplo:
5/10/2018 PROYECTO - slidepdf.com
http://slidepdf.com/reader/full/proyecto-55a0c0597c30d 21/88
Introducción
- 7 -
UNIVERSIDAD PONTIFICIA COMILLASESCUELA TÉCNICA SUPERIOR DE INGENIERÍA (ICAI)
INGENIERO INDUSTRIAL
V I C T O R A
B D E F G H J
K L M N Ñ P Q
S U W X Y Z
Figura 3- Creación del alfabeto móvil con la clave 'VICTORIA' (I)
Posteriormente, se forma el alfabeto desordenado por columnas, es decir, se
recorre la primera columna y se toman sus letras, a continuación la segunda
columna y así sucesivamente (ver Figura 4).
V I C T O R A
B D E F G H J
K L M N Ñ P Q
S U W X Y Z
Figura 4- Creación del alfabeto móvil con la clave 'VICTORIA' (II)
Consecuentemente, el alfabeto desordenado sería:
V B K S I D L U C E M W T F N X O G Ñ Y R H P Z A J Q
Finalmente, para relacionar este alfabeto con la tabla de homófonos de manera
unívoca, se juntan el par de letras dadas como referencia (en este caso ‗T en K‘),
moviendo adecuadamente la cinta móvil, quedando del siguiente modo:
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 M W T F N X O G Ñ Y R H P Z A J Q V B K S I D L U C
La Figura 5 representa cómo quedaría finalmente la clave acoplada a una tabla de
homófonos. La primera fila es el alfabeto ordenado y la segunda el desordenado,
que forma la clave.
5/10/2018 PROYECTO - slidepdf.com
http://slidepdf.com/reader/full/proyecto-55a0c0597c30d 22/88
Introducción
- 8 -
UNIVERSIDAD PONTIFICIA COMILLASESCUELA TÉCNICA SUPERIOR DE INGENIERÍA (ICAI)
INGENIERO INDUSTRIAL
Figura 5- Clave 'VICTORIA T en K'
La Figura 6 muestra un ejemplo real de una tabla de homófonos con cinta móvil,
usado durante la GCE. En concreto, fue utilizada por el Ministerio de
Gobernación del bando Republicano en sus encriptaciones de Abril de 1939,
siendo la clave de uso extendida en dichas fechas la clave ‗GENERAL‘
Figura 6- Clave ‘GENERAL’ [1] Fundación Francisco Largo Caballero.
Fuente: Fondo de Julián Besteiro y Dolores Cebrián.
Otro ejemplo real obtenido del archivo histórico de Salamanca muestra una
transmisión con clave ‗OVIEDO‘ utilizada por el bando nacional en septiembre
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 M W T F N X O G Ñ Y R H P Z A J Q V B K S I D L U C
10 20 30 32 41 1 92 87 99 45 26 25 76 93
2 62 95 13 27 63 5 14 61 7 22 21 9 12
11 3 15 34 29 35 37 24 36 38 23 39 40 69
4 18 28 49 51 54 19 6 96 8 58 64 71 70
33 31 50 94 16 44 52 55 56 59 60 98 65 72 75
97 47 17 48 42 43 46 53 57 66 68 74 78 80
67 73 81 84 83 85 91 79 90 77 82 88 89 86
5/10/2018 PROYECTO - slidepdf.com
http://slidepdf.com/reader/full/proyecto-55a0c0597c30d 23/88
Introducción
- 9 -
UNIVERSIDAD PONTIFICIA COMILLASESCUELA TÉCNICA SUPERIOR DE INGENIERÍA (ICAI)
INGENIERO INDUSTRIAL
de 1936 (ver Figura 7). Como puede verse en la parte superior del mensaje,
aparece escrito a mano la palabra ―Enemigo‖ por lo que se deduce que el mensajefue interceptado por la República y posteriormente trasladado al departamento de
criptoanálisis.
Figura 7- Mensaje transmitido en la clave 'OVIEDO'
5/10/2018 PROYECTO - slidepdf.com
http://slidepdf.com/reader/full/proyecto-55a0c0597c30d 24/88
Introducción
- 10 -
UNIVERSIDAD PONTIFICIA COMILLASESCUELA TÉCNICA SUPERIOR DE INGENIERÍA (ICAI)
INGENIERO INDUSTRIAL
Nótese que los mensajes se escribían en grupos de cuatro dígitos siendo cada par
de dígitos una letra del texto en plano, además de que no se contemplabanespacios entre las palabras.
1.5 C RIPTOANÁLISIS DEL CIFRADO DE CINTA MÓVIL:
ESTADO DEL ARTE
La mayor aportación posterior a la GCE en el desencriptado de los métodos desustitución con tabla de homófonos y sus variantes se puede encontrar en [5]. En
este texto los autores explican cómo hallar la solución al problema utilizando las
herramientas de las que se disponía en aquella época. El procedimiento se basa en
buscar fragmentos del texto que no hayan sido cifrados para ahorrar tiempo (el
tiempo era un factor clave y por eso en muchas ocasiones sólo se encriptaba parte
del texto en claro) y posteriormente hacer suposiciones basándose en la
imaginación y el sentido común sobre cuáles podrían ser las anteriores o
siguientes letras o palabras.
La Figura 8 muestra un ejemplo de este tipo de mensajes cifrados. El texto puede
encontrarse en [5] y fue facilitado a sus autores por el Excmo. Sr. General de la
Brigada Don Tomás Hurtado, para su estudio.
5/10/2018 PROYECTO - slidepdf.com
http://slidepdf.com/reader/full/proyecto-55a0c0597c30d 25/88
Introducción
- 11 -
UNIVERSIDAD PONTIFICIA COMILLASESCUELA TÉCNICA SUPERIOR DE INGENIERÍA (ICAI)
INGENIERO INDUSTRIAL
Figura 8- Ejemplo de mensaje cifrado con zonas en claro
Una vez encontradas ciertas equivalencias entre letras como la ‗e‘ o la ‗a‘ y los
dígitos que las sustituyen, se pueden atacar otras partes del texto, valiéndose de
reglas generales de sintaxis lingüística como por ejemplo ―cuando una palabra es
plural, antes de la última ‗s‘ siempre hay una vocal‖. A medida que se encuentran
más equivalencias, más obvias resultan las suposiciones que hay que hacer pues
de más información se dispone. Mediante varios ejemplos los autores dejan
demostrado que con un poco de paciencia y práctica el método es siempre
descifrable (claro está, siempre y cuando se tengan textos cifrados lo
5/10/2018 PROYECTO - slidepdf.com
http://slidepdf.com/reader/full/proyecto-55a0c0597c30d 26/88
Introducción
- 12 -
UNIVERSIDAD PONTIFICIA COMILLASESCUELA TÉCNICA SUPERIOR DE INGENIERÍA (ICAI)
INGENIERO INDUSTRIAL
suficientemente largos y elementos que sirvan de ayuda como los fragmentos sin
cifrar).Este procedimiento, sin embargo, presenta ciertos aspectos mejorables que
subyacen ante las siguientes cuestiones: ¿qué ocurre si no hay partes sin cifrar en
el texto?, ¿y cuando las suposiciones no son obvias o son erróneas?, ¿qué ocurre si
el texto es demasiado corto? Además es un procedimiento lento (ya se ha hablado
de la importancia del tiempo) y en donde los resultados dependen fuertemente del
azar y de la habilidad del analista.
En cuanto a las técnicas de optimización modernas, han sido utilizadas encriptoanálisis de sustitución en numerosas ocasiones, [10] muestra un resumen de
las técnicas más importantes y en [6] se resuelve un problema de sustitución
simple mediante algoritmos de relajación. En [7] se puede encontrar un algoritmo
iterativo implementado en Pascal con un enfoque similar al expuesto en este
trabajo y capaz de atacar la sustitución polialfabética, pero con limitaciones que
no podían aceptarse en este proyecto, como conocer las frecuencias exactas de los
bigramas (ver Capítulo 2).Los algoritmos de tipo BB no han sido tan utilizados para abordar este tipo de
problemas (de hecho no se han encontrado trabajos que usen este enfoque), pero
en cuanto a los AGs, [8] y [11] los utilizan para atacar textos con sustitución
polialfabética y sustitución simple. En [8] se aplican los AGs para atacar textos
cifrados con la clave de Vigenere, tanto de longitud conocida como desconocida,
pero el enfoque de este problema no es aplicable a los textos cifrados mediante
tabla de homófonos. En cuanto a [11], se concluye que los AGs son capaces deencontrar la clave en el caso de sustitución simple, pero no se afronta la
sustitución polialfabética. Otras aplicaciones de estos algoritmos en criptoanálisis
se pueden encontrar en [9], donde se utilizan para descifrar las claves de
máquinas de varios rotores y de la máquina Enigma. Como principal
inconveniente, destacar que se requieren textos de al menos 4.000 caracteres.
Finalmente en [12], se estudian algoritmos de recocido simulado, algoritmos
genéticos y de búsqueda por tabú en aplicaciones criptoanalíticas, pero
5/10/2018 PROYECTO - slidepdf.com
http://slidepdf.com/reader/full/proyecto-55a0c0597c30d 27/88
Introducción
- 13 -
UNIVERSIDAD PONTIFICIA COMILLASESCUELA TÉCNICA SUPERIOR DE INGENIERÍA (ICAI)
INGENIERO INDUSTRIAL
fundamentalmente basándose en la sustitución simple y el cifrado por
transposición. En conclusión, se ha advertido la ausencia de análisis de casosestudio reales en general, y sobre todo de textos cifrados mediante el sistema de
cinta móvil o mediante la tabla de homófonos.
1.6 M OTIVACIÓN
A la vista de lo anteriormente expuesto, desde el punto de vista científico resulta
interesante comprobar si las técnicas modernas que nos ofrece la informática, la
matemática y la investigación de operaciones nos ofrecen nuevas ventajas y
mejores soluciones en el problema de criptoanálisis del cifrado de cinta móvil,
como se ha comentado método oficial y de uso común durante la GCE. Factores
como la calidad de la solución y el tiempo invertido en la aplicación de distintos
enfoques modernos de resolución son claves y no se han estudiado
experimentalmente en este problema con anterioridad.
Además, en los estudios de investigación histórica que se han realizado, con
mucha frecuencia se han descartado textos cifrados que sin embargo pueden ser
claves en el esclarecimiento de los sucesos acaecidos durante la batalla. Muchas
veces estos documentos han sido olvidados en legajos de archivos por la sencilla
razón de no ser textos en claro, descartando sin más un análisis más profundo y
minucioso del desciframiento adecuado en cada caso. Desde el punto de vista
histórico, resultaría entonces de gran ayuda el disponer de una herramienta que
permita encontrar textos en claro de manera automática o pseudo-automática a
partir de sus versiones encriptadas por cinta móvil, máxime cuando el hecho de
cifrar un telegrama da fe de la importancia que tenía éste. Se sabe que existen aún
muchos textos por descifrar en el contexto de la GCE (como algunos que obran en
poder del autor procedentes del archivo de Salamanca y que requieren futuros
esfuerzos de desencriptación) u en otros contextos (por ejemplo se dispone
5/10/2018 PROYECTO - slidepdf.com
http://slidepdf.com/reader/full/proyecto-55a0c0597c30d 28/88
Introducción
- 14 -
UNIVERSIDAD PONTIFICIA COMILLASESCUELA TÉCNICA SUPERIOR DE INGENIERÍA (ICAI)
INGENIERO INDUSTRIAL
también de textos cifrados por el científico y marino Jorge Juan y Santacilia1
enviados al marqués de la Ensenada desde Londres en fechas de 1734) muchos deellos pueden ser auténticas joyas a nivel de investigación histórica, que no han
visto la luz por no haber sido desencriptadas.
1.7 O BJETIVO
El objetivo de este proyecto, por lo tanto, es el desarrollo y comparación de la
aplicación de modelos creados en el marco de la computación y la investigación
operativa para el criptoanálisis del método de cinta móvil de la GCE. Se analizará
el uso de los AG y de algoritmos BB para el alcance de soluciones. Sobre todo en
los casos en los que la suposición de letras o palabras contiguas a fragmentos en
claro no fuera factible. Las conclusiones obtenidas en cuanto a velocidad,
fiabilidad y calidad de las soluciones serán los evaluadores de la ventaja real de
utilizar una u otra técnica de investigación operativa.
Por otro lado, otro de los objetivos es el desarrollo de una herramienta novedosa y
fácil de usar que trate de desencriptar textos reales cifrados con el método de cinta
móvil, o métodos adyacentes, para tratar de esclarecer textos históricos aún no
desencriptados.
1.8 M ETODOLOGÍA
Como se ha comentado, para la consecución de los objetivos propuestos se ha
abordado el problema de criptoanálisis mediante dos grandes aproximaciones: la
aproximación heurística con AG y la aproximación por algoritmos de tipo BB.
Dado que ambos métodos tienen por objeto la optimización de funciones objetivo,
1Jorge Juan y Santacilia fue marino ilustre y miembro conspicuo de la expedición que durante el
reinado de Fernando VI midió el grado de meridiano y determinó que la Tierra es un esferoideachatado por lo polos.
5/10/2018 PROYECTO - slidepdf.com
http://slidepdf.com/reader/full/proyecto-55a0c0597c30d 29/88
Introducción
- 15 -
UNIVERSIDAD PONTIFICIA COMILLASESCUELA TÉCNICA SUPERIOR DE INGENIERÍA (ICAI)
INGENIERO INDUSTRIAL
ha sido necesario el planteamiento del problema de desencriptación como un
modelo de optimización que conste además de restricciones de factibilidad.
1.9 R ECURSOS Y HERRAMIENTAS EMPLEADOS
Para el desarrollo del proyecto se han utilizado las siguientes herramientas
informáticas:
Microsoft Visual Studio 2008 para la programación del AG en lenguaje
C++.
Librería GALib V2.47 : Librería informática de libre distribución
desarrollada por Matthew Wall en el Instituto Tecnológico de
Massachusetts ( MIT ) [13] y que ofrece herramientas útiles para el
desarrollo e implantación de AG.
GAMS para la programación del modelo matemático y su resolución
mediante BB.
Visual Basic para aplicaciones bajo Microsoft Excel: Para desarrollar una
interfaz sencilla para la salida de resultados de GAMS.
5/10/2018 PROYECTO - slidepdf.com
http://slidepdf.com/reader/full/proyecto-55a0c0597c30d 30/88
Enfoques de resolución
- 16 -
UNIVERSIDAD PONTIFICIA COMILLASESCUELA TÉCNICA SUPERIOR DE INGENIERÍA (ICAI)
INGENIERO INDUSTRIAL
Capítulo 2 ENFOQUES DE RESOLUCIÓN
2.1 C RIPTOANÁLISIS: HIPÓTESIS Y ENFOQUE GENERAL
CON OPTIMIZACIÓN
2.1.1 INFORMACIÓN DE PARTIDA
Es obvio que cualquier tipo de criptoanálisis así como las técnicas concretas
empleadas en él quedan fuertemente comprometidas por la cantidad, forma y
veracidad de la información que tiene el analista sobre el sistema de cifrado.
Innegablemente, cuanto mayor sea ésta mejores resultados se esperarán obtener.
Este apartado describe la información que se ha supuesto conocida en la tarea de
criptoanálisis de los textos cifrados de la GCE, así como su justificación histórica.
Como se ha dicho, estas hipótesis resultan ser cruciales a la hora de formular los
algoritmos empleados en este trabajo.
En primer lugar, en lo que sigue se asume que el criptoanalista conoce que el
sistema de cifrado es polialfabético y simbólico en dos dígitos numéricos, es
decir, que cada par de números del texto cifrado corresponde con una única letra
del abecedario pero que ésta puede ser sustituida por más de un par de números,
con objeto de complicar el criptoanálisis.
Por tanto, el criptoanalista no tiene porqué conocer el método concreto de cifrado,
si es por máquina o cinta móvil, sino sólo que existe una correspondencia entre
letras y pares de números. Así, lo que se propone en este documento es en
realidad una metodología general para el ataque de este tipo de sistemas
polialfabéticos, sin pretender conseguir la clave concreta de cifrado (si se usase la
cinta móvil). Además, el conocimiento de la clave no aporta nuevo valor al
analista, pues con la correspondencia tendría suficiente para desencriptar mensajes
posteriores. En definitiva, la clave sólo servía para ocultar de una manera
5/10/2018 PROYECTO - slidepdf.com
http://slidepdf.com/reader/full/proyecto-55a0c0597c30d 31/88
Enfoques de resolución
- 17 -
UNIVERSIDAD PONTIFICIA COMILLASESCUELA TÉCNICA SUPERIOR DE INGENIERÍA (ICAI)
INGENIERO INDUSTRIAL
ingeniosa el alfabeto desordenado y de este modo poder enviarla por radio sin
cifrar, esperando que el enemigo no conociese por completo el sistema de cifrado.En cualquier caso, asumir desconocido el método de cifrado concreto amplia
significativamente el abanico de posibles aplicaciones de las técnicas propuestas,
y es más realista y robusto dado que en los inicios de la GCE no se conocía el
sistema de encriptación que se usaría, además de que dicho sistema sufría
constantes modificaciones para su mejora. Por otro lado, a la vista de los textos
cifrados encontrados, la suposición de letras sustitutivas por pares de números
parece sensata dado que un único dígito no permite cifrar todas las letras delabecedario español, y considerar más de dos dígitos conllevaría a textos en claro
demasiado pequeños. La opción de utilizar un mismo número para cifrar letras
distintas ha descartado dado que complicaría excesivamente la tarea de
desencriptación por los destinatarios oficiales del mensaje.
Por otro lado, el apartado 2.1.2.2 introduce una hipótesis adicional y determinante
acerca de la información disponible por el analista, que tiene que ver con el
conocimiento de la tabla de homófonos (obviamente no de la correspondencia,pues es, en definitiva, es lo que pretende encontrar, ver Figura 5). Esta hipótesis,
aunque simplifica enormemente la tarea de criptoanálisis, parece ser realista dado
que es sensato pensar que durante determinadas fases de la batalla, lo que
cambiaba era la clave y no la tabla, es decir, se utilizaban distintas cintas móviles
en la misma tabla de homófonos. Dicha tabla, al ser más voluminosa, se remitiría
posiblemente a los distintos frentes por medios más seguros, como por ejemplo a
través de las reuniones secretas mantenidas en ocasiones por los mandos. Además,
esta última hipótesis ha permitido reducir los tiempos de computación de manera
exponencial con las técnicas empleadas. No obstante, tal y como se describirá,
una de las líneas futuras de investigación es desarrollar técnicas eficaces
alternativas, posiblemente también heurísticas, que permitan abordar el problema
sin esta última suposición.
5/10/2018 PROYECTO - slidepdf.com
http://slidepdf.com/reader/full/proyecto-55a0c0597c30d 32/88
Enfoques de resolución
- 18 -
UNIVERSIDAD PONTIFICIA COMILLASESCUELA TÉCNICA SUPERIOR DE INGENIERÍA (ICAI)
INGENIERO INDUSTRIAL
2.1.2 CRIPTOANÁLISIS Y OPTIMIZACIÓN
Abordar un problema de criptoanálisis mediante algoritmos de tipo BB o AG,
requiere convertir el problema en uno de optimización.
Para ello, el paso más importante consiste en encontrar la variable y la función
objetivo que se desea optimizar, y relacionarlas con el problema de modo que la
maximización o minimización del objetivo conlleve encontrar la solución del
problema, es decir, conlleve desencriptar el texto.
2.1.2.1 Variable de decisión: propuesta inicial
Para definir la variable de decisión a usar en el modelo de optimización, conviene
hacer una pequeña lista de lo que se conoce hasta el momento:
Se va a trabajar sobre un texto que consiste en una serie de números de dos
dígitos que corresponden a letras.
La correspondencia es invariante en el texto, si el número 57 representa la
letra ‗a‘ al principio del texto, la representará en todas las ocasiones. Si bien un número representa una única letra, distintos números pueden
representar esa misma letra (sustitución polialfabética).
Por tanto, encontrar la solución al problema es encontrar la relación unívoca entre
los números del 00 al 99 y la letra correspondiente a cada uno de ellos. No
obstante, con objeto de aumentar la eficiencia computacional, esta
correspondencia entre números y letras debe ser simplificada, en la forma en que
se describe en el siguiente apartado.
2.1.2.2 Región factible: simplificación de la variable de decisión
Ambos algoritmos planteados en este trabajo tratan de encontrar la solución sin
utilizar la fuerza bruta (sin probar una a una todas las combinaciones hasta dar con
la correcta) ya que son algoritmos de búsqueda inteligente, pero no por ello deja
de ser conveniente estudiar con adelanto la región factible sobre la que se trabaja
y especialmente su tamaño.
5/10/2018 PROYECTO - slidepdf.com
http://slidepdf.com/reader/full/proyecto-55a0c0597c30d 33/88
Enfoques de resolución
- 19 -
UNIVERSIDAD PONTIFICIA COMILLASESCUELA TÉCNICA SUPERIOR DE INGENIERÍA (ICAI)
INGENIERO INDUSTRIAL
Cada solución tiene 100 elementos y cada uno de estos elementos puede tomar 27
valores, luego se tienen:
Ecuación 1
A primera vista, el número de soluciones posibles parece inmenso, especialmente
cuando el número de combinaciones por fuerza bruta del DES de 56 bits es de
256=7.2·1016combinaciones y 3.74·1050 si hablamos del Triple-DES, un sistema
que se considera extremadamente seguro hoy en día. No obstante, Existen un par
de factores que disminuyen este número, aunque no de manera relevante para los
objetivos de eficiencia computacional necesarios.
Primeramente, no se busca la única solución perfecta, acertar la mayor parte de las
letras generalmente proporciona información suficiente para entender el texto
(algo que no ocurre con el DES, ya que encontrar una clave que acierte 53 bits
resulta en un texto incomprensible la mayoría de las veces).
En segundo lugar uno de los factores que reduce la región factible radica en
incluir en la región la restricción de que cada columna de homófonos no pueda
tener más de 5 letras ni menos de 3 (ver Figura 6). A continuación se calcula el
número de posibles soluciones en esta nueva situación (y asumiendo que el
objetivo sigue siendo determinar la solución perfecta):
Sean x, y, z el número de letras que tienen en la columna de la tabla de
encriptación 5, 4 y 3 homófonos respectivamente. Supóngase por un momento
que estos números x, y, z son conocidos así como también las letras con 5
homófonos asociados, las de 4, y las que tienen 3. En este caso, en realidad el
problema consiste en contabilizar cuantas asociaciones se pueden hacer al vector
de números del 00 al 99 variando un vector de 100 letras en donde cada letra se
repite tantas veces como homófonos tiene. Así, debe calcularse el número de
permutaciones de 100 letras repetidas tomadas de 5 en 5, x veces, de 4 en 4, y
veces, y de 3 en 3, z veces. A modo de ejemplo aclaratorio, supóngase sólo el caso
de los 4 primeros números (01, 02, 03, 04) y las 3 primeras letras del abecedario
común tal que sólo la letra a se repite 2 veces (por tanto, la letra a se sustituirá por
5/10/2018 PROYECTO - slidepdf.com
http://slidepdf.com/reader/full/proyecto-55a0c0597c30d 34/88
Enfoques de resolución
- 20 -
UNIVERSIDAD PONTIFICIA COMILLASESCUELA TÉCNICA SUPERIOR DE INGENIERÍA (ICAI)
INGENIERO INDUSTRIAL
2 posibles números en el texto cifrado, es decir, su columna tendrá 2 homófonos),
entonces cada solución consiste en asociar al vector de 4 números alguno de lossiguientes vectores de 4 letras repetidas:
aabc, aacb, abac, abca, acab, acba, baac, baca, bcaa, caab, caba, cbaa
Así, la segunda solución consiste en sustituir la letra a por el número 01 o el 02,
mientras que las letras b y c se sustituirían directamente por 04 y 03
respectivamente.
En general, las permutaciones con repetición de n elementos tomados de s1 en s1,
de s2 en s2, etc., cuando en los n elementos existen elementos repetidos (unelemento aparece s1 veces, otro s2 veces, etc) verificándose que s1+s2+..+sk =n,
resultan ser:
1 ,..,
1
!
!... !
k s s
n
k
nPR
s s
Esta expresión [14], bajo las suposiciones asumidas se traduce en el análisis
criptográfico en:
5,..,5,4,..,4,3,..,3
100
100! 100!
5! 4! 3!5! 5!4! 4!3! 3!
y x z
y x y z x zPR
posibles soluciones (nótese que en el vector de letras existirán 5 letras por cada
letra que tiene 5 números homófonos en su columna, y así sucesivamente con 4 y
3).
Sin embargo, el número de posibles soluciones se ve incrementado dado que la
cantidad de homófonos asociados a una letra en la tabla a priori no se conoce. Esdecir, en principio cualquier letra puede ser sustituida por 3, 4 o 5 números
indistintamente. Para contemplar esta opción se procede con un razonamiento
similar al seguido en los párrafos anteriores. En este caso el problema consiste en
contabilizar cuantas asociaciones se pueden hacer al vector de letras del
abecedario (a,b,…, z) con un vector de 27 números con valores 3, 4 ó 5 repetidos
x, y y z veces respectivamente, y que indica la cantidad de números en la columna
de cada letra de la tabla de homófonos. Para el ejemplo sencillo descrito antes,
5/10/2018 PROYECTO - slidepdf.com
http://slidepdf.com/reader/full/proyecto-55a0c0597c30d 35/88
Enfoques de resolución
- 21 -
UNIVERSIDAD PONTIFICIA COMILLASESCUELA TÉCNICA SUPERIOR DE INGENIERÍA (ICAI)
INGENIERO INDUSTRIAL
consistiría en contabilizar cuantas opciones se tiene de asignar al vector (a,b,c) un
vector de 3 números que contiene los valores 1 y 2, y en donde el 1 se repite dosveces, y el 2 aparece una sola vez (ya que en este ejemplo se sabe que 2 letras se
sustituyen por un único número y sólo una por dos). Es claro que el número de
asociaciones para este caso es PR32,1=3 lo cual es correcto dado que los vectores
de números que se pueden formar son (2,1,1), (1,2,1) y (1,1,2). En el caso
criptográfico resulta ser PR27 x,y,z. Por tanto el número de combinaciones totales
resulta de multiplicar las dos permutaciones con repetición anteriores, esto es:
5 ,..,5 ,4 ,.. ,4 ,3,..,3 , ,100 27
y x z
x y zPR PR
Finalmente, en general tampoco se conoce el valor de las variables x, y, z, aunque
se sabe que deben satisfacer las siguientes condiciones lógicas:
Evidentemente este sistema de 2 ecuaciones con 3 incógnitas tiene más de una
solución porque hay más de una posible forma de meter 100 números en una tablade 27 columnas con la condición de que haya x, y y z columnas con 5, 4 y 3
números por letra, respectivamente. Por lo tanto, como existen múltiples
alternativas, habría que tenerlas en cuenta en el conteo final de soluciones del
problema de criptoanálisis. El número de combinaciones totales resulta ser en este
caso:
Nótese que este número aunque menor que el mostrado en Ecuación 1, sigue
siendo desorbitado ( en el caso de la clave de la Figura 5), lo cual se
vio confirmado con los resultados preliminares, que indicaron que se trabajaba
sobre una región factible demasiado grande (para más detalle ver Capítulo 3).
5/10/2018 PROYECTO - slidepdf.com
http://slidepdf.com/reader/full/proyecto-55a0c0597c30d 36/88
Enfoques de resolución
- 22 -
UNIVERSIDAD PONTIFICIA COMILLASESCUELA TÉCNICA SUPERIOR DE INGENIERÍA (ICAI)
INGENIERO INDUSTRIAL
Esto llevó a tomar una suposición razonable acorde con la investigación histórica
realizada y que simplificaba considerablemente el problema.Dicha simplificación, tal y como se introdujo en el apartado 2.1.1, consiste en
suponer conocidas las columnas de la tabla de homófonos, es decir, que se conoce
qué números van juntos pero no se sabe a qué letra corresponden. Esta
simplificación resulta razonable desde el punto de vista histórico ya que es de
suponer que por comodidad la tabla no se alteraba por un tiempo (así se atestigua
en [1]), siendo la clave lo único que variaba (es decir, el alfabeto no ordenado y la
ligadura con el ordenado a través de las dos letras, ver, para más detalle, elapartado 1.4.2).
Bajo esta hipótesis, encontrar la solución consiste en realidad en encontrar la
asociación más adecuada entre cada letra del abecedario y cada columna de la
tabla de homófonos (que se considera conocida), de manera biunívoca. En este
caso, la nueva región factible consta de:
Si bien adoptar esta simplificación está justificado desde un punto de vistahistórico, hacerlo conlleva unas consecuencias que se deben tener en cuenta, sobre
todo con respecto a futuros desarrollos.
Tal y como se ha comentado, en tiempos de la GCE era habitual conocer
esta tabla por haberse utilizado algunos días antes, sin embargo hoy en día,
al encontrar un texto cifrado mediante el sistema de cinta móvil, el
investigador no suele conocer la tabla de homófonos correspondiente. Por
lo tanto, el trabajo adopta un papel más de base para futuros desarrollosque como herramienta utilizable en sí misma hoy por hoy. Sin embargo, el
avance es considerable y los resultados alentadores, tal y como se verá
más adelante.
Se ha comentado que el sistema de cifrado por tabla de homófonos tiene la
ventaja de ser robusto frente a un ataque por estudio de las frecuencias.
Esta robustez desaparece al conocer dicha tabla, ya que en realidad cada
columna de la tabla se asimila como un único número (por ejemplo el
5/10/2018 PROYECTO - slidepdf.com
http://slidepdf.com/reader/full/proyecto-55a0c0597c30d 37/88
Enfoques de resolución
- 23 -
UNIVERSIDAD PONTIFICIA COMILLASESCUELA TÉCNICA SUPERIOR DE INGENIERÍA (ICAI)
INGENIERO INDUSTRIAL
número de columna) repetido con mayor o menor frecuencia, lo que por
tanto permite deducir más fácilmente a qué letra puede corresponder.
2.1.2.3 Función objetivo
De lo expuesto en el apartado anterior, se debe destacar que la última conclusión
comentada no implica en absoluto que el sistema de cifrado cuando se desconoce
la tabla de homófonos sea indescifrable mediante un análisis en frecuencia. De
hecho, ya fue planteado en [5] y para futuros desarrollos de este trabajo se
recomienda que se siga esta línea de investigación. Es por ello que el problema de
optimización que se trata de resolver en este caso se base precisamente en un
estudio de las frecuencias de las letras y bigramas (grupos de dos letras) del
castellano y que la función objetivo a minimizar sea la diferencia entre las
frecuencias obtenidas con cada alfabeto solución y las frecuencias esperadas del
castellano. En concreto, en este trabajo las frecuencias esperadas son del
castellano utilizado en algunos textos bélicos de la época, y que fueron
encontrados en Archivo Histórico de Madrid, tal y como se explicará en el
Capítulo 3.
Este enfoque basado en frecuencias que se ha seguido en el caso de conocer la
tabla de homófonos, y su formulación concreta, sirven como punto de partida para
resolver el caso general con tabla de homófonos desconocida (en el Anexo A se
puede encontrar la formulación del AG propuesto para este caso). La expresión
matemática de la función objetivo del caso con tabla conocida se detalla en los
siguientes apartados.
2.2 E NFOQUE CLÁSICO MEDIANTE MODELOS DE
PROGRAMACIÓN MATEMÁTICA
Se ha planteado un modelo de programación entera mixta con función objetivo
cuadrática (MIQCP) para abordar el problema. La formulación matemática puede
encontrarse en los siguientes apartados y su aplicación práctica en el Capítulo 3.
5/10/2018 PROYECTO - slidepdf.com
http://slidepdf.com/reader/full/proyecto-55a0c0597c30d 38/88
Enfoques de resolución
- 24 -
UNIVERSIDAD PONTIFICIA COMILLASESCUELA TÉCNICA SUPERIOR DE INGENIERÍA (ICAI)
INGENIERO INDUSTRIAL
Primeramente, se ha realizado un modelo para optimizar exclusivamente la
frecuencia de las letras y posteriormente se ha ampliado el estudio para considerarlos bigramas más comunes. Esta ampliación persigue obtener un texto más legible
y una aproximación al óptimo más rápida, aunque incrementa fuertemente la
complejidad del problema, tal y como se explicará.
2.2.1 MODELO BÁSICO: FRECUENCIA DE LOS MONOGRAMAS
2.2.1.1 Datos de entrada
Para realizar el criptoanálisis se conoce lo siguiente:
Tabla de homófonos. (Se conocen las columnas de la tabla).
Frecuencias esperadas de las letras.
Texto cifrado.
2.2.1.2 Variables de decisión
Se definen primeramente los índices utilizados:
l: cada una de las letras del alfabeto.
k : cada columna de la tabla de homófonos.
num: los homófonos de la tabla de homófonos.
char : los caracteres del texto encriptado.
La solución al problema queda modelada mediante la variable binaria :
Encontrar la solución supone entonces encontrar las 27 variables que
asignan cada letra a cada columna.
Para contabilizar el número de veces que una letra aparece en el texto
desencriptado, se define la frecuencia absoluta
5/10/2018 PROYECTO - slidepdf.com
http://slidepdf.com/reader/full/proyecto-55a0c0597c30d 39/88
Enfoques de resolución
- 25 -
UNIVERSIDAD PONTIFICIA COMILLASESCUELA TÉCNICA SUPERIOR DE INGENIERÍA (ICAI)
INGENIERO INDUSTRIAL
Donde son aquellos homófonos que se encuentran en la columna k
según la tabla de homófonos y son aquellos elementos del textocifrado que pertenecen a alguno de estos homófonos. Se recuerda que el texto
cifrado se compone de números de dos dígitos que corresponden a letras, y que
hay que evitar confundir con caracteres del alfabeto, pues no lo son.
En la Figura 9 se muestra un ejemplo:
son los números ‗11‘ seleccionados en el texto de la
izquierda.
son {11, 42, 67}, los homófonos incluidos en la columna.
Finalmente es la columna seleccionada (columna Q, que en este caso
encriptaría la letra n)
Figura 9- Índices del modelo
Nótese además, que una vez fijada la variable , es sólo una transformación queimplementa la realidad del texto cifrado y la tabla de homófonos. Es decir, una
vez fijada , es sólo el recuento de cada letra, pero no es una variable
independiente en sí misma.
2.2.1.3 Función objetivo
El objetivo del modelo es minimizar la diferencia entre las frecuencias obtenidas y
las esperadas en el castellano, así pues, el coste a minimizar resulta ser:
5/10/2018 PROYECTO - slidepdf.com
http://slidepdf.com/reader/full/proyecto-55a0c0597c30d 40/88
Enfoques de resolución
- 26 -
UNIVERSIDAD PONTIFICIA COMILLASESCUELA TÉCNICA SUPERIOR DE INGENIERÍA (ICAI)
INGENIERO INDUSTRIAL
Según la definición, es el número de veces que aparece cada letra en el texto,
por lo que al dividirla por la longitud del mismo se obtiene la frecuencia de cada
letra expresada en tanto por uno (o frecuencia relativa).
Sobre el papel, no parece necesario elevar al cuadrado la diferencia entre las
frecuencias y puede parecer más lógico hacer el valor absoluto. Sin embargo en la
práctica, hacer la potencia de la diferencia es de gran ayuda, ya que penaliza de
manera más fuerte las mayores diferencias. Esto es importante dado que paracrear un texto legible, es considerablemente más relevante encontrar las letras más
comunes que aquellas con menor frecuencia de aparición. De este modo, al partir
desde una solución aleatoria, las sucesivas soluciones tienden más rápidamente
hacia aquellas en las que las letras más importantes son correctas.
2.2.1.4 Restricciones
Finalmente, falta imponer al modelo que cada columna debe tener asignada unasola letra:
y que cada letra debe estar asignada a una sola columna:
Tal y como puede verse, estas restricciones son idénticas a las que aparecen en unproblema de programación matemática de asignación general [15].
2.2.2 AMPLIACIÓN DEL MODELO: BIGRAMAS
El estudio de los bigramas se basa en el modelo básico de estudio de los
monogramas, por lo que tanto las variables de decisión como las restricciones
siguen siendo vigentes en esta ampliación.
5/10/2018 PROYECTO - slidepdf.com
http://slidepdf.com/reader/full/proyecto-55a0c0597c30d 41/88
Enfoques de resolución
- 27 -
UNIVERSIDAD PONTIFICIA COMILLASESCUELA TÉCNICA SUPERIOR DE INGENIERÍA (ICAI)
INGENIERO INDUSTRIAL
2.2.2.1 Datos de entrada
Además de los datos conocidos en 2.2.1.1, se conocen:
Las frecuencias esperadas de los bigramas.
Además, antes de pasar a explicar con detalle este modelo, y con objeto de
simplificar la notación, conviene definir el siguiente parámetro binario que es dato
implícito del problema:
Recuérdese una vez más que el texto cifrado se compone de números de dos
dígitos que corresponden a letras, y que hay que evitar confundir con
caracteres del alfabeto (ver Figura 9).
2.2.2.2 Variables de decisión
Equivalente a la variable pero con bigramas, se define la variable:
Consecuentemente, el número de veces que un bigrama aparece en el texto
desencriptado resulta ser:
2.2.2.3 Función objetivo
La función objetivo queda ampliada como:
Nótese que el número de bigramas existente en un texto de longitud n es de n-1,
por lo que la frecuencia
del último término de la función objetivo, que
5/10/2018 PROYECTO - slidepdf.com
http://slidepdf.com/reader/full/proyecto-55a0c0597c30d 42/88
Enfoques de resolución
- 28 -
UNIVERSIDAD PONTIFICIA COMILLASESCUELA TÉCNICA SUPERIOR DE INGENIERÍA (ICAI)
INGENIERO INDUSTRIAL
contabiliza el error debido a bigramas, queda dividida por la longitud del texto
menos 1
2.2.2.4 Restricciones
En cuanto a las restricciones, además de las comentadas en el apartado 2.2.1.4, se
deben añadir las que implementan la lógica entre la variable µ y la
Que una vez modeladas resultan:
Lógicamente, estas restricciones sólo se incluyen en el modelo tales que .
2.2.3 TAMAÑO DE LOS MODELOS
Ya se ha comentado que la ampliación del modelo por el uso de bigramas implica
aumentar la complejidad del problema, especialmente el número de variables y
restricciones. Aunque las consecuencias prácticas serán explicadas en el Capítulo
3, ya se puede vislumbrar el aumento de tamaño del modelo a priori.
En el modelo básico:
Las variables a cuantificar son
Las restricciones a considerar son las que dan la lógica a las anterioresvariables;
En cuanto al modelo ampliado, a primera vista se puede ver que el hecho de
incluir los bigramas obliga a tener en cuenta el lugar que ocupa cada bigrama en
el texto cifrado, es decir, el número de variables aumenta según aumenta
la longitud del texto a desencriptar. De cualquier modo, incluso con un texto
extremadamente corto, el número de variables y restricciones es
considerablemente mayor. A continuación se estudia el tamaño del problema con
5/10/2018 PROYECTO - slidepdf.com
http://slidepdf.com/reader/full/proyecto-55a0c0597c30d 43/88
Enfoques de resolución
- 29 -
UNIVERSIDAD PONTIFICIA COMILLASESCUELA TÉCNICA SUPERIOR DE INGENIERÍA (ICAI)
INGENIERO INDUSTRIAL
un texto hipotético de sólo 2 letras y con otro de un tamaño más realista (500
letras).Con sólo 2 letras:
Las variables son las del modelo básico junto con y ;
Las restricciones son las del modelo básico junto con las que dan lógica a
la variable y junto con las que dan lógica a , que al ser un
texto de un sólo bigrama, estarán activas una sola vez;
Con 500 letras, siguiendo el mismo razonamiento:
Variables:
Restricciones:
La Tabla 1 resume los datos aportados y en la Tabla 2 se muestra cuántas veces
son los modelos ampliados mayores que el básico. En la Figura 10, además, se da
una idea intuitiva de dicha ampliación (sólo se ha comparado con 2 letras ya que
con 500 el modelo básico pasa a tener un tamaño despreciable
comparativamente).
Se puede intuir desde este momento que muy difícilmente se podrá hacer correr el
modelo ampliado bajo un programa como GAMS con tantas variables y
restricciones, pero se deja este estudio para el Capítulo 3.
Básico Ampliado 2 letras Ampliado 500 letras
Variables 757 2944 365986
Restricciones 82 2269 728353
Tabla 1- Complejidad de los modelos
5/10/2018 PROYECTO - slidepdf.com
http://slidepdf.com/reader/full/proyecto-55a0c0597c30d 44/88
Enfoques de resolución
- 30 -
UNIVERSIDAD PONTIFICIA COMILLASESCUELA TÉCNICA SUPERIOR DE INGENIERÍA (ICAI)
INGENIERO INDUSTRIAL
Ampliado 2 letras Ampliado 500 letras
Variables 3,89 483,47
Restricciones 27,67 8882,35
Tabla 2- Relación de tamaño con el modelo básico (ampliado/básico)
Figura 10- Aumento de las variables y restricciones (2 letras)
2.3 E NFOQUE HEURÍSTICO BASADO EN ALGORITMOS
GENÉTICOS
Tal y como se ha comentado, un algoritmo genético es una aproximaciónheurística a cualquier problema de optimización. No busca encontrar la o las
soluciones óptimas sino una solución ―suficientemente buena‖.
Los algoritmos genéticos se basan en una población de individuos candidatos a ser
solución (pertenecen a la región factible) que evolucionan a través de los
operadores darwinianos de selección, reproducción y mutación, entre otros. El
algoritmo debe ser capaz de penalizar aquellos individuos que proporcionan una
solución peor y promover a los mejores individuos. El esquema del AG utilizado
0%
10%
20%
30%
40%
50%
60%
70%
80%
90%
100%
Variables Restricciones
Ampliado (2 letras)
Básico
5/10/2018 PROYECTO - slidepdf.com
http://slidepdf.com/reader/full/proyecto-55a0c0597c30d 45/88
Enfoques de resolución
- 31 -
UNIVERSIDAD PONTIFICIA COMILLASESCUELA TÉCNICA SUPERIOR DE INGENIERÍA (ICAI)
INGENIERO INDUSTRIAL
en este trabajo se muestra en la Figura 11. Se basa en el Algoritmo Genético
Simple que describe Goldberg en [3]. Sus poblaciones no se solapan y cadageneración supone una población completamente nueva. Sin embargo, algunas
modificaciones han sido realizadas para implementar la búsqueda por diccionario,
explicada en el apartado 2.3.7.
A continuación se explica con detalle el AG, así como los pasos de la Figura 11.
Figura 11- Diagrama de flujo del AG utilizado
5/10/2018 PROYECTO - slidepdf.com
http://slidepdf.com/reader/full/proyecto-55a0c0597c30d 46/88
Enfoques de resolución
- 32 -
UNIVERSIDAD PONTIFICIA COMILLASESCUELA TÉCNICA SUPERIOR DE INGENIERÍA (ICAI)
INGENIERO INDUSTRIAL
2.3.1 CODIFICACIÓN DEL GENOMA
Antes de comenzar la programación de los distintos operadores, se debe dar
respuesta a la siguiente pregunta: ¿cómo codificar un individuo perteneciente a la
región factible?
Tal y como se explicó en el apartado 2.1, encontrar la solución es encontrar la
relación entre los números del 00 al 99 y las letras del abecedario. Parece lógico,
por lo tanto, que un individuo deba componerse de un vector de letras de tamaño
100. De este modo cada número (elemento del vector) tiene asignada una sola
letra, pero la misma letra puede aparecer en varios elementos. La Figura 12
muestra un ejemplo.
Figura 12- Genoma de la solución como vector de 100 elementos
Se ha comentado también que una vez supuesta conocida la tabla de homófonos,
encontrar la solución consiste en encontrar la relación entre cada grupo dehomófonos de cada columna de la tabla y la letra a la que corresponden, o lo que
es lo mismo, encontrar cuál es el alfabeto desordenado y qué posición se ha fijado.
Como consecuencia, el genoma de los individuos puede verse también como un
alfabeto desordenado de 27 elementos en el que un orden u otro de sus letras
proporcionan textos solución. La Figura 13 muestra este enfoque. En este caso los
números representan las columnas y las letras están asociadas a ellas. Hay que
recordar que bajo esta situación las letras no pueden repetirse, y que debenaparecer todas en el individuo.
Figura 13- Genoma de la solución como alfabeto de 27 elementos
La codificación del genoma es por tanto, doble. En los operadores darwinianos se
utilizará el alfabeto desordenado (genoma de 27 elementos) de cada individuo por
ser más cómodo de manejar y de evitar infactibilidades, pero cada modificación
5/10/2018 PROYECTO - slidepdf.com
http://slidepdf.com/reader/full/proyecto-55a0c0597c30d 47/88
Enfoques de resolución
- 33 -
UNIVERSIDAD PONTIFICIA COMILLASESCUELA TÉCNICA SUPERIOR DE INGENIERÍA (ICAI)
INGENIERO INDUSTRIAL
del mismo implica inmediatamente una modificación del genoma de 100
elementos. Además este vector resultará útil a la hora de evaluar la calidad deltexto. En lo sucesivo, para evitar dobles interpretaciones, se referirá a los
elementos del vector de 100 elementos como los ―genes‖ del individuo, y al
alfabeto como ―el alfabeto del individuo‖ aunque no se debe olvidar que ambos
contienen la misma información y que modificar uno implica modificar el otro.
Conviene por otro lado comentar que previamente a aceptar la simplificación de la
tabla de homófonos conocida por el AG (ver 2.1.2.2), se programó un algoritmo
completo que funciona sin esa suposición. Tras certificar experimentalmente lacomplejidad del problema, se decidió aceptar la suposición y proponer la
generalización como futuro desarrollo de este proyecto. Los detalles de los
operadores del AG para el caso general se pueden encontrar en el Anexo A.
Por último, cabe destacar que conocer la tabla fija significa aplicar restricciones
adicionales al problema inicial y reducir la región factible, por tanto, los
operadores darwinianos del algoritmo deberán crearse de modo que no produzcan
individuos que no cumplan las restricciones.
2.3.2 INICIALIZACIÓN DE LA POBLACIÓN
Un individuo factible cualquiera de este problema es aquel en el que los genes
asociados a la misma columna comparten letra y todas las columnas tienen una
letra distinta. Para conseguir esto, lo que se ha hecho es crear un alfabeto
desordenado distinto para cada individuo y posteriormente asignarle esas letras a
los genes correspondientes.
Para crear el alfabeto desordenado, se crea primeramente un alfabeto ordenado
(un vector de 27 elementos) y se recorre cada elemento del vector intercambiando
la letra correspondiente por otra letra elegida aleatoriamente. La Figura 14 ilustra
este proceso.
5/10/2018 PROYECTO - slidepdf.com
http://slidepdf.com/reader/full/proyecto-55a0c0597c30d 48/88
Enfoques de resolución
- 34 -
UNIVERSIDAD PONTIFICIA COMILLASESCUELA TÉCNICA SUPERIOR DE INGENIERÍA (ICAI)
INGENIERO INDUSTRIAL
Figura 14- Generación de un alfabeto aleatorio
Una vez hecho esto, ya sólo hay que asignar a los 100 genes del individuo la letra
correspondiente a su columna.
2.3.3 SELECCIÓN DE INDIVIDUOS PARA LA REPRODUCCIÓN
La selección se realiza mediante selección por ruleta como se describe en [3]. Se
escrutan los individuos mediante una ruleta ponderada y la probabilidad de
selección de cada individuo es inversamente proporcional al valor de su función
objetivo (ya que se trata de un problema de minimización).
2.3.4 REPRODUCCIÓN
La reproducción permite generar nuevos individuos a partir de individuos ya
existentes y que han sido seleccionados en función de lo cerca que se encuentren
del individuo óptimo.
En este caso las restricciones limitan mucho la capacidad de elegir el operador. El
proceso de cruce que se eligió finalmente se puede ilustrar fácilmente con un
5/10/2018 PROYECTO - slidepdf.com
http://slidepdf.com/reader/full/proyecto-55a0c0597c30d 49/88
Enfoques de resolución
- 35 -
UNIVERSIDAD PONTIFICIA COMILLASESCUELA TÉCNICA SUPERIOR DE INGENIERÍA (ICAI)
INGENIERO INDUSTRIAL
ejemplo. Supongamos que tenemos dos individuos ―padres‖ de la forma de la
Figura 15:
Figura 15- Individuos origen de la reproducción
El primer paso consiste en asignarle al hijo y a la hija el primer gen de los padres,
que con un 50% de probabilidad será el del padre al hijo y el de la madre a la hija
o viceversa. En la Figura 16 se ha elegido la primera opción.
Figura 16- Proceso de reproducción (I)
Ahora, el hijo tiene la letra ‗m‘ en su primera columna y la hija la letra ‗y‘ en su
primera columna, esto significa que no podrán tener esas letras en ninguna otra
columna y que por tanto la letra ‗M‘ de la hija debe coincidir en posición con la
de la madre y la letra ‗Y‘ del hijo en la posición de la del padre. Primeramente se busca la letra ‗M‘ de la madre y en esa columna se asignan las letras tal y como
muestra la Figura 17. Es lógico que el hijo deba tener la letra ‗D‘ por las mismas
razones explicadas.
Figura 17- Proceso de reproducción (II)
Mientras la columna de los hijos esté vacía este proceso es iterativo. Por lo tanto a
continuación se busca la letra ‗D‘ en la madre y se asignan esas letras, luego se
busca la letra ‗B‘, etc.
La Figura 18 muestra cómo quedaría justo antes de acabar este paso. Las últimas
columnas que se habían colocado eran la ‗J‘ y la ‗K‘ que aparecen en negrita en la
tercera columna y por lo tanto luego se debían colocar la ‗Y‘ y la ‗J‘, que
aparecen en rojo. Si ahora se busca la letra ‗Y‘ en la madre, se observa que está en
Padre: M R J A Ñ N F Y B Z S O H P L C E K T G V X I W U Q D
Madre: Y S K C A T H J D W X Z I P F O Q R Ñ B E N G U L V M
Padre: M R J A Ñ N F Y B Z S O H P L C E K T G V X I W U Q DMadre: Y S K C A T H J D W X Z I P F O Q R Ñ B E N G U L V M
Hijo: M
Hija: Y
Padre: M R J A Ñ N F Y B Z S O H P L C E K T G V X I W U Q D
Madre: Y S K C A T H J D W X Z I P F O Q R Ñ B E N G U L V M
Hijo: M D
Hija: Y M
5/10/2018 PROYECTO - slidepdf.com
http://slidepdf.com/reader/full/proyecto-55a0c0597c30d 50/88
Enfoques de resolución
- 36 -
UNIVERSIDAD PONTIFICIA COMILLASESCUELA TÉCNICA SUPERIOR DE INGENIERÍA (ICAI)
INGENIERO INDUSTRIAL
la primera columna, que ya ha sido formada en los hijos, por lo que el proceso
termina. Además, ya se ha dicho que la letra ‗Y‘ del hijo debía corresponder conla posición de la del padre y como es lógico esto ha sido así.
Figura 18- Proceso de reproducción (III)
La siguiente columna sin formar es en la que hay una ‗P‘ en los dos progenitores
por lo que los hijos tendrán sin duda una ‗P‘ en esa columna. Por último quedan
tres columnas con las letras ‗V‘, ‗U‘ y ‗Q‘. Si en el caso anterior se decidió que el
hijo tomaría los genes del padre, supongamos que ahora es la hija quien lo hace.
La descendencia quedaría entonces como muestra la Figura 19.
Figura 19- Proceso de reproducción (IV)
En este ejemplo ilustrativo, sólo había tres grupos de letras no ligados entre ellos
y en uno de ellos la letra estaba en la misma columna, por lo que en un 50% de los
casos los hijos serían copias exactas de los padres. Es de esperar que haya en
general más grupos de letras no ligadas entre sí, y en cualquier caso este problema
podría compensarse aumentando la probabilidad de reproducción.
2.3.5 MUTACIÓN
La mutación es un operador que aporta diversidad a la población y permite
explorar otras zonas de la región factible evitando los mínimos (o máximos)
locales. Tal y como ocurre en la vida real, la mutación debe darse, en general, con
una baja probabilidad.
El método de mutación que se ha considerado más efectivo consiste en
intercambiar un elemento del alfabeto del individuo por otro elemento, de modo
Padre: M R J A Ñ N F Y B Z S O H P L C E K T G V X I W U Q D
Madre: Y S K C A T H J D W X Z I P F O Q R Ñ B E N G U L V M
Hijo: M R J A Ñ N F Y B Z S O H L C K T G X I W U D
Hija: Y S K C A T H J D W X Z I F O R Ñ B N G U L M
Padre: M R J A Ñ N F Y B Z S O H P L C E K T G V X I W U Q D
Madre: Y S K C A T H J D W X Z I P F O Q R Ñ B E N G U L V M
Hijo: M R J A Ñ N F Y B Z S O H P L C Q K T G E X I W U V D
Hija: Y S K C A T H J D W X Z I P F O E R Ñ B V N G U L Q M
5/10/2018 PROYECTO - slidepdf.com
http://slidepdf.com/reader/full/proyecto-55a0c0597c30d 51/88
Enfoques de resolución
- 37 -
UNIVERSIDAD PONTIFICIA COMILLASESCUELA TÉCNICA SUPERIOR DE INGENIERÍA (ICAI)
INGENIERO INDUSTRIAL
que el individuo resultante sigua perteneciendo a la región factible. La Figura 20
ilustra el proceso.
Figura 20- Mutación de un individuo
Como se ha comentado, luego se debe cambiar la letra ligada a cada uno de los
genes que pertenecen a las columnas modificadas.
2.3.6 FUNCIÓN OBJETIVO
El proceso para evaluar cómo de ―bueno‖ es un individuo consiste en escribir el
texto resultante ―en claro‖ que proporciona dicho individuo. Posteriormente se
evalúa la diferencia que existe entre las frecuencias de las letras y bigramas
resultantes y las esperadas. La suma de ambas diferencias es lo que llamaremos
error y es la variable que se minimiza en el problema.
El denominador de las diferencias no es estrictamente necesario, pero sirve para
penalizar de mayor manera aquellos errores asociados a letras más comunes. Esto
permite, como se comentará en el Capítulo 3, que las letras como la ‗a‘ y la ‗e‘casi siempre queden bien fijadas y que por lo tanto la lectura de un texto que no
esté perfectamente desencriptado resulte más sencilla.
2.3.7 BÚSQUEDA POR DICCIONARIO
La búsqueda por diccionario nace de la observación de que en la práctica
resultaba muy complicado descifrar el texto exclusivamente mediante la función
objetivo. Esto se debe primeramente a que la región factible sigue siendo
5/10/2018 PROYECTO - slidepdf.com
http://slidepdf.com/reader/full/proyecto-55a0c0597c30d 52/88
Enfoques de resolución
- 38 -
UNIVERSIDAD PONTIFICIA COMILLASESCUELA TÉCNICA SUPERIOR DE INGENIERÍA (ICAI)
INGENIERO INDUSTRIAL
considerablemente grande, pero sobre todo a que en muchos casos el individuo
con la mínima función objetivo no era el que desencriptaba el texto, es más, nisiquiera se obtenía de él un texto suficientemente legible. Cambiar la función
objetivo tampoco resultó sensato porque se había observado efectiva a la hora de
guiar las sucesivas poblaciones hacia una mayor legibilidad (la función objetivo
decrecía siempre), aunque ésta no fuera suficiente.
Para lograr un nivel aceptable de legibilidad se implementó en el programa una
función de búsqueda de palabras legibles, en el texto en claro propuesto por cada
solución de la población. Esta función es la que se conoce como función debúsqueda por diccionario. En concreto, el proceso consta de dos partes: la
búsqueda de palabras en el texto en claro y análisis de su legibilidad al
compararlas con un diccionario y, posteriormente, en el caso de encontrar una
palabra legible, la modificación de las poblaciones sucesivas al fijar las letras de
cada palabra encontrada.
2.3.7.1 Búsqueda de palabras conocidas
En el momento de evaluar cada individuo, se estudia el texto ―en claro‖ que
proporciona y se compara con una base de datos (diccionario) que contiene
palabras de uso típico en textos como los estudiados en este trabajo. En caso de
encontrar alguna coincidencia, se activa un flag por cada letra de la palabra,
considerada de ahora en adelante correcta, que indica su posición dentro del
alfabeto desordenado.
Las palabras incluidas en el diccionario deben ser suficientemente largas y
características como para dar por descartada una coincidencia fortuita con una
palabra que realmente no esté allí, ya que esas letras estarán fijas de ahí en
adelante en el algoritmo. Una palabra típica sería por ejemplo ―bombardear‖.
Al no existir espacios en blanco entre palabras, la búsqueda por diccionario
desconoce dónde puede comenzar o acabar una palabra, y debe está preparada
para encontrar fragmentos más cortos de palabras existentes. Para ello, recorre el
texto en claro comparándolo letra a letra con su base de datos, como se explica a
continuación.
5/10/2018 PROYECTO - slidepdf.com
http://slidepdf.com/reader/full/proyecto-55a0c0597c30d 53/88
Enfoques de resolución
- 39 -
UNIVERSIDAD PONTIFICIA COMILLASESCUELA TÉCNICA SUPERIOR DE INGENIERÍA (ICAI)
INGENIERO INDUSTRIAL
Supóngase que el texto de un individuo contiene el siguiente fragmento;
―... zbombardear esenj...” La función de búsqueda toma primeramente un grupo de 6 letras y lo compara con
su base de datos (6 letras es el tamaño mínimo que se ha considerado adecuado
para que una palabra encontrada no sea fruto de la casualidad). Posteriormente, en
caso de encontrar coincidencia, se añade una letra cada vez hasta que la palaba no
se encuentra en el diccionario. Una vez que no hay correspondencia, se compara
si la última palabra obtenida coincide exactamente con una palabra del
diccionario:1. zbomba-rdearesenj – No se encuentra en el diccionario.
2. bombar-dearsenj – Se corresponde con {bombardear, bombardeen,
bombardeo, bombardeoaereo}.
3. bombard-earesenj – Se corresponde con {bombardear, bombardeen,
bombardeo, bombardeoaereo}.
4. bombarde-aresenj – Se corresponde con {bombardear, bombardeen,
bombardeo, bombardeoaereo}.5. bombardea-resenj – Se corresponde con {bombardear}.
6. bombardear-esenj – Se corresponde con {bombardear}.
7. bombardeare-senj – No se encuentra en el diccionario.
8. bombardear – Corresponde exactamente con {bombardear}
9. Activar los flags.
2.3.7.2 Modificación de la población
Se ha modificado el algoritmo genético simple para implementar un nuevo
operador que se encarga de verificar y corregir que todas las letras que hayan sido
activadas estén en la posición correcta en todos los individuos de cada población.
(Recuérdese que cada generación supone una población nueva, por lo que hablar
de una población equivale también a hablar de una generación).
Para realizar esta tarea, primeramente se recorre el alfabeto de cada individuo y se
comprueba elemento a elemento si la letra correspondiente tiene activado el flag y
en caso de que así sea, si dicha letra es la correcta.
5/10/2018 PROYECTO - slidepdf.com
http://slidepdf.com/reader/full/proyecto-55a0c0597c30d 54/88
Enfoques de resolución
- 40 -
UNIVERSIDAD PONTIFICIA COMILLASESCUELA TÉCNICA SUPERIOR DE INGENIERÍA (ICAI)
INGENIERO INDUSTRIAL
En caso de que el flag esté activo pero la letra no sea la correcta (el individuo
tendría una codificación incoherente con la información sustraída de la búsquedapor diccionario), el procedimiento a realizar es buscar en qué posición está la letra
esperada y, posteriormente, intercambiarla de manera similar a como se hacía en
el operador de mutación. Es decir, el individuo se ve modificado con objeto de
compatibilizar su codificación con la información adquirida por ataques con
diccionario.
Como ejemplo, supongamos que se ha encontrado la palabra ―aprovisionamiento‖
y que la letra ‗p‘ en concreto ha sido fijada en el tercer elemento. En la siguientegeneración se trabaja con un individuo cualquiera, como el de la Figura 21. Al
llegar al tercer elemento, se observa que el flag está activo pero la letra no es la
correcta. Se procede entonces a buscar la letra ‗p‘ en el alfabeto y posteriormente
a intercambiarla.
Figura 21- Comprobación de los flags
2.3.7.3 Acerca de la búsqueda por diccionario y los operadores
Si bien no se ha comentado con anterioridad para seguir un orden lógico, cabe
reseñar que los operadores están diseñados de tal forma que una vez que una
generación completa tiene bien activadas las letras de todas las palabras
encontradas hasta el momento, la evolución a través de los operadores nunca
modifica estos elementos. Por lo tanto, la modificación de la población sólo
debería ocurrir en caso de encontrar nuevas letras.
5/10/2018 PROYECTO - slidepdf.com
http://slidepdf.com/reader/full/proyecto-55a0c0597c30d 55/88
Enfoques de resolución
- 41 -
UNIVERSIDAD PONTIFICIA COMILLASESCUELA TÉCNICA SUPERIOR DE INGENIERÍA (ICAI)
INGENIERO INDUSTRIAL
2.3.8 CRITERIOS DE FINALIZACIÓN DEL ALGORITMO Y MÉTODO DE
ELITISMO
Tanto los criterios para dar el algoritmo por finalizado como la opción de activar
el elitismo (clonar al mejor individuo de cada generación y sustituirlo en la
siguiente generación en el lugar del peor individuo) son libres para elegirse.
Durante este trabajo, se ha optado por finalizar el algoritmo transcurrido un cierto
número de generaciones, pero también se puede optar por no finalizarlo hasta
haber alcanzado un cierto grado de optimalidad, etc.En cuanto al elitismo, se ha optado en general por activarlo. De este modo, se
evita que el AG pierda información valiosa por evolución.
5/10/2018 PROYECTO - slidepdf.com
http://slidepdf.com/reader/full/proyecto-55a0c0597c30d 56/88
Casos estudio y resultados
- 42 -
UNIVERSIDAD PONTIFICIA COMILLASESCUELA TÉCNICA SUPERIOR DE INGENIERÍA (ICAI)
INGENIERO INDUSTRIAL
Capítulo 3 CASOS ESTUDIO Y RESULTADOS
3.1 E LECCIÓN DE LOS CASOS ESTUDIO
Para el desarrollo de este trabajo, se partió de los documentos disponibles en el
archivo histórico de Salamanca. Se encontraron varios telegramas interceptadospor parte de ambos bandos e inicialmente la idea fue crear un algoritmo que fuera
capaz de descifrar cualquier texto y de cualquier tamaño, un caso estudio podría
haber sido, por ejemplo, el de la Figura 7 (pág. 9).
Una vez programado el algoritmo, se fueron observando dificultades. La primera
de ellas fue que este tipo de textos resultaban ser demasiado cortos, si no para ser
descifrados una vez ajustados los parámetros del algoritmo (probabilidades de
mutación y reproducción, etc.) al menos sí para servir de base para dicho ajuste.Asimismo, se concluyó que la región factible era demasiado grande para una
primera aproximación (que consistía en asumir que la tabla de homófonos fuese
desconocida), como ya se ha comentado en numerosas ocasiones.
Consecuentemente, se decidió obtener un texto de la época con una longitud
suficiente. En vista de no encontrar un texto cifrado de la magnitud deseada, se
visitó la documentación de la época del Archivo General Militar de Madrid2 y se
imprimieron textos bélicos de la GCE que se pueden encontrar microfilmados endicho archivo. La unión de varios de estos textos fue el primer objeto de estudio
(caso estudio 1, ver Anexo B). Se cifraron con la clave ―Victoria T en K ‖ y se
trabajó con dicho texto cifrado suponiendo la tabla de homófonos conocida pero
la clave no.
2 Instituto de Historia y Cultura Militar. Paseo de Moret, 3 Madrid.
5/10/2018 PROYECTO - slidepdf.com
http://slidepdf.com/reader/full/proyecto-55a0c0597c30d 57/88
Casos estudio y resultados
- 43 -
UNIVERSIDAD PONTIFICIA COMILLASESCUELA TÉCNICA SUPERIOR DE INGENIERÍA (ICAI)
INGENIERO INDUSTRIAL
La Figura 22, que ya fue presentada en la página 8, muestra la clave tal y como
fue utilizada para cifrar el texto. La fila en negrita es la letra a la que realmentecorresponden los números de su columna.
Figura 22- Clave 'VICTORIA T en K'
Adicionalmente, parece lógico suponer que en textos en los que se hable de
distintos temas aparecerán más ciertas palabras que otras. Podemos esperar
encontrarnos frecuentemente en nuestros textos palabras como batallones,
oficiales, ataque, etc. Por lo que las frecuencias de las letras y en especial las de
los bigramas pueden variar. Además, los textos cifrados de este tipo no tenían
espacios en blanco entre palabras, lo que modifica notablemente las frecuencias
de determinados bigramas. Se procedió por tanto, a estudiar las frecuencias de las
letras y bigramas del caso estudio 1 y a tomarlas como referencia para la función
objetivo (parámetro frec. esperada). Así pues, este primer caso estudio cuenta con
las ventajas de su longitud y de que las frecuencias a las que debe tender el
algoritmo son exactamente las correctas.
Una vez ajustados los parámetros de algoritmo, se ha ensayado sobre un texto
cifrado real obtenido del archivo histórico de Salamanca (caso estudio 2, ver
Anexo B). Ya se ha comentado que no es frecuente en la investigación de hoy en
día encontrar un texto cifrado que cumpla las suposiciones realizadas en este
trabajo (cuya tabla de homófonos sea conocida pero alfabeto desconocido). Por
ello, el texto elegido consiste en un manuscrito interceptado por la República y
cifrado en con la clave Regidor, que era una tabla de homófonos sin cinta móvil y
cuya clave (en este caso la tabla de homófonos) se conoce hoy en día y se
encontraba también entre los documentos del archivo histórico de Salamanca Una
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 M W T F N X O G Ñ Y R H P Z A J Q V B K S I D L U C
10 20 30 32 41 1 92 87 99 45 26 25 76 93
2 62 95 13 27 63 5 14 61 7 22 21 9 12
11 3 15 34 29 35 37 24 36 38 23 39 40 69
4 18 28 49 51 54 19 6 96 8 58 64 71 70
33 31 50 94 16 44 52 55 56 59 60 98 65 72 75
97 47 17 48 42 43 46 53 57 66 68 74 78 80
67 73 81 84 83 85 91 79 90 77 82 88 89 86
5/10/2018 PROYECTO - slidepdf.com
http://slidepdf.com/reader/full/proyecto-55a0c0597c30d 58/88
Casos estudio y resultados
- 44 -
UNIVERSIDAD PONTIFICIA COMILLASESCUELA TÉCNICA SUPERIOR DE INGENIERÍA (ICAI)
INGENIERO INDUSTRIAL
vez obtenido el texto en claro, se cifró con la clave ―Victoria T en K‖ y se escrutó
mediante el algoritmo.La Figura 23 muestra un resumen del proceso seguido para el criptoanálisis de
ambos casos estudio.
Caso estudio 1.Texto en claro
Cifrar el textocon clave
“Victoria”
Estudio de lasfrecuencias en
claro
Elección de losparámetros
(mutación,reproducción)
Criptoanálisis
Caso estudio 2.Texto cifrado
Desencriptarcon clave“Regidor”
Cifrar conclave “Victoria”
Criptoanálisis
Figura 23- Proceso de criptoanálisis de los casos estudio
Si bien es cierto que hasta futuros desarrollos queda descartado atacar un texto
cifrado cuyo texto en claro se desconozca, el caso estudio 2 presenta varias
complicaciones reales y reflejará fielmente la realidad dado que:
5/10/2018 PROYECTO - slidepdf.com
http://slidepdf.com/reader/full/proyecto-55a0c0597c30d 59/88
Casos estudio y resultados
- 45 -
UNIVERSIDAD PONTIFICIA COMILLASESCUELA TÉCNICA SUPERIOR DE INGENIERÍA (ICAI)
INGENIERO INDUSTRIAL
El texto en claro fue cifrado y enviado realmente, por lo que da ejemplo de
longitud y vocabulario empleado en los textos cifrados reales durante laGCE.
Las frecuencias resultantes de la encriptación de las letras y bigramas
tienden hacia las fijadas por el caso estudio 1 que, como se ha dicho, por la
longitud y temática del texto se consideran representativas.
Así, en este segundo caso estudio a todas luces el algoritmo se enfrenta a un texto
cifrado, real y desconocido, del que como única ayuda se conoce la tabla fija con
la que fue cifrado.
3.2 R ESULTADOS
El objetivo de los algoritmos de este trabajo es muy concreto: descifrar el texto
cifrado. Los resultados de cada algoritmo (BB y AG) así como la bondad de los
ajustes realizados en el AG se medirán por la legibilidad de dicho texto, pudiendodistinguirse las siguientes clasificaciones:
Legibilidad Descripción
Nula El texto es absolutamente incomprensible.
Insuficiente Se encuentran las vocales correctamente y alguna palabra, pero el
texto en conjunto no es comprensible.
Aceptable El texto es comprensible en general. Aunque algunos fragmentos opalabras requieren del contexto para comprenderse.
Perfecta El texto es descifrado perfectamente o casi perfectamente.
Tabla 3- Clasificación de los textos descifrados según su legibilidad
En el Anexo B se pueden encontrar ejemplos de los distintos grados de legibilidad
para el caso estudio 2.
5/10/2018 PROYECTO - slidepdf.com
http://slidepdf.com/reader/full/proyecto-55a0c0597c30d 60/88
Casos estudio y resultados
- 46 -
UNIVERSIDAD PONTIFICIA COMILLASESCUELA TÉCNICA SUPERIOR DE INGENIERÍA (ICAI)
INGENIERO INDUSTRIAL
3.2.1 RESULTADOS DEL ALGORITMO DE TIPO BB
Se ha ejecutado el algoritmo BB con ambos modelos (básico y ampliado) sobre
los dos casos estudio. A continuación se presentan los resultados obtenidos.
En el modelo básico, los resultados de legibilidad y tiempo de ejecución3
obtenidos fueron desalentadores en cuanto a la legibilidad:
Legibilidad Tiempo de ejecución
Caso estudio 1 Insuficiente 7min 20s
Caso estudio 2 Nula 7min 15s
Tabla 4- Resultados del modelo básico
En cuanto al modelo ampliado con bigramas, se concluye que el modelo demanda
más memoria de almacenamiento de datos que la que el propio programa GAMS
permite, por lo que su ejecución resulta infructuosa incluso para un texto de sólo
dos caracteres.
Esto se debe al número de variables necesarias; 365.986 en un texto de tamaño
típico (ver Tabla 1).
3.2.2 RESULTADOS DEL ALGORITMO GENÉTICO
Primeramente se procederá a ajustar los parámetros del algoritmo con el caso
estudio 1 para después observar los resultados en el caso estudio 2.
3.2.2.1 Caso estudio 1: Ajuste del algoritmoEl proceso de ajuste de los parámetros consiste en lograr minimizar el tiempo de
ejecución al tiempo que se maximiza la calidad de la solución obtenida.
Una gran parte del tiempo de ejecución del programa reside en la función que
evalúa cada individuo y busca palabras del diccionario en el texto. Se puede decir,
3 Tiempo de ejecución en un portátil HP Compaq6730s con un Procesador Intel Core2 Duo a 1,80GHz y Windows Vista Home Premium
5/10/2018 PROYECTO - slidepdf.com
http://slidepdf.com/reader/full/proyecto-55a0c0597c30d 61/88
Casos estudio y resultados
- 47 -
UNIVERSIDAD PONTIFICIA COMILLASESCUELA TÉCNICA SUPERIOR DE INGENIERÍA (ICAI)
INGENIERO INDUSTRIAL
por tanto, que el tiempo de ejecución es aproximadamente proporcional al
producto de los individuos por las generaciones, ya que ese es aproximadamente4
el número de veces que se llama a dicha función.
Se parte entonces de un número grande de individuos y generaciones, se
encuentran los parámetros de mutación y reproducción óptimos y se intenta
reducir este número, conservando siempre un número de individuos y
generaciones que sea capaz de encontrar un texto legible.
Nótese que no es admisible condicionar el fin del algoritmo a un cierto grado de
optimalidad, ya que si bien es cierto que en el caso estudio 1 la función objetivodebe tender exactamente a cero, en diferentes textos (con diferentes frecuencias)
esto no va a ser posible y cada texto tendrá su valor de ―desigualdad frente a las
frecuencias perfectas‖ que resultará en el texto perfectamente legible. Del mismo
modo, condicionar el fin del algoritmo al estancamiento de la convergencia, es
decir, terminar el AG cuando un número dado de generaciones tengan al mismo
mejor individuo, es una opción razonable, pero puede darse el caso de que
regiones que no son el óptimo encontrado, topen en las siguientes generacionescon alguna palabra del diccionario, modificando radicalmente la siguiente
generación y desatascando la convergencia.
En las primeras ejecuciones el producto se prefijó a
20.000, dando lugar a la siguiente tabla de resultados:
4 Aproximadamente ya que si un individuo pasa a la siguiente generación sin ser modificado, no seevalúa de nuevo.
5/10/2018 PROYECTO - slidepdf.com
http://slidepdf.com/reader/full/proyecto-55a0c0597c30d 62/88
Casos estudio y resultados
- 48 -
UNIVERSIDAD PONTIFICIA COMILLASESCUELA TÉCNICA SUPERIOR DE INGENIERÍA (ICAI)
INGENIERO INDUSTRIAL
Individuos Generaciones P(cruce) P(mut) Legibilidad Tiempo
10 2000
0.95
0.2 Perfecta
≈16 min
0.02 Perfecta
0.002 Aceptable
0.9
0.2 Perfecta
0.02 Perfecta
0.002 Aceptable
0.85
0.2 Perfecta
0.02 Perfecta
0.002 Aceptable
Tabla 5- Resultados del ajuste de los parámetros del AG (10x2000)
Parece entonces que el algoritmo funciona bien con los parámetros típicos de
probabilidad de cruce y mutación aunque no conviene reducir demasiado estaúltima. (Valores de 0.9 en cruce y de 0.01 en mutación, se consideran típicamente
sensatos, ver [3]).
Conviene también estudiar otros repartos en cuanto a número de individuos y
generaciones. La Tabla 6 muestra los resultados.
Individuos Generaciones P(cruce) P(mut) Legibilidad Tiempo
50 400
0.95 0.2 Insuficiente
≈18 min
0.02 Perfecta
0.90.2 Nula
0.02 Perfecta
0.850.2 Nula
0.02 Nula
Tabla 6- Resultados del ajuste de los parámetros del AG (50x400)
5/10/2018 PROYECTO - slidepdf.com
http://slidepdf.com/reader/full/proyecto-55a0c0597c30d 63/88
Casos estudio y resultados
- 49 -
UNIVERSIDAD PONTIFICIA COMILLASESCUELA TÉCNICA SUPERIOR DE INGENIERÍA (ICAI)
INGENIERO INDUSTRIAL
La comparación de la Tabla 5 y la Tabla 6 muestran una conclusión importante.
Siempre y cuando se deje al algoritmo iterando el tiempo suficiente, parece queencontrará la solución óptima. Aumentar el tamaño poblacional puede ayudar en
ocasiones al alcanzar la solución en menos iteraciones, pero si el tiempo de
ejecución se va a mantener constante parece más beneficioso utilizar menos
individuos durante más generaciones. Es decir, el hecho de que la legibilidad sea
tan variable en la Tabla 6 se debe a que en tan pocas generaciones el azar juega un
papel importante a la hora de encontrar palabras del diccionario, por lo que la
distribución individuos/generaciones de la Tabla 5- Resultados del ajuste de los
parámetros del AG (10x2000) es más robusta.
Además, los resultados de la Tabla 5 muestran la legibilidad del texto al final de
las 2000 iteraciones, pero la Figura 24 constata que en ocasiones el óptimo se
alcanza mucho antes. La probabilidad de cruce utilizada en la figura es 0.9 y la de
mutación 0.08. Recuérdese que en el caso estudio 1 hablar de legibilidad y
optimalidad es equivalente.
Figura 24- Optimalidad del mejor individuo en cada generación
0
0,5
1
1,5
2
2,5
3
0 50 100 150 200 250 300 350 400 450
Error de frecuencias
5/10/2018 PROYECTO - slidepdf.com
http://slidepdf.com/reader/full/proyecto-55a0c0597c30d 64/88
Casos estudio y resultados
- 50 -
UNIVERSIDAD PONTIFICIA COMILLASESCUELA TÉCNICA SUPERIOR DE INGENIERÍA (ICAI)
INGENIERO INDUSTRIAL
Se observa que el óptimo se alcanza mucho antes de la generación 2000 y que por
tanto aún existe margen de mejora en cuanto a la elección de los individuos y lasgeneraciones.
Se concluye que es recomendable utilizar una población reducida (dado un tiempo
de ejecución fijo, puesto que en otro caso a mayor tamaño de la población los
resultados serán, lógicamente, mejores) pero un número de generaciones
relativamente grande. Además, los parámetros típicos de probabilidades de cruce
(0.9 - 0.8) y mutación (0.2 - 0.02) dan buenos resultados.
3.2.2.2 Caso estudio 2
Antes de proceder al análisis de los resultados obtenidos con el caso estudio 2,
cabe reseñar un aspecto diferenciador entre ellos y que puede modificar los
parámetros del AG.
El AG se basa en dos funciones diferentes para alcanzar la solución: la función
objetivo y la búsqueda por diccionario. La función objetivo trata de llevar a las
sucesivas poblaciones hacia unas frecuencias determinadas en los textos,
exactamente las frecuencias del caso estudio 1. La búsqueda por diccionario, sin
embargo, se nutre en ocasiones de la diversidad genética para explotar aspectos
positivos de zonas de la región factible que no tienen porqué ser las óptimas
teóricas.
En el caso estudio 1 se ha otorgado mayor importancia a la evolución a través de
la función objetivo precisamente porque las frecuencias de entrada son exactas: la
función objetivo llevará unívocamente a las poblaciones hasta la solución
correcta. Sin embargo, en situaciones en las que las frecuencias no sean fiables,
cobra mayor importancia la búsqueda por diccionario, que fija determinadas letras
importantes (aunque guiado siempre por la función objetivo) para luego ajustar el
resto de ellas.
Así pues, en este caso podemos esperar de antemano en los resultados, que el
algoritmo nos anime a favorecer algo más el tamaño poblacional y a no otorgar
tanto peso a la evolución clásica.
5/10/2018 PROYECTO - slidepdf.com
http://slidepdf.com/reader/full/proyecto-55a0c0597c30d 65/88
Casos estudio y resultados
- 51 -
UNIVERSIDAD PONTIFICIA COMILLASESCUELA TÉCNICA SUPERIOR DE INGENIERÍA (ICAI)
INGENIERO INDUSTRIAL
Dicho esto, se ensayó el AG sobre 20 individuos y 1000 generaciones obteniendo
los resultados de la Tabla 7:
Individuos Generaciones P(cruce) P(mut) Legibilidad Tiempo
20 1000
0.950.2 Perfecta
≈2 min
0.02 Nula
0.90.2 Nula
0.02 Perfecta
0.850.2 Perfecta
0.02 Aceptable
Tabla 7- Resultados del caso estudio 2 (20x1000)
El tiempo de ejecución es claramente menor que el del caso 1, eso se debe a la
longitud menor del texto. En cuanto a los resultados, en general se observa que no
es difícil encontrar un duplo de parámetros que desencripte el texto perfectamente.
Es más, la Tabla 8 muestra que duplicando el número de individuos y aumentando
las generaciones, se reduce mucho la probabilidad de no encontrar el texto en
claro. Empleando además menos de 5 minutos en ello.
Individuos Generaciones P(cruce) P(mut) Legibilidad Tiempo
40 1500
0.950.2 Perfecta
≈4 min
0.02 Perfecta
0.90.2 Perfecta
0.02 Perfecta
0.850.2 Nula
0.02 Perfecta
Tabla 8- Resultados del caso estudio 2 (40x1500)
5/10/2018 PROYECTO - slidepdf.com
http://slidepdf.com/reader/full/proyecto-55a0c0597c30d 66/88
Casos estudio y resultados
- 52 -
UNIVERSIDAD PONTIFICIA COMILLASESCUELA TÉCNICA SUPERIOR DE INGENIERÍA (ICAI)
INGENIERO INDUSTRIAL
La Figura 25 muestra el proceso de optimización del algoritmo frente a las
generaciones. Nótese cómo el proceso evolutivo rebaja primeramente el error enlas frecuencias y cómo la función de búsqueda por diccionario obtiene
posteriormente el texto en claro a partir de un texto ilegible, pero con frecuencias
similares.
Además, nótese que la diferencia total entre las frecuencias óptimas con
legibilidad perfecta del caso estudio 2 y las referenciadas del caso estudio 1 está
en torno a 0.75.
Figura 25- Proceso de optimización del caso estudio 2
La Figura 25 se ha obtenido con 20 individuos, una probabilidad de cruce de 0.9 y
una de mutación de 0.1.
3.3 C ONCLUSIONES ACERCA DE LOS RESULTADOS
Se concluye que el AG supera con creces los resultados ofrecidos por el algoritmo
de BB.
5/10/2018 PROYECTO - slidepdf.com
http://slidepdf.com/reader/full/proyecto-55a0c0597c30d 67/88
Casos estudio y resultados
- 53 -
UNIVERSIDAD PONTIFICIA COMILLASESCUELA TÉCNICA SUPERIOR DE INGENIERÍA (ICAI)
INGENIERO INDUSTRIAL
El AG es capaz de obtener textos de perfecta legibilidad tanto en el texto
conocido como en el desconocido mientras que el modelo básico delalgoritmo BB no alcanza a ofrecer una legibilidad aceptable ni siquiera en
el texto conocido.
El modelo ampliado con bigramas del algoritmo BB requiere una cantidad
de memoria excesiva para la disponibilidad del programa bajo el que
opera, por lo que no se puede evaluar su efectividad.
El AG es algo más sensible en tiempo a la longitud del texto, pero resulta
más rápido que el algoritmo BB a la hora de desencriptar un texto ―tipo‖.
5/10/2018 PROYECTO - slidepdf.com
http://slidepdf.com/reader/full/proyecto-55a0c0597c30d 68/88
Conclusiones
- 54 -
UNIVERSIDAD PONTIFICIA COMILLASESCUELA TÉCNICA SUPERIOR DE INGENIERÍA (ICAI)
INGENIERO INDUSTRIAL
Capítulo 4 CONCLUSIONES
En este proyecto se han evaluado las técnicas de investigación operativa modernas
en la resolución del problema criptográfico de la Guerra Civil Española. Se ha
desarrollado un algoritmo genético y un modelo de programación matemática, y
se han comparado sus resultados.
Se ha observado que la intervención humana es un factor clave y de gran ayudapara desencriptar un texto, y que sin ella el criptoanálisis es complejo.
Dada esta complejidad, no ha sido posible desarrollar una herramienta fiable que
desencripte cualquier tipo de texto cifrado bajo los métodos estudiados sin
ninguna suposición. Sin embargo, se ha comprobado que bajo ciertas suposiciones
realistas es un problema abordable, desencriptándose textos perfectamente y
asentando las bases para desarrollos futuros. En concreto, se ha desarrollado la
base para obtener una herramienta de software que permita desencriptar textos lomás cortos posibles y cifrados bajo cualquier tabla de homófonos o tablas de cinta
móvil, sin ninguna suposición ni ayuda humana de ningún tipo.
Se ha concluido también que los modelos clásicos de programación matemática se
ven desbordados con mayor facilidad que los algoritmos genéticos, y se ha
desarrollado un algoritmo genético adhoc que puede operar bajo distintas
suposiciones sin más que elegir, o programar llegado el caso, los operadores
darwinianos que permitan trabajar siempre en la región factible.Los resultados obtenidos demuestran que las técnicas operativas modernas son
capaces de alcanzar resultados igual de buenos que los obtenidos por expertos
criptógrafos de la época, pero en mucho menos tiempo.
5/10/2018 PROYECTO - slidepdf.com
http://slidepdf.com/reader/full/proyecto-55a0c0597c30d 69/88
Desarrollos futuros
- 55 -
UNIVERSIDAD PONTIFICIA COMILLASESCUELA TÉCNICA SUPERIOR DE INGENIERÍA (ICAI)
INGENIERO INDUSTRIAL
Capítulo 5 DESARROLLOS FUTUROS
Ha sido una constante durante toda la memoria de este proyecto el hecho de que la
mayor parte del trabajo desarrollado ha sido bajo unas suposiciones que deben ser
eliminadas en desarrollos futuros.
En concreto, partiendo de la base de este trabajo, debe desarrollarse una
herramienta capaz de desencriptar textos suficientemente largos pero variados,
cifrados mediante el sistema español de sustitución por tabla de homófonos
desconocida.
Para ello, los operadores que ya se encuentran programados en el software
desarrollado pueden servir de ayuda.
Para no abordar el problema completo desde un principio, y desde la experiencia
que brinda al autor un año de trabajo, se propone comenzar ―suavizando‖ las
restricciones implantadas, de modo que poco a poco se vaya aumentando la región
factible. Algunas ideas pueden ser:
Comenzar suponiendo desconocidas sólo algunas columnas de la tabla fija.
Imponer la cantidad exacta de números por los que cada columna puede
sustituirse (entre 3 y 5, según la columna).
Imponer que una columna no puede tener de homófonos dos números de la
misma decena (ver Figura 6).
Liberar progresivamente las restricciones del problema puede suponer el trabajo
de programar distintos operadores darwinianos para cada conjunto de
restricciones, de modo que nunca se creen individuos no pertenecientes a la región
factible. Sin embargo, tiene la ventaja de controlar en todo momento la
efectividad y debilidades de cada AG, máxime cuando se parte de uno ya
programado y funcionando.
5/10/2018 PROYECTO - slidepdf.com
http://slidepdf.com/reader/full/proyecto-55a0c0597c30d 70/88
Desarrollos futuros
- 56 -
UNIVERSIDAD PONTIFICIA COMILLASESCUELA TÉCNICA SUPERIOR DE INGENIERÍA (ICAI)
INGENIERO INDUSTRIAL
Por último, recordar que a medida que se vaya realizando lo anteriormente
expuesto, más robusto será el sistema ante un ataque por frecuencias, por lo que labúsqueda por diccionario debe cobrar mayor importancia y/o ser mejorada llegado
el caso.
Dado que el estado del arte en este problema en concreto es escaso, la
imaginación del investigador o proyectista debe ser la que lleve a herramientas y
soluciones novedosas que permitan desencriptar el texto sin ninguna ayuda
humana.
En conclusión, la continuación de este trabajo debe culminarse con el desarrollode una herramienta capaz de desencriptar cualquier tipo de texto que haya sido
cifrado por tabla de homófonos o por el sistema español, de modo que pueda
instalarse en los ordenadores de aquellas personas, que en su trabajo de
investigación histórica, se encuentran con frecuencia con textos cifrados cuyo
mensaje desearían poder conocer.
5/10/2018 PROYECTO - slidepdf.com
http://slidepdf.com/reader/full/proyecto-55a0c0597c30d 71/88
Anexo A
- 57 -
UNIVERSIDAD PONTIFICIA COMILLASESCUELA TÉCNICA SUPERIOR DE INGENIERÍA (ICAI)
INGENIERO INDUSTRIAL
ANEXO A
A LGORITMO GENÉTICO DESCONOCIDA LA TABLA FIJA
En este Anexo se detalla el AG propuesto para solucionar el problema sin conocer
la tabla de homófonos. La estructura del AG es idéntica a la expuesta en elapartado 2.3 pero los operadores de iniciación de la población, reproducción y
mutación son distintos debido a la diferencia de codificación del genoma y a que
no existen ciertas restricciones.
CODIFICACIÓN DEL GENOMA
La diferencia entre este nuevo problema y el planteado en el apartado 2.3 radica
en desconocer la tabla de homófonos. En consecuencia, no existe un alfabeto por
cada individuo tal y como se planteaba anteriormente, por lo que resulta sencillo
describir el genoma simplemente como el vector de 100 elementos ya estudiado
(ver Figura 12).
Figura 26- Codificación del genoma
INICIALIZACIÓN DE LA POBLACIÓN
Se inicia cada individuo recorriendo cada gen suyo (cada elemento del vector) y
asignándole una letra al azar. La Figura 27 ilustra este proceso:
5/10/2018 PROYECTO - slidepdf.com
http://slidepdf.com/reader/full/proyecto-55a0c0597c30d 72/88
Anexo A
- 58 -
UNIVERSIDAD PONTIFICIA COMILLASESCUELA TÉCNICA SUPERIOR DE INGENIERÍA (ICAI)
INGENIERO INDUSTRIAL
Figura 27- Inicialización de un individuo
REPRODUCCIÓN
La ausencia de restricciones permite ahora mucha más libertad a la hora de elegir
un operador de cruce. Se han programado dos; la reproducción single point y la
reproducción uniforme que se muestran en la Figura 28 y la Figura 29
respectivamente. Pero se deja para futuros desarrollos estudiar cuál es el mejor
método de los dos o proponer otras soluciones.
Figura 28- Reproducción por single point
Figura 29- Reproducción uniforme
00
A
01
K
02
J
03
L
…
00
H
01
C
02
P
03
A
…
…
…
00
A
01
K
02
P
03
A
00
H
01
C
02
J
03
L
00
A
01
K
02
J
03
L
…
00
H
01
C
02
P
03
A
…
00
A
01
C
02
J
03
A
…
00 01
H
02
K
03
P
…
L
5/10/2018 PROYECTO - slidepdf.com
http://slidepdf.com/reader/full/proyecto-55a0c0597c30d 73/88
Anexo A
- 59 -
UNIVERSIDAD PONTIFICIA COMILLASESCUELA TÉCNICA SUPERIOR DE INGENIERÍA (ICAI)
INGENIERO INDUSTRIAL
MUTACIÓN
El método de mutación elegido es muy similar al del apartado 2.3.5 pero
trabajando sobre el vector de 100 elementos en vez de sobre el alfabeto.
Figura 30- Mutación de un individuo
5/10/2018 PROYECTO - slidepdf.com
http://slidepdf.com/reader/full/proyecto-55a0c0597c30d 74/88
Anexo B
- 60 -
UNIVERSIDAD PONTIFICIA COMILLASESCUELA TÉCNICA SUPERIOR DE INGENIERÍA (ICAI)
INGENIERO INDUSTRIAL
ANEXO B
C ASO ESTUDIO 1
Caracteres: 10.509
Frecuencias: Conocidas
loscuatrobatallonesdelabrigadaefectuaranmañanaunejercicioconsupuestotacticosaliendodespuesdelafuerzadeldesayunoyregresandoasusbasesantesdelahoradelasegundacomidalaprimerasedistribuiraenelcampoelsegundoycuartobatallonsaldrandelacinetatomandodireccionesdistintasyelprimeroytercerbatallonesdesdestalinmartaenlamismaformatodosellosefectuaranunrecorridodeveinticincokilometroscomprendidoelregresoestableciendodurantelamarchalosserviciosdefranqueoexploracionyseguridadqueseindiquenenlosreglamentostacticosydecampañalosjefesdebatallonterminadoelsupuestoharanunabrevememoriahaciendoconstarenellaeltiempoinvertidoenlamarchayenelejerciciotacticopuntodondesehadesarrolladoasicomotambiencualquierdeficienciaobservadadurantesucursolafuerzallevaraelequipocompletoarmamentocorreajeymunicionesycadabatallonllevaraconsigoelmaterialymenajedecocinanecesarioparalaconfecciondelaprimeracomidaencalienteantesdelasveintidoshorasdehoymecomunicaranlosjefesdebatallonelitinerarioquesubatallonrespectivohadeseguirypuntoendondesedaporterminadalamarchalarealizarelejercicioeldiadiecinuevedelactualconf uerzasdecarabinerosdestacadasencañameroypuertollanoyfalangedecañamerosellevoaefectounreconociemientopartiendodepuertollanoyavanzandoporlacarreteradevill
anuevadelaserenaunosseiskilometrosrecogiendoelcamionquehabiasidovoladoporunaminapuestaporelenemigoeldiaveintitresdelpasadocuyovehiculohaquedadoencañameroenloskilometrossesentaycuatrosesentaycincoysesentaynuevededichacarreterahanexistidocincominasrealizandoselostrabajosnecesariosparainutilizarlastodolocualhasidoconseguidotresdedichasminassehallabanenelkilometrossesentaycuatroinmediacionesdeunpinaryunadeellasencadaunodelosrestantesregresandolasfuerzasasusbasessinhaberocurridonovedadsomosierrayjadraquemovimientonormalalgoramenormovimientocontinuaconstrucciondetrincherastodoelfrenteseseñalanenportugalcerosdelafronteraconespañaactividadesdeagentecomunistasquealparecerpretendenpro
vocarperturbacionesconmotivodelprimerodemayolapoliciaportuguesalosvigilayenl
5/10/2018 PROYECTO - slidepdf.com
http://slidepdf.com/reader/full/proyecto-55a0c0597c30d 75/88
Anexo B
- 61 -
UNIVERSIDAD PONTIFICIA COMILLASESCUELA TÉCNICA SUPERIOR DE INGENIERÍA (ICAI)
INGENIERO INDUSTRIAL
afronteraconsalamancasehantomadoprecaucionesperosehaperdidolapistadeunsujetollamadoantoniocarvhalloydeotrollamadoalvespereiraamboscomunistaspeligrosospareceserquetratandeunirseconelementosespañolesqueseencuentranenlaprovinciadecaceresalmandodeuntenientedeinfanteriaquetieneasusordenesunpelotondelacompañiaderegimientodeargolcomoobservatoriohasidoinstaladodemodopermanenteenlacotamasaltadeasierradesancristobalparalelaalacarreterazoritalogroñosanguadalupeylaspocassendasqueconducenasucrestaasoncasiinaccesiblesacaballeriascargadassudefensaesfacilconarmasautomaticaspuestieneunagrancampodetiroentodasdireccionesdesdeelobservatoriosedominaydivisaendireccionalcampoenemigosuresteysuroesteunagranzonadeterrenoconunaprofundidadhastadetreintaycincokilometrospudiendoapreciarseasimplevistalospueblosdetalarrubiascasasdedonpedrospuebladealcoce
rynavalvillardepelaseguncoincidenciasdelosinformesobtenidosyobservacionespracticadaspornuestrospuestosdeobservacionlasituaciondelenemigoenestesectorpuededarseporunalineaformadaporellimitedelaprovinciadecaceresdesdelacarreteradeelcampoavillanuevadelaserenayquecontinuandoporlamargenizquierdadelriogargaligaprosigueporlacarreteradevillanuevaaguadaluperañadelacasqueradondetieneelenemigoguardiayobservatoriopermanenteyelpueblodealinreconocimientosofensivossobrevillarderenaeinformesdelosevadidosdeacederaorellanaynavalvillardepelaparecenconfirmarunidosconotrosinformesdeevadidosdelaotramargendelrioguadianaqueelenemigodisponesoloenesapartenortedelaprovinciadebadajozdeescasonumerodemilici
anosarmadosnostodosconfusilyconunnumeronomuygrandedegranadasdemanofabricadasporellosteniendosinembargomejordotadaslaguadiasquetienencolocadasatodololargodelamargenizquierdaderioguadianaysobretodoenlospuentesypasosdelriosinqueseseñalelapresenciadearmasautomaticasydeacompañamientoentreellosenalgunaocasionelenemigohahechoactodepresenciaenelpinardelamesetadelaventadelalagunaproximoacañamerohostilizandodesdeestelugarmencionadoymerodeandoporsusinmediacionesenlarañadelacasqueratienenmontadaunaguardiapermanenteyobservatorioalmandodeuntenientecontreitaycincohombresarmadostodosconfusilsinarmasautomaticasyconabundanciademunicionesygrandasdemanomanteniendosucomunicaciontelefonicaconcastilblancodondetienenalgunafuerzamasenlamayorpartedelospueblosenemigostienenconstruidasunaszanjasalrededordelpueblounasconsacosterrerosyotrassencillasymalconstruidasconmuchorelieveysinramalesenherreradelduquedisponendeundinamiteroespecializadoelcualhatrabajadoenlacolocaciondeminasyexplosivosenlascarreterasqueconducenacasturaeigualmentehaminadounmurodecontencionenelkilometroveintidosdelacarreteradepiedrabuenaenelcruceconladevillartadelosmontessesabetambienqueenelpantanodecijaratienenminadoelpuentemanteniendoundispositivounidoalosmotoresdelpantanoqueactualmentenomarchanporfaltadegasoilperodecuyocombustiblepudierantenerunapequeñacantidadparaponerlosenmarchaencasodequererhacervolarelpuenteindicadoporlapartedealiacuentanconunosdoscie
ntosatrescientoshombresarmadodefusilsinarmasautomaticasporelmomentonideaco
5/10/2018 PROYECTO - slidepdf.com
http://slidepdf.com/reader/full/proyecto-55a0c0597c30d 76/88
Anexo B
- 62 -
UNIVERSIDAD PONTIFICIA COMILLASESCUELA TÉCNICA SUPERIOR DE INGENIERÍA (ICAI)
INGENIERO INDUSTRIAL
mpañamientoteniendoguardiasmontadasenelcerrodesantacatalinaalnortedealiaypequeñasavanzadasdecuatroacincohombresalasalturasdelasmadroñasdedireccionaguadalupeennucleomasimportantedeestazonasegunlosinformesrecibidoslotienenmashaciaeltajoyenelpueblodenavadericomalillodondenohacemuchotiemporecibierondiezyseisametralladorasparacuyoseviciosellevaronamilicianosdealiaquehabianservidoenartilleriaperodichasarmasautomaticasnohansidoempleadascontraestesectorninotadasupresenciahastaelmomentolasactividadesdelenemigosehareducidoenestesectoralmerodeoyrobodeganadoenlapartedelsubsectordeguadalupeademasdelasincursionesqueverificocontrocañameroyquenohantenidootroresultadoquelacolocaciondeminaoexplosivosenlascarreterasquecreendevalorestrategicoyenlafortificacionenlapartedealiaendireccionaguadalupelosevadidoshablansiempredequeesperanrefuerzospara
atacarporelsubsectordeguadalupecañamerologrosanperoestomismoestancomentandolodesdehacevariosmesessinquehechoalgunoloconfirmepueshastalafechaenningunodelospueblosenemigosdelalineasehaobservadoaumentodecontingentesorefuerzosapesardecontarenvaldecaballerosconungrupodecaballeriadeunostreintahombresarmadosconmosquetonesestosnohanverificadoningunreconocimientouobservacionconociendosesolamentesuexistenciaporinformesdeevadidosenelbombardeoaereodevalenciaelquincedemayocayounabombaenelministeriodelajusticiacausandodestrozosenelinteriordeledificiootraenunaplayaexplotandoaquincemetrosdeministeriodemarinayairevariasenlacalledejuandeaustriayenladecolondestrozandoalgunascasasdosbo
mbasdestruyerondoscasasdelaplazadesanestebancausandounoscincuentamuertosycientosesentaheridosvariasenlacalledebarrianadeteriorandoalgunascasasqueestabanenconstruccionultimamentehanrecibidolosrojosdevalenciagrancantidaddeharinaygrannumerodecamionesensumayoriademarcaamericanasevennumerososnucleosdecarabinerosbienformadosdefiguerassalierondosbatallonesperointegradosenjuntoporunosdosmilquinientoshombresenlugardeformarcuatrobatallonesdequinientoshombrescadaunocomoengeronaenfiguerassesumarontodoslosdisponiblesennumerodedosmilquinientosindividuosendosbatallonestambienhansalidodefiguerasdosescuadronesdecaballeriadetodacataluñahanidosaliendorapidamentefuerzaselpuntodeconcentracionesvalencialindependentdeldiezdeabrildelactualpublicabaunasmanifestacionesdeprietoporlasqueseanunciabaunavezmaslaofensivaproyectadasobreelfrentedearagoneldiaoncedelacualsalierondebarcelonasesuponecondestinoalfretedearagonsectordehuescaquincemilhombrescompletamenteequipadoscontodoelmaterialdeguerracomplementarioseseñalaelhechoquedichastropasibanprovistasdecaretascontragasesnotaelequipodelastropasrojasconcaretascontragasespareceserunamedidageneralsiendoengrannumerolasmascarasquepasanporlafronteradelperthuslaartilleriadequedisponenelejercitorojoestanabundantecomovariadaensuorigensistemasycalibresestandomandadasensumayoriaporoficialesextranjerosysiendoconocidoslossiguientesemplazamientosestadomayordeartilleriaedificiodelatelefoniosplazadelavistillascuatrobat
eriashabiendosidodesmontadasvariaspiezasendistintasocasionesporelfuegodelaartil
5/10/2018 PROYECTO - slidepdf.com
http://slidepdf.com/reader/full/proyecto-55a0c0597c30d 77/88
Anexo B
- 63 -
UNIVERSIDAD PONTIFICIA COMILLASESCUELA TÉCNICA SUPERIOR DE INGENIERÍA (ICAI)
INGENIERO INDUSTRIAL
lerianacionalaquellasbateriashansidotrasladadasalaplazadesanfernandoelgrandealbondigadospiezasdegruesocalibrerondadevalenciaentredeliciasyglorietadelaspiramidesdosbateriasplazoletalimitandoderechocuarteldealabarderosunabateriagruesocalibrerosaletadelretirounabateriayelabuelopalaciorealpatiointeriorlimitandoconelcampodemoroseisuochopiezaspaseodelacastellanaaltosdehipodromoynuevotrozovariasbateriascarreteradearagonentreventasycuidadlinealcuatrooseisbateriaspaseoderosalesochobateriascalledeferrazseisbateriasavenidareinavictoriadocebateriasplazadeespañadiezbateriasfuencarralmuchaartilleriasinprecisarnumerodebateriasypiezascoloniadelvisoprolongacionserranotresbateriascamufladasporelarboladoultimamentehacequinceoveintediasfueretiradaalgunadeestasbateriasporhabersidolocalizadasporlaartillerianacionalademasdeestasbateriasexistenmasemplazadasentodaslasentradasn
aturalesdemadridlaobservacionartilleraparalaciudaduniversitariaseencuentraestablecidaenlaazoteadelacasaqueformachaflanenlagranviaycalledesanbernardodondeestalasucursaldelbancodebilbaoensabadellsehahabilitadoparaconstrucciondediversomaterialdeguerraeledificiofabricaquelosseñoresvaigualyllonoposeianparafabricaciondehiladosytejidosdelanaedificiorecienconstruidoyenelquetodavianosehabiainstaladolamaquinariaquesenecesitabaconstadecuatrocuerposdeedificiodeplantabajacercadosporunaverjayestaemplazadaenelcrucedelascarreterasdeterrasaabarcelonaydesabadellalarabasadaporrubicuyasituacionydistanciasaproximadasseseñalanenelcroquislosdirectoresdeestafabricasonrusosalgunosbastantejovenesquesonmuyconocidospor
concurriraloscafesdesabadelllosdesperfectosocasionadosporlosdiferentesbombardeosefectuadosenlazonarojacatalanahansidoenpocotiemporeparadoslosqueseefectuaronalascentraleselectricascosiguieronponerfueradeservicioacincocentralessinquerepercutieranporesoenlafaltadefuerzaenlasindustriasperolosdesperfectosocasionadosestuvieronarregladosenelterminodeunmesexisteunpostetransformadorenlapobladesegurquebombardeandoloquedarianfueradeserviciocincocentralesalavezylasmasimportantesycuyareparacionseriamuydificilporlolargapueshayquepedirlosmaterialesanorteamericacasitodaslasfabricaseindustriasmetaluegicasestandedicadasalafabricaciondematerialdeguerraentreotrasdespuesdelasmasconocidasestanlafabricaderadiadoresrocaencastelldefelalacasasbampyunafabricadebombasdemanoenarenyademartambiensetrabajamuchoenelparquedeartilleriadondetrabajanunosquinientosobrerosyenlaantiguacasadaviddedicadatambienadepositosdematerialbelicoplanamayor.
5/10/2018 PROYECTO - slidepdf.com
http://slidepdf.com/reader/full/proyecto-55a0c0597c30d 78/88
Anexo B
- 64 -
UNIVERSIDAD PONTIFICIA COMILLASESCUELA TÉCNICA SUPERIOR DE INGENIERÍA (ICAI)
INGENIERO INDUSTRIAL
C ASO ESTUDIO 2
Caracteres: 511
Frecuencias: Desconocidas
barcotodaconfianzaenpuertoibizaqueislaestacasiabandonadahabiendoseretiradotropasrojastodoibizabanderasblancasdicenpuedeocuparsesinresistenciapidennolesbombardeenestudienmediosocorrollevandounacompañiayarmamentosymillonymedio
cartuchosparaarmarcuatromilpaisanosevitarrepeticioncobardeentregaconconcapitanyjefedetodocaracterarmamentodebellevarseaunqueextrangeroysifueseposibletropatambienvestidospaisanoconuniformesenmaletasdadaescasezviveresibizaenvieitaliagestortrataraprovisionamientoconnuestrorepresentanteroma.
Barco toda confianza en puerto Ibiza que isla está casi abandonada habiéndose
retirado tropas rojas. Todo Ibiza banderas blancas, dicen puede ocuparse sin
resistencia. Piden no les bombardeen. Estudien medios socorro llevando una
compañía y armamentos y millón y medio cartuchos para armar cuatro mil
paisanos. Evitar repetición cobarde. Entrega con capitán y jefe de todo carácter.
Armamento debe llevarse aunque extranjero y si fuese posible tropas también
vestidos paisano con uniformes en maletas. Dada escasez de víveres en Ibiza,
envíe Italia gestor tratar aprovisionamiento con nuestro representante Roma.
5/10/2018 PROYECTO - slidepdf.com
http://slidepdf.com/reader/full/proyecto-55a0c0597c30d 79/88
Anexo B
- 65 -
UNIVERSIDAD PONTIFICIA COMILLASESCUELA TÉCNICA SUPERIOR DE INGENIERÍA (ICAI)
INGENIERO INDUSTRIAL
E JEMPLOS DE LEGIBILIDAD
A partir del texto del caso estudio 2, se presentan algunos ejemplos de tipos de
legibilidad.
Legibilidad nula:
mandorotadoiflaivaeicbenrolmlvaybelspaesradaslamaitoiatajamleitosenerlnatorn
ocasnowasrotolmlvamaitenasmpaidastldeicbeteodbcanseslineslsreidlaclteiiopesm
oumanteeiesrbtleiuetlosodonnoppehaitobiadoucaxlaganuaueirosgulppoiguetlodanrbdjoscanaanuandbarnoulpcalsaiosehlrannecerldloidomanteeirnezadoidoidaclrai
gwefeterotodanadrenanuaueirotemeppehanseabiybeekrnaizenogslfbesecoslmpern
ocaraumleigesrltoscalsaiodoibilfonueseiuaperastataesdasevglheneslmlvaeihlelrap
lazesronrnaranacnohlsloiauleirodoiibesrnonecnoya
Legibilidad insuficiente:
marxotocaxonñianwaenpdertoimiwazdeislaestaxasiamanconacauamiencoseretira
cotropasrovastocoimiwamancerasmlanxascixenpdeceoxdparsesinresistenxiapicen
nolesmoymarceenestdcienyeciosoxorrollebancodnaxoypajiafaryayentosfyillonfyec
ioxartdxuosparaaryarxdatroyilpaisanosebitarrepetixionxomarceentrehaxonxonxa
pitanfveñecetocoxaraxteraryayentocemellebarseadnzdeeqtranherofsiñdeseposimle
tropataymienfesticospaisanoxondniñoryesenyaletascacaesxasewfiberesimiwaenbi
eitaliahestortrataraprobisionayientoxonndestrorepresentanteroya
Legibilidad aceptable:
marcotodacongianhaenpuertoimihaqueislaestacasiamandonadazamiendoseretira
dotropasroyastodoimihamanderasmlancasdicenpuedeocuparsesinresistenciapiden
nolesmoñmardeenestudienñediosocorrollevandounacoñpajiabarñañentosbñillonb
ñediocartuczosparaarñarcuatroñilpaisanosevitarrepeticioncomardeentrefaconcon
capitanbyegedetodocaracterarñañentodemellevarseaunqueektranferobsigueseposi
mletropatañmienbestidospaisanoconunigorñesenñaletasdadaescasehbiveresimiha
envieitaliafestortrataraprovisionañientoconnuestrorepresentanteroña
5/10/2018 PROYECTO - slidepdf.com
http://slidepdf.com/reader/full/proyecto-55a0c0597c30d 80/88
Anexo B
- 66 -
UNIVERSIDAD PONTIFICIA COMILLASESCUELA TÉCNICA SUPERIOR DE INGENIERÍA (ICAI)
INGENIERO INDUSTRIAL
Legibilidad perfecta:
barcotodaconfiangaenpuertoibigazueislaestacasiabandonadahabiendoseretiradot
ropasrojastodoibigabanderasblancasdicenpuedeocuparsesinresistenciapidennoles
bombardeenestudienmediosocorrollevandounacompañiayarmamentosymillonyme
diocartuchosparaarmarcuatromilpaisanosevitarrepeticioncobardeentreqaconcapi
tanyjefedetodocaracterarmamentodebellevarseaunzueextranqeroysifueseposibletr
opatambienyestidospaisanoconuniformesenmaletasdadaescasegyiveresibigaenviei
taliaqestortrataraprovisionamientoconnuestrorepresentanteroma
5/10/2018 PROYECTO - slidepdf.com
http://slidepdf.com/reader/full/proyecto-55a0c0597c30d 81/88
Bibliografía
- 67 -
UNIVERSIDAD PONTIFICIA COMILLASESCUELA TÉCNICA SUPERIOR DE INGENIERÍA (ICAI)
INGENIERO INDUSTRIAL
BIBLIOGRAFÍA
[1] Fuensanta, José Ramón Soler and Espiau, Francisco Javier López-Brea (2007)
'The Strip Cipher-The Spanish Official Method' , Cryptologia, 31: 1, 46 — 56
[2] Fuensanta, José Ramón Soler y Espiau, Francisco Javier López-Brea. ‘Soldados
sin rostro’ (2007)
[3]
Goldberg, David E. ‘Genetic algorithms in search, optimization, and machine
learning’ Reading [etc.]: Addison-Wesley, cop. 1989.
[4] P. Serrano, ―Criptografía y perlustración‖. Madrid: La Xilográfica, 1953
[5] J. Carmona, ―Tratado de criptografía con aplicación especial al ejército‖.
Madrid: Sucesores de Rivadeneyra, 1894.
[6] S. Peleg and A. Rosenfeld, " Breaking substitution ciphers using a relaxation
algorithm," Commun. ACM, vol. 22 (11), pp. 598 – 605, 1979.
[7]
T. Jakobsen, " A fast method for cryptanalysis of substitution ciphers,"Cryptologia, vol. 19, (3), pp. 265 – 274, 1995.
[8] R. Toemeh and S. Arumugam, " Applying Genetic Algorithms for Searching Key
Space of Polyalphabetic Substitution Ciphers," The international Arab Journal of
Information Technology, vol. 5 (1), 2008.
[9] A. J. Bagnall, "The applications of genetic algorithms in cryptoanalysis," 1996.
[10] Brian Carter and Tanja Magoc ―Classical Ciphers and Cryptanalysis‖ September
11, 2007
[11] Spillman, R., Jansses, M., and Kepner, M. ―Use of genetic algorithm in the
cryptoanalysts of simple substitution ciphers‖, Cryptologia, vol. 17, issue 1,
January 1993, 31-34
[12] Clark, A., “ Modern optimization algorithms for cryptanalysis,” Proceedings of
the 1994 Second Australian and New Zealand Conference on Intelligent
Information Systems, Nov. 29-Dec, 2,1994 Page(s):258 - 262.
[13] http://lancet.mit.edu/ga/
5/10/2018 PROYECTO - slidepdf.com
http://slidepdf.com/reader/full/proyecto-55a0c0597c30d 82/88
Bibliografía
- 68 -
UNIVERSIDAD PONTIFICIA COMILLASESCUELA TÉCNICA SUPERIOR DE INGENIERÍA (ICAI)
INGENIERO INDUSTRIAL
[14] Kreher, D., Stinson, D., ―Combinatorial Algorithms: Generation, Enumeration,
and Search‖ CRC Press, 1999.
[15] G. Terry Ross and Richard M. Soland ― A branch and bound algorithm for the
generalized assignment problem‖ Mathematical Programming Volume 8,
Number 1, 91-103, DOI: 10.1007/BF01580430
5/10/2018 PROYECTO - slidepdf.com
http://slidepdf.com/reader/full/proyecto-55a0c0597c30d 83/88
Í NDICE DEL PRESUPUESTO
1
UNIVERSIDAD PONTIFICIA COMILLAS
ESCUELA TÉCNICA SUPERIOR DE INGENIERÍA (ICAI)INGENIERO INDUSTRIAL
ÍNDICE DEL PRESUPUESTO
Capítulo 1 Mediciones ...................................................................................... 2 Capítulo 2 Precios unitarios ............................................................................. 3 Capítulo 3 Sumas parciales .............................................................................. 4 Capítulo 4 Presupuesto general ....................................................................... 5
5/10/2018 PROYECTO - slidepdf.com
http://slidepdf.com/reader/full/proyecto-55a0c0597c30d 84/88
Mediciones
2
UNIVERSIDAD PONTIFICIA COMILLAS
ESCUELA TÉCNICA SUPERIOR DE INGENIERÍA (ICAI)INGENIERO INDUSTRIAL
Capítulo 1 MEDICIONES
En este capítulo se muestran los recursos empleados en el desarrollo del proyecto.
Al ser un proyecto de investigación se tienen en cuenta únicamente los recursos
humanos empleados.
Horas de trabajo
Partida Horas
Documentación e investigación 110
Formulación y programación de los modelos 240
Testeo de los programas 50
Redacción de la memoria 110
Tabla 1- Horas de trabajo
5/10/2018 PROYECTO - slidepdf.com
http://slidepdf.com/reader/full/proyecto-55a0c0597c30d 85/88
Precios unitarios
3
UNIVERSIDAD PONTIFICIA COMILLAS
ESCUELA TÉCNICA SUPERIOR DE INGENIERÍA (ICAI)INGENIERO INDUSTRIAL
Capítulo 2 PRECIOS UNITARIOS
En este capítulo se indican los costes unitarios de cada una de las partes del
Capítulo 1 para poder calcular el coste final. Éstas se han agrupado en dos precios,
el precio por hora de ingeniería y el precio de escritura y maquetación.
1. Ingeniería:
Documentación e investigación. Formulación y programación de los modelos1.
Testeo de los programas.
2. Escritura y maquetación
Redacción de la memoria
Precio unitario de ingeniería
Precio unitario de redacción:
En donde se ha supuesto un salario bruto de 30.000€ para la labor de ingeniería y
20.000€ para la redacción. Para calcular el coste, se debe tener en cuenta además
el importe pagado por la empresa a la seguridad social. (0.35 veces el sueldo).
La Tabla 2 resume los resultados.
1 Se ha cobrado el coste de programación a coste de ingeniería por tratarse de un proyecto deinvestigación, donde ambas tareas están unidas.
5/10/2018 PROYECTO - slidepdf.com
http://slidepdf.com/reader/full/proyecto-55a0c0597c30d 86/88
Precios unitarios
4
UNIVERSIDAD PONTIFICIA COMILLAS
ESCUELA TÉCNICA SUPERIOR DE INGENIERÍA (ICAI)INGENIERO INDUSTRIAL
Precios unitarios
Actividad Precio [€/hora]
Ingeniería 22,9
Escritura y maquetación 15,3
Tabla 2- Precios unitarios
5/10/2018 PROYECTO - slidepdf.com
http://slidepdf.com/reader/full/proyecto-55a0c0597c30d 87/88
Sumas parciales
5
UNIVERSIDAD PONTIFICIA COMILLAS
ESCUELA TÉCNICA SUPERIOR DE INGENIERÍA (ICAI)INGENIERO INDUSTRIAL
Capítulo 3 SUMAS PARCIALES
En base a lo expuesto en los dos Capítulos anteriores, la Tabla 3 refleja el importe
parcial de cada una de las actividades.
Importe por partida
Actividad Horas[€/hora] Total [€]
Documentación e investigación 110 22,9 2.519,80
Formulación y programación de los modelos 240 22,9 5.497,74
Testeo de los programas 50 22,9 1.145,36
Redacción de la memoria 110 15,3 1.679,86
Tabla 3- Importe parcial de cada partida
5/10/2018 PROYECTO - slidepdf.com
http://slidepdf.com/reader/full/proyecto-55a0c0597c30d 88/88
Presupuesto general
6
UNIVERSIDAD PONTIFICIA COMILLAS
ESCUELA TÉCNICA SUPERIOR DE INGENIERÍA (ICAI)INGENIERO INDUSTRIAL
Capítulo 4 PRESUPUESTO GENERAL
El presupuesto general es la suma de todas las partidas.
Coste total
Actividad [€] Documentación e investigación 2.519,80
Formulación y programación de los modelos 5.497,74
Testeo de los programas 1.145,36
Redacción de la memoria 1.679,86
Total 10.842,76
Tabla 4- Presupuesto
El presupuesto general de este proyecto es de 10.842,76 Є.
DIEZ MIL OCHOCIENTOS CUARENTA Y DOS CON SETENTA Y SEIS
EUROS.