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

Giấu Thông Tin Trong File Ảnh Ts Nguyễn Đăng Minh Hướng Dẫn

80 1 0
Tài liệu đã được kiểm tra trùng lặp

Đ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 đề Giấu Thông Tin Trong File Ảnh
Tác giả Nguyễn Văn Lập
Người hướng dẫn TS. Nguyễn Đăng Minh
Trường học Trường Đại học Hoà Bình
Chuyên ngành Công nghệ thông tin
Thể loại luận văn
Năm xuất bản 2019
Thành phố Hà Nội
Định dạng
Số trang 80
Dung lượng 2,76 MB

Cấu trúc

  • CHƯƠNG 1. TỔNG QUAN VỀ ẢNH VÀ GIẤU TIN (10)
    • 1.1. Các loại mã thường dùng trong mã hóa thông tin (10)
    • 1.2. Tổng quan về kỹ thuật giấu tin (11)
      • 1.2.1. Định nghĩa (11)
      • 1.2.2. Vài nét về lịch sử giấu tin (11)
      • 1.2.3. Mô hình kỹ thuật giấu tin và các thuật ngữ cơ bản (12)
      • 1.2.4. Sự khác biệt giữa mã hóa và giấu tin (14)
    • 1.3. Giới thiệu về ảnh số (15)
      • 1.3.1. Ảnh (15)
      • 1.3.2. Một số cấu trúc ảnh (18)
    • 1.4. Một số đặc điểm của việc giấu thông tin trên ảnh số (22)
      • 1.4.1. Tính vô hình của thông tin (23)
      • 1.4.2. Tính bảo mật (23)
      • 1.4.3. Tỷ lệ giấu tin (23)
      • 1.4.4. Lựa chọn ảnh (24)
      • 1.4.5. Ảnh môi trường đối với quá trình giải mã (24)
  • CHƯƠNG 2. GIẤU TIN TRONG ẢNH (27)
    • 2.1. Giới thiệu chung (27)
    • 2.2. Các đặc trưng của giấu thông tin trong ảnh (29)
    • 2.3. Sự khác nhau giữa giấu tin trong ảnh đen trắng với ảnh màu (31)
    • 2.4. Nghiên cứu về xử lý ảnh trong Matlab (32)
      • 2.4.1. Đọc ảnh đồ họa (32)
      • 2.4.2. Ghi đồ họa (33)
      • 2.4.3. Các phép toán số học cơ bản (35)
      • 2.4.4. Các hàm hiển thị hình ảnh (40)
      • 2.4.5. Các phép biến đổi hình học (41)
    • 2.5. Các thuật toán giấu tin trong ảnh (50)
      • 2.5.1. Giấu tin mật trong khối bit sử dụng tính chẵn lẻ của tổng số bit 1 2.5.2.Kỹ thuật giấu tin WU_LEE (50)
  • CHƯƠNG 3. THIẾT KẾ VÀ CÀI ĐẶT CHƯƠNG TRÌNH (63)
    • 3.1. Giới thiệu phần mêm File Camouflage (0)
    • 3.2. Hướng dẫn sử dụng phần mềm File Camouflage (63)
    • 3.3. Mã hóa file trước khi giấu vào ảnh (66)
      • 3.3.1. Hệ mã với khóa sử dụng một lần (OTP) (66)
      • 3.3.2. Thuật toán (68)
    • 3.4. Cài đặt ứng dụng thực tế (73)
  • KẾT LUẬN (78)
  • Tài liệu tham khảo (79)

Nội dung

Giấu Thông Tin Trong File Ảnh Ts Nguyễn Đăng Minh Hướng Dẫn Giấu Thông Tin Trong File Ảnh Ts Nguyễn Đăng Minh Hướng Dẫn Giấu Thông Tin Trong File Ảnh Ts Nguyễn Đăng Minh Hướng Dẫn Giấu Thông Tin Trong File Ảnh Ts Nguyễn Đăng Minh Hướng Dẫn

TỔNG QUAN VỀ ẢNH VÀ GIẤU TIN

Các loại mã thường dùng trong mã hóa thông tin

Trong ngành mật mã học, mã hóa là quá trình dùng để biến thông tin từ dạng này sang dạng khác và ngăn những người không phận sự tiếp cận vào thông tin đó Bản thân việc mã hóa không ngăn chặn việc thông tin bị đánh cắp, có điều thông tin đó lấy về cũng không dùng được, không đọc được hay hiểu được vì đã được làm biến dạng đi rồi Các loại mã thông thường như:

Mã hóa cổ điển: Mã hoá cổ điển là cách đơn giản nhất, tồn lại lâu nhất trên thế giới và không cần khóa bảo mật, chỉ cần người gửi và người nhận cùng biết về thuật toán này là được

Mã hóa một chiều (hash): Phương pháp này dùng để mã hóa những thứ không cần dịch lại nguyên bản gốc Mỗi lần bạn đăng nhập, hash function sẽ “băm” password thật của bạn thành chuỗi kí tự rồi so sánh nó với cái trong cơ sở dữ liệu, nếu khớp thì đăng nhập tiếp, không thì báo lỗi Chúng ta không có nhu cầu dịch ngược chuỗi nói trên ra lại thành password thật để làm gì cả

Mã hóa đối xứng (symmetric key encryption): Khóa ở đây được gọi là “key”, nó là mấu chốt để thuật toán có thể nhìn vào mà biết đường mã hóa và giải mã dữ liệu Phương pháp mã hóa đối xứng, chìa khóa để mã hóa và giải mã là như nhau nên người ta mới gọi là đối xứng, theo một số tài liệu thì mã hóa đối xứng là giải pháp được sử dụng phổ biến nhất hiện nay

Mã hóa bất đối xứng (public key encryption): Nếu như ở mã hóa đối xứng khóa mã hóa và khóa giải mã đều giống nhau thì với phương pháp bất đối xứng, hai khóa này hoàn toàn khác nhau Để phân biệt giữa hai khóa thì người ta gọi khóa mã hóa là public key, còn khóa giải mã là private key

Public, như cái tên đã gợi ý, mang tính chất “công cộng” và có thể được sử dụng để mã hóa dữ liệu bởi bất kì ai Tuy nhiên, chỉ người nào nằm trong tay private key mới có khả năng giải mã dữ liệu để xem

Mã hóa MD5: (Message-Digest algorithm 5 - giải thuật tiêu hóa tin 5) là một thuật toán mã hoá, theo chuẩn RFC 1321 Các chương trình mã hoá MD5 thường được gọi là MD5Sum MD5 có giá trị 128-bit từ dữ liệu đầu vào MD5 được thiết kế bởi Ronald Rivest vào năm 1991 để thay thế cho hàm băm trước đó, MD4 Vào năm 1996, người ta phát hiện ra một lỗ hổng trong MD5; trong khi vẫn chưa biết nó có phải là lỗi nghiêm trọng hay không, những chuyên gia mã hóa bắt đầu đề nghị sử dụng những giải thuật khác, như SHA-1 Trong đó yêu cầu các tập tin lớn phải được nén trước khi được mã hóa với một mã bí mật, theo một hệ thống mật mã khóa công khai.

Tổng quan về kỹ thuật giấu tin

Giấu thông tin (Steganography) là một kỹ thuật nhúng thông tin

(embeding) vào trong một nguồn đa phương tiện gọi là các phương tiện chứa

(host data) mà không nhận biết được sự tồn tại của thông tin giấu (invisible)

Ta cũng có thể định nghĩa tổng quát như sau: Giấu tin là kỹ thuật nhúng 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.2.2 Vài nét về lịch sử giấu tin

Từ Steganography bắt nguồn từ tiếng 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) Các câu chuyện kể về kỹ thuật giấu thông tin được truyền qua nhiều thế hệ Có lẽ những ghi chép sớm nhất về kỹ thuật 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 Herodotus người Hy lạp 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 đã 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, anh ta đã được gửi tới Miletus

Một câu chuyện khác ở 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

