Sie sind auf Seite 1von 36

CAPITULO 4:APLICACIONES

CRIPTOGRAFIA DE VOZ

En este artículo se presenta una forma simple de encripta miento analógico de

la señal de la voz, mediante la permutación de las frecuencias usando un

método de alta simplicidad.

1 SISTEMAS CRIPTOGRÁFICOS

La criptografía nace de la necesidad de preservar la confidencialidad en la

transmisión y almacenamiento de la información. Ésta consiste en series de

algoritmos de operaciones aritmético-lógicas para mantener dicha información

fuera del alcance de intrusos. Aunque la tecnología criptográfica ha sido

altamente desarrollada de manera secreta en organizaciones como la Agencia

Nacional de Seguridad de los Estados Unidos; hoy día son desarrollados

importantes algoritmos en universidades, por investigadores y estudiantes. Por

lo que al ser sometidos dichos algoritmos al escrutinio de la comunidad

científica, se aumenta la capacidad para el desarrollo de nuevos y mejores

algoritmos. Dentro de los sistemas de encriptamiento podemos distinguir dos

tipos, el encriptamiento digital y el encriptamiento analógico. La técnica de


encriptamiento analógico basa su proceso de codificación de la información en

el reacomodo de las componentes de frecuencia del ancho de banda de la

señal, con la finalidad de hacer incomprensible la información de dicha señal

[1]. El dispositivo desarrollado, presenta un método sumamente sencillo para el

encriptamiento de la señal de voz en comunicaciones telefónicas. Realizando

encriptamiento analógico, mediante la inversión en espectro del ancho de

banda de la voz. El dispositivo de encriptamiento consiste básicamente en los

bloques mostrados en la figura 1.

2 MÉTODO DE DISEÑO

El proceso de encriptamiento de la señal de voz se realizó mediante los

siguientes pasos: 1) Primero se limitó en banda la señal proveniente del

auricular a 3.2 kHz y con la finalidad de evitar Aliasing en el momento de la


codificación de la información mediante el reacomodo de las frecuencias, para

lo cual se realizó el diseño de un filtro tipo Tschebyscheff (debido a su alta

selectividad) [2]. El diseño del filtro fue de orden cuarto, con filtros activos

conectados en cascada empleando el integrado TL084, manteniendo un rizo de

1 dB, como se puede ver en la figura 2. Fig. 2

Filtro pasabajas Tschebyscheff de cuarto orden con frecuencia de corte de 3.2

kHz. 2) Posteriormente se realiza el proceso de inversión de cada una de las

componentes de frecuencia que conforman el ancho de banda de la señal de

voz. La inversión del espectro de la señal de voz se logró por el principio básico

de la modulación AM, debido a que al realizar dicha modulación el espectro de

la señal resultante consta de dos bandas laterales, la banda lateral derecha

consiste en el espectro desplazado la frecuencia de la portadora del

modulador, y la banda lateral izquierda proporciona la imagen espejo del


espectro de la señal centrado en la frecuencia de la portadora [3]; por lo que

dicho espectro representa la codificación (o encriptamiento) en sí. Para esto se

utilizó el modulador de AM modelo MC1496, en su configuración balanceada

(con portadora suprimida). 3) Finalmente, se vuelve a filtrar la señal con el fin

de eliminar el ancho de banda trasladado la frecuencia de la portadora;

permitiendo dejar pasar sólo el que se invierte, por lo que se emplea el mismo

diseño del filtro pasa bajas anterior (con una frecuencia de corte de 3.2 kHz).

3 PRUEBAS Y RESULTADOS

Con filtros tipo Tschebyscheff de cuarto orden se obtuvo una distorsión apenas

perceptible en la señal de voz una vez que era codificada y vuelta a decodificar.

En principio se realizaron las pruebas de los bloques que conforman al sistema por

separado. En lo que al filtro Tschebyscheff se refiere, se realizó un barrido de

frecuencias desde 10 Hz a 10 KHz, comprobando que a la frecuencia de corte se tuviera

una atenuación de 3 dB, con atenuación de 80 dB por década a frecuencias mayores.

Una vez realizado el conjunto de pruebas para el proceso de encriptamiento de la

señal, se procedió a realizar pruebas de calidad en la transmisión y recepción de la voz.

No se presentó ningún tipo interferencia de canal adyacente, ni de ningún otro tipo. Se

obtuvo una calidad de voz aceptable, aunque un poco atenuada a diferencia de la

comunicación por voz sin el dispositivo. Finalmente se realizó una prueba con un

walkman a la entrada del encriptador, teniéndose a la salida una apreciación nula de la

conversación que se llevaba a cabo. También se realizó la prueba de que no se


entendiera la conversación de una persona a menos de que se tuviera el

desencriptador. A pesar de requerir cada uno de los filtros activos alimentaciones a

+12 volts y –8 volts, se utlizaron pilas de 12 volts, regulando los 8 volts. El proceso de

encriptamiento resulta ser sencillo, la señal de voz transmitida resulta ser inentendible

a menos de que se tenga el dispositivo para desencriptar la señal de voz transmitida.

También se tomaro en cuenta las redes de acoplamiento para las impedancias que

presenta el micrófono y bocina de auricular. En la figura 3 podemos ver el modelo final

del encriptador.

CONCLUSIONES

Este dispositivo representa una buena opción para el encriptamiento de la

señal de voz a un costo pequeño, ofreciendo seguridad en la comunicación

telefónica, además de permitir (mediante un switch) comunicación con otros

usuarios que no tengan el dispositivo de encriptamiento en su teléfono.


BIBLIOGRAFÍA

Valery Korjik, The foundations of cryptography with application on

telecommunications security A member of IACR

Fink Donald G., Christiansen Donald, Manual de Ingeniería Electrónica, “Filtros

y Atenuadores”, (McGraw-Hill, México), 1-61, (2000)

Rigoberto Mendoza Estrada, Dispositivo de encriptamiento de voz para

