Môđun trên vành đặc số 2 và ứng dụng giấu tin tối đa theo các phương pháp CPT mở rộng
Tóm tắt Môđun trên vành đặc số 2 và ứng dụng giấu tin tối đa theo các phương pháp CPT mở rộng: ...∀k, l ∈ Zq. Cho một ảnh G, ký hiệu CG là tập các mầu của CG = {CP 6= G}, trong đó Cp là màu của điểm ảnh p. Giả sử ta có thể tìm một hàm Val: CG → Z và một ánh xạ thay đổi màu của điểm ảnh CG → Z thỏa mãn các điều kiện sau: (3.1) ∀c ∈ CG, V al(Next(c)) = V al(c) + 1. Với trường hợp ảnh palette .... Bước 2) Gán b = u. Định lý 3.2 Với mỗi tập con S của một ảnh nhị phân G, khi ta thay đổi màu của nhiều nhất một điểm ảnh thuộc S bằng phương pháp CPTE, ta có thể giấu n = b(log2(Card(S) + 1))c bit mật với phương pháp giấu được mô tả trong Mục 3.2.4.1 và khôi phục lại các bit mật được giấu bằn...ây có thể xem như các biểu diễn 3-bit của các số trong W . Mỗi block F của ảnh nhị phân có thể xem như một vectơ cột u có 7 vị trí: u = (x1, x2, .., x7)t, khi áp dụng các phép toán + và . trên Z2 ta có thể viết H.u = C1.x1+C2.x2+ ...+C7.x7, ở đó mỗi cột Ci có thể xem như một vectơ (biểu diễn dạng...
ình huống, ta xem mỗi phần tử Fij (hoặc cặp (i, j)) được xem như là một điểm ảnh và cũng có thể xem như là màu của điểm ảnh. Đặt q = m.n. Cho k là số nguyên > 1 thể hiện số mầu của các điểm ảnh Fij, đối với ảnh nhị phân k = 2, với ảnh mầu nói chung k > 2. Việc thay đổi điểm ảnh Fij được hiểu là màu Fij được thay đổi thành mầu F ′ij với k cách khác nhau. Chúng ta xét các phương pháp mở rộng dựa trên CPT (CPTE schemes) là các phương pháp giấu tin trong một ma trận F bằng cách thay đổi nhiều nhất 2 phần tử thuộc F . Với F đã chọn, mỗi ma trận F ′ sau khi có sự thay đổi các phần tử được gọi là một cấu hình. Vì mỗi phần tử có k − 1 cách thay đổi, do đó ta có số cấu hình tối đa có được khi ta thay đổi một phần tử của F là (k − 1).q, nếu ta thay đổi 2 phần tử đồng thời thì sẽ thu được tối đa (k − 1)2.q.(q − 1)/2 cấu hình. Như vậy nếu ta thay đổi từ 0 đến 2 phần tử thì số cấu hình tối đa thu được là 1 + (k − 1).q + (k − 1)2.q.(q − 1)/2. Điều này có nghĩa là ta có thể giấu nhiều nhất: R = blog2(1 + (k − 1).q + (k − 1) 2.q(q − 1)/2)c bit mật trong F . Đối với trường hợp ảnh nhị phân ta có k = 2, do vậy R = blog2(1 + (k − 1).q + (k − 1) 2.q(q − 1)/2)c = blog2(1 + q(q + 1)/2)c. Ta gọi R là tỷ lệ giấu tin tối đa (MSDR: Maximality of Secret Data Ratio) của các phương pháp giấu tin trên ảnh nhị phân dựa trên phương pháp CPT mở rộng. 3.2. Giấu tin sử dụng phương pháp môđun Một môđun phải M trên vành Zq là một nhóm aben cộng với phần tử trung hòa là 0 và được trang bị phép nhân vô hướng, gán tương ứng mỗi cặp (m, k) thuộc M 6= Zq với một phần tử m.k thuộc M. Với Zq = {0, 1, .., q− 1}, ta có các tính chất sau: P1) m.0 = 0;m.1 = m. P2) m+ n = n +m với mọi m, n thuộc M. P3) m.(k+ l) = m.k+m.l, với ∀m ∈M ; ∀k, l ∈ Zq. Cho một ảnh G, ký hiệu CG là tập các mầu của CG = {CP 6= G}, trong đó Cp là màu của điểm ảnh p. Giả sử ta có thể tìm một hàm Val: CG → Z và một ánh xạ thay đổi màu của điểm ảnh CG → Z thỏa mãn các điều kiện sau: (3.1) ∀c ∈ CG, V al(Next(c)) = V al(c) + 1. Với trường hợp ảnh palette ta cần có thêm điều kiện (3.2) ∀c ∈ CG, c′ = Next(c) là một màu giống (về mặt cảm quan màu sắc) với màu c. Xét tập tùy ý S = {p1, p2, .., pN} của N điểm ảnh thuộc G, mỗi điểm pi có màu Ci, N 6= |M | − 1, ta xây dựng một toàn ánh. (3.3) h : s→M −{0} từ S lên M − 0, h được gọi là một ánh xạ trọng số của các điểm ảnh p thuộc S,m = h(p) được gọi là trọng số của p. 298 NGUYỄN HẢI THANH, PHAN TRUNG HUY Xét 1 tập dữ liệu mật D = {dm : m 6= M} sao cho mỗi phần tử dm có thể được xác định dễ dàng khi biết m. Phương pháp giấu một phần từ bất kỳ d 6= D vào S bằng cách thay đổi mầu nhiều nhất của một phần tử thuộc S được đề xuất như sau. 3.2.1. Giấu giá trị d vào S Bước 1) Tính m = ∑ 1≤i≤N h(pi).V al(Ci) trong mô đun phải M. Bước 2) Trường hợp dm = d: giữ nguyên S. Trường hợp d 6= dm: giả sử d = ds, với s 6= M ta có s 6= m. i) Tìm phần tử pk 6= S thỏa mãn h(pk) = s−m. ii) Thay đổi màu Ck của pk thành C′k = Next(Ck). Lưu ý: M là nhóm do đó với ∀m ∈M luôn tồn tại phần tử −m ∈M , do đó s−m ∈M(s ∈ M, s 6= m) Theo cách xây dựng ánh xạ h, thì h là một toàn ánh từ S lên M −{0}, do đó luôn tồn tại pk để h(pk) = s−m. 3.2.2. Khôi phục giá trị mật d từ S Bước 1) Tính u = ∑ 1≤i≤N h(pi).V al(Ci). Bước 2) Với u đã xác định, tính d = du . 3.2.3. Tính đúng đắn của thuật toán Định lý 3.1 Phần tử du khôi phục được trong bước 1 ở Mục 3.2.2 chính là giá trị d đã được giấu trong S bởi thuật toán giấu tin trong Mục 3.2.1. Chứng minh. Giả sử d = ds 6= dm ta cần chỉ ra u = s. Do ds 6= dm nên s 6= m hay s−m ∈ M −{0}. Trong bước 2i) Mục 3.2.1 ta luôn chọn được pk thỏa mãn h(pk) = s−m ∈M −{0} và h là toàn ánh. Từ C′k = Next(Ck) tại bước 2 Mục 3.2.1, ta có V al(C ′ k) = V al(Next(Ck)) = V al(Ck) + 1. Do m = ∑ 1≤k 6=i≤N h(pi).V al(Ci) + h(pk).V al(Ck), khi màu của pk chưa thay, vẫn là Ck, và u = ∑ 1≤k 6=i≤N h(pi).V al(Ci) + h(pk).V al(C ′ k), với màu của pk đã thay là C ′ k, theo tính chất (P2) của môđun, ta có: u = ∑ 1≤k 6=i≤N h(pi).V al(Ci) + h(pk).V al(C ′ k), u = ∑ 1≤k 6=i≤N h(pi).V al(Ci) + h(pk).V al(Ck + 1), từ đó theo tính chất (P3) ta có u = ∑ 1≤k 6=i≤N h(pi).V al(Ci) + h(pk).V al(Ck) + h(pk).1 = m+ h(pk).1. Do h(pk) = s−m, nên u = m+ (s−m) = s theo tính chất (P1) của môđun. Điều này có nghĩa là d = ds = du. 3.2.4. Giấu dữ liệu mật trong ảnh nhị phân Với ảnh nhị phân ta có q = 2, khi đó ta có thể chọn vành cơ sở có đặc số 2, đơn giản nhất là Z2, phép cộng trong Z2 có thể được xem như là phép toán XOR trên bit và M = MÔĐUN TRÊN VÀNH ĐẶC SỐ 2 VÀ ỨNG DỤNG GIẤU TIN TỐI ĐA 299 Z2 × Z2 × ...× Z2 là tích đề các n chiều trên Z2 được xem là môđun phải trên Z2, mỗi phần tử x = (x1, x2, .., xn) thuộc M được biểu diễn bởi dãy n-bit x = x1x2..xn cùng với phép toán được xác định như sau: D1) Với bất kỳ x = x1x2..xn, y = y1..yn thuộc M, k thuộc Z2, x+ y = z1z2..zn với zi = xi + yi, ∀i = 1, .., n . D2) x.k = z1z2..zn trong đó zi = xi.k(= xiANDk). Cho một ảnh nhị phân G, ta đặt CG = Z2 = {0, 1} và V al là hàm xác định trên Z2, V al(c) = c với mọi c thuộc Z2. Hàm Next : Z2 → Z2 được định nghĩa như sau: (3.4) Next(c) = c+ 1, với ∀c ∈ Z2. Việc thay đổi một màu c được thực hiện bằng phép thay thế c bởi c′ = Next(c) = c+ 1 Với tập bất kỳ S = {p0, p1, .., pN} của N + 1 điểm ảnh thuộc G,N + 1 = |S| ≥ 2n − 1 = |M − {0}|, ta có thể giấu một chuỗi n bit mật b = b1b2..bn bằng cách thay đổi nhiều nhất màu của 1 điểm ảnh thuộc S. Cụ thể như sau. 3.2.4.1. Giấu phần tử bí mật b trong S Bước 0) Chọn một tập bí mật K = {ki ∈ Z2 : 0 ≤ i ≤ N}, thay đổi màu Ci của mỗi điểm ảnh pi ∈ S thành mã màu mới Ci∗ = Ci + ki( thuộc Z2). Với tập S bao gồm các điểm ảnh có mã màu mới, thực hiện các bước (1), (2) Mục 3.2.1: Bước 1) Tính m = ∑ 0≤i≤N h(pi).C ∗ i thuộc Z2 -mô đun M . Bước 2) Ta xét các trường hợp sau: i) Trường hợp m = b: giữ nguyên S. ii) Trường hợp m 6= b: tìm px ∈ S thỏa mãn h(px)= b − m, thay đổi màu Cx của px thành C′x = Next(Cx) = Cx+1. Khi đó giá trị màu mới tại px sẽ là C ′ x∗ = C ′ x + kx = Cx +1+ kpx = Cx+ kpx+1 = Cx∗+1. Lại áp dụng phép chứng minh của Định lý 3.1 ở trên, ta có với mã màu mới, tổng các mã màu mới là ∑ 0<i6=x≤N h(pi).C ∗ i + h(px).C ′∗ i = ∑ 0<i6=x≤N h(pi).C ∗ i + h(px).(C ∗ i + 1) =∑ 0<i6=x≤N h(pi).C ∗ i + h(px).C ∗ i + h(px).1 = m+ h(px) = m+ (b−m) = b Tổng này được dùng để lấy lại dữ liệu mật b trong S (mới). Ta thấy chỉ cần thay đổi màu của một điểm ảnh px thuộc S khi ta thực hiện giấu b vào S. Từ phân tích trên, ta suy ra ngay tính đúng đắn của phương pháp. 3.2.4.2. Tìm lại phần tử d từ S Bước giải tin lấy lại thông tin mật sau đây là hiển nhiên Bước 0) Sử dụng tập bí mật K, thay đổi màu Ci của mỗi điểm ảnh pi ∈ S thành mã màu mới C∗i = Ci+ki, và với tập S gồm các điểm ảnh có mã màu mới, thực hiện bước 1), 2) thuộc Mục 3.2.2 như sau: 300 NGUYỄN HẢI THANH, PHAN TRUNG HUY Bước 1) Tính u = ∑ 0≤i≤N h(pi).C ∗ i trên Z2 - môđun M . Bước 2) Gán b = u. Định lý 3.2 Với mỗi tập con S của một ảnh nhị phân G, khi ta thay đổi màu của nhiều nhất một điểm ảnh thuộc S bằng phương pháp CPTE, ta có thể giấu n = b(log2(Card(S) + 1))c bit mật với phương pháp giấu được mô tả trong Mục 3.2.4.1 và khôi phục lại các bit mật được giấu bằng các bước được mô tả trong Mục 3.2.4.2. 3.3. Các tham số cho thuật toán CPTE Xem xét một ma trận nhị phân F có kích thước m × n của một ảnh nhị phân G đó mỗi phần tử Fij của F biểu diễn điểm ảnh có toạ độ (i, j) và màu của điểm ảnh Fij ∈ CG = Z2 = {0,1}. Đặt p = mn + 2. Giả sử rằng p có biểu diễn nhị phân p = btbt−1..b0 với bt = 1. Ta có thể chia theo một cách bí mật F thành 2 phần, ký hiệu S1 và S2, thoả mãn điều kiện: S1 có ít nhất 2α − 1 phần tử, S2 có ít nhất 2β − 1 phần tử, trong đó α, β được định nghĩa như sau:{ α = t− 1, β = t nếu bt−1 = 1, α = t− 1 = β nếu bt−1 = 0. (3.1) m(p) = α+ β. (3.2) Áp dụng Định lý 3.2, ta có thể giấu α bít mật trong S1 bằng cách thay đổi giá trị nhiều nhất một điểm ảnh trong S1, β bít mật trong S2 bằng cách thay đổi nhiều nhất giá trị một điểm ảnh trong S2, bởi vậy để giấu m(p) = α + β bit mật trong F ta chỉ cần thay đổi nhiều nhất 2 điểm ảnh của F . Ghi chú 1. Trong thực tế ta có thể biểu diễn mỗi phần tử b trong M là một chuỗi các bit b = btbt−1..b0 của α+β bit, phép toán + trên M là phép toán loại trừ bit XOR trên các chuỗi bit. Kết quả của phép toán d = b.c với ∀c ∈ Z2 có thể được biểu diễn là: d = dα+βdα+β−1..d2d1, trong đó c = bj AND c, j = 1, .., α+ β . Ghi chú 2. Kể từ đây, để đơn giản ta biểu diễn các phần tử b, d trong M như là các số tự nhiên ngoại trừ các phép toán ⊕ trên chúng, b ⊕ d được xem là phép XOR trên chuỗi m(p) bit và phép tích b.c, c ∈ Z2, được thực hiện như trong ghi chú 1. Ta có thể chọn một ma trận khoá bit K = (K)ij kích thước m × n cho cả S1 và S2: mỗi Kij thoả mãn Fij trong S1 được sử dụng cho S1 và Fij trong S2 thì được sử dụng cho F2 và ngược lại. Ngoài ra, tập M1 được cho bởi biểu thức (3.3) được xem như là tập trọng số của các phần tử thuộc S1: M1 = {bα+βbα+β−1..b2b1 ∈M : bβ, bβ−1, .., b2, b1 = 0} − {0}. (3.3) M2 được cho bởi công thức (3.4) được xem là một tập trọng số của các phần tử thuộc S2: M2 = {bα+βbα+β−1..b2b1 ∈M : bα+β, bα+β−1, .., bα+1 = 0} − {0}. (3.4) Các hàm trọng số từ S1, S2 vào M1,M2 được biểu diễn bởi ma trận trọng số W = (Wij) kích thước m× n thoả mãn điều kiện: {Wij : i = 1, .., m; j = 1, .., n} = M − {0}; {Wij : Fij ∈ S1} = M1 − {0}; {Wij : Fij ∈ S2} = M2 − {0}. MÔĐUN TRÊN VÀNH ĐẶC SỐ 2 VÀ ỨNG DỤNG GIẤU TIN TỐI ĐA 301 3.3.1. Giấu và khôi phục các bit mật trong lược đồ CPTE 3.3.1.1. Giấu các bit mật Giả sử ta cần giấu một dãy d gồm α+ β bit trong F, d = dα+βdα+β−1..d2d1. Đặt u = bα+βbα+β−1..bβ+10..0 và v = 0..0dβ..d2d1 thoả mãn d = u⊕v, u ∈M1 và v ∈M2. Bước 1) Tính T = F ⊕ K, mỗi điểm ảnh (i, j), i = 1, ..m; j = 1, ..n có màu ban đầu là Fij qua phép toán ⊕ sẽ có màu mới là Tij, T , được xem là một ma trận màu mới của các điểm ảnh trong F . Bước 2) Tính s = ∑ i=1,..,m;j=1..nWij .Tij. Tổng này được ký hiệu [W.T ], tính s = s1 ⊕ s2, trong đó s1 = Sα+βsα+β−1..sβ+10..0 ∈M1 và s2 = 0..0sβ..s2s1 ∈M2. Bước 3) Xem xét s1 và s2. Với s1, có 2 trường hợp: a) s1 = u: giữ nguyên S1; b) s1 6= u: tính d = u − s1(= u+ s1) trong Z2, tìm một điểm ảnh p = (i, j) ∈ S1 sao cho d chính là trọng số của điểm ảnh đó, thay đổi màu Fij thành F ′ij = Fij + 1 trong Z2. Với s2, có 2 trường hợp: c) s2 = u: giữ nguyên S2; d) s2 6= v: tính e = v − s2(= v+ s1) trong Z2, tìm một điểm ảnh p = (i, j) ∈ S2 sao cho e chính là trọng số của điểm ảnh đó, thay đổi màu Fij thành F ′ij = Fij + 1 trong Z2. 3.2.1.2 Khôi phục lại các bit mật Cho F là ma trận bit trong đó có giấu dãy bit d. Bước 1) Tính T = F ⊕K; Bước 2) Tính s = [W.T ]; Bước 3) Giá trị trả về d = s là dãy bit mật được giấu trong F . Định lý 3.3 Số bit m(p) được giấu trong F bằng phương pháp CPTE (Định nghĩa ở (3.1)- (3.2)) xấp xỉ MSDR trong trường hợp tổng quát. Chứng minh. Xét q = mn, p = mn+ 2 = q + 2. Dễ thấy blog2((p/2) 2)c = blog2(p2)− 2c = 2blog2(p2)c − 2 = 2t− 2. Từ (3.1), (3.2) ta suy ra m(p) ≥ blog2(p2)c vì nếu p có biểu diễn nhị phân p = btbt−1..b1b0 với bt−1 = 1 thì m(p) = 2t− 1 và với bt−1 = 0, m(p) = blog2(p2)c = 2t− 2. Vì MSDR là tỷ lệ giấu tin tối đa nên blog2(1 + q(q + 1)/2)c ≥ m(p) ≥ blog2((p/2) 2)c = blog2((q + 2)/2) 2)c. (*) Ta có bất đẳng thức hiển nhiên 1 + q(q + 1)/2 < 2((q + 2)/2)2 hay MSDR = blog2(1 + q(q + 1)/2)c ≤ blog2((q + 2)/2) 2)c. (**) Từ (*) và (**) ta có: MSDR−m(p) ≤ blog2(2(q + 2)/2) 2)c − blog2((p/2) 2)c = 2blog2(q + 2))c − 1− (2.blog2(q + 2)c − 2) = 1. 302 NGUYỄN HẢI THANH, PHAN TRUNG HUY Từ đó, MSDR − m(p) ≤ 1. Lưu ý rằng m(p) có thể bằng MSDR, ví dụ với q nào đó thoả mãn q ≥ 4, q + 1 = 2t(t > 1), p = 2t + 1 thì MSDR = blog2(1 + q(q + 1)/2)c = blog2(2 + 2 2t − 2t)c = 2t− 1 hay blog2(1 + q(q + 1)/2)c = 2t− 2 = m(p). 3.3.2. Ví dụ minh hoạ cho phương pháp CPTE Ví dụ. Mã Hamming đã được trong lĩnh vực giấu tin [8, 9] có thể xem là một trường hợp riêng của phương pháp môđun trên vành Z2. Để minh họa, ta xét mã Hamming (7,4). Khi lấy W = {1, 2, .., 7}, mỗi cột {C1, C2, .., C7} của ma trận H sau đây có thể xem như các biểu diễn 3-bit của các số trong W . Mỗi block F của ảnh nhị phân có thể xem như một vectơ cột u có 7 vị trí: u = (x1, x2, .., x7)t, khi áp dụng các phép toán + và . trên Z2 ta có thể viết H.u = C1.x1+C2.x2+ ...+C7.x7, ở đó mỗi cột Ci có thể xem như một vectơ (biểu diễn dạng cột) trong V = Z(3)2 . H = 1 0 1 0 1 0 1 0 1 1 0 0 1 1 0 0 0 1 1 0 1 C1 C2 C3 C4 C5 C6 C7 Sau khi áp dụng phép XOR với khoá nhị phân k là một vectơ cột có 7 vị trí, k = (k1, k2, ..., k7) t, ta được: v = u⊕ k = (y1, y2, ..., y7) và H.v = C1.y1 + C2.y2 + ...+ C7.y7. Thay một vị trí xj trong u bởi xj ⊕ 1 ta được u′, kéo theo hệ quả vị trí yj trong v được thay bởi yj ⊕ 1 để được v′ là vectơ mới thoả đẳng thức H.v′ = H.v ⊕ Cj. Nếu H.v = 0, đây chính là kết quả ta cần: 3 bit mật thể hiện bởi vectơ cột Cj đã được giấu trong u′ nhờ thay trong u (nghĩa là trong F ) một vị trí. Ví dụ. Để minh họa cho phương pháp CPTE, xét ma trận nhị phân F,K và một ma trận trọng số W có kích thước 3× 3, d = d4d3d2d1 là một dãy nhị phân (khi đó p = 9+ 2 = 11 = 8 + 2+ 1) có biểu diễn nhị phân 1011, theo (3.1) α = β = 2, m(p) = 4). Cụ thể, S1 = {F11, F12, F13, F21, F22}, S2 = {F23, F31, F32, F33}, M1 = {0, 12, 8, 4},M2 = {0, 3, 2, 1} hoặc có biểu diễn nhị phân, M1 = {0000, 1100, 1000, 0100}, M2 = {0000, 0011, 0010, 0001}. Với: F = 1 0 10 0 1 1 0 1 , K = 0 1 11 0 1 0 1 1 , W = 8 12 44 8 3 1 2 3 , T = F ⊕K = 1 1 01 0 0 1 1 0 , ta có s = [W.T ] = 8.1 + 12.1+ 4.1 + 1.1 + 2.1 = 1000⊕ 1100⊕ 0100⊕ 0001⊕ 0010 = 0011. Đặt s = s1 ⊕ s2, s1 = 0000, s2 = 0011. a) Với d = 0011, ta có d = s, F không thay đổi b) Với d = 0000, phân tích d = u⊕v, u = 0000, v = 0000. Vì u = s1, do đó giữ nguyên S1, vì v 6= s2 do đó ta cần thay đổi một phần tử của S2: Đặt a = v−s2 = v⊕s2 = 0000⊕0011 = 0011, ta cần chọn W33 = 0011 trong S2, khi đó phần tử tương ứng F33 được thay đổi thành F33 ⊕ 1 = 0, T33 thành T33 ⊕ 1 = 1, từ đó tổng mới s′ = [W.Tnew] = s ⊕W33 = 0000 = d. MÔĐUN TRÊN VÀNH ĐẶC SỐ 2 VÀ ỨNG DỤNG GIẤU TIN TỐI ĐA 303 c) Với d = 1110, u = 1100, v = 0010, u 6= s1 và v 6= s2 bởi vậy ta cần thay đổi một phần tử trong S1 và một phần tử khác trong S2. Với S1, tính u ⊕ s1 = u = W12 như vậy ta thay đổi F12 thành F12 ⊕ 1 = 1. Với S2, tính v ⊕ s2 = 0001 = W31 ta sẽ thay đổi F31 thành F31 ⊕ 1 = 0. Khi đó T có 2 phần tử mới là T ′12 := T12 ⊕ 1 = 0; T ′ 31 := T31 ⊕ 1 = 0. Tổng mới s′ = [W.Tnew] = s⊕W12 ⊕W31 = 0011⊕ 1100⊕ 0001 = 1110 = d. 4. KẾT QUẢ THỰC NGHIỆM Việc xây dựng chương trình để kiểm tra các thuật toán CPT, CPTE đối với các ảnh nhị phân, kết quả thực nghiệm cho thấy thuật toán CPTE đạt được tỷ lệ giấu tin cao hơn gần gấp đôi CPT trong khi chất lượng ảnh có giấu tin là như nhau. Bảng sau so sánh lượng tin giấu được trong mỗi khối điểm ảnh F của các thuật toán MSDR, CPT, CPTE. Bảng 1. So sánh MSDR và các sơ đồ CPT, CPTE Kích thước MSDR Số bit mật được Số bit mật khối F (số pixel) giấu bởi CPT được giấu bởi CPTE 6 4 2 4 12 6 3 6 30 8 4 8 64 11 6 10 Trên thực tế nếu chỉ dùng CPT hay CPTE trên ảnh nhị phân thì không đủ an toàn, do ảnh sau khi giấu tin rất dễ bị phát hiện bởi mắt thường. Từ kết quả của phương pháp CPTE, có thể xây dựng được thuật toán mở rộng MCPTE tương tự cách thức mà phương pháp Modified CPT (MCPT) của Tseng-Pan (2001) mở rộng từ CPT (và sau đó bởi H.Hiorisa 2007) để điều khiển nâng cao chất lượng ảnh có giấu tin. Ngoài việc đánh giá chất lượng ảnh thông qua cảm quan của mắt người, có thể sử dụng độ đo chất lượng ảnh đã thay đổi là PSNR (Peak Signal to Noise Ratio) trên ảnh nhị phân xác định bởi công thức sau: PSNR = 10log10(MAX 2/MSE) với MSE = (1/mn). ∑ 0<=i<=m−1 . ∑ 0<=i<=m−1 [I(i, j)−K(i, j)] 2 đối với ảnh nhị phân I gốc và K đã thay đổi, MAX = 255. Các tham số: mỗi block F cỡ 8 × 8, với phương pháp CPTE, giấu được 1742 byte, với PSNR = 63, 4dB. Cùng cỡ PSNR này, với chất lượng ảnh giấu như nhau, phương pháp CPT giấu được 1044 byte. Do tăng chất lượng giấu tin chống phát hiện, phương pháp MCPTE giấu được 130 byte, với PSNR = 78, 2dB. Cùng với chất lượng theo PSNR, phương pháp MCPT chỉ giấu được 95 byte. Để tăng chất lượng ảnh minh họa và khuôn khổ bài báo, ở đây chúng tôi chỉ đưa vào các ảnh xử lý theo CPTE, MCPTE. Trong dãy ảnh nhị phân minh họa dưới đây, ba ảnh bao gồm: ảnh gốc (ca sĩ nhí), ảnh đã giấu tin theo CPTE, ảnh đã giấu tin theo phương pháp MCPTE. 304 NGUYỄN HẢI THANH, PHAN TRUNG HUY 5. KẾT LUẬN 1) Các kết quả thực nghiệm cho thấy, trong hầu hết các trường hợp, tổng số bit có thể giấu được bởi thuật toán CPTE lớn gần gấp đôi so với thuật toán CPT và xấp xỉ với MSDR. Đối với bài toán giấu tin trong ảnh, một trong những thách thức đối với các thuật toán giấu tin là làm sao đạt được tỷ lệ giấu tin cao nhưng không làm giảm chất lượng của ảnh. Thuật toán MCPTE cho phép giấu tối đa 2r−2 bit trong một khối điểm ảnh nhị phân F , nhiều gấp 2 lần so với phương pháp của Tseng-Pan (chỉ giấu được r− 1 bit) trong khi chất lượng ảnh là tương đương. 2) Các ứng dụng khác: thuật toán CPTE có thể dễ dàng được mở rộng cho các ảnh palette (bảng màu) như ảnh GIF, ảnh BMP 8 bpp,. . . trong trường hợp ta cần chống các phương pháp tấn công phát hiện ảnh có giấu tin mật hay không, đặc biệt các phương pháp dựa trên histogram (xem ví dụ phận tích trong [6]: nếu tỷ lệ anpha của số các điểm ảnh được giấu tin trên tổng số điểm ảnh của một ảnh palette G nhỏ hơn 0.1, khi đó rất khó có thể đánh giá được G có chứa dữ liệu mật hay không). Áp dụng CPTE với mỗi palette, ta có thể đạt được một tỷ lệ alpha nhỏ với trong khi tổng số bit được giấu là đủ lớn cho các ứng dụng thực tế. Trong trường hợp, mỗi ảnh trong bảng màu có k “màu giống nhau” với k > 2, sử dụng các tính chất trong 3.1, 3.2 ta có thể giấu nhiều hơn số bit mật trong mỗi khối F của ảnh, chẳng hạn với ảnh 256 mức xám, có thể xét k = 16 (là 1/16 của 256 mức xám), khi đó Z16 sẽ thay cho Z2 để đạt tỷ lệ giấu tin cao hơn nữa. Chi tiết những vấn đề này sẽ là nội dung phát triển của các công trình tiếp theo. TÀI LIỆU THAM KHẢO [1] Y.Chen, H.Pan, Y.Tseng, A secure of data hiding scheme for two-color images, IEEE Sympo- sium on Computers and Communications, (2000). [2] M.Y.Wu, J.H.Lee, Anovel data embedding method for two-color fascimile images,Proceedings of international symposium on multimedia information processing, Chung-Li, Taiwan, R.O.C, MÔĐUN TRÊN VÀNH ĐẶC SỐ 2 VÀ ỨNG DỤNG GIẤU TIN TỐI ĐA 305 1998. [3] Negar Sadat Mirsattari, Parisa Haghani, Mansour Jamzad, Feature watermarking in digital documents for retrieval and authentication, 11th.International CSI Computer Conference CSICC 2006, Iran, 2006. [4] Y.-C. Tseng and H.-K. Pan, Secure and invisible data hiding in 2-color images, Proceedings of INFOCOM 2001, 2001 (887–896). [5] HIOKI Hirohisa, A modified CPT scheme for embedding data into binary images, Proc. of Pacific Rim Workshop on Digital Steganography 2003, (Jul. 2003) 32-44. [6] Xinpeng Zhang and Shuozhong Wang, Analysis of Parity Assignment Steganography in palette Images, R. Khosla et al. (Eds.): KES 2005, LNAI 3683, pp. 1025-1031, 2005. Springer- Verlag, Berlin- Heidelberg (2005). [7] Nguyễn Hải Thanh, Phan Trung Huy, Fast and near Optimal Parity Assignment in Palette Images with Enhanced CPT Scheme, LNCS/LNAI, 5991, Springer, 2010 (pp.455–459) ISSN 0302-9743. [8] C.C. Chang, T.D. Kieu, Y.C Chou, A high payload steganographic scheme based on (7,4) ham- ming code for digital images, Electronic commerce and cecurity 2008 symposium 2008 (16-21). [9] Cheonsick Kim, Dongkyoo Shin, and Dongil Shin, Data Hiding in a Halftone Image Using Hamming Code (15,11), ACIIDS 2011, LNAI 6592, Springer-Verlag, Berlin Heidelberg, 2011 (372–381). Nhận bài ngày 16 - 9 - 2011 Nhận lại sau sửa ngày 15 - 11 - 2011
File đính kèm:
- modun_tren_vanh_dac_so_2_va_ung_dung_giau_tin_toi_da_theo_ca.pdf