Redes Neuronales Arti ciales Aplicadas a la Seguridad de ...comca/pdf/cursillo_ivan_jiron.pdf · 1....

28

Transcript of Redes Neuronales Arti ciales Aplicadas a la Seguridad de ...comca/pdf/cursillo_ivan_jiron.pdf · 1....

Page 1: Redes Neuronales Arti ciales Aplicadas a la Seguridad de ...comca/pdf/cursillo_ivan_jiron.pdf · 1. Introducción El estudio de las redes neuronales arti ciales comenzó en 1943 con

XXIV COMCACongreso de Matemática Capricornio

5, 6 y 7 de Agosto de 2015, Iquique, Chile

Redes Neuronales Arti�ciales Aplicadas a la

Seguridad de la Información

Dr. Iván F. Jirón Araya*

Departamento de Matemáicas

Universidad Católica del Norte

Antofagasta, Chile

Resumen

El estudio de las redes neuronales arti�ciales comenzó en 1943 con un trabajo sobre neuro�sio-

logía y lógica matemática realizado por McCulloch y Pitts. Así, las redes neuronales arti�ciales

se han desarrollado como modelos para representar y simular la forma en que el cerebro realiza

una tarea o función.

Dado el gigantesco aumento del uso de smartphones, tablets, notebooks e Internet como medios

de comunicación y colaboración es necesario desarrollar mecanismos de seguridad para proteger

la información privada de cada usuario. Ejemplos de esto son el comercio electrónico, transac-

ciones bancarias y protección de datos. Así, en los últimos años se ha explorado el desarrollo de

la criptografía basada en redes neuronales arti�ciales.

En este curso se presentan los conceptos matemáticos fundamentales sobre las redes neuronales

arti�ciales y su aplicación en la seguridad de la información, por ejemplo, intercambio de llaves.

*Parcialmente �nanciado por la Vicerrectoría de Investigación y Desarrollo Tecnológico, U.C.N.e-mail: [email protected]

1

Page 2: Redes Neuronales Arti ciales Aplicadas a la Seguridad de ...comca/pdf/cursillo_ivan_jiron.pdf · 1. Introducción El estudio de las redes neuronales arti ciales comenzó en 1943 con

1. Introducción

El estudio de las redes neuronales arti�ciales comenzó en 1943 con un trabajo sobre neuro�siologíay lógica matemática realizado por McCulloch y Pitts. Así, las redes neuronales arti�ciales se handesarrollado como modelos para representar y simular la forma en que el cerebro realiza una tareao función.

Las redes neuronales arti�ciales consideran áreas de investigación en neurociencias, matemáticas,estadística, ciencias de la computación y física.

La capacidad de aprender y almacenar el conocimiento adquirido hace de las redes neuronalesarti�ciales tengas diversas áreas de aplicación, como en reconocimiento de patrones, sistemas desensores, procesamiento de señales, procesamiento de imagenes y criptografía, por mencionar algunas.

La �gura 1 muestra un esquema de una neurona biológica, cuyos elementos fundamentales sonel cuerpo de la celula, estructuras formadas por la dendritas (que reciben los estimulos), el axón ylos terminales sinápticos, al �nal del axón, que transmiten las señales de salida, que son impulsoseléctricos. Estos impulso se inician en el cuerpo de la celula y se transmiten a través del axón a otrasneuronas. Estas señales de salida pueden estimular o inhibir a otras neuronas.

Figura 1: Esquema de una neurona biológica [2].

Dado el gigantesco aumento del uso de smartphones, tablets, notebooks e Internet como me-dios de comunicación y colaboración es necesario desarrollar mecanismos de seguridad para protegerla información privada de cada usuario. Ejemplos de esto son el comercio electrónico, transaccio-nes bancarias y protección de datos. Así, en los últimos años se ha explorado el desarrollo de lacriptografía basada en redes neuronales arti�ciales.

Sin duda que la Internet ha revolucionado nuestro estilo de vida y la importancia de esta herra-mienta ha crecido en forma exponencial en los últimos veite años [1].

Hay mucha información circulando por Internet en correos electrónicos, Tweets, Facebook, videos,fotos, comercio electrónico CyberDay, secretos militares, secretos industriales, etc. Pero la Internetes una red pública e insegura, en la cual hay buenos y malos usuarios. Siempre hay noticias sobresitios web que han sido hackeados, clonación de tarjetas de crédito, adulteración de imágenes, etc.Esto motiva la necesidad de proteger la información con mecanismo que impidan a los usuarios noautorizados (los intrusos o hackers) acceder a ésta. Esta necesidad de protección de la informaciónes satisfecha por la Criptología, que es la ciencia de la Criptografía y el Criptoanálisis. En la Figura2 se muestra una taxanomía breve.

2

Page 3: Redes Neuronales Arti ciales Aplicadas a la Seguridad de ...comca/pdf/cursillo_ivan_jiron.pdf · 1. Introducción El estudio de las redes neuronales arti ciales comenzó en 1943 con

Figura 2: Taxonomía breve de la Criptología.

La Criptografía es el estudio de técnicas matemáticas para ocultar el signi�cado de la informaciónalmacenada en un medio o transmitida por un canal, ambos considerados inseguros, como porejemplo, un disco duro externo, una red wi� e Internet. Entonces, se habla de criptosistemas osistemas de codi�cación para ocultar y proteger la información original en un mensaje encriptado ocifrado.

Por otra parte, el Criptoanálisis es el estudio de técnicas matemáticas para extraer el signi�cadode la información oculta en un mensaje encriptado. Así, el Criptoanálisis es importante cuando sepropone un nuevo criptosistema, para probar su fortaleza a los ataques. Aquí, se habla de quebraro romper el criptosistema, con el �n de extraer la información original, y dejarla disponible para unusuario no autorizado (el intruso).

En forma intuitiva la esencia de la Criptografía consiste en crear ciertas funciones que sean fácilesde evaluar, pero cuya función inversa sea muy difícil de obtener con los medios computacionalesexistentes. A estas funciones y sus inversas se les llama un criptosistema, como se dijo en el párrafoanterior.

Por ejemplo, el número y clave de una tarjeta de crédito es información valiosa por 2 ó 3 años,porque caduca o se cierra la tarjeta. Así, si un criptosistema será efectivo si puede proteger elnúmero y clave de la tarjeta de crédito por más de 3 años. Con este ejemplo, se quiere explicar queun criptosistema es seguro si es capaz de proteger la información privada el tiempo su�ciente hastaque pierda su valor.

3

Page 4: Redes Neuronales Arti ciales Aplicadas a la Seguridad de ...comca/pdf/cursillo_ivan_jiron.pdf · 1. Introducción El estudio de las redes neuronales arti ciales comenzó en 1943 con

2. Conceptos básicos sobre Redes Neuronales Arti�ciales

Esta sección es un resumen de los aspectos básicos presentados en los cápitulos 1 al 4 del librode S. Haykin [2], mientras que las refenrencias [3] [4] están listadas como recomendación para unalectura complementaria.

