Tải bản đầy đủ (.docx) (110 trang)

Kỹ thuật giấu tin trong ảnh và nghiên cứu khả năng có thể để phát hiện ảnh có giấu tin

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (875.27 KB, 110 trang )

1

ĐẠI HỌC QUỐC GIA HÀ NỘI
TRƢỜNG ĐẠI HỌC CÔNG NGHỆ

NGUYỄN THỊ PHƢƠNG HOA

KỸTHUẬT GIẤUTINTRONGẢNH VÀ NGHIÊN CỨU
KHẢNĂNG CÓTHỂĐỂ PHÁTHIỆNẢNHCÓGIẤUTIN

Ngành

: Công nghệ thông tin

Chuyên ngành: Hệ thống thông tin
Mã số

LUẬN VĂN THẠC SĨ

NGƢỜI HƢỚNG DẪN KHOA HỌC: TS. Hồ Văn Canh

Hà Nội - 2009


ii

MỤC LỤC
MỤC LỤC .......................................................................................................
DANH MỤC CÁC TỪ VIẾT TẮT................................................................
DANH MỤC CÁC HÌNH VẼ .........................................................................
MỞ ĐẦU...........................................................................................................


CHƢƠNG 1 - TỔNG QUAN VỀ GIẤU TIN VÀ KỸ THUẬT GIẤU TIN
MẬT TRONG ẢNH .........................................................................................
1.1

Một số khái niệm cơ bản về giấu tin ..............................................

1.1.1Khái niệm giấu tin ....................................
1.1.2Phân loại các kỹ thuật giấu tin ..................
1.1.3Sơ lược về lịch sử giấu tin ........................
1.1.4Mô hình kỹ thuật giấu thông tin cơ bản ....
1.1.5Các ứng dụng của kỹ thuật giấu thông tin .

1.2

Giấu tin trong dữ liệu đa phƣơng tiện ............................................

1.3

Những đặc trƣng và tính chất của giấu tin trong ảnh ..................

1.4

Các hƣớng tiếp cận của kỹ thuật giấu tin trong ảnh ..................

1.5

Một số phƣơng pháp giấu tin mật trong ảnh ..............................

1.6


Kết luận chƣơng 1 ..........................................................................

1.2.1Giấu tin trong ảnh ....................................
1.2.2Giấu tin trong audio .................................
1.2.3Giấu tin trong video .................................
1.2.4Giấu tin trong văn bản ..............................

1.4.1Tiếp cận trên miền không gian ảnh ..........
1.4.2Tiếp cận trên miền tần số ảnh ..................

1.5.1Giấu tin mật trong khối bit sử dụng tính c
1.5.2Kỹ thuật giấu tin Wu _ Lee ......................
1.5.3Kỹ thuật giấu tin Yuan_Pan_Tseng ..........

CHƢƠNG 2 - KỸ THUẬT THỦY VÂN TRÊN ẢNH .................................
2.1

Một số khái niệm cơ bản trong thủy vân số .................................

2.1.1Khái niệm thủy vân số .............................
2.1.2Phân loại các kỹ thuật thủy vân ...............
2.1.3Mô hình hệ thống thủy vân ......................
2.1.4Các đặc trưng của một hệ thủy vân ..........

2.2

Một số kỹ thuật thủy vân trên ảnh ................................................

2.2.1 Phép biến đổi cosin rời rạc............................................................................. 33
2.2.2 Kỹ thuật thủy vân sử dụng phép biến đổi DCT............................................... 34

2.2.3 Cải tiến kỹ thuật thủy vân sử dụng phép biến đổi DCT.................................. 39


iii

2.2.4

2.3

Giải pháp nâng cao độ an toàn cho thủy

Kết luận chƣơng 2 ..........................................................................

CHƢƠNG 3 - NGHIÊN CỨU KHẢ NĂNG PHÁT HIỆN ẢNH CÓ GIẤU
TIN ..................................................................................................................
3.1

Bài toán phân tích tin giấu .............................................................

3.2

Phân loại phƣơng pháp phát hiện ảnh giấu tin ............................

3.3

Một số kỹ thuật phát hiện ảnh có giấu tin ....................................

3.3.1
3.3.2
3.3.3

3.3.4

3.4

Cơ sở toán học .......................................
Kỹ thuật phân tích cặp giá trị điểm ảnh .
Kỹ thuật phân tích đối ngẫu ...................
Kỹ thuật phân tích cặp mẫu SPA ...........

Kết luận chƣơng 3 ..........................................................................

KẾT LUẬN.....................................................................................................
TÀI LIỆU THAM KHẢO..............................................................................
PHỤ LỤC........................................................................................................


iv

DANH MỤC CÁC TỪ VIẾT TẮT
Đ.l.n.n
DCT
DFT
DW
HAS
IDCT
IH
JPEG
LSB
PoV
RGB

RS
SPA

(Discrete Cosine Transform)
(Discrete Fourier Transform)
(Digital Watermarking)
(Human Auditory System)
(Inverted Discrete Cosine Transform)
(Information Hiding)
(Joint Photographic Experts Group)
(Least Significant Bit)
(Pair of Values)
(Red – Green – Blue)
(Regular – Singular)
(Sample Pair Analysis)


v

DANH MỤC CÁC HÌNH VẼ
Hình 1.1. Phân loại các kỹ thuật giấu tin....................................................................... 4
Hình 1.2 Lược đồ chung cho quá trình giấu tin............................................................. 5
Hình 1.3. Lược đồ cho quá trình giải mã....................................................................... 6
Hình 1.4. Thay đổi bit trong khối B............................................................................. 14
Hình 1.5. Các phép toán  và .................................................................................. 16
Hình 1.6. Minh họa giấu dữ liệu D = ―101‖ vào 4 khối ảnh nhị phân........................19
Hình 2.1. Mô hình quá trình nhúng thủy vân............................................................... 30
Hình 2.2. Quá trình tách thủy vân................................................................................ 31
Hình 2.3. Phân chia ba miền tần số của khối ảnh 8x8 theo phép biến đổi DCT..........33
Hình 3.1. Ảnh trước khi giấu tin.................................................................................. 58