comunicación telefónica utilizando un scrambler, Tesis de Licenciatura, (UAM,

México), 67, (2002).

MAQUINA ENIGMA

Después de la primera guerra mundial, el inventor alemán Arthur Scherbius y

su amigo Richard Ritter fundaron una empresa de ingeniería y crearon la


máquina Enigma con la finalidad de venderla no solo al ejército sino también a

muchas empresas del país. La máquina iba en una caja de dimensiones 34cm

x 28cm x 15cm y pesaba unos 12 kg.

Básicamente, estaba formada por tres componentes conectadas por cables

que combinados constituían una compleja máquina para cifrar: Un teclado para

escribir cada letra del texto en claro; una unidad modificadora formada por tres

rotores, un clavijero y un reflector; y un tablero donde quedaba iluminada la

letra cifrada.
Cada rotor era un disco con dos caras y con 26 contactos eléctricos, uno por

cada letra del alfabeto. El clavijero estaba colocado entre el teclado y el primer

rotor, con el objetivo de intercambiar 6 pares de letras. Mientras que el

reflector conseguía que al codificar un mensaje cifrado, usando la mismas

posiciones iniciales de los rotores y los mismos pares de letras interconectadas

en el clavijero, se obtuviese el mensaje en claro.

Podemos imaginar el efecto de un rotor como el de una permutación en las

posiciones de las letras del alfabeto, con la característica que cada vez que se

codifica una letra, el rotor se desplaza una posición y, por tanto, la permutación

sobre el alfabeto es distinta. Sin embargo, al codificar 26 veces una letra

obtendríamos su codificación inicial.Para evitar precisamente esa repetición,

nunca deseada en criptografía, la máquina constaba de tres rotores, de manera

que al codificar una letra saltaba una posición el rotor más rápido, el de más a
la derecha. Una vez había dado una vuelta entera, empezaba a rotar el de en

medio (para cada nuevo movimiento había que esperar los 26 movimientos del

rotor rápido) hasta llegar al menos rápido que era el de la izquierda.

En un principio Scherbius no tuvo el éxito que imaginaba vendiendo máquinas

Enigma, sino más bien al contrario. Sin embargo, unos años más tarde, el

ejército alemán se decidió a comprar la máquina Enigma a raíz de dos informes

británicos publicados en 1923, sobre material criptográfico interceptado en la I

guerra mundial: The World Crisis de Winston Churchill e Historia oficial de la I

guerra mundial publicada por la Marina Real británica


En 1925 Scherbius se lanzó a fabricar máquinas Enigma en serie. El

ejército alemán durante los siguientes años compró más de 30000

máquinas Enigma y empezaron a enviar mensajes cifrados. Cada mes los

operadores de Enigma recibían un nuevo libro de códigoscon las claves que

se debían usar cada día:

Las posiciones del clavijero: A/D C/G M/P R/S T/F L/U

La disposición u orden en que se colocaban los rotores: 2-1-3

Las posiciones iniciales de los rotores: S M E

El número total de claves de esta primera máquina Enigma era

Descifrar Enigma parecía inabordable...


Primeros intentos de descifrar Enigma

En 1926, criptoanalistas británicos y de distintos países empezaron a

interceptar mensajes procedentes de la máquina Enigma, pero sin posibilidad

alguna de descifrarlos, hasta que en 1931 Hans-Thilo Schmidt, resentido por

como lo había tratado el ejército alemán, pasó a los aliados documentación de

Enigma, que les permitiría crear una réplica. Ello no significaba aún poder

descifrar los mensajes, pero sí el reto de saber cómo encontrar la clave.

En Polonia, nación que se sentía amenazada por si estallaba una segunda

guerra, decidieron reforzar su oficina de criptoanálisis, el Biuro Szyfrów,

fichando un grupo de matemáticos, entre los que se encontraba Marian

Rejewsky (1905-1980).

Como precaución los alemanes decidieron usar la clave del día sólo para

transmitir la clave de mensaje (las posiciones iniciales de los rotores). No

obstante, el uso repetido de una sola clave del día debilita el sistema.

Rejewsky, intentó aprovechar las repeticiones de las codificaciones de las

claves de mensaje. Como la clave del mensaje, p.e. C G H, se tecleaba dos


veces para evitar errores, se deducía que la 1ª y la 4ª letra de la codificación

correspondían a la misma letra del mensaje original. Al igual que con la 2ª y la

5ª y con la 3ª y la 6ª.

C G H C G H —————> D V Y B Z X

Rejewsky, si durante el día conseguía suficientes mensajes, podía completar

la tabla de relaciones:

1ª letra A B C D E F G H I . . . . . W X Y Z

4ª letra H F W B G L R C P . . . . .A T S I

Pero, ¿qué patrones se podían deducir de estas tablas? Rejewsky se fijó en las

cadenas de letras conectadas, en el sentido que provenían de la misma letra

original:

A—>H—>C—>W—>A

La longitud de estas cadenas no depende de los pares de letras

intercambiadas por el clavijero, sólo de la posición de los rotores, de manera

que el número de claves posibles se reduce de 1016 a 6 x 263=105456.

Rejewsky había simplificado el problema, encontrando primero la clave del día

y luego las posiciones del clavijero. Aún así, tardaron un año en completar el

catálogo de claves. Más adelante, el equipo de Rejewsky construyó una

máquina, a la que denominaron bomba, capaz de comprobar siguiendo su

sistema de catalogación la clave correcta. Puesto que los rotores se podían

disponer en seis posiciones distintas, usaban seis bombas trabajando en

paralelo para conseguir una mayor eficiencia.

En diciembre de 1938, los criptógrafos alemanes aumentaron la seguridad de

Enigma, con dos nuevos rotores que podían intercambiar con los tres que

tenían. Polonia se temía lo peor. Los mensajes que interceptaban se habían


vuelto de nuevo indescifrables. Para no perder los logros conseguidos invitaron