Comencemos por de�nir una red neuronal arti�cial (RNA) como un procesador masivamentedistribuido y paralelo, es decir, es un computador capaz de desarrollar muchas tareas en formasimultánea. Está formada por muchas unidades individuales de procesamiento llamadas neuronas.

La �gura 3 muestra un modelo para una neurona, donde {x1, x2, · · · , xm} es el conjunto delas señales de entrada, {wk1, wk2, · · · , wkm} es el conjunto de los pesos sinápticos de la k − esimaneurona, el parámetro bk es llamado el bias de la k − esima neurona, vk es el campo local inducidoo potencial de activación, ϕ (·) es la función de activación e yk es la señal de salida de la k − esimaneurona.

Figura 3: Modelo de una neurona[2].

El campo local inducido se cálcula como

vk =

m∑j=1

xjwkj

+ bk =

m∑j=0

xjwkj (1)

donde se puede considerar una señal x0 = 1 y un peso sináptico wk0 = bk.Una RNA puede obtener el conocimiento desde la experiencia o proceso de aprendizaje, en forma

similar al cerebro, y lo alamacena en los pesos sinápticos de sus neuronas.

2.1. Funciones de Activación

La función de activación ϕ (·) limita la amplitud de la salida de una neurona a un valor �nito,que puede estar entre:

0 ≤ yk ≤ 1 ó −1 ≤ yk ≤ 1 (2)

1. Función de Heaviside: Corresponde al modelo de McCulloch-Pitts y tiene la propiedad deltodo o nada.

yk = ϕ (vk) =

1 si vk ≥ 0

0 si vk < 0(3)

4

Page 5: Redes Neuronales Arti ciales Aplicadas a la Seguridad de ...comca/pdf/cursillo_ivan_jiron.pdf · 1. Introducción El estudio de las redes neuronales arti ciales comenzó en 1943 con

Figura 4: Función de Heaviside.

2. Función lineal por torzos: Se de�ne como

y = ϕ (v) =

1 si v ≥ 12

v si − 12 < v < 1

20 si v ≤ − 1

2

(4)

Figura 5: Función lineal por trozos.

3. Función Sigmoidal: Es una función estrictamente creciente que tiene un comportamiento quebalancea lo lineal con lo no-lineal. Un ejemplo es la función Logística de�nida como

y = ϕ (v) =1

1 + e−av(5)

5

Page 6: Redes Neuronales Arti ciales Aplicadas a la Seguridad de ...comca/pdf/cursillo_ivan_jiron.pdf · 1. Introducción El estudio de las redes neuronales arti ciales comenzó en 1943 con

Figura 6: Función sigmoidal.

2.2. Representación de Redes Neuronales con Grafos Dirigidos

Los grafos de �ujo de señales (o grafos dirigidos de señales) proveen un método ordenadopara describir el �ujo de las señales en una red neuronal. Las señales circulan por una red de enlacesdirigidos que se interconectan en puntos llamados nodos.

Para estos grafos consideramos lo siguiente:

1) El j-ésimo nodo tiene asociada la señal xj .

2) Un enlace con nodo inicial en el j-ésimo nodo y nodo �nal en el k-ésimo nodo tiene una funciónde transferencia asociada, que especi�ca la manera en que la señal yk depende de la señal xjen el j-ésimo nodo. Ver las �guras 7 y 8 .

3) El �ujo de señales satisface tres reglas básicas:

Una señal se mueve en la dirección de la �echa a lo largo de un enlace considerado. La �gura7 muestra un enlace sinaptico con una relación lineal entre las señales de entrada y de salida.Mientras que la �gura 8 muestra un enlace con una relación no lineal.

Figura 7: Enlace sinaptico lineal [2].

Figura 8: Enlace sinaptico no lineal [2].

6

Page 7: Redes Neuronales Arti ciales Aplicadas a la Seguridad de ...comca/pdf/cursillo_ivan_jiron.pdf · 1. Introducción El estudio de las redes neuronales arti ciales comenzó en 1943 con

La señal de salida de un nodo es la suma algebraica de todas las señales que entran en estenodo. Esto es llamado convergencia sináptica. La �gura 9 muestra esta regla.

Figura 9: Convergencia sinaptica [2].

Una señal en un nodo es transmitida a través de todos los enlaces que salen del nodo, enforma independiente de las funciones de transferencia. Esto es llamado divergencia sináptica.La �gura 10 muestra esta regla.

Figura 10: Divergencia sinaptica [2].

Así, una neurona y una red neuronal pueden ser representadas por grafos dirigidos como muestranlas �guras 11 y 12, respectivamente.

Figura 11: Modelo de una Neurona como un grafo dirigido [2].

Figura 12: Modelo de una Red Neuronal como un grafo dirigido [2].

7

Page 8: Redes Neuronales Arti ciales Aplicadas a la Seguridad de ...comca/pdf/cursillo_ivan_jiron.pdf · 1. Introducción El estudio de las redes neuronales arti ciales comenzó en 1943 con

De�nición matemática de una RNA: Una red neuronal es un grafo dirigido formado por nodoscon interconexión sináptica y enlaces de activación, y tiene las siguientes propiedades:

a) Cada neurona es representada como un conjunto de enlaces sinápticos lineales, un bias aplicadoexternamente y un enlace de activación posiblemente no-lineal. El bias es mostrado como unenlace sináptico conectado a una entrada �ja en x0 = 1.

b) Los enlaces sinápticos de una neurona le dan peso a sus respectivas señales de entrada.

c) La suma de las señales de entrada con sus respectivos pesos de�ne el campo local inducido deuna neurona.

d) El enlace de activación actúa sobre el campo local inducido de la neurona para producir unasalida.

El estado de la neurona se puede de�nir en términos de su campo local inducido o su señal desalida.

2.3. Arquitectura de Redes Neuronales Arti�ciales

La arquitectura de una RNA es un grafo dirigido que describe la organización e interacción entrelas neuronas que forman la red.

Hay fundamentalmente tres clases diferentes de arquitectura para una RNA:

I. Redes Feedforward de Capa Simple (Single-Layer Feedforward Networks).

La red está organizada en capas, y tiene una capa de entrada de nodos fuentes (estos nodosno realizan cálculos) que transmiten sus señales a la capa de salida (nodos de cálculo) delas neuronas, pero no viceversa. Así, la red se dice que es estrictamente de tipo feedforwardo acíclica. Y de capa simple se re�ere a la capa de salida formada por los nodos de cálculo(neuronas). La �gura 13 muestra esta arquitectura.

Figura 13: Modelo de una Red Neuronal Feedforward de Capa Simple [2].

II. Redes Feedforward Multi-Capas (Multilayer Feedforward Networks).

