1. Trang chủ
  2. » Thể loại khác

Luận văn nghiên cứu một giải pháp giấu văn bản trong ảnh

32 6 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 đề Luận Văn Nghiên Cứu Một Giải Pháp Giấu Văn Bản Trong Ảnh
Trường học Trường Đại Học
Chuyên ngành Công Nghệ Thông Tin
Thể loại luận văn
Định dạng
Số trang 32
Dung lượng 1,48 MB

Cấu trúc

  • Chương 1. TỔNG QUAN KỸ THUẬT GIẤU TIN TRONG ẢNH (7)
    • 1.1. Định nghĩa giấu tin trong ảnh (7)
    • 1.2. Mục đích của giấu tin (7)
    • 1.3. Các yêu cầu đối với giấu tin trong ảnh (7)
    • 1.4. Đặc trưng và tính chất của kỹ thuật giấu tin trong ảnh (8)
    • 1.5. Các phương pháp giấu tin (10)
    • 1.6. Mô hình kỹ thuật giấu tin trong ảnh (11)
    • 1.7. Phân loại các kỹ thuật giấu tin trong ảnh (13)
      • 1.7.1. Giấu tin mật (13)
      • 1.7.2. Thủy vân số (14)
  • Chương 2. CẤU TRÚC CHUNG CỦA ẢNH BITMAP (16)
    • 2.1. Tổng quan về ảnh Bitmap (16)
    • 2.2. Cấu trúc ảnh PNG (18)
  • Chương 3. KỸ THUẬT GIẤU VĂN BẢN TRONG ẢNH SỐ (19)
    • 3.1. Giới thiệu (19)
    • 3.2. Kỹ thuật giấu văn bản trong ảnh (19)
    • 3.3. Thuật toán giấu văn bản trong ảnh (20)
    • 3.4. Thuật toán tách văn bản trong ảnh (23)
  • Chương 4. CÀI ĐẶT VÀ THỬ NGHIỆM (25)
    • 4.1. Môi trường cài đặt (25)
    • 4.2. Tập dữ liệu thử nghiệm (25)
    • 4.3. Đo độ đánh giá PSNR (26)
    • 4.4. Một số giao diện của chương trình (26)
    • 4.5. Kết quả kiểm tra PSNR (29)
  • KẾT LUẬN (31)
  • TÀI LIỆU THAM KHẢO (32)

Nội dung

TỔNG QUAN KỸ THUẬT GIẤU TIN TRONG ẢNH

Định nghĩa giấu tin trong ảnh

Giấu tin trong ảnh là một kỹ thuật giấu (nhúng) một lượng thông tin số nào đó vào trong một ảnh số [4].

Mục đích của giấu tin

Có 2 mục đích chính của giấu thông tin:

Bảo mật cho những thông tin được giấu

Bảo mật cho chính các đối tượng giấu tin

Có sự khác biệt rõ rệt giữa hai mục đích, và thực tế cho thấy chúng đã phát triển thành hai lĩnh vực riêng biệt với những yêu cầu và đặc điểm khác nhau.

Hình 1.1: Hai lĩnh vực chính của kỹ thuật giấu tin

Kỹ thuật giấu tin mật (Steganography) nhằm đảm bảo an toàn và bảo mật thông tin Các phương pháp này tập trung vào việc giấu thông tin một cách hiệu quả, giúp tăng cường khả năng ẩn giấu dữ liệu trong hình ảnh, làm cho người khác khó phát hiện ra thông tin bị giấu.

Kỹ thuật thủy vân số (Watermarking) được sử dụng để bảo mật các đối tượng chứa thông tin ẩn, nhằm đảm bảo tính bền vững và khẳng định quyền sở hữu Ngoài ra, kỹ thuật này còn giúp phát hiện các hành vi xuyên tạc thông tin, góp phần bảo vệ nội dung một cách hiệu quả.

Các yêu cầu đối với giấu tin trong ảnh

Những yêu cầu cơ bản đối với giấu tin trong ảnh [1]:

Tính ẩn của giấu tin được chèn vào ảnh: Sự hiện diện của giấu tin trong ảnh không làm ảnh hưởng tới chất lượng của ảnh đã chèn tin

Giấu thông tin Data Hiding

Tính bền của giấu tin cho phép thông tin tồn tại qua các phép biến đổi ảnh, biến dạng hình học và các hình thức tấn công cố ý khác.

Tính an toàn: không thể xoá được tin ra khỏi ảnh trừ khi ảnh được biến đổi tới mức không còn mang thông tin.

Đặc trưng và tính chất của kỹ thuật giấu tin trong ảnh

Giấu tin trong ảnh là một kỹ thuật quan trọng trong lĩnh vực giấu tin, với nhiều phương tiện chứa khác nhau và các kỹ thuật tương ứng Ảnh là một dạng dữ liệu tĩnh, không thay đổi theo thời gian, và có nhiều định dạng khác nhau, mỗi định dạng sở hữu những đặc tính riêng Do đó, các kỹ thuật giấu tin trong ảnh thường tập trung vào việc khai thác những đặc trưng và tính chất cơ bản của dữ liệu ảnh.

Phương tiện có chứa dữ liệu tri giác tĩnh

Dữ liệu tĩnh trong ảnh không thay đổi theo thời gian, ngay cả khi thông tin đã được giấu vào trong ảnh Điều này khác biệt với dữ liệu âm thanh và video, vì khi nghe hoặc xem, dữ liệu gốc liên tục thay đổi theo tri giác của con người qua các đoạn, bài hay cảnh khác nhau.

