Simple LSB embedding (recap) CSM25 Secure Information Hiding Dr - - PowerPoint PPT Presentation

simple lsb embedding recap
SMART_READER_LITE
LIVE PREVIEW

Simple LSB embedding (recap) CSM25 Secure Information Hiding Dr - - PowerPoint PPT Presentation

Simple LSB embedding (recap) CSM25 Secure Information Hiding Dr Hans Georg Schaathun University of Surrey Spring 2007 Dr Hans Georg Schaathun Simple LSB embedding (recap) Spring 2007 1 / 34 Lesson Outcomes Chapter 2: LSB recap After this


slide-1
SLIDE 1

Simple LSB embedding (recap)

CSM25 Secure Information Hiding Dr Hans Georg Schaathun

University of Surrey

Spring 2007

Dr Hans Georg Schaathun Simple LSB embedding (recap) Spring 2007 1 / 34

slide-2
SLIDE 2

Lesson Outcomes

Chapter 2: LSB recap

After this session, everyone should be able to us Matlab to

load an image and make simple changes handle binary information convert text to binary understand that any piece of information can be represented in numerous ways

We may repeat material from CSM24

Dr Hans Georg Schaathun Simple LSB embedding (recap) Spring 2007 2 / 34

slide-3
SLIDE 3

Review of LSB The image in the spatial domain

Outline

1

Review of LSB The image in the spatial domain Numbers in Bits LSB of an image Merits and flaws

2

Some steganalytic observations The visual attack Histogramme Conclusions

Dr Hans Georg Schaathun Simple LSB embedding (recap) Spring 2007 3 / 34

slide-4
SLIDE 4

Review of LSB The image in the spatial domain

A tiny grayscale example

Dr Hans Georg Schaathun Simple LSB embedding (recap) Spring 2007 4 / 34

slide-5
SLIDE 5

Review of LSB The image in the spatial domain

A tiny grayscale example

Dr Hans Georg Schaathun Simple LSB embedding (recap) Spring 2007 4 / 34

slide-6
SLIDE 6

Review of LSB The image in the spatial domain

The image file: pgm/pnm (spatial domain)

P2 24 24 255 49 97 86 26 36 171 85 54 35 48 22 52 26 0 146 52 26 0 146 52 26 0 146 12 77 26 0 146 49 139 20 0 36 146 132 32 94 15 12 111 122 65 79 99 47 23 73 111 128 88 22 79 97 49 0 36 146 132 102 26 17 19 59 97 49 12 111 122 65 79 19 66 13 77 81 73 111 128 88 22 26 101 97 103 15 36 146 132 102 26 17 6 37 49 11 12 49 142 149 79 31 49 173 77 47 41 58 12 37 6 57 99 71 0 128 137 70 45 0 171 49 45 33 36 11 45 22 Dr Hans Georg Schaathun Simple LSB embedding (recap) Spring 2007 5 / 34

slide-7
SLIDE 7

Review of LSB The image in the spatial domain

Image formats

pnm (netpbm)

8-bit grayscale (pgm) 24-bit RGB (ppm) Binary, i.e. 1-bit black/white (pbm)

png (Portable Network Graphics) Kodak Photo-CD bmp Some file formats (e.g. TIFF) can carry different image formats.

Dr Hans Georg Schaathun Simple LSB embedding (recap) Spring 2007 6 / 34

slide-8
SLIDE 8

Review of LSB Numbers in Bits

Outline

1

Review of LSB The image in the spatial domain Numbers in Bits LSB of an image Merits and flaws

2

Some steganalytic observations The visual attack Histogramme Conclusions

Dr Hans Georg Schaathun Simple LSB embedding (recap) Spring 2007 7 / 34

slide-9
SLIDE 9

Review of LSB Numbers in Bits

The coefficients in bits

Take a number 217. Written Base 10 i.e. 217 = 7 · 100 + 1 · 101 + 2 · 102 Least significant digit: the last/the ones Same numer 21710 = 110110012 Written in Base 2 110110012 = 1·20+0·21+0·22+1·23+1·24+0·25+1·26+1·27 Least significant bit: the last/the ones Any base could be used. (8 and 16 are common.)

Dr Hans Georg Schaathun Simple LSB embedding (recap) Spring 2007 8 / 34

slide-10
SLIDE 10

Review of LSB Numbers in Bits

The coefficients in bits