Hình 3.2. Đồ thị xác suất giấu tin trên ảnh ở hình 3.1................................................. 58
Hình 3.3. Đồ thị xác suất phát hiện ảnh có giấu tin..................................................... 58
Hình 3.4. Đồ thị RS của một ảnh kiểm tra................................................................... 63
Hình 3.5. Xích hữu hạn trạng thái với các trạng thái là các tập con của Cm (m>0)....66
Hình 3.6. Xích hữu hạn trạng thái cho tập C0.............................................................. 67


1

MỞ ĐẦU
Công nghệ thông tin và đặc biệt là sự phát triển của hệ thống mạng máy tính đã
tạo nên môi trường mở và là phương tiện trao đổi, phân phối tài liệu một cách tiện lợi,
nhanh chóng. Tuy nhiên nó cũng đặt ra một vấn đề về bảo vệ tài liệu, ngăn chặn việc
đánh cắp và sao chép tài liệu một cách bất hợp pháp. Vấn đề an toàn và bảo mật thông
tin hiện nay luôn nhận được sự quan tâm đặc biệt của nhiều nhà nghiên cứu trong
nhiều lĩnh vực. Các công nghệ và giải pháp để bảo vệ thông tin đã và đang được
nghiên cứu và phát triển. Giải pháp bảo mật phổ biến là dùng hệ mật mã. Thông tin
ban đầu được mã hoá thành các bản mật mã ―vô nghĩa‖. Giải pháp này dễ gây ra sự
―nghi ngờ‖ của đối phương và mặc dù người ta không biết được nội dung thông tin
mật mà hai người trao đổi với nhau nhưng người ta biết được rằng giữa hai người đó
đang có sự liên lạc ―mờ ám‖. Điều này có ý nghĩa trong an ninh quốc gia. Giải pháp
khác đã và đang được sử dụng và tỏ ra hiệu quả cho việc đảm bảo an toàn thông tin là:
đem thông tin giấu vào một đối tượng khác. Đối tượng được áp dụng để chứa tin phổ
biến nhất là ảnh. Ở giải pháp này lại đặt ra hai khuynh hướng cần giải quyết đó là: bảo
mật cho thông tin được đem giấu (giấu tin mật) và bảo mật cho chính đối tượng được
dùng để chứa tin (thủy vân số). Tuy nhiên vấn đề quan tâm khi giấu thông tin vào bức
ảnh là có bao nhiêu thông tin có thể giấu vào một bức ảnh, làm thế nào để sau khi giấu
thì ảnh không có những điểm bất thường gây sự chú ý của những người không liên
quan, tính bền vững của thông tin sau khi giấu và liệu có thể nhận biết được ảnh có
giấu tin hay không?

Giấu thông tin (đặc biệt là giấu tin mật) trở thành một giải pháp an toàn và bảo
mật cho trao đổi thông tin hợp pháp. Tuy nhiên nó cũng làm nảy sinh một nguy cơ
khác là lợi dụng việc giấu tin để thực hiện những hành vi bất hợp pháp chẳng hạn như
truyền kế hoạch tấn công khủng bố, những sản phẩm văn hóa không lành mạnh, ... Từ
đó đặt ra vấn đề làm thế nào để phát hiện ảnh có giấu tin hay không, thông tin chứa
trong đó là gì, nhằm mục đích ngăn chặn những hành vi bất hợp pháp, phục vụ an ninh
quốc gia. Đồng thời từ việc phát hiện sự tồn tại tin mật đã giấu, ta sẽ tìm cách để nâng
cao độ an toàn cho các kỹ thuật giấu tin hiện có.
Xuất phát từ những vấn đề đặt ra như trên tôi thực hiện đề tài luận văn ―Kỹ
thuật giấu tin trong ảnh và nghiên cứu khả năng phát hiện ảnh có giấu tin‖.
Luận văn gồm 3 chương:
Chương 1. Tổng quan về giấu tin và kỹ thuật giấu tin mật trong ảnh. Chương
này trình bày những khái niệm cơ bản liên quan đến giấu tin nói chung, mô hình kỹ


2

thuật giấu tin, các cách tiếp cận nào để giải quyết bài toán giấu tin và phần cuối
chương sẽ đi sâu vào phân tích một số kỹ thuật giấu tin mật trong ảnh số.
Chương 2: Kỹ thuật thủy vân trên ảnh. Thủy vân số là khuynh hướng thứ hai
cần giải quyết trong bài toán giấu tin. Chương này trình bày một số kỹ thuật thủy vân
ẩn bền vững trong ảnh. Qua việc phân tích đánh giá điểm mạnh, điểm yếu của từng kỹ
thuật, chất lượng ảnh nhúng thủy vân và tính bền vững của thủy vân để có thể đưa ra
một giải pháp nâng cao độ an toàn cho thủy vân.
Chương 3: Nghiên cứu khả năng phát hiện ảnh có giấu tin. Đây là trọng tâm
nghiên cứu của luận văn. Mục tiêu cần đạt được của bài toán phân tích tin ẩn trong ảnh
đó là: phát hiện ảnh có giấu tin và trích chọn ra thông điệp (hoặc một phần thông điệp)
đã giấu, cũng như có thể sửa đổi hay phá hủy thông tin đã phát hiện.. Tuy nhiên trong
chương này luận văn chỉ giải quyết vấn đề phát hiện có sự tồn tại của tin ẩn hay không.
Trong đó đưa ra một số kỹ thuật phát hiện ảnh giấu tin theo hướng tiếp cận chủ yếu sử

dụng lý thuyết xác suất thống kê.


3

