Giấu tin nói chung hay thủy vân nói riêng là một lĩnh vực rộng lớn, trong luận văn này đi sâu tìm hiểu một số giải pháp bảo vệ bản quyền dữ liệu đa phương tiện nói chung và bảo vệ bản qu
Trang 1ĐẠI HỌC QUỐC GIA HÀ NỘI
TRƯỜNG ĐẠI HỌC CƠNG NGHỆ
Trang 2ĐẠI HỌC QUỐC GIA HÀ NỘI
TRƯỜNG ĐẠI HỌC CƠNG NGHỆ
Trang 3đa phương tiện có tính “trung thực” cao (giống y hệt so với bản gốc) Cùng với sự phát triển của Internet quá trình phân phối các sản phẩm kỹ thuật số trở nên dễ dàng và nhanh chóng, nhưng chính điều đó lại làm cho “quyền sở hữu trí tuệ” (IPR- Intellectual Property Right) bị đe dọa hơn bao giờ hết, bởi khả năng sao chép không bị giới hạn Một trong những giải pháp được đưa ra để bảo vệ “quyền sở hữu trí tuệ” là
để hạn chế truy cập dữ liệu bằng cách sử dụng một số kỹ thuật mã hóa.Tuy nhiên kỹ thuật mã hóa không cung cấp phương thức bảo vệ sản phẩm một cách “toàn diện” Đồng thời, quá trình mã hóa và giải mã cũng gây ra những trở ngại trong quá trình phân phối và xử lý dữ liệu Có một giải pháp tốt hơn cho vấn đề trên, đó là giấu những
“dữ liệu về quyền sở hữu”(ownership data) vào trong các dữ liệu đa phương tiện, sau
đó có thể trích xuất những dữ liệu này để chứng minh quyền sở hữu sản phẩm [E9] Hiện nay, vấn đề bảo vệ quyền tác giả có những tác động tài chính lớn và có tầm quan trọng đặc biệt, do vậy việc xây dựng và ứng dụng các thuật toán để ngăn chặn việc sao chép bất hợp pháp nội dung sản phẩm đa phương tiện là thực sự cần thiết Giấu tin nói chung hay thủy vân nói riêng là một lĩnh vực rộng lớn, trong luận văn này đi sâu tìm hiểu một số giải pháp bảo vệ bản quyền dữ liệu đa phương tiện nói chung và bảo vệ bản quyền ảnh số nói riêng bằng kỹ thuật thủy vân số Từ đó có thể tìm hiểu để lựa chọn phương pháp thủy vân phù hợp với từng ứng dụng cụ thể
Trang 4MỤC LỤC
LỜI CẢM ƠN 1
LỜI MỞ ĐẦU 3
DANH MỤC TỪ VIẾT TẮT 6
Chương 1 VẤN ĐỀ BẢO VỆ BẢN QUYỀN ẢNH SỐ 7
1.1 MỘT SỐ KHÁI NIỆM 7
1.1.1 Khái niệm ảnh số 7
1.1.2 Điểm ảnh 8
1.1.3 Độ phân giải của ảnh 9
1.1.4 Các lân cận của điểm ảnh (Image Neighbors) 9
1.2 BIỂU DIỄN ẢNH SỐ 10
1.2.1 Các giai đoạn chính trong xử lý ảnh 10
1.2.2 Biểu diễn tín hiệu ảnh số 11
1.3 BẢN QUYỀN VÀ CÁC QUY ĐỊNH 13
1.3.1 Bảo vệ bản quyền 13
1.3.2 Vi phạm bản quyền 14
1.3.3 Bản quyền và quyền sở hữu trí tuệ 15
1.4 BẢO VỆ BẢN QUYỀN ẢNH SỐ 16
1.4.1 Một số vấn đề trong bảo vệ bản quyền ảnh số 16
1.4.2 Giải pháp và kỹ thuật bảo vệ bản quyền 17
Chương 2 KỸ THUẬT THỦY VÂN 20
2.1 TỔNG QUAN VỀ THỦY VÂN 20
2.1.1 Khái niệm thủy vân 20
2.1.2 Lịch sử phát triển 21
2.1.3 Phân loại thủy vân 22
2.1.4 Cấu trúc cơ bản của hệ thống thủy vân 24
2.1.5 Đặc tính thủy vân 26
2.1.6 Tiêu chuẩn và hiệu suất lƣợc đồ thủy vân 29
2.2 KỸ THUẬT THỦY VÂN TRÊN ẢNH 31
2.2.1 Kỹ thuật thủy vân trên miền không gian 31
2.2.2 Kỹ thuật thủy vân trên miền tần số 40
Chương 3 MỘT SỐ ỨNG DỤNG TRONG BẢO VỆ BẢN QUYỀN 70
3.1 HỆ THỐNG XÁC THỰC TRÊN MÁY ẢNH KỸ THUẬT SỐ 70
3.1.1 Tính pháp lý của hình ảnh số 70
Trang 53.1.2 Máy ảnh kỹ thuật số 72
3.1.3 Dữ liệu sinh trắc học 74
3.1.4 Sơ đồ làm việc của hệ thống an toàn trên máy ảnh số 78
3.2 BẢO VỆ NHÃN HIỆU SẢN PHẨM 81
3.2.1 Nhãn hiệu hàng hóa và vấn đề bản quyền 81
3.2.2 Ý tưởng và mô hình bảo vệ nhãn hiệu với thủy vân số 82
3.2.3 Tiền xử lý thủy vân 84
3.3 MỘT SỐ ỨNG DỤNG KHÁC 90
3.3.1 Tăng cường bảo mật thẻ thông minh 90
3.3.2 Bảo vệ bản quyền bản đồ vectơ 95
Chương 4 THỬ NGHIỆM THỦY VÂN TRÊN ẢNH SỐ 99
4.1 CẤU HÌNH HỆ THỐNG CHO CHƯƠNG TRÌNH 99
4.1.1 Cấu hình hệ thống 99
4.1.2 Chức năng chính 99
4.2 CÁC THÀNH PHẦN CHƯƠNG TRÌNH 100
4.2.1 Module nhúng thủy vân 100
4.2.2 Module tách thủy vân 102
4.2.3 Module xác thực ảnh 104
4.3 CHƯƠNG TRÌNH 110
4.4 HƯỚNG DẪN SỬ DỤNG CHƯƠNG TRÌNH 113
4.4.1 Quy trình nhúng thủy vân 113
4.4.2 Xác thực ảnh 113
4.4.3 Trích thủy vân 115
KẾT LUẬN 117
TÀI LIỆU THAM KHẢO 118
TIẾNG VIỆT 118
TIẾNG ANH 118
Trang 6DANH MỤC TỪ VIẾT TẮT
DCT (Discrete Cosine Transform) Phép biến đổi Cosin rời rạc
IDCT (Invert DiscreteCosineTransform) Phép biến đổi ngược DCT
DFT (Discrete Fourier Transform) Phép biến đổi Forier rời rạc
IDFT (Invert Discrete FourierTransform ) Phép biến đổi ngược DFT
DWT (Discrete Wavelet Transform) Phép biến đổi Wavelet rời rạc
IDWT (Invert Discrete Wavelet Transform) Phép biến đổi ngược DWT
IPR- Intellectual Property Right Quyền sở hữu trí tuệ
LSB (Least Significant Bit) Bít ít quan trọng
Private watermarking scheme Lược đồ thủy vân bí mật
Public watermarking scheme Lược đồ thủy vân công khai
JPEG (Joint Photographic Expert Group) Chuẩn nén ảnh quốc tế
HVS (Human Visual System) Hệ thống thị giác con người
TRNG (True Radom Number Genenerator) Sinh số ngẫu nhiên
Trang 7Chương 1
VẤN ĐỀ BẢO VỆ BẢN QUYỀN ẢNH SỐ
Hiện nay, ảnh số là là loại dữ liệu phổ biến và thu hút được nhiều sự quan tâm và nghiên cứu Cùng với sự phát triển của Internet vấn đề bảo vệ bản quyền ảnh số ngày càng trở nên quan trọng Thông tin được số hóa có thể dễ dàng sao chép mà không làm giảm chất lượng và hỗ trợ phân phối một cách hiệu quả Do tính dễ sao chép, phát tán
và thậm chí là chỉnh sửa, nên kẻ gian có thể xâm phạm bản quyền của chủ sở hữu thực
sự Việc giải quyết bài toán về bảo vệ quyền là yêu cầu cơ bản của các dịch vụ đa phương tiện hiện tại cũng như trong tương lai
Trong chương này, luận văn đề cập tới khái niệm cùng những thuộc tính của ảnh
số, vấn đề vi phạm bản quyền, bảo vệ bản quyền Đồng thời cũng tập trung nghiên cứu các bài toán đặt ra trong bảo vệ bản quyền ảnh số và đề xuất các giải pháp phù hợp để
giải quyết từng bài toán
1.1 MỘT SỐ KHÁI NIỆM
1.1.1 Khái niệm ảnh số
Hình ảnh có thể là bức vẽ, họa hình (Picture, Photograph) hay nói cách khác đó
là các dữ liệu có thể được cảm nhận bằng thị giác (Visual data) Một hình ảnh số thông thường có số chiều là 2 hoặc 3.[V3]
Trong kỹ thuật tương tự, một bức ảnh thường được biểu diễn dưới dạng các dòng nằm ngang kế tiếp nhau Mỗi dòng là một tín hiệu tương tự mang theo các thông tin về cường độ sáng dọc theo một đường nằm ngang trong ảnh gốc Ảnh trên một chiếc TV được hiện lên qua các dòng quét này Mặc dù thuật ngữ "tương tự" được dùng để mô
tả cho các ảnh quét liên tiếp nhưng thực tế ảnh chỉ tương tự theo hướng nằm ngang
Nó là rời rạc khi xét theo hướng dọc và chính vì vậy mà tín hiệu ảnh là tín hiệu lai nửa tương tự, nửa số
Như vậy, có thể định nghĩa ảnh số là một ảnh đã được rời rạc hóa trong không gian hai chiều có ảnh hưởng do cường độ ánh sáng và được mô tả như ma trận hai chiều Dựa trên màu sắc có thể phân loại ảnh số thành ảnh đen trắng và ảnh màu
a) Ảnh đen trắng
Ảnh đen trắng chỉ bao gồm 2 màu: màu đen và màu trắng Người ta phân mức
đen trắng đó thành L mức Nếu sử dụng số bit B=8 bít để mã hóa mức đen trắng (hay mức xám) thì L được xác định :
L=2B (trong ví dụ của ta L=28= 256 mức)
Trang 8Nếu L bằng 2, B=1, nghĩa là chỉ có 2 mức: mức 0 và mức 1, còn gọi là ảnh nhị
phân Mức 1 ứng với màu sáng, còn mức 0 ứng với màu tối Nếu L lớn hơn 2 ta có ảnh
đa cấp xám Nói cách khác, với ảnh nhị phân mỗi điểm ảnh được mã hóa trên 1 bit, còn với ảnh 256 mức, mỗi điểm ảnh được mã hóa trên 8 bit Như vậy, với ảnh đen trắng: nếu dùng 8 bit (1 byte) để biểu diễn mức xám, số các mức xám có thể biểu diễn được là 256 Mỗi mức xám được biểu diễn dưới dạng là một số nguyên nằm trong khoảng từ 0 đến 255, với mức 0 biểu diễn cho mức cường độ tối nhất và 255 biểu diễn cho mức cường độ sáng nhất
Ảnh nhị phân khá đơn giản, các phần tử ảnh có thể coi như các phần tử logic Ứng dụng chính của nó được dùng theo tính logic để phân biệt đối tượng ảnh với nền hay để phân biệt điểm biên với điểm khác
b) Ảnh màu
Ảnh màu theo lý thuyết là ảnh tổ hợp từ 3 màu cơ bản: đỏ (R), lục (G), lơ (B) và thường thu nhận trên các dải băng tần khác nhau Với ảnh màu, cách biểu diễn cũng tương tự như với ảnh đen trắng, chỉ khác là các số tại mỗi phần tử của ma trận biểu diễn cho ba màu riêng rẽ gồm: đỏ (red), lục (green) và lam (blue) Để biểu diễn cho một điểm ảnh màu cần 24 bit 24 bit này được chia thành ba khoảng 8 bit Mỗi màu
cũng phân thành L cấp màu khác nhau (thường L=256) Mỗi khoảng này biểu diễn
cho cường độ sáng của một trong các màu chính
Do đó, để lưu trữ ảnh màu người ta có thể lưu trữ từng màu riêng biệt, mỗi màu lưu trữ như một ảnh đa cấp xám Do đó, không gian nhớ dành cho một ảnh màu
lớn gấp 3 lần một ảnh đa cấp xám cùng kích cỡ
1.1.2 Điểm ảnh
Ảnh tự nhiên là ảnh liên tục về không gian và độ sáng Để xử lý được bằng máy tính, ảnh cần phải được số hoá Số hoá ảnh là sự biến đổi gần đúng một ảnh liên tục thành một tập điểm phù hợp với ảnh thật về vị trí (không gian) và độ sáng (mức xám) Khoảng cách giữa các điểm ảnh đó được thiết lập sao cho mắt người không phân biệt được ranh giới giữa chúng Mỗi một điểm như vậy gọi là điểm ảnh (PEL: Picture Element) hay gọi tắt là Pixel Trong khuôn khổ ảnh hai chiều, mỗi
pixel ứng với cặp tọa độ (x, y)
Điểm ảnh (Pixel) là một phần tử của ảnh số tại toạ độ (x, y) với độ xám hoặc 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 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 Mỗi phần tử trong ma trận được gọi là một phần tử ảnh
Trang 91.1.3 Độ phân giải của ảnh
Độ phân giải (Resolution) của ảnh là mật độ điểm ảnh được ấn định trên một ảnh số được hiển thị Theo định nghĩa, khoảng cách giữa các điểm ảnh phải được chọn sao cho mắt người vẫn thấy được sự liên tục của ảnh Việc lựa chọn khoảng cách thích hợp tạo nên một mật độ phân bổ, đó chính là độ phân giải và được phân bố theo trục x và y trong không gian hai chiều
Ví dụ: Độ phân giải của ảnh trên màn hình CGA (Color Graphic Adaptor) là một lưới điểm theo chiều ngang màn hình: 320 điểm chiều dọc * 200 điểm ảnh (320*200) Rõ ràng, cùng màn hình CGA 12” ta nhận thấy mịn hơn màn hình CGA 17” độ phân giải 320*200 Lý do: cùng một mật độ (độ phân giải) nhưng diện tích màn hình rộng hơn thì độ mịn (liên tục của các điểm) kém hơn
1.1.4 Các lân cận của điểm ảnh (Image Neighbors)
Một ảnh số giả sử được biểu diễn bằng hàm f(x, y) Tập con các điểm ảnh là S; cặp điểm ảnh có quan hệ với nhau ký hiệu là p, q Chúng ta có lân cận của điểm ảnh như sau:
Giả sử có điểm ảnh p tại toạ độ (x, y) p có 4 điểm lân cận gần nhất theo chiều đứng và ngang (có thể coi như lân cận 4 hướng chính: Đông, Tây, Nam, Bắc)
{(x-1, y); (x, y-1); (x, y+1); (x+1, y)} = N4(p) trong đó: số 1 là giá trị logic; N4(p) tập 4 điểm lân cận của p
Hình 1.1 Lân cận các điểm ảnh của tọa độ (x,y)
Các lân cận chéo: Các điểm lân cận chéo NP(p) (Có thể coi lân cận chéo là 4 hướng: Đông-Nam, Đông-Bắc, Tây-Nam, Tây-Bắc)
Np(p) = { (x+1, y+1); (x+1, y-1); (x-1, y+1); (x-1, y-1)}
Tập kết hợp: N8(p) = N4(p) + NP(p) là tập hợp 8 lân cận của điểm ảnh p
Nếu (x, y) nằm ở biên (mép) ảnh; một số điểm sẽ nằm ngoài ảnh
Trang 10bị giảm
2) Tiền xử lý ảnh:
Giai đoạn xử lý tương đối đơn giản nhằm nâng cao chất lượng ảnh để trợ giúp cho các quá trình xử lý nâng cao tiếp theo, ví dụ: tăng độ tương phản, làm nổi đường biên, khử nhiễu v.v
3) Phân đoạn:
Là quá trình tách hình ảnh thành các phần hoặc vật thể riêng biệt Đây là một trong nhưng vấn đề khó giải quyết nhất trong lĩnh vực xử lý ảnh Nếu thực hiện tách quá chi tiết thì bài toán nhận dạng các thành phần được tách ra trở nên phức tạp, còn ngược lại nếu quá trình phân đoạn được thực hiện quá thô hoặc phân đoạn sai thì kết quả nhận được cuối cùng sẽ không chính xác
4) Biểu diễn và mô tả:
Là quá trình xử lý tiếp sau khâu phân đoạn hình ảnh Các vật thể sau khi phân đoạn được mô tả dưới dạng chuỗi điểm ảnh tạo nên ranh giới một vùng, hoặc tập hợp tất cả điểm ảnh nằm trong vùng đó Phương pháp mô tả thông qua ranh giới vùng thường được sử dụng khi tập trung sự chú ý vào hình dạng bên ngoài của chi tiết ảnh như: độ cong, các góc cạnh v.v Biểu diễn vùng thường sử dụng khi quan tâm tới đặc tính bên trong vùng ảnh như đường vân (texture) hay hình dạng xương (skeletal)
Trang 11Hình 1.2 Quy trình xử lý ảnh số
1.2.2 Biểu diễn tín hiệu ảnh số
Sau khi số hóa tín hiệu hình ảnh, chúng ta nhận đƣợc ma trận giá trị mức xám của các điểm ảnh Chúng ta sẽ sử dụng 2 cách biểu diễn tín hiệu ảnh số Cách thứ nhất, các điểm ảnh rời rạc đƣợc sắp xếp theo cột và hàng nhƣ trên hình 1.3 Tọa
độ của các điểm ảnh (x,y) là rời rạc Gốc tọa độ nằm tại góc trên bên trái của ảnh
x, y 1,1
Hình 1.3 Hệ tọa độ để biểu diễn ảnh số
Trang 12Như vậy, chúng ta có thể biểu diễn ảnh số nói trên như ma trận kích thước MxN:
Mỗi phần tử của ma trận được gọi là 1 điểm ảnh (image element hay pixel)
Trong một số trường hợp, chúng ta có thể sử dụng phương pháp mô tả ảnh số như một ma trận thông thường Với cách biểu diễn trên, a i, j f x i, y j f i, j ,
do đó hai ma trận trên hoàn toàn giống nhau Đối với ảnh số, giá trị M và N phải là số nguyên dương Số lượng mức xám có thể gán cho 1 điểm ảnh L thường được lựa chọn sao cho L 2k , k là số nguyên dương
Như vậy, số lượng bit được sử dụng để biểu diễn 1 ảnh số sẽ được xác định theo công thức: b M N k
Ví dụ: ảnh số hiển thị trên màn hình VGA có kích thước 640x480 điểm, số lượng các mức xám là 256 (8 bits/mẫu) có thể được lưu lại trong bộ nhớ có kích thước bằng:
b 640 480 8 2 457 600 bits
Hình 1.4 Điểm ảnh dưới dạng ma trận giá trị
Trang 131.3 BẢN QUYỀN VÀ CÁC QUY ĐỊNH
Bản quyền tác giả liên quan nhiều đến khía cạnh đạo đức, kinh tế Việc vi phạm bản quyền có thể do hành vi cố tình nhằm mưu lợi hoặc cũng có thể do vô tình, nếu không hiểu biết đầy đủ về bản quyền tác giả, về sở hữu trí tuệ, nhiều người không nhận thức được tác hại của việc vi phạm bản quyền [V3,4]
1.3.1 Bảo vệ bản quyền
Quốc tế qui định tính có bản quyền Kí hiệu bản quyền © là kí hiệu quốc tế dùng
để cho biết tính bản quyền của tác phẩm Với mỗi sản phẩm đăng kí bản quyền, người
ta biết các thông tin về bản quyền sau :
+ Kí hiệu bản quyền;
+ Tên người sở hữu;
+ Năm đưa ra lần đầu;
+ Mục đích của bản quyền;
+ Thể hiện được ý tưởng sáng tạo của sản phẩm;
+ Tư tưởng nguyên gốc của sản phẩm;
+ Quyền tác giả;
+ Quyền tác giả, theo luật pháp
Các sản phẩm đa phương tiện sau được quốc tế quy định cần bảo vệ bản quyền tác giả :
Trang 14+ Truyền bá: sử dụng ý tưởng của tác giả sản phẩm trong việc chứng minh, thể hiện nội dung của mình, mà không xin phép tác giả sẽ bị xem là truyền tải, truyền bá không được phép;
+ Trích dẫn: người ta không cho phép sử dụng sản phẩm trong việc thể hiện ý tưởng của mình, cho dù là trích sản phẩm như là thí dụ Việc trích dẫn cần được xin phép, và đôi khi phải có chi phí;
+ Triển lãm: sản phẩm đa phương tiện tại các buổi trưng bày, triển lãm thuộc về tác giả Vậy nên dùng tác phẩm trong triển lãm phải được sự đồng ý của tác giả sản phẩm;
+ Dịch lại: việc dịch tài liệu ra ngôn ngữ khác cũng như thể hiện lại tác phẩm liên quan đến sở hữu trí tuệ, không nên vi phạm;
+ Trình bày trước công chúng: Việc thể hiện lại sản phẩm đa phương tiện trước đám đông cũng như truyền bá là không được phép;
+ Suy diễn: suy luận là quá trình rút ra thông tin mới từ các dữ liệu đã có; việc dùng ý của một sản phẩm tác giả để thu được sản phẩm khác cần coi như tác giả sản phẩm đầu cũng là một phần đóng góp trong sản phẩm sau Vậy suy diễn nội dung sản phẩm là vi phạm bản quyền
Hình 1.5 Vi phạm bản quyền
Trang 151.3.3 Bản quyền và quyền sở hữu trí tuệ
Quyền sở hữu trí tuệ là quyền của tổ chức, cá nhân đối với tài sản trí tuệ, bao gồm quyền tác giả và quyền liên quan đến quyền tác giả, quyền sở hữu công nghiệp
Bản quyền và Quyền sở hữu trí tuệ được tôn trọng thì mới phát triển được các ý tưởng sáng tạo Ngoài phạm trù đạo đức, cần có điều luật giữ quyền tác giả, hạn chế vi phạm sở hữu trí tuệ Một số vi phạm hay được nhắc đến gần đây như sử dụng âm nhạc,
ca từ không của mình; sao chép phần mềm và mở khoá để sử dụng; sử dụng lại kiến trúc trang tin của đơn vị khác
Hội người tiêu dùng sản phẩm đa phương tiện, hệ thống truyền thông công cộng cũng đóng góp nhiều vào việc giữ bản quyền Bản quyền áp dụng cho nhiều lĩnh vực văn hoá, khoa học, trí tuệ…
Có cơ quan chứng nhận bản quyền sở hữu trí tuệ, và cơ quan pháp luật giải quyết các tranh chấp về quyền sở hữu trí tuệ đối với sản phẩm Vi phạm quyền tác giả được
mô tả với qui định chặt chẽ Ngay việc trích dẫn, trình diến lại, khi chưa có đồng ý của tác giả, cũng bị coi là vi phạm quyền tác giả
Trang 161.4 BẢO VỆ BẢN QUYỀN ẢNH SỐ
Mặc dù đã có nhiều quy định về bảo vệ bản quyền và đã có những chuyển biến tích cực trong việc thực thi quyền tác giả, nhưng bấy nhiêu vẫn còn chưa đủ Những hành vi xâm hại quyền tác giả diễn ra tràn lan, tinh vi và công khai trước sự xót xa, bất lực của các chủ sở hữu Đặc biệt với dữ liệu số chẳng hạn như ảnh số với nhiều định dạng thì vấn đề bảo vệ bản quyền lại càng trở nên khó khăn hơn
1.4.1 Một số vấn đề trong bảo vệ bản quyền ảnh số
Trong mua bán và trao đổi các tác phẩm số nảy sinh một số vấn đề cụ thể như: + Vấn đề thứ nhất là phải bảo đảm quyền tác giả:
Hình 1.7 Tranh chấp quyền sở hữu sản phẩm số
Để bảo vệ được bản quyền của người chủ sở hữu tác phẩm số thì sản phẩm đó phải mang những thông tin đặc biệt chứng minh được nó là thuộc quyền sở hữu của người chủ Nhờ những thông tin này chủ tác phẩm số có thể chứng minh được với cơ quan có thẩm quyền quyền sở hữu hợp pháp của mình [E4]
+ Vấn đề thứ hai là đảm bảo thông tin sẵn sàng cho người dùng hợp pháp và chống phân phối bất hợp pháp nội dung tác phẩm: việc mua bán, phân phối các hợp pháp sản phẩm số (đặc biệt là ảnh số) được thực hiện dựa trên nguyên tắc là người mua sẽ trả tiền
để nhận được những bản sao hợp pháp của các sản phẩm này
+ Vấn đề thứ ba lần vết thông tin phát hiện người phân phối sản phẩm bất hợp pháp: khi vấn đề về vi phạm bản quyền xảy ra hoặc khi chủ sở hữu sản phẩm số nghi ngờ là có bản sao sản phẩm không hợp lệ, thì phải có biện pháp để xác minh hoặc tìm ra trong những người dùng hợp pháp ai là người phân phối sản phẩm trái phép
Trang 171.4.2 Giải pháp và kỹ thuật bảo vệ bản quyền
1) Ẩn giấu tin và thủy vân
Thủy vân không phải là một kỹ thuật mới Nó là một nhánh của kỹ thuật ẩn giấu tin đã tồn tại vài trăm năm trước Ẩn giấu tin là một kỹ thuật sử dụng cho việc truyền các thông tin mật Thông điệp được truyền ở đây là một bí mật mà sự tồn tại của nó là chỉ được biết đến bởi các bên liên quan trong giao tiếp [E5, 6, 7]
Trong giấu tin, một thông điệp bí mật được giấu và môi trường giấu tin không có
sự liên quan và nó chỉ nhằm mục đích gửi thông tin bí mật tới những thành viên khác Trái ngược với điều này, trong thủy vân thông tin được giấu là có liên quan tới môi trường giấu tin theo một nghĩa nào đó
Phương pháp giấu tin nói chung không có tính bền vững, tức thông tin được giấu không thể khôi phục được sau khi xử lý Trái với giấu tin, thủy vân có tính bền vững chống lại các cuộc tấn công Ngay cả khi biết sự tồn tại của thủy vân thì kẻ tấn công cũng khó có thể phá hủy thủy vân, thậm chí thuật toán thủy vân được công khai Chính
vì vậy nên thủy vân thường được sử dụng trong một số lĩnh vực [E1,2,3]:
+ Bảo vệ bản quyền: kỹ thuật thủy vân số có thể được sử dụng để xác định và bảo
vệ bản quyền tác giả Thông tin về bản quyền được nhúng vào trong các dữ liệu đa phương tiện để xác định chủ sở hữu bản quyền
+ Chống sao chép: dữ liệu số có thể được nhúng thủy vân để chỉ ra rằng không
thể nhân bản bất hợp pháp nội dung Sau đó, các thiết bị có khả năng sao chép có thể phát hiện ra thủy vân và ngăn chặn sao chép trái phép nội dung
+ Theo dõi và lần “vết”: kỹ thuật thủy vân số có thể được sử dụng để theo dõi
việc sử dụng nội dung dữ liệu số Mỗi bản sao của dữ liệu số có thể được nhúng thủy vân đặc biệt và duy nhất để xác thực người dùng có thẩm quyền sử dụng nội dung Thủy vân này có thể được sử dụng để phát hiện nhân bản bất hợp pháp của nội dung và xác định những người dùng nào đã sao chép nội dung bất hợp pháp Kỹ thuật thủy vân được
sử dụng để theo dõi được gọi là vân tay (fingerprinting) Hình 1.8 cho thấy cách thủy vân có thể được sử dụng để theo dõi và lần vết
Trang 18Hình 1.8 Kỹ thuật thủy vân áp dụng cho lần vết sử dụng nội dung
2) Mã hóa
Thủy vân là hoàn toàn khác so với kĩ thuật mã hóa Mã hóa cung cấp phương thức bảo mật bằng việc mã hóa và giải mã Tuy nhiên, mã hóa không thể giám sát và bảo vệ nội dung thông tin sau khi giải mã
Qui trình mã hóa thể hiện trong hình 1.9, trong trường hợp khách hàng có thể làm bản sao bất hợp pháp của nội dung số Không giống như các mật mã, kỹ thuật thủy vân
có thể bảo vệ nội dung ngay cả khi dữ liệu được giải mã [V1, E8]
Hình 1.9 Kĩ thuật mã hóa và vấn đề sao chép bất hợp pháp thông tin số
Trang 19Trong kỹ thuật thủy vân, thủy vân có sự liên hệ mật thiết với dữ liệu được thủy vân, việc nhúng thủy vân ngoài việc bảo vệ nội dung còn hỗ trợ nhiều ứng dụng khác như bảo vệ quyền tác giả, bảo vệ sao chép, bảo mật thẻ ID, vv
Ngoài ra, việc tấn công trên hệ thống mã hóa và hệ thống thủy vân cũng có sự khác biệt Một hệ thống mã hóa bị phá vỡ khi những kẻ tấn công có thể giải mã được thông điệp bí mật Nhưng để phá vỡ của một hệ thống thủy vân gồm hai giai đoạn:
1) Những kẻ tấn công có thể phát hiện rằng kỹ thuật thủy vân đã được sử dụng 2.) Kẻ tấn công có thể đọc, sửa đổi hoặc loại bỏ thủy vân đã được nhúng
Thủy vân và mã hóa, mỗi kỹ thuật đều có những ưu điểm và nhược điểm riêng nên trong nhiều trường hợp nên sử dụng kết hợp cả hai kỹ thuật này
3) Ký số
Ký số là giải pháp hiệu quả trong việc đảm bảo toàn vẹn và xác thực của các dữ liệu
số, ký số được thực hiện trên từng bít của tài liệu [V1] Tuy nhiên, việc sử dụng chữ ký
số yêu cầu bổ sung băng thông và làm tăng chi phí chẳng hạn: chữ ký được gắn kèm với thông điệp ( sơ đồ chữ ký Elgamal thì chữ ký có độ dài bằng hai lần thông điệp) hoặc sử dụng chữ ký khôi phục thông điệp ( sơ đồ chữ ký RSA thì độ dài của chữ ký bằng độ dài thông điệp) [E6]
Với thủy vân chúng ta nhúng thủy vân với dung lượng không đáng kể vào nội dung các dữ liệu đa phương tiện vì vậy không đòi hỏi thêm nhiều băng thông
Tuy nhiên, trong nhiều trường hợp này thì việc sử dụng kết hợp ký số với những phương pháp khác lại là giải pháp tuyệt vời để giải quyết nhiều vấn đề phức tạp
Trang 20Chương 2
KỸ THUẬT THỦY VÂN
Chương này giới thiệu tổng quan về kỹ thuật thủy vân và thủy vân trên ảnh số Các vấn đề cơ bản của kỹ thuật “thủy vân số” Các yêu cầu và cấu trúc của hệ thống
“thủy vân” điển hình được nghiên cứu Đồng thời xem xét các thuộc tính quan trọng nhất của hệ thống “thủy vân” và đánh giá sơ bộ thông số của các thuật toán thủy vân
Các hình thức tấn công trên ảnh đã thủy vân và các giải pháp khắc phục
2.1 TỔNG QUAN VỀ THỦY VÂN
2.1.1 Khái niệm thủy vân
Trước đây, một thủy vân được tạo bởi các hoa văn hoặc hình trạm trổ với độ trong suốt nhất định Khi đó, thủy vân thường là một biểu tượng hay hình ảnh có thể nhận biết bằng cách đưa ra ánh sáng để làm nổi thủy vân và nội dung thông tin Khi ngành công nghiệp số ra đời, kỹ thuật thủy vân (watermarking) được nhắc tới như là việc thủy vân trên tín hiệu số Trong đó, thủy vân số là tập các bit thông tin được nhúng vào một đối tượng nhằm xác định thông tin về nguồn gốc hay thông tin về các bản sao hợp lệ Thao tác đưa thủy vân vào trong một môi trường số được gọi là thủy vân số (watermarking) Thủy vân số được xem như là một hình thức của ẩn giấu tin (Steganography)
Một trong những ứng dụng tiêu biểu của thủy vân là ứng dụng trong phát hành tiền giấy Trong đó, các họa tiết được nhúng chìm vào trong tờ tiền và được sử dụng
để xác định tờ tiền thật Tương tự như vậy, “thủy vân số” được sử dụng trong “ dữ liệu
số đa phương tiện” để kiểm tra tính xác thực nội dung nguyên mẫu của sản phẩm
Hình 2.1 Kỹ thuật thủy vân trên tiền giấy
Thủy vân
Trang 21Như vậy, có thể định nghĩa, “thủy vân số” là quá trình đó nhúng những dữ liệu vào một đối tượng đa phương tiện theo một cách nào đó, để sau đó có thể phát hiện hoặc trích xuất thủy vân cho mục đích xác thực nguồn gốc sản phẩm [E9]
Thủy vân là một phần đặc trưng của thông tin nhúng vào dữ liệu cần bảo vệ Một yêu cầu quan trọng đối với thủy vân là rất khó để trích xuất hoặc gỡ bỏ được nó từ đối tượng được nhúng thủy vân nếu không biết chìa khóa bí mật
2.1.2 Lịch sử phát triển
Kỹ thuật thủy vân trên giấy xuất hiện trong các tác phẩm nghệ thuật làm giấy thủ công cách đây khoảng hơn 700 năm Loại giấy có thủy vân cổ nhất được tìm thấy vào những năm 1292 và nguyên bản của nó bắt nguồn từ thị trấn Fabriano ở Ý đã đóng một vai trò rất lớn đối với sự tiến hóa của công nghiệp sản xuất giấy Cuối thế kỷ 13,
có khoảng 40 nhà máy giấy cạnh tranh nhau ở vùng Fabriano với nhiều mẫu giấy có chất lượng giá thành khác nhau Vào thời điểm đó các nhà máy sản xuất giấy thô với
bề mặt nhám không thể viết lên đó Nguyên liệu giấy thô này được đưa đến các thợ thủ công để cho họ làm nhẵn bề mặt giấy nhờ đó mà có thể viết lên giấy được Giấy sau khi làm nhẵn được bán cho các thương gia, rồi tới tay người sử dụng Do vậy cạnh tranh diễn ra khốc liệt không chỉ giữa các nhà máy giấy mà còn giữa các thợ thủ công
và thương gia Thật khó để xác định loại giấy nào được sản xuất bởi một cá nhân hay một tổ chức nào
Vào thời điểm này, kỹ thuật thủy vân được xem là một phương pháp hữu hiệu
để xác định nguồn gốc sản phẩm, giúp người dùng lựa chọn đúng hãng sản xuất giấy
mà mình muốn mua Sau khi xuất hiện một thời gian, kỹ thuật thủy vân đã lan rộng ra khắp nước Ý và trên cả Châu Âu mặc dù lúc đầu nó chỉ được dùng để xác định nhãn hiệu của nhà sản xuất giấy [E10]
Một trong những thủy vân trên giấy cổ nhất
Cambrige Giúp người dùng xác định sản phẩm giấy thuộc về nhà máy sản xuất nào
Hình 2.2 Kỹ thuật thủy vân trên giấy cổ
Trang 22Kỹ thuật thủy vân trên dữ liệu đa phương tiện được biết đến đầu tiên vào năm
1979 Tuy nhiên mãi tới năm 1990 thì kỹ thuật thủy vân số mới thật sự được quan tâm, nghiên cứu rộng rãi trên toàn thế giới
2.1.3 Phân loại thủy vân
Thủy vân và kỹ thuật thủy vân tùy theo từng tiêu chí phân loại mà có thể được chia thành nhiều loại khác nhau [E11, 12, 15]
1) Phân loại thủy vân theo miền nhúng:
Một trong những tiêu chí để phân loại là “miền nhúng” là nơi chứa thủy vân Ví
dụ, thủy vân có thể được thực hiện trong “miền không gian” Một khả năng khác là thủy vân trong “miền tần số” Trong hình 2.3 trình bày khái quát một số loại thủy vân khác nhau
Hình 2.3: Các loại kĩ thuật thủy vân
2) Phân loại theo đối tượng được nhúng thủy vân:
Kĩ thuật thủy vân có thể được phân loại theo đối tượng đa phương tiện cần nhúng thủy vân như sau:
+ Thủy vân trên ảnh
+ Thủy vân trên video
+ Thủy vân trên âm thanh
+ Thủy vân trên văn bản
3) Phân loại thủy vân theo cảm nhận của con người:
Theo cảm nhận của con người, thủy vân có thể được chia làm ba loại khác nhau như sau:
+ Thủy vân hiện
+ Tthủy vân ẩn bền vững và thủy vân ẩn dễ vỡ
+ Thủy vân ẩn và hiện đồng thời
Trang 23Thủy vân hiện hiển thị cho người xem thông tin về sản phẩm dưới dạng các hình mờ.
Thủy vân ẩn bền vững được nhúng bằng cách thay đổi trên điểm ảnh sao cho
hệ thống cảm giác của con người không thể nhận thấy và phải chịu được các thao tác xử lý tín hiệu thông thường (được gọi là "tấn công") và nó chỉ có thể được phục hồi với cơ chế giải mã thích hợp mà thôi
Thủy vân ẩn dễ vỡ được nhúng theo cách mà bất kỳ biến đổi hay giả mạo đều làm thay đổi hay phá hủy “thủy vân”
Thủy vân đồng thời (dual watermark) là sự kết hợp giữa “thủy vân” ẩn và
“thủy vân” hiện
Xét theo tính bí mật thủy vân bền vững được phân loại nhỏ hơn như sau:
- Lược đồ “thủy vân” bí mật (private watermarking scheme):
Cần tới ảnh gốc để trích xuất “thủy vân” Có hai loại lược đồ thủy vân bí mật: Loại 1: yêu cầu cả ảnh bị biến đổi và ảnh gốc khi trích xuất “thủy vân” Ảnh gốc được sử dụng để tìm kiếm vị trí “thủy vân” trong bức ảnh bị biến đổi Loại 2: trong đó yêu cầu một bản sao của “thủy vân” trong quá trình trích xuất và kiểm tra, mới có thể biết được “thủy vân” có ở trong bức ảnh cần kiểm tra hay không
Trong cả hai loại trên khi trích xuất “thủy vân” cần đòi hỏi có chìa khóa bí mật Đối với loại thứ nhất thì chìa khóa bí mật ở đây là bức ảnh gốc, còn đối với loại thứ hai chìa khóa bí mật là dữ liệu bí mật được sử dụng để nhúng vào bức ảnh (hay nói cách khác đó là “thủy vân”)
- Lược đồ “thủy vân nửa bí mật” (semi-private watermarking):
Không sử dụng ảnh gốc trong quá trình xác định thủy vân Tuy nhiên, lược đồ này chỉ đưa ra thông tin có sự hiện diện của thủy vân hay không
- Lược đồ “thủy vân” mù” (blind watermarking):
Trong lược đồ này không yêu cầu ảnh gốc lẫn thủy vân được nhúng trong quá trình trích xuất thủy vân
- Lược đồ “thủy vân khoá công khai” (public-key watermarking):
Còn gọi là “thủy vân” bất đối xứng (asymmetric watermarking) Trong lược
đồ này, chìa khóa để tìm kiếm và trích xuất “thủy vân” được công khai với mọi người trái ngược với thủy vân bí mật chìa khóa để tìm kiếm và trích xuất thủy vân là chìa khóa bí mật Biết được khóa công khai “khó” tính được khóa bí mật và khóa bí mật được sử dụng để nhúng và loại bỏ thủy vân Tuy nhiên trong những lược đồ được đề xuất cho đến nay chưa có lược đồ nào đảm bảo được tính chất trên
Trang 242.1.4 Cấu trúc cơ bản của hệ thống thủy vân
Hệ thống thủy vân bao gồm ít nhất hai quy trình sau [E14]:
- Quy trình nhúng thủy vân (watermark)
- Quy trình phát hiện / trích xuất thủy vân
Ngoài ra tùy từng hệ thống thủy vân, còn có thêm một số các quy trình khác Các quy trình có thể được xem xét một cách riêng biệt, được mô tả trong phần sau
1) Tạo thuỷ vân
Thuỷ vân có thể là một hình ảnh dạng logo hay văn bản với độ dài cho trước Thủy vân dạng ảnh có khả năng chống chịu trước các phép xử lý ảnh tốt hơn nhiều hơn so với thủy vân dạng ký tự Thuỷ vân có thể được biến đổi (bằng mã hoá, chuyển đổi định dạng), trước khi giấu vào ảnh Các thuật toán nhúng thuỷ vân dạng logo được gọi là thuật toán thuỷ vân hợp nhất ảnh (image-fusion) Thuỷ vân dạng ảnh có lợi ích là dễ dàng nhận biết về mặt trực giác và đưa ra một chứng minh đúng đắn về quyền sở hữu ảnh Bình thường sẽ có một khoá bí mật K dùng để tăng tính bảo mật cho dữ liệu được nhúng Do tính bền vững được đảm bảo hơn nên thủy vân dạng ảnh được sử dụng nhiều hơn
Để tăng thêm tính an toàn và dung lượng, thì thủy vân trước khi nhúng vào ảnh mang có thể được mã hóa hay nén lại Theo cơ chế này, đầu tiên thủy vân số sẽ được nén lại để lượng dữ liệu thủy vân có thể tăng lên, sau đó được mã hóa để tăng tính bảo mật cho thông tin trước khi được giấu vào trong ảnh mang Tuy nhiên, giải pháp này làm tăng độ phức tạp của bài toán phát hiện thủy vân
2) Qui trình nhúng thủy vân
Hình 2.4 trình bày và giải thích quá trình nhúng thủy vân cho ảnh tĩnh Trong
đó, Ảnh gốc được kí hiệu bằng I, “thủy vân” được kí hiệu bởi W, hình ảnh chứa
“thủy vân” là I W và K là khóa nhúng Hàm nhúng E MB có đầu vào là ảnh gốc I,
“thủy vân” W và khóa K và tạo ra một ảnh mới có chứa thủy vân mới thể hiện bằng
I W
Khóa nhúng K là thực sự cần thiết cho việc nâng cao khả năng bảo mật của hệ
thống “thủy vân” Trước quá trình nhúng, hình ảnh gốc có thể được chuyển đổi sang miền tần số hoặc nhúng có thể được thực hiện biến đổi sang miền không gian Miền được chọn phụ thuộc vào việc lựa chọn kỹ thuật “thủy vân” Nếu quá trình nhúng được thực hiện trong miền tần số, biến đổi nghịch đảo được áp dụng để thu được hình ảnh chứa “thủy vân” Biểu thức toán học cho hàm nhúng có thể được thể hiện như sau:
Đối với kỹ thuật biến đổi theo miền không gian:
E (I,W,K) = I (1.1)
Trang 25Đối với kỹ thuật biến đổi theo miền tần số:
Emb(f,W,K) = IW (1.2)
Trong đó f là vectơ hệ số cho phép biến đổi
Hình 2.4 Quy trình nhúng thủy vân
Khi thu được hình ảnh chứa “thủy vân” và được lưu trữ hoặc truyền qua các kênh
truyền thông thì có thể xảy ra các cuộc tấn công (hình ảnh I r được tạo ra)
3) Trích xuất và tìm kiếm thủy vân
Hình 2.4 trình bày và giải thích quy trình phát hiện/trích xuất ảnh tĩnh Một hàm
phát hiện D tc có đầu vào là hình ảnh I r có chức năng xác định quyền sở hữu sản phẩm
Các hình ảnh I r có thể chứa “thủy vân” hoặc không chứa “thủy vân” Trong trường
hợp tổng quát, hình ảnh có thể bị biến đổi Hàm phát hiện có khả năng khôi phục
“thủy vân” W e từ bức ảnh hoặc kiểm tra có sự hiện diện của “thủy vân” W trong bức ảnh đã cho I r hay không Trong quá trình này hình ảnh gốc I cũng có thể được yêu
cầu, phụ thuộc vào lược đồ “thủy vân” được lựa chọn
Biểu thức toán học cho thủ tục trích xuất “mù” (blind extraction – trích xuất
sự hiện diện của “thủy vân” W hay không Bởi vậy, có thể giả sử:
Trong lược đồ tách thủy vân phải được trích xuất một cách chính xác, nguyên
Dtc(I r ,K) = Nếu có thủy vân
Nếu không có thủy vân
Trang 26Hình 2.5 Quy trình phát hiện/trích xuất thủy vân
2.1.5 Đặc tính thủy vân
Trước đây, đã có một số bài báo đã thảo luận về các đặc tính của thủy vân [E13, 16,17] Một số thuộc tính thường được thảo luận như: tính phức tạp, tính trung thực của hình ảnh, độ tin cậy phát hiện, tính bền vững, dung lượng , bảo mật Trong thực tế, không thể để thiết kế một hệ thống thủy vân đảm bảo tất cả các thuộc tính trên Do đó, việc đảm bảo cân bằng giữa các thuộc tính là thực sự cần thiết và vấn
đề đảm bảo cân bằng phải dựa trên sự phân tích ứng dụng một cách cẩn thận Trong phần này, một số thuộc tính thường được quan tâm sẽ được định nghĩa và thảo luận:
2) Tính bền vững
Hình ảnh được thủy vân có thể phải trải qua nhiều loại xử lý biến đổi khác nhau,
ví dụ, tăng độ tương phản ảnh, lọc thông, làm mờ
Do vậy, dấu thủy ký phải có tính bền vững chịu được các phép biến đổi ảnh
Trang 27Ngoài ra, ảnh chứa thủy vân phải chịu được các phép biến đổi hình học như di chuyển vị trí, co giãn kích thước và cắt xén
Thủy vân đạt được tính bền vững thực sự khi: dấu thủy ký vẫn còn trong dữ liệu sau khi biến đổi và bộ phát hiện/trích xuất vẫn có thể phát hiện ra thủy vân Ví
dụ, dấu thủy ký vẫn tồn tại trong ảnh sau phép biến đổi hình học nhưng thuật toán phát hiện/trích xuất chỉ phát hiện và đưa ra thủy vân sau khi loại bỏ phép biến đổi Trong trường hợp, không xác định rõ phép biến đổi để thực hiện biến đổi ngược thì
bộ phát hiện/trích xuất không thể phát hiện và đưa ra thủy vân mặc dù thủy vân vẫn còn tồn tại trong ảnh số
Thủy vân có thể được nhúng trong hình ảnh bằng cách thay đổi các giá trị điểm ảnh Trong trường hợp biến đổi miền không gian, thủy vân đơn giản có thể được nhúng vào trong ảnh bằng cách thay đổi các giá trị điểm ảnh hoặc giá trị các bit ít quan trọng nhất (LSB, CPT) Tuy nhiên, “thủy vân” bền vững hơn nếu được nhúng vào trong miền biến đổi của hình ảnh bằng cách thay đổi các hệ số Vào năm
1997, tác giả Cox et.al trình bày một bài báo về "Thủy vân dựa trên trải phổ bảo vệ cho dữ liệu đa phương tiện"[E9], sau đó bài báo này được trích dẫn trong nhiều tài liệu (34.200 lần trích dẫn tính đến tháng 12 năm 2010), và sau đó hầu hết các nỗ lực nghiên cứu về các kỹ thuật biến đổi trên miền tần số được dựa trên bài báo này
4) Tỷ lệ lỗi sai dương
Tỷ lệ lỗi sai dương là xác suất hệ thống phát hiện nhầm: xác định một mẩu dữ liệu không mang dấu thủy ký là mang dấu thủy ký Tùy theo ứng dụng mà ảnh hưởng của lỗi là khác nhau, trong một số ứng dụng có thể là rất nghiêm trọng Do
đó, trong ứng dụng, người ta phải tính toán trước sao cho tỷ lệ lỗi sai dương nhỏ hơn mức cho phép
Trang 285) Tính dư thừa
Tính dư thừa liên quan đến một thực tế là thủy vân được lặp lại ở những vùng tần số khác nhau, do đó nếu có một lỗi trên một vùng tần số thì vẫn có thể được khôi phục thông điệp từ các dải tần khác Tính dư thừa ánh xạ tới tính bền vững, có nghĩa
là “thủy vân” có thể được khôi phục ngay cả khi nó bị biến đổi ở độ nhất định do sự
vô ý hay tấn công có chủ ý
6) Đa thủy vân
Một kẻ tấn công có thể thủy vân lại một đối tượng đã đóng dấu thủy vân và sau
đó tuyên bố sản phẩm thuộc quyền sở hữu của mình Một giải pháp đơn giản nhất trong trường hợp này là gán nhãn thời gian cho thông tin thủy vân với sự có mặt của
cơ quan chứng thực (CA) hay có thể nhúng thủy vân khác nhau với những người sử dụng khác nhau Với phương pháp nhúng nhiều thủy vân cho phép lần vết theo nội dung thủy vân nhưng lại tạo điều kiện cho phép tấn công loại bỏ bằng cách lấy trung bình xác suất (được biết tới với tên gọi tấn công đồng thời)
7) Độ phức tạp tính toán
Cũng như với bất cứ công nghệ nào để sử dụng trong thương mại, độ phức tạp tính toán của lược đồ thủy vân đều rất quan trọng Điều này đặc biệt đúng khi xử lý với các dữ liệu thời gian thực
Mặt khác, cần phải xem xét tính co giãn của độ phức tạp tính toán Tốc độ máy tính càng được cải thiện, do vậy những lược đồ thủy vân không hợp lý về tính toán ngày hôm nay có thể rất nhanh chóng trở thành hiện thực trong ngày mai Người thiết kế lược đồ thủy vân luôn mong muốn thiết kế được lược đồ mà quy trình nhúng và phát hiện thủy vân có tính co giãn theo các thế hệ của máy tính Ví dụ, lược đồ thủy vân thế hệ đầu tiên có độ phức tạp tính toán không lớn nhưng độ tin cậy không cao so với lược đồ thủy vân thế hệ tiếp theo Nhưng khi giải quyết một vấn đề tính toán lớn thì lược đồ thủy vân ở thế hệ sau lại làm việc tốt hơn
Trang 292.1.6 Tiêu chuẩn và hiệu suất lược đồ thủy vân
Khi thực hiện thuỷ vân ảnh số, cần phải có một số tiêu chí để đánh giá chất lượng của giải thuật Thông thường người ta thường dựa trên các tính chất sau [E14,18]:
1) Bảo đảm tính “vô hình” (Imperceptibility)
Quá trình thủy vân sẽ làm biến đổi ảnh mang do thủy vân được nhúng vào Tính
“vô hình” thể hiện mức độ biến đổi ảnh mang
Lược đồ thủy vân hiệu quả, sẽ làm cho thủy vân trở nên “vô hình” trên ảnh mang làm cho người khác “khó có thể” nhận ra, do vậy đảm bảo được tính bí mật của thủy vân Tuy nhiên trong thực tế không phải khi nào người ta cũng cố gắng để đạt được tính vô hình cao nhất, ví dụ trong “thuỷ vân hiện” thủy vân được sử dụng
để làm biểu tượng xác thực nguồn gốc sản phẩm, do vậy không nhất thiết phải là bí mật, nhiều khi cần lộ ra cho mọi người biết để mà “dè chừng”!
2) Khả năng chống giả mạo (Tính toàn vẹn)
Đối với thủy vân thì khả năng chống giả mạo là yêu cầu vô cùng quan trọng, vì
có như vậy mới bảo vệ được bản quyền, minh chứng tính pháp lý của sản phẩm Để
có thể chống lại giả mạo thì bất cứ sự thay đổi nào về nội dung của các ảnh số thì thủy vân này sẽ bị huỷ đi Do đó rất khó làm giả các ảnh số có chứa thuỷ vân
3) Tính bền vững
Yêu cầu thứ ba là thuỷ vân phải bền vững Thuỷ vân phải có khả năng tồn tại cao với các hình thức tấn công có chủ đích và không có chủ đích Các tấn công không có chủ đích đối với ảnh số bao gồm như nén ảnh, lấy mẫu, lọc, chuyển đổi A/D và D/A …
Tấn công có chủ đích có thể là việc xoá, thay đổi hoặc làm nhiễu thuỷ vân trong ảnh Để thực hiện được điều này, thuỷ ấn phải được dấu trong các vùng quan trọng đối với trực giác (perceptual significant) Phương pháp thuỷ vân số phải đảm bảo sao cho việc không thể lấy lại thuỷ vân tương đương với việc ảnh đã bị biến đổi quá nhiều, không còn giá trị về thương mại
4) Dung lượng
Với yêu cầu này, thủy vân nhúng vào ảnh phải đủ dùng trong ứng dụng mà không làm thay đổi quá nhiều chất lượng ảnh Để thực hiện tốt tất cả yêu cầu trên là một điều rất khó
Trang 30Việc giấu thuỷ vân trong ảnh thì ta bắt buộc phải thay đổi dữ liệu ảnh Ta có thể tăng tính bền vững cho thuỷ vân bằng cách tăng lượng thay đổi ảnh cho mỗi đơn vị tin cần giấu Nhưng, nếu thay đổi quá nhiều thì tính ẩn không còn được đảm bảo nữa Còn nếu thay đổi ảnh quá ít thì các yếu tố dùng để xác định thuỷ vân trong ảnh sau các phép tấn công có thể không đủ để xác định thuỷ vân Nếu thông tin được giấu quá nhiều thì cũng dễ làm thay đổi chất lượng ảnh, và làm giảm tính bền vững
Vì vậy, lượng thay đổi ảnh lớn nhất có thể chấp nhận và tính bền vững là nhân tố quyết định cho khối lượng tin được giấu trong ảnh
Trong thực tế, người ta luôn phải cân nhắc giữa chất lượng (tính bí mật, tính toàn vẹn, tính bền vững) và dung lượng thủy vân
Hình 2.6 Cân nhắc giữa chất lượng, dung lượng, tính bền vững
Trang 312.2 KỸ THUẬT THỦY VÂN TRÊN ẢNH
Dựa trên những “miền dữ liệu” được sử dụng để nhúng thủy vân, lược đồ thủy vân có thể được phân thành hai lớp [E19, 20]:
Lớp các kỹ thuật thủy vân trên “miền không gian” (thao tác trên điểm ảnh và lân cận) Hệ thống thủy vân trực tiếp làm thay đổi các phần tử dữ liệu chính, chẳng hạn như trong một bức ảnh số các điểm ảnh được thay đổi để giấu các dữ liệu về “thủy vân”
Lớp các kỹ thuật thủy vân trên “miền tần số” (thao tác trên tần số) Hệ thống thủy vân làm biến đổi tần số của các phần tử dữ liệu trên một bức ảnh để ẩn đi các dữ liệu về “thủy vân”
Trong mục này, các kỹ thuật thủy vân trên miền không gian và miền tần số cũng như ưu nhược điểm của từng kỹ thuật được tìm hiểu và nghiên cứu Đồng thời luận văn cũng tập trung vào việc tìm hiểu, lựa chọn và phát triển các lược đồ thủy vân cho ảnh số để có thể chống chịu được các phương pháp tấn công đã biết và các thao tác xử lý ảnh khác nhau
2.2.1 Kỹ thuật thủy vân trên miền không gian
2.2.1.1 Thủy vân trong miền LSB (Least Significant Bit)
Về cơ bản, kỹ thuật thủy vân LSB dựa trên tần suất xuất hiện của các bit 0 & 1 trong file ảnh gốc và trong thông điệp cần mã hóa, từ đó đưa ra sự thay thế các bit này
để thực hiện việc giấu tin [V2]
Cụ thể hơn, trong kỹ thuật thủy vân LSB, bit cuối cùng của mỗi byte được đặt giá trị 0, sau đó tùy thuộc vào giá trị 0 hoặc 1 của dữ liệu mà thay đổi Nếu bit của dữ liệu là 0 thì giữ nguyên, còn nếu bit của dữ liệu là 1 thì sẽ đổi giá trị này trên ảnh thành
1
Để thực hiện kỹ thuật thủy vân này, cần một ảnh gốc, hay còn gọi là cover image Do phương pháp này sử dụng những bits của từng pixel trong ảnh, nó đòi hỏi một định dạng nén không mất mát thông tin Khi ta sử dụng ảnh màu 24-bit, từng bit của mỗi màu thành phần R,G,B đều có thể được sử dụng, như vậy có thể giấu được 3 bit trong mỗi điểm ảnh, đồng nghĩa với việc nhúng được nhiều thông tin hơn
Dữ liệu vào:
+ Ảnh gốc (cover image)
+ Dữ liệu thủy vân
+ Khóa bí mật
Trang 32 Thuật toán nhúng thủy vân:
+ Bước 1: Tính tổng số bytes cần dùng để nhúng thủy vân Giá trị này được lưu
trong biến int S
+ Bước 2: Đọc các kí tự từ file text sau đó chuyển giá trị ASCII của chúng sang
dạng nhị phân 8 bit, lưu giữ trong một mảng từ A[7] về A[0] (A[0] là LSB)
+ Bước 3: Tính toán xem có tất cả bao nhiêu bit 0 và 1 xuất hiện trong mỗi byte,
lưu tổng các giá trị này lần lượt là i0 và i1
+ Bước 4: Lặp lại từ bước 1 4 cho tới khi kết thúc toàn bộ văn bản (EOF) + Bước 5: Từ ảnh gốc (Cover image), đọc giá trị RGB của mỗi pixel
+ Bước 6: Đọc giá trị bit cuối cùng của mỗi pixels Với ảnh RGB 24 bit thì ta sẽ
đọc bit cuối cùng trong số 8 bit của màu xanh da trời (Blue)
+ Bước 7: Kiểm tra xem bit này có giá trị là 0 hay 1, sau đó tính tổng số lần xuất
hiện các bit này trong S pixels, lưu lần lượt vào hai biến c0 và c1
+ Bước 8: Lặp lại từ bước 5 cho đến bước 7 [8*S] lần Đây là số pixels cần đọc
để có thể giấu toàn bộ các bytes của thông điệp
+ Bước 9: Nếu [(c0> c1) và (i0>i1)] hoặc [(c1>c0) và (i1>i0)], đặt giá trị cho flag =
0, ngược lại đặt giá trị flag = 1
+ Bước 10: Ghi giá trị của flag vào phía bên trái của bit cuối cùng của pixel đầu
tiên trong ảnh giấu (Stego Image)
+ Bước 11: Mở ảnh gốc ở chế độ đọc Tạo một ảnh mang giống như ảnh gốc ở
chế độ ghi
+ Bước 12: Đọc header của file gốc Ghi thông tin header này lên ảnh mang Từ
ảnh gốc, đọc giá trị RGB của mỗi pixel
+ Bước 13: Đọc bit stream của dữ liệu Nếu giá trị của cờ là 0 thì giữ nguyên giá
trị bit của dữ liệu, sau đó ghi đè lên bit cuối cùng của màu xanh của pixel, ngược lại, nếu giá trị cờ là 1 thì đảo lại bit dữ liệu rồi mới ghi lên pixel (0 thành 1 hoăc 1 thành 0) Ghi pixel này vào ảnh Stego
+ Bước 14: Nếu toàn bộ các LSB đã được sửa đổi thành công, thì ghi nốt các bit
còn lại của các pixels vào ảnh mang Ngược lại, quay lại bước 13
Trang 33 Thuật toán tách thủy vân:
+ Bước 1: Mở ảnh Stego dưới chế độ đọc
+ Bước 2: Đọc bit liền kề bit cuối của pixel đầu tiên trong ảnh Dựa trên giá trị
của nó, đặt giá trị flag là 0 hoặc 1
+ Bước 3: Đọc từng pixel của ảnh Stego
+ Bước 4: Nếu flag là 0 thì đọc bit cuối cùng của mỗi pixel và đưa vào một
mảng Ngược lại nếu flag = 1 thì đảo bit rồi mới chuyển vào mảng
+ Bước 5: Đọc mỗi 8 pixel theo cách trên, sau đó chuyển nội dung của mỗi 8
phần tử của mảng sang hệ thập phân, đây chính là giá trị ASCII của kí tự
+ Bước 6: Nếu chưa gặp giá trị EOF thì in kí tự và quay lại bước 3
Ví dụ
Giả sử thông tin cần nhúng là Hi Trong bảng mã ASCII, H có mã là 72 và i có
mã là 105:
+ Chuyển sang hệ nhị phân ta có H = 01001000 và i = 01101001
+ Thông điệp Hi được mã hóa có dạng: 0100100001101001
+ Trong chuỗi trên có 6 bits 1 và 10 bits 0
+ Cần có 16 pixels để lưu trữ 16 bits dữ liệu trên
+ Giả sử có một bảng 16 pixel RGB với giá trị như sau:
+ Dựa theo thuật toán ta có: i0 = 10; i1 = 6; c0 = 5; c1 = 11 + Ở đây ta có i0 > i1 nhưng c0 < c1, do đó cần thực hiện phép đổi bit trên thông điệp thành 1011011110010110 và đặt flag có giá trị bằng 1
Trang 34+ Sau quá trình nhúng thủy vân các điểm ảnh của ảnh Stego sẽ có dạng
Quá trình tách thủy vân tiến hành ngược lại:
+ Flag được đọc và nhận giá trị 1
+ Đọc 16 bits cuối của ảnh Stego ta nhận được chuỗi 1011011110010110
+ Do flag = 1, ta cần thực hiện phép đảo bit để nhận được chuỗi nguyên bản:
0100100001101001
2.2.1.2 Thuật toán CPT (Chen – Pan – Tseng)
Việc nhúng thông tin vào ảnh nhị phân là một thách thức không nhỏ Thuật toán giấu bit thông tin vào khối ảnh nhị phân (WL) được M.Y WU và J.H LEE đề xuất Tuy nhiên, mỗi khối giấu được không nhiều thông tin và khả năng bảo mật cũng không được tốt Thuật toán CPT của Y Chen, H.Pan,Y.Tseng cũng có tư tưởng giấu tin theo khối bít [E21]
Theo thuật toán, ảnh được phân hoạch thành nhiều khối có cùng kích thước m×n Với mỗi khối dữ liệu ảnh, có thể giấu được tối đa r bit thông tin, với
r ≤ [log2(m*n+1)] bằng cách thay đổi không quá 2 bit trong khối dữ liệu ảnh
So với thuật toán WL, thuật toán CPT có tỷ lệ giấu tin cao hơn nhiều, trong khi
số bít cần thay đổi cũng rất ít Ví dụ với khối 25*25 thuật toán WL, ta chỉ giấu được 1 bít, nhưng với thuật toán CPT có thể giấu tối đa là 8 bít
Ngoài cách sử dụng một khóa K, thuật toán CPT còn sử dụng một ma trận trọng
số nhằm giấu được một dãy nhiều bít vào mỗi khối, và ma trận trọng số này cũng là thành phần bí mật cùng với ma trận khóa K Do vậy độ an toàn, tính bảo mật của thuật toán CPT sẽ cao hơn
Trang 35 Dữ liệu vào:
+ Ảnh nhị phân A dùng làm môi trường giấu tin A được coi như một ma trận nhị phân, và được chia thành các ma trận con F cấp m*n Mỗi ma trận F là một khối bit được dùng làm môi trường giấu tin
+ (b1b2 …br) là dãy r bít cần giấu vào trong mỗi khối ảnh kích thước m*n và
năng (trong đó là tổ hợp chập 2r-1 của tập hợp m*n phần tử) Vì vậy với m và n,
đủ lớn thì khả năng kẻ gian dò tìm ra được W là vô cùng khó nên thuật toán CPT có độ
an toàn giấu tin là rất cao
Các ma trận K và W được sử dụng như khóa bí mật: người gửi sử dụng khóa K
và ma trận trọng số W trong quá trình giấu tin và người nhận cần phải có khóa K, W
để khôi phục lại thông tin đã giấu
Trước hết ta quan tâm tới đối tượng chính là các ảnh nhị phân hay ảnh 1 bit màu
Đó là những bức ảnh mà mỗi điểm ảnh chỉ là điểm đen hoặc trắng, được quy định bởi một bit Nếu bit mang giá trị 0 thì điểm ảnh là đen, nếu là 1 thì điểm ảnh là trắng Do
đó để biểu diễn ảnh đen trắng ta có thể dùng ma trận nhị phân, là ma trận mà mỗi phần
tử chỉ nhận một trong hai giá trị 0 hoặc 1
+ Khoá bí mật (SECRET KEY):
Là ma trận nhị phân có cùng kích thước với kích thước khối ảnh được dùng chung bởi người giấu tin và người tách thông tin
+ Ma trận trọng số (WEIGHT MATRIX):
Cũng là ma trận số có cùng kích thước với khoá và được sử dụng bởi người giấu tin và người tách thông tin
Trang 36Ma trận W kích thước m*n được gọi là ma trận trọng số cấp r nếu mỗi phần tử của tập hợp {1,2, , 2r
-1} xuất hiện trong W ít nhất một lần và các phần tử của W chỉ nhận giá trị trong tập hợp {1,2, ,2r
-1} với m, n, r là các số tự nhiên thoả mãn
2r -1 m*n
Từ định nghĩa ta nhận thấy với mỗi m, n, r thoả mãn 2r
-1 m*n sẽ có:
) 1 2 ( 1
2
) 1 2
)!*(
1 2
r mn
C
+ Ví dụ như với m = n = 4, r = 2 ta sẽ có 5.356.925.280 khả năng lựa chọn W 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 bít là một phép biến đổi trên các bit nhị phân Đảo bit b tương đương với phép biến đổi thay b bởi 1-b, tức là nếu ban đầu b nhận giá trị 0 thì sau khi đảo nó
sẽ nhận giá trị 1 và ngược lại, nếu ban đầu b có giá trị là 1 thì sau khi đảo nó sẽ có giá trị 0
Các phép toán trên ma trận
Giả sử cho hai ma trận nhị phân A và B có cùng kích thước
Phép cộng : C = A B
Trong đó: C[i,j] = A[i,j] B[i,j]:
A[i,j] B[i,j] C[i,j]
Với khối ảnh Fi, ma trận trọng số W, khoá K, ta cần giấu r bit thông tin
b1,b2, ,br vào Fi bằng cách đảo nhiều nhất 2 bit của Fi Mục đích của ta là biến đổi Fi
thành Fi' sao cho thoả mãn yêu cầu sau: SUM((Fi' K) W) b1b2 br (mod 2r)
Trang 37Thuật toán được thực hiện tuần tự cho từng khối F theo các bước sau:
Zα Khi đó tập Z là một tập hợp gồm 2r-1 tập con Mỗi tập Zα là một tập hợp chứa tất
cả các chỉ số (j, k) của ma trận Như vậy nếu thay đổi giá trị của phần tử thứ (j, k)
trong ma trận F (thay 0 thành 1, thay 1 thành 0) sẽ làm cho S tăng thêm α đơn vị (hiểu
Trang 38Nếu [W]j,k = α và [T]j,k = 0 thay đổi giá trị của phần tử [F]j,k thì S tăng thêm α đơn vị Nếu [W]j,k = α và [T]j,k = 1 thay đổi giá trị của phần tử [F]j,k thì S giảm đi
2r - α đơn vị hoặc theo mod 2r thì S tăng thêm α đơn vị
+ Bước 4:
Gọi F’ là khối ảnh sau khi đã giấu r bít thông tin vào F (F’ khác F tối đa hai phần tử) và S’= SUM((F’+ K)*W) Khi đó sẽ thực hiện giấu tin bằng cách thay đổi các bít trong F để biến F thành F’ sao cho đạt được bất biến: S’= b (mod 2r
) (*) Trong đó: b = (b1b2 … br) Ví dụ nếu r = 8 và (b1b2b3b4b5b6b7b8) = 11111111 thì
b = 255
Đặt d = b – S (mod 2r
)
* TH1: Nếu d = 0 thì S = b mod 2r Do đó trong trường hợp này giấu được b vào
F mà không cần biến đổi F tức là F’ = F, S’ = S
* TH2: Nếu d > 0 thì cần phải biến đổi F sao cho đạt được bất biến Trong trường hợp này có 2 khả năng xảy ra:
Nếu Zd ≠ Ø thì cần chọn một cặp (j,k) bất kỳ thuộc Zd rồi thay đổi giá trị phần tử [F]j,k khi đó S sẽ tăng thêm d đơn vị (theo mod 2r), do đó đã đạt được bất biến Trong trường hợp này giấu được b vào trong F chỉ cần thay đổi 1 phần tử trong F
Nếu Zd = Ø thì thực hiện các bước sau:
Chọn h là số tự nhiên đầu tiên thoả mãn Zhd ≠ Ø và Z(1-h)d ≠ Ø
Chọn cặp (j, k) bất kỳ thuộc Zhd và thay đổi giá trị của phần tử [F]j,k, khi đó S tăng thêm h*d
Chọn cặp (u,v) bất kỳ thuộc Z-(h-1)d và thay đổi giá trị của phần tử [F]u,v khi đó
Trang 39Nếu Zd + 2r = Ø thì thực hiện các bước sau:
Chọn h là số đầu tiên thoả mãn Zhd ≠ Ø và Z(1-h)d + 2r ≠ Ø
Chọn cặp (j,k) bất kỳ thuộc Zhd và thay đổi giá trị của phần tử [F]j,k, khi đó S tăng thêm h*d
Chọn cặp (u,v) bất kỳ thuộc Z(1-h)d + 2r và thay đổi giá trị của phần tử [F]u,v khi
đó S tăng thêm (1-h)*d +2r
= d- h*d + 2rVậy khi thay đổi giá trị của hai phần tử [F]j,k và [F]u,v, thì S tăng một lượng là h*d + d – h*d +2r = d + 2r (theo mod 2r) thì S tăng thêm d Trong trường hợp này giấu
b vào trong F, cần thay đổi tới hai phần tử trong F
+ Bước 5:
Khôi phục lại thông tin đã giấu Khi người nhận được F’ từ người gửi và biết ma trận mặt nạ K, ma trọng trận số W người nhận chỉ cần tính S’= SUM((F’+K)xW) => b = S’ mod 2r, từ đó xác định được dãy bít (b1b2…br) đã giấu trong F
Trang 402.2.2 Kỹ thuật thủy vân trên miền tần số
Kỹ thuật thủy vân trên miền tần số sử dụng các phương pháp biến đổi như Cosine rời rạc, biến đổi Fourier rời rạc, biến đổi sóng con (wavelet)… để chuyển miền không gian ảnh sang miền tần số Thủy vân sẽ được nhúng trong miền tần số của ảnh theo kỹ thuật trải phổ trong truyền thông, kỹ thuật này được đề xuất lần đầu tiên bởi Cox cùng cộng sự trong bài báo về "Thủy vân dựa trên trải phổ bảo vệ cho dữ liệu đa phương tiện" [E22], và đã được trích dẫn trong nhiều tài liệu (34.200 lần trích dẫn tính đến tháng 12 năm 2010) Đây là kỹ thuật phổ biến nhất với nhiều thuật toán được đề xuất và là phương pháp tốt giải quyết vấn đề về tính bền vững của thủy vân
Ba công thức khác nhau được đề xuất bởi Cox cùng cộng sự cho việc nhúng thủy vân thường được sử dụng là:
) 1 )(
( ) ( ' i f i w i
f
i w i f i
f'( ) ()
i
w
e i f i
f '( ) ( )
Trong đó, i= 1…N, thuỷ vân là một dãy số wi độ dài N được nhúng vào một tập
con các hệ số thích hợp các hệ số f 1 ,f 2 , ,f N trong miền tần số của ảnh gốc f' là giá trị các hệ số của ảnh mang chứa kết quả sau khi thay đổi để chứa thuỷ ấn là hệ số năng lượng của thủy vân, hệ số này quyết định tính bền vững và vô hình của thủy vân
Quá trình trích xuất thủy vân được tính bởi công thức sau:
) (
) ( ) (
*
*
i f
i f i f
w w
Nếu dương và gần 1 thì có thể kết luận ảnh ban đầu đã được nhúng thuỷ vân
w Một ngưỡng có thể được thiết lập hoặc bằng sự quan sát tương quan giữa các dãy ngẫu nhiên hoặc bằng cách phân tích Một ngưỡng có thể chấp nhận được là
S’ = SUM ((F’ + K) x W) = 10
b = S’ mod 24
= 10