Một cách giấu tin phổ biến là sử dụng mực không màu Đây là một phương tiện hữu hiệu cho bảo mật thông tin trong một thời gian dài Người Romans cổ đã biết sử dụng những chất sẵn có như nước quả, nước tiểu và sữa để viết các thông báo bí mật giữa những hàng văn tự thông thường Khi bị hơ nóng, những loại mực không nhìn thấy này sẽ trở nên sẫm màu và có thể đọc được một cách dễ dàng Ý tưởng 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 Gần đây, giấu thông tin mới được các nhà nghiên cứu và các viện công nghệ thông tin quan tâm và đã có rất nhiều các công trình nghiên cứu về vấn đề này Cuộc cách mạng số hoá thông tin và sự phát triển nhanh chóng của mạng truyền thông là nguyên nhân chính dẫn đến sự thay đổi này Những phiên bản sao chép hoàn hảo, các kỹ thuật thay thế, sửa đổi tinh vi, và sự lưu thông phân phối trên mạng của các dữ liệu đa phương tiện đã sinh ra nhiều vấn đề nhức nhối về nạn ăn cắp bản quyền, phân phối bất hợp pháp, xuyên tạc trái phép

1.2.3 Mô hình kỹ thuật giấu tin và các thuật ngữ cơ bản

Mô hình của kỹ thuật giấu tin cơ bản được mô tả trong Hình 1.1 và Thông tin cần giấu là một lượng thông tin mang một ý nghĩa nào đó 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

6 một phương tiện chứa nhờ một bộ nhúng Bộ nhúng là những chương trình, thuật toán giấu tin, đượ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, các phương tiện chứa tin sẽ được gửi đi hoặc được phân phối trên mạng

Hình 1.1 Lược đồ chung cho quá trình giấu tin

Hình 1.2 chỉ ra các công việc giải mã thông tin đã giấu 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

Hình 1.2 Lược đồ chung cho quá trình tách tin

Một số thuật ngữ cơ bản:

Giấu tin (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ố

Giấu tin mật (steganography): chỉ những kỹ thuật giấu tin mật trong một đối tượng

Thuỷ vân số (watermarking): 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 để chứa thông tin cần giấu Nếu giấu tin trong ảnh thì bức ảnh này được gọi là ảnh chứa, còn giấu trong audio thì gọi là audio chứa v.v

Thông tin cần giấu (embeded data): là thông tin được nhúng vào trong phương tiện chứa Trong giấu tin mật, thông tin cần giấu là các thông điệp (message), còn trong kỹ thuật thuỷ vân số thì thông tin cần giấu chính là các thuỷ vân (các dấu hiệu công khai hoặc bí mật)

1.2.4 Sự khác biệt giữa mã hóa và giấu tin

Sự khác biệt chủ yếu giữa mã hoá thông tin và giấu thông tin là phương pháp mã hoá làm cho các thông tin hiện rõ là nó có được mã hoá hay không còn đối với phương pháp giấu thông tin thì người ta sẽ khó biết được là có thông tin giấu bên trong do tính chất ẩn (invisible) của thông tin được giấu Một khi những thông tin mã hoá bị phát hiện thì những tên tin tặc sẽ tìm mọi cách để triệt phá Và cuộc chạy đua giữa những người bảo vệ thông tin và bọn tin tặc vẫn chưa kết thúc tuyệt đối về bên nào Trong hoàn cảnh đó thì giấu thông tin trở thành một phương pháp hữu hiệu

Sự khác nhau này ta có thể thấy rõ qua Hình 1.3

Hình 1.3 Sự khác nhau giữa mã hóa và giấu tin

Giới thiệu về ảnh số

Là một tập hợp hữu hạn các điểm ảnh kề nhau Ảnh thường được biểu diễn bằng một ma trận hai chiều, mỗi phần tử của ma trận tương ứng với một điểm ảnh Ảnh nhị phân (đen trắng): là ảnh có giá trị mức xám của các điểm ảnh được biểu diễn bằng 1 bit (giá trị 0 hoặc 1)

Ví dụ về biểu diễn ảnh nhị phân:

0 1 1 1 Ảnh xám: giá trị mức xám của các điểm ảnh được biểu diễn bằng 8 bit

Ví dụ về biểu diễn ảnh xám:

0 11 245 12 Ảnh màu: thông thường, ảnh màu được tạo nên từ 3 ảnh xám đối với màu nền đỏ (RED), xanh lá cây (GREEN), xanh lam (BLUE) Tất cả các màu trong tự nhiêu đều có thể được tổng hợp từ 3 thành phần màu trên theo các tỷ lệ khác nhau

Ví dụ về biểu diễn ảnh màu:

Ma trận biểu diễn mức xám của thành phần RED:

Ma trận biểu diễn mức xám của thành phần GREEN:

Ma trận biểu diễn mức xám của thành phần BLUE:

1.3.2 Một số cấu trúc ảnh

Trong đồ họa máy vi tính, BMP, còn được biết đến với tên tiếng Anh khác là Windows bitmap, là một định dạng tập tin hình ảnh khá phổ biến Các tập tin đồ họa lưu dưới dạng BMP thường có đuôi là BMP hoặc DIB

Các thuộc tính tiêu biểu của một tập tin ảnh BMP là

Số bit trên mỗi điểm ảnh (bit per pixel), thường được ký hiệu bởi n Một ảnh BMP n-bit có 2 n màu Giá trị n càng lớn thì ảnh càng có nhiều màu, và càng rõ nét hơn Giá trị tiêu biểu của n là 1 (ảnh đen trắng), 4 (ảnh 16 màu), 8 (ảnh 256 màu), 16 (ảnh 65536 màu) và 24 (ảnh 16 triệu màu) Ảnh BMP 24-bit có chất lượng hình ảnh trung thực nhất

Chiều cao của ảnh (height), cho bởi điểm ảnh (pixel) (là số dòng) Chiều rộng của ảnh (width), cho bởi điểm ảnh (là số cột)

Cấu trúc tập tin ảnh BMP bao gồm 4 phần

Bitmap Header (14 bytes): giúp nhận dạng tập tin bitmap

Bitmap Information (40 bytes): lưu một số thông tin chi tiết giúp hiển thị ảnh

Color Palette (4*x bytes), x là số màu của ảnh: định nghĩa các màu sẽ được sử dụng trong ảnh

Bitmap Data: lưu dữ liệu ảnh

12 Đặc điểm nổi bật nhất của định dạng BMP là tốc độ vẽ và tốc độ xử lý nhanh, tập tin hình ảnh không được nén bằng bất kỳ thuật toán nào Khi lưu ảnh, các điểm ảnh được ghi trực tiếp vào tập tin – một điểm ảnh sẽ được mô tả bởi một hay nhiều byte tùy thuộc vào giá trị n của ảnh Do đó, một hình ảnh lưu dưới dạng BMP thường có kích cỡ rất lớn, gấp nhiều lần so với các ảnh được nén (chẳng hạn GIF, JPEG, hay PNG) Định dạng BMP được hỗ trợ bởi hầu hết các phần mềm đồ họa chạy trên Windows, và cả một số ứng dụng chạy trên MS-DOS Ngay từ Windows

3.1, Microsoft đã cho ra đời phần mềm PaintBrush, một phần mềm hỗ trợ vẽ hình ảnh đơn giản và lưu hình ảnh được vẽ dưới dạng BMP 16 hay 256 màu Tuy nhiên, do kích thước tập tin ảnh BMP quá lớn, định dạng BMP không phù hợp để trao đổi hình ảnh qua mạng Internet (do hạn chế về tốc độ truyền dữ liệu)

1.3.2.2 Ảnh JPEG (Joint Photographic Experts Group)

JPEG là một trong những phương pháp nén ảnh hiệu quả, có tỷ lệ nén ảnh có thể tới vài chục lần Chất lượng ảnh bị suy giảm sau khi giải nén Sự suy giảm này tăng dần theo hệ số nén Tuy nhiên sự mất mát thông tin này là có thể chấp nhận được và việc loại bỏ những thông tin không cần thiết được dựa trên những nghiên cứu về hệ nhãn thị của mắt người

Phần mở rộng của các file JPEG thường có dạng jpeg, jfif, jpg, JPG, hay JPE; dạng jpg là dạng được dùng phổ biến nhất Hiện nay dạng nén ảnh JPEG rất được phổ biến trong điện thoại di động cũng như những trang thiết bị lưu giữ có dung lượng nhỏ

Trong không gian màu YUV, nhãn thị của con người rất nhạy cảm với thành phần Y và kém nhạy cảm với hai loại U và V Phương pháp nén JPEG đã nắm bắt phát hiện này để tách những thông tin thừa của ảnh Hệ thống nén

13 thành phần Y của ảnh với mức độ suy giảm ít hơn so với U, V, bởi người ta ít nhận thấy sự thay đổi của U và V so với Y

Giống như GIF, JPEG cũng được sử dụng rất nhiều trên web Lợi ích chính của chúng là có thể hiển thị các hình ảnh với các màu chính xác (true- colour) chúng có thể lên đến 16 triệu màu Điều đó cho phép chúng được sử dụng tốt nhất cho các hình ảnh chụp và hình ảnh minh hoạ với lượng màu lớn

Nhược điểm lớn nhất của JPEG là chất lượng ảnh đã bị nén mất đi, một số đường bao giữa các khối màu sẽ xuất hiện điểm mờ, các vùng sẽ mất đi sự rõ nét JPEG làm giảm chất lượng cho các bức vẽ ít màu, tạo nên những chỗ nhòe thay cho các đường sắc nét, đồng thời độ nén cũng thấp cho các hình vẽ ít màu Giống như định dạng mp3, JPEG sẽ không thể phục hồi giống như hình ảnh ban đầu dù dung lượng được tăng lên giống dung lượng ảnh thật Các ảnh JPEG không thể làm trong suốt hoặc chuyển động

1.3.2.3 Ảnh GIF (Graphics Interchange Format)

GIF là một định dạng tập tin hình ảnh bitmap cho hình ảnh dùng ít hơn

256 màu sắc khác nhau và hoạt hình dùng ít hơn 256 màu cho mỗi khung hình GIF là định dạng nén dữ liệu đặc biệt hữu ích cho việc truyền hình ảnh qua đường truyền lưu lượng nhỏ Định dạng này được CompuServe cho ra đời vào năm 1987 và nhanh chóng được dùng rộng rãi trên World Wide Web

Tập tin GIF dùng nén dữ liệu bảo toàn trong đó kích thước tập tin có thể được giảm mà không làm giảm chất lượng hình ảnh, cho những hình ảnh có ít hơn 256 màu Số lượng tối đa 256 màu làm cho định dạng này không phù hợp cho các hình chụp (thường có nhiều màu sắc), tuy nhiên các kiểu nén dữ liệu bảo toàn cho hình chụp nhiều màu cũng có kích thước quá lớn đối với truyền dữ liệu trên mạng hiện nay GIF được phát triển dành cho những ảnh có tính chất thay đổi Nó được sử dụng tốt nhất cho đồ họa có ít màu, ví dụ như là ảnh hoạt hình hoặc là sơ đồ, hình vẽ nút bấm

14 Định dạng GIF dựa vào các bảng màu: một bảng chứa tối đa 256 màu khác nhau cho biết các màu được dùng trong hình Một trong số các màu trong bảng màu có thể được đặt là trong suốt

Có hai sự khác nhau cơ bản giữa ảnh GIF và ảnh JPEG:

+ Ảnh GIF nén lại theo cách giữ nguyên toàn bộ dữ liệu ảnh trong khi ảnh JPEG nén lại nhưng làm mất một số dữ liệu trong ảnh

+ Ảnh GIF bị giới hạn bởi số màu nhiều nhất là 256 trong khi ảnh JPEG không giới hạn số màu mà chúng sử dụng

1.3.2.4 Ảnh PNG (Portable Network Graphics)

PNG là một dạng hình ảnh sử dụng phương pháp nén dữ liệu mới - không làm mất đi dữ liệu gốc PNG được tạo ra nhằm cải thiện và thay thế định dạng ảnh GIF với một định dạng hình ảnh không đòi hỏi phải có giấy phép sáng chế khi sử dụng PNG nén tốt hơn và có nhiều tính năng kỹ thuật hay hơn GIF Tất cả tính năng của GIF, trừ nén hoạt hình, đều được hỗ trợ bởi PNG Các trình duyệt mạng hiện đại đều hỗ trợ PNG

Một số đặc điểm của việc giấu thông tin trên ảnh số

Hiện nay giấu thông tin trong ảnh là kỹ thuật còn tương đối mới và đang có xu hướng phát triển rất nhanh

Một kỹ thuật giấu tin trong ảnh được đánh giá dựa trên một số đặc điểm sau:

- Tính vô hình của thông tin được giấu trong ảnh

- Số lượng thông tin được giấu

- Tính an toàn và bảo mật của thông tin

- Chất lượng của ảnh sau khi giấu thông tin bên trong

1.4.1 Tính vô hình của thông tin

Khái niệm này dựa trên đặc điểm của hệ thống thị giác của con người Thông tin nhúng là không tri giác được nếu một người với thị giác là bình thường không phân biệt được ảnh môi trường và ảnh kết quả Trong khi image hiding yêu cầu tính vô hình của thông tin giấu ở mức độ cao thì watermarking lại chỉ yêu cầu ở một cấp độ nhất định Chẳng hạn như người ta áp dụng watermarking cho việc gắn một biểu tượng mờ vào một chương trình truyền hình để bảo vệ bản quyền

Thuật toán nhúng tin được coi là có tính bảo mật nếu thông tin được nhúng không bị tìm ra khi bị tấn công một cách có chủ đích trên cơ sở những hiểu biết đầy đủ về thuật toán nhúng tin và có bộ giải mã (trừ khoá bí mật), hơn nữa còn có được ảnh có mang thông tin (ảnh kết quả) Đối với ảnh imagehiding đây là một yêu cầu rất quan trọng Chẳng hạn đối với thuật toán dò tin trong ảnh đen trắng kích thước m*n, độ phức tạp vẫn còn lên tới O(2m*n) khi đã biết ma trận trọng số đùng trong quá trình giấu tin

Lượng thông tin giấu so với kích thước ảnh môi trường là một vấn đề cần quan tâm trong một thuật toán giấu tin Đây là một trong hai yêu cầu cơ bản của giấu tin mật Rõ ràng là có thể chỉ giấu một bit thông tin vào mỗi ảnh mà không cần lo lắng về độ nhiễu của ảnh nhưng như vậy sẽ rất kém hiệu quả khi mà thông tin cần giấu có kích thước bằng Kb Các thuật toán

17 đều cố gắng đạt được mục đích làm thế nào giấu được nhiều thông tin nhất mà không gây ra nhiễu đáng kể

1.4.4 Lựa chọn ảnh Đối với việc giấu thông tin mật thì hầu hết các chuyên gia về lĩnh vực này khuyên rằng: nên chọn ảnh đa cấp xám là môi trường là hợp lý hơn cả Sau khi giấu tin mật trong ảnh đa cấp xám thì chất lượng của ảnh là cao, đảm bảo tính vô hình của thông tin mật

1.4.5 Ảnh môi trường đối với quá trình giải mã

Yêu cầu cuối cùng là thuật toán phải cho phép lấy lại được thông tin đã giấu trong ảnh mà không có ảnh môi trường Điều này là một thuận lợi khi ảnh môi trường là duy nhất nhưng lại làm giới hạn khả năng ứng dụng của kỹ thuật giấu tin Để thực hiện việc giấu tin trong ảnh, trước hết ta phải xử lý được ảnh tức là phải số hoá ảnh Quá trình số hoá các dạng ảnh khác nhau thì không như nhau Có nhiều loại ảnh đã được chuẩn hoá như: JPEG, PCX, BMP, Trong luận văn này chỉ sử dụng ảnh *.BMP Ảnh BMP (Bitmap) được phát triển bởi MicrosoftCorporation, được lưu trữ dưới dạng độc lập thiết bị cho phép Windows hiển thị dữ liệu không phụ thuộc vào khung chỉ định màu trên bất kì phần cứng nào Tên file mở rộng mặc định của một file ảnh Bitmap là BMP Ảnh BMP được sử dụng trên MicrosoftWindows và các ứng dụng chạy trên Windows từ version 3.0 trở lên

Mỗi file ảnh Bitmap gồm 3 phần:

Các cấu trúc cụ thể của ảnh Bitmap

Byte thứ Ý nghĩa Giá trị

1-2 Nhận dạng file ‘BM’ hay 19778

3-6 Kích thước file Kiểu long trong Turbo C

7-10 Dự trữ Thường mang giá trị 0

11-14 Byte bắt đầu vùng dữ liệu Offset của byte bắt đầu vùng dữ liệu 15-18 Số byte cho vùng info 4 byte

19-22 Chiều rộng ảnh BMP Tính bằng pixel

23-26 Chiều cao ảnh BMP Tính bằng pixel

27-28 Số Planes màu Cố định là 1

29-30 Số bit cho một pixel Có thể là 1,4,8,16,24 tuỳ theo loại ảnh 31-34 Kiểu nén dữ liệu

0: Không nén 1: Nén runlength 8bits/pixel 2: Nén runlength 4bits/pixel 35-38 Kích thướcảnh Tính bằng byte

39-42 Độ phân giải ngang Tính bằng pixel / metter 43-46 Độ phân giải dọc Tính bằng pixel / metter 47-50 Số màu sử dụng trong ảnh

51-54 Số màu được sử dụng khi hiển thị ảnh

Palette màu: Bảng màu của ảnh, chỉ những ảnh nhỏ hơn hoặc bằng 8bit màu mới có palette màu

BitmapData: Phần này nằm ngay sau phần palette màu của ảnh BMP Đây là phần chứa giá trị màu của điểm ảnh trong BMP Các dòng ảnh được lưu từ dưới lên trên, các điểm ảnh được lưu trữ từ dưới lên trên từ trái sang phải Giá trị của mỗi điểm ảnh là một chỉ số trỏ tới phần tử màu tương ứng của Palette màu

Thành phần Bit Count của cấu trúc Bitmap Header cho biết số bit dành cho mỗi điểm ảnh và số lượng màu lớn nhất của ảnh Bit Count có thể nhận các giá trị sau:

1: Bimap là ảnh đen trắng, mỗi bit biểu diễn một điểm ảnh Nếu bit mang giá trị 0 thì điểm ảnh là điểm đen, bit mang giá trị 1 điểm ảnh là điểm ảnh trắng

4: Bitmap là ảnh 16 màu, mỗi điểm ảnh được biểu diễn bởi 4bit

8: Bitmap là ảnh 256 màu, mỗi điểm ảnh được biểu diễn bởi 1 byte

16: Bitmap là ảnh highcolor, mỗi dãy 2 byte liên tiếp trong bitmap biểu diễn cường độ tương đối của màu đỏ, xanh lá cây, xanh lơ của một điểm ảnh

24: Bitmap là ảnh truecolor (224 màu), mỗi dãy 3 byte liên tiếp trong bitmap biểu diễn cường độ tương đối của màu đỏ, xanh lá cây, xanh lơ (RGB) của một điểm ảnh

Thành phần ColorUsed của cấu trúc BitmapHeader xác định số lượng màu của palette màu thực sự được sử dụng để hiển thị bitmap Nếu thành phần này được đặt là 0, bitmap sử dụng số màu lớn nhất tương ứng với giá trị của Bit Count

GIẤU TIN TRONG ẢNH

Giới thiệu chung

Hiện nay, giấu thông tin trong ảnh là một bộ phận chiếm tỷ lệ lớn 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 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, viện nghiên cứu ở Việt Nam nói riêng và 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

Hay trong một số những ứng dụng về nhận diện như thẻ chứng minh, thẻ căn cước, hộ chiếu… người ta có thể giấu thông tin trên các ảnh thẻ để xác định thông tin thực Ví dụ như hình 2.1 là một thẻ chứng minh đã được giấu tin trong ảnh, thông tin giấu là số thẻ trùng với số đã được in rõ ở trên thẻ

Hình 2.1 Chứng minh nhân dân được giấu tin trong ảnh

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 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

Từ năm học 1995 - 1996, Bộ giáo dục và Đào tạo đã bắt đầu ứng dụng công nghệ thông tin vào công tác bảo mật đề thi tốt nghiệp trung học phổ thông thay cho việc niêm phong, đóng dấu đề thi để chuyển qua theo đường bưu điện

Trong mục này đề cập tới một kỹ thuật đơn giản đáng tin cậy để giấu những thông tin quan trọng vào một ảnh đen trắng (ảnh nhị phân) bằng cách sử dụng khoá bí mật và một ma trận trọng số Phương pháp này được chứng minh là có độ an toàn cao, đảm bảo chất lượng ảnh gốc và có tỉ lệ giữa kích thước thông tin giấu được với kích thước ảnh môi trường tương đối so với các phương pháp khác và cho phép giấu được tới [log2(m*n+1)] bit dữ liệu vào trong mỗi khối ảnh kích thước m*n mà chỉ cần thay đổi nhiều nhất 2 bit trong khối ảnh đó

Các đặc trưng của giấu thông tin trong ảnh

Như đã nói ở trên nhúng thông tin trong ảnh có hai khái niệm khác nhau đó là thuỷ vân số (digital watermarking) và giấu thông tin mật trong ảnh (stegnography) [3] Trong khi thuỷ phân số không yêu cầu thông tin giấu phải vô hình và chịu được các thao tác biến đổi trên ảnh thì giấu thông tin trong ảnh yêu cầu các thông tin giấu phải ẩn không bị phát hiện và lượng thông tin giấu càng lớn càng tốt (capacityof hidden message) [4] Hai phương pháp này có những đặc điểm khác nhau, cách thực hiện khác nhau nhưng trong luận văn này là giấu tin trong ảnh nên chỉ đề cập tới các đặc trưng chính của giấu thông tin trong ảnh

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 được tri giác tĩnh nghĩa là ảnh không thay đổi theo thời gian khi tri giác, điều này khác với đa phương tiện audio hay video vì khi ta tri giác các dữ liệu phương tiện chứa gốc là hình ảnh hay âm thanh 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 tin trong audio hay video Đối với giấu thông tin trong ảnh phương pháp giấu và kỹ thuật giấu phụ thuộc vào đặc

23 điểm thị giác của con người, ví dụ như độ sáng tối, hay yếu tố khoảng cách to nhỏ

2 Giấu 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 công việc giấu tin sẽ được thực hiện trên dữ liệu của trên ảnh Dữ liệu ảnh bao gồm các phần header, bảng phân màu và dữ liệu ảnh Khi giấu thông tin, các phương pháp đều biến đổi giá trị của các bit 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

3 Đả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 giường như quá đơn giản đối với ảnh màu và ảnh xám bởi mỗi pixel ảnh được biểu diễn bởi nhiều bit, nhiều giá trị và khi ta thay đổi một giá trị nhỏ nào đó 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ỉ có hai giá trị đen hoặc trắng, và nếu ta biến đổi một bit 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 với các kỹ thuật giấu 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

4 Thông tin trong ảnh sẽ bị biến đổi nếu có bất kỳ một biến đổi nào trên ảnh

Vì phương pháp giấu ảnh dựa trên việc điều chỉnh các giá trị của các khối bit theo một quy 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 sẽ làm thay đổi giá trị của các bit thì sẽ làm thông tin 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

5 Không cần ảnh gốc khi giải mã ảnh

Thông tin được giấu trong ảnh sẽ được mang cùng dữ liệu ảnh, khi giải mã chỉ cần ảnh đã mang thông tin mà không cần dùng đến ảnh gốc để so sánh đối chiếu.

Sự khác nhau giữa giấu tin trong ảnh đen trắng với ảnh màu

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 bit Với ả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 rất thấp dưới con mắt người bình 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 không nhìn thấy thông tin được 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 vô hình của thông tin che giấu là một công việc khó khăn hơn nhiều Đặc biệt 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 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 bí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

Sự khác nhau 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 được ít Thông tin giấu nhiều hơn

Tính ẩn thấp Tính ẩn cao Độ an toàn thông tin thấp do dễ bị phát hiện có thông tin chứa thông tin 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 Ảnh màu sau khi giấu tin rất khó phát hiện sự thay đổi Ảnh đen trắng sau khi giấu cùng một lượng thông tin như ảnh màu nhưng chất lượng kém hơn.

Nghiên cứu về xử lý ảnh trong Matlab

Trong phần này chúng ta sẽ tìm hiểu về các hàm xử lý ảnh trong matlab Như chúng ta đã biết, matlab là một ngôn ngữ rất mạnh và hỗ trợ rất tốt các thao tác làm việc trên ảnh Vì vậy việc sử dụng matlab cho các ứng dụng xử lý ảnh gần như là lựa chọn hàng đầu cho những ai muốn thực hiện các thuật toán xử lý trên phần mềm [5]

2.4.1.1 Đọc một ảnh đồ họa

Hàm imread: Đọc các file ảnh với bất kỳ các định dạng ảnh đã biết hiện nay và lưu lại dưới dạng một ma trận biểu diễn ảnh trong MATLAB Hầu hết các định dạng ảnh hiện nay dùng 8 bit cho mỗi pixel (ứng với một thành phần màu), do đó sau khi đọc MATLAB sẽ lưu lại dưới dạng ma trận thuộc kiểu uint8 Với các định dạng ảnh 16bit như PNG và TIFF, MATLAB sẽ dùng kiểu uint16 Với ảnh index, ma trận màu sẽ được lưu với kiểu double

- filename là chuỗi xác định tên file cần đọc cùng với đường dẫn (nếu file này không nằm trong thư mục hiện hành)

- fmt là chuỗi cho biết định dạng của ảnh, thí dụ ‘bmp’,‘gif’,‘jpg’,…

Ngoài ra, hàm imread còn có thêm một số thông số khác tuỳ vào từng định dạng ảnh cụ thể Gõ lệnh help ở cửa sổ lệnh của MATLAB để biết về các thông số này

2.4.1.2 Đọc nhiều ảnh đồ họa

MATLAB hỗ trợ cả một số định dạng ảnh có thể chứa nhiều ảnh như HDF, TIFF hay GIF Trong trường hợp mặc định, hàm imread chỉ đọc ảnh đầu tiên trong các ảnh này Tuy nhiên, ta có thể cung cấp thêm một thông số là chỉ số của ảnh cần đọc trong dãy như trong vídụ sau đây

Ví dụ 1 Đọc một chuỗi 27 ảnh liên tiếp trong một file TIFF và lưu vào một dãy 4 chiều: mri = uint8(zeros(128,128,1,27)); % khởi tạo một dãy 4 chiều for frame=1:27

[mri(:,:,:,frame),map] = imread('mri.tif',frame); end

Hàm imwrite cho phép lưu một ảnh biểu diễn bằng một ma trận trong MATLAB thành một file ảnh dưới một trong các định dạng ảnh đã biết

>>imwrite ( , param1, val1, param2, val2, )

Có thể bỏ qua thông số fmt nếu trong chuỗi filename có cả phẩn mở rộng (sau dấu chấm) Tuỳ thuộc vào định dạng ảnh cần lưu, ta cung cấp thêm tên các thông số param1, param2, cùng với giá trị tương ứng của chúng

Ví dụ: Lệnh sau đây thực hiện ghi vào filemypicture.jpg với chất lượng nén là 100:

>> A= imread('E:\TH matlab\kem@.jpg'); imwrite(A, 'E:\TH matlab\mypictures.jpg', 'Quality', 100);

Mở rộng: Để kiểm chứng xem các thông số mà chúng ta đã xác định trong hàm imwrite có được thực hiện đúng hay không, hoặc để xem các thông số của một file ảnh nào đó, ta có thể dùng hàm imfinfo:

Các thông tin mà hàm này cung cấp được liệt kê trong bảng sau:

2.4.3 Các phép toán số học cơ bản

Các phép toán số học cơ bản trên các dữ liệu ảnh bao gồm các phép cộng, trừ, nhân và chia Đây là những thao tác xử lý ảnh cơ bản trước khi thực hiện các biến đổi phức tạp khác Dưới đây là danh sách các hàm thực hiện các phép toán số học cơ bản trên ảnh cùng với cú pháp tương ứng:

Tênhàm Cúpháp Môtả imabsdiff z = imabsdiff(x,y)

Trừ mỗi phần tử của Y từ phần tử tương ứng của X, sau đó trả về trị tuyệt đối của hiệu imadd z = imadd(x,y,out_class)

Cộng hai ảnh hoặc cộng một ảnh với một hằng số, output_class là chuỗi xác định kiểu dữ liệu của tổng imcomplement im2 = imcomplement(im) Lấy bù của ảnh im imdivide z = imdivide(x,y)

Chia các phần tử của ảnh x cho phần tử tương ứng của y, các giá trị phân số được làm tròn

Lấy tổ hợp tuyến tính của các ảnh: z = k1.*a1 + k2.*a2+ +kn.*an+k immultiply z = immultiply(x,y)

Nhân hai ảnh hoặc nhân một ảnh với một hằng số, nếu kết quả bị tràn thì sẽ được giới hạn lại trong tầm cho phép imsubstract z = imsubtract(x,y)

Trừ hai ảnh hoặc trừ một ảnh cho một hằng số, nếu kết quả bị tràn thì sẽ được giới hạn lại trong tầm cho phép

Phép cộng hai ảnh thường dùng để xếp chồng một ảnh lên trên một ảnh khác Phép cộng một ảnh với một hằng số làm tăng độ sáng của ảnh

Ví dụ: Chồng lẫn hai ảnh trên một nền chung:

>> I = imread('E:\TH matlab\bien.jpg'); % Đọc ảnh thứ nhất

J = imread('E:\TH matlab\Tulips.jpg'); % Đọc ảnh thứ hai

K = imadd(I,J); % Cộng hai ảnh subplot(1,3,1); imshow(I); % Hiển thị ảnh thứ nhất subplot(1,3,2); imshow(J); % Hiển thị ảnh thứ hai subplot(1,3,3); imshow(K); % Hiển thị ảnh tổng

Sau khi thực hiện chương trình ta được ảnh kết quả như sau:

Hình 2.2 Chồng lẫn hai ảnh trên một nền chung 2.4.3.2 Phép trừ

Phép trừ hai ảnh thường dùng để phát hiện những sự khác nhau giữa các ảnh trong một chuỗi các ảnh của cùng một cảnh Phép trừ một ảnh cho một hằng số làm giảm độ sáng của ảnh

Ví Dụ: Làm giảm độ sáng ảnh bằng phép cộng với hằng số:

>> A = imread(‘E:\TH matlab\kem2.jpg');

Hình 2.3 Làm giảm độ sáng ảnh bằng phép cộng với hằng số 2.4.3.3 Phép nhân

Phép nhân một ảnh với một hằng số, còn gọi là scaling, là một phép toán thường gặp trong xử lý ảnh Nó làm tăng hoặc giảm độ sáng của ảnh tuỳ theo hệ số nhân là lớn hơn hay nhỏ hơn 1, nhưng khác với phép cộng ảnh với hằng số, phép nhân cho phép bảo toàn độ tương phản của ảnh, do đó ảnh có vẻ thực hơn

Ví dụ: Làm tăng độ sáng ảnh bằng phép nhân với hằng số:

>> A = imread('E:\TH matlab\dautay.jpg');

A2 = immultiply(A, 1.5); subplot(1,2,1); imshow(A); subplot(1,2,2); imshow(A2);

Hình 2.4 Tăng độ sáng bằng phép nhân 2.4.3.4 Phép chia

Phép chia hai ảnh cũng dùng để phát hiện những thay đổi giữa các ảnh liên tiếp của cùng một đối tượng nhưng dưới dạng những thay đổi tỷ lệ

>> A = imread('E:\TH matlab\dautay.jpg');

A2 = imdivide(A, 1.5); subplot(1,2,1); imshow(A); subplot(1,2,2); imshow(A2);

Hình 2.5 Giảm độ sáng bằng phép chia trong MATLAP

2.4.4 Các hàm hiển thị hình ảnh Để phục vụ chức năng hiển thị hình ảnh, MATLAB cung cấp hai hàm cơ bản là image và imagesc Ngoài ra, trong Image Processing Toolbox cũng có hai hàm hiển thị ảnh khác, đó là imview và imshow

Hiển thị hình ảnh biểu diễn bởi ma trận C kích thước MxN lên trục toạ độ hiện hành X, Y là các vector xác định vị trí của các pixel C(1,1) và C(M,N) trong hệ trục hiện hành Toạ độ của pixel C(1,1) là (X(1),Y(1)) còn toạ độ của pixel C(M,N) là (X(end),Y(end)) Nếu không cung cấp X, Y, thì MATLAB sẽ mặc định là toạ độ của C(1,1) là (1,1), của C(M,N) là (M,N) Nếu ma trận C chỉ có hai chiều thì MATLAB hiểu rằng đây là ma trận ảnh dạng index với ma trận màu là ma trận màu hiện hành trong hệ thống Ngoài ra có thể cung cấp thêm các cặp thông số (tên thuộc tính/ giá trị thuộc tính) cho hàm image Ví dụ, hàm image( ,'parent',ax) xác định hệ trục toạ độ mà ảnh sẽ hiển thị trên đó là hệ trục toạ độ ax

Có chức năng tương tự như hàm image, ngoại trừ việc dữ liệu ảnh sẽ được co giãn (scale) để sử dụng toàn bộ bản đồ màu hiện hành

Cho phép hiển thị hình ảnh trên một cửa sổ riêng, nền Java, gọi là Image Viewer Image Viewer cung cấp các công cụ cho phép dò tìm và xác định giá trị các pixel một cách linh hoạt Sử dụng hàm này khi ta cần khảo sát bức ảnh và cần các thông tin về các pixel

Hình 2.6 Hiển thị ảnh bằng hàm imview 2.4.4.4 Hàm imshow

Các thuật toán giấu tin trong ảnh

Trong phần trên chúng ta đã tìm hiểu cấu trúc của ảnh đen trắng, ảnh màu Trong phần này chúng ta sẽ nghiên cứu cơ sở lý thuyết của các kỹ thuật giấu tin vào các ảnh này Hiện nay có 4 phương pháp thường được sử dụng để thực hiện kỹ thuật giấu tin

2.5.1 Giấu tin mật trong khối bit sử dụng tính chẵn lẻ của tổng số bit 1 2.5.1.1 Ý tưởng Đây 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 kỹ thuật này là chia một ảnh thành các khối nhỏ và trong mỗi khối nhỏ sẽ giấu một bit thông tin Dựa vào tính chẵn lẻ của tổng số các bit 1 trong khối để qui định giấu bit 1 hay 0 Cụ thể sau khi giấu thì tổng số các bit 1 trong khối và bit cần giấu sẽ có cùng tính “chẵn lẻ” Thuật toán này dùng cho ảnh đen trắng, ảnh mầu và ảnh đa cấp xám Tuy nhiên, trong phần trình bày ở mục ngay sau đây sẽ minh họa thuật toán cho ảnh đen trắng, phần trình bày áp dụng thuật toán cho ảnh mầu và ảnh đa cấp xám sẽ được đưa ra tiếp sau

-Một file ảnh bitmap đen trắng FF

-Một file thông tin cần giấu Fb

-Một khóa K (đó là kích thước khối nhỏ)

-Một file ảnh F’ đã giấu tin

Cách thức thực hiện: a) Tiền xử lý

- Chuyển file thông tin cần giấu Fb sang dạng xâu nhị phân

- Đọc header của ảnh (phần chứa 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 (ma trận) M để sử dụng cho việc giấu tin b) Quá trình giấu tin

- Bước 1: Chia ma trận M thành các khối nhỏ Bi kích thước K = mxn

- Bước 2: Giấu bit dữ liệu bi vào khối Bi

For each Bi if sum(Bi)  bi (mod 2) then giữ nguyên khối Bi else B’i  đảo bit bất kì trong Bi

- Chia phần thông tin ảnh (ma trận hai chiều điểm ảnh) M thành các khối nhỏ có kích thước K (K = m x n) Giả sử ảnh gốc ban đầu có kích thước

M x N, ảnh gốc được chia thành các khối nhỏ, tổng số các khối nhỏ sẽ là k (M x N)/ (m x n) khối Vì là ảnh đen trắng nên mỗi khối là một ma trận hai chiều của các giá trị 0 và 1

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ỏ sẽ được dùng để giấu một bit thông tin theo quy tắc: sau khi giấu thì tổng số bit 1 trong khối và bit thông tin cần giẫu sẽ có cùng tính

45 chẵn lẻ Nghĩa là nếu giấu bit 1 vào khối thì khối đó phải thỏa mãn tính chất tổng số bit 1 trong khối là số lẻ Ngược lại nếu giấu bit 0 vào khối thì khối đó phải thỏa mãn tính chất tổng số bit 1 trong khối là chẵn

Như vậy, mỗi lần giấu một bit ta có hai trường hợp sau:

- Trường hợp thứ nhất: khối đã thỏa mãn tính chất để giấu một bít thông tin Nghĩa là khi cần giấu bit 1 thì tổng số bit 1 đã lẻ rồi hoặc là khi cần giấu bit 0 thì tổng số bit 0 đã chẵn Trong trường hợp như thế ta không cần thay đổi và xem như bit thông tin đã được giấu

-Trường hợp thứ hai:: khối không thỏa mãn tính chất để giấu một bít thông tin Nghĩa là khi cần giấu bit 1 thì tổng số bit 1 là chẵn hoặc là khi cần giấu bit 0 thì tổng số bit 0 là lẻ Trong trường hợp này ta cần thay đổi khối đó sao cho thỏa mãn điều kiện bằng cách đảo trị ngẫu nhiên một bit (từ 0 sang 1, hoặc từ 1 sang 0).Thí dụ:

Xét thí dụ dưới đây minh họa cho hai trường hợp trên

Khối B kích thước K = 4 x 4, khối B có 8 bit 1 Trường hợp 1: Giả sử ta muốn giấu bit b = 1 vào khối B

Số lượng bít 1 trong khối B là 8 Như vậy khối B không thỏa mãn yêu cầu Để giấu bit 1 vào khối B ta thay đổi một bit bất kỳ trong khối, đổi bit 0 thành bít 1 hoặc bit 1 thành bit 0, ta thu được khối B’ Giả sử ta đổi như hình sau:

Thay đổi bit trong khối B thành khối B’

Khi đó ta có khối B’ có 7 bit 1 thỏa mãn tính chất

Trường 2: Giả sử ta giấu bit b = 0 vào khối B

Khối B có 8 bit 1 thỏa mãn tính chất Nên khối B được bảo toàn và bit dữ liệu b = 0 coi như đã được giấu

Mỗi lần giấu một bit ta lại lấy một khối để giấu theo quy tắc trên cho đến hết lượng thông tin cần giấu Sau khi giấu xong ta được một ma trận hai chiều dữ liệu ảnh mới

Trong thuật toán giấu tin này, khóa đơn giản chỉ là kích thước khối K=m x n Nếu biết kích thước của khối thì ta dễ dàng giải mã như sau: c) Quá trình giải tin giấu

