MỤC LỤCLời nói đầu ...............................................................................................................................................4I. TỔNG QUAN VỀ STEGANOGRAPHY .........................................................................................51. Steganography là gì ? ....................................................................................................................52. Phân biệt Steganography và Cryptography ...................................................................................53. Dữ liệu được ẩn ở đâu ? ................................................................................................................64. Ưu và nhược điểm của Steganography .........................................................................................7II. CÁC PHƯƠNG PHÁP CƠ BẢN TRONG STEGANOGRAPHY ...............................................81.Các phương pháp cơ bản ...............................................................................................................8 a.LSB – (Least Significant Bit)....................................................................................................8 b. Injection (phép nội xạ) ..............................................................................................................82.Steganography trong “hình ảnh” ...................................................................................................9 a.LSB – (Least Significant Bit)....................................................................................................9 b.Masking and Filtering ...............................................................................................................9 c.Algorithms and Transformations ..............................................................................................93. Steganography trong Audio ..........................................................................................................9a. LSB ...........................................................................................................................................9 b. Mã hóa Parity (Parity Coding) ............................................................................................... 10 c. Mã hóa Phase (Phase Coding) .............................................................................................. 10 d. Kỹ thuật trải phổ .................................................................................................................... 10 e. Kỹ thuật giấu dựa vào tiếng vang (Echo) ............................................................................. 11 f. Kỹ thuật mã hóa Echo ........................................................................................................... 114. Steganography trong Video ...................................................................................................... 125. Steganography trong Document................................................................................................. 12 III. STEGANALYSIS .........................................................................................................................12 a.Xem tập tin............................................................................................................................. 12 b.Nghe tập tin ............................................................................................................................ 132. Phân loại......................................................................................................................................... 13IV. ỨNG DỤNG CỦA STEGANOGRAPHY ..................................................................................131. Lĩnh vực anh ninh mạng và che dấu thông tin ............................................................................ 132. Watemarking (làm hình mờ) .......................................................................................................... 14 a.Giới thiệu ............................................................................................................................... 14 b.Các trình ứng dụng của Watermarking .................................................................................. 15VI. KẾT LUẬN ....................................................................................................................................23TÀI LIỆU THAM KHẢO ....................................................................................................................24PHIẾU GIAO NHIỆM VỤ BÀI TẬP LỚN ........................................................................................
Trang 1TRƯỜNG ĐẠI HỌC BÁCH KHOA HÀ NỘI
VIỆN CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG
Lê Đình Cường 20080370
Giáo viên hướng dẫn: Lê Đức Anh
HÀ NỘI 11-2011
Trang 2Lớp: TTM-K53 Lớp: TTM-K53 Lớp: TTM-K53
Khóa : 53 Khóa: 53 Khóa: 53
20081279 20081819 20080370
Sinh viên thực hiện: Nguyễn Khánh Hưng
Nguyễn Lê Hoài Nam
Lê Đình Cường
MỤC LỤC
Lời nói đầu 4
I TỔNG QUAN VỀ STEGANOGRAPHY 5
1 Steganography là gì ? 5
2 Phân biệt Steganography và Cryptography 5
3 Dữ liệu được ẩn ở đâu ? 6
4 Ưu và nhược điểm của Steganography 7
II CÁC PHƯƠNG PHÁP CƠ BẢN TRONG STEGANOGRAPHY 8
1 Các phương pháp cơ bản 8 a LSB – (Least Significant Bit) 8 b Injection (phép nội xạ) 8
2 Steganography trong “hình ảnh” 9 a LSB – (Least Significant Bit) 9 b Masking and Filtering 9 c Algorithms and Transformations 9
3 Steganography trong Audio 9
9 b Mã hóa Parity (Parity Coding) 10 c.
Mã hóa Phase (Phase Coding) 10 d.
Kỹ thuật trải phổ 10 e.
Kỹ thuật giấu dựa vào tiếng vang (Echo) 11 f.
Trang 3Lớp: TTM-K53 Lớp: TTM-K53 Lớp: TTM-K53
Khóa : 53 Khóa: 53 Khóa: 53
20081279 20081819 20080370
Sinh viên thực hiện: Nguyễn Khánh Hưng
Nguyễn Lê Hoài Nam
Lê Đình Cường
Kỹ thuật mã hóa Echo 11
4 Steganography trong Video 12
5 Steganography trong Document 12
Trang 4III STEGANALYSIS 12
a Xem tập tin 12
b Nghe tập tin .
13 2 Phân loại 13
IV ỨNG DỤNG CỦA STEGANOGRAPHY .13
1 Lĩnh vực anh ninh mạng và che dấu thông tin 13
2 Watemarking (làm hình mờ) .
14 a.Giới thiệu 14
b Các trình ứng dụng của Watermarking 15
VI KẾT LUẬN 23
TÀI LIỆU THAM KHẢO 24
PHIẾU GIAO NHIỆM VỤ BÀI TẬP LỚN 25
Trang 5Lời nói đầu
Sự phát triển mạnh mẽ của Internet cùng với cuộc cách mạng thông tin số đãđem lại những bước tiến vượt bậc trong xã hội, vai trò của nó cũng đã vượt rakhỏi phạm vi kinh tế và dần đi vào cuộc sống như một nhu cầu thiết yếu Truyềnthông bang tần rộng cùng với các định dạng dữ liệu số phong phú hiện nay đã
mở ra nhiều cơ hội và không ít thách thức Các thiết bị số ngày càng hiện đại vàgiá thành ngày càng rẻ, điều này cho phép người dung có thể dễ dàng tạo vàchỉnh sửa hay trao đổi dữ liệu đa truyền thông Bên cạnh những tác dụng tíchcực, ta cũng không thể phủ nhận những vấn đề nan giải nảy sinh trong thực tế:giả mạo, ăn cắp tác phẩm, sử dụng các tác phẩm không bản quyền,… Chính vì
vậy mà nhóm tôi đã chọn đề tài “STEGANOGRAPHY” để nghiên cứu và tìm
hiểu tầm quan trọng của nó trong tương lai Trong quá trình thực hiện đề tàikhông tránh khỏi những sai sót mong thầy góp ý bổ sung
Xin chân thành cảm ơn !
Nguyễn Khánh Hưng Nguyễn Lê Hoài Nam
Lê Đình Cường
Trang 6I TỔNG QUAN VỀ STEGANOGRAPHY
1 Steganography là gì ?
Steganography(ẩn thông tin) : là kỹ thuật ẩn thông tin liên lạc, là quá trìnhgiấu thông tin cá nhân hay thông tin nhạy cảm vào một thứ gì mà không để lộchúng theo dạng thông thường Steganography có nguồn gốc từ Hy Lạp.Steganos (có nghĩa là phủ hoặc bí mật) và graphy(bằng văn bản hoặc bản vẽ).Các ghi chép đầu tiên về Steganography đã được một nhà sử học Hy Lạp làHerodotus ghi chép lại Một trong những câu chuyện kể nổi tiếng khi nói tới lĩnhvực này là câu chuyện về tên bạo chúa Histiaeus Trong suốt thế kỷ thứ 5 trướccông nguyên (486-425 B.C), tên này bị giam cầm tại nhà tù Susa Trong thờigian này ông ta đã cố gắng liên lạc với con rể của mình là Aristagoras Để thựchiện được âm mưu này, Histaeus đã cạo đầu một tên nô lệ và xăm lên đó thôngđiệp cần chuyển và khi tóc mọc lại thì anh này được đưa tới Aristagoras Phươngpháp này vẫn được các điệp viên Đức sử dụng vào đầu thế kỷ 20
Kỹ thuật che dấu văn bản giữa các dòng của một tài liệu bằng mực vô hìnhđược tạo ra từ nước trái cây hoặc sữa, mà chỉ hiển thị khi đun nóng, đã được sửdụng từ thời La Mã cổ đại Năm 1499, xuất bản Trithemius Steganographia, mộttrong những cuốn sách đầu tiên về che giấu thông tin Trong thế chiến II của Đức
sử dụng microdots để ẩn lớn Số tiền của dữ liệu trên các tài liệu in, giả mạo như
là dấu chấm của dấu chấm câu Ngày nay che giấu thông tin là một phần củaInternet Được sử dụng để truyền dữ liệu cũng như về việc che giấu các thông tintrong các hình ảnh và âm nhạc (được gọi là kỹ thuật số watermarking)
2 Phân biệt Steganography và Cryptography
Cryptography (hay Crypto) – mật mã học : là ngành học nghiên cứu về nhữngcách chuyển đổi thông tin từ dạng “có thể hiểu được” thành dạng “không thểhiểu được” và ngược lại Cryptography giúp đảm bảo : tính bí mật, toàn vẹn, xácthực và tính không chối bỏ cho thông tin
Trang 7Ta cần phân biệt Cryptography và Steganography vì rất dễ nhầm lẫn giữa haikhái niệm này Điểm khác nhau căn bản nhất giữa hai khái niệm này là :Cryptography là việc giấu nội dung của thông tin, trong khi Steganography làviệc giấu sự tồn tại của thông tin đó Ta có thể kết hợp hai phương pháp này,bằng cách mã hóa một tin nhắn sau đó giấu nó trong một tập tin để truyền.
3 Dữ liệu được ẩn ở đâu ?
Không giống như một tệp tin bạn tạo ra mà bạn đang có khả năng thông báothư bí ẩn ở đây và nó có thể làm thay đổi các tệp tin đồ họa hoặc âm thanh màkhông làm mất khả năng tổng thể cho người xem Với âm thanh, người ta có thể
sử dụng những bit của tập tin mà tai người không nghe được Với tập tin đồ họa,người ta có thể loại bỏ các bit dư thừa của màu sắc từ hình ảnh mà vẫn tạo ramột hình ảnh trông không thay đổi đối với mắt người, và rất khó có thể phân biệtvới bản gốc
Steganography giấu dữ liệu của mình trong những mẩu nhỏ Một chương trìnhSteganography sử dụng thuật toán để nhúng dữ liệu trong một hình ảnh hoặc file
âm thanh Chương trình cho phép sử dụng mật khẩu để lấy lại thông tin Một sốchương trình bao gồm mật mã và che dấu thông tin các công cụ để bảo mậtthông tin ẩn tránh bị phát hiện
Chất lượng hình ảnh hoặc âm thanh, dữ liệu dự phòng nhiều hơn sẽ có đó làtại sao tệp tin âm thanh 16-bit và 24-bit, hình ảnh là những điểm ẩn phổ biến.Nếu một người không có ảnh gốc hoặc tệp tin âm thanh gốc để so sánh thì họ sẽkhó thể phát hiện có dữ liệu ẩn giấu trong đó
Để nhấn mạnh sức mạnh của che giấu thông tin, kiểm tra hai hình ảnh đượchiển thị trong hình 1.1 và 1.2 Nhìn vào hai hình ảnh, ta không thấy có sự khácbiệt
Trang 8H.1.1- Không có thông tin được che giấu
H.1.2- Có thông tin được che giấu
4 Ưu và nhược điểm của Steganography
Steganography giúp ta có thể che dấu thông tin quan trọng, nhạy cảm màkhông muốn công khai Stego là một công cụ rất mạnh mẽ nếu nó cho phép haingười được trao đổi với nhau bằng một đường dẫn truyền thông
Trang 9Để có một mức độ bảo mật cao, bạn phải triển khai nhiều cấp độ bảo mật.Tuy nhiên, không có mức bảo mật hay công nghệ nào là an toàn tuyệt đối Stegocũng không nằm ngoại lệ, nó mang lại nhiều lợi ích, nhưng nó không phải làhoàn hảo Khía cạnh tiêu cực đầu tiên của Stego là ngay cả khi tin nhắn được ẩn,nếu ai đó biết được sự tồn tại của nó, họ vẫn có thể đọc được Điều này có thểgiải quyết bằng cách mã hóa trước khi ẩn dấu thông tin Một vấn đề khác củaStego là nếu người nào đó nghĩ rằng bạn đang sử dụng Stego, họ có thể xóa bỏthông điệp ẩn Trong hầu hết các trường hợp, khi ẩn dữ liệu trong hình ảnh, ta sẽchèn tin nhắn vào các bit ít quan trọng nhất Và tin nhắn có thể bị xóa bỏ bằngcách chuyển đổi hình ảnh sang định dạng khác hay chuyển nó trở lại định dạngban đầu.
II CÁC PHƯƠNG PHÁP CƠ BẢN TRONG STEGANOGRAPHY
1 Các phương pháp cơ bản
Có rất nhiều phương pháp được sử dụng để ẩn thông tin dưới dạng tập tinhình ảnh, âm thanh và video Hai phương pháp phổ biến nhất là LSB (byte giá trịthấp nhất) và Injection (phép nội xạ)
a LSB – (Least Significant Bit)
Khi các tập tin được tạo ra, thường có một số byte trong tập tin không thực sựcần thiết, hoặc không quan trọng lắm Những phần này của tập tin có thể đượcthay thế bằng thông tin ẩn mà không làm thay đổi tập tin nhiều hoặc làm hư hại
nó Điều này cho phép một người giấu thông tin vào tập tin và đảm bảo rằngkhông ai có thể phát hiện ra sự thay đổi trong tập tin Phương pháp LSB này làmhoạt động tốt nhất trong các tập tin tranh ảnh (Picture) có độ phân giải cao, sửdụng nhiều màu sắc khác nhau, và với tập tin âm thanh (Audio) có nhiều âmthanh khác nhau và tỷ lệ bit cao Phương pháp LSB thường không làm tăng kíchthước tập tin, nhưng tuỳ thuộc vào kích thước của các thông tin được ẩn bêntrong tập tin, tập tin có thể bị biến dạng đáng kể
b Injection (phép nội xạ)
Injection là một phương pháp khá đơn giản, nó chỉ là việc tiêm trực tiếp thôngtin bí mật vào tập tin chứa Vấn đề chính của phương pháp này là nó có thể làmtăng đáng kể kích thước của file chứa đó.
Trang 10Sau đây ta sẽ tìm hiểu cụ thể các phương pháp được sử dụng để ẩn thông tintrong các file hình ảnh, âm thanh, video và document.
2 Steganography trong “hình ảnh”
a LSB – (Least Significant Bit)
Phương pháp này thường được sử dụng khi ẩn thông tin trong files ảnh.Thông tin cần được che dấu sẽ được thay thế bằng mỗi bit có trọng số thấp nhất(Least Significant Bit) của mỗi pixel trong bức ảnh LSB hoạt động tốt nhấttrong file ảnh có độ phân giải cao như ảnh 24 Bit Lý do vì đây là loại ảnh lớnnhất và thường có chất lượng tốt nhất Khi ảnh ở độ phân giải cao và chất lượngtốt, nó dễ dàng che giấu thông tin bên trong Ví dụ :
Mẫu 8 bit ban đầu : 0 1 0 1 1 1 1 0
Sau khi giấu bit 1: 0 1 0 1 1 1 1 1
b Masking and Filtering
Bằng cách lọc độ chói của những vùng riêng biệt trên bức ảnh để che dấu dữliệu Thay đổi này không gây ra khác biệt rõ ràng nào trên bức ảnh Với phươngpháp này sử dụng định dạng ảnh là JEPG là tốt nhất
c Algorithms and Transformations
Đây là một cách che dấu sử dụng và được cải biến từ cách biến đổi cosinriêng Định dạng JPEG được sử dụng, đầu tiên biến đổi mỗi khối pixel tớiDiscrete Cosine Transformations (DCT) Thay các bit có trọng số thấp nhất củamỗi hệ số DCT, thay thế LSB với mỗi bit của thông điệp cần ẩn liệu
3 Steganography trong Audio
Các kỹ thuật giấu tin trong audio dựa vào hệ thống thính giác của con người.Việc giấu tin trong audio thường là khó hơn trong các dữ liệu media khác do hệthống thính giác của con người khá nhạy với các nhiễu Các phương pháp sauđây có thể được sử dụng thể thực hiện giấu tin trong audio
a LSB
Tương tự như việc sử dụng phương pháp LSB trong hình ảnh.Ta sẽ thay thếcác bit ít quan trọng nhất (thường là bit cuối) của mỗi mẩu dữ liệu bằng bit tin
Trang 11giấu Ưu điểm của phương pháp này là dễ cài đặt và cho phép giấu nhiều dữ liệu.
Có thể tăng thêm dữ liệu giấu bằng cách dùng hai bit LSB Tuy nhiên cách làmnày cũng làm tăng nhiễu trên đối tượng chứa dẫn đến đối phương dễ phát hiện vàthực hiện tấn công Vì vậy dữ liệu chứa cần phải được chọn trước khi giấu sửdụng phương pháp LSB Để tăng độ cho kỹ thuật này, ta sử dụng bộ sinh sốnguyên ngẫu nhiên để sinh ra các vị trí các mẫu được chọn giấu chứ không phảicác mẫu liên tục Bộ sinh số này sử dụng một khóa bí mật key như là phần tửkhởi tạo của bộ sinh số Khóa key này được sử dụng trong cả quá trình giấutin và giải tin Lưu ý là bộ sinh số không tạo ra các giá trị trùng nhau để tránhtrường hợp một vị trí được giấu hai lần
b Mã hóa Parity (Parity Coding)
Thay vì chia dữ liệu thành các mẫu riêng lẻ, phương pháp mã hóa chẵn
lẻ chia dữ liệu thành các nhóm mẫu và giấu từng bit thông tin vào trongcác nhóm mẫu này Nếu parity bít của nhóm mẫu này không trùng vớibit thông tin giấu thì ta tiến hành điều chỉnh một bít nào đó trong nhóm mẫunày Phương pháp này cho ta nhiều sự lựa chọn hơn khi thay đổi 1 bít và
có vẻ “kín đáo” hơn so với phương pháp điều chỉnh LSB
Cả hai phương pháp LSB và Parity đều có những hạn chế Do taingười khá nhạy nên những thay đổi trên dữ liệu chứa sẽ sinh nhiễu vàngười nghe rất dễ nhận ra Một điểm nữa là hai phương pháp này khôngbền vững và thông tin sẽ bị mất sau khi thực hiện việc lấy mẫu lại Mộttrong những cách khắc phục là thực hiện việc giấu nhiều lần Tuy nhiêncách này cũng có hạn chế là nó làm tăng thời gian xử lý
c Mã hóa Phase (Phase Coding)
Phương pháp mã hóa pha giải quyết được các hạn chế do sinh ra nhiễucủa hai phương pháp giấu dữ liệu trên Phương pháp mã hóa pha dựavào tính chất là các thành phần của pha không gây ảnh hưởng đến hệ thốngthính giác của con người như nhiễu Việc giấu tin được thực hiện bằngcách điều chỉnh pha trong phổ pha của dữ liệu số
d Kỹ thuật trải phổ
Thông thường các file audio được truyền qua các kênh truyềnthông, các kênh truyền thông này sẽ tập trung dữ liệu audio trong vùng hẹpcủa phổ tần số để duy trì năng lượng và tiết kiệm băng thông Các kỹ thuậttrải phổ cố
Trang 12gắng trải thông tin mật vào trong phổ tần số của dữ liệu audio càngnhiều càng tốt Nó cũng tương tự như kỹ thuật LSB là trải ngẫu nhiên thôngtin giấu trên toàn bộ file audio Ưu điểm của phương pháp trải phổ là nóbền vững trước một số tấn công Tuy nhiên nó cũng có hạn chế là sinh nhiễu
và dễ nhận ra Hai phương pháp trải phổ sử dụng trong giấu tin audio làDSSS (Direct Sequency Spread Spectrum) và FHSS (Frenquency HoppedSpread Spectrum)
e Kỹ thuật giấu dựa vào tiếng vang (Echo)
Kỹ thuật giấu dựa vào tiếng vang thực hiện giấu tin bằng cách thêmvào tiếng vang trong tín hiệu gốc Dữ liệu nhúng được giấu bằng cáchthay đổi 3 tham số của tiếng vang : Biên độ ban đầu, tỉ lệ phân rã và độtrễ Khi thời gian giữa tín hiệu gốc và tiếng vang giảm xuống, hai tín hiệu cóthể trộn lẫn và người nghe khó có thể phân biệt giữa hai tín hiệu Sốlượng tin
giấu có liên quan ñến thời gian trễ của tiếng vang và biên độ của nó
H1 Kỹ thuật giấu điều chỉnh Echo
f Kỹ thuật mã hóa Echo
Bằng cách dùng thời gian trễ khác nhau giữa tín hiệu gốc và tiếngvang để thể hiện tương ứng giá trị nhị phân 1 hoặc 0, theo cách đó dữliệu được giấu vào file audio Để giấu nhiều hơn một bit, tín hiệu gốc đượcchia thành các đoạn ngắn hơn và mỗi đoạn sau đó có thể được tạo tiếngvang để giấu số bit mong muốn Dữ liệu chứa cuối cùng bao gồm cácđoạn được mã độc lập nối lại theo thứ tự chia ban đầu Kỹ thuật giấu tindựa vào tiếng vang rất hiệu quả trong các file audio chất lượng cao Các file
âm thanh chưa làm giảm chất lượng và không có quá nhiều đoạn yên lặng
Trang 13thường dùng kỹ thuật này để giấu tin Một cách tiếp cận khác là tiến hành mãhóa chuỗi bit theo một cách nào đó giúp ta phát hiện ra lỗi Thay vì giấu trựctiếp L bit vào đối