La descarga está en progreso. Por favor, espere

La descarga está en progreso. Por favor, espere

Esteganografía Digital (Parte 1) Córdoba, febrero 2009 Ángela Rojas Matas.

Presentaciones similares


Presentación del tema: "Esteganografía Digital (Parte 1) Córdoba, febrero 2009 Ángela Rojas Matas."— Transcripción de la presentación:

1

2 Esteganografía Digital (Parte 1) Córdoba, febrero 2009 Ángela Rojas Matas

3 Esteganografía digital La Criptografía se dedica a cifrar mensajes: El objetivo de la esteganografía es el envío de información que se quiere mantener secreta pero de forma que no levante sospechas y pase desapercibido ante todo aquel intruso malintencionado que pudiera estar interesado en conocer dicha información. Por ejemplo: ¿Sospecharía alguien de esta inocente imagen? OFEDR,SS?P BIIHZEZHWOA.?

4 Esteganografía digital Si usamos un fichero de cobertura para ocultar información, este fichero será convenientemente modificado para ocultar información en él. El fichero resultante se llama estego-fichero. Igual que la criptografía se complementa con el criptoanálisis, la esteganografía se complementa con el Estego-Análisis que se dedica a averiguar si un fichero digital oculta o no información.

5 Esteganografía digital La información a ocultar puede ser de cualquier tipo: texto, una imagen, un fichero de audio, etc. La información secreta se convertirá en una secuencia de bits, es decir, de ceros y unos, que mediante el algoritmo esteganográfico elegido se ocultarán en un medio inocuo que usaremos como cobertura para no levantar sospechas. El medio inocente de cobertura donde camuflaremos nuestra información secreta puede ser también de distinta clase: una imagen, un grabación de audio, un video, una página html, un fichero ejecutable, etc. La Criptografía y la Esteganografía pueden ser complementarias: cifrando la información a ocultar se obtendrá una capa más de seguridad. La esteganografía ha recibido últimamente mucha atención ya que se rumoreó que AlQaeda utilizó esta técnica para llevar a cabo los atentados del 11-S de 2001 de la Torres Gemelas.

6 Esteganografía digital Ante el rumor de que se podrían estar usando técnicas esteganográficas en imágenes que circulan por Internet, unos investigadores americanos (Provos &Honeyman, 2002) han analizado más de dos millones de imágenes, con las técnicas estego-analíticas actuales, no descubriendo ninguna sospechosa de ocultar información: ¡¡Parece que el rumor es falso!! Neils Provos (Universidad de Michigan)

7 Esteganografía digital El nombre procede de un tratado del monje alemán Johannes Trithemius llamado Steganographia (publicado en el año1500). Algunos ejemplos de técnicas esteganográficas usadas en la historia son: –Mensajes tatuados en el cuero cabelludo, que tras crecer el pelo de nuevo, oculta el mensaje. –Mensajes secretos en papel, escritos con tintas invisibles entre líneas: se usó en la Segunda Guerra Mundial para el intercambio de información entre la resistencia y los prisioneros de los campos de concentración nazis.

8 –Cifradores nulos: Null Ciphers Mensaje oculto en un texto aparentemente inocente, por ej. cogiendo la primera letra de cada palabra del texto se puede recuperar un mensaje oculto. El siguiente mensaje fue telegrafiado en la I Guerra Mundial con esta técnica. Esteganografía digital PRESIDENT'S EMBARGO RULING SHOULD HAVE IMMEDIATE NOTICE. GRAVE SITUATION AFFECTING INTERNATIONAL LAW. STATEMENT FORESHADOWS RUIN OF MANY NEUTRALS. YELLOW JOURNALS UNIFYING NATIONAL EXCITEMENT IMMENSELY. ¡¡ Hay una gran imaginación para inventar métodos esteganográficos!! PERSHING SAILS FROM NY JUNE I.

9 Marcas de agua (watermarking) Una de las más importantes aplicaciones de la esteganografía. Las marcas de agua se añaden a un objeto con la intención de identificar al propietario del mismo. Sirven para proteger los derechos de autor. Pueden ser visibles o invisibles. Las invisibles están íntimamente ligadas con la esteganografía. También se pueden utilizar por el vendedor de un producto para identificar al comprador, de modo que se puedan perseguir o imposibilitar las copias ilegales (Fingerprint). Ejemplo curioso: Se está investigando en cómo incorporar pequeñas mutaciones en el ADN de organismos a modo de marca de agua para identificar copias no autorizadas de organismos genéticamente manipulados. Se escoge una célula y se le hace la prueba de ADN: Patentado por XYZ.