Chương 1 - TỔNG QUAN VỀ GIẤU TIN VÀ KỸ THUẬT
GIẤU TIN MẬT TRONG ẢNH
Giấu tin là một lĩnh vực rộng lớn. Trong đó môi trường giấu tin phổ biến và được
ứng dụng rộng rãi nhất đó là giấu tin trong ảnh. Trong chương này luận văn bình bày
tổng quan về quá trình phát triển của giấu tin, các mô hình giấu tin, các ứng dụng của
giấu tin đồng thời đi sâu vào các kỹ thuật nhằm bảo mật cho thông tin được đem giấu
đó là các kỹ thuật giấu tin mật. Hầu hết các kỹ thuật giấu tin mật đều tập trung giấu
thông tin vào các bit ít quan trong nhất của mỗi điểm ảnh. Phần cuối chương trình bày
các kỹ thuật đã được công bố gần đây như giấu tin theo khối bit sử dụng tính chẵn lẻ
của tổng số bit 1 trong khối, kỹ thuật Wu_Lee, kỹ thuật Yang_Pan_Tseng.

1.1 Một số khái niệm cơ bản về giấu tin
1.1.1 Khái niệm giấu tin
―Giấu thông tin‖ gọi tắt là ―Giấu tin‖, tiếng Hi Lạp là ―Steagnography‖, tiếng
Anh là ―Cover Writing‖. “Giấu thông tin” là một kỹ thuật nhúng (giấu) một lượng
thông tin số nào đó vào trong một đối tượng dữ liệu số khác [2].
Kỹ thuật giấu tin nhằm hai mục đích: một là bảo mật cho dữ liệu được đem giấu,
hai là bảo vệ cho chính đối tượng mang tin giấu. Hai mục đích khác nhau này dẫn đến
hai kỹ thuật chủ yếu của giấu tin. Đó là giấu tin mật và thủy vân số. Nói chung giấu tin
trong đa phương tiện là tận dụng ―độ dư thừa‖ của phương tiện giấu để thực hiện việc
giấu tin mà người ngoài cuộc ―khó‖ cảm nhận được có thông tin giấu trong đó.

1.1.2 Phân loại các kỹ thuật giấu tin
Do kỹ thuật giấu tin số mới được hình thành trong thời gian gần đây nên xu
hướng phát triển vẫn chưa ổn định. Có nhiều cách phân loại khác nhau dựa trên những

tiêu chí khác nhau. Theo Fabien A.P. Petitcolas đề xuất năm 1999, có thể chia lĩnh vực
giấu tin thành hai hướng lớn, đó là giấu tin mật và thủy vân số [6].
Giấu tin mật với mục đích đảm bảo an toàn và bảo mật thông tin tập trung vào
các kỹ thuật giấu thông tin sao cho người khác khó phát hiện nhất việc có tin được
giấu; hơn nữa nếu phát hiện có tin giấu thì giải tin cũng khó thực hiện. Bên cạnh đó
cũng đặt ra vấn đề về lượng tin được giấu.
Thủy vân số lại được chia thành hai hướng nhỏ là thủy vân dễ vỡ và thủy vân bền
vững. Trong đó thủy vân dễ vỡ yêu cầu thông tin giấu sẽ bị sai lệch nếu có bất kỳ sự


4

thay đổi vào trên dữ liệu chứa tin. Thủy vân bền vững quan tâm nhiều đến việc nhúng
các mẩu tin đòi hỏi độ bền cao của thông tin được giấu trước các biến đổi thông
thường trên dữ liệu chứa tin.
Giấu thông tin
Information hiding

Thủy vân số
Watermarking

Giấu tin mật
Steganography

Thủy vân ẩn
Imperceptible
watermarking
Hình 1.1. Phân loại các kỹ thuật giấu tin

1.1.3 Sơ lƣợc về lịch sử giấu tin

Từ ―Steganography‖ bắt nguồn từ tiếng Hi Lạp. Từ ―stegano‖ trong tiếng Hi
Lạp có nghĩa là ―covered‖, còn ―graphien‖ có nghĩa là ―to write‖. Như vậy,
―steganography‖ 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 điệp thuộc về sử gia Hi Lạp Herodotus. Khi bạo chúa Hi
Lạp Histiaeus bị vua Darius bắt giữ ở Susa vào thế kỷ thứ V trước Công nguyên, ông
ta đã gửi một thông báo bí mật cho con rể của mình là Aristagoras ở Miletus. Histiaeus
đã cạo trọc đầu một nô lệ tin cậy và xăm một thông điệp trên da đầu của người nô lệ
ấy. Khi tóc của người nô lệ mọc ra đủ dài thì người nô lệ được gửi tới Miletus.
Một câu chuyện khác về thời Hi 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 Hi Lạp định báo cho Sparta rằng Xerxes định xâm chiếm Hi Lạp. Để tránh bị
phát hiện, anh ta đã bóc lớp sáp ong 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 ong mới.


5

Những viên thuốc mang tin mật đã ngụy trang được để cùng với các viên thuốc thông
thường khác và lọt qua mọi sự kiểm soát một cách dễ dàng.
Mực không màu là phương tiện hữu ích 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 các hàng văn tự thông thường. Khi được hơ
nóng, những thứ mực này trở nên sẫm mầu và có thể đọc được. Mực không màu cũng
vẫn còn được sử dụng rất gần đây, chẳng hạn trong chiến tranh thế giới thứ II [5].
Ý

tưởng về che giấu thông tin đã có hàng ngàn năm trước nhưng kỹ thuật này

được dùng chủ yếu trong quân đội và trong các cơ quan tình báo. Mãi cho tới vài thập

niên gần đây, giấu tin mới nhận được sự quan tâm của các nhà nghiên cứu và các viện
công nghệ thông tin với nhiều công trình nghiên cứu. Sự phát triển của thông tin số và
mạng truyền thông (đặc biệt là mạng Internet) cùng với các kỹ thuật sao chép hoàn
hảo, kỹ thuật chỉnh sửa, thay thế tinh vi đã và đang làm nảy sinh nhiều vấn đề nhức
nhối về nạn ăn cắp bản quyền, xuyên tạc trái phép, lan truyền thông tin bất hợp pháp.