a Varsovia a un equipo de criptoanalistas franceses y británicos para

mostrarles las réplicas de Enigma que habían construido. El 1 de septiembre

de 1939, Adolfo Hitler invadía Polonia y la guerra comenzaba.

Alan Turing en Bletchley Park

En Bletchley Park, sede de la Escuela Gubernamental de Códigos y Cifras,

situada en el condado de Buckinghamshire, conocían en otoño de 1939 las

características de Enigma y dominaban las técnicas de Polonia que les

permitían descubrir en horas la clave del día. Creían, sin embargo, que se

acabaría la repetición de las claves y necesitaban encontrar nuevas

alternativas a la idea de Rejewsky.

En septiembre de 1939 llegaba Alan Turing a Bletchley Park para incorporarse

al equipo de criptoanalistas. Turing enseguida intuyó, que de entre toda la

información que tenían acumulada, se podían beneficiar de los puntales,

fragmentos de texto que se pensaba estaban en el mensaje (con mucha

probabilidad), como wetter (tiempo en alemán). Y dentro de los puntales se fijó

en los rizos, cadenas de pares de letras (en claro - cifrada) que formaban

ciclos. Así, en el siguiente ejemplo se tiene el rizo: W-T, T-E, E-W.

o Posición Enigma S S+1 S+2 S+3 S+4 S+5

o Texto en claro W E T T E R

o Texto cifrado T W P E B Y

Según el funcionamiemto de Enigma, cada letra corresponde a una posición

distinta de los rotores, de manera que si para la primera letra suponemos que
los rotores se encuentran en una posición S, para la siguiente habría que

desplazar una posición el rotor más rápido y así sucesivamente. Entonces

Turing tuvo una de las ideas más geniales. Imaginó una nueva máquina

formada por tres máquinas Enigma con las posiciones de los rotores

desplazadas según el rizo interconectadas de manera que se anulara el efecto

del clavijero.

Bletchley Park consiguió presupuesto para convertir la idea de Turing en una

máquina que llamaron bomba como las primeras réplicas de Enigma de

Rejewski. El 14 de marzo de 1940 llegaba la primera bomba prototipo a la que

llamaron Victory. Y el 8 de agosto la nueva bomba llamada Agnes. Si bien las

bombas representaron un gran avance, no siempre conseguían descifrar los

mensajes. Había que probar con distintos puntales y una vez hallado el

correcto había que encontrar la posición adecuada en el mensaje donde

ubicarlo, para entonces iniciar la desencriptación con una bomba.

Otro factor que dotaba a Enigma de una gran complejidad era que las

componentes de la máquina que el ejército alemán usaba no siempre eran las

mismas en todas las zonas o áreas. Así, las máquinas de la marina, las más

sofisticadas, tenían 8 rotores distintos y el reflector podía colocarse según 26

orientaciones distintas. Estas dificultades añadidas hacían que el equipo de

Bletchley Park aún no pudiera descifrar los mensajes que se transmitían por
radio los submarinos alemanes y que contaban con una clara ventaja en la

batalla del Atlántico. Junto a esta situación, Turing tuvo que trasladarse a

Estados Unidos desde noviembre de 1942 a marzo de 1943 para diseñar un

sistema de cifrado para las comunicaciones entre Roosevelt y Churchill.

En circunstancias extremas, los servicios británicos secretos sabían que había

que recurrir a otras estrategias. Una de ellas que resultó decisiva consistió en

infiltrarse en un barco alemán para conseguir un libro de códigos. Esas

acciones en Bletchley Park eran denominadas pellizcos. Con ello, el equipo de

criptógrafos pudo lograr el descifrado de los mensajes navales y conocer así la

ubicación de sus submarinos.

Los trabajos de los criptoanalistas de Bletchley Park, conocidos también

como Inteligencia Ultra, fueron determinantes pues para acortar la guerra. La

mansión y los barracones de Bletchley llegaron a contar con casi 10000

personas que trabajaban en distintos turnos y a disponer de más de 200

bombas. No obstante, después de la guerra, por razones de prudencia y de

táctica militar, las bombas se desmantelaron y todos sus logros se mantuvieron

en secreto. A finales de los setenta, el Servicio de Inteligencia británico permitió


al capitán W.F. Winterbotham escribir el libro The Ultra Secret publicado en

1974.

Desafortunadamente, para algunos, como Alan Turing, la publicación del libro

llegó demasiado tarde...

La lucha entre criptográfos y criptoanalistas existe desde tiempos muy remotos

y continúa despertando un gran interés un siglo después del nacimiento de

Turing. Gracias a ello, el avance de la criptografía, en particular, en estas

últimas décadas ha sido espectacular. Parece, pues, impredecible aventurar

que nos deparará en un futuro próximo.

SOBRE LOS AUTORES

Este blog es una obra colectiva en la que participarán científicos y expertos

españoles y extranjeros cuya obra haya bebido de las aportaciones de Alan

Turing. Aunque principalmente recogerá los avances científicos en la

Informática, abarcará otras opiniones sobre la importancia de la misma en otros

ámbitos: la Medicina, la Física, la Política, la Economía. El blog está coordinado

por Pedro Meseguer y Juan José Moreno Navarro.


Esteganografía

Introducción:

“Un efecto esencial de la elegancia es ocultar sus medios.”

Si hablamos rigurosamente de la definición de esteganografía, veremos que, mediante

distintas soluciones técnicas, lleva aplicándose siglos en la vida del ser humano (casi

siempre ligado al espionaje o al secreto). No obstante, aunque es bueno conocer su

origen, nosotros nos vamos a centrar en sus aplicaciones actuales en el campo de la

informática y las comunicaciones. Para los que no conozcan absolutamente nada sobre

esta técnica, y antes de ver definiciones rigurosas, podemos decir que la

esteganografía es una forma cómoda de trabajar con meta-información, es decir,

información dentro de la información. En otros tiempos la información que rodeaba a