Take a number 217. Written Base 10 i.e. 217 = 7 · 100 + 1 · 101 + 2 · 102 Least significant digit: the last/the ones Same numer 21710 = 110110012 Written in Base 2 110110012 = 1·20+0·21+0·22+1·23+1·24+0·25+1·26+1·27 Least significant bit: the last/the ones Any base could be used. (8 and 16 are common.)

Dr Hans Georg Schaathun Simple LSB embedding (recap) Spring 2007 8 / 34

slide-11
SLIDE 11

Review of LSB Numbers in Bits

The coefficients in bits

Take a number 217. Written Base 10 i.e. 217 = 7 · 100 + 1 · 101 + 2 · 102 Least significant digit: the last/the ones Same numer 21710 = 110110012 Written in Base 2 110110012 = 1·20+0·21+0·22+1·23+1·24+0·25+1·26+1·27 Least significant bit: the last/the ones Any base could be used. (8 and 16 are common.)

Dr Hans Georg Schaathun Simple LSB embedding (recap) Spring 2007 8 / 34

slide-12
SLIDE 12

Review of LSB Numbers in Bits

The coefficients in bits

Take a number 217. Written Base 10 i.e. 217 = 7 · 100 + 1 · 101 + 2 · 102 Least significant digit: the last/the ones Same numer 21710 = 110110012 Written in Base 2 110110012 = 1·20+0·21+0·22+1·23+1·24+0·25+1·26+1·27 Least significant bit: the last/the ones Any base could be used. (8 and 16 are common.)

Dr Hans Georg Schaathun Simple LSB embedding (recap) Spring 2007 8 / 34

slide-13
SLIDE 13

Review of LSB Numbers in Bits

The coefficients in bits

Take a number 217. Written Base 10 i.e. 217 = 7 · 100 + 1 · 101 + 2 · 102 Least significant digit: the last/the ones Same numer 21710 = 110110012 Written in Base 2 110110012 = 1·20+0·21+0·22+1·23+1·24+0·25+1·26+1·27 Least significant bit: the last/the ones Any base could be used. (8 and 16 are common.)

Dr Hans Georg Schaathun Simple LSB embedding (recap) Spring 2007 8 / 34

slide-14
SLIDE 14

Review of LSB Numbers in Bits

The coefficients in bits

Take a number 217. Written Base 10 i.e. 217 = 7 · 100 + 1 · 101 + 2 · 102 Least significant digit: the last/the ones Same numer 21710 = 110110012 Written in Base 2 110110012 = 1·20+0·21+0·22+1·23+1·24+0·25+1·26+1·27 Least significant bit: the last/the ones Any base could be used. (8 and 16 are common.)

Dr Hans Georg Schaathun Simple LSB embedding (recap) Spring 2007 8 / 34

slide-15
SLIDE 15

Review of LSB Numbers in Bits

The coefficients in bits

Take a number 217. Written Base 10 i.e. 217 = 7 · 100 + 1 · 101 + 2 · 102 Least significant digit: the last/the ones Same numer 21710 = 110110012 Written in Base 2 110110012 = 1·20+0·21+0·22+1·23+1·24+0·25+1·26+1·27 Least significant bit: the last/the ones Any base could be used. (8 and 16 are common.)

Dr Hans Georg Schaathun Simple LSB embedding (recap) Spring 2007 8 / 34

slide-16
SLIDE 16

Review of LSB Numbers in Bits

The coefficients in bits

Take a number 217. Written Base 10 i.e. 217 = 7 · 100 + 1 · 101 + 2 · 102 Least significant digit: the last/the ones Same numer 21710 = 110110012 Written in Base 2 110110012 = 1·20+0·21+0·22+1·23+1·24+0·25+1·26+1·27 Least significant bit: the last/the ones Any base could be used. (8 and 16 are common.)

Dr Hans Georg Schaathun Simple LSB embedding (recap) Spring 2007 8 / 34

slide-17
SLIDE 17

Review of LSB Numbers in Bits

The coefficients in bits

Take a number 217. Written Base 10 i.e. 217 = 7 · 100 + 1 · 101 + 2 · 102 Least significant digit: the last/the ones Same numer 21710 = 110110012 Written in Base 2 110110012 = 1·20+0·21+0·22+1·23+1·24+0·25+1·26+1·27 Least significant bit: the last/the ones Any base could be used. (8 and 16 are common.)

