tesis doctoral - archivo digital upm - archivo digital upmoa.upm.es/1032/1/10198501.pdf · la...

171
tESIS DOCTORAL METODOLOGÍA DE LOS SISTEMAS DE PRODUCCIÓN PARA CRIPTOGRAFIADO ÓPTIMO VICENTE MARTÍNEZ ORGA Licenciado en Informática prttsantada en la FACULTAD DE INFORMÁTICA de Id UNIVERSIDAD POLITÉCNICA DE MADRID para la obtención del GRADO DE DOCTOR EN INFORMÁTICA MADRID, NOVIEMBRE DE 1985

Upload: others

Post on 22-May-2020

5 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: tESIS DOCTORAL - Archivo Digital UPM - Archivo Digital UPMoa.upm.es/1032/1/10198501.pdf · la criptografía, en principio alejados del dominio de la Inteligencia Artificial. Después

tESIS DOCTORAL

METODOLOGÍA DE LOS SISTEMAS

DE PRODUCCIÓN PARA

CRIPTOGRAFIADO ÓPTIMO

VICENTE MARTÍNEZ ORGA Licenciado en Informática

prttsantada en la

FACULTAD DE INFORMÁTICA de Id

UNIVERSIDAD POLITÉCNICA DE MADRID

para la obtención del

GRADO DE DOCTOR EN INFORMÁTICA

MADRID, NOVIEMBRE DE 1985

Page 2: tESIS DOCTORAL - Archivo Digital UPM - Archivo Digital UPMoa.upm.es/1032/1/10198501.pdf · la criptografía, en principio alejados del dominio de la Inteligencia Artificial. Después

^ T S DOCTORAL

METODOLOGÍA DE LOS SISTEMAS DE PRODUCCIÓN

PARA CRIPTOGRAFIADO ÓPTIMO"

Por

VICENTE MARTÍNEZ ORGA

Licenciado en Informática -I'

por la

Facultad de Informática de Madrid

presentada en la

FACULTAD DE INFORMÁTICA

déla

UNIVERSIDAD POLITÉCNICA DE MADRID

para la obtención del

GRADO DE DOCTOR EN INFORMÁTICA

UUiVERSlDi^D POÜTECHiCA DE MADRID FACULTAD D.ti SMFORMATÍCA

BIBLIOTECA

!••;• cocüí;;¿w l ü _.

SlGKATURA-T-'¿2

jviaünd, ¡Noviembre de 1985

Page 3: tESIS DOCTORAL - Archivo Digital UPM - Archivo Digital UPMoa.upm.es/1032/1/10198501.pdf · la criptografía, en principio alejados del dominio de la Inteligencia Artificial. Después

TESIS DOCTORAL

"METODOLOGÍA DE LOS SISTEMAS DE PRODUCCIÓN

PARA CRIPTOGRAFIADO ÓPTIMO"

A UTO R Vicente Martínez Orga

TUTOR Antonio Insúa Negrao ;

TRIBUNAL CALIFICADOR

PRESIDENTE: Rafael Portaencasa Baeza

VOCALES: Ángel Jordán Goñi

Luis Mfi Laíta de la Rica

Manuel Diaz y Diez de Ülzurrun

SECRETARIO: Juan Pazos Sierra

Page 4: tESIS DOCTORAL - Archivo Digital UPM - Archivo Digital UPMoa.upm.es/1032/1/10198501.pdf · la criptografía, en principio alejados del dominio de la Inteligencia Artificial. Después

- I

PLANTEAMIENTO Y RESUMEN

El presente trabajo se inscribe dentro del área de Inteligencia Artificial y,

más particularmente, dentro del campo de los Sistemas Basados en el Conocimiento.

El objetivo es aplicar la metodología basada en los principios arquitecturales

de construcción de Sistemas Basados en el Conocimiento (es decir, separación de los

conocimientos de los procedimientos que los manejan), a problemas, como es el caso de

la criptografía, en principio alejados del dominio de la Inteligencia Artificial.

Después de hacer un estudio crítico del estado de la cuestión en el campo de

la criptografía, se construye con la metodología propuesta un sistema criptográfico que

es óptimo, según los criterios propuestos por Shannon, eficiente, adaptable y

transportable.

El énfasis principal del trabajo se pone, además de en el establecimiento de

la metodología propuesta, en introducir en el sistema dos tipos de conocimientos

públicos:

1. El uso de la transformación de variable aleatoria para conseguir

criptogramas con distribución uniforme de sus símbolos, con lo que el

sistema resulta inviolable.

2. El principio del valor relativo de los sistemas de numeración para romper

la relación contextual de los símbolos del criptograma.

Con todo ello, se obtiene un sistema de cifrado de llave pública "cuasi-

óptimo", aplicable tanto a almacenamiento como a transmisión de información. Este

Page 5: tESIS DOCTORAL - Archivo Digital UPM - Archivo Digital UPMoa.upm.es/1032/1/10198501.pdf · la criptografía, en principio alejados del dominio de la Inteligencia Artificial. Después

- II -

sistema, es instrumentable, según convenga, utilizando "software" o "hardware", en

cualquier tipo de computador, incluso personal, lo que le confiere al sistema un

carácter de generalidad hasta ahora no conseguido.

Como resultado final, se ha solicitado del Registro de la Propiedad

Industrial, la concesión de una patente para el dispositivo "hardware" del mismo.

En resumen, se puede decir que la hipótesis de trabajo establecida, la

estructura de sistemas basados en el conocimiento es aplicable a otros campos distintos

de los de la inteligencia artificial. Esto amplia el campo de utilización de estas

metodologías más allá de lo esperado. ;

Page 6: tESIS DOCTORAL - Archivo Digital UPM - Archivo Digital UPMoa.upm.es/1032/1/10198501.pdf · la criptografía, en principio alejados del dominio de la Inteligencia Artificial. Después

- I I I

ABSTRACT

The present thesis can be framed within the AI field and more specifically

in the field of based-knowledge systems.

The objective is to apply the methodology based on the architectural

principies of based-knowledge systems -i.e. to sepárate knowledge from the procedures

used for that knowledge- to problems not related to the AI domain, such as

cryptography.

After making a critical study of the state of the art, a cryptographic system

-r is designed with the proposed methodology. This system, according to Shannon's

Gritería, is efficient, adaptable and portable.

The emphasis has been laid on implementing the proposed methodology and

on entering two kinds of public knowledge at the system:

1. The change of the aleatory variable in order to obtain cryptograms with

homogeneous distribution of its symbols so that the system is inviolable.

2. The application of the relative valué principies that numeration systems

have in order to break the contextual relationship of the cryptogram

symbols.

Henee, a coded system of public key -almost optimum- is obtained and can

be applied both to store and transmit data. This system can be implemented in any

Computer, even in P.Cs, at convenience by using software or hardware. This provides

the system a general character nót obtained up to this moment.

Page 7: tESIS DOCTORAL - Archivo Digital UPM - Archivo Digital UPMoa.upm.es/1032/1/10198501.pdf · la criptografía, en principio alejados del dominio de la Inteligencia Artificial. Después

- IV -

Finally» a patent of the hardware device has been applied for at the

Reglster of Mortgages.

To sum up, it can be said that the hypothesis established, -i.e. structure of

Systems based on knowl'edge- is applicable to many different áreas in A.I. This fact

expands the application of these methodologies more than it is expected.

4

Page 8: tESIS DOCTORAL - Archivo Digital UPM - Archivo Digital UPMoa.upm.es/1032/1/10198501.pdf · la criptografía, en principio alejados del dominio de la Inteligencia Artificial. Después

- V -

ÍNDICE

Página

CAPITULO 1. INTRODUCCIÓN.

1.1. Información. 1

1.2. Necesidad de ses^ridad en sistemas informáticos. 14

1.3. Amenaza a la seguridad y privacidad de la información. 18

1.4. Implicaciones sociales y legales. 22

1.5. Propósito del trabajo. 26

CAPITULO 2. ESTADO DE LA CUESTIÓN. ^

2.1. Antecedentes y métodos afines a la criptografía. 28

2.2. Criptografía. 29

2.3. Métodos tradicionales. 35

2.3.1. Transposición. 35

2.3.1.1. Sistemas de cifrado por líneas. 36

2.3.1.2. Sistemas de cifrado matriciales. 37

2.3.1.3. Sistema de cifrado por columnas a partir de

la llave. 37

2.3.2. Sustitución. 38

2.3.2.1. Monoalfabéticos. 39

2.3.2.2. Polialfabéticos. 40

2.3.2.3. Sustitución digráfica. 41

2.3.3. Sistemas híbridos. 43

2.4. Esquemas basados en el computador. 44

2.4.1. Esquemas aritméticos. 45

-j 2.4.1.1. Suma y resta. 45

2.4.1.2. Multiplicación y división. 46

Page 9: tESIS DOCTORAL - Archivo Digital UPM - Archivo Digital UPMoa.upm.es/1032/1/10198501.pdf · la criptografía, en principio alejados del dominio de la Inteligencia Artificial. Después

VI -

Página

2.4.2. Esquemas lógicos. 47

2.4.3. Esquemas matriciales. 49

2.5. Técnicas avanzadas. 49

2.5.1. Método de la llave en memoria. 50

2.5.2. Método de llave infinita. 52

2.5.3. El DES ("Data Encryption Standar"). 53

2.5.3.1. Génesis. 53

2.5.3.2. El algoritmo. 55

2.5.3.3. La problemática DES. 56

2.5.4. Algoritmos de llave pública. ^^' 58

2.5.4.1. Bases teóricas. 58

2.5.4.2. Propiedades de un sistema de cifrado de llave

pública. 62

2.5.4.3. Algoritmo RSA. 63

2.5.4.4. Método de Merkle y Hellman. 66

2.5.4.5. Problemas de los sistemas de llave

pública. 67

CAPITULO 3. SISTEMA PROPUESTO.

3.1. Hipótesis de trabajo. 68

3.2. El conocimiento del sistema. 70

3.3. Principio del valor relativo de los sistemas de numeración. 75

3.4. Transformación de variable aleatoria. 76

3.5. Números aleatorios. 79

3.5.1. Generalidades. 79

^ 3.5.2. Generación de números aleatorios uniformes:

Método de las congruencias. 81

Page 10: tESIS DOCTORAL - Archivo Digital UPM - Archivo Digital UPMoa.upm.es/1032/1/10198501.pdf · la criptografía, en principio alejados del dominio de la Inteligencia Artificial. Después

- VII

Página

3.5.3. Elección de los parámetros. 84

3.5.4. El método de generación propuesto. 92

3.5.5. "Test" de aleatoriedad. 99

3.5.5.1. Introducción. 99

. 3.5.5.2. "Test" de X2. 100

3.5.5.3. Test espectral. 104

3.6. Sistemas de producción. 122

3.6.1. Arquitectura de los sistemas de producción. 122

3.6.2. Ejemplo de funcionamiento de un motor de

inferencias. 131

3.6.2.1. Ciclo elemental de trabajo. 132

3.6.2.2. Encadenamiento de ciclos en vistas a

verificar las hipótesis iniciales. 134

3.6.3. Propagación de conocimientos. 136

3.7. El sistema propuesto. 138

CAPITULO 4. RESULTADOS Y FUTURAS LINEAS DE INVESTIGACIÓN.

4.1. Resultados y conclusiones. 144

4.2. Futuras líneas de investigación. 155

BIBLIOGRAFÍA. 156

Page 11: tESIS DOCTORAL - Archivo Digital UPM - Archivo Digital UPMoa.upm.es/1032/1/10198501.pdf · la criptografía, en principio alejados del dominio de la Inteligencia Artificial. Después

VIII

LISTA DE SÍMBOLOS

*

=

ffe

log

log2

log n

I

e

A

*

/

®

M

V

A

-*

<—

/

**

0

54(10

00

i

C

£

>

s s

3 , '

1 1 1

igual

desigual

equivalente 0 módulo

no equivalente a

logaritmo decimal

logaritmo en base 2

logaritmo neperiano

suma torio

integral

número e

incremento

producto

cociente

suma lógica

negación

disyunción

conjunción

implicación

asignación

función

exponenciación

cero 0 vacío

base de numeración

infinito

pertenece

contenido en

menor o igual

mayor 0 igual

aproximadamente

existe en

tal que

módulo 0 valor absoluto

Page 12: tESIS DOCTORAL - Archivo Digital UPM - Archivo Digital UPMoa.upm.es/1032/1/10198501.pdf · la criptografía, en principio alejados del dominio de la Inteligencia Artificial. Después

1 -

"Vivir verdaderamente es vivir con la información adecuada"

(N. Wiener)

CAPITULO 1. INTRODUCCIÓN.

1.1. Información.

Se ha convertido en un lugar común el decir que la cultura contemporánea

está marcada por una tecnología computacional omnipresente. En efecto, las

sociedades de tecnología avanzada son ya oficialmente calificadas por la OCDE de

"Sociedades de Inforitiación". La razón es clara: En ellas predominan las bien llamadas

"Industrias del conocimiento" o "blandas", por oposición a las tradicionales, duras,

contaminantes, con alto consumo energético y abundante necesidad de materias

primas como consumo, y uso de abundante mano de obra.

Los nuevos "productos" son: informaciones, datos y conocimientos

elaborados, imágenes y concepciones nuevas, a la par de crecientes y rápidamente

cambiantes, con un gran número de innovaciones tecnológicas y sociales puestas en

circulación. En este sentido, se puede decir que la información, y el conocimiento que

dicha información es susceptible de aportar, son la base de toda sociedad moderna.

Esto es tan cierto que para muchos, entre los que se encuentra D.Bell, el principal

recurso estratégico de las sociedades postindustriales ya no es el capital financiero,

sino el conocimiento. Pero no puede existir conocimiento, sin su soporte previo; la

información.

Page 13: tESIS DOCTORAL - Archivo Digital UPM - Archivo Digital UPMoa.upm.es/1032/1/10198501.pdf · la criptografía, en principio alejados del dominio de la Inteligencia Artificial. Después

Además el efectivo uso de la información produce en toda organización la

posibilidad de disminuir su nivel de entropía y, en consecuencia, la capacidad de

aumentar, para bien y para mal, la eficiencia de sus actuaciones. En efecto, los físicos

saben que todo sistema aislado cambia de modo tal que se acerca a un estado de

reposo definido, que es un estado de equilibrio. Este estado no corresponde a una

pérdida sino a una degradación de la energía. El cambio de energía durante este

proceso irreversible és la diferencia entre la entropía al final y la entropía al

comienzo. La medida de la entropía es, por lo tanto, una medida de una diferencia

entre un estado inicial y un estado final. El valor de dicha medida viene dado por la

fórmula:

S = KlogD ^^

Siendo S la entropía, K la constante universal de Boltzmann cuyo valor es

1,38 X 10~16 expresada en ergios por grado centígrado, que es igual a la constante de

los gases perfectos dividido por el número de Avogadro, y D la medida del desorden

atómico. El estado de reposo al cual un sistema aislado tiene la tendencia a llegar,

corresponde a una entropía máxima, esto es, a un desorden máximo [Brillouin 3].

Ahora bien, como la entropía es una medida de desorden o estado perfecto

de equilibrio, guarda relación con la probabilidad. En un sistema cerrado que

evoluciona desde un estado menos probable a un estado más probable, es obvio que la

probabilidad aumenta pero también lo hace la entropía. La relación entre probabilidad

y entropía viene dada por la fórmula de Boltzmann-Planck:

S = KlnP

Page 14: tESIS DOCTORAL - Archivo Digital UPM - Archivo Digital UPMoa.upm.es/1032/1/10198501.pdf · la criptografía, en principio alejados del dominio de la Inteligencia Artificial. Después

- 3 -

Siendo P el número de "complexiones elementales" que se corresponden a

las configuraciones discretas; es decir, a los saltos del sistema atómico desde una

estructura inestable a otra.

También es cómodo dar una expresión para la inversa de la entropía esto

es, para el grado de orden atómico o la disponibilidad para realizar trabajo. Esta

entropía negativa "negaentropía", representa la calidad o grado de energía y su valor

será:

N = K log \ID

r El concepto de entropía, presenta actualmente unas relaciones muy

estrechas con la cantidad de información. Estas relaciones, han sido planteadas desde

las publicaciones de Shannon, ya que él denominaba a la función H "entropía del

mensaje" o "entropía de información". La razón de esto era, evidentemente, la

analogía formal entre la definición de su función por la fórmula:

y la entropía termodinámica por la fórmula de Boltzmann:

S= -K^ pii) Inpii)

siendo las p(i) de la fórmula de Shannon definidas como las probabilidades de los

símbolos utilizados en los mensajes. Las p(i) de Boltzmann, se definen en

termodihámica estadística de la siguiente manera: Cualquier sistema, entendiendo por

tal una "muestra" de materia en condiciones de cambio y transformaciones de energía

Page 15: tESIS DOCTORAL - Archivo Digital UPM - Archivo Digital UPMoa.upm.es/1032/1/10198501.pdf · la criptografía, en principio alejados del dominio de la Inteligencia Artificial. Después

- 4 -

y materia bien determinados, puede encontrarse en un gran número de estados i,

caracterizado cada uno por una energía Ef. Por ejemplo, una cierta cantidad de gas

contenido en un cierto volumen V a la temperatura T, puede encontrarse en diferentes

estados, todos compatibles con los mismos valores de la masa de gas, de V y de T que

definen el sistema. Cada uno de los estados está caracterizado por un valor particular,

de la energía interna del sistema, o, mejor aún, por un valor particular de la cantidad

de energía que el sistema es susceptible de liberar, si se le deja evolucionar

espontáneamente [Barrow 2].

El problema se plantea debido a que las magnitudes según las cuales el

sistema está especificado: número de moléculas o masa de gas M, volumen que ocupa

V y temperatura T, son magnitudes macroscópicas. Ahora ^ n , el sistema está

constituido por un gran húmero de partículas microscópicas o, más bien,

submicroscópicas: las moléqulas del gas. Cada una de ellas se encuentra en un estado

particular, definido por su posición en el espacio y su velocidad o, más precisamente,

su cantidad de movimiento. Estas posiciones y velocidades son, según el principio de

indeterminación de Heisenberg [Gamow 12], [Heisemberg 17], inaccesibles a la medida.

Todo el problema de la termodinámica estadística estriba en mostrar cómo las

variables microscópicas, posición y cantidad de movimiento, determinan las

magnitudes macroscópicas medibles. Dado que el estado microscópico de un sistema

en un instante dado, posición y cantidad de movimiento de cada una de sus moléculas,

no puede ser conocido; toda magnitud medida sobre el sistema, se considera como una

media de todos los estados microscópicos posibles en los cuales este sistema puede

encontrarse.

Dicho de otra forma, se define un conjunto termodinámico, como un

número muy grande de sistemas idénticos desde el punto de vista de sus

especificaciones macroscópicas, pero diferentes desde el punto de vista de un estado

microscópico. Estos estados microscópicos, están caracterizados por distribuciones

Page 16: tESIS DOCTORAL - Archivo Digital UPM - Archivo Digital UPMoa.upm.es/1032/1/10198501.pdf · la criptografía, en principio alejados del dominio de la Inteligencia Artificial. Después

- 5 -

diferentes de las moléculas sobre las posiciones y velocidades que pueden tener. Uno

de los postulados de base de la termodinámica estadística, consiste en identificar una

magnitud macroscópica medible con el valor medio de esta magnitud sobre todos los

estados del conjunto. Además, una medida necesita, en general, un tiempo muy largo

respecto a las velocidades de las moléculas. Este valor medio sobre el conjunto de los

estados, se identifica también con el valor medio en el tiempo de la magnitud

macroscópica del mismo sistema, cuyos estados microscópicos varían evidentemente

de un estado macroscópico a otro.

En el ejemplo del gas anterior, número de moléculas, volumen y

temperatura están impuestas desde el exterior y def-inen el conjunto. Un sistema,

puede encontrarse en un gran número de microestados diferente|ry toda medida sobre

este gas se considera como el resultado de una media sobre todos estos microestados.

Esta media depende, evidentemente, de que la distribución de los microestados tenga

la misma probabilidad o que, al contrario, algunos sean más frecuentes que otros. Es

esta distribución de microestados, la que está determinada por las condiciones

macroscópicas de la experiencia, y la que establece que las otras magnitudes físicas

sean susceptibles de ser medidas en esta muestra: presión, energía mecánica, calor,

energía eléctrica, etc. La elección de magnitudes macroscópicas impuestas que

definen el conjunto, y de las susceptibles de variar, que son el objeto de las medidas

es, evidentemente, arbitrario y está en general, dictado por las condiciones de la

experiencia. Así el ejemplo elegido, corresponde al caso de experiencias realizadas a

temperaturas y volumen constante sobre una muestra cerrada; es decir, no susceptible

de cambiar materia con su entorno pero donde son posibles cambios de energía. Sea

como fuere, el paso de las variables microscópicas a las magnitudes macroscópicas,

parámetros, y variables, se hace por intermedio de una distribución de los

microestados posibles del sistema sobre el conjunto construido a partir de este

sistema;' A cada microestado i está asociada una probabilidad p(i). Es así que la energía

E de un sistema, en tanto que magnitud macroscópica medible, es considerada como la

Page 17: tESIS DOCTORAL - Archivo Digital UPM - Archivo Digital UPMoa.upm.es/1032/1/10198501.pdf · la criptografía, en principio alejados del dominio de la Inteligencia Artificial. Después

-6 -

media E de las energias &• correspondientes a cada uno de los estados, y está dada por

la fórmula:

£ = 2 p (í) e.

De la misma forma, a cada macroestado de un grupo, definido por los

valores medios de uno o más de sus atributos, le corresponden en general varios

microestados del grupo. Por ejemplo, a cada macroestado del movimiento de las

moléculas de un cuerpo, definido por la velocidad media de sus moléculas, o, lo que es

lo mismo, su temperatura, le corresponden muchos microestados de un movimiento

molecular. No es, pues, sorprendente que en un cuerpo de billones y billones de

moléculas haya un gran número de microestados distintos de movimiento, cada uno de

los cuales puede pertenecer a un macroestado con la misma velocidad media por

molécula. El número de distintos microestados que corresponden a un macroestado

dado, definido por cualquier temperatura T, se conoce como "probabilidad

termodinámica". La razón de llamarse "probabilidad" se basa en la perogullada de que,

cuanto mayor sea el número de microestados correspondientes al macroestado definido

por T, mayor será la probabilidad de que cualquier microestado elegido al azar,

manifieste la característica externa de ese macroestado: T.

Una magnitud llamada "entropía", había sido definida antes, a partir del

estudio de las máquinas térmicas, por la fórmula:

dS = dQ/T

donde dQ representa una cantidad de calor recibida por el sistema, T su temperatura

absoluta y dS la variación de entropía del sistema. El interés de esta definición residía

en que dS es una diferencial total. En efecto, gracias a eso los cambios de calor y las

Page 18: tESIS DOCTORAL - Archivo Digital UPM - Archivo Digital UPMoa.upm.es/1032/1/10198501.pdf · la criptografía, en principio alejados del dominio de la Inteligencia Artificial. Después

- 7 -

transformaciones de energía haciendo intervenir el calor, pueden ser calculadas

cómodamente a partir de la integral de esta diferencial

- \ dQ/T

lo que de otra manera sería imposible, puesto que en general dQ no es una diferencial

total. En termodinámica estadística, se demuestra que, cualquiera que sea el conjunto

termodinámico considerado, esta magnitud está unida a la distribución de los

microestados por la fórmula:

S= -K^pd) Inpií)

Así, mientras que la energía temodinámica E de un sistema, está definida a

partir de las energías mecánicas e ^ de los microestados, la entropía es una función que

no depende más que de las probabilidades p(i). En otras palabras, es una magnitud

macroscópica que no solamente está ligada a la distribución estadística de los

microestados, como las otras, sino que expresa esta distribución y no expresa más que

eso.

Un problema aún no resuelto de naturaleza fundamental, se origina en una

paradoja básica de la termodinámica. Eddington, llamó a la entropía "La flecha del

tiempo". De hecho, es la irreversibilidad de los acontecimientos físicos, expresadas por

la función entropía, la que da al tiempo su dirección. Sin entropía, es decir, en un

Universo de procesos completamente reversibles, no habría diferencia entre pasado y

futuro. Sin embargo, las funciones de entropía no incluyen explícitamente al tiempo.

Esto pasa tanto con la clásica función de entropía para procesos cerrados de Clausius,

como con la función generalizada para sistemas abiertos y termodinámica irreversible

Page 19: tESIS DOCTORAL - Archivo Digital UPM - Archivo Digital UPMoa.upm.es/1032/1/10198501.pdf · la criptografía, en principio alejados del dominio de la Inteligencia Artificial. Después

- 8 -

debida al premio Nobel Prigogine. El único intento de colmar este vacío se debe a

Reik, aunque hasta el momento sin mucho éxito.

El problema de las relaciones de la entropía y las cantidades de

información puede ser explicitado, por el planteamiento de las cuestiones siguientes:

a). ¿La analogía entre las fórmulas de Shannon y Boltzmann no es más que

una analogía formal, o, antes bien, revela una relación profunda entre

las nociones que sirven a definir?.

b). Si esta analogía no es formal y fortuita, la relación entre entropía e

información es una identidad pura y simple co^'las variantes de los

factores K y los log en base 2 y neperianos, o bien es una relación más

elaborada.

La importancia de estas cuestiones, hoy en día sujetas a debate, es muy

grande tanto desde el punto de vista de la teoría de la información como de la

termodinámica. En efecto, la teoría de la información, en principio, no es más que una

teoría estadística desarrollada fuera del cuadro conceptual de las ciencias físicas. Un

parentesco real entre cantidad de información y entropía significa que no solamente

esta noción de información tiene un interés práctico en el tratamiento estadístico de

ciertos problemas de comunicación, sino que expresa una realidad física universal en

relación con las magnitudes físicas mensurables tales como: energía, temperatura, etc.

Recíprocamente, la verificación de este parentesco incide inevitablemente sobre la

manera de comprender la noción de entropía y, por lo tanto, modifica sensiblemente el

cuadro conceptual clásico de las ciencias. Esto es cierto, en particular, en lo

concerniente al papel del observador y la medida, según Rotshein y Brillouin, toda

medida'física va acompañada ineludiblemente de variaciones de la entropía que

conducen a un aumento de la entropía total del sistema formado por el aparato de

Page 20: tESIS DOCTORAL - Archivo Digital UPM - Archivo Digital UPMoa.upm.es/1032/1/10198501.pdf · la criptografía, en principio alejados del dominio de la Inteligencia Artificial. Después

- 9 -

medida y el sistema en que se desarrolla el fenómeno a medir. Que existe un mínimo

debajo del cual ninguna medida es posible, y que este mínimo es igual a K ln2 que se

corresponde a una medida que aporta un bit.

Este punto de vista, no hace más que subrayar y desarrollar las

consecuencias de una evidencia; los conceptos físicos más habituales, no existen más

que como interpretación de experiencias sobre magnitudes mensurables. Considerar la

realidad de estos conceptos olvidando el papel de las experiencias de medida en su

definición constituye una grave falta metodológica. Por contra, cuando esta evidencia

se tiene presente, la noción de información física asociada a todo fenómeno de

medida, aparece indisociable del contenido de los conceptos físicos más habituales. De

esta forma, la definición estadística de la entropía por la fórmv|¿a de Boltzmann hace

aparecer esta magnitud, como otra forma de expresar la información transmitida de

las medidas físicas a propósito del estado microscópico de los sistemas observados. En

otras palabras, las probabilidades p(i) de los diferentes microestados de un sistema se

consideran como las probabilidades de los símbolos de los mensajes. Cada sistema en

un instante dado, está asimilado a un mensaje existiendo una serie de valores p(i)

asociados a cada uno de los microestados i. Las dos fórmulas de Shannon y Boltzmann

[Martínez 27] son entonces puestas en relación fácilmente cuando se escribe que la

cantidad de información media Hs que recibiría un observador conociendo el

microestado en el que se encuentra un sistema dado cuya entropía es S, es igual a:

Hg= - ^ piü U>g^p(í) = -log^e 2 pii) InpiO i i

de tal manera que S = K log2eHs y reemplazando K y log2e por sus valores es; S = 1,38

X 10-16 X 0,69 Hs = 10-16 Hs, expresándose K en ergios por grado. La entropía de un

sistemares, de esta suerte, proporcional a la cantidad de información que se tendría si

se supiera en que microestado se encuentra el sistema. Esta relación plantea dos

Page 21: tESIS DOCTORAL - Archivo Digital UPM - Archivo Digital UPMoa.upm.es/1032/1/10198501.pdf · la criptografía, en principio alejados del dominio de la Inteligencia Artificial. Después

-10-

problemas: uno de signo y otro de unidades. Siguiendo a Brillouin [Brillouin 3], y por

razones ligadas al segundo principio de la termodinámica, se tiene tendencia a

considerar que las variaciones de entropía y de cantidad de información de un sistema,

se efectúan en direcciones opuestas, es decir, que a un aumento de entropía

corresponde una disminución A Hs o lo que es lo mismo:

AS = -Kln^C^H

Además, S y H no tienen aparentemente la misma dimensión puesto que se

pasa de uno al otro por intermedio de la constante de Boltzfhann K, a la que

habitualmente se atribuye la dimensión de una energía por unidad de temperatura.

Esta relación ha permitido resolver ciertas paradojas clásicas que se presentaban como

transgresiones aparentes del segundo principio de la termodinámica. Siendo el más

célebre el Demonio de Maxwell. En la mayor parte de los casos, la contribución de la

información a la variación total de la energía es despreciable de modo que la relación

pasa inadvertida por efecto del factor de la transformación. Pero, en los casos límites,

como el del Demonio de Maxwell, no puede ignorarse so pena de entrar en

contradicción con el segundo principio. Así la entropía no es una medida del orden

microscópico del sistema, sino del grado de conocimiento que un observador puede

tener del estado microscópico de este sistema; en otras palabras, la entropía mide la

falta de información sobre la verdadera estructura del sistema.

Otro problema de mucho interés, es la relación entre la termodinámica

irreversible y la teoría de la información. El orden es la base de la organización. En

cierto sentido, puede medirse el orden por la entropía negativa en el sentido de

Boltzmann.

Page 22: tESIS DOCTORAL - Archivo Digital UPM - Archivo Digital UPMoa.upm.es/1032/1/10198501.pdf · la criptografía, en principio alejados del dominio de la Inteligencia Artificial. Después

- 1 1 -

El concepto de entropía, como medida de desorden o estado perfecto de

equilibrio, en palabras de Unamuno, especie de homogéneo último, fue expresado de

forma intuitiva, en prosa poética, por Leopardi en el fin del cántico del Gallo Salvaje

con las siguientes palabras: "Tiempo llegará en que este Universo y la naturaleza

misma se habrá extinguido; y al modo que de grandísimos reinos e imperios humanos y

sus maravillosas acciones que fueron en otra edad famosísima, no queda ni señal ni

forma alguna, así igualmente del mundo entero y de las infinitas vicisitudes y

calamidades de las cosas creadas no quedará ni un sólo vestigio, sino un silencio

desnudo y una quietud profundísima llenarán el espacio inmenso. Así ese arcano

admirable y espontáneo de la existencia universal antes de haberse aclarado o dado a

entender, se extinguirá o perderá".

-r" Para terminar con este apartado, un breve comentario acerca del aspecto

filosófico de estas teorías, aspecto que constituye en sí mismo un amplio campo y

sobre el cual se ha escrito mucho. Tales implicaciones filosóficas pueden ilustrarse

mediante un ejemplo concreto. El que se va a considerar aquí está relacionado con el

conflicto entre los puntos de vista termodinámico y mecánico sobre el

comportamiento de la materia.

Considérense dos recipientes: uno de ellos contiene un cierto gas, el otro

está vacío. ¿Qué sucede si se pone en comunicación ambos recipientes mediante un

tubo y se abre repentinamente una válvula colocada en el tubo? De acuerdo con el

segundo principio de la termodinámica, el gas pasará del recipiente A al B con una

rapidez que sigue una ley exponencial hasta que la presión es la misma en los dos

recipientes. Lo anterior constituye una expresión de la ley.de la entropía creciente,

que, en su formulación más pesimista, afirma que toda la materia y la energía del

universo terminarán por nivelarse en el estado que Rudolf Clausius, uno de los padres

del segundo principio de la termodinámica, denominó de forma menos poética que

Leopardi, "WSrmetod" (muerte térmica).

Page 23: tESIS DOCTORAL - Archivo Digital UPM - Archivo Digital UPMoa.upm.es/1032/1/10198501.pdf · la criptografía, en principio alejados del dominio de la Inteligencia Artificial. Después

12-

Pero la concepción mecánica, o cinética, de la materia describe la

situación de una forma enteramente diferente. Es cierto que las moléculas del gas

tenderán a moverse desde las regiones de presión grande a las de presión pequeña, pero

el movimiento no se realiza únicamente en un sentido; las moléculas, al chocar con las

paredes de los recipientes y entre sí, se mueven siguiendo caminos aleatorios; y

aquellas moléculas que están en el recipiente B, igual pueden volver al A que continuar

en el B. Un teorema matemático debido a Poincaré demuestra que un sistema

dinámico de este tipo acaba por aproximarse indefinidamente a su estado inicial; es

decir, aquel estado en que todas las moléculas del gas (o casi todas) se hallan en el

recipiente A.

-r' Paul y Tatianá Ehrenfest ilustraron en 1907 esta idea con un sencillo y

bello modelo probabilístico. Considérense dos recipientes A y B; en el recipiente A se

colocan un gran número de bolas numeradas y en el B no se pone ninguna. De otro

recipiente lleno de tiras de papel igualmente numeradas se extrae al azar un número

(por ejemplo, el 6) y se pasa la bola que tiene este número del recipiente A al B. Se

devuelve la tira del papel a su sitio y se continua el juego, extrayendo al azar un

número entre 1 y N (el número total de bolas contenidas en un principio en el

recipiente A) y pasando la t)ola correspondiente al número extraído del recipiente en

que está el otro.

Intuitivamente resulta claro que mientras haya muchas más bolas en el

recipiente A que en el B, la probabilidad de sacar un número que corresponda a una

bola de A es mucho mayor que la de sacar uno que corresponda a una bola de B. Por

tanto, el flujo de bolas será al principio mucho más fuerte de A hacia B que en sentido

contrario. A medida que se van sucediendo las extracciones, la probabilidad de que el

número 'extraído corresponda a una bola de A variará de una forma que dependerá de

las extracciones anteriores. Esta forma de dependencia de la probabilidad respecto a

Page 24: tESIS DOCTORAL - Archivo Digital UPM - Archivo Digital UPMoa.upm.es/1032/1/10198501.pdf · la criptografía, en principio alejados del dominio de la Inteligencia Artificial. Después

-13-

los acontecimientos anteriores se designa con el nombre de cadena de Markov, y todos

los hechos relativos al juego pueden ser deducidos explícita y rigurosamente dentro de

la teoría correspondiente. Se obtiene como resultado que, en promedio, el número de

bolas del recipiente A decrece, en efecto, de acuerdo con una ley exponencial, según

indica la teoría termodinámica, hasta que casi la mitad de las bolas está en el

recipiente B. Pero el cálculo demuestra también que si el juego se prolonga

suficientemente, entonces, y con una probabilidad igual a 1, todas las bolas terminarán

finalmente por volver al recipiente A, tal como dice el teorema de Poincaré.

¿Cuál sería, por término medio, el número de extracciones necesario para

volver al estado inicial? 'La respuesta es 2N extracciones, que es un número

considerable, aún en el caso de que el número total de bolas (fí) sea menor de 100.

Esto explica por qué en la naturaleza el movimiento se efectúa en una única dirección,

en vez de presentar oscilaciones en ambos sentidos. Toda la historia del hombre es

ridiculamente corta si se la compara con el tiempo que necesitaría la naturaleza para

volver a su estado primitivo.

A fin de comprobar experimentalmente la exactitud de los cálculos

teóricos, el juego de Ehrenfest fue realizado por un computador. El juego comenzaba

con 16.384 bolas en el recipiente A, y cada serie constaba de 200.000 extracciones (en

las que el computador invertía menos de dos minutos). Como era de esperar, la curva

que representaba el número de bolas en el recipiente A después de cada 1.000

extracciones decrecía de un modo casi perfectamente exponencial. Una vez alcanzado

el equilibrio; es decir, 8.192 bolas, la mitad del número de partida, la curva comenzaba

a oscilar, moviéndose aleatoriamente por encima y por debajo de este número, pero sin

apartarse mucho de él. Estas oscilaciones pecaban, a veces, de exageradas por los

caprichos de la propia máquina, pero en todo caso representaban fluctuaciones reales

en el número de bolas contenidas en A.

Page 25: tESIS DOCTORAL - Archivo Digital UPM - Archivo Digital UPMoa.upm.es/1032/1/10198501.pdf · la criptografía, en principio alejados del dominio de la Inteligencia Artificial. Después

-14-

Estas pequeñas y caprichosas fluctuaciones constituyen modelos de la

variabilidad de la naturaleza y es todo cuanto se interpone entre los seres vivos y la

muerte térmica, a la cual parece condenar irremisiblemente la segunda ley de la

termodinámica. La teoría de la probabilidad ha resuelto el conflicto aparente entre las

concepciones cinética y termodinámica de la naturaleza, mostrando que no existe

ninguna contradicción entre ellas, siempre que se interprete flexiblemente la segunda

ley de la termodinámica. Y es que el desarrollo de la teoría de la probabilidad en el

siglo XX ha cambiado de tal modo las actitudes humanas que se ha dejado de pensar

que las leyes de la naturaleza pueden construirse de modo rígido o dogmático [Kac 19].

1«2. Necesidad de seguridad en sistemas informáticos.

-r En los primeros años de la informatización, con un funcionamiento basado

en la monoprogramación, con los dispositivos de entrada-salida, próximos al

computador, y memorias externas exclusivas para cada usuario, la seguridad referente

a los datos manejados, se resolvía con procedimientos manuales relativos a la

operación del sistema. Posteriormente, con la aparición de los sistemas operativos, el

computador se usa de forma diferente. La multiprogramación, la memoria externa