Kỹ thuật giấu phụ thuộc ảnh

Kỹ thuật giấu tin được áp dụng dựa trên các loại ảnh khác nhau, bao gồm ảnh đen trắng, ảnh xám và ảnh màu, với mỗi loại ảnh có những phương pháp riêng biệt để thực hiện.

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

Khi giấu tin trong ảnh, việc này có thể gây ra những thay đổi nhỏ trên dữ liệu gốc Để đảm bảo an toàn cho thông tin được giấu, các kỹ thuật cần phải làm cho những thay đổi này khó nhận thấy bằng mắt thường Nhiều phương pháp đã tận dụng các đặc tính của hệ thống thị giác của con người, chẳng hạn như khả năng cảm nhận sự biến đổi về độ chói kém hơn so với sự biến đổi về màu sắc, và mắt người cảm nhận màu xanh da trời kém nhất trong ba màu cơ bản.

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 của hình ảnh

Các thuật toán giấu tin được thực hiện trên dữ liệu ảnh, bao gồm phần header, bảng màu (nếu có) và dữ liệu ảnh, do đó kích thước ảnh trước và sau khi giấu tin không thay đổi Đảm bảo chất lượng ảnh sau khi giấu tin là yêu cầu quan trọng, nhằm tránh việc phát hiện dễ dàng so với ảnh gốc Điều này đặc biệt dễ dàng đối với ảnh màu hoặc ảnh xám, vì mỗi điểm ảnh có nhiều bit và giá trị, do đó việc thay đổi một giá trị nhỏ không làm biến đổi chất lượng ảnh quá nhiều Tuy nhiên, đối với ảnh đen trắng, mỗi điểm ảnh chỉ có hai giá trị, nên việc thay đổi một bit từ trắng sang đen hoặc ngược lại có thể dễ dàng bị phát hiện nếu không cẩn thận.

Yêu cầu đối với các thuật toán giấu thông tin trong ảnh màu, ảnh xám và ảnh đen trắng là khác nhau Đối với ảnh màu, các thuật toán tập trung vào việc giấu càng nhiều thông tin càng tốt, trong khi đối với ảnh đen trắng, mục tiêu chính là làm cho thông tin giấu khó bị phát hiện nhất.

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

Phương pháp giấu thông tin trong ảnh dựa trên việc điều chỉnh các giá trị bit theo quy tắc nhất định, cho phép giải mã thông tin ẩn Tuy nhiên, nếu ảnh trải qua bất kỳ biến đổi nào làm thay đổi giá trị bit, thông tin giấu sẽ bị sai lệch Từ đó, kỹ thuật này không chỉ giúp bảo mật thông tin mà còn có khả năng nhận diện và phát hiện sự xuyên tạc thông tin hiệu quả.

Vai trò của ảnh gốc khi tách tin

Các kỹ thuật giấu tin yêu cầu xác định rõ ràng quá trình lọc ảnh để biết có cần ảnh gốc hay không Hầu hết các kỹ thuật giấu tin mật không yêu cầu ảnh gốc để giải mã Thông tin được giấu trong ảnh sẽ đi kèm với dữ liệu ảnh, và khi giải mã, chỉ cần ảnh đã chứa thông tin giấu mà không cần so sánh với ảnh gốc.

Các phương pháp giấu tin

 Các phương pháp giấu tin trong ảnh hiện nay thuộc một trong ba nhóm [4]: Giấu tin trong miền không gian

Phương pháp nhúng thông tin vào các bit có trọng số thấp của ảnh, đặc biệt là trên các ảnh bitmap không nén và ảnh sử dụng bảng màu Ý tưởng chính là thay thế từng bit của tin mật vào các bit có trọng số thấp của ảnh gốc, giúp giữ nguyên chất lượng hình ảnh vì sự thay đổi này không dễ nhận thấy bằng mắt thường.

Các phương pháp dựa vào kỹ thuật biến đổi ảnh, ví dụ biến đổi từ miền không gian sang miền tần số

Các phương pháp sử dụng mặt nạ giác quan

Mặt nạ trong bài viết này đề cập đến hiện tượng mà mắt người không thể nhận diện một tín hiệu khi nó xuất hiện cạnh một tín hiệu khác nhất định Nguyên lý này dựa trên cách mà hệ thống giác quan của con người bị đánh lừa, dẫn đến việc thiếu khả năng cảm nhận chính xác.

Có hai nhóm phương pháp phân chia theo định dạng ảnh: nhóm phụ thuộc định dạng ảnh, trong đó thông tin giấu dễ bị tổn thương bởi các phép biến đổi ảnh Nhóm này được chia nhỏ theo dạng ảnh, bao gồm các phương pháp cho ảnh dựa vào bảng màu và ảnh JPEG.

Các phương pháp độc lập với định dạng ảnh sử dụng biến đổi ảnh để giấu tin, chẳng hạn như ẩn thông tin trong các hệ số biến đổi Số lượng phương pháp giấu ảnh tương ứng với số lượng phép biến đổi ảnh có sẵn Các phép biến đổi này tạo ra nhiều cách thức khác nhau để bảo mật thông tin trong hình ảnh.

- Phương pháp biến đổi theo miền không gian

- Phương pháp biến đổi theo miền tần số (DCT)

