Steganalysis of Reversible Contrast Mapping Watermarking

Steganalysis of Reversible
Contrast Mapping Watermarking
Authors: Yeh-Shun Chen and Ran-Zan Wang
Source: IEEE Signal Processing Letters, Vol. 16, No. 2,
February 2009, pp. 125-128
Reporter: Chia-Chun Wu (吳佳駿)
Date: 2010/08/27
1
Outline







1.
2.
3.
4.
5.
6.
7.
Reversible Watermark
Reversible Contrast Mapping
Embedding
Detection and Recovering
Steganalysis
Experimental results
Conclusions
2
1. Reversible Watermark
Cover
(1/4)
extraction
embedding
Watermark
Stego
Watermark
Irreversible Watermarking
Cover
extraction
embedding
Watermark
Stego
recover
Reversible Watermarking
Watermark
Cover
3
1. Reversible Watermark

(2/4)
Irreversible Watermarking
Internet
Cover image
Watermark
Stego image
Watermark
4
1. Reversible Watermark

(3/4)
Irreversible Watermarking
Watermark
Cover image
162 150
xi
10010110
xi+1
163 150
yi
10100010
yi+1
10100011
10010110
1
0
mi
mi+1
1
0
mi
mi+1
5
1. Reversible Watermark

(4/4)
Reversible Watermarking
Internet
Cover image
Watermark
Stego image
Cover image
Watermark
6
Very Fast Watermarking by Reversible Contrast Mapping, Dinu Coltuc
and Jean-Marc Chassery, IEEE Signal Processing Letters, Vol. 14, No. 4,
April 2007, pp. 255-258.
2. Reversible Contrast Mapping


(1/2)
RCM is a simple integer transform
RCM applies to pairs of pixels




Let ( X , Y ) be a pair of pixels in original image
Let ( X ', Y ') be a pair of pixels in stego image
Let [0, L] be image graylevel range (ie. L = 255)
a is the ceil function (the smallest integer
greater than or equal to a )
7
2. Reversible Contrast Mapping

The forward RCM :

Y '  2Y  X
The inverse RCM :
X ' 2X Y
1 
2
X   X ' Y '
3 
3
(2/2)
0  2 X  Y  L,
0  2Y  X  L
2 
1
Y   X ' Y '
3 
3
X’ and Y’ are both odd only if X and Y are both odd
If X and Y are not both odd
then inverse correct even if LSB bit set to 0
8
2. Reversible Contrast Mapping

The forward RCM :
X ' 2X Y
Y '  2Y  X
(7, 4)  (10, 1)

(2/2)
(7, 9)  (5, 11)
The inverse RCM :
1 
2
X   X ' Y '
3 
3
(10, 1)  (7, 4)
(10, 0)  (7, 4)
2 
1
Y   X ' Y '
3 
3
(5, 11)  (7, 9)
9
DC  D  {( X , Y ) 2 X  Y  0, 2Y  X  0, 2 X  Y  L, 2Y  X  L}
3. Embedding
(1/2)
Step1: Partition the image into pairs of pixels.
Step2: For each pair ( X , Y )
DC and are not both odd pixel values.
Case 1: If ( X , Y )

- transform the pair by the forward RCM
- set the LSB of X ' to “1”
- embed data into the LSB of Y '
Case 2: If ( X , Y )
 DC and are both odd pixel values.
- transform the pair by the forward RCM
- set the LSB of X ' to “0”
- embed data into the LSB of Y '
Case 3: If ( X , Y )

