1. Trang chủ
  2. » Luận Văn - Báo Cáo

Một số phương pháp phát hiện giấu tin

35 2 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Tiêu đề Một Số Phương Pháp Phát Hiện Giấu Tin
Tác giả Nguyễn Quốc Tuấn
Người hướng dẫn TS. Phan Trung Huy
Trường học Trường Đại Học Bách Khoa Hà Nội
Chuyên ngành Toán Tin-Toán Ứng Dụng
Thể loại Luận Văn Thạc Sĩ Khoa Học
Năm xuất bản 2012
Thành phố Hà Nội
Định dạng
Số trang 35
Dung lượng 5,22 MB

Cấu trúc

  • 1. Mở đầu (6)
    • 1.1. Cơ Bản Về Giấu Tin Và Phát Hiện Giấu Tin (6)
    • 1.2. Giấu Tin Và Mã Hóa (7)
  • 2. Một Vài Phương Pháp Giấu Tin Trên Ảnh Số (8)
    • 2.1. Các định dạng ảnh số (8)
    • 2.2. Kỹ thuật nhúng LSB(Least Significant Bit) (9)
    • 2.3. Kỹ thuật giấu tin trong Jpeg-JSteg (9)
    • 2.4. Kỹ thuật giấu thuận nghịch HKC (12)
    • 2.5. Kỹ thuật CPT giấu tin trong ảnh bitmap (13)
  • 3. Phát Hiện Giấu Tin (16)
    • 3.1. Kỹ Thuật Visual Attack (16)
    • 3.2. Kỹ Thuật Phân Tích Thống Kê Chi-Square (19)
    • 3.3. Kỹ thuật phân tích Chi Square cải tiến. - (21)
    • 3.4. Phương pháp Zhang and Ping (21)
  • 4. Thực Nghiệm (23)
    • 4.1. Một vài kết quả thực nghiệm đã được công bố (23)
    • 4.2. Kết quả thực nghiệm của tác giả (25)
  • Tài liệu tham khảo (35)

Nội dung

Một Vài Phương Pháp Giấu Tin Trên Ảnh Số

Các định dạng ảnh số

Graphics Interchange Format là một định dạng ảnh được đưa ra vào năm

Năm 1987, định dạng GIF sử dụng bảng màu 256 màu từ hệ RGB 24bit và một ma trận các điểm ảnh, với giá trị mỗi điểm ảnh là chỉ số trong bảng màu Hạn chế về số lượng màu trong định dạng này khiến GIF chỉ phù hợp với những hình ảnh có độ sắc nét thấp.

Định dạng ảnh bitmap bao gồm các loại như 1, 2, 4, 8, 16 và 24 bit, chỉ số này thể hiện số lượng bit cần thiết để lưu trữ một điểm ảnh Số lượng bit trên mỗi pixel càng lớn, chất lượng và độ nét của ảnh càng cao.

Jpeg (Joint Photographics Experts Group) là định dạng ảnh nén ra đời năm 1992, sử dụng phương pháp nén có mất thông tin, nhưng không làm giảm đáng kể chất lượng hình ảnh Định dạng này mang lại tỷ lệ nén tốt và chất lượng ảnh cao Quá trình nén và giải nén của jpeg diễn ra một cách hiệu quả.

Kỹ thuật nhúng LSB(Least Significant Bit)

Mỗi ảnh số có kích thước m x n được coi là một ma trận m x n các điểm ảnh, trong đó giá trị P[i,j] đại diện cho điểm ảnh tại vị trí [i,j] Số lượng byte lưu trữ giá trị P[i,j] thay đổi tùy thuộc vào loại ảnh; ví dụ, ảnh bitmap 256 màu sử dụng 1 byte (8 bit) cho mỗi điểm ảnh Đối với ảnh n bit, giá trị của mỗi điểm ảnh nằm trong khoảng [0,] Kỹ thuật nhúng LSB thay thế 1 bit vào bit cuối cùng của giá trị điểm ảnh, khiến sự thay đổi này khó nhận biết bằng mắt thường, vì giá trị điểm ảnh chỉ có thể sai khác tối đa 1 đơn vị so với ban đầu.

Kỹ thuật giấu tin trong Jpeg-JSteg

Kỹ thuật giấu tin trong định dạng ảnh JPEG, được gọi là JPEG JSTEG, là một phương pháp phổ biến Quá trình này can thiệp vào quá trình mã hóa ảnh JPEG, cho phép thông tin được ẩn giấu trong dữ liệu hình ảnh Như đã biết, quá trình chuyển đổi từ dữ liệu RGB sang định dạng JPEG là bước quan trọng trong kỹ thuật này.