Dr Hans Georg Schaathun Simple LSB embedding (recap) Spring 2007 8 / 34

slide-18
SLIDE 18

Review of LSB Numbers in Bits

The coefficients in bits

Take a number 217. Written Base 10 i.e. 217 = 7 · 100 + 1 · 101 + 2 · 102 Least significant digit: the last/the ones Same numer 21710 = 110110012 Written in Base 2 110110012 = 1·20+0·21+0·22+1·23+1·24+0·25+1·26+1·27 Least significant bit: the last/the ones Any base could be used. (8 and 16 are common.)

Dr Hans Georg Schaathun Simple LSB embedding (recap) Spring 2007 8 / 34

slide-19
SLIDE 19

Review of LSB Numbers in Bits

The coefficients in bits

Take a number 217. Written Base 10 i.e. 217 = 7 · 100 + 1 · 101 + 2 · 102 Least significant digit: the last/the ones Same numer 21710 = 110110012 Written in Base 2 110110012 = 1·20+0·21+0·22+1·23+1·24+0·25+1·26+1·27 Least significant bit: the last/the ones Any base could be used. (8 and 16 are common.)

Dr Hans Georg Schaathun Simple LSB embedding (recap) Spring 2007 8 / 34

slide-20
SLIDE 20

Review of LSB Numbers in Bits

The coefficients in bits

Take a number 217. Written Base 10 i.e. 217 = 7 · 100 + 1 · 101 + 2 · 102 Least significant digit: the last/the ones Same numer 21710 = 110110012 Written in Base 2 110110012 = 1·20+0·21+0·22+1·23+1·24+0·25+1·26+1·27 Least significant bit: the last/the ones Any base could be used. (8 and 16 are common.)

Dr Hans Georg Schaathun Simple LSB embedding (recap) Spring 2007 8 / 34

slide-21
SLIDE 21

Review of LSB Numbers in Bits

The coefficients in bits

Take a number 217. Written Base 10 i.e. 217 = 7 · 100 + 1 · 101 + 2 · 102 Least significant digit: the last/the ones Same numer 21710 = 110110012 Written in Base 2 110110012 = 1·20+0·21+0·22+1·23+1·24+0·25+1·26+1·27 Least significant bit: the last/the ones Any base could be used. (8 and 16 are common.)

Dr Hans Georg Schaathun Simple LSB embedding (recap) Spring 2007 8 / 34

slide-22
SLIDE 22

Review of LSB Numbers in Bits

The mod operator

We write m = x mod N when x = y · N + m for some y and 0 ≤ m < N.

i.e. m is the remainder of x when divided by N.

Matlab: m = mod ( x, N ) What does this have to with Least Significant bits? lsb = x mod 2 You can extract k bits if you want, y = x mod 2k.

Dr Hans Georg Schaathun Simple LSB embedding (recap) Spring 2007 9 / 34

slide-23
SLIDE 23

Review of LSB Numbers in Bits

The mod operator

We write m = x mod N when x = y · N + m for some y and 0 ≤ m < N.

i.e. m is the remainder of x when divided by N.

Matlab: m = mod ( x, N ) What does this have to with Least Significant bits? lsb = x mod 2 You can extract k bits if you want, y = x mod 2k.

Dr Hans Georg Schaathun Simple LSB embedding (recap) Spring 2007 9 / 34

slide-24
SLIDE 24

Review of LSB Numbers in Bits

The mod operator

We write m = x mod N when x = y · N + m for some y and 0 ≤ m < N.

i.e. m is the remainder of x when divided by N.

Matlab: m = mod ( x, N ) What does this have to with Least Significant bits? lsb = x mod 2 You can extract k bits if you want, y = x mod 2k.

Dr Hans Georg Schaathun Simple LSB embedding (recap) Spring 2007 9 / 34

slide-25
SLIDE 25

Review of LSB Numbers in Bits

The mod operator

We write m = x mod N when x = y · N + m for some y and 0 ≤ m < N.

i.e. m is the remainder of x when divided by N.

Matlab: m = mod ( x, N ) What does this have to with Least Significant bits? lsb = x mod 2 You can extract k bits if you want, y = x mod 2k.

Dr Hans Georg Schaathun Simple LSB embedding (recap) Spring 2007 9 / 34

slide-26
SLIDE 26

Review of LSB Numbers in Bits

The mod operator

