A Quadratic-Residue-based Fragile Watermarking Scheme Chair Professor Chin-Chen Chang Feng Chia University National Chung Cheng University National Tsing Hua University http://msn.iecs.fcu.edu.tw/~ccc
Outline Introduction The proposed scheme Experimental results Conclusions
The Fields of Image Authentication Media communications Embedding Verifying Authentication code
(Tampered areas located Image) Introduction Authentication bits: 110110110011 (Cover Image) (Watermarked Image) (Tampered Image) (Tampered areas located Image) (Restored Image)
Requirements Effectiveness: Differentiation: Security: Recoverability: Provide a high probability of tamper detection Can distinguish between an innocent adjustment and replacing or adding features on purpose Only a selected group of people having a secret key can perform the detection Can recover back to the correct image from the modification
The Proposed Method Three techniques are employed Watermark Generating Watermark Embedding Tamper Detecting and Recovering
The Proposed Scheme . Embedding Processes … . . . 1. Divide the image into non-overlapping 1x3 blocks 50 60 61 175 30 150 … 100 95 203 90 93 . . . .
The Proposed Scheme 2. Generate authentication bits: Y = (PM)2e-1 mod N N = r × s = 13x19 = 247 < 255 (grey-level) PM = the decimal value of the first pixel’s high nibble e-1(a randomly chosen modifier) = the inverse of e mod (r × s), where Case 1 a: the first element satisfied and Case 2 b: the first element satisfied and Case 3 c: the first element satisfied and Case 4 d: the first element satisfied and
The Proposed Scheme Ex: 28 90 93 PM = 1 00011100 01011010 01011101 PM = 1 R = {2 mod r | 1 ≤ ≤ r – 1} = {1, 3, 4, 9, 10, 12} S = {2 mod s | 1 ≤ ≤ s – 1} = {1, 4, 5, 6, 7, 9, 11, 16, 17} a = 4, b = 3, c = 5, d = 2 If e = c = 5, then e-1 = 99 Y = (PM)2e-1 mod N = (1)2 × 99 mod 247=99
The Proposed Scheme 3. Embed authentication bits into cover pixels 28 90 93 28 86 83 (binary representation) 00011100 01011010 01011101 00011100 01010110 01010011 Y = 99 0110 0011
The Proposed Scheme Verifying Processes PM = 1 Y = 99 0110 0011 1. Extract PM and the embedded Y 28 86 83 (binary representation) 00011100 01010110 01010011 PM = 1 Y = 99 0110 0011
The Proposed Scheme 2. Compute , where t = 0 e = 5 (e = c, c is selected by a pseudo-random number generator with private key K ) N = 247
The Proposed Scheme = 1 PM = 1 3. Verify 12 mod 247 = 12 mod 247 pass (Otherwise, mark this block as tampered block)
The Proposed Scheme Recovering Processes n1 n2 n3 P(n1,n2,n3)
Recovering Processes . … . . . x1 = P(61, 175, 203) = 61 50 60 61 175 30 150 … 100 95 203 x1 x2 x3 . . . . x1 = P(61, 175, 203) = 61 x2 = P(175, 30, 61) = 144 x3 = P(30, 150, 144) = 36
Experimental Results Original Images (512 X 512)
Experimental Results Modified Images (512 X 512)
Experimental Results
Experimental Results
Wet Paper Coding Key 1 1 1 Fridrich, J. Goljan, M., Lisonek, P. and Soukal, D., “Writing on Wet Paper,” IEEE Transactions on Signal Processing, vol. 53, no. 10, pp. 3923- 3935.
The important area is marked as wet pixel Wet Paper Coding (2/2) The important area is marked as wet pixel 21 30 30 Cover Image × = ? Random Matrix LSB of Cover Image Secret Data 20 30 31 Stego-image
Wet Paper Coding with XOR Operation Key 30 35 31 33 34 32 Eight groups {31}, {35, 31, 32}, {34, 35, 33}, {32}, {33}, {35, 35}, {33, 33, 34}, {32, 32} Secrets: 0 1 0 1 0 1 1 1 LSB(31) {30} Stego-pixels At least one dry pixel LSB(35) ⊕LSB(31) ⊕ LSB(32) 1 {35, 31, 33}
30 35 31 33 34 32 Secret Extracting LSB(30) = 0 LSB(35) ⊕LSB(31) ⊕ LSB(33) =1 LSB(34) ⊕LSB(35) ⊕LSB(33) = 0 LSB(33) = 1 LSB(32) = 0 LSB(35) ⊕LSB(34) = 1 LSB(33) ⊕LSB(33) ⊕LSB(35)= 1 LSB(32) ⊕LSB(33) = 1
Conclusions Simple Efficient Good stego image quality
Thanks for your listening~