1.1.4 Mô hình kỹ thuật giấu thông tin cơ bản
Mô hình của kỹ thuật giấu tin được mô tả trong hình 1.2 và 1.3.
Thông tin cần giấu

Phương tiện
chứa tin (audio,
ảnh, video,…)

Khóa
Hình 1.2 Lược đồ chung cho quá trình giấu tin

Hình 1.2 biểu diễn quá trình giấu tin cơ bản. Trong đó, phương tiện chứa tin có
thể bao gồm: văn bản, ảnh, audio, video… Thông tin cần giấu tùy theo mục đích của
người sử dụng, nó có thể là các thông điệp, các logo, hình ảnh bản quyền… Thông tin


được giấu vào trong phương tiện chứa tin nhờ môt bộ nhúng. Bộ nhúng là những
chương trình theo những thuật toán để giấu tin và được thực hiện với một khóa bí mật


6

giống như trong một số hệ mật mã. Đầu ra của quá trình giấu tin là phương tiện chứa
đã được giấu. Các phương tiện này có thể được phân phối trên mạng [7].

Hình 1.3 mô tả quá trình giải mã thông tin đã giấu. Với đầu vào là phương tiện
đã chứa tin giấu, một bộ giải mã tin (tương ứng với bộ nhúng) cùng với khóa sẽ thực
hiện việc giải mã thông tin. Đầu ra của quá trình là phương tiện chứa tin và thông tin
đã giấu. Trong trường hợp cần thiết, thông tin giấu lấy ra có thể được xử lý, kiểm định
và so sánh với thông tin đã giấu ban đầu.
Khóa

Phân
phối

Thông tin giấu

Kiểm
định

Hình 1.3. Lược đồ cho quá trình giải mã

1.1.5 Các ứng dụng của kỹ thuật giấu thông tin
Bảo vệ quyền tác giả: Đây là ứng dụng cơ bản nhất của kỹ thuật thủy vân số. Một
thông tin nào đó mang ý nghĩa quyền sở hữu tác giả gọi là thủy vân sẽ được nhúng vào
trong sản phẩm, thủy vân đó chỉ một mình người chủ sở hữu hợp pháp các sản phẩm
đó có và được dùng làm minh chứng cho bản quyền sản phẩm. Yêu cầu kỹ thuật đối
với ứng dụng này là thủy vân phải tồn tại bền vững cùng sản phẩm, muốn bỏ thủy vân
này mà không được phép của người chủ sở hữu thì chỉ có cách phá hủy sản phẩm [8].
Xác thực thông tin hay phát hiện xuyên tạc thông tin: Một tập các thông tin sẽ
được giấu trong các phương tiện chứa sau đó sử dụng để nhận biết xem trên các
phương tiện gốc đó có bị thay đổi hay không. Các thủy vân nên được ẩn để tránh sự tò
mò của kẻ thù, hơn nữa việc làm giả các thủy vân hợp lệ hay xuyên tạc thông tin
nguồn cũng được xem xét. Trong các ứng dụng thực tế, người ta mong muốn tìm được



vị trí bị xuyên tạc cũng như phân biệt được các thay đổi. Yêu cầu chung đối với các
ứng dụng là khả năng giấu thông tin cao và thủy vân không cần bền vững.


7

Giấu vân tay hay dán nhãn: Thủy vân trong các ứng dụng này được sử dụng để
nhận diện người gửi hay người nhận của một thông tin nào đó. Yêu cầu của ứng dụng
này là đảm bảo độ an toàn cao cho các thủy vân tránh sự xóa giấu vết trong phân phối.
Kiểm soát sao chép: Các thủy vân trong những trường hợp này được sử dụng để
kiểm soát sao chép đối với các thông tin. Các thiết bị phát hiện ra thủy vân thường
được gắn sẵn vào trong các hệ thống đọc ghi. Các ứng dụng loại này cũng yêu cầu
thủy vân phải được đảm bảo an toàn và cũng sử dụng phương pháp phát hiện thủy vân
đã giấu mà không cần thông tin gốc.
Giấu tin mật: Các thông tin giấu được trong những trường hợp này càng nhiều
càng tốt, việc giải mã để nhận được thông tin cũng không cần phương tiện chứa ban
đầu. Các yêu cầu mạnh về tính bền vững không cần thiết lắm, thay vào đó là thông tin
giấu phải đảm bảo tính bí mật và giảm thời gian lưu thông trên đường truyền.

1.2 Giấu tin trong dữ liệu đa phương tiện
1.2.1 Giấu tin trong ảnh
Hiện nay, giấu tin trong ảnh chiếm tỉ lệ lớn nhất hệ thống giấu tin trong đa
phương tiện. Bởi lẽ lượng thông tin được trao đổi bằng hình ảnh là rất lớn, hơn nữa
chúng còn đóng vai trò quan trọng trong các ứng dụng an toàn thông tin như: xác thực
thông tin, bảo vệ quyền tác giả, điều khiển truy cập, xác định xuyên tạc thông tin. Từ
việc nghiên cứu kỹ thuật giấu tin trong ảnh số chuyển sang kỹ thuật giấu tin trong các
phương tiện khác như audio, video, trong văn bản,… không có gì khó khăn về nguyên
tắc. Chính vì lẽ đó, giấu tin trong ảnh đã và đang được nhiều tổ chức, các trường đại
học, các viện nghiên cứu, các cá nhân quan tâm và đầu tư nghiên cứu [12].

