La esteganografía (del griego στεγανός steganos, "cubierto" u "oculto", y γράφω grapho, "escribir") trata el estudio y aplicación de técnicas que permiten ocultar mensajes u objetos, dentro de otros, llamados portadores, para que no se perciba su existencia. Es decir, procura ocultar mensajes dentro de otros objetos y de esta forma establecer un canal encubierto de comunicación, de modo que el propio acto de la comunicación pase inadvertido para observadores que tienen acceso a ese canal.
Una forma de diferenciar la esteganografía con la criptografía común es que la criptografía solo cifra los archivos manteniendo el archivo original visible, pero al abrirlo mostrará una secuencia de caracteres que no permitirá su lectura y para ver su contenido original es necesario conocer la clave. En la esteganografía, puede verse un archivo con un formato diferente, y para conocer su contenido original será necesario conocer la clave y el software con el que se ocultó.
Esta ciencia ha suscitado mucho interés en los últimos años, especialmente en el área de seguridad informática, debido a que ha sido utilizada por organizaciones criminales y terroristas. No obstante, no se trata de nada nuevo, pues se lleva empleando desde la antigüedad, y tradicionalmente la han utilizado las instituciones policíacas, militares y de inteligencia, y también criminales o civiles que desean evadir el control gubernamental, especialmente en regímenes tiránicos.
La esteganografía clásica se basaba únicamente en el desconocimiento del canal encubierto utilizado, mientras que en la era moderna también se emplean canales digitales (imagen, video, audio y protocolos de comunicaciones, entre otros) para alcanzar el objetivo. En muchos casos, el objeto contenedor es conocido, y lo que se ignora es el algoritmo de inserción de la información en dicho objeto.
Para que pueda hablarse de esteganografía, debe haber voluntad de comunicación encubierta entre el emisor y el receptor.
Diferencias con la criptografía Si bien la esteganografía puede confundirse con la criptografía, por ser ambas parte de los procesos de protección de la información, son disciplinas distintas, tanto en su forma de implementarse como en su objetivo mismo.
Mientras que la criptografía se utiliza para cifrar o codificar información de manera que sea ininteligible para un probable intruso, a pesar de que conozca su existencia, la esteganografía oculta la información en un portador de modo que no sea advertido el hecho mismo de su existencia y envío. De esta última forma, un probable intruso ni siquiera sabrá que se está transmitiendo información sensible.
Sin embargo, la criptografía y la esteganografía pueden complementarse, dando un nivel de seguridad extra a la información, es decir, es muy común (aunque no imprescindible) que el mensaje a esteganografiar sea previamente cifrado, de tal modo que a un eventual intruso no solo le costará advertir la presencia de la mensajería oculta, sino que, si la llegara a descubrir, la encontraría cifrada.
Motivación La utilidad del uso de la esteganografía se manifiesta en el llamado problema del prisionero (Gustavus J. Simmons, 1983). Resumidamente, en el problema del prisionero tenemos dos prisioneros, A y B, que quieren comunicarse de forma confidencial para escapar. El problema es que solo pueden intercambiar mensajes a través de un guardián. El guardián puede leer, modificar o generar él mismo los mensajes. Si el guardián detecta cualquier comunicación que pueda ser utilizada para escapar (por ejemplo, si detecta un cifrado), dejará de transmitir los mensajes. En este escenario, los prisioneros necesitan establecer un canal encubierto.
El uso de la esteganografía permite disponer de un canal encubierto de forma que es posible comunicarse sin ser detectado. La estrategia que sigue la esteganografía para resolver el problema del prisionero es esconder los datos que deben ser detectados, entre los mensajes permitidos por el guardián.
Funcionamiento y terminología La idea que sigue la esteganografía es enviar el mensaje oculto (E) “escondido” en un mensaje de apariencia inocua (C) que servirá de “camuflaje”. Esto es, se aplica una función de esteganografía . El resultado de aplicar la función (O), se envía por un canal inseguro y puede ser visto sin problemas por el guardián. Finalmente, el otro prisionero recibe el objeto O y, aplicando la función inversa , puede recuperar el mensaje oculto.Ribagorna, G. A., Estévez-Tapiador, J. y Hernández, J., "Esteganografía, esteganoálisis e Internet. Descubriendo el reverso de Internet: web mining, mensajes ocultos y secretos aparentes".
La terminología típica usada en la esteganografía es:Tesis de ingeniería en informática de Pablo Andrés Deymonnaz, "Análisis de vulnerabilidades esteganográficas en protocolos de comunicación IP y HTTP". Universidad de Buenos Aires. Marzo 2012.
Se define como esquema esteganográfico al conjunto de componentes que permite llevar a cabo la comunicación esteganográfica. El portador es todo aquel conjunto de datos que es susceptible de ser alterado para incorporarle el mensaje que queremos mantener en secreto. Puede ser de muchos tipos o formatos. Ejemplos: imagen (en sus distintos formatos), audio (en sus distintos formatos), texto plano, archivos binarios, un mensaje de protocolo de comunicación. Se habla de mensaje legítimo para referirse al mensaje transportado por el portador. Se llama mensaje esteganográfico al mensaje que queremos mantener en secreto y queremos esconder dentro del portador. Puede ser de distintos tipos o formatos. Ejemplos: imagen (en sus distintos formatos), audio (en sus distintos formatos), texto plano, archivos binarios. Estego-algoritmo es el algoritmo esteganográfico que indica cómo realizar el procedimiento de incorporación del mensaje que queremos mantener en secreto en el portador. La acción de ocultar el mensaje dentro del portador se denomina empotrar (del inglés to embed). Se llama estegomensaje al resultado de empotrar el mensaje esteganográfico dentro del portador. La acción de la recuperación, a partir del estego-mensaje, del mensaje oculto esteganográfico se denomina extraer. Por el rol desempeñado dentro del proceso esteganográfico, el emisor también se llama embebedor y el receptor, extractor. Al igual que en todo acto de comunicación convencional, es común que los roles de emisor y receptor se intercambien sucesivamente entre las partes que se comunican. Se llama esteganalista o estegoanalista a la persona que intenta determinar la existencia o ausencia de un mensaje esteganográfico. Obsérvese que basta con determinar la existencia del mensaje; no tiene que llegar al contenido en sí. Es decir, un esteganalista es el que hace estegoanálisis.Fabien A. P. Petitcolas and Stefan Katzenbeisser. Information Hiding Techniques for Steganography and Digital Watermarking. 2000. Los canales de selección son canales adicionales al portador utilizado para embeber donde se comunica qué posiciones del portador se utilizan para la comunicación esteganográfica. Por ejemplo, si el portador es un libro de texto, un canal de selección podría estar definido por una sucesión de números naturales que representan la posición de cada una de las palabras dentro del libro de texto, que se deben considerar para construir el mensaje esteganográfico.Ross Anderson. Stretching the Limits of Steganography. Cambridge University Computer Laboratory. Las clases de equivalencia corresponden a pares de elementos del portador utilizado que tienen una interpretación semántica equivalente en la comunicación legítima, pero el uso de un elemento u otro tiene un significado acordado en la comunicación esteganográfica. Por ejemplo, las palabras 'lindo' y 'bonito' son sinónimos en español y podrían utilizarse indistintamente en un contexto. Un lector no notaría la diferencia en la semántica del texto, pero puede aprovecharse para construir el mensaje esteganográfico.
La capacidad de alterar el portador de manera imperceptible es posible gracias a la existencia de redundancia en el mismo. Las alteraciones pueden realizarse tanto en el contenido como en otros parámetros; por ejemplo, en el tiempo de respuesta en la emisión del portador.
Clasificación según el estegoalgoritmo El estegoalgoritmo es el algoritmo esteganográfico que indica cómo realizar el procedimiento de incorporación del mensaje esteganográfico en el portador para obtener el estegomensaje. Según el tipo de estegoalgoritmo, es posible distinguir dos tipos de esteganografía:Gary C. Kessler y Chet Hosmer,"An Overview of Steganography".Advances in Computer volume 83.Marvin K. Zelkowitz. Academix Press 2011 esteganografía pura y esteganografía de clave secreta.
Esteganografía pura En este tipo de esteganografía, el estego-algoritmo establece un método fijo para incorporar el mensaje esteganográfico en el portador para obtener el estego-mensaje. En esta estrategia se está suponiendo que el guardián del problema del prisionero no conoce nada sobre el estego-algoritmo. Por tanto, la seguridad se basa en la oscuridad. Este enfoque para conseguir la seguridad pocas veces funciona y es especialmente desastroso en el caso de la criptografía.
Esteganografía de clave secreta En este tipo de esteganografía, el estego-algoritmo está parametrizado por una clave esteganográfica a la que se le llama estegoclave, que define cómo aplicar el algoritmo. Por ejemplo, la estegoclave podría indicar el lugar dentro del portador a partir del cual se comienza a realizar la incorporación del mensaje secreto. El emisor y el receptor deben acordar previamente tanto el estego-algoritmo como la estego-clave.
El proceso de extracción consiste en aplicar el estego-algoritmo y la estego-clave necesarios al estego-mensaje recibido para obtener el mensaje esteganográfico.
En este escenario, el guardián del problema del prisionero puede conocer el estegoalgoritmo, pero no conoce la estego-clave, que se emplea en el mismo. En esta estrategia, la seguridad se basa en el principio de Kerckhoffs. Aplicado a la esteganografía, el principio de Kerckhoffs podría incluir, como información revelable, el acceso a la información portadora antes de que se le aplique el estego-algoritmo.
Historia Estos son algunos ejemplos o historias que demuestran que la esteganografía ha estado presente desde tiempos antiguos y que constantemente va evolucionando.
Heródoto Probablemente uno de los ejemplos más antiguos del uso de que la esteganografía sea el referido por Heródoto en Las historias.Tabara, L. Breve historia de la criptografía clásica. En este libro, describe cómo un personaje tomó un cuadernillo de dos hojas o tablillas, rayó bien la cera que las cubría y en la madera misma grabó el mensaje y lo volvió a cubrir con cera regular. Otra historia, en el mismo libro, relata cómo otro personaje había rasurado a navaja la cabeza de su esclavo de mayor confianza, le tatuó el mensaje en el cuero cabelludo, esperó después a que le volviera a crecer el cabello y lo mandó al receptor del mensaje, con instrucciones de que le rasuraran la cabeza.
El científico italiano Giovanni Battista della Porta descubrió cómo esconder un mensaje dentro de un huevo cocido. El método consistía en preparar una tinta mezclando una onza de alumbre y una pinta de vinagre, y luego se escribía en la cáscara. La solución penetra en la cáscara porosa y deja un mensaje en la superficie de la albúmina del huevo duro, que solo se puede leer si se pela el huevo.
thumb|Portada de un ejemplar de Steganographia.
Primer libro