- F’ là ảnh đã được giấu dãy bit bí mật D

- K là khóa bí mật, đó là kích thước khối nhỏ đã được xác định trước

- F là file ảnh chứa tin đã được giấu

- D là dãy bit bí mật đã giấu

- Đọc header ảnh để biết các thông tin về ảnh, đọc bảng mầu, đọc phần dữ liệu ảnh vào ma trận hai chiều M

- Chia M thành các khối nhỏ với kích thước K

- Theo một thứ tự xác định trước, xét từng khối nhỏ B, giải tin theo quy tắc sau

- Nếu tổng số các bit 1 là lẻ thì ta thu được bit giấu là 1

- Nếu tổng số các bit 1 là chẵn thì ta thu được các bit giấu là 0

Như vậy, sau khi xử lý hết các khối đã giấu ta thu được chuỗi bit đã giấu b’

- Chuyển file xâu bit nhị phân sang file văn bản

Thuật toán giấu tin trong ảnh dựa vào tính chẵn lẻ của tổng số bit 1 ở trên là rất đơn giản Sau khi nghiên cứu thuật toán này ta có thể đưa ra một số nhận định sau:

- Việc chọn kích thước khối để giấu tin cần căn cứ vào kích thước ảnh và lượng tin cần giấu sao cho các thông tin giấu có thể giàn trải trên toàn ảnh

