GIẤU TIN TRONG ẢNH, PHÁT HIỆN ẢNH CÓ GIẤU TIN VÀ CÁC NGHIÊN CỨU LIÊN QUAN
GIẤU TIN TRONG ẢNH VÀ NGHIÊN CỨU LIÊN QUAN
Giấu tin trong ảnh, hay còn gọi là kỹ thuật steganography, là phương pháp sử dụng thông tin dư thừa trong dữ liệu ảnh gốc để nhúng thông tin một cách kín đáo Kỹ thuật này đảm bảo rằng chỉ người gửi và người nhận biết về thông tin đã được giấu, trong khi những người khác khó có thể phát hiện sự tồn tại của thông tin ẩn trong bức ảnh.
Giấu tin trong ảnh bao gồm hai giai đoạn chính: nhúng thông tin vào ảnh gốc và tách thông tin đã được giấu Để nâng cao độ an toàn cho thông tin, trước khi thực hiện việc giấu, thông tin thường được mã hóa bằng các kỹ thuật mã hóa phù hợp.
Trong quá trình tách thông tin, dữ liệu gốc có thể không cần thiết Các kỹ thuật giấu tin hiệu quả thường cho phép tách thông tin đã giấu mà không phụ thuộc vào dữ liệu gốc.
Hình 1.1: Sơ đồ quá trình giấu tin trong ảnh [84]
Biến đổi ngược T -1 ( tùy chọn)
Dữ liệu có chứa thông tin s
Hình 1.2: Sơ đồ quá trình tách tin trong ảnh
Hình 1.1 và 1.2 minh họa sơ đồ tổng quát cho quá trình giấu tin và tách tin trong ảnh, trong đó các phép biến đổi T và T -1 bao gồm các phương pháp biến đổi tần số như cosine, wavelet, Fourier rời rạc và biến đổi sai phân Dưới đây là tóm lược một số phép biến đổi được áp dụng trong luận án này.
Biến đổi cosine rời rạc (DCT) là một phần quan trọng trong chuẩn nén ảnh JPEG, nơi mà miền dữ liệu pixel của ảnh được chia thành các khối nhỏ, thường có kích thước 8x8 hoặc 16x16 pixel Phép biến đổi này sử dụng các hệ số cosine để nén thông tin, và các thông tin thường được giấu vào các hệ số cosine có giá trị lớn nhất hoặc nằm trong miền tần số giữa, áp dụng các kỹ thuật giấu thông tin khác nhau.
Biến đổi wavelet rời rạc chuyển đổi miền dữ liệu pixel thành bốn băng tần mới: LL, LH, HL, và HH, với các giá trị trên các băng tần này được gọi là hệ số wavelet Theo các nhà nghiên cứu, sự thay đổi nhỏ ở các hệ số wavelet trên băng tần cao LH và HL (có thể bao gồm cả băng tần HH) ít ảnh hưởng đến chất lượng trực quan của ảnh gốc hơn so với các kỹ thuật giấu tin khác Ngược lại, băng tần LL không thường được sử dụng để giấu tin, vì nó chứa nội dung thu nhỏ của ảnh, và việc giấu thông tin vào băng tần này có thể làm giảm chất lượng của ảnh ban đầu.
- Biến đổi sai phân (image difference), giả sử dữ liệu ảnh nào đó, kích thước m × n pixel, được biểu diễn dưới dạng vector X = {x ij , i=0, …, m -
Trong bài viết này, chúng ta sẽ xem xét quá trình biến đổi miền giá trị pixel của ảnh sang miền giá trị sai phân thông qua vector các hệ số sai phân D = {d ij} Biến đổi T là một yếu tố tùy chọn trong quá trình này, giúp tối ưu hóa kết quả.
Dữ liệu có chứa thông tin (Stego) s
(Cover) C Thông tin M x i,2j+1 – x i,2j với 0 ≤ i ≤ m − 1, 0 ≤ j ≤ n/2 – 1 hoặc d ij = x i,j-1 – x i,j với 0 ≤ i ≤ m – 1, 0 ≤ j ≤ n – 2 Thông tin thường được giấu trên LSB của các hệ số này như các kỹ thuật [48, 49, 52, 53, 90, 97]
1.1.2 Phương pháp giấu tin và nghiên cứu liên quan
Kỹ thuật giấu tin trong ảnh phát triển từ công nghệ thủy vân số (Watermarking), trong đó phương pháp thủy vân đầu tiên là thay thế bit thấp nhất (LSB replacement) Phương pháp này không chỉ là kỹ thuật thủy vân mà còn là phương pháp giấu tin đầu tiên trong ảnh.
Phương pháp giấu tin trên LSB (Least Significant Bit) là kỹ thuật thay thế các bit thông tin vào bit LSB của điểm ảnh Trong ảnh 8-bit cấp độ xám, mỗi điểm ảnh được biểu diễn bằng chuỗi nhị phân 8 bit, trong đó 7 bit đầu tiên (bit MSBs) có vai trò quan trọng nhất, còn bit cuối cùng (bit LSB) có ảnh hưởng ít nhất đến chất lượng hình ảnh Việc thay đổi giá trị của bit LSB từ “0” sang “1” hoặc ngược lại không làm giảm chất lượng trực quan của ảnh.
Kỹ thuật giấu tin trên LSB vẫn được ưa chuộng nhờ tính đơn giản và khả năng giấu nhiều thông tin Mỗi điểm ảnh có thể nhúng một bit thông tin, với tỉ lệ nhúng tối đa là một bit trên mỗi điểm ảnh Giả sử ảnh đầu vào là ảnh xám 8-bit kích cỡ m × n, dữ liệu ảnh được biểu diễn dưới dạng vector X m×n = {xij, i=1, …, m, j=1, …, n, xij ∈ {0, …, 255}} Sau khi nhúng chuỗi bit thông tin B l = {bi, i=1, …, l, bi ∈ {0,1}} vào ảnh bằng cách thay thế từng bit bi vào bit LSB của xij, ta nhận được ảnh giấu tin với vector S m×n = {sij, i=1, …, m, j=1, …, n, sij ∈ {0, …, 255}} LSB của điểm ảnh sẽ được giấu tin theo mô tả trong hình 1.3.
Hình 1.3 Minh họa giấu thông tin trong LSB của ảnh cấp xám 8 - bit [84]
Việc áp dụng hàm giấu và tách thông tin có thể thực hiện tương tự trên ảnh
Kỹ thuật giấu tin trong ảnh 24-bit màu sử dụng 3 kênh màu R, G, B, với mỗi kênh 8-bit, thường thực hiện trên kênh màu B do ít ảnh hưởng đến cảm nhận của mắt người Quá trình này tương tự như giấu tin trên ảnh 8-bit cấp độ màu Để bảo vệ ảnh đã giấu tin bằng kỹ thuật LSB khỏi các tấn công hình học như xoay, nén, co, và giãn, cần áp dụng các biện pháp bảo mật phù hợp.
Nhiều phương pháp giấu cải tiến LSB đã được đề xuất trên miền tần số, bao gồm cosine và wavelet Ngoài ra, một số kỹ thuật còn thực hiện việc giấu thông tin trên LSB của các hệ số sai phân.
Bit LSB của điểm ảnh hoặc hệ số biến đổi được chọn để giấu thông tin có thể được lựa chọn theo thứ tự tuần tự, thường được gọi là quét raster, như trong các kỹ thuật giấu thông tin EzStego và Jstego.
Trong lĩnh vực giấu thông tin, các phương pháp như OutGuess, F5 và Hide and Seek sử dụng vị trí giả ngẫu nhiên để ẩn dữ liệu Bên cạnh đó, có hai kỹ thuật đặc biệt liên quan đến việc giấu thông tin trên bit thấp nhất (LSB), đó là phương pháp tăng giảm LSB và phương pháp đồng chẵn lẻ.
Phương pháp tăng giảm LSB (1 embedding) liên quan đến việc so sánh bit thông tin với bit LSB của điểm ảnh đã chọn, có thể chọn tuần tự hoặc ngẫu nhiên theo bộ chọn PR Nếu bit thông tin trùng với bit LSB, một bit thông tin sẽ được giấu vào điểm ảnh đó Ngược lại, để đồng giá trị với bit thông tin, điểm ảnh sẽ được tăng hoặc giảm 1 Một số kỹ thuật giấu hình ảnh áp dụng phương pháp này như [78, 49].
PHÁT HIỆN ẢNH GIẤU TIN VÀ CÁC NGHIÊN CỨU LIÊN QUAN
Phát hiện ảnh giấu tin (image steganalysis) là kỹ thuật phát hiện sự tồn tại của thông tin mật được giấu trong ảnh số [27]
Giống như thám mã, steganalysis nhằm mục đích phát hiện và phân tích các hình ảnh số có chứa thông tin ẩn, từ đó phá vỡ tính bảo mật của dữ liệu được giấu kín.
Hình 1.4 minh họa quy trình tổng quát của kỹ thuật phát hiện ảnh giấu tin, trong đó phép biến đổi T có thể là phép biến đổi rời rạc cosine, wavelet, hoặc biến đổi sai phân.
… (trong một số trường hợp cần thiết)
Hình 1.4 Sơ đồ quá trình phát hiện ảnh có giấu tin [84]
1.2.2 Phương pháp phát hiện ảnh có giấu tin
Phát hiện ảnh giấu tin có thể được định nghĩa là một bài toán phân loại dựa trên kiểm định giả thuyết thống kê Việc này phụ thuộc vào sự hiểu biết về lược đồ giấu tin, dẫn đến việc phát hiện ảnh giấu tin có thể được xem như bài toán kiểm định giả thuyết đơn hoặc bài toán kiểm định giả thuyết phức hợp.
Nếu không có thông tin về lược đồ giấu tin, phương pháp phát hiện sẽ được gọi là phát hiện mù (blind steganalysis) Bài toán phân loại có thể được diễn đạt thông qua kiểm định giả thuyết phức hợp.
H 0 : X được rút ra từ hàm phân bố xác suất là P S
H 1 : X không được rút ra từ hàm phân bố xác suất P S Với X là mẫu dữ liệu ảnh được xét
Trong phát hiện lược đồ giấu tin, nếu biết trước thông tin về lược đồ, phương pháp được gọi là phát hiện có ràng buộc (constraint steganalysis) Khi có phân bố xác suất của P C, lược đồ giấu tin (S E, S X) và phân bố thông tin M, chúng ta có thể tính toán P S Từ đó, có thể áp dụng phương pháp phát hiện có ràng buộc dưới dạng bài toán phân loại dựa trên kiểm định giả thuyết đơn.
H 0 : X có phân bố xác suất là P S
Để giải quyết bài toán kiểm định giả thuyết thống kê với phân bố xác suất P C, chúng ta cần xác định miền điều kiện giữa ảnh gốc và ảnh chứa tin nhắn.
Bộ phát hiện được định nghĩa như một ánh xạ F: Ω {0, 1}, trong đó F(X) = 0 cho thấy X là ảnh gốc, còn F(X) = 1 cho biết X là ảnh có chứa thông tin ẩn Từ đó, ta có tập miền ràng buộc Ω1 = {XΩ | F(X) = 1}.
Việc giải quyết bài toán kiểm định giả thuyết thống kê tương đương với việc chia tập Ω thành hai phần rời nhau: và Ω\ Có nhiều cách chia khác nhau, nhưng mọi phương pháp đều dẫn đến hai loại sai lầm Sai lầm loại I xảy ra khi thực tế là X thuộc nhưng lại bị gán cho Ω\ với xác suất (0 … > h10 + h–10 >…
Còn đối với ảnh có giấu tin thì: h1 + h–1 > h2 + h–2, h2 + h–2 ≤ h3 + h–3
Kỹ thuật giấu thông tin DIH tạo ra sự thay đổi tần suất h±2 của ảnh để ẩn giấu thông tin, đây là yếu tố quan trọng trong việc phát hiện ảnh có chứa thông tin bí mật Bằng cách phân tích tần suất này, chúng ta có thể ước lượng gần đúng thông tin đã được giấu Do chuỗi bit được giấu có phân bố độc lập, xác suất số bit cũng sẽ được tính toán dựa trên sự thay đổi tần suất này.
“0” xuất hiện trong chuỗi thông tin xấp xỉ bằng xác xuất số bit “1” và bằng 0.5 (p(0)
Độ dài xấp xỉ bit thông tin có thể được giấu trong chuỗi thông tin được tính bằng công thức L = 2*(h-2 + h2), với h là độ dài của chuỗi Thông tin sẽ được giấu trong khoảng h ±1 và phần còn lại sẽ được giấu trong h ±2.
Dựa trên các phân tích trước đó, chúng tôi đưa ra Định lý 3.4 về mối quan hệ tần suất của các hệ sai phân trong ảnh có giấu tin và cách ước lượng độ dài bit thông tin được giấu Định lý 3.4 chỉ ra rằng có hai cặp giá trị (h2, h-2) và (h3, h-3) được chọn từ vector tần suất của các hệ số sai phân trong ảnh Ảnh được coi là có giấu tin bằng DIH nếu mối quan hệ giữa hai cặp giá trị này được thỏa mãn.
(3 13) và lượng bit thông tin đã giấu được tính bằng biểu thức:
Với T là ngưỡng để phân loại
PHÁT HIỆN ẢNH CÓ GIẤU TIN SỬ DỤNG KỸ THUẬT GIẤU IWH
Vào năm 2006, Xuan và các đồng nghiệp đã đề xuất kỹ thuật giấu IWH (Integer Wavelet Histogram) nhằm khôi phục gần như ảnh gốc sau khi tách thông tin Kỹ thuật này tương tự như kỹ thuật giấu tin DIH, nhưng điểm khác biệt là thay vì dịch chuyển các cột tần suất sai phân, họ sử dụng phương pháp dịch chuyển tần suất của các hệ số biến đổi wavelet nguyên với vị trí tùy chọn.
Ban đầu họ thực hiện phép biến đổi Wavelet cho miền không gian ảnh theo chuẩn biến đổi trong kỹ thuật nén JPEG2000 [99, 72] để được bốn băng tần (LL,
Trong nghiên cứu này, thông tin được nhúng vào ba băng tần cao LH, HL và HH, nơi được cho là ít ảnh hưởng đến chất lượng ảnh gốc Tính tần suất của các hệ số IWT cho thấy rằng các cột tần suất có giá trị lớn hơn Z sẽ bị dịch chuyển sang phải, nhằm mục đích làm rỗng cột tần suất có giá trị Z.
Biểu đồ tần suất các hệ số wavelet được trình bày trong Hình 3.9, bao gồm hai phần: (a) Biểu đồ ảnh gốc ban đầu và (b) Biểu đồ sau khi làm rỗng một cột tần suất hệ số có giá trị Z [99].
Để thực hiện việc giấu thông tin, cần quét toàn bộ các hệ số wavelet trong các băng tần cao Khi gặp một hệ số có giá trị Z - 1, tiến hành kiểm tra bit thông tin cần giấu để xác định giá trị của nó.
“1” sẽ thực hiện tăng giá trị của hệ số đang xét lên 1, nghĩa là hệ số này sẽ trở thành
Z, nếu bit cần giấu có giá trị “0”, thì hệ số đang xét vẫn được giữ nguyên Quá trình này lặp lại cho đến khi giấu hết các bit thông tin
Khi số bit cần giấu lớn hơn số hệ số wavelet có giá trị Z - 1, ta sẽ tiếp tục giấu thông tin vào hệ số có giá trị -(Z + 1), đối xứng qua cột tần số có hệ số “0” Đầu tiên, cần làm rỗng cột tần số -Z, sau đó xem xét các hệ số có giá trị -(Z - 1) Nếu bit cần giấu là “1”, hệ số này sẽ chuyển thành -Z; nếu bit cần giấu là “0”, hệ số vẫn giữ nguyên, coi như đã giấu bit “0” vào hệ số đó.
Quá trình giấu thông tin diễn ra liên tục cho đến khi tất cả các bit được ẩn vào hệ số -Z Nếu vẫn còn bit thông tin, quá trình sẽ tiếp tục với hệ số Z - 2 cho đến khi hoàn tất Giả sử quá trình giấu dừng lại tại hệ số có giá trị S và vị trí cột bắt đầu giấu là T.
Biểu đồ tần suất wavelet của ảnh Lena.bmp cho thấy quá trình giấu thông tin với ảnh nhị phân kích thước 128 × 56 điểm ảnh, tương đương 7168 bit, với các vị trí chọn T ban đầu khác nhau: T = 3, T = -3, T = 5, T = -6, T = 8.
Hình 3.10 Biểu đồ tần suất hệ số wavelet trên các băng tần cao của: (a) ảnh Lena gốc và ảnh giấu tin với các vị trí ban đầu: (b) T = 3, (c) T = -3, (d) T = 5, (e) T = -6, (f) T = 8
9000 Watermarked Image in Final Step
9000 Watermarked Image in Final Step
9000 Watermarked Image in Final Step
9000 Watermarked Image in Final Step
9000 Watermarked Image in Final Step
3.3.2 Phương pháp phát hiện ảnh có giấu tin sử dụng kỹ thuật giấu IWH
3.3.2.1 Phân tích kỹ thuật giấu IWH
Kỹ thuật giấu IWH là một biến thể của phương pháp giấu thông tin trên LSB của các hệ số wavelet Trong ảnh gốc, biểu đồ tần suất của các hệ số wavelet có phân bố Gaussian Khi thông tin được giấu, quá trình này làm thay đổi phân bố tần suất, có thể cân bằng một số cặp cột tần suất hoặc không, tùy thuộc vào ngưỡng chọn Do đó, phương pháp phát hiện ảnh có giấu tin trên LSB của các hệ số wavelet thường không đạt độ tin cậy cao với các ngưỡng khác nhau Thí nghiệm với ảnh Lena.bmp sau khi giấu 7168 bit thông tin cho thấy các ảnh giấu tin với các ngưỡng T khác nhau Sử dụng kỹ thuật phát hiện tổng quát, chúng ta có thể thu được bảng kết quả về ảnh có giấu tin.
Bảng 3.10 trình bày kết quả kiểm tra ảnh Lena.bmp trước và sau khi thực hiện quá trình giấu tin bằng kỹ thuật IWH Phương pháp phát hiện mù được áp dụng trên miền LSB của các hệ số wavelet để đánh giá hiệu quả giấu tin trong ảnh kiểm tra.
Tỉ lệ giấu thấp trong ảnh Lena8.bmp khiến các kỹ thuật phát hiện mù dựa trên LSB của các hệ số wavelet không đạt hiệu quả cao Do đó, phương pháp 3.3.2.2 được đề xuất như một giải pháp phát hiện tin cậy hơn so với phương pháp phát hiện tổng quát LSB, đặc biệt cho ảnh giấu tin sử dụng kỹ thuật giấu IWH.
3.3.2.2 Phương pháp phát hiện và ước lượng thông tin Để có thể phát hiện và ước lượng thông tin giấu sử dụng kỹ thuật IWH, đầu tiên chúng ta khảo sát biểu đồ tần suất các hệ số wavelet trên ba băng tần cao của tập gồm 8 ảnh: Airplane.bmp, Beer.bmp, Elaine.bmp, House.bmp, Lena.bmp, Peppers.bmp, Sailboat.bmp, Tiffany.bmp (đã sử dụng trong 3.2.2.2) được các biểu đồ tương ứng theo hình 3.11
Hình 3.11 Biểu đồ tần suất hệ số wavelet trên các băng tần cao của các ảnh gốc: a) Airplane.bmp, b) Beer.bmp, c) Elaine.bmp, d) House.bmp, e) Lena.bmp, f) Peppers.bmp, g)
Chúng ta sẽ tiến hành phân tích chi tiết biểu đồ tần suất của ảnh Lena.bmp sau khi đã nhúng thông tin từ một ảnh logo nhị phân có kích thước 128x56 điểm ảnh.
7168 bit (hình 3.4 (b)) sử dụng kỹ thuật giấu IWH với các vị trí chọn T ban đầu khác nhau theo ba thử nghiệm sau:
Trong thử nghiệm đầu tiên, thông tin được nhúng trên ba băng tần cao (HH, LH, HL) với vị trí bắt đầu tại T = 2 Sau khi hoàn tất quá trình giấu thông tin, kết quả nhận được là điểm dừng.
St = -2, lúc này biểu đồ tần suất của ảnh bị thay đổi như hình 3.12 (b)
Trong thử nghiệm thứ hai, vị trí khởi điểm chọn T = 4, nhận được điểm dừng
St = 3 Trong trường hợp này biểu đồ thay đổi như hình 3.12 (c)
Trong thử nghiệm thứ ba, vị trí khởi điểm chọn T = 6 và nhận được điểm dừng St = -5, lúc này biểu đồ thay đổi như hình 3.12 (d)
Hình 3.12 Biểu đồ tần suất hệ số wavelet trên các băng tần cao: (a) của ảnh Lena gốc và sau khi giấu tin với các vị trí chọn ban đầu: (b) T = 2, (c) T = 4, (d) T = 6
9000 Watermarked Image in Final Step
9000 Watermarked Image in Final Step
9000 Watermarked Image in Final Step
So sánh biểu đồ tần suất các hệ số wavelet của ảnh gốc (hình 3.11) và ảnh có giấu tin với các điểm chọn ban đầu khác nhau T (hình 3.12), ta nhận thấy trong ảnh gốc điển hình, thứ tự các hệ số wavelet là h 0 > h 1 > h 2 > h 3 >… và h 0 > h -1 > h -2 > h -3 >… với hi là số hệ số wavelet có giá trị bằng i.
Trong khi đó biểu đồ tần suất của ảnh sau khi giấu thông tin trong thử nghiệm thứ nhất ta thấy: h 4 >h 3 , h 3 h2, h -4 > h -3 , h -3 < h -2
Trong thử nghiệm thứ hai: h5 h6, h-5 h-4, h4 < h3, h4