Nội dung luận văn tập trung nghiên cứu, tìm hiểu một số kỹ thuật giấu tin, ảnh số và thủy vân bền vững trên ảnh số đã được công bố trên một số lược đồ thủy vân bền vững khóa công khai ứ
Trang 1LỜI CAM ĐOAN
Tôi xin cam đoan kết quả tìm hiểu, nghiên cứu được trình bày trong luận văn được xây dựng từ kiến thức và kinh nghiệm thực tiễn của bản thân tôi dưới sự hướng dẫn tận tình của thầy giáo PGS.TS Phạm Văn Ất Những điều tôi viết trong luận văn là hoàn toàn trung thực, không vi phạm bất cứ điều gì trong luật sở hữu trí tuệ và pháp luật Việt Nam Tất cả các tài liệu tham khảo đều có xuất xứ rõ ràng và được trích dẫn hợp pháp
Tôi xin hoàn toàn chịu trách nhiệm và chịu mọi hình thức kỷ luật theo quy định cho lời cam đoan của mình
Tác giả luận văn
Trang 2LỜI CẢM ƠN
Lời đầu tiên, tôi xin bày tỏ lòng biết ơn sâu sắc đến đến Ban Giám Hiệu, các thầy giáo, cô giáo Đại học Công nghệ Thông tin và Truyền thông Thái Nguyên đã giảng dạy và cung cấp cho tôi những kiến thức rất bổ ích trong thời gian 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
Đặc biệt, tôi xin bày tỏ sự kính trọng và lòng biết ơn sâu sắc đến thầy giáo PGS-TS Phạm Văn Ất 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
Xin gửi lời cảm ơn tới gia đình, bạn bè, những người luôn quan tâm, động viên, khuyến khích và giúp đỡ tôi trong suốt quá trình học tập và hoàn
thành luận văn
Trang 3MỤC LỤC
LỜI CAM ĐOAN i
LỜI CẢM ƠN ii
MỤC LỤC iii
DANH MỤC CÁC KÍ HIỆU v
DANH MỤC HÌNH VẼ vi
MỞ ĐẦU 1
CHƯƠNG I : TỔNG QUAN VỀ ẢNH SỐ, GIẤU TIN VÀ THỦY VÂN SỐ 3
1.1 Ảnh số 3
1.1.1 Khái niệm ảnh số 3
1.1.2 Phân loại ảnh số 3
1.1.3 Một số khái niệm liên quan đến điểm ảnh 4
1.1.4 Histogram của ảnh 5
1.1.5 Định dạng ảnh bitmap và ảnh Jpeg 5
1.1.6 Một số mô hình màu 8
1.2 Kỹ thuật giấu tin 10
1.2.1 Khái niệm giấu tin 10
1.2.2 Mô hình kỹ thuật giấu tin 10
1.2.3 Các kỹ thuật giấu tin trong ảnh 12
1.2.4 Một số thuật toán giấu tin trên ảnh nhị phân 14
Thuật toán THA 21
1.3 Kỹ thuật thủy vân 23
1.3.1 Khái niệm thủy vân 23
1.3.2 Thủy vân khóa bí mật và thủy vân khóa công khai 23
1.3.3 Phân loại các kỹ thuật thủy vân 24
1.3.4 Mô hình hệ thống thuỷ vân 25
1.3.5 Các tính chất của hệ thuỷ vân 27
1.3.6 Những tấn công trên hệ thuỷ vân 28
1.3.7 Đánh giá chất lượng ảnh trong thuỷ vân 29
Trang 41.3.8 So sánh thuỷ vân tách được với thủy vân gốc 31
1.3.9 Ứng dụng của thủy vân số 32
CHƯƠNG II : THỦY VÂN BỀN VỮNG KHÓA CÔNG KHAI TRÊN MIỀN TẦN SỐ 34 2.1 Một số lược đồ thủy vân trên miền tần số 34
2.2 Một số thuật toán thủy vân bền vững khóa công khai trên miền Cosine rời rạc (DCT) 35
2.2.1 Phép biến đổi DCT 35
Phép biến đổi DCT 1 - D 36
Phép biến đổi IDCT 1 - D 36
Phép biến đổi DCT 2 - D 37
Phép biến đổi IDCT 2 - D 38
2.2.2 Miền DCT 39
2.3 Thuật toán R.Munir và thuật toán THLA 39
2.3.1 Thuật toán R.Munir 39
2.3.2 Thuật toán THLA 42
2.4 So sánh tính bền vững của thuật toán R.Munir và thuật toán THLA 45
CHƯƠNG III : CHƯƠNG TRÌNH THỬ NGHIỆM 48
3.1 Thủy vân và bản quyền tác giả 48
3.1.2 Phân tích bài toán 48
3.1.3 Phát biểu bài toán 48
3.1.4 Hướng giải quyết bài toán 49
3.2 Phần mềm thử nghiệm thủy vân bền vững trên miền DCT 49
3.2.1 Giao diện chính của chương trình 49
3.2.2 Thử nghiệm 51
3.2.3 Các hình thức tấn công 55
KẾT LUẬN 59
TÀI LIỆU THAM KHẢO 61
Trang 5DANH MỤC CÁC KÍ HIỆU
CPT: Y.Chen, H.Pan, Y.Tseng
THA: ĐỖ VĂN TUẤN, TRẦN ĐĂNG HIÊN, PHẠM VĂN ẤT
THLA: ĐỖ VĂN TUẤN, TRẦN ĐĂNG HIÊN, CAO THỊ LUYÊN, PHẠM VĂN ẤT
Trang 6DANH MỤC HÌNH VẼ
Hình 1.1 Biểu diễn các điểm ảnh trong ảnh số 4
Hình 1.2 Biểu đồ histogram của ảnh đa cấp xám Lena 5
Hình 1.3 Cấu trúc tệp ảnh bitmap 6
Hình 1.4: Mô hình màu RGB 8
Hình 1.5: Mô hình màu YCbCr 9
Hình 1.6 Lược đồ của quá trình giấu tin 11
Hình 1.7 Lược đồ giải mã tin giấu 12
Hình 1.8 Phân loại các kỹ thuật thuỷ vân 24
Hình 1.9 Mô hình quá trình nhúng thuỷ vân 26
Hinh 1.10 Mô hình quá trình tách và kiểm định thuỷ vân 27
Hình 2.1 Khối DCT kích thước 8×8 39
Hình 3.1 Giao diện thực hiện nhúng thủy vân 51
Hình 3.2: Các ảnh thử nghiệm 53
Hình 3.3 Giao diện so sánh hai phương pháp Munir và THLA 54
Hình 3.4 So sánh hệ số tương quan hai phương pháp Munir và THLA 55
Hình 3.5 Khẳng định bản quyền tác giả với phép tấn công Crop ảnh 56
Hình 3.6 Khẳng định bản quyền tác giả với phép tấn công làm nhiễu ảnh 57
Hình 3.7 Khẳng định bản quyền tác giả với phép tấn công xoay ảnh 57
Trang 7Thủy vân số dựa trên kết quả nghiên cứu của nhiều lĩnh vực khác nhau như: Mật mã học, kỹ thuật giấu tin, lý thuyết thống kê và xử lý tín hiệu số Mục đích của phương pháp này là nhúng một lượng thông tin có ích được gọi
là thủy vân vào các sản phẩm số Dựa trên mục đích sử dụng, các lược đồ thủy vân được chia thành hai nhóm chính gồm thủy vân bền vững và thủy vân
dễ vỡ Thủy vân dễ vỡ được ứng dụng trong bài toán xác thực tính toàn vẹn
dữ liệu số Trong khi đó thủy vân bền vững được ứng dụng trong bài toán bảo
vệ bản quyền đối với các sản phẩm số
Gần đây đã có một số công trình nghiên cứu trong nước về thủy vân bền vững nhưng dựa vào khóa bí mật Trong các công trình thủy vân khóa bí mật, người nhúng thủy vân và người trích thủy vân sử dụng chung một khóa
bí mật Điều này dẫn đến việc bảo mật công đoạn trao đổi khóa giữa người nhúng dấu thủy vân và người trích dấu thủy vân gặp phải những khó khăn Để khắc phục vấn đề này một số nhà nghiên cứu chuyển hướng sang nghiên cứu phương pháp thủy vân bền vững khóa công khai Phương pháp này, người
Trang 8nhúng thủy vân sử dụng khóa bí mật, người trích thủy vân sử dụng khóa công khai Đây là hướng nghiên cứu mới, có ý nghĩa khoa học và có nhiều ứng
dụng trong thực tiễn Vì vậy em chọn nghiên cứu đề tài: “Xây dựng lược đồ
thủy vân bền vững khóa công khai sử dụng kỹ thuật trải phổ trên miền tần số” Nội dung luận văn tập trung nghiên cứu, tìm hiểu một số kỹ thuật giấu
tin, ảnh số và thủy vân bền vững trên ảnh số đã được công bố trên một số lược
đồ thủy vân bền vững khóa công khai ứng dụng biến đổi Cosine rời rạc (
DCT)
Cấu trúc của luận văn:
Ngoài phần mở đầu, phần kết luận, phần mục lục và tài liệu tham khảo Luận văn được bố cục gồm 3 chương, cụ thể như sau:
Chương I: Tổng quan về ảnh số, giấu tin và thủy vân số
Chương II Thủy vân bền vững khóa công khai trên miền tần số
Chương III: Chương trình thử nghiệm
- Kết luận và những kiến nghị về hướng phát triển
Mặc dù trong quá trình nghiên cứu và hoàn thành luận văn em đã rất nỗ lực và cố gắng Tuy nhiên, do thời gian và trình độ còn hạn chế nên luận văn khó tránh khỏi những thiếu sót, kính mong nhận được sự đóng góp ý kiến, chỉ bảo của các thầy giáo, cô giáo và các bạn để luận văn hoàn thiện hơn
Em xin trân trọng cảm ơn!
Trang 9CHƯƠNG I TỔNG QUAN VỀ ẢNH SỐ, GIẤU TIN VÀ THỦY VÂN SỐ
1.1 Ảnh số
1.1.1 Khái niệm ảnh số
Ảnh số là tập hợp bao gồm hữu hạn các phần tử được gọi là điểm ảnh (pixel), mỗi điểm ảnh được biểu diễn bởi một số hữu hạn các bit Ảnh số được lượng tử từ ảnh liên tục Vì vậy dữ liệu ảnh số có sự tương quan cao, nghĩa là các điểm ảnh lân cận có giá trị xấp xỉ bằng nhau
Trên phương diện toán học, ảnh số được xem như là một ma trận nguyên dương gồm m hàng và n cột, mỗi phần tử của ma trận đại diện cho một điểm ảnh Vì vậy, ta có thể xem việc xử lý ảnh số là việc xử lý ma trận nguyên, dương
Ảnh đa mức xám
Ảnh đa cấp xám là ảnh có thể nhận tối đa 256 mức sáng khác nhau trong khoảng màu đen - màu trắng Như vậy, ảnh đa mức xám xem như là ma trận không âm có giá trị tối đa là 255 Mỗi điểm ảnh trong ảnh đa cấp xám biểu diễn cường độ sáng của ảnh tại điểm đó
Ảnh màu
Ảnh màu là ảnh mà mỗi điểm ảnh được biểu diễn bởi một số byte
(thường là 3 byte) đại diện cho 3 thành phần màu khác nhau Nó còn được
Trang 10gọi là ảnh true color Ảnh màu có thể xem như ma trận nguyên ứng với 3 thành phần màu của các điểm ảnh Hệ màu RGB sẽ bao gồm 3 ma trận màu tương ứng với các giá trị Red, Green và Blue Đây là hệ màu được sử dụng phổ biến nhất
Ngoài ra, ảnh cũng cũng có thể được phân thành hai loại: Ảnh có tần số cao và ảnh có tần số thấp
1.1.3 Một số khái niệm liên quan đến điểm ảnh
Điểm ảnh
Điểm ảnh là một phần tử ảnh, đơn vị thông tin nhỏ nhất trong một ảnh dạng raster Điểm ảnh còn được gọi là pixel hay picture element
Hình 1.1 Biểu diễn các điểm ảnh trong ảnh số
Hàng xóm của một điểm ảnh (Neighbors of a Pixel)
Một điểm ảnh p trong hệ tọa độ (x,y) có 4 hàng xóm bên cạnh theo chiều dọc và chiều ngang với tọa độ như sau: (x + 1, y); (x - 1, y); (x, y + 1); (x, y - 1)
Tập hợp bốn điểm có tọa độ như trên được gọi là 4 - hàng xóm của điểm ảnh p, ký hiệu N4(p) Khoảng các từ bốn điểm này đến p có giá trị đúng bằng một đơn vị khoảng cách
Trong trường hợp p nằm ở biên của ảnh, một số hàng xóm của p sẽ nằm ở bên ngoài ảnh
Trang 111.1.4 Histogram của ảnh
Histogram là bảng thống kê tần suất giá trị cường độ sáng của các điểm ảnh Đối với ảnh màu, cường độ sáng của một điểm ảnh được xác định theo công thức:
Hình 1.2 Biểu đồ histogram của ảnh đa cấp xám Lena
1.1.5 Định dạng ảnh bitmap và ảnh Jpeg
Ảnh bitmap
- Ảnh bitmap còn được biết đến với tên tiếng anh khác là Windows
bitmap, là một định dạng khá phổ biến trong đồ họa máy vi tính Các tệp ảnh
Trang 12lưu dưới dạng bitmap thường có đuôi là BMP hoặc DIB (Device
Independent Bitmap)
- Các thuộc tính cơ bản của một tệp ảnh bitmap:
+ Số bit trên mỗi điểm ảnh thường được ký hiệu bởi n Một ảnh bitmap
n -bit có 2n màu n có thể nhận các giá trị sau:
+ Chiều cao của ảnh cho bởi các điểm ảnh
+ Chiều rộng của ảnh cho bởi các điểm ảnh
- Cấu trúc tập tin ảnh BMP bao gồm 4 phần:
Trang 13Color Palette (4*x bytes với x là số màu của ảnh): định nghĩa các màu
sẽ được sử dụng trong ảnh
Bitmap Data: vùng này lưu dữ liệu ảnh
Ảnh bitmap có một đặc điểm nổi bật là tệp tin hình ảnh thường không được nén bằng bất kỳ thuật toán nào Vì vậy khi lưu ảnh, các điểm ảnh được ghi trực tiếp vào tệp tin Mỗi điểm ảnh sẽ được mô tả bởi một hay nhiều byte tùy thuộc vào giá trị n của ảnh Do đó, một hình ảnh lưu dưới dạng BMP thường có kích cỡ rất lớn, gấp nhiều lần so với các ảnh được nén (chẳng hạn GIF, JPEG hay PNG)
Ảnh JPEG
- Ảnh JPEG là một định dạng ảnh đã qua xử lý nén ảnh, thuật toán
nén là thuật toán JPEG (Joint Photographic Experts Group) - một trong
những phương pháp nén ảnh hiệu quả, có tỷ lệ nén ảnh tới vài chục lần Tuy nhiên ảnh sau khi giải nén sẽ khác với ảnh ban đầu Chất lượng ảnh sẽ
bị suy giảm sau khi giải nén Sự suy giảm này tăng dần theo hệ số nén Tuy nhiên sự mất mát thông tin này là có thể chấp nhận được và việc loại bỏ những thông tin không cần thiết được dựa trên những nghiên cứu về hệ nhãn thị của mắt người
- Ảnh JPEG có một số đặc điểm sau:
+ Ảnh có dung lượng nhỏ, dùng phổ biến trên các thiết bị di động, các trang web
+ Ảnh JPEG có thể hiển thị các hình ảnh với các màu chính xác
(true-colour), có thể lên đến 16 triệu màu
+ Ảnh sử dụng thuật toán nén JPEG sẽ bị mất thông tin so với ảnh gốc
Do đó một số đường bao giữa các khối màu sẽ xuất hiện điểm mờ, và các vùng sẽ mất đi sự rõ nét
Trang 141.1.6 Một số mô hình màu
Một mô hình màu là một mô hình toán học trừu tượng Nó mô tả cách các màu sắc có thể được biểu diễn như là bộ dữ liệu số, thường là ba hoặc bốn giá trị hoặc các thành phần màu sắc Người ta chia ra thành nhiều mô hình màu khác nhau tùy thuộc vào ứng dụng của từng lĩnh vực cụ thể Dưới đây là hai mô hình màu được đề cập đến trong nội dung chương II
Mô hình RGB
Mô hình màu RGB là mô hình gồm ba màu gốc trong các mô hình ánh sáng bổ sung: màu đỏ (red), xanh lá cây (green) và xanh lam (blue) Trong đó ánh sáng đỏ, xanh lá cây và xanh lam được tổ hợp với nhau theo nhiều phương thức khác nhau để tạo thành các màu khác
Hình 1.4: Mô hình màu RGB
Mô hình RGB tự bản thân nó không định nghĩa được màu “đỏ”, “xanh
lá cây” và “xanh lam” một cách chính xác Vì vậy với cùng các giá trị như nhau của RGB có thể mô tả các màu tương đối khác nhau trên các thiết bị khác nhau có cùng một mô hình màu
Mô hình RGB làm việc tốt với các thiết bị phát quang sử dụng ánh sáng trắng làm cơ sở Vì vậy mô hình RGB được sử dụng cho các màu thể hiện trên màn hình máy tính cũng như các màu trong thiết kế Web được chiếu qua các màn hình hay máy chiếu dùng ánh sáng
Trang 15Trong biểu diễn số trên máy tính, ảnh màu RGB có thể sử dụng số bít màu là 16, 24, 32 hoặc 48 Ảnh có số bít càng cao thì càng biểu diễn chính
xác màu sắc của điểm ảnh
Mô hình YCbCr
Mô hình YCbCr quy định một không gian màu được tạo bởi 3 thành phần: Y, Cb, Cr Trong đó thành phần Y thể hiện độ chói của một điểm, hai thành phần Cb và Cr đại diện cho màu của điểm ảnh, thành phần xanh lam (Cb) và thành phần màu đỏ (Cr)
Hình 1.5: Mô hình màu YCbCr
Mô hình màu YCbCr được sử dụng trong truyền hình số cũng như trong DVD Đây là chuẩn ở phần lớn các nước trên thế giới
Mô hình YCbCr giúp tăng tỷ lệ nén mà không làm giảm đáng kể chất lượng ảnh Việc nén hiệu quả hơn với thông tin về độ sáng – thông tin ảnh hưởng nhiều hơn đến cảm nhận chất lượng ảnh của người xem
Trang 16Dưới đây là các công thức sau có thể dùng để tính toán các thành phần
Y, Cb và Cr trong mô hinh màu YcbCr từ các thành phần R, G và B trong
mô hình RGB:
Y = 0.299R + 0.587G + 0.114B
Cb = - 0.1687R – 0.3313G + 0.5B +128
Cr = 0.5R -0.4187G – 0.0813B + 128
1.2 Kỹ thuật giấu tin
1.2.1 Khái niệm giấu tin
Giấu tin là một kỹ thuật giấu một lượng thông tin số nào đó vào một đối tượng dữ liệu khác
Khi giấu tin ta phải đảm bảo đạt được hai mục đích: bảo mật cho dữ liệu được đem giấu và đồng thời cũng phải bảo vệ cho chính đối tượng được giấu tin ở bên trong Từ mục đích trên người ta chia giấu tin thành hai hướng Hướng thứ nhất là giấu tin mật, nhằm tập trung vào các kỹ thuật giấu tin sao cho người khác khó phát hiện được đối tượng có chứa thông tin mật bên trong Hướng thứ hai là thuỷ vân số, hướng thuỷ vân số có miền ứng dụng lớn hơn nên được quan tâm nghiên cứu nhiều hơn và thực tế đã có rất nhiều kỹ thuật đã được đề xuất
1.2.2 Mô hình kỹ thuật giấu tin
Quá trình giấu tin:
- Phương tiện chứa bao gồm các đối tượng được dùng làm môi trường
để giấu tin như các tệp đa phuông tiện (Multimedia)
- Thông tin cần giấu là một lượng thông tin mang một ý nghĩa nào đó tuỳ thuộc vào mục đích của người sử dụng
- Bộ nhúng là những chương trình, thuật toán để giấu tin và được thực hiện với một khoá bí mật giống như các hệ mật mã cổ điển Thông tin sẽ được giấu vào trong môi trường chứa nhờ một bộ nhúng
Trang 17- Môi trường đã giấu tin là môi trường sau khi giấu tin ta thu được Dữ liệu môi trường đã được giấu tin sẽ được phân phối trên các phương tiện truyền thông khác nhau Quá trình giấu tin được thể hiện qua lược đồ dưới đây:
Hình 1.6 Lược đồ của quá trình giấu tin
Quá trình giải mã:
- Môi trường đã giấu tin
- Bộ giải mã tương ứng với bộ nhúng thông tin
- Khoá để giải mã thông tin Khóa này có thể giống hoặc khác với
khoá để nhúng thông tin
- Kết quả thu được gồm môi trường gốc và thông tin đã được giấu
Tuỳ trường hợp, thông tin tách được có thể cần xử lí, kiểm định so sánh với thông tin giấu ban đầu Thông qua dữ liệu mật được tách ra từ môi trường chứa tin giấu, người ta có thể biết được trong quá trình phát tán dữ liệu có bị tấn công hay không Quá trình giấu tin được thể hiện qua lược đồ dưới đây:
Khoá
Thông tin cần giấu
Dữ liệu môi trường
đã được giấu tin
Trang 18Hình 1.7 Lược đồ giải mã tin giấu
Với một hệ thống giấu tin mật, tính an toàn của dữ liệu cần giấu được quan tâm đặc biệt Một hệ thống được xem là có độ bảo mật cao nếu
độ phức tạp của các thuật toán thám mã khó có thể thực hiện được trên máy tính Tuy nhiên, cũng có một số hệ thống lại quan tâm đến số lượng thông tin có thể được giấu, hoặc quan tâm đến sự ảnh hưởng của thông tin mật đến môi trường chứa dữ liệu
1.2.3 Các kỹ thuật giấu tin trong ảnh
Giấu tin trên miền không gian ảnh
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 đ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
Dữ liệu môi trường (audio, video, ảnh )
Bộ giải
mã tin Khoá
Thông tin giấu
Dữ liệu môi trường
đã được giấu tin
Kiểm định
Trang 19phươ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 của mỗi điểm ảnh
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 Điều này là dễ hiểu vì các thao tác nói trên cũng loại bỏ hoặc làm sai lệch các bit ít quan trọng nhất của mỗi điểm ảnh
Giấu tin trên miền biến đổi ảnh
Giấu tin trên miền không gian ảnh như đã trình bày ở trên là cách tiến hành khảo sát tín hiệu và hệ thống rời rạc một cách trực tiếp trên miền giá trị rời rạc của các điểm ảnh gọi là trên miền biến số độc lập tự nhiên Nhưng trong nhiều trường hợp, cách khảo sát trực tiếp này gặp phải những khó khăn nhất định hoặc rất phức tạp và hiệu quả không cao
Ngoài phương pháp khảo sát trực tiếp, 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 các 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 các miền mới với các biến số mới
Miền biến đổi hay còn gọi là miền tấn số là miền nhận được khi biến đổi miền ảnh Đây là kỹ thuật sử dụng phương pháp biến đổi như tính tích phân hay phương pháp đổi hệ tọa độ trong tích đề các Phương pháp này nhằm chuyển miền không gian sang miền tần số, cụ thể là biến đổi tín hiệu và miền giá trị rời rạc của các điểm ảnh sang miền mới và có biến số mới
Mỗi phép biến đổi có những thuận lợi và khó khăn riêng, tùy vào trường hợp cụ thể để lựa chọn phép biến đổi nào cho phù hợp Sau khi biến đổi các tín hiệu và miền giá trị rời rạc trong miền biến số mới này, nếu cần thiết có thể dùng phép biến đổi ngược lại để đưa ảnh về miền biến số độc lập
Trang 20Phương pháp biến đổi gián tiếp 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 biến đổi trực tiếp trong miền biến số độc lập.Có một số phương pháp biến đổi phổ biến hiện nay như: Fourier, Cosin rời rạc (DCT), Wavelet là những phép biến đổi được sử dụng phố biến trong các kỹ thuật xử lý multimedia, đặc biệt trong xử lý ảnh số Ngoài ra các phép biến đổi này còn dùng nhiều trong lĩnh vực giấu tin, thủy vân số
1.2.4 Một số thuật toán giấu tin trên ảnh nhị phân
Thuật toán Wu-Lee [7]
Thuật toán này của tác giả M.Y Wu và J.H.Lee giấu tin trên miền không gian ảnh, áp dụng cho ảnh đen trắng
Ý tưởng của thuật toán: chia ảnh gốc thành các khối nhỏ, trong
mỗi khối sẽ giấu 1 bit ( b = 0 hoặc b = 1)
Xét khối ảnh gốc F, khóa bí mật K là một ma trận ảnh có kích thước m×n và dãy bit nhị phân được nhúng vào F Sau quá trình nhúng thu được ảnh G chính là ảnh F nhưng có một số bit đã bị hiệu chỉnh
Thuật toán giấu tin
Quá trình giấu tin:
Trang 21Nếu 0 < s < SUM(K) đến Bước 2
Bước 2: Xét các trường hợp sau
Trang 22Bước 1: Chia ảnh thành các khối có kích thước giống kích thước khối
đã sử dụng khi thực hiện giấu Đây chính là khoá để giải mã
Bước 2: Với mỗi khối việc trích tin thực hiện theo quy tắc: đếm số bít
1 trong khối, nếu tổng số bít 1 là lẻ thì thu được bít 1, ngượcc lại thu được bít
0 Và cứ tiếp tục cho đến khi hết các khối đã giấu
Nhận xét:
Thứ nhất: ảnh môi trường để thực hiện giấu thông tin cũng phải được chọn kỹ càng Nếu một ảnh có quá nhiều điểm trắng (hoặc đen) thì tỉ lệ bit giấu được sẽ rất thấp
Thứ hai: Vì trong mỗi ma trận điểm ảnh F thuật toán chỉ biến đổi tối đa
là một phần tử (từ 1 thành 0 hoặc từ 0 thành 1), do vậy nếu chọn m, n đủ lớn thì sự thay đổi này khó có thể nhận biết bằng mắt thường nhưng khả năng giấu của thuật toán lại giảm đáng kể
Thứ ba: Khi cần biến đổi ma trận F, thuật toán luôn thay đổi ngẫu nhiên một phần tử Fi,j ứng với Ki,j=1 Do vậy, trong một số trường hợp ảnh sau khi
Trang 23được giấu tin sẽ xuất hiện những điểm khác biệt so với ảnh gốc và dễ dàng phân biệt được bằng mắt thường Do đó, để tăng tính che giấu cho thuật toán chúng ta nên chọn phần tử (i,j) có định hướng theo một tiêu chí nào đó
Thuật toán CPT [8]
Thuật toán này của 3 tác giả Chen - Pan – Tseng (CPT) Trong lĩnh vực giấu tin, kỹ thuật giấu tin CPT nhận được nhiều sự quan tâm của các nhà nghiên cứu trong và ngoài nước Để việc trình bày được thuận lợi, trước tiên luận văn trình bày một số phép toán được sử dụng trong kỹ thuật CPT
Định nghĩa 1
Phép XOR hai ma trận nhị phân cùng cấp A và B (ký hiệu A B) được
ký hiệu C = A B với Cij = 1 nếu Aij Bij và Cij = 0 nếu Aij= Bij
Ví dụ minh hoạ phép toán thực hiện trên hai ma trận nhị phân kích thước 3x3 như sau
0110
0001
0101
1100
1010
1011
1100
1010
1100
1010
1001
Trang 24Thí dụ minh hoạ về ma trận trọng sốcấp 3 (r = 3) với ma trận W như sau:
174
765
231W
1 7 1
7 6 5
2 3 1
K lại không phải là ma trận trọng số
cấp 3 vì trong ma trận K không tồn tại phần tử (i, j) để Ki, j = 4, mà
SUM(A)
n
jA s
Định nghĩa 5
Tập Zd = { (i, j) ( wi, j = α và Ti, j = 0) hoặc( wi, j = r
2 - α và Ti, j = 1) } với i =1 m và j=1 n
Ý tưởng của thuật toán
Thuật toán giấu tin CPT cũng áp dụng tư tưởng giấu tin theo khối bit nhưng mỗi khối có thể giấu được một dãy r bit (với r log2( m n 1 ) ) bằng cách thay đổi nhiều nhất hai bit trong khối
So với thuật toán giấu tin của Wu-Lee, thuật toán CPT có khả năng giấu cao, trong khi số bit cần thay đổi khá ít, do đó sẽ không ảnh hưởng đáng kể đến chất lượng ảnh sau khi giấu Thuật toán CPT sử dụng một ma trận trọng số để giấu được một dãy nhiều bit vào trong mỗi khối, và ma trận trọng số này cũng chính là một thành phần bí mật cùng với ma trận khoá, do
Trang 25vậy độ an toàn của thuật toán CPT cao hơn của thuật toán giấu tin của Lee
Wu-Để tiện cho việc trình bày, trong luận văn sẽ trình bày nội dung thuật toán CPT áp dụng cho một khối bit (ma trận nhị phân) Các phép toán sử dụng trong thuật toán này đều được hiểu theo nghĩa mod r
2
Ký hiệu Bm*n là ma trận nhị phân
Thuật toán nhúng tin
Quá trình giấu tin:
Input:
- F Bm*n (khối điểm ảnh) là ma trận nhị phân cấp m×n
- K Bm*n khóa bí mật sử dung chung cho quá trình nhúng và trích tin
- r là số bit nhị phân cần giấu vào ma trận F, r phải thỏa mãn điều kiện:
2 = b
Trang 26Nội dung thuật toán:
- Xét hai trường hợp sau:
(1) Nếu d = 0, đặt G = F và kết thúc thuật toán
(2) Nếu d ≠ 0, đến Bước 4
Bước 4:
Xây dựng tập Zd, xét các trường hợp sau:
Nếu Zd ≠, thì chọn (i, j)Zd và đảo giá trị phần tử Fi,j
Trang 27Bước 2: Đổi b’ thành dãy nhị phân gồm r bit đã được giấu
Phân tích thuật toán
Thuật toán có thể giấu được r bit vào trong một khối m× n với điều kiện là 2r < m × n và chỉ cần thay đổi nhiều nhất là 2 bit trên một khối Như vậy, thuật toán này đã có cải tiến rất lớn so với những thuật toán khác chỉ giấu được một bit vào mỗi khối
Độ an toàn của thuật toán cũng rất cao thông qua hai ma trận dùng làm khoá để giải tin đó là ma trận trọng số và ma trận khoá Như vậy độ bảo mật của thuật toán là:
Nếu áp dụng tốt thuật toán này cho ảnh màu thì có thể nói thuật toán đã đạt được yêu cầu cơ bản của một ứng dụng giấu tin mật đó là đảm bảo tính ẩn của thông tin giấu, số lượng thông tin giấu cao
Thuật toán THA [6]
Phương pháp THA đề xuất một lượcc đồ giấu tin mới trên ảnh nhị phân Với mỗi khối m × n điểm ảnh F, lược đồ mới có thể giấu được
) 1
n
(
log2 m bít và biến đổi nhiều nhất một điểm ảnh trên F Khả năng nhúng tin của thuật toán này cao hơn khả năng nhúng tin của CPT Ngoài ra,
nó có một số ưu điểm như:
- Tốc độ thực hiện nhanh, đơn giản hơn
- Tính bảo mật, tính che giấu cao hơn
Trang 28Thuật toán nhúng tin
Quá trình giấu tin:
Input:
- F Bm*n (khối điểm ảnh) là ma trận nhị phân cấp m×n
- P , q Bm*n khóa bí Trong đó P thoả mãn điều kiện:
Nếu s = b, đặt G = F và kết thúc thuật toán
Nếu s ≠ b, chuyển sang Bước 2
Bước 2:
Tính d = s b
Chọn một phần tử (u, v) sao cho Pu, v = d
Đảo phần tử Fu,v : Fu,v = 1 - Fu,v
Đặt G = F và kết thúc thuật toán
Trang 29Quá trình trích tin
Để phục hồi dãy bit b đã nhúng vào ảnh ta sử dụng công thức sau:
XSUM(G P) q = b
1.3 Kỹ thuật thủy vân
1.3.1 Khái niệm thủy vân
Thuỷ vân trên ảnh số là kỹ thuật nhúng một lượng thông tin số vào một bức ảnh số Thông tin nhúng được gọi là dấu thuỷ vân, nó có thể là một chuỗi
ký tự, một hình ảnh hay một logo nào đó
Sau khi nhúng dấu thủy vân được gắn liền với bức ảnh chứa, dấu thuỷ vân có thể được hiển thị hoặc ẩn phụ thuộc vào mỗi kỹ thuật thuỷ vân cụ thể
1.3.2 Thủy vân khóa bí mật và thủy vân khóa công khai
Dựa vào việc sử dụng khóa người ta chia các thuật toán thủy vân thành hai nhóm:
Thủy vân khóa bí mật:
Là quá trình thủy vân trong đó quá trình nhúng thủy vân và quá trình kiểm tra dấu thủy vân sử dụng chung một khóa bí mật Do sử việc sử dụng chung khóa cho cả hai quá trình nên cần phải có công đoạn trao đổi khóa giữa người nhúng và người kiểm tra dấu thủy vân Điều này dẫn đến việc cần phải
có biện pháp bảo mật khóa trong khi truyền
Thủy vân khóa công khai:
Là quá trình sử dụng khóa bí mật để nhúng dấu thủy vân, sử dụng khóa công khai để kiểm tra dấu thủy vân Điều này khắc phục được việc phải bảo mật khóa trên đường truyền của thủy vân khóa bí mật
Trang 301.3.3 Phân loại các kỹ thuật thủy vân
Hình 1.8 Phân loại các kỹ thuật thuỷ vân
Các kỹ thuật thủy vân trên hình 1.8 được phân biệt nhau bởi những đặc trưng, tính chất của từng kỹ thuật và khía cạnh ứng dụng những kỹ thuật đó Trong thực tế, tuỳ theo mục đích, yêu cầu của bài toán mà ta sẽ chọn kỹ thuật thuỷ vân phù hợp Tuy nhiên, các kỹ thuật trên cũng có một số đặc điểm giổng nhau
Thuỷ vân dễ vỡ
Là kỹ thuật nhúng thuỷ vân vào trong ảnh sao cho sản phẩm khi phân phối trong môi trường nếu có bất cứ một phép biến đổi nào làm thay đổi đối tượng sản phẩm gốc thì thuỷ vân đã được giấu trong đối tượng sẽ không còn nguyên vẹn như thuỷ vân gốc
Các kỹ thuật thuỷ vân có tính chất này được sử dụng trong các ứng dụng nhận thực thông tin và phát hiện xuyên tạc thông tin Rất dễ hiểu vì sao những ứng dụng này cần đến kỹ thuật thủy vân dễ vỡ Ví dụ như để bảo vệ chống xuyên tạc, một ảnh nào đó ta nhúng một thuỷ vân vào trong ảnh và sau
đó phân phối, quảng bá ảnh đó Khi cần kiểm tra lại ảnh ta sử dụng hệ thống đọc thuỷ vân Nếu không đọc được thuỷ vân hoặc thuỷ vân đã bị sai lệch
Thuỷ vân
Trang 31nhiều so với thuỷ vân ban đầu đã nhúng vào ảnh thì có nghĩa là ảnh đó đã bị thay đổi
Thuỷ vân bền vững
Là kỹ thuật nhúng thuỷ vân vào trong ảnh sao cho thủy vân phải tồn tại bền vững cùng với sản phẩm nhằm chống việc tẩy xoá, làm giả hay biến đổi phá huỷ thuỷ vân Một yêu cầu lý tưởng đối với thuỷ vân bền vững là nếu
muốn loại bỏ thuỷ vân thì cách duy nhất là phá huỷ sản phẩm
Các kỹ thuật thủy vân bền vững thường được sử dụng trong các ứng dụng bảo vệ bản quyền Trong những ứng dụng đó, thuỷ vân đóng vai trò là thông tin sở hữu của người chủ hợp pháp Thuỷ vân được nhúng trong các sản phẩm như một hình thức dán tem bản quyền
Thủy vân hiện: là loại thuỷ vân được hiện ngay trên sản phẩm và
người dùng có thể nhìn thấy được giống như các biểu tượng kênh chương trình vô tuyến VTV1, VCT2, TV5… Các thuỷ vân hiện trên ảnh thường dưới dạng chìm, mờ hoặc trong suốt để không gây ảnh hưởng đến chất lượng ảnh gốc Thông tin bản quyền hiển thị ngay trên sản phẩm
Thuỷ vân ẩn: là loại thủy vân yêu cầu tính ẩn cao, bằng mắt thường
không thể nhìn thấy thuỷ vân Trong vấn đề bảo vệ bản quyền, thủy vân ẩn mang tính bất ngờ hơn trong việc phát hiện sản phẩm bị lấy cắp Trong trường hợp này, người chủ sở hữu hợp pháp sẽ chỉ ra bằng chứng là thuỷ vân đã được nhúng trong sản phẩm bị đánh cắp
1.3.4 Mô hình hệ thống thuỷ vân
Một mô hình hệ thống thuỷ vân tổng quát được xem xét theo hai quá trình:
Quá trình nhúng thuỷ vân
- Một bức ảnh gốc cần được bảo vệ S
Trang 32- Thông tin thủy vân W Tuỳ theo mục đích bảo vệ người ta chọn thủy vân W có thể là dạng văn bản, chuỗi bit hoặc một bức ảnh
- Hệ thống khoá K làm khoá cho quá trình nhúng và tách thuỷ vân
- Một thuật toán trong hệ thống sẽ kết hợp giữa thông tin về ảnh gốc, thông tin thuỷ vân và thông tin khoá để tạo thành một bức ảnh mới gọi là ảnh
đã nhúng thuỷ vân hay ảnh chứa thuỷ vân SW Bức ảnh này sẽ được sử dụng
để phân phối Mô hình quá trình nhúng thuỷ vân được thể hiện qua hình 1.9
Hình 1.9 Mô hình quá trình nhúng thuỷ vân Quá trình tách thuỷ vân
Ảnh chứa thuỷ vân SW trong quá trình phân phối có thể bị sử dụng trái phép Người sử dụng có thể đã dùng một số phép biến đổi ảnh thông thường
để tấn công vào SW nhằm phá huỷ thủy vân nếu có trong SW, các tấn công trên làm biễn đổi SW tạo ra SW*
Quá trình tách thuỷ vân từ ảnh chứa SW* (SW* có thể trùng với SW) được tiến hành theo các bước:
- Ảnh chứa thuỷ vân SW*;
- Hệ thống khoá K đã sử dụng trong quá trình nhúng thuỷ vân;
- Ảnh gốc S ( tuỳ theo kỹ thuật tách thủy vân có thể sử dụng ảnh gốc S hoặc không sử dụng ảnh gốc S)
- Một thuật toán đã xác định được sử dụng để tách thủy vân
Ảnh gốc S
Thuỷ vân W
Thuật toán thuỷ vân thuỷ vân SẢnh chứa
W
Khoá K
Trang 33- Kết quả: thông tin thủy vân W* tách ra được từ SW* Thuỷ vân tách được SW* cần so sánh với thuỷ vân gốc W để đưa ra những kết luận
Mô hình quá trình tách thuỷ vân trong hệ thống thuỷ vân được trình bày trong hình 1.10
Hinh 1.10 Mô hình quá trình tách và kiểm định thuỷ vân
1.3.5 Các tính chất của hệ thuỷ vân
Hệ thuỷ vân số trên ảnh cũng là một hệ giấu tin nên cũng có một số đặc điểm và tính chất sau đây giống giấu tin trong ảnh
- Phương tiện chứa là ảnh hai chiều tĩnh
- Thủy vân trên ảnh tác động lên dữ liệu ảnh nhưng không làm thay đổi kích thước ảnh
- Thông tin được giấu vào trong ảnh nhưng không ảnh hưởng nhiều đến chất lượng ảnh
- Kỹ thuật giấu phụ thuộc vào bản chất của hệ thống thị giác con người Ngoài một số đặc điểm chung nêu trên, kỹ thuật thuỷ vân trên ảnh số được phân biệt với kỹ thuật giấu tin mật ở những đặc trưng sau đây:
Thuỷ vân tách W*
Kiểm định
Thuỷ vân gốc W
Kết luận
Trang 34 Thông tin thuỷ vân có hoặc không bị biến đổi khi ảnh chứa bị
Thuỷ vân ẩn, thuỷ vân hiện
Không giống như giấu tin mật với yêu cầu bắt buộc là thông điệp giấu phải ẩn bên trong ảnh sao cho mắt thường không phát hiện được sự tồn tại của thông tin giấu thì kỹ thuật thủy vân số lại có hai loại là thuỷ vân ẩn và thuỷ vân hiện
Thuỷ vân ẩn không nhìn thấy được thông tin đem nhúng, sử dụng với mục đích giấu bí mật các thông tin xác nhận quyền sở hữu sản phẩm
Thủy vân hiện nhìn thấy được thông tin đem nhúng, được sử dụng cho mục đích công bố công khai về quyền sở hữu
Tính chất bền vững
Đây là tính chất quan trọng nhất của một hệ thuỷ vân bền vững Đối với
hệ thống thuỷ vân này, yêu cầu hàng đầu là hệ thuỷ vân phải chống lại được các phép biến đổi hay các tấn công có chủ định hoặc không có chủ định lên ảnh chứa thuỷ vân Tiêu chuẩn của hệ thuỷ vân này là thủy vân phải tồn tại cùng với sự tồn tại của ảnh chứa Thủy vân chỉ bị phá huỷ khi chấp nhận mất
đi đáng kể chất lượng của ảnh chứa
1.3.6 Những tấn công trên hệ thuỷ vân
Hệ thống thủy vân cần chống lại được một số phép xử lý ảnh thông thường và một số tấn công có chủ định đối với ảnh chứa thuỷ vân Tuỳ theo mục tiêu bảo vệ, trong thực tế khi tiến hành thuỷ vân phải cân nhắc giữa tính bền vững với các thuộc tính khác như lượng thông tin giấu, tính ẩn… Dựa
Trang 35vào những biến đổi có chủ định hay không có chủ định đối với hệ thuỷ vân
mà ta có thể phân biệt thành một số loại tấn công sau:
- Biến đổi tín hiệu, làm sắc nét, thay đổi độ tương phản, màu, gam màu
- Nhiễu cộng, nhiễu nhân;
- Lọc tuyến tính;
- Nén mất thông tin;
- Giảm dữ liệu: cropping, sửa histogram;
- Thuỷ vân nhiều lần
Yêu cầu cơ bản nhất của hệ thống thuỷ vân bền vững là đảm bảo tính bền vững của thuỷ vân sao cho các tấn công có chủ định với mục đích loại bỏ thuỷ vân sẽ làm cho giá trị thương mại của ảnh gốc bị ảnh hưởng lớn thậm chí đến việc huỷ sản phẩm gốc
1.3.7 Đánh giá chất lượng ảnh trong thuỷ vân
Trong thuỷ vân bền vững thì kỹ thuật thuỷ vân ẩn có nhiều hướng ứng dụng Do thuỷ vân được nhúng mang tính bất ngờ trong việc chứng minh quyền sở hữu Yêu cầu cơ bản đối với kỹ thuật này là: tính ẩn của thuỷ vân trong ảnh chứa Ảnh được nhúng thuỷ vân vẫn đảm bảo chất lượng thương mại so với ảnh gốc, tính bền vững của thuỷ vân trước các tấn công thông thường lên ảnh chứa thủy vân Từ đó đánh giá một hệ thống thủy vân có tốt hay không tốt Liên quan đến những yếu tố này, các kỹ thuật đánh giá chất lượng ảnh được sử dụng thông qua các hệ số sau:
Hệ số PSNR
Chất lượng ảnh chứa dấu thủy vân có thể đánh giá bằng hệ số PSNR
(Peak Signal to Noise Ratio) Lược đồ có hệ số PSNR càng lớn thì chất lượng
ảnh càng cao Hệ số PSNR của ảnh chứa tin I’ so với ảnh gốc I kích thước
được tính theo công thức :
Trang 36log
MSE
MAX
Trong đó MAX, là giá trị cực đại của điểm ảnh và MSE (Mean Square
Error) được xác định theo công thức :
j
j i I j i I n
m
MSE
1 1
2 '
)),(),((.1
Đối với ảnh màu, thì giá trị PSNR có thể chấp nhận được nếu thuộc khoảng tử 30dB đến 50dB
Hệ số Diff
Giả sử I là ảnh gốc và I' là ảnh sau khi nhúng dấu thuỷ vân (ảnh thuỷ vân) Để đánh giá chất lượng của ảnh thuỷ vân I' có thể sử dụng chuẩn của ma trận hiệu I' - I:
j
j i I j i I I
I
1 1
' '
),(),(
Nếu giá trị này càng nhỏ thì I' càng giống I và chất lượng ảnh thuỷ vân càng tốt Rõ ràng ||I' - I|| phụ thuộc vào kích thước của ảnh Để có một đánh
giá độc lập với kích thước ảnh, có thể dùng đại lượng sau:
n m
I I Diff
đó chính là độ sai khác trung bình giữa ảnh gốc và ảnh thuỷ vân
Trong các nhận xét đánh giá của luận văn sẽ dùng Diff để đánh giá chất lượng ảnh của các lược đồ thuỷ vân Lược đồ nào có Diff nhỏ hơn thì có chất
lượng ảnh thuỷ vân tốt hơn
Hệ số Err
2
* 1
*
t
w w w
vân đã bị tấn công) với dấu thủy vân gốc W ( w1, w2, , wt) bằng cách dùng
hệ số Err:
Trang 37* 1
1
i t
i
w t
Hệ số Err được so sánh với ngưỡng 0 ,1 , nếu Err < (tức là W* khá gần với W) thì kết luận ảnh I* có nhúng dấu thủy vân W và ảnh I* vẫn thuộc về tác giả có ảnh I’
Trong các lược đồ dưới đây sẽ dùng Err để đánh giá độ bền vững của các lược đồ thuỷ vân Lược đồ nào có Err nhỏ hơn thì bền vững hơn trước các
phép tấn công ảnh
1.3.8 So sánh thuỷ vân tách được với thủy vân gốc
Thủy vân được nhúng sau khi giải mã sẽ được so sánh để kiểm định, chứng thực thuỷ vân Có những thuỷ vân nhìn thấy được và mang ý nghĩa nhận biết thì công việc trở nên đơn giản Ví dụ thuỷ vân là một chuỗi ký tự ASCII mang thông tin nào đó như tên tác giả, ngày tháng… thì khi giải mã ta cũng dễ dàng nhận biết được thông tin Hoặc trong trường hợp thuỷ vân là một ảnh nào đó thì giải mã ta cũng được một ảnh tương tự và ta có thể nhìn thấy sự khác biệt giữa hai ảnh
Tuy nhiên, trong một số trường hợp thì thuỷ vân là một chuỗi bit, khi
đó công việc nhận diện thuỷ vân sẽ không đơn giản Hoặc ngay cả trong trường hợp thuỷ vân là những thông tin mang ý nghĩa nhận biết được thì cũng phải có kỹ thuật để kiểm định, định lượng sự đúng sai của thuỷ vân
Có nhiều kỹ thuật để kiểm định, định lượng thuỷ vân Kỹ thuật đơn giản nhất là ta tính tỷ lệ đúng sai từng bit theo công thức:
SR = (số bít trùng nhau) / (tổng số bit)