- Các biến đổi hình học

Các phương pháp nhóm thứ hai mang lại nhiều lợi ích về tính bền vững, tuy nhiên, lượng thông tin có thể giấu được sẽ thấp hơn và quá trình cài đặt sẽ phức tạp hơn.

 Nếu phân chia các phương pháp theo đặc điểm kỹ thuật có:

- Thay thế các bit dữ liệu trong bản đồ bit

Phương pháp xử lý tín hiệu

- Các phương pháp biến đổi ảnh

- Các kỹ thuật điều chế trải phổ

Các phương pháp mã hoá: Lượng hóa; mã hóa sửa lỗi

Các phương pháp thống kê - kiểm thử giả thuyết

Phương pháp sinh mặt nạ.

Mô hình kỹ thuật giấu tin trong ảnh

Kỹ thuật giấu tin trong ảnh bao gồm hai quá trình:

Quá trình 1: Giấu (nhúng) tin vào ảnh

Hình 1.2: Mô hình cơ bản giấu tin mật trong ảnh Đầu vào:

Thông tin giấu là một khái niệm linh hoạt, có thể bao gồm các loại dữ liệu như thông điệp, hình ảnh, video, hoặc âm thanh, tùy thuộc vào mục đích sử dụng của người dùng Các thuật toán và kỹ thuật giấu tin mật đóng vai trò quan trọng trong việc bảo vệ và truyền tải thông tin một cách an toàn.

Khóa che giấu Ảnh giấu tin Thông tin giấu

- Ảnh gốc: Là ảnh được chọn làm môi trường để giấu tin Đầu ra:

- Ảnh giấu đã được giấu tin

Quá trình 2: Tách tin từ ảnh giấu tin

Hình 1.3: Mô hình cơ bản tách tin mật Đầu vào:

- Khóa che giấu Đầu ra:

Quá trình giải mã sử dụng thuật toán tách tin kết hợp với kỹ thuật nhúng tin và khóa che giấu Kết quả bao gồm ảnh gốc và thông tin đã được giấu Thông tin giấu sẽ được kiểm tra và so sánh với thông tin ban đầu để đảm bảo tính chính xác.

Thuật toán/kỹ thuật tách tin

Khóa che giấu Ảnh gốc Thông tin được giấu Kiểm tra

Phân loại các kỹ thuật giấu tin trong ảnh

Có thể chia kỹ thuật giấu tin ra làm 2 loại lớn đó là thủy vân số và giấu tin mật

Hình 1.4 Phân loại các kỹ thuật giấu tin

Giấu tin mật là kỹ thuật nhúng dữ liệu hoặc thông tin bí mật vào một đối tượng gốc nhằm tạo ra một kênh truyền thông an toàn giữa hai bên Mục tiêu của phương pháp này là ngăn chặn sự phát hiện của thông tin nhúng bởi những người không liên quan, đảm bảo rằng kẻ tấn công không thể truy cập vào dữ liệu chỉ bằng cách quan sát bề ngoài của tập tin.

Hiện nay, việc giấu tin được thực hiện thông qua các phương tiện kỹ thuật số như văn bản, hình ảnh, âm thanh và video, tùy thuộc vào yêu cầu và lựa chọn của người gửi Trong số các phương tiện này, giấu tin mật là một phương pháp phổ biến.

Giấu thông tin Information hiding

Thuỷ vân hiển thị Visible Watermarking

Miền không gian trong hình ảnh hiện đang được sử dụng phổ biến, bởi vì lượng thông tin dư thừa trong hình ảnh rất lớn, cho phép dễ dàng thay đổi và ẩn giấu nhiều thông tin mật bên trong.

Một số kỹ thuật được đề xuất sử dụng tập tin hình ảnh làm đối tượng gốc, và những kỹ thuật này có thể được phân loại theo hai cách khác nhau.

- Kỹ thuật không gian miền

- Kỹ thuật thay đổi miền

Kỹ thuật không gian miền là một phương pháp nhúng dữ liệu bằng cách thay thế cẩn thận các điểm ảnh của hình ảnh gốc bằng các bit thông điệp mật Các thuật toán giấu tin mật hiệu quả nhất thường dựa trên việc sửa đổi lớp ít quan trọng của hình ảnh, được gọi là kỹ thuật LSB Kỹ thuật LSB là phương pháp phổ biến nhất để giấu tin mật trong hình ảnh, trong đó các bit ở các điểm ảnh có trọng số thấp được thay thế bằng các bit thông tin.

Kỹ thuật thay đổi miền là phương pháp nhúng dữ liệu bằng cách biến đổi miền hình ảnh gốc và giấu thông tin bên trong Trong số các thuật toán chuyển đổi miền, thuật toán DCT (Biến đổi Cosin rời rạc) được sử dụng phổ biến, cho phép thể hiện hình ảnh dưới dạng sóng tổng hợp có trọng số của các hàm cosin Dữ liệu được giấu kín thông qua việc điều chỉnh các hệ số DCT của hình ảnh.

Một kỹ thuật giấu tin mật trong hình ảnh tốt nhằm ba mục tiêu

- Dữ liệu tối đa có thể được giấu bên trong hình ảnh

Tính không nhận thấy được tin giấu là một yếu tố quan trọng, cho thấy chất lượng hình ảnh sau khi thực hiện quá trình giấu tin Khi nhìn vào ảnh đã được che giấu, người xem không thể phát hiện ra sự hiện diện của thông tin ẩn bên trong.