una persona era transportada por unos canales muy definidos (correo, teléfono...) y de

forma limitada; pero eso es algo que en las últimas décadas ha cambiado de forma

radical. El actual desarrollo de la tecnología computacional y las telecomunicaciones

(cuyas culminaciones son el ordenador personal e Internet respectivamente) han

rodeado completamente nuestras vidas de torrentes de información, vivimos de hecho

rodeados de un continuo “ruido de fondo”. Si nos paramos a pensar en la información

que extraemos al visitar una web, y la cantidad real de información que contiene,

podemos ver que el vivir en un medio ruidoso nos hace en cierto modo impermeables

a la información no deseada, actuando como “cribas humanas” que separan el grano

de la paja en la Gran Telaraña Mundial. Ese enorme ruido de fondo, ese enorme

remanso de información que supone Internet, es el perfecto caldo de cultivo para las

técnicas esteganográficas. Cuanta más información y cuanto más fácilmente sea ésta
ignorada, más fácil es que la meta-información pase completamente desapercibida al

resto del mundo, del resto del impermeable mundo.

Historia de la esteganografía

Del griego στεγανοζ (steganos, encubierto -con el sentido de oculto-) y γραπτοζ (graphos,

escritura) nace el término esteganografía: el arte de escribir de forma oculta. Aunque κρυπτός

(criptos, oculto) y στεγανοζ (steganos, encubierto) puedan parecer en un principio términos

equivalentes, o al menos similares, son cosas completamente distintas. La criptografía es el

arte de escribir de forma enigmática (según la Real Academia Española), mientras que la

esteganografía es el arte de escribir de forma oculta. Puede que sigan pareciendo similares,

pero las connotaciones toman mucho valor al analizarlo detenidamente: la criptografía tiene

su fuerza en la imposibilidad de comprender el mensaje, mientras que la esteganografía la

tiene en el desconocimiento de que el mensaje siquiera existe. Aplicado al campo informático,

podemos dar los siguientes ejemplos: nosotros podríamos robar un mensaje cifrado con

relativa facilidad, pero aún sabiendo que contiene información importante seríamos incapaces

de obtener información alguna de él (si la criptografía ha cumplido con su cometido). Respecto

a la esteganografía, nosotros podríamos capturar el tráfico completo de un individuo y tratar

de analizarlo completamente (y el “ruido de fondo” hoy en día es mucho), sin tener la certeza

de que haya o no un mensaje oculto. Espero que quede claro desde un principio que, en contra

de lo que algunas personas dicen, la esteganografía NO es un tipo de criptografía: son técnicas

distintas e independientes, si bien pueden complementarse entre ellas (y de hecho lo suelen

hacer).
Métodos

Métodos clásicos

La esteganografía da sus primeros pasos en la antigua Grecia. Se cuenta en “Les

Històries d'Heròdot” que Demeratus quería comunicar a la ciudad de Esparta que

Xerxes tenía planes para invadir Grecia. Para evitar ser capturado por espionaje en los

controles, escribió sus mensajes en tablas que luego fueron cubiertas con cera, de

forma que parecían no haber sido usadas. Ésta es posiblemente una de las primeras

manifestaciones en la historia de mensajes esteganografiados. Otro método usado

durante siglos consistía en tatuar al mensajero (generalmente un esclavo) un mensaje

en la cabeza afeitada para después dejarle crecer el pelo y enviar así el mensaje oculto.

Cifrado nulo (Null Cipher) El método de escritura de meta-información en un texto es

usado desde hace siglos, y sigue siendo usado hoy en día. Ésto es debido a que se trata

posiblemente de uno de los métodos más sencillos de ocultar información. Consiste en

escribir un texto aparentemente inofensivo donde, mediante algún mecanismo

conocido por el legítimo receptor de la información (actualmente hablamos de

algoritmos y claves), subyace la información realmente importante. Veamos un

ejemplo de un mensaje real enviado por un espía alemán durante la Segunda Guerra

Mundial: Apparently neutral's protest is thoroughly discounted and ignored. Isman

hard hit. Blockade issue affects pretext for embargo on by products, ejecting suets and

vegetable oils. Si de este inocente texto extraemos la segunda letra de cada palabra,

obtendremos este otro mensaje: Pershing sails from NY June 1 Aquí vemos lo fácil que

es esconder información en textos, así como comprendemos la necesidad de gran


cantidad de información (ruido) para ocultar la auténtica información de forma que no

llame la atención.

Tinta invisible

Aunque el método de escritura con tinta invisible es usado desde la edad media, es en

la Segunda Guerra Mundial cuando adquiere una importancia capital. Fue usado muy

activamente por la resistencia en los campos de prisioneros nazis. Generalmente se

usa de la siguiente forma: en primer lugarse escribe una carta completamente normal,

y después se escribe, entre las líneas de esa carta, otro texto donde está la información

importante. Era habitual el uso de vinagre, zumos de frutas u orina, aunque hoy en día

existen compuestos químicos específicos que sirven igualmente y no desprenden

olores tan fuertes (que serían fácilmente detectados por un perro entrenado). Al

calentar el papel, la escritura oculta se hace visible.

Micropuntos

La tecnología de los micropuntos fue inventada por los alemanes durante la Segunda

Guerra Mundial y fue usada de forma muy activa durante la época de la guerra fría. La

técnica se basa en esconder puntos minúsculos en fotografías, tan pequeños que para

el ojo humano -e incluso para instrumentos ópticos básicos como lupas- resultan

invisibles, pero que forman un patrón de información significativa. Debido a la

naturaleza analógica de esta técnica, resultaba fácilmente detectable para los servicios

de inteligencia, si bien advertir la presencia de mensajes esteganografiados no siempre

significa que puedan ser legibles. Aún así, descubrir la presencia de un mensaje

esteganografiado se considera un fracaso de la esteganografía que lo soporta, pues la

imposibilidad de comprender su contenido conforma su capa de cifrado.