Se distingue por tener una o más capas ocultas, cuyos nodos de cálculo son llamados neuronasocultas o unidades ocultas. La función de las neuronas ocultas es hacer los cálculos entre laentrada externa y la salida de la red en alguna forma útil. Los nodos fuentes en la capa deentrada de la red proveen los respectivos elementos del patrón de activación (vector de entrada),los cuales constituyen las señales de entrada aplicadas a las neuronas (nodos de cálculo) en lasegunda capa (la primera capa oculta). Las señales de salida de la segunda capa son usadascomo entradas para la tercera capa, y así sucesivamente para el resto de la red. Las neuronas

8

Page 9: Redes Neuronales Arti ciales Aplicadas a la Seguridad de ...comca/pdf/cursillo_ivan_jiron.pdf · 1. Introducción El estudio de las redes neuronales arti ciales comenzó en 1943 con

en cada capa de la red tienen como entradas sólo las señales de salida de la capa precedente.El conjunto de señales de salida de las neuronas en la capa de salida (última) de la red formanla respuesta total de la red al patrón de activación dado por los nodos fuentes en la capa deentrada (primera capa). La �gura 12 muestra esta arquitectura.

III. Redes Recurrentes (Recurrent Networks)

Estas redes se distinguen por tener a lo menos un loop de retroalimentación (feedback).

En la �gura 14, la red no tiene loops de auto-retroalimentación, ya que para ninguna neuronasu propia salida alimenta su entrada. Y no existe una capa oculta. Por otra parte, en la �gura15, hay neuronas ocultas y la retroalimentación se origina desde las neuronas ocultas comotambién de las neuronas en la salida.

Figura 14: Modelo de una Red Neuronal Recurrente [2].

Figura 15: Modelo de una Red Neuronal Recurrente con neuronas ocultas [2].

La estructura de recurrencia tiene un impacto profundo en la capacidad de aprendizaje de lared y en su rendimiento. Las unidades de retardo producen un comportamiento dinámico nolineal, asumiendo que la red neuronal contiene unidades no-lineales.

2.4. Representación del conocimiento

El conocimiento está constituido por la información guardada y los modelos usados por unapersona o máquina para interpretar, predecir y responder adecuadamente al mundo exterior. Así, larepresentación del conocimiento responde dos preguntas básicas:

1. ¾Qué información se hace explícita, realmente?

2. ¾Cómo es codi�cada físicamente la información para ser usada posteriormente?

9

Page 10: Redes Neuronales Arti ciales Aplicadas a la Seguridad de ...comca/pdf/cursillo_ivan_jiron.pdf · 1. Introducción El estudio de las redes neuronales arti ciales comenzó en 1943 con

En el mundo real de las aplicaciones de máquinas �inteligentes�, se diceque una buena solución depende de una buena representación del conocimiento.

Figura 16: Tarea principal de una RNA.

El conocimiento del mundo tiene dos tipos de información:

Información previa: el estado del mundo conocido, ¾qué es conocido? y ¾qué ha sido cono-cido?

Observaciones (o medidas) del mundo: son obtenidas por medio de sensores, que examinanel ambiente en el cual la red neuronal está operando.

Las observaciones pueden estar distorsionadas debido al ruido de los sensores y las imperfeccionesdel sistema.

Así, las observaciones obtenidas forman un conjunto de información, desde el cual son obtenidoslos ejemplos para entrenar a la red neuronal. Los ejemplos pueden ser:

a) Etiquetados: cada ejemplo representa una señal de entrada que está pareada con la correspon-diente respuesta deseada.

b) No etiquetados: los ejemplos consisten de realizaciones diferentes de la señal de entrada por símisma.

Los ejemplos Etiquetados o No etiquetados representan el conocimiento acerca del ambiente deinterés, que una red neuronal puede aprender a través del entrenamiento.

De�nición del conjunto de entrenamiento: El conjunto de entrenamiento está dado por

T = {(x, y) / x es una señal de entrada e y es la señal de salida asociada con x} (6)

El conjunto de entrenamiento T es usado en el proceso de diseño de una RNA y que consiste en:

10

Page 11: Redes Neuronales Arti ciales Aplicadas a la Seguridad de ...comca/pdf/cursillo_ivan_jiron.pdf · 1. Introducción El estudio de las redes neuronales arti ciales comenzó en 1943 con

Aprendizaje: seleccionamos una arquitectura para la RNA adecuada para al problema, con-siderando una capa de entrada con nodos fuentes y una capa de salida. Se entrena con unsubconjunto de datos de T .

Generalización: el performance de reconocimiento de la red entrenada es probado con datos(o ejemplos) que no se usaron durante el aprendizaje. Entonces, el performance de la redes probado comparando la respuesta entregada por la red y la respuesta verdadera, que esconocida previamente.

En la etapa de aprendizaje se deben considerar casos verdaderos y falsos, para que la RNA puedadisminuir la cantidad de respuestas confusas.

2.5. Procesos de Aprendizaje

Una RNA tiene la habilidad de aprender de su medio ambiente, y mejorar su performance através del aprendizaje. El mejoramiento del performance se realiza a través del tiempo de acuerdocon una medida preestablecida.

Existen varias de�niciones del concepto de aprendizaje, según el punto de vista que se utilice.

De�nición del aprendizaje: El aprendizaje es un proceso a través del cual los parámetros libres(sus pesos sinápticos y nivel del bia) de una RNA son adaptados mediante un proceso deestimulación producido por el medio ambiente, en el cual está inmersa la red. El tipo deaprendizaje está determinado por la manera en que los parámetros libres son modi�cados.

Según esta de�nición el aprendizaje de una RNA tiene tres etapas, que son mostradas en la �gura17.

Figura 17: Tres etapas de aprendizaje de una RNA.

Proceso de aprendizaje por corrección de error.

En la �gura 18 se muestra una RNA con una sola neurona (nodo de cálculo) en la capa de salida,llamada la k − esima neurona, de una RNA feedforward. La k − esima neurona es estimulada por

11

Page 12: Redes Neuronales Arti ciales Aplicadas a la Seguridad de ...comca/pdf/cursillo_ivan_jiron.pdf · 1. Introducción El estudio de las redes neuronales arti ciales comenzó en 1943 con

el vector señal x(n) , que es producido por una o más capas de neuronas ocultas, las cuales a su vezson estimuladas por un vector de entrada aplicado a los nodos fuentes (capa de entrada) de la RNA.El parámetro n representa un tiempo discreto, es decir, un paso de tiempo en un proceso iterativopara ajustar los pesos sinápticos de la k− esima neurona. La señal de salida de la k− esima neuronaes yk (n), y representa la única salida de esta red neuronal. La señal de respuesta deseada o salidaobjetivo de la k − esima neurona es dk (n). Las señales yk (n) y dk (n) son comparadas, a través dela señal de error de�nida como,

ek (n) = dk (n)− yk (n) (7)

Figura 18: Aprendizaje por corrección de error de una RNA [2].

La señal de error ek (n) acciona un mecanismo de control, que aplica una secuencia de ajustescorrectivos en los pesos sinápticos de la k − esima neurona, tal que la señal yk (n) se aproxime a laseñal dk (n) paso a paso. Para esto se minimiza la función de costo o índice de performance dadapor:

