Phân hoạch dữ liệu

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 35 - 38)

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

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 (adsbygoogle = window.adsbygoogle || []).push({});

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

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 35 - 38)