Técnicas actuales

Actualmente la esteganografía está irremisiblemente ligada a los ordenadores, que le

han proporcionado el medio necesario para ser efectiva, y del que durante siglos no

pudo disponer. Así mismo, estáíntimamente ligada a la criptología en general y a la

criptografía en particular. Hoy en día se usan multitud de técnicas esteganográficas,

pero todas se basan en los mismos principios de ocultación de información. Este

punto, al ser el eje central del documento, lo veremos en detalle más adelante. Ahora

me gustaría dejar una opinión personal sobre criptografía, esteganografía y la sociedad

actual: Como ya comenté en el documento de Criptosistemas Informáticos, a los

gobiernos nunca les hizo demasiada gracia la criptografía, esteganografía... y en

general cualquier método que pueda suponer datos fuera de su control. Gracias a los

ordenadores personales, y al software libre en gran medida, técnicas antes reservadas

a unos pocos están ahora al alcance de cualquiera... hasta de las peores personas.

Todo esto viene por la campaña de acoso y derribo que ciertos sectores

norteamericanos emprendieron contra la criptografía y esteganografía en general,

especialmente contra PGP y su creador Philip Zimmermann, al publicarse que esta

clase de técnicas fueron supuestamente utilizadas por la organización terrorista

AlQaeda para transmitir información previa a los atentados del 11 de Septiembre en

Nueva York. Señores: no hay medios culpables, sino personas culpables.


Bases de la esteganografía

El desarrollo de la informática e Internet ha supuesto el marco perfecto para

que la esteganografía alcance su mayoría de edad. Los avances en

computación nos proporcionan medios para calcular rápidamente los cambios

necesarios en la ocultación de un mensaje, e Internet proporciona los medios

necesarios para transportar grandes cantidades de información a cualquier

punto del planeta. La esteganografía actual se basa en esconder datos binarios

en la maraña de bits que supone un fichero. Los bits que componen el mensaje

a ocultar se introducen (bien sea añadiéndolos, o realizando operaciones

aritméticas con los originales) en el fichero ya existente, procurando que el

fichero resultante después de realizar los cambios parezca el original. ¿Cómo

logramos que el fichero resultante no parezca haber sido modificado? Depende

de qué tipo de fichero estemos modificando. Prácticamente cualquier tipo de

fichero es bueno para ocultar datos en su interior, pero hay algunos (imágenes

y sonido principalmente) que resultan ideales para este cometido, por motivos

que más adelante comentaremos. Así mismo existen ciertos programas

especializados en ocultación de información en sectores de disco no usados.

Sea cual sea el tipo de información que queramos esteganografiar, y sea cual

sea el medio en el que queremos hacerlo, hay ciertas reglas básicas: - Toda

información (texto ASCII, hexadecimal, código morse...) que queramos

introducir, debe ser primero convertida a binario. Si bien cualquier base

numérica es válida, la comodidad trabajando con binario es mucho mayor. -

Nunca hay que permitir que un supuesto atacante obtenga el fichero original

(anterior a la modificación), pues permitiría, mediante comparación, establecer


pautas de cambios en la información. Esto podría llevar en última instancia a

desentrañar el mensaje oculto. - Las cabeceras de los ficheros -salvo

excepciones- NO deben ser modificadas. - No transmitir la clave o algoritmo

esteganográfico por un medio inseguro. Aunque la esteganografía

computacional clásica consiste en la modificación binaria del fichero que sirve

de canal, existen ciertas técnicas para casos particulares de ficheros que

también son válidas (aunque complicadas de hacer “a mano”, con lo cual

dependemos de algún tipo de software... cosa que no queremos). Un ejemplo

de estas técnicas es la adición de mensajes ocultos a los ficheros de sonido

mediante superposición de capas de sonidos que no resultan audibles para el

oído humano, pero que sí contienen información. Así mismo, también he

encontrado documentación de técnicas basadas en ocultación de mensajes en

ficheros de imagen creados con potentes programas de tratamiento gráfico

(como Gimp o Photoshop) mediante el uso de capas transparentes donde se

alojaba la información. Al igual que en el caso anteriormente citado, no

considero esta técnica segura en absoluto. Así pues, yo trataré únicamente la

esteganografía al nivel del bit (mediante editores hexadecimales)

Ficheros interpretados

Antes de ver los tipos más comunes de ficheros interpretados usados en

esteganografía, vamos a echar un vistazo a algunos detalles previos cuya comprensión

es muy conveniente para entender la esteganografía.


¿Qué es un fichero interpretado?

Entre los ficheros que encontramos en nuestro disco duro encontramos

principalmente dos grupos: ficheros interpretados y ficheros ejecutables. Los ficheros

ejecutables son los que mandan instrucciones al procesador (a través del sistema

operativo y su núcleo o kernel), mientras que los ficheros interpretados son aquellos

usados para leer o escribir información, pero siempre mediante algún software. Para

entender esto más fácilmente, pensemos en situaciones cotidianas. Al abrir una

fotografía PNG ó JPG con nuestro software de imagen favorito (Gimp, Photoshop...)

estamos leyendo un fichero interpretado (la fotografía) mediante un software que

previamente ejecutamos (mediante el fichero ejecutable). En este proceso, en primer

lugar ejecutamos el fichero ejecutable que, a través del SO, manda instrucciones al

procesador, y en segundo lugar ese software ya arrancado interpreta la información

contenida en una imagen y envía las instrucciones necesarias para poder ver en

pantalla esa información ya procesada. Existen unos ficheros denominados “scripts”

que en determinados casos, pese a ser ficheros interpretados, son capaces de ejecutar

código en el procesador (aunque siempre mediante un intérprete). Es el caso de, por

ejemplo, programas escritos en bash scripting (ejecutados por bash, sh...) o en perl

(ejecutados por el intérprete de perl). Aunque hay quien los considera ejecutables y

