chen xiaoyu huang. introduction of steganography a group of data hiding technique,which hides data...

33
Ternary Embedding Technique CHEN CHEN XIAOYU HUANG

Upload: bryana-ruddle

Post on 14-Dec-2015

216 views

Category:

Documents


2 download

TRANSCRIPT

  • Slide 1

CHEN XIAOYU HUANG Slide 2 Introduction of Steganography A group of data hiding technique,which hides data in undetectable way. Features extracted from modified images and original images have to be statistically undistinguishable Images, audio, video, text..digital compressed images(JPEG) Slide 3 Ternary Embedding Technique Popular steganographic: ME,MME(Binary computation) Improving existing steganogrphic data hiding methods by replacing the binary computation to ternary----ternary coefficients Higher information density Larger number of possible solutions Better solution with minimum distortion impact Slide 4 Slide 5 JPEG was designed specifically to discard information that the human eye cannot easily see. Slide 6 Partition image into 8x8 blocks, left-to-right, top-to-bottom Compute Discrete Cosine Transform(DCT) of each block Quantize coefficients according to psychovisual quantization tables Order DCT coefficients in zigzag order Perform runlength coding of bitstream of all coefficients of a block Perform Huffman coding for symbols formed by bit patterns of a block Slide 7 The first step reduces the dynamic range requirements in the DCT processing stage that follows V(i,j) is the dot of original image; F(0,0) is the Direct Current, other F(u,v) is Alternating Current Discrete Cosine Transform(DCT) Slide 8 Quantisation Quantisation is a process to transfer DCT coefficients to a smaller range. The purpose of quantisation is to reduce the non-zero coefficients amplitute and increase the number of zero coefficients(high frequency). Quantisation is the main reason causes a pictures quality drops. Slide 9 Sq(u,v) is the result after quantisation F(u,v) is the DCT coefficients Q(u,v) is the quantisation table Round is the function to round up or down Slide 10 Example Consider a 8x8 block using formula F(i,j)=V(i,j)-128, we get a block Slide 11 Example Using DCT, we get a result of -415 is the Direct Current Consider a quantisation table Slide 12 Example Using formula We get a result Slide 13 Information Hiding in JPEG Coefficients Information hiding into JPEG image adds more distortion beside the JPEG compression rounding errors: Example: C 1 =4.23, C 1 =4, r 1 =0.23 Slide 14 Information Hiding in JPEG Coefficients A message M is to be embedded into C, and the message embedded set is S. We denote LSB(c i ) as x i. If x i = m i, then s i = c i. If x i m i, then, To minimize the absolute value of r i Slide 15 Information Hiding in JPEG Coefficients The distortion, d i, is given by Finally, the additional distortion e i caused by changing any single bit ci is given by A goal in information hiding is to design embedding functions to minimizing the distortion Slide 16 Modified Matrix Coding The notation (t, n, k),where n = 2 k 1. denotes embedding k message bits into an n bit sized block by changing t bits of it. Divides cover data C, into blocks of length n and message data M, into blocks of length k. Matrix Coding: t=1 Modified Matrix Coding: t>=1 t1 is more efficient than t=1. Slide 17 Matrix Coding-Example 1 two bits x1, x2 three modifiable bit places a1, a2, a3 hanging one place at most. In all four cases we do not change more than one bit Slide 18 Matrix Coding Parity check matrix (H): dependency between message bits and code word bits Ex: k=3, n=2^k-1 = 7, H:0 0 0 1 1 1 1 0 1 1 0 0 1 1 1 0 1 0 1 0 1 X = HC T p=binvec2dec(X M) Change p to embed message bits Cp = Cp (1->0 and 0->1) Slide 19 Example: A cover block C = (1 0 0 1 0 0 0) The message to be transmitted M=(1 1 0) Parity check matrix H= 0 0 0 1 1 1 1 0 1 1 0 0 1 1 1 0 1 0 1 0 1 We have X = HC T = 1 0 1 and p=binvec2dec(X M) = 3 Then we change the 3 rd bit in the cover C, resulting in S = (1 0 1 1 0 0 0) Slide 20 In receiving, we have S, H, we can retrieve m, i.e., Slide 21 Modified Matrix Coding For t = 2, we find pairs of numbers (, ) such that = p, there are (n1)/2 such pairs which can be enumerated easily For each of the pairs (i, i), the embedding error is given by one of four cases: Find the pair (i, i) with the minimum e i Slide 22 Modified Matrix Coding Embedding error analysis Embedding error Per changed coefficient Slide 23 Modified Matrix Coding Modified matrix encoding (MME) always has several solutions and may choose the best one which causes the lowest distortion The number of possible solutions for MME N MME is computed as follows: Slide 24 Ternary Data Hiding Technique Improvement of MME. converted to the ternary coefficients (i.e., 0,1,2)as follows: Data hiding method uses vector v = (v1, v2, , vn) (where n = 3 m -1), M org = Hv T ; for m = 2, the parity check matrix H: 0 0 1 1 1 2 2 2 1 2 0 1 2 0 1 2 Slide 25 Ternary Data Hiding Technique modifying one coefficient (2 solutions): C(j + ) = C(j + ) + 1, index j + : C(j - ) = C(j - ) 1, index j - : modifying two coefficients (more solutions): Required M org, j +, j - All two flip solutions: 4 groups coefficients with indexes p1 and p2 modified according (+1,-1), (-1,+1), (+1,+1), (-1,-1) Slide 26 Table 2. Two flip solutions Slide 27 Possible solutions The number of all possible solutions for the proposed method NTE can be computed as follows: More possible solutions than MME. Slide 28 Distortion Distortion can be computed as follows: Slide 29 Encoder For bitmap image I and binary message M: Divide image into 8 by 8 blocks. Compute rounded DCT coefficients Convert binary message M into ternary M t. Find maximum m of N is the number on non zero rounded DCT coefficients Divide stream of computed ternary coefficients into blocks of n = 3 m -1 coefficients. Hide data to each block, rebuild a stego image. Slide 30 Decoder: For stego image I stego process following: Get the stream of modified DCT coefficients Define stream of ternary coefficients. Divide stream of ternary coefficients to blocks of n = 3 m -1 coefficients. Recover the hidden message from each block using M = HV T Convert ternary hidden message to binary. Slide 31 Experimental results Tested by powerful steganalysis algorithm by T. Pevny and J. Fridrich [12]. Simply, Ternary embedding is better. Slide 32 References Some Notes on Steganography, Ron Crandall, Friday, December 18, 1998 F5A Steganographic Algorithm, High Capacity Despite Better Steganalysis, Andreas Westfeld Ternary Data Hiding Technique for JPEG steganography. Vasily Sachnev, Hyoung Joong Kim Modified Matrix Encoding Technique for Minimal Distortion Steganography, Younhee Kim, Zoran Duric, and Dana Richards Wikipedia Slide 33 THANKS!