Đăng ký Đăng nhập
Trang chủ Nghiên cứu xây dựng một phương pháp giấu tin đơn giản, an toàn...

Tài liệu Nghiên cứu xây dựng một phương pháp giấu tin đơn giản, an toàn

.PDF
70
3
56

Mô tả:

ĐẠI HỌC QUỐC GIA HÀ NỘI TRƯỜNG ĐẠI HỌC CÔNG NGHỆ ĐỖ MINH ĐỨC NGHIÊN CỨU XÂY DỰNG MỘT PHƯƠNG PHÁP GIẤU TIN ĐƠN GIẢN, AN TOÀN LUẬN VĂN THẠC SĨ HÀ NỘI - 2011 ĐẠI HỌC QUỐC GIA HÀ NỘI TRƯỜNG ĐẠI HỌC CÔNG NGHỆ ĐỖ MINH ĐỨC NGHIÊN CỨU XÂY DỰNG MỘT PHƯƠNG PHÁP GIẤU TIN ĐƠN GIẢN, AN TOÀN Ngành: Công nghệ thông tin Chuyên ngành: Hệ thống thông tin Mã số : 60.48.05 LUẬN VĂN THẠC SĨ NGƯỜI HƯỚNG DẪN KHOA HỌC: TS HỒ VĂN CANH HÀ NỘI - 2011 1 MỤC LỤC BẢNG KÝ HIỆU CHỮ CÁI VIẾT TẮT ........................................................................4 Chương I. TỔNG QUAN VỀ ẨN GIẤU THÔNG TIN ............................................6 1.1 MỘT SỐ KHÁI NIỆM CƠ BẢN VỀ GIẤU TIN .................................................6 1.1.1 Định nghĩa ......................................................................................................6 1.1.2 Phân loại các kỹ thuật giấu tin ........................................................................7 1.1.3 Vài nét về lịch sử giấu tin ...............................................................................7 1.1.4 Mô hình kỹ thuật giấu tin và một số thuật ngữ cơ bản ...................................8 1.2 MỘT SỐ ỨNG DỤNG PHỔ BIẾN CỦA KỸ THUẬT GIẤU TIN ...................10 1.2.1 Bảo vệ bản quyền tác giả (copyright protection) .........................................10 1.2.2 Xác thực thông tin hay phát hiện xuyên tạc thông tin ..................................10 1.2.3 Nhận dạng vân tay hay dán nhãn ..................................................................10 1.2.4 Điều khiển sao chép...................................................................................... 11 1.2.5 Giấu tin mật ..................................................................................................11 1.3 GIẤU TIN TRONG DỮ LIỆU ĐA PHƯƠNG TIỆN .........................................11 1.3.1 Giấu tin trong ảnh ......................................................................................... 11 1.3.2 Giấu tin trong audio ...................................................................................... 12 1.3.3 Giấu thông tin trong video ............................................................................12 Chương 2. GIẤU TIN TRÊN ẢNH TĨNH ............................................................. 14 2. 1 GIẤU TIN TRONG ẢNH, NHỮNG ĐẶC TRƯNG VÀ TÍNH CHẤT ...........14 2.1.1 Phương tiện chứa có dữ liệu tri giác tĩnh ..................................................... 14 2.1.2 Kỹ thuật giấu phụ thuộc ảnh .........................................................................14 2.1.3 Kỹ thuật giấu tin lợi dụng tính chất hệ thống thị giác của con người ..........14 2.1.4 Giấu thông tin trong ảnh tác động lên dữ liệu ảnh nhưng không thay đổi kích thước ảnh .......................................................................................................15 2.1.5 Đảm bảo yêu cầu chất lượng ảnh sau khi giấu thông tin.............................. 15 2.1.6 Thông tin trong ảnh sẽ bị biến đổi nếu thực hiện các phép biến đổi ảnh .....15 2.1.7 Cần thiết ảnh gốc khi giải mã ảnh ................................................................ 15 2.2 GIẤU THÔNG TIN TRONG ẢNH ĐEN TRẮNG, ẢNH ĐA CẤP XÁM .......16 2 2.3 KỸ THUẬT GIẤU TIN ĐƠN GIẢN ................................................................ 17 2.3.1 Ý tưởng .........................................................................................................17 2.3.2 Thuật toán giấu tin: ...................................................................................17 2.3.3 Phân tích thuật toán ...................................................................................... 19 2.3.4 Áp dụng thuật toán trong ảnh đen trắng, ảnh màu và ảnh đa cấp xám. .......20 2.4 KỸ THUẬT GIẤU TIN WU LEE .....................................................................23 2.4.1 Một số khái niệm .......................................................................................... 23 2.4.2 Phân tích thuật toán ...................................................................................... 27 2.5 KỸ THUẬT GIẤU TIN YUAN PAN TSENG...................................................27 2.5.1 Một số khái niệm dùng trong thuật toán: ..................................................... 28 2.5.2 Thuật toán: ....................................................................................................29 2.5.3 Chứng minh tính đúng đắn của thuật toán: ..................................................35 2.5.4 Độ an toàn của thuật toán .............................................................................36 2.5.5 Phân tích đánh giá thuật toán........................................................................37 2.6 MỘT SỐ KỸ THUẬT GIẤU TIN VÀO ẢNH BITMAP 24 BIT ...................... 37 2.6.1 Phương pháp giấu tuần tự .............................................................................37 2.6.2 Phương pháp giấu vào các khu vực nhậy cảm của ảnh ................................ 37 2.6.3 Phương pháp giấu ngẫu nhiên vào các điểm ảnh .........................................38 2.7 Khả năng phát hiện ảnh có giấu tin .....................................................................38 2.7.1 Khái niệm cặp giá trị điểm ảnh (PoV) và khả năng phát hiện giấu tin bằng phương pháp thống kê χ –bình phương .................................................................40 2.7.2. Khái niệm cặp giá trị điểm ảnh (POV – Pairs of Values) ........................... 40 2.7.3. Thuật toán PoV3 .......................................................................................... 41 Chương 3 NGHIÊN CỨU ĐỀ XUẤT MỘT PHƯƠNG PHÁP GIẤU TIN .............43 3.1 Cơ sở lý thuyết toán học ...................................................................................... 43 3.1.1 Ma trận và ma trận tam giác .........................................................................43 3.1.2 Ứng dụng trong xây dựng thuật toán giấu tin mật .......................................50 3.1.3 Thuật toán trích chọn thông tin từ ảnh stego ................................................52 3.2 Ứng dụng chuẩn mã hóa AES trong giấu tin....................................................... 53 3 3.2.1 Giới thiệu ......................................................................................................53 3.2.2 Tham số, ký hiệu, thuật ngữ và hàm ............................................................ 53 3.3.3 Một số khái niệm toán học ...........................................................................54 3.3.4 Phương pháp Rijndael ..................................................................................56 3.3.5 Ứng dụng phương pháp Rijndael bảo mật tin giấu trong ảnh ...................... 63 3.3 Thử nghiệm..........................................................................................................65 3.3.1 Môi trường thử nghiệm ................................................................................65 3.3.2 Mô hình chương trình thử nghiệm ............................................................... 65 3.3.3 Tập dữ liệu thử nghiệm ................................................................................66 3.3.4 Kết quả thử nghiệm ...................................................................................... 66 KẾT LUẬN ...................................................................................................................67 Tài liệu tham khảo .........................................................................................................68 4 BẢNG KÝ HIỆU CHỮ CÁI VIẾT TẮT 1 AES Advanced Encryption Standard, hay Tiêu chuẩn mã hóa tiên tiến 2 BMP Basic Metabolic Panel - Ảnh bipmap 3 GIF Graphics Interchange Format - Ảnh có định dạng GIF 4 JPEG Joint Photographic Experts Group - Ảnh nén JPEG 5 LSB Least Significant Bit - Bit có trọng số thấp nhất 6 PNG Portable Network Graphics - Ảnh nén PNG 7 PoV Pairs of Values - cặp giá trị điểm ảnh chẵn/lẻ 8 TIFF Tagged Image File Format - tập tin định dạng TIFF chứa nhiều ảnh 5 LỜI MỞ ĐẦU Trong những năm qua, chúng ta chứng kiến sự tiến bộ mạnh mẽ của khoa học công nghệ nói chung và ngành Công nghệ thông tin nói riêng. Hưởng lợi từ những kết quả đó, không chỉ trong lĩnh vực dân sự, mà trong lĩnh vực An ninh - Quốc phòng, cũng tận dụng tối đa những thành tựu của ngành Công nghệ thông tin để phục vụ yêu cầu công tác. Sự đa dạng của của môi trường thông tin trên Internet đã mở ra những kênh liên lạc, các dịch vụ trao đổi thông tin hết sức phong phú. Xuất phát từ thực tiễn và yêu cầu công tác của ngành công an, một mặt phải tìm hiểu phương pháp phân tích những thông tin bí mật, phương thức liên lạc mà đối tượng che giấu. Mặt khác, cũng phải nghiên cứu phương pháp bảo vệ kênh liên lạc phục vụ công tác nghiệp vụ của lực lượng bí mật. Trong luận văn này, tập trung nghiên cứu và giải quyết những vấn đề cụ thể sau: 1. Nghiên cứu tổng quan về lĩnh vực giấu tin, những khái niệm cơ bản, ứng dụng thực tiễn của giấu thông tin trong môi trường đa phương tiện; 2. Nghiên cứu, phân tích và tìm hiểu một số thuật toán giấu tin trong ảnh tĩnh. Đồng thời, phân tích khả năng tấn công hệ giấu tin mật sử dụng ảnh bitmap làm môi trường giấu tin; 3. Đề xuất một phương pháp giấu tin trong ảnh bitmap 24 bit mầu: - Trong đó, ứng dụng lý thuyết đại số tuyến tính để xây dựng thuật toán mã hóa thông điệp trước khi giấu; Ứng dụng phương pháp mã hóa Rijndael để bảo đảm tốt nhất yêu cầu bảo mật thông tin; - Thử nghiệm mô hình giấu tin trong ảnh bitmap 24 bit mầu với thông tin trước khi giấu được mã hóa theo tiêu chuẩn mã hóa AES (Thuật toán Rijndael sử dụng khóa 128 bit). - Phân tích, đánh giá kết quả giấu tin của mô hình bằng phương pháp phân tích trực quan và phương pháp thống kê sử dụng tiêu chuẩn Khi bình phương (Chi-square). 6 Chương I. TỔNG QUAN VỀ ẨN GIẤU THÔNG TIN Trong một thời gian dài, nhiều phương pháp bảo vệ thông tin đã được đưa ra, trong đó giải pháp dùng mật mã được ứng dụng rộng rãi nhất. Các hệ mã đã được phát triển nhanh chóng và được ứng dụng rất phổ biến. Thông tin ban đầu sẽ được mã hoá thành các kĩ hiệu vô nghĩa, sau đó sẽ được lấy lại thông qua việc giải mã nhờ khoá của hệ mã. Đã có nhiều hệ mã phức tạp và hiệu quả được sử dụng như DES, RSA, AES,... Giả sử ta có đối tượng cần bảo mật R (một văn bản, một tấm bản đồ hoặc một tệp âm thanh chẳng hạn). Nếu dùng phương pháp mã hoá để bảo mật R ta sẽ thu được bản mật mã của R là R’ chẳng hạn. Thông thường, R’ mang những giá trị “vô nghĩa” và chính điều này làm cho đối phương nghi ngờ và tìm mọi cách thám mã. Ngược lại, nếu dụng phương pháp giấu R vào một đối tượng khác, một bức ảnh F chẳng hạn ta sẽ thu được bức ảnh F’ hầu như không sai khác với F. Sau đó chỉ cần gửi ảnh F’ cho người nhận. Để lấy ra bản tin R từ ảnh F’ ta không cần ảnh gốc F. Giả sử, khi đối phương bắt được tấm ảnh F’ nếu đó là ảnh lạ (ảnh cá nhân, ảnh phong cảnh của những nơi không nổi tiếng ) thì khó nảy sinh nghi ngờ về khả năng chứa tin mật trong F’. Như vậy, sự khác biệt giữa mã hoá thông tin và giấu thông tin là mức độ lộ liễu của đối tượng mang tin mật. Nếu ta phối hợp hai phương pháp trên thì mức độ lộ liễu được giảm đến mức tối đa, đồng thời độ an toàn cũng được nâng cao. Chẳng hạn, ta có thể mã hoá R thành R’ sau đó mới giấu R’ vào ảnh F để thu được ảnh F’. Tóm lại, giấu thông tin và hệ mã mật có quan hệ mật thiết với nhau, cùng xây dựng nên một hệ thống an toàn và bảo mật thông tin. 1.1 MỘT SỐ KHÁI NIỆM CƠ BẢN VỀ GIẤU TIN 1.1.1 Định nghĩa Giấu thông tin là một kỹ thuật nhúng (giấu) một lượng thông tin số nào đó vào trong một đối tượng dữ liệu số khác [1]. Kỹ thuật giấu thông tin nhằm mục đích đảm bảo an toàn và bảo mật thông tin rõ ràng ở hai khía cạnh. Một là bảo mật cho giữ liệu được đem giấu, hai là bảo mật cho chính đối tượng được dùng để giấu tin. Hai khía cạnh khác nhau này dẫn đến hai khuynh hướng kỹ thuật chủ yếu của giấu tin. Khuynh hướng thứ nhất là giấu tin mật (steganography). Khuynh hướng này tập trung vào các kỹ thuật giấu tin sao cho thông tin giấu được nhiều và quan trọng là người khác khó phát hiện được một đối tượng có bị giấu tin bên trong hay không. Khuynh hướng thứ hai là thuỷ vân số (watermarking). Khuynh hướng thuỷ vân số đánh giấu vào đối tượng nhằm khẳng định bản quyền sở hữu hay phát hiện xuyên tạc thông tin. 7 1.1.2 Phân loại các kỹ thuật giấu tin Do kỹ thuật giấu thông tin số mới được hình thành trong thời gian gần đây nên xu hướng phát triển vẫn chưa ổn định. Nhiều phương pháp mới, theo nhiều khía cạnh khác nhau đang và sẽ được đề xuất, bởi vậy một định nghĩa chính xác, một sự đánh giá phân loại rõ ràng chưa thể có được. Sơ đồ phân loại trên hình 1.1 được Fabien A. P. Petitcolas đề xuất năm 1999. Có thể chia lĩnh vực giấu dữ liệu ra làm hai hướng lớn, đó là watermarking và steganography. Nếu như watermark quan tâm nhiều đến các ứng dụng giấu các mẩu tin ngắn nhưng đòi hỏi độ bền vững cao của thông tin cần giấu đối với các biến đổi thông thường của tệp dữ liệu môi trường thì steganography lại quan tâm tới các ứng dụng che giấu các bản tin với độ mật và dung lượng càng lớn càng tốt. Đối với từng hướng lớn này, quá trình phân loại có thể tiếp tục theo các tiêu chí khác, ví dụ dựa theo ảnh hưởng các tác động từ bên ngoài có thể chia watermark thành hai loại, một loại bền vững với các tác động sao chép trái phép, loại thứ hai lại cần tính chất hoàn toàn đối lập: phải dễ bị phá huỷ trước các tác động nói trên. Cũng có thể chia watermark theo đặc tính, một loại cần được che giấu để chỉ có một số những người tiếp xúc với nó có thể thấy được thông tin, loại thứ hai đối lập, cần được mọi người nhìn thấy. Infomation hiding Giấu thông tin Watermarking Steganograph y Thuỷ vân số Giấu tin mật Robust Fragile Copyright marking Watermarking Thuỷ vân “dễ vỡ” Thuỷ vân bền vững Imperceptible Visible Watermarking Watermarking Thuỷ vân ẩn Thuỷ vân hiển Hình 1.1 Phân loại các kỹ thuật giấu tin 1.1.3 Vài nét về lịch sử giấu tin Từ Steganography bắt nguồn từ Hi Lạp và được sử dụng cho tới ngày nay, nó có nghĩa là tài liệu được phủ (covered writing). Những ghi chép sớm nhất về kỹ thuật 8 giấu thông tin (thông tin được hiểu theo nghĩa nguyên thủy của nó) thuộc về sử gia Hy-Lạp Herodotus. Khi bạo chúa Hy-Lạp Histiaeus bị vua Darius bắt giữ ở Susa vào thế kỷ thứ năm trước Công nguyên, ông ta đã gửi một thông báo bí mật cho con rể của mình là Aristagoras ở Miletus. Histiaeus đã cạo trọc đầu của một nô lệ tin cậy và xăm một thông báo trên da đầu của người nô lệ ấy. Khi tóc của người nô lệ này mọc đủ dài người nô lệ được gửi tới Miletus. Một câu chuyện khác về thời Hy-Lạp cổ đại cũng do Herodotus ghi lại. Môi trường để ghi văn bản chính là các viên thuốc được bọc trong sáp ong. Demeratus, một người Hy-Lạp, cần thông báo cho Sparta rằng Xerxes định xâm chiếm Hy-Lạp. Để tránh bị phát hiện, anh ta đã bóc lớp sáp ra khỏi các viên thuốc và khắc thông báo lên bề mặt các viên thuốc này, sau đó bọc lại các viên thuốc bằng một lớp sáp mới. Những viên thuốc được để ngỏ và lọt qua mọi sự kiểm tra một cách dễ dàng. Ý tưởng về che giấu thông tin đã có từ hàng nghìn năm về trước nhưng kỹ thuật này được dùng chủ yếu trong quân đội và trong các cơ quan tình báo. Mãi cho tới vài thập niên gần đây, giấu thông tin mới nhận được sự quan tâm của các nhà nghiên cứu và các viện công nghệ thông tin với hàng loạt công trình nghiên cứu giá trị. 1.1.4 Mô hình kỹ thuật giấu tin và một số thuật ngữ cơ bản Mô hình của kỹ thuật giấu tin cơ bản được mô tả theo hai hình vẽ sau: Thông tin giấu Phương tiện chứa (audio, ảnh, video) Bộ nhúng thông tin Phương tiện chứa đã được giấu tin Phân phối Khoá Hình 1.2 Lược đồ chung cho quá trình giấu tin Hình vẽ trên biểu diễn quá trình giấu tin cơ bản. Phương tiện chứa bao gồm các đối tượng được dùng làm môi trường để giấu tin như text, audio, video, ảnh …, thông tin giấu là một lượng thông tin mang một ý nghĩa nào đó như ảnh, logo, đoạn văn 9 bản…tuỳ thuộc vào mục đích của người sử dụng. Thông tin sẽ được giấu vào trong phương tiện chứa nhờ một bộ nhúng, bộ nhúng là những chương trình, triển khai các thuật toán để giấu tin và được thực hiện với một khoá bí mật giống như các hệ mã mật cổ điển. Sau khi giấu tin ta thu được phương tiện chứa bản tin đã giấu và phân phối sử dụng trên mạng. Khoá Phương tiện chứa đã được giấu tin Bộ giải mã tin Phân phối Thông tin giấu Phương tiện chứa (audio, ảnh, video) Kiểm định Hình 1.3 Lược đồ cho quá trình giải mã Hình vẽ trên chỉ ra các công việc giải mã thông tin đã giấu. Sau khi nhận được đối tượng phương tiện chứa có giấu thông tin, quá trình giải mã được thực hiện thông qua một bô giải mã tương ứng với bộ nhúng thông tin cùng với khoá của quá trình nhúng. Kết quả thu được gồm phương tiện chứa gốc và thông tin đã giấu. Bước tiếp theo thông tin giấu sẽ được xử lí kiểm định so sánh với thông tin giấu ban đầu. Một số thuật ngữ cơ bản:  datahiding: là thuật ngữ chỉ kỹ thuật giấu tin nói chung bao gồm cả giấu tin mật và thuỷ vân số.  steganography: chỉ kỹ thuật giấu tin mật trong một đối tượng.  watermarking: thuỷ vân số, chỉ những kỹ thuật giấu tin dùng để bảo vệ đối tượng chứa thông tin giấu.  phương tiện chứa (host signal): là phương tiện gốc được dùng để nhúng thông tin. Trong giấu thông tin trong ảnh thì nó mang tên ảnh chứa, còn trong audio là audio chứa v.v..Đôi khi ta cũng gọi phương tiện chứa là môi trường. 10  thông tin giấu (embeded data): là lượng thông tin được nhúng vào trong phương tiện chứa. Trong giấu tin mật steganography thông tin giấu được gọi là thông điệp giấu (message), còn trong kỹ thuật thuỷ vân số thì thông tin giấu được gọi là thuỷ vân (watermark) 1.2 MỘT SỐ ỨNG DỤNG PHỔ BIẾN CỦA KỸ THUẬT GIẤU TIN 1.2.1 Bảo vệ bản quyền tác giả (copyright protection) Đây là ứng dụng cơ bản nhất của kỹ thuật thuỷ vân số (digital watermarking) một dạng của phương pháp giấu tin. Một thông tin nào đó mang ý nghĩa quyền sở hữu tác giả (người ta gọi nó là thuỷ vân - watermark) sẽ được nhúng vào trong các sản phẩm, thuỷ vân đó chỉ một mình người chủ sở hữu hợp pháp các sản phẩm đó có và được dùng làm minh chứng cho bản quyền sản phẩm. Giả sử có một thành phẩm dữ liệu dạng đa phương tiện như ảnh, âm thanh, video cần được lưu thông trên mạng. Để bảo vệ các sản phẩm chống lại các hành vi lấy cắp hoặc làm nhái cần phải có một kỹ thuật để “dán tem bản quyền” vào sản phẩm này. Việc dán tem hay chính là việc nhúng thuỷ vân cần phải đảm bảo không để lại một ảnh hưởng lớn nào đến việc cảm nhận sản phẩm. Yêu cầu kỹ thuật đối với ứng dụng này là thuỷ vân phải tồn tại bền vững cùng với sản phẩm, muốn bỏ thuỷ vân này mà không được phép của người chủ sở hữu thì chỉ có cách là phá huỷ sản phẩm. 1.2.2 Xác thực thông tin hay phát hiện xuyên tạc thông tin Một tập các thông tin sẽ được giấu trong phương tiện chứa sau đó được sử dụng để nhận biết xem dữ liệu trên phương tiện gốc đó có bị thay đổi hay không. Các thuỷ vân nên được ẩn để tránh được sự tò mò của kẻ thù, hơn nữa việc làm giả các thuỷ vân hợp lệ hay xuyên tạc thông tin nguồn cũng cần được xem xét. Trong các ứng dụng thực tế, người ta mong muốn tìm được vị trí bị xuyên tạc cũng như phân biệt được các thay đổi (ví dụ như phân biệt xem một đối tượng đa phương tiện chứa thông tin giấu đã bị thay đổi, xuyên tạc nội dung hay là chỉ bị nén mất dữ liệu). Yêu cầu chung đối với ứng dụng này là khả năng giấu thông tin nhiều và thuỷ vân không cần bền vững trước các phép xử lý trên đối tượng đã được giấu tin. 1.2.3 Nhận dạng vân tay hay dán nhãn Thuỷ vân được sử dụng để nhận diện người gửi hay người nhận của một thông tin nào đó trong ứng dụng phân phối sản phẩm. Thuỷ vân trong trường hợp này cũng tương tự như số serial của sản phẩm phần mềm. Mỗi một sản phẩm sẽ mang một thuỷ vân riêng. Ví dụ như các vân khác nhau sẽ được nhúng vào các bản copy khác nhau của thông tin gốc trước khi chuyển cho nhiều người. Với những ứng dụng này thì yêu cầu là đảm bảo độ an toàn cao cho các thuỷ vân tránh sự xoá giấu vết trong khi phân phối. 11 1.2.4 Điều khiển sao chép Điều mong muốn đối với các hệ thống phân phối dữ liệu đa phương tiện là tồn tại một kỹ thuật chống sao chép trái phép dữ liệu. Có thể sử dụng thuỷ vân để chỉ trạng thái sao chép của dữ liệu. Các thuỷ vân trong những trường hợp này được sử dụng để điều khiển sao chép đối với các thông tin. Các thiết bị phát hiện ra thuỷ vân thường được gắn sẵn vào trong các hệ thống đọc ghi. Ví dụ như hệ thống quản lí sao chép DVD đã được ứng dụng ở Nhật. Thuỷ vân mang các giá trị chỉ trạng thái cho phép sao chép dữ liệu như “copy never” - không được phép sao chép hay “copy once” - chỉ được copy một lần, sau khi copy xong, bộ đọc, ghi thuỷ vân sẽ ghi thuỷ vân mới chỉ trạng thái mới lên DVD. Các ứng dụng loại này cũng yêu cầu thuỷ vân phải được bảo đảm an toàn và cũng sử dụng phương pháp phát hiện thuỷ vân đã giấu mà không cần thông tin gốc. 1.2.5 Giấu tin mật Các thông tin giấu được trong những trường hợp này càng nhiều càng tốt, việc giải mã để nhận được thông tin cũng không cần phương tiện chứa gốc ban đầu. Các yêu cầu mạnh về chống tấn công của kẻ thù không cần thiết lắm, thay vào đó là thông tin giấu phải được bảo mật. 1.3 GIẤU TIN TRONG DỮ LIỆU ĐA PHƯƠNG TIỆN 1.3.1 Giấu tin trong ảnh Hiện nay, giấu thông tin trong ảnh là một bộ phận chiếm tỉ lệ lớn nhất trong các chương trình ứng dụng, các phần mềm, hệ thống giấu tin trong đa phương tiện bởi lượng thông tin được trao đổi bằng ảnh là rất lớn và hơn nữa giấu thông tin trong ảnh cũng đóng vai trò hết sức quan trọng trong các hầu hết các ứng dụng bảo vệ an toàn thông tin như: nhận thực thông tin, xác định xuyên tạc thông tin, bảo vệ bản quyền tác giả, điều khiển truy cập, giấu thông tin mật...Chính vì thế mà vấn đề này đã nhận được sự quan tâm rất lớn của các cá nhân, tổ chức, trường đại học, và viện nghiên cứu trên thế giới. Thông tin sẽ được giấu cùng với dữ liệu ảnh nhưng chất lượng ảnh ít thay đổi và chẳng ai biết được đằng sau ảnh đó mang những thông tin có ý nghĩa. Và ngày nay, khi ảnh số đã được sử dụng rất phổ biến, thì giấu thông tin trong ảnh đã đem lại nhiều những ứng dụng quan trọng trên các lĩnh vực trong đời sống xã hội. Ví dụ như đối với các nước phát triển, chữ kí tay đã được số hoá và lưu trữ sử dụng như là hồ sơ cá nhân của các dịch vụ ngân hàng và tài chính. Nó được dùng để nhận thực trong các thẻ tín dụng của người tiêu dùng. Phần mềm WinWord của Microsoft cũng cho phép người dùng lưu trữ chữ kí trong ảnh nhị phân rồi gắn vào vị trí nào đó trong file văn bản để đảm bảo tính an toàn 12 của thông tin. Tài liệu sau đó được truyền trực tiếp qua máy fax hoặc lưu truyền trên mạng. Theo đó, việc nhận thực chữ kí, xác thực thông tin đã trở thành một vấn đề cực kì quan trọng khi mà việc ăn cắp thông tin hay xuyên tạc thông tin bởi các tin tặc đang trở thành một vấn nạn đối với bất kì quốc gia nào, tổ chức nào. Thêm vào đó, lại có rất nhiều loại thông tin quan trọng cần được bảo mật như những thông tin về an ninh, thông tin về bảo hiểm hay các thông tin về tài chính. Các thông tin này được số hoá và lưu trữ trong hệ thống máy tính hay trên mạng. Chúng rất dễ bị lấy cắp và bị thay đổi bởi các phần mềm chuyên dụng. Việc nhận thực cũng như phát hiện thông tin xuyên tạc đã trở nên vô cùng quan trọng, cấp thiết. Và một đặc điểm của giấu thông tin trong ảnh nữa đó là thông tin được giấu một cách vô hình. Nó như là cách truyền thông tin mật cho nhau mà người khác không thể biết được, bởi sau khi giấu thông tin thì chất lượng ảnh gần như không thay đổi đặc biệt đối với ảnh mầu hay ảnh xám. 1.3.2 Giấu tin trong audio Giấu thông tin trong audio mang những đặc điểm riêng khác với giấu thông tin trong các đối tượng đa phương tiện khác. Một trong những yêu cầu cơ bản của giấu tin là đảm bảo tính chất ẩn của thông tin được giấu đồng thời không làm ảnh hưởng đến chất lượng của dữ liệu. Để đảm bảo yêu cầu này, ta lưu ý rằng kỹ thuật giấu thông tin trong ảnh phụ thuộc vào hệ thống thị giác của con người - HVS (Human Vision System) còn kỹ thuật giấu thông tin trong audio lại phụ thuộc vào hệ thống thính giác HAS (Human Auditory System). Và một vấn đề khó khăn ở đây là hệ thống thính giác của con người nghe được các tín hiệu ở các giải tần rộng và công suất lớn nên đã gây khó dễ đối với các phương pháp giấu tin trong audio. Nhưng thật may là tai người lại kém trong việc phát hiện sự khác biệt các giải tần và công suất, có nghĩa là các âm thanh to, cao tần có thể che giấu được các âm thanh nhỏ thấp một cách dễ dàng. Các mô hình phân tích tâm lí đã chỉ ra điểm yếu trên và thông tin này sẽ giúp ích cho việc chọn các audio thích hợp cho việc giấu tin. Vấn đề khó khăn thứ hai đối với giấu thông tin trong audio là kênh truyền tin. Kênh truyền hay băng thông chậm sẽ ảnh hưởng đến chất lượng thông tin sau khi giấu. Ví dụ để nhúng một đoạn java applet vào một đoạn audio (16 bit, 44.100Hz) có chiều dài bình thường thì các phương pháp nói chung cũng cần ít nhất tốc độ đường truyền là 20bps. Giấu thông tin trong audio đòi hỏi yêu cầu rất cao về tính đồng bộ và tính an toàn của thông tin. Các phương pháp giấu thông tin trong audio đều lợi dụng điểm yếu trong hệ thống thính giác của con người. 1.3.3 Giấu thông tin trong video Cũng giống như giấu thông tin trong ảnh hay trong audio, giấu tin trong video cũng được quan tâm và được phát triển mạnh mẽ cho nhiều ứng dụng như điều khiển truy cập thông tin, nhận thực thông tin và bảo vệ bản quyền tác giả. Ta có thể lấy một ví dụ là các hệ thống chương trình trả tiền xem theo đoạn với các video clip (pay per 13 view application). Các kỹ thuật giấu tin trong video cũng được phát triển mạnh mẽ và cũng theo hai khuynh hướng là thuỷ vân số và data hiding. Nhưng phần giới thiệu này chỉ quan tâm tới các kỹ thuật giấu tin trong video. Một phương pháp giấu tin trong video được đưa ra bởi Cox là phương pháp phân bố đều. ý tưởng cơ bản của phương pháp là phân phối thông tin giấu dàn trải theo tần số của dữ liệu chứa gốc. Nhiều nhà nghiên cứu đã dùng những hàm cosin riêng và các hệ số truyền sóng riêng để giấu tin . Trong các thuật toán khởi nguồn thì thường các kỹ thuật cho phép giấu các ảnh vào trong video nhưng thời gian gần đây các kỹ thuật cho phép giấu cả âm thanh và hình ảnh vào video. Như phương pháp của Swanson đã sử dụng để giấu theo khối, phương pháp này đã giấu được hai bít vào khối 8*8. Hay gần đây nhất là phương pháp của Mukherjee là kỹ thuật giấu audio vào video sử dụng cấu trúc lưới đa chiều... Kỹ thuật giấu thông tin áp dụng cả đặc điểm thị giác và thính giác của con người. Kỹ thuật giấu tin đang được áp dụng cho nhiều loại đối tượng chứ không riêng gì dữ liệu đa phương tiện như ảnh, audio hay video. Gần đây, đã có một số nghiên cứu giấu tin trong cơ sở dữ liệu quan hệ, tài liệu Text, HTML và các giao thức truyền trên mạng. 14 Chương 2. GIẤU TIN TRÊN ẢNH TĨNH 2. 1 GIẤU TIN TRONG ẢNH, NHỮNG ĐẶC TRƯNG VÀ TÍNH CHẤT Giấu tin trong ảnh chiếm vị trí chủ yếu trong các kỹ thuật giấu tin chính vì vậy mà các kỹ thuật giấu tin phần lớn cũng tập trung vào các kỹ thuật giấu tin trong ảnh. Các phương tiện chứa khác nhau thì cũng sẽ có các kỹ thuật giấu khác nhau. Đối tượng ảnh là đối tượng dữ liệu tĩnh, có nghĩa là dữ liệu tri giác không biến đổi theo thời gian (không giống như audio và video). Kỹ thuật giấu tin trong ảnh quan tâm những đặc trưng và các tính chất cơ bản sau đây: 2.1.1 Phương tiện chứa có dữ liệu tri giác tĩnh Dữ liệu gốc ở đây là dữ liệu của ảnh tĩnh, dù đã giấu thông tin vào trong ảnh hay chưa thì khi ta xem ảnh bằng thị giác, dữ liệu ảnh không thay đổi theo thời gian, điều này khác với dữ liệu audio hay là video vì khi ta nghe hay xem thì dữ liệu gốc sẽ thay đổi liên tục với tri giác của con người theo các đoạn hay các bài, các cảnh.... Sự khác biệt này ảnh hưởng lớn đối với các kỹ thuật giấu thông tin trong ảnh với kỹ thuật giấu thông tin trong audio hay video. 2.1.2 Kỹ thuật giấu phụ thuộc ảnh Kỹ thuật giấu tin phụ thuộc vào các loại ảnh khác nhau. Chẳng hạn như đối với ảnh đen trắng, ảnh xám hay ảnh màu đều đòi hỏi những kỹ thuật riêng. Ảnh nén và ảnh không nén cũng có những kỹ thuật giấu khác nhau vì ảnh nén có thể mất mát thông tin ảnh do nén ảnh… 2.1.3 Kỹ thuật giấu tin lợi dụng tính chất hệ thống thị giác của con người Giấu tin trong ảnh ít nhiều cũng gây ra những thay đổi trên dữ liệu ảnh gốc. Dữ liệu ảnh được quan sát bằng hệ thống thị giác (HVS - Human Vision System) của con người nên các kỹ thuật giấu tin phải đảm bảo một yêu cầu cơ bản là những thay đổi trên ảnh phải rất nhỏ sao cho bằng mắt thường không thể nhận ra được sự khác biệt vì có như thế thì mới đảm bảo được độ an toàn cho thông tin giấu. Rất nhiều kỹ thuật đã lợi dụng các tính chất của hệ thống thị giác để giấu tin chẳng hạn như mắt người cảm nhận về sự biến đổi về độ xám kém hơn sự biến đổi về màu hay cảm nhận của mắt về màu xanh da trời (Blue) là kém nhất trong ba màu cơ bản RGB (R - Red: đỏ, G Green: xanh lá cây, B- Blue: xanh da trời). 15 2.1.4 Giấu thông tin trong ảnh tác động lên dữ liệu ảnh nhưng không thay đổi kích thước ảnh Các phép toán thực hiện việc giấu thông tin sẽ được thao tác trên dữ liệu của ảnh. Dữ liệu ảnh bao gồm cả phần thông tin ảnh (header), bảng màu (có thể có) và dữ liệu ảnh. Khi giấu thông tin, các phương pháp giấu đều biến đổi các giá trị của các bít trong dữ liệu ảnh chứ không thêm vào hay bớt đi dữ liệu ảnh. Do vậy mà kích thước ảnh trước hay sau khi giấu thông tin là như nhau. 2.1.5 Đảm bảo yêu cầu chất lượng ảnh sau khi giấu thông tin Đây là một yêu cầu quan trọng đối với giấu thông tin trong ảnh. Sau khi giấu thông tin bên trong, ảnh phải đảm bảo được yêu cầu không bị biến đổi để có thể bị phát hiện dễ dàng so với ảnh gốc. Yêu cầu này dường như khá đơn giản đổi với ảnh màu hoặc ảnh xám bởi mỗi một pixel ảnh được biểu diễn bởi nhiều bít, nhiều giá trị và khi ta thay đổi một giá trị nhỏ nào đó thì chất lượng ảnh không thay đổi, thông tin giấu khó bị phát hiện, nhưng đối với ảnh đen trắng thì việc giấu thông tin phức tạp hơn nhiều, vì ảnh đen trắng mỗi pixel ảnh chỉ gồm hai giá trị hoặc trắng hoặc đen, và nếu ta biến đổi một bít từ đen thành trắng mà không khéo thì sẽ rất dễ bị phát hiện. Do đó yêu cầu đối với các thuật toán giấu thông tin trong ảnh màu hay ảnh xám và giấu thông tin trong ảnh đen trắng là khác nhau. Trong khi đối với ảnh màu thì các thuật toán chú trọng vào việc làm sao cho giấu được càng nhiều thông tin càng tốt thì các thuật toán áp dụng cho ảnh đen trắng lại tập trung vào làm thế nào để thông tin giấu khó bị phát hiện. 2.1.6 Thông tin trong ảnh sẽ bị biến đổi nếu thực hiện các phép biến đổi ảnh Vì phương pháp giấu tin trong ảnh dựa trên việc điều chỉnh các giá trị của các bít theo một qui tắc nào đó và khi giải mã sẽ theo các giá trị đó để tìm được thông tin giấu. Theo đó, nếu một phép biến đổi nào đó trên ảnh làm thay đổi giá trị của các bít thì sẽ làm cho thông tin giấu sẽ bị sai lệch. Chính đặc điểm này mà giấu thông tin trong ảnh có tác dụng nhận thực và phát hiện xuyên tạc thông tin. 2.1.7 Cần thiết ảnh gốc khi giải mã ảnh Các kỹ thuật giấu tin phải phân biệt rõ ràng quá trình giải mã ảnh để lấy thông tin giấu có cần ảnh gốc hay không. Đa số các kỹ thuật giấu tin mật thì thường không cần ảnh gốc khi giải mã. Thông tin được giấu trong ảnh sẽ được mang cùng với dữ liệu ảnh, khi giải mã chỉ cần ảnh đã mang thông tin giấu mà không cần dùng đến ảnh gốc để so sánh đối chiếu. Tuy nhiên, nhiều kỹ thuật giấu tin cũng sử dụng ảnh gốc khi giải mã ảnh, phương pháp này có tác dụng giúp cho việc đồng bộ hoá ảnh giấu và ảnh gốc. Điều này rất cần thiết khi phải xử lí với các tấn công hình học trên ảnh. Giả sử như phép tấn 16 công xoay ảnh chẳng hạn, nhờ có ảnh gốc ta so sánh và đồng bộ hoá, khôi phục dạng ban đầu của ảnh thì có thể khôi phục lại được tin đã giấu. Nhưng phương pháp này cũng gặp khó khăn khi dữ liệu gốc lớn. Ví dụ như giấu tin trong video, với lượng dữ liệu lớn nếu như để giải mã tin mà dùng phương pháp này thì khối lượng thao tác quá nhiều và không thể áp dụng được . Trên đây là những tính chất và đặc điểm cơ bản chung của giấu tin trong ảnh. Riêng đối với ứng dụng giấu tin mật (steganography) thì các tính chất ẩn, lượng thông tin giấu và độ an toàn là ba tính chất quan trọng nhất 2.2 GIẤU THÔNG TIN TRONG ẢNH ĐEN TRẮNG, ẢNH ĐA CẤP XÁM Khởi nguồn của giấu thông tin trong ảnh là thông tin được giấu trong các ảnh màu hoặc ảnh xám, trong đó mỗi pixel ảnh mang nhiều giá trị, được biểu diễn bằng nhiều bít. Với những ảnh đó thì việc thay đổi một giá trị nhỏ ở một pixel thì chất lượng ảnh gần như không thay đổi, và khả năng bị phát hiện là rất thấp dưới sự quan sát của mắt thường. Do đó hệ thống thị giác của con người cũng đóng một vai trò quan trọng trong việc bảo đảm tính ẩn của thông tin giấu trên ảnh. Với những ảnh mà mỗi điểm ảnh chỉ mang một giới hạn nhỏ các giá trị thì việc giấu thông tin trong ảnh đảm bảo tính ẩn của thông tin giấu là một công việc khó khăn hơn nhiều. Đặc biệt đối với ảnh đen trắng, mỗi điểm ảnh chỉ mang một trong hai giá trị trắng hoặc đen. Vậy thì khi thay đổi giá trị một pixel từ đen thành trắng hoặc ngược lại thì rất dễ bị phát hiện. Và do đó với ảnh đen trắng thì số lượng thuật toán không nhiều, và vẫn chưa đạt được kết quả mong muốn. Có thuật toán giấu được nhiều thông tin vào ảnh thì chất lượng ảnh lại kém và dễ bị phát hiện. Một số thuật toán khác thì giấu chất lượng ảnh tốt hơn nhưng lượng thông tin giấu được ít và quá đơn giản không đảm bảo được độ an toàn thông tin. Bảng sau sẽ liệt kê những khác nhau cơ bản giữa giấu thông tin trong ảnh đen trắng và ảnh màu. Giấu thông tin trong ảnh đen trắng Giấu thông tin trong ảnh màu hoặc ảnh xám Thông tin giấu ít hơn đối với ảnh có cùng kích cỡ với ảnh màu Thông tin giấu nhiều hơn. Khả năng bị phát hiện trong ảnh có giấu thông tin cao hơn ảnh màu Khả năng bị phát hiện thấp. Độ an toàn thông tin thấp do dễ bị phát hiện có thông tin chứa bên trong Độ an toàn cao. Các thuật toán giấu ít, phức tạp Nhiều thuật toán và có nhiều hướng mở rộng phát triển. Như áp dụng giải thuật di truyền. 17 Bảng 2.1: Sự khác nhau giữa giấu thông tin trong ảnh đen trắng và ảnh màu 2.3 KỸ THUẬT GIẤU TIN ĐƠN GIẢN 2.3.1 Ý tưởng Đây có lẽ là kỹ thuật đơn giản nhất trong các kỹ thuật giấu tin. Ý tưởng cơ bản của thuật toán là chia một ảnh thành các khối nhỏ và với mỗi khối nhỏ đó sẽ được giấu 1 bít thông tin. Thuật toán này dùng cho cả ảnh màu, ảnh xám và ảnh đen trắng. 2.3.2 Thuật toán giấu tin: Input: - Một file ảnh Bitmap đen trắng F - Một file thông tin cần giấu P Output: - Một file ảnh đã giấu tin F’ - Một khoá để giải tin K Cách thức thực hiện: Tiền xử lí: - Chuyển file thông tin cần giấu P sang dạng nhị phân. - Đọc header của ảnh để lấy thông tin ảnh, đọc bảng màu. Sau đó đọc toàn bộ dữ liệu ảnh vào một mảng hai chiều để sử dụng cho việc giấu tin. Quá trình thực hiện giấu tin: - Chia phần thông tin ảnh (ma trận hai chiều điểm ảnh) thành các khối nhỏ có kích thước m  n. Giả sử ảnh gốc ban đầu có kích thước là M  N, khi đó, tổng số các khối nhỏ sẽ là (M  N)/ (m  n) khối. Vì ảnh sử dụng là ảnh đen trắng nên mỗi khối là một ma trận hai chiều chứa các giá trị 0 và 1 như hình vẽ: 0 1 0 1 1 1 1 1 1 0 0 0 0 0 1 1 1 0 1 0 1 0 1 1 1 1 0 0 0 0 1 0 0 1 0 1 0 0 0 0 1 1 0 1 0 1 0 0 1 0 1 1 1 1 0 1 0 0 0 1 0 0 1 0 1 0 0 0 1 1 0 0 1 1 0 1 1 1 0 1 0 0 1 0 0 Hình 2.1 Một ví dụ về dữ liệu ảnh được chia thành các khối kích thước 4  4 18 Sau khi phân thành các khối nhỏ ta chọn các khối để giấu tin, ta có thể chọn ngẫu nhiên các khối nhưng để cho đơn giản ta coi như các khối được chọn tuần tự từ khối đầu tiên cho đến khi hết thông tin cần giấu. - Mỗi khối nhỏ này sẽ được dùng để giấu một bít thông tin theo quy tắc sau: sau khi giấu thì tổng số bít 1 trong khối và bít thông tin cần giấu sẽ có cùng tính chẵn lẻ. Nghĩa là, nếu giấu bít 1 vào một khối thì khối đó phải thoả mãn tính chất tổng số bít 1 trong khối là số lẻ. Ngược lại nếu cần giấu bít 0 vào một khối thì khối đó phải thoả mãn tính chất tổng số bít1 trong khối là chẵn. Như vậy, mỗi lần giấu 1 bít ta có hai trường hợp xảy ra sau đây: - Khối đã thoả mãn tính chất để giấu một bít thông tin: chẳng hạn như khi cần giấu bit 1 thì tổng số bit 1 đã là lẻ rồi, hoặc khi cần giấu bít 0 vào khối thì khối đó đã có tổng số bít 1 là chẵn. Trong những trường hợp như thế, ta không cần thay đổi và xem như một bít thông tin đã được giấu. - Trong trường hợp ngược lại, tính chất của khối không thoả mãn yêu cầu để giấu tin nghĩa là khi cần giấu bít 1 thì tổng số bít 1 trong khối là chẵn hoặc khi cần giấu bít 0 thì tổng số bít 1 trong khối lại đang là lẻ. Trong những trường hợp như thể thì ta cần phải thay đổi khối đó sao cho thoả mãn điều kiện bằng cách đảo trị ngẫu nhiên một bít (từ 0 sang 1, hoặc từ 1 sang 0). Giả sử ta phải giấu bit 1 vào khối B sau: 1 0 1 1 0 1 0 0 0 0 1 0 1 1 1 0 Khối B kích thước 4 x 4 Ta đếm số bít 1 trong khối: trong trường hợp ở trên khối B có 8 bít 1, như vậy khối B không thoả mãn yêu cầu để giấu bít 1, để giấu bít 1 vào khối này ta cần phải thay đổi khối bằng cách chọn một bít bất kì và đổi từ 0 sang 1 hoặc từ 1 sang 0. Giả sử ta đổi như hình vẽ sau: 1 0 1 1 0 0 0 0 bít bị thay đổi tư 1  0
- Xem thêm -

Tài liệu liên quan