quien no, nos es indiferente, porque en cualquier caso no son muy útiles con fines

esteganográficos, debido a que en su mayoría se trata de ficheros de texto plano.


Ficheros de imagen

Las imágenes es de lejos el tipo de fichero más utilizado para esteganografiar

mensajes ocultos. Conviene puntualizar que hay distintos tipos de ficheros de

imagen:

- Windows BitMaP (BMP): Es el formato gráfico más simple, y aunque

teóricamente es capaz de realizar compresión de imagen, en la práctica jamás

se usa. Consiste simplemente en una cabecera y los valores de cada pixel de

la imagen (ocupando cada pixel 4, 8, 16, 24 ó 32 bits según la calidad del color)

empezando de abajo hacia arriba y de izquierda a derecha. Su principal ventaja

es la sencillez (es el formato más indicado para realizar esteganografía). Su

mayor inconveniente es el inmenso tamaño que ocupan.

- PC Paintbrush (PCX): Este tipo de fichero es una evolución del mapa de bits

tradicional. En PCX se usa el algoritmo de compresión RLE. Mediante RLE

cuando dos o más pixels consecutivos tienen el mismo color, el algoritmo

guarda la información del color y el número de pixels que lo usan (para la

posterior visualización). El criterio para almacenar el número de pixels usando

el color es el siguiente: si el byte es menor o igual que 192, corresponde a un

único pixel, pero si es superior a 192 el número de pixels repetidos nos lo dan

los seis bits menos significativos del byte (ponemos a cero los dos bits más

significativos) y el color nos lo da el byte siguiente. Como ventajas tiene la

sencillez del algoritmo (aunque, como ya veremos, este formato de compresión

hace mucho más tedioso la realización de esteganografía), y como

inconveniente, la escasa compresión que obtenemos en fotografías (que tienen

mayor variedad de pixels), que al fin y al cabo es el mayor uso de imagenes.


- Graphics Image Format (GIF): Es uno de los mejores formatos de compresión

(sobre todo para imágenes con grandes áreas de un mismo color), además de

ser la opción más sencilla para animaciones vectoriales (flash y otros métodos

más caros y complejos aparte...). El formato GIF89a además soporta

transparencias y entrelazado. Usa el algoritmo de compresión LZW (usado en

compresión de ficheros también), mucho más complejo que RLE. Su principal

punto débil es la limitación a 256 colores (8 bits) de la paleta de color, lo cual lo

hace desaconsejable para cualquier tipo de fotografía o imagen realista. Su

principal ventaja es la enorme compresión (cosa que nos complica

sobremanera la esteganografía) y la capacidad de uso de transparencias y

entrelazado, mientras que su mayor defecto es la escasa paleta de colores.

Ficheros de sonido

Los ficheros de sonido son también utilizados a menudo en técnicas

esteganográficas. Echemos un vistazo a los tipos de ficheros de sonido más

comunes:

- Waveform Audio File Format (WAV): Se trata del formato de sonido

desarrollado por Microsoft para su sistema operativo Windows. Se compone de

una cabecera de 43 bytes y un conjunto arbitrario de bytes que contienen las

muestras una tras otra, sin ningún tipo de compresión y con cuantificación

uniforme. Al ser un formato realmente sencillo, es muy útil para realizar

tratamiento digital de sonido. Su principal ventaja es la sencillez del formato, y


su mayor inconveniente la cantidad de espacio requerido (una muestra de 10

segundos en calidad de CD -PCM, 44 KHz, 16 bit, estéreoocupa 1,6 Mb).

- Motion Picture Experts Group - Audio Layer 3 (MP3): Sin duda el más

famoso de todos los formatos de audio. Este formato utiliza un algoritmo de

compresión con pérdida de información, basándose en las limitaciones del oído

humano: somos sensibles a las frecuencias medias, pero poco perceptivos con

las altas o bajas; y además percibimos mal los sonidos bajos que suenan a la

vez que sonidos muy fuertes (efecto de ocultamiento). Así pues, eliminando los

sonidos que no oímos, logra un ratio de compresión de hasta 12:1. Su principal

ventaja, sin duda, es la gran compresión y la poca pérdida de calidad que tiene,

y su principal inconveniente es la pérdida inevitable de información.

- OGG Vorbis (OGG): Este formato se desarrolla para constituir una

alternativa totalmente libre a mp3. Aunque es un formato aún muy joven (aún

no hace dos años de la finalización de la versión 1.0), tiene mucho que decir,

pues tiene un sistema de compresión similar al de mp3, pero logrando mayores

ratios de compresión (ocupa menos) y una mayor calidad de sonido. El

principal obstáculo para la implantación de ogg es la “estandarización” de mp3:

reproductores portátiles, equipos de audio, reproductores DVD domésticos... La

principal ventaja de ogg es la mayor compresión y calidad con respecto a mp3,

así como ser 100% libre de patentes. Su principal inconveniente, como en mp3,

es la pérdida de información en el proceso de compresión. La representación

de la información en los ficheros de sonido se realiza generalmente mediante el

registro consecutivo de las muestras que componen el sonido. Al igual que

ocurría con los ficheros de imagen, el sonido es representado siempre en forma

de bits, y cada vez con una calidad mayor (mientras redacto esto, estoy
escuchando un mp3 de 128kbit y 44100Hz, lo cual supone una cantidad muy

grande de información...), de forma que para nuestros experimentos

esteganográficos podremos jugar con los bits menos significativos de la

información. En el sonido ocurre una cosa muy curiosa: nos da prácticamente

igual que la calidad sea alta o baja, pues en calidades altas la cantidad de bits

usados para representar el sonido es muy alta, y un cambio ínfimo no influye

en el resultado; mientras que en los de calidad baja, aunque la modificación

sea más llamativa, al tratarse de un sonido de baja calidad (por ejemplo calidad

de radio), cualquier modificación puede pasar inadvertida como ruido de fondo.

La forma de introducir los datos es la misma que ya hemos visto en el caso de

