Upcoming SlideShare
×

# A novel steganographic method for jpeg images

481 views

Published on

2wfdsd

0 Likes
Statistics
Notes
• Full Name
Comment goes here.

Are you sure you want to Yes No
• Be the first to comment

• Be the first to like this

Views
Total views
481
On SlideShare
0
From Embeds
0
Number of Embeds
1
Actions
Shares
0
18
0
Likes
0
Embeds 0
No embeds

No notes for slide

### A novel steganographic method for jpeg images

1. 1. 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
2. 2. JPEG compression
3. 3. IntroductionJPEG steganography:
4. 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,…, N2) Compute stream of corresponding informative bits b: c( i , j ) mod 2  if c( i , j ) > 0 b( i , j ) = ( c( i , j ) − 1) mod 2 if c( i , j ) < 0  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, 2 n-1) such as, N ⋅n ≥ C 2 −1 nwhere C is the size of hidden message.
5. 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}  0 0 0 1 1 1 1  1) Compute syndrome O = {o1, o2, o3} H =  0 1 1 0 0 1 1 1 0 1 0 1 0 1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. 6. Matrix Encoding (F5), exampleHiding message M (0 0 1) to (3, -1, 2, 1, 1, -1, -3) or (1, 0, 0, 1, 1, 0, 0)1) 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) = 02) Get position: P = xor(M,O) = {xor(0,0), xor(0,0), xor(1,0)} = {0, 0, 1}. P10 = 13) Get stream of modified coefficients and informative bits (2(4), -1, 2, 1, 1, -1, -3) and (0, 0, 0, 1, 1, 0, 0)4) 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
7. 7. Modified matrix encodingEach 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 P1 P2 0100 0001 0110 0011 0111 0010 1000 1101 1100 1001 1111 10103 flips solution is also possible: P = xor(P1, P2, P3)
8. 8. Overlapped matrix encodingOriginal ME:Overlapped ME: I
9. 9. Overlapped matrix encodingAssume 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) ϵ I2 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) ,
10. 10. Example: 1 2 3 4 5 6 7 8 9 10 11Assume 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. 11. Insert - Remove (IR) approachThe 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.04Hidden data: m1=101, m2=100Assume 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.34Rounded:1, 1, -5, 10, 2, -1, 4, -6, 2, 3, -10Block 1: 1, 1, -5, 10, 2, -1, 4 Block 2: 2, -1, 4, -6, 2, 3, -10Intersected area I: 2, -1, 4
12. 12. Distortion impactDistortion impact due to modification: D = E2∙Q2 0.5− | C −  C  |, if C ∈ ( − ∞ ;1.5) ∪ (1.5; ∞ ) E= 1.5− | C |, if C ∈ [−1.5;0.5) ∪ (0.5;1.5]Distortion impact due to insertion or removing: DIR = |0.5-|C||2 ∙ Q2Total distortion impact: Dtotal = ∑i =1 Di + DIR l
13. 13. IR approach (without IR)AC: 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.74Q : 10 7 7 40 35 14 12 25 40 35 10 7 17 21D : 0.25 - - 368 - - 21 85 - - 15 21 69 25DIR: 90 - 1.1 432 - 9.5 - - 4 - - 6 - -AC: -6.04 1.55 3.11 -10.34 5.05Q : 35 12 10 7 7D : 259 0.36 15 1.25 9.92DIR: - - - - -Hidden data: m1=101, m2=100Block 1: 1, 1, -5, 10, 2, -1, 4 Block 2: 2, -1, 4, -6, 2, 3, -10Among one, two, and three flips solutions define A = (1,4), B = (6)Distortion for original approach is 100.2
14. 14. IR approach (Insertion and removing)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.04Insert 0.35 (i.e 0.35 -> 1), thenBlock 1: 1, 1,1, -5, 10, 2, -1 Block 2: 10, 2, -1, 4, -6, 2, 3Among one, two, and three flips solutions define A = (1 7), B = (6)Distortion after inserting is 21.6 + 1.1 = 22.7Remove 1.45 (i.e. 1.45 -> 0), thenBlock 1: 1, -5, 10, 2, -1, 4 , -6 Block 2: -1, 4, -6, 2, 3, -10, 5Among one, two, and three flips solutions define A = (2 4 6), B = (7)Distortion for original approach is 120.9 + 90 = 210.9
15. 15. Experimental resultsThe stego images have been tested by using 274 – features steganalysis method proposed by Pevny and Fridrich
16. 16. ConclusionThe proposed oimproved matrix encoding:- achieves higher capacity.- can improve any block based steganographic method- decrease detectability of steganalysis- can be improved further.