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

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

Embed Size (px)

Citation preview

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

Esteganografía DigitalEsteganografía Digital(Parte 1)(Parte 1)

Esteganografía DigitalEsteganografía Digital(Parte 1)(Parte 1)

Córdoba, febrero 2009

Ángela Rojas Matas

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

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.?

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

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.

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

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.

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

Esteganografía digitalAnte 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)

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

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.

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

– 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.

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

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”.

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

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.

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

Ocultar texto en una imagen: método LSBVamos 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ácter Número Binario

A 0 00000

B 1 00001

C 2 00010

D 3 00011

... ...

? 29 11101

30 11110

H, O, L, A, , M, …=

= 7, 15, 11, 0, 30, 12, …=

=00111, 01111, 01011, …

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

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ácter ASCII Binario

H 72 01001000

O 79 01001111

L 76 01001100

...

H, O, L, A, , M, …=

= 72, 79, 76, …=

=01001000, 01001111, 01001100, …

“HOLA MUNDO”

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

Ocultar texto en una imagen: método LSB

8k

“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á:

80810 bits

Primer capítulo del Quijote

10 caracteres

10327 caracteres (incluyendo espacios en blanco)

82616810327 bits

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

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 00000000 0

00000000 1

...

11111110 254

11111111 255

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

Ocultar texto en una imagen: método LSB

• Ejemplo en blanco y negro

256 x 256

65536 píxeles

176 163 132 87 50 33 28 … 202

175 163 132 87 50 32 28 … 202

175 163 132 87 50 32 28 … 202

175 163 132 87 50 32 28 … 202

175 163 132 87 50 32 28 … 203

176 163 132 87 50 33 28 … 203

176 163 132 87 50 33 28 … 203

176 163 132 88 50 33 27 … 203

……………………………………………………..

239 239 239 239 239 239 239 … 239

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

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 127

127= 01111101

Bit menos significativo

Bit más significativo

Si alteramos el bit menos significativo: 01111100=126

Si alteramos el bit más significativo: 11111101=253

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