ficheros de imagen.

Ficheros ejecutables

¿Esconder datos en ficheros ejecutables? ¿Es eso posible? SÍ, aunque se trata

de una técnica compleja que no siempre da buenos resultados. Antes de entrar

al meollo de la cuestión, conviene hacer una anotación: si bien para

comprender esta parte no necesitaremos conocimientos específicos, si

queremos realizar de forma seria esta técnica debemos tener ciertos

conocimientos sobre virus informáticos e ingeniería inversa (desensamblado,

crackeo...), así como también de programación en lenguaje ensamblador

(AT&T e Intel, según trabajemos con ficheros ELF o Win32 PE). Para entender

cómo funciona esta técnica tenemos que echar un vistazo al modo de trabajo

de los virus que infectan ejecutables. Este tipo de virus hoy día no son muy

comunes, pues han sido desplazados por los omnipresentes gusanos, pero

hace unos cuantos años era el tipo de virus más común. Según su técnica de

infección podíamos distinguir dos tipos de virus: El primer tipo inyecta su código
al final del ejecutable e introduce en algún lugar libre del mismo una instrucción

de salto incondicional (JMP) hacia el área que contiene el código del virus. El

principal efecto es el aumento de tamaño del fichero con respecto a la versión

sin infectar (dada la inyección de código). El segundo tipo, mucho más

complejo de programar y mucho más raro de encontrar, busca áreas libres en

el ejecutable (debido al alineamiento) y distribuye su código en esos “huecos”

del fichero, uniendo todo el código mediante diversas instrucciones de salto.

Los efectos de este complejo método de infección son principalmente que el

fichero sigue ocupando el mismo espacio en disco y que las compañías

antivirus se muerden las uñas a la altura del codo para crear rutinas de

desinfección para estos bichos. Nosotros no queremos infectar nada, pero sí

pensamos que no estaría mal poder ocultar información en esos huecos libres

que sabemos que existen.

Esteganografía avanzada

La esteganografía es un arte complejo y con muchos matices. Sin llegar aún a

la combinación de esteganografía y criptografía, es posible el uso de

determinadas técnicas avanzadas que permiten aumentar la eficacia de una

información oculta mediante esteganografía. Veamos alguna:

Uso de múltiples claves

Esta técnica es heredada directamente de la criptografía, pero con distinta

forma de aplicación. Consiste en usar distintas codificaciones para cada

porción arbitraria del mensaje a ocultar. Así, una frase de cinco palabras puede

tener una clave de codificación para cada una de las palabras: en la primera

restamos una unidad en los ceros y sumamos una unidad en los unos, en la
segunda realizamos lo mismo pero invirtiendo el orden de los bits, en la tercera

realizamos el XOR de los bits... Naturalmente la clave ha de ser conocida por el

destinatario.

Esteganografía en capas

Mediante esteganografía en capas establecemos una relación lineal entre los

elementos ocultos. Así, la codificación de la segunda palabra o letra de un

mensaje depende de la primera (puede depender del último valor de la cifra,

del último valor modificado, de la posición...). Así establecemos un orden

estricto de decodificación que impide obtener completamente el mensaje sin la

primera parte, con lo cual únicamente debemos comunicar la clave para

obtener esta parte y la pauta a seguir para encadenar los fragmentos.

Adición de ruido

Aunque en un mensaje esteganografiado TODO el fichero es considerado

ruido, podemosañadir ruido en el proceso de esteganografiado. Así, además de

modificar los bits necesarios para inyectar nuestro mensaje, podemos modificar

unos cuantos bits aleatorios del mensaje de forma que aún teniendo el fichero

original, un posible atacante deba conocer el sistema de codificación usado.

Uso de distintas magnitudes

Aunque lo habitual es variar en 1 bit el byte del mensaje original, nada nos

impide variarlo en más bits. Así, podemos establecer claves complejas, como

por ejemplo: ocultamos una frase de cinco palabras, y al ocultar la primera de

las palabras sumamos 1 bit en la codificación de la primera letra, 2 bits en la

codificación de la segunda, 3 bits en la tercera... hasta que vuelva a aparecer

una modificación de 1 bit, que significará el inicio de otra palabra. Mientras


trabajemos con ficheros que usen mucha información (imágenes de 24 bits o

más por ejemplo) no se notará que variemos la escala en 1 ó 10 unidades, y

nos proporciona untipo de clave más compleja.

Otras técnicas

Existen muchas otras técnicas esteganográficas que permiten aumentar la

complejidad y seguridad, tantas como queramos idear nosotros mismos. Lo

ideal es que cada uno idee y use su propia técnica.

Esteganografía y criptografía

Como ya comentamos al principio del presente documento, la esteganografía hoy día

está íntimamente ligada a la criptografía. Teniendo unos conocimientos básicos de

criptografía y esteganografía podemos ocultar nuestros datos con un grado de

seguridad sorprendentemente alto (NOTA: Para los interesados en la criptografía,

tengo publicado un documento sobre el tema en mi web). Mediante técnicas

criptográficas como las usadas por PGP (Pretty Good Privacy) podemos hacer nuestros

datos completamente ilegibles, pero un fichero cifrado con PGP tiene una estructura

muy específica que lo hace reconocible de inmediato. En ciertos países el gobierno

controla a la población hasta el extremo de controlar la información que emiten a la

red (por ejemplo en China), por lo que cualquier dato cifrado sería interceptado de

inmediato. Podemos comparar la criptografía a tener alarma en casa: nuestra


seguridad aumenta muchísimo, pero todos los que vean las medidas de seguridad

sabrán que tenemos cosas importantes que guardar (por norma general se cifran

únicamente los contenidos muy importantes). Mediante técnicas esteganográficas

podemos hacer que cualquier información pase inadvertida (subyaciendo en

información inofensiva), pero la seguridad intrínseca de la esteganografía para datos

importantes no es mucha. Mediante la combinación de estas dos técnicas