Thông tin được giấu cùng với dữ liệu ảnh nhưng chất lượng ảnh rất ít thay đổi và
người ta khó có thể nhận thấy bằng mắt thường. Sau vụ khủng bố ngày 11 tháng 9 năm
2001 gây chấn động không chỉ nước Mĩ mà cả thế giới, có một số nhận định cho rằng
chính trùm khủng bố quốc tế Osama Binladen đã dùng cách thức giấu thông tin trong
ảnh để liên lạc với đồng bọn và chúng đã quan mặt được cục tình báo trung ương Mĩ
và các cơ quan an ninh quốc tế. Sự việc này càng cho thấy việc nghiên cứu các vấn đề
liên quan đến giấu tin trong ảnh càng trở nên quan trọng.

1.2.2 Giấu tin trong audio
Giấu tin trong audio mang những đặc điểm riêng khác với giấu tin trong các đối
tượng đa phương tiện khác. Một trong những yêu cầu cơ bản của giấu tin là đảm bảo


8

tính chất ẩn của thông tin được giấu đồng thời không làm ảnh hưởng đến chất lượng
của dữ liệu gốc. Để đảm bảo yêu cầu này, kỹ thuật giấu tin trong audio phụ thuộc vào
thính giác con người (HAS - Human Auditory System). HAS nghe được các tín hiệu ở
dải tần rộng và công suất cao nhưng ngược lại cũng kém trong việc phát hiện sự khác
biệt của các dải tần và công suất. Điều này có nghĩa là các âm thanh to, cao tần có thể
che giấu được các âm thanh nhỏ, thấp một cách dễ dàng. Một vấn đề khó khăn nữa của
giấu tin trong môi trường audio đó là kênh truyền tin. Kênh truyền hay băng thông
chậm sẽ ảnh hưởng đến chất lượng thông tin sau khi giấu. Các phương pháp giấu tin
trong audio thường lợi dụng điểm yếu trong hệ thống thính giác con người.

1.2.3 Giấu tin trong video
Giấu tin trong video cũng được quan tâm phát triển và có nhiều ứng dụng như
kiểm soát sao chép thông tin, xác thực thông tin và bảo vệ bản quyền tác giả. Một
phương pháp giấu tin được đưa ra bởi Cox là phương pháp phân bố đều. Ý tưởng cơ
bản của phương pháp là phân phối thông tin giấu dàn trải theo tần số dữ liệu gốc.

Nhiều nhà nghiên cứu đã dùng những hàm cosin riêng và các hệ số truyền sóng riêng
để giấu tin. Trong các thuật toán khởi nguồn thì thường các kỹ thuật cho phép giấu các
ảnh vào trong video nhưng thời gian gần đây các kỹ thuật cho phép giấu cả âm thanh
và hình ảnh vào video [6]. Như phương pháp của Swanson giấu được hai bit vào khối
8*8 [9]. Hay gần đây nhất là phương pháp của Mukherjee là giấu audio vào video sử
dụng cấu trúc lưới đa chiều… Kỹ thuật giấu thông tin trong video áp dụng cả đặc điểm
thị giác và thính giác của con người.
Kỹ thuật giấu tin đang được áp dụng cho nhiều loại đối tượng chứ không chỉ
riêng dữ liệu đa phương tiện. Gần đây đã có nghiên cứu giấu tin trong văn bản, cơ sở
dữ liệu quan hệ và cơ sở dữ liệu XML, cho phép mở ra nhiều hướng nghiên cứu mới.

1.2.4 Giấu tin trong văn bản
Trong việc trao đổi thông tin qua hệ thống máy tính, văn bản chiếm một tỷ lệ rất
lớn so với các loại phương tiện chứa tin khác. Tuy vậy, giấu tin trong văn bản lại chưa
được quan tâm nghiên cứu nhiều. Các nghiên cứu về giấu tin trong văn bản được chia
thành hai hướng, thứ nhất là văn bản chứa là những văn bản được chụp lại và lưu trên
máy như một ảnh nhị phân. Theo hướng này, các kỹ thuật giấu tin được thực hiện như
giấu tin trong ảnh nhị phân. Hướng thứ hai, phương tiện chứa sử dụng cho quá trình
giấu tin được lưu dưới dạng văn bản. Theo hướng này, các kỹ thuật giấu tin cũng tiến


9

hành như giấu tin trong ảnh bằng cách thay đổi một số ký tự tại một số vị trí trên văn
bản mà không làm ảnh hưởng nhiều đến nội dung văn bản gốc.

1.3 Những đặc trưng và tính chất của giấu tin trong ảnh
Giấu tin trong ảnh chiếm vị trí chủ yếu trong các kỹ thuật giấu tin. Đối tượng ảnh
là một đối tượng dữ liệu tĩnh. Dữ liệu ảnh có nhiều định dạng, mỗi định dạng có
những tính chất khác nhau nên các kỹ thuật giấu tin trong ảnh thường chú ý đến những

đặc trưng và các tính chất cơ bản sau đây [2, 4]:



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 ảnh tĩnh, dù đã giấu tin vào trong ảnh hay chưa thì
khi ta xem ảnh bằng thị giác, dữ liệu ảnh không thay đổi theo thời gian. Điều này cũng
tạo ra sự khác biệt lớn giữa các kỹ thuật giấu tin trong ảnh với các kỹ thuật giấu tin
trong audio hay video.



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

Kỹ thuật giấu tin phụ thuộc vào các loại ảnh khác nhau. Đối với ảnh đen trắng,
ảnh xám hay ảnh màu, mỗi loại ta lại có các kỹ thuật riêng phụ thuộc đặc trưng của
ảnh.



Kỹ thuật giấu tin lợi dụng tính chất hệ thống thị giác của con người