Ví dụ nếu ta có ảnh kích thước 512 x 512 pixel và có một lượng thông tin cần giấu là 100 kí tự Như vậy, file thông tin nhị phân cần giấu là 100 x 8 = 800 bit

THIẾT KẾ VÀ CÀI ĐẶT CHƯƠNG TRÌNH

Hướng dẫn sử dụng phần mềm File Camouflage

Sử dụng phần mềm khá đơn giản từ Từ giao diện chính, nhấn nút Browse tại mục ‘File to hide’ để chọn file mà bạn cần che dấu Nhấn tiếp

Browse tại mục ‘Jpeg image’ để chọn hình ảnh mà bạn muốn dấu file vào bên trong đó (Lưu ý: phần mềm chỉ hỗ trợ định dạng ảnh jpg)

Cuối cùng, nhấn nút Select tại mục cuối cùng để chọn vị trí xuất file sau khi đã thực hiện thủ thuật ẩn giấu dữ liệu

Hình 3.2 Thực hiện giấu file vào Free File Camouflage

Nhấn nút “Camouflage” ở bên dưới để quá trình ẩn giấu dữ liệu vào hình ảnh diễn ra Đánh dấu vào tùy chọn “Verify file after camouflage” nếu bạn muốn phần mềm kiểm tra lại xem có lỗi xảy ra trong quá trình “ngụy trang” hay không