estableceremos dos capas en la seguridad de la información: la primera capa, más

externa, es la esteganográfica; y la segunda, interna, la criptográfica. Cada una de las

capas tiene un cometido en esta peculiar simbiosis: la capa criptográfica se encarga de

la seguridad de los datos (pues aunque la esteganografía sea un medio de proteger

datos, no es comparable al cifrado) mientras que la capa esteganográfica protege la

integridad de la capa criptográfica. Aunque nada nos impide realizar nuestros cifrados

a mano, para usar algoritmos y claves complejas es casi imprescindible el uso de

software especializado. Yo sin duda recomiendo cualquier implementación de

openPGP, especialmente GnuPG que es software libre, y cuyo código fuente puede ser

revisado por cualquiera que desconfíe. Si ciframos nuestros datos de forma que nos

devuelva una armadura ASCII, ya tendremos todos los caracteres que componen

nuestro mensaje cifrado. Es muy recomendable que la clave que usemos para la

realización de criptografía orientada a esteganografía use el algoritmo DH/DSS (Diffie-

Hellman / Digital Standard Signature), pues el tamaño de salida de datos es mucho

menor. Con la armadura ASCII del mensaje solamente necesitamos un poco de

paciencia para esteganografiar los datos.


Ataques a la esteganografía

esteganografía, aunque es de esperar que debido al auge que ha

experimentado hoy en día gracias a técnicas como las marcas de agua, se

publiquen más investigaciones sobre debilidades y formas de aprovecharlas.

Los dos métodos más usados para detectar y atacar la esteganografía son:

Ataque visual

Consiste básicamente en buscar de forma manual diferencias entre el fichero

original y el esteganografiado, siempre y cuando dispongamos del fichero

original. En caso de no disponer de él, se pueden buscar irregularidades en el

fichero esteganografiado para tratar de encontrar signos de la existencia de

datos ocultos, pero difícilmente podremos obtener información útil más allá de

la existencia de los mismos. Esta técnica es la más rudimentaria a la hora de

realizar análisis esteganográfico yno tiene mucha utilidad real.

Ataque estadístico

Este tipo de ataque se basa en el mismo concepto que el criptoanálisis

diferencial del que hablé en Criptosistemas Informáticos. El concepto de este

tipo de ataques se basa en la comparación de la frecuencia de distribución de

colores de un fichero potencialmente esteganografiado con la frecuencia que

podríamos esperar en teoría de un fichero esteganografiado. Aunque los

resultados son bastante buenos (ha demostrado en muchas ocasiones ser

efectiva), esta técnica es extremadamente lenta. Si la creación de mensajes

esteganografiados a mano ya es complicada, el ataque estadístico lo es mucho

más, por lo que se automatiza mediante diversos programas. Pero a nuestro


favor tenemos que los programas especializados en detección y ruptura de

mensajes esteganografiados suelen buscar pautas de mensajes ocultos con

algún tipo de software especializado en la creación de los mismos. Si

esteganografiamos nuestros mensajes a mano, la posibilidad de que la

información sea recuperada ilícitamente es ínfima. Uno de los programas más

famosos para detectar la presencia de esteganografía en ficheros de imagen

JPG es Stegdetect (http://www.outguess.org/detection.php). Este software,

mediante su módulo Stegbreak, realiza ataques de diccionario a los principales

sistemas públicos de esteganografía.

Conclusión

Dada la naturaleza de la esteganografía, resulta extremadamente resistente a

cualquier tipo de ataque. Los programas que aseguran detectar y recuperar

datos ocultos mediante esteganografía lo hacen siempre buscando mensajes

ocultos con programas de dominio público. Si nosotros esteganografiamos

nuestros propios mensajes a mano o -si somos programadores- desarrollamos

una herramienta privada, las posibilidades de que nuestros datos sean

comprometidos son prácticamente cero. Para más información sobre análisis

estadísticos en esteganografía conviene leer los estudios publicados por Stefan

Hetzel.
Introducción a la Esteganografía – http://www.death-master.tk/ – Versión 1.0 Este

documento ha sido liberado por su autor bajo la licencia GNU Free Documentation

License (GFDL), y su utilización, copia o reproducción queda sujeta a los términos de la

citada licencia, que puede ser consultada en el siguiente sitio web: • GNU Free

Documentation License: http://www.gnu.org/copyleft/fdl.html GFDL Version 1.2,

November 2002 Copyright (C) 2000, 2001, 2002 Free Software Foundation, Inc.

Copyright (c) 2004 Death Master Permission is granted to copy, distribute and/or

modify this document under the terms of the GNU Free Documentation License,

Version 1.2 or any later version published by the Free Software Foundation; with the

Invariant Sections being “Distribución de este documento” and “Licencia”, no Front-

Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section

entitled "GNU Free Documentation License". Cualquier copia, modificación,

distribución o utilización en general de este documento debe respetar la autoría

original del mismo, correspondiente a Death Master. Introduction to Steganography –

http://www.death-master.tk/ – Version 1.0 This document has been freed by its

author under the license GNU Free Documentation License (GFDL), and its use, copy or

reproduction is subject to the terms of the mentioned license that can be consulted in

the following website: • GNU Free Documentation License:

http://www.gnu.org/copyleft/fdl.html GFDL Version 1.2, November 2002 Copyright (C)

2000, 2001, 2002 Free Software Foundation, Inc. Copyright (c) 2004 Death Master

Permission is granted to copy, distribute and/or modify this document under the terms

of the GNU Free Documentation License, Version 1.2 or any later version published by

the Free Software Foundation; with the Invariant Sections being “Distribución de este
documento” and “Licencia”, no Front-Cover Texts, and no Back-Cover Texts. A copy of

the license is included in the section entitled "GNU Free Documentation License". Any

copy, modification, distribution or general purpose use of this document should

respect the original responsibility of it, corresponding to Death Master.

Das könnte Ihnen auch gefallen