We write m = x mod N when x = y · N + m for some y and 0 ≤ m < N.

i.e. m is the remainder of x when divided by N.

Matlab: m = mod ( x, N ) What does this have to with Least Significant bits? lsb = x mod 2 You can extract k bits if you want, y = x mod 2k.

Dr Hans Georg Schaathun Simple LSB embedding (recap) Spring 2007 9 / 34

slide-27
SLIDE 27

Review of LSB Numbers in Bits

The mod operator

We write m = x mod N when x = y · N + m for some y and 0 ≤ m < N.

i.e. m is the remainder of x when divided by N.

Matlab: m = mod ( x, N ) What does this have to with Least Significant bits? lsb = x mod 2 You can extract k bits if you want, y = x mod 2k.

Dr Hans Georg Schaathun Simple LSB embedding (recap) Spring 2007 9 / 34

slide-28
SLIDE 28

Review of LSB Numbers in Bits

The mod operator

We write m = x mod N when x = y · N + m for some y and 0 ≤ m < N.

i.e. m is the remainder of x when divided by N.

Matlab: m = mod ( x, N ) What does this have to with Least Significant bits? lsb = x mod 2 You can extract k bits if you want, y = x mod 2k.

Dr Hans Georg Schaathun Simple LSB embedding (recap) Spring 2007 9 / 34

slide-29
SLIDE 29

Review of LSB Numbers in Bits

The mod operator

We write m = x mod N when x = y · N + m for some y and 0 ≤ m < N.

i.e. m is the remainder of x when divided by N.

Matlab: m = mod ( x, N ) What does this have to with Least Significant bits? lsb = x mod 2 You can extract k bits if you want, y = x mod 2k.

Dr Hans Georg Schaathun Simple LSB embedding (recap) Spring 2007 9 / 34

slide-30
SLIDE 30

Review of LSB Numbers in Bits

The mod operator

We write m = x mod N when x = y · N + m for some y and 0 ≤ m < N.

i.e. m is the remainder of x when divided by N.

Matlab: m = mod ( x, N ) What does this have to with Least Significant bits? lsb = x mod 2 You can extract k bits if you want, y = x mod 2k.

Dr Hans Georg Schaathun Simple LSB embedding (recap) Spring 2007 9 / 34

slide-31
SLIDE 31

Review of LSB Numbers in Bits

The message

Message: Hello World!

1 2 3 4 5 6 7 8 9 A B C D E F NUL SOH STX ETX EOT ENQ ACK BEL BS HT LF VT FF CR SO SI 1 DLE DC1 DC2 DC3 DC4 NAK SYN ETB CAN EM SUB ESC FS GS RS US 2 SP ! " # $ % & ’ ( ) * + ,

  • .

/ 3 1 2 3 4 5 6 7 8 9 : ; < = > ? 4 @ A B C D E F G H I J K L M N O 5 P Q R S T U V W X Y Z [ \ ] ^ _ 6 ‘ a b c d e f g h i j k l m n

  • 7

p q r s t u v w x y z { | } ~ DEL

H e l l

  • W
  • r

l d ! 48 65 6C 6C 6F 20 57 6F 72 6C 64 21

100 1000 110 0101 110 1100 110 1100 110 1111 010 0000 101 0111 110 1111 111 0010 110 1100 110 0100 010 0001 Dr Hans Georg Schaathun Simple LSB embedding (recap) Spring 2007 10 / 34

slide-32
SLIDE 32

Review of LSB Numbers in Bits

Message as a binary image

H e l l

  • W
  • r

l d ! 48 65 6C 6C 6F 20 57 6F 72 6C 64 21

100 1000 110 0101 110 1100 110 1100 110 1111 010 0000 101 0111 110 1111 111 0010 110 1100 110 0100 010 0001

hello.pnm P1 12 7 1 1 1 1 1 0 1 1 1 1 1 0 0 1 1 1 1 1 0 1 1 1 1 1 0 0 0 0 0 0 1 0 1 0 0 0 1 0 1 1 1 0 0 1 0 1 0 0 0 1 1 1 1 0 1 1 0 1 1 0 0 0 0 0 1 0 1 1 1 0 0 0 0 1 0 0 1 0 1 1 0 0 0 1

Dr Hans Georg Schaathun Simple LSB embedding (recap) Spring 2007 11 / 34

slide-33
SLIDE 33

Review of LSB LSB of an image