- Bảo mật: An ninh phải mạnh mẽ để chống lại các cuộc tấn công của những kẻ tấn công

Chỉ cần một lượng thông tin nhỏ nhưng đặc trưng cho bản quyền của người sở hữu, thông tin này cần phải có độ bền vững cao để bảo vệ quyền lợi.

Thủy vân bền vững là một giải pháp hiệu quả trong việc bảo vệ bản quyền, thường được sử dụng như một hình thức dán tem bản quyền trên sản phẩm Để đảm bảo tính hiệu quả, thủy vân cần phải tồn tại bền vững cùng với sản phẩm, giúp ngăn chặn các hành vi tẩy xóa, làm giả hoặc phá hủy thủy vân.

Thủy vân dễ vỡ là kỹ thuật nhúng thủy vân vào sản phẩm, nhằm mục đích tạo ra một lớp bảo vệ Tuy nhiên, nếu có bất kỳ biến đổi nào xảy ra với sản phẩm gốc, thủy vân sẽ không còn nguyên vẹn như ban đầu.

Thủy vân ẩn: Cũng giống như giấu tin, bằng mắt thường không thể nhìn được thủy vân ẩn

Thủy vân hiện: Là loại thủy vân hiện ngay trên sản phẩm và mọi người đều có thể nhìn thấy được.

CẤU TRÚC CHUNG CỦA ẢNH BITMAP

Tổng quan về ảnh Bitmap

Để giấu tin trong ảnh, cần nghiên cứu cấu trúc ảnh và thực hiện số hóa ảnh Quá trình số hóa các loại ảnh khác nhau không giống nhau, và có nhiều định dạng ảnh đã được chuẩn hóa như JPEG, PCX, BMP, GIF, IMG Dưới đây là cấu trúc của ảnh bitmap (*.BMP).

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

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

BitmapHeader (54 byte): Lưu trữ những thông tin cơ bản về tệp ảnh và thuộc tính cơ bản của ảnh

Bảng 2.1 Bảng chi tiết những thông tin trong BitmapHeader

Byte Đặt tên Ý nghĩa Giá trị

1 - 2 ID Nhận dạng file „BMP‟ hay 19778

3 – 6 File_Size Kích thước File Kiểu Long trong turbo C

7 – 10 Reserved Dành riêng Mang giá trị 0

11 – 14 OffsetBit Byte bắt đầu vùng dữ liệu

Offset của byte bắt đầu vùng dữ liệu

15 -18 Isize Số byte cho vùng info 40 byte

19 – 22 Width Chiều rộng của ảnh

23 – 26 Height Chiều cao của ảnh BMP Tính bằng pixel

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

29 – 30 bitCount Số bit cho một pixel Có thể là 1,4,6,16,24

Byte Đặt tên Ý nghĩa Giá trị

31-34 Compression Kiểu nén dữ liệu 0: Không nén

1: Nén 8bits/pixel 2: Nén 4bits/pixel

35 -38 ImageSize Kích thước ảnh Tính bằng byte

39 – 42 XpelsPerMeter Độ phân giải ngang Tính bằng pixel/metr

43 – 46 YpelsPerMeter Độ phân giải dọc Tính bằng pixel/metr

47 – 50 ColorsUsed Số màu sử dụng trong ảnh

51 – 54 ColorsImportant Số màu được sử dụng khi hiện ảnh

Thành phần bitCount trong cấu trúc BitmapHeader xác định số bit cho mỗi điểm ảnh và số lượng màu tối đa của hình ảnh Các giá trị có thể có của bitCount bao gồm nhiều tùy chọn khác nhau.

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

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