Giấu tin trong ảnh ít nhiều cũng gây ra những thay đổi trên dữ liệu ảnh gốc. Dữ
liệu ảnh được quan sát bằng hệ thống thị giác của con người nên các kỹ thuật giấu tin
phải đảm bảo một yêu cầu cơ bản là những thay đổi trên ảnh phải rất nhỏ sao cho mắt
thường khó nhận ra được sự thay đổi đó, để đảm bảo độ an toàn cho thông tin giấu.
Rất nhiều kỹ thuật đã lợi dụng các tính chất của hệ thống thị giác để giấu tin chẳng hạn
như mắt người cảm nhận sự biến đổi về độ chói kém hơn sự biến đổi về màu hay cảm
nhận của mắt về màu da trời là kém nhất trong ba mầu cơ bản RGB.




Giấu thông tin trong ảnh tác động lên dữ liệu ảnh nhưng không thay đổi
kích thước ảnh
Các thuật toán thực hiện công việc giấu thông tin sẽ được thực hiện trên dữ liệu
của ảnh. Dữ liệu ảnh bao gồm cả phần đầu, bảng màu (có thể có hoặc không) và dữ
liệu ảnh. Khi giấu thông tin, các phương pháp giấu đều biến đổi các giá trị của các bit
trong dữ liệu ảnh chứ không thêm vào hay bớt đi dữ liệu ảnh. Do vậy kích thước ảnh
không thay đổi.



Đảm bảo chất lượng ảnh sau khi giấu


10

Đây là một yêu cầu quan trọng đối với giấu tin trong ảnh. Sau khi giấu tin bên
trong, ảnh phải đảm bảo được yêu cầu không bị biến đổi. Yêu cầu này dường như khá
đơn giản đối với ảnh màu và ảnh đa cấp xám nhưng đối với ảnh đen trắng thì phức tạp
hơn nhiều. Bởi vì ảnh đen trắng mỗi điểm ảnh chỉ là đen hoặc trắng, nếu ta biến đổi
một bit đen thành trắng hoặc ngược lại thì có thể rất dễ bị phát hiện. Do đó yêu cầu đối
với giấu tin trong ảnh màu hay ảnh đa cấp xám và trong ảnh đen trắng là khác nhau.
Ảnh màu thì các thuật toán chú trọng vào việc làm sao giấu được càng nhiều thông tin
càng tốt thì các thuật toán với ảnh đen trắng tập trung để làm thế nào 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

Vì phương pháp giấu tin trong ảnh dựa trên việc điều chỉnh các giá trị của các 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 làm thay đổi giá trị của các bit
thì sẽ làm cho thông tin giấu bị sai lệch. Nhờ đặc điểm này mà giấu thông tin trong
ảnh có tác dụng xác thực và phát hiện xuyên tạc thông tin [2].



Vai trò của ảnh gốc khi giải tin

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

1.4 Các hướng tiếp cận của kỹ thuật giấu tin trong ảnh
1.4.1 Tiếp cận trên miền không gian ảnh
Đây là hướng tiếp cận cơ bản và tự nhiên trong số các kỹ thuật giấu tin. Miền
không gian ảnh là miền dữ liệu ảnh gốc, tác động lên miền không gian ảnh chính là tác
động lên các điểm ảnh, thay đổi giá trị trực tiếp của các điểm ảnh. Đây là hướng tiếp
cận tự nhiên bởi vì khi nói đến việc giấu tin trong ảnh người ta thường nghĩ ngay đến
việc thay đổi giá trị các điểm ảnh nguồn. Một phương pháp phổ biến của hướng tiếp
cận này là phương pháp tác động đến bit ít quan trọng nhất của mỗi điếm ảnh [1].
Ý

tưởng cơ bản của phương pháp tác động đến bit ít quan trọng nhất (LSB -


Least Significant Bit) của các điểm ảnh là chọn ra từ mỗi điểm ảnh các bit ít có ý nghĩa
nhất về mặt tri giác để sử dụng cho việc giấu tin. Việc bit nào được coi là ít tri giác


11

nhất và bao nhiêu bit có thể được lấy ra để thay thế đều phụ thuộc vào tính chất hệ
thống thị giác của con người và nhu cầu về chất lượng ảnh trong các ứng dụng. Ví dụ
với ảnh mầu, mỗi điểm ảnh được biểu diễn bằng 24 bit tương ứng với ba màu cơ bản
RGB, mỗi màu 1 byte. Người ta sử dụng tính chất là mắt người cảm nhận về màu B
kém hơn so với màu R và G. Vì thế mà người ta thường chọn bit cuối cùng trong 8 bit
biểu diễn màu B của mỗi điểm ảnh để giấu tin. Thay đổi bit cuối cùng trong 8 bit biểu
diễn màu B chỉ làm cho giá trị biểu diễn màu B tăng hoặc giảm đi 1 đơn vị. Như vậy,
bit LSB trong ví dụ này là bit thứ 24 của mỗi điểm ảnh. Một số thuật toán muốn giấu
nhiều thông tin hơn và chấp nhận chất lượng ảnh thấp hơn một chút có thể sử dụng bít
cuối cùng của mỗi byte màu RGB làm bit LSB. Vậy có 3 bit LSB.
Tuy nhiên, phương pháp này cũng có nhiều hạn chế, chẳng hạn như không đảm
bảo được tính bền vững của thông tin giấu đối với các thao tác biến đổi như quay ảnh
hoặc nén ảnh JPEG.

1.4.2 Tiếp cận trên miền tần số ảnh
Trong một số trường hợp cách khảo sát trực tiếp ở trên cũng gặp phải khó khăn
nhất định hoặc rất phức tạp và hiệu quả không cao, do đó ta có thể dùng phương pháp
khảo sát gián tiếp 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 miền khác và như vậy tín hiệu và hệ thống rời rạc sẽ
được biểu diễn trong miền mới với các biến số mới.
Mỗi cách biến đổi sẽ có những thuận lợi riêng, tùy từng trường hợp mà sử dụng
biến đổi nào. Sau khi khảo sát, biến đổi xong các tín hiệu và hệ thống rời rạc trong
miền các biến số mới này, nếu cần thiết có thể dùng các biến đổi ngược để đưa chúng
về miền biến số độc lập.