Quá trình diễn ra nhanh hay chậm phụ thuộc vào dung lượng của file mà bạn cần che dấu Tuy nhiên, nhìn chung quá trình diễn ra khá nhanh chóng

Sau khi quá trình này kết thúc, tại vị trí bạn chọn để xuất file ảnh “ngụy trang” bên trong ẩn chứa dữ liệu mà bạn đã che giấu Bạn vẫn có thể mở và xem file ảnh này một cách bình thường, nội dung file ảnh đúng với nội dung file gốc mà bạn đã chọn Dù sử dụng bất kỳ phần mềm xem ảnh nào cũng không thể phát hiện ra sự khác biệt hay đặc biệt của bức ảnh

Thậm chí, nếu muốn bạn có thể đính kèm file ảnh này rồi gửi đến cho bạn bè hoặc người thân của mình, rồi nhắc nhở họ sử dụng đúng phần mềm

58 này để giải mã để xem dữ liệu che dấu bên trong Đây được xem như là một cách để gửi dữ liệu an toàn

Lột vỏ “ngụy trang” dữ liệu ra khỏi hình ảnh:

Trong trường hợp bạn muốn lấy lại dữ liệu đã ẩn dấu bên dưới tấm ảnh, chọn tab “De-camouflage a file” trên giao diện phần mềm