Outline

1

Review of LSB The image in the spatial domain Numbers in Bits LSB of an image Merits and flaws

2

Some steganalytic observations The visual attack Histogramme Conclusions

Dr Hans Georg Schaathun Simple LSB embedding (recap) Spring 2007 12 / 34

slide-34
SLIDE 34

Review of LSB LSB of an image

Matlab Demo: image

pic = imread ( ’picfile.pnm’ ) whos pic imshow ( pic ) ; lsbpic = mod ( pic, 2 ) ; picture ; imshow ( lsbpic, [ 0 1 ] ) ; pic7bit = pic - lsbpic picture ; imshow ( pic7bit ) ;

Dr Hans Georg Schaathun Simple LSB embedding (recap) Spring 2007 13 / 34

slide-35
SLIDE 35

Review of LSB LSB of an image

Matlab Demo: image

pic = imread ( ’picfile.pnm’ ) whos pic imshow ( pic ) ; lsbpic = mod ( pic, 2 ) ; picture ; imshow ( lsbpic, [ 0 1 ] ) ; pic7bit = pic - lsbpic picture ; imshow ( pic7bit ) ;

Dr Hans Georg Schaathun Simple LSB embedding (recap) Spring 2007 13 / 34

slide-36
SLIDE 36

Review of LSB LSB of an image

Matlab Demo: image

pic = imread ( ’picfile.pnm’ ) whos pic imshow ( pic ) ; lsbpic = mod ( pic, 2 ) ; picture ; imshow ( lsbpic, [ 0 1 ] ) ; pic7bit = pic - lsbpic picture ; imshow ( pic7bit ) ;

Dr Hans Georg Schaathun Simple LSB embedding (recap) Spring 2007 13 / 34

slide-37
SLIDE 37

Review of LSB LSB of an image

Matlab Demo: message

msg = ’Hello World!’ nummsg = double ( msg ) binmsg = de2bi ( nummsg, 7 ) imshow ( binmsg, [0 1] )

Dr Hans Georg Schaathun Simple LSB embedding (recap) Spring 2007 14 / 34

slide-38
SLIDE 38

Review of LSB LSB of an image

Randomised location

randperm intrlv (Interleave)

Dr Hans Georg Schaathun Simple LSB embedding (recap) Spring 2007 15 / 34

slide-39
SLIDE 39

Review of LSB Merits and flaws

Outline

1

Review of LSB The image in the spatial domain Numbers in Bits LSB of an image Merits and flaws

2

Some steganalytic observations The visual attack Histogramme Conclusions

Dr Hans Georg Schaathun Simple LSB embedding (recap) Spring 2007 16 / 34

slide-40
SLIDE 40

Review of LSB Merits and flaws

Is LSB a good idea?

Simple; easy to implement Little distortion in the spatial domain Security: assumes that LSB-s are

Random Independent of higher-order bits Independent of other pixels

Several authors made this assumption independently Is it true? Too simple; easy to detect

Dr Hans Georg Schaathun Simple LSB embedding (recap) Spring 2007 17 / 34

slide-41
SLIDE 41

Review of LSB Merits and flaws

Is LSB a good idea?

Simple; easy to implement Little distortion in the spatial domain Security: assumes that LSB-s are

Random Independent of higher-order bits Independent of other pixels

Several authors made this assumption independently Is it true? Too simple; easy to detect

Dr Hans Georg Schaathun Simple LSB embedding (recap) Spring 2007 17 / 34

slide-42
SLIDE 42

Review of LSB Merits and flaws

Is LSB a good idea?

Simple; easy to implement Little distortion in the spatial domain Security: assumes that LSB-s are

Random Independent of higher-order bits Independent of other pixels

Several authors made this assumption independently Is it true? Too simple; easy to detect

Dr Hans Georg Schaathun Simple LSB embedding (recap) Spring 2007 17 / 34

slide-43
SLIDE 43

Review of LSB Merits and flaws

Is LSB a good idea?

Simple; easy to implement Little distortion in the spatial domain Security: assumes that LSB-s are

Random Independent of higher-order bits Independent of other pixels

Several authors made this assumption independently Is it true? Too simple; easy to detect

Dr Hans Georg Schaathun Simple LSB embedding (recap) Spring 2007 17 / 34

slide-44
SLIDE 44

Review of LSB Merits and flaws

Is LSB a good idea?