Phương pháp khảo sát gián tiếp sẽ làm đơn giản rất nhiều các công việc 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 tự nhiên. Hệ thống
rời rạc cần khảo sát chính là không gian các điểm ảnh. Có nhiều phép biến đổi trong
đó phổ biến là biến đổi Fourier DFT, biến đổi Cosin rời rạc DCT, biến đổi sóng nhỏ
DWT… Đây là những phép biến đổi được sử dụng nhiều trong các kỹ thuật xử lý ảnh.
Trong giấu tin, nó cũng được sử dụng, đặc biệt trong các kỹ thuật thủy vân.


12

1.5 Một số phương pháp giấu tin mật trong ảnh
1.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
1.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
nói đến tiếp sau.

1.5.1.2 Thuật toán giấu tin
Input:


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

Output:


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 D=b1b2…bk.


Đọ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.


13

else
B’i  đảo bit bất kì trong Bi.
End;
Giải thích thuật toán:

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


Giả sử cần giấu 1 bit dữ liệu b vào một khối B. Kí hiệu sum(B) là tổng số

điểm ảnh đen (điểm ảnh có giá trị bằng 1) trong khối B. Kí hiệu x  y (mod z)
hai số tự nhiên x và y đồng dư theo modulo z. Như vậy x  y (mod 2) cho biết x
và y có cùng tính chẵn lẻ. Ta xét hai trường hợp sau:


Trường hợp thứ nhất: sum(B)  b (mod 2), khối B thỏa mãn tính chất để


giấu bit dữ liệu b. Ta không cần thay đổi gì và xem như bit b đã được giấu.


Trường hợp thứ hai: sum(B)  b (mod 2). Ta phải sửa khối B để đảo tính

chẵn lẻ của sum(B). Dễ thấy ta chỉ cần đảo một bit bất kỳ trong B thì sum(B) sẽ
tăng hoặc giảm 1 đơn vị. Gọi B’ là khối kết quả thu được từ khối B sau khi đã
đảo một bit trong B. Ta có sum(B’)  b (mod 2).
Thí dụ:
Xét thí dụ dưới đây minh họa cho hai trường hợp trên.
Cho khối B như sau

Khối B kích thước K = 4 x 4, sum(B) = 8.
(a)

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, sum(B) = 8. Do đó sum(B)  1 (mod 2). 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, thường là thay đổi tại vị trí của bit thông tin rõ vào bít của khối tương


14

ứng (nếu chúng trái dấu nhau) đổi bit 0 thành bít 1 hoặc bít 1 thành bít 0, ta thu được
khối B’. Giả sử ta đổi như hình sau:

Hình 1.4. Thay đổi bit trong khối B


Khi đó ta có sum(B’) = 7, do đó ta được sum(B’)  1 (mod 2).
(b) Giả sử ta giấu bit b = 0 vào khối B.
Ta có sum(B) = 8, nên sum(B)  0 (mod 2). Khối B được bảo toàn và bit dữ liệu
b = 0 coi như đã được giấu.
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ã theo quy tắc sau.
c)

Quá trình giải tin giấu

Input


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

Output


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



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

Các bước thực hiện


Đọ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.


sau

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
-

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.


15

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.

1.5.1.3 Phân tích thuật toá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. Ta có thể
thấy để giấu hết thông tin cần ít nhất 800 khối, vậy thì kích thước khối ta có thể
chia trên ảnh là (512x512)/800=327 (dư 544). Với cách tính này thì kích thước
tối đa của một khối là 327. Chẳng hạn ta có thể chọn kích thước cho một khối
20x16, 30x15… Nên chọn khối có kích thước lớn vì như vậy trong trường hợp
các khối bị thay đổi thì khoảng cách các bit bị biến đổi sẽ thưa hơn và làm cho
ảnh sau khi giấu khó nhận biết hơn.


Với thuật toán này việc chọn khối khá đơn giản. Ta có thể bắt đầu từ khối

đầu tiên và các khối tiếp theo một cách tuần tự. Tuy nhiên ta có thể làm khó thuật
toán hơn bằng cách chọn ngẫu nhiên một khối chưa giấu tin ở mỗi lần giấu. Khi
đó ta đã làm tăng độ an toàn của thuật toán vì khóa lúc đó còn bao gồm cả chỉ số
khối đã giấu tin cho từng bit. Hoặc ta có thể thay đổi kích thước khối ở mỗi lần
giấu. Chẳng hạn như lần thứ nhất có kích thước khối là 8x8, lần thứ hai là 8x12,
… trong những trường hợp này thì khóa sẽ là kích thước khối ở mỗi lần giấu.

Bản chất của kỹ thuật giấu tin trong ảnh đen trắng đó là một quy ước nào
đó dưới dạng một mệnh đề (tân từ) P. Nếu tân từ P được thỏa thì ứng với bit 1,
ngược lại ứng với bit 0. Tân từ P trong thuật toán trên là sum(B)  b (mod 2).

1.5.1.4 Áp dụng thuật toán cho ảnh màu và ảnh đa cấp xám
Nhược điểm cơ bản của phương pháp dùng ảnh đen trắng là thông tin giấu vào
đó được rất ít. Nếu giấu nhiều thông tin thì ảnh sẽ thay đổi và người ta dễ dàng phát

hiện ra sự có mặt của thông tin ẩn. Do đó khi giấu thông tin mật người ta thường chọn
ảnh màu hoặc ảnh đa cấp xám. Các ảnh màu và ảnh đa cấp xám có giá trị mỗi điểm
ảnh được biểu diễn bằng nhiều bít. Trong dãy các bít này có một bít được gọi là bít ít
quan trọng nhất (LSB – Least Significant Bit). LSB là bit mà khi ta đảo giá trị của nó


16

thì điểm màu chỉ bị thay đổi ít nhất. Thí dụ với ảnh đa cấp xám, mỗi mức xám g được
biểu diễn bởi số nguyên không âm, thì mức xám g sẽ sai khác ít nhất so với hai mức
xám liền kề là g–1 và g+1. Trong trường hợp này bít LSB chính là bit thấp nhất trong
dạng biểu diễn nhị phân của g. Hầu hết các thuật toán giấu tin trên ảnh mầu hoặc ảnh
đa cấp xám đều áp dụng gián tiếp thuật toán giấu tin trên ảnh đen trắng theo sơ đồ sau:

Bước 1: Tạo ảnh đen trắng F từ ảnh mầu Fc bằng một kỹ thuật nào đó.
Chẳng hạn lấy từ mỗi điểm màu trong Fc một bít quan trọng nhất để làm một
điểm ảnh cho F.


Bước 2: Giấu tin vào ảnh đen trắng F để thu được ảnh đen trắng F’.


Bước 3: Đưa lại các bit của F’ vào mỗi điểm ảnh màu tương ứng của Fc để
thu được ảnh màu kết quả là F’c.
Như vậy, thuật toán giấu tin trong ảnh đen trắng là cơ sở cho các thuật toán giấu
tin nói chung.

1.5.2 Kỹ thuật giấu tin Wu _ Lee
Kỹ thuật giấu tin theo khối bit sử dụng tính chẵn lẻ của tổng số bit 1 trong khối ở
trên thể hiện độ an toàn không cao do chỉ có duy nhất kích thước khối là khóa cho quá

trình giấu tin, đồng thời ảnh chứa thông tin giấu cũng dễ bị phát hiện do kỹ thuật có
thể sẽ đảo bit trong các khối ảnh toàn màu đen hoặc màu trắng dẫn tới sự bất thường ở
vị trí đảo so với các điểm lân cận trong khối.
Thuật toán giấu tin trong ảnh đen trắng do M.Y.Wu và J.H.Lee đưa ra năm 1989
[11] đã khắc phục được phần nào những tồn tại nêu trên bằng cách đưa thêm khóa K
cho việc giấu tin và các điều kiện để đảo bít trong mỗi khối.
Trước khi xem xét thuật toán này ta đưa ra một số định nghĩa sau:
Định nghĩa 1.1: Gọi x và y là hai bit tùy ý, phép nhân bit kí hiệu là  trên hai bit
x và y ; phép cộng loại trừ (còn gọi là phép XOR) kí hiệu là  trên hai bit x và y được
định nghĩa thông qua bảng chân trị dưới đây
x
0
0
1
1
Hình 1.5. Các phép toán  và 


17

Với mỗi ma trận A, kí hiệu A[i,j] là phần tử trên hàng i, cột j của ma trận A. Hai
phép toán trên cũng được mở rộng cho các dãy bit hoặc cho các ma trận bit.
Định nghĩa 1.2: hai ma trận A và B có cùng kích thước m x n ta định nghĩa
A  B = C, trong đó C[i,j] = A[i,j]  B[i,j]
A  B = C, trong đó C[i,j] = A[i,j]  B[i,j]
Định nghĩa 1.3: phép nhân theo vị trí trên hai ma trận A và B (các phần tử là các
số nguyên) có cùng kích thước như sau:
A  B = C, trong đó C[i,j] = A[i,j] * B[i,j]
Định nghĩa 1.4: Với ma trận số B ta định nghĩa sum(B) là tổng tất cả các phần tử
của ma trận B. Nếu B là ma trận bit thì sum(B) chính là tổng số các bit 1 có trong B.


1.5.2.1 Ý tưởng
Với mục tiêu là giấu được càng nhiều thông tin vào trong ảnh mà vẫn đảm bảo
được chất lượng ảnh càng tốt, ý tưởng chính của thuật toán là chia ảnh ra thành các
khối bằng nhau, tìm khối nào ít bị phát hiện nhất, giấu một bit thông tin vào khối đó.

1.5.2.2 Mô tả thuật toán
a) Quá trình giấu tin
Input:


Ảnh nhị phân F



Khóa bí mật K



Xâu bit dữ liệu cần giấu D

Output:


Một file ảnh F’ đã giấu tin bên trong.

Cách thức thực hiện:
Bước 1: Chia ảnh F thành các khối nhỏ Fi, mỗi khối có kích thước K (K = m x n).
Bước 2:
For each Fi

If 0< sum(Fi  K) < sum(K) then
Chuyển bước 3 để giấu thông tin vào khối Fi,


18

Else giữ nguyên khối Fi.
Bước 3: Giả sử bit cần giấu vào khối Fi là b, thay đổi Fi như sau:
if sum(Fi  K) mod 2 = b then
giữ nguyên Fi
else if sum(Fi  K) = 1 then
chọn ngẫu nhiên một bit [j,k] thỏa đồng thời Fi[j,k] = 1 và K[j,k] = 1.
Đảo giá trị của bit Fi[j,k] = 1
else if sum((Fi  K) = sum(K) – 1 then
Chọn ngẫu nhiên một bit [j,k] thỏa Fi[j,k] = 1 và K[j,k] = 1.
Đảo giá trị của bit Fi[j,k] = 0
else
Chọn ngẫu nhiên một bit [j,k] mà K[j,k] = 1
Đảo giá trị của bit Fi[j,k] từ 1 thành 0 hoặc từ 0 thành 1.
End if;
Thí dụ:
Giả sử ta cần giấu dãy bit D = ―101‖ vào ảnh F có kích thước 8x8 và một ma
trận khóa K có kích thước 4x4 như hình vẽ dưới đây. Ta chia ảnh F thành 4 khối nhỏ
F1, F2, F3, F4, mỗi khối nhỏ sẽ có kích thước là 4x4.
(a)
F1
1
0
1


1
1
1

1 0
1 0
1 1

0

0

1 0

1

0

1 0

0
1

1
0

0 1
1 0

0


1

0 1

F3


×