ε (n) =1

2e2k (n) (8)

A esto se le llama la Regla Delta o Regla de Widrow-Ho�.Sea wkj (n) es el valor del j − esimo peso sináptico de la k − esima neurona excitado por la

componente xj (n) del vector señal x(n) en el tiempo n. Siguiendo la regla delta el ajuste del pesosináptico wkj (n) en el tiempo n, se de�ne como:

4wkj (n) = ηek (n)xj (n) (9)

donde η > 0 es una constante de proporcionalidad que determina la tasa de aprendizaje cuandose avanza de un paso a otro en el proceso de aprendizaje. Así, η es llamado la tasa de aprendizaje.La regla delta asume que la señal de error se puede medir directamente desde alguna fuente externaque es está accesible para la k − esima neurona, es decir, la k − esima neurona es visible desde elmundo exterior.

La ecuación (9) establece que los ajustes que se aplican a los pesos sinápticos son proporcionalesal producto entre el error obtenido y la señal de entrada.

El proceso de aprendizaje por corrección de error es local a la k − esima neurona, ya que losajustes de los pesos sinápticos se desarrollan en torno a la k − esima neurona. Entonces, el valoractualizado para el peso sináptico wkj de la k − esima neurona se calcula como:

wkj (n+ 1) = wkj (n) +4wkj (n) (10)

Proceso de aprendizaje basado en memoria.

Aquí todas las experiencias pasadas son almacenadas explícitamente en una memoria de tamañogrande, con ejemplos input-output correctamente clasi�cados:

12

Page 13: Redes Neuronales Arti ciales Aplicadas a la Seguridad de ...comca/pdf/cursillo_ivan_jiron.pdf · 1. Introducción El estudio de las redes neuronales arti ciales comenzó en 1943 con

{(−→x i, di

)/ i = 1, . . . , N

}donde

−→x ies un vector de entrada y di es la salida deseada correspondiente.

Cuando se clasi�ca un vector de prueba−→x test, que no ha sido visto previamente por la red, se

recuperan y analizan todos los datos de entrenamiento en una vecindad (local) del vector−→x test.

Así, para el aprendizaje basado en memoria existen dos elementos importantes:

El criterio usado para de�nir la vecindad (local) del vector−→x test.

La regla de aprendizaje aplicada a los ejemplos de entrenamiento en la vecindad (local) del

vector−→x test.

Los algoritmos di�eren en la forma como de�nen estos dos elementos.

Una regla para de�nir la vecindad del vector−→x test es elegir los ejemplos de entrenamiento

inmediatamente cercanos al vector−→x test . Luego, una colección de ejemplos de entrenamiento

XN = {x1,x2, · · · ,xN} está en una vecindad de−→x test si

d(−→x test,XN ) = min{d(

−→x test,xi) : i = 1, · · · , N}

donde d(−→x test,xi) es la distancia euclidiana entre

−→x test y xi.

Hasta aquí hemos revisado sólo dos procesos de aprendizaje de muchos. Otros ejemplos son:aprendizaje de Hebbian, aprendizaje competitivo, aprendizaje de Boltzmann, etc.

2.6. Pereceptron de capas multiples

Un perceptrón de capas multiples, o multicapa, es una RNA que consiste de una capa de entradaformada por unidades sensoriales (nodos fuentes), una o más capas ocultas de nodos de cálculo yuna capa de salida de los nodos de cálculo. La señal de entrada se propaga por la red en direcciónhacia adelante (forward) capa por capa.

El perceptrón multicapa es entrenado usando el algoritmo de propagación del error hacia atrás(error back-propagation algorithm), que está basado en la regla de aprendizaje de corrección de error(error-correction learning rule), mostrada en la �gura 19.

13

Page 14: Redes Neuronales Arti ciales Aplicadas a la Seguridad de ...comca/pdf/cursillo_ivan_jiron.pdf · 1. Introducción El estudio de las redes neuronales arti ciales comenzó en 1943 con

Figura 19: La regla de aprendizaje de corrección de error (error-correction learning rule).

Características del perceptrón multicapa:

Cada neurona en la red tiene una función de activación no lineal diferenciable en todas partes.La más común es la sigmoidal no lineal de�nida por la función logística en la ecuación (5) cona = 1.

La red tiene una o más capas ocultas que no pertenecen a la entrada ni a la salida. Estascapas ocultas le permiten a la red aprender tareas complejas a través de la extracción decaracterísticas válidas desde los patrones (vectores) de entrada.

La red tiene un alto grado de conectividad, determinado por las sinapsis en la red. Un cambioen la conectividad de la red requiere hacer un cambio en la población de conexiones sinápticaso de sus pesos respectivos.

La �gura 20 muestra una RNA correspondiente a un perceptron multicapas totalamente conec-tado, esto es, una neurona en cualquier capa tiene enlaces con todas las neuronas o nodos de lacapa anterior a la suya. Las señales se mueven de izquierda a derecha, es decir, en la dirección haciaadelante(forward direction).

Figura 20: Grafo de un perceptron multicapa, con dos capas ocultas [2].

14

Page 15: Redes Neuronales Arti ciales Aplicadas a la Seguridad de ...comca/pdf/cursillo_ivan_jiron.pdf · 1. Introducción El estudio de las redes neuronales arti ciales comenzó en 1943 con

En la �gura 21 se muestra el movimiento de las señales a través de la red en dirección forward,usando �echas de línea sólida. Mientras que el movimiento de las señales de error es en direccióncontraria, es decir, en sentido backward y se describen con �echas de líneas segmentadas.

Figura 21: Dirección forward y backward en una RNA [2].

Cada neurona oculta o de salida (nodos de cálculo) de un perceptrón multicapas está diseñadapara realizar dos cálculos:

1. Calcular la función de señal que aparece en la salida de una neurona, que se expresa como unafunción continua no lineal de la señal de entrada y pesos sinápticos asociados con esta neurona.

2. Calcular una estimación del vector gradiente (los gradientes de la super�cie de error con respec-to a los pesos conectados a las entradas de una neurona), el cual es necesario para propagaciónhacia atrás a través de la red.

2.6.1. Algoritmo Back-propagation

La señal de error en la salida de la j− esima neurona en la iteración n (presentación del n− esimoejemplo de entrenamiento) se de�ne como:

ej (n) = dj (n)− yj (n) (11)

donde la j − esima neurona es un nodo de salida.El valor total instantáneo del error se calcula sumando el cuadrado del error para todas las

neuronas en la capa de salida (las únicas neuronas visibles para las cuales la señal de error puedeser directamente calculada), y está dado por:

ε (n) =1

2

∑j∈C

e2j (n) (12)

para C el conjunto de todas las neuronas en la capa de salida de la red. Y el valor promedio delerror se calcula como:

εav =1

N

N∑n=1