DC
- set the LSB of X to “0” and save the true value
10
10
12
X '  2 10  12  8
11
embed “0”
Y '  2 12  10  14 ( X ' , Y ' )  (9,14)
X '  810  10002
embed “1”
10012  910  X '
Y '  11112  1510
Y '  1410  11102
( X ' , Y ' )  (9,15)
10
13
X '  2 10  13  7
Y '  2 13  10  16
X '  2 11  13  9
( X ' , Y ' )  (7,16)
embed “1”
X '  710  1112
Y '  100002 
Y '  1610  100002
100012  1710
( X ' , Y ' )  (7,17)
embed “0”
Y '  2 13  11  15 ( X ' , Y ' )  (8,14)
X '  910  10012
X '  810  10002
Y '  1510  11112
11
embed “0”
13
embed “1”
( X ' , Y ' )  (8,15)
21
X '  2 11  21  1 , ( X ' , Y ' )  DC
Y '  2  21  11  31
X  1110  10112 save the LSB of X
X '  X  10102  1010 , Y '  Y
( X ' , Y ' )  (10,21)
11
4. Detection and Recovering
(1/2)
Step1: Partition the image into pairs of pixels.
Step2: For each pair ( X ' , Y ' )
Case 1: If the LSB of X ' is “1”
- extract the LSB of Y '
- set the LSBs of ( X ' , Y ' ) to “0”
- transform the inverse RCM
Case 2: If the LSB of X ' is “0” and belongs to DC
- extract the LSB of Y '
- set the LSBs of ( X ' , Y ' ) to “1”
- transform the inverse RCM
12
4. Detection and Recovering
(2/2)
Case 3: If the LSB of X ' is “0” and the pair ( X ' , Y ' ) with
the LSBs set to “1” does not belong to DC
- replacing the LSB of with X ' the
corresponding true value extracted
from the watermark sequence
13
3 3
1 1
LSB  1  (  )case1  (  )case 2  0.625
4 4
4 4
3 1
1 3
LSB  0  (  )case1  (  )case 2  0.375
4 4
4 4
5. Steganalysis
Case 1: If ( X , Y )
 DC
(1/2)
and are not both odd pixel values.
- set the LSB of X ' to “1”
- embed data into the LSB of Y '
LSB(X, Y) = (0, 0), (0, 1) and (1, 0)  LSB(X', Y') = (1, 1) or (1, 0)
Case 2: If ( X , Y )
 DC and are both odd pixel values.
- set the LSB of X ' to “0”
- embed data into the LSB of Y '
LSB(X, Y) = (1, 1)  LSB(X', Y') = (0, 0) or (0, 1)
Case 3: If ( X , Y )
 DC
- set the LSB of X to “0” and save the true value
LSB(X, Y) = (0, 0), (0, 1) , (1, 0) and (1, 1)  LSB(X', Y') = (0, 0) or (0, 1)
14
5. Steganalysis
PR
(2/2)
 Embedding ratio
PRCM  Corresponding probabilities of RCM
 0.9522 (mean value for the 962 images)
(0.375  PR  0.5  (1  PR ))  PRCM  0.75  PRCM , if b = 0
PLSB (b)  
 (0.625  PR  0.5  (1  PR ))  PRCM  0.25  PRCM , if b = 1
If PR
If P
 R
 If PR
If P
 R
If PR
 0,
PLSB (0)  0.511950 and PLSB (1)  0.488050
 0.25, PLSB (0)  0.482194 and PLSB (1)  0.517806
 0.5, PLSB (0)  0.452438 and PLSB (1)  0.547563
 0.75, PLSB (0)  0.422681 and PLSB (1)  0.577319
 1,
PLSB (0)  0.392925 and PLSB (1)  0.607075
15
Mean value of the PLSB(1)-PLSB(0): -0.013306
Standard derivation of the PLSB(1)-PLSB(0): 0.03736
6. Experimental results
(1/3)
Fig. 1. Distribution of the PLSB(1)-PLSB(0) values of RCM watermarking
stego-images for various embedding ratios. (962 test images)
16
 true, if PLSB (1)  PLSB (0)  
W (O)  
false, otherwise
6. Experimental results
(2/3)
    0.5    0.013306  0.5  0.03736
 0.005374
Fig. 2. Detection result of the proposed method for various
threshold values. (1516 test images)
17
5. Experimental results
(3/3)
Table I
Mean Estimated Embedding Ratios of Hidden Messages
PR
 Embedding ratio
PRCM  Corresponding probabilities of RCM

 0.9522 (mean value for the 962 images)
 Threshold was set to 0.005374

PLSB (1)  PLSB (0)

PR  

 (0.625  0.375)  PRCM +(0.25  0.75)  PRCM

PLSB (1)  PLSB (0)

PR  

 0.25  PRCM  0.5  PRCM
18
6. Conclusions

This paper presented a simple method for
cracking RCM watermarking.
19