10 Esteganografía digital: Ventajas Permite el intercambio de información secreta entre dos usuarios de forma discreta y de modo que pase prácticamente desapercibido para los demás. Es compatible con los métodos criptográficos y de hecho es altamente recomendable cifrar previamente la información a ocultar. Las técnicas estegoanalíticas actuales aplican distintos test a los ficheros digitales sospechosos de contener información oculta, pero sólo son capaces de decir si hay o no información oculta. Si la información está cifrada con un buen método criptográfico, estas técnicas admitirán que hay información oculta pero no serán capaces de extraer esta información.

11 Ocultar texto en una imagen: método LSB Vamos a ver a continuación cómo ocultar un mensaje de texto en una imagen digital usando el método esteganográfico más simple y utilizado en la práctica: el método LSB (Least Significant Bit) En primer lugar, el mensaje a ocultar: HOLA MUNDO se convierte en una secuencia de bits. Se necesitan 5 bits para cada carácter CarácterNúmeroBinario A B C D ? H, O, L, A,, M, …= = 7, 15, 11, 0, 30, 12, …= =00111, 01111, 01011, …

12 Ocultar texto en una imagen: método LSB Es frecuente usar los códigos ASCII (ANSI) para convertir el mensaje de texto en números. En este caso se pueden emplear letras mayúsculas, minúsculas, números, etc. Se necesitan 8 bits para cada carácter CarácterASCIIBinario H O L H, O, L, A,, M, …= = 72, 79, 76, …= = , , , … HOLA MUNDO

13 Ocultar texto en una imagen: método LSB HOLA MUNDO El emisor y el receptor del mensaje deben estar de acuerdo en el alfabeto usado. En nuestro caso, vamos a utilizar el código ASCII. Si el mensaje tiene k caracteres, entonces el número de bits del mensaje será: bits Primer capítulo del Quijote 10 caracteres caracteres (incluyendo espacios en blanco) bits

14 Ocultar texto en una imagen: método LSB Un imagen en blanco y negro no es más que una matriz de datos, donde cada dato es el nivel de gris de un píxel. Es habitual encontrar imágenes en blanco y negro donde se dedica 1 byte por píxel para representar el nivel de gris. 1 byte= 8 bits

15 Ocultar texto en una imagen: método LSB Ejemplo en blanco y negro 256 x píxeles … … … … … … … …203 …………………………………………………… …

16 Ocultar texto en una imagen: método LSB ¿Qué pasa si alteramos algún bit del nivel de gris de un píxel?. Ejemplo: si el nivel de gris es = Bit menos significativo Bit más significativo Si alteramos el bit menos significativo: =126 Si alteramos el bit más significativo: =253