ε (n) (13)

dondeN es el número total de ejemplos de entrenamiento. Así, para un conjunto de entrenamientoT el valor promedio del error εav se considera como una función de costo para medir el performancedel aprendizaje.

El objetivo de un proceso de entrenamiento es minimizar εav ajustando los pesos sinápticos ybias. Para esto el método hace los ajustes patrón-por-patrón hasta completar la presentación detodo el conjunto de entrenamiento T , esto se llama una época. Los ajustes en los pesos son hechosde acuerdo con los respectivos errores calculados para cada uno de los patrones presentados a la red.

15

Page 16: Redes Neuronales Arti ciales Aplicadas a la Seguridad de ...comca/pdf/cursillo_ivan_jiron.pdf · 1. Introducción El estudio de las redes neuronales arti ciales comenzó en 1943 con

La �gura 22 muestra el �ujo de señales en la j − esima neurona en la iteración n, donde lasseñales de entrada son producidas en la capa a la izquierda de esta neurona. El campo inducido,para m señales de entrada, está dado por:

vj (n) =

m∑i=0

yi (n)wji (n)

Igual que antes, en la ecuación (1), el bias está considerado en el peso sináptico wj0 (n) = bj ycon señal de entrada y0 = 1. Entonces, la señal de salida de la j − esima neurona en la iteración nes obtenida como yj (n) = ϕj (vj (n)) .

Figura 22: Flujo de entrada y salida en la j-ésima neurona [2].

Considerando a ε (n) como una función de los pesos sinápticos de la j − esima neurona en laiteración n, esto es,

ε (n) = f (wj0 (n) , wj1 (n) , · · · , wjm (n))

El algoritmo hace ajustes 4wji (n) en los pesos sinápticos wji (n) de la j − esima neurona en laiteración n que son proporcionales a la derivada parcial

∂ε (n)

∂wji (n)=

∂ε (n)

∂ej (n)

∂ej (n)

∂yj (n)

∂yj (n)

∂vj (n)

∂vj (n)

∂wji (n)= −ej (n)ϕ′j (vj (n)) yi (n)

que se calcula de acuerdo a la regla de la cadena para derivadas parciales de campos escalares.Y representa la variación de ε (n) con respecto al peso wji (n), es decir, determina la sensibilidad enla dirección del peso wji (n) en el espacio de los pesos sinápticos.

Según la Regla Delta los ajustes 4wji (n) en los pesos sinápticos están de�nidos como:

4wji (n) = −η ∂ε (n)

∂wji (n)(14)

donde η > 0 es una constante de proporcionalidad que determina la tasa de aprendizaje delalgoritmo Back-propagation.

La ecuación (14) representa al gradiente descendiente de ε (n), e indica la dirección de busquedapara minimizar el valor de ε (n).

16

Page 17: Redes Neuronales Arti ciales Aplicadas a la Seguridad de ...comca/pdf/cursillo_ivan_jiron.pdf · 1. Introducción El estudio de las redes neuronales arti ciales comenzó en 1943 con

Considerando el gradiente local δj (n) para la j− esima neurona en la iteración n de�nido como

δj (n) = − ∂ε (n)

∂vj (n)= − ∂ε (n)

∂ej (n)

∂ej (n)

∂yj (n)

∂yj (n)

∂vj (n)= −ej (n) (−1)ϕ′j (vj (n)) = ej (n)ϕ′j (vj (n))

se pueden reescribir los ajustes4wji (n) en los pesos sinápticos de la ecuación (14) en la siguienteforma

4wji (n) = ηδj (n) yi (n) (15)

Hasta aquí se puede destacar que el cálculo de la señal de error ej (n) es importante en elcálculo de los ajustes en los pesos sinápticos. Para realizar este cálculo se consideran dos situacionesrelacionadas con la posición de la neurona dentro de la RNA:

a) La k − esima neurona está en la capa de salida, como se muestra en la �gura 23. Entonces, laseñal de error ek (n) se cálcula usando directamente la fórmula (11), ya que se conoce la señaldeseada dk (n), y con ek (n) se determina el valor de δk (n).

b) La j− esima neurona está en una capa oculta, como se muestra en la �gura 23. En esta posiciónno se conoce la señal deseada dj (n). Entonces, el gradiente local δj (n) para la j − esimaneurona se reescribe en la fórmula (16).

δj (n) = − ∂ε (n)

∂yj (n)

∂yj (n)

∂vj (n)= − ∂ε (n)

∂yj (n)ϕ′j (vj (n)) (16)

Luego de aplicar la regla de la cadena y las fórmulas anteriores se deduce que

∂ε (n)

∂yj (n)= −

∑k

δk (n)wkj (n)

Entonces, el gradiente local δj (n) para la j − esima neurona oculta está dado por

δj (n) = ϕ′j (vj (n))∑k

δk (n)wkj (n) (17)

17

Page 18: Redes Neuronales Arti ciales Aplicadas a la Seguridad de ...comca/pdf/cursillo_ivan_jiron.pdf · 1. Introducción El estudio de las redes neuronales arti ciales comenzó en 1943 con

Figura 23: Flujo de las señales a través de la j-ésima neurona oculta y la k-ésima neurona en la capade salida [2].

En la fórmula (17) el cálculo de ϕ′j (vj (n)) depende sólo de la j − esima neurona, mientras quelos términos de la sumatoria δk (n)wkj (n) dependen de las neuronas que están en la capa continuaa la derecha de la j − esima neurona, y que tienen un enlace directo con esta neurona cuyo pesosináptico es wkj (n). Esta situación está representada en la �gura 24.

Figura 24: Flujo de las señales de error en back propagation [2].

Otro elemento importante es la función de activación ϕ (v) que debe ser continuamente diferen-ciable, un ejemplo es la función logística descrita en la subsección 2.1.

Como se dijo anteriormente los ajustes de los pesos sinápticos se hacen durante el entrenamientode RNA.

Un tipo de entrenamiento es el secuencial, en el cual los ajustes de los pesos sinápticos se hacendespués que un ejemplo de entrenamiento ha sido presentado a la red, comenzando por el primero ysiguiendo el orden secuencial hasta el último de los ejemplos de entrenamiento.

Finalmente, el Algoritmo Back-propagation se detiene cuando la norma Euclideana del vectorgradiente

∇ε (n) = ∇f (wj0 (n) , wj1 (n) , · · · , wjm (n))

18

Page 19: Redes Neuronales Arti ciales Aplicadas a la Seguridad de ...comca/pdf/cursillo_ivan_jiron.pdf · 1. Introducción El estudio de las redes neuronales arti ciales comenzó en 1943 con

alcanza valor su�cientemente pequeño, por ejemplo,

‖∇ε (n)‖ < β 0 < β < 1

19

Page 20: Redes Neuronales Arti ciales Aplicadas a la Seguridad de ...comca/pdf/cursillo_ivan_jiron.pdf · 1. Introducción El estudio de las redes neuronales arti ciales comenzó en 1943 con