Toàn bộ khối dữ liệu RGB được chia thành các khối con kích thước 8x8, sau đó chuyển đổi sang định dạng PAL YcrBr Mỗi khối 8x8 trải qua quá trình biến đổi cosin (Discrete Cosine Transform), từ đó thu được các hệ số DCT (DCT Coefficient).

Sau khi thu thập các khối 8x8 chứa hệ số DCT, quá trình lượng tử hóa được thực hiện bằng cách sử dụng một ma trận 8x8.

DCT Coefficients Matrix lượng tử DCT Coefficient lượng tử

Jsteg thực hiện quá trình nhúng thông tin mật vào các hệ số DCT đã được lượng tử hóa, bắt đầu từ các hệ số khác 0, 1 của block đầu tiên cho đến khi hoàn thành bản tin mật hoặc đến vị trí cuối cùng của block cuối Kỹ thuật giấu tin sử dụng trong JSteg là nhúng LSB các chuỗi tin vào các hệ số DCT, làm thay đổi giá trị của các hệ số này tối đa 1 đơn vị Kết quả là ảnh sau khi giấu tin trở nên khó nhận biết bằng quan sát.

DCT Coefficient lượng tử Sau khi giấu LSB

Hình 5 DCT lượng tử và giấu bits

Chuỗi bit được giấu là:

00 01 00 01 01 01 01 00 00 00 00 01 00 00 00 01 00 01 00 00 01 00 00 01 Thuật toán được sử dụng trong JSteg như sau:

Input: message Cover_ Image, Output: Stego_Image

While (data left to embed) do

Get next DCT Coefficient from Cover_Image

Get next LSB from messageReplace DCT LSB with LSB messageEndif

Insert DCT coefficient into Stego_Image

Kỹ thuật giấu thuận nghịch HKC

Trong kỹ thuật NSAS, khả năng giấu thông điệp phụ thuộc vào độ lớn của điểm peak, cho thấy rằng việc giấu thông điệp có giới hạn nhất định.

Trong bài viết, có đề cập đến việc sử dụng 2859 bit trong ảnh để truyền thông tin Tuy nhiên, cách thức truyền tải thông tin về điểm zero, điểm peak, và các thông điệp bổ sung từ người gửi đến người nhận chưa được giải thích rõ ràng Để khắc phục vấn đề này, Hwang cùng các đồng nghiệp đã đề xuất kỹ thuật giấu thuật nghịch HKC.

Thuật toán giấu thuật nghịch HKC

Hình 6 (a) Histogram ảnh gốc (b) Histogram ảnh giấu tin

Trong quá trình phân tích hình ảnh, chúng ta cần xác định một điểm đỉnh (peak) và hai điểm thấp (min) Cụ thể, điểm đỉnh được giả định là vị trí 154 trong hình ảnh Lena, trong khi hai điểm thấp tương ứng là vị trí 23 và 255 Những điểm này đại diện cho số pixel lớn nhất và nhỏ nhất trong ảnh, như minh họa trong hình 6 (a).

Để khôi phục chính xác ảnh gốc, một bản đồ định vị đã được đề xuất nhằm lưu trữ thông tin vị trí của các pixel, bao gồm điểm đỉnh (peak), điểm tối thiểu bên trái và bên phải của điểm đỉnh, cũng như lượng pixel ban đầu tại các điểm tối thiểu này trong lược đồ HKC.

Khởi tạo không gian để nhúng tin là bước quan trọng trong việc xử lý ảnh Các pixel nằm ở bên trái giữa điểm peak và điểm min bên trái sẽ được dịch chuyển sang trái một pixel Tương tự, các pixel ở bên phải giữa điểm peak và điểm min bên phải sẽ dịch chuyển sang phải một pixel.

Nhúng thông tin vào ảnh bằng cách điều chỉnh giá trị pixel Nếu pixel có giá trị là peak-2 hoặc peak+2, kiểm tra bit cần nhúng trong chuỗi bit Nếu bit là 1, pixel với giá trị peak-2 sẽ tăng lên 1, trong khi pixel với giá trị peak+2 sẽ giảm đi 1 Nếu bit là 0, giá trị pixel sẽ được duy trì Hình 2 (b) cho thấy histogram của ảnh sau khi đã nhúng thông tin.

Kỹ thuật CPT giấu tin trong ảnh bitmap

