Download presentation
Presentation is loading. Please wait.
1
第七章 資訊隱藏 張真誠 國立中正大學資訊工程研究所
2
影像偽裝術
3
Introduction Images have been widely used in our daily life.
The image security has become an important issue in current computer world. Image cryptology is a very useful tool to defend the information security.
4
Apply the Traditional Cryptosystem on Images
5
Problems The cipherimage is meaningless. Image Camouflage(影像偽裝)
Image size is huge Image Compression(影像壓縮) The decrypted image containing a small distortion is usually acceptable. Vector Quantization (向量量畫編碼法)
6
Virtual Image Cryptosystem
7
Vector Quantization Encoder
8
Vector Quantization Decoder
9
The Principle of the Virtual Image Cryptosystem
Separate O into a set of vectors {O1, O2, O3,…, Ono}. Separate V into another set of vectors {V1, V2, V3, … , Vnv} Let O be the original image Let {V1, V2, V3, …, Vnv} be the codebook
10
Encryption Randomly generate the transformed-origin G and the project-direction D. Project {V1, V2, V3, …, Vnv} to D based on G Sort the projected results, and obtain {{V’1, V’2, V’3, …, V’nv}
12
Encrypt w, h, no, G, and D into wc, hc, noc, Gc, and Dc by DES-like, respectively.
Encrypt I into Ic, where Ic=IXORX and X is the bit-string containing G, D, G, D,… only. Hide wc, hc, noc, Gc, Dc, and Ic into the pixels of V. Cipher Image Vc
13
Decryption
14
Original Image Airplane 512 X 512
Empirical Tests Test1: Original Image Airplane X 512
15
Virtual Image Lena 256 X 256 Cipher Image Lena 256 X 256 PSNR=37.87dB
16
Decrypted Image Airplane 512 X 512
PSNR=30.22dB
17
Original Image Airplane 512 X 512
Test2: Original Image Airplane X 512
18
Virtual Image Lena 360 X 360 Cipher Image Lena 360 X 360 PSNR=45.13dB
19
Decrypted Image Airplane 512 X 512
PSNR=31.36dB
20
Original Image Peppers 512 X 512
Test3: Original Image Peppers X 512
21
Virtual Image Lena 256 X 256 Cipher Image Lena 256 X 256 PSNR=37.60dB
22
Decrypted Image Peppers 512 X 512
PSNR=29.91dB
23
資訊隱藏
24
CCC
25
Vector Quantization (VQ) Concept Encoding and Decoding
26
Vector Quantization (VQ)
Image compression technique w h Index table Vector Quantization Encoder
27
Vector Quantization (VQ)
Image compression technique w h Image Index table Vector Quantization Decoder
28
6
29
標準向量量化編碼法
30
Vector Quantization (VQ) Codebook Training
Codebook generation 1 . N-1 N Training Images Training set Separating the image to vectors
31
Vector Quantization (VQ) Codebook Training
Codebook generation 1 . 1 . 254 255 N-1 N Initial codebook Training set Codebook initiation
32
Vector Quantization (VQ) Codebook Training
1 . Index sets 1 . 254 255 (1, 2, 5, 9, 45, …) (101, 179, 201, …) (8, 27, 38, 19, 200, …) N-1 N (23, 0, 67, 198, 224, …) Codebook Ci Training set 1 . Compute mean values 254 255 Replace the old vectors New Codebook Ci+1 Training using iteration algorithm 10
33
Example Codebook To encode an input vector, for example, v = (150,145,121,130) (1) Compute the distance between v with all vectors in codebook d(v, cw1) = d(v, cw2) = d(v, cw3) = 112.3 d(v, cw4) = d(v, cw5) = d(v, cw6) = 235.1 d(v, cw7) = d(v, cw8) = 63.2 (2) So, we choose cw8 to replace the input vector v. 11
34
LBG Algorithm 一次訓練 256 個 codewords 做了100次 連續兩次 MSE 之差別已經夠小
35
Full Search (FS) For example: Let the codebook size be 256
# of searched nodes per image vector = 256 Time consuming The closest codeword Image vector C = {c1, c2, …, cnc}
36
Euclidean Distance The dimensionality of vector = k (= w*h)
An input vector x = (x1, x2, …, xk) A codeword yi = (yi1, yi2, …, yik) The Euclidean distance between x and yi
37
數位浮水印 Watermark ‘National Chung Cheng University’ (64*64 pixels)
Original image (512*512 pixels)
38
找出相近的Pairs 16
39
發現 d(CW0, CW8) > TH d(CW13, CW14) > TH CW1 ,CW2 CW4, CW5
藏 1 藏 0 CW1 ,CW2 CW4, CW5 CW6, CW7 CW15, CW10 CW12, CW9 Unused CW0, CW8, CW13, CW14 CW11 ,CW3 17
40
Encode Index Table CW0, CW8, CW13, CW14 Unused Index Table
Original Image Index Table 18
41
Water mark: 1 0 1 0 1 0 0 1 0 1 1 1 1 0 0 1 1 1 1 1 1 1 1 Index Table
1 1 1 1 1 1 1 Index Table Water mark CW1, CW2, CW4, CW5 CW6, CW7 CW11, CW3 CW15, CW10 CW12, CW9 藏 1 藏 0 19
42
Water mark: 1 0 1 0 1 0 0 1 0 1 1 1 1 0 0 1 1 1 1 1 1 1 1 Index Table
1 1 1 1 1 1 1 Index Table Water mark CW1, CW2, CW4, CW5 CW6, CW7 CW11, CW3 CW15, CW10 CW12, CW9 藏 1 藏 0 20
43
Water mark: 1 0 1 0 1 0 0 1 0 1 1 1 1 0 0 1 1 1 1 1 1 1 1 Index Table
1 1 1 1 1 1 1 Index Table Water mark 21
44
Original image (512*512 pixels)
資訊隱藏 (Data Hiding) Secret Data: Hiding Original image (512*512 pixels)
45
分 群 CW0 CW1 CW3 CW5 G2 CW2 G1 CW0 CW4 G0 CW1 CW2 CW3 CW4 CW5 Grouping
發現 d(CW0, CW4) < TH d(CW1, CW3, CW5) < TH CW2 CW5
46
藏 入 CW1 CW3 CW5 G2 CW2 G1 CW0 CW4 G0 CW2 CW1 CW4 CW2 CW5 CW4
藏 入 Secret bit stream: (101)2= 5 CW1 CW3 CW5 G2 CW2 G1 CW0 CW4 G0 VQ Compression CW2 CW1 CW0 CW2 CW1 CW4 CW2 CW1 CW4 1 G1 : ︷ CW2 ︸ G0 : ︷ CW0 CW4 ︸ G2 : ︷ CW1 CW3 CW5 ︸ CW2 CW3 CW0 2 CW2 CW3 CW4 3 CW2 CW5 CW0 4 CW2 CW5 CW4 5 After embedding Codebook CW2 CW5 CW4
47
Total combinations: 3x3x2x3=54
VQ Compression CW1 CW3 CW5 G2 CW2 G1 CW0 CW4 G0 CW0 CW3 CW5 G0 : ︷ CW0 CW4 ︸ G2 : ︷ CW1 CW3 CW5 ︸ G2 : ︷ CW1 CW3 CW5 ︸ G2 : ︷ CW1 CW3 CW5 ︸ Secret Bit stream: (101111)2=47 Codebook CW1 CW3 CW5 CW0 CW4 After embedding CW4 CW3 CW5 Total combinations: 3x3x2x3=54 25
48
Search-order Coding (SOC)
49
Search-Order Coding (SOC)
Indicator The compressing steps 31 207 211 8 7 35 P1 = P2 = P3 = 0 00 … P6 = 0 01 Compression codes = …
50
Information hiding on the SOC codes
The proposed scheme: - Information hiding: to embed secret data into host image - Steganography : to embed secret data into host image and the interceptors will not notice the existence of secret data - Based on SOC
51
Information hiding on the SOC codes
Main idea: Ex. receiver receives the compression codes : SOC OIV (original index value) OIV SOC SOC It means that the embedded secret data is “01100” if SOC is represented to hide “0” and OIV is represented to hide “1”.
52
Information hiding on the SOC codes
Method: ex. A 3*3 index table: 1 2 3 18 21 31 30 29 32 If the secret data is “ ”, then the hiding position of each bit will be in the raster scan order.
53
Information hiding on the SOC codes
Defined: “0” embedded into SOC and “1” embedded into OIV. Embedding phase: SOC ====> there is nothing that needs to change for its compression codes hide “0” SOC ====> translate SOC into OIV (give up SOC coding and keep the OIV) hide “1” OIV ====> there is nothing that needs to change hide “1” OIV ====> translate OIV into SOC ex. hide “0” 11 (SOC) + OIV
54
Information hiding on the SOC codes
compression codes are still OIV: Ex. translate SOC into OIV : => translate OIV into SOC : =>
55
Information hiding on the SOC codes
Cost table (bits):
56
Information hiding on the SOC codes
Security: For enhancing the security of our method, the position in the index table for hiding each bit of secret data can be determined by using pseudo random number generator, and the secret data can be encrypted by using traditional cryptography system such as DES or RSA in advance.
57
Experimental results
58
Experimental results
59
Experimental results
60
Experimental results
61
Switching tree coding (STC)
62
Switching-tree coding (STC)
Sheu proposed the STC algorithm in 1999 Re-encode the index table U L the current index
63
Switching-tree coding (STC)
If P = 7, then P = U P’ = ‘11’ If P = 10, then P = L P’ = ‘10’
64
If P = 14, then P = A in index (3)
P’ = ‘01’ || index (3) = ‘ ’ If P = 17, then P’ = ‘00’ || (17) = ‘ ’ n=5
65
Information Hiding on the STC codes (IHSTC)
66
Information Hiding on the STC codes (IHSTC)
Watermark: … Index table
67
Information Hiding on the STC codes (IHSTC)
Watermark: … P’ = ‘00’||(10) ‘00’||(25) ‘00’||(21) … ‘00’||(17)
68
Information Hiding on the STC codes (IHSTC)
Watermark: … ‘10’ P’ = ‘00’||(10) ‘00’||(25) ‘00’||(21) … ‘00’||(17)
69
Information Hiding on the STC codes (IHSTC)
Watermark: … ‘10’ P’ = ‘00’||(10) ‘00’||(25) ‘00’||(21) … ‘00’||(17) ‘10’ ‘00’||(128) …
70
Information Hiding on the STC codes (IHSTC)
Watermark: … ‘11’ P’ = ‘00’||(10) ‘00’||(25) ‘00’||(21) … ‘00’||(17) ‘10’ ‘00’||(128) … ‘10’
71
Three binary connection tree
72
Three binary connection tree
If U-length > L-length Tree B If U-length < L-length Tree C Otherwise Tree A Tree B Tree C
73
Experiment results Image size = 512*512, n = 3 and |H| = 1024
NSTC: 在 index table 中,可藏入之index數 |H|: Secret Information 之長度 Difference: 藏入前與藏入後 bit 數的差異
74
Experiment results Image size = 512*512, n = 3 and |H| = 2048
Image size = 512*512, n = 3 and |H| = NSTC
75
Image size = 512*512, n = 5 and |H| = 1024
Image size = 512*512, n = 5 and |H| = NSTC
76
Conclusions A novel information-hiding scheme based on a switching-tree coding The IHSTC system can hide a huge amount of information in the index table Only a few extra bits are needed to record the corresponding information The average time needed to hide an information character is seconds IHSTC -- an efficient and effective scheme for hiding secret information
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.