• Supongamos que el nivel de gris 112=01110000(2

- Si el bit a ocultar es 0: 01110000(2=112

- Si el bit a ocultar es 1: 01110001(2=113

•Supongamos que el nivel de gris 113=01110001(2

- Si el bit a ocultar es 0: 01110000(2=112

- Si el bit a ocultar es 1: 01110001(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

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

Ocultando información en una imagen: método LSB

176 163 132 87 50 33 28 … 202

175 163 132 87 50 32 28 … 202

175 163 132 87 50 32 28 … 202

175 163 132 87 50 32 28 … 202

175 163 132 87 50 32 28 … 203

176 163 132 87 50 33 28 … 203

176 163 132 87 50 33 28 … 203

176 163 132 88 50 33 27 … 203

……………………………………………………..

239 239 239 239 239 239 239 … 239

Matriz Original Matriz Resultante

176 163 132 86 51 33 28 … 202

175 162 132 86 51 32 29 … 203

174 163 133 86 51 32 29 … 202

174 162 133 87 50 32 28 … 202

175 162 132 87 50 32 29 … 203

176 162 132 86 51 33 28 … 203

177 162 132 87 51 33 28 … 202

176 163 132 89 51 33 27 … 202

……………………………………………………..

239 239 239 239 239 239 239 … 239

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

Ocultar texto en una imagen: método LSB

Procedimiento para ocultar

Imagen Original Imagen Resultante

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

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:

oSi el nivel de gris es par y el bit a ocultar es 0, no hacer nada:

nivel _de _gris _modificado= nivel _de _gris _original

oSi el nivel de gris es par y el bit a ocultar es 1, sumar 1:

nivel_de_gris_modificado = nivel_de_gris_original + 1

oSi el nivel de gris es impar y el bit a ocultar es 1, no hacer nada:

nivel_de_gris_modificado = nivel_de_gris_original

oSi el nivel de gris es impar y el bit a ocultar es 0, restar 1:

nivel_de_gris_modificado = nivel_de_gris_original - 1

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

Ocultar texto en una imagen: método LSBActividad 1

40716828

4565171101

103111120131

119131112118

A B C D E F G H I J K

0 1 2 3 4 5 6 7 8 9 10

00000 00001 00010 00011 00100 00101 00110 00111 01000 01001 01010

L M N Ñ O P Q R S T U

11 12 13 14 15 16 17 18 19 20 21

01011 01100 01101 01110 01111 10000 10001 10010 10011 10100 10101

V W X Y Z . , ¿ ?

22 23 24 25 26 27 28 29 30 31

10110 10111 11000 11001 11010 11011 11100 11101 11110 11111

Extraer el mensaje oculto (15 bits)

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

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: bitqg 2'

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

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:

12601111110'210

01111111127

2(

2(

g

bits

g

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.

34'

24'

14'

04'

qg

qg

qg

qg

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

Ocultar texto en una imagen: método LSBActividad 2

A B C D E F G H I J K

0 1 2 3 4 5 6 7 8 9 10

00000 00001 00010 00011 00100 00101 00110 00111 01000 01001 01010

L M N Ñ O P Q R S T U

11 12 13 14 15 16 17 18 19 20 21

01011 01100 01101 01110 01111 10000 10001 10010 10011 10100 10101

V W X Y Z . , ¿ ?

22 23 24 25 26 27 28 29 30 31

10110 10111 11000 11001 11010 11011 11100 11101 11110 11111

Extraer el mensaje oculto en los dos últimos bits (30 bits)

40717128

4564169103

100108120131

118130112116

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

35,124,235

A

R G B

Método LSB en una imagen en color

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

 

Imagen Original Estego-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:

7200003600400

¿Qué oculta esta imagen? ¡¡ Los 8 primeros capítulos del Quijote!!

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

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 16384 píxeles, necesitaremos 16384 x 8 = 131072 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 = 65536 menor que 131072.

• Tomando 2 bits sí bastaría, ya que 256 x 256 x 2 = 131072.

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

Método LSB con un fichero de audio

• Grabación de audio con 36104 datos, cada dato 1 byte donde se oculta el siguiente mensaje:

"La criptografía es la técnica, ciencia o arte de la escritura secreta. El principio básico de la criptografia

es mantener la privacidad de la comunicacion entre dos personas alterando el mensaje original de modo que

sea incomprensible a toda persona distinta del destinatario. El criptoanálisis es el conjunto de técnicas que

intenta encontrar la clave utilizada entre dos comunicantes, desvelando asi el secreto de su correspondencia.

La criptología engloba tanto a la criptografía como al criptoanálisis, el éxito de un criptoanalista supone

el fracaso de un criptógrafo y viceversa. Se puede decir que la criptografía es tan antigua como la civilización,

cuestiones militares, religiosas o comerciales impulsaron desde tiempos remotos el uso de escrituras secretas.

Los antiguos egipcios usaron métodos criptográficos, mientras el pueblo utilizaba la lengua demótica los

sacerdotes usaban la escritura jeroglífica incomprensible para el resto. Los antiguos babilonios también

utilizaron métodos criptográficos en su escritura cuneiforme. El primer caso claro de uso de métodos

criptográficos se dio durante la guerra entre Atenas y Esparta, el cifrado se basaba en la alteración del

mensaje original mediante la inclusión de símbolos innecesarios que desaparecian al enrollar la lista en un

rodillo llamado escitala, el mensaje quedaba claro cuando se enrrollaba la tira de papel alrededor de un

rodillo de longitud y grosor adecuados. Carlomagno sustituía ya las letras por símbolos extraños. En la época

de los romanos se utilizó el cifrado Cesar que consistía en cambiar cada letra por la ocupaba tres lugares

más adelante en el abecedario."

Mensaje compuesto por 1646 caracteres 1646x8=13168 bits

Fichero original

Fichero modificado

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

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.

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

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 espacialLos 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 transformadaLos 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.

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

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:

tTT 1

Dada una matriz A se define la transformada como otra matriz B tal que:

tTATB

Se define la transformada inversa de B como la matriz A tal que:

TBTA t

Son transformadas ortogonales: la transformada de Fourier, la transformada del coseno, la transformada de Haar, etc.

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

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.

21

21

21

21

43

4

21

21

)cos()cos(2

TnPara

6

132

61

21

21

31

31

31

652

32

632

32

62

32

65

32

63

32

632

31

31

31

0

)cos()cos()cos(

)cos()cos()cos(3

TnPara

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

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

000

0063

0615

)(

987

654

321tTTAADCTBA

987

654

321

)(

000

0063

0615

BTTBIDCTAB t

Transformada Directa

Transformada inversa

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

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

0.353553 0.353553 0.353553 0.353553 0.353553 0.353553 0.353553 0.3535530.490393 0.415735 0.277785 0.0975452 0.0975452 0.277785 0.415735 0.4903930.46194 0.191342 0.191342 0.46194 0.46194 0.191342 0.191342 0.461940.415735 0.0975452 0.490393 0.277785 0.277785 0.490393 0.0975452 0.4157350.353553 0.353553 0.353553 0.353553 0.353553 0.353553 0.353553 0.3535530.277785 0.490393 0.0975452 0.415735 0.415735 0.0975452 0.490393 0.2777850.191342 0.46194 0.46194 0.191342 0.191342 0.46194 0.46194 0.1913420.0975452 0.277785 0.415735 0.490393 0.490393 0.415735 0.277785 0.0975452

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:

tTATB

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

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

31 23 60 93 49 57 57 3531 21 74 73 55 52 45 4425 16 82 65 61 38 50 5126 38 91 61 62 28 49 5017 85 70 76 50 34 37 4329 90 68 53 43 25 30 49116 184 108 25 52 26 38 36151 144 182 129 44 23 41 39

A=

466.25 100.906 40.3393 91.1315 25.25 2.67907 3.31517 16.648288.4065 146.066 67.5059 26.1243 33.412 44.3008 24.6658 0.48607669.5604 73.4218 17.6909 8.10872 1.22847 31.3229 12.3824 7.9303244.0839 28.5187 4.38655 18.4638 11.9507 32.162 31.1853 32.189827.5 12.2552 25.4491 19.8833 9.5 35.2306 3.23523 10.14382.22994 6.377 26.7637 18.3775 13.4471 20.9802 10.1116 19.226110.4122 22.5187 20.8676 15.9436 17.2859 25.742 9.55914 4.747028.01928 11.5534 7.58232 9.45438 9.88011 12.0629 13.257 7.41755

B=

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

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

16 11 10 16 24 40 51 6112 12 14 19 26 58 60 5514 13 16 24 40 57 69 5614 17 22 29 51 87 80 6218 22 37 56 68 109 103 7724 35 55 64 81 104 113 9249 64 78 87 103 121 120 10172 92 95 98 112 100 103 99

Cuantización:

2914.2916

25.466

Ejemplo:

29 9 4 6 1 0 0 07 12 5 1 1 1 0 05 6 1 0 0 1 0 03 2 0 1 0 0 0 12 1 1 0 0 0 0 00 0 0 0 0 0 0 00 0 0 0 0 0 0 00 0 0 0 0 0 0 0

Resultado de la cuantización de B:

B*=

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

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

34 20 61 118 41 63 62 2527 19 68 79 42 36 63 4418 32 84 56 60 22 55 5511 57 88 64 75 37 36 5117 76 66 63 55 53 21 5048 97 59 51 23 45 19 55105 135 113 66 30 27 29 49153 172 182 98 63 16 38 35

TBTA t

31 23 60 93 49 57 57 3531 21 74 73 55 52 45 4425 16 82 65 61 38 50 5126 38 91 61 62 28 49 5017 85 70 76 50 34 37 4329 90 68 53 43 25 30 49116 184 108 25 52 26 38 36151 144 182 129 44 23 41 39

Sin pérdidas

TBTA t ** Con pérdidas

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

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

65536256256 Imagen original:

Nº de elementos nulos=0

Imagen comprimidaNº de elementos no nulos=5741Nº de ceros=59795

Hay algunos algoritmos esteganográficos que aprovechan la fase de cuantización para ocultar información.

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

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:

2

12

1

21

21

T

tTATB

tTT 1

TBTA t

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

Algoritmos esteganográficos en el dominio de la transformada

Por ejemplo:

5.15.0

5.05.433

216217

218216tTTABA

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?.

11b

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

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

2*

11

qqb coefmod T

bb

bbTA t

2221

12

*

11*

Algoritmos esteganográficos en el dominio de la transformada

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

Algoritmos esteganográficos en el dominio de la transformada

1) Proceso de ocultación

Por ejemplo, si

Supongamos que q = 8 y que el bit que toca ocultar es 1, entonces:

Redondeando:

5.4335.15.0

5.05.433

216217

21821611

bTTABA t

555418.548

5.43311 modcoefcoefq

b

44448552

*

11

qqb coefmod

25.22125.222

25.22325.221

5.15.0

5.0444

2221

12

*

11* TTTbb

bbTA tt

221222

223221

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

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:

221222

223221*A

5.15.0

5.05.443

221222

223221* tt TTTTA

1554.558

5.443 bitcoef

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

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:

 

256256

163844

256256

8q

Algoritmos esteganográficos en el dominio de la transformada

Imagen original Estego-imagen

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

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).

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

Ocultar texto en una imagen: método de la transformadaActividad 3

A B C D E F G H I J K

0 1 2 3 4 5 6 7 8 9 10

00000 00001 00010 00011 00100 00101 00110 00111 01000 01001 01010

L M N Ñ O P Q R S T U

11 12 13 14 15 16 17 18 19 20 21

01011 01100 01101 01110 01111 10000 10001 10010 10011 10100 10101

V W X Y Z . , ¿ ?

22 23 24 25 26 27 28 29 30 31

10110 10111 11000 11001 11010 11011 11100 11101 11110 11111

Extraer la letra oculta (5 bits)

231236238234237240

230237233231236239

226236230233229229

226231226229220224

8q

2

12

1

21

21

T tTTAB