Simple; easy to implement Little distortion in the spatial domain Security: assumes that LSB-s are

Random Independent of higher-order bits Independent of other pixels

Several authors made this assumption independently Is it true? Too simple; easy to detect

Dr Hans Georg Schaathun Simple LSB embedding (recap) Spring 2007 17 / 34

slide-45
SLIDE 45

Review of LSB Merits and flaws

Is LSB a good idea?

Simple; easy to implement Little distortion in the spatial domain Security: assumes that LSB-s are

Random Independent of higher-order bits Independent of other pixels

Several authors made this assumption independently Is it true? Too simple; easy to detect

Dr Hans Georg Schaathun Simple LSB embedding (recap) Spring 2007 17 / 34

slide-46
SLIDE 46

Review of LSB Merits and flaws

Is LSB a good idea?

Simple; easy to implement Little distortion in the spatial domain Security: assumes that LSB-s are

Random Independent of higher-order bits Independent of other pixels

Several authors made this assumption independently Is it true? Too simple; easy to detect

Dr Hans Georg Schaathun Simple LSB embedding (recap) Spring 2007 17 / 34

slide-47
SLIDE 47

Review of LSB Merits and flaws

Is LSB a good idea?

Simple; easy to implement Little distortion in the spatial domain Security: assumes that LSB-s are

Random Independent of higher-order bits Independent of other pixels

Several authors made this assumption independently Is it true? Too simple; easy to detect

Dr Hans Georg Schaathun Simple LSB embedding (recap) Spring 2007 17 / 34

slide-48
SLIDE 48

Review of LSB Merits and flaws

Is LSB a good idea?

Simple; easy to implement Little distortion in the spatial domain Security: assumes that LSB-s are

Random Independent of higher-order bits Independent of other pixels

Several authors made this assumption independently Is it true? Too simple; easy to detect

Dr Hans Georg Schaathun Simple LSB embedding (recap) Spring 2007 17 / 34

slide-49
SLIDE 49

Some steganalytic observations The visual attack

Outline

1

Review of LSB The image in the spatial domain Numbers in Bits LSB of an image Merits and flaws

2

Some steganalytic observations The visual attack Histogramme Conclusions

Dr Hans Georg Schaathun Simple LSB embedding (recap) Spring 2007 18 / 34

slide-50
SLIDE 50

Some steganalytic observations The visual attack

Structure in the Image (I)

Example from Wayner’s book

Dr Hans Georg Schaathun Simple LSB embedding (recap) Spring 2007 19 / 34

slide-51
SLIDE 51

Some steganalytic observations The visual attack

Structure in the Image (II)

Example from Wayner’s book

Dr Hans Georg Schaathun Simple LSB embedding (recap) Spring 2007 20 / 34

slide-52
SLIDE 52

Some steganalytic observations The visual attack

Comparing

Which is the stego-object?

Example uses EzStego (GIF).

Dr Hans Georg Schaathun Simple LSB embedding (recap) Spring 2007 21 / 34

slide-53
SLIDE 53

Some steganalytic observations The visual attack

A less good example (I)

Grayscale Spatial Domain LSB Any structure?

Dr Hans Georg Schaathun Simple LSB embedding (recap) Spring 2007 22 / 34

slide-54
SLIDE 54

Some steganalytic observations The visual attack

A less good example (II)

Dr Hans Georg Schaathun Simple LSB embedding (recap) Spring 2007 23 / 34

slide-55
SLIDE 55

Some steganalytic observations The visual attack

Structure in the message

What are the vertical stripes? Structure? Of what? No relation to image... i.e. must relate to message. Conclusion: the plaintext is structured. What if we had compressed the plaintext?

Dr Hans Georg Schaathun Simple LSB embedding (recap) Spring 2007 24 / 34

slide-56
SLIDE 56

Some steganalytic observations The visual attack

Structure in the message

What are the vertical stripes? Structure? Of what? No relation to image... i.e. must relate to message. Conclusion: the plaintext is structured. What if we had compressed the plaintext?

Dr Hans Georg Schaathun Simple LSB embedding (recap) Spring 2007 24 / 34

slide-57
SLIDE 57

Some steganalytic observations The visual attack

Structure in the message

What are the vertical stripes? Structure? Of what? No relation to image... i.e. must relate to message. Conclusion: the plaintext is structured. What if we had compressed the plaintext?

