Luận văn thạc sĩ: Nghiên cứu một số thuật toán giấu tin trong ảnh số

Tổng quan chi tiết về các thuật toán giấu tin trong ảnh số. Phân tích các kỹ thuật phổ biến và ứng dụng trong bảo mật, bảo vệ bản quyền thông tin.

Trường đại học

Trường Đại học Duy Tân

Chuyên ngành

Khoa học máy tính

Người đăng

Ẩn danh

Thể loại

Luận văn thạc sĩ khoa học máy tính

2021

83
2
0

Phí lưu trữ

30 Point

Mục lục chi tiết

LỜI CẢM ƠN

LỜI CAM ĐOAN

DANH MỤC CÁC TỪ VIẾT TẮT

DANH MỤC CÁC HÌNH VẼ

MỞ ĐẦU

0.1. Lý do chọn đề tài

0.2. Mục tiêu và nhiệm vụ

0.3. Đối tượng và phạm vi nghiên cứu

0.4. Phương pháp nghiên cứu

0.5. Ý nghĩa khoa học và thực tiễn của đề tài

0.6. Bố cục của luận văn

1. CHƯƠNG 1: GIẤU THÔNG TIN

1.1. GIẤU THÔNG TIN

1.1.1. Định nghĩa về giấu tin

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

1.1.3. Các thành phần của hệ giấu tin

1.2. CÁC TÍNH CHẤT HỆ GIẤU TIN

1.2.1. Tính “vô hình” (tính bí mật)

1.2.2. Khả năng chống giả mạo (tính toàn vẹn)

1.2.3. Tính bền vững

1.2.4. Dung lượng tin giấu

1.2.5. Độ phức tạp tính toán

1.3. PHÂN LOẠI GIẤU TIN

1.4. TẤN CÔNG HỆ THỐNG GIẤU TIN

1.5. CÁC ỨNG DỤNG CỦA GIẤU TIN

1.5.1. Liên lạc bí mật

1.5.2. Bảo vệ bản quyền (copyright protection)

1.5.3. Nhận thực hay phát hiện xuyên tạc thông tin (authentication and tamper detection)

1.5.4. Dấu vân tay hay dán nhãn (fingerprinting and labeling)

1.5.5. Điều khiển sao chép (copy control)

1.6. Tóm tắt chương 1

2. CHƯƠNG 2: ẢNH SỐ VÀ CÁC KỸ THUẬT GIẤU TIN TRONG ẢNH SỐ

2.1. CÁC MÔ HÌNH MÀU VÀ BIỂU DIỄN ẢNH TRÊN MÁY TÍNH

2.1.1. Mô hình màu RGB

2.1.2. Mô hình màu CMY

2.1.3. Biểu diễn ảnh trong máy tính

2.2. CÁC KỸ THUẬT BỔ TRỢ CHO GIẤU TIN

2.2.1. Các phép biến đổi từ miền thời gian sang miền tần số

2.2.2. Xáo trộn dữ liệu mật

2.2.3. Sinh chuỗi giả ngẫu nhiên

2.2.4. Các độ đo khi thực hiện giấu tin

2.3. CÁC PHƯƠNG PHÁP GIẤU TIN TRONG ẢNH SỐ

2.3.1. Giấu tin trong ảnh đen trắng

2.3.2. Giấu tin trong ảnh màu

2.4. MỘT SỐ KỸ THUẬT GIẤU TIN TRONG ẢNH MÀU

2.4.1. Kỹ thuật gài vào các bit có trọng số thấp

2.4.2. Kỹ thuật giấu tin dựa trên bảng màu

2.4.3. Kỹ thuật trải phổ

2.4.4. Kỹ thuật mã khối bề mặt

2.4.5. Kỹ thuật mảnh chắp (patchwork)

2.4.6. Kỹ thuật dùng hệ số của phép chiếu trực giao

2.4.7. Kỹ thuật dùng hệ số DCT

2.4.8. Kỹ thuật lượng hóa lỗi

2.4.9. Kỹ thuật mặt nạ và lọc

2.4.10. Kỹ thuật rải vào miền tần số

2.4.11. Kỹ thuật giấu vào các đối tượng dùng các hệ số của phép biến đổi hình học

2.5. Tóm tắt chương 2

3. CHƯƠNG 3: CÀI ĐẶT THUẬT TOÁN GIẤU TIN

3.1. PHƯƠNG PHÁP GIẤU MỘT BYTE DỮ LIỆU TRONG KHỐI ẢNH 16*16

3.1.1. Tính tổng xor của khối ảnh B

3.1.2. Thuật toán giấu một byte dữ liệu vào trong khối ảnh 16*16

3.1.3. Thuật toán giấu tin

3.1.4. Thuật toán giải tin

3.1.5. Đánh giá thuật toán

3.2. PHƯƠNG PHÁP GIẤU BẰNG CÁCH ĐIỀU CHỈNH CÁC HỆ SỐ PHÉP BIẾN ĐỔI DCT

3.2.1. Thuật toán giấu tin

3.2.2. Thuật toán trích tin theo phương pháp điều chỉnh giá trị nhóm bit

3.2.3. Đánh giá phương pháp giấu tin

3.3. Tóm tắt chương 3

DANH MỤC TÀI LIỆU THAM KHẢO

PHỤ LỤC

appendix.1. QUYẾT ĐỊNH GIAO ĐỀ TÀI (Bản sao)

Tóm tắt

I. Khám phá thuật toán giấu tin Steganography là gì