Tại đây, nhấn Browser tại mục “Jpeg image to de-camouflage”, tìm đến hình ảnh mà bạn giấu dữ liệu trong đó Nhấn Browser tại mục phía dưới để chọn vị trí xuất dữ liệu sau khi “lột vỏ ngụy trang”

Cuối cùng, nhấn nút De-Camouflage để quá trình giải mã diễn ra

Hình 3.3 Thực hiện lấy file ra từ Free File Camouflage

Sau khi quá trình này kết thúc, dữ liệu ẩn chứa bên trong hình ảnh sẽ xuất hiện tại vị trí mà bạn đã chọn để lưu

Lưu ý: mặc định, phần mềm sẽ tích hợp vào menu chuột phải của Windows, cho phép người dùng lựa chọn để che dấu dữ liệu được nhanh chóng Tuy nhiên, việc này lại khiến cho người khác có thể biết được bạn đang sử dụng File Camouflage để che dấu dữ liệu Do vậy, bạn nên bỏ đi tính năng tích hợp phần mềm vào menu chuột phải bằng cách đánh dấu bỏ đi tùy chọn “Integrate in explorer ‘Send to’ menu” trên giao diện phần mềm

Mã hóa file trước khi giấu vào ảnh

3.3.1 Hệ mã với khóa sử dụng một lần (OTP)

- Hệ mã với khóa sử dụng 1 lần là hệ mật mã an toàn được phát triển bởi Gilbert Vernam từ năm 1918

- Thông điệp được biểu diễn dưới dạng chuỗi nhị phân (chuỗi ‘0’ và ‘1’) sử dụng kỹ thuật mã hóa giống như mã ASCII

- Khóa là chuỗi các ký tự ‘0’ và ‘1’ có độ dài bằng độ dài bản rõ

- Việc mã hóa được thực hiện cộng khóa với bản rõ rồi modulo 2 theo từng bit, Việc xử lý này được gọi là XOR, sử dụng ký hiệu ⊕ Định nghĩa: OTP là một hệ mật mà những kẻ tấn công không thể phá được mã bởi vì hệ mã này sử dụng khóa được chọn ngẫu nhiên, chỉ sử dụng một lần và sau đó khóa bị hủy bỏ

Hàm mã hóa ek (P) = (p1+k1 p2+k2 ….pn+kn) mod m

Hàm giải mã dk (C) = (c1+k1 c2+k2 ….cn+kn) mod m

Phiên bản hệ nhị phân của OTP

Không gian bản rõ = không gian bản mã = Không gian khóa = {0,1} n Khóa được chọn ngẫu nhiên

Sử dụng các toán tử bit:

• Addition mod 2 (also known as Bit XOR)

2.5.2.4 Hệ mã có độ mật hoàn thiện OTP

Một hệ mật được định nghĩa trên bộ (K, M, C)

Trong hệ mật OTP không gian bản rõ = không gian bản mã = không gian khóa: M= C = {0, 1} n , K = {0, 1} n c := E(k,m) = k m m:= D(k,c) = k  c m 0 1 1 0 1 1 1 k 1 0 1 1 0 0 1 c 1 1 0 1 1 1 0 Ưu điểm:-Việc mã hóa và giải mã thực hiện rất nhanh

Nhược điểm: - Khóa dài (bằng độ dài bản rõ)

3.3.2.1 Thủ tục mã hóa a Lưu đồ thuật toán