Dr Hans Georg Schaathun Simple LSB embedding (recap) Spring 2007 24 / 34

slide-58
SLIDE 58

Some steganalytic observations The visual attack

Structure in the message

What are the vertical stripes? Structure? Of what? No relation to image... i.e. must relate to message. Conclusion: the plaintext is structured. What if we had compressed the plaintext?

Dr Hans Georg Schaathun Simple LSB embedding (recap) Spring 2007 24 / 34

slide-59
SLIDE 59

Some steganalytic observations The visual attack

Structure in the message

What are the vertical stripes? Structure? Of what? No relation to image... i.e. must relate to message. Conclusion: the plaintext is structured. What if we had compressed the plaintext?

Dr Hans Georg Schaathun Simple LSB embedding (recap) Spring 2007 24 / 34

slide-60
SLIDE 60

Some steganalytic observations The visual attack

Structure in the message

What are the vertical stripes? Structure? Of what? No relation to image... i.e. must relate to message. Conclusion: the plaintext is structured. What if we had compressed the plaintext?

Dr Hans Georg Schaathun Simple LSB embedding (recap) Spring 2007 24 / 34

slide-61
SLIDE 61

Some steganalytic observations The visual attack

Why is the message structured?

Message as 384x213 image The stripes are there. Why? How did we convert text to binary? What has happened,

All first-bits comes first All seventh-bits comes last Bit 6-7 is often zero

Dr Hans Georg Schaathun Simple LSB embedding (recap) Spring 2007 25 / 34

slide-62
SLIDE 62

Some steganalytic observations The visual attack

Why is the message structured?

Message as 384x213 image The stripes are there. Why? How did we convert text to binary? What has happened,

All first-bits comes first All seventh-bits comes last Bit 6-7 is often zero

Dr Hans Georg Schaathun Simple LSB embedding (recap) Spring 2007 25 / 34

slide-63
SLIDE 63

Some steganalytic observations The visual attack

Why is the message structured?

Message as 384x213 image The stripes are there. Why? How did we convert text to binary? What has happened,

All first-bits comes first All seventh-bits comes last Bit 6-7 is often zero

Dr Hans Georg Schaathun Simple LSB embedding (recap) Spring 2007 25 / 34

slide-64
SLIDE 64

Some steganalytic observations The visual attack

Why is the message structured?

Message as 384x213 image The stripes are there. Why? How did we convert text to binary? What has happened,

All first-bits comes first All seventh-bits comes last Bit 6-7 is often zero

Dr Hans Georg Schaathun Simple LSB embedding (recap) Spring 2007 25 / 34

slide-65
SLIDE 65

Some steganalytic observations The visual attack

Why is the message structured?

Message as 384x213 image The stripes are there. Why? How did we convert text to binary? What has happened,

All first-bits comes first All seventh-bits comes last Bit 6-7 is often zero

Dr Hans Georg Schaathun Simple LSB embedding (recap) Spring 2007 25 / 34

slide-66
SLIDE 66

Some steganalytic observations The visual attack

Why is the message structured?

Message as 384x213 image The stripes are there. Why? How did we convert text to binary? What has happened,

All first-bits comes first All seventh-bits comes last Bit 6-7 is often zero

Dr Hans Georg Schaathun Simple LSB embedding (recap) Spring 2007 25 / 34

slide-67
SLIDE 67

Some steganalytic observations The visual attack

Why is the message structured?

Message as 384x213 image The stripes are there. Why? How did we convert text to binary? What has happened,

All first-bits comes first All seventh-bits comes last Bit 6-7 is often zero

Dr Hans Georg Schaathun Simple LSB embedding (recap) Spring 2007 25 / 34

slide-68
SLIDE 68

Some steganalytic observations The visual attack

Different message structure

Character by character

Same message Ordered character by character. Is there structure?

  • Maybe. Definitly less.

Dr Hans Georg Schaathun Simple LSB embedding (recap) Spring 2007 26 / 34

slide-69
SLIDE 69

Some steganalytic observations The visual attack

Different message structure

Character by character

Same message Ordered character by character. Is there structure?

  • Maybe. Definitly less.

Dr Hans Georg Schaathun Simple LSB embedding (recap) Spring 2007 26 / 34

slide-70
SLIDE 70

Some steganalytic observations The visual attack

Different message structure

Character by character

Same message Ordered character by character. Is there structure?

  • Maybe. Definitly less.

