1 / 16

A Novel steganographic method for JPEG images by Vasiliy Sachnev

A Novel steganographic method for JPEG images by Vasiliy Sachnev. Introduction JPEG compression Steganography Block based steganography method (F5) Improved matrix encoding Experimental results Conclusion. JPEG compression. Introduction. JPEG steganography:.

Télécharger la présentation

A Novel steganographic method for JPEG images by Vasiliy Sachnev

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. A Novel steganographic method for JPEG imagesby Vasiliy Sachnev Introduction JPEG compression Steganography Block based steganography method (F5) Improved matrix encoding Experimental results Conclusion

  2. JPEG compression

  3. Introduction JPEG steganography:

  4. Matrix Encoding (F5) Matrix encoding allows to hide n bits of data to stream of 2n-1 coefficients (S) by modifying one coefficient. ME schemes: (m, 2m-1), examples (2, 3) (3, 7) (4, 15) 1) Get stream of non-zero DCT coefficients: 1, -1, 2, 3, 1, -1, -3, 1, 8, 3, -1, -1, -1, 2, 1, 1, 1, 2, 3, 1, 12,…, N 2) Compute stream of corresponding informative bits b: 1, -1, 2, 3, 1, -1, -3, 1, 8, 3, -1, -1, -1, 2, 1, 1, 1, 2, 3, 1, 12, … 1, 0, 0, 1, 1, 0, 0, 1, 0, 1, 0, 0, 0, 0, 1, 1, 1, 0, 1, 1, 0, … 3) Define the matrix encoding scheme (n, 2n-1) such as, where C is the size of hidden message.

  5. Matrix encoding(F5) Assume that the ME scheme is(3,7). Hidden message (M) is (0 0 1). Stream of DCT coefficients (D) and stream of informative bits (S) are (3, -1, 2, 1, 1, -1, -3) and (1, 0, 0, 1, 1, 0, 0) respectively. For embedding message M to S one coefficient from D has to be modified. Compute necessary position (P={p1, p2, p3}) : S = {a1, a2, a3, a4,a5,a6,a7} 1) Compute syndrome O = {o1, o2, o3} o1 = xor(a4,a5,a6,a7) o2 = xor(a2,a3,a6,a7) o3 = xor(a1,a3,a5,a7) 2) Position (P) in binary representation is computed as: P = xor(O,M)

  6. Matrix Encoding (F5), example Hiding message M (0 0 1) to (3, -1, 2, 1, 1, -1, -3) or (1, 0, 0, 1, 1, 0, 0) • Get syndrome : o1 = xor(a4,a5,a6,a7)=xor(1,1,0,0) = 0 o2 = xor(a2,a3,a6,a7)=xor(0,0,0,0) = 0 o3 = xor(a1,a3,a5,a7)=xor(1,0,1,0) = 0 • Get position: P = xor(M,O) = {xor(0,0), xor(0,0), xor(1,0)} = {0, 0, 1}. P10 = 1 • Get stream of modified coefficients and informative bits (2(4), -1, 2, 1, 1, -1, -3) and (0, 0, 0, 1, 1, 0, 0) • Verification (get syndrome): (0, 0, 0, 1, 1, 0, 0) m1 = xor(a4,a5,a6,a7)=xor(1,1,0,0) = 0 m2 = xor(a2,a3,a6,a7)=xor(0,0,0,0) = 0 m3 = xor(a1,a3,a5,a7)=xor(0,0,1,0) = 1

  7. Modified matrix encoding Each 1 flip solution P can be replaced to floor(n/2) 2 flips solutions P1, P2, such that P = xor(P1, P2). Example: P = 510 = 01012 P1P2 0100 0001 0110 0011 0111 0010 1000 1101 1100 1001 1111 1010 3 flips solution is also possible: P = xor(P1, P2, P3)

  8. Overlapped matrix encoding Original ME: Overlapped ME: I

  9. Overlapped matrix encoding Assume that A and B are the positions to flip for block 1 and 2. (a1, a2), (b1,b2), (a11,a12,a13) or (b11,b12,b13) are the numbers such that A = xor(a1,a2) = xor (a11,a12,a13) , and B = xor(b1,b2) = xor (b11,b12,b13) B’ is a position for block 2, if A, (a1 or a2), or (a11 or a12 or a13) belong to I . B’ = xor(b’1,b’2) = xor (b’11,b’12,b’13) 1 flip solution: A = B, (A,B) ϵ I 2 flips solution: (A,B), (a1,a2 = B) or (b’1 = A, b’2) 3 flips solution: (a1,a2,B) , (a1,a2 = b’1,b’2), (A, b1 , b2) or (a11,a12 = b’1,a13 = b’2) , (a1 = b’11,a2 = b’12 ,b’13) 4 flips solution: (a1,a2,b1,b2), (a11,a12,a13 = b’1,b’2) , (a11,a12 = b’11,a13 = b’12, b’13) , (a1,a2 = b’11,b’12,b’13)

  10. Example: 1 2 3 4 5 6 7 8 9 10 11 Assume that A = 4 and B = 2: Possible solutions: (2, 6) 2 = 010, 6 = 110, xor(010,110) = 100 = 4. Coefficient 6 has index 2 for block 2. (B = 2) (4,9,11), A = 4, 9th and 11th coefficients have the indexes 5 and 7 correspondingly. Thus, 5 = 101, 7 = 111, xor(101,111) = 010 =2.

  11. Insert - Remove (IR) approach The stream of non-rounded AC coefficients: 1.45,0.21, 0.35 , 1.02, -0.01, -0.28, -5.12, 9.87, -0.45,0.02, 1.89, -0.85, 4.01, -8.74, -6.04, 1.55, 3.11, -10.34, 5.04 Hidden data: m1=101, m2=100 Assume that the candidates for inserting are the AC coefficients belonging to the (0.25, 0.5) and (-0.5, -0.25). 0.35, -0.28, -0.45 are the candidates for inserting (cI). 1.45, 1.02, -0.85 are the candidates for removing (cR). The stream of non-rounded AC coefficients for hiding data. 1.45, 1.02, -5.12, 9.87, 1.89, -0.85, 4.01, -6.04, 1.55, 3.11, -10.34 Rounded: 1, 1, -5, 10, 2, -1, 4, -6, 2, 3, -10 Block 1: 1, 1, -5, 10, 2, -1, 4 Block 2: 2, -1, 4, -6, 2, 3, -10 Intersected area I: 2, -1, 4

  12. Distortion impact Distortion impact due to modification: D = E2∙Q2 Distortion impact due to insertion or removing: DIR = |0.5-|C||2∙ Q2 Total distortion impact:

  13. IR approach (without IR) AC: 1.45 0.21 0.351.02 -0.01 -0.28 -5.12 9.87 -0.45 0.02 1.89 -0.85 4.01 -8.74 Q : 10 7 7 40 35 14 12 25 40 35 10 7 17 21 D : 0.25 - - 368 - - 21 85 - - 15 21 69 25 DIR: 90 - 1.1 432 - 9.5 - - 4 - - 6 - - AC: -6.04 1.55 3.11 -10.34 5.05 Q : 35 12 10 7 7 D : 259 0.36 15 1.25 9.92 DIR: - - - - - Hidden data: m1=101, m2=100 Block 1: 1, 1, -5, 10, 2, -1, 4 Block 2: 2, -1, 4, -6, 2, 3, -10 Among one, two, and three flips solutions define A = (1,4), B = (6) Distortion for original approach is 100.2

  14. IR approach (Insertion and removing) 1.45 0.21 0.351.02 -0.01 -0.28 -5.12 9.87 -0.45 0.02 1.89 -0.85 4.01 -8.74 -6.04 1.55 3.11 -10.34 5.04 Insert 0.35 (i.e 0.35 -> 1), then Block 1: 1, 1,1, -5, 10, 2, -1 Block 2: 10, 2, -1, 4, -6, 2, 3 Among one, two, and three flips solutions define A = (1 7), B = (6) Distortion after inserting is 21.6 + 1.1 = 22.7 Remove 1.45 (i.e. 1.45 -> 0), then Block 1: 1, -5, 10, 2, -1, 4 , -6 Block 2: -1, 4, -6, 2, 3, -10, 5 Among one, two, and three flips solutions define A = (2 4 6), B = (7) Distortion for original approach is 120.9 + 90 = 210.9

  15. Experimental results The stego images have been tested by using 274 – features steganalysis method proposed by Pevny and Fridrich

  16. Conclusion The proposed oimproved matrix encoding: - achieves higher capacity. • can improve any block based steganographic method • decrease detectability of steganalysis • can be improved further.

More Related