Trong kỷ nguyên số, việc bảo vệ thông tin trở nên cấp thiết hơn bao giờ hết. Hai lĩnh vực chính đảm nhận nhiệm vụ này là mật mã học (cryptography)kỹ thuật giấu tin (steganography). Nếu mật mã học tập trung vào việc mã hóa thông điệp để không ai có thể đọc được nội dung, thì steganography là gì? Đó là nghệ thuật và khoa học về việc che giấu dữ liệu trong một đối tượng khác, khiến sự tồn tại của thông điệp trở nên vô hình. Mục tiêu chính của kỹ thuật này không phải là làm cho thông điệp khó đọc, mà là che giay sự hiện diện của nó. Một hệ thống giấu tin cơ bản bao gồm ba thành phần cốt lõi: thông điệp bí mật cần giấu, ảnh bìa (cover image) – môi trường dùng để che giấu, và ảnh stego (stego image) – là ảnh bìa sau khi đã được nhúng thông điệp. Đôi khi, một khóa bí mật (stego-key) được sử dụng để tăng cường bảo mật, đảm bảo chỉ người nhận có khóa mới có thể trích xuất thông tin. Mặc dù thường bị nhầm lẫn, steganographythủy vân số (digital watermarking) có mục đích khác biệt. Steganography ưu tiên bảo vệ thông điệp bí mật, với yêu cầu cao nhất là tính vô hình (invisibility). Ngược lại, thủy vân số lại tập trung bảo vệ chính đối tượng chứa tin (ảnh bìa), với mục tiêu là đánh dấu bản quyền, xác thực và yêu cầu độ bền vững của thuật toán phải rất cao để chống lại các tấn công xóa bỏ. Luận văn của Nguyễn Văn Nhớ (2021) đã hệ thống hóa các khái niệm này, nhấn mạnh rằng sự lựa chọn giữa hai kỹ thuật phụ thuộc hoàn toàn vào mục đích sử dụng cuối cùng: truyền tin bí mật hay bảo vệ sở hữu trí tuệ.

1.1. Phân biệt kỹ thuật giấu tin và mật mã học Cryptography

Kỹ thuật giấu tinmật mã học đều là các phương pháp bảo mật thông tin, nhưng hoạt động theo những nguyên lý cơ bản khác nhau. Mục tiêu của mật mã học là bảo vệ nội dung của một thông điệp. Nó biến đổi dữ liệu gốc (plaintext) thành một dạng không thể đọc được (ciphertext) bằng một thuật toán mã hóa và một khóa. Bất kỳ ai chặn được thông điệp mã hóa cũng sẽ biết có một thông điệp đang được truyền đi, nhưng không thể hiểu nội dung nếu không có khóa giải mã. Ngược lại, mục tiêu của steganography là che giấu sự tồn tại của thông điệp. Thay vì biến đổi nội dung, nó nhúng thông điệp bí mật vào một phương tiện khác như ảnh, âm thanh, video một cách kín đáo. Kẻ tấn công khi quan sát ảnh stego sẽ không nhận thấy bất kỳ điều gì bất thường. Về bản chất, cryptography tạo ra một thông điệp vô nghĩa, trong khi steganography tạo ra một sự im lặng, một sự vô hình. Trong thực tế, hai kỹ thuật này thường được kết hợp để đạt hiệu quả bảo mật tối đa: thông điệp được mã hóa trước bằng cryptography, sau đó bản mã hóa này được giấu vào một ảnh bìa bằng steganography.

1.2. Các thành phần chính Ảnh bìa thông điệp và ảnh stego

Một hệ thống giấu tin hoàn chỉnh được cấu thành từ các yếu tố cơ bản. Đầu tiên là thông điệp bí mật (secret message), đây là dữ liệu cần được che giấu, có thể ở dạng văn bản, hình ảnh, hoặc bất kỳ chuỗi bit nào. Thứ hai là ảnh bìa (cover image), là phương tiện truyền tải, đóng vai trò vỏ bọc cho thông điệp. Chất lượng của ảnh bìa, như kích thước, độ phức tạp và định dạng, ảnh hưởng trực tiếp đến khả năng che giấu dữ liệu. Các ảnh có nhiều chi tiết và màu sắc đa dạng thường là lựa chọn tốt hơn các ảnh có vùng màu đồng nhất. Cuối cùng, ảnh stego (stego image) là kết quả cuối cùng của quá trình nhúng tin, tức là ảnh bìa đã chứa thông điệp bí mật. Về mặt thị giác, ảnh stego phải giống hệt hoặc gần như không thể phân biệt được với ảnh bìa gốc. Quá trình này được thực hiện bởi một thuật toán nhúng, và quá trình ngược lại, lấy thông điệp ra khỏi ảnh stego, được gọi là thuật toán trích xuất. Một số hệ thống còn sử dụng khóa (stego-key) để xác định vị trí nhúng tin, tăng cường khả năng chống lại việc phát hiện tin giấu.

II. Top 3 thách thức lớn của các thuật toán che giấu dữ liệu

Việc thiết kế một thuật toán giấu tin hiệu quả đòi hỏi phải cân bằng giữa ba yếu tố cốt lõi nhưng lại mâu thuẫn lẫn nhau: tính vô hình, dung lượng nhúngđộ bền vững của thuật toán. Mối quan hệ tay ba này được ví như một tam giác cân bằng, khi tăng một yếu tố thường phải hy sinh các yếu tố còn lại. Thách thức đầu tiên và quan trọng nhất là tính vô hình (imperceptibility). Ảnh stego sau khi nhúng tin phải không gây ra bất kỳ sự nghi ngờ nào cho mắt người. Mọi sự thay đổi so với ảnh gốc phải ở dưới ngưỡng nhận biết của thị giác. Các độ đo khách quan như độ đo PSNR (Peak Signal-to-Noise Ratio) thường được sử dụng để đánh giá mức độ sai khác, với giá trị PSNR càng cao thì chất lượng ảnh càng tốt. Thách thức thứ hai là dung lượng nhúng (capacity), tức là lượng thông tin tối đa có thể được giấu vào ảnh bìa mà không vi phạm yêu cầu về tính vô hình. Các ứng dụng truyền tin bí mật đòi hỏi dung lượng cao, trong khi thủy vân số có thể chỉ cần dung lượng thấp. Thách thức cuối cùng là độ bền vững (robustness), là khả năng của thông điệp bí mật tồn tại sau khi ảnh stego trải qua các phép xử lý thông thường như nén (đặc biệt là nén JPEG), thay đổi kích thước, cắt xén, hoặc các tấn công có chủ đích. Cuộc chiến không ngừng giữa kỹ thuật giấu tin và steganalysis – nghệ thuật phát hiện tin giấu – cũng là một thách thức lớn, buộc các nhà nghiên cứu phải liên tục cải tiến thuật toán để chống lại các phương pháp phân tích thống kê ngày càng tinh vi.