17 Supongamos que el nivel de gris 112= (2 - Si el bit a ocultar es 0: (2 =112 - Si el bit a ocultar es 1: (2 =113 Supongamos que el nivel de gris 113= (2 - Si el bit a ocultar es 0: (2 =112 - Si el bit a ocultar es 1: (2 =113 Ocultar texto en una imagen: método LSB Podemos usar el bit menos significativo de los píxeles de la imagen para ocultar los bits de nuestro mensaje oculto

18 Ocultando información en una imagen: método LSB … … … … … … … …203 …………………………………………………… … Matriz Original Matriz Resultante … … … … … … … …202 …………………………………………………… …

19 Ocultar texto en una imagen: método LSB Procedimiento para ocultar Imagen OriginalImagen Resultante

20 Ocultar texto en una imagen: método LSB El método LSB usa el bit menos significativo de cada píxel para ocultar 1 bit. La forma explicada anteriormente implica escribir el nivel de gris en binario y sobrescribir el último bit con el bit secreto que toque ocultar y volver a pasar a decimal. Otra forma de hacerlo, equivalente a la anterior pero más sencilla y más rápida, sería la siguiente: o Si el nivel de gris es par y el bit a ocultar es 0, no hacer nada: nivel _de _gris _modificado= nivel _de _gris _original o Si el nivel de gris es par y el bit a ocultar es 1, sumar 1: nivel_de_gris_modificado = nivel_de_gris_original + 1 o Si el nivel de gris es impar y el bit a ocultar es 1, no hacer nada: nivel_de_gris_modificado = nivel_de_gris_original o Si el nivel de gris es impar y el bit a ocultar es 0, restar 1: nivel_de_gris_modificado = nivel_de_gris_original - 1

21 Ocultar texto en una imagen: método LSB Actividad 1 ABCDEFGHIJK LMNÑOPQRSTU VWXYZ.,¿? Extraer el mensaje oculto (15 bits)

22 Ocultar texto en una imagen: método LSB Otra forma para ocultar un bit secreto en el bit menos significativo de cada píxel: Dividimos el nivel de gris original g entre 2 y nos quedamos con el cociente de la división entera: q. Después obtenemos 2q. Esto equivale a poner a cero el último bit de g. Le sumamos el bit secreto:

23 Ocultar texto en una imagen: método LSB Ocultando dos bits secretos en los bits menos significativos de cada píxel: Por ejemplo, si el nivel de gris es 127 y los dos bits a ocultar fueran 10, entonces, el primer método requiere escribir 127 en binario, y sustituir los dos últimos bits por 10: Más fácil y rápido: Dividimos el nivel de gris original g entre 4 y nos quedamos con el cociente de la división entera: q Después obtenemos 4q Esto equivale a poner a cero los dos últimos bits de g. Los dos bits secretos pueden ser: 00, 01, 10 y 11 que son en decimal: 0, 1, 2, 3.

24 Ocultar texto en una imagen: método LSB Actividad 2 ABCDEFGHIJK LMNÑOPQRSTU VWXYZ.,¿? Extraer el mensaje oculto en los dos últimos bits (30 bits)

25 RGB Método LSB en una imagen en color

26 Imagen OriginalEstego-Imagen Método LSB en una imagen en color Usamos el bit menos significativo de cada píxel de la capa de rojo, de verde y de azul. La capacidad total es: ¿Qué oculta esta imagen? ¡¡ Los 8 primeros capítulos del Quijote!!

27 Ocultar una imagen en otra imagen Supongamos que deseamos ocultar una imagen 128 x 128 en una de dimensión 256 x 256, ambas en blanco y negro. Para ocultar la imagen de 128 x 128, que son píxeles, necesitaremos x 8 = bits. En este caso tomando 1 sólo bit de la imagen de 256 x 256, no sería suficiente ya que 256 x 256 = menor que Tomando 2 bits sí bastaría, ya que 256 x 256 x 2 =

28 Método LSB con un fichero de audio Grabación de audio con datos, cada dato 1 byte donde se oculta el siguiente mensaje: Mensaje compuesto por 1646 caracteres 1646x8=13168 bits Fichero original Fichero modificado

29 Ataque visual al método LSB En este ejemplo tenemos el ataque estegano-analítico más simple de todos: el ataque visual. En la imagen se ocultó un mensaje de texto usando el código ASCII, empezando por la esquina inferior derecha y llegando aproximadamente a la mitad de la imagen de cobertura. Las letras más habituales ( A-Z, a-z) suelen tener los dos bits más significativos 01 (salvo la eñe, vocales acentuadas, etc.), de ahí ese efecto de rayas verticales.

30 Clasificación de las algoritmos esteganográficos con imágenes digitales Existen muchos métodos o algoritmos esteganográficos para camuflar datos dentro de una imagen digital. Se pueden clasificar en dos tipos: Métodos en el dominio espacial Métodos en el dominio de la transformada Los métodos en el dominio espacial Los métodos en el dominio espacial manipulan el nivel de gris o color de los píxeles que componen la imagen para conseguir ocultar la información secreta. El método más conocido y utilizado en la práctica es LSB. Los métodos en el dominio de la transformada Los métodos en el dominio de la transformada, aplican algún tipo de transformación sobre la imagen original (Transformada Discreta de Fourier, Transformada del Coseno, Transformada wavelet, etc) y se manipulan los coeficientes de la transformada para conseguir ocultar la información.

31 Métodos en el dominio de la transformada Se suelen emplear transformadas ortogonales, que vienen definidas a través de matrices T ortogonales, es decir, matrices que cumplen la siguiente propiedad: Dada una matriz A se define la transformada como otra matriz B tal que: Se define la transformada inversa de B como la matriz A tal que: Son transformadas ortogonales: la transformada de Fourier, la transformada del coseno, la transformada de Haar, etc.

32 Métodos en el dominio de la transformada: Transformada Discreta del Coseno Es un caso especialmente utilizado, ya que es una transformada muy conocida por usarse en la compresión JPEG.

33 Métodos en el dominio de la transformada: Transformada Discreta del Coseno Transformada Directa Transformada inversa

34 Métodos en el dominio de la transformada: Transformada Discreta del Coseno En la compresión JPEG se utiliza la DCT con n=8. La matriz T empleada es: Se divide la imagen de entrada en submatrices A de tamaño 8x8 y a cada una de ellas se le calcula la DCT, obteniendo otras submatrices B:

35 Métodos en el dominio de la transformada: Transformada Discreta del Coseno A= B=

36 Métodos en el dominio de la transformada: Transformada Discreta del Coseno Cuantización: Ejemplo: Resultado de la cuantización de B: B*=

37 Métodos en el dominio de la transformada: Transformada Discreta del Coseno Sin pérdidas Con pérdidas

38 Métodos en el dominio de la transformada: Transformada Discreta del Coseno Imagen original: Nº de elementos nulos=0 Imagen comprimida Nº de elementos no nulos=5741 Nº de ceros=59795 Hay algunos algoritmos esteganográficos que aprovechan la fase de cuantización para ocultar información.

39 Algoritmos esteganográficos en el dominio de la transformada Vamos a ver a continuación un ejemplo sencillo donde usaremos la transformada discreta del coseno bidimensional de orden 2. Dividiremos la imagen original en submatrices de tamaño 2x2. A cada una de estas la matriz ALa transformada discreta de una matriz A cualquiera de orden 2 es otra matriz B que se obtiene de la siguiente forma: Siempre podemos deshacer el proceso:

40 Algoritmos esteganográficos en el dominio de la transformada Por ejemplo: Se pueden utilizar los 4 coeficientes de B para ocultar información o sólo algunos de ellos. Supongamos que vamos a usar sólo el coeficiente para almacenar un bit de información Pero los elementos de la matriz B son números reales ¿cómo ocultamos un bit en un número real?.

41 Para ello procedemos de la siguiente forma: Se elige una constante q entera positiva. Se considera la parte entera de b11/q que indicaremos como coef (este número sí es entero). En coef almacenaremos un bit secreto (usando el bit menos significativo): Si coef es par y bit =0, coefmod=coef Si coef es par y bit =1, coefmod=coef +1 Si coef es impar y bit =0, coefmod=coef-1 Si coef es impar y bit =1, coefmod=coef Algoritmos esteganográficos en el dominio de la transformada

42 1) Proceso de ocultación Por ejemplo, si Supongamos que q = 8 y que el bit que toca ocultar es 1, entonces: Redondeando:

43 Algoritmos esteganográficos en el dominio de la transformada 2) Proceso de extracción El receptor de la estego-imagen recibe la matriz anterior: a la que le calcula la transformada, obteniendo la matriz: Conoce el valor de q=8:

44 En este caso, si la imagen es la capacidad de almacenamiento será bits. En la figura se muestra el resultado de aplicar este proceso donde la constante empleada ha sido: Algoritmos esteganográficos en el dominio de la transformada Imagen originalEstego-imagen

45 Algoritmos esteganográficos en el dominio de la transformada El método LSB tiene el inconveniente de que si la estego-imagen se somete a una simple compresión jpg (formato muy usado en la práctica), entonces el mensaje oculto se destruye por completo. El método descrito antes es algo más resistente. Cuanto mayor sea la constante q, más resistente será la estego-imagen a ataques sobre la misma, pero tiene el inconveniente de que también la estego-imagen se deteriora más. Con este método conseguimos almacenar un número menor de bits, pero a cambio conseguimos una estego-imagen más resistente. La estego-imagen tiene formato bmp y ocupa 65 kB en disco mientras que la estego-imagen comprimida jpg (al 90% de calidad) ocupa 20 kB. Estego-imagen original (bmp) y estego-imagen comprimida (jpg).

46 Ocultar texto en una imagen: método de la transformada Actividad 3 ABCDEFGHIJK LMNÑOPQRSTU VWXYZ.,¿? Extraer la letra oculta (5 bits)


Descargar ppt "Esteganografía Digital (Parte 1) Córdoba, febrero 2009 Ángela Rojas Matas."

Presentaciones similares


Anuncios Google