Hình 3.4 Lưu đồ thuật toán mã hóa b Chương trình publicint MaHoa(string FileIn, string FileOut, sbyte n) {

Stream file = File.OpenWrite(FileOut);

FileStream stream = File.OpenRead(FileIn); byte[] fileBytes = newbyte[stream.Length];

63 stream.Read(fileBytes, 0, fileBytes.Length); stream.Close(); byte[] key = SinhKhoaMD5(fileBytes);

LuuKhoaFile = SinhKhoaMD5(fileBytes); byte[] keyMD5 = SinhKhoaMD5(fileBytes); //Lưu khóa vào file file.Write(keyMD5, 0, keyMD5.Length); int len = 16 * (fileBytes.Length / 16); int du = fileBytes.Length - len; byte[] C2 = newbyte[16]; int sokhoi = fileBytes.Length / 16; int i = 0; while (i < sokhoi)

C2 = XOR(P, key); file.Write(C2, 0, C2.Length); byte[] b = aes_encrypt(P, key,N);

{ int n_du = 16 - du; byte[] tempDu = newbyte[16]; for (int ii = 0; ii < du; ii++) tempDu[ii] = fileBytes[len + ii]; for (int ii = du; ii < 15; ii++) tempDu[ii] = Convert.ToByte('#'); tempDu[15] = (byte)(n_du-1);

C2 = XOR(tempDu, key); file.Write(C2, 0, C2.Length);

{ byte[] tempDu = newbyte[16]; for (int ii = 0; ii < 15; ii++) tempDu[ii] = Convert.ToByte('#'); tempDu[15] = 15;

C2 = XOR(tempDu, key); file.Write(C2, 0, C2.Length);

System.IO.StreamReader f newSystem.IO.StreamReader(FileOut); dulieuma = f.ReadToEnd(); f.Close();

TimeSpan span = dt2 - dt1; int ms = (int)span.TotalMilliseconds; return ms;

3.3.2.2 Thủ tục giải mã a Lưu đồ thuật toán

Hình 3.5 Lưu đồ thuật toán giải mã

Cài đặt ứng dụng thực tế

Quy trình 1: Mã hóa file text cần giấu và ảnh

Hình 3.6 Giao diện phần mềm mã hóa tập tin

Bước 1: Chọn mục “Chọn tập tin” để chọn tệp tin cần mã hóa

Hình 3.7 Chọn mục “Chọn Tập Tin”

Bước 2: Chọn “Mã hóa” để mã hóa tệp tin

Hình 3.8 Chọn tập tin cần mã hóa

Nội dung file trước khi mã hóa

Hình 3.9 Nội dung tập tin trước khi mã hóa

Bước 3: Chọn mục “Mã Hóa” để mã hóa tệp tin

Hình 3.10 Mã hóa tập tin Tập tin đã được mã hóa

Hình 3.11 Tập tin đã được mã hóa

Nội dung tập tin đã được mã hóa (sau khi mã hóa)

Hình 3.12 Nội dung tập tin đã được mã hóa Quy trình 2: Giấu File text đã mã hóa vào ảnh

Quy trình 3: Lấy thông tin được giấu trong ảnh

Giải mã tin sau khi lấy ra khỏi ảnh

Hình 3.13 Giải mã tin sau khi lấy ra từ ảnh

Ngày đăng: 27/04/2024, 04:10

HÌNH ẢNH LIÊN QUAN

Hình 1.2 chỉ ra các công việc giải mã thông tin đã giấu. 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 - Giấu Thông Tin Trong File Ảnh  Ts Nguyễn Đăng Minh Hướng Dẫn
Hình 1.2 chỉ ra các công việc giải mã thông tin đã giấu. 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 (Trang 13)
Hình 1.1 Lược đồ chung cho quá trình giấu tin - Giấu Thông Tin Trong File Ảnh  Ts Nguyễn Đăng Minh Hướng Dẫn
Hình 1.1 Lược đồ chung cho quá trình giấu tin (Trang 13)
Hình 1.3 Sự khác nhau giữa mã hóa và giấu tin - Giấu Thông Tin Trong File Ảnh  Ts Nguyễn Đăng Minh Hướng Dẫn
Hình 1.3 Sự khác nhau giữa mã hóa và giấu tin (Trang 15)
Hình 2.1 Chứng minh nhân dân được giấu tin trong ảnh. - Giấu Thông Tin Trong File Ảnh  Ts Nguyễn Đăng Minh Hướng Dẫn
Hình 2.1 Chứng minh nhân dân được giấu tin trong ảnh (Trang 28)
Hình 2.2 Chồng lẫn hai ảnh trên một nền chung  2.4.3.2.  Phép trừ - Giấu Thông Tin Trong File Ảnh  Ts Nguyễn Đăng Minh Hướng Dẫn
Hình 2.2 Chồng lẫn hai ảnh trên một nền chung 2.4.3.2. Phép trừ (Trang 37)
Hình 2.3 Làm giảm độ sáng ảnh bằng phép cộng với hằng số. - Giấu Thông Tin Trong File Ảnh  Ts Nguyễn Đăng Minh Hướng Dẫn
Hình 2.3 Làm giảm độ sáng ảnh bằng phép cộng với hằng số (Trang 38)
Hình 2.4 Tăng độ sáng bằng phép nhân  2.4.3.4.  Phép chia - Giấu Thông Tin Trong File Ảnh  Ts Nguyễn Đăng Minh Hướng Dẫn
Hình 2.4 Tăng độ sáng bằng phép nhân 2.4.3.4. Phép chia (Trang 39)
Hình 2.5 Giảm độ sáng bằng phép chia trong MATLAP - Giấu Thông Tin Trong File Ảnh  Ts Nguyễn Đăng Minh Hướng Dẫn
Hình 2.5 Giảm độ sáng bằng phép chia trong MATLAP (Trang 39)
Hình 2.6 Hiển thị ảnh bằng hàm imview  2.4.4.4.  Hàm imshow - Giấu Thông Tin Trong File Ảnh  Ts Nguyễn Đăng Minh Hướng Dẫn
Hình 2.6 Hiển thị ảnh bằng hàm imview 2.4.4.4. Hàm imshow (Trang 41)
Hình 2.7 Hiển thị ảnh bằng hàm imshow  2.4.5. Các phép biến đổi hình học - Giấu Thông Tin Trong File Ảnh  Ts Nguyễn Đăng Minh Hướng Dẫn
Hình 2.7 Hiển thị ảnh bằng hàm imshow 2.4.5. Các phép biến đổi hình học (Trang 41)
Hình 2.8 Tăng kích thước ảnh  2.4.5.3.  Phép quay ảnh - Giấu Thông Tin Trong File Ảnh  Ts Nguyễn Đăng Minh Hướng Dẫn
Hình 2.8 Tăng kích thước ảnh 2.4.5.3. Phép quay ảnh (Trang 43)
Hình 2.9 Minh hoạ phép quay ảnh  2.4.5.4.  Trích xuất ảnh - Giấu Thông Tin Trong File Ảnh  Ts Nguyễn Đăng Minh Hướng Dẫn
Hình 2.9 Minh hoạ phép quay ảnh 2.4.5.4. Trích xuất ảnh (Trang 44)
Hình 2.10 Một phần nhỏ của ảnh được cắt dùng cách 1 - Giấu Thông Tin Trong File Ảnh  Ts Nguyễn Đăng Minh Hướng Dẫn
Hình 2.10 Một phần nhỏ của ảnh được cắt dùng cách 1 (Trang 45)
Bảng các dạng biến đổi hình học có thể dùng với hàm maketform - Giấu Thông Tin Trong File Ảnh  Ts Nguyễn Đăng Minh Hướng Dẫn
Bảng c ác dạng biến đổi hình học có thể dùng với hàm maketform (Trang 48)
Hình 2.11 Hiệu ứng 3D cho ảnh “bàn cờ” - Giấu Thông Tin Trong File Ảnh  Ts Nguyễn Đăng Minh Hướng Dẫn
Hình 2.11 Hiệu ứng 3D cho ảnh “bàn cờ” (Trang 49)
Bảng giá trị phép toán XOR - Giấu Thông Tin Trong File Ảnh  Ts Nguyễn Đăng Minh Hướng Dẫn
Bảng gi á trị phép toán XOR (Trang 57)
Hình 3.1 Giao diện Phần mềm Free File Camouflage - Giấu Thông Tin Trong File Ảnh  Ts Nguyễn Đăng Minh Hướng Dẫn
Hình 3.1 Giao diện Phần mềm Free File Camouflage (Trang 63)
Hình 3.2 Thực hiện giấu file vào Free File Camouflage - Giấu Thông Tin Trong File Ảnh  Ts Nguyễn Đăng Minh Hướng Dẫn
Hình 3.2 Thực hiện giấu file vào Free File Camouflage (Trang 64)
Hình 3.3 Thực hiện lấy file ra từ Free File Camouflage - Giấu Thông Tin Trong File Ảnh  Ts Nguyễn Đăng Minh Hướng Dẫn
Hình 3.3 Thực hiện lấy file ra từ Free File Camouflage (Trang 65)
Hình 3.4 Lưu đồ thuật toán mã hóa  b. Chương trình - Giấu Thông Tin Trong File Ảnh  Ts Nguyễn Đăng Minh Hướng Dẫn
Hình 3.4 Lưu đồ thuật toán mã hóa b. Chương trình (Trang 69)
Hình 3.5 Lưu đồ thuật toán giải mã - Giấu Thông Tin Trong File Ảnh  Ts Nguyễn Đăng Minh Hướng Dẫn
Hình 3.5 Lưu đồ thuật toán giải mã (Trang 73)
Hình 3.6 Giao diện phần mềm mã hóa tập tin - Giấu Thông Tin Trong File Ảnh  Ts Nguyễn Đăng Minh Hướng Dẫn
Hình 3.6 Giao diện phần mềm mã hóa tập tin (Trang 74)
Hình 3.8 Chọn tập tin cần mã hóa - Giấu Thông Tin Trong File Ảnh  Ts Nguyễn Đăng Minh Hướng Dẫn
Hình 3.8 Chọn tập tin cần mã hóa (Trang 74)
Hình 3.7 Chọn mục “Chọn Tập Tin” - Giấu Thông Tin Trong File Ảnh  Ts Nguyễn Đăng Minh Hướng Dẫn
Hình 3.7 Chọn mục “Chọn Tập Tin” (Trang 74)
Hình 3.9 Nội dung tập tin trước khi mã hóa - Giấu Thông Tin Trong File Ảnh  Ts Nguyễn Đăng Minh Hướng Dẫn
Hình 3.9 Nội dung tập tin trước khi mã hóa (Trang 75)
Hình 3.10 Mã hóa tập tin  Tập tin đã được mã hóa - Giấu Thông Tin Trong File Ảnh  Ts Nguyễn Đăng Minh Hướng Dẫn
Hình 3.10 Mã hóa tập tin Tập tin đã được mã hóa (Trang 75)
Hình 3.12 Nội dung tập tin đã được mã hóa  Quy trình 2: Giấu File text đã mã hóa vào ảnh - Giấu Thông Tin Trong File Ảnh  Ts Nguyễn Đăng Minh Hướng Dẫn
Hình 3.12 Nội dung tập tin đã được mã hóa Quy trình 2: Giấu File text đã mã hóa vào ảnh (Trang 76)
Hình 3.13 Giải mã tin sau khi lấy ra từ ảnh - Giấu Thông Tin Trong File Ảnh  Ts Nguyễn Đăng Minh Hướng Dẫn
Hình 3.13 Giải mã tin sau khi lấy ra từ ảnh (Trang 77)

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w