Số hóa bởi Trung tâm Học liệu – ĐHTN http://www.lrc.tnu.edu.vn DANH MỤC CÁC TỪ VIẾT TẮT TRONG LUẬN VĂN BMP - Định dạng ảnh Bitmap Bitmap BPP - Số bit trên 1 pixel Bits per pixel CGA -
Trang 1ĐẠI HỌC THÁI NGUYÊN TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG
TRẦN THẾ ANH
NGHIÊN CỨU KỸ THUẬT LSB VÀ KẾT HỢP THUẬT TOÁN RSA ĐỂ GIẤU TIN TRONG ẢNH
LUẬN VĂN THẠC SĨ: KHOA HỌC MÁY TÍNH
THÁI NGUYÊN, NĂM 2015
Trang 2Số hóa bởi Trung tâm Học liệu – ĐHTN http://www.lrc.tnu.edu.vn
ĐẠI HỌC THÁI NGUYÊN TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG
TRẦN THẾ ANH
NGHIÊN CỨU KỸ THUẬT LSB VÀ KẾT HỢP THUẬT
TOÁN RSA ĐỂ GIẤU TIN TRONG ẢNH
Chuyên ngành: Khoa học máy tính
Trang 3LỜI CAM ĐOAN
Tôi xin cam đoan luận văn “Nghiên cứu kỹ thuật LSB và kết hợp thuật
toán RSA để giấu tin trong ảnh” là sản phẩm của riêng cá nhân, không sao
chép lại của người khác Trong toàn bộ nội dung của luận văn, những điều được trình bày hoặc là của cá nhân hoặc là được tổng hợp, nghiên cứu từ nhiều nguồn tài liệu Tất cả các tài liệu tham khảo đều có xuất xứ và trích dẫn
Trang 4Số hóa bởi Trung tâm Học liệu – ĐHTN http://www.lrc.tnu.edu.vn
LỜI CẢM ƠN
Lời đầu tiên, tôi xin bày tỏ lòng biết ơn đến thầy TS Trần Đức Sự - Ban
Cơ Yếu Chính Phủ, người đã tận tình hướng dẫn, chỉ bảo và giúp đỡ tôi trong suốt quá trình nghiên cứu và hoàn thành luận văn này
Tôi xin chân thành cảm ơn các thầy cô giáo trường Đại học Công nghệ Thông tin và Truyền thông - Đại học Thái Nguyên đã giảng dạy và cung cấp cho chúng tôi những kiến thức rất bổ ích trong thời gian học cao học, giúp tôi
có nền tảng tri thức để phục vụ nghiên cứu khoa học sau này
Tôi cũng xin cảm ơn Lãnh đạo và đồng nghiệp tại đơn vị đã tạo điều kiện và giúp đỡ tôi trong suốt quá trình nghiên cứu và hoàn thành luận văn Tôi cũng xin bày tỏ lòng cảm ơn đến gia đình và bạn bè, những người luôn quan tâm, động viên và khuyến khích tôi trong quá trình học tập
Thái Nguyên, ngày tháng năm 2015
Trang 5MỤC LỤC
Trang
LỜI CAM ĐOAN i
LỜI CẢM ƠN ii
MỤC LỤC iii
DANH MỤC CÁC HÌNH ẢNH vii
DANH MỤC CÁC BẢNG BIỂU viii
MỞ ĐẦU 1
CHƯƠNG 1 TỔNG QUAN VỀ ẨN MÃ VÀ ẢNH SỐ 5
1.1 Giới thiệu chung về ẩn mã 5
1.1.1 Khái niệm ẩn mã 6
1.1.2 Nguyên lý cơ bản của ẩn mã học 6
1.1.3 Ẩn mã thuần túy 8
1.2 Hệ mật mã RSA 9
1.2.1 Hệ thống mã hóa công khai 9
1.2.2 Hệ mật mã khóa công khai RSA 11
1.3 Độ an toàn và độ an toàn hoàn hảo trong ẩn mã 11
1.3.1 Độ an toàn của ẩn mã 11
1.3.2 Độ an toàn hoàn hảo trong ẩn mã 12
1.3.3 Độ an toàn hoàn hảo của một hệ ẩn mã 12
1.4 Ứng dụng của ẩn mã trong môi trường thực tế 13
1.5 Giới thiệu chung về ảnh số 14
1.5.1 Khái niệm ảnh số 14
1.5.2 Điểm ảnh 14
1.6 Các kỹ thuật giấu tin trong ảnh 16
1.6.1 Kỹ thuật giấu tin trên miền không gian ảnh 16
1.6.1.1 Kỹ thuật giấu tin trong khối bit 16
Trang 6Số hóa bởi Trung tâm Học liệu – ĐHTN http://www.lrc.tnu.edu.vn
1.6.1.2 Kỹ thuật giấu tin thay thế các bit có trọng số thấp nhất 18
1.6.2 Kỹ thuật giấu tin trên miền tần số ảnh 19
1.7 Một số dạng tấn công trong môi trường ảnh số hóa 19
1.7.1 Tấn công trực quan 19
1.7.1.1 Tấn công trực quan dựa trên việc giấu và tìm kiếm tuần tự 19 1.7.1.2 Tấn công trực quan dựa trên việc giấu và tìm kiếm ngẫu nhiên 20
1.7.2 Tấn công cấu trúc 21
1.7.2.1 Tấn công cấu trúc trên dung lượng tập tin 21
1.7.2.2 Tấn công cấu trúc dựa trên việc ẩn mã bằng bảng màu 22
1.7.3 Tấn công thống kê 23
CHƯƠNG 2 KẾT HỢP KỸ THUẬT LSB VÀ THUẬT TOÁN RSA GIẤU TIN TRONG ẢNH BITMAP 24 BIT 24
2.1 Cấu trúc ảnh Bitmap 24
2.2 Kỹ thuật giấu tin LSB 28
2.2.1 Quá trình giấu tin 28
2.2.2 Quá trình tách tin 29
2.2.3 Đánh giá thuật toán 30
2.3 Mô hình sử dụng kỹ thuật LSB kết hợp thuật toán RSA để tăng độ an toàn cho việc giấu tin trong ảnh 31
2.3.1 Thuật toán mã hóa khóa công khai RSA 32
2.3.2 Mô hình giấu tin sử dụng kỹ thuật LSB kết hợp thuật toán RSA 36
2.4 Đánh giá mô hình sử dụng kỹ thuật LSB kết hợp thuật toán RSA 39
CHƯƠNG 3 TRIỂN KHAI CHƯƠNG TRÌNH THỬ NGHIỆM 42
3.1 Mục đích, yêu cầu 42
3.2 Yêu cầu về cấu hình hệ thống 42
3.3 Lựa chọn định dạng file ảnh trong thực nghiệm 42
Trang 73.4 Sơ đồ chức năng chương trình 43
3.5 Sơ đồ hoạt động của chương trình 45
3.6 Thuật toán RSA, giấu tin và trích rút tin theo kỹ thuật đề xuất 48
3.6.1 Thuật toán RSA 48
3.6.1.1 Tạo khóa công khai và khóa bí mật 48
3.6.1.2 Thuật toán mã hóa 49
3.6.1.3 Thuật toán giải mã 49
3.6.2 Giấu tin 50
3.6.3 Trích rút 51
3.7 Kết quả thực nghiệm 52
3.7.1 Chức năng tạo khóa 52
3.7.2 Chức năng giấu thông tin 53
3.7.3 Chức năng trích rút tin mật 54
3.8 Đánh giá kết quả thực nghiệm 55
KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN 57
TÀI LIỆU THAM KHẢO 58
PHỤ LỤC 59
Trang 8Số hóa bởi Trung tâm Học liệu – ĐHTN http://www.lrc.tnu.edu.vn
DANH MỤC CÁC TỪ VIẾT TẮT TRONG LUẬN VĂN
BMP - Định dạng ảnh Bitmap (Bitmap)
BPP - Số bit trên 1 pixel (Bits per pixel)
CGA - Bộ điều hợp đồ họa màu (Color Graphics Adapter)
CPT - Kỹ thuật giấu tin (Cheng - Pan - Tseng)
DCT - Phép biến đổi Cosin rời rạc (Discrete Cosine Tranform)
DES - Hệ mật mã chuẩn (Data Encryption Standard)
EGA - Bộ điều hợp đồ họa nâng cao (Enhanced Graphics Adapter)
GIF - Định dạng ảnh Gif (Graphics Interchange Format)
LSB - Bit có trọng số thấp nhất (Least Significant Bit)
JPEG - Định dạng ảnh JPEG (Join Photographic Experts Group)
RSA - Mã hóa công khai RSA (Rivest, Shamir và Adleman)
SVGA - Bộ điều hợp đồ họa video cao cấp (Super Video Graphics
Adapter)
VGA - Bộ điều hợp đồ họa video (Video Graphics Adapter)
WEP - Thuật toán mã hóa sử dụng trên mạng không dây (Wired
Equivalent Privacy)
Trang 9DANH MỤC CÁC HÌNH ẢNH
Trang
Hình 1.1 Phân loại kỹ thuật giấu tin 6
Hình 1.2 Mô hình cơ bản của kỹ thuật giấu tin 7
Hình 1.3 Sơ đồ hệ thống mã hóa khóa công khai 11
Hình 2.1 Ảnh đen trắng 24
Hình 2.2 Ảnh đa mức xám 25
Hình 2.3 Ảnh màu 26
Hình 2.4 Ảnh trước và sau khi giấu tin bằng kỹ thuật LSB 30
Hình 2.5 Sơ đồ tạo khóa, mã hóa và giải mã RSA 34
Hình 2.6 Quá trình xử lý giấu thông điệp bí mật 37
Hình 2.7 Quá trình trích xuất thông điệp 38
Hình 3.1 Sơ đồ chức năng chương trình thử nghiệm 43
Hình 3.2 Sơ đồ hoạt động của quá trình giấu tin 45
Hình 3.3 Sơ đồ hoạt động của quá trình trích rút tin 47
Hình 3.4 Quá trình tạo khóa 53
Hình 3.5 Quá trình giấu tin của chương trình 54
Hình 3.6 Quá trình trích rút tin mật của chương trình 55
Trang 10Số hóa bởi Trung tâm Học liệu – ĐHTN http://www.lrc.tnu.edu.vn
DANH MỤC CÁC BẢNG BIỂU
Trang
Bảng 2.1 Ý nghĩa các trường trong vùng Bitmap Header 27
Bảng 2.2 Bảng số hóa thông tin cần giấu 29
Bảng 2.3 Bảng giá trị của bản mã và bản rõ 35
Bảng 3.1 Một số phần mềm giấu tin 42
Trang 11MỞ ĐẦU
1 Đặt vấn đề
Ngày nay, Internet là môi trường phổ biến cho việc trao đổi thông tin giữa các nhà cung cấp và người sử dụng Do đó, vấn đề an toàn dữ liệu trên mạng luôn luôn là một thách thức đối với các nhà quản lý và các nhà nghiên cứu Các thông tin trên Internet có thể dễ dàng bị làm giả mạo, sai lệch và bị đánh cắp bởi hacker trong quá trình truyền tải dữ liệu Thông tin của cá nhân,
tổ chức hoặc quốc gia đứng trước nguy cơ bị xâm nhập bất cứ lúc nào Cùng với nó là vấn nạn ăn cắp bản quyền, xuyên tạc thông tin, ngày càng gia tăng
Vì vậy, vấn đề đặt ra làm thế nào để đảm bảo được sự an toàn, và toàn vẹn thông tin trong quá trình truyền tải trên Internet Hai giải pháp cho vấn đề này
là mã hóa và giấu thông tin có vai trò quan trọng trong việc bảo vệ quá trình truyền tải thông tin mật Sự xác thực và bản quyền trong môi trường trao đổi công cộng Việc tìm giải pháp cho những vấn đề này giúp ta hiểu thêm về một công nghệ đang phát triển và còn tạo ra những cơ hội mới [1]
Một dạng quan trọng của kỹ thuật giấu tin đó là kỹ thuật ẩn mã (Steganography), nó đã xuất hiện từ rất lâu nhưng việc ứng dụng của kỹ thuật này trên dữ liệu số mới xuất hiện gần đây Steganography là kỹ thuật che giấu thông tin nhằm ngăn chặn việc phát hiện sự tồn tại của những thông điệp được ẩn trong một đối tượng số Mục tiêu chính của ẩn mã là liên lạc an toàn theo một cách thức mà khó có thể phát hiện và tránh những nghi ngờ trong quá trình truyền tải Đối với kỹ thuật này, những thông tin cần bảo mật sẽ được ẩn trong một đối tượng khác (gọi là môi trường giấu tin) sao cho sau khi giấu tin, sự biến đổi của đối tượng này là rất khó nhận biết, đồng thời vẫn có thể lấy lại được thông điệp đã được giấu đi khi cần Với Steganography, các
kẻ tấn công khó xác định được là có thông tin được giấu ở trong đó hay không, đó chính là ưu điểm của hướng tiếp cận này so với mã hóa [2]
Trang 12Số hóa bởi Trung tâm Học liệu – ĐHTN http://www.lrc.tnu.edu.vn
Kỹ thuật LSB là một trong những kỹ thuật được sử dụng trong ẩn mã Tuy nhiên, LSB đơn thuần có độ an toàn không cao, dễ bị kẻ tấn công trích xuất thông tin được giấu Bởi vậy, người ta thường sử dụng kỹ thuật này với
sự hỗ trợ từ các thuật toán mã hóa nhằm nâng cao độ an toàn, hạn chế việc thông tin được giấu bị trích xuất bởi những kẻ tấn công
Sau khi tiến hành nghiên cứu các tài liệu liên quan đến lĩnh vực giấu tin trong đa phương tiện và nhận thấy các kỹ thuật trên đều cho kết quả tốt với việc đảm bảo được tính chất ẩn của thông tin được giấu và không làm ảnh hưởng đến chất lượng của dữ liệu gốc Với mong muốn phát triển các kỹ thuật giấu thông tin nhằm bảo vệ các thông tin mật trong quá trình trao đổi Được
sự sự đồng ý, động viên của cán bộ hướng dẫn khoa học, tôi đã chọn đề tài
“Nghiên cứu kỹ thuật LSB và kết hợp thuật toán RSA để giấu tin trong
ảnh” làm vấn đề nghiên cứu cho luận văn cao học của mình Mong rằng kết
quả của đề tài khi được triển khai thực tế sẽ góp phần tăng thêm độ an toàn cho các thông tin mật trong quá trình trao đổi
2 Mục tiêu nghiên cứu
Luận văn nghiên cứu hệ thống lý thuyết liên quan đến ẩn mã và ảnh số phục vụ cho việc giấu tin trong dữ liệu đa phương tiện Tìm hiểu và đánh giá phương pháp ẩn mã dựa trên kỹ thuật LSB kết hợp với thuật toán mã hóa khóa công khai RSA, từ đó xây dựng một phần mềm để giấu thông điệp dạng
text vào trong ảnh Bitmap 24 bit
3 Đối tượng và phạm vi nghiên cứu
Với mỗi dữ liệu đa phương tiện có các định dạng, tính chất, đặc trưng khác nhau Để xây dựng một kỹ thuật giấu tin trên các dữ liệu này thường đòi hỏi các thuật toán phức tạp Trong luận văn này, ngoài việc tìm hiểu khát quát
về giấu tin, các kỹ thuật giấu tin Nghiên cứu một số kỹ thuật giấu tin bằng LSB và thuật toán mã hóa RSA để giấu thông tin mã hóa vào hình ảnh Luận
Trang 13văn còn tập trung nghiên cứu về cấu trúc ảnh Bitmap và triển khi thực nghiệm giấu tin trong ảnh có định dạng BMP
4 Phương pháp nghiên cứu
Luận văn sử dụng phương pháp nghiên cứu tư liệu kết hợp với triển khai thực nghiệm Trên cơ sở nguyên cứu tổng hợp từ các kỹ thuật giấu tin trong ảnh Luận văn đưa ra một kỹ thuật giấu tin mới và tiến hành cài đặt chương trình thực nghiệm giấu tin trong ảnh Bitmap 24 bit
5 Ý nghĩa khoa học của đề tài
Về lý thuyết:
- Tiếp cận một hướng nghiên cứu trong lĩnh vực an toàn và bảo mật thông tin Đây là phương pháp mới và phức tạp Phương pháp này đang được xem như một giải pháp có nhiều triển vọng cho vấn đề bảo vệ bản quyền, nhận thức thông tin và điều khiển truy cập ứng dụng trong an toàn và bảo mật thông tin
- Trình bày tương đối đầy đủ một hệ thống lý thuyết giấu tin và đưa ra một mô hình kết hợp để thực hiện giấu tin trong ảnh
Về thực tiễn:
Với việc triển khai thực tế của đề tài, sẽ góp phần tăng thêm độ an toàn cho các thông tin mật trong việc bảo vệ và truyền thông tin mật
6 Bố cục của luận văn
Dựa trên đối tượng và phạm vi nghiên cứu, luận văn sẽ được phân làm 3 chương chính với các nội dung cụ thể như sau:
Chương 1 Tổng quan về ẩn mã và ảnh số
Ở chương này đề tài sẽ đi vào tìm hiểu các khái niệm về ẩn mã và ảnh
số, mục đích cũng như tính cấp thiết của việc giấu tin trong đa phương tiện, trong đời sống thông tin và truyền tin hiện nay
Tìm hiểu một môi trường cụ thể mà luận văn sử dụng để giấu tin là ảnh
Trang 14Số hóa bởi Trung tâm Học liệu – ĐHTN http://www.lrc.tnu.edu.vn
số Khái quát một số ứng dụng và các tấn công trên hệ thống giấu tin
Chương 2 Kết hợp kỹ thuật LSB và thuật toán giấu tin trong ảnh Bitmap 24 bit
Trong chương này sẽ đi vào tìm hiểu về cấu trúc của hình ảnh Bitmap và thuật toán RSA Và nghiên cứu quá trình giấu tin và tách thông tin trên ảnh
Từ đó đề xuất mô hình kết hợp giữa kỹ thuật LSB và thuật toán RSA để giấu tin trong ảnh
Đánh giá thuật toán như độ phức tạp hay tính an toàn, bảo mật của thông tin được giấu
Chương 3 Xây dựng chương trình thử nghiệm
Chương này sẽ đưa ra mục đích, yêu cầu cũng như mô tả sơ đồ chương trình thực nghiệm đã được xây dựng Lựa chọn định dạng file ảnh để thử nghiệm thuật toán được mô tả tại Chương 2 Mô tả thuật toán mã hóa RSA, giấu và trích rút thông tin trong ảnh trên mô hình kết hợp đã được đề xuất trong chương 2 Các kết quả thực nghiệm và đối sánh Đồng thời đánh giá kết quả thực nghiệm đạt được và đưa ra các khả năng ứng dụng của chương trình thực nghiệm
Trang 15CHƯƠNG 1 TỔNG QUAN VỀ ẨN MÃ VÀ ẢNH SỐ 1.1 Giới thiệu chung về ẩn mã
Theo xu hướng phát triển của các kỹ thuật giấu tin hiện nay, và dựa trên mục đích sử dụng khác nhau, kỹ thuật giấu tin có thể được ra làm 2 loại lớn:
Thủy vân dễ vỡ: Là kỹ thuật nhúng thủy vân vào trong một đối tượng sao cho khi phân bố sản phẩm trong môi trưởng mở nếu có bất kỳ phép biến đổi nào làm thay đổi sản phẩm gốc thì thủy vân đã được giấu trong đối tượng
sẽ không còn nguyên vẹn như trước khi giấu
Thủy vân ẩn: Cũng giống như giấu tin, thủy vân ẩn không thể nhìn thấy bằng mắt thường
Thủy vân hiện: Là loại thủy vân hiện ngay trên sản phẩm và mắt thường
có thể nhìn thấy được
Trang 16Số hóa bởi Trung tâm Học liệu – ĐHTN http://www.lrc.tnu.edu.vn
Hình 1.1 Phân loại kỹ thuật giấu tin
1.1.1 Khái niệm ẩn mã
Steganography có nguồn gốc từ tiếng Hy Lạp: Stegos có nghĩa là
“Cover” - Che đậy và Grafia có nghĩa là “Writing” – Văn bản Cover Writing đƣợc hiểu là văn bản đƣợc che đậy Do vậy, Steganography là khoa học và nghệ thuật về thông tin liên lạc vô hình Kỹ thuật này đƣợc thực hiện thông qua việc che giấu sự tồn tại của thông tin bằng việc ẩn nó vào một thông tin khác [2]
1.1.2 Nguyên lý cơ bản của ẩn mã học
Hiện nay có rất nhiều khía cạnh và ứng dụng đƣợc phát triển từ khái niệm ẩn mã Steganography nhƣng hầu hết chúng đều dựa trên một mô hình, một nguyên lý cơ bản chung nhƣ sau:
Alice muốn chia sẻ một thông điệp bí mật (Secret Message) với Bob, bằng cách chọn ngẫu nhiên một thông điệp bao phủ (Cover Message hay môi
Trang 17trường giấu tin) có thể là ảnh, văn bản, audio… Alice nhúng thông điệp bí mật vào môi trường giấu tin, kết hợp với khóa bí mật (Secret Key) sẽ thu được thông điệp mang tin mật (Stego Message) để truyền cho Bob nhằm tránh
sự nghi ngờ của bên thứ ba Điều này cần được thực hiện hết sức cẩn thận, để chắc chắn rằng bên thứ ba Wendy chỉ biết thông điệp chứa tin mật là vô hại
và không thể phát hiện ra thông điệp bí mật được chứa trong đó [3]
Hình 1.2 Mô hình cơ bản của kỹ thuật giấu tin Tuy vậy, trong thực tế không phải dữ liệu nào cũng có thể được sử dụng làm vật phủ trong truyền tin mật, bởi vì sự thay đổi thực hiện trong quá trình giấu tin phải được coi là không nhìn thấy đối với những người không liên quan đến quá trình truyền thông Điều này đòi hỏi vật phủ phải có một lượng
dữ liệu dư thừa đủ để giấu thông tin mật, hay nói cách khác là đủ để thay thế được thông tin mật
Trang 18Số hóa bởi Trung tâm Học liệu – ĐHTN http://www.lrc.tnu.edu.vn
Nếu một người tấn công truy nhập được vào hai “phiên bản” của một vật phủ thì sẽ dễ dàng phát hiện sự có mặt của thông tin mật và thậm chí có thể xây dựng lại được những thông tin đó Vì vậy, một vật phủ không nên được
sử dụng hai lần Do đó, để tránh việc sử dụng lại, cả người gửi và người nhận phải huỷ bỏ các vật phủ đã được sử dụng trong quá trình truyền tin
Trong quá trình giấu tin, để làm tăng tính bảo mật của thông điệp cần giấu, có thể dùng nhiều phương pháp khác nhau Tuy nhiên, về cơ bản thì có hai loại giao thức ẩn mã học, đó là ẩn mã thuần tuý và ẩn mã có xử lý
1.1.3 Ẩn mã thuần túy
Một hệ ẩn mã trong đó không trao đổi các thông tin bí mật hay một khóa
bí mật (Secret Key) được goi là hệ ẩn mã thuần túy
Định nghĩa Hệ ẩn mã thuần túy (Pure Steganography):
Một bộ , trong đó là tập các vật phủ có thể, là tập thông điệp cần giấu với điều kiện | | | |
Quá trình gắn tin được mô tả bởi ánh xạ là một hàm nhúng thông điệp vào thông điệp chứa (hay còn gọi là hàm gắn tin) và
là hàm giải mã thông điệp sao cho ( ) với mọi được gọi là một hệ ẩn mã thuần túy
Trong hầu hết các hệ ẩn mã, tập các vật phủ có thể được chọn như tập các ảnh số, hoặc tập các văn bản, video hay âm thanh ., hai bên có thể trao đổi mà không bị nghi ngờ Quá trình gắn tin được thực hiện sao cho giữa vật phủ và thông điệp bí mật tương ứng trông tương tự nhau Tính chất tương
tự có thể được định nghĩa qua một hàm tương tự, ta có định nghĩa sau:
Định nghĩa Hàm tương tự:
Cho là một tập không rỗng
Một hàm sim: được gọi là hàm tương tự trên nếu
Trang 19
Trong trường hợp ảnh số hoặc âm thanh số, tương quan giữa hai tín hiệu
có thể được dùng làm hàm tương tự Như vậy, hầu hết các hệ ẩn mã trong thực tế đều cố gắng thoả mãn điều kiện ( ) với mọi
tương tự sim Khi mã hoá, người gửi chọn một vật phủ với
Đối với các vật phủ là bản thu âm hoặc quét ảnh thì người gửi có thể số hóa nhiều lần, do sự nhiễu trong thiết bị số hóa, với mỗi lần như vậy sẽ thu được một vật phủ được coi là hơi khác, người gửi có thể lựa chọn một vật phủ phù hợp nhất cho quá trình gắn tin của mình
1.2 Hệ mật mã RSA
1.2.1 Hệ thống mã hóa công khai
Vấn đề phát sinh trong các hệ thống mã hóa quy ước (mã hóa cổ điển) là
việc quy ước chung mã khóa k giữa người gửi A và người nhận B Trên thực
tế, nhu cầu thay đổi nội dung của mã khóa k là cần thiết, do đó, cần có sự trao đổi thông tin về mã khóa k giữa A và B Để bảo mật mã khóa k, A và B phải
trao đổi với nhau trên một kênh liên lạc thật sự an toàn và bí mật Tuy nhiên,
rất khó có thể bảo đảm được sự an toàn của kênh liên lạc nên mã khóa k vẫn
có thể bị phát hiện bởi người C!
Trang 20Số hóa bởi Trung tâm Học liệu – ĐHTN http://www.lrc.tnu.edu.vn
Ý tưởng về hệ thống mã hóa khóa công khai được Martin Hellman, Ralph Merkle và Whitfield Diffie tại Đại học Stanford giới thiệu vào năm
1976 Sau đó, phương pháp Diffie-Hellman của Martin Hellman và Whitfield
Diffie đã được công bố Năm 1977, trên báo "The Scientific American", nhóm
tác giả Ronald Rivest, Adi Shamir và Leonard Adleman đã công bố phương pháp RSA, phương pháp mã hóa khóa công khai nổi tiếng và được sử dụng rất nhiều hiện nay trong các ứng dụng mã hóa và bảo vệ thông tin RSA nhanh chóng trở thành chuẩn mã hóa khóa công khai trên toàn thế giới do tính
an toàn và khả năng ứng dụng của nó
Một hệ thống khóa công khai sử dụng hai loại khóa trong cùng một cặp khóa: khóa công khai (Public key) được công bố rộng rãi và được sử dụng để
mã hóa thông tin, khóa bí mật hay khóa riêng (Private key) được sử dụng để giải mã thông tin đã được mã hóa bằng khóa công khai Các phương pháp mã
hóa này khai thác những ánh xạ f mà việc thực hiện ánh xạ ngược f –1rất khó
so với việc thực hiện ánh xạ f Chỉ khi biết được mã khóa bí mật thì mới có thể thực hiện được ánh xạ ngược f –1
Khi áp dụng hệ thống mã hóa khóa công khai, người A sử dụng khóa công khai để mã hóa thông điệp và gửi cho người B Do biết được khóa bí mật nên B mới có thể giải mã thông điệp mà A đã mã hoá Người C nếu phát hiện được thông điệp mà A gửi cho B, kết hợp với thông tin về khóa công khai đã được công bố, cũng rất khó có khả năng giải mã được thông điệp này
do không nắm được khóa bí mật của B
Trang 21Hình 1.3 Sơ đồ hệ thống mã hóa khóa công khai
1.2.2 Hệ mật mã khóa công khai RSA
RSA được lấy tên 3 chữ cái đầu của 3 tác giả R.L.Rivest, A.Shamir và L.Adleman ở MIT (Trường Đại học Công nghệ Massachusetts) vào năm 1977
[8] RSA được biết đến nhiều nhất và sử dụng rộng rãi nhất hiện nay Nó dựa trên các phép toán lũy thừa trong trường hữu hạn các số nguyên theo modulo nguyên tố Cụ thể, mã hóa hay giải mã là các phép toán luỹ thừa theo modulo
số rất lớn Việc thám mã, tức là tìm khóa bí mật khi biết khóa công khai, dựa trên bài toán khó là phân tích một số rất lớn đó ra thừa số nguyên tố Người ta chứng minh được rằng, phép lũy thừa cần O((log n)3) phép toán, nên có thể coi lũy thừa là bài toán dễ Chú ý rằng ở đây ta sử dụng các số rất lớn khoảng
1024 bit, tức là cỡ 10350 Tính an toàn dựa vào độ khó của bài toán phân tích
Trang 22Số hóa bởi Trung tâm Học liệu – ĐHTN http://www.lrc.tnu.edu.vn
của thông điệp bí mật trong vật phủ thì lúc đó hệ ẩn mã được coi là an toàn về
lý thuyết
1.3.2 Độ an toàn hoàn hảo trong ẩn mã
Cachin đưa ra một định nghĩa lý thuyết thông tin hình thức về an toàn của hệ ẩn mã Ý tưởng chính là việc lựa chọn vật phủ xem như một biến ngẫu nhiên với phân bố xác suất Việc gắn các thông điệp mật được xem như một hàm định nghĩa trong Gọi là phân bố xác suất của là tập tất cả các thông điệp mang tin mật được sinh ra bởi hệ ẩn mã Nếu một vật phủ không bao giờ được sử dụng như một vật phủ sau khi gắn tin thì Để tính được , phân bố xác suất trên và phải được cho trước Sử dụng định nghĩa Entropy tương đối giữa hai phân bố
c P
c P c
P
)(
)(log)(
Đo độ không hiệu quả khi giả sử phân bố là trong khi phân bố thực sự
là (tác động của quá trình gắn tin trên phân bố có thể đo được) Cụ thể, chúng ta định nghĩa độ an toàn của một hệ ẩn mã theo
1.3.3 Độ an toàn hoàn hảo của một hệ ẩn mã
Giả sử là một hệ ẩn mã, là phân bố xác suất của các vật phủ sau khi gắn tin gửi trên kênh, là phân bố xác suất của được gọi là - an toàn đối với người tấn công thụ động nếu
và gọi là an toàn một cách hoàn hảo nếu
Do nếu và chỉ nếu hai phân bố là bằng nhau, chúng ta có thể kết luận rằng một hệ ẩn mã là an toàn một cách hoàn hảo về mặt lý thuyết, nếu như quá trình gắn tin vào vật phủ không làm thay đổi phân bố xác suất của Chúng ta có thể xây dựng một hệ ẩn mã với độ an toàn hoàn hảo
Trang 23Định lý: Tồn tại một hệ ẩn mã có độ an toàn hoàn hảo
Chứng minh
Chúng ta sẽ đưa ra một chứng minh có tính chất xây dựng Giả sử là tập các xâu bit có độ dài n là phân bố đều trên , và là một thông điệp mật Người gửi chọn ngẫu nhiên một và tính , trong
đó là toán tử XOR bit Vật phủ thu được sau khi gắn tin mật s sẽ được phân
bố đều trên , do vậy và Trong quá trình rút tin, thông điệp mật có thể được xây dựng lại bằng cách tính
1.4 Ứng dụng của ẩn mã trong môi trường thực tế
Kỹ thuật ẩn mã có rất nhiều ứng dụng trong môi trường thực tế, một trong số đó có thể kể đến các ứng dụng sau:
• Lưu trữ và đảm bảo các thông tin bí mật: Trong ứng dụng này, việc
đảm bảo tính bí mật cho thông điệp cần giấu chính là điều quan trọng nhất Steganography cung cấp cho chúng ta khả năng che giấu đi sự tồn tại của dữ liệu mật, gây khó khăn cho việc phát hiện có thông tin được ẩn và tăng độ an toàn của dữ liệu được mã hóa Trong thực tế, khi chúng ta sử dụng một kỹ thuật ẩn mã, chúng ta nên chọn một môi trường nhúng phù hợp với kích thước của dữ liệu cần giấu, đặc biệt, vật phủ càng lớn hơn so với thông điệp thì càng tốt, và nên loại bỏ môi trường nhúng ban đầu để đảm bảo sự an toàn và tính bí mật cho thông tin
• Liên lạc bí mật: Trong nhiều trường hợp, sử dụng mật mã có thể gây ra
sự chú ý ngoài mong muốn Ngược lại, việc giấu tin trong một vật phủ nào đó rồi gửi đi trên kênh truyền lại ít gây sự chú ý hơn Ta có thể sử dụng ẩn mã để gửi đi một bí mật thương mại, một bản vẽ hoặc các thông tin nhạy cảm
• Gán nhãn: Tiêu đề, chú giải, nhãn thời gian và các minh họa khác có
thể được nhúng vào ảnh, khi đó việc sao chép ảnh sẽ sao chép cả các dữ liệu trong đó Tuy nhiên chỉ chủ sở hữu của bức ảnh này mới có thể tách ra và
Trang 24Số hóa bởi Trung tâm Học liệu – ĐHTN http://www.lrc.tnu.edu.vn
xem các thông tin này vì họ có khóa mật Ngoài ra, nhờ việc ẩn mã, họ có thể gán từ khóa vào cơ sở dữ liệu ảnh để từ đó, việc tìm kiếm bức ảnh sẽ nhanh chóng hơn Đối với video, người ta có thể gán thời điểm diễn ra sự kiện vào một khung ảnh để có thể đồng bộ hình ảnh với âm thanh Đặc biệt, ta cũng có thể gán số lần ảnh được xem để tính tiền thanh toán theo số lần xem
1.5 Giới thiệu chung về ảnh số
1.5.1 Khái niệm ảnh số
Ảnh số là một tập hợp các điểm màu nằm trên một bề mặt phẳng, nhằm mục đích mô tả, ghi lại những cảm nhận thị giác của con người hoặc một đối tượng vật lý nào đó
1.5.2 Điểm ảnh
Điểm ảnh – Pixel (Picture Element) là đơn vị cơ bản nhất cấu tạo nên một hình ảnh, nó thường được hiểu như là một thành phần nhỏ nhất của một hình ảnh
Điểm ảnh – Pixel là một phần tử của ảnh số tại tọa độ với độ xám hoặc một màu nhất định Kích thước và khoảng cách giữa các điểm ảnh đó được chọn thích hợp sao cho mắt người cảm nhận được sự liên tục về không gian và mức xám hoặc màu của ảnh số gần như ảnh thật Điểm ảnh được nhận biết như là những khối màu, hình vuông, rất nhỏ Một hình ảnh có thể được cấu thành từ hàng triệu điểm ảnh, càng nhiều điểm ảnh thì hình ảnh càng chi tiết và rõ nét
Trong một hình ảnh, các điểm ảnh được sắp xếp gọn gàng thành cột và hàng Phép tính dùng để đo kích thước số điểm ảnh trên cột dọc và hàng ngang của hình ảnh được gọi là Độ phân giải – Resolution Khi nói một hình ảnh có kích thước “779 x 498 pixel” tức là có 779 điểm ảnh trên hàng ngang
và 498 điểm ảnh trên hàng dọc Hoặc, khi nói một màn hình có độ phân giải
Trang 25là “1024 x 768 pixel” nghĩa là màn hình đó có 1024 hàng điểm ảnh, và 768 cột điểm ảnh Độ phân giải càng cao thì ảnh càng đẹp và rõ nét
Mỗi một pixel có thể nhận một hoặc nhiều các bit tín hiệu điện tử, dùng
để kích hoạt chúng Số lượng các màu sắc khác nhau trên hình ảnh phụ thuộc vào số bit trên một pixel (Bits per pixel – bpp) Số bit mà pixel có thể nhận được phân loại như sau:
• 1bpp (1bit trên một pixel): Đây là đặc trưng của loại màn hình Monochrome Monitor (màn hình đen trắng) Mỗi một pixel có thể được bật hoặc tắt, hoặc được gán giá trị hoạt động là 0 và 1 Khi một pixel nhận giá trị
1, nó được bật, khi đó sẽ có màu xanh nhạt hoặc màu vàng đậm Khi một pixel nhận giá trị 0, nó ở trạng thái tắt, pixel tắt có màu đen
• 2bpp (2bit trên một pixel): Là đặc trưng của loại màn hình CGA (Color Graphic Adaptor), cho phép hiển thị 4 màu Một pixel sẽ nhận được 2 bit tín hiệu, khi đó:
Giá trị “00” biểu diễn màu đen
Giá trị “01” biểu diễn màu đỏ
Giá trị “10” biểu diễn màu xanh
Giá trị “11” biểu diễn màu trắng
• 4bpp (4bit trên một pixel): Đây là đặc trưng của loại màn hình EGA (Enhanced Graphics Adaptor), cho phép hiển thị 4 bit kết hợp với nhau tạo thành 16 màu riêng biệt, được biểu diễn từ 0000 đến 1111
• 8bpp (8bit trên một pixel): Đây là đặc trưng của loại màn hình VGA (Video Graphics Adaptor), cho phép hiển thị 8 bit kết hợp thành 256 nhóm 8 bit từ 00000000 đến 11111111, tương đương với 256 màu
• 24 bpp (24bit trên một pixel): Là đặc trưng của loại màn hình SVGA (Super Video Graphics Adaptor), cho phép hiển thị 24 bit tín hiệu kết hợp
Trang 26Số hóa bởi Trung tâm Học liệu – ĐHTN http://www.lrc.tnu.edu.vn
thành 16,7 triệu nhóm bit 24 khác nhau, tương đương với việc có thể hiển thị
16,7 triệu màu
1.6 Các kỹ thuật giấu tin trong ảnh
1.6.1 Kỹ thuật giấu tin trên miền không gian ảnh
1.6.1.1 Kỹ thuật giấu tin trong khối bit
Kỹ thuật giấu tin Wu - Lee: Kỹ thuật này được đưa ra bởi M Y WU
và J H Lee, được thực hiện như sau: Có một ảnh gốc nhị phân F, một khóa bí mật K (Secret Key) và một số các bit dữ liệu cần giấu Khóa K là một ma trận nhị phân có kích thước Để đơn giản, coi kích cỡ của ảnh F là bội của Ý tưởng của thuật toán là làm thế nào để nhúng được vào nhiều khối, mỗi khối chỉ một bit thông tin
Nếu một khối thỏa mãn điều kiện thì một bit thông tin sẽ được giấu vào khối đó bằng cách thay đổi phẩn tử của khối thành ‟ sao cho luôn thỏa mãn điều kiện:
Thuật toán này làm thay đổi nhiều nhất một bit của khối khi giấu một bit thông tin vào trong khối Vì vậy, với một khối có kích thước đủ lớn thì sự thay đổi của là không đáng kể
Nhận xét:
Có thể tăng tính bảo mật của thông tin cần giấu khi ta thay đổi cách trượt của ma trận khóa K (thẳng, chéo, zic zắc, cong, xoắn ốc…) trên ma trận ảnh Thuật toán này vẫn chưa đạt được những yêu cầu cần thiết về khả năng giấu,
độ an toàn thông tin cũng như chất lượng ảnh đen trắng Tuy nhiên, nếu áp dụng kỹ thuật này cho ảnh màu thì sẽ thu được kết quả khả quan hơn
Kỹ thuật giấu tin Chen – Pan – Tseng (CPT): Trong thuật toán này,
chúng ta sẽ nhắc đến một số khái niệm như sau:
Trang 27- Khóa bí mật K (Secret Key): Khóa K là một ma trận nhị phân có cùng kích thước với kích thước của khối ảnh Khóa được dùng một cách
bí mật giữa người gửi và người nhận
- Ma trận trọng số cấp r (Weight Matrix): Có kích thước bằng kích thước của một khối ảnh và thỏa mãn các điều kiện sau:
– là một ma trận số nguyên có các phần tử nằm trong khoảng giá trị với cho trước thỏa mãn điều kiện
Mỗi phần tử có giá trị từ phải xuất hiện ít nhất 1 lần trong Với mỗi thỏa mãn sẽ có:
x ( -1)! x khả năng chọn
Ví dụ như với thì có 5 356 925 280 khả năng chọn Con số này đủ lớn để làm giảm nguy cơ thông tin bị giải mã bởi những kẻ phá hoại
- Phép đảo bit: Đảo bit tương đương với phép biến đổi thay bởi , tức là nếu ban đầu nhận các giá trị 0 thì sau khi đảo nó sẽ nhận giá trị
1 và ngược lại
- Các phép toán trên ma trận dùng trong thuật toán: Ngoài các phép toán thông thường như AND, XOR, SUM thì trong thuật toán này còn sử dụng thêm phép toán nhân ma trận (ký hiệu ⊗)
Phân tích thuật toán:
- Dữ liệu nhập:
- là một ma trận ảnh gốc được dùng để nhúng thông tin F được chia thành các khối nhỏ , mỗi ma trận điểm ảnh có kích thước là , để đơn giản, giả sử rằng F là bội của các
- là một ma trận khóa ngẫu nhiên có kích thước
- là một ma trận trọng số ngẫu nhiên, cùng kích thước của K
Trang 28Số hóa bởi Trung tâm Học liệu – ĐHTN http://www.lrc.tnu.edu.vn
- là lượng thông tin cần giấu, (mỗi có bit)
- là độ chênh lệch trọng số
- Dữ liệu xuất: Các ma trận điểm ảnh ‟ được thay đổi từ Các ‟ cho
ra ảnh có thông tin cần giấu
Nhận xét:
Thuật toán giấu tin CPT có thể giấu 2 bit thông tin vào một khối ảnh nên
nó đã có nhiều cải tiến so với những thuật toán khác chỉ giấu được 1 bit thông tin trong 1 khối ảnh Đây là thuật toán tương đối dễ cài đặt vàđộ an toàn của nóđược nâng cao thông qua việc sử dụng hai ma trận (khóa, trọng số) để giấu tin và giải mã tin
1.6.1.2 Kỹ thuật giấu tin thay thế các bit có trọng số thấp nhất
Khái niệm bit có trọng số thấp nhất (LSB): Bit có trọng số thấp là bit có
ảnh hưởng ít nhất tới việc quyết định màu sắc của mỗi điểm ảnh, vì vậy khi thay đổi bit ít đặc trưng nhất của một điểm ảnh thì màu sắc của điểm ảnh mới
sẽ không thay đổi nhiều so với điểm ảnh gốc ban đầu Bit có trọng số thấp của một điểm ảnh cũng tương tự như chữ số hàng đơn vị của một số tự nhiên, khi
ta thay đổi giá trị của chữ số này thì chênh lệch giữa số cũ và số mới sẽ ít hơn khi ta thay đổi giá trị của chữ số hàng chục hoặc hàng trăm Việc xác định bít
có trọng số thấp của mỗi điểm ảnh trong một bức ảnh phụ thuộc vào định dạng của ảnh và số bit màu dành cho mỗi điểm của ảnh đó [6]
Các kỹ thuật giấu tin trên miền LSB thuộc nhóm giấu tin trong miền không gian ảnh Phương pháp này thường nhúng thông tin vào các bit có trọng số thấp của ảnh hay được áp dụng trên các ảnh bitmap không nén, các ảnh dùng bảng màu
Ý tưởng của phương pháp này là lấy từng bit của thông điệp cần giấu rồi rải nó lên ảnh vỏ bọc, thay đổi các bit có trọng số thấp của ảnh bằng các bit của thông điệp cần giấu Vì khi thay đổi các bit có trọng số thấp không làm
Trang 29ảnh hưởng đến chất lượng ảnh và mắt người không cảm nhận được sự thay đổi của ảnh đã giấu tin
1.6.2 Kỹ thuật giấu tin trên miền tần số ảnh
Các kỹ thuật biến đổi trong miền tần số ảnh sử dụng một phương pháp biến đổi trực giao nào đó, chẳng hạn như Cosine rời rạc hay Fourier,… để chuyển miền không gian ảnh sang miền tần số Thông điệp sẽ được nhúng trong miền không gian tần số của ảnh theo kỹ thuật trải phổ trong truyền thông [4]
Thuật toán thường được sử dụng là thuật toán giấu tin vào các hệ số DCT: nhúng thông tin trong miền biến đổi cosin rời rạc Giải tần được sử dụng để chứa tín hiệu thông tin là miền tần số giữa của 1 khối DCT 8x8 (DCT-Discrete Cosine Transformation: biến đổi cosin rời rạc) Trong đó các khối DCT 8x8 là những khối ảnh cùng kích thước đã được chọn ra ngẫu nhiên
từ ảnh ban đầu và sử dụng phép biến đổi cosin rời rạc DCT để chuyển sang miền tần số Mỗi tín hiệu của thông tin sẽ được chứa trong một khối
Kỹ thuật giấu tin trên miền tần số ảnh tương đối bền vững Mọi phép biến đổi ảnh, cộng nhiễu vào ảnh sẽ không bị phá hỏng tin giấu Tuy nhiên nếu dùng một số kỹ thuật xử lý ảnh số như sử dụng bộ lọc nhiễu có thể làm mất thông tin mật Tin giấu khó bị phát hiện và thám tin nhưng dung lượng thông tin giấu lại nhỏ
1.7 Một số dạng tấn công trong môi trường ảnh số hóa
1.7.1 Tấn công trực quan
1.7.1.1 Tấn công trực quan dựa trên việc giấu và tìm kiếm tuần tự
Thuật toán Hide & Seek được thực hiện bằng cách thay thế các bit có trọng số thấp (LSBs) thành các bit của thông điệp mật cho đến khi tập tin được nhúng xong Khi thực hiện một cuộc tấn công trực quan (Visual Attacks
on Sequential Hide & Seek) để xác định tồn tại hay không một hình ảnh bị
Trang 30Số hóa bởi Trung tâm Học liệu – ĐHTN http://www.lrc.tnu.edu.vn
nghi ngờ là có nhúng tin mật, các kẻ tấn công sẽ tìm cách để cóđược một sự khác biệt trực quan cho k điểm ảnh đầu tiên với k là độ dài của tin nhắn Sẽ không có giá trị chính xác của k cho đến khi các cuộc tấn công trực quan được thực hiện thành công và phát hiện có dấu hiệu nhúng tin
1.7.1.2 Tấn công trực quan dựa trên việc giấu và tìm kiếm ngẫu nhiên
Các cuộc tấn công trực quan dựa trên việc nhúng và tìm kiếm ngẫu nhiên (Visual Attacks on Randomised Hide & Seek)khác và phức tạp hơn việc nhúng tuần tự, trong đó phương pháp tiếp cận dựa trên việc phân tích thông tin che giấu sẽ có quyền truy cập vào hình ảnh trung thực để chứng minh cuộc tấn công thành công Khi hình ảnh ban đầu được rõ ràng, việc phân tích thông tin che giấu có thể có được vùng LSB ban đầu cũng như vùng LSB bị nghi ngờ, sau đó tính toán sự khác biệt giữa chúng bằng cách loại bỏ những phần giống nhau, từ đó sẽ xem được khu vực đại diện cho các giá trị không thay đổi giữa hai hình ảnh và khu vực đại diện cho các giá trị bị thay đổi
Tóm lại, tấn công trực quan có thể được thực hiện bằng nhiều cách dựa trên các đặc tính của hình ảnh Sự thành công của các cuộc tấn công sẽ thay đổi đáng kể tùy thuộc vào từng thuật toán ẩn mã được sử dụng và định dạng của ảnh Thực tế rằng, các cuộc tấn công trực quan không tự động, để chứng minh một bức ảnh tồn tại sự nghi ngờ về việc nhúng thông tin, họ cần phải nhìn vào hàng ngàn hình ảnh để có thể xem xét khả năng một hình ảnh duy nhất bị nghi ngờ có ẩn mã Một cuộc tấn công trực quan thành công không chỉ cho phép kẻ tấn công xác định được sự thay đổi trong một hình ảnh mà nó còn tiết lộ cách mà hệ thống giấu tin hoạt động (tức là nhúng một cách ngẫu nhiên hay tuần tự) Do vậy, có thể kết luận, các cuộc tấn công trực quan là một công cụ hữu ích cho việc phân tích và phát hiện thông tin bị giấu
Trang 311.7.2 Tấn công cấu trúc
Các cuộc tấn công cấu trúc (Structural Attacks) được thiết kế để tận dụng các tính chất phức tạp luôn tồn tại trong một thuật toán giấu tin cụ thể Điều này có nghĩa là việc phân tích giấu thông tin của kẻ tấn công sẽ đánh chặn các hình ảnh trong 1 kích cỡ nhất định (Ví dụ: thuật toán Hide & Seek buộc chỉ có thể thực hiện trên hình ảnh có kích thước là 320x480 pixels, thuật toán StegoDos chỉ thực hiện được trên hình ảnh có kích thước là 320x200 pixels)và đánh dấu chúng dưới dạng nghi ngờ Tuy nhiên không phải mọi hình ảnh trong kích cỡ trên đều được thay đổi mà đơn giản là chỉ thay đổi hệ thống ẩn mã nhờ vậy mà nó có thể hoạt động trên một hình ảnh có kích cỡ bất
kỳ
Các cuộc tấn công cấu trúc hiếm khi phân tích mỗi hình ảnh trên giá trị riêng của nó Thay vào đó, các hình ảnh được quét xem có bất kỳ một dấu hiệu nào trong việc sử dụng đồ họa trong giấu tin Hình ảnh có chứa các đặc tính này thường phải kiểm tra thêm Có đôi khi các hình ảnh có các dấu hiệu của việc giấu tin trong khi chúng hoàn toàn bình thường Ví dụ: máy tính tạo
ra hình ảnh có thể có một phần màu sắc khác hơn so với tự nhiên bởi vì chúng không chịu ảnh hưởng của các yếu tố như ánh sáng, bóng và lấy mẫu Do hình ảnh mà máy tính tạo ra có thể xuất hiện cấu trúc tương tự với những đặc điểm được cho là của hình ảnh có giấu tin mật, nhưng chúng lại không nhất định có chứa thông tin mật nên cần phải có các cuộc điều tra kỹ lưỡng khi cần sử dụng tấn công cấu trúc
1.7.2.1 Tấn công cấu trúc trên dung lượng tập tin
Một số hình ảnh định dạng cho một nhóm dữ liệu khác nhau đại diện cho một màu sắc Ví dụ: hình ảnh màu xám phân bổ 1 byte cho mỗi điểm ảnh nên giá trị sẽ nằm trong khoảng từ 0-255, trong đó 0 đại diện cho một điểm ảnh màu đen và 255 đại diện cho một điểm ảnh màu trắng Hình ảnh màu sắc
Trang 32Số hóa bởi Trung tâm Học liệu – ĐHTN http://www.lrc.tnu.edu.vn
trung thực phân bổ 3 byte mỗi điểm ảnh, nơi mỗi byte đại diện cho các giá trị màu đỏ, màu xanh lá cây và màu xanh lam tương ứng (vẫn nằm trong khoảng 0-255) Chúng ta ví dụ một hình ảnh trung thực có kích cỡ 1024 x 768 pixel thì chúng ta phải nhân giá trị này 3 lần để phân chia cho các mặt phẳng màu,
có nghĩa là hình ảnh hoàn chỉnh được thể hiện thông qua 2.359.296 byte thông tin (trên 2Mb) Hình ảnh trung thực muốn dùng cho việc giấu thông tin như chúng có chứa các dữ liệu dư thừa có thể được tinh chỉnh để nhúng một thông điệp ẩn và việc phân tích giấu tin thường đánh dấu các hình ảnh như vậy dưới dạng nghi ngờ Đó chính là cơ sở cho một cuộc tấn công cấu trúc dựa trên dung lượng tập tin (Structural Attacks on FileSize)
1.7.2.2 Tấn công cấu trúc dựa trên việc ẩn mã bằng bảng màu
Để tránh các cuộc tấn công cấu trúc trên dung lượng tập tin, người mã hóa giới thiệu thuật toán hoạt động trên các định dạng khác nhau của hình ảnh như GIF và PNG Đối với các định dạng hình ảnh, mỗi giá trị điểm ảnh hoạt động như một chỉ số cho một trong nhiều màu sắc trong một bảng được xác định trước Cho hình ảnh GIF, mỗi điểm ảnh là một byte duy nhất của thông tin có nghĩa là có 256 màu sắc có thể cho hình ảnh Chúng ta có thể tính được
số lượng màu sắc có sẵn bằng cách một hình ảnh i bit cho 2i màu sắc trong bảng Phương pháp giấu tin thực hiện kiểu nhúng LSB tương tự như phương pháp Hide & Seek Tuy nhiên, phương pháp này gia tăng toàn bộ giá trị điểm ảnh hoặc giữ toàn bộ như nhau, trong đó sẽ phải tạo ra một bảng các giá trị điểm ảnh Điều này bởi vì bảng sẽ không ra lệnh cho một phương pháp đặc biệt nào, vì vậy chỉ mục 114 có thể tạo ra một màu xanh da trời, chỉ mục 115 tạo ra màu đỏ đậm
Một cuộc tấn công cấu trúc dựa trên việc ẩn mã bằng bảng màu (Structural Attacks on Palette - based Steganography) thành công dựa vào việc có thể xác định một sự khác biệt rõ rệt giữa hình ảnh trung thực và một
Trang 33hình ảnh có chứa thông tin mật, có nghĩa là có một sự phụ thuộc quan trọng vào việc biết sự che phủ hoặc biết các chi tiết phức tạp của thuật toán nhúng Rất hiếm khi có các trường hợp mà một kẻ tấn công sẽ có thể thực hiện một trong hai điều này, và thậm chí còn hiếm hơn để họ có thể sử dụng cả hai mà chỉ ảnh hưởng đến sự thành công của cuộc tấn công
Tuy nhiên, một cuộc tấn công cấu trúc có thể chứng minh thành công nếu hệ thống giấu tin rất kém mà nó để lại manh mối lỗ hổng của thao tác
1.7.3 Tấn công thống kê
Trong toán học, nghiên cứu về thống kê có thể xác định được một số hiện tượng xảy ra một cách ngẫu nhiên trong một tập hợp dữ liệu Thông thường, một lý thuyết sẽ được xây dựng để giải thích nguồn gốc của hiện tượng đó, và phương pháp thống kê có thể được sự dụng để chứng minh giả thuyết này là đúng hay sai Nếu xem cấu trúc dữ liệu của một hình ảnh, chúng
ta có thể kiểm tra cách thống kênhư thế nào, từ đó sẽ hữu ích cho việc phân tích thông tin bị giấu nếu hình ảnh đó tồn tại thông điệp ẩn
Tấn công thống kê (Statistical Attacks) có thể được tự động nên nó thường được ưa thích hơn tấn công trực quan và tấn công kết cấu Điều này sẽ giúp cho kẻ tấn công dễ dàng xác định xem một hình ảnh có giấu thông điệp mật hay không Một lợi ích khác của tấn công thống kê là không đòi hỏi phải biết ảnh sau khi phủ sẽ như thế nào Trong khi tấn công cấu trúc sẽ thành công rất lớn thì tấn công thống kê chỉ đơn giản là tạo ra một sự phân tích dựa trên hình ảnh bị nghi ngờ
Tổng kết chương 1:
Trong chương này luận văn đã tìm hiểu các khái niệm về ẩn mã và ảnh
số Tìm hiểu một môi trường cụ thể mà luận văn sử dụng để giấu tin là ảnh số Khái quát một số ứng dụng và các tấn công trên hệ thống giấu tin
Trang 34Số hóa bởi Trung tâm Học liệu – ĐHTN http://www.lrc.tnu.edu.vn
CHƯƠNG 2 KẾT HỢP KỸ THUẬT LSB VÀ THUẬT TOÁN RSA
GIẤU TIN TRONG ẢNH BITMAP 24 BIT 2.1 Cấu trúc ảnh Bitmap
Ảnh Bitmap được truyền tải và sử dụng rộng rãi trên máy tính và các
thiết bị điện tử khác Ảnh Bitmap được chia làm 3 dạng: ảnh nhị phân (ảnh đen trắng), ảnh đa mức xám và ảnh màu
Trong đó, ảnh đen trắng là ảnh mà mỗi điểm ảnh chỉ thể hiện một trong hai trạng thái 0 và 1 để biểu diễn trạng thái điểm ảnh đen hay trắng
Hình 2.1 Ảnh đen trắng Ảnh đa mức xám là ảnh mà mỗi điểm ảnh được biểu diễn bởi một giá trị
và đó là cường độ sáng của điểm ảnh
Trang 35Hình 2.2 Ảnh đa mức xám Ảnh màu là ảnh mà mỗi điểm ảnh được biểu diễn bởi ba đại lượng R (Red), G (Green), B (Blue) Số lượng màu có thể của loại ảnh này lên tới màu khác nhau Nhưng số lượng màu trên thực tế của một ảnh nào đó thường khá nhỏ Để tiết kiệm bộ nhớ với các ảnh có số lượng màu nhỏ hơn
256 thì màu các điểm ảnh được lưu trữ dưới dạng bảng màu Với ảnh có số màu lớn thì các điểm ảnh không tổ chức dưới dạng bảng màu, khi đó giá trị của các điểm ảnh chính là giá trị của các thành phần màu R, G, B Với ảnh có
số lượng màu lớn, tùy theo chất lượng ảnh mà quyết định số bit để biểu diễn cho mỗi màu thường là 24 bit, hoặc 32 bit Với ảnh 24 bit mỗi thành phần màu được biểu diễn bởi một byte (8 bit)