compartida por usuarios y la posibilidad de acceso al computador desde lugares

remotos mediante terminales, gracias a las telecomunicaciones, ha incrementado la

necesidad de métodos de seguridad de los datos.

El uso de herramientas normalizadas de teleinformática así como los

avances tecnológicos en todos los campos de la Informática y las telecomunicaciones

amplió la cantidad de servicios a otorgar y aumentó la calidad de los mismos. Todo

ello puso de evidencia preocupaciones que previamente habían sido relegadas a un

segundo plano. Cosas tales como : seguridad de la información en los ficheros y bases

de datos, y en su transmisión a través de redes de comunicación, discrección,

identificación, etc., son distintos conceptos que hoy hay que tener muy en cuenta. En

Page 26: tESIS DOCTORAL - Archivo Digital UPM - Archivo Digital UPMoa.upm.es/1032/1/10198501.pdf · la criptografía, en principio alejados del dominio de la Inteligencia Artificial. Después

-15-

definitiva garantizar el uso adecuado por las personas pertinentes de esa información,

es el problema que se plantea.

Si el mercado de las telecomunicaciones se ha abierto a las técnicas

informáticas, también las telecomunicaciones se han puesto al servicio de la

informática. De este modo, se han creado nuevas redes públicas de transmisión de

datos para las aplicaciones informáticas existentes asegurándoles una calidad de

servicio cuando menos equivalente a las medias convencionales y a menor coste.

El aumento en potencia y la normalización de los instrumentos empleados

en el momento presente en teleinformática, modifican ciertos "equilibrios"

económicos, hasta el punto de que las técnicas utilizadas poi ias nuevas redes de

transmisión de datos pueden "transportar", a menor coste, una gran parte de las

informaciones actualmente enviadas por correo. Sin embargo, es necesario completar

el arsenal teleinformático para ofrecer en ciertos puntos características equivalentes

a las del correo. Una carta se caracteriza por un sobre, un sello y un remite. Dicha

carta puede, cuando se necesite, ser enviada, o certificada con acuse de recibo, para

probar que la carta ha sido recibida de hecho por su destinatario. Pues bien, todas

estas características deben encontrar un equivalente electrónico mejorado en las

nuevas redes de transmisión de datos, si se quiere que estas jueguen plenamente su

papel transcendente en la sociedad postindustrial [Guillou 16] [Sugarman 41] [EDP

ANALYZER 7]. Lo mismo vale decir para transacciones monetarias, por intermedio de

un banco entre clientes, con justificante de dichas transacciones, incluso si se

efectúan por teléfono [Logpre 26].

También deben modificarse otras características más sutiles. Deben

crearse e integrarse en estos sistemas nuevas medidas, con el fin de garantizar la

seguridad y privacidad de estos sistemas tanto en sus transmisiones de información

como en el almacenamiento de las informaciones en ficheros y bases de datos. La

Page 27: tESIS DOCTORAL - Archivo Digital UPM - Archivo Digital UPMoa.upm.es/1032/1/10198501.pdf · la criptografía, en principio alejados del dominio de la Inteligencia Artificial. Después

-16-

transferencia electrónica de fondos, necesita imperativamente que la integridad de las

comunicaciones sea total. Los canales de transmisión por satélite no pueden utilizarse

para transmitir informaciones con valor mercantil, más que si está asegurada

razonablemente la discrección de las comunicaciones [Govaerts 14] [Lennon 24].

Últimamente, crece en todo el mundo la incidencia de hechos delictivos, y

fraudes [Desmedt 5] en los cuales, el arma es el computador. Especialistas

organizados, ladrones solitarios y hasta jóvenes genios, causan perjuicio a muchas

empresas, provocando quiebras o desvelando secretos. Las personas con grandes

conocimientos en informática, descubren fácilmente los secretos del proceso de

funcionamiento de cualquier sistema.

-r' Resulta curioso testimoniar que, en Estados Unidos, el país del mundo con

más computadores, la mayor parte de los delitos cometidos usando el computador

como "herramienta" es causada por personas "honestas" que, simplemente por desafío,

buscan quebrar o interceptar el sistema. Muchas personas, después de violar los

sistemas, se enorgullecen en público y confiesan que no lograron ningún lucro en ello.

Otros tipos de técnicos familiarizados con los computadores, lo utilizan para robar

pequeñas cantidades de cuentas corrientes. Es el caso de cajeros que jamás abonan los

"céntimos" en las cuentas de clientes. Nadie reclama y, al final, el cajero obtiene una

gran suma. Actualmente en Estados Unidos, ya hay bandas organizadas que compran

computadores para emplearlos en actos criminales. Ciertas bandas buscan listas donde

haya nombres de personas importantes para descubrir sus direcciones, luego, escogen

las mejores familias para asaltarlas.

Un cajero de banco, puede usar el computador de su institución para

transferir dinero. El empleado tiene su propio código para operar el sistema. El cajero,

al recibir las facturas y cuentas, altera en el computador la fecha de los vencimientos.

En el caso de que su cliente pague su cuenta el día 5, lo modifica para que aparezca

Page 28: tESIS DOCTORAL - Archivo Digital UPM - Archivo Digital UPMoa.upm.es/1032/1/10198501.pdf · la criptografía, en principio alejados del dominio de la Inteligencia Artificial. Después

-17-

esa cuenta el día 10. En esos días, el empleado utiliza el dinero o recibe los intereses y

luego repone su valor. Se dio el caso de un cajero en Estados Unidos, que en 3 años,

ganó con este método tres millones de dólares.

También se producen problemas cuando un empleado es despedido de una

empresa que usa computadores, ya que puede copiar ficheros o programas y provocar

daños.

Con el incremento de los computadores personales, los jóvenes

experimentan con palabras, hasta entrar en un sistema por linea telefónica y alterar u

obtener información. No pasa un mes sin que en la prensa aparezca, con carácter

sensacionalista, la noticia de un joven o un grupo de jóvenes cof''su(s) computadores)

personal(es), se ha(n) introducido en los sistemas informáticos de algún organismo

gubernamental norteamericano, como puede ser la NASA o el Pentágono.

Recientemente, "siete magníficos" de la informática, en edad escolar,

fueron detenidos en una localidad del Estado de Nueva Jersey, en Estados Unidos, bajo

la acusación de robo y conspiración. Los siete muchachos de entre 14 y 18 años, habfan

cometido la osadía de "introducirse", mediante el manejo de sus computadores

domésticos, en diversos organismos públicos y privados: el Pentágono, la compañía

telefónica ITT, la Intelsat (compañía de satélites para la comunicación), etc. Los

jóvenes "ladrones" de South Plainfield, sólo se conocían entre sí a través del cordón

umbilical de sus minicomputadores, que habían sido regalo a sus buenas notas.

Todo esto a puesto una vez más en evidencia la fragilidad de los sistemas

modernos en cuanto a seguridad comercial, bancaria o de Defensa.

En estos momentos, según cifras no comprobadas, pero sí estimadas,

pululan, a lo largo y ancho de Estados Unidos, unos 25.000 "piratas electrónicos" o

Page 29: tESIS DOCTORAL - Archivo Digital UPM - Archivo Digital UPMoa.upm.es/1032/1/10198501.pdf · la criptografía, en principio alejados del dominio de la Inteligencia Artificial. Después

-18 -

"hackers" en lenguaje de la calle. El delito, relativamente nuevo, comienza a

extenderse como una mancha de aceite y muchos de los Estados de la Unión -40 hasta

el presente- han aprobado leyes especiales contra esta plaga. El FBI, por su parte,

dispone de unos trescientos especialistas en la persecución de estos nuevos piratas.

Todos estos elementos, unidos a los peligros derivados de algún error en el

sistema, algún accidente u otro tipo de incidencia, implican la necesidad de la

protección del sistema informático.

Por otro lado, el crecimiento de los sistemas informáticos es tal, que su

utilización es primordial para casos tan dispares como operaciones policiales, tráfico

aéreo, sistemas bancarios, aplicaciones comerciales, defensa'f' un sinfín de otras

aplicaciones en donde se ve la necesidad de proteger la información frente a la

introducción de errores en las mismas y también ante el uso desautorizado de esa

información.

Pero no hay que caer en la trampa de que todo debe ser criptografiado.

Como bien señala Fisher [Fisher 10], la criptografía a pesar de ser un potente método

de protección de las informaciones no es adecuada en todas las situaciones. Saber

cuando es o no necesaria, es otra de las funciones de los responsables de los sistemas

informáticos que con alta frecuencia se pasa por alto.

1.3. Amenaza a »« seguridad v privacidad de la información.

Se define la seguridad de la información como la protección de dicha

información ante accesos a la misma, accidentales o intencionados, por personas no

autorizadas que eventualmente pudieran permitirle su modificación o destrucción.

Page 30: tESIS DOCTORAL - Archivo Digital UPM - Archivo Digital UPMoa.upm.es/1032/1/10198501.pdf · la criptografía, en principio alejados del dominio de la Inteligencia Artificial. Después

-19 -

Por su parte, la privacidad de las informaciones concierne a los derechos

que tienen las personas y las organizaciones a determinar cuándo, cómo y en qué

medida, la información acerca de ellos se puede emplear.

De entre los distintos tipos de hechos que pueden afectar a la seguridad o

privacidad de los sistemas de información, como son: calamidades naturales, errores

"hard-software", errores por descuido o incompetencia humana en el manejo y

explotación de dichas informaciones, etc.; en lo que aquí concierne, se va a tratar

únicamente de acciones intencionadas. Con este "titulo", se incluyen: robos, fraudes,

desfalcos, acceso no autorizado a ficheros o bases de datos, invasión de la privacidad,

etc. Estas acciones pueden realizarse de las dos formas siguientes: , .i

a) Pasiva, como la intervención en lineas de teleproceso, o mediante

captación electromagnética, o por recogida de material de pruebas, o

inservible; cuyas denominaciones en terminología inglesa son,

respectivamente: "wiretapping", "electromagnetic pick-up", y "waste

basket".

b) Activa. Esta forma de ataque a la seguridad o privacidad de la

información también puede producirse de varias maneras, entre las que

caben destacar: El uso de acceso legitimo al sistema para obtener

información a la que no se tiene derecho y, o, autorización. Acceso al

sistema de forma enmascarada; o por medios electrónicos. O cuando el

usuario legitimo está inactivo pero todavía mantiene "vivo" el canal de

comunicación. Cuyas denominaciones, en terminología inglesa, son

respectivamente: "browsing", "masquerading", "piggybacking", y

"between lines". También se pueden considerar en este apartado

procedimientos más burdos como robos de ficheros, chantajes, etc.

Page 31: tESIS DOCTORAL - Archivo Digital UPM - Archivo Digital UPMoa.upm.es/1032/1/10198501.pdf · la criptografía, en principio alejados del dominio de la Inteligencia Artificial. Después

-20 -

Todas estas situaciones pueden producir diversos efectos en la información

como son: la modificación, destrucción o divulgación de la misma. Las consecuencias

dependen de factores tales como: La intencionalidad de la causa. La importancia de la

información afectada. La posibilidad de su recuperación, etc. Con el fin de conseguir

un grado aceptable, y a poder ser óptimo, de seguridad y privacidad del sistema

informático, además de establecer unos controles previos de carácter organizativo,

que aquí no conciernen, deberán tomarse medidas a tres niveles:

1. Prevención o protección, minimizando la probabilidad de que se

produzcan errores o intromisiones indeseables. Para ello, es

conveniente disponer de controles de acceso al sistema mediante

identificadores, llaves, etc. Y, sobre todo, protegiendo los datos

"enmascarándolos" mediante tánicas criptográficas que es justamente

el "leiv motiv" de este trabajo.

2. Detección, reduciendo a cero en lo posible los daños ocasionados, en el

supuesto de que se haya producido un fallo. En este sentido, resulta

conveniente establecer un registro de accesos, errores y un análisis de

datos.

3. Recuperación, minimizando el tiempo para volver a la situación previa

al error. Resulta muy efectivo al respecto, el tener duplicaciones de

los ficheros, y tener preparados planes de recuperación, etc.

Obviamente, la seguridad aplicada a un sistema Informático, dependerá de

las características del sistema en cuestión. El intentar conseguir una seguridad total,

será prácticamente imposible, pues supondría un costo muy elevado y una degradación

en las abtividades del sistema. Por lo tanto, habrá de contar con la existencia de unas

ciertas probabilidades de riesgos íntimamente ligadas a las medidas de seguridad

Page 32: tESIS DOCTORAL - Archivo Digital UPM - Archivo Digital UPMoa.upm.es/1032/1/10198501.pdf · la criptografía, en principio alejados del dominio de la Inteligencia Artificial. Después

- 2 1 -

adoptadas. Sin embargo, conviene tener en cuenta una serie de factores que inciden en

la seguridad como son:

a) La existencia de un entorno hostil, en cuyo caso, seria aconsejable

incrementar las medidas precautorias.

b) La necesidad de funcionamiento continuo; es decir, si el sistema

admite las interrupciones o requiere una recuperación inmediata.

c) La privacidad de la información. Esto es, si los datos y ficheros

manejados contienen o no información confidencial.

d) La clase de utilización; es decir, si se trata de tiempo real, trabajo en

"batch", si existen bases de datos, etc.

Así, en sistemas militares o policiales, se precisa un alto nivel de seguridad

y se requieren medidas de coste elevado para resguardarse de los intrusos. Por otro

lado, algunos sistemas comerciales, pueden dedicar un mínimo esfuerzo a la seguridad,

especialmente si no hay riesgo de desfalcos.

El coste de las medidas de seguridad, también depende de las personas ante

las cuales se intenta la protección. Las personas pueden obtener información

desautorizada de las siguientes formas:

1. Accidentalmente, cuando una persona descubre alguna información de

forma imprevista en un terminal, en un listado, etc.

'" 2. Casualmente, cuando una persona hábil, aprovecha sus conocimientos

para descubrir ciertos datos en algún descuido.

Page 33: tESIS DOCTORAL - Archivo Digital UPM - Archivo Digital UPMoa.upm.es/1032/1/10198501.pdf · la criptografía, en principio alejados del dominio de la Inteligencia Artificial. Después

22

3. Deliberadamente:

a) Por personas que no son criminales profesionales, cuando

premeditadamente intentan invadir el sistema para obtener

beneficios materiales. Se precisará conocimiento técnico y equipo

técnico.

b) Por criminales bien equipados, empleados para desfalcar, expertos

altamente remunerados, ladrones especializados, etc.

c) Por medio de organizaciones específicas, con grandes recursos,

como agencias de espionaje o militares que intentan obtener

información secreta, etc.

Para apreciar el valor de la información almacenada, es claro que un

enemigo potencial no gastará más dinero para violar el sistema informático que el que

gastaría para adquirir la información por otro medio, o en reponer los daños causados

por el uso de esa información en su contra. Parece razonable pensar que, en general,

no más del cinco por ciento del gasto de mecanización deberá ser gastado en

seguridad; en cuanto al tiempo de respuesta y al procesamiento, las técnicas de

seguridad no deberán elevarlo más allá del doble; es decir, del diez por ciento.

1.4. Implicaciones sociales y legales.

La importancia creciente del uso de la informática en todos los órdenes de

la vida hace aparecer riesgos para las libertades individuales que son el fundamento

mismo de las sociedades occidentales entre las cuales se enmarca la sociedad

española. En consecuencia, las garantías brindadas a los ciudadanos provienen de

nuevas disposiciones legales, tal y como se expresan por ejemplo, en el artículo 18

puntos 3 y 4 de la Constitución Española en vigor. El primero de los cuales garantiza el

secreto de las comunicaciones, y el segundo limita el uso de la informática para

Page 34: tESIS DOCTORAL - Archivo Digital UPM - Archivo Digital UPMoa.upm.es/1032/1/10198501.pdf · la criptografía, en principio alejados del dominio de la Inteligencia Artificial. Después

-23-

garantizar el honor y la libertad personal. Sin embargo, estas disposiciones para que

tengan total efectividad deben completarse con nuevos dispositivos técnicos.

Ciertamente, ficheros manuales han existido desde hace mucho tiempo.

Pero el uso de los computadores en el manejo y recuperación de la información

contenida en ficheros y bases de datos automatizados, han transformado la naturaleza

de los problemas. En los EE.UU., la evolución del problema de la protección de la vida

privada ha sido analizada bastante exhaustivamente, en particular por el profesor

Weslin, sus conclusiones, que se exponen a continuación, sirven "mutatis mutandis"

para la problemática existente en España.

En primer lugar, debe producirse un período de tafia de conciencia del

problema. La comprobación de la existencia de abusos en el uso de los computadores,

entraña una desconfianza generalizada del gran público. En particular esto se

cristaliza en la puesta en marcha de grandes bases de datos nacionales y su eventual

interconexión.

A continuación, se pasa a una fase de estudio en comisiones "ad hoc". En

esta fase se encargan estudios y encuestas a diversos organismos con el fin de precisar

los aspectos sociológicos y políticos de estas cuestiones. Los aspectos técnicos se

confian a grupos de expertos. Gracias a estas acciones esclarecedoras, comisiones

gubernamentales y parlamentarias llegan a proposiciones que tratan de reducir los

abusos identificados en el uso de los instrumentos informáticos.

Por último, en una tercera etapa, las proposiciones y conclusiones de los

informes de las comisiones son paulatinamente transformados en leyes. Esta fase que,

en los EE.UU. no está más que en los inicios, en España está inédita. Además deberán

tomarse'otras medidas adicionales para asegurar las libertades individuales.

Page 35: tESIS DOCTORAL - Archivo Digital UPM - Archivo Digital UPMoa.upm.es/1032/1/10198501.pdf · la criptografía, en principio alejados del dominio de la Inteligencia Artificial. Después

-24-

Estas leyes entrañan restricciones técnicas tanto en la concepción de

nuevos sistemas como en la adaptación de los antiguos. Son justamente estas

restricciones las que explican la circunspección en el establecimiento de nuevas leyes

y la progresividad de su entrada en vigor, en aquellos paises en donde se hace, lo que

lamentablemente hasta la fecha no ocurre en España.

Por si esto no fuera suficiente, existen otros problemas legales al

considerar muchos organismos e instituciones oficiales en los distintos paises, la

criptografía como un arma de guerra. Un incidente ocurrido en 1.977 en los EE.UU. es

revelador al respecto. Allí y entonces, el editor del IEEE, prestigioso conjunto de

publicaciones de la más que famosa asociación norteamericana de ingenieros

eléctricos y electrónicos, recibió una misteriosa carta en la qu^'se le informaba a la

dirección del IEEE de que ciertos miembros, teóricos de la información, se arriesgaban

por sus actividades pasadas, presentes y futuras a infringir los reglamentos y las leyes

relativas al tráfico de armas, en particular el "International Traffic in Arms

Regulations" y el "Arms Export Control Act". Esta carta había partido de un miembro

del IEEE que la había escrito a título personal y eso sin ninguna relación con el hecho

de que era empleado de la Agencia Nacional de Seguridad (NSA). La carta fué

comunicada a los miembros del IEEE que preparaban un "symposium" sobre la Teoría

de la Información a celebrar el 10 de octubre de ese mismo año en Ithaca (NY).

Los principales conferenciantes de la sesión consagrada a criptografía

tomaron todas las precauciones posibles y no comunicaron los textos de sus

conferencias. Nadie sabía exactamente donde se detenía la libertad de investigación y

de publicación en el dominio de la Teoría de la Información. Nueve días después del

congreso de Ithaca, el New York Times publicaba una declaración de la National

Science Foundation (NSF), organismo encargado de proporcionar recursos financieros y

apoyo á la investigación en EE.UU. en la que acusaba al NSA de "Sytematic

bureaucratic snippin"; es decir, tirador de élite emboscado sistemático y burocrático.

Page 36: tESIS DOCTORAL - Archivo Digital UPM - Archivo Digital UPMoa.upm.es/1032/1/10198501.pdf · la criptografía, en principio alejados del dominio de la Inteligencia Artificial. Después

-25-

contra las personas implicadas en la investigación sobre criptografía. Finalmente, el

13 de abril del año siguiente 1.978, una comisión del senado, concretamente el "Senate

select committee on inteligence", declara que no se haría ninguna demanda judicial ni

se tomaría ningún tipo de medidas coactivas al respecto y que la carta había sido

enviada sin la aprobación de NSA. Sin embargo, esta declaración no aportaba ninguna

luz sobre el problema de fondo.

En resumen, el problema en toda su crudeza es el siguiente: ¿Debe, en

nombre de la seguridad del estado, ponerse trabas al desarrollo, puesta a punto y

utilización de dispositivos que garanticen la seguridad de las informaciones?. Estos

dispositivos, vitales para proteger los ficheros nominativos y personalizar las

responsabilidades, son por igual necesarios en el desarrollo de qfievos servicios sobre

redes públicas de transmisión de datos, así como en el control eficaz del acceso a la

información y a los recursos. En el bien entendido de que conviene señalar la

diferencia, por una parte, entre los problemas de normalización de algoritmos y

métodos de cifrado, y, por otra parte, de los problemas de normalización de

procedimientos e implementación de los mismos en los protocolos de

telecomunicación. La certificación, la identificación y la firma, son problemas de

procedimiento y legislación.

Si códigos "inviolables" ven la luz del día y son utilizados libremente, se

modificaría seriamente la actividad principal de las agencias de información, léase

espionaje.

En resumen, además de los problemas reales a que da lugar, la criptografía

plantea un problema social fundamental al plantear un serio conflicto entre la

necesaria libertad académica y de investigación científica, y los imperativos de

defensa'nacional y seguridad del estado.

Page 37: tESIS DOCTORAL - Archivo Digital UPM - Archivo Digital UPMoa.upm.es/1032/1/10198501.pdf · la criptografía, en principio alejados del dominio de la Inteligencia Artificial. Después

- 2 6 -

1.5. Propósito del trabajo.

Este trabajo, tiene como premisa básica el principio de simplicidad

explicativa, según la denominación cartesiana, que considera anticientífico recurrir a

explicaciones complicadas cuando es posible apoyarse en principios más elementales.

O, dicho de otro modo, tiene en cuenta la navaja de Occam, también denominada

"Principio de parsimonia", porque "rasura" una teoría hasta sus elementos

fundamentales, lo que significa que no deben postularse más causas que las necesarias

para explicar los fenómenos observados.

Además, teniendo en cuenta las consideraciones que preceden, se presenta

un sistema criptográfico que cumple las características siguient^:

En primer lugar, se establece una metodología original basada en técnicas

de inteligencia artificial, que lo hacen sumamente adaptativo, modular y robusto. De

este modo, se consigue su facilidad de modificación cuando se requiera, su capacidad

incremental cuando ello fuera necesario, y su versatilidad para implementarlo en

distintos sistemas de información.

En segundo lugar, además de cumplir con todos los requisitos que Shannon

[Shannon 40] estableció para un buen sistema de cifrado, se basa, aunque sólo sea

laxamente, en la noción de función fácilmente invertible por oposición a los

tradicionales que son de función difícilmente invertible. Dejando toda la potencia del

secreto a la pura clave, con lo que lo convierte en un método de cifrado transparente.

O, por ser más precisos, a la semilla de la clave.

Finalmente, tanto su arquitectura como sus fundamentos técnicos están

tomados de la metodología en experimentación para la construcción de sistemas

expertos. Aunque, en puridad, este sistema debería denominarse "antiexperto" por la

Page 38: tESIS DOCTORAL - Archivo Digital UPM - Archivo Digital UPMoa.upm.es/1032/1/10198501.pdf · la criptografía, en principio alejados del dominio de la Inteligencia Artificial. Después

-27-

casi segura imposibilidad de violar sus informaciones cifradas al menos a un coste

aceptable.

Obviamente, si el sistema propuesto presenta, tal y como es de esperar,

todas las características acabadas de enunciar, se construirá tanto por "software", lo

que está garantizado, como, y este punto también es importantísimo, por "hardware"

obteniendo la correspondiente patente.

Sin embargo, hay que subrayar que, en paridad, éste no es un trabajo en o

sobre criptografía, sino en inteligencia artificial. El hecho de aplicar los principios de

la lA para resolver un problema de criptografía, se debe única y exclusivamente a

consideraciones de oportunidad, utilidad y, hasta cierto punto, nefésidad.

Page 39: tESIS DOCTORAL - Archivo Digital UPM - Archivo Digital UPMoa.upm.es/1032/1/10198501.pdf · la criptografía, en principio alejados del dominio de la Inteligencia Artificial. Después

28

"Nada hay tan oculto

que no acabe por saberse"

[Biblia]

CAPITULO 2. ESTADO DE LA CUESTIÓN.

2.1. Antecedentes y métodos afines a la criptografía.

Desde la remota antigüedad, en ciertas ocasiones muchas veces más de las

que fueran de desear, los hombres intentaron ocultar sus inform'Íclones, para ponerlas

al abrigo de "indiscretas miradas indeseables". Al principio, se usaron métodos

estenográficos, es decir, aquellos que ocultan los símbolos, en los que el emperador

romano Claudio, según cuentan sus historiadores, era un consumado experto. Después,

usando métodos criptográficos; o sea, aquellos cuya pretensión era ocultar el

significado. Finalmente, se usan, sobre todo en tareas de espionaje militar, métodos

mixtos en los que al tiempo se pretende "enmascarar" los símbolos y el significado del

mensaje.

Dentro de estos últimos los más conocidos por su popularización que de

ellos hizo en sus novelas Forsyth [Forsyth 11], está el denominado "One-time pad"

[Kafka 20] que cuando se aplica a cada palabra de un mensaje, no deja pautas ni

repeticiones por lo que se considera inviolable. Este procedimiento, muy laborioso para

enviar mensajes clandestinos, consiste, en escribir de forma clara y lo más breve

posible, el mensaje. Después, dicho mensaje se pone en clave, aunque continua siendo

una serie de signos. A continuación, el mensaje cifrado es transmitido en morse a un

magnetófono, donde se graba en la cinta a una velocidad extraordinaria. De este modo,

los puntos y rayas que constituyen el mensaje cifrado, quedan comprimidos y se

Page 40: tESIS DOCTORAL - Archivo Digital UPM - Archivo Digital UPMoa.upm.es/1032/1/10198501.pdf · la criptografía, en principio alejados del dominio de la Inteligencia Artificial. Después

- 2 9 -

confunden en un chirrido único que dura sólo unos segundos que es justamente lo que se

transmite. Este método, a parte de la seguridad del propio mensaje, busca conseguir la

imposibilidad de ubicar a quién lo envía, salvaguardando su actividad.

2.2. Criptografía.

La criptografía [Meyer 30] es la mejor técnica y probablemente la única

efectiva, para proteger las informaciones confidenciales durante su almacenamiento y

transmisión a través de las líneas de comunicación de accesos indeseables a la misma

[Widman 44].

El término criptografía proviene de los vocablos -jfriegos "cripto", que

significa secreto, y "grafía", que quiere decir escritura. Es pues una escritura secreta,

y consiste en que, partiendo de un mensaje original entendible, se obtiene otro no

entendible para un supuesto interceptor; sin embargo, el mensaje resulta comprensible

para el destinatario que conoce las reglas de transformación. El proceso de conversión

del mensaje original en el otro, incomprensible para el interceptor, se llama cifrado o

código y el resultado producido, mensaje cifrado o criptograma. El proceso inverso de

obtención del mensaje original a partir del mensaje cifrado, se llama descifrado, y el

conjunto de reglas que permiten estos procesos, se llama clave o llave.

Si se designa por T el texto original o claro, por C el criptograma o texto

final o cifrado, y por F la función de cifrado que representa el procedimiento de

conversión del primero en el segundo, entonces se tiene que:

C = F{T)

Análogamente, si D es la función de descifrado, deberá cumplirse:

Page 41: tESIS DOCTORAL - Archivo Digital UPM - Archivo Digital UPMoa.upm.es/1032/1/10198501.pdf · la criptografía, en principio alejados del dominio de la Inteligencia Artificial. Después

30

D(0 = D (F (D) = T

Así pues, tiene que haber una relación biunívoca entre T y C mediante la

función F y entre C y T, mediante la función D.

La diferencia entre codificación y cifrado consiste en que, mientras una

codificación sustituye una palabra o frase codificada por una palabra o frase del texto

original, un sistema de cifrado actúa sobre caracteres antes que sobre palabras o

frases. A su vez, los sistemas de cifrado computacional se subdividen en: Sistemas de

cifrado en bloque, que tratan siempre con bloques completos de caracteres, y Sistemas

de flujo, según los cuales se criptografía una cadena de caracteres uno a uno.

Otra variante importante de los sistemas de cifrado, es la de los sistemas

de algoritmo o clave secreta, frente a los de clave pública. El algoritmo, llave o clave

es, como acaba de decirse, el conjunto de reglas que convierten un texto claro en uno

cifrado. Aunque pudiera parecer a primera vista que los sistemas de clave oculta son

más seguros, la realidad no es así [EDP ANALYZER 7].

En primer lugar, porque los algoritmos públicos que han soportado ataques

de gentes interesadas en "romperlos" son más dignos de confianza que los secretos que

no están tan contrastados.

En segundo lugar, lo que un intruso astuto espera conseguir es una solución

"rápida" al descifrado explotanto alguna "flaqueza" del algoritmo. Encontrar una

solución "rápida" para un algoritmo verdaderamente "robusto" es esencialmente una

genialidad. En los algoritmos públicos cualquier debilidad de los mismos que conduzca

a una solución rápida inmediatamente se hace pública. Pero si una solución de este

Page 42: tESIS DOCTORAL - Archivo Digital UPM - Archivo Digital UPMoa.upm.es/1032/1/10198501.pdf · la criptografía, en principio alejados del dominio de la Inteligencia Artificial. Después

-31 -

tipo no puede encontrarse, la única alternativa que queda es la búsqueda exhaustiva.

Para lo cual, el intruso debe tener una parte del texto cifrado que se sabe es el

correspondiente a un texto claro que conoce. Además, debe suponerse que conoce el

algoritmo aunque sea secreto. Entonces prueba cada posible llave para intentar

transformar el texto claro en el cifrado, o viceversa, hasta que encuentre la llave

correcta.

Los sistemas de llave pública, se diseñan para proporcionar protección

frente al supuesto de Tuchman [Tuchman 42] de que los intrusos:

a) Saben todo acerca del algoritmo.

b) Tienen un cómplice que puede insertar cualquier cantidad de texto

claro elegido dentro del mensaje.

c) Tienen grandes computadores a su disposición para efectuar los

análisis.

Actualmente, se están estudiando [Bennett 1] métodos de codificar la

información en forma de estados de "quantum" no ortogonales, lo que da lugar a usar

el principio de incertidumbre de Heisenberg [Heisenberg 17] para desarrollar una

manera de criptografiar inalcanzable con los métodos anteriores.

Sin embargo, dadas sus características específicas y, sobre todo, su

necesidad de brevedad, estos procedimientos son inadecuados para usarlos en la normal

transmisión de informaciones. Además, en una de sus fases, estos métodos también

usan la criptografía. Por estas razones, los métodos actualmente usados son los

criptográficos que son los que más ampliamente se van a considerar a continuación.

Pero antes se van a hacer algunas consideraciones que muestran cómo, de forma

natural,'hubo que abocar a estos métodos.

Page 43: tESIS DOCTORAL - Archivo Digital UPM - Archivo Digital UPMoa.upm.es/1032/1/10198501.pdf · la criptografía, en principio alejados del dominio de la Inteligencia Artificial. Después

-32 -

En efecto, cada vez es más frecuente el uso de computadores para tratar

información confidencial, de ahí la necesidad de procedimientos para proteger esta

información contra accesos no autorizados a la misma.

En principio, esta necesidad se veía cumplimentada por la existencia de

llaves que los fabricantes incorporaban en la definición de los ficheros y que impedían

el acceso a estos ficheros, de los que no estuvieran en posesión de esta llave de

acceso. Sin embargo, este procedimiento presenta dos graves inconvenientes: El

primero, y fundamental, es que la información de la que confidencial no es una

excepción, no es algo estático que está inamovible sobre un dispositivo de

almacenamiento físico sino que, al contrario, es algo dinámico, tanto en su contenido,

debido a las distintas modificaciones que sufre en el transcurso d^l tiempo, como en el

paso a través de los distintos canales por los cuales se transmite. Este carácter

dinámico de la información, hace que la privacidad de la misma se vea,sometida a un

sinnúmero de riesgos, dado que su transmisión se hace sin otra codificación que la

habitual en el uso de los computadores. El segundo inconveniente, es que incluso para

la información, salvaguardada mediante ficheros con llaves que "teóricamente" les dan

un óptimo grado de privacidad, en la práctica esto no es así, ni mucho menos. En

efecto, cualquiera que conozca un poco a fondo los entresijos de los sistem.as

operativos de los computadores actuales, sabe que existen programas privilegiados que

tienen acceso a cualquier fichero sin que importe, en absoluto, su carácter de privado

y, o, su definición de llaves de acceso.

Esto hizo que, habida cuenta de la imposibilidad de emplear métodos

estenográficos, hubiera necesidad y, además, conveniencia de usar métodos

criptográficos.

La criptogn^afía ha jugado un importante papel en la génesis de la teoría de

la información. El estudio de la comprensión de señales de televisión, y de la

Page 44: tESIS DOCTORAL - Archivo Digital UPM - Archivo Digital UPMoa.upm.es/1032/1/10198501.pdf · la criptografía, en principio alejados del dominio de la Inteligencia Artificial. Después

-33-

redundancia de los lenguajes en relación con la criptografía ha conducido a Shannon

[Shannon 39,40] a establecer las bases de la teoría de la información y a precisar la

introducción de la redundancia artificial para detectar y corregir los errores de

transmisión en presencia de ruido.

También la criptografía ha jugado un transcendental papel én el desarrollo

de los ancestros de los computadores actuales. Pues durante la Segunda Guerra

Mundial la máquina Colossus ha servido para descifrar los mensajes que procedían del

cifrado de las máquinas alemanas Enigma [Randell 36].

La ciencia criptográfica, estudia el cifrado y descifrado de mensajes. El

criptoanalisis consiste en el análisis de la información cifrará para conseguir el

mensaje original sin disponer de la clave.

En la práctica de la transmisión de informaciones, estas pueden ser

cifradas antes de la transmisión y descifradas después de ella para prevenir el

descubrimiento de información confidencial. Igualmente, los ficheros de datos pueden

ser almacenados de una forma cifrada para suministrar máxima protección ante una

infiltración accidental o deliberada.

Conviene señalar que, de igual manera que incluso el más simple método de

cifrado, puede prevenir contra un descubrimiento accidental, una sofisticada técnica

criptográfica, puede, en algunos casos, ser inútil ante un criptoanalista profesional.

Sin embargo, los problemas que aparecen en el proceso de almacenamiento

y transmisión de grandes cantidades de información, haciendo uso de la

teleinformática son de naturaleza mucho más compleja. En este caso, estas

informaciones van a estar almacenadas "per se" o por necesidad de manejo, en algún

dispositivo durante un largo período de tiempo. Esto hace que puedan ser sometidas a

Page 45: tESIS DOCTORAL - Archivo Digital UPM - Archivo Digital UPMoa.upm.es/1032/1/10198501.pdf · la criptografía, en principio alejados del dominio de la Inteligencia Artificial. Después

-34-

todo tipo de análisis para su interpretación. Como el dispositivo al alcance de estos

analistas intrusos es el computador, con su rapidez y alta capacidad de proceso de la

información, va a permitirles hacer posible un análisis exhaustivo, usando técnicas

estadísticas, de las informaciones en un relativamente corto período de tiempo. Por

consiguiente, como los factores aquí puestos en juego son, con mucho, diferentes a los

implicados en la "criptografía de comunicación" parece conveniente emplear nuevas

técnicas para alcanzar lo que se conoce con el nombre de "criptografía

computacional".

En cualquier caso, estas técnicas deben cumplir los criterios y medidas que

Shannon [Shannon 40] considera deben cumplir los sistemas secretos de comunicación

perfectos. Estos criterios, que Shannon considera la condición necesaria, incluso

suficiente, para un cifrado de comunicación perfecto, son los siguiente:

1. La cantidad de seguridad necesaria debe decidir la cantidad de trabajo

empleado en el cifrado y descifrado.

2. La clave debe ser lo más corta y sencilla posible.

3. Las operaciones de cifrado y descifrado deben ser tan sencillas como

sea posible.

4. Los errores en el cifrado no deben propagarse al resto del texto y

tampoco debe originar una pérdida de información.

5. El tamaño del mensaje cifrado no debe ser mayor que el tamaño del

mensaje original.

Page 46: tESIS DOCTORAL - Archivo Digital UPM - Archivo Digital UPMoa.upm.es/1032/1/10198501.pdf · la criptografía, en principio alejados del dominio de la Inteligencia Artificial. Después

-35-

El cifrado y descifrado de mensajes puede ser realizado por programas de

computador o por dispositivos "hardware", dependiendo de las necesidades de la

instalación y del usuario. En el caso de transmisión de pocos datos, el cifrado y

descifrado por "software" es suficiente.

2.3. Métodos tradicionales.

Existen dos métodos criptográficos fundamentales que son la Transposición

y la Sustitución y, un tercer método, Híbrido.

2.3.1. Transposición.

Consiste en una reagrupación de los caracteres que constituyen el texto del

mensaje, de una forma establecida. Es decir, los caracteres cambian su posición pero

no su identidad. Es decir, los caracteres del mensaje original se toman fuera de su

orden en el texto y son reubicados de acuerdo con algún patrón geométrico definido, o

camino topológico, convenido a "priori" por los interlocutores válidos. Recibe el

nombre de transposición "monoliteral" cuando sólo se transpone una letra simple del

texto claro y se denomina "poliliteral", cuando se efectúa sobre grupos de caracteres

del texto claro.

Una transposición elemental consiste en escribir el texto completo pero en

orden inverso y separado en bloques de cinco caracteres, así por ejemplo:

TEXTO : ESTO ES UN MENSAJE

TEXTO CIFRADO : EJASN EMNUS EOTSE

Otra variante sería transmitir cada palabra en orden inverso, así, para el

texto anterior:

Page 47: tESIS DOCTORAL - Archivo Digital UPM - Archivo Digital UPMoa.upm.es/1032/1/10198501.pdf · la criptografía, en principio alejados del dominio de la Inteligencia Artificial. Después

36-

TEXTO CIFRADO : OTSE SE NU EJASNEM

Dentro de esta categoría de cifrado por transposición existen algunas

variantes más sofisticadas que van a considerarse a continuación.

2.3.1.1. Sistemas de Cifrado por Líneas.

Se dice que fue utilizado en la guerra civil americana para cifrar mensajes.

Es un método simple y puede ser combinado con otros sistemas. Existen dos versiones,

en la primera versión, la mitad del texto es escrita en una línea, y la otra mitad,

debajo. Así, .^'

TEXTO : ESTE ES EL MENSAJE X

PASO 1 : ESTEESEL

MENSAJEX

A continuación, se escogen, de arriba abajo, y de izquierda a derecha,

bloques de cinco carac teres , en este caso,

TEXTO CIFRADO : EMSET NESEA SJEEL X

En la segunda versión, el texto se forma escribiendo el mensaje por

columnas de izquierda a derecha, así:

PASO 1 : ETEEMNAE

SESLESJX

Y; a partir de aquí, se escriben las dos filas en bloques de cinco carac teres :

Page 48: tESIS DOCTORAL - Archivo Digital UPM - Archivo Digital UPMoa.upm.es/1032/1/10198501.pdf · la criptografía, en principio alejados del dominio de la Inteligencia Artificial. Después

37

TEXTO CIFRADO : ETEEM NAESE SLESJ X

Con este método no se necesita llave concreta. Sin embargo, los mensajes

son fáciles de descifrar, por lo que no suelen utilizarse.

2.3.1.2. Sistemas de Cifrado Matriciales.

Consisten en escribir el mensaje en una matriz, y a continuación,

seleccionar una matriz de forma diferente. Ejemplo:

TEXTO : ESTE ES EL MENSAJE X .^•

ESTE

ESEL

PASO 1:

MENS

AJEX

TEXTO CIFRADO : EEMA SSEJ TEÑE ELSX

Es decir, el PASO 1 se forma por filas, y el TEXTO CIFRADO por

columnas, también se puede hacer de otras formas. Al igual que el método por líneas,

es fácil de destacar .

2.3.1.3. Sistema de Cifrado por Columnas a partir de la llave.

Sea:

LLAVE = CLAVE

TEXTO = ESTE ES EL MENSAJE X

Page 49: tESIS DOCTORAL - Archivo Digital UPM - Archivo Digital UPMoa.upm.es/1032/1/10198501.pdf · la criptografía, en principio alejados del dominio de la Inteligencia Artificial. Después

- 3 8 -

Primeramente, se determina el orden alfabético de los caracteres de la

llave: En este caso:

C = 2;L = 4;A = l ;V = 5 y E = 3.

A continuación, se escribe el texto en forma matricial, siendo el número de

columnas igual al número de caracteres de la llave.

ESTEE

SELME PASO 1:

NSAJE

X

I

A continuación, se escribirá el texto cifrado de acuerdo con la llave. Así,

en el ejemplo considerado, primero la tercera columna, ya que la primera letra de la

llave es la A (posición 3), a continuación la columna 1, ya que la segunda letra de la

llave es la C (posición 1), etc., quedando agrupados en bloques de cinco caracteres. En

consecuencia, se produce el siguiente

TEXTO CIFRADO : TLAES NXEEE SESEM J

Los métodos de transposición, se pueden aplicar varias veces, de forma

que, al texto ya cifrado se le puede aplicar una nueva transposición.

2.3.2. Sustitución.

Consiste en el reemplazamiento de los caracteres del texto por otros

caracteres. Los caracteres mantienen su posición, pero pierden su identidad. Un

ejemplo es el Sistema "Cesar", que consiste en sustituir cada letra por la letra

colocada tres lugares a la derecha en el alfabeto. Así:

Page 50: tESIS DOCTORAL - Archivo Digital UPM - Archivo Digital UPMoa.upm.es/1032/1/10198501.pdf · la criptografía, en principio alejados del dominio de la Inteligencia Artificial. Después

39

ALFABETO : ABCDEFGHIJKLMNOPQRSTUVWXYZ

A. CIFRADO : DEFGHIJKLMNOPQRSTUVWXYZABC

Así, por ejemplo,

TEXTO : ESTO ES UNA PRUEBA

TEXTO CIFRADO : HVWRH VXQDS UXHED

Los tipos de sistemas de sustitución son:

2.3.2.1. Monoalfabéticos. -f

Cuando se utiliza un sólo alfabeto cifrado, como el del ejemplo anterior.

Una variante es el alfabeto inverso, que es un alfabeto recíproco, ya que aplicado 2

veces, devuelve el ca rác te r original:

ALFABETO : ABCDEFGHIJKLMNOPQRSTUVWXYZ

A. CIFRADO : LKJIHGFEDCBAZYXWVUTSRQPONM

Otra forma de obtener el alfabeto cifrado es a partir de una palabra clave,

y consta de t res fases:

1. Elección de la palabra clave. Ejemplo, CRIPTOGRAFÍA.

2. Eliminación de caracteres repetidos, en este caso quedaría:

CRIPTOGAF.

3. Inserción de las letras restantes del alfabeto, para este ejemplo sería:

CRIPTOGAFBDEHJKLMNQSUVWXYZ.

Page 51: tESIS DOCTORAL - Archivo Digital UPM - Archivo Digital UPMoa.upm.es/1032/1/10198501.pdf · la criptografía, en principio alejados del dominio de la Inteligencia Artificial. Después

-40-

También puede sustituirse un carácter del texto original por dos o más

caracteres según una matriz de equivalencia, pero esto incrementa la longitud del

texto, por lo que no resulta conveniente.

2.3.2.2. Polialfabéticos.

Se utilizan múltiples alfabetos cifrados, como la Tabla del cifrado

"Vigenere", que se da en la figura 2.1. Se opera de la forma siguiente:

1. Se escoge una frase o palabra que se escribe encima del texto, siendo

la llave de igual longitud que el texto. Así por ejemplo:

LLAVE : CRIPTOGRAFIACRIP

TEXTO : ESTEESELMENSAJEX

2. Cada carácter es cifrado mediante la tabla Vigenere, donde la fila

representa la llave y la columna el texto. Así, el primer carácter de la

llave C y el primero del texto E, dan G, y así sucesivamente,

resultando:

TEXTO CIFRADO : GJBTXMKCMJVSCAMM

Page 52: tESIS DOCTORAL - Archivo Digital UPM - Archivo Digital UPMoa.upm.es/1032/1/10198501.pdf · la criptografía, en principio alejados del dominio de la Inteligencia Artificial. Después

41

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

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

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

Figura 2.1. TABLA VIGENERE.

A partir de este método, se pueden incorporar variaciones para ocultar aún

más la información.

2.3.2.3. Sustitución Digráfica.

En lugar de procesar carácter a carácter, la sustitución digráfica, sustituye

los caracteres de dos en dos. Así, el sistema "Playfair", utiliza una matriz basada en

una llave, como, por ejemplo:

O R D E N

AB C FG

H IJ K L M

P Q S T U

V W X Y Z

Page 53: tESIS DOCTORAL - Archivo Digital UPM - Archivo Digital UPMoa.upm.es/1032/1/10198501.pdf · la criptografía, en principio alejados del dominio de la Inteligencia Artificial. Después

42

El proceso es como sigue:

1. Se divide el texto en grupos de dos caracteres, si los caracteres en

algún grupo son iguales, se separan y al primero de ellos se le añade un

carácter poco frecuente verbigracia W. Por ejemplo:

TEXTO : ESTO ES UN MENSAJE, quedaría:

PASO 1 : ES TO ES UN ME NS AJ EW

2. Se van sustituyendo cada par de caracteres, de forma que se pueden

dar tres casos: -g''

2.1. Que los dos caracteres estén en la misma fila de la matriz de

sustitución, en cuyo caso se sustituyen por los dos caracteres

inmediatamente siguientes

2.2. Si están en la misma columna, igualmente se sustituyen por los

siguientes en la columna de la matriz.

2.3. Si no están en la misma fila ni en la misma columna, se sustituyen

por los dos que forman un rectángulo con ellos en la matriz; es

decir, los caracteres Cij Ckl se sustituyen por los caracteres C¡i

Ckj de la matriz de sustitución. Por lo tanto, en este caso sería:

TEXTO CIFRADO : DTPED TZGLN DUBHR Y

Page 54: tESIS DOCTORAL - Archivo Digital UPM - Archivo Digital UPMoa.upm.es/1032/1/10198501.pdf · la criptografía, en principio alejados del dominio de la Inteligencia Artificial. Después

-43-

2.3.3. Sistemas Híbridos.

Los dos métodos básicos de sustitución y transposición, pueden combinarse

dando lugar a unos sistemas más complejos. Así se obtiene, por ejemplo, el sistema

fraccionante, que consta de los siguientes pasos:

1. Sustitución bilateral: Transformando cada carácter en dos caracteres

según una matriz:

1 2 3 4 5

1 O R D E N

2 A B C F G ,^:

3 H IJ K L M

4 P Q S T U

5 V W X Y Z

Así, el TEXTO: ESTO ES UN MENSAJE, quedaría

1 4 4 1 1 4 4 1 3 1 1 4 2 3 1

4 3 4 1 4 3 5 5 5 4 5 3 1 2 4

2. Transposición: Estas dos filas, se transforman en una, concatenándolas

de izquierda a derecha y de arriba abajo, quedando:

1 4 4 1 1 4 . . . 4 5 3 1 2 4

3. Sustitución: Según la matriz precedente, y tomando los números de dos

en dos, quedaría:

TEXTO CIFRADO : EFE ... UHF

Page 55: tESIS DOCTORAL - Archivo Digital UPM - Archivo Digital UPMoa.upm.es/1032/1/10198501.pdf · la criptografía, en principio alejados del dominio de la Inteligencia Artificial. Después

44-

2.4. Esquemas basados en el computador.

Las técnicas antes citadas pueden ser implementadas en un computador, sin

embargo, en computadores estándar, los códigos máquina usados, son fijos, y los datos

deben estar en forma utilizable por la máquina; por lo que los símbolos cifrados,

deberán ser escogidos entre los que la máquina es capaz de utilizar, y así, no puede ser

introducido cualquier símbolo cifrado.

Los lenguajes disponibles en el sistema, también imponen una restricción,

ya que los programas para la utilización de la criptografía deben estar codificados en

algún lenguaje estándar, pues en caso contrario, el coste d^'programación, sería

prohibitivo.

Los programas criptográficos deberán tener en cuenta las siguientes

consideraciones:

a) La cantidad de confidencialidad, decide el tiempo de computación y la

labor de programación.

b) Las llaves usadas deben ser simples de construcción, fáciles de

implementar y modificar en la máquina, y ocupar un espacio de

memoria mínimo.

c) Los programas de cifrado y descifrado con llave conocida, deben ser

tan simples como sea posible y con un tiempo de computación pequeño.

d) Las llaves deben destruir los parámetros estadísticos y, o, la

estructura natural del lenguaje dado.

Page 56: tESIS DOCTORAL - Archivo Digital UPM - Archivo Digital UPMoa.upm.es/1032/1/10198501.pdf · la criptografía, en principio alejados del dominio de la Inteligencia Artificial. Después

45

e) Los errores en el criptograma no deben causar ambigüedad o

distorsiones en los datos originales de forma que los hagan inservibles.

f) La capacidad de almacenamiento del criptograma no debe incrementar

excesivamente la memoria.

g) El análisis del texto cifrado sin la llave, deberá ser un problema de tal

calibre que suponga un coste prohibitivo.

La aparición de los computadores dio origen a nuevos esquemas,

criptográficos. Entre los más importantes están los siguientes: ,^'

2.4.1. Esquemas Aritméticos.

Se basan en el hecho de que las operaciones aritméticas tienen la ventaja

de ser fáciles de implementar. Entre estos cabe destacar, respectivamente los dos

siguientes:

2.4.1.1. Suma y Resta.

Puesto que la adición y sustracción tienen operaciones inversas que son

respectivamente la sustracción y adición, y puesto que la información en la memoria

está representada de forma numérica, es posible utilizar estas operaciones para

codificar datos, de forma que el mensaje cifrado C sea:

C= M±K

Page 57: tESIS DOCTORAL - Archivo Digital UPM - Archivo Digital UPMoa.upm.es/1032/1/10198501.pdf · la criptografía, en principio alejados del dominio de la Inteligencia Artificial. Después

- 4 6 -

Siendo M el mensaje y K la llave

El mensaje descifrado M será pues

M = C + K

2.4.1.2. Multiplicación y División.

Estas operaciones pueden ser utilizadas para transformar la información.

Sin embargo, la multiplicación incrementa el tamaño del mensaje. En el caso de la

división, además del divisor entero habrá que transmitir la parte fraccionaria de la

división o bien el resto.

El mensaje cifrado C será:

C = M*/K

Y el mensaje descifrado M, será:

M=C/*K

La clave K, también puede tener la forma p/q, donde p y q son enteros bien

definidos.

Page 58: tESIS DOCTORAL - Archivo Digital UPM - Archivo Digital UPMoa.upm.es/1032/1/10198501.pdf · la criptografía, en principio alejados del dominio de la Inteligencia Artificial. Después

- 4 7 -

2.4.2. Esquemas Lógicos.

Se basan en la propiedad que presentan las operaciones lógicas, o exclusivo,

equivalencia y negación, de poseer operación inversa. En consecuencia, pueden ser

usadas para criptrografiar mensajes.

Así pues, en el caso del "o" exclusivo, se tiene que:

C = M e K

y

M = K e c

'4''

En el caso de la negación, es:

C = M

y

M = C

Y en el caso de equivalencia, se obtiene:

C = M = K

y

M = C = K

En el caso de un fichero M, se puede descomponer en dos componentes Cl y

C2 de las formas siguientes:

Fl . M V K = Cl

M V K = C2

Siendo v la operación "o" lógico, entonces es:

(M V K) A ( ¥ V K") = ((M V K) A M) V ((M v K) A K) =

Page 59: tESIS DOCTORAL - Archivo Digital UPM - Archivo Digital UPMoa.upm.es/1032/1/10198501.pdf · la criptografía, en principio alejados del dominio de la Inteligencia Artificial. Después

-48-

= (M A K) V (íí A M) = M © K = Cl A C2

Siendo A la operación "y" lógico, entonces, se t iene que:

M = (Cl A C2) © K

F2. M-> K = C l

K -»• M = C2

Siendo -* la operación de implicación, se tiene que:

(M V K) A (ir V M) = M s K = Cl A C2,

Luego,

M = (Cl AC2) = K

F3. M A K = C l -I''

M A K = C2.

Entonces,

(M A K) V (M A K) = ((M A K) v M) A ((M A K) v K) =

= (M V M) A (K V M) A (M V K") A (K V K) =

= (K V M) A (M V K") = M = K = Cl V C2.

Luego,

M = (Cl V C2) = K

F4. M A K = C l

M V K = C2

Entonces,

(M V K) -» (M A K) = C2 -» C l .

Por lo t an to .

(M V K) V (M A K) = (M A K) V (M A K) = C2 - - C l .

Luego,

M = K = C 2 - » ' C 1 y M = (C2 ^ Cl) ^ K.

Page 60: tESIS DOCTORAL - Archivo Digital UPM - Archivo Digital UPMoa.upm.es/1032/1/10198501.pdf · la criptografía, en principio alejados del dominio de la Inteligencia Artificial. Después

- 4 9 -

2.4.3. Esquemas Matriciales.

El mensaje M se descompone en elementos de una matriz rectangular de f

filas y c columnas, de forma que si e son los elementos de M, entonces e < fe,

rellenando de elementos redundantes en caso de e < fe.

A la matriz M, se le puede sumar o multiplicar una matriz clave K. En el

caso de la adición, el tamaño de K debe ser igual al de M, y se realizan menos

operaciones que en el producto.

Si se utiliza la multiplicación, K debe tener una única inversa, por lo que la

matriz K debe ser cuadrada no singular, de c x c elementos. En e|te caso, es preferible

elegir un gran número de filas f para M y un número pequeño de columnas c. En el caso

más simple, K puede ser escogida como una matriz ortogonal para que K"l sea su

transpuesta.

2.5. Técnicas avanzadas.

Existen dos tipos de algoritmos criptográficos: convencionales o de llave

secreta y públicos. Con un algoritmo criptográfico convencional, las llaves de cifrado

y descifrado, o bien son idénticas, o si son diferentes, son de tal forma que una de ellas

puede ser obtenida fácilmente a partir de la otra. En cambio, en un algoritmo de llave

pública, muchos usuarios pueden codificar un texto según una llave pública de cifrado,

pero sólo el usuario o destinatario específico del texto, o bien aquel que conoce la

llave de descifrado puede decodificar dicho texto, ya que la llave de descifrado no se

puede obtener a partir de la llave de cifrado.

Page 61: tESIS DOCTORAL - Archivo Digital UPM - Archivo Digital UPMoa.upm.es/1032/1/10198501.pdf · la criptografía, en principio alejados del dominio de la Inteligencia Artificial. Después

-50-

A continuación, se van a presentar tres ejemplos de algoritmos

convencionales: El de la llave en memoria, el de llave infinita y el D.E.S.; Y dos

algoritmos de llave pública, el R.S.A. y el método de Merkle y Hellman.

2,5.1. Método de la Llave en Memoria.

Basada en la técnica desarrollada por Vernam, utiliza el "o" exclusivo.

Skatrud, por su parte, implemento un sistema que utiliza dos llaves de memoria y una

dirección de memoria. La sincronización se alcanza por medio de esta dirección que es

la primera información del texto. A partir de esta dirección, se localizan las

posiciones de memoria que se utilizarán para la codificación. El proceso de

modificación consta de dos partes: -|'

a) X = D © Ki

b) C = X e K2

Donde D, representa el dato o carácter a codificar. Ki es la primera llave

de memoria y K2 la segunda. A continuación, se modifica el carácter siguiente

utilizando otras llaves.

La seguridad del sistema depende de la cantidad de memoria usada, que a

su vez, depende de los mensajes.

Supóngase que se quieren transmitir mil mensajes de mil caracteres cada

uno, se necesitaran mil posiciones de memoria con objeto de no repetir ningún par de

direcciones de memoria en las operaciones de cifrado. Entonces, el mensaje número 1

se codificará así:

Page 62: tESIS DOCTORAL - Archivo Digital UPM - Archivo Digital UPMoa.upm.es/1032/1/10198501.pdf · la criptografía, en principio alejados del dominio de la Inteligencia Artificial. Después

- 5 1 -

CARÁCTER DIRECCIÓN DE MEMORIA 1 DIRECCIÓN DE MEMORIA 2

1 1 1

2 2 2

1.000 1.000 1.000

A continuación, el mensaje 2, ya no usaría los mismos pares de direcciones

del mensaje 1 y se condificaría así:

CARÁCTER DIRECCIÓN DE MEMORIA 1 DIRECCIÓN DE MEMORIA 2

1 1 2 ,g.

2 2 3

1.000 1.000

Y así sucesivamente, hasta el mensaje 1.000, que sería codificado de la

forma:

CARÁCTER DIRECCIÓN DE MEMORIA 1 DIRECCIÓN DE MEMORIA 2

1 1 1.000

2 2 1

1.000 1.000 999

Por lo tanto , no se han repetido los pares de direcciones de memoria en la

codificación de los 1.000 mensajes.

Page 63: tESIS DOCTORAL - Archivo Digital UPM - Archivo Digital UPMoa.upm.es/1032/1/10198501.pdf · la criptografía, en principio alejados del dominio de la Inteligencia Artificial. Después

52

Para poder realizar el descifrado, las posiciones de memoria utilizadas no

deben haber sufrido ningún cambio después de la codificación.

2.5.2. Método de Llave Infinita.

Mediante esta técnica, debida a Carrol y Me Lellan, se reduce la necesidad

del almacenamiento de las llaves de memoria que utiliza el método anterior. Está

basada en la generación de números aleatorios por el método de las congruencias que

está incorporado en cualquier computador moderno. Se procede de acuerdo con los

siguientes pasos;

1. Se divide el texto a codificar en bloques de n cacacteres.

2. Se escoge un valor inicial o semilla XQ, para generar una serie de n

números aleatorios.

3. Se genera una serie de números aleatorios xi, X2,..., xn a partir del XQ

y se efectúa el "o" exclusivo entre los caracteres cj del texto y los

números xj obtenidos para los n caracteres del bloque del texto.

4. Si no existen más bloques a transmitir se termina el proceso. En caso

contrario, se sigue en el punto siguiente.

5. Se escoge como nueva semilla XQ, el último número aleatorio generado

Xn; es decir, XQ = xn y se vuelve al paso tercero.

Para poder descifrar el texto, se procede de manera análoga, bastando con

conocer la semilla original XQ para poder reconstruir el mensaje.

Page 64: tESIS DOCTORAL - Archivo Digital UPM - Archivo Digital UPMoa.upm.es/1032/1/10198501.pdf · la criptografía, en principio alejados del dominio de la Inteligencia Artificial. Después

-53-

2.5.3. El DES, ("Data Encrvption Standar").

2.5.3.1. Génesis.

De 1.968 a 1,975 un grupo de investigadores de la casa IBM, "Internacional

Bussines Machines", estudiaron técnicas de cifrado para proteger, económica y

eficazmente, la información almacenada en ficheros o transmitida por canales de

comunicaciones. De estas investigaciones nació Lucifer, que es un esquema, basado en

las ideas expuestas por Shannon [Shannon 40], y que utiliza combinaciones de

transformaciones elementales simples tales como transposiciones fijas y sustituciones

controladas por llaves [Feistel 9], [Meyer 29].

En las aplicaciones comerciales, las especificaciones del algoritmo son

públicas, hasta incluso normalizadas, residiendo todo el secreto en la llave. Además,

los detalles del algoritmo deben elegirse de manera que permitan su implantación

sobre un único circuito de larga escala de integración por aquella época. Con lo que,

resulta ser un dispositivo "hardware".

En el curso de estos estudios, la NSA, "Agencia Nacional de Seguridad", se

interesó en el desarrollo de esos trabajos. Las sustituciones, son funciones no lineales

realzadas con la ayuda de cajas S, que son una especie de tabla de 6 bits de dirección y

4 bits de resultado. En el bienio 73-74, la NSA "clasifica" los principios subyacentes en

la elección de estas tablas, declarando que los investigadores habían redescubierto

principios previamente clasificados.

En mayo de 1.973 y en agosto de 1.974 [Guillou 16], la NBS, Oficina

Nacional de Estándares, sensibilizada por el contexto político, publica llamadas para la

adquisición de algoritmos de cifrado para su uso por las distintas agencias federales.

Entre los algoritmos remitidos, respondiendo a esta llamada, se encontraba el que

Page 65: tESIS DOCTORAL - Archivo Digital UPM - Archivo Digital UPMoa.upm.es/1032/1/10198501.pdf · la criptografía, en principio alejados del dominio de la Inteligencia Artificial. Después

-54-

envió IBM con el nombre de "Encrytion algorithm for computar data protection". Este

algoritmo, fue publicado en marzo de 1.975 y en agosto del mismo año, con una

petición de comentarios con el fin de establecer una norma de uso en las agencias

federales. IBM había precisado en aquél momento que si el algoritmo propuesto era el

seleccionado como una norma federal, renunciaría a las patentes implicadas en los

límites territoriales de los EE.UU.

El algoritmo finalmente fue el elegido y rápidamente bautizado como DES,

quedando sometido a control oficial, ejercido por la NSA, sobre la exportación de

circuitos. Este control, impuesto en nombre de la seguridad, abocó a un

proteccionismo exagerado de los productos y los servicios propuestos por las firmas

norteamericanas. Este control "incordia" mucho, fuera de los E^UU., el desarrollo de

maquetas y experiencias dedicadas a precisar la puesta en marcha del cifrado en los

protocolos de comunicaciones. Y, lo que es aún más grave, DES en principio elegido

para su uso por las agencias federales, se ha convertido de hecho en una norma

comercial. Así en marzo de 1.978, el "American National Standards Institute" (ANSÍ),

eligió al DES como norma comercial de cifrado. Y el grupo de trabajo, "ad hoc"

ANSIX3S3, estudia actualmente los problemas de introducción del cifrado en los

protocolos de comunicación. Aunque las investigaciones realizadas alrededor del DES y

su existencia, sean incluso obstáculos en el desarrollo y la puesta en marcha de un

nuevo algoritmo concurrente, es absolutamente necesario el conocimiento técnico y la

voluntad política e industrial para desarrollar en Europa un algoritmo de cifrado. Más

aún, pues, so pena de hipotecar gravemente el porvenir de las tecnologías de

comunicación, es necesario desarrollar una norma europea de cifrado.

Page 66: tESIS DOCTORAL - Archivo Digital UPM - Archivo Digital UPMoa.upm.es/1032/1/10198501.pdf · la criptografía, en principio alejados del dominio de la Inteligencia Artificial. Después

- 5 5 -

2.5.3.2. El Algoritmo.

Es un algoritmo complejo, en el cual, cada bit del texto cifrado, depende de

todos los bits del texto original y de todos los bits de la llave. Consta de un conjunto

de operaciones de sustitución y transposición.

Opera con bloques de 64 bits de texto. La llave es de 64 bits, de los cuales

56 son usados por el algoritmo y los otros 8 pueden ser usados para control de paridad.

Es interesante, subrayar que las primeras descripciones de algoritmos tipo Lucifer

hablen de llaves de 128 bits. El algoritmo consta de los siguientes pasos globales:

1 El bloque de texto se inserta en bloques de - 4 bits, que, en caso

necesario, se completan con caracteres de relleno y es sometido a una

permutación IP, de acuerdo con una tabla.

2 A partir del bloque permutado, se efectúan 16 iteraciones, en cada una

de las cuales, se procede como sigue: Se divide el bloque de entrada en

dos partes: Li y Ri de 32 bits cada una, entonces, el bloque de salida

será:

Li+i = Ri

Ri+1 = Li © f(Ri, Ki+i)

Siendo Ki+i, un bloque de 48 bits elegidos de los 64 de la llave. Y

siendo f una función compleja de cifrado que, mediante unas tablas de

selección y una permutación al final, produce un bloque de 32 bits.

Page 67: tESIS DOCTORAL - Archivo Digital UPM - Archivo Digital UPMoa.upm.es/1032/1/10198501.pdf · la criptografía, en principio alejados del dominio de la Inteligencia Artificial. Después

-56-

3 Una vez producida la última iteración, se somete a los bloques de

salida concatenados Rig Lig a la permutación IP"1, inversa de la

primitiva IP.

Tal vez sea conveniente, por las implicaciones que tiene, el extenderse aquí

un poco más acerca de la función f del paso [Sugarman 41] del algoritmo. Lo primero

que hace f es expandir Rj de 32 bits a 48 bits por medio de una tabla que dice: Colocar

el bit 1 en las posiciones 2 y 48; colocar los bits 2 y 3 en las posiciones 3 y 4; colocar

el bit 4 en las posiciones 5 y 7; etc. Luego, se seleccionan de forma "astuta" 48 de los

56 bits de la llave para obtener la llave 1. Entonces, estos dos números de 48 bits se

suman en "o" exclusivo dando otro número de 48 bits, que se introducen en un conjunto

de ocho cajas S ya mencionadas y que forman parte de la controversia del DES. Cada

caja S acepta seis bits de entrada y devuelve 4 bits de salida, especificados por ocho

tablas, una para cada caja S. Cada número de salida puede proceder de uno de los

números de entrada. El resultado obviamente es que el número de 48 bits se reduce a

uno de 32,

El sentido de esta expansión y posterior contracción, es que un supuesto

penetrador del sistema no puede trabajar hacia atrás, a través de DES, cuando intente

descifrar. El violador podría conocer, porque está publicado [NBS 31], el esquema de

permutación. Pero cuando examine una caja S, no sabrá cual de las cuatro posibles

salidas se usó en cualquier caso.

2.5.3.3. La Problemática DES.

Existen tres argumentos principales [Guillou 16], [EDP ANALYZER 7]

contra el uso del DES, que aquí se van a describir someramente. El primero, de gran

importaticia, es que se guardan cosas en secreto. Por ejemplo, hay quien dice que, con

la disculpa de verificar el algoritmo, la NSA lo cambió con el fin de reducirlo y crear

Page 68: tESIS DOCTORAL - Archivo Digital UPM - Archivo Digital UPMoa.upm.es/1032/1/10198501.pdf · la criptografía, en principio alejados del dominio de la Inteligencia Artificial. Después

-57-

una "trampa" de la que sólo la NSA tiene la llave. Otros afirman que la NSA forzó a

IBM a mantener secreto el diseño de las cajas S de modo que esta puede ser la

"trampa". Otros arguyen que fué la NSA la que obligó a IBM a reducir el tamaño de la

llave de 64 a 56, y justo ahí puede estar parte de la "trampa".

Ante estos alegatos tanto IBM como la NSA se declaran inocentes de

cualquier tipo de manipulación secreta; sin embargo, muchos suponen que,

efectivamente, hay "gato encerrado", por lo que difícilmente puede considerarse a

DES como de llave pública.

El segundo argumento contra DES, afirma que la llave de 56 bits es

demasiado corta. En efecto, Diffie y Hellman [Diffie 6] inves^gadores en Stanford,

señalaron la posibilidad de un ataque brutal contra DES, gracias a una máquina

especializada permitiendo comprobar en un día el conjunto de las 256 llaves posibles

siendo dado un par "claro-cifrado". Esta máquina evaluada por ellos en 20.000.000 $, es

fácil de construir y su coste disminuirá de año en año. Estas ideas fueron consideradas

como poco realistas en el momento de su publicación y no provocaron ninguna reacción

oficial, tanto más cuanto que los oficiales de NBS intentaban desacreditar en privado a

estos teóricos de la información y, por elevación, sus críticas al asunto DES. Pero, en

1.977 Rivest, basándose en estos trabajos de Diffie y Hellman, publicó sendos artículos

en las revistas Science y Scientific American, en donde explicaba detalladamente sus

trabajos recogidos en la memoria técnica 82 de abril del 77 de LCS (Laboratorio of

Computer Science) del MIT. Con lo que las nuevas ideas sobre criptografía no estaban

confinadas al "ghetto" de sólo los iniciados. A partir de ese momento, las ideas de

Diffie y Hellman dejaron de ser irrealistas y desde entonces la NSA se interesa en el

desarrollo de cifrados de llave pública.

Page 69: tESIS DOCTORAL - Archivo Digital UPM - Archivo Digital UPMoa.upm.es/1032/1/10198501.pdf · la criptografía, en principio alejados del dominio de la Inteligencia Artificial. Después

-58-

El tercer argumento, es que justamente por esas razones los sistemas de

verdadera llave pública son mejores que DES. Estos sistemas de cifrado son los que se

van a considerar a continuación.

2.5.4. Algoritmos de Llave Pública.

2.5.4.1. Bases Teóricas.

En el curso del Congreso sobre la Teoría de la Información celebrado en

junio de 1.975 en Lenox Massachusetts, Diffie y Hellman presentaron ideas originales

sobre sistemas de cifrado. Allí pusieron de evidencia el problema fundamental de las

redes públicas de transmisión de información; a saber, la -distribución de llaves

secretas y la identificación entre corresponsales, sugiriendo métodos nuevos para

alcanzar estos resultados.

Sus reflexiones se apoyan en la teoría de la complejidad del cálculo. Para

evaluar una función en un punto, se puede bien calcular directamente el valor usando

un algoritmo adecuado, o bien buscando en una tabla de valores precalculados. De este

modo, la complejidad del cálculo puede expresarse como un compromiso entre el

número de operaciones elementales a efectuar; es decir, el tiempo y la energía

consumidos en el cálculo, y el tamaño de la memoria necesario, o espacio de cálculo

empleado. Para un problema dado, el mejor algoritmo es el que minimiza el producto

de ambos factores.

La noción de función prácticamente no invertible, se deduce de estas

consideraciones y es relativa al estado actual de los conocimientos de los algoritmos,

así como al estado actual de la tecnología que define la potencia de cálculo disponible.

Para que sea utilizable, una función prácticamente no invertible debe ser fácil de

Page 70: tESIS DOCTORAL - Archivo Digital UPM - Archivo Digital UPMoa.upm.es/1032/1/10198501.pdf · la criptografía, en principio alejados del dominio de la Inteligencia Artificial. Después

-59-

calcular, mientras que el cálculo de su función inversa, necesite un tiempo

astronómico y una memoria galáctica.

Y, justamente, ciertos problemas matemáticos, no pueden resolverse

actualmente más que por métodos demasiado lentos incluso por los computadores más

potentes. Claro que el hecho de que no se conozcan métodos eficientes, no quiere

decir que no existan.

En noviembre de 1.976, Diffie y Hellman [Diffie 6] fueron los primeros en

imaginar funciones de cambio de llaves que permiten establecer una llave secreta

entre dos corresponsales ligados por un canal de comunicación de escucha pasiva.

Siendo asimismo los primeros en definir las propiedades teóricas de los sistemas de

cifrado con llave pública que permiten el equivalente electrónico de las firmas, algo

que no permitía el DES.

Estas funciones de cambio de llave se basan en ciertos resultados clásicos

de la aritmética que se mostraron adecuados a las nuevas necesidades, como el

siguiente: Sea P un número primo; las leyes de la suma y de la multiplicación módulo 7

dotan al conjunto de los enteros de O a P-1 de una estructura de cuerpo. Es el cuerpo

de Galois CG(P). Siendo dados x e y dos elementos no nulos de CG(P), se puede definir

X ** y módulo P como la potencia y-ésima de x módulo P. Si x es un elemento

primitivo; es decir, generado por sus potencias sucesivas de todos los elementos no

nulos del cuerpo, entonces la transformación de y en z tal que z = x ** y módulo P se

denomina "exponencial", mientras que la transformación inversa se denomina

"logaritmo de base x sobre GC(P)".

Si P y (P-l)/2 son dos números primos, entonces la exponencial sobre GC(P)

es una función prácticamente no invertible [Pohling 35]. Si el número P se escribe

sobre n bits, el cálculo de la exponencial se hace con tres palabras de n bits en un

Page 71: tESIS DOCTORAL - Archivo Digital UPM - Archivo Digital UPMoa.upm.es/1032/1/10198501.pdf · la criptografía, en principio alejados del dominio de la Inteligencia Artificial. Después

-60-

tiempo proporcional a n**3; en tanto que el cálculo de un logaritmo por el mejor

algoritmo conocido se hace con una memoria y un tiempo proporcional a 2 **(n2).

Números primos de esta forma existen y se localizan bastante fácilmente. Incluso se

pueden elegir de manera que se puedan simplificar los cálculos en binario. Por

ejemplo, 2210-65 y 2209-33 cumplen estos requisitos.

Una propiedad de base de las funciones exponenciales es que:

(a ** x) y = (a ** y) X = a ** xy

lo que permite hacer de la exponencial sobre CG(P) una función de cambio de llaves, y

concebir a continuación un servicio público de identificación y.^iscrección sobre una

red pública. La forma de hacer esto es como sigue: La administración retiene un gran

número primo P, verbigp^acia 2209 - 65, y genera periódicamente al azar un elemento

primitivo de CG(P), por ejemplo "e". Luego indica estos valores P y e a cada usuario

que posee una caja negra como interfaz con la red. De este modo, un usuario del

servicio, tal que Ul, genera al azar y secretamente un número impar "i" de 210 bits e

introduce este valor en su caja negra como identificador secreto. Depués, calcula,

también en secreto, la imagen pública de este identificador como sigue:

A = e ** i mod P

que constituye su identificador público, que transmite a sus principales

"interlocutores" y a la administración para que lo inserte en el "armario" público. Este

"armario", establecido y gestionado bajo la responsabilidad de la administración,

indicará además del nombre de los usuarios y del número de acceso a la red, su

identificador público. Eventualmente podrá ser consultado a través de la red por un

acceso particular. Entonces, el acceso estará provisto de una caja negra parecida a la

Page 72: tESIS DOCTORAL - Archivo Digital UPM - Archivo Digital UPMoa.upm.es/1032/1/10198501.pdf · la criptografía, en principio alejados del dominio de la Inteligencia Artificial. Después

- 6 1 -

de los usuarios de modo que identifique el "armario" en el momento de las consultas,

pues es esencial que dicho "armario" no pueda ser ni simulado ni falsificado.

Cuando dos usuarios, Ul y U2, desean establecer una comunicación secreta,

combinan el identificador público de su interlocutor con su identificador secreto con el

fin de obtener la llave de conexión característica de su comunicación durante el

período de validez del elemento primitivo "e". Para Ul la llave es:

K : B ** i mod P

mientras para U2 la llave es:

K = A ** i' mod P

Un intruso poseyendo e. A, B y P no puede calcular prácticamente i ó i' y, en

consecuencia, no puede calcular K, y entonces esta llave de conexión se utiliza como

un identificador mutuo. Si ahora Ul y U2 quieren generar una clave de comunicación

particular para cada reinicialización de su comunicación, Ul genera al azar x, número

impar de 210 bits y calcula K ** x mod P que transmite a U2 que procede de la misma

forma. Entonces la llave de comunicación es para Ul:

(K ** y) ** x mod P

y para U2:

(K ** x) ** y mod P

A continuación, esta llave se utiliza para cifrar los datos transmitidos

sobre la línea así reinicializada. Este cifrado puede hacerse con la ayuda de DES pues

si el circuito se reinicializa cada minuto, el ataque brutal, frente a DES es ineficaz.

Page 73: tESIS DOCTORAL - Archivo Digital UPM - Archivo Digital UPMoa.upm.es/1032/1/10198501.pdf · la criptografía, en principio alejados del dominio de la Inteligencia Artificial. Después

-62-

2.5.4.2. Propiedades de un Sistema de Cifrado de Llave Pública.

Las propiedades de un sistema de cifrado de llave pública, definidas por

Diffie y Reliman en el trabajo ya citado [Diffie 6], son las siguientes:

Sea K un espacio finito de llaves, M un espacio finito de mensajes, y

(PK,SK) pares de transformaciones definidas en M. Entonces:

a) Para toda llave K, PK y SK son inversas.

b) Para toda llave K, todo mensaje m, PK(m) y SK(m) son fáciles de

calcular. ,g'"

c) Para casi todas las llaves K, es prácticamente imposible definir un

algoritmo eficaz equivalente a SK conociendo solamente PK.

d) Para toda llave K, es fácil generar un par (PK,SK).

De este modo, cuando un usuario desea ser miembro de un sistema de

cifrado de llave pública, utiliza un generador público de cifra de llave pública, para

obtener un par (S,P). Guarda en secreto la transformación S, mientras que inscribe en

el "armario" público la transformación P. Toda persona conociendo la transformación

pública P puede dirigir un mensaje confidencial a ese usuario transmitiéndole el

criptograma C = P(M). Únicamente, quien conozca la transformación secreta S puede

interpretar correctamente ese criptograma.

Un sistema de cifrado de llave pública permite igualmente obtener firmas,

"matasellos", acuses de recibo, etc. Sólo quien posea la transformación secreta S

Page 74: tESIS DOCTORAL - Archivo Digital UPM - Archivo Digital UPMoa.upm.es/1032/1/10198501.pdf · la criptografía, en principio alejados del dominio de la Inteligencia Artificial. Después

-63-

puede emitir una firma R = S(M) pero todo el mundo puede verificar su autenticidad

aplicando la transformación pública P.

Los dos principales generadores de llave pública el de Rivest [Rivest 38] el

de Merkle y Reliman [Merkle 28] se consideran a continuación.

2.5.4.3. Algoritmo RSA.

Su principio consiste en utilizar un resultado clásico de la teoría de

números conocido con el nombre de teorema de Euler, el cual afirma que para evaluar

la función de Euler de un número es necesario conocer su descomposición en factores

primos. Ahora bien, es fácil mostrar que un número entero no-es primo gracias al

teorema de Fermat; sin embargo, es prácticamente imposible factorizar un número

compuesto de factores primos grandes, o demostrar que es primo. Ambos problemas

están ligados. De hecho, es fácil determinar de cuales se está prácticamente seguro de

que son primos y, por lo tanto, crear un gran número compuesto conteniendo dos

grandes factores casi con certeza primos. Pero es harto imposible factorizar el gran

número así obtenido sin idea previa de los factores que lo componen.

El algoritmo RSA, así llamado debido a las iniciales de sus autores, procede

como sigue:

1 Para codificar el mensaje se utiliza una llave pública formada por dos

números enteros e y n.

2 Para decodificar el mensaje cifrado, se utiliza una llave de descifrado

privada, formada por dos números enteros d y n.

3 El mensaje se divide en n bloques de x dígitos, de forma que

M = did2 ••• dxti.

Page 75: tESIS DOCTORAL - Archivo Digital UPM - Archivo Digital UPMoa.upm.es/1032/1/10198501.pdf · la criptografía, en principio alejados del dominio de la Inteligencia Artificial. Después

-64-

4 El cifrado C del mensaje M, será el resto de dividir Me entre n. Es

decir,

Me = bn + r.

Teniendo en cuenta que dos números enteros a y b son congruentes

módulo m; es decir:

a = b (mod m)

Si se cumple que: a - b = xm, para algún x, entonces:

Me = r (mod n)

y denotando por E(M) el cifrado de M, será

C = E(M) = r

5 El descifrado de C, D(C) será el resto de dividir íjd entre n, por lo que:

Cd = b' n + r'

Cd = r' (mod n)

D (C) = r'

Se elige n como el producto de dos números primos p y q. Se

recomienda escoger p y q de unos 100 dígitos, por lo que n será de unos

200 dígitos.

Se cumple que D (E (M)) = M

En efecto, sea (n) la función "cociente" de Euler para el número n.

Entonces,

0 (n) = n (1 - 1/p) (1 -1/q) = (p-l)(q-l)

Se escogen e y d tales que:

ed = 1 (mod 0 (n)).

Es decir,

ed = t 0 (n) + 1

Por otro lado,

Mt 0 (n)+l = M (mod n)

En efecto:

Page 76: tESIS DOCTORAL - Archivo Digital UPM - Archivo Digital UPMoa.upm.es/1032/1/10198501.pdf · la criptografía, en principio alejados del dominio de la Inteligencia Artificial. Después

-65-

a) Si M es relativamente primo a n

Mt 0 (n) = 1 (mod n) y, por lo tanto,

Mt 0 (n)+l = M (mod n)

b) Si M no es relativamente primo a n, tendrá un factor de n, sea este

p, entonces M = hp.

En este caso, q no puede ser factor de h ya que M < n. Por lo tanto:

M s 1 (mod q)

Y también

M 0 (q) = 1 (mod q)

Siendo

0 (q) = q = (1-1/q) = q-1

Por las propiedades de las congruencias ^^'

M 0 (q) 0 (p)t = 1 (mod q)

o bien

M 0 (n)t = 1 + sq

y multiplicando por M se tiene que

M 0 (n)t+l = M + sqhp = M + shn

o bien

M 0 (n)t+l = M (mod n)

Análogamente, si se hubiera escogido q como factor de M, se

habría llegado a

Mt 0 (n)+l = M (mod n)

Así pues,

Med = M (mod n)

y también

Med = M + zn

Como

Cd = (Me - bn)d = b'n + r',

resulta que.

Page 77: tESIS DOCTORAL - Archivo Digital UPM - Archivo Digital UPMoa.upm.es/1032/1/10198501.pdf · la criptografía, en principio alejados del dominio de la Inteligencia Artificial. Después

-66-

Med = b"n + r'.

De donde

M = r'

Cumpliéndose, por lo tanto, que

D (E(M)M = M

Igualmente, se cumple que

E (D(M)) = M

Así pues, el descifrado de C, devuelve M. Por otro lado, a partir de la

llave pública e, n no es posible obtener la llave privada d, n ya que d no

es fácilmente computable a partir de e y n..

Actualmente, este algoritmo está implementado sobre micros, donde

parece que no es causa de graves problemas de uso [Burton 4].

2.5.4.4. Método de Merkle y Hellman.

El principio del método se basa en el conocido problema de la "mochila", en

inglés "knapsack", muy estudiado en inteligencia artificial por su evidente explosión

combinatoria, que puede enunciarse como sigue: Siendo dada una longitud 1 y un

conjunto finito de elementos de longitud l i , I2, ... ln> encontrar un subconjunto de

estos elementos que puestos uno detrás de otro, dan exactamente la longitud 1. Este

problema, muy complicado en el caso general, forma parte de un conjunto de

problemas matemáticos para los cuales sólo se conocen soluciones admisibles pero no

eficaces y menos óptimas.

En la práctica, para usar la teoría subyacente a este problema en

criptografía, se comienza por construir un conjunto ordenado en donde cada elemento

es mayor que la suma de los que le preceden; después se oculta esta propiedad

Page 78: tESIS DOCTORAL - Archivo Digital UPM - Archivo Digital UPMoa.upm.es/1032/1/10198501.pdf · la criptografía, en principio alejados del dominio de la Inteligencia Artificial. Después

-67-

aplicando al conjunto una transformación secreta y reversible. Este conjunto

desordenado representa la transformación pública, únicamente quien conozca la

"artimaña"; es decir, la información secreta que permite reordenar el conjunto, puede

interpretar el criptograma contenido en una "mochila" dada, obtenida con la

transformación pública. Sin embargo, la seguridad de este método ha sido

sobreestimada, encontrándose fallos [Vandewalle 43].

2.5.4.5. Problemas de los Sistemas de Llave Pública.

A pesar de las bondades pregonadas por sus inspiradores, los sistemas de

llave pública presentan algunos inconvenientes que no es posible ignorar. En primer

lugar, está el hecho de que estos sistemas son muy lentos de operación.

Por su parte, Kohnfelder [Govaerts 14] apunta algún otro problema

concernientes al uso de estos sistemas, como es la necesidad de una tercera parte

fiable para operandos, so pena de que un intruso pudiera imitar la función del fichero

público. También apunta que los sistemas de llave pública son más apropiados para

transmisión de datos que para su almacenamiento.

Page 79: tESIS DOCTORAL - Archivo Digital UPM - Archivo Digital UPMoa.upm.es/1032/1/10198501.pdf · la criptografía, en principio alejados del dominio de la Inteligencia Artificial. Después

68

"Sólo me fío de lo incierto;

sólo dudo de lo cierto,

y es del capricho del azar

de quien aprendo"

(F. Villon)

CAPITULO 3. SISTEMA PROPUESTO.

3.1. Hipótesis de trabajo.

La consecuencia fundamental que se puede extraer del capítulo anterior, es

que a pesar de la conveniencia de la existencia de un Sistema d^ Criptografía de llave

pública, cumpliendo los requisitos de Shannon, (a quien por cierto mientras se estaba

elaborando este trabajo le concedieron el premio "Inamori", equivalente al Nobel en

Informática) la verdad es que hasta ahora no se ha conseguido. En el caso, RSA y

Merkel-Hellman, porque si bien son de clave pública, no parecen ser lo suficientemente

seguros. En el caso del DES, de uso habitual en muchos organismos, porque, además de

ser teóricamente vulnerable, la colusión IBM, NSA, NBS hace que se sospeche

altamente de su carácter público.

Todo ello hace que, aquí ahora, se proponga un sistema con un enfoque

totalmente distinto y, por ende, original diferente a los presentados hasta el momento,

que cumple todas y cada una de las condiciones de Shannon. De este modo, este sistema

se puede considerar de llave pública, invulnerable, y adaptativo, que hace que su

versatilidad sea tal que pueda usarse tanto desde un punto de vista "software" como

"hardware", y a voluntad tanto en grandes computadores como en computadores

personales. En suma, se puede afirmar que, con probabilidad rayana en la certeza, el

sistema presentado está lo suficientemente próximo al concepto habitual de sistema

criptográfico óptimo que puede ser tenido por tal.

Page 80: tESIS DOCTORAL - Archivo Digital UPM - Archivo Digital UPMoa.upm.es/1032/1/10198501.pdf · la criptografía, en principio alejados del dominio de la Inteligencia Artificial. Después

69

La condición de invulnerabilidad, la alcanza porque se fundamenta en el

hecho, establecido "a priori", y contrastado experimentalmente a "posteriori", de que la

distribución de los símbolos en el mensaje cifrado, es uniforme. En consecuencia,

cualquier análisis estadístico que se efectúe sobre el mismo será vano. Pero, son

justamente los análisis de tipo estadístico los únicos que pueden vulnerar este tipo de

cifrado, puesto que el sistema es público.

Su adaptabilidad viene dada por su arquitectura, basada en la separación de

los datos o conocimiento factual, del conocimiento operatorio dado en forma de reglas;

del conocimiento de control que, como se verá más adelante, en este caso es muy

sencillo. Esta arquitectura, tomada del procedimiento de modelización de problemas

usado en inteligencia artificial, denominado "Sistemas de Producción", es

absolutamente adecuada para la construcción de sistemas adaptativos, más aún, para

sistemas capaces de aprendizaje [Newell 32].

Es público, puesto que aquí mismo se va a describir totalmente poniendo

algunos ejemplos de funcionamiento, en donde aparecerá tanto el texto claro como el

cifrado. Sin que toda esta información aumente el grado de vulnerabilidad.

También es interesante señalar que, a fin de hacerlo totalmente versátil y

transportable, se abandonó la concepción de cifrado en bloques por la de cifrado por

caracteres. Aunque, al menos hasta el momento actual, no existe un acuerdo total sobre

cual de los dos es el mejor, de lo que no existe duda es de que el cifrado por bloques

basado en "hardware", viene condicionado por el propio "hardware" con lo que su grado

de versatilidad y transportabilidad entre sistemas es muy reducido. En cambio, el

cifrado por caracteres presentado, puede establecerse fácilmente con independencia del

"hardware" pudiendo asegurarse que su transportabilidad es total.

Page 81: tESIS DOCTORAL - Archivo Digital UPM - Archivo Digital UPMoa.upm.es/1032/1/10198501.pdf · la criptografía, en principio alejados del dominio de la Inteligencia Artificial. Después

-70

Todas estas cuestiones, tanto teóricas como prácticas de aleatoriedad,

arquitectura, y, finalmente, la descripción del sistema propuesto como síntesis de lo

que se va a exponer a lo largo de este capítulo, conforman la realización práctica de las

hipótesis de trabajo que planteó esta tesis.

3.2. El conocimiento del sistema.

Con el nombre genérico de sistemas basados en el conocimiento, de los que

los sistemas expertos, es el apartado más importante y conocido, industrial y

eomercialmente hablando, se designan un conjunto de programas construidos usando

-r" técnicas de inteligencia artificial, cuyas prestaciones dependen más de la presencia

explícita de un conocimiento de alta calidad que del uso de ingeniosos y, o, potentes

métodos computacionales [Pazos 33].

Hablando en abstracto, el conocimiento consta de:

a) Descripciones, que identifican y diferencian objetos y clases, y datos. Las

descripciones, son declaraciones y aserciones en algún lenguaje, cuyas

componentes elementales constan de conceptos o características

primitivas. Un sistema de descripción incluye generalmente, reglas para

aplicar e interpretar dichas descripciones en aplicaciones específicas.

b) Relaciones, que son tipos particulares de descripciones que expresan

dependencias y asociaciones entre elementos de conocimiento.

Específicamente, estas relaciones pueden denotar asociaciones

definicionales, taxonómicas, empíricas y causales.

Page 82: tESIS DOCTORAL - Archivo Digital UPM - Archivo Digital UPMoa.upm.es/1032/1/10198501.pdf · la criptografía, en principio alejados del dominio de la Inteligencia Artificial. Después

-71 -

c) Procedimientos que especifican las operaciones a efectuar cuando se

intenta razonar o resolver un problema.

El laboratorio de Inteligencia Artificial de la Facultad de Informática de la

Universidad Politécnica de Madrid, para escapar de especulaciones metafísicas, ha

adoptado por definir, en fórmula resumida, el conocimiento como un par formado por:

a) Unos datos, y, o, hechos, traducidos en forma de informaciones.

b) Un conjunto de reglas de experiencia o heurísticas que sirven para tratar

adecuadamente esos datos y, o, hechos.

El conocimiento de estos sistemas presenta un conjunto de características

que es necesario tenerlas presentes en el momento de representar o tratar dicho

conocimiento. Dicho en otros términos, para construir sistemas basados en el

conocimiento eficaces, es necesario tener en cuenta las siguientes consideraciones:

a) Las buenas prestaciones para la solución inteligente y hábil de problemas,

vienen condicionadas por la existencia de un conocimiento de la más alta

calidad posible, muchas veces en gran cantidad, disponible y almacenable,

sobre la tarea que se tiene entre manos, y no por poseer una gran

colección de métodos formales independientes del dominio. Durante largo

tiempo, la inteligencia artificial centró su atención casi exclusivamente

en el desarrollo de "potentes" métodos de inferencia que se suponía

desarrollarían "inteligencia", el GPS [Ernst 8] es el arquetipo, lo que se

conoció con el calificativo de "paradigma del poder". Hasta que se fue

evolucionando hacia el conocimiento, al darse cuenta los investigadores, -1

de que el poder de estos sistemas no reside en el método de inferencia

Page 83: tESIS DOCTORAL - Archivo Digital UPM - Archivo Digital UPMoa.upm.es/1032/1/10198501.pdf · la criptografía, en principio alejados del dominio de la Inteligencia Artificial. Después

-72 -

elegido, casi cualquier método servirá; sino en el conocimiento, lo que

constituye el "paradigma del conocimiento".

De hecho, la mayoría de los problemas interesantes y difíciles no tienen

soluciones algorítmicas practicables ya que muchas tareas importantes,

originadas en contextos, físicos o sociales, complejos, resisten

generalmente cualquier intento de descripción precisa y análisis riguroso.

b) El conocimiento puede ser público o privado. El primero, incluye las

definiciones, hechos, métodos y teorías publicados y al alcance, el menos

material, de cualquiera interesado en el asunto. Sin embargo, la pericia en

un dominio implica algo más que ese conocimiento público, y es lo que se

denomina conocimiento privado. Esta privacidad se manifiesta en una

doble vertiente: En primer lugar, porque es una evidencia el hecho de que

mucho del conocimento de los expertos está interiorizado, no porque sean

reacios a compartir públicamente sus pautas de actuación, sino

simplemente porque son incapaces de hacerlo: "lo que realmente saben los

maestros, no está escrito en los libros". Tradicionalmente, la transmisión

del conocimiento proveniente de los "maestros", exigía largos años de

"pupilaje" junto al maestro. Sin embargo, ahora se sabe que, al menos en

algunos casos, ese conocimiento privado, "interiorizado", puede

descubrirse o exteriorizarse mediante un cuidadoso análisis.

A veces, esta exteriorizaeión la hace el propio experto, operando en el

contexto de un gran número de problemas "ad hoc" de prestaciones

específicas. Otras, mediante la intervención y ayuda de lo que, en

EE.UU., ha venido én denominarse "ingenieros del conocimiento" que

ayudan al experto a explicitar su conocimiento y establecer claramente

Page 84: tESIS DOCTORAL - Archivo Digital UPM - Archivo Digital UPMoa.upm.es/1032/1/10198501.pdf · la criptografía, en principio alejados del dominio de la Inteligencia Artificial. Después

-73

qué es lo que conocen y cómo aplicarlo efectivamente. Y ello, porque la

inteligencia artificial, permite confrontar intuiciones. Cuando una

suposición intuitiva se exterioriza y hace explícita, se puede convertir en

un programa, que llama más la atención y se vuelve más accesible a la

reflexión. Por su parte, las ideas de la inteligencia artificial pueden

retomarse como materiales para el trabajo de remodelación del

conocimiento intuitivo, dado que en ciertos casos, las intuiciones entran

en conflicto con la realidad. En cualquier caso, este proceso de

refinamiento del conocimiento, puede acelerarse al hacer el conocimiento

privado utilizable para someterlo a comprobación y evaluación pública.

En segundo lugar, este conocimiento privado, que aún no ha encontrado su

vía de expresión en los medios de comunicación, consta mayormente, de

reglas de buen juicio, intuitivas o de experiencia que, como decía Huxley:

"No es lo que te ocurre sino lo que haces con ello", denominadas

heurísticas. Esta reglas, capacitan a las personas expertas, para hacer,

siempre que lo necesiten, buenas conjeturas, reconociendo enfoques

prometedores en la solución de problemas y tratar eficientemente con

datos informaciones y conocimientos incompletos, inciertos o imprecisos.

En suma, con conocimiento mal especificado. Es decir, aunque un experto

no siempre conozca lo que sabe acerca de su dominio de experiencia, de

un modo similar a M. Jourdan de Moliere, lo usa adecuadamente. Después

de todo, la naturaleza del conocimiento que un experto usa al ejecutar

una tarea, es en gran medida heurística; es decir, básicamente buen juicio

y práctica, en lugar de hechos contrastados y razonamiento riguroso.

c) El conocimiento con el que tratan estos sistemas es, con frecuencia,

además de incompleto, incierto o impreciso. Se dice que una expresión es

Page 85: tESIS DOCTORAL - Archivo Digital UPM - Archivo Digital UPMoa.upm.es/1032/1/10198501.pdf · la criptografía, en principio alejados del dominio de la Inteligencia Artificial. Después

-74

"incierta", si es verdadera o falsa pero no se sabe. Por ejemplo, el decir

que la población mundial es mayor que 4.000 millones de personas, es una

expresión incierta, pues realmente no se sabe si es o no así.

Por otra parte, se dice que un conocimiento es impreciso cuando se es

incapaz de definir exactamente el valor de una variable. Esta imprecisión

viene dada habitualmente por el uso de cuantificadores como "La

mayoría", "Unos pocos"", etc. Así, por ejemplo, la sentencia "Juan

cometió algún error", es imprecisa. También es impreciso afirmar el valor

de la variable dentro de un intervalo. Verbigracia es impreciso decir "La

edad de María está entre 20 y 25 años". '4'"

Por su parte, el razonamiento es incompleto, cuando es por "defecto". A

veces, se puede obviar esta carencia usando hipótesis o valores por

defecto. De este modo, si se conoce que "Pepe es un adulto", se puede

deducir que "Pepe sabe leer".

Teniendo en cuenta estas características, el conocimiento básico del

sistema propuesto consiste, por una parte, en saber que la única forma de violar un

sistema de criptografía, consiste en someterlo a rigurosos análisis estadísticos que

establezcan las frecuencias de los distintos signos del cifrado en correlación con los del

texto claro. Para evitar esto, es imprescindible conseguir una distribución uniforme de

los textos del cifrado. Para lo cual, se va a hacer uso del concepto de transformación de

variable aleatoria.Por otra, del concepto del valor relativo de los números en los

sistemas de numeración para romper las relaciones contextúales de los símbolos en el

criptograma. Ambos están, tomados respectivamente del conocimiento público en

estadística y teoría de números. Ambos conceptos se desarrollan a continuación.

Page 86: tESIS DOCTORAL - Archivo Digital UPM - Archivo Digital UPMoa.upm.es/1032/1/10198501.pdf · la criptografía, en principio alejados del dominio de la Inteligencia Artificial. Después

75

3.3. Principio del valor relativo de los sistemas de numeración.

Este principio [Pazos 34] afirma que, en un sistema de numeración

determinado, un mismo símbolo representa valores distintos según el lugar que ocupan

dentro de una secuencia dada. Así, por ejemplo, en el número:

71976^^„

que está expresado en base 10, una cifra a la izquierda de otra, representa el número de

unidades de orden superior a la dada. En este caso, el 6 representaría:

6 unidades de orden O; es decir, 6 X 1 0 '*

e í 7 . . . 7 unidadesdcordenl = 7 X 1 0 ^

e í 9 . . . 9 unidadesdeorden2 = 9X10^

o

ell ... 1 unidad deordenZ = 1X10

ell ...1 unidades de orden 4 = 7 X 1 0

en donde, como puede verse el valor del segundo 7, empezando por la izquierda

representa 70 unidades, en tanto que el primer 7; es decir, el más a la izquierda

representa 70.000 unidades. Todo ello cumpliendo el principio de Haenkel, sobre la

sucesión de cifras en un número, que dice que las cifras.representando las unidades

mayores se encuentran, considerándolas de izquierda a derecha, delante de las unidades

menores. Así, por ejemplo, el número:

54(10

significa:

5X 10 + 4

Page 87: tESIS DOCTORAL - Archivo Digital UPM - Archivo Digital UPMoa.upm.es/1032/1/10198501.pdf · la criptografía, en principio alejados del dominio de la Inteligencia Artificial. Después

76

y no:

5 + 4 XIO

"Hic et nunc", es necesario modificar el principio del valor relativo, para

aplicarlo al sistema propuesto de la siguiente forma: "El valor de cada símbolo en el

mensaje cifrado vendrá afectado por la posición que ocupa en el mensaje claro". De

esta forma, igual que en el pricipio del valor relativo, un mismo símbolo tendrá, en el

mensaje cifrado, distinto valor según la posición que ocupe en el texto claro. Sin

embargo, al contrario de lo señalado por el principio de Haenkel, el valor va

incrementándose de izquierda a derecha.

3.4. Transformación de variable aleatoria. -g'

Intuitivamente, se entiende por variable aleatoria una función cuyos valores

dependen del resultado de un experimento aleatorio. Más formalmente, siguiendo a

S.Rios [RÍOS 37], se dice que la función uniforme I, (a) definida para los sucesos

elementales a del espacio probabilístico (E, A, P), es una variable aleatoria, si el

contradominio A de cada intervalo I de la forma [-a>,c] es un suceso del espacio

probabilístico, tal y como se ve en la figura 3.1.

Es decir, sea i, (a) una función real unívoca cuya variable a representa los

resultados elementales de un fenómeno aleatorio, y supóngase definida una o-álgebra (E,

A, P). Se denomina contradominio de un conjunto C de números reales, al conjunto A de

todos aquellos sucesos elementales a tales que:

Entonces, es posible escribir:

A = r^(C)

Page 88: tESIS DOCTORAL - Archivo Digital UPM - Archivo Digital UPMoa.upm.es/1032/1/10198501.pdf · la criptografía, en principio alejados del dominio de la Inteligencia Artificial. Después

77-

Se ve fácilmente que el contradominio del conjunto de todos los números

reales R es el suceso seguro E; es decir:

Si C es un cierto conjunto de números reales, se define:

P*(0 = P*(^(a)€0 = P(A)

como la probabilidad de que la función í, (a) tome un'valor de C.

i TTH-R

Contradominio de C

FIGURA 3.1. EJEMPLO DE VARIABLE ALEATORIA

Las variables aleatorias pueden ser discretas, cuando toman valores finitos o

infinitos numerables de valores distintos. Es otro caso, se denominan continuas.

Sea, por ejemplo, i, una variable aleatoria, cuya función de distribución es:

F(x) = P(^Sx)

y sea q = g(Q una función medible Borel de la variable i,; es decir, tal que el

contradominio C de cualquier intervalo -<» < q^y es un conjunto de Borel, aunque es

suficiente en particular que q = g(0 sea uniforme y continua. Entonces, i\ es una

variable aleatoria. Y su función de distribución será:

Page 89: tESIS DOCTORAL - Archivo Digital UPM - Archivo Digital UPMoa.upm.es/1032/1/10198501.pdf · la criptografía, en principio alejados del dominio de la Inteligencia Artificial. Después

-78 -

ct)(y) = Píná^-) = P(g(^) <:y) = P (^ í C^)

Como C„ es un conjunto de Borel, P(xíCy) es fácil de calcular.

En el caso concreto que aquí interesa, de una transformación lineal de

variable aleatoria, ta l como:

n = aí,+ b (a>0)

Se tiene que:

<P{y) =P(q ^y) = P(aí, + b^y) = P(í, < ^ ^ ^ ) = F{^^-^-) a a

'»'

Si F(x) admite derivada, entonces f(x) = F'(x), será:

y - 6 1 1 y -b (^(y) = <t>'(y) = F'i- ) - = -f{- )

a a a a

Si a < O, se t iene que:

<P(y) = P{^^y) = P{aí,+ b^y) = P{i,> ^-^^) = 1 _P(^ < ^^^^) = 1 _P(^ < ^^^^ ) + P{\= ^-^^) a a a a

Si la variable i, es continua:

y — b Pii,= - ) = 0

a

Y, queda que:

V — 6 <P{y) = l -FC- )

a

y derivando, es:

1 y- b ^iy)=<P'(y)= --fC- )

a a

Page 90: tESIS DOCTORAL - Archivo Digital UPM - Archivo Digital UPMoa.upm.es/1032/1/10198501.pdf · la criptografía, en principio alejados del dominio de la Inteligencia Artificial. Después

79

Todo este desarrollo, puede resumirse diciendo que una transformación

lineal de una variable aleatoria, tal y como la expuesta, produce otra variable aleatoria

idénticamente distribuida con la anterior; es decir, ambas variables aleatorias tienen

funciones de probabilidad coincidentes.

En consecuencia, ahora todo el problema se reduce a conseguir una variable

aleatoria uniformemente distribuida sobre la que aplicar la transformación lineal

elegida. Esta variable puede obtenerse generando una secuencia de números aleatorios

uniformemente distribuidos que es lo que se va a considerar a continuación.

3.5. Números Aleatorios.

3.5.1.Generalidades.

Una distribución uniforme de un conjunto finito de números es aquella en la

que cada posible número es igualmente probable. Al principio, la gente que tenía

necesidad de conseguir números aleatorios para su trabajo científico, debía usar

métodos convencionales, tales como: extraer bolas de una bolsa, arrojar un dado,

extraer una carta de un mazo, etcétera. En 1927, Tippett construyó, usando el censo de

los EE.UU., una tabla con 40.000 números aleatorios. A partir de entonces, se han

construido una serie de dispositivos para generar mecánicamente números aleatorios.

La primera de tales máquinas fue usada en 1939 por Kendall y Babington-Smith para

producir una tabla de 100.000 dígitos aleatorios, y en 1955 la RAND Corporation

publicó unas tablas que tuvieron una amplia difusión. También se ha usado una famosa

máquina de números aleatorios denominada ERNIE que los tomaba de entre los que

ganaban premio en la lotería británica.

Page 91: tESIS DOCTORAL - Archivo Digital UPM - Archivo Digital UPMoa.upm.es/1032/1/10198501.pdf · la criptografía, en principio alejados del dominio de la Inteligencia Artificial. Después

-80

Posteriormente, se propusieron métodos mucho más sofisticados y rápidos

haciendo uso de ciertas propiedades físicas de la materia. Por ejemplo, se puede tomar

como generador de números aleatorios el ruido de fondo de un circuito o, como sugirió

en cierta ocasión Turing, usando los impactos de los electrones que salen de una fuente

radioactiva.

Pero ambos métodos presentan un inconveniente teórico y otros de carácter

práctico que los hacen inviables para lo que aquí concierne. En primer lugar, ambos son

no invertibles. Es decir, que no se puede recuperar una secuencia igual a voluntad.

Solamente esto, ya los haría inservibles para el propósito de este trabajo. Pero hay más,

pues a lo rupestre y pesado de los primeros, se le contrapone lo difícil de realizar o

emplear de los segundos.

Para liberarse de estas hipotecas, se han diseñado procedimientos

matemáticos particulares computerizados, que si bien obvian los problemas planteados

por los procedimientos anteriores, lo hacen a costa de un deterioro en la noción de azar

científico. En efecto, ¿Cómo puede un computador que es una máquina explícitamente

determinística, generar números aleatorios, que son implícitamente no determinísticos?

La respuesta es que no puede. Lo que sí puede hacer un computador es generar números

que aparenten ser aleatorios.

Teniendo esto presente, Knuth [Knuth 22] ideó un algoritmo tan

aleatoriamente tortuoso y tan tortuosamente aleatorio que parecía estar garantizado

que engendraría números "superaleatorios", como los llamaba Knuth. Sin embargo, para

su asombro, la primera vez que el algoritmo se puso a trabajar en un computador,

convergió casi inmediatamente hacia el número 6065038420, que, por una

extraordinaria coincidencia, se transforma en sí mismo al aplicarle el algoritmo. La

moraleja que sacó Knuth de todo esto es sencilla, ya que no intuitivamente obvia: "Los

Page 92: tESIS DOCTORAL - Archivo Digital UPM - Archivo Digital UPMoa.upm.es/1032/1/10198501.pdf · la criptografía, en principio alejados del dominio de la Inteligencia Artificial. Después

81

números aleatorios no deberían generarse por métodos elegidos al azar. Se precisa

alguna teoría". Justamente esto es lo que, siguiendo al propio Knuth, va a presentarse

en los apartados siguientes.

3.5.2. Generación de Números Aleatorios Uniformes; Método de las congruencias.

Aunque existen varios métodos de generar números aleatorios reales Un>

uniformemente distribuidos entre cero y uno, entre los que los más conocidos son los de

Lehmer; el del medio del cuadrado, basado en un teorema de Von Neuman; o el de

Fibonacci. Sin embargo, los más ampliamente usados son los congruenciales. Pero como

el computador puede representar un número real con sólo una exactitud finita, los que 'i'"

realmente se van a generar son números enteros Xn entre cero y algún número m.

entonces la fracción:

U =X /m n n

caerá entre cero y uno. Habitualmente, m es el tamaño de la palabra del computador y

de este modo, Xn puede verse como el contenido entero de una palabra de memoria con

el punto en el extremo derecho y Un puede verse como el contenido de la misma

palabra, pero con el punto en el extremo izquierdo.

Los métodos congruenciales, son casos especiales del siguiente esquema

general dado por Lehmer en 1949 [Lehmer 23]. Elíjanse cuatro números "mágicos".

m, el módulo m>0

a, el multiplicador OSa<m

c, el incremento Q<c<m

X , el valor incial o semilla 0<X <m

La secuencia deseada de números aleatorios Xn se obtiene haciendo:

Page 93: tESIS DOCTORAL - Archivo Digital UPM - Archivo Digital UPMoa.upm.es/1032/1/10198501.pdf · la criptografía, en principio alejados del dominio de la Inteligencia Artificial. Después

-82

X ^, = (oX + c) modm , n>Q (3.1) n + i n

que recibe el nombre de secuencia congruencial lineal. Sin embargo, no todas las

secuencias así elegidas son aleatorias para cualesquiera números mágicos elegidos. De

hecho, los principios de selección de estos números, es una cuestión más bien delicada

que requirá consideración posterior aparte.

Por otra parte, y a pesar de lo bien que se hagan las cosas, al elegir los

números mágicos, las secuencias congruenciales siempre acaban por meterse en un

ciclo; puesto que es una propiedad común a todas las secuencias que tienen la forma

general:

Al ciclo se le denomina el período y, en consecuencia, una secuencia útil será aquella

que tenga el período más largo posible.

El caso especial c=0, merece mención explícita, ya que el proceso de

generación de los números es un poco más rápido que, cuando CÍ^O, y aunque reduce el

tamaño del período de la secuencia, aún es posible conseguir una longitud del período

razonablemente grande.

Es útil definir:

6 = a - 1

con el fin de simplificar muchas de las fórmulas que se van a emplear aquí. Sin

embargo, hay que rechazar inmediatamente el caso a=l. Para este caso, se tiene que:

X = (X.+nc) mod m, n ü

Page 94: tESIS DOCTORAL - Archivo Digital UPM - Archivo Digital UPMoa.upm.es/1032/1/10198501.pdf · la criptografía, en principio alejados del dominio de la Inteligencia Artificial. Después

-83-

y la secuencia ciertamente no se comportaría aleatoriamente. El caso a=0 es aún peor.

Por lo tanto, para propósitos prácticos, se puede suponer que:

a > 2 , 6>1

Ahora, se puede probar una generalización de la fórmula (3.1),

X ^,= (a^X + (a* - l)c/b) mod m, k>0, n> O (3.2) n-r K n

que expresa el término (n+k)-ésimo directamente en términos del término n-ésimo. Se

sigue de aquí que la subsecuencia constando de cada uno de los k-ésimos términos de

(Xn) es otra secuencia congruencial teniendo el multiplicador al^,níod m y el incremento

((al<-l)c/b) mod m.

Un importante corolario de esta generalización, es que la secuencia general

definida por m, a, c y XQ, puede expresarse fácilmente en términos del caso especial en

el que c = 1 y XQ = 0. Sean:

y = O, F =(0 7-1-1) mod m O íi + 1 n

De acuerdo con la ecuación (3.2), se tiene que

F = (a* - 1)/ 6 {módulo m); (3.3) ft

por lo tanto, la secuencia general definida en (3.1) satisface

X = (AY + XJ mod m,- donde A = (X 6 -t- c) mod m

Page 95: tESIS DOCTORAL - Archivo Digital UPM - Archivo Digital UPMoa.upm.es/1032/1/10198501.pdf · la criptografía, en principio alejados del dominio de la Inteligencia Artificial. Después

-84

3.5.3. Elección de los Parámetros.

La meta de este apartado es encontrar buenos valores para los parámetros

que definen una secuencia congrueneial, tratando cada uno de ellos aparte.

a) Elección del módulo. Lo primero que se desea, es un módulo m adecuado.

En primer lugar, se desea que m sea lo más grande posible ya que el

período no puede tener más que m elementos. A continuación, hay que

considerar el otro factor que debe influenciar la elección de m: la

velocidad de generación; es decir, se desea buscar un valor tal que la

computación de

iaX + c) mod m n

sea la más rápida posible.

Sea p el tamaño de la palabra del computador a saber 2b para un

computador de b dígitos binarios. El resultado de una suma se da

habitualmente módulo p, excepto en los computadores que hacen el

complemento a unos. La multiplicación módulo p, también es bastante

sencilla, ya que el resultado deseado es la mitad menor del producto. Así,

el siguiente "programa" computa (aX+c) mod p eficientemente:

rA *- A

rAX *- (.rA)X

rA <- rAX modp

rA *- {rA + c) modp

Para ejecutar computaciones módulo (p+1), puede usarse una técnica hábil

menos conocida. Generalmente, se quiere que c=0 cuando m=p+l, de esta

forma, sólo es necesario computar (aX) mod (p+l). A la pregunta de por

qué se usa el módulo m=p±l, cuando la elección m=p es tan

manifiestamente adecuada, se puede responder que cuando m=p, los

Page 96: tESIS DOCTORAL - Archivo Digital UPM - Archivo Digital UPMoa.upm.es/1032/1/10198501.pdf · la criptografía, en principio alejados del dominio de la Inteligencia Artificial. Después

-85-

dígitos del lado derecho de Xn son mucho menos aleatorios que los de lado

izquierdo. Si d es un divisor de m, y si

Y = X mod d, n n

se puede mostrar fácilmente que

Y ^, ={aY +c) mod d (3.4)

Haciendo,

X , = aX + c •¥ qm para algún entero q,

'i"' y tomando ambos lados módulo d provoca que la cantidad qm desaparezca

cuando d es un factor de m. Para ilustrar la significación de la ecuación

(3.4), supóngase, por ejemplo, que se tiene un computador binario. Si

m=p=2b, los cuatro bits de más bajo orden de Xn son los números

Yn=Xn mod 24. El problema de la ecuación (3.4) es que los cuatro bits de

orden inferior de (Xn) forman una secuencia congruencial que tiene un

período de tamaño 16 o menor. Similarmente, los cinco bits de más bajo

orden son periódicos con un período de a lo sumo 32, y el bit menos

significativo de Xn es constante o alterna estrictamente. Esta situación

no aparece cuando m=p±l; en tal caso los bits de más bajo orden de Xn

serán igual de aleatorios que los otros. Si por ejemplo, p=235 y m = 235-i,

los números de la secuencia no serán muy aleatorios, si sólo se consideran

sus restos módulo: 31,71,127, ó 122921; pero los bits de bajo orden que

representan los números de la secuencia tomados módulo 2 serían

satisfactoriamente aleatorios.

Page 97: tESIS DOCTORAL - Archivo Digital UPM - Archivo Digital UPMoa.upm.es/1032/1/10198501.pdf · la criptografía, en principio alejados del dominio de la Inteligencia Artificial. Después

-86

Otra alternativa es hacer m igual al más largo número primo menor que p.

Este primo, no es muy difícil de encontrar, incluso están tabulados. Todo

lo que se acaba de exponer es para computadores con magnitud con signo,

aunque "mutatis mutandis" puede decirse lo mismo para computadores que

usan notaciones con complemento.

b) Elección del Multiplicador. La elección del multiplicador es esencial para

conseguir un período de tamaño máximo, lo que es básico para cualquier

secuencia que se vaya a usar como fuente de números aleatorios. Lo que

en realidad se espera es que el período contenga considerablemente más

números que los que se vayan a usar en una aplicación sencilla. Sin

embargo, dadas las características de la criptografía computacional, que

son las que aquí interesan, esto no es posible, puesto que por grande que

fuera el período, mayor será la información a almacenar, y, o, transmitir.

Esto obliga a obtener varias secuencias que, a pesar de todo, también

deben tener un período lo más amplio posible.

Pero, hay que tener en todo momento muy presente, que un período

amplio es sólo un criterio deseable para la aleatoriedad de la secuencia.

Por ejemplo, cuando a=c=l, la secuencia es simplemente:

X , , = (X + 1 ) mod m n+1 n

que obviamente, tiene un período de tamaño m, pero que en absoluto es

aleatoria.

Ya que sólo son posibles m valores, seguramente el período no puede ser

mayor que m, pero al menos se trata de que sea m. El ejemplo anterior

muestra que siempre es posible alcanzar una secuencia de tamaño de

Page 98: tESIS DOCTORAL - Archivo Digital UPM - Archivo Digital UPMoa.upm.es/1032/1/10198501.pdf · la criptografía, en principio alejados del dominio de la Inteligencia Artificial. Después

-87-

período m, aunque la elección de a y c no produzca una secuencia

deseable. Entonces se trata de investigar todas las posibles elecciones de

a, c y Xo que dan el máximo período en una secuencia deseable.

Resultando que, como se verá a continuación, todos los valores de esos

parámetros pueden caracterizarse muy simplemente. Cuando m es el

producto de distintos primos, sólo a=l produce el máximo tamaño del

período, pero cuando m es divisible por una potencia alta de algún primo,

hay considerable amplitud en la elección de a, tal y como lo muestra el

siguiente teorema debido a Greenberger [Greenberger 15] y Hull y Dobell

[Hull 18].

i TEOREMA 1.

La condición necesaria y suficiente, para que la secuencia congruencial

lineal definida por m, a, c, y XQ tenga período de tamaño m es que se cumpla que:

1. c sea primo con m.

2. b = a - 1 sea múltiplo de p, para todo primo p dividiendo a m.

3. b sea múltiplo de 4, si m es múltiplo de 4.

Para demostrar el teorema, previamente hay que, usando la técnica tan

conocida de la inteligencia artificial, de reducción o descomposición de un problema en

subproblemas, establecer los lemas siguientes:

Page 99: tESIS DOCTORAL - Archivo Digital UPM - Archivo Digital UPMoa.upm.es/1032/1/10198501.pdf · la criptografía, en principio alejados del dominio de la Inteligencia Artificial. Después

-88

LEMA 1

Sea p un número primo, y sea e un entero positivo, con pe >2. Si

X = 1 {módulop^), X 1 (módulo p^* ) ,

entonces

e + 2. x'' = 1 (módulo p^ ) , x^ ^ 1 (módulo p^ ")

DEMOSTRACIÓN

'4''

Se tiene que x = 1 + qpe para algún entero q que no es múltiplo de p. Por la

fórmula binomial:

x ^ = l + ( ^ j q p ^ + ... + ( ^ )qP-^p'^-' '^ + q^p^

= . . , . - ( . . l ( ^ ) , . . . l ( ^ ) , V . - . . . l ( M , - P —

La cantidad dentro del paréntesis más externo, es un entero, y, de hecho, cada término

parentizado es múltiplo de p, excepto el primer término. Si 1 <k < p el coeficiente

binomial

es divisible por p, por lo tanto:

i (p) , . - . , . . - . . .

Page 100: tESIS DOCTORAL - Archivo Digital UPM - Archivo Digital UPMoa.upm.es/1032/1/10198501.pdf · la criptografía, en principio alejados del dominio de la Inteligencia Artificial. Después

-89-

es divisible por p(k-l)e; y el último término es qP~l p(p~l) e-1, que es divisible por p ya

que (p-1) e >1 cuando pe >2. De este modo,

- t ' '^ 1 + qp^'^^ (módulop^'^^)

lo que completa la demostración.

LEMA 2

Sea la descomposición de m en factores primos:

el tamaño x del período de la secuencia con^uencial determinada por (XQ, a, c, m) es

el mínimo común múltiplo de los tamaños Tj de los períodos de las secuencias

congruenciales (XQ mod p;® , a mod Pj^J, c mod Pí® ,Pj ), 1 ^ j ^ t .

DEMOSTRACIÓN

Se hace por inducción sobre t, para lo cual basta demostrar que si mi y m2

son relativamente primos, el tamaño x de la secuencia congruencial determinado por

los parámetros (XQ, a, c, mi m2) es el mínimo común múltiplo de los tamaños TJ y X2

de los períodos de las secuencias determinadas por (XQ mod mi, a mod mi, c mod mi,

'^l) y (XQ mod m2, a mod m2> c mod m2, m2). Pero como ya se vio en la ecuación (3.4),

si los elementos de estas tres secuencias se denotan, respectivamente, por Xn, Yn, y

Zn, se tendrá que:

Y =X modm, y Z ~X modm„, para todo n^O

Page 101: tESIS DOCTORAL - Archivo Digital UPM - Archivo Digital UPMoa.upm.es/1032/1/10198501.pdf · la criptografía, en principio alejados del dominio de la Inteligencia Artificial. Después

- 9 0 -

Por lo tanto, teniendo en cuenta (3.4) se encuentra que la condición

necesaria y suficiente para que

n k

es que

Y =Y y Z=Z, (3.5) n k n K

Sea T' el mínimo común múltiplo de T-^ y T2; entonces se quiere probar que

T' = T. Ya que Xn = Xn+x para todo n deseablemente grande, se tiene que Yn = Yn+x 5

por lo tanto, T es múltiplo Xj y Zn = Zn+xj por consiguiente, T es múltiplo de T2; de

este modo, se tiene que T > T ' . Además, se sabe que Yn = Yn+x' y Zn = Zn+x' para todo

n deseablemente grande; por lo tanto, por la fórmula (3.5), es Xn|= Xn+x'> lo Que prueba

que T < T ' .

Ahora ya se está en condiciones de demostrar el teorema 1, puesto que el

lema 2, basta para demostrar el teorema cuando m es una potencia de un número primo.

La condición necesaria y suficiente para que

«1 «í «1 e,

Py •••P¿ = x= mcm(t^, ...,xp áXj...x^ <Pj ...p^

es que

- r, J z. = p . para 1 ^j^t

Por lo tanto, supóngase que m= pe, donde p es primo, y e un entero positivo.

El teorema es obviamente cierto cuado a=l; de este modo, se puede tomar a>l. La

condición necesaria y suficiente para que el período pueda ser de tamaño m, es que

cada poáible entero Oáx<m aparezca en el período, ya que ningún valor aparece en el

período más de una vez. En consecuencia, la condición necesaria y suficiente para que

Page 102: tESIS DOCTORAL - Archivo Digital UPM - Archivo Digital UPMoa.upm.es/1032/1/10198501.pdf · la criptografía, en principio alejados del dominio de la Inteligencia Artificial. Después

91 -

el período sea de tamaño m, es que el período de la secuencia con XQ = O sea de tamaño

m, y está justificado suponer que Xo=0. Por la fórmula (3.2), se tiene que:

o " - l X =1 ]cmodm (3.6)

" V a - 1

Si c no es relativamente primo a m, este valor Xn nunca puede ser igual a 1; de este

modo, la condición 1 del teorema 1 es necesaria. La condición necesaria y suficiente

para que el período tenga tamaño m, es que el menor valor positivo de n para el cual

Xn=Xo=0 es n=m. Por la fórmula (3.6) y la condición 1 del teorema 1, el teorema 1 se

reduce ahora a probar el siguiente hecho; dado por el

'4'"

LEMA 3

Supóngase que 1 < a < pe, siendo p primo. Si x es el menor entero positivo

para el cual (a^ - l)/(a-l) = O (módulo pe), entonces la condición necesaria y suficiente

para que

es que:

a = l {módulop) cuando p>2

a = l (módulo 4) cuando p = 2

DEMOSTRACIÓN

Supóngase que x = ps. Si a ^ 1 (módulo p), entonces la condición necesaria y

suficiente para que (a" - l)/(a-l) = O (módulo pe) es qué ai^-l = 0 (módulo pe). La

condición aP®-l = 0 (módulo pe) implica entonces que aP® = 1 (módulo p); pero, por el

teorema de Fermat [Knuth 22]; se tiene que aP® = a (módulo p); por lo tanto, a ^ l

(módulo p) que conduce a una contradicción. Y si p=2 y a=3 (módulo 4), se tiene que

Page 103: tESIS DOCTORAL - Archivo Digital UPM - Archivo Digital UPMoa.upm.es/1032/1/10198501.pdf · la criptografía, en principio alejados del dominio de la Inteligencia Artificial. Después

92

(a2e 1 -i)/(a-l) = O (módulo 2e) cuando e >1. Esto muestra que, en general, es necesario

tener a=l+qpf, donde pf>2 y q no es múltiplo de p, cuando T = pe.

Ahora sólo queda por probar que dicha condición es suficiente para hacer

x=pe. Por aplicación repetida del lema 1, se encuentra que:

g g

a = limódulop' ^),a^ ^ I {módulo p''^^'^ ) ,paratodog>Q

Y, por lo tanto:

(a"^ _ l ) / ( a - l ) = 0 (módulop^)

ia^ _ l ) / ( a - l ) ^ 0 {módulop^""'^)

(3.7)

En particular (aP^-l)/(a-l) = 0 (módulo pe). Ahora la secuencia congruencial

(O,a, 1, pe) tiene Xn = (a" -l)/(a-l) (módulo pe); por consiguiente, tiene un período de

tamaño x; es decir, la condición necesaria y suficiente para que Xn = O, es que n sea

múltiplo de T. En consecuencia, pe es múltiplo de x. Esto sólo puede suceder si X = p?

para algún g, y las relaciones dadas en (3.7) implican que X=pe, lo que completa la

demostración del lema 3 y del teorema 1.

3.5.4. El Método de Generación Propuesto.

Teniendo en cuenta todas las consideraciones teóricas acerca de los números

aleatorios y su generación consideradas a lo largo de este capítulo 3, se puede

establecer un método que da el "más elegante" y simple generador de números

aleatorios para el lenguaje máquina de la mayoría de los computadores actuales. Este

método puede expresarse como sigue.

Page 104: tESIS DOCTORAL - Archivo Digital UPM - Archivo Digital UPMoa.upm.es/1032/1/10198501.pdf · la criptografía, en principio alejados del dominio de la Inteligencia Artificial. Después

-93-

Inicializar el progn^ama colocando en una variable entera X algún valor XQ.

Esta variable sólo se usa con el propósito de la generación de los números aleatorios.

Siempre que se necesite un nuevo número aleatorio, colocar:

X *— {aX + c) mod m

y usar el nuevo valor de X como el valor aleatorio. Es necesario elegir XQ, a, C y m

adecuadamente, y usar los números aleatorios "sabiamente" de acuerdo con los

principios siguientes:

a) El número XQ, denominado "semilla" puede elegirse arbitrariamente. Si se

desean varias series de números aleatorios, comogés el caso, y además

recuperarlos de modo reversible, colocar como nuevo XQ el último valor

calculado de X.

b) El número m debe ser el mayor posible, al menos 2'*'', siendo muy

conveniente que sea del tamaño de la palabra del computador, ya que esto

hace la computación de (aX+c) módulo m, bastante eficiente. Esta

computación debe hacerse exactamente sin errores de redondeo. La

elección de m ya se discutió en detalle en 3.5.3. (a).

c) Si m es una potencia de 2; es decir, si se usa un computador binario,

tomar a de modo que sea a mod 8=5. Si m es una potencia de 10; o sea, si

se emplea un computador decimal, elegir a de manera que a mod 200 = 21.

Esta elección de a junto con la elección de c, que se dará más adelante,

asegura que el generador de números aleatorios producirá todos los m

diferentes valores posibles de X antes de comenzar a repetirse y asegura

•" una potencia alta.

Page 105: tESIS DOCTORAL - Archivo Digital UPM - Archivo Digital UPMoa.upm.es/1032/1/10198501.pdf · la criptografía, en principio alejados del dominio de la Inteligencia Artificial. Después

-94

d) El multiplicador a debe elegirse preferentemente entre .Olm y .99m y sus

dígitos decimales o binarios no deberían tener un patrón regular simple.

Eligiendo alguna constante, tal como a=3141592621, que satisface las

condiciones de (c), se obtiene un multiplicador razonablemente bueno.

Además, deberían hacérsele distintos test si el generador de números

aleatorios se va a usar ampliamente. El multiplicador debería pasar por lo

menos el test espectral, que se verá más adelante, antes de recibir todas

las "bendiciones" de calidad.

e) El valor de c es indiferente cuando a es un buen multiplicador, salvo que c

no debe tener ningún factor común con m. De este modo, se puede elegir

c=l ó c=a, según convenga.

f) Los dígitos menos significativos, los de la derecha, de X no son muy

aleatorios, de este modo, las decisiones basadas en X deberían estar

influenciadas, en primer término, por los dígitos más significativos. Es

generalmente, mejor pensar en X como una fracción aleatoria X/m entre

O y m; es decir, visualizar X con un punto decimal a su izquierda; antes

que verlo como un entero aleatorio entre O y m-1; puesto que para

computar un entero aleatorio entre O y k-1 hay que multiplicar por k y

truncar el resultado.

Los principios que informan el método propuesto que se acaban de exponer,

se aplican principalmente a la codificación en lenguaje máquina. En lenguajes de

programación de alto nivel, es imposible con frecuencia utilizar las, características

dependientes de la máquina tal como el módulo entero aritmético tamaño de la palabra,

y> en algunos compiladores, el producto de dos enteros grandes. En consecuencia, y para

mantener el grado de generalidad y transportabilidad del sistema propuesto, se va a

Page 106: tESIS DOCTORAL - Archivo Digital UPM - Archivo Digital UPMoa.upm.es/1032/1/10198501.pdf · la criptografía, en principio alejados del dominio de la Inteligencia Artificial. Después

95

presentar ahora otra técnica capaz de proporcionar un generador de números aleatorios

que está eficientemente descrito en un lenguaje de alto nivel, en este caso, el LISP.

(* Función con la que se consigue la semilla necesaria para generarla secuencia de números aleatorios)

(VAL [LAMBDA (CLAVE)

(COND [(NOT (NULL CLAVE))

(PLUS (QUOTIENT (ITIMES 7 (CAR CLAVE)) 10000.0)

(VAL (CDR CLAVE] (T 0])

(RANGO [LAMBOA (NUMERO)

(*• Genera un numero aleatorio comprendido entre O y (numero-1) para ello genera un numero aleatorio llamando al GEN-ALEA lo considera como si fuera fraccionario y lo multiplica por NUMERO quedando solo la parte entera)-

(SETQ ULTIMO (GEN-ALEA ULTIMO)) (FIX (TIMES ULTIMO NUMERO]) 'g

(GEN-ALEA [LAMBDA (ALE;

(PLUS (TIMES .3141592 ALE) .1073742])

(*• Generador aleatorio de números. FUNCIÓN GENERADORA)

Este mismo método puede escribirse en FORTRAN, ya que sólo usa

aritmética entera entre 10~9 y 109. El método está dado como una subrutina

FUNCTION para que pueda usarse llamándola desde cualquier programa principal.

FUNCTION lAL (lA)

DIMENSIÓN lA (1)

C SUPONER QUE IA(1) ... IA(55) SE HAN INICIALIZADO ADECUADAMENTE

C ESTA SUBRUTINA REUBICA EN EL VECTOR lA LOS SIGUIENTES 55

C NÚMEROS DE UNA SECUENCIA SEUDOALEATORIA, Y DEVUELVE EL

C VALOR 1.

-" DO 1 I = 1,24

J = lA (I) - IA (1+31)

Page 107: tESIS DOCTORAL - Archivo Digital UPM - Archivo Digital UPMoa.upm.es/1032/1/10198501.pdf · la criptografía, en principio alejados del dominio de la Inteligencia Artificial. Después

96

IF (J.LT.0) J=J+1000000000

IA(I) = J

1 CONTINUÉ

DO 2 1=25,55

J = lA (I) - lA (1-24)

IF (J,LT.0) J=J+1000000000

lA (I) = J

2 CONTINUÉ

IAL= 1

RETURN

END

Para usar estos números en un programa FORTRAN, sea JALE una variable

entera auxiliar; se puede obtener el siguiente número aleatorio U, como una fracción

entre 0 y 1 escribiendo las tres sentencias siguientes:

JALE = JALE + 1

IF (JALE.GT.55) JALE = lAL (lA)

LI = FLOAT (lA(JALE))* 1.0 E-9

Obviamente al comienzo del programa es necesario dimensionar lA a 55 y

colocar JALE igual a 55, así como hay que inicializar el vector lA. Una inicialización

idónea puede hacerse llamando a la siguiente subrutina colocando en IX cualquier valor

entero, cumpliendo los requisitos ya indicados, que se va a emplear como XQ.

SUBROUTINE IN (IA,IX)

DIMENSIÓN IA(1)

C ESTA SUBRUTINA COLOCA EN lA (1),...,IA(55) LOS VALORES

Page 108: tESIS DOCTORAL - Archivo Digital UPM - Archivo Digital UPMoa.upm.es/1032/1/10198501.pdf · la criptografía, en principio alejados del dominio de la Inteligencia Artificial. Después

-97

C INICIALES ADECUADOS PARA LLAMARLOS MAS TARDE EN lAL(IA).

C IX ES UN VALOR ENTERO APROPIADO ENTRE O Y 999999999.

IA(55) = IX

J = IX

K = 1

DO 1 1= 1,54

II = MOD (21*1,55)

lA (II) = K

K = J-K

' IF (K.LT.0) K = K+1000000000

J = lA (II)

-r" 1 CONTINUÉ

lAL (lA)

lAL (lA)

lAL (lA)

RETURN

END

Este método dado de forma modular, es lo suficientemente flexible como

para adecuarse a las distintas especificaciones de los distintos computadores existentes

actualmente en el mercado. Y, sin duda, a los que puedan aparecer, al menos, en un

futuro inmediato. Nótese, por ejemplo, que 229 < io9 < 230; luego cualquier número par

grande puede realmente ser sustituido por 109 en estas subrutinas, si se efectúa un

cambio correspondiente de la computación de la fracción aleatoria U. Además, sería

posible también trabajar con números en coma flotante, en lugar de con enteros,

haciendo en los programas los cambios adecuados, con tal de que la aritmética en coma

flotante de los computadores sea lo suficientemente exacta como proporcionar

resultados exactos en todos los cálculos que se necesitan. La mayoría de los

Page 109: tESIS DOCTORAL - Archivo Digital UPM - Archivo Digital UPMoa.upm.es/1032/1/10198501.pdf · la criptografía, en principio alejados del dominio de la Inteligencia Artificial. Después

-98

computadores binarios, serán capaces de cumplimentar estos requerimientos cuando

todos los números con los que se van a tratar tienen la forma a/2P, siendo a un entero,

0<a<2P y, hay p bits de precisión en las fracciones en coma flotante. Los números

(24,55) en estas subrutinas, pueden reemplazarse por cualquier par de valores (j,k) de la

tabla dada por la figura 3.2. para k>50; las constantes 31, 25, 54 y 21 deben entonces

reemplazarse por k-j, j+1, k-1, y d respectivamente, siendo d relativamente primo a k y

d « 0.328k.

(1,2)

(1,3)

(1,4)

(2,5)

(1,6)

(1,7)

(3,7)

(4,9)

(3,10)

(2,11)

(1,15)

(4,15)

(7,15)

(3,17)

(5,17)

(6,17)

(7,18)

(3,20)

(2,21)

(1,22)

(5,23)

(9,23)

(3,25)

(7,25)

(3,28)

(9,28)

(13,28)

(2,29)

(3,31)

(6,31)

(7,31)

(13,31)

(13,33)

(2,35)

(11,36)

(4,39)

(8,39)

(14,39)

(3,41)

(20,41)

(5,47)

(14,47)

(20,47)

(21,47)

(9,49)

(12,49)

(15,49)

(22,49)

(3,52)

(19,52)

(21,52)

(24,55)

(7,57)

(22,57)

(19,58)

(1,60)

(11,60)

(1,63)

(5,63)

(31,63)

(18,65)

(32,65)

(9,68).

(33,68)

(6,71)

(9,71)

(18,71)

(20,71)

(35,71)

(25,73)

(28,73)

(31,73)

(9,79)

(19,79)

(4,81)

(16,81)

(35,81)

(13,84)

(13,87)

(38,89)

(2,93)

(21,94)

(11,95)

(17,95)

(6,97)

(12,97)

(33,97)

(34,97)

(11,98)

(27,98)

FIGURA 3.2. TABLA DE PARES PRODUCIENDO LARGOS PERIODOS MODULO 2.

Finalmente, antes de pasar a la comprobación de la aleatoriedad del método

propuesto, decir unas palabras justificativas del por qué de la elección de un método de

generación de números aleatorios nuevo, cuando hay tantos en el mercado.

Lamentablemente, la inmensa mayoría de los generadores actuales o violan o no siguen

las recomendaciones teóricas exigibles para una "buena" aleatoriedad. Como afirma

Knuth [Knuth 22], por ejemplo, el generador más usado actualmente el RANDU es

realmenj:e "horrible". Como quiera que sea, el uso de números que sean de "verdad"

aleatorios es consubstancial con el sistema de criptografiado propuesto, es por eso que

Page 110: tESIS DOCTORAL - Archivo Digital UPM - Archivo Digital UPMoa.upm.es/1032/1/10198501.pdf · la criptografía, en principio alejados del dominio de la Inteligencia Artificial. Después

99-

es condición "sine qua non" del éxito del mismo el conseguir un buen generador de

números aleatorios, dado que los existentes no reunían todas las garantías necesarias.

3.5.5."Test" de Aleatoriedad.

3.5.5.1. Introducción.

Como ya ha quedado dicho, el principal requerimiento del sistema va a ser

la obtención de secuencias de números que se comporten como si fuesen aleatorios. La

cuestión estriba en saber cu-ando una secuencia dada de números es, o no, aleatoria. Por

ejemplo, durante mucho tiempo, los matemáticos consideraron que; la expansión decimal 'i'"

del número n era una serie aleatoria; sin embargo, como apunta el "Dr. Matrix" [Gadner

13], para los modernos numerologistas, tiene notables repeticiones. Así el primer par de

números que se repite es el 26, y el segundo aparece al principio de una triple

repetición cuya continuación es imagen especular de la primera tal y como se ve en la

figura 3.3.

3.141592653589.7 9,^^4 6 2 6 4 3 ^ ^ ^ 5 O vy> ^^Ui

FIGURA 3.3. REPETICIONES EN EL NUMERO H

Sólo la teoría estadística proporciona algunas medidas para evaluar la

aleatoriedad de una secuencia de números. Se puede decir que el número de test que

pueden concebirse para medir la aleatoriedad, es prácticamente infinito, pero sólo hay

unos cuantos que se han mostrado como más útiles y fácilmente adaptables al uso

computacional, dos de los cuales, naturalmente los más ampliamente contrastados, son

los que aquí se van a considerar. Por otra parte, si una secuencia es aleatoria respecto a

Page 111: tESIS DOCTORAL - Archivo Digital UPM - Archivo Digital UPMoa.upm.es/1032/1/10198501.pdf · la criptografía, en principio alejados del dominio de la Inteligencia Artificial. Después

-100

los test Ti, T2,.">Tn> en general no se puede estar seguro de que no fracase cuando se

la somete a un test adicional Tn+i. Con todo, cada test proporciona una confianza

incremental de la aleatoriedad de la secuencia.

Se pueden distinguir tres tipos de test: "Empíricos", para los cuales el

computador manipula grupos de números de una secuencia y evalúa ciertos criterios

estadísticos. "Teóricos", para los que se establecen características de las secuencias

usando métodos de teoría de números basados en la regla de recurrencia empleada para

formar la secuencia. Y, finalmente, los "generales" que pueden considerarse "híbridos"

puesto que, basándose en consideraciones teóricas, actúan de un modo similar a los

empíricos. Entre estos el más conocido y ampliamente empleado.es el "Chi-cuadrado" i"

que es por el que se va a empezar aquí.

3.5.5.2."Test" de X^

El "test" X^ (Ji o Chi cuadrado) es quizás el mejor conocido de todos los test

estadísticos y es un método básico que se usa en conexión con muchos otros tests. Su

descripción general es la siguiente: Supóngase que en una determinada muestra o

secuencia de números se observan una serie de posibles sucesos o eventos Ei, E2> ... ,

Ek, que ocurren con frecuencias observadas o empíricas Oi, 02» •••» Ok y que, según las

reglas de la probabilidad, se esperaba que ocurrieran con frecuencias teóricas e i , e2, ...

, ek, tal y como se muestra en la tabla dada por la figura 3.4. A menudo, como es este

el caso, se desea saber si las frecuencias observadas difieren significativamente de las

frecuencia esperadas.

Page 112: tESIS DOCTORAL - Archivo Digital UPM - Archivo Digital UPMoa.upm.es/1032/1/10198501.pdf · la criptografía, en principio alejados del dominio de la Inteligencia Artificial. Después

101

¡\

El

Ol

ei

E2

02

62

E3

03

63

• «•

• ••

• ••

Ek

Ok

ek

. )E FRECUENCIAS OBSERVADAS Y ESPERADAS

. la discrepancia existente entre las frecuencias observadas y

por el estadístico X2 dado por:

+ + ... + (0 , - e J k (O.-e.r

= 2 -7^ 7 = 1 J

(3.8)

ocias es N,

y 0 = y e.=w'

frecuencias observadas y teóricas concuerdan exactamente;

coinciden exactamente. A valores mayores de X2, mayores

las frecuencias observadas y esperadas.

ón muestral de x2 se aproxima muy estrechamente a la

Y = Y^X'^-e' (3.9)

las son al menos iguales a 5, y mejoran dicha aproximación

ín la fórmula (3.9) v representa los grados de libertad, cuyo

Page 113: tESIS DOCTORAL - Archivo Digital UPM - Archivo Digital UPMoa.upm.es/1032/1/10198501.pdf · la criptografía, en principio alejados del dominio de la Inteligencia Artificial. Después

102

a) V = k-1 si las frecuencias esperadas pueden calcularse sin tener que

estimar parámetros poblaeionales con las estadísticas muéstrales. El restar

1 a k está motivado por el hecho de que si son conocidas k-1 de las

frecuencias esperadas, la frecuencia restante puede calcularse trivialmente.

Este va a ser el caso que aquí se contemple.

b) V = k-l-m si las frecuencias esperadas solamente pueden calcularse

estimando m parámetros de la población a partir de las estadísticas

muéstrales.

V En la práctica, las frecuencias esperadas se calculan de acuerdo con la

hipótesis nula HQ. Para llegar a tomar decisiones estadísticas, conviene hacer

determinados supuestos o conjeturas acerca de las "poblaciones" que se estudian. Tales

supuestos que pueden ser, o no, ciertos reciben el nombre de hipótesis estadísticas. En

muchos casos, se formulan hipótesis estadísticas con el solo propósito de rechazarlas o

invalidarlas. Por ejemplo, como es el caso, si se quiere decidir sobre si un

procedimiento es mejor que otro, se formula la hipótesis de que "no hay diferencia"

entre ambos. Tales hipótesis se conocen por el nombre de "hipótesis nulas" y se denotan

por HQ. Cualquier hipótesis que difiera de una dada se llama "hipótesis alternativa".

Si en el supuesto de que una hipótesis determinada es cierta, se encuentra

que los resultados observados en una muestra al azar difieren significativamente de

aquellos que cabía esperar con la hipótesis y con la variación propia del muestreo,

diríase que las diferencias observadas son significativas, estándose en condición de

rechazar la hipótesis, o al menos de no aceptarla de acuerdo con la evidencia obtenida.

Los procedimientos que facilitan el decidir si una hipótesis se acepta o se rechaza, o el

determinar si las muestras observadas difieren significativamente de los resultados

Page 114: tESIS DOCTORAL - Archivo Digital UPM - Archivo Digital UPMoa.upm.es/1032/1/10198501.pdf · la criptografía, en principio alejados del dominio de la Inteligencia Artificial. Después

103

esperados se denominan "ensayos de hipótesis" o de "significación" o, aún, "reglas de

decisión".

Si se rechaza una hipótesis cuando debería ser aceptada, se dice que se

comete un "error del tipo I" y, por el contrario, si se acepta una hipótesis que debería

ser rechazada, se dice que se comete un "error de tipo II". Obviamente, en ambos casos,

se comete un error al tomar una decisión equivocada. A la probabilidad máxima con la

que en el ensayo de una hipótesis se puede cometer un error del tipo I se llama "nivel de

significación" del ensayo. Esta probabilidad se denota a veces por a, y generalmente se

fija antes de la extracción de las muestras, de modo que los resultados obtenidos no

influyen en la elección. En la práctica, se acostumbra a utilizar niveles de significación

del 0,05 ó 0,01. En el primer caso, se está diciendo que hay aproximadamente 5

ocasiones de 100 en que se rechaza la hipótesis cuando debería ser aceptada; es decir,

se está en un 95% de confianza de que se toma la decisión adecuada. En tal caso, se

dice que la hipótesis ha sido rechazada al "nivel de significación" del 0,05, lo que

significa que se puede cometer error con una probabilidad de 0,05.

Si bajo la hipótesis HQ el valor calculado de x2, dado por la fórmula (3.8), es

mayor que algún valor crítico, tal como X^g gg ó X^Q gg, que son los valores críticos a

los niveles de significación de 0,05 y 0,01, respectivamente, se deduce que las

frecuencias observadas difieren significativamente de las esperadas y se rechaza HQ. En

caso contrario, se aceptará o al menos no se rechazará la hipótesis. Debe advertirse que

aquellas situaciones en las que X2 está muy próximo a cero, deben mirarse con cierto

recelo, puesto que es raro que las frecuencias observadas concuerden demasiado bien

con las esperadas. Para examinar tales situaciones, se puede determinar si el valor

calculado de X2 es menor que X^Q gg ó X'^g^gj, en cuyos casos se decide que la

concordancia es bastante buena a los niveles de significación indicados.

Page 115: tESIS DOCTORAL - Archivo Digital UPM - Archivo Digital UPMoa.upm.es/1032/1/10198501.pdf · la criptografía, en principio alejados del dominio de la Inteligencia Artificial. Después

104

Pues bien, sometido el generador de números aleatorios propuesto con

valores de Xo=cualquiera, a=3141592653, c=2718281829 y m=235, al test de X2 ha dado

resultados satisfactorios.

El test de X2 se aplica a la situación en la cual las observaciones caen

dentro de un número finito de categorías. Sin embargo, no es insólito considerar

cantidades que puedan tomar "infinitos" valores. Para estos casos, se utiliza el test

Kolmogorov-Smirnov ("K-S"), que aquí no se va a considerar y que, está tratado de

forma casi exhaustiva por Knuth [Knuth 22]. La principal diferencia entre ambos test es

que justamente el X2, se aplica a distribuciones en las que F(x) tiene saltos, en tanto

que el K-S se aplica a distribuciones en las que F(x) no presenta saltos. Sin embargo, el ' i '

test K-S puede usarse conjuntamente con el x2. Por ejemplo, supóngase que se efectúan

10 test X2 independientes sobre distintas partes de una secuencia aleatoria,

obteniéndose diez valores distintos Xi, X2,.-> Xio- A continuación, se ajusta una

distribución empírica a esos valores y se compara con la distribución teórica K-S.

3.5.5.3.Test espectral

Los resultados teóricos proporcionan un mayor entendimiento acerca de los

métodos de generación que los aportados por los métodos empíricos de "ensayo y error".

Si se conocen los resultados de algunos test antes de que realmente se generen los

números, evidentemente hay más facilidad de escoger adecuadamente a, m y c, si se

tratan, como es el caso, de generadores congruenciales lineales.

El "test espectral" es una forma especialmente importante de verificar la

calidad de los generadores de números aleatorios por el método congruencial lineal. Por

una parte, porque todos los buenos generadores pasan el test y, por otra, porque todos -i

los generadores considerados malos fracasan ante dicho test. De este modo, es con

Page 116: tESIS DOCTORAL - Archivo Digital UPM - Archivo Digital UPMoa.upm.es/1032/1/10198501.pdf · la criptografía, en principio alejados del dominio de la Inteligencia Artificial. Después

105-

mucho el más potente de los test conocidos y, por esta razón, merece atención

particular.

Este test, además, engloba aspectos de los test tanto teóricos como

prácticos ya mencionados. Es similar a un test teórico porque trata con propiedades del

período completo de la secuencia, y es como un test empírico debido a que requiere un

programa de computador para determinar los resultados.

El más importante criterio de aleatoriedad parece residir en las propiedades

de la distribución combinada de t elementos consecutivos de la secuencia, y el test

espectral trata directamente con esta distribución. Si se tiene una secuencia (Un) de

r período m, la idea es analizar el conjunto de todos los m puntos

« ^ . ' ^ „ . l ^n.t.l>^ (3.10)

en un espacio t-dimensional.

Por simplicidad, se va a suponer que se tiene una secuencia congruencial

lineal (XQ, a, c, m) de tamaño máximo de periodo m, de este modo c*0, o que m es

primo y c=0 y el tamaño del periodo es m-1. En este último caso, se añadirá el punto

(0,0,...,0) al conjunto dado por (3.10), de modo que siempre existen en total m puntos;

este punto extra tiene un efecto despreciable cuando m es grande, y hace la teoría

mucho más sencilla. Con estas consideraciones, (3.10) puede reescribirse como sigue:

{— (x, s(x), s(six)),.'.'., s^ \x)) 1 o Sx<m} ' (3.11) m

donde

s(x) = (ax + c) mod m

Page 117: tESIS DOCTORAL - Archivo Digital UPM - Archivo Digital UPMoa.upm.es/1032/1/10198501.pdf · la criptografía, en principio alejados del dominio de la Inteligencia Artificial. Después

-106-

es el "sucesor" de x. Hay que señalar que sólo se está considerando el conjunto de todos

los puntos en t dimensiones, y no el orden en el cual dichos puntos se generan

realmente. Pero el orden de generación se refleja en la dependencia entre componentes

de los vectores; y el test espectral estudia tai dependencia para varias dimensiones t

tratando con la totalidad de todos los puntos de (3.11).

Por ejemplo, la figura 3.5, muestra un caso típico pequeño en 2 y 3

dimensiones, para el generador con

s(x) = (137x -I- 187) mod 256

Naturalmente, que un generador con un periodo de tamaño 256 difícilmente sera

aleatorio, pero 256 es lo suficientemente pequeño como para dibujar un diagrama y

alcanzar algún entendimiento antes de pasar a valores m más largos que son los que

tienen interés práctico.

(a)

FIGURA 3.5. (a) "Espacio" bidimensional formado por todos los pares de puntos

sucesivos (Xn, Xn+l), cuando Xn+1 = (137 Xn +187) mod 256. (b) Espacio

tridimensional de los triples (Xn, Xn+1> Xn+2)«

Page 118: tESIS DOCTORAL - Archivo Digital UPM - Archivo Digital UPMoa.upm.es/1032/1/10198501.pdf · la criptografía, en principio alejados del dominio de la Inteligencia Artificial. Después

-107-

Quizás la cosa más chocante acerca de los patrones de cajas de la figura

3.5., es que se pueden cubrir todos ellos por un pequeño número de líneas paralelas. De

hecho, hay distintas familias de líneas paralelas que tocarían esos puntos. Si el mismo

generador se considera en tres dimensiones, se obtienen 256 puntos en un cubo, obtenido

añadiéndole una componente en la parte superior s(s(x)) a cada uno de los 256 puntos

(x,s(x)) en el plano de la figura 3.5 (a), como lo muestra la figura 3.5 (b). Imagínese que

esta estructura tipo cristal en tres dimensiones, se ha realizado en un modelo físico; es

decir, un cubo real, cuando se le gira, se advierten varias familias de planos paralelos

que ligan todos los puntos.

A primera vista, se puede pensar que tal comportamiento sistemático es tan

no aleatorio como para hacer a los generadores congruenciales bastante carentes de

valor; pero una reflexión más cuidadosa, lleva a recordar que m es lo suficiente grande

en la práctica como para proporcionar un mejor discernimiento. La estructura regalar

en la figura 3.5, es esencialmente el "grano" que se ve cuando se examinan los números

aleatorios bajo un microscopio de gran poder. Si se toman números verdaderamente

aleatorios entre O y 1 y se redondean o truncan a una exactitud finita, de modo tal que

es un entero múltiplo de 1/v para algún número dado v, entonces los puntos

t-dimensionales en (3.10) que se obtienen, tendrán un carácter extremadamente regular

cuando se observan a través del microscopio.

Sea l/v2 la distancia máxima entre líneas, tomada sobre todas las familias

de rectas paralelas que cubren los puntos {(x/m), s(x) / m} en dos dimensiones. Se

llamará V2 la exactitud bidimensional del generador de números aleatorios, ya que los

pares de números sucesivos tienen una estructura fina que es esencialmente buena a una

parte en V2. Similarmente, sea I/V3 la distancia máxima entre planos, tomadas sobre

todas las familias de planos paralelos que cubren todos los puntos {(x/m), s(x)/m,

s(s(x))/m)}; llamando a V3 la exactitud en tres dimensiones. La exactitud vt t-

Page 119: tESIS DOCTORAL - Archivo Digital UPM - Archivo Digital UPMoa.upm.es/1032/1/10198501.pdf · la criptografía, en principio alejados del dominio de la Inteligencia Artificial. Después

-108

dimensional es la recíproca de la distancia máxima entre hiperplanos, tomadas sobre

todas las familias de hiperplanos paralelos (t-l)-dimensionales que cubren todos los

puntos {(x/m), s(x)/m,..., st-1 (x)/m)}.

La diferencia esencial entre secuencias periódicas y secuencias realmente

aleatorias que han sido truncadas a múltiplos de 1/v, es que la "exactitud" de las

secuencias verdaderamente aleatorias es la misma en todas las dimensiones, mientras

que la "exactitud" de las secuencias periódicas disminuye a medida de que t aumenta.

Verdaderamente, ya que sólo hay m puntos en el cubo t-dimensional cuando m es el

tamaño del periodo, no se puede alcanzar una exactitud t-dimensional de más que

aproximadamente mi A.

-r'

Cuando se considera la independencia de t valores consecutivos, los números

aleatorios generados con computador se comportarán esencialmente como si se tomaran

números realmente aleatorios y se truncaran a log v bits, donde vt decrece cuando se

incrementa t. En la práctica, tal variación de exactitud es habitualmente todo lo que se

necesita. La exactitud 10-dimensional es 235, en el sentido de que todas las (235)10

posibles 10-ernas (Un, Un+l>—jUn+9) serían igualmente probables sobre una máquina de

35-bits; para valores tan grandes de t se necesitan sólo unos pocos de los bits iniciales

de (Un, Un+lv>Un+t-l) P^^^ ^"^ se comporten como si fueran aleatorios

independientemente.

Por otra parte, cuando una aplicación exige alta resolución de la secuencia

de números aleatorios, las secuencias congruenciales lineales simples serán

necesariamente inadecuadas. En ese caso, debería usarse un generador con un periodo

más largo, incluso aunque sólo sea realmente generado una pequeña fracción del

periodo. Elevar al cuadrado el periodo elevará esencialmente el cuadrado de la

Page 120: tESIS DOCTORAL - Archivo Digital UPM - Archivo Digital UPMoa.upm.es/1032/1/10198501.pdf · la criptografía, en principio alejados del dominio de la Inteligencia Artificial. Después

109-

exactitud en dimensiones más altas; es decir, doblará el número efectivo de bits de

precisión.

El test espectral se basa en los valores de vt para t pequeño, tal como

2 ^ t s 6 . Dimensiones como 2, 3 y 4 parecen ser adecuadas para detectar deficiencias

importantes en una secuencia, pero ya que se considera el periodo entero, parece mejor

ser algo precavido y elevarlo en una dimensión o dos. Por otra parte, los valores de vt

para t > 10 parecen no tener significación práctica. Esto es una suerte, debido a que

parece ser difícil calcular vt cuando t > 10:

Puede parecer al principio que debería aplicarse el test espectral sólo para

un valor de t deseablemente alto; si un generador pasa el test en tres dimensiones,

parece plausible que también debería pasar el test de dos dimensiones; por lo tanto,

puede omitirse este último. La falacia de este razonamiento aparece porque se aplican

condiciones más estrictas en dimensiones menores. Una situación similar ocurre con el

test serial: Considerar un generador que tenga casi el mismo número de puntos en cada

subcubo del cubo unidad, cuando este se ha dividido en 64 subcubos de tamaño

1/4x1/4x1/4; este mismo generador puede producir subcuadrados completamente vacíos

del cuadrado unidad, cuando este se ha dividido en 64 subcuadrados de tamaño 1/8x1/8.

Ya que se incrementan las expectativas en dimensiones menores, es necesario realizar

un test separado para cada dimensión.

No es siempre verdad que vt ^ ml/t , aunque este límite superior es válido

cuando los puntos forman una parrilla rectangular. Por ejemplo, resulta que V2 = V274

>V256 en la figura 3.5, debido a que una estructura próxima a la hexagonal conduce los

m puntos agrupados que sería posible en una ordenación estrictamente rectangular.

Page 121: tESIS DOCTORAL - Archivo Digital UPM - Archivo Digital UPMoa.upm.es/1032/1/10198501.pdf · la criptografía, en principio alejados del dominio de la Inteligencia Artificial. Después

-110

Con el fin de analizar el conjunto básico (3.10) se va a comenzar con la

observación de que

1 . faJx\a\a\...\aJ-^)c\ — s'(x) = 1 I mod 1 m \ m /

Es posible eliminar la operación "módulo 1" extendiendo el conjunto

periódicamente, tomando infinitas copias del hipercubo t-dimensional original,

procediendo en todas las direcciones. Esto proporciona el conjunto:

X s{x) s' (x) L = {(— + ^ , — + k , + kUenteros x , k k , k }

m m m Í ¿ c

X ax a X ^ • = { ^ + - + ^ ' ~ + ^ 2 - - ^ ; r +k\\enterosx,k^,k^,...,k^

m '• m '• m

siendo:

1 t 9 V- = - (0,c, (1 +a)c,...,(l + a + ... +a'~^)c)

un vector constante. La variable k i es redundante en esta representación de L, porque

se puede cambiar, sin pérdida de generalidad, (x, k i , k2,...,kt) a (x+kim, O, k2-aki>...,kt-

a t - l k i ) , reduciendo ki a cero. Obteniéndose, consecuentemente la fórmula,

comparat ivamente más sencilla:

siendo

1 V=-{\,a,a,..,a'-\ (3.12)

^ m ... - •

V = (0,1,0,...,0), V3 = (0,0,1,...,0),...,V^ = (0,0,0,...,1) (3.13)

Page 122: tESIS DOCTORAL - Archivo Digital UPM - Archivo Digital UPMoa.upm.es/1032/1/10198501.pdf · la criptografía, en principio alejados del dominio de la Inteligencia Artificial. Después

-111

Los puntos (xi,x2v>xt) de L que satisfacen 0<xj<l para todo j , son precisamente los m

puntos del conjunto original (3.10).

Es de señalar, que el incremento c sólo aparece en VQ, y el efecto de VQ es

meramente desplazar todos los elementos de L sin cambiar sus distancias relativas; por

lo tanto, c "no afecta al test espectral en absoluto", y se puede suponer que VQ =

(0,0,0,..,0) cuando se calcula Vf Cuando VQ es el vector cero se tiene el así llamado

"retículo" de puntos:

^0 " ^1^1 "^^2^2'''-^^t^tI ^'^^«'•osyvy2' -'y)

Y la meta es estudiar las distancias entre hiperplanos (t-l)-dimensionales adyacentes,

en familias de hiperplanos paralelos que cubren todos los puntos efe LQ.

Una familia de hiperplanos (t-l)-dimensionales, puede definirse por un

vector no nulo U=(ui,...,ut) que es perpendicular a todos ellos; y entonces el conjunto de

puntos sobre un hiperplano particular es:

[{x^,...,x^\ x^u^ + ...+x^u^ = q)

siendo q una constante distinta para cada hiperplano en la familia. En otros términos,

cada hiperplano es el conjunto de todos los X para los cuales el producto escalar X.U

tiene un valor q dado. En el caso que aquí concierne, los hiperplanos están separados por

una distancia fija, y uno de ellos contiene (0,0,...,0); por lo tanto, es posible ajustar la

magnitud de U de modo que el conjunto de todos los valores enteros q proporcione todos

los hiperplanos de la familia. Entonces, la distancia entre hiperplanos vecinos es la

distancia mínima de (0,0,...,0) al hiperplano que tiene de valor q=l, a saber

^ ' ^ ^ ' ' (3.14) realx ,...,x^

Page 123: tESIS DOCTORAL - Archivo Digital UPM - Archivo Digital UPMoa.upm.es/1032/1/10198501.pdf · la criptografía, en principio alejados del dominio de la Inteligencia Artificial. Después

-112

La desigualdad de Cauchy dice que

{x^u^ + ... + x^uf < (x5 + ...+xJ) (u^+... + u )

Y, por lo tanto, el mínimo en (3.14) se produce cuando para cada

x. = u./(u^, + ... + u^) J J ^ t

la distancia entre hiperplanos vecinos es:

1/V^ + ... + U = 1/dimensión ({/) '*

Dicho de otro modo, la cantidad vt buscada, es precisamente la dimensión del vector U

más pequeño que define una familia de hiperplanos

{X.U = q\q entero)

conteniendo todos los elementos de LQ. Tal vector

debe ser no nulo, y debe satisfacer que V.U = entero para todo V en LQ. En particular,

ya que los puntos (1,0,...,0), (0,1,...,0),...,(0,0,...,1) están todos en LQ, todos los uj, deben

ser enteros. Además, ya que Vi está en LQ, se debe tener que l/m(ui+au2+...+at-l ut)=

entero; es decir:

u^ + aw2+..+a'"^u^ =0 (mocím) (3.15)

Recíprocamente, cualquier vector entero no nulo U=(ui,...,ut) satisfaciendo (3.15),

define una familia de hiperplanos con las propiedades exigidas, ya que todos los puntos

Page 124: tESIS DOCTORAL - Archivo Digital UPM - Archivo Digital UPMoa.upm.es/1032/1/10198501.pdf · la criptografía, en principio alejados del dominio de la Inteligencia Artificial. Después

113-

en Lo estarán cubiertos: (yiVi+...+ytVt).U, será entero para todos los enteros yi,...,yt>

con lo que se ha demostrado que:

2 V =

t min {u +... + U \ u^+au +... + a u =0 {módulom)}

(u^,...,up*(0,...,0)

9 A 1 2 2 2 2

min ((mx,—ax,—a x„ —... —a x) +X2+X 4-... + x ) (Xj,...,xp*(0,...,0)

(3.16)

Con lo que se ha reducido el test espectral al problema de encontrar el valor mínimo de

(3.16). Pero la dificultad estriba ahora en cómo determinar ese valor mínimo en una

cantidad de tiempo razonable. Obviamente, una búsqueda "ciega" o de "fuerza bruta" no

es la solución ya que m es muy grande en los casos de interés práctico. Por lo tanto, y

en una especie de huida hacia adelante, será más interesante y probablemente más útil,

desarrollar un método computacional para resolver el problema, incluso más general, de

encontrar el valor mínimo de la cantidad:

Ax^,...,xp = {u^^x^ + ... + u^^xf+... + (u^^x^ + ... + u^^xf (3.17)

sobre todos los vectores enteros no nulos (xi,...,xt) dada cualquier matriz no singular de

coeficientes U=(uij). La expresión (3.17) se denomina "forma cuadrática definida

positiva" en t variables. Dado que U es no singular, (3.17) no puede ser cero a menos que

todas las xj sean cero.

Si se indica por Ui,...,Ut todas y cada una de las filas de U, entonces se

puede escribir:

/•(x^,...,xp = (x^í/j + ...+x^C/p.(Xjt/^ + ... + x^í/p • (3.18)

como el cuadrado de la longitud del vector xiUi+...+xtUt. La matriz no singular U tiene

una inversa, lo que significa que se pueden encontrar unívocamente determinados

vectores Vi,...,Vt tales que:

Page 125: tESIS DOCTORAL - Archivo Digital UPM - Archivo Digital UPMoa.upm.es/1032/1/10198501.pdf · la criptografía, en principio alejados del dominio de la Inteligencia Artificial. Después

114

tiene:

UV.= 5. , l<i,j<t (3.19)

Por ejemplo, en la forma especial (3.16) que surge en el test espectral, se

U=( m , 0 , 0 , . . . , 0 ) , V, = - ( 1 , a . a ^ , ... , a ' - M , ' '• m

Í/.2 = ( -a , 1 , 0 O ) , V^= ( 0 , 1 , 0 , . . . , O ) ,

í/g = ( -a^ , O , 1 , ... , O ) , V^= ( 0 , 0 , 1 , . . . , O ) ,

<7 = ( _ a ' - l , 0 , 0 , ... , 1 ) , V^= ( 0 . 0 , 0 , : . . , ! )

Siendo las Vj precisamente los vectores (3.12) y (3.13) que se usan para

definir el retículo original LQ. Verdaderamente, esto no es una coincidencia, si se ha

comenzado con un retículo arbitrario LQ, definido por cualquier conjunto de vectores

linealmente independientes Vi,...,Vt el argumento usado con anterioridad puede

generalizarse para mostrar que la separación máxima entre hiperplanos en una familia

que cubra el conjunto, es equivalente a minimizar (3.18), estando los coeficientes uij

definidos por (3.19).

El primer paso para minimizar (3.18) consiste en reducirlo a un problema

finito; es decir, a mostrar que no es necesario verificar infinitos vectores (xi,...,xt)

para encontrar el mínimo. Aquí es justamente en donde entran en juego los vectores

Vl,...,Vt; así se tiene que:

y, por la desigualdad de Cauchy, es:

a,^t/^+...+,^c/p.v^)2<A.v...,xp(^.v,)

Page 126: tESIS DOCTORAL - Archivo Digital UPM - Archivo Digital UPMoa.upm.es/1032/1/10198501.pdf · la criptografía, en principio alejados del dominio de la Inteligencia Artificial. Después

-115

con lo que se obtiene un límite superior útil sobre cada coordenada xk, descrito por el

siguiente:

LEMA

Sea (xi,...,xt) un vector no nulo que minimiza (3.18) y sea (yivjYt)

cualquier vector entero no nulo. Entonces:

.r¿<(V^ .V^^)/-(y ,...,3;p paral<k^t (3.20)

En particular, haciendo yi=5ij para todo i, es:

xl<.iV^.V^){U .U), paral<j,k<l (3.21)

Este lema reduce el problema a una búsqueda finita, pero el lado izquierdo

de la desigfualdad (3.20) es habitualmente demasiado grande como para hacer factible

una búsqueda exhaustiva; por lo tanto, es necesario añadir algo más. En tal caso, la

siguiente regla heurística resuelve el problema:

"Si no se puede resolver un problema como está establecido.

Entonces, cambiarlo a uno más sencillo que tenga la misma respuesta"

Un ejemplo de uso de esta heurística para el algoritmo de Euclídes es el

siguiente: "Si no se sabe el máximo común divisor de los números deseados, entonces

cambiarlos a números más pequeños que tengan el mismo máximo común divisor". De

hecho, en esta regla heurística subyace un enfoque más general de heurística, ya citado,

que, con el nombre de reducción o descomposición de problemas en subproblemas, es la

base del análisis cartesiano y de todos los posteriores, incluidos los informáticos. Esta

Page 127: tESIS DOCTORAL - Archivo Digital UPM - Archivo Digital UPMoa.upm.es/1032/1/10198501.pdf · la criptografía, en principio alejados del dominio de la Inteligencia Artificial. Después

-116-

heurística general, fundamentada en la divisa Cesariana del "Divide y vencerás",

empleada en el descubrimiento de casi todos los algoritmos, puede enunciarse como

sigue:

"Si no se puede resolver un problema directamente.

Entonces, reducirlo a uno o más problemas más sencillos a partir de cuya

solución puede resolverse el problema original"

En lo que aquí concierne, un problema más sencillo será uno que requiera

menos búsqueda porque el lado derecho de (3.21) es menor. La idea clave que se va usar'

es que es posible cambiar una forma cuadrática en otra que es equivalente para todos

los efectos prácticos. Sea j cualquier índice fijado de antemano tal que, l < j s t ; sea

(qi,...,qj-l,qj+l,...,qt) cualquier secuencia de t-1 enteros; y considérese la siguiente

transformación de los vectores:

V\ = V.-q.V., x'.=x.-q.x. , IT. =U. , para i^j ^ (3.22)

v.^v, x'.=x. , [r.=u.+ y. qu.

Es fácil ver que los nuevos vectores U'i,...,U't definen una forma cuadrática

f para la cual f'(x'i,...,x't) = f(xi,...,xt); además la condición básica de ortogonalidad

(3.19) permanece válida, debido a que es fácil verificar que U'i . V'j = Sij. Como

(xi,...,xt) va a través de todos los vectores enteros no nulos, también considera

(x'i,..,x't); por lo tanto, la nueva forma f tiene el mismo minino que f.

La meta es usar la transformación (3.22), reemplazando Ui por U'¡ y Vj por

V'i para todo i, con el fin de hacer el lado derecho de (3.21) pequeño, que lo será cuando

ambos Uj.Uj y V^.V^ son pequeños. Por lo tanto, las dos consideraciones siguientes son

pertinentes:

Page 128: tESIS DOCTORAL - Archivo Digital UPM - Archivo Digital UPMoa.upm.es/1032/1/10198501.pdf · la criptografía, en principio alejados del dominio de la Inteligencia Artificial. Después

1 1 7 -

a) ¿Qué elección de qj hace V'i.V'¡ tan pequeño como sea posible?

b)¿Qué elección de q•^^,...,q:_•^^, q:+j,...,q^ hace U'j.U'j tan pequeño como sea

posible?

La cuestión (a) para valores reales de qj se resuelve fácilmente, ya que

(V _ q V .).{V -q.V.) = V .V.-2q.VV + q'V V

= iV.V.)(q.-iV..V./ V..V)f j J i i j j J

+ V..V.-(V..V.f / V .V. t i 1 7 J J

y el mínimo ocurre cuando

q z^V.V./V.V (3.23) t i J J J

En cuanto a la cuestión (b) se quiere elegir el q; tal que

C/.+ y . q.U.

tiene dimensión mínima. Geométricamente, se quiere comenzar con Uj y añadir algún

vector en el hiperplano (t-l)-dimensional cuyos puntos son la suma de múltiplos de (Uj

|Í3tj). De nuevo, la mejor solución es elegir las cosas de modo que U'j sea perpendicular

al hiperplano; es decir, tal que U'j. Uk=0 para todo k * j ; o sea;

U..U^+ Z 9/í^,-t^^) = 0, \<k<t,k^j (3.24)

Una vez respondidas a ambas cuestiones, aparece un dilema. En efecto,

¿debería elegirse qj de acuerdo con (3.23), de modo que V'j.V'j se minimice, o de

acuerdo'con (3.24) de manera que se minimice U'j U'j? En cualquiera de los casos, se

mejora el lado derecho de (3.21); por lo tanto no está claro "a priori" que elección

Page 129: tESIS DOCTORAL - Archivo Digital UPM - Archivo Digital UPMoa.upm.es/1032/1/10198501.pdf · la criptografía, en principio alejados del dominio de la Inteligencia Artificial. Después

-118

efectuar. Afortunadamente, Knuth [Knuth 22] demuestra que ambas condiciones son la

misma, redescubriendo el "proceso de ortogonalización de Schmidt".

Sin embargo, todo esto está restringido a que los valores de qj sean enteros.

La mejor manera de extenderlo a valores reales es tomar como qj el entero más

próximo a Vi.Vj | Vj Vj. Aunque ésta no es la mejor solución para la cuestión (b), de

hecho U'j puede a veces ser mayor que Uj. Sin embargo, el límite (3.20) nunca se

incrementa ya que se puede recordar el menor valor de f(y-^,...,yp encontrado hasta

entonces. De este modo, la elección de qj basada únicamente en la cuestión (a) es

bastante satisfactoria.

Si se aplica la transformación (3.22) repetidamente, de tal manera que

ninguno de los vectores V¡ se haga más largo y al menos uno se haga más corto, nunca

se entra en un ciclo; es decir, nunca se considerará la misma forma cuadrática de nuevo

después de una secuencia de transformaciones no trivales de este tipo. Pero

eventualmente se puede producir que ninguna de las transformaciones (3.22) para

l < j < t sea capaz de "acortar" cualquiera de los vectores Vi,...,Vt. Entonces, se puede

iniciar una búsqueda exhaustiva usando los límites del lema anterior que ahora es

bastante reducida en la mayoría de los casos. Con esto se consigue constreñir la

explosión combinatoria, aumentando la eficiencia de la búsqueda exhaustiva.

De todas estas consideraciones, se ha obtenido un algoritmo bastante

eficiente que desarrolla el test espectral. Este algoritmo, determina el valor de

y = min{\/x^+...+x^ \ x +ax^ + ... + a' x^ = O (módulom)}

para 2 s t < T dados a, m y T, con 0<a<m y a relativamente primo a m. El número v mide

la exactitud t-dimensional de los generadores de números aleatorios. Toda la aritmética

dentro de este algoritmo está hecha sobre enteros cuya magnitud raras veces, si alguna

Page 130: tESIS DOCTORAL - Archivo Digital UPM - Archivo Digital UPMoa.upm.es/1032/1/10198501.pdf · la criptografía, en principio alejados del dominio de la Inteligencia Artificial. Después

119

o

vez se produce, excede a m^, excepto en el paso 8; puesto que, de hecho, todas las

variables enteras, serán menores que m en valor absoluto durante la computación.

Cuando se está calculando v^ para t > 3 , el algoritmo trabaja con dos

matrices U y V de t x t, cuyos vectores fila se denotan por U}=(uj2,...,uj^) y Vi=

(v|]^,...,vj^) para l < i < t . Estos vectores satisfacen las condiciones:

u , + au.„+... + a' ^u. ^ O {módulo m), l < i < í (3.25)

U..V. = 5..m, \<i , j<t (3.26)

De este modo, la Vj anteriormente discutida ha sidk' multiplicada por m,

para asegurar que sus componentes son enteros. También se usan otros tres vectores

auxiliares X = (x-j^,...,x^) , Y=(yj,...,y.j.) y Z = {7.-^,...,z^. Por otra parte, r representará

at~l módulo m y s denotará el menor límite superior para v^ descubierto hasta ese

momento. El algoritmo, se describe con los pasos siguientes:

1. Inicialización. Colocar en h'í-a, h'«-m, p«-s, p'^-o, r -a, s<-l+a2. Los

primeros pasos del algoritmo, manejan el caso t=2 por un método

especial, muy similar al algoritmo de Euclides; se tendrá

h — ap = h' — ap'^0 {módulo m)

kp'—h'p = ím

durante esta fase del cálculo.

2. Paso Euclídeo. Colocar en qHh'/h| , u<-h'-qh, v-í-p'-qp. Si u^+v^ <s,

colocar en s«-u^+v^ , h'<-h, h«-u, p'-«-p, p<-v y repetir este paso 2.

Page 131: tESIS DOCTORAL - Archivo Digital UPM - Archivo Digital UPMoa.upm.es/1032/1/10198501.pdf · la criptografía, en principio alejados del dominio de la Inteligencia Artificial. Después

-120

3. Computar v^. Colocar en h<-u-h, v*-v-p; y si u^ + v <s, colocar en

s*-u^ + v" , h'<-u, p'*-v. Entoces la salida es Vs=v^. Ahora se colocarán

en las matrices U y V, satisfaciendo las condiciones (3.25) y (3.26) para

los cálculos de los casos de dimensionalidad mayor que 2:

- : : • : • ) • - ( . : . : •

donde la condición necesaria y suficiente para elegir el signo menos de

V es que p' sea mayor que 0.

4. Incremento de t. Si t=T, el algoritmo termiüa. En otro caso, se

incrementa t en 1. En este punto, U y V son matrices de txt

satisfaciendo las condiciones (3.25) y (3.26) y deben ampliarse

adecuadamente añadiéndoles una fila y una columna. Colocar en t<-t+l

y en r<-(ar) módulo m. Colocar a Ut la nueva fila (-r, O, O, ..., O, 1) de t

elementos, y colocar en uj^«-0 para l<i<t . Colocar en Vt la nueva fila

(O, O,...,O, m). Finalmente, para l<i<t, colocar en q<-E (V^r/m),

Vj^-í-V^r-qm, y Uf«-Ut+qUi« Aquí E indica el entero más próximo a x;

es decir, |x+l/2|. Esencialmente, se está haciendo Vif»-Viir e

inmediatamente se aplica la transformación (3.22) con j=t ya que los

números iVjirl son tan grandes que deben reducirse. En los pasos

siguientes, j denota el índice de la fila actual en transformación y k

denota la fila en la que la transformación ha tenido lugar en el último

paso. ._. -

5. Transformar. Para l < i < t , hacer las operaciones siguientes: Si ixj y

2|V|.Vj|>Vj.Vj, colocar en q^E(Vj.Vj/Vj.Vj), en Vj«-V}-qVj, en

Uj-«-Uj+qU}, y en k<-j« El hecho de omitir esta transformación cuando

Page 132: tESIS DOCTORAL - Archivo Digital UPM - Archivo Digital UPMoa.upm.es/1032/1/10198501.pdf · la criptografía, en principio alejados del dominio de la Inteligencia Artificial. Después

121

2|V}.Vj| se iguala exactamente con V:.VJ previene la entrada del

algoritmo en un ciclo infinito.

6. Examinar nuevo límite. Si k=j; es decir, si la transformación en 5 ha

hecho algo útil, colocar en s<-min (s, U,-, U,-)-

7. Incrementar j . Si j=t, colocar en j-í-1; en otro caso, colocar en j«-j+l-

Ahora bien, si j * k , ir a 5. Si j=k significa que se han hecho t-1 ciclos

consecutivos de no transformación.

8. Preparación de la búsqueda. Ahora, se determinará el mínimo absoluto i '

usando una búsqueda exhaustiva sobre todos los (x2,...,x^) que

satisfacen la condición (20) del lema; para lo cual, colocar en X«-Y

•«-(0,..,0), colocar en k«-t, y colocar en

Z . ^ l \ / | ( V . .V )s/m^\\ ,para l < y < í

Se examinan todas las X=(xj,...,x^) con |x.-i<z: para l < j < t . Aunque

hasta ahora, ni z; se hizo nunca mayor que 1, ni la búsqueda exhaustiva

ha reducido s; sin embargo, son posibles en casos excepcionales,

especialmente en los de muy alta dimensionalidad. Durante la

búsqueda exhaustiva, el vector Y será siempre igual a Xj U +...+x^U^,

de modo que f(xj^,...,x^) = Y.Y. Dado que f(-X2,...,-x^) = f(X]^,...,x^), sólo

se examinarán aquellos vectores cuya primer componente no nula es

positiva.

9. Incrementar xj^. Si Xj =zj , ir a 11. En otro caso, incrementar X| en 1 y

colocar en Y<-Y+Uj^.

Page 133: tESIS DOCTORAL - Archivo Digital UPM - Archivo Digital UPMoa.upm.es/1032/1/10198501.pdf · la criptografía, en principio alejados del dominio de la Inteligencia Artificial. Después

122

10. Incrementar k. Colocar en k<-k+l. Entonces si k ^ t , hacer x^*—Zj^,

Y«-Y-2zj^Uj^, y repetir el paso 10. Pero si k>t, hacer s^-min (s,Y.Y).

11. Decrementar k. Colocar en k*-k-l. Si k > l , ir a 9. En otro caso, salir

con el resultado v^=V?, la búsqueda exhaustiva se completa, e ir a 4.

3.6. Sistemas de producción.

3.6.1.Arquitectura de los sistemas de produción.

Los sistemas de producción son uno de esos acontecimientos felices, aunque I '

en clave menor, de los que los historiadores de la ciencia hablan frecuentemente de

ellos, pues son un formalismo bien establecido en espera de una misión científica. Su ya

larga historia, comienza con Post, de quien recibieron el nombre, pero arrastraron

desde entonces tal desarrollo teórico y práctico, en especial en su orientación a las

aplicaciones en inteligencia artificial, que los sistemas actuales tienen poco en común

con la presentación de Post.

La característica más notable de estos sistemas es su concepción

arquitectónica que separa el conocimiento factual o asercional, del conocimiento

operativo o heurístico y ambos del conocimiento de control. Esta modularidad permite

que este tipo de sistema sea fácilmente modificable y transportable. Por otra parte, su

versatilidad es tal que se puede decir que son aplicables a casi cualquier tipo de

problema para los que no exista o se conozca solución algorítmica practicable.

Page 134: tESIS DOCTORAL - Archivo Digital UPM - Archivo Digital UPMoa.upm.es/1032/1/10198501.pdf · la criptografía, en principio alejados del dominio de la Inteligencia Artificial. Después

-123

BASE DE CONOCIMIENTOS

MOTOR

DE

INFERENCIAS

.Filtrado de reglas

a partir de la base

de conocimientos

.Ciclo de resolu­

ción

c c

>

BASE DE REGLAS

-REGLAS

Representación Interna de reglas de producción

del tipo Si Condiciones Entonces Acciones

-METAREGLAS

Método de selección de reglas

Restricción del espacio de búsqueda

Reglas para la adquisición de nuevas reglas

MEMORIA DE TRABAJO: BASE DE HECHOS

Datos y Hechos

Lista de subproblemas

Reglas en espera

Figura 3.5. ESQUEMA DE UN SISTEMA DE PRODUCCIÓN COMPLEJO

En suma, un sistema de producción SP, tal y como se muestra en la figura

3.5.,se define como una terna formada por una base de datos, BD, un conjunto de reglas

de producción RP, y, un intérprete de reglas o estrategia de control EC; es decir:

SP = (BD, RP, EC)

A continuación se va a estudiar por separado cada uno de estos elementos de

los sistemas de producción.

a) Base de datos. También llamada "memoria de trabajo" o "contexto",

contiene los datos y hechos establecidos y, o, los fines a alcanzar; es

Page 135: tESIS DOCTORAL - Archivo Digital UPM - Archivo Digital UPMoa.upm.es/1032/1/10198501.pdf · la criptografía, en principio alejados del dominio de la Inteligencia Artificial. Después

-124

decir, la información adecuada para una tarea particular. Esta

información puede y debe estar estructurada en una forma adecuada al

problema en curso de solución. Alguna de las partes de la base de datos,

puede ser permanente, mientras que otras pueden pertenercer sólo a la

solución del problema entre manos y, en consecuencia, presentar un

carácter temporal.

En su faceta de memoria de trabajo, es el foco de atención de las reglas

de producción, de modo que, como se verá, el lado izquierdo de cada una

de las producciones, del conjunto de reglas de producción, representa una

o varias condiciones que deben estar presentes en la base de datos antes

de que esa producción sea susceptible de ejecutarse. Por su parte, el lado

derecho de las producciones,la parte de acción de la regla, puede cambiar

el contexto de la base de datos de tal modo que otras reglas satisfarán su

parte de condición. De este modo, y esto es algo importante, la memoria

de trabajo es el único punto de contacto entre las reglas de producción.

Sin embargo, en principio esta base de datos, no tiene nada que ver con

las bases de datos tradicionales, puesto que, según los casos, puede ser

algo tan sencillo como una matriz, como sucede cuando quiere resolverse

el problema del "15-Puzzle", o algo tan complejo como sistemas de bases

de datos relaciónales o, incluso, redes semánticas, o "marcos".

b) Un conjunto de Reglas de Producción. La gran mayoría del conocimiento

sobre solución de problemas, puede agruparse en forma de pequeños

"cuantos" denominados producciones. Se entiende por producción a una

regla que consta de dos partes: una, denominada condición o situación de

reconocimiento, C^ y otra, de acción, A. De este modo, puede definirse

Page 136: tESIS DOCTORAL - Archivo Digital UPM - Archivo Digital UPMoa.upm.es/1032/1/10198501.pdf · la criptografía, en principio alejados del dominio de la Inteligencia Artificial. Después

125

una producción como un par "condición-acción", en el cual el lado

izquierdo del par es una lista de cosas a verificar, y el lado derecho otra

lista de cosas a hacer, representándose por el esquema

Si Condición 1,..., Condición n

Entonces Acción 1,..., Acción m

La característica más importante que deben presentar estas reglas es la

independencia de unas respecto a otras. Es decir, una regla de producción,

no puede referenciar directamente a otra, sólo pueden comunicarse a

través de la memoria de trabajo. De este modo, el conjunto de reglas,

está constituido por un conjunto "desordenado" de forma "granular" de

conocimientos y, o, heurísticas independientes entre sí. En consecuencia,

la modificación de este conjunto de reglas que constituye el conocimiento

operatorio del sistema, se hace suprimiendo, o añadiendo reglas, o

modificando las reglas del conjunto. Por lo tanto, los efectos colaterales

son mínimos, con lo que el "mantenimiento" del sistema es bastante fácil.

Cuando estas reglas contienen el conocimiento privado de un experto, el

sistema de producción recibe el nombre de "sistema experto" o "basado en

el conocimiento".

c) "Estrategia de Control" o "motor de inferencias", o "máquina deductiva" o

"intérprete de reglas", que por todos estos nombres se le conoce, deriva

nuevos hechos a partir de la base de conocimientos usando

encadenamiento hacia adelante y hacia atrás. Esto es lo que aquí se va a

considerar más en profundidad.

Page 137: tESIS DOCTORAL - Archivo Digital UPM - Archivo Digital UPMoa.upm.es/1032/1/10198501.pdf · la criptografía, en principio alejados del dominio de la Inteligencia Artificial. Después

126

FASE 1. DECISIÓN

RESTRICCIÓN R 1 C R

BH 1 C BH

FILTRADO Rl/BH 1->R2 C Rl

RESOLUCIÓN DE CONFLICTOS R3 C R2

1 FASE 2. ACCIÓN

EJECUCIÓN DE LAS ACCIONES DE LAS REGLAS DE R3

BH, Y. EVENTUALMENTE, BR PUEDEN SER MODIFICADOS

SON POSIBLES OTROS EFECTOS

L , J

FIGURA 3.6. FASES DE FUNCIONAMIENTO DE UN MOTOR DE INFERENCIAS

Esta parte del sistema de producción, sirve para activar las reglas y

encadenarlas en el curso de un ciclo de funcionamiento. En consecuencia, el motor de

inferencias, debe cumplir, tres requisitos básicos para considerarlo adecuado. En primer

lugar, tiene que causar movimiento; es decir, hacer transitar el sistema de un estado a

otro hacia la meta. De modo que un sistema que no cumpla con este requisito, jamás

conducirá a una solución. En segundo lugar, debe ser sistemático en la aplicación de las

reglas disponibles. La carencia de sistemática puede llevar a aplicar una secuencia

particular de reglas inútilmente varias veces antes de que finalmente se llegue a

encontrar una solución. Por último, debe ser eficiente en el sentido de encontrar una

solución, aunque no sea la óptima, empleando el mínimo número de recursos

computacionales. Para esto es necesario eliminar o, cuando menos, constreñir la

explosión combinatoria que casi siempre aparece en los problemas que se tratan de

resolver usando sistemas de producción. Para conseguir una adecuada eficiencia a veces

es necesario comprometer los dos requerimientos anteriores, introduciendo la idea de

heurística. Este ciclo funcionará según se ve en la figura 3.6., en dos fases.

Page 138: tESIS DOCTORAL - Archivo Digital UPM - Archivo Digital UPMoa.upm.es/1032/1/10198501.pdf · la criptografía, en principio alejados del dominio de la Inteligencia Artificial. Después

127

FASE 1. Selección de la regla a disparar. Esta es la fase más importante, puesto que

trata de determinar y elegir la regla candidata a ejecutarse entre un

conjunto de reglas posibles, a veces importante en número. Se desarrolla en

las etapas siguientes:

a) Restricción: Se lleva a cabo sobre el conjunto de hechos y, o, reglas, con

el fin de que la etapa de equiparación sea más rápida. Consiste

básicamente en explotar, siempre que sea posible, los acontecimientos

generales y las circunstancias especiales sobre la forma de particionar,

en distintas clases o familias los hechos y, o, las reglas.

-r' Esta etapa a veces es estática y se efectúa "a priori". Por ejemplo, en

una consulta médica, es posible separar las reglas concernientes al

examen y diagnóstico de las de tratamiento. Otras veces las

restricciones se hacen dinámicamente con la ayuda de las metarreglas.

Por ejemplo, el sistema MYCIN, un sistema experto para el tratamiento

de enfermedades bacterianas usa metarreglas como las siguientes:

Si

1) existen reglas que mencionan pseudomonas en una premisa, y

2) existen reglas que mencionan las klebsielas en una premisa

Entonces

es verosímil ('4) que sea mejor usar las primeras antes que las

segundas.

En suma, en esta etapa se determina a partir del conjunto de hechos

inicial BH y del conjunto de reglas de partida BR, que subconjuntos BHl

Page 139: tESIS DOCTORAL - Archivo Digital UPM - Archivo Digital UPMoa.upm.es/1032/1/10198501.pdf · la criptografía, en principio alejados del dominio de la Inteligencia Artificial. Después

-128-

y Rl, de ambos merecen ser comparados en el instante actual; es decir,

pasar a obtener:

BHl C BH y Rl C BR

b) Equiparación, filtrado o cotejo, que por estos tres nombres se le conoce.

En esta etapa, los conocimientos o más exactamente, el espacio de

conocimientos considerado, se examina con el fin de seleccionar el

conjunto de reglas candidatas a dispararse; es decir, aquellas cuya

expresión es compatible con la base de hechos, por intermedio de los

mecanismos de equiparación. En otras palabras, el motor de inferencias

examina cada una de las reglas de Rl, respecto ál conjunto de hechos

BHl. Entonces, se obtiene un subconjunto R2 que contiene las reglas que

se juzgan compatibles con BHl. Este subconjunto R2, recibe el nombre

de "conjunto conflicto". Es decir, esta etapa se encarga de obtener:

R2 C Rl / B H l .

Esta etapa es muy importante puesto que todos los sistemas de

producción, reposan sobre la idea de una selección de reglas dirigida por

su "contenido", o sea, si una regla menciona algo, y si ese algo es

interesante en ese instante, la regla se selecciona. Además, esta etapa es

la que, con mucho, consume más recursos computacionales.

Este mecanismo posee .un gran número de variantes. El caso más

sencillo se produce cuando tanto las reglas como los hechos contienen

sólo constantes, entonces éstas deben coincidir. En este supuesto, el

motor de inferencias se dice que es de orden 0. Sin embargo, surgen

casos más complejos cuando se permite el uso de variables. Para tratar

Page 140: tESIS DOCTORAL - Archivo Digital UPM - Archivo Digital UPMoa.upm.es/1032/1/10198501.pdf · la criptografía, en principio alejados del dominio de la Inteligencia Artificial. Después

- 1 2 9 -

muchos de estos casos, es necesario utilizar mecanismos de equiparación

potentes tales como el proceso de "unificación". Con el uso de variables,

los motores de inferencia pasan a ser de orden 1 y superiores, de acuerdo

con el tipo de representación y mecanismos lógicos que utilicen.

Por último, hay que señalar que la equiparación puede hacerse tanto

sobre la parte conclusión como sobre la parte acción de las reglas, dando

origen a los dos encadenamientos o modos de razonamiento: "hacia

adelante y hacia atrás", aquí sólo se tendrá en cuenta el primer modo.

c) Resolución de conflictos: En esta etapa se determinan el conjunto de

reglas que deben dispararse; es decir, ser e fec t iv^en te ejecutadas. En

suma, se trata de elegir las mejores de las reglas que conforman el

conjunto conflicto. Cuando existe un solo procesador, sólo se podrá elegir

una regla.

R3 C R2

Esta etapa, según los sistemas, utiliza distintas estrategias. Algunos,

se contentan con elegir la primitiva encontrada. Desgraciadamente, eso

conduce a definir un orden sobre la base de reglas lo que no siempre es

deseable. Otros, aplican exhaustivamente este conjunto de reglas sin

elegir. Es la forma de actuar del sistema MYCIN, pues en medicina es,

en efecto, muy importante considerar todas las alternativas posibles,

para evitar errores de diagnóstico.

Generalmente, está previsto un mecanismo particular para

seleccionar las reglas candidatas. Esto puede hacer intervenir un orden

sobre la parte de acción de las reglas, o bien una prioridad sobre los

Page 141: tESIS DOCTORAL - Archivo Digital UPM - Archivo Digital UPMoa.upm.es/1032/1/10198501.pdf · la criptografía, en principio alejados del dominio de la Inteligencia Artificial. Después

-130-

hechos, disparándose la regla que se equipara con el hecho que se juzga

más importante o más reciente, o bien a partir de un criterio general, tal

como elección de la última regla utilizada, orden a "priori" sobre el

conjunto de reglas de la base, etc.

También es posible decidir la regla candidata a partir de meta-reglas

que definen prioridades dinámicas sobre el conjunto de reglas. Este tipo

de selección es, sin duda, el que se considera más rico, pues permite

explicitar el control de las reglas. En otros términos, el mecanismo de

inferencia está descrito con ayuda de reglas. Además, al ser las meta-

reglas, a su vez reglas, pueden ser manipuladas directamente por el

motor de inferencias, sin necesidad de emplear rrfecanismos anexos. Es

por lo que a pesar del crecido tiempo de cálculo que necesita se trata del

modo de selección que ofrece más interés y posee el más halagüeño

porvenir ante si.

FASE 2. Activación, acción, ejecución o deducción, que por todos estos nombres se

conoce. En esta fase, el motor de inferencia controla, si R3 no es vacio, la

ejecución de cada una de las reglas. En consecuencia, consiste en aplicar

efectivamente la, o las reglas elegidas sobre la base de hechos; es decir,

activar la parte acción de todas las reglas retenidas para su ejecución.

Generalmente, esta parte se limita a introducir nuevos hechos en la base de

hechos y a suprimir y, o, modificar otros. A veces también se permite el

disparar procedimientos diseñados de forma convencional, tales como

cálculos matemáticos, entradasrsalidas, etc.

Page 142: tESIS DOCTORAL - Archivo Digital UPM - Archivo Digital UPMoa.upm.es/1032/1/10198501.pdf · la criptografía, en principio alejados del dominio de la Inteligencia Artificial. Después

-131 -

3.6.2. Ejemplo de funcionamiento de un motor de inferencias.

El ejemplo abstracto pero sencillo que se da a continuación, ilustra el

encadenamiento de varios ciclos necesarios para la resolución de un problema, que

puede enunciarse como sigue: Considérese la base de reglas presentadas por la figura

3.7.(a). En la cual, por ejemplo, la regla 1 podría significar lo siguiente: "Para

establecer la hipótesis P hay que dar el resultado de un análisis, observación o medida

indicado por B y establecer la veracidad de las hipótesis D' y E' ".

Por su parte, la base de hechos se supone que inicialmente comporta los

cuatro hechos simbólicos indicados en la figura 3.7(b): H', B, C, a. Como puede verse,

un hecho con apostrofe, verbigracia H', representa una hipótesÜ'cuya veracidad debe

establecerse; por ejemplo: "El enfermo padece tal enfermedad". En tanto que un hecho

sin él, verbigracia B ó a, se considera como establecido o comprobado, por ejemplo,

"se ha observado tal síntoma".

R: BASE DE REGLAS BH: BASE DE HECHOS

REGLA 1 P' REGLA 2 A', B - REGLA 3 A' REGLA 4 D', L -* REGLA 5 E' REGLA 6 H'

B, D', E' D', G' C, P-c, p H, D' L, A'

H' B

4 HECHOS DE LOS CUALES, HAY QUE ESTABLECER 1: H

(a) (b)

FIGURA 3.7. EJEMPLO DE BASE DE CONOCIMIENTOS ELEMENTAL

La forma del funcionamiento dado por la figura 3.8., puede describirse del

modo simiente:

Page 143: tESIS DOCTORAL - Archivo Digital UPM - Archivo Digital UPMoa.upm.es/1032/1/10198501.pdf · la criptografía, en principio alejados del dominio de la Inteligencia Artificial. Después

132-

'

BASE DE HECHOS INICIAL

R2

D'G' LBC a

R4

p G' LBC a

CALLEJÓN SIN SALIDA PUES NO HAY REGLAS APLICABLES. HAY QUE RETROCEDER

H'BCn

R6

LA' BC a

H SE VERIFICA FIN

R3

P'LBC a

Rl

D'E* LBC a

R4

P E' LBC a

• R5

P HD'LBC a

R4

P HLBC a

FIGURA 3.8. FORMA DE FUNCIONAMIENTO DEL MOTOR DE INFERENCIA

3.6.2.1. Ciclo elemental de trabajo.

FASE DE DECISIÓN O RECONOCIMIENTO.

a) Etapa de restricción. Aquí se conviene en que no se hace ninguna

restricción sobre la base de reglas; es decir, Rl = R. Por el contrario, la

base de hechos se reduce a los hechos de BH que no están simbolizados

por letras griegas. Lo que podría significar que en el estado actual de la

actividad del sistema de reglas, los síntomas correspondientes se suponen

"a priori" sin interés. Aquí, pues, en el primer ciclo, se tiene que:

BHl = ÍH', B, C}

Page 144: tESIS DOCTORAL - Archivo Digital UPM - Archivo Digital UPMoa.upm.es/1032/1/10198501.pdf · la criptografía, en principio alejados del dominio de la Inteligencia Artificial. Después

133

b) Etapa de equiparación. Se supone aquí que es la parte izquierda de cada

una de las reglas de Rl, la que se compara con BHl. Para que pueda

contemplarse el disparo de una regla, es necesario que cada una de las

expresiones componiendo su parte izquierda; por ejemplo, para la regla 2,

son dos expresiones la A' y la B, sean compatibles con los hechos en BHl.

De este modo, en el desarrollo del primer ciclo, únicamente se retiene la

regla 6 que constituye el conjunto R2.

c) Etapa de resolución de conflictos. En el marco de este ejemplo, no se

disparará más que la primera regla catalogada en R2, suponiéndose que

las reglas se someten a equiparación en orden creciente; es decir, de 1 a

6. De este modo, la equiparación se detendrá en el momento en el cual

una regla de Rl se reconozca compatible con BHl. Esta estrategia es con

frecuencia utilizada en los sistemas reales, sin embargo, no es

razonablemente aceptable más que si el motor de inferencia es capaz de

retroceder sobre sus pasos ("backtracking"); es decir, si la elección

sistemática de la primera regla compatible conduce a una situación en la

cual no es aplicable ninguna regla, la elección anterior más reciente, se

pone en tela de juicio, para salir del callejón sin salida.

FASE DE ACCIÓN.

En este ejemplo, se limitará a introducir en la base de hechos, los símbolos

que figuran en la parte derecha de la regla ejecutada, en tanto que ciertos hechos de la

base se eliminarán de ella: los hechos a establecer que también están presentes en la

parte izquierda de la regla disparada. Aquí después de la aplicación de la regla 6, H' se

elimina,- en tanto que L y A' se introducen. Entonces la base de datos se convierte en:

Page 145: tESIS DOCTORAL - Archivo Digital UPM - Archivo Digital UPMoa.upm.es/1032/1/10198501.pdf · la criptografía, en principio alejados del dominio de la Inteligencia Artificial. Después

- 1 3 4 -

BH = {L, A', B, C, a}.

Todo ello en el bien entendido de que si un hecho establecido tal como S

figura en la base de hechos, es conveniente no introducir S'. Por el contrario, si S' está

en la base de hechos y si S está presente en la parte derecha de una regla, S debe

sustituir a S' en BH.

3.6.2.2. Encadenamiento de ciclos en vistas a verificar las hipótesis iniciales.

En el ejemplo sólo existe una hipótesis inicial: H'. Después de la aplicación

de la única regla plausible: la 6, el motor de inferencias va a ejecutar otros ciclos que

transforman la base de datos hasta que no contenga más que hec!|os establecidos.

En el curso del segundo ciclo de trabajo, a partir de la base de datos

obtenida:

BH = {L, A', B, C, a}.

Las reglas 2 y 3 podrían retenerse por la equiparación. La resolución de

conflictos elegida conduce a no retener más que la regla 2. Entonces, al final del

segundo ciclo, la base de datos se convierte en:

BH = {D', G', L, B, C, a}.

Puesto que se elimina A' y se introducen D' y G'.

El tercer ciclo de trabajo dispara la regla 4, a consecuencia de lo cual, la

base deshechos se convierte en:

Page 146: tESIS DOCTORAL - Archivo Digital UPM - Archivo Digital UPMoa.upm.es/1032/1/10198501.pdf · la criptografía, en principio alejados del dominio de la Inteligencia Artificial. Después

- 1 3 5 -

BH = {p, G', L, B, C, a}.

En donde C no se introduce puesto que C, hecho establecido, está presente.

Este cuarto ciclo de trabajo, conduce a la conclusión de que ninguna regla es

ahora aplicable. En consecuencia, el encadenamiento de las reglas 6, 2, 4 ha conducido

a un callejón sin salida. El motor de inferencias pondrá en tela de juicio este

encadenamiento, y realizará una vuelta atrás ("Backtracking").

En el inicio del segundo ciclo, la regla 3, aunque satisfacía el filtrado, no se

había retenido para R2, sin embargo, ahora en el quinto ciclo se considera y dispara, a

partir de la base de datos resultante del primer ciclo: ,M''

BH = {L, A', B, C, a).

Produciendo la base de datos:

BH = {P', L, B, C, a}.

El sexto ciclo, dispara la regla 1, produciendo:

BH = {D', E', L, B, C, a}.

El séptimo dispara la regla 4, produciendo:

BH = {p, E', L, B, C, a}.

El octavo dispara la regla 5, produciendo:

Page 147: tESIS DOCTORAL - Archivo Digital UPM - Archivo Digital UPMoa.upm.es/1032/1/10198501.pdf · la criptografía, en principio alejados del dominio de la Inteligencia Artificial. Después

136

BH = {i3, H, D', L, B, C, a}.

El noveno ciclo dispara la regla 4 de nuevo, produciendo:

BH = {p, H, L, B, C, a}.

Entonces, el motor de inferencias, comprueba que no hay ya más hechos a

establecer y se detiene.

En consecuencia, la aplicación de las reglas: 6, 3, 1, 4, 5 y 4, han permitido

justificar la hipótesis inicial H' teniendo en cuenta los hechos ya-fstablecidos B y C. En

el curso del proceso, se han establecido los hechos: p , H, L.

3.6.3. Propagación de conocimientos.

Si es relativamente fácil escribir un motor de inferencias, resulta mucho

más complicado realizar un sistema de altas prestaciones. El método de emplear la

técnica de equiparación; es decir, de la puesta en correspondencia de las partes de

condición de las reglas con el conjunto de hechos de la base, es poco eficiente cuando

el número de reglas y de hechos es de consideración, debido a la explosión

combinatoria que se produce y que es muy costosa en tiempo. De hecho, el 90% del

tiempo de un ciclo de resolución se consume en esta etapa.

Para superar estas limitaciones, se han elaborado técnicas que reposan sobre

una representación interna particular y la propagación de conocimientos. En primer

lugar, es posible compilar la base de conocimientos indexando las reglas por su parte

de condición. Esta manera de catalogar las reglas es menos natural, pero más

eficiente. A continuación, es posible encontrar medios de discriminar estas condiciones

Page 148: tESIS DOCTORAL - Archivo Digital UPM - Archivo Digital UPMoa.upm.es/1032/1/10198501.pdf · la criptografía, en principio alejados del dominio de la Inteligencia Artificial. Después

-137-

para que su equiparación sobre la base de hechos se haga más rápido. La elección de la

representación interna de los conocimientos así compilados, lo mismo que los criterios

de discriminación de las condiciones, difieren de un sistema a otro.

La propagación de conocimientos, implica un algoritmo diferente de la fase

de selección de reglas; tal y como se muestra en la figura 3.9., el algoritmo general de

propagación de conocimientos en un sistema de reglas de producción. En cada ciclo de

resolución, la lista de reglas candidatas es actualizada en función del conjunto de

hechos añadidos y suprimidos. En el curso del primer ciclo de resolución, se selecciona

un conjunto de reglas candidatas. Algunas entre ellas, se activan, modificando la base

de hechos. Basta a continuación considerar cuáles son las reglas que están afectadas

por estos cambios; es decir, cuyas partes de condición están en correspondencia, más o

menos estrecha, con los hechos añadidos o suprimidos, y actualizar el conjunto de

reglas candidatas. Ciertamente, hay propagación de conocimientos de los hechos hacia

las reglas, puesto que toda modificación de la base de hechos entraña una

reorganización de la base de reglas candidatas.

COLOCAR EL CONJUNTO DE REGLAS CANDIDATAS EN RC

k K r

ELECCIÓN DE UNA REGLA A DISPARAR

• ^ r

DISPARO DE LA REGLA Y ACTUALIZACIÓN DE LA BASE DE HECHOS

4-RCS=REGLAS DE RC QUE YA NO SON CANDIDATAS

RCA=REGLAS '" QUE SON" CANDIDATAS DE NUEVO

RC=RC-RCS+RCA

\

FIGURA 3.9. ALGORITMO DE PROPAGACIÓN DE CONOCIMIENTOS

Page 149: tESIS DOCTORAL - Archivo Digital UPM - Archivo Digital UPMoa.upm.es/1032/1/10198501.pdf · la criptografía, en principio alejados del dominio de la Inteligencia Artificial. Después

- 1 3 8 -

3.7 El sistema propuesto.

Teniendo en cuenta, como condiciones necesarias, las razones anteriores,

se diseñó e implemento un sistema basado en el conocimiento instrumentando éste en

forma de reglas de produción. Este sistema cumple todos los criterios exigidos a los

criptogramas, pero sobre todo, es óptimo en lo que concierne a los criterios primero y

último. En efecto, como ya se acordó, anteriormente, una transformación lineal

aplicada a una variable aleatoria conserva el carácter aleatorio y el tipo de

distribución de la nueva variable transformada, ya que esta transformación implica

sólo un cambio de origen y de escala de medida sobre la variable inicialmente

considerada. Este conocimiento ha de incorporarse a las reglas del sistema que se

diseñe. En consecuencia, el sistema establece para cada símbolo £n la base de datos el

siguiente proceso:

1. Obtener, de acuerdo con las funciones VAL y RANGO en LISP o lAL en

FORTRAN del punto 3.5.4., una serie de números aleatorios de tamaño

igual al conjunto de símbolos existente en la base de hechos: NA(I)

2. Dar a cada símbolo un valor numérico en un código de computador:

Fieldata, ASCII, EBCDIC, etc. Por ejemplo, en Fieldata, sería: (A=06,

B=07,...,O=48, 1=49,...,a=00,...,0=62). Este valor se representa por

NC(I).

3. Hacer la transformación de variable aleatoria usando el conocimiento

estadístico. Para lo cual, se multiplica el número aleatorio que ocupa

la posición correspondiente a la del símbolo a criptografiar en el

mensaje por el valor de esa posición y se le suma el valor del carácter

obtenido en 2; es decir, se hace: NV(I) = NA(I) * I + NC(I)

Page 150: tESIS DOCTORAL - Archivo Digital UPM - Archivo Digital UPMoa.upm.es/1032/1/10198501.pdf · la criptografía, en principio alejados del dominio de la Inteligencia Artificial. Después

- 1 3 9 -

4. Obtener la congruencia módulo número de símbolos en el código (por

ejemplo en el caso de Fieldata 63), de NV(I); es decir, hacer:

NCS(I) = MOD (NV(I),N)

siendo N el número de símbolos del código.

5. Hacer la correspondencia de NCS(I) por el símbolo correspondiente.

La serie de números aleatorios NA, generados en el punto 1 del proceso

considerado, asignaría a cada posición I del texto, un número aleatorio procedente de

una distribución uniforme de parámetros (0.1). Podemos considfrar dicha serie como

una realización de un proceso aleatorio finito, de dimensión igual a la longitud del

texto, en donde para cada I fijado, las funciones de distribución de primer orden serían

idénticas y uniformes (0.1). Al aplicar en el punto I del texto, la transformación

indicada en el sistema

NV(I) = NA(I) * I + NC(I)

produce valores correspondientes a la realización de otro proceso estocástico de la

misma longitud que el inicial y en el que las distribuciones de primer orden son

también uniformes aunque los valores que produzcan están ahora comprendidos entre

NC(I) y NC(I)+I. Con ello, dado el carácter de equiprobabilidad que presentarán los

valores transformados correspondientes al cifrado de cada símbolo del mensaje, se

tiene la seguridad de que los criterios primero y segundo se verifican

escrupulosamente. Como el carácter aleatorio del sistema viene establecido "a priori"

por el conocimiento estadístico englobado en la transformación dada, no es necesario,

cada vefz que se obtiene un texto cifrado, de efectuar un test de aleatoriedad tipo X2,

espectral u otro contrastado. Además, esta transformación no expande el texto en

Page 151: tESIS DOCTORAL - Archivo Digital UPM - Archivo Digital UPMoa.upm.es/1032/1/10198501.pdf · la criptografía, en principio alejados del dominio de la Inteligencia Artificial. Después

-140-

absoluto; es decir, si el número de símbolos que compone el mensaje de entrada es N,

el número de símbolos del mensaje en clave es también N. Todo ello con un coste

computacional reducido, lo que incrementa la eficiencia del sistema. Dicho sistema

puede describirse como sigue:

a. BASE DE DATOS;

{Ci, C2,-.>Ct,a,co} ; es decir, el texto a cifrar o descifrar y los

caracteres inicial y final.

b. BASE DE REGLAS:

' i '

Rl. Si a (carácter inicial). Entonces generar cadena aleatoria ei,...,en

y hacer p= 1. Siendo n < t y p un contador de posición.

R2. Si 3 cp en entrada y posición <n. Entonces hacer Sp = mod

(ep*p+cp,N) y hacer p = p+1. Donde N es el número de símbolos del

código y Sp el carácter de salida.

R3. Si 3 Cp y p = n+1. Entonces hacer eo=en> hacer p = 1 y generar

61,...,en.

R4. Si 3 Cp y posición < n, Entonces hacer sp=mod (cp+N-mod (ep

*p,N)N). Y hacer p = p+1.

R5. Si co (carácter final). Entonces TERMINAR.

Page 152: tESIS DOCTORAL - Archivo Digital UPM - Archivo Digital UPMoa.upm.es/1032/1/10198501.pdf · la criptografía, en principio alejados del dominio de la Inteligencia Artificial. Después

- 141 -

c) ESTRATEGIA DE CONTROL:

En función de la operación: cifrado o descifrado, se restringe la base de

reglas. En el cifrado se elimina la R4 y, en el descifrado la R2. Una vez hecho esto se

usa la primera regla aplicable, que cambia el símbolo de la parte de condicción por el

resultado proporcionado por la parte de acción.

La traducción de estas reglas en un lenguaje de programación, en este caso

LISP, dio lugar a dos funciones respectivamente de OPERACIÓN y OPERAR que se

explicitan a continuación:

(OPERACIÓN [LAMBDA (TIPO F-EMT F-SAL ALEA 0?.CE:J)

(* Función donde se realiza la codifícacicn a decodificacion de un carácter)

(SETQ L E Í D O (CAR (READ F-ENT))) (CONO

((EQUAL LEÍDO 13) (PRINl (LIST LEÍDO)

F-SAL)) (T (COND

((EQUAL TIPO (QUOTE DEC)) (PRINl (LIST (IREMAINDER (IPLUS LEÍDO (IDIFFERENCE N (IREMAINDER (ITIMES ALEA ORDEN)

N))) N))

F-SAL)) ((EQUAL TIPO (QUOTE COO))

(PRINl (LIST (IREMAINDER (IPLUS LEÍDO (ITIMES ALEA ORDEN)) H ) )

F-SAL])

(OPERAR [LAMBDA

(whi le do

(TIPO F-ENT F-SAL)

(READP F-ENT) (SETQ POS 1) (SETQ ULTIMO (VAL CLV)]

(while (OR (EQUAL POS TOPE) (READP F-ENT))

do (OPERACIÓN TIPO F-ENT F-SAL (RANGO 10000) POS)

(SETQ POS (ADDl POS])

C En esta función se genera todo lo necesario para decodificar o codificar un carácter)

(' POS = posición del carácter en el fichero) (* ULTIMO = ultimo numero aleatorio generado.) (•* La semilla se consigue al operar sobre los códigos) (' numéricos de la clave)

(* RANGO nos generara un numero aleatorio entre O j 9999)

Page 153: tESIS DOCTORAL - Archivo Digital UPM - Archivo Digital UPMoa.upm.es/1032/1/10198501.pdf · la criptografía, en principio alejados del dominio de la Inteligencia Artificial. Después

-142-

Cuya expresión en FORTRAN viene dada por las siguientes rutinas de

cifrado y descifrado.

RUTINA CIFRADO

1 2 3 4 5 6 7 8 9

10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36

100

200

3 400

2

1 20 300

4 5

800 500

DIMENSIÓN C (500), NC (80), NA (80), NV (80) READ (7,100) C(1) FORMAT(FIO.O) WRITE (6,200) C(1) FORMAT (1H1/' CÓDIGO CIFRADO CON LA CLAVE GENERADA A PARTIR DEL NUM

1ER0 ", F10.0///) READ(7,400) NC FORMAT (80R1) IF (NC(1)*NC(2)*NC(3).EQ.1) STOP CALLALEA(C,500) NA(1) = C(1)*200 12 = 2 DO 1 1 = 2,500 NA (12) = C (1) * 200 'H'" K2 = 12-1 DO 2 J = 1,K2 IF(NA(12).EQ.NA(J) GO TO 1 CONTINUÉ 12 = 12+1 IF (I2.EQ.81) GO TO 4 CONTINUÉ WRITE (6,300) FORMAT ('ERROR') STOP DO 5 1=1,80 NV(I) = MOD (NA (0*1 + NC (l),63) LX = LX + 1 WRITE (6,500) LX,NC,LX,NV WRITE (8,800) NV FORMAT (80R1) FORMAT (1X,'T',J2,10X,80R1/1X,'C,J2,10X,80R1/) 11 = 11 + 1 IJ = MOD (11,80) + ! C(1) = NA(U) GO TO 3 END

Page 154: tESIS DOCTORAL - Archivo Digital UPM - Archivo Digital UPMoa.upm.es/1032/1/10198501.pdf · la criptografía, en principio alejados del dominio de la Inteligencia Artificial. Después

143-

RUTINA DESCIFRADO

1 2 3 4 5 6 7 8 9

10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35

100

200

3 400

2

1 20 300

4

5

500

DIMENSIÓN C (500), NC (80), NA (80), NV (80) READ (8,100) C(1) FORMAT(FIO.O) WRITE (6,200) C(1) FORMAT (1H1/' TEXTO DESCIFRADO CON LA CLAVE GENERADA A PARTIR DEL

1NUMER0 ', F10.0///) READ(8,400) NC FORMAT (80R1) IF (NC(1)*NC(2)*NC(3).EQ.1) STOP CALLALEA(C,500) NA(1) = C(1)*200 12 = 2 DO 1 1 = 2,500 NA (12) = C( l )*200 K2 = 12-1 DO 2 J = 1,K2 IF(NA(I2).EQ.NA(J) GO TO 1 CONTINUÉ 12 = 12 + 1 IF (I2.EQ.81) GO TO 4 ' | ' ' CONTINUÉ WRITE (6,300) FORMAT ('ERROR') STOP DO 5 1=1,80 I1=M0D(I*NA(I),63) NV(I) = MOD(NC(l) +63-11,63) LX = LX + 1 WRITE (6,500) LX,NC,LX,NV FORMAT (1X,'C',J2,10X,80R1/1X,'T',J2,10X,80R1/) 11 = 11 + 1 IJ = MOD (11,80)+1 C(1) = NA(IJ) GO TO 3 END

Page 155: tESIS DOCTORAL - Archivo Digital UPM - Archivo Digital UPMoa.upm.es/1032/1/10198501.pdf · la criptografía, en principio alejados del dominio de la Inteligencia Artificial. Después

-144-

"Nada hay peor que no hacer nada,

porque sólo se puede hacer poco"

(LIA-FIM)

CAPITULO 4. RESULTADOS Y FUTURAS LINEAS DE INVESTIGACIÓN

4.1. Resultados y conclusiones.

Al sistema propuesto, se le sometió a distintas comprobaciones para medir

tanto el carácter aleatorio como la efectividad del mismo. Pá#a lo cual se eligieron

distintos textos tanto humanísticos como científicos, pues un sistema criptográfico no

debe ser sensible al texto claro que debe criptografiarse. En este sentido, y a título de

ejemplo, se presentan a continuación, por una parte un texto tomado de la novela más

famosa de la literatura universal: "El ingenioso hidalgo D. Quijote de la Mancha" del

inmortal manco de Lepanto D. Miguel de Cervantes Saavedra, y de otra, un texto, que

puede considerarse las antípodas del anterior, sobre álgebra matricial.

De estos y otros textos de distintas áreas tanto de las ciencias, como de las

humanidades, se vio que el sistema cumplía todos y cada uno de los requisitos exigibles

por Shannon a un sistema criptográfico computacional.

Page 156: tESIS DOCTORAL - Archivo Digital UPM - Archivo Digital UPMoa.upm.es/1032/1/10198501.pdf · la criptografía, en principio alejados del dominio de la Inteligencia Artificial. Después

-145-

EJEMPLO 1. CIFRADO DE LAS DOS PRIMERAS PAGINAS DEL QUIJOTE

CÓDIGO CIFRADO CON LA CLAVE GENERADA A PARTIR DEL NUMERO 44.

T O l EM U(J L I IGAP DE L A MAt lCHA» DE CUYO HOMBRE 110 OI I IE=!Ü ACORDARME > MO HA '•'! iCHO C n i ra-478Xll7CQ'^DF*«H2lJ(33S,-Í.L3<ENG7LBRI)H2-*9G)Z*7F2C?B*"! : / » " I H ! J - ( t t 2 R * H ( « ! = ? > ' ' ; ñ ) • ' )

T 0 2 T I E M P O QUE V l v I A I )t l H I D A L G O DE LOS DE L A I I Z A E l i A S T I L ' . E R O » ADARGA f l T l G U A r R O -

C 0 2 \ + U % A \ 2 5 2 3 D 7 O X 0 \ " R M + L = / l l / a 7 R / 8 < ! V H R C ^ S i m c r n + A E l \ - ! r 3 ( Z I RSD-GHOQST I + ' ^ J ¡ I 3 G S i 2

T 0 3 C I N F L A C O Y GALGO COR' E D O P . Uf lA O L ' A DE ALGO MAS VACA QUE C A P I l E F O r S A L O I C 0 ; i

C 0 3 " J * F R 0 . a = h > ' J P V / 0 C ! 2 Q ? : M " i - J > i + - K Z B : f l L / I - ' ^ 0 » H R 1 2 7 M I * P Z I > . T = D ."3RE2 ) K I « 3 iO ) líZ'.v . . ' .J7S

Tni+ L A S MAS I IGCHES» DUELOS Y O u e R P A I I T O S L ' )S - " A r u n O S » L ' J I T F J A S LOS V I E P H E S , A L G ^ " '

C")l^ ; , G - i Y L Z 7 0 K E + Z : G O L > 6 " l < V K 8 r ! I P . n 2 K E a P . > 9 í ^ . Í'.-;V - v o t ! K 6 / G r . - ; > » A 6 ( T PTV : M ? / r S - S ^ J ' - ' C - f t C ^ :

TOS P A L O M I M O DE A \ . D I J U P A LOS DOMIMGOS» Cni |Ci ¡ M I / \ | | L \c, x ^ E S PARTES D E S ' i H A C I E l - i n V .

C 0 5 V " U . I I ' J l l l O R = « C - G - W E = ) Q V : \ L " ? \ / A ? 2 < J O ' 5 l » 4 . 7 3 / . W 2 r - : r , U F 0 3 M J 3 * : ^ ? l - / K D C = l ? + A \ ) K 'GAVJ Í ' IK

TOÓ E L f=^FSTO D E L L A COMCL.UIA I I SACO DE V t ' L A P T E » C A L Z A S DE VELLi.U|C) PAR ALAS . F I E S T A S .

C 0 6 n R W > P ) M ) S H y H A I 5 ! W Y V I VMÍJÓACW n i l S I » ! < P \ r : 5 /Z !bu^ :0 S R A I »$EXr?DU<DP J 6 0 M ( l . ' - ' - > r M J - ^ ^P !

TOY COfI SUS ^ A M T U F L O S D' LO ^ r c - n , Y LOS O I .V" ¡ i r £MT' - 'E5EMAI IA SE HOf l ^ARA C ; : , S u C n 7 D . H = \ ' 5 4 i r r M T * M S C 7 G I (=1 iVO í : ,?FU f > H U ) " S » K ( S' » OP I ! - ? F - g H 3 X 7 vp ( 1 , l i , (->P » v " = ! r ; / ' - • - - - ; K

TO.'Í V E L L O R Í D E L'"I M A S P l ' i ' " ' . T ' " ' ! I A r t | <•,! i C A S \ i M lA ^'vi.; f)i ,E P . ^ S A H A ' O P L O C CI'.\>>r: \J - , v

COH '"')']Jtn]n,P,X,-í ' K H , L ! ; í ? . ; LA ) ^ - , - ! r - i i : i r ? f ^ n n - " T r n T ' M í J » - - ; » 6 - 1 V M P I U o i ' ; / ? L ' S i r ' i iCSAE£ i^^O- < -?3

T 0 9 l l t i A S O R R M A OUE i 10 L ' - E O A B A , i.OS ^ir-'l'Wr, y i ¡ i • . •0?. ; | ) r CAMPO Y P L A Z A » 0 1 T AST c o n " M X I ? 1 . 0 ( P l < V J I I * \ L V ' - ' ' = L E 6 . " - > - " " ' > ? U t ^ i ' , > ' ^ : r ' ! C 1 r ü v - T T 3 ) 7 I ? H = ?'-:7!«30 ( 7 1 P \ 1 : + F U = n r 6>S- .A ; ' i

T i n E M S I L U A B A E L P O C I M C O N ' O T ' i v A f i . v L A P 0 D A ! ) F P A . F R I S A R A L A EDAD DE MUESTRO HIOAl . f „o

C Í O - M P 7 U I A 0 / ! V 5 D L 7 Y » / " M • 1 2 ) = A Z / ' + ? A X f l O 3 7 0 r ' t 0 P A O i + R = O 0 Q l l - L I - S W R H * B ? » ' J R U " 6 I ? ) i I ) 6 1

T u COIL LOS C I M C U E M T A A O S i ERA DE C 0 M P | I.X l O l I ^- 'FCI A > SECO DE CARMES»'~MJi iTO DE " - -

C U J l l l V H 2 S V ' r u P I I » » ' 5 H ' ' \ f 5 " : f l S " G S - 0 : » < C ! J F ' Í 7 + & " U ! > - ' H J ' ( D S I U Q C ? D S « M - K n ? M ! ( ( w a + ^PC-)

T 1 2 S T P O f GRALl MADRUGADOR Y A ' - i IGO DE L A C A Z A . O U I E R H I D E C I P Oi ÍE T E M Í A r i cnnnf-.r-.'-

C l 2 J ) < S 0 < . f l 3 2 Y S ! Y S / M ^ V H » ^ ) r ? ) 0 2 G 4 . = L K A ( r ( - Z U N ^ - i l R n » S - ^ 0 1 2 0 . T . E ! L S U + Z'-" ^ • • U J H 1 LT • 3 ' i r ,

' 1 3 DE Q U I J A D A O O U E S A n . \ » Oi lE EM ESTO HAY ;,| r,; lU ' , D I F E i - r n C I A FU LOS AUTORES Oi ir ~ . - S ~ C l j • V / < r ^ F : P O \ T r . Y " \ ' t •••! + 6 T M ) r < r ' 7 0 ; > . " i ^ P Y O r - / . / ••?:•• nV l f " ? i i u j | i , , | ( . ! !'S<3H P K * < 6 r L + ? * ' ^ = ; ' '-'••' >

T l ' v T E CASO E S C P I h E ' l l A U M O ' E i='">P Cí)U J ' ' T i M'A"", ' ' r - OS I'-l I L E S ' F l ) ' " JA (^•| |T"l lD'^= OU " S-: C U ; : H ( q X ! H " > . 7 r i . < ; ; , C m < 3 ¡ 5 í ' f ! / C M - / w K ' «-0 = A P T H ? - - Y / i v - T K , % P " r \ M h 0 7 ¡ « K Y ñ W ! T ' C i ó r t / F : ! . - .R-*.* ' ! S M I

T i ' ; |_ AM ,HA QiiEvJAM.'-.. PEPO E S f O I M O ' I P T A P O C ' •'. M i i r ^ T R n O H E I I T O Í BASTA QUE ': • I LA í : / ; -

C l ' i Oi ' '06'-»FH7!l l-37MOftQr 2 Y - A ( 2 4 - Q l )'-iPt? ) O ] . ; H - V ü - ju r , . " , ! AF ( H < \ 3 0 F 0 " ) D » '*F0 A W 0 S H * E 6 S?»-' ( tC-:)»-•>

T i n í ' R A C I O í l P F L MO SE SAL.GA i ' I I P " U T O DE LA VE i^OAO. C l 6 HCRCWñ ( V > ' I H O ) ! - ? « I I ' K 2 ( - V P < 6 T - . í l l ! S I H < ' D / n ' ; ' M r M » n X \ A I 0 \ a . * X : X 0 Z . B B U ^ ' A J G C i n Y L K ' 7V

7 1 7 ES» i^UES» DE SAB! "P» OUE t S T E S O B R E D I C H O H I D A L G O » L O S . PATOS OUEESTABA O C I O S " . C l 7 »OHCZLP » ? * ( I f t S < + í + C I I » X 6 H L v , i | ! > f i W > D I C > W : - \ 6 ' . - / i: S H S a G V \ 0 - 8 / = R - ' ) / f t t l U Q T ' » - Q < U 2 í i L P ' T E X ' ) f í

T l H - 0 1 lE ERAM LOS MAS D E L A \ o - , SE DAHA A LE P L. IRROS DE C A B A L L E R Í A S . . . r i H TS» l \ 0 ? - r - r O - f S S X - I / r , H l Y ) ' + C r - - , T J ) ' > i H f - ^ ' G ) ' r - . ( J J " ^ ( * i - A ! X A I R ? - > W ! D P > " 5 ! A / " 0 3 9 1 G 0 2 S ' . ^ ' • •<,<•;

Page 157: tESIS DOCTORAL - Archivo Digital UPM - Archivo Digital UPMoa.upm.es/1032/1/10198501.pdf · la criptografía, en principio alejados del dominio de la Inteligencia Artificial. Después

146-

TEXTO DESCIFRADO CON LA CLAVE GENERADA A PARTIR DEL NUMERO 44.

C O I a'^7F^X[)7CQQDF*»)-^P^ln^S 5 . L . 1 < F : M ( ; 7 L n f l i H 2 - ? ! ' 3 f í ) Z * 2 P 2 C ? R * " ! : / t t " I H ! ; - ( t J 2 P * H ( * ! r ? > 0 6 ) f t ) T O l EU IJM LUGAR DE L A MAMCHA» DE CUYO IIOMRHE f lO Q U I E R O ACORDARME ,<\r) HA MUCHO

C 0 2 \+U!»!A \ 2 5 ? ' . 3 D 7 0 X n \ " R , M + L = / i i / H 7 P / f l < ! VHRCO«'+i 'CT i i + A F l \ - ¡ r 3 ( 2 «««D-GHO'v 'ST ( + 3 J t I ^ G ' i ' 2 T O ? T I E M P O Q i i r v / I V T A l i l i H I D A L G O DE LOS DE L A ' I Z F ' i A S T I L l E P O f ADApr ¡A , . l l T i r ; i i ; \ , o o -

C 0 3 " J * F R O . « = ^ H P v n c ! 2 0 S 1 V W - J > 4 - I < ? B : R L / I - H O t t « H 1 2 7 M M * P Z T > . T = n M-1PF7 ) t T«3 ! '".) " 7 •'» .1 i7S 1 0 3 C l t l F L A ' " 0 Y GALGO r n P " E D O ' - . lU lA O L L A DE ALGO MAS VACA 01 iL C A P n r p n , Q,\L " I C " i

COU 1 » G - ! Y L Z 7 n K F + 7 : G 0 | . > 6 " l < V t < ' H C ! I S 0 2 K ' E ' Í ' ' . > * ' í '> / \ / ' - i - vn r | K 6 / G l i ' / > . Añ ( T PJ^/Vi?/^ T.-'^ * j ' r : i ^ < " S : TOU L A S MAS I l O C H F S f Di i FLn< ; Y 01 l E B ^ A I ITOS L ' I ' ^ .AR.^DOS» L A N T E J A S I.OS V/ir.-;;!;: c,, /^ '^i • •

C 0 5 V " l i . i M ' ( i Q p = f c - G - ' ' / E = ) . ' ' ^ ' : \ L " 7 V A ? P < J 0 » S ( » « . 7 T / . W 2 P G ' ; F 0 3 M J \% \? I ' /^^r¡C- ^?+ iW ) v • G A ^ ^ ^ l l ' TO'S P A L O M I M O rjE A V A D I n n P A L ' l ^ n O M T ' I G n C r r ^ j ic i r n A M |_ ; \C , T P t r q P A i ^ T r s DE'^.! : M.-,r j r r i n A .

COft » ) o w > P ) M ) ' B f l y tA I !5 . " . /Yv / l " i | l í 6 A C - / l i | S I ' V ! l < P \ r «5 / 7 - i i i r ) S R A I . Í F y i i n i K O P J f t O l I (1 v - > , M 3 - S I P :

TOft E L P[-"STO DFL I A r o i i r L U i A M SAO'-i D r v L I A n T E f r A i . 7 A S D F VELLJ|P)n P A ^ A L S F T F - T A ' ^ W

C n 7 D . H = \ 5 i + T G M T * M S C 7 r , l ( = t A o ! : 3<^a + >H'1 ¡ " c , 1 / ( a n . n n i ¡ . o p - ^ H ^ ^ v y vj ( \ , í \ ' Q ' ^ ' \ "=:'~-/('•<-•'•'K-^, T 0 7 COM Si.lS PAMTI 'FLO^ ' . n r 1/1 -.Tc^-'n, y |_nc, nTAc^. r¡F r> |T " rc ;F> , i , ; ; )A c,r H O L K - A M ^ . r - • > c ' ;

COR - O T j j p - l G r i i í - í ' - kG f 1.1 2 ? , ' l A 1 H - " f : l ^ F o + i . - .M--n?v Tfl=='*: f f t - 1 VRt^ I ^ i i ' - l . " ' ?L ' j i l ' - ' i !i =;.-.'^-( e n - - ; ? 3 ~ 0 n V E L ' O " ! n i^ '..''1 '•'A'-'. t ^ T ' . " . ' ^ ^ I T A r- i c u f^,^c; | n , •, -. A r,[ ,\r PASARA n r l.r-<-, "_"•'•" ^:'T \ , y

COQ " MX l ? n ( i " ' I < ' - i i ! * \ | . " = i . rrr-, ! / i > i - - ' i ->? ' ¡P i ;>< í2 i r . 1 tí'ñY2!" E 3 ) 7 I ?H=2'^ .7 '^3G ( 7 1 " V 3 : + - • ' = " r í i > S > \ ! O :

TOO Mi|A S O R P I ' I A OME M'^ L— r"'AR L 0 = \i^-:i'\T-, v 1 111 MO70 OE CAMi ' i^ Y • ' ' L ' V A í ' . F A S I

C Í O ' - f i P 7 i i I A O A !>/=; D L 7 Y , / •"•<l•:')-^^/¡^.?^y»r.',znn^,'^r•^r•.un = '^n<Tlll-[^u-'^'•lf>H* n ? * ' * " ' " ^ l ? . ' • " • : l íSI . T i n E ' I S I L L A R A r:^ i ^ n c i M rr-.'- T ' - ' . 'Ar ' - , L ••. i - r , r i ! ) r ^ ' A . C ^ - I S A R . \ L •'• E D A " HE l ü ' E s r - ' O M T D A I . G ' I

C l ' J l f l V H 2 S V < i i P I I I » S H P \ ( = ^ " : ' | « " G S - n : ii< < C I J E « 7 + G " M ! > - > p , j » ( n S I ! i Q C ? ] S » M - K ' n ? M i ( ( . . | f t ) - i .Qcs T I ' COM LOS C I ' I C U E I I T A A \ O s i ¡"Í^ A DE r n ' i n i r-y r n t 1 u i T i A r S F r o D i ' r Ao i IFS « r i i j i i f ^ nt^ •" • -

C 1 2 J ) < f t O < . n 3 2 Y ' ; ! Y f l / M ' * ¡ \ H » ) C 2 ) 0 ' 5 . G S . = L K A I C ( - / H V « ÍS I RD» S A G I 2 Q . T . E ' L S I | * / F + » 0,1 r a 1 T ' 3 5 G

T 1 2 STPO» G P A ' l MAÜPIJGAnn== Y A ^ I G O Q F |_A C A Z ' » . O n l F t T r i p E f T " O! lE T E ' I I A Fi_ c o R f F M O v -

C 1 3 » V < r S ) F : P D \ I O v q \ u " • ; + f . T ^ • ) ' • l < ^ 7 G : > ! a 2 ? 7 J T « / • 7 ' l 2 . ^ • • ' f ^ ' * ; ( E Z ^ " J ! ' ^ ' l K l l ' > ^ < 3 R P K * < 6 C L + 7 * S 5 ' í i ' - ' - A T 1 3 DE O H I J A n A O Ol . iESAn » Oi lE r t 1 r c j i o HAY Al . i ^U ' lA D I F F P r r i c I A E' I Lf^S AUTOPE' í 01 !L P E S -

r \ i i : B ¡ g y i H " > 7 E L S R * < ' " S M ' l / r ' r - i M H ' ••C = A P T S ? - - Y / * 7 ' ' r ')if.:-^"r-\\>f,Qj 1 » K Y Q \ V ¡ T ! Q^SS/F ; i _ - / B * * " I5'-11

T i n TE CASO E ' ^ C P I R E ' I I AI.I.'lOUF P O P C ^ M J E T M P A S v r - c n s í ' - : I . . E S SE D E J A EMTEMOE= 'ü F S "

C1 ~ GK06'=»EH7Mfl7MQ6i?r 2 Y - A ( ' ' U - í r i ) W"^» ) OOT . S + v ; E J i !6í»r AF ( H < \ 3 n E 0 " ) O » « F n A ' - ' ^ ' ^ M + F A =>.?i ( I C ' U f t )

']'•'-: l.l AMAR •• O i ' E J A l i . P E ^ - ' - S T O ¡ v p - i U T A ^^^OC^ A ¡¡[tfz.jJr, r'. E ' H " I 8 A S T • O'¡E • " I " . " -

C 1 6 RCP/ :wñ ( V > » I H ' M r - 2 « ' l í l ' 2 ( - V D < < = , T - 3 " ! = ; l w < ' i / n ? H F M ' O X \ A I 0 \ 2 . * X : ' - ' 0 7 . R P ' i i ^ i " ^ ' - I P v i i ^ ! ! 7 \ /

T l 6 D A C I O i l DEL '10 s r - ,ALGA 11; I P " M T ' " . RE LA " t - ' f - ^nA" .

C 1 7 . P R C Z L P » ? + ( I » \ < + U C r i » v 6 R L ' - ' " l > S " í > D I C > w : ' \ f S ' ' i P S ' ^ ' ^ n G V \ n - f l / = R - ' ) / f i r i n o T ' S * ' : < " ? ' ^ L F O F Y q G T l 7 fc,, Dl. iFc,, r,E S A R F F , 01 lE • S T ' SOf- iPEDICHO H I D A L G O » LOS RATOS Oi lE ; S T A " A O C I O S ' i

C 1 8 T S ! l \ 0 ? - r - r o - 6 s x - I / = 8 1 Y ) 4 r E - i ' / T J ) ' X Q + 2 G ) 5 \ t 1 J 3 ( * P \ ! X A T R ? W ! D P > S ! A / " 0 3 O I G ' 2 S 0 V v \ 9 5

T 1 8 - 0 1 ¡E '^RAf l LOS MAS D E L A \ 0 - , SE DARÁ \ L E E P L I B R O S DE C A B A L L E R Í A S . . -

Page 158: tESIS DOCTORAL - Archivo Digital UPM - Archivo Digital UPMoa.upm.es/1032/1/10198501.pdf · la criptografía, en principio alejados del dominio de la Inteligencia Artificial. Después

147-

EJEMPLO 2. TOMADO DE LAS PAGINAS 63, 64 y 65 DEL LIBRO DE ALGEBRA

MATRICIAL DE MATA CORTES DE EDITORIAL DOSSAT DE 1966

CÓDIGO CIFRADO CON LA CLAVE GENERADA A PARTIR DEL NUMERO 33.

TOl DAOOS nos VFCTOPES V I Y V2 PERTFiM' CIFMT'S A E» SE DEFINE rriTREELí OS LA OPF-COl rnA59)5 \ . ' *M( )«?=0 CO 3M<>M=QH$S!CNF-W«-l/-r+j/Rl , G T ' 7 í » * ! » :l.» OPOT » I ' TfiT- 'S!!, ! »»aG

T02 RACIOrj DE SUMA VI «-V?, Ol lE CUMPLE*. C02 H * I I : M » .OtlQOXQA^a T"4 r> •^CF'5".<6H8*) «IOS<Q.1\=D -Rn\>C< ?0 o= C' MHl^MN S ( * ) i r ' ! i i SK

^rrl^ A) v i+* '? = W2+VI cn3 \<HA2Gy»- 'B?OTt" r )y-o i2«<JwiM2)0 : PCn«7nBT>2YraMK\>\i)*yF-M?-K r7=<?)),> yj)c-Mc»7

rnu P) V I + ( V 2 + ^ ' : Í ) = ( v i + v 2 ) f V 5 Cnu qOS-r I*P2V = < .'«. + ) !'Í7:^"LA-<!BI36AT073P. ("»-ilSU2t\) .?"T( )l*) :%urft »+2!7\II+OÍ*3<H';I!*0

TOS C) V+O" = V 1 Cn5 fJM<flC»GflR«J<U"-HR='*\ ' í6yxi2\>n<C?0 + ' .•fi4ir,¡(\ /»i\yo\)\ «Kiawíftnn'/» ">b\ lLGra(Hn)bG" • -

TOís n) v + ( - v ) = O" cn6 ( 2 " I 6 ( G : ¡ i i roMTxnv i • )ML,ii\<r,T .nFyc3i'ii ' 'T^».r.'n ^ / ^ i » ) " S P S S J K P K ) I R « L ' ' ' ^ " * I I ^ ' " ! ? ' ' ^ * ' ' .

Tn7 AOEMAS. OAQOS Ull VECTOR V PFRTrMECI-| ITE A f Y iltl ESCALAR C» PERTrurri'TfiTi- A C07 Jftqc:37r>/.r)K")<-W"<7I'5nP'R 0f\9+"«C.1J>7.'i\A?i>GDU F<3I5>.'P)? ":n"7H+/ZXF»-STH+c+)

Tnn K» SE DEFinr • MTRE EI.'..OS LA nP(rPACTOM Dr PROnuCTO C*Vf OUE CUMPLE: con riflL\>»K/»*f<KDE'+J(WÍC»PW3w$/G>A«=nnPF'5C6)*«)70y».Al( '->CJ"<F"KFP50»Pr "!IQ)M1"?'!IM"S

TOO 1) (Cl+C2>*V = C1*V+C?*V rOQ M !RLP5 V»!7 ) OH 1??>MAK9 ( . VI O : 5TU/nft n"<H'SF\r7 > C,P(D r?=7 ) > •CH=r>lM f-,'3i\"y I .n--> "ixnof-.v 'J

T i n 2) C*(V l+V2) = C*V1+C*V2 Cln «L \B \> A 5 \»i.i(>Fn-QPT;? ?*=<?\A^rG )FM on M f i n g v . / ns iGMSi-xsu R iCPionM(T" )E* )Fy

T u 3) C]-*(C?-*v) = ( c i * r 2 ) * v C U H.) :0XNY)F/»ER-?) ZM ) ytt5T/'GM=iL'-JYO»=>pii> t|P . ? ) w ]\G< I O (IHUOA 1X7A ^-'íf-IPGPT y)A*(AP

TI? U) ll*V = V C12 ra9 nH'X*K2M?TíGt l !7) l \ o e L l » - N \ y R l 9 ) * l IF T ?K ) =r IG'iO?» ( T-tl7Fi i»= C r 2\ -P*Y2n»"A .<fjr •

T13 SE DICE OiiE i'M SITEMA Ql" VECTORES •; = ( v i »\/2r . . . »VP) DEL rsPACIO VECTOPIAI E C13 '»íVYI-3WK'^7SRY6 :''53»RT7SY7nwG"7JP."»ttSJ ! YO *"YK>rk.r.|Gw.HQ ) ! 0''M«+PHSCR2/ZSKf Cfl ' ' X ! »

T14 S08PE K» son LIMfALMFtITF OFPi ' l i n in IT'-S f '". r ' 'M Ef-IE'ITE DEPi-uniFi ITESC'Alinn r v i c T r - i c i u D*T(E"KP(? \Tv« '4H3/rF ' í rz<Hi- ;%»*cni"T>.H\nr T y ! " F K r - A . : j r + í>aF« rF iHcnw i : ^ ! J A . C < / » Y W

T15 P ELEMENTOS L l PFPTEMECIFriTFS A K» MO j n n S MULOS TALES OIIP;: C15 4(K>ZSLM+XH *«« ( ) rUtt*)VL»0'4.S"5D.+3*7.ra»\ (MFr 0C2I I »W"W5->.GTr / tV 'JBC . ( * l i : \ = = a

T16 L l * V l + L 2 i ' V ? v . . . +LR*VR = O C16 n 8 7 M I ra SflV: . M)12JFIi-PTUZaL7nxqEWft.-»=7FR.6RTo:A\$«:02H*OfV) "K ^l<»!OPPP^?(l|( in*g=;5

T17 SF DICE (5IIE UN VECTOR V DEP'UDE LltlEALMFMTE DF Utl SISTEMA» CUAMDO : C17 RA-EMPP07S5U''> IP) (SQi+TDSI'' • ! S \ : JZ 'HL ).PE5l!KnEZlCn4K6>*»D2''5Q70WPOÜ TQ.<0. IR /D ' "$ ' l ) /S

T18 V = L1*V1+L2*V"+ ... + LP*V'" C18 t*ü 0!Sy.7IM. (SNfí !IS;sn»Q<KH*eKZIF/A(6"MLT i QCS ) Y'-«XPE ? ?»»L'? SGF( ?Pijr) «r ¡OF- "pp

Page 159: tESIS DOCTORAL - Archivo Digital UPM - Archivo Digital UPMoa.upm.es/1032/1/10198501.pdf · la criptografía, en principio alejados del dominio de la Inteligencia Artificial. Después

148

TEXTO DESCIFRADO CON LA CLAVE GENERADA A PARTIR DEL NUMERO 33.

COI r O A 5 9 ) ? \ . ' * M ( ) t t 2 = 0 CO í ^ 'OMsOUSJSCMF-W* - IZ -E+J /R 1 »( ;Tr7 í r « I » : L » Q R O T ' I ! iaT>i<s M_1 ! « Q R TO l DAnoS n o s VECTOPFí V I Y V? PERTEMFCI iMIHiS A E» «IF D .FIí-lE E'ITPF L'.OS LA rpF-

CCl?. H - * Ü : M » .0riCOXi--.A2y?T>UT> C F S " . < f t H « * ) •=»OS<03\=0 - f ; 0 \ > C < 20 r C» Hm»:M\ ? ( * ) I F ' M i 5 K TOS P A C I o n DF SUMA V l+^ ' 2» O ' i r C U M P ' L P ' :

Cn3 \ < L 1 A 2 G X I - ' 5 ? 0 I : " r )X-n I2?5Q\ - íT ' l2 )n : P C H < ' 7 t l R ? 2 Y r 8 i l K \ > M ) * X F M 2 « K ' G=<2) > . i yJ ¡FMC»7 T03 A) V1+V2 = \ / 2 í - v i

Cnt» 9 0 5 - 1 : l*fíZ'J=<l<^'. ••) > t 7 3 " L A - < r R f 7 6 A T 0 7 3 P . ( " »-U<;£t?5\ ) . ?"T ( ) I * ) I ' í i l i rH I + 2 !7 \ ' l fP i *T<j?r ¡ i ! *n rn't P) VM + (V2+V3) = (v'i+^-2)+v3

Cn'^ MM<ñCtGHP«J<U"-HR=' 9 i \ 9 r « v ^ I 2 \ > i ) < C ? 0 t ' ^ ' ' i i i n H \ / " I \ Y D i i \ «^ I r tGNKnf l 'A 9>5\1<-G'3(Hn ¡""iG" -TOís c) v+nv = V ,^;'

Cn6 ( 2 ' M 6 { G : ) l i r O M 7 X n \ ; . ) n L O \ < 0 ) . O F X C I i r P33HPR M 3 I » ) " SP'iNJK R P K ) 1 B f í i , ' 5? " *1 ) P ' / i I?Vy*6 106 D) v + ( - v ) = OV

Cn7 J 6 9 C T 3 7 E > / . 0 K " • ! < - ' • ' " < ? I S f i ^ "••; 8 P \ 9 ^ - " S C 3 J > 7 Í \ A'5>Gni n 'PJOi 5> ¡O) ? •• 1 P " 7 H + / 7 Y F , .«STn+r H 1 0 7 A D F - ' A ' ; » n-^nn<; u n VFCTOrí v/ DFP.T r t i r r i - ; i i T - A '.' Y i.m F S C A I . A P C » PE' 'T f : "F ' - IF" IT=: A

c o a r i 8 L V > I K / . t * K K n E U J ( W ! C ! P W 3 ••5/G>Aa=ni | f ;FQrf t ) * % ) 7 D X S . A n ( » - > C J " < F " K F P 5 0 » P r " ! i q ) M 1 " ? ! I I H 1 i TOB Kf SF n ' ' F imE . ' ITP' E L L " ^ ' LA ORF^ACIOI-I QF opnn i i r i O C*Vr 01 lE CUMPLE:

c o a M'^RLPS V ! ! 7 ) 01 n?2>.MAKQ ( . V 10 : ST'4/G6 n*;a=iP' \C7 I "^R" r ? = 7 ) . *CH=5 lM 6 ° ! I " Y ( . ns i v»n f t v ] I T09 1) ( c i + í - p j + v = ci-KV+r^KV

CÍO - I \ R ' ) \ A S \ . l J ( > E R - ' í F r 2 ' ' - ? * = < ? \ A 3 r G ) FM on • ' l l » 3 2 y . / 03 IGn ' iT -y '> ' * R 1 C Í ^ I ' ^ " W ( T " 1 P * ) F X T ÍO 2 ) C * ( V 1 + V 2 ) = C * V l + C f V r '

c u » . ) : i n X I I Y ) E / A F Q - ? ) 7M)y t t ' iT / - r : i i p iL '?Yn6R( )> '|P . ? ) w ] \ f ; < > n ( l H i i 0 A ] X 7 A +BR- (?GBr y ) A * ( A P T i l 3 ) C1*<C2+V) = ( C 1 ' ' C 2 ) * V

C12 Q9 " K X * i ' ? M . n 5 ' ; « ! 7 ) l \ OAi . t ) - ' i \ y R i o ) * r i r r ? K ) = r I G ' ; n ? B t T - " J 7 F n » r r r 2 \ - P * Y 2 P 3 " A . < f ; r T I 2 «*) U*v/ = ^'

C13 5KVY»-3WKE7«;PYfi i r - , 3 . f l T 7 H Y 7 0 w í ; " 7 J D H « ' ; j í Y O *"YK>ri ' . I iGWrHO ) ! 0 9 ¡ «+PH5CP2/ZSK tCS ! !X : » T13 SE DICE ONE i i t l SISTEMA ÜF VFCTOPFS «; = ( V I » V 2 f . . . »VP ) DEL ESPACIO VECTORIAL E

CIU P * T ( F " K P ( ? \ T \ S ' lM3 / rF ' ^ r7<Hw 'K )+ r . l i | " T > . n \ n r I X . ' " F K r - A . ! j r + »>f lF- r E 3 H ( 0 W n ! I A . C < / » Y w T1U s;nROE K' ^lOtl L r iFAL ' ' ' !~MTí ' n r P F M n i r r i T r - c ; n c ; iMnLrMEl lT r DFPEMDIFMTFSri iAi inn FVIST="M

C1S a (K>7SLi)+y?í •'V'íC ) T n « * I V L > n ü < í " 5 n . + 3 * 7 . R f \ (HEP 0C2L I »'"^•".VS->.fiTr / « tV 'JRr . ( * n : \ ' ' > = í t TIF) P FL^MEriTOS L I PEPT ' " ' IFC I - r iT ' -S A f » 110 T ' .O ' t ; H H L O S TALES Q' iE:

C l f t n S 7 M I 1 SHV: . | i i r ? j F l ) - P T U 7 i i L 7 n x o E W f i . ' = 7 F n . 6 8 I O : A \ S S : 0 2 H * 0 » V ) K M3S0PP • \ ? ( l i ( ( 0 * H = ? T l f t L l * V l + L 2 * V 2 + . , . , . +LP*VR = 0

C17 PA-F I IPro7SSl l ' ' i I P ) 6 Q í + T 1 5 T " i ! S \ : j 7 ' H L > r i F * K ' n F 7 i r R 4 K 6 > * » n 2 ' ' 5 0 7 ' 5 W P 0 i i T r a . < 0 . I P / D = S i l ) / S T17 . SE DICE QUE UN VECTOR V DFP'MOE L i r i E A L ^ F U T E DE UM SI^-.TFMA» CUANDO :

C í a i+" n S X . 7 I t l . ( S \ » ! • • I S ! \ U « f 7 < K H * f i l < 7 > F / A ( f t " H L T L 9 C » ) Y Y X X R F ? 2 ! » L » ? ÍRP (?RU=)-HOFf l "RP T18 V = L 1 * V 1 + L 2 * V ? + • • •• LR*VR'

Page 160: tESIS DOCTORAL - Archivo Digital UPM - Archivo Digital UPMoa.upm.es/1032/1/10198501.pdf · la criptografía, en principio alejados del dominio de la Inteligencia Artificial. Después

-149

De este modo, este sistema se ha instrumentado también en un dispositivo

"hardware", para obtener la correspondiente patente en el Registro de la Propiedad

Industrial. La descripción "grosso modo" de dicho dispositivo es la siguiente:

El esquema de un generador de números aleatorios que se ajusta a las

especificaciones dadas en 3.5.4., se muestra en la figura 4.1.. Dicho generador daría

números aleatorios enteros comprendidos entre O y k-1.

La salida del multiplicador sería:

{a.u+ —) modl ; (M=2'") M

Para calcular NA(I) habría que multiplicar dicha salida por k. Si se elige k=2' dicha

multiplicación equivale a coger los k bits más significativos de la salida del

multiplicador ya que esta es un número decimal binario.

Como se quiere calcular NA(I) mod N siendo N = 2" y puesto que k=2'* y

k^n, dicho cálculo se reduciría a coger los n bits menos significativos dentro de los k

bits más significativos de la salida del multiplicador.

A continuación se explican las funciones que realiza cada uno de los bloques

de que está compuesto el generador de números aleatorios.

Interfase tecladot

Su misión es la de leer la "semilla" Ug desde el teclado, y codificarla como u

número _,binario de m bits. Una vez que se ha reconocido el fin de la entrada del

Page 161: tESIS DOCTORAL - Archivo Digital UPM - Archivo Digital UPMoa.upm.es/1032/1/10198501.pdf · la criptografía, en principio alejados del dominio de la Inteligencia Artificial. Después

-150

valor inicial se activa una señal IQ que va a la unidad de control y que permite la

activación de las distintas señales generadas por dicha unidad.

Multiplexon

Este módulo es un multiplexor 2 a 1 que selecciona entre la "semilla" üg y

el último número aleatorio generado, es decir, la primera vez seleccionará UQ y liará

U-«-Uo y las restantes veces seleccionará la salida del multiplicador y hará

U*-{aU+ —)mod2"' M

El multiplexor está gobernado por una señal de selección SQ proveniente de

la unidad de control, dicha señal conmuta cuando la unidad de control detecta la

activación de la señal IQ generada por la interfase del teclado. Entre la detección de la

señal Ig y la conmutación de la señal Sg se deberá dejar el tiempo suficiente para que el

dato se propague a través del multiplexor y se cargue en los registros U.

Registros U:

El propósito de estos registros es almacenar el último número aleatorio U

generado con el fin de ser utilizado en el cálculo del siguiente número aleatorio. La

carga de los registros está controlada por una señal Cg generada por la unidad de

control.

Multiplicador:

^ Las entradas al multiplicador son la constante a y la salida del registro U.

La salida son los m bits más significativos del resultado de multiplicar a y U.

Page 162: tESIS DOCTORAL - Archivo Digital UPM - Archivo Digital UPMoa.upm.es/1032/1/10198501.pdf · la criptografía, en principio alejados del dominio de la Inteligencia Artificial. Después

1 5 1 -

Sumadon

La salida del sumador es el nuevo número aleatorio fraccionario. Dicha

salida actúa como entrada al multiplexor para posteriormente ser cargada en el registro

U y utilizarse para el cálculo del nuevo U.

A partir de esta salida, según se explicó al principio de este apartado, se

calcula un número aleatorio entero módulo N.

m

'TECLADO

lo 1

INTERFASE

TECLADO

m

MULTIPLEXOR

m

REGISTRO - U

>' m

i m

MULTIPLICADOR

"c"

i m y ' m

SUMADOR

; ' m

So

<—7* Co

í n FIGURA 4.1. GENERADOR DE NÚMEROS ALEATORIOS

Page 163: tESIS DOCTORAL - Archivo Digital UPM - Archivo Digital UPMoa.upm.es/1032/1/10198501.pdf · la criptografía, en principio alejados del dominio de la Inteligencia Artificial. Después

152-

El cifrado del carácter que ocupa el lugar I en un mensaje dado, se realiza

mediante la siguiente transformación:

NCS (J) = {NA{D.I + NC{D} modN

Siendo:

I la posición del carácter a cifrar dentro de mensaje.

NA(I) el número aleatorio generado en el lugar I.

NC(I) el valor correspondiente al carácter a cifrar en un determinado

código (ASCII, EBCDIC, etc.).

N el número de símbolos del código.

-r Valiéndose de las siguientes propiedades:

(A:B) modj = (A modj. B modj) modj

(A + B) modj = (A modj + B modj) modj

NCS(l) se podrá escribir de la siguiente forma:

NCS(/) = {[NA(D modN.ImodN\modN + NC(J)} modN (4.1)

Generalmente, N será una potencia de 2 (N=2") y de esta forma el cálculo de (A+B) mod

N y (A.B) mod N se simplifica considerablemente.

El cálculo de (A+B) mod N se hará mediante un sumador de n bits, siendo el

resultado la salida directa del sumador. El acarrero de mayor peso se debe de ignorar.

Para calcular (A.B) mod N se multiplican A y B y el resultado será los n bits

inferiores de este producto.

Page 164: tESIS DOCTORAL - Archivo Digital UPM - Archivo Digital UPMoa.upm.es/1032/1/10198501.pdf · la criptografía, en principio alejados del dominio de la Inteligencia Artificial. Después

-153-

La implementación se ajusta a la expresión (4.1) y se muestra en la figura

4.2., que representa el esquema general para el cifrado, cada uno de cuyos componentes

se explican a continuación:

El cálculo de I mod N se realiza mediante un sumador y un registro. La

primera vez, el registro se cargará con el valor cero, al activar la unidad de control la

señal CLEAR. La salida del registro irá a un sumador de n bits donde se incrementará

en una unidad, dando como resultado I mod N. Este resultado se cargará en el registro

mediante la activación por la unidad de control de la señal Cl. Cada vez que entre un

nuevo carácter para su cifrado se repetirá el ciclo anterior.

El multiplicador hallaría el producto de las salidas del sumador y del

generador de números aleatorios, correspondiendo los n bits inferiores del resultado a:

[NAiDmodN.ImodN] modN

A continuación, se suma el carácter a cifreu: con la salida del multiplicador.

La salida del sumador corresponderá a la expresión:

¡ÍNAÍD modN. I modN] modN + NC{D} modN

Que es la expresión que se quería obtener.

El carácter a cifrar se obtiene de un registro de desplazamiento donde

estaria almacenado o se iría cargando el mensaje. Cada vez que se necesite un nuevo

carácter para su cifrado, la unidad de control activará la señal C2, pasando el primer

carácter en el registro de desplazamiento a ser cifrado.

Page 165: tESIS DOCTORAL - Archivo Digital UPM - Archivo Digital UPMoa.upm.es/1032/1/10198501.pdf · la criptografía, en principio alejados del dominio de la Inteligencia Artificial. Después

-154-

Por último el carácter ya cifrado pasaría a una unidad transmisora desde

donde sería enviado.

Obviamente, el mecanismo de descifrado sería similar al de cifrado.

REGISTRO

GENERADOR DE

NÚMEROS ALEATORIOS

CLEAR

Cl

• I I .' "

." "

SUMADOR

n . "

MULTIPLICADOR REGISTRO DE

DESPLAZAMIENTO (MENSAJE)

SUMADOR

n

C2

TRANSMISOR

>' n

FIGURA 4.2. ESQUEMA GENERAL DE CIFRADO

Page 166: tESIS DOCTORAL - Archivo Digital UPM - Archivo Digital UPMoa.upm.es/1032/1/10198501.pdf · la criptografía, en principio alejados del dominio de la Inteligencia Artificial. Después

155

De estos resultados y del estudio teórico previo, se puede concluir:

a) Que el sistema es de llave pública.

b) No expande el texto.

c) Es inviolable si no se conoce la semilla.

d) Es más eficiente que los conocidos hasta ahora.

e) Es versátil.

f) Es transportable, lo que permite implementarlo sobre cualquier

computador, incluidos micros.

-r 4.2. FUTURAS LINEAS DE INVESTIGACIÓN

Puede afirmarse con probabilidad rayana en la certeza, que el sistema

propuesto si no es óptimo es casi óptimo, lo que lo convierte en un tema casi cerrado.

Sin embargo, como no hay bueno que no admita mejor, se va a intentar modificar el

sistema para que optimice su comportamiento en el caso de las comunicaciones.

En efecto, seria ciertamente interesante que, a efectos de transmitir la

información criptografiada, el sistema no sólo no expandiera el texto sino que, a ser

posible lo comprimiera. En este sentido, se va a continuar la investigación para añadirle

al sistema un compresor de textos que, sin eliminar las características ya reseñadas,

que actualmente lo hacen casi óptimo, reduzca el texto a enviar. Esto además de una

reducción de costes puede añadir un elemento adicional más a la inviolabilidad del

mismo, de un modo parecido a los sistemas "One time pad" ya descritos en el capitulo 2.

Page 167: tESIS DOCTORAL - Archivo Digital UPM - Archivo Digital UPMoa.upm.es/1032/1/10198501.pdf · la criptografía, en principio alejados del dominio de la Inteligencia Artificial. Después

-156

BIBLIOGRAFÍA

[1] Bennett, C.H.: "Quantum Cryptography and its Application to Probably

Secure Key Expansión, Public-Key Distribution, and Coin-Yossing". IEEE

Abstract Int. Symp. on Information Theory, pp. 91. Quebec. September 1983.

[2] Barrow, G. M.: "Physical Chemistry". Me Graw-Hill. Inc. 1973.

[3] Brillouin, L.; "La Science et la Theorie de L'Information". Masón. París

1959.

[4] Burton, CE. : "A Public Key Cryptography System". Dr. Dobb's J. Vol. 9, nS

3, pp. 16-22. USA. Mareh 1984.

[5] Desmedt, Y. et. ai: "Cryptography Protects Information Againts Several

Frauds". Proc. of the Int. Carnahan Conf. on Security Technology, pp 255-

259. Zurich. October 1983.

[6] Diffie, W. and Reliman, M.E.: "New Directions in Cryptography". IEEE

Trans. Inf. Th, Vol IT 22, nS 6, pp 644-654. November 1976.

[7] EDP ANALYZER : "Data Encryption: Is it for You?. Vol 16, n2 12. Vista

California. December 1978.

[8] Ernst, G.W. and Newell, A.: "GPS: A Case Studyin Generality and Problem

Solving". Academia Press. New York 1969.

Page 168: tESIS DOCTORAL - Archivo Digital UPM - Archivo Digital UPMoa.upm.es/1032/1/10198501.pdf · la criptografía, en principio alejados del dominio de la Inteligencia Artificial. Después

157

[9] Feistel, H.: "Cryptography and Computer Privacy". Scientific Americain,

Vol. 228, n2 5, pp. 15-23. Mayo 1973.

[10] Fisher, W.W.: Crytography for Computer Security: Making the Desicion".

Comput. & Secup. Vol 3, n9 3, pp 229-233, Netherlands. August. 1984.

[11] Forsyth, F.: "The Fourth Protocol". Hutchinson London. 1984

[12] Gamow, G.: "Biografía de la Física". Salvat - AE. 1971

[13] Gardner, M.; "Juegos matemáticos". Scientific Americain. Enero 1965.

v [14] Govaerts, R. J. M. et. al.: "Cryptography: How to Attack, What to

Protect?". Proc. of the International Conf. on Comm. ICC84, Vol 1, pp 175-

178. North-Holland, Amstemdam. May 1984.

[15] Greenberger, M.: "JACM 8", pp 383-389. 1961

[16] Guillou, L. C. and Lorig. B: "The Impaet of Cryptography in the Desing of

the New Services", Proc. ICCC 78, pag. 303-308, Kyoto 1978.

[17] Heisemberg. W.: "Determinisme et Indeterminisme" en "Science et

Synthése". Gallimard. París 1967.

[18] HuU and Dobell: "SIAM Review'i", pp 230-254. 1962. "

[19] Kac, M.: "Probabilidad", en "Mathematical Thinking in Behavioral Sciences".

W. H. Freeman and Có. S. Francisco 1968.

Page 169: tESIS DOCTORAL - Archivo Digital UPM - Archivo Digital UPMoa.upm.es/1032/1/10198501.pdf · la criptografía, en principio alejados del dominio de la Inteligencia Artificial. Después

-158

[20] Kafka, G.: "Data Encryption: Criptography Offers Effective Protection

Against Data Theft". Elektronik. Vol. 33, n2 12, pp. 159-163. Junio 1984.

[21] Knuth, D. E.: "Fundamental Algoritms, Vol. l:The Art of Computer

Programming". Addison-Wesley 1968.

[22] Knuth, D. E.: "Seminumerical Algoritms". Vol. 2: "The Art of Computer

Programming". Addison-Wesley 1981.

[23] Lehmer, D. H.: Proc 22 Symp. on Large-Scale; Digital Calculating ' i '

Machinery. Cambridge, Hardward, University Press 1951.

[24] Lennon, R. E. et. al.: "Cryptography in Data Processing". Data Procesing.

Vol 26, n9 7, pp 36-38. GB. September 1984.

[25] Lennon, R. E. et. al.: "Coupling PAC to Both AP and I D". IBM Tech.

Disclosure BulL VoL 26, n9 6, pp 2803-2805. USA. November 1983.

[26] Logpre, L.: "The Use of Public-Key Cryptography System". Dr. Dobb's J.

VoL 9, n9 3, pp 16-22. USA. March 1984.

[27] Martínez, V. y Pazos, J.: "Fundamentos de Teoría de Sistemas". Servicio de

Publicaciones de la Facultad de Informática de la UPM. Madrid. Diciembre

1984.

[28] Merkle, R.C. and Hellman, M.E.: "Hiding Information and Signatures in

Trapdoor Knapsacks". IEEE Trans. Inf. Th, Vol IT24, n2 5, pp 525-530.

September 1978.

Page 170: tESIS DOCTORAL - Archivo Digital UPM - Archivo Digital UPMoa.upm.es/1032/1/10198501.pdf · la criptografía, en principio alejados del dominio de la Inteligencia Artificial. Después

159

[29] Meyer, C.H.: "Desing Considerations for Cryptography". AFIPS. Conf. Proc.

42, pp 603-606. 1973.

[30] Meyer, C. H. et. al.: "Cryptography: A new Dimensión in Computer Data

Security". Jolin Wiley and Sons. New York. 1982.

[31] NBS : "Data Encryption Standar", FIPS Pub. 46, January 1977.

[32] Newell, A. and Simón, H.: "Humgm Problem Solving". Prentige Hall, N.J.

1972.

[33] Pazos, J. y Martínez, V.: "Sistemas Basados en el Conocimiento; Una

Aplicación de la inteligencia Artificial". Servicio de Publicaciones de la

Facultad de Informática de la UPM. Madrid. Diciembre 1984.

[34] Pazos, J. y Martinez, V.:"Fundamentos Matemáticos de la Programación",

Servicio de Publicaciones de la Facultad de Informática de la UPM. Madrid.

Diciembre 1984.

[35] Pohling, S. and Hellman, M.E.: "An Improved Algorithm for Computig

Logarithm over GF(P)". IEEE Trans. Inf. Th. Vol IT24, n9 1, pp 106-110.

January 1977.

[36] Randell, S.: "The Colossus". Pw>c. Int. Conf. on Histbry óf Computing. Los

Alamos 1976.

[37] RÍOS, S.: "Métodos estadísticos". Industrias Gráficas España. Madrid 1963.

Page 171: tESIS DOCTORAL - Archivo Digital UPM - Archivo Digital UPMoa.upm.es/1032/1/10198501.pdf · la criptografía, en principio alejados del dominio de la Inteligencia Artificial. Después

-160-

[38] Rivest, R.L. et. al.: "A Method for Obtaining Digital Signatures and Public

Key Cryptosystems". Comm. ACM, Vol. 21, n2 2, pp 120-126. February

1978.

[39] Shannon, CE. : "A Mathematical Theory of Communicatios", BSTJ Vol. 27,

pp. 479-523, 623-656, 1948.

[40] Shannon, CE. : "Communication Theory of Secrecy Systems", BSTJ Vol 28,

pp. 665-775. 1949.

[41] Sugarman, R.M.: "Freedom to Research and Publish on Cryptography

-r Remains Unresolved". The Institute News-Supp. to Spectrum. Vol 2, n2 5.

1978.

[42] Tuchman, W: Proc. National Computer Conference", AFIPS. 1978.

[43] Vandewalle, J. and Govaerts, R.: "Does Public-Key Cryptography Provide a

Practical and Secure Protection of Data Storage and Transmission? Proc. of

the Int. Carnahan Conf. on Security Technology, pp 113-119, Zurich August

1983.

[44] Widman, K.O.: "Cryptography. The Art of Secret-Keeping". Proc. Int. Zurich

Seminar on Digital Comm., pp. 151-156, Zurich. March 1984.