3. Criptografía

Esta sección presenta algunos elementos básicos de la criptografía. Para profundizar se recomien-da la lectura de las referencias [5] [6] [7] [8] [9] [10] [11].La Figura 25 muestra el esquema básico de un criptosistema para un canal inseguro (llamado CA-NAL), que está constituido por dos usuarios autorizados (Alice y Bob) y un usuario no autorizado(Eve) que puede escuchar todo lo que se transmite por el CANAL. Para una comunicación segura Ali-ce y Bob deben acordar el uso de un criptosistema, es decir, un método de encriptación (Ek (m) = c)para ocultar el mensaje original m en un mensaje encriptado c, y un método de desencriptación(Dk (c) = m) para recuperar desde c el mensaje original m. Estos métodos son llamados algorit-mos de encriptación y de desencriptación, respectivamente. Ambos algoritmos usan una clave o llavesecreta k, que sólo conocen Alice y Bob.

¾Qué pasa con Eve? Bueno por algún medio ella logra conocer el criptosistema acordado porAlice y Bob, pero no sabe cuál es la llave secreta k, que ellos comparten. Entonces, los ataques quehace Eve tienen como objetivo descubrir la llave secreta k. Lo más importante es que el algoritmo deencriptación sea fácil de utilizar con la llave secreta k, y por el contario el algoritmo de desencriptaciónsea muy dí�cil y casi imposible de utilizar si no se conoce la llave secreta k.

La Figura 25 corresponde a un criptosistema simétrico o de llave simétrica, esto es, Alice y Bobdeben usar la misma llave secreta k en los algoritmos de encriptación y de desencriptación. Lo queplantea el gran problema del intercambio de la llave secreta k entre ellos. Por ejemplo, que Alice leentregue la llave k en forma segura a Bob, de manera que Eve no la pueda descubrir. Debido a quetodos los canales de transmisión son inseguros, un cartero puede ser sobornado o torturado para queentregue la llave secreta k, una conversación teléfonica puede ser escuchada, un servidor de correoelectrónico puede ser atacado, etc.

Algunos objetivos de la criptografía son:

a) La privacidad o con�dencialidad de la información signi�ca que ésta está disponible sólo paraaquellos usuarios autorizados para conocerla. Por ejemplo, el número de una tarjeta de créditoy su contraseña.

b) La integridad de la información consiste en prohibir hacer cambios en la información a los usuariosno autorizados, es decir, a los intrusos. Por ejemplo, cambiar la contraseña de la cuenta corrientede otro usuario.

c) La autenti�cación de un usuario se consigue veri�cando la identidad del usuario que trata deacceseder a la información.

d) La autenti�cación de un mensaje se consigue veri�cando la identidad de la fuente del mensaje.Por ejemplo, un correo electrónico con enlaces falsos, que buscan hacer Phishing o suplantaciónde identidad.

e) La �rma digital es un medio para identi�car y diferenciar a un usuario en particular del resto delos usuarios.

f) La no-repudiación es un mecanismo para que los usuarios no puedan negar o descirtir de susacciones. Por ejemplo, negar la compra de un bien a través de un sitio web, después de haberlorecibido.

20

Page 21: Redes Neuronales Arti ciales Aplicadas a la Seguridad de ...comca/pdf/cursillo_ivan_jiron.pdf · 1. Introducción El estudio de las redes neuronales arti ciales comenzó en 1943 con

Figura 25: Esquema de un Criptosistema

21

Page 22: Redes Neuronales Arti ciales Aplicadas a la Seguridad de ...comca/pdf/cursillo_ivan_jiron.pdf · 1. Introducción El estudio de las redes neuronales arti ciales comenzó en 1943 con

3.1. Criptografía de llave pública

En esta sección se presentan tres soluciones al gran problema del intercambio de la llave secretaentre los usuarios autorizados, debido a que todos los canales de transmisión son inseguros. Estos seclasi�can dentro del problema del logaritmo discreto y la factorización de números gigantes en susfactores primos. Existen otros tipos de problemas pero no se abordarán en este cursillo.

La Cripotgrafía de llave pública o asimétrica nace con el trabajo de Di�e y Hellman en 1976.

3.1.1. Algoritmo de Di�e-Hellman

La solución a este problema fue propuesta por Di�e y Hellman en 1976, con un esquema deintercambio de llaves, en el cual Alice y Bob siguen los siguientes pasos:

1. Elijen un número primo p muy grande, y a continuación utilizan los elementos del campo Z∗p.

2. Elijen un entero α ∈ {2, 3, . . . , p− 2}

3. Publican p y α.

4. Alice selecciona su llave privada como un entero aleatorio y secreto ka < p, y calcula su llavepública como A = αka mod (p), y la transmite a Bob.

Por su parte, Bob selecciona su llave privada como un entero aleatorio y secreto kb < p, ycálcula su llave pública como B = αkb mod (p), y la transmite a Alice.

5. Alice calcula (B)ka =

(αkb)ka

mod (p) = αkbka mod (p), mientras que Bob calcula (A)kb =(

αka)kb mod (p) = αkakb mod (p).

6. La llave secreta que comparten ambos es k = (B)ka = (A)

kb = αkakb mod (p), y que no fuetransmitida por ningún canal.

La seguridad de este esquema se basa en la di�cultad de calcular el logaritmo discreto, en campos�nitos, de las llaves públicas A = αka mod (p) y B = αkb mod (p). Estos es, determinar el valor exactode las llaves secretas ka y kb.

Ejemplo: Bob elige p = 13, α = 6 ∈ {2, 3, . . . , 11}. Alice selecciona su llave privada ka = 5 < 13, ycalcula su llave pública como

A = 65 mod (13) = 7,776 mod (13) = 2 (18)

Por su parte, Bob selecciona su llave privada kb = 8 < 13, y cálcula su llave pública como

B = 68 mod (13) = 1,679,616 mod (13) = 3 (19)

Alice calcula (3)5

=(68)5

mod (13) = 9, mientras que Bob calcula (2)8

=(65)8

mod (13) = 9.

Entonces, Alice y Bob comparten la llave secreta común k = 9.

3.1.2. Algoritmo RSA

Otra solución para el problema del intercambio de llaves es algoritmo criptográ�co asimétricoRSA (Rivest, Shamir y Adleman) publicado en 1978, que en la actualidad es ampliamente usado. Ysu fortaleza está en la di�cultad de factorizar el producto de dos números primos gigantes.

Los algoritmos de encriptación y de desencriptación son realiazados usando un anillo enteroZn = {0, 1, 2, . . . , n− 1} y aritmética modular.

El mensaje original m se representa como un elemento de Zn, que debe ser menor que n.Generación de llaves: Para generar sus llaves pública y secreta Bob sigue los siguientes pasos:

22

Page 23: Redes Neuronales Arti ciales Aplicadas a la Seguridad de ...comca/pdf/cursillo_ivan_jiron.pdf · 1. Introducción El estudio de las redes neuronales arti ciales comenzó en 1943 con