2.1. Yêu cầu về tính vô hình và dung lượng nhúng của thuật toán

Tính vô hình là tiêu chí nền tảng của steganography. Một thuật toán được coi là thất bại nếu sự khác biệt giữa ảnh bìaảnh stego có thể dễ dàng nhận ra bằng mắt thường. Để lượng hóa tiêu chí này, các nhà nghiên cứu sử dụng độ đo PSNR. Một giá trị PSNR trên 30dB thường được xem là chấp nhận được, cho thấy sự thay đổi là rất nhỏ. Trong khi đó, dung lượng nhúng lại là một yêu cầu thực tiễn, xác định tính hữu dụng của thuật toán trong các kịch bản khác nhau. Hai yếu tố này có mối quan hệ nghịch đảo: việc cố gắng nhúng quá nhiều dữ liệu (tăng dung lượng) sẽ làm thay đổi cấu trúc của ảnh gốc một cách đáng kể, từ đó làm giảm tính vô hình và tăng nguy cơ bị phát hiện tin giấu. Ví dụ, thuật toán LSB đơn giản có thể đạt được dung lượng nhúng rất cao nhưng lại dễ bị phát hiện bởi các phân tích thống kê. Ngược lại, các thuật toán phức tạp hơn trong miền tần số có thể đảm bảo tính vô hình tốt hơn nhưng thường phải hy sinh dung lượng.

2.2. Đảm bảo độ bền vững trước các tấn công biến đổi ảnh

Độ bền vững của thuật toán là khả năng chống lại các thay đổi có thể xảy ra với ảnh stego. Các thay đổi này có thể là vô tình, như khi người dùng nén ảnh để tiết kiệm dung lượng (ví dụ nén JPEG) hoặc thay đổi kích thước để đăng lên mạng xã hội. Chúng cũng có thể là cố ý, khi kẻ tấn công chủ động thêm nhiễu, cắt xén hoặc áp dụng các bộ lọc để phá hủy thông điệp bí mật. Yêu cầu về độ bền vững đặc biệt quan trọng đối với các ứng dụng thủy vân số, nơi dấu bản quyền phải tồn tại bền bỉ cùng sản phẩm. Các kỹ thuật giấu tin miền không gian như LSB thường rất yếu về độ bền vững, vì chỉ một thay đổi nhỏ trên ảnh cũng có thể phá hủy hoàn toàn dữ liệu được giấu ở các bit ít quan trọng. Ngược lại, các phương pháp giấu tin miền tần số, bằng cách nhúng dữ liệu vào các hệ số quan trọng của phép biến đổi như biến đổi DCT hoặc biến đổi DWT, cho thấy độ bền vững cao hơn đáng kể trước các loại tấn công phổ biến.

2.3. Steganalysis Cuộc chiến giữa giấu tin và phát hiện tin giấu

Steganalysis là lĩnh vực đối nghịch với steganography, tập trung vào việc phát triển các phương pháp để phát hiện tin giấu. Một cuộc tấn công steganalysis được coi là thành công nếu nó có thể xác định được rằng một đối tượng (ảnh) có chứa thông tin ẩn, ngay cả khi không thể trích xuất được thông điệp đó. Các nhà phân tích sử dụng nhiều kỹ thuật khác nhau, từ phân tích trực quan (tìm kiếm các điểm bất thường) đến các phương pháp thống kê phức tạp. Ví dụ, việc phân tích biểu đồ tần suất của các cặp giá trị pixel có thể tiết lộ dấu vết của thuật toán LSB. Các phương pháp hiện đại hơn sử dụng học máy và mạng nơ-ron để tự động học các đặc trưng tinh vi phân biệt giữa ảnh gốc và ảnh stego. Cuộc chiến này thúc đẩy sự phát triển của cả hai lĩnh vực: các thuật toán giấu tin mới phải được thiết kế để vượt qua các công cụ steganalysis mới nhất, trong khi các nhà phân tích lại liên tục tìm kiếm những điểm yếu trong các kỹ thuật che giấu dữ liệu tiên tiến.

III. Hướng dẫn giấu tin miền không gian với thuật toán LSB

Giấu tin miền không gian (spatial domain) là nhóm các phương pháp can thiệp trực tiếp vào giá trị các điểm ảnh (pixel) của ảnh bìa. Trong số này, kỹ thuật thay thế bit trọng số thấp nhất, hay thuật toán LSB (Least Significant Bit), là phương pháp phổ biến và dễ hiểu nhất. Nguyên lý của nó rất đơn giản: mỗi pixel trong ảnh số được biểu diễn bằng một chuỗi các bit; bit cuối cùng trong chuỗi này (LSB) có ảnh hưởng ít nhất đến màu sắc tổng thể của pixel. Việc thay đổi bit này tạo ra một sự khác biệt thị giác rất nhỏ, gần như không thể nhận thấy. Để che giấu dữ liệu, thuật toán sẽ lấy từng bit của thông điệp bí mật và thay thế cho bit LSB của các pixel trong ảnh bìa một cách tuần tự hoặc theo một trật tự giả ngẫu nhiên được quyết định bởi khóa bí mật. Ví dụ, trong một ảnh 24-bit (mỗi pixel có 3 kênh màu R-G-B, mỗi kênh 8 bit), chúng ta có thể giấu 3 bit thông điệp vào một pixel bằng cách thay thế bit LSB của mỗi kênh màu. Theo tài liệu của Nguyễn Văn Nhớ (2021), ưu điểm lớn nhất của phương pháp này là sự đơn giản trong cài đặt và dung lượng nhúng cực kỳ cao. Tuy nhiên, điểm yếu chí mạng của nó là độ bền vững của thuật toán rất kém và dễ bị tấn công bởi các phương pháp steganalysis thống kê. Bất kỳ thao tác xử lý ảnh nào, như nén mất dữ liệu JPEG, cũng có thể phá hủy hoàn toàn thông điệp được giấu.

