Some Novel Steganographic Methods for Digital Images Chin-Chen Chang Chair Professor, Feng Chia University; Honorary Professor, National Chung Cheng University Hopewell Appointed Professor, National Tsing Hua University
Introduction Information Hiding Hiding system Stego image Cover image 1 0 1 0 1 0 0 1 0 1 1 1 1 0 0 Secret message
Introduction (Cont.) Cover Carriers Image Video Sound Text
Mielikainen’s Method Embedding (gi, gi+1) = (8, 7) = (0000 1000, 0000 0111) 0 1 = 1 Secret data: (b1, b2) = (0, 1) (gi’, gi+1’) = (gi, gi+1) = (8, 7) (0, 0) (gi’, gi+1’) = (gi, gi+1-1) = (8, 6) (1, 0) (gi’, gi+1’) = (gi-1, gi+1) = (7, 7) (1, 1) (gi’, gi+1’) = (gi+1, gi+1) = (9, 7) (0000 1000, 0000 0111) (0000 1000, 0000 0110) (0000 0111, 0000 0111) (0000 1001, 0000 0111) (gi, gi+1) = (8, 7) = (0000 1000, 0000 0111) Extracting 0 1 = 1 Extracted secret data: 0 1
Zhang and Wang’s Method (Embedding) Extracting function: 8 7 9 4 79 54 55 11 20 21 12 24 10 Secret data: 1000 1011… p2 255 1 2 3 4 1 2 3 4 1 : : : : : : : : : : : : : 10002 1 35 … 11 2 3 4 1 2 3 4 1 2 3 2 … 10 1 2 3 4 1 2 3 4 1 Cover image … 9 3 4 1 2 3 4 1 2 3 4 3 … 8 1 2 3 4 1 2 3 4 1 2 1 … 7 4 1 2 3 4 1 2 3 4 4 … 6 2 3 4 1 2 3 4 1 2 3 2 … 5 1 2 3 4 1 2 3 4 1 7 10 4 … 4 3 4 1 2 3 4 1 2 3 4 3 … 3 1 2 3 4 1 2 3 4 1 2 1 … 2 4 1 2 3 4 1 2 3 4 4 … 1 2 3 4 1 2 3 4 1 2 3 2 … 1 2 3 4 1 2 3 4 1 Stego image 1 2 3 4 5 6 7 8 9 10 11 … 255 p1 Magic Matrix
Zhang and Wang’s Method (Extracting) p2 7 10 4 255 1 2 3 4 1 2 3 4 1 : : : : : : : : : : : : : … 11 2 3 4 1 2 3 4 1 2 3 2 … 10 1 2 3 4 1 2 3 4 1 … 9 3 4 1 2 3 4 1 2 3 4 3 … 8 1 2 3 4 1 2 3 4 1 2 1 Stego image … 7 4 1 2 3 4 1 2 3 4 4 … 6 2 3 4 1 2 3 4 1 2 3 2 … 5 1 2 3 4 1 2 3 4 1 … 4 3 4 1 2 3 4 1 2 3 4 3 … 3 1 2 3 4 1 2 3 4 1 2 1 … 2 4 1 2 3 4 1 2 3 4 4 1 35 … 1 2 3 4 1 2 3 4 1 2 3 2 … 1 2 3 4 1 2 3 4 1 p1 1 2 3 4 5 6 7 8 9 10 11 … 255 Extracted secret data: 10002 Magic Matrix
Sudoku A logic-based number placement puzzle
Sudoku (Cont.) Property A Sudoku grid contains nine 3 × 3 matrices, each contains different digits from 1 to 9. Each row and each column of a Sudoku grid also contain different digits from 1 to 9. Possible solutions: 6,670,903,752,021,072,936,960 (i.e. ≈ 6.671×1021)
Data Hiding Using Sudoku - 1 Reference Matrix M
Data Hiding Using Sudoku (Embedding) (Cont.) 8 7 11 12 79 54 55 20 21 24 10 9 Secret data: 011 001 10… 279 Cover Image min. d( , ) = ((8-8)2+(4-7)2)1/2=3 d( , ) = ((9-8)2+(7-7)2)1/2=1 d( , ) = ((6-8)2+(8-7)2)1/2=2.24 9 7 Stego Image
Data Hiding Using Sudoku (Embedding) (Cont.) 8 7 11 12 79 54 55 20 21 24 10 9 Secret data: 011 001 10… 279 Cover Image d( , ) = ((11-11)2+(15-12)2)1/2=3 d( , ) = ((15-11)2+(12-12)2)1/2=4 d( , ) = ((9-11)2+(14-12)2)1/2=2.83 min. 9 7 14 Stego Image
Data Hiding Using Sudoku (Extracting) (Cont.) 9 7 14 Stego Image Extracted data: 279 = 011 0012
Data Hiding Using Sudoku Method (Experimental Results)
Data Hiding Using Sudoku Method (Experimental Results) (Cont.)
Data Hiding Using Sudoku Method (Experimental Results) (Cont.) (b) Zhang and Wang’s method method (a) Mielikainen’s method (c) Data hiding using Sudoku
(7, 4) Hamming Coding Encoding p1 p2 d1 p3 d2 d3 d4 Encoding d1 d2 d3 d4 Encoding Data: 1 1 0 12 d2 d3 d4 = p3 1 0 1 = 0 d1 d2 d4 = p1 1 1 1 = 1 d1 d3 d4 = p2 1 0 1 = 0 1 0 1 0 1 0 1 p1 p2 d1 p3 d2 d3 d4 Encoded data
(7, 4) Hamming Coding (Cont.) Error Detection Error bit Received data: 1 0 1 0 1 1 1 Correcting Corrected data: 1 0 1 0 1 0 1 Error Position Parity check matrix H
Matrix Coding Method Embedding Secret data: 1 1 0 0… 11 10 9 6 3 4 12 00001011 00001010 00001001 00000110 00000011 00000100 00001100 00001010 00001001 00000110 00000011 00000100 00001100 00001011 Cover Image 10 9 6 3 4 12 11 (1010100)T = (1 1 1)T Stego Image 0 0 1 Secret data: 1 1 0 0… Parity check matrix H
Matrix Coding Method (Cont.) Extracting 10 9 6 3 4 12 11 00001010 00001001 00000110 00000011 00000100 00001100 00001011 Stego Image (0010100)T = (1 1 0)T Extracted secret data: 1 1 0 0… PS. 7 pixels embed 3 bits
“Hamming+1” Method Embedding Secret data: 1 1 0 0… 11 10 9 6 3 4 12 00001011 00001010 00001001 00000110 00000011 00000100 00001100 00001100 00001010 00001001 00000110 00000011 00000100 00001011 Cover Image 00001010 (1+1+0+1+1+0+0+ 1) mod 2= 1 or 00001100 (0+1+0+1+1+0+0+ 1) mod 2= 0 12 10 9 6 3 4 8 11 (1010100)T = (1 1 1)T ? = Stego Image 0 0 1 Secret data: 1 1 0 0… Parity check matrix H
“Hamming+1” Method (Cont.) Extracting 12 10 9 6 3 4 11 00001100 00001010 00001001 00000110 00000011 00000100 00001011 Stego Image (0+1+0+1+1+0+0+ 1) mod 2= 0 (0010100)T = (1 1 0)T = Extracted secret data: 1 1 0 0… PS. 8 pixels embed 4 bits
Group of (7, 4) Hamming Codes (0000000) (0000001) (0000010) : (0001000) (0001001) (0001010) (0010111) (0011111) (0100000) (1010111) (1111111) (0000000), (0001000), (0100000), (0101000), (1000000), (1001000), (1100000), (1101000) G0001 (0000001), (0001001), (0100001), (0101001), (1000001), (1001001), (1100001), (1101001) G0010 (0000010), (0001010), (0100010), (0101010), (1000010), (1001010), (1100010), (1101010) G1111 (0010111), (0011111), (0110111), (0111111), (1010111), (1011111), (1110111), (1111111)
Group of (7, 4) Hamming Codes (Cont.) (0000001)T = (1 1 1)T = 710 (0001001)T = (0 1 1)T = 310 (0100001)T = (1 0 1)T = 510 (0101001)T = (0 0 1)T = 110 (1000001)T = (1 1 0)T = 610 (1001001)T = (0 1 0)T = 210 (1100001)T = (1 0 0)T = 410 (1101001)T = (0 0 0)T = 010 H
Group of (7, 4) Hamming Codes (Cont.) Embedding Secret data: 0001 101… 7 10 9 6 3 4 12 8 11 G0001 (0000001)T = (1 1 1)T = 710 (0001001)T = (0 1 1)T = 310 (0100001)T = (1 0 1)T = 510 (0101001)T = (0 0 1)T = 110 (1000001)T = (1 1 0)T = 610 (1001001)T = (0 1 0)T = 210 (1100001)T = (1 0 0)T = 410 (1101001)T = (0 0 0)T = 010 Cover Image 00000111 00001010 00001001 00000110 00000011 00000100 00001100 00001000 00001011 00000110 00001011 00001000 00000010 00000100 00001101 H 6 11 8 2 4 13 Stego Image
Group of (7, 4) Hamming Codes (Cont.) Extracting 6 11 8 2 4 13 00000110 00001011 00001000 00000010 00000100 00001101 Stego Image (0100001)T = (1 0 1)T H Extracted secret: 0 001 101…
Group of (7, 4) Hamming Codes (Experimental Results) Each stego image (512512) carried 262,143 secret bits (i.e. 0.99 bpp)
Group of (7, 4) Hamming Codes (Experimental Results) (Cont.)
Group of (7, 4) Hamming Codes (Experimental Results) (Cont.) (b) The pixel histogram of the stego image generated by the “Hamming+1” scheme (a) The pixel histogram of the stego image generated by the matrix coding scheme (c) The pixel histogram of the stego image generated by the proposed scheme
Thank you very much for your attention !!