1. Elige dos números primos distintos p y q extremadamente grandes (de 1024 bits o de 100dígitos a lo menos), de igual longitud para garantizar la seguridad del sistema. A continuacióncalcula

n = pq (20)

Atención: Los dos números primos p y q deben permanecer secretos.

2. Calcula

Φ (n) = (p− 1) (q − 1) (21)

3. Selecciona su llave pública (exponente) aleatoria k = e ∈ {1, 2, . . . ,Φ (n)− 1} tal que gcd (e,Φ (n)) =1.

4. Calcula su llave privada (exponente) d tal que

d · e ≡ 1 mod (Φ (n))⇐⇒ d ≡ e−1 mod (Φ (n)) (22)

y gcd (d, n) = 1.

Algoritmo de Encriptación:Bob publica n y e.Alice encripta un mensaje m para Bob de la siguiente forma:

c = Ee (m) ≡me mod (n)

donde m, c ∈ Zn.Algoritmo de Desencriptación:Bob recive el mensaje encriptado c y lo desencripta de la siguiente forma:

m = Dd (c) ≡ cd mod (n) = (me)d

mod (n) =(med

)mod (n)

donde m, c ∈ Zn.

Ejemplo: Para p = 47 y q = 71, n = 3337. La llave pública e no debe tener factores en común conΦ (3337) = (46) (70) = 3220. Así, Bob puede elegir e = 79. Entonces, calcula su llave privadacomo d ≡ 79−1 mod (3220) = 1019.

Si Alice, quiere enviarle a Bob el mensaje m = 688 lo encripta usando la llave pública de Bob,e = 79 y n = 3337. Calcula

c = E79 (688) ≡ 68879 mod (3337) = 1570

A continuación, Bob recive el mensaje encriptado c = 1570, y lo descencripta calculando

D1019 (c) ≡ 15701019 mod (n) =(68879

)1019mod (3337) = 688

Firma digital: Alice y Bob siguen los siguientes pasos:

a) Bob publica n y e.

b) Bob construye su �rma digital de la siguiente manera: toma el mensaje m y calcula su �rmasb ≡md mod (n), donde d es su llave privada.

23

Page 24: Redes Neuronales Arti ciales Aplicadas a la Seguridad de ...comca/pdf/cursillo_ivan_jiron.pdf · 1. Introducción El estudio de las redes neuronales arti ciales comenzó en 1943 con

c) Le transmite a Alice el par (m,sb).

d) Alice calcula x ≡ (sb)e

mod (n). Entonces,

x = mmod (n) =⇒ la �rma sb es válida.x 6= mmod (n) =⇒ la �rma sb NO es válida.

Bob usa su llave privada d para �rmar y Alice usa la llave pública e de Bob para veri�car la�rma.

3.1.3. Algoritmo de ElGamal

En 1985 T. ElGamal modi�có el esquema de Di�e-Hellman para encriptar y desencriptar unmensaje. La seguridad de este algoritmo criptográ�co está basada en la imposibilidad de resolver elproblema del logaritmo discreto (discrete logarithm problem, DLP).

El algoritmo de ElGamal se utiliza sobre un el grupo Z∗p, con p un número primo gigante, que espúblico.

Aquí Bob tiene como llave privada (secreta) x, con x < p. Y como llave pública (β, y) dondeβ < p e y ≡ βx mod (p).

Alice encripta un mensaje m eligiendo en forma aleatoria k, que es un primo relativo con p− 1.A continuación calcula

a = βk mod (p) y b = ykmmod (p)

Entonces, le manda a Bob el mensaje encriptado en el par (a, b).Para desencriptar Bob hace los siguientes cálculos:(

b

ax

)mod (p) =

(ykm

(βk)x

)mod (p) =

((βx)

km

(βk)x

)mod (p) = m

Ejemplo: Bob elige p = 13, β = 6, x = 5 y calcula y ≡ 65 mod (13) = 7776 mod (13) = 2. Publica p = 13,β = 6 e y = 2.

Alice encripta el mensaje m = 10 eligiendo en forma aleatoria k = 4. Entonces, determina losvalores de

a = 64 mod (13) = 1296 mod (13) = 9 y b = 2410mod (13) = 160 mod (13) = 4

Entonces, le manda a Bob el mensaje encriptado en el par c = (a, b) = (9, 4).

Bob desencripta el mensaje encriptado c = (a, b) = (9, 4) de la siguiente forma:

(4

95

)mod (13) =

((2)

410

(64)5

)mod (p) =

((65)4

10

(64)5

)mod (13) = 10 = m

Firma digital con ElGamal:Bob selecciona un número primo p, y dos números aleatorios β y x, tales que β < p y x < p. Y

calculay ≡ βx mod (p)

Bob publica y, β y p.Para �rmar un mensaje m, Bob elige un número aleatorio secreto k que es un primo relativo con

p− 1, y calcula a = βk mod (p).A continuación, usa el algoritmo extendido de Euclides para encotrar el valor de b en la ecuación:

24

Page 25: Redes Neuronales Arti ciales Aplicadas a la Seguridad de ...comca/pdf/cursillo_ivan_jiron.pdf · 1. Introducción El estudio de las redes neuronales arti ciales comenzó en 1943 con

m = (xa + kb) mod (p− 1)

El par (a, b) es la �rma digital de Bob.Alice veri�ca la �rma de Bob calculando:

yaab mod (p) = (βx)a (βk)b

mod (p) = β(xa+kb) mod (p) = βm mod (p)

Ejemplo: Bob elige p = 11, β = 2, x = 8 y calcula y ≡ 28 mod (11) = 256 mod (11) = 3.

Bob publica y = 3, β = 2 y p = 11, y mantiene secreto x = 8.

Para �rmar el mensaje m = 5, selecciona un número aleatorio secreto k = 9 que es un primorelativo con p− 1 = 10.

Calcula a = βk mod (p) = a = 29 mod (11) = 512 mod (11) = 6.

A continuación, usa el algoritmo extendido de Euclides para encotrar el valor de b en laecuación:

5 = (8 · 6 + 9 · b) mod (10) = (8 + 9 · b) mod (10)

resultando b = 3. Y el par (a, b) = (6, 3) es la �rma digital de Bob.

25

Page 26: Redes Neuronales Arti ciales Aplicadas a la Seguridad de ...comca/pdf/cursillo_ivan_jiron.pdf · 1. Introducción El estudio de las redes neuronales arti ciales comenzó en 1943 con

4. Intercambio de llaves basado en redes neuronales arti�ciales

En esta sección se presenta un esquema para el intercambio de llaves entre dos usuarios usandoun par de RNAs. Para más detalles se recomienda leer las referencias [12] [13] [14] [15] [16].

Como se dijo anteriormente el esquema usa dos RNAs del tipo feedforward, que pueden sincro-nizar sus pesos sinápticos mediante el intercambio y aprendizaje, donde la salida de una alimenta laentrada de la otra y viceversa.

