Lịch sử phát triển của thuỷ vân

Một phần của tài liệu Thủy vân cơ sở dữ liệu quan hệ dựa trên kỹ thuật tối ưu hoá áp dụng thuật toán tìm kiếm theo mẫu (Trang 27)

Tanaka (1990), Caronni và Tirkel (1993) lần lượt đưa ra những ấn bản đầu tiên về nhúng thủy vân nhưng chưa nhận được sự quan tâm đúng mức.

Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn

Đến năm 1995, chủ đề này mới bắt đầu được quan tâm và từ đó, nhúng thủy vân số đã phát triển tốc độ nhanh với nhiều hướng nghiên cứu và phương pháp thực hiện khác nhau. Nhúng thủy vân được ứng dụng trong nhiều lĩnh vực như bảo vệ quyền sở hữu, điều khiển việc sao chép, xác nhận giấy tờ, hay truyền đạt thông tin khác, …trong đó ứng dụng phổ biến là cung cấp bằng chứng về bản quyền tác giả của các dữ liệu số bằng cách nhúng các thông tin bản quyền.

1.2.3. Mô hình hệ thống tổng quát quá trình nhúng và khôi phục thuỷ vân

Hình 1.4. Sơ đồ nhúng thuỷ vân

Thuỷ vân Dữ liệu nhúng Dữ liệu bao phủ Mã cá nhân / công cộng Quyết định thuỷ vân Dữ liệu nhúng Thuỷ vân Mã cá nhân / công cộng

Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn

Hình 1.5. Sơ đồ khôi phục thuỷ vân

Tất cả các phương pháp nhúng thủy vân đều có chung các khối sau: một hệ thống nhúng thủy vân và một hệ thống khôi phục thủy vân. [9], [10], [12], [13]

Hình 1.4. trình bày quá trình nhúng thủy vân tổng quát. Đầu vào là thủy vân, dữ liệu cần nhúng và mã cá nhân hay công cộng. Thủy vân có thể ở bất kì dạng nào như chữ số, văn bản hay hình ảnh. Khoá có thể được dùng để tăng cường tính bảo mật, nghĩa là ngăn chặn những người không có bản quyền khôi phục hay phá hủy thủy vân. Các hệ thống thực tế dùng ít nhất là một khoá, thậm chí kết hợp nhiều khoá. Đầu ra là dữ liệu đã được nhúng thủy vân.

Quá trình khôi phục thủy vân tổng quát được cho ở hình 1.5. Đầu vào là dữ liệu đã nhúng thủy vân, khoá và dữ liệu gốc (có thể có hoặc không tuỳ thuộc vào phương pháp). Đầu ra hoặc là thủy vân khôi phục được hoặc đại lượng nào đó chỉ ra mối tương quan giữa nó và thủy vân cho trước ở đầu vào.

Phụ thuộc vào mục đích và ứng dụng mà các yêu cầu của hệ thống nhúng thủy vân được đặt ra. Với các hệ thống thực tế, chúng đòi hỏi các yêu cầu sau:

− Tính không nhận biết: các điều chỉnh gây ra do nhúng thủy vân phải thấp hơn ngưỡng cảm thụ, nghĩa là các mẫu dùng trong nhúng thủy vân chỉ được phép thay đổi nhỏ.

− Tính bền vững: đây là một yêu cầu nòng cốt của nhúng thủy vân.

− Khôi phục thủy vân cần hoặc không cần dữ liệu gốc. − Trích thủy vân hay kiểm chứng sự tồn tại của thủy vân.

Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn

− Các khoá và bảo mật thủy vân.

1.2.4. Một số ứng dụng của thuỷ vân

Một ứng dụng phổ biến của kỹ thuật thuỷ vân là đưa ra một bằng chứng về quyền sở hữu đối với dữ liệu số bằng cách nhúng dấu hiệu mang tính bản quyền vào phim hoặc các sản phẩm ảnh số.

Ngoài ra, còn có những ứng dụng khác :

- Tự động điều khiển và tự hiệu chỉnh sao chép tài liệu trên Web. Ví dụ một robot tìm web để đánh dấu vào tài liệu và từ đó nhận dạng sản phẩm bất hợp pháp.

- Tự động kiểm tra việc truyền nhận sóng vô tuyến. Ví dụ một robot có thể “nghe” một trạm thu phát sóng radio và tìm kiếm những dấu hiệu để biểu thị một phần cụ thể của bản nhạc hoặc lời quảng cáo vừa được phát ra.

- Việc mở rộng dữ liệu- để thêm thông tin mang lại lợi ích một cách công khai.

- Ứng dụng trong lấy dấu vân tay (cho phép nhận dạng dữ liệu đã phân tán).

Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn

Chƣơng 2-

THUỶ VÂN CƠ SỞ DỮ LIỆU QUAN HỆ DỰA TRÊN KỸ THUẬT TỐI ƢU HOÁ

ÁP DỤNG THUẬT TOÁN TÌM KIẾM THEO MẪU

2.1. Giới thiệu về thuỷ vân cơ sở dữ liệu (database watermarking)

Tốc độ phát triển nhanh của Internet và các công nghệ có liên quan đã đưa đến một tiềm năng chưa từng có đối với việc truy cập và phân phối lại các sản phẩm kỹ thuật số. Trong bối cảnh như vậy, việc thực thi quyền sở hữu dữ liệu là một yêu cầu quan trọng đòi hỏi các giải pháp đồng bộ, bao gồm các khía cạnh về kỹ thuật, về tổ chức, và cả luật pháp. Mặc dù vẫn chưa có được những giải pháp toàn diện như vậy nhưng trong các năm gần đây, các kỹ thuật thuỷ vân đã đóng vai trò quyết định nhằm giải quyết vấn đề về quyền sở hữu này. Những kỹ thuật như vậy cho phép người chủ dữ liệu có thể nhúng một thuỷ vân ẩn vào dữ liệu. Một thuỷ vân thường mô tả những thông tin có thể được dùng để chứng minh quyền sở hữu dữ liệu, chẳng hạn như tên chủ sở hữu, nguồn gốc, hoặc người tiếp nhận nội dung này. Việc nhúng thông tin an toàn đòi hỏi thuỷ vân được nhúng trong dữ liệu không thể bị làm giả mạo hoặc bị tẩy xoá một cách dễ dàng. Nhúng ẩn có nghĩa là thuỷ vân không thể nhìn thấy được trong dữ liệu. Hơn nữa, việc phát hiện thuỷ vân được thực hiện theo phương pháp mù, tức là không đòi hỏi dữ liệu gốc cũng như thuỷ vân gốc. Đã có một số kỹ thuật thuỷ vân được phát triển để nhúng thủy vân phim, âm thanh, ảnh và dữ liệu văn bản.

Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn (adsbygoogle = window.adsbygoogle || []).push({});

Trái lại, vấn đề thuỷ vân dữ liệu quan hệ đã không nhận được sự chú ý thích đáng. Tuy nhiên, có nhiều ngữ cảnh ứng dụng trong đó dữ liệu trở nên một tài sản quan trọng, vì vậy vấn đề về quyền sở hữu phải được thực thi một cách cẩn thận. Ví dụ dữ liệu về thời tiết, dữ liệu về thị trường chứng khoán, dữ liệu về hành vi của khách hàng, dữ liệu y học và khoa học. Việc nhúng thuỷ vân vào dữ liệu quan hệ có thể thực hiện được bởi trong thực tế, các dữ liệu thật có thể chấp nhận một dung sai nhỏ mà vẫn không ảnh hưởng đáng kể đến giá trị sử dụng của chúng.

Cho đến nay, mới có một vài cách tiếp cận đối với bài toán thuỷ vân dữ liệu quan hệ được đề xuất. Tuy nhiên, những kỹ thuật này không bền vững đối với các tấn công thủy vân. Đề tài này trình bày một kỹ thuật thuỷ vân cơ sở dữ liệu quan hệ có độ bền vững cao so với các kỹ thuật khác. Kỹ thuật này bền vững đối với các tấn công xoá, sửa và chèn các bản ghi. [1], [2], [8],[9]

Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn

2.2. Mô hình chi tiết hệ thống thuỷ vân cơ sở dữ liệu

Kỹ thuật tối ưu gồm hai quá trình, quá trình mã hoá và giải mã thuỷ vân. Sơ đồ khối tóm tắt các thành phần chính của mô hình hệ thống thuỷ vân như sau:

Hình 2.1: Các thời kỳ mã hoá và giải mã thuỷ vân.

Một bộ dữ liệu D được biến đổi thành bộ dữ liệu đã thuỷ vân DW bằng cách dùng hàm mã hoá thuỷ vân, đầu vào khoá bí mật KS chỉ được người chủ sở hữu biết, và một thuỷ vân W. Thuỷ vân làm thay đổi dữ liệu. Tuy nhiên, những thay đổi này được kiểm soát bằng cách sử dụng tập các ràng buộc thích hợp tham chiếu đến tập G. Các ràng buộc này giới hạn lượng thay đổi để có thể thực hiện trên dữ liệu.

Quá trình mã hoá thuỷ vân gồm ba bước chính sau:

T* KS W’ D W G Dw D’w S'o,...,S'm1 So,...,Sm1 Phân hoạch dữ liệu Phân hoạch dữ liệu Nhúng thuỷ vân Đánh giá ngƣỡng tối ƣu Kênh truyền Giải ngƣỡng Bầu chọn theo đa số

Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn

Bước 1: Phân hoạch dữ liệu: dùng khoá bí mật KS , bộ dữ liệu D được chia thành m phần {So , . . . , Sm-1 } không giao nhau.

Bước 2: Nhúng thuỷ vân: Một bít thuỷ vân được nhúng vào mỗi phần bằng cách thay đổi các thống kê phân hoạch trong khi vẫn thỏa mãn các ràng buộc sử dụng trong bộ G. Sự thay đổi này được thực hiện bằng cách giải bài toán tối ưu hoá có ràng buộc.

Bước 3: Đánh giá ngưỡng tối ưu: các thống kê bit nhúng được sử dụng để tính toán ngưỡng tối ưu T* - ngưỡng làm cực tiểu hoá khả năng ( xác suất ) xảy ra lỗi giải mã.

Bộ dữ liệu đã nhúng thuỷ vân DW được chuyển đi qua các kênh truyền và do đó có thể chịu những tấn công có chủ đích hoặc không có chủ đích nhằm phá huỷ thông tin thuỷ vân. Chú ý rằng những tấn công có chủ đích có thể được thực hiện mà không cần bất cứ sự hiểu biết gì về khoá bí mật KS

hoặc bộ dữ liệu D.

Giải mã thuỷ vân là quá trình lấy ra thuỷ vân đã nhúng từ bộ dữ liệu đã nhúng thuỷ vân DW, sử dụng khoá bí mật KS và ngưỡng tối ưu T*. Thuật toán giải mã này không rõ ràng bởi bộ dữ liệu gốc D không yêu cầu giải mã thành công thuỷ vân đã nhúng.

Quá trình giải mã thuỷ vân được chia thành ba bước chính sau:

Bước 1: Phân hoạch bộ dữ liệu: sử dụng thuật toán phân hoạch dữ liệu đã dùng trong phần mã hoá trên, sinh ra các phân vùng dữ liệu.

Bước 2: Giải mã ngưỡng: Các thống kê của mỗi phân vùng được đánh giá và bit đã nhúng được giải mã bằng cách dùng lược đồ giải mã ngưỡng dựa trên ngưỡng tối ưu T*.

Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn

Bước 3: Bầu chọn theo đa số: Các bit thuỷ vân được giải mã sử dụng kỹ thuật bầu chọn theo đa số.

Tiếp theo sẽ trình bày chi tiết các kỹ thuật, các thuật toán cho quá trình mã hoá và giải mã thuỷ vân.[9]

2.3. Phân hoạch dữ liệu

Thuật toán phân hoạch dữ liệu phân chia bộ dữ liệu thành các phần, các tập hợp con dựa vào khoá bí mật KS .

Bộ dữ liệu D là một cơ sở dữ liệu quan hệ với lược đồ D(P,A0,...,A1) trong đó P là thuộc tính khoá chính, A0,...,A1 là  thuộc tính dùng để nhúng thuỷ vân và D là số bản ghi trong D.

Bộ dữ liệu D được chia thành m phần không giao nhau S0,...,Sm1, sao cho mỗi phần Si chứa trung bình

m D

bản ghi từ bộ dữ liệu D. Các phần không giao nhau, tức là, với hai phần bất kỳ SiSjij thì SiSj  . Với mỗi bản ghi rD, thuật toán phân hoạch dữ liệu tính toán mã xác thực thông tin ( MAC ) để đảm bảo an toàn và mã này được cho bởi hàm

)) || . ( || (KS H rP KS (adsbygoogle = window.adsbygoogle || []).push({});

H , trong đó r.P là khoá chính của bản ghi r, H  là hàm băm an toàn và || là toán tử nối. Sử dụng MAC đã tính, các bản ghi được đưa vào các phân vùng. Với bản ghi r, phân vùng tương ứng được tính như sau:

partition(r)H(KS ||H(r.P||KS))modm

Sử dụng đặc tính này của hàm băm để phân phối các bản ghi đồng đều vào các phân vùng, kỹ thuật phân hoạch này chia trung bình

m D

Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn

vùng. Hơn nữa, kẻ tấn công không thể đoán được các bản ghi đã được đưa vào phân vùng nào nếu không biết rõ về khoá bí mật KS và số phân vùng dữ liệu đã phân hoạch m được giữ bí mật. Không nhất thiết phải giữ bí mật m. Tuy nhiên, việc giữ bí mật có thể gây khó khăn hơn cho kẻ tấn công muốn tái lập các phần đó.

Thuật toán phân hoạch dữ liệu được mô tả như sau:

Thuật toán: get_partitions

Đầu vào: bộ dữ liệu D, khoá bí mật KS, số phân vùng m

Đầu ra: Các phân vùng dữ liệu S0,...,Sm1

1. S0,...,Sm1 {}

2. for each bản ghi rD

3. partition(r)H(KS ||H(r.P||KS))modm

4. chèn r vào Spartition(r)

5. return S0,...,Sm1

Mặc dù hầu hết các dữ liệu quan hệ đều có khóa chính, kỹ thuật này có thể được mở rộng để xử lý trường hợp khi dữ liệu quan hệ không có khoá chính. Giả sử quan hệ thuộc tính đơn,  bit ý nghĩa nhất ( MSB ) của dữ liệu

có thể được dùng để thay thế cho khoá chính. Việc sử dụng MSB cho việc nhúng thủy vân sẽ không làm thay đổi  bit ý nghĩa nhất này. Tuy nhiên, nếu

Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn

luận được thông tin về sự phân phối trong các phần dữ liệu. Trường hợp quan hệ đa thuộc tính, sử dụng các thuộc tính nhận biết thay vì sử dụng khoá chính; ví dụ dữ liệu y học, ta có thể sử dụng tên đầy đủ của bệnh nhân, địa chỉ bệnh nhân, ngày tháng năm sinh của bệnh nhân.

Ký hiệu Ý nghĩa

m Số phân vùng

 Kích thước nhỏ nhất của một phân vùng W Chuỗi bit thuỷ vân {bl-1,…,b0}

l Chiều dài của chuỗi bit thuỷ vân Xmax Các thống kê nhúng thuỷ vân cực đại Xmin Các thống kê nhúng thuỷ vân cực tiểu Si Phân vùng dữ liệu thứ i

|Si|, n Độ dài của vector Si

Ks Khoá bí mật

T* Ngưỡng giải mã tối ưu Gi Ràng buộc thứ i

i

 Vector thao tác trong Rn

Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn

2.4. Nhúng thuỷ vân (adsbygoogle = window.adsbygoogle || []).push({});

Thuật toán nhúng thuỷ vân bằng cách mã hoá bit có thể coi như một bài toán tối ưu có ràng buộc. Ở đây, thuật toán tìm kiếm theo mẫu được sử dụng để giải bài toán tối ưu. Việc sử dụng thuật toán tối ưu được quyết định tuỳ thuộc thời điểm ứng dụng và các yêu cầu tính toán.

Để đơn giản, giả sử các bản ghi trong phân vùng Si chứa thuộc tính số đơn. Trong trường hợp này, mỗi phần Si có thể được biểu diễn bằng một

véctơ dữ liệu số n in i i s s S [ 1,..., ] . 2.4.1 Mã hoá bít đơn

Cho bít thuỷ vân bi, và véctơ dữ liệu số n in i i s s

S [ 1,..., ] .

Thuật toán mã hoá bít ánh xạ vectơ dữ liệu Si thành vectơ dữ liệu mới

i i W i S S   , trong đó n in i i    

 [ 1,..., ] là vectơ thao tác. Các thao tác bị hạn chế bởi các ràng buộc trong bộ Gi gi1,...,gip. Việc mã hoá này dựa trên hàm mã hoá tối ưu gọi là hàm giấu được định nghĩa như sau:

Hàm giấu  : n , với  là tập hợp các tham số bí mật do người chủ sở hữu dữ liệu đưa ra.

Tập hợp  có thể được xem như là một phần của khoá bí mật. Chú ý rằng khi hàm giấu được áp dụng cho Si i thì chỉ vectơ thao tác i là biến, trong khi Si và  là các hằng số.

Để mã hoá bit bi vào trong tập Si, thuật toán mã hoá bít sẽ làm tối ưu

hóa hàm hàm giấu (Si i). Bài toán tối ưu hóa sẽ là bài toán cực đại hoặc cực tiểu hàm giấu tùy thuộc vào bit bi:

Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn

Nếu bít bi=1 thì thuật toán mã hoá bit thực hiện giải bài toán cực đại hoá: i  max ( ) i i S   thoả mãn ràng buộc Gi

Nếu bít bi=0 thì bài toán đơn giản được chuyển thành bài toán cực tiểu hóa.

Giải pháp cho bài toán tối ưu hoá sinh ra vectơ thao tác *i để

Một phần của tài liệu Thủy vân cơ sở dữ liệu quan hệ dựa trên kỹ thuật tối ưu hoá áp dụng thuật toán tìm kiếm theo mẫu (Trang 27)