sistema de mimetismo basado en gramÁtica para ocultamiento de informaciÓn fátima margarita...
TRANSCRIPT
SISTEMA DE MIMETISMO BASADO EN GRAMÁTICA PARA OCULTAMIENTO DE
INFORMACIÓN
Fátima Margarita Lechuga Blanco [email protected]
Mario César Lima Rodríguez
Descripción
En este trabajo se presenta una forma de ocultar y
recuperar mensajes dentro de texto apoyandose en
gramáticas libres de contexto
Este sistema es una aplicación esteganográfica
Esteganográfia
Es la ciencia ó arte de ocultar un mensaje dentro de otro, de tal forma que
no se detecte la existencia del mensaje original
Ejemplos de aplicaciones
esteganográficas:
Imágen dentro de una imágen Imágen dentro de un texto
Texto dentro de una imágen Texto dentro de texto
Ocultar y recuperar un mensaje dentro de un texto apoyándonos de
gramáticas
Proposito
EjemploMensaje a Ocultar
gatoRegla Gramatical
O sTexto con Mensaje Oculto
Mira al gato blanco en la casa
Diagrama general del sistema
Ejemplos de texto
Ocultador Extractor
Gramática
Texto con Mensaje
Mensaje
Mensaje
Para poder desarrollar el sistema nos apoyamos en
un
generador de textos y
un manejador de gramáticas
Matrices de frecuencias
Tabla de palabras
Generador de Texto
Texto Generador de Texto
Texto de ejemplo
Generador de Tablas
Caminos de Markov y Matrices de
frecuencia aplicados a la generación de
texto
Por ejemplo, si tenemos el siguiente texto: El perro ladra mucho El perro muerde El gato blanco El perro blanco
Genera el siguiente camino de Markov:
elperro
blanco
muerde
ladra mucho
gato
Donde cada posible camino tiene una frecuencia de ocurrencia, la cual esta representada en la matriz de frecuencias.
3/4 1
1
1/3
1/3
1/3
1/4
Representación Matricial
del camino de Markov
Si tenemos el siguiente texto de ejemplo:
el perro ladra en su casa.el perro blanco está en la
casa.un perro está en el jardín.un gato blanco.
Este texto generaría esta matriz de frecuencias
el perro
ladra en
su casa
blanco está la un . jardin
gato
el 0 2 0 0 0 0 0 0 0 0 0 1 0
perro 0 0 1 0 0 0 1 1 0 0 0 0 0
ladra 0 0 0 1 0 0 0 0 0 0 0 0 0
en 1 0 0 0 1 0 0 0 1 0 0 0 0
su 0 0 0 0 0 1 0 0 0 0 0 0 0
casa 0 0 0 0 0 0 0 0 0 0 2 0 0
blanco
0 0 0 0 0 0 0 1 0 0 1 0 0
está 0 0 0 2 0 0 0 0 0 0 0 0 0
la 0 0 0 0 0 1 0 0 0 0 0 0 0
un 0 1 0 0 0 0 0 0 0 0 0 0 1
. 2 0 0 0 0 0 0 0 0 1 0 0 0
jardín 0 0 0 0 0 0 0 0 0 0 1 0 0
gato 0 0 0 0 0 0 1 0 0 0 0 0 0
Donde cada uno de los renglones y
columnas de la matriz generada
corresponde a cada una de las palabras diferentes que se encuentran en el texto de ejemplo
Generación de texto
a partir de
la matriz de frecuencias
Se selecciona aleatoriamente una
palabra en este caso ‘perro’ , se posiciona
en el renglón que corresponde a esta
palabra y se comienza a generar
texto a partir de ella.
el perro
ladra en
su casa
blanco está la un . jardin
gato
el 0 2 0 0 0 0 0 0 0 0 0 1 0
perro 0 0 1 0 0 0 1 1 0 0 0 0 0
ladra 0 0 0 1 0 0 0 0 0 0 0 0 0
en 1 0 0 0 1 0 0 0 1 0 0 0 0
su 0 0 0 0 0 1 0 0 0 0 0 0 0
casa 0 0 0 0 0 0 0 0 0 0 2 0 0
blanco
0 0 0 0 0 0 0 1 0 0 1 0 0
está 0 0 0 2 0 0 0 0 0 0 0 0 0
la 0 0 0 0 0 1 0 0 0 0 0 0 0
un 0 1 0 0 0 0 0 0 0 0 0 0 1
. 2 0 0 0 0 0 0 0 0 1 0 0 0
jardín 0 0 0 0 0 0 0 0 0 0 1 0 0
gato 0 0 0 0 0 0 1 0 0 0 0 0 0
Para lo cual se selecciona una de las columnas que
sea diferente de 0 dentro del renglón ‘perro’,
y tomamos la palabra que corresponde a la columna seleccionada, en este caso
‘está’.
el perro
ladra en
su casa
blanco está la un . jardin
gato
el 0 2 0 0 0 0 0 0 0 0 0 1 0
perro 0 0 1 0 0 0 1 1 0 0 0 0 0
ladra 0 0 0 1 0 0 0 0 0 0 0 0 0
en 1 0 0 0 1 0 0 0 1 0 0 0 0
su 0 0 0 0 0 1 0 0 0 0 0 0 0
casa 0 0 0 0 0 0 0 0 0 0 2 0 0
blanco
0 0 0 0 0 0 0 1 0 0 1 0 0
está 0 0 0 2 0 0 0 0 0 0 0 0 0
la 0 0 0 0 0 1 0 0 0 0 0 0 0
un 0 1 0 0 0 0 0 0 0 0 0 0 1
. 2 0 0 0 0 0 0 0 0 1 0 0 0
jardín 0 0 0 0 0 0 0 0 0 0 1 0 0
gato 0 0 0 0 0 0 1 0 0 0 0 0 0
perro
Se posiciona en el renglón que
corresponde a la nueva palabra seleccionada,
en este caso ‘está’ y se continua
generando texto a partir de ella.
el perro
ladra en
su casa
blanco está la un . jardin
gato
el 0 2 0 0 0 0 0 0 0 0 0 1 0
perro 0 0 1 0 0 0 1 1 0 0 0 0 0
ladra 0 0 0 1 0 0 0 0 0 0 0 0 0
en 1 0 0 0 1 0 0 0 1 0 0 0 0
su 0 0 0 0 0 1 0 0 0 0 0 0 0
casa 0 0 0 0 0 0 0 0 0 0 2 0 0
blanco
0 0 0 0 0 0 0 1 0 0 1 0 0
está 0 0 0 2 0 0 0 0 0 0 0 0 0
la 0 0 0 0 0 1 0 0 0 0 0 0 0
un 0 1 0 0 0 0 0 0 0 0 0 0 1
. 2 0 0 0 0 0 0 0 0 1 0 0 0
jardín 0 0 0 0 0 0 0 0 0 0 1 0 0
gato 0 0 0 0 0 0 1 0 0 0 0 0 0
perro está
Para lo cual se selecciona una de las columnas que
sea diferente de 0 dentro del renglón ‘está’, y
buscamos la palabra que corresponde a la columna seleccionada, en este caso
‘en’.
el perro
ladra en
su casa
blanco está la un . jardin
gato
el 0 2 0 0 0 0 0 0 0 0 0 1 0
perro 0 0 1 0 0 0 1 1 0 0 0 0 0
ladra 0 0 0 1 0 0 0 0 0 0 0 0 0
en 1 0 0 0 1 0 0 0 1 0 0 0 0
su 0 0 0 0 0 1 0 0 0 0 0 0 0
casa 0 0 0 0 0 0 0 0 0 0 2 0 0
blanco
0 0 0 0 0 0 0 1 0 0 1 0 0
está 0 0 0 2 0 0 0 0 0 0 0 0 0
la 0 0 0 0 0 1 0 0 0 0 0 0 0
un 0 1 0 0 0 0 0 0 0 0 0 0 1
. 2 0 0 0 0 0 0 0 0 1 0 0 0
jardín 0 0 0 0 0 0 0 0 0 0 1 0 0
gato 0 0 0 0 0 0 1 0 0 0 0 0 0
perro está
Se selecciona la palabra en este caso ‘en’ y se posiciona en
el renglón que corresponde a esta
palabra y se comienza a generar
texto a partir de ella.
el perro
ladra en
su casa
blanco está la un . jardin
gato
el 0 2 0 0 0 0 0 0 0 0 0 1 0
perro 0 0 1 0 0 0 1 1 0 0 0 0 0
ladra 0 0 0 1 0 0 0 0 0 0 0 0 0
en 1 0 0 0 1 0 0 0 1 0 0 0 0
su 0 0 0 0 0 1 0 0 0 0 0 0 0
casa 0 0 0 0 0 0 0 0 0 0 2 0 0
blanco
0 0 0 0 0 0 0 1 0 0 1 0 0
está 0 0 0 2 0 0 0 0 0 0 0 0 0
la 0 0 0 0 0 1 0 0 0 0 0 0 0
un 0 1 0 0 0 0 0 0 0 0 0 0 1
. 2 0 0 0 0 0 0 0 0 1 0 0 0
jardín 0 0 0 0 0 0 0 0 0 0 1 0 0
gato 0 0 0 0 0 0 1 0 0 0 0 0 0
perro está en
Así sucesivamente hasta que se cumpla la condición de
terminación.
(Que en este caso es cuando genera un punto ‘.’ o cuando genera más de 10 palabras).
el perro
ladra en
su casa
blanco está la un . jardin
gato
el 0 2 0 0 0 0 0 0 0 0 0 1 0
perro 0 0 1 0 0 0 1 1 0 0 0 0 0
ladra 0 0 0 1 0 0 0 0 0 0 0 0 0
en 1 0 0 0 1 0 0 0 1 0 0 0 0
su 0 0 0 0 0 1 0 0 0 0 0 0 0
casa 0 0 0 0 0 0 0 0 0 0 2 0 0
blanco
0 0 0 0 0 0 0 1 0 0 1 0 0
está 0 0 0 2 0 0 0 0 0 0 0 0 0
la 0 0 0 0 0 1 0 0 0 0 0 0 0
un 0 1 0 0 0 0 0 0 0 0 0 0 1
. 2 0 0 0 0 0 0 0 0 1 0 0 0
jardín 0 0 0 0 0 0 0 0 0 0 1 0 0
gato 0 0 0 0 0 0 1 0 0 0 0 0 0
perro está en
el perro
ladra en
su casa
blanco está la un . jardin
gato
el 0 2 0 0 0 0 0 0 0 0 0 1 0
perro 0 0 1 0 0 0 1 1 0 0 0 0 0
ladra 0 0 0 1 0 0 0 0 0 0 0 0 0
en 1 0 0 0 1 0 0 0 1 0 0 0 0
su 0 0 0 0 0 1 0 0 0 0 0 0 0
casa 0 0 0 0 0 0 0 0 0 0 2 0 0
blanco
0 0 0 0 0 0 0 1 0 0 1 0 0
está 0 0 0 2 0 0 0 0 0 0 0 0 0
la 0 0 0 0 0 1 0 0 0 0 0 0 0
un 0 1 0 0 0 0 0 0 0 0 0 0 1
. 2 0 0 0 0 0 0 0 0 1 0 0 0
jardín 0 0 0 0 0 0 0 0 0 0 1 0 0
gato 0 0 0 0 0 0 1 0 0 0 0 0 0
perro está en el
el perro
ladra en
su casa
blanco está la un . jardin
gato
el 0 2 0 0 0 0 0 0 0 0 0 1 0
perro 0 0 1 0 0 0 1 1 0 0 0 0 0
ladra 0 0 0 1 0 0 0 0 0 0 0 0 0
en 1 0 0 0 1 0 0 0 1 0 0 0 0
su 0 0 0 0 0 1 0 0 0 0 0 0 0
casa 0 0 0 0 0 0 0 0 0 0 2 0 0
blanco
0 0 0 0 0 0 0 1 0 0 1 0 0
está 0 0 0 2 0 0 0 0 0 0 0 0 0
la 0 0 0 0 0 1 0 0 0 0 0 0 0
un 0 1 0 0 0 0 0 0 0 0 0 0 1
. 2 0 0 0 0 0 0 0 0 1 0 0 0
jardín 0 0 0 0 0 0 0 0 0 0 1 0 0
gato 0 0 0 0 0 0 1 0 0 0 0 0 0
perro está en el jardín
el perro
ladra en
su casa
blanco está la un . jardin
gato
el 0 2 0 0 0 0 0 0 0 0 0 1 0
perro 0 0 1 0 0 0 1 1 0 0 0 0 0
ladra 0 0 0 1 0 0 0 0 0 0 0 0 0
en 1 0 0 0 1 0 0 0 1 0 0 0 0
su 0 0 0 0 0 1 0 0 0 0 0 0 0
casa 0 0 0 0 0 0 0 0 0 0 2 0 0
blanco
0 0 0 0 0 0 0 1 0 0 1 0 0
está 0 0 0 2 0 0 0 0 0 0 0 0 0
la 0 0 0 0 0 1 0 0 0 0 0 0 0
un 0 1 0 0 0 0 0 0 0 0 0 0 1
. 2 0 0 0 0 0 0 0 0 1 0 0 0
jardín 0 0 0 0 0 0 0 0 0 0 1 0 0
gato 0 0 0 0 0 0 1 0 0 0 0 0 0
perro está en el jardín.
A partir del generador de textos ya se pueden
ocultar mensajes como se ve a continuación.
Matrices de frecuencias
Tabla de unidades léxicas
Ocultador
Texto con Mensaje
Módulo Ocultador
Reglas gramáticales
Mensaje
Para ocultar el mensaje se requiere generar
texto alrededor de la o las palabras a ocultar
Si la palabra que deseamos ocultar es está
Primero, ocultamos hacia delante a partir de la palabra está
Localización de la palabra ‘está’ como
renglón en la matriz de frecuencias
el perro
ladra en
su casa
blanco está la un . jardin
gato
el 0 2 0 0 0 0 0 0 0 0 0 1 0
perro 0 0 1 0 0 0 1 1 0 0 0 0 0
ladra 0 0 0 1 0 0 0 0 0 0 0 0 0
en 1 0 0 0 1 0 0 0 1 0 0 0 0
su 0 0 0 0 0 1 0 0 0 0 0 0 0
casa 0 0 0 0 0 0 0 0 0 0 2 0 0
blanco
0 0 0 0 0 0 0 1 0 0 1 0 0
está 0 0 0 2 0 0 0 0 0 0 0 0 0
la 0 0 0 0 0 1 0 0 0 0 0 0 0
un 0 1 0 0 0 0 0 0 0 0 0 0 1
. 2 0 0 0 0 0 0 0 0 1 0 0 0
jardín 0 0 0 0 0 0 0 0 0 0 1 0 0
gato 0 0 0 0 0 0 1 0 0 0 0 0 0
está
Generación de texto hacia adelante a partir
de la palabra ‘está’
el perro
ladra en
su casa
blanco está la un . jardin
gato
el 0 2 0 0 0 0 0 0 0 0 0 1 0
perro 0 0 1 0 0 0 1 1 0 0 0 0 0
ladra 0 0 0 1 0 0 0 0 0 0 0 0 0
en 1 0 0 0 1 0 0 0 1 0 0 0 0
su 0 0 0 0 0 1 0 0 0 0 0 0 0
casa 0 0 0 0 0 0 0 0 0 0 2 0 0
blanco
0 0 0 0 0 0 0 1 0 0 1 0 0
está 0 0 0 2 0 0 0 0 0 0 0 0 0
la 0 0 0 0 0 1 0 0 0 0 0 0 0
un 0 1 0 0 0 0 0 0 0 0 0 0 1
. 2 0 0 0 0 0 0 0 0 1 0 0 0
jardín 0 0 0 0 0 0 0 0 0 0 1 0 0
gato 0 0 0 0 0 0 1 0 0 0 0 0 0
está en
el perro
ladra en
su casa
blanco está la un . jardin
gato
el 0 2 0 0 0 0 0 0 0 0 0 1 0
perro 0 0 1 0 0 0 1 1 0 0 0 0 0
ladra 0 0 0 1 0 0 0 0 0 0 0 0 0
en 1 0 0 0 1 0 0 0 1 0 0 0 0
su 0 0 0 0 0 1 0 0 0 0 0 0 0
casa 0 0 0 0 0 0 0 0 0 0 2 0 0
blanco
0 0 0 0 0 0 0 1 0 0 1 0 0
está 0 0 0 2 0 0 0 0 0 0 0 0 0
la 0 0 0 0 0 1 0 0 0 0 0 0 0
un 0 1 0 0 0 0 0 0 0 0 0 0 1
. 2 0 0 0 0 0 0 0 0 1 0 0 0
jardín 0 0 0 0 0 0 0 0 0 0 1 0 0
gato 0 0 0 0 0 0 1 0 0 0 0 0 0
está en la
el perro
ladra en
su casa
blanco está la un . jardin
gato
el 0 2 0 0 0 0 0 0 0 0 0 1 0
perro 0 0 1 0 0 0 1 1 0 0 0 0 0
ladra 0 0 0 1 0 0 0 0 0 0 0 0 0
en 1 0 0 0 1 0 0 0 1 0 0 0 0
su 0 0 0 0 0 1 0 0 0 0 0 0 0
casa 0 0 0 0 0 0 0 0 0 0 2 0 0
blanco
0 0 0 0 0 0 0 1 0 0 1 0 0
está 0 0 0 2 0 0 0 0 0 0 0 0 0
la 0 0 0 0 0 1 0 0 0 0 0 0 0
un 0 1 0 0 0 0 0 0 0 0 0 0 1
. 2 0 0 0 0 0 0 0 0 1 0 0 0
jardín 0 0 0 0 0 0 0 0 0 0 1 0 0
gato 0 0 0 0 0 0 1 0 0 0 0 0 0
está en la casa
el perro
ladra en
su casa
blanco está la un . jardin
gato
el 0 2 0 0 0 0 0 0 0 0 0 1 0
perro 0 0 1 0 0 0 1 1 0 0 0 0 0
ladra 0 0 0 1 0 0 0 0 0 0 0 0 0
en 1 0 0 0 1 0 0 0 1 0 0 0 0
su 0 0 0 0 0 1 0 0 0 0 0 0 0
casa 0 0 0 0 0 0 0 0 0 0 2 0 0
blanco
0 0 0 0 0 0 0 1 0 0 1 0 0
está 0 0 0 2 0 0 0 0 0 0 0 0 0
la 0 0 0 0 0 1 0 0 0 0 0 0 0
un 0 1 0 0 0 0 0 0 0 0 0 0 1
. 2 0 0 0 0 0 0 0 0 1 0 0 0
jardín 0 0 0 0 0 0 0 0 0 0 1 0 0
gato 0 0 0 0 0 0 1 0 0 0 0 0 0
está en la casa.
Generación de texto hacia atrás a partir de la
palabra ‘está’
Localización de la palabra ‘está’ como columna en la matriz
de frecuencias y generación de texto
hacia atrás.
el perro
ladra en
su casa
blanco está la un . jardin
gato
el 0 2 0 0 0 0 0 0 0 0 0 1 0
perro 0 0 1 0 0 0 1 1 0 0 0 0 0
ladra 0 0 0 1 0 0 0 0 0 0 0 0 0
en 1 0 0 0 1 0 0 0 1 0 0 0 0
su 0 0 0 0 0 1 0 0 0 0 0 0 0
casa 0 0 0 0 0 0 0 0 0 0 2 0 0
blanco
0 0 0 0 0 0 0 1 0 0 1 0 0
está 0 0 0 2 0 0 0 0 0 0 0 0 0
la 0 0 0 0 0 1 0 0 0 0 0 0 0
un 0 1 0 0 0 0 0 0 0 0 0 0 1
. 2 0 0 0 0 0 0 0 0 1 0 0 0
jardín 0 0 0 0 0 0 0 0 0 0 1 0 0
gato 0 0 0 0 0 0 1 0 0 0 0 0 0
está en la casa.
el perro
ladra en
su casa
blanco está la un . jardin
gato
el 0 2 0 0 0 0 0 0 0 0 0 1 0
perro 0 0 1 0 0 0 1 1 0 0 0 0 0
ladra 0 0 0 1 0 0 0 0 0 0 0 0 0
en 1 0 0 0 1 0 0 0 1 0 0 0 0
su 0 0 0 0 0 1 0 0 0 0 0 0 0
casa 0 0 0 0 0 0 0 0 0 0 2 0 0
blanco
0 0 0 0 0 0 0 1 0 0 1 0 0
está 0 0 0 2 0 0 0 0 0 0 0 0 0
la 0 0 0 0 0 1 0 0 0 0 0 0 0
un 0 1 0 0 0 0 0 0 0 0 0 0 1
. 2 0 0 0 0 0 0 0 0 1 0 0 0
jardín 0 0 0 0 0 0 0 0 0 0 1 0 0
gato 0 0 0 0 0 0 1 0 0 0 0 0 0
blanco está en la casa.
el perro
ladra en
su casa
blanco está la un . jardin
gato
el 0 2 0 0 0 0 0 0 0 0 0 1 0
perro 0 0 1 0 0 0 1 1 0 0 0 0 0
ladra 0 0 0 1 0 0 0 0 0 0 0 0 0
en 1 0 0 0 1 0 0 0 1 0 0 0 0
su 0 0 0 0 0 1 0 0 0 0 0 0 0
casa 0 0 0 0 0 0 0 0 0 0 2 0 0
blanco
0 0 0 0 0 0 0 1 0 0 1 0 0
está 0 0 0 2 0 0 0 0 0 0 0 0 0
la 0 0 0 0 0 1 0 0 0 0 0 0 0
un 0 1 0 0 0 0 0 0 0 0 0 0 1
. 2 0 0 0 0 0 0 0 0 1 0 0 0
jardín 0 0 0 0 0 0 0 0 0 0 1 0 0
gato 0 0 0 0 0 0 1 0 0 0 0 0 0
gato blanco está en la casa.
el perro
ladra en
su casa
blanco está la un . jardin
gato
el 0 2 0 0 0 0 0 0 0 0 0 1 0
perro 0 0 1 0 0 0 1 1 0 0 0 0 0
ladra 0 0 0 1 0 0 0 0 0 0 0 0 0
en 1 0 0 0 1 0 0 0 1 0 0 0 0
su 0 0 0 0 0 1 0 0 0 0 0 0 0
casa 0 0 0 0 0 0 0 0 0 0 2 0 0
blanco
0 0 0 0 0 0 0 1 0 0 1 0 0
está 0 0 0 2 0 0 0 0 0 0 0 0 0
la 0 0 0 0 0 1 0 0 0 0 0 0 0
un 0 1 0 0 0 0 0 0 0 0 0 0 1
. 2 0 0 0 0 0 0 0 0 1 0 0 0
jardín 0 0 0 0 0 0 0 0 0 0 1 0 0
gato 0 0 0 0 0 0 1 0 0 0 0 0 0
un gato blanco está en la casa.
Ya que se oculto un Mensaje el siguiente
problema es extraerlo por lo que se desarrollo el
Módulo Extractor.
Tabla de unidades léxicas
Extractor
Mensaje
Módulo Extractor
Reglas gramáticales
Texto con Mensaje
El Módulo Extractor recibe como entrada el texto con el mensaje oculto y la gramática
que indica de que tipo es el mensaje
Para extraer el mensaje que se encuentra en el siguiente texto
un gato blanco está en la casa.
Si se tiene la siguiente regla gramática
Ov
El manejador de gramáticas va verificando cada una de las palabras del texto con el mensaje
oculto,
si la palabra verificada es del tipo que indica la
gramática, la extrae, de no ser así pasa a la siguiente palabra.
un
gato blanco
está
en la casa .
p
un
gato blanco
está
en la casa .
sun
gato blanco
está
en la casa .
cun
gato blanco
está
en la casa .
v
En este caso como la palabra está es la
primera palabra que aparece del tipo v,el sistema la extrae
Como se ve en el ejemplo, el Módulo Extractor, extrae la primera palabra de tipo v que encuentra, por lo que el Módulo Ocultador debe asegurar que no se inserte una palabra de tipo v antes de la que queremos ocultar.
Con lo cual se observa que existe una relación entre el generador de
texto y el manejador de gramáticas
en el Módulo Ocultador
Por ejemplo si se tiene la siguiente regla gramatical
Op s v
y el texto con mensaje oculto
1 p 2 s 3 v 4
el Modulo Extractor, extrae la primera palabra de tipo p,
luego la que sigue de tipo s y finalmente la que sigue de tipo
v
Por lo que el Módulo Ocultador debe verificar
que no se inserte una palabra de tipo p antes de
la primera palabra a ocultar, ni una de tipo s
entre la primera y la segunda o una de tipo v entre la segunda y la
tercera
La relacion que se da entre el Módulo Ocultador y el Módulo Extractor es mediante la gramática
ya que el modulo ocultador oculta el
mensaje de acuerdo a la gramática y el extractor
extrae siguiendo la misma gramática
Con lo que la Gramática es la llave que permite ocultar y recuperar mensajes
en este sistema
Bibliografía: James Martin, Diseño de sistemas de computadores en
tiempo real.Editorial Diana. CeNaC, Organo de divulgación bimestral. Karen A. Lemone, Fundamentos de
compiladores,Editorial CECSA. Hopcroft-Ullman, Introducción a la teoría de autómatas,
lenguajes y computación. Editorial CECSA. Sheldom M. Ross, Introducción a los modelos
probabilistícos. Editorial Academic Press Johnson Baugh, Matemáticas discretas. Grupo editorial
Iberoamericana. Jagjit Singh, Teoría de la información del lenguaje y de
la cibernética. Alianza editorial.
Conclusiones