La �gura 26 muestra la arquitectura usada por el transmisor (S) y receptor (R), que en este casoes un perceptron de doble capa, con K neuronas ocultas y N señales de entrada por cada neuronaoculta. Así, el vector de las señales de entrada tiene KN componentes xkj = ±1, con 1 ≤ k ≤ K y1 ≤ j ≤ N . Las salidas de cada una de las neuronas ocultas son y1, y2, . . . , yK . No tiene sobreposiciónentre las distintas señales. Los pesos sinápticos son números enteros wkj ∈ [−L,L], y representan alj − esimo peso de la k − esima neurona oculta. Al número L se le llama la profundidad sinápticade la red. Y la salida de cada red O es el resultado de multiplicar entre si todas las salidas de las Kneuronas ocultas, esto es,

O = y1 · y2 · . . . · yK.

Figura 26: Arquitectura con K neuronas ocultas y N señales de entrada por neurona [12]

Las llaves privadas (secretas) del transmisor y receptor son los valores iniciales de los pesossinápticos de cada red. Donde wS

kj y wRkj son los pesos sinápticos del transmisor y del receptor,

respectivamente.Cada red es entrenada con la salida de la otra, considerando un vector de señales de entrada

(xkj) común y público para el transmisor y el receptor.En la �gura 26 se consideran K = 3 y N = 5. Así, la señal de salida, en cada red, se obtiene

como

yk = signo

N∑j=1

wkjxkj

k = 1, 2, 3

donde la función signo se de�ne de la siguiente forma

signo (x) =

1 si x > 0

−1 si x < 0

Para el caso particular x = 0, el transmisor considera signo (x) = 1, mientras que el receptorconsidera signo (x) = −1.

Luego, se calcula la señal de salida de cada red como sigue:

26

Page 27: Redes Neuronales Arti ciales Aplicadas a la Seguridad de ...comca/pdf/cursillo_ivan_jiron.pdf · 1. Introducción El estudio de las redes neuronales arti ciales comenzó en 1943 con

OS = yS1 · yS2 · yS3 y OR = yR1 · yR2 · yR3A continuación el transmisor y el receptor intercambia las señales de salida OS y OR de cada

red, para ser usadas en el entranamieto.El entrenamiento sigue si OS ·OR < 0, es decir, mientras sean distintas, y termina cuando ambas

redes tienen la misma salida.Durante el entrenamiento los pesos son ajustado siguiendo la siguiente regla de aprendizaje, en

cada red:

O · yk > 0 =⇒ wkj = wkj −O · xkj

|wkj | > L =⇒ wkj = signo (wkj) · L(23)

Sólo se ajustan los pesos sinápticos pertenecientes a las neuronas ocultas que están en el mismoestado que su unidad de salida, en cada ambas redes.

La seguridad de este método de intercambio de llaves está garantizada por los siguientes hechos:

a) Para una salida particular O desde una de las RNAs se tienen diferentes representaciones con lassalidas y1, y2, . . . , yK de las neuronas ocultas. Por ejemplo, para la �gura 26, O = 1 puedeser el resultado de multiplicar una de las con�guraciones (1, 1, 1) , (1,−1,−1) , (−1, 1,−1) ,(−1,−1, 1) . Por tanto, el intruso no puede determinar el vector de pesos sinápticos que se estáusando.

b) Como cada componente está acotada por la profundidad sináptica de la red L, el intruso nopuede invertir laa operaciones en las ecuaciones (23), ya que la red olvida.

27

Page 28: Redes Neuronales Arti ciales Aplicadas a la Seguridad de ...comca/pdf/cursillo_ivan_jiron.pdf · 1. Introducción El estudio de las redes neuronales arti ciales comenzó en 1943 con

Referencias

[1] Internet Live Stats, http://www.internetlivestats.com/.

[2] S. Haykin, Neural Networks. A Comprehensive Foundation, Second Edition, ISBN: 81-7808-300-0. Pearson Prentice Hall. 1999.

[3] M. A. Arbib, The Handbook of Brain Theory and Neural Networks, Second Edition, ISBN:0�262�01197�2. A Bradford Book THE MIT PRESS. 2003

[4] J. Hertz, A. Krogh, R.G. Palmer, Introduction to the Theory of Neural Computation,ISBN: 0-201-51560-1. Addison-Wesley Publishing Company, 1990.

[5] S. Vaudenay, A Classical Introduction to Cryptography: Applications for CommunicationsSecurity, ISBN-13:978-1-4419-3797-1. Springer, 2010.

[6] C. Paar, J. Pelzl, Understanding Cryptography. A Textbook for Students and Practitioners,ISBN:978-3-642-04100-6. Springer-Verlag, Berlin, 2010.

[7] B. Schneier, Applied Cryptography:Protocols, Algorithms, and Source Code in C, Second Edi-tion, ISBN:0471117099. John Wiley and Sons, Inc. 1995.

[8] W. Diffie, M.E.Hellman, New directions in cryptography, IEEE Transactions on InformationTheory 22 (1976), pp. 644-654.

[9] R. Rivest, A. Shamir, L. Adleman, A Method for Obtaining Digital Signatures and Public-Key Cryptosystems, Communications of the ACM, Vol. 21 (2), pp.120-126, 1978.

[10] T. ElGamal, A Public-Key Cryptosystem and a Signature Scheme Based on Discrete Loga-rithms, IEEE Transactions on Information Theory 31 (4): 469�472, 1985.

[11] H. C. A. van Tilborg, Fundamentals of Cryptology. A Professional Reference and InteractiveTutorial, ISBN: 0792386752. Kluwer Academic Publishers, 2002.

[12] I. Kanter, W. Kinzel, E. Kanter, Secure exchange of information by synchronization ofneural networks, Europhysics Letters, 57 (1), pp. 141�147, 2002.

[13] Chao-Jung Cheng, Teh-Lu Liao, Jun-Juh Yan, Chi-Chuan Hwang, Synchronization ofneural networks by decentralized feedback control,Physics Letters A 338 (2005) 28�35. ElsevierB.V. 2005.

[14] S. Santhanalakshmi , T.S.B. Sudarshan, G. K. Patra, Neural Synchronization by MutualLearning Using Genetic Approach for Secure Key Generation, S.M. Thampi et al.(Eds.): SNDS2012, CCIS 335, pp. 422�431, Springer-Verlag Berlin Heidelberg 2012.

[15] N. Mu, X. Liao, An Approach for Designing Neural Cryptography, C. Guo, Z.-G. Hou, andZ. Zeng (Eds.): ISNN 2013, Part I, LNCS 7951, pp. 99�108. Springer-Verlag Berlin Heidelberg2013.

[16] J. Giesl, R. Pisan, Neural Network Synchronization Protocol,Journal of Emerging Trends inComputing and Information Sciences, Vol. 4, No. 1 Jan 2013, ISSN 2079-8407, 2013.

28