Dr Hans Georg Schaathun Simple LSB embedding (recap) Spring 2007 26 / 34

slide-71
SLIDE 71

Some steganalytic observations The visual attack

Different message structure

Character by character

Same message Ordered character by character. Is there structure?

  • Maybe. Definitly less.

Dr Hans Georg Schaathun Simple LSB embedding (recap) Spring 2007 26 / 34

slide-72
SLIDE 72

Some steganalytic observations The visual attack

Can you detect it?

Dr Hans Georg Schaathun Simple LSB embedding (recap) Spring 2007 27 / 34

slide-73
SLIDE 73

Some steganalytic observations Histogramme

Outline

1

Review of LSB The image in the spatial domain Numbers in Bits LSB of an image Merits and flaws

2

Some steganalytic observations The visual attack Histogramme Conclusions

Dr Hans Georg Schaathun Simple LSB embedding (recap) Spring 2007 28 / 34

slide-74
SLIDE 74

Some steganalytic observations Histogramme

A typical image

Image histogram made by imhist in Matlab Gives number of pixels per colour-value

Dr Hans Georg Schaathun Simple LSB embedding (recap) Spring 2007 29 / 34

slide-75
SLIDE 75

Some steganalytic observations Histogramme

And a stego-image

Dr Hans Georg Schaathun Simple LSB embedding (recap) Spring 2007 30 / 34

slide-76
SLIDE 76

Some steganalytic observations Histogramme

And a stego-image

Dr Hans Georg Schaathun Simple LSB embedding (recap) Spring 2007 30 / 34

slide-77
SLIDE 77

Some steganalytic observations Histogramme

What happened?

Histogram of stego-image: More ragged Every other bar sticks out. Why? 50.8% 1-s in the binary message.

Dr Hans Georg Schaathun Simple LSB embedding (recap) Spring 2007 31 / 34

slide-78
SLIDE 78

Some steganalytic observations Histogramme

What happened?

Histogram of stego-image: More ragged Every other bar sticks out. Why? 50.8% 1-s in the binary message.

Dr Hans Georg Schaathun Simple LSB embedding (recap) Spring 2007 31 / 34

slide-79
SLIDE 79

Some steganalytic observations Histogramme

What happened?

Histogram of stego-image: More ragged Every other bar sticks out. Why? 50.8% 1-s in the binary message.

Dr Hans Georg Schaathun Simple LSB embedding (recap) Spring 2007 31 / 34

slide-80
SLIDE 80

Some steganalytic observations Histogramme

What happened?

Histogram of stego-image: More ragged Every other bar sticks out. Why? 50.8% 1-s in the binary message.

Dr Hans Georg Schaathun Simple LSB embedding (recap) Spring 2007 31 / 34

slide-81
SLIDE 81

Some steganalytic observations Histogramme

What happened?

Histogram of stego-image: More ragged Every other bar sticks out. Why? 50.8% 1-s in the binary message.

Dr Hans Georg Schaathun Simple LSB embedding (recap) Spring 2007 31 / 34

slide-82
SLIDE 82

Some steganalytic observations Histogramme

What is characteristic?

Pairs of values

Consider colour 2i (i = 0, 1, . . . , 127)

What happens under LSB embedding? 2i → 2i, 2i + 1 Never 2i → 2i − 1.

Likewise 2i + 1 → 2i, 2i + 1 (2i, 2i + 1) is a Pair of Values

Dr Hans Georg Schaathun Simple LSB embedding (recap) Spring 2007 32 / 34

slide-83
SLIDE 83

Some steganalytic observations Conclusions

Outline

1

Review of LSB The image in the spatial domain Numbers in Bits LSB of an image Merits and flaws

2

Some steganalytic observations The visual attack Histogramme Conclusions

Dr Hans Georg Schaathun Simple LSB embedding (recap) Spring 2007 33 / 34

slide-84
SLIDE 84

Some steganalytic observations Conclusions

Conclusions

Message structures are visible in the stego-image. Many kinds of structures

Ratio of 1-s versus 0-s. Location of 0-s and 1-s.

Such structure disappear with compression Textbooks focus on LSB of coverimage

Visible structures in the cover disappear in the stego-image

Less obvious if the message is randomly and sparsely distributed.

Dr Hans Georg Schaathun Simple LSB embedding (recap) Spring 2007 34 / 34