Thuật toán CPT (Chen-Pan-Tseng 2000) là một phương pháp nổi bật trong việc giấu tin trong ảnh 8 bit và 24 bit Thuật toán này cho phép nhúng một dãy bit vào ma trận kích thước r F m×n=N, với điều kiện r=log 2 (× +1) (hay 2m n  r -1N S hα ≠ỉ và S α-hα ≠ỉ

Khi đó ta đảo 1 ô thuộc S hα và 1 ô thuộc S α-hα

Phát Hiện Giấu Tin

Kỹ Thuật Visual Attack

Kỹ thuật đơn giản này giúp phát hiện thông tin bị giấu trong ảnh, phù hợp với các ảnh có vùng đồng màu rộng như BITMAP 256, BITMAP 24bit và GIF Phương pháp hoạt động bằng cách loại bỏ các bit dữ liệu có giá trị cao trong mỗi điểm ảnh, chỉ giữ lại bit thấp nhất (LSB), vì chúng có khả năng chứa thông tin giấu Sau khi loại bỏ, ta có một ảnh mới chỉ với các giá trị LSB, từ đó dễ dàng phát hiện sự bất thường Nếu phát hiện dấu hiệu bất thường, ta có thể kết luận ảnh đó có chứa thông tin mật hay không Một số ví dụ minh họa cho việc này bao gồm ảnh đã giấu thông tin LSB và ảnh không chứa thông tin mật.

Sau khi loại bỏ các bit cao của điểm ảnh và chỉ giữ lại các LSB, chúng ta nhận thấy trên vùng trắng xuất hiện nhiều dấu hiệu bất thường, cụ thể là các vùng muỗi chứa thông tin mật đã được giấu trong ảnh.

Phương pháp này không hiệu quả đối với những bức ảnh có màu sắc phức tạp, với nhiều màu và sự phân bố màu đồng đều Ví dụ, trong trường hợp ảnh được giấu tin, ảnh LSB, ảnh gốc trước khi giấu thông tin mật, và ảnh sau khi giấu 1K và 2K tin mật.

Phương pháp visual attack không hiệu quả khi áp dụng cho các bức ảnh loại này, vì mắt thường không thể phát hiện các điểm bất thường trong ảnh LSB Do đó, việc phát hiện tin giấu trong những bức ảnh này cần sử dụng các kỹ thuật cao cấp và hiệu quả hơn.

Kỹ Thuật Phân Tích Thống Kê Chi-Square

Điều kiện: Để bắt đầu với kỹ thuật này, chúng ta quy định một số điều kiện tiền đề

1 Trong mỗi ảnh số, ta thấy sự phân bố mầu sắc các ảnh không mang tính đều

Trong ảnh, số lượng màu sắc thường tập trung vào một vài màu chủ đạo, dẫn đến việc các LSB của pixel chỉ chứa hai giá trị 0 và 1 không phân bố đều theo tỷ lệ 50/50 Điều này cũng thể hiện ở sự phân bố không đồng đều của giá trị tần suất mỗi pixel Đối với ảnh Jpeg, các hệ số DCT cũng không có sự phân bố đồng đều.

2 Trong các thông tin cầu giấu là một chuỗi các bit 0 và 1, và sự phân phối của các bit 0 và 1 này hầu như có sự phân phối đều 50/50 Với các kiểu thong tin được mã hóa hay thông tin nguyên thủy Tính đều của các chuỗi bit bên trong nó luôn có xu hướng là 50/50

3 Các phép nhúng một bit vào ảnh luôn sử dụng phương pháp nhúng LSB Điều này làm cho sự thay đổi trong giá trị của mỗi điểm ảnh là nhỏ nhất

4 Kích thước của chuỗi thong tin cần giấu tính bằng bit luôn luôn nhỏ hơn số lượng các điểm ảnh có trong ảnh Điều này đảm bảo rằng mỗi điểm ảnh chỉ có thể chứa nhiều nhất 1 bit cần giấu

5 Để thuận tiện cho việc phân tích, ta giả sự rằng chuỗi dữ liệu cần dấu được nhúng tuần tự từ điểm ảnh đầu tiên cho đến hết file

Here is a rewritten paragraph that complies with SEO rules:"Trong ảnh số, ta gọi Xk là tần suất của điểm ảnh có giá trị là 2k, còn Yk là tần suất suất hiện của điểm ảnh có giá trị là 2k+1 Mỗi ảnh số đều có một tập hợp các điểm ảnh với giá trị khác nhau, trong đó Xk và Yk là hai thành phần quan trọng, giúp mô tả đặc trưng của ảnh số."

X = {Xk} và Y = {Yk} thể hiện mối quan hệ giữa các giá trị trong quá trình nhúng thông tin Khi một bit được nhúng vào điểm ảnh có giá trị k, nó sẽ chuyển đổi giá trị từ Xk sang Yk hoặc ngược lại Điều này có nghĩa là tần suất của cặp (Xk, Yk), được ký hiệu là Zk, sẽ giữ nguyên trong cả ảnh gốc và ảnh đã nhúng thông tin.

Trên lý thuyết, để đại diện cho tần suất của cặp (Xk , Y k ) thì giá trị

Trên thực nghiệm, ta có thể coi giá trị X k hoặc Y k là giá trị đại diện cho cặp (Xk +

Không giảm tính tổng quát, ta có thể giả sử là giá trị Xk Vậy ta có n cặp là

Chi-Square Attack Để kiểm định sự khác biệt giữa kết quả thực tế và kết quả trên lý thuyết, ta sử dụngphép kiểm định 2-χ test χ2 = ∑

Số lượng các cặp (Xk + Yk) được ký hiệu là n, đồng thời n cũng là bậc tự do của phân phối χ2 Mức độ tương đương giữa hai phân phối, cả về lý thuyết lẫn thực tế, sẽ được tính toán bằng công thức sau:

Giá trị P được sử dụng để xác định khả năng chứa thông tin giấu trong ảnh Để phát hiện thông tin ẩn, người ta thực hiện kiểm định 2 trên các vùng của ma trận điểm ảnh với kích thước χ tăng dần Nếu giá trị P gần 1, ảnh có khả năng chứa thông tin giấu; ngược lại, nếu P gần 0, ảnh không chứa thông tin giấu Phương pháp này cũng cho phép ước lượng độ dài của bản tin giấu Nó hoạt động hiệu quả với các phương pháp nhúng dữ liệu tuần tự, như JSteg và JHide, nơi thông tin được nhúng từ điểm ảnh đầu tiên cho đến khi hoàn tất Tuy nhiên, phương pháp này gặp khó khăn khi áp dụng cho các phương pháp giấu tin không tuần tự, như CPT.

Kỹ thuật phân tích Chi Square cải tiến -

Dựa trên kỹ thuật Chi-Square của Westfeld và Pfitzmann, Provos và Honeyman đã cải tiến phương pháp phân tích Chi-Square bằng cách thay thế các cặp (2k, 2k+1) bằng các cặp (2k, 2k-1) Kỹ thuật này đặc biệt phù hợp cho các phép nhúng ngẫu nhiên, như trong thuật toán OutGuess sử dụng để nhúng trong ảnh JPEG Tuy nhiên, các phương pháp phân tích Chi-Square thường gặp khó khăn khi áp dụng cho các mẫu tin giấu có kích thước nhỏ và được giấu một cách ngẫu nhiên.

Phương pháp Zhang and Ping

Đây là một phương pháp được Zhang và Ping đề xuất nhằm áp dụng cho phương pháp giấu tin của Jsteg

Giá trị tần suất của hệ số DCT Coefficient i trong ảnh JPEG được gọi là hi, và nó cũng được biết đến với tên gọi giá trị histogram của hệ số DCT Coefficient có giá trị i.

Chúng ta tính toán giá trị

Khi giá trị vượt qua một ngưỡng nhất định, có thể xác định rằng thông tin này chứa đựng dữ liệu quan trọng Phương pháp này cũng cho phép ước lượng độ dài của thông tin mật được giữ lại theo công thức dưới đây.

Phương pháp này hiệu quả trong việc phát hiện thông tin bị ẩn giấu bởi kỹ thuật jpsteg, nhưng không thể áp dụng cho các kỹ thuật giấu tin trong jphide.

Thực Nghiệm

Một vài kết quả thực nghiệm đã được công bố

Kết quả nghiên cứu của Andreas Westfeld và Andreas Pfitzmann cho thấy việc phân tích Chi-Square trên các hình ảnh được giấu tin bằng phần mềm Jsteg đã mang lại những phát hiện quan trọng Những kết quả này được trình bày trong tài liệu "Attacks on Steganographic Systems Breaking the Steganographic Utilities EzStego, Jsteg, Steganos, and S-Tools—and Some Lessons Learned" (tài liệu tham khảo mục [3]).

Kết quả này được thực hiện trên một ảnh jpeg

 Kết quả của phép phân tích với ảnh gốc cho ta biểu đồ sau:

Biểu đồ cho thấy đường màu đen đậm bên dưới tương ứng với giá trị 0%, điều này có nghĩa là trong suốt quá trình kiểm định ảnh, không phát hiện được bất kỳ thông tin mật nào bị giấu kín.

 Kết quả phân tích với ảnh được giấu một thông tin mật có chiều dài (tính theo bit) là 50% tổng số điểm ảnh của ảnh

Biểu đồ cho thấy rằng trong khoảng 50% số lượng điểm ảnh đầu tiên của ảnh, kết quả phân tích Chi Square đạt giá trị 100%, trong khi ở phần cuối của ảnh, giá trị này giảm xuống 0% Điều này cho thấy rằng ở phần đầu của bức ảnh có thông tin được giấu, giá trị Chi Square là 100% (= 1), trong khi ngay sau đó, tại phần điểm ảnh không có thông tin, giá trị này giảm nhanh chóng về 0% (= 0).

 Kết quả phân tích với ảnh được giấu tin trên toàn bộ các điểm ảnh.

Biểu đồ cho thấy kết quả của phép tính Chi-Square đạt giá trị 100%, điều này cho thấy ảnh được giấu tin trên tất cả các điểm ảnh một cách đồng đều.

Kết quả thực nghiệm của tác giả

Kết quả thực nghiệm này được thực hiện trên một ảnh jpeg có kích thước 40.982 Byte với số kích thước của matrix các điểm ảnh là 400x600 Phần mềm JPHSwin, một phần mềm mã nguồn mở, được sử dụng để giấu tin bằng phương pháp tuần tự các bit của thông tin mật vào trong file ảnh Ảnh gốc ban đầu được dùng để thực hiện giấu tin.

Hình 13 Test Orignal Tiến hành giấu tin được chứa trong file msg.txt

Nội dung trong file được thay đổi dần dần để tăng kích thước của tin thông tin cần giấu

Hình 14 Secret message Kích thước của file được thay đổi tăng dần là: 933Byte, 1.82K, 2.74K,

Sau khi giấu tin, các bức ảnh chứa thông tin được phân tích bằng một công cụ tự phát triển của tác giả Công cụ này trích xuất các hệ số DCT từ ảnh JPEG có chứa tin giấu và thực hiện kiểm định Chi-square cho từng phần kích thước của ảnh Kết quả được thể hiện qua biểu đồ tương quan giữa kích thước ảnh và khả năng chứa thông tin của vùng ảnh đó.

 Ảnh sau khi chứa thông tin mật kích thước 933Byte

Kết quả phân tích là:

 Ảnh sau khi chứa thông tin mật kích thước là 1.82K

Kết quả phân tích là:

 Ảnh sau khi chứa thông tin mật kích thước là 2.74 K.

Hình 20 Secret msg 2.74K Kết quả phân tích là:

Hình 21 Steganalysis 2.74K Ảnh sau khi chứa thông tin mật kích thước là 3.65 K.

Kết quả phân tích là:

Hình 23 Steganalysis 3.56K Ảnh sau khi chứa thông tin mật kích thước là 4.57 K.

Hình 24 Secret msg 4.57K Kết quả phân tích là:

 Ảnh sau khi chứa thông tin mật kích thước là 5.48 K.

Hình 26 Secret msg 5.48K Kết quả phân tích là:

Bài viết đã thảo luận về một số hệ thống giấu tin trong định dạng ảnh JPEG, một định dạng hình ảnh rất phổ biến trên internet hiện nay.

Các hệ giấu tin trên định dạng ảnh jpeg hiện nay được sử dụng phổ biến là:

 Kỹ thuật giấu thuận nghịch trên miền hệ số DCT

 Kỹ thuật CPT trong giấu tin

Bài viết trình bày các kỹ thuật xác định xem một bức ảnh có chứa thông tin bị giấu hay không, với hai phương pháp chính là tấn công hình ảnh (Visual attack) và phân tích Chi-Square.

 Kỹ thuật Visual attack được sử dụng cho các ảnh đơn giản về mầu sắc, với cách nhúng tin mật chỉ là kỹ thuật LSB đơn giản

 Kết quả của việc phân tích còn giúp ta ước lượng được kích thước của thông tin mật được giấu nếu có.

Cuối cùng là một vài kết quả thực nghiệm tác giả đã nghiên cứu bao gồm:

 Các kết quả thực nghiệm đã được công bố trên các tạp chí uy tín

 Kết quả thực nghiệm của tác giả về kỹ thuật phân tích Chi-Square.

Ngày đăng: 26/01/2024, 15:42

w