8: Bitmap là ảnh 256 màu, mỗi điểm ảnh 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 true color (2 24 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 trong cấu trúc BitmapHeader xác định số lượng màu trong bảng màu thực tế được sử dụng để hiển thị bitmap Nếu thành phần này được thiết lập là

0, bitmap sử dụng số màu lớn nhất tương ứng với giá trị của BitCount

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

BitmapData là phần thông tin ảnh nằm ngay sau palette màu trong định dạng BMP, chứa giá trị màu của từng điểm ảnh Các dòng ảnh được lưu từ dưới lên trên, trong khi các điểm ảnh được sắp xếp từ trái sang phải Mỗi giá trị điểm ảnh là chỉ số tham chiếu tới màu tương ứng trong palette màu.

Cấu trúc ảnh PNG

PNG là một định dạng hình ảnh sử dụng công nghệ nén dữ liệu tiên tiến mà không làm mất dữ liệu gốc Định dạng này được hỗ trợ bởi thư viện libpng, một thư viện độc lập cung cấp các hàm C để quản lý hình ảnh PNG.

Tập tin PNG bắt đầu với 8 byte ký hiệu (89 50 4E 47 0D 0A 1A) trong hệ thống cơ số 16, bao gồm chữ "PNG" và hai dấu xuống dòng Cấu trúc của tập tin được tổ chức theo các thành phần, mỗi thành phần chứa thông tin về hình ảnh Thiết kế này cho phép định dạng PNG tương thích với các phiên bản cũ thông qua việc sử dụng các "thành phần" trong tập tin.

PNG là cấu trúc như một chuỗi các thành phần, mỗi thành phần chứa kích thước, kiểu, dữ liệu, và mã sửa lỗi CRC ngay trong nó

Chuỗi được đặt tên bằng 4 ký tự, phân biệt giữa chữ hoa và chữ thường Sự phân biệt này cho phép bộ giải mã xác định bản chất của chuỗi khi nó không nhận diện được.

Chữ cái đầu viết hoa trong chuỗi này là rất quan trọng, vì nó chứa thông tin cần thiết để đọc tệp Nếu bộ giải mã không nhận diện được chuỗi này, việc đọc tệp sẽ bị hủy bỏ.

Định dạng PNG mang lại nhiều ưu điểm vượt trội so với các định dạng phổ biến khác như JPG, GIF và BMP, đặc biệt trong môi trường đồ họa web.

Hình ảnh PNG là một trong những định dạng có dung lượng nhỏ nhất hiện nay, điều này rất quan trọng khi sử dụng trên môi trường web để tối ưu hóa tốc độ tải trang.

- Độ sâu của màu: Ảnh PNG hỗ trợ đến true color 48bit màu Trong khi đó ảnh gif chỉ ở mức 256 màu.

KỸ THUẬT GIẤU VĂN BẢN TRONG ẢNH SỐ

Giới thiệu

Kỹ thuật giấu tin LSB là một phương pháp bảo mật hiệu quả, cho phép ẩn nhiều dữ liệu hơn so với các kỹ thuật trước đây Mặc dù nhiều phương pháp hiện tại chưa khai thác tối đa dữ liệu từ ảnh gốc, nhưng đã có nhiều cải tiến nhằm sử dụng nhiều bit/pixel hơn để gia tăng khả năng ẩn dữ liệu Vào tháng 10/2010, Sukhpreet và Sumeet đã giới thiệu một kỹ thuật mới giấu văn bản trong hình ảnh bằng cách sử dụng 7 bit/pixel, mà không làm thay đổi hình ảnh gốc Văn bản được chuyển đổi thành mã ASCII, và 7 bit của mã ASCII được kết hợp với các giá trị điểm ảnh Để đánh dấu sự hiện diện của dữ liệu trong một điểm ảnh cụ thể, tác giả đã áp dụng kỹ thuật LSB.

Kỹ thuật giấu văn bản trong ảnh

Trong kỹ thuật này, tác giả sử dụng hình ảnh Bitmap làm nguồn gốc, vì ảnh Bitmap chứa nhiều thông tin dư thừa Điều này cho phép dễ dàng nhúng nhiều tin mật vào bên trong mà không làm thay đổi hình ảnh gốc Mục đích của phương pháp này là để giấu thông tin mật một cách hiệu quả trong hình ảnh.

Mỗi pixel trong hình ảnh BMP bao gồm ba byte, tương ứng với các màu Red, Green và Blue Để mã hóa văn bản, mỗi ký tự được chuyển đổi sang mã ASCII với 7 bit nhị phân Khi xử lý, ta sẽ so sánh từng bit của tin ẩn với các điểm ảnh.

Bài viết đề cập đến việc sử dụng 7 bit có trọng số cao (MBSs) từ ba kênh màu Red, Green, Blue để đánh dấu dữ liệu trong điểm ảnh Khi 7 bit của tin mật trùng với 7 bit MBSs của một trong ba kênh, các bit LSBs sẽ được sử dụng để xác định sự hiện diện của dữ liệu Hai kênh màu sẽ được chọn làm kênh chỉ báo, với LSB của chúng đánh dấu thông tin trong bất kỳ kênh màu nào Để quyết định kênh chỉ báo cho mỗi ký tự của tin mật, một số giả ngẫu nhiên sẽ được tạo ra và chuyển đổi thành chuỗi bit nhị phân Số lượng bit 1 và 0 sẽ được đếm để xác định tính chẵn lẻ của chuỗi, từ đó lựa chọn kênh chỉ báo phù hợp, như được thể hiện trong bảng 3.1.

Bảng 3.1 Tiêu chuẩn lựa chọn kênh chỉ báo

Trường hợp Đặt chỉ báo kênh

Loại 1 (tính chẵn lẻ là chẵn)

Loại 2 (tính chẵn lẻ là lẻ)

Số các số 1 nhiều hơn số các số 0 RG RG GR

Số các số 0 nhiều hơn số các số 1 GB GB BG

Số lượng các số 0 tương đương với số lượng các số 1 trong quá trình ẩn thông tin bằng kỹ thuật LSB Đầu tiên, chiều dài của tin được ẩn trong hàng đầu tiên của ảnh Bắt đầu từ điểm ảnh đầu tiên của hàng thứ hai, chúng ta so sánh ký tự đầu tiên của tin với 7 MSBs của ba thành phần màu Red, Green, Blue của điểm ảnh Nếu có sự tương ứng với bất kỳ kênh màu nào, giá trị của các kênh chỉ báo sẽ được thiết lập theo tiêu chí trong bảng 3.2 Thủ tục này được lặp lại cho các điểm ảnh tiếp theo của hình ảnh gốc.

Bảng 3.2 Tiêu chuẩn để đặt giá trị kênh chỉ báo

Kênh dữ liệu Chỉ báo LSB 1 Chỉ báo LSB 2

Thuật toán giấu văn bản trong ảnh

- Văn bản cần giấu Đầu ra:

Các bước thực hiện thuật toán:

Bước 1: Đọc ảnh gốc và chuyển đổi tin mật thành mã ASCII, sau đó lưu vào mảng C Bước 2: Tính chiều dài của tin và lưu vào biến L, sau đó giấu chiều dài tin vào hàng đầu tiên của ảnh gốc bằng kỹ thuật LSB.

Bước 3: Bắt đầu từ điểm ảnh đầu tiên của hàng thứ hai ảnh gốc

Bước 4: Ký tự rút ra từ C lưu trữ trong một biến tạm thời B

Bước 5: Chọn cặp kênh chỉ báo, phụ thuộc vào số giả ngẫu nhiên

Bước 6: Nếu ký tự tương ứng với 7 MSB của một trong ba kênh, thiết lập giá trị của các kênh chỉ báo và giảm L xuống 1 trước khi chuyển đến điểm ảnh tiếp theo Nếu ký tự không phù hợp với bất kỳ kênh nào, đặt giá trị của các kênh chỉ báo bằng 1 và tiếp tục đến điểm ảnh tiếp theo, quay lại bước 5.

Bước 7: Kiểm tra xem L có lớn hơn 0 hay không Nếu có đi đến bước 4 Ngược lại kết thúc thuật toán

Hình 3.1: Sơ đồ quá trình giấu tin Đọc ảnh gốc, đọc tin mật, chuyển thành mã ASCII

Rút ra chiều dài của tin mật Ẩn vào hàng đầu tiên của ảnh gốc

Bắt đầu hàng 2 của ảnh gốc

Ký tự tiếp theo của tin đặt trong

B Tiếp đến Pixel tiếp theo

Tìm cặp kênh chỉ báo, dựa trên số giả ngẫu nhiên Đặt cả 2 chỉ báo LSB 2 = 0,

L = L-1 Đặt chỉ báo LSB 1= 0 và chỉ báo LSB 2 = 1, L = L-1

Kết thúc Đặt chỉ báo LSB 1= 1và chỉ báo LSB 2 =0, L = L-1 Đi tới pixel tiếp theo Nếu L>0 Đặt LSB kênh chỉ báo =1

Thuật toán tách văn bản trong ảnh

- Ảnh giấu tin Đầu ra:

Quá trình giấu tin phụ thuộc vào giá trị của hàm tạo lập số giả ngẫu nhiên, mà hàm này sẽ sinh ra các số tương tự như trong quá trình giấu tin Từ giá trị của số giả ngẫu nhiên, chúng ta có thể xác định kênh chỉ báo Dựa vào giá trị của các kênh chỉ báo, chúng ta sẽ xác định dữ liệu nằm trong kênh màu nào bằng cách sử dụng bảng 3.2.

Các bước thực hiện thuật toán:

Để giải mã hình ảnh giấu tin, đầu tiên bạn cần đọc các LSB của hàng đầu tiên để xác định giá trị L Sau đó, tiếp tục từ điểm ảnh đầu tiên của hàng thứ hai trong hình ảnh đã được che giấu.

Bước 3: Tìm cặp kênh chỉ báo, phụ thuộc vào số giả ngẫu nhiên Và rút ra chỉ báo LSB1 và chỉ báo LSB2

Nếu giá trị LSB1 và LSB2 là 11, điều này có nghĩa là dữ liệu không tồn tại trong điểm ảnh Ngược lại, dựa vào giá trị của các kênh chỉ báo, ta sẽ rút ra dữ liệu từ các điểm ảnh và lưu vào mảng C Sau đó, giảm giá trị L xuống 1 và tiếp tục đến điểm ảnh kế tiếp.

Bước 5: Kiểm tra xem L có lớn hơn 0 hay không Nếu có đi đến bước 4 Ngược lại thì dừng

Bước 6: Chuyển đổi các giá trị trong C thành các ký tự tương đương

Hình 3.2: Sơ đồ quá trình tách tin.

Dữ liệu trong C Đọc ảnh giấu tin.

Rút ra chiều dài của tin lưu trong hàng đầu của ảnh giấu tin.

Bắt đầu hàng tiếp theo của ảnh gốc Tìm cặp chỉ báo kênh dựa trên số giả ngẫu nhiên Rút ra 2 chỉ số của LSB

Dữ liệu rút ra từ kênh Red lưu trữ trong C L=L-1

Dữliệu rút ra từ kênh Green lưu trữ trong C L=L-1 Giá trị = 01

Kết thúc Đi tới pixel tiếp theo

Dữ liệu không giấu trong điểm ảnh

Dữ liệu rút ra từ kênh Blue lưu trữ trong C L=L-1

CÀI ĐẶT VÀ THỬ NGHIỆM

Môi trường cài đặt

 Hệ điều hành Windown XP/Vista/7

 Cấu hình: bộ vi xử lý Core Duo trở lên, Ram 1Gb

 Ngôn ngữ cài đặt: ngôn ngữ lập trình Matlab

 Môi trường soạn thảo: Matlab R2008b.

Tập dữ liệu thử nghiệm

Tập dữ liệu thử nghiệm bao gồm các hình ảnh bitmap 24 bit với kích thước khác nhau, được thu thập từ mạng, gồm các tệp: bamboon.bmp, lena.bmp, banh.bmp, banhoa.bmp, hoa1.bmp, hoa2.bmp, vuonhoa.bmp, nen.bmp, conmeo.bmp, và bonghoa.bmp.

Hình 4.1 Tập hình ảnh thử nghiệm

Đo độ đánh giá PSNR

Chất lượng hình ảnh sau khi ẩn thông tin được xác định thông qua chỉ số PSNR (Tỷ số tín hiệu đỉnh trên nhiễu).

PSNR (Peak Signal-to-Noise Ratio) được xác định qua lỗi bình phương trung bình (MSE - Mean Squared Error) giữa hai hình ảnh bitmap I và K, trong đó I là hình ảnh gốc và K là hình ảnh chứa tin Đối với ảnh bitmap có kích thước m x n và 3 kênh màu RGB, công thức tính MSE được áp dụng như sau:

2 m i n j j i KR j i nR IR MSER mR

2 m i n j j i KG j i nR IG MSEG mR

2 m i n j j i KB j i nR IB MSEB mR n MSEB m

PSNR được tính như sau :

Giá trị tối đa của pixel trên ảnh, ký hiệu là MAX I, là 255 khi các pixel được biểu diễn bằng 8 bits Trong trường hợp tổng quát, khi tín hiệu được mã hóa bằng B bits trên một đơn vị lấy mẫu, giá trị MAX I sẽ được tính bằng công thức 2^B - 1.

Khi hai hình ảnh giống hệt nhau, MSE sẽ bằng 0 và PSNR đi đến vô hạn

Một số giao diện của chương trình

Hình 4.2 Hình ảnh giao diện chính

Giao diện chính gồm các chức năng:

Giao diện giấu văn bản:

Để giấu văn bản trong ảnh, người dùng cần nhập ảnh gốc và tệp văn bản, sau đó chọn vị trí lưu trữ cho ảnh đã được giấu tin và tiến hành thực hiện quá trình giấu tin.

Hình 4.4 Giao diện chọn ảnh gốc

Giao diện tách văn bản

Để tách văn bản từ ảnh giấu tin, người dùng cần chọn ảnh cần xử lý và chỉ định nơi lưu trữ văn bản đã được tách ra.

Giao diện kiểm tra PSNR

Kết quả kiểm tra PSNR

Bảng 4.1 Kết quả PSNR khi tăng kích cỡ dữ liệu mật Tên ảnh

Giấu 116 ký tự Giấu 221 ký tự Giấu 400 ký tự

Lena.bmp 83,6837 78,1351 74,4447 banhoa.bmp 70,6465 70,0484 68,7673 vuonhoa.bmp 88,0806 83,5877 80,1678

Bảng 4.1 cho thấy giá trị PSNR khác nhau khi giấu văn bản trong ảnh Số lượng ký tự ít hơn dẫn đến PSNR cao hơn, chứng tỏ chất lượng dữ liệu khôi phục tốt hơn Kết quả cho thấy PSNR > 40 cho thấy chất lượng hình ảnh sau khi giấu tin là tốt.

Ngày đăng: 05/08/2021, 21:05

Nguồn tham khảo

Tài liệu tham khảo Loại Chi tiết
[2] Ingemar Cox, Jeffrey Bloom, Matthew Miller, Ton Kalker, Lessica Fridrich “DigitalWatermarking anh Steganography” - Morgan Kaufmann, 2008 Sách, tạp chí
Tiêu đề: “DigitalWatermarking anh Steganography” -
[3] Sukhpreet Kaur, Smeet Kaur “A Novel Approach for Hiding Text Using Image Steganography” – International Journal of computer science anh information security (IJSCIS), Vol.8, No.7, October 2010 Sách, tạp chí
Tiêu đề: “A Novel Approach for Hiding Text Using Image Steganography”
[4] T. Morkel, J.H.P. Eloff and M.S. Olivier "An overview of image steganography" - in Proceedings of the Fifth Annual Information Security South Africa Conference (ISSA2005), Sandton, South Africa, June/July 2005 Sách, tạp chí
Tiêu đề: An overview of image steganography
[5] Adnan Gutub, Ayed Al-Qahtani, Abdulaziz Tabakh “Triple-A: secure RGB image steganography based on randomization” AICCSA, IEEE/ACS International Conference on Computer Systems and Applications, pp. 400-403, 2009 Sách, tạp chí
Tiêu đề: Triple-A: secure RGB image steganography based on randomization
[6] A. Kaur, R. Dhir, G. Sikka,” A new image steganography based on first component alteration technique”, International Journal of Computer Science and Information Security (IJCSIS), vol. 6, pp. 53-56, 2009 Sách, tạp chí
Tiêu đề: A new image steganography based on first component alteration technique
[7] M.T.Parvez , A. Gutub , "RGB intensity based variable-bits image steganography", APSCC 2008 –Proceedings of 3rd IEEE Asia-Pacific Services Computing Conference, Yilan, Taiwan, December 2008 Sách, tạp chí
Tiêu đề: RGB intensity based variable-bits image steganography
[8] Nameer N.EL-Emam, “Hiding a large amount of data with high security using steganography algorithm” Journal of Computer Science, vol.3 pp.223-232, 2007 Sách, tạp chí
Tiêu đề: Hiding a large amount of data with high security using steganography algorithm
[9] Mohammed A.F. Al-Husainy, “Image steganography by mapping pixels to letters” Journal of Computer Science, vol. 5, pp. 33-38, 2009 Sách, tạp chí
Tiêu đề: Image steganography by mapping pixels to letters
[10] A. Ibraheem Abdul-Sada, “Hiding data using LSB-3” J.Basrah Researches (Sciences), vol. 33, pp. 81-88, December, 2007 Sách, tạp chí
Tiêu đề: Hiding data using LSB-3

HÌNH ẢNH LIÊN QUAN

DANH MỤC BẢNG BIỂU - Luận văn nghiên cứu một giải pháp giấu văn bản trong ảnh
DANH MỤC BẢNG BIỂU (Trang 4)
IMG Image Hình ảnh - Luận văn nghiên cứu một giải pháp giấu văn bản trong ảnh
mage Hình ảnh (Trang 5)
Hình 1.1: Hai lĩnh vực chính của kỹ thuật giấu tin - Luận văn nghiên cứu một giải pháp giấu văn bản trong ảnh
Hình 1.1 Hai lĩnh vực chính của kỹ thuật giấu tin (Trang 7)
1.6. Mô hình kỹ thuật giấu tin trong ảnh. - Luận văn nghiên cứu một giải pháp giấu văn bản trong ảnh
1.6. Mô hình kỹ thuật giấu tin trong ảnh (Trang 11)
Hình 1.3: Mô hình cơ bản tách tin mật - Luận văn nghiên cứu một giải pháp giấu văn bản trong ảnh
Hình 1.3 Mô hình cơ bản tách tin mật (Trang 12)
Hình 1.4. Phân loại các kỹ thuật giấu tin - Luận văn nghiên cứu một giải pháp giấu văn bản trong ảnh
Hình 1.4. Phân loại các kỹ thuật giấu tin (Trang 13)
 Palette màu (bảng màu)  BitmapData (dữ liệu ảnh)  - Luận văn nghiên cứu một giải pháp giấu văn bản trong ảnh
alette màu (bảng màu)  BitmapData (dữ liệu ảnh) (Trang 16)
Palette màu (bảng màu): bảng màu của ảnh, chỉ những ảnh lớn hơn hoặc bằng 8 bit màu mới có Palette màu - Luận văn nghiên cứu một giải pháp giấu văn bản trong ảnh
alette màu (bảng màu): bảng màu của ảnh, chỉ những ảnh lớn hơn hoặc bằng 8 bit màu mới có Palette màu (Trang 17)
Bảng 3.2. Tiêu chuẩn để đặt giá trị kênh chỉ báo - Luận văn nghiên cứu một giải pháp giấu văn bản trong ảnh
Bảng 3.2. Tiêu chuẩn để đặt giá trị kênh chỉ báo (Trang 20)
Bảng 3.1. Tiêu chuẩn lựa chọn kênh chỉ báo - Luận văn nghiên cứu một giải pháp giấu văn bản trong ảnh
Bảng 3.1. Tiêu chuẩn lựa chọn kênh chỉ báo (Trang 20)
Hình 3.1: Sơ đồ quá trình giấu tin - Luận văn nghiên cứu một giải pháp giấu văn bản trong ảnh
Hình 3.1 Sơ đồ quá trình giấu tin (Trang 22)
Hình 3.2: Sơ đồ quá trình tách tin. - Luận văn nghiên cứu một giải pháp giấu văn bản trong ảnh
Hình 3.2 Sơ đồ quá trình tách tin (Trang 24)
 Cấu hình: bộ vi xử lý Core Duo trở lên, Ram 1Gb.. Ngôn ngữ cài đặt: ngôn ngữ lập trình Matlab - Luận văn nghiên cứu một giải pháp giấu văn bản trong ảnh
u hình: bộ vi xử lý Core Duo trở lên, Ram 1Gb.. Ngôn ngữ cài đặt: ngôn ngữ lập trình Matlab (Trang 25)
Khi hai hình ảnh giống hệt nhau, MSE sẽ bằng và PSNR đi đến vô hạn - Luận văn nghiên cứu một giải pháp giấu văn bản trong ảnh
hi hai hình ảnh giống hệt nhau, MSE sẽ bằng và PSNR đi đến vô hạn (Trang 26)
Hình 4.2. Hình ảnh giao diện chính Giao diện chính gồm các chức năng:  - Luận văn nghiên cứu một giải pháp giấu văn bản trong ảnh
Hình 4.2. Hình ảnh giao diện chính Giao diện chính gồm các chức năng: (Trang 27)
Hình 4.3. Giao diện giấu văn bản trong ảnh - Luận văn nghiên cứu một giải pháp giấu văn bản trong ảnh
Hình 4.3. Giao diện giấu văn bản trong ảnh (Trang 27)
Hình 4.4 Giao diện chọn ảnh gốc - Luận văn nghiên cứu một giải pháp giấu văn bản trong ảnh
Hình 4.4 Giao diện chọn ảnh gốc (Trang 28)
Hình 4.5. Tệp văn bản - Luận văn nghiên cứu một giải pháp giấu văn bản trong ảnh
Hình 4.5. Tệp văn bản (Trang 28)
Bảng 4.1. Kết quả PSNR khi tăng kích cỡ dữ liệu mật - Luận văn nghiên cứu một giải pháp giấu văn bản trong ảnh
Bảng 4.1. Kết quả PSNR khi tăng kích cỡ dữ liệu mật (Trang 29)
Hình 4.7. Giao diện kiểm tra PSNR - Luận văn nghiên cứu một giải pháp giấu văn bản trong ảnh
Hình 4.7. Giao diện kiểm tra PSNR (Trang 29)

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

TÀI LIỆU LIÊN QUAN

w