3.1. Nguyên lý hoạt động của phương pháp Least Significant Bit

Phương pháp Least Significant Bit (LSB) hoạt động dựa trên việc sửa đổi các bit ít quan trọng nhất trong biểu diễn nhị phân của giá trị pixel. Trong một byte (8 bit) biểu diễn một kênh màu (ví dụ, giá trị 11010110), bit ngoài cùng bên phải (số 0) là LSB. Thay đổi bit này từ 0 thành 1 (tạo ra giá trị 11010111) chỉ làm thay đổi giá trị thập phân đi 1 đơn vị, một sự thay đổi quá nhỏ để mắt người có thể phân biệt. Quá trình nhúng tin diễn ra như sau: thông điệp bí mật được chuyển thành một chuỗi bit. Sau đó, thuật toán duyệt qua các pixel của ảnh bìa. Tại mỗi pixel (hoặc mỗi kênh màu của pixel), bit LSB hiện tại được thay thế bằng bit tiếp theo trong chuỗi thông điệp. Ví dụ, để giấu ký tự 'A' (mã nhị phân 01000001), thuật toán sẽ cần 8 pixel (hoặc 8 kênh màu) và lần lượt thay thế các bit LSB của chúng bằng 0, 1, 0, 0, 0, 0, 0, và 1. Quá trình trích xuất chỉ đơn giản là đọc lại các bit LSB từ các pixel tương ứng để tái tạo lại thông điệp bí mật.

3.2. Ưu và nhược điểm của kỹ thuật thay thế bit LSB

Kỹ thuật LSB sở hữu những ưu điểm rõ rệt. Thứ nhất là dung lượng nhúng rất lớn. Một ảnh màu 24-bit kích thước 1024x768 có thể giấu được khoảng 2.3 triệu bit (gần 290 KB) dữ liệu chỉ bằng cách sử dụng 1 bit LSB mỗi kênh màu. Thứ hai, thuật toán cực kỳ đơn giản để cài đặt và có tốc độ xử lý nhanh. Tuy nhiên, nhược điểm của nó cũng rất đáng kể. Độ bền vững của thuật toán gần như bằng không; nó không thể chống lại các phép biến đổi ảnh cơ bản như nén JPEG, xoay, hay thay đổi độ sáng. Chỉ cần một thay đổi nhỏ cũng có thể làm sai lệch hoặc mất hoàn toàn thông tin. Thêm vào đó, nó rất dễ bị phát hiện tin giấu. Các công cụ steganalysis có thể phân tích sự phân bố thống kê của các giá trị pixel và dễ dàng tìm ra các mẫu bất thường do việc thay thế LSB gây ra. Do đó, thuật toán LSB chỉ phù hợp cho các ứng dụng truyền tin bí mật trên kênh an toàn, nơi ảnh stego không có nguy cơ bị chỉnh sửa.

IV. Phương pháp giấu tin miền tần số DCT và DWT hiệu quả

Trái ngược với việc thao tác trực tiếp trên pixel, giấu tin miền tần số (frequency domain) hoạt động bằng cách biến đổi ảnh từ miền không gian sang một miền biểu diễn khác, nơi dữ liệu được phân tách theo các thành phần tần số. Các thành phần tần số thấp đại diện cho các vùng màu sắc và cấu trúc tổng thể của ảnh, trong khi các thành phần tần số cao đại diện cho các chi tiết, cạnh và nhiễu. Ưu điểm chính của phương pháp này là độ bền vững của thuật toán vượt trội. Bằng cách nhúng thông điệp bí mật vào các hệ số tần số trung bình hoặc thấp, thông tin sẽ được phân tán khắp ảnh và trở nên kiên cường hơn trước các tấn công như nén, lọc hay thêm nhiễu. Hai phép biến đổi phổ biến nhất được sử dụng là biến đổi DCT (Discrete Cosine Transform) và biến đổi DWT (Discrete Wavelet Transform). Biến đổi DCT là nền tảng của chuẩn nén ảnh JPEG. Kỹ thuật giấu tin sẽ sửa đổi một cách tinh vi các hệ số DCT lượng tử hóa, đặc biệt là các hệ số tần số trung bình, để nhúng dữ liệu. Biến đổi DWT cung cấp một phân tích đa độ phân giải, cho phép xác định chính xác hơn các vùng của ảnh phù hợp để giấu tin mà ít ảnh hưởng đến chất lượng thị giác. Mặc dù phức tạp hơn và có dung lượng nhúng thấp hơn so với thuật toán LSB, các phương pháp miền tần số mang lại sự cân bằng tốt hơn giữa tính vô hình và độ bền vững, khiến chúng trở thành lựa chọn ưu tiên cho các ứng dụng thủy vân số và các hệ thống giấu tin đòi hỏi sự an toàn cao.

4.1. Cách che giấu dữ liệu bằng biến đổi DCT trong ảnh JPEG

Quá trình nén JPEG chia ảnh thành các khối 8x8 pixel. Mỗi khối sau đó được áp dụng biến đổi DCT, chuyển đổi 64 giá trị pixel thành 64 hệ số DCT. Các hệ số này biểu thị các tần số khác nhau, từ tần số thấp (góc trên bên trái, đại diện cho màu sắc chung của khối) đến tần số cao (góc dưới bên phải, đại diện cho chi tiết). Kỹ thuật giấu tin dựa trên DCT thường nhắm vào các hệ số tần số trung bình. Lý do là vì các hệ số tần số thấp quá quan trọng, thay đổi chúng sẽ làm hỏng ảnh rõ rệt. Ngược lại, các hệ số tần số cao thường bị loại bỏ hoặc làm tròn mạnh trong quá trình lượng tử hóa của JPEG, khiến cho tin giấu dễ bị mất. Bằng cách sửa đổi nhẹ các hệ số ở dải tần trung bình, dữ liệu nhúng có thể tồn tại qua quá trình nén và ít ảnh hưởng đến chất lượng ảnh. Ví dụ, một bit thông điệp có thể được giấu bằng cách điều chỉnh một hệ số DCT được chọn để nó trở thành số chẵn (đại diện cho bit 0) hoặc số lẻ (đại diện cho bit 1). Cách tiếp cận này giúp tăng độ bền vững một cách đáng kể.

4.2. Khai thác biến đổi DWT để tăng cường độ bền vững cho tin giấu

Biến đổi DWT (Discrete Wavelet Transform) phân tách tín hiệu ảnh thành các băng tần con ở các mức độ phân giải khác nhau. Ở mỗi cấp độ, ảnh được chia thành bốn thành phần: LL (xấp xỉ, tần số thấp), LH (chi tiết ngang), HL (chi tiết dọc) và HH (chi tiết chéo). Thành phần LL chứa đựng năng lượng chính và thông tin quan trọng nhất của ảnh, trong khi các thành phần còn lại chứa các chi tiết. Kỹ thuật giấu tin sử dụng DWT thường nhúng dữ liệu vào các hệ số trong các băng tần chi tiết (LH, HL, HH). Việc này có lợi thế là các thay đổi sẽ được tích hợp vào các vùng có kết cấu phức tạp hoặc cạnh của ảnh, nơi mà hệ thống thị giác con người kém nhạy cảm hơn. Điều này giúp cải thiện tính vô hình so với việc thay đổi các hệ số DCT một cách đồng đều. Hơn nữa, vì DWT có khả năng định vị tốt cả về không gian và tần số, nó cho phép các thuật toán nhúng thông tin một cách thông minh hơn, từ đó tăng cường độ bền vững của thuật toán trước các cuộc tấn công cục bộ như cắt xén.

V. Các ứng dụng thực tiễn của kỹ thuật giấu tin trong ảnh

Các thuật toán giấu tin trong ảnh số có nhiều ứng dụng quan trọng trong thế giới thực, vượt ra ngoài các kịch bản lý thuyết. Một trong những ứng dụng nổi bật nhất là thủy vân số (digital watermarking) để bảo vệ bản quyền. Các nhiếp ảnh gia, nghệ sĩ và các hãng truyền thông có thể nhúng một thông tin nhận dạng (watermark) vô hình vào các tác phẩm số của họ. Dấu vân này có thể được sử dụng làm bằng chứng sở hữu trí tuệ, theo dõi sự phân phối trái phép hoặc xác thực tính nguyên gốc của tác phẩm. Để phục vụ mục đích này, độ bền vững của thuật toán là yêu cầu hàng đầu. Một ứng dụng quan trọng khác là giao tiếp bí mật. Các cơ quan chính phủ, quân đội, nhà báo hoặc các nhà hoạt động có thể sử dụng steganography để gửi các thông điệp bí mật qua các kênh công cộng như internet mà không gây sự chú ý. Bằng cách che giấu dữ liệu trong các bức ảnh vô hại, họ tránh được sự kiểm duyệt và giám sát. Ngoài ra, kỹ thuật giấu tin còn được dùng để xác thực dữ liệu và phát hiện xuyên tạc. Một dấu vân số "dễ vỡ" (fragile watermark) có thể được nhúng vào ảnh. Bất kỳ sự thay đổi nào đối với ảnh, dù là nhỏ nhất, cũng sẽ phá hủy dấu vân này, qua đó báo hiệu rằng dữ liệu đã bị can thiệp. Các ứng dụng khác bao gồm dán nhãn siêu dữ liệu ẩn trong ảnh y tế hoặc điều khiển sao chép trong các phương tiện truyền thông kỹ thuật số.

5.1. Thủy vân số Digital Watermarking để bảo vệ bản quyền

Thủy vân số là ứng dụng mà trong đó kỹ thuật giấu tin được sử dụng để bảo vệ chính ảnh bìa. Một watermark, có thể là logo, chuỗi văn bản hoặc mã nhận dạng, được nhúng vào ảnh. Có hai loại thủy vân chính: hữu hình (visible) và vô hình (invisible). Thủy vân vô hình, sử dụng các nguyên tắc của steganography, được ưa chuộng hơn vì nó không làm ảnh hưởng đến trải nghiệm xem ảnh. Yêu cầu quan trọng nhất đối với ứng dụng này là độ bền vững. Watermark phải tồn tại được sau các thao tác xử lý ảnh phổ biến như nén, cắt xén, thay đổi kích thước, và cả các cuộc tấn công cố ý nhằm loại bỏ nó. Do đó, các phương pháp giấu tin miền tần số như sử dụng biến đổi DCT hoặc DWT thường được ưu tiên lựa chọn. Bằng cách nhúng watermark vào các thành phần cốt lõi của ảnh, việc loại bỏ nó mà không phá hủy hoàn toàn chất lượng ảnh trở nên cực kỳ khó khăn, đảm bảo hiệu quả bảo vệ bản quyền.

5.2. Giao tiếp bí mật và truyền tải thông điệp bí mật an toàn

Đây là ứng dụng kinh điển và nguyên thủy nhất của steganography. Mục tiêu là truyền một thông điệp bí mật từ người gửi đến người nhận mà không một bên thứ ba nào biết về sự tồn tại của cuộc trao đổi đó. Trong kịch bản này, tính vô hìnhdung lượng nhúng là các yếu tố được ưu tiên hàng đầu. Người gửi sẽ chọn một ảnh bìa thông thường, chẳng hạn như một bức ảnh kỳ nghỉ, và nhúng thông điệp của mình vào đó để tạo ra ảnh stego. Sau đó, họ có thể gửi bức ảnh này qua email, đăng lên mạng xã hội hoặc chia sẻ trên các nền tảng công cộng. Vì bức ảnh trông hoàn toàn bình thường, nó không gây nghi ngờ cho các hệ thống giám sát. Các thuật toán giấu tin như LSB và các biến thể của nó, dù kém bền vững, vẫn có thể hữu ích trong trường hợp này nếu kênh truyền được đảm bảo không làm thay đổi tệp tin. Để tăng cường an ninh, người ta thường mã hóa thông điệp bằng cryptography trước khi giấu nó đi, tạo ra một lớp bảo vệ kép.

VI. Tổng kết và tương lai của lĩnh vực giấu tin trong ảnh số

Lĩnh vực giấu tin trong ảnh số đã có những bước tiến đáng kể, phát triển từ các thuật toán giấu tin đơn giản như thuật toán LSB trong miền không gian đến các kỹ thuật phức tạp và bền vững hơn trong miền tần số sử dụng biến đổi DCTDWT. Mỗi phương pháp đều có những ưu và nhược điểm riêng, tạo ra sự cân bằng giữa ba tiêu chí cốt lõi: tính vô hình, dung lượng nhúngđộ bền vững của thuật toán. Việc lựa chọn thuật toán phù hợp phụ thuộc vào yêu cầu cụ thể của từng ứng dụng, từ thủy vân số bảo vệ bản quyền đến truyền tải thông điệp bí mật. Nhìn về tương lai, lĩnh vực này phải đối mặt với nhiều thách thức và cơ hội mới. Sự phát triển của trí tuệ nhân tạo và học sâu đang mở ra những hướng đi mới cho cả steganographysteganalysis. Các mô hình học sâu có thể được sử dụng để tạo ra các thuật toán giấu tin thông minh hơn, có khả năng tự động tìm ra vị trí tối ưu để che giấu dữ liệu nhằm tối đa hóa tính vô hình và độ bền vững. Đồng thời, các công cụ phát hiện tin giấu dựa trên AI cũng ngày càng trở nên mạnh mẽ, có khả năng phát hiện những dấu vết tinh vi nhất mà các phương pháp thống kê truyền thống bỏ qua. Cuộc chạy đua công nghệ này hứa hẹn sẽ tiếp tục thúc đẩy sự đổi mới, hướng tới các hệ thống giấu tin an toàn, hiệu quả và thông minh hơn trong tương lai.

6.1. Tóm tắt các thuật toán giấu tin phổ biến và hiệu quả nhất

Tổng quan lại, các thuật toán giấu tin có thể được chia thành hai nhóm chính. Nhóm thứ nhất là giấu tin miền không gian, với đại diện tiêu biểu là thuật toán LSB. Phương pháp này có ưu điểm là đơn giản, nhanh và cho dung lượng nhúng cao, nhưng lại rất yếu về độ bền vững và dễ bị phát hiện. Nhóm thứ hai là giấu tin miền tần số, sử dụng các phép biến đổi như DCTDWT. Các thuật toán này mang lại độ bền vững vượt trội trước các phép xử lý ảnh và tấn công, khiến chúng trở thành lựa chọn hàng đầu cho các ứng dụng như thủy vân số. Tuy nhiên, chúng thường phức tạp hơn trong triển khai và có dung lượng nhúng hạn chế hơn. Không có một thuật toán nào là hoàn hảo cho mọi tình huống. Một hệ thống giấu tin hiệu quả trong thực tế thường là sự kết hợp thông minh của nhiều kỹ thuật, ví dụ như mã hóa thông điệp trước, sau đó sử dụng một thuật toán giấu tin miền tần số thích ứng để nhúng dữ liệu vào những vùng ít nhạy cảm nhất của ảnh.

6.2. Xu hướng nghiên cứu mới và thách thức trong tương lai

Tương lai của steganography gắn liền với sự phát triển của công nghệ. Một xu hướng nổi bật là sử dụng Mạng đối nghịch tạo sinh (Generative Adversarial Networks - GANs) để tạo ra các ảnh stego. GANs có thể học cách tạo ra những thay đổi cực kỳ tinh vi trên ảnh bìa để giấu tin, khiến cho việc phát hiện tin giấu bằng các phương pháp thống kê trở nên gần như không thể. Một hướng khác là giấu tin trong các định dạng phương tiện mới như video nén hiệu suất cao (HEVC) hoặc các mô hình 3D. Thách thức lớn nhất vẫn là cuộc chiến chống lại steganalysis dựa trên học sâu. Các mô hình AI ngày càng giỏi trong việc nhận dạng các mẫu ẩn, đòi hỏi các nhà nghiên cứu steganography phải tạo ra các thuật toán không chỉ đảm bảo tính vô hình với con người mà còn phải "vô hình" với cả máy móc. Việc cân bằng giữa hiệu suất, dung lượng và khả năng chống lại các công cụ phân tích tự động sẽ là trọng tâm của nghiên cứu trong những năm tới.

01/10/2025

Trích đoạn nội dung tài liệu

Chương 1 trình bày bài toán giấu tin, phân loại giấu tin, các ứng dụng của giấu tin. Nội dung chương cũng đề cập đến các yêu cầu cần phải đáp ứng khi triển khai hệ giấu tin và một số tấn công làm thay đổi thông tin mà hệ giấu tin phải xử lý khi triển khai trong thực tế. ẢNH SỐ VÀ CÁC KỸ THUẬT GIẤU TIN TRONG ẢNH SỐ Các phương pháp giấu tin trong ảnh tìm cách ẩn các bit tin vào trong các điểm ảnh của ảnh số. Trong tất cả các khâu: tạo ảnh, biểu diễn ảnh, biến đổi ảnh đều có những kẽ hở để có thể khai thác phục vụ giấu tin.

Một hệ thống giấu tin hoàn chỉnh giống với một hệ thống xử lý ảnh ở chỗ cả hai đều dựa trên cấu trúc, các phép biến đổi và các thông tin khác về ảnh. Ngoài ra hệ thống giấu tin còn có thêm những tính chất của hệ thống mật mã. Trong chương này sẽ trình bày lý thuyết liên quan đến biểu diễn ảnh số, các kỹ thuật hỗ trợ cho giấu tin và một số phương pháp giấu tin trong ảnh số. CÁC MÔ HÌNH MÀU VÀ BIỂU DIỄN ẢNH TRÊN MÁY TÍNH Màu của các đối tượng phụ thuộc vào bản thân đối tượng, vào nguồn ánh sáng, màu của môi trường xung quanh và vào sự cảm nhận của thị giác.

Mắt người cảm nhận ánh sáng màu tốt hơn đen trắng. Về mặt vật lý, ánh sáng được nghiên cứu theo bước sóng và cường độ. Trong lĩnh vực đồ hoạ và xử lý ảnh, người ta nghiên cứu màu theo các yếu tố: hue (sắc màu để phân biệt giữa các màu, ví dụ màu đỏ, xanh, nâu), saturation (độ bão hoà để đo sự pha trộn với ánh sáng trắng), lightness (độ sáng thể hiện qua cường độ ánh sáng). Để biểu diễn màu trong máy tính hay các thiết bị phần cứng khác người ta dùng mô hình màu.

Mô hình màu như một hệ tọa độ không gian, trong đó mỗi điểm trong hệ toạ độ ứng với một màu. Một màu khi biểu diễn thường là tổ hợp của ba màu đỏ (R), lục (G) và lam (B). Mắt người cảm nhận màu sắc thông qua các tế bào võng mạc mô hình nón. Ba màu đỏ, lục, lam là ba màu mà mắt người cảm nhận rõ nhất, có độ dài bước sóng lần lượt là 560, 530, 430 nm.

Mô hình màu RGB Hệ màu này được sử dụng cho màn hình và đồ hoạ mành sử dụng hệ toạ độ đề-các. Mỗi màu trong khối được xác định theo ba thành phần màu RGB (Red, Green, Blue). Màu trắng có thành phần màu là (1,1,1), màu đỏ là (1,0,0),. Mô hình màu RGB Không gian RGB là chuẩn công nghiệp cho các thao tác đồ hoạ máy tính.

Các thao tác màu sắc có thể được tính toán trên các không gian màu khác nhau nhưng cuối cùng phải chuyển về RGB để biểu diễn trên màn hình. Ngược lại có thể chuyển đổi qua lại giữa RGB với các không gian màu khác. Mô hình màu CMY Mô hình màu CMY sử dụng ba màu là Cyan (lục lơ), Magenta (đỏ tươi) và Yellow (vàng). Ba màu này là phần bù tương xứng của các màu đỏ, lục và lam.

Các màu của hệ màu CMY được xác định bằng cách loại bỏ màu nào đó từ ánh sáng trắng chứ không phải thêm vào các màu tối. Hệ màu CMY hay được dùng cho các thiết bị in màu. Mô hình màu CMY 13 2. Biểu diễn ảnh trong máy tính Ảnh biểu diễn trên máy tính được chia làm hai dạng chính là ảnh mành (bitmap) và ảnh véc tơ.

 Ảnh mành (bitmap): lưu bản đồ điểm ảnh. Các ảnh có cấu trúc này như Microsoft Windows BMP, PCX, TIFF, TGA.  Ảnh véc tơ là dạng ảnh lưu công thức toán học biểu diễn các đối tượng (ví dụ văn bản, đường thẳng, đường đa giác) thay vì lưu các điểm ảnh. Ảnh dạng này ví dụ như AutoCAD-DXF, Microsoft SYLK.

Các thuật toán giấu tin được trình bày trong luận văn áp dụng cho ảnh bitmap. Ảnh Bitmap Ảnh bitmap là dạng ảnh phổ biến và có dung lượng giấu tin cao. Các ảnh bitmap thường dùng 24-bit hay 8-bit cho một điểm ảnh. Ảnh 24-bit còn được gọi là ảnh true color, cung cấp nhiều chỗ giấu thông tin hơn.

Tuy nhiên ảnh 24-bit lớn, ví dụ một ảnh 24-bit cỡ 1024 x 768 pixels có kích thước trên 2 MB, nên dễ bị gây chú ý khi tải qua mạng. Thường những ảnh đó cần được nén, nhưng nén ảnh có thể làm mất tin mật. Bảng màu và các điểm ảnh dùng bảng màu Một phương án khác là có thể dùng ảnh 8-bit màu để giấu thông tin. Trong các ảnh 8-bit, mỗi điểm ảnh được thể hiện bằng một byte.

Mỗi điểm đơn thuần trỏ đến một bảng chỉ mục các màu, với 256 khả năng màu. Điểm ảnh chứa trị nằm giữa 0 và 255 và các phần mềm chỉ đơn thuần vẽ màu cần biểu thị lên màn hình tại vị trí 14 lựa chọn. Nếu dùng một ảnh 8-bit làm ảnh phủ, rất nhiều chuyên gia về giấu tin trong ảnh khuyên nên dùng ảnh 256 cấp xám vì bảng màu của ảnh xám thay đổi đồng đều giữa các màu làm tăng khả năng giấu tin. Giấu tin trong ảnh 8-bit cần xem xét cả ảnh lẫn bảng màu.

Một ảnh có khối lớn các màu đồng nhất khó giấu hơn vì dễ bị nhận biết. Một số phương pháp giấu tin trong ảnh dựa vào việc sắp xếp lại bảng màu, trong khi các phương pháp khác thêm bớt các màu vào bảng màu. CÁC KỸ THUẬT BỔ TRỢ CHO GIẤU TIN Để giấu tin trong dữ liệu số ta cần các kỹ thuật bổ trợ. Các kỹ thuật này bao gồm chuyển dữ liệu ảnh từ miền không gian sang miền tần số, kỹ thuật sinh các chuỗi số ngẫu nhiên và kỹ thuật thay đổi thứ tự các bit trong chuỗi bit mật.

Các phép biến đổi từ miền thời gian sang miền tần số Ngoài phương pháp xử lý trực tiếp giá trị các điểm ảnh trên miền không gian, chúng ta có thể dùng nhiều phương pháp khảo sát gián tiếp khác thông qua các kỹ thuật biến đổi. Các biến đổi này làm nhiệm vụ chuyển miền biến số độc lập sang các miền khác với các biến số mới. Phương pháp khảo sát gián tiếp này sẽ làm đơn giản rất nhiều các công việc mà chúng ta gặp phải khi dùng phương pháp khảo sát trực tiếp trong miền biến số độc lập. Có nhiều cách biến đổi, trong đó cách biến đổi hay được sử dụng là biến đổi Fourier, biến đổi wavelet… Phép biến đổi Fourier rời rạc Phép biến đổi Fourier rời rạc còn được gọi là biến đổi Fourier hữu hạn.

Đầu vào của biến đổi này là một chuỗi hữu hạn các số thực hoặc số phức. Phép biến đổi DFT phân tích một dãy các số thành các thành phần ở các tần số khác nhau, là một công cụ lý tưởng để xử lý thông tin trên các máy tính. Phép biến đổi wavelet (DWT) Jean Morlet và các cộng sự đã phát triển phương pháp đa phân giải. Ý tưởng của phân tích đa phân giải là sử dụng các kỹ thuật lọc số trong quá trình phân tích.

Mỗi một tín hiệu được phân tích thành hai thành phần: thành phần xấp xỉ A (Approximation) tương ứng với thành phần tần số thấp và thành phần chi tiết D 15 (Detail) tương ứng với thành phần tần số cao, thông qua hai bộ lọc thông thấp và thông cao. Trong đó, bộ lọc thông cao sử dụng hàm wavelet và bộ lọc thông thấp sử dụng hàm tỉ lệ. Sơ đồ biến đổi wavelet cho ảnh số Ví dụ hình dưới đây là hình ảnh biến đổi DWT. Ảnh gốc và các thành phần tương ứng khi biến đổi wavelet Thành phần HH là không quan trọng.

Những thay đổi trên thành phần này ít ảnh hưởng đến tín hiệu gốc khi ta khôi phục lại. Các thuật toán giấu tin, tùy vào yêu cầu ứng dụng có thể chọn giấu tin vào các vùng khác nhau. Xáo trộn dữ liệu mật Giả sử có chuỗi M gồm n phần tử, là thông điệp mật cần giấu vào trong ảnh. Thay vì giấu tuần tự từng phần tử từ M 1 đến Mn, ta thực hiện xáo trộn chuỗi M rồi mới đem giấu.

Mục đích của việc này là gây khó khăn cho người thám tin khi thực hiện tấn công rút trích tin. Nếu người thám tin biết thuật toán giấu thì rất có thể dò được chuỗi tin. Xáo trộn dữ liệu đòi hỏi người thám tin phải sắp xếp lại chuỗi tin nhận được theo trật tự đúng mới biết được tin, nếu không, chuỗi tin nhận được cũng không có ý nghĩa. Có nhiều thuật toán khác nhau để xáo trộn dữ liệu.

Một thuật toán có thể dùng để xáo trộn là sử dụng phương pháp hoán vị. Nếu chuỗi tin mật cần giấu có độ dài n (đánh số từ 1 đến n) thì sẽ có n! hoán vị của nó. Có nhiều kỹ thuật tạo hoán vị của tập {1,2,. Một trong các cách hiệu quả là dùng phương pháp sinh theo kiểu thứ tự từ điển.

Ví dụ ta có chuỗi cần giấu là “axnd”. Ta gán cho các ký tự chuỗi giá trị theo đúng thứ tự xuất hiện của chúng là {1, 2, 3, 4}. Chuỗi này sẽ có 24 hoán vị là {1, 2, 3, 4}, {1, 2, 4, 3},{1, 3, 2, 4},{1, 3, 4, 2},{1, 4, 2, 3},{1, 4, 3, 2},{2, 1, 3, 4},{2, 1, 4, 3},{2, 3, 1, 4},{2, 3, 4, 1},{2, 4, 1, 3},{ 2, 4, 3, 1},{3, 1, 2, 4},{3, 1, 4, 2},{3, 2, 1, 4},{3, 2, 4, 1},{3, 4, 1, 2},{3, 4, 2, 1},{4, 1, 2, 3},{4, 1, 3, 2},{4, 2, 1, 3},{4, 2, 3, 1},{4, 3, 1, 2},{4, 3, 2, 1}. Khi chọn k là 1 giá trị nào đó trong n! thì ta sẽ chọn hoán vị thứ k của chuỗi ban đầu và đem chuỗi đó đi giấu thay vì chuỗi nguyên gốc (k=1).

Trong trường hợp giá trị k lớn hơn n! thì k sẽ được gán bằng (k mod n!) + 1. Ví dụ k= 20 thì chuỗi tin giấu là: “danx” tương ứng với hoán vị {4, 1, 3, 2}. Sinh chuỗi giả ngẫu nhiên Các phương pháp giấu tin thường dùng kết hợp với các chuỗi ngẫu nhiên để thực hiện giấu tin. Chuỗi ngẫu nhiên này có thể dùng để xác định vị trí mẫu được chọn để giấu hoặc vị trí bit giấu.

Các số ngẫu nhiên có thể được sinh trực tiếp bằng các bộ sinh trong máy tính hoặc do người lập trình tự cài đặt. Có thể sử dụng bộ sinh số đồng dư để sinh ra chuỗi các số ngẫu nhiên. Các độ đo khi thực hiện giấu tin Để đánh giá hiệu năng của các kỹ thuật giấu tin, chúng ta thường dựa vào tỉ lệ có thể cảm nhận và tỉ lệ có thể phát hiện. Một số độ đo hay được dùng là độ đo SNR, độ đo NCC.

Nội dung được bảo vệ bản quyền — Tải xuống đầy đủ