基於(7,4)漢明碼的隱寫技術 Chair Professor Chin-Chen Chang (張真誠) National Tsing Hua University National Chung Cheng University Feng Chia University http://msn.iecs.fcu.edu.tw/~ccc
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
? Data: 1 1 0 1 . . . . . . . . 1 1 1 1 Data: 1 0 1 0 1 0 1 . . . . . . . . 1 0 1 0 1 1 1 Corrected data: 1 0 1 0 1 0 1 Sender Receiver
(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
(7, 4) Hamming Coding (Cont.) The (7,4) Hamming code can be applied to data hiding based on the pixel domain and AMBTC domain.
Matrix Coding Method = [0010100] Example: [7,4] Hamming code, the parity check matrix H is : Embedding process: Cover vector Stego vector y = Change one bit in x according to coset leader associated to syndrome = Change one bit in x according to coset leader associated to = Change one bit in according to coset leader associated to = [0010100] Extraction process: 1000000 0100000 0010000 0001000 0000100 0000010
Matrix Coding Method – based on the pixel domain Embedding 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.) – based on the pixel domain 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… ■ 7 pixels embed 3 bits
Matrix Coding Method – based on the AMBTC algorithm 248 76 49 62 57 24 96 118 125 144 56 41 82 97 211 114
Matrix Coding Method – based on the AMBTC algorithm AMBTC algorithm (Absolute moment block truncation coding) 248 76 49 62 57 24 96 118 125 144 56 41 82 97 211 114 1 160 64 Original block 0/1 bitmap Reconstructed block Average=100 High mean value = 160 Low mean value = 64
The flowchart of the proposed scheme – embedding phase
An example of the proposed scheme – embedding phase
An example of the proposed scheme – embedding phase Embed secret into the bitmaps
An example of the proposed scheme – embedding phase Embed secret into (H, L) Final Result
An example of the proposed scheme – extraction phase Extract secret from bitmaps
An example of the proposed scheme – extraction phase Extract secret from quantization pairs
Experimental results Test images
Chuang and Chang’s scheme Experimental results Scheme Criteria Lena Zelda Elain Jet Boat Goldhill Average AMBTC PSNR (dB) 33.23 36.74 33.83 33.25 31.76 32.87 33.61 Proposed scheme 28.92 32.25 29.41 28.11 27.56. 28.74 29.17 HC (bits) 169,250 168480 172,479 168,388 170,103 172,771 170,245 Chang et al.’s scheme [1] 30.71 34.26 31.26 30.99 31.02 30.49 31.45 114,688 Chuang and Chang’s scheme [2] 30.45 33.98 31.07 30.52 29.84 31.06 13,051 13,169 13,248 12,637 11,989 12,486 12,763 [1] C.C. Chang, Y.J. Liu, and S.T. Nguyen, “Hiding Secret Information in Block Truncation Code Using Dynamic Programming Strategy,” In Proceedings of 6th International Graphic and Image Processing, vol. 9443, Beijing, China, 2014. [2] J.C. Chuang and C.C. Chang, “Using a simple and fast image compression algorithm to hide secret information,” International Journal of Computers & Applications, vol. 28, no. 4, pp. 329-333, 2006.
Conclusions Based on the property of Hamming code, the embedding and the extracting are very simple. The proposed steganographic scheme achieves much higher payload with a slightly lower visual quality of stego images compared with the related works.