Bảo vệ bản quyền công khai cho các cơ sở dữ liệu quan hệ

13 454 0
Bảo vệ bản quyền công khai cho các cơ sở dữ liệu quan hệ

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

BẢO VỆ BẢN QUYỀN CÔNG KHAI CHO CÁC CƠ SỞ DỮ LIỆU QUAN HỆ Lưu Thị Bích Hương 1 Bùi Thế Hồng 2 Hiện nay, các kỹ thuật thủy vân đã được mở rộng từ các nội dung đa phương tiện sang các cơ sở dữ liệu quan hệ để bảo vệ bản quyền dữ liệu thậm chí sau khi dữ liệu đã được xuất bản hoặc phân phối. Tuy nhiên, tất cả những lược đồ thủy vân cơ sở dữ liệu quan hệ đều dựa vào khóa bí mật vì thế đòi hỏi phải có một khóa bí mật để minh chứng bản quyền. Điều đó có nghĩa là bản quyền chỉ có thể được minh chứng và được công nhận trước công chúng (ví dụ trước tòa án). Tuy nhiên, sau đó khóa bí mật này đã bị lộ và vì vậy, thủy vân đã nhúng sẽ dễ dàng bị phá hủy bởi những kẻ tò mò. Ngoài ra, hầu hết các kỹ thuật thủy vân hiện có đều làm sai lệch dữ liệu trong qui trình thủy vân, có thể là thay đổi các bit ít ý nghĩa nhất hoặc thay đổi các giá trị thực. Những sai lệch này chắc chắn sẽ làm giảm giá trị của dữ liệu. Vấn đề này đã được đề xuất trong bài báo [1]. Đó là lược đồ thủy vân và với lược đồ này bất cứ ai cũng có thể chứng minh một cách công khai bản quyền cơ sở dữ liệu. Dựa vào ý tưởng và các thuật toán của [1], chúng tôi đã đưa ra một cải tiến nhằm đơn giản hóa cách chọn các bit MSBs, nhưng vẫn chứng minh một cách công khai bản quyền dữ liệu bao nhiêu lần tùy ý. Lược đồ của chúng tôi bền vững trước các tấn công điển hình bao gồm thêm hoặc xóa các bộ hoặc các thuộc tính, thay đổi giá trị một cách ngẫu nhiên hoặc có lựa chọn. 1. Giới thiệu Trong vài năm gần đây, các nhà nghiên cứu đã phát triển một số kỹ thuật thủy vân để bảo vệ bản quyền các cơ sở dữ liệu quan hệ. Có một điểm chung của các kỹ thuật này là chúng đều dựa vào một khóa bí mật trong thuật toán nhúng thủy vân và thuật toán phát hiện thủy vân. Nhờ vào khóa này, người chủ của sản phẩm sẽ có thể chứng minh chủ quyền của mình đối với sản phẩm. Một điểm chung nữa là quá trình thủy vân có làm thay dữ liệu bị sai lệch. Hầu hết các kỹ thuật đều thay đổi các thuộc tính số trong khi các kỹ thuật khác lại hoán vị các giá trị phân loại. Những sai lệch chỉ được thực hiện trong giới hạn sao cho tính khả dụng của dữ liệu đối với các ứng dụng nhất định không bị ảnh hưởng và việc phát hiện thủy vân có thể thực hiện được ngay cả khi có những tấn công thay đổi giá trị hoặc lựa chọn các bộ. Hai đặc điểm nêu trên có thể ảnh hưởng nghiêm trọng đến tiềm năng ứng dụng của các kỹ thuật thủy vân cơ sở dữ liệu quan hệ. Thứ nhất, cách tiếp cận dựa vào khóa bí mật là không phù hợp cho việc chứng minh trước công chúng (ví dụ trước tòa án). Để chứng minh bản quyền của dữ liệu đáng 1 ThS, Trường ĐHSP Hà Nội 2 2 ThS, Viện Công nghệ Thông tin, Viện KHCN Việt Nam ngờ, người chủ sở hữu phải tiết lộ khóa bí mật của mình ra công chúng để phát hiện thủy vân. Sau khi đã sử dụng một lần, khóa này không còn bí mật nữa. Với khóa này, một người sử dụng không bản quyền có thể vô hiệu hóa việc phát hiện thủy vân gốc bằng cách gỡ bỏ thủy vân gốc khỏi dữ liệu được bảo vệ hoặc thêm một thủy vân giả vào dữ liệu không được thủy vân. Thứ hai là, những sai lệch được đưa vào trong quá trình thủy vân có thể ảnh hưởng đến giá trị sử dụng của dữ liệu. Ngay cả khi có thể ấn định một số kiểu ràng buộc nhất định để hạn chế sai sót (ví dụ như các giá trị trung bình và các phương sai của những thuộc tính được thủy vân) trước hoặc trong khi thủy vân thì cũng rất khó, thậm chí không thể đảm bảo có thể lượng hóa được tất cả các ràng buộc. Chúng tôi dự định thiết kế một lược đồ thủy vân cơ sở dữ liệu mới có thể được sử dụng để bảo vệ bản quyền bằng cách kiểm chứng công khai và không đưa vào bất kỳ một sự sai lệch nào đối với dữ liệu. Nghiên cứu của chúng tôi được thúc đẩy một phần nhờ vào những nét chính của các lược đồ thủy vân khóa công khai trong lĩnh vực thủy vân đa phương tiện. Tuy nhiên, giữa thủy vân đa phương tiện và thủy vân cơ sở dữ liệu quan hệ có những khác nhau rất cơ bản. Ngoài ra, chúng tôi còn dựa vào các tư tưởng đã được trình bày trong các bài báo [5, 6]. Lược đồ của chúng tôi có những đặc điểm nổi bật sau đây. - Thứ nhất lược đồ này thuộc kiểu kiểm chứng công khai. Việc phát hiện thủy vân để chứng minh bản quyền có thể được thực hiện bởi bất kỳ ai và bao nhiêu lần tùy ý. - Thứ hai, lược đồ của chúng tôi không gây ra bất kỳ một sai lệch nào đối với dữ liệu và có thể được sử dụng để thủy vân dữ liệu thuộc bất kỳ kiểu dữ liệu nào bao gồm số nguyên, số thực, ký tự và logic. - Thứ ba là lược đồ này rất hiệu quả đối với việc cập nhật tăng thêm dữ liệu. Nó được thiết kế phù hợp với các phép toán thông thường của cơ sở dữ liệu như thêm, xóa và thay đổi giá trị các bộ. - Thứ tư là lược đồ này rất bền vững. Rất khó để có thể vô hiệu hóa được thủy vân và minh chứng bản quyền bằng các tấn công cơ sở dữ liệu thông thường và các tấn công khác. Với những đặc tính này, chúng tôi tin rằng kỹ thuật thủy vân của chúng tôi có thể được áp dụng trong thực tế để bảo vệ bản quyền các cơ sở dữ liệu đã được công bố hoặc phân phối. Trong bài báo này, trước hết chúng tôi trình bày lược đồ thủy vân do chúng tôi phát triển, bao gồm thuật toán sinh thủy vân và phát hiện thủy vân, sau đó sẽ trình bày cách thức chứng minh bản quyền công khai có sử dụng một bản chứng thực thủy vân, cuối cùng là các phân tích về độ bền vững của lược đồ và việc cân đối giữa tính bền vững và các chi phí cho việc thực hiện lược đồ. 2. Lược đồ Lược đồ của chúng tôi thủy vân một quan hệ cơ sở dữ liệu R có lược đồ cơ sở dữ liệu là: R(P, A 0 , A 1 , , A v-1 ), trong đó:  P là thuộc tính khóa chính.  A 0 , A 1 , , A v-1 là các thuộc tính đều có thể được chọn để thuỷ vân. Không có một ràng buộc nào về các kiểu thuộc tính được sử dụng để thuỷ vân. Các thuộc tính có thể là các số nguyên, số thực, ký tự, giá trị logic hay bất kỳ kiểu dữ liệu nào. Các thuộc tính đều được thể hiện dưới dạng các xâu bit trong các hệ thống máy tính. Gọi η là số các bộ trong quan hệ R. Với mỗi thuộc tính của một bộ, bít quan trọng nhất hay bít có ý nghĩa nhất (MSB) dưới dạng biểu diễn nhị phân chuẩn của nó có thể được sử dụng để sinh ra thuỷ vân. Giả thiết là mọi thay đổi thực hiện trên MSB sẽ dẫn đến một sai sót không thể chấp nhận được đối với giá trị dữ liệu hiện hữu. Để tiện theo dõi, chúng ta sẽ sử dụng Bảng 1 để liệt kê các ký hiệu được sử dụng trong lược đồ thủy vân. Bảng 1. Các tham số sử dụng trong lược đồ thủy vân Ký hiệu Ý nghĩa của ký hiệu R Cơ sở dữ liệu quan hệ cần phải thuỷ vân η Số các bộ trong quan hệ R ν Số các thuộc tính trong quan hệ R W Quan hệ thuỷ vân cơ sở dữ liệu được tạo ra trong quá trình thuỷ vân  (Tham số tạo thuỷ vân) số các thuộc tính nhị phân trong thuỷ vân W ω Số các bít trong thuỷ vân W; ω=η  τ (Tham số phát hiện thủy vân) tỷ lệ tối thiểu các bit thủy vân cần thiết cho việc phát hiện thuỷ vân K Khóa thuỷ vân 2.1. Sinh thủy vân Giả sử chủ nhân của quan hệ R sở hữu một khóa thuỷ vân K sẽ được dùng cả trong khi sinh thủy vân và phát hiện thuỷ vân. Khóa thuỷ vân cần phải có khả năng chứng thực công khai quyền sở hữu bất cứ khi nào cần đến. Điều này khác hẳn với thuỷ vân truyền thống vì mỗi khi chứng minh bản quyền, chủ nhân của quan hệ đều để lộ khóa bí mật của mình trước công chúng. Ngoài ra, khóa bí mật cần phải đủ dài để có thể ngăn cản được những kiểu tấn công khác nhau. Thuật toán 1 genW ( R, K,  ) // Sinh thủy vân W cho quan hệ R 1 for mỗi bộ r trong R do 2 xây dựng một bộ t trong W có cùng khóa chính với r , t.P = r.P 3 for i := 0 to  do // sinh giá trị cho  thuộc tính của t 4 j = G i (K, r.P) mod  //  là số các thuộc tính trong r 5 if r.j có kiểu là số then 6 q = r.j quay trái 1 bit 7 t.W i = MSB của q 8 endif 9 if r.j có kiểu là xâu ký tự then 10 q = j mod l // l là độ dài xâu 11 t.W i = MSB của q 12 endif 13 if r.j có kiểu là logic then 14 t.W i = MSB của r.j 15 endif 16 xóa thuộc tính thứ j trong r 17 end for 18 end for 19 return W Trong thuật toán này, khóa thuỷ vân là công khai và có thể nhận bất kỳ giá trị nào (số nguyên hoặc số nhị phân) do chủ nhân dữ liệu lựa chọn. Không có một ràng buộc nào về việc hình thành khóa này. Để giảm bớt những lầm lẫn không cần thiết, khóa thuỷ vân nên là duy nhất đối với chủ nhân của cơ sở dữ liệu quan hệ cần thủy vân. Khóa thuỷ vân có thể được lập dưới dạng như sau: K = h(ID | tên CSDL | version | ) (1) Trong đó, ID là định danh của chủ nhân cơ sở dữ liệu, “|” là phép ghép nối, h() là hàm băm mật mã (ví dụ như SHA-512). Khái niệm khóa thuỷ vân công khai [2, 3] ở đây hơi khác với khóa công khai trong hạ tầng khóa công khai (KPI). Trong lý thuyết mật mã, một khóa công khai luôn đi đôi với một khóa bí mật sao cho một thông điệp được mã hoá bằng một khóa chỉ có thể giải mã bằng khóa sánh đôi với nó; cặp khóa này được lựa chọn theo một cách nào đó sao cho không thể dùng các tính toán để có thể suy luận ra khóa bí mật từ khóa công khai tương ứng. Trong lược đồ thủy vân của chúng tôi, không cần khóa bí mật và khóa thủy vân công khai có thể được lựa chọn một cách tùy ý. Nếu khóa thủy vân được sinh ra từ định danh (ID) của chủ nhân dữ liệu như đề xuất trên đây thì nó tương tự như khóa công khai để định danh dựa vào mật mã nhưng chủ nhân dữ liệu lại không cần phải yêu cầu cấp khóa công khai từ một trung tâm phân phối khóa. Khóa thủy vân được sử dụng để quyết định kết cấu của thủy vân công khai W. Thủy vân W là một quan hệ cơ sở dữ liệu với lược đồ W(P, W 0 , . . . , W γ−1 ), trong đó, W 0 , . . . , W γ là các thuộc tính nhị phân, P là thuộc tính khóa chính. So sánh với cơ sở dữ liệu quan hệ R, quan hệ thuỷ vân W có cùng số bộ η và có cùng thuộc tính khóa chính P. Gọi  là số các thuộc tính nhị phân trong thuỷ vân W và ω là số bít nhị phân của W. Ở đây  được coi là một tham biến điều khiển để xác định số lượng các bít nhị phân ω trong W, trong đó ω = *η và  <= ν. Trong trường hợp này, chúng ta gọi  là tham biến sinh thuỷ vân. Thuật toán 1 sử dụng một thủ tục genW (R, K,  ) để sinh thuỷ vân W. Trong thuật toán này, bộ sinh dãy số ngẫu nhiên mật mã G được tạo giống bằng cách ghép khóa thủy vân K với khóa chính r.P cho từng bộ r của quan hệ R, sinh ra một dãy các số ngẫu nhiên {G i (K, r.P)} [2]. MSB của các giá trị đã chọn được sử dụng để tạo thuỷ vân. Toàn bộ quá trình không làm thay đổi bất kỳ một giá trị nào của dữ liệu gốc. Việc sử dụng các MSBs sẽ giúp ngăn cản những tấn công thay đổi giá trị dữ liệu. Vì khóa thủy vân K, thủy vân W và thuật toán genW đều công khai nên bất kỳ ai cũng có thể tìm được các MSBs trong R để sinh W. Tuy nhiên, một kẻ tấn công không thể thay đổi các MSBs này mà không sinh ra các sai lệch không thể chấp nhận được đối với dữ liệu. Trong quá trình xây dựng thủy vân W, mỗi bộ trong quan hệ R đóng góp  MSBs từ các thuộc tính khác nhau được chọn một cách tựa ngẫu nhiên dựa trên khóa thủy vân và khóa chính của bộ. Rõ ràng là một kẻ tấn công không thể nào gỡ bỏ tất cả các bit thủy vân mà không xóa tất cả các bộ và/hoặc các thuộc tính từ dữ liệu đã thủy vân. Tham số sinh thủy vân  càng lớn thì lược đồ thủy vân càng bền vững trước các tấn công xóa như vậy. 2.2. Phát hiện thủy vân Việc phát hiện thủy vân được thiết kế để có thể thực hiện công khai bởi bất kỳ ai và bất cứ khi nào cần. Có một sự khác nhau đáng kể khi so với các cách tiếp cận dựa vào khóa bí mật trước đây. Khi phát hiện thủy vân, cần phải có khóa thủy vân công khai K và thủy vân W để kiểm chứng một quan hệ cơ sở dữ liệu đáng ngờ R’. Giả sử rằng thuộc tính khóa chính không hề bị thay đổi hoặc nếu có thì cũng có thể khôi phục lại được. Nếu khóa chính không thể tin cậy được thì có thể chuyển sang các thuộc tính khác. Thuật toán 2 detW (R’ , K,  , W,  ) // Phát hiện thủy vân đối với quan hệ R’ 1 match_count = 0 2 total_count = 0 3 for mỗi bộ r trong R’ do 4 tìm một bộ t trong W có cùng khóa chính với r , t.P = r.P 5 for i := 0 to  do 6 total_count = total_count + 1 7 j = G i (K, r.P ) mod  // số các thuộc tính trong r 8 if r.j có kiểu là số then 9 q = r.j quay phải 1 bit 10 w = MSB của q 11 endif 12 if r.j có kiểu là xâu ký tự then 13 q = j mod l 14 t.W i = MSB của q 15 w = MSB của q 16 endif 17 if r.j có kiểu là logic then 18 w = MSB của r.j 19 endif 20 if t.W i = w then 21 match_count = match_count + 1 22 end if 23 xóa thuộc tính thứ j của r 24 end for 25 end for 26 if match_count/total_count >  then 27 return true 28 else 29 return false 30 endif Thuật toán 2 đưa ra thủ tục detW (R’, K,  , W,  ) để phát hiện thủy vân W từ quan hệ R’, trong đó  là tham số sinh thủy vân được sử dụng trong thủ tục sinh thủy vân, và  là tham số phát hiện thủy vân và bằng tỷ lệ thấp nhất các bit thủy vân được phát hiện đúng. Cả hai tham số này được sử dụng để điều khiển độ tin cậy của thuật toán phát hiện thủy vân và độ bền vững của thủy vân đã nhúng. Tham số phát hiện thủy vân  nằm trong khoảng [0.5, 1). Để tăng độ bền vững của thủy vân, chúng ta không đòi hỏi phải tất cả các MSBs đã tìm được trong R’ đều trùng với các bits tương ứng trong W, mà chỉ cần tỷ lệ phần trăm trùng khớp lớn hơn  là được. Tức là match_count / total_count >  trong thuật toán 2. 2.3. Chọn các MSB ngẫu nhiên Hầu hết các máy tính hiện đại đều có thể biểu diễn và xử lý bốn kiểu địa chỉ bộ nhớ lưu trữ dữ liệu: số nguyên, số thực, ký tự và logic. Dữ liệu khi được biểu diễn trong máy tính đều có dạng một xâu các bit. MSB của một xâu chính là bít trái nhất và có trọng số lớn nhất. Đối với dữ liệu kiểu số có dấu thì ta sẽ quay trái một bít để tránh MSB có thể là bit dấu, âm, không âm hoặc ở dạng dấu phảy động, kết quả của phép quay ta sẽ lấy MSB. Đối với dữ liệu kiểu ký tự ta sẽ xét ký tự thứ j mod l với j là thuộc tính được chọn l là độ dài xâu ký tự. Ta phân tích ký tự được chọn thành chuỗi bit; do kiểu ký tự bất kỳ bit nào cũng là MSB nên ta sẽ chọn bit bên phải cùng. Ví dụ: Cần xác định MSB của thuộc tính thứ 5 có dữ liệu là chuỗi “Đại học Khoa học Tự Nhiên”. Đầu tiên ta chọn ký tự thứ j mod l ( j=5, l=25) là ký tự “ọ”. Ký tự này có mã là 7885 trong bảng mã unicode. Ta phân tích số này thành chuỗi nhị phân 7885 10 = 1111011001101 2 MSB được chọn là bit 1. Chúng ta giả thiết là các bit thủy vân được sinh ra từ các MSB đã chọn được phân bố một cách ngẫu nhiên; tức là, một MSB nhận giá trị bằng 1 hay bằng 0 đều có xác suất như nhau và bằng 1/2. Sự ngẫu nhiên này là quan trọng trong khi chúng ta tiến hành phân tích tính bền vững của lược đồ thủy vân. Đối với MSB của thuộc tính thứ j của bộ r, ta có bit mặt nạ tương ứng là bit thứ j của giá trị của hàm băm h(K | r.P) nếu j <= l, trong đó l là độ dài tính theo bit của đầu ra hàm băm h . Các MSBs đã ngẫu nhiên hóa sẽ được sử dụng trong lược đồ sinh thủy vân và phát hiện thủy vân. 2.4. Thảo luận về các Quan hệ không có khóa chính Hầu hết các lược đồ thủy vân (ví dụ như, [4, 5, 6]) đối với các cơ sở dữ liệu quan hệ bao gồm cả lược đồ của chúng tôi đều phụ thuộc chủ yếu vào thuộc tính khóa chính trong qui trình thủy vân. Trong trường hợp không có khóa chính hoặc thuộc tính khóa chính bị phá hủy trong những tấn công phá hoại, người ta có thể quay sang các thuộc tính khác và xây dựng một khóa chính ảo để sử dụng thay cho khóa chính trong quá trình thủy vân. Khóa chính ảo được xây dựng bằng cách kết hợp các bit ý nghĩa nhất của một số thuộc tính được lựa chọn. Vì khóa chính ảo được xây dựng từ các MSBs của các thuộc tính đã chọn nên sẽ rất khó để phá hủy khóa này mà không làm thay đổi hoặc phải xóa bỏ giá trị thuộc tính. Tuy nhiên, không như một khóa chính thật, khóa chính ảo có thể không phải là duy nhất đối với mỗi bộ; sẽ có thể có nhiều bộ trong R và W có chung một giá trị khóa chính giả. Trong khi phát hiện thủy vân cần phải tìm ra ánh xạ chính xác giữa các cặp bộ này (dòng 4 trong thuật toán 2). Việc này có thể thực hiện như sau:  Đối với mỗi bộ r  R với khóa chính r.P, tính một bộ t theo như cách đã làm khi sinh thủy vân.  Sau đó chọn một bộ t  W gần với t nhất (theo một độ đo nào đó, ví dụ độ đo Hamming) trong số các bộ của W có cùng giá trị khóa chính r.P.  Số các bộ có chung giá trị khóa chính có thể được tối thiếu hóa như trong tài liệu [7]. 3. Chứng minh bản quyền công khai Việc chứng minh bản quyền trong lược đồ này được thực hiện bằng cách kết hợp phát hiện thủy vân với một giấy chứng nhận. 3.1. Giấy chứng nhận thủy vân Định nghĩa [1]: Giấy chứng thực thủy vân C của quan hệ R là một bộ gồm 7 thành phần [ID, K, h(W), h(R), T, DB-CA, Sig], trong đó ID là định danh của chủ nhân cơ sở dữ liệu quan hệ R, K là khóa thủy vân của chủ nhân, W là thủy vân công khai, T là thông tin pháp lý, DB-CA là tổ chức có uy tín ký giấy chứng thực bằng chữ ký điện tử Sig. Tương tự như chứng thực định danh trong PKI, trong đó một khóa công khai sẽ gắn chặt với chủ nhân của nó trong một thời hạn qui định, chứng thực thủy vân cũng gắn chặt một khóa thủy vân, một thủy vân và một quan hệ cơ sở dữ liệu với định danh của chủ nhân của nó bằng các thông tin pháp lý. Thông tin pháp lý ở đây là một bộ T = T origin , T start , T end  chỉ ra thời gian gốc T origin khi cơ sở dữ liệu quan hệ lần đầu tiên được chứng thực, thời gian bắt đầu T start , và thời gian kết thúc T end của giấy chứng thực này trong khuôn khổ hiện hành. Khi quan hệ được chứng thực lần đầu tiên, thời gian gốc và thời gian bắt đầu là trùng nhau. So với chứng thực định danh thì trong chứng thực thủy vân, ngoài thời gian bắt đầu và thời gian kết thúc còn có thêm thời gian gốc. Thời gian gốc sẽ rất hữu ích trong khi chứng minh bản quyền trước những tấn công làm lẫn lộn trắng đen. Chứng thực thủy vân so với chứng thực định danh truyền thống được minh họa trong Hình 1. Chứng thực định danh Chứng thực thủy vân Version Version Số seri Số seri Thuật toán chữ ký số Thuật toán chữ ký số Tổ chức ban hành DB-CA Thời hạn hiệu lực Thông tin hiệu lực T Chủ thể ID chủ nhân CSDL Khóa công khai của chủ thể Khóa thủy vân Hàm hash thủy vân h(W) Hàm hash CSDL h(R) Chữ ký điện tử Chữ ký điện tử Hình 1. Quan hệ giữa thủy vân và chứng thực định danh Hai kiểu chứng thực này có cấu trúc tương tự nhau trừ ra thông tin khóa công khai trong chứng thực định danh được thay thế bằng khóa thủy vân, hàm hash thủy vân và hàm hash cơ sở dữ liệu trong chứng thực thủy vân. 3.2. Chứng thực công khai Trong khi qui trình phát hiện thủy vân có thể được tự ý thực hiện bởi bất kỳ cá nhân hoặc tổ chức có quyền sử dụng đối với khóa thủy vân công khai và thủy vân thì quyền sở hữu lại phải được chứng minh bằng việc kiểm tra lại chứng thực thủy vân tương ứng. Việc này bao gồm những kiểm chứng sau đây (i) chứng thực thủy vân còn hiệu lực không; (ii) khóa thủy vân và thủy vân được sử dụng trong khi tách thủy vân có đúng như đã đăng ký trong chứng thực thủy vân không; (iii) chữ ký có được ký đúng như đã qui định trong DB-CA không; và (iv) sự tương tự của quan hệ đáng ngờ so với quan hệ gốc R đã được công bố của chủ nhân giấy chứng thực thủy vân. Trong lược đồ của chúng tôi, kẻ tấn công có thể xác định được một cách chính xác các bits thủy vân vì khóa thủy vân, thủy vân và thuật toán thủy vân là công khai ai cũng biết. Vì quyền sở hữu được xác minh công khai nên dữ liệu bị phá hoại như vậy có thể sẽ dẫn đến những nhầm lẫn và sai lệch khi xác định chủ quyền hợp pháp. 3.3. Cập nhật tăng dần Mục đích của lược đồ chúng tôi đề xuất còn được thiết kế để có thể dễ dàng phát hiện lại thủy vân khi mà cơ sở dữ liệu cập nhật tăng dần. Trong lược đồ của chúng tôi, các thuật toán sinh và phát hiện thủy vân đều được thiết kế định hướng bộ; mỗi bộ được xử lý độc lập với các bộ khác dựa vào khóa chính của nó. Thủy vân được cập nhật như sau. Nếu một tập các bộ mới được thêm vào dữ liệu đã thủy vân thì thuật toán sinh thủy vân 1 có thể chỉ phải thực hiện trên các bộ mới này. Kết quả là, một tập các bộ thủy vân mới tương ứng được sinh ra và được chèn vào thủy vân. Nếu một tập các bộ trong dữ liệu đã thủy vân bị xóa đi thì các bộ thủy vân tương ứng có cùng các khóa chính cũng bị xóa khỏi thủy vân. Trong trường hợp một tập các giá trị bị sửa đổi thì chỉ những bộ có liên quan mới cần phải cập nhật trong thủy vân. Việc này có thể được thực hiện tương tự như trong trường hợp thêm các bộ mới. Chú ý là nếu một giá trị bị sửa đổi mà không có bất cứ một đóng góp nào vào MSB cho thủy vân thì không cần phải cập nhật thủy vân. Việc cập nhật giấy chứng thực thủy vân sẽ được tiến hành sau khi cập nhật xong thủy vân. Lược đồ của chúng tôi rất bền vững đối với việc cập nhật cơ sở dữ liệu, do đó có thể cập nhật thủy vân và chứng thực thủy vân sau khi cập nhật dữ liệu đã thủy vân. Việc cập nhật thủy vân và giấy chứng thực có thể được thực hiện định kỳ sau một đợt cập nhật dữ liệu. Thủy vân và giấy chứng thực vẫn có thể được sử dụng để kiểm chứng chủ quyền của dữ liệu đã cập nhật chừng nào những cập nhật này không làm suy giảm nghiêm trọng tính bền vững của lược đồ. 4. Tính bền vững và chi phí về thời gian và bộ nhớ Một lược đồ thủy vân có thể dùng được phải là một lược đồ bền vững trước các tấn công điển hình và hữu dụng trong thực tế. Chúng tôi phân tích tính bền vững của lược đồ bằng phương pháp (xác suất nhị thức) đã được thực hiện trong [4]. Chúng tôi còn đưa ra những cân nhắc giữa tính bền vững và các chi phí về thời gian và bộ nhớ của các thuật toán dưới các điều kiện của các tham số sinh thủy vân  và tham số phát hiện thủy vân . 4.1. Xác suất nhị thức tồn tại Xét n phép thử Bernoulli của một sự kiện với xác suất thanh công p vfa thất bại là q = 1- p trong mọi phép thử. Gọi P p (k;n) là xác suất thu được đúng k lần thành công trong số n phép thử Bernoulli (tức là xác xuất rời rạc của phân bố nhị thức) . Ta có ( ; ) k n k p n P k n p q k      (2); ! !( )! n n k k n k      (3) Gọi C p (k;n) là xác suất có nhiều hơn k lần thành công trong n phép thử Bernoulli; nghĩa là C p (k;n) là xác xuất nhị thức tồn tại. Theo phân tích chuẩn của phân bố nhị thức, chúng ta có 1 ( ; ) ( ; ) n p ik Cp k n P i n    (4) 4.2. Phát hiện thủy vân trong dữ liệu không thủy vân Khi thuật toán phát hiện thủy vân được áp dụng cho dữ liệu không được thủy vân thì mỗi MSB trong dữ liệu có thể trùng hoặc không trùng với bit tương ứng trong thủy vân. Cả hai xác suất này đều bằng 0.5. Giả sử dữ liệu không được thủy vân có cùng số bộ là  như dữ liệu gốc (và cùng các giá trị khóa chính).  =  là tổng số bit trong thủy vân, trong đó  là tham số sinh thủy vân. Xác xuất nhận nhầm H có thể được biểu diễn bằng công thức: 1/2 1/2 ( , ) ( , )H C C              (5) 4.3. Phát hiện thủy vân trong dữ liệu đã thủy vân Bây giờ chúng ta sẽ xét đến tính bền vững của lược đồ trong trường hợp đoán sai (false miss), tức là xác suất không phát hiện được thủy vân hợp lệ từ dữ liệu đã thủy vân bị thay đổi bằng các tấn công thông thường, bao gồm các phép cập nhật cơ sở dữ liệu, sửa đổi các giá trị có tuyển chọn và nén. Cập nhật cơ sở dữ liệu Cập nhật cơ sở dữ liệu bao gồm thêm, xóa và thay đổi giá trị các bộ. Đối với phép xóa bộ và xóa thuộc tính, các MSBs trong các bộ hoặc các thuộc tính bị xóa sẽ không được phát hiện trong thủy vân; tuy nhiên, các MSBs trong các bộ khác sẽ không bị ảnh hưởng. Do đó, tất cả các MSBs được phát hiện sẽ trùng khớp với bản đối chiếu của chúng trong thủy vân công khai, và xác suất đoán sai là bằng 0. Việc xóa các bộ ảnh hưởng đến nhận nhầm tương tự như việc giảm số bộ  trong Hình 3, trong khi việc xóa các thuộc tính lại tương tự như việc giảm  một cách hợp lý trong Hình 2. Xác suất đoán sai M đối với tấn công thêm bộ trong trường hợp trộn và so sánh có thể được biểu diễn bằng biểu thức: 1/2 ( 1, )MC          (6) Khi phát hiện thủy vân, một MSB được phát hiện sẽ có thể không trùng với bit tương ứng của nó trong thủy vân công khai với xác suất γ/(2ν). Xác suất đoán sai M ζ đối với việc trường hợp thay đổi ζ giá trị có thể được tính bằng biểu thức: /2 ( 1, )MC            (7) Sự khác nhau trong tính toán là sử dụng xác suất γ/2ν trong biểu thức (7) thay cho xác suất 1/2 trong biểu thức (6). Biểu thức (7) chỉ ra rằng ngay cả khi 80% giá trị bị thay đổi một cách ngẫu nhiên, nghĩa là có thể làm cho dữ liệu trở nên kém hữu dụng, thì tỷ lệ đoán sai trong khi phát hiện thủy vân vẫn bé hơn 10 -10 trong tính toán của chúng tôi. Thay đổi và nén giá trị dữ liệu có chủ đích Vì cả khóa thủy vân và thủy vân trong lược đồ của chúng tôi đều công khai nên kẻ tấn công có thể xác định chính xác các MSBs của các giá trị đã thủy vân. Một phép tấn công đơn giản có thể là lật một vài bit trong các MSBs để thuật toán phát hiện thủy vân không tìm được bít trùng khớp. Giả sử là các MSBs đã thủy vân bị lật trong khi thay đổi giá trị có chủ đích thì xác suất đoán sai M ς có thể được tính như sau 1 if 0 M otherwise             (8) Nếu không ít hơn γη −τ γη bit MSBs đã thủy vân bị lật thì dữ liệu đã thủy vân sẽ không cần phải phát hiện nữa. Độ bền vững của lược đồ có thể được đo bằng số các lỗi do tấn công này gây ra. Để đánh hỏng quá trình phát hiện thủy vân thì phải lật không ít hơn γη −τ γη bit ý nghĩa nhất; việc này sẽ gây ra không ít hơn từng ấy lỗi không thể bỏ qua được trong các giá trị dữ liệu. Chúng tôi đo độ bền vững của lược đồ bằng một tỷ số F. Tỷ số này chính là tỷ số giữa số bit MSBs tối thiểu phải lật để làm hỏng qui trình phát hiện thủy vân trên tổng số bit của thủy vân: (1 )F             (9) Công thức của nhận nhầm sẽ đổi từ C 1/2 ( τ γη , γη) thành C 1/2 ( τ (γη − ς) , γη − ς) trong trường hợp nén có chủ đích. [...]... March 2006, pp 78 – 89 2 Bùi Thế Hồng và cộng sự, “Nghiên cứu và Phát triển Kỹ thuật Thuỷ vân Cơ sở Dữ liệu Quan hệ , Báo cáo kết quả nghiên cứu của đề tài cơ sở 2008, 12/2008, Phòng CSDL & LT 3 Bùi Thế Hồng và cộng sự, “Về một số lược đồ thủy vân cơ sở dữ liệu quan hệ Báo cáo kết quả nghiên cứu của đề tài cơ sở chọn lọc năm 2009, 12/2009, Phòng CSDL & LT 4 R Agrawal and J Kiernan, “Watermarking relational... dụng để điều chỉnh giữa độ bền vững và các chi phí về thời gian cũng như bộ nhớ cho các thuật toán So với thuật toán sinh thủy vân và phát hiện thủy vân của Y Li and R H Deng thì thuật toán của chúng tôi bền vững và giảm chi phí về thời gian cũng như bộ nhớ cho các thuật toán, do trong thuật toán đã phân biệt rõ ràng các kiểu dữ liệu trong cơ sở dữ liệu quan hệ TÀI LIỆU THAM KHẢO 1 Y Li and R H Deng,... chính 4.5 Các điều chỉnh Trong lược đồ của chúng tôi có hai tham số: tham số sinh thủy vân  và tham số phát hiện thủy vân  Hai tham số này có thể được sử dụng để điều chỉnh giữa độ bền vững và các chi phí về thời gian cũng như bộ nhớ cho các thuật toán Bảng 3 tổng hợp các điều chỉnh có thể thực hiện khi lựa chọn hai tham số Tỷ số sinh thủy vân  được sử dụng để cân đối giữa độ bền vững và các chi phí... Chi phí gieo giống cho bộ sinh số giả ngẫu nhiên G tgenG Chi phí sinh một số ngẫu nhiên của G tmod Chi phí của phép mod tdelA Chi phí cho phép xóa một thuộc tính tbit Chi phí cho việc gán/so sánh một bit với thủy vân công khai tcount Chi phí gán/cập nhật một con đếm trong phát hiện thủy vân mcount Số bit cần thiết để ghi một con đếm trong phát hiện thủy vân mtuple Số bit để ghi một bản sao của một bộ... càng cao và các chi phí về thời gian và bộ nhớ cũng càng lớn Mặc dù tham số phát hiện thủy vân  không ảnh hưởng gì đến các chi phí nhưng nó có thể được sử dụng để cân đối giữa nhận nhầm, đoán sai và tỷ số lỗi phát hiện hỏng F Tăng  sẽ làm cho độ bền vững tốt hơn trong trường hợp nhận nhầm nhưng sẽ kém hơn trong trường hợp đoán sai và tỷ lệ lỗi phát hiện hỏng Bảng 3 Điều chỉnh các tham số Các tham số... gian tdetW và chi phí bộ nhớ mdetW dành cho thuật toán phát hiện thủy vân có thể tính như sau: t detW  2t count t seed  (t genS  t mod  t bit  t delA  2t count )  O( ) (12) mdetW  2mcount  mtuple    m wkey  O( ) (13) Thủy vân W được sinh ra sẽ được ghi lên đĩa Yêu cầu về không gian đĩa mdisk là mdisk  | W | mpkey   O( ) (14) Bảng 2 Các ký hiệu được sử dụng để phân tích chi...4.4 Đánh giá về thời gian và yêu cầu bộ nhớ đối với các thuật toán Đánh giá qui trình sinh thủy vân Chi phí thời gian tgenW và chi phí bộ nhớ mgenW đối với thuật toán sinh thủy vân là: t genW t seed  (t genS  t mod  t bit  t delA )  O( ) (10) . sang các cơ sở dữ liệu quan hệ để bảo vệ bản quyền dữ liệu thậm chí sau khi dữ liệu đã được xuất bản hoặc phân phối. Tuy nhiên, tất cả những lược đồ thủy vân cơ sở dữ liệu quan hệ đều dựa vào. BẢO VỆ BẢN QUYỀN CÔNG KHAI CHO CÁC CƠ SỞ DỮ LIỆU QUAN HỆ Lưu Thị Bích Hương 1 Bùi Thế Hồng 2 Hiện nay, các kỹ thuật thủy vân đã được mở rộng từ các nội dung đa phương tiện sang các cơ. hiệu Ý nghĩa của ký hiệu R Cơ sở dữ liệu quan hệ cần phải thuỷ vân η Số các bộ trong quan hệ R ν Số các thuộc tính trong quan hệ R W Quan hệ thuỷ vân cơ sở dữ liệu được tạo ra trong quá

Ngày đăng: 05/09/2015, 08:52

Từ khóa liên quan

Tài liệu cùng người dùng

Tài liệu liên quan