Mục đích nghiên cứu Nghiên cứu tổng quan về thủy vân và lược đồ thủy vân sử dụng bit MSB để bảo vệ bản quyền công khai cho cơ sở dữ liệu quan hệ, từ đó xây dựng chương trình thử nghiệm đ
Trang 3giúp đỡ tận tình của các cơ quan, tổ chức, cá nhân Tôi xin bày tỏ lòng cảm ơn sâu sắc nhất tới các tập thể, cá nhân đã tạo điều kiện giúp đỡ tôi ừong suốt thời gian thực hiện và nghiên cứu luận văn.
Trước hết với lòng biết ơn chân thành sâu sắc nhất, tôi xin gửi lời cảm
ơn tới Cô giáo TS Lưu Thị Bích Hương, người đã trực tiếp chỉ bảo, hướng dẫn khoa học, người đã tận tình dạy dỗ và hướng dẫn tôi trong suốt quá trình nghiên cứu, hoàn thành luận văn
Tôi cũng xin được gửi lời cảm ơn tói các thầy giáo, cô giáo công tác tại Viện công nghệ thông tin và Trường Đại học Sư phạm Hà Nội 2, những người đã tận tình giảng dạy, truyền thụ cho tôi những kiến thức khoa học căn bản ừong quá trình học tập tại trường
Cuối cùng, tôi xin gửi lời cảm ơn chân thành tới gia đình, bạn bè, các đồng nghiệp đã động viên, sát cánh cùng tôi ừong suốt quá trình học tập và thực hiện nghiên cứu đề tài
Hà Nội, ngày tháng năm 2015
Học viên
Trương Công Khanh
Trang 4Lớp: Cao học K I7
Khóa học: 2013 -2015
Chuyên ngành: Khoa học máy tính
Mã số chuyên ngành: 60 48 01 01
Tôi xin cam đoan rằng số liệu và kết quả nghiên cứu ừong luận văn này
là trung thực và không trùng lặp với các đề tài khác Tôi cũng xin cam đoan rằng mọi sự giúp đỡ cho việc thực hiện luận văn này đã được cảm ơn và các thông tin trích dẫn ừong luận văn đã được ghi rõ nguồn gốc
Hà Nội, ngày tháng năm 2015
Học viên
Trương Công Khanh
Trang 5CSDL Cơ sở dữ liệu
MSB Most Significant Bit (Bit ý nghĩa nhất)
LSB Least Significant Bit (Bit ít ý nghĩa nhất)
KT-ĐBCLGD Khảo thí - Đảm bảo chất lượng giáo dục
Trang 6DANH M ỤC CÁC HÌNH VẼ
Hình 1.1 Sơ đồ mô tả lược đồ thủy vân cơ sở dữ liệu quan hệ cơ bản 6
Hình 2.1 Quan hệ giữa thủy vân và chứng thực định danh 26
Hình 3.1 Biểu đồ use case 33
Hình 3.2 Biểu đồ trình tự use case nhúng thủy vân 34
Hình 3.3 Biểu đồ trình tự use case phát hiện thủy v ân 34
Hình 3.4 Biểu đồ thiết kế lớp 35
Hình 3.5 Giao diện cấu hình kết nối CSDL 36
Hình 3.6 Giao diện cài đặt cấu hình kết nối CSDL 38
Hình 3.7 Giao diện nhúng thủy vân 39
Hình 3.8 Giao diện trước khi thực hiện nhúng thủy v ân 39
Hình 3.9 Giao diện sau khi thực hiện nhúng thủy vân 40
Hình 3.10 Giao diện phát hiện thủy v ân 41
Hình 3.11 Giao diện thử nghiệm phát hiện thủy vân 41
Hình 3.12 Kết quả phát hiện thủy vân trên CSDL đã thủy vân 42
Hình 3.13 Kết quả phát hiện thủy vân trên CSDL chưa thủy vân 43
Trang 7M ỤC LỤC
MỞ Đ Ầ U 1
Chương 1 TÔNG QUAN VỀ THỦY VÂN c ơ SỞ DỮ LIỆU QUAN H Ệ 3
1.1 Một số khái niệm cơ bản 3
1.1.1 Thủy vân 3
1.1.2 Thủy vân cơ sở dữ liệu 3
1.1.3 Lược đồ thủy v ân 5
1.2 Các yêu cầu cơ bản của thuỷ vân trên cơ sở dữ liệu quan hệ 6
1.2.1 Khả năng có thể phát hiện (Detectability) 7
1.2.2 Tính bền vững (Robustness) 7
1.2.3 Cập nhật phần tăng thêm (Incremental updatability) 7
1.2.4 Không dễ cảm nhận được (Imperceptibility) 7
1.2.5 Hệ thống mù (Blind System) 8
1.3 Những tấn công ừên thuỷ vân cơ sở dữ liệu quan hệ 8
1.3.1 Cập nhật thông thường 8
1.3.2 Tấn công có chủ đích 8
1.4 Các ứng dụng chủ yếu của thuỷ vân cơ sở dữ liệu quan h ệ 10
1.4.1 Bảo vệ bản quyền hoặc chứng minh quyền sở h ữ u 10
1.4.2 Chứng thực thông tin (Authentication) 10
1.5 Các lược đồ thủy vân cơ sở dữ liệu quan h ệ 11
a Lược đồ thủy vân sử dụng các bit ít ý nghĩa nhất 11
b Thủy vân dựa vào các phép hoán vị 12
Trang 8c Thủy vân dựa vào việc chèn thêm ảnh nhị phân 12
1.6 Kết luận chương 1 14
Chương 2 LƯỢC ĐỒ THỦY VÂN s ử DỤNG BIT MSB 15
2.1 Giới thiệu 15
2.2 Lược đồ thủy v ân 18
2.3 Tính bền vững, chi phí về thời gian và bộ nhớ của lược đồ thủy v ân 22 2.3.1 Xác suất nhị thức tồn tại 22
2.3.2 Phát hiện thủy vân ừong dữ liệu không thủy vân 23
2.3.3 Phát hiện thủy vân ừong dữ liệu đã thủy v â n 23
2.3.4 Đánh giá về thời gian và yêu cầu bộ nhớ đối với các thuật toán 24
2.4 Chứng nhận bản quyền công khai 24
2.4.1 Giấy chứng nhận thủy v ân 25
2.4.2 Chứng thực công khai 26
2.4.3 Quản lý chứng thực 27
2.4.4 Cập nhật tăng dần 30
2.5 Kết luận chương 2 31
Chương 3 CÀI ĐẶT LƯỢC ĐỒ THỦY VÂN 32
3.1 Đặt vấn đ ề 32
3.2 Cài đặt lược đồ thủy vân 33
3.3 Kết quả thực nghiệm 38
3.3.1 Giao diện chương trình 38
3.3.2 Chạy thử nghiệm chương trình 42
3.3 Kết luận chương 3 44
Trang 9PHỤ LỤC 49
Trang 10M Ở ĐẦU
1 Lý do chọn đề tài
Trong thực tế việc chứng minh quyền sở hữu đối với các cơ sở dữ liệu quan hệ sau khi đã phân phối hoặc chuyển giao đang là một vấn đề quan ừọng ừong các môi trường ứng dụng dựa trên Internet và ừong nhiều ứng dụng phân phối sản phẩm Trong những năm gần đây, công nghệ thông tin phát ừiển với tốc độ chóng mặt về cả phần cứng và phần mềm, đặc biệt là tốc độ phát triển 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 nhập và phân phối lại các sản phẩm kỹ thuật số Sự phát triển của công nghệ đa phương tiện với khả năng sao chép
mô phỏng đã mở ra nhiều hướng mới cho sự phát ừiển lược đồ thuỷ vân, đặt biệt là lĩnh vực bảo mật cơ sở dữ liệu Thuỷ vân cơ sở dữ liệu cũng không nằm ngoài quy luật phát triển đó Ban đầu, thuỷ vân được sử dụng để nhúng vào các sản phẩm đa phương tiện như âm thanh, hình ảnh, video Nhưng hiện nay, thuỷ vân đã được ứng dụng vào một lĩnh vực hết sức mới mẻ có liên quan đến quyền sở hữu trí tuệ Đó là lĩnh vực thuỷ vân cơ sở dữ liệu quan hệ, đây là một trong những lĩnh vực quan ừọng và có ứng dụng nhiều trong cuộc sống Thuỷ vân đã được sử dụng với mong muốn có thể cho phép chứng minh được tác giả và nguồn gốc của cơ sở dữ liệu để từ đó chứng minh dữ liệu là chuẩn xác
Xây dựng một hệ thống nhằm đáp ứng nhu cầu bảo vệ bản quyền ngân hàng đề thi các học phần tại đơn vị công tác là mục tiêu để tôi thực hiện công trình nghiên cứu của mình Tôi mong muốn những kiến thức của tôi sẽ góp phần vào việc nâng cao công tác Khảo thí, Đảm bảo chất lượng tại đơn vị đang công tác, qua đó giúp nâng cao chất lượng Đào tạo tại trường Đại học Thủ đô Hà Nội
Trang 11Xuất phát từ thực tế đó, em xin chọn đề tài “Bảo yệ bản quyền công
khai cho cơ sở dữ liệu quan hệ” để làm luận văn thạc sĩ dưói sự hướng dẫn
của TS Lưu Thị Bích Hương
2 Mục đích nghiên cứu
Nghiên cứu tổng quan về thủy vân và lược đồ thủy vân sử dụng bit MSB
để bảo vệ bản quyền công khai cho cơ sở dữ liệu quan hệ, từ đó xây dựng chương trình thử nghiệm để bảo vệ bản quyền cho ngân hàng đề thi các học phần của trường Đại học Thủ đô Hà Nội
3 Nhiệm vụ nghiên cứu
- Tìm hiểu tổng quan về thủy vân
- Lược đồ thủy vân sử dụng bit MSB để bảo vệ bản quyền công khai cho cơ
sở dữ liệu quan hệ
- Cài đặt chương trình thử nghiệm
4 Đổi tượng nghiên cứu
- Lược đồ thủy vân cơ sở dữ liệu quan hệ
5 Giả thuyết khoa học
Luận văn nếu hoàn thành sẽ góp phần nâng cao công tác Khảo thí, Đảm bảo chất lượng tại đơn vị đang công tác, qua đó giúp nâng cao chất lượng Đào tạo tại trường Đại học Thủ đô Hà Nội
6 Phương pháp nghiên cứu
- Tìm kiếm và nghiên cứu tài liệu liên quan, tiến hành phân tích, đánh giá và đưa ra những đề xuất
- Tiếp thu các kết quả nghiên cứu về mặt lý thuyết, ừên cơ sở đó cài đặt thử nghiệm, đánh giá và so sánh với những phương pháp, lược đồ thủy vân đã có
Trang 12Chương 1 TÔNG QUAN VỀ TH ỦY V ÂN c ơ SỞ D Ữ LIỆU QUAN HỆ
1.1 Môt sổ khái niêm • • Ctf bản
1.1.1 Thủy vân
Từ “thuỷ vân” có xuất xứ từ kỹ thuật đánh dấu nước thời xưa Đây là kỹ thuật đánh dấu chìm một hình ảnh, một logo, hay một dữ liệu nào đó lên ừên giấy nhằm mục đích trang trí và phân biệt được xuất xứ của sản phẩm giấy Như vậy, thông tin cần giấu được gọi là thuỷ vân (watermark) Thuỷ vân mô
tả thông tin có thể được dùng để chứng minh quyền sở hữu hoặc chống xuyên tạc
Có hai loại thuỷ vân, đó là: thuỷ vân bền vững và thuỷ dễ vỡ Thuỷ vân bền vững (robust watermark): Là thuỷ vân tồn tại bền vững cùng với dữ liệu, không dễ dàng bị phá huỷ trước những biến đổi, tấn công lên dữ liệu Các lược đồ này thường được dùng trong các ứng dụng bảo vệ bản quyền, chứng minh quyền sở hữu Thuỷ vân dễ vỡ (fragile watermark): Là thuỷ vân dễ bị biến đổi trước những biến đổi hay tấn công lên dữ liệu Các lược đồ này thường được dùng trong các ứng dụng chứng thực thông tin, đảm bảo sự toàn vẹn dữ liệu
1.1.2 Thủy vân cơ sở dữ liệu
Ngày nay, việc sử dụng các cơ sở dữ liệu ừong các ứng dụng càng ngày càng tăng lên đang tạo ra một nhu cầu tương tự đối với thủy vân cơ sở dữ liệu Internet ngày càng phát triển đưa đến một sức ép rất nặng nề cho những ngưòi bảo vệ dữ liệu trong việc tạo ra các dịch vụ cho phép người sử dụng tìm kiếm
và truy cập cơ sở dữ liệu từ xa Mặc dù xu hướng này là hữu ích cho người dùng nhưng nó cũng bộc lộ một mối nguy hiểm cho những nhà cung cấp dữ
Trang 13liệu trước những kẻ trộm cắp dữ liệu Do đó, những người cung cấp dữ liệu đòi hỏi phải có công nghệ nhận dạng được những bản sao của các cơ sở dữ liệu của họ bị đánh cắp.
Cho dù có khá nhiều điều có thể kế thừa được từ các kết quả đã đạt được về thủy vân đối với dữ liệu đa phương tiện nhưng cho đến nay vẫn còn rất nhiều thách thức kỹ thuật mới đối với lĩnh vực thủy vân các cơ sở dữ liệu quan hệ bởi vì các dữ liệu quan hệ và các dữ liệu đa phương tiện khác nhau ở khá nhiều khía cạnh quan ừọng Ví dụ như, các phần khác nhau của một đối tượng đa phương tiện không thể cắt bỏ hoặc thay thế một cách tùy ý mà không gây ra những thay đổi về nội dung trong đối tượng Ngược lại, việc thêm, bớt và cập nhật các bộ của một quan hệ lại là những phép toán chuẩn ừong cơ sở dữ liệu Do những khác nhau lớn này mà các lược đồ thủy vân được phát triển cho các dữ liệu đa phương tiện không thể được sử dụng trực tiếp để thủy vân các quan hệ
Định nghĩa 1.1: Thủy vân cơ sở dữ liệu quan hệ [3]
Thủy vân cơ sở dữ liệu quan hệ là một kỹ thuật nhúng một số thông tin nào đó (được gọi là thông tin thủy vân W) vào cơ sở dữ liệu quan hệ nhằm mục đích bảo vệ bản quyền hoặc sự toàn vẹn cho cơ sở dữ liệu này Thủy vân
có thể ở dạng ẩn hoặc hiện và có thể là bền vững hoặc dễ vỡ
Một thuỷ vân có thể được áp dụng cho bất kỳ cơ sở dữ liệu quan hệ nào
có các thuộc tính mang một đặc điểm là những thay đổi nhỏ tại một số giá trị của chứng không làm ảnh hưởng đến các ứng dụng
Đối với hầu hết các cơ sở dữ liệu quan hệ ừong đó có chứa các tham số thì những sai lệch do hệ thống thuỷ vân gây ra có thể được điều chỉnh sao cho chứng nằm trong miền dung sai của độ đo
Để chủ sở hữu của cơ sở dữ liệu có thể giữ bí mật cho thông tin thủy vân
wvà là người duy nhất có thể tìm lại được thông tin này thì cần phải ừộn w
Trang 14với một dữ liệu được gọi là khóa do chính chủ cơ sở dữ liệu lựa chọn Thông tin thứ hai này được gọi là khóa thủy vân và được chứng tôi định nghĩa như sau:
Định nghĩa 1.2: Khóa thủy vân [3]
Khóa thủy vân là một lượng dữ liệu do chủ sở hữu cơ sở dữ liệu lựa chọn
và nhằm mục đích xác định thủy vân trong lược đồ thủy vân Ký hiệu là K Khóa K sẽ được kết hợp vói thủy vân w để nhúng vào cơ sở dữ liệu
Khóa thủy vân chính là mấu chốt của lược đồ thủy vân cơ sở dữ liệu có sử dụng khóa thủy vân
Khóa thủy vân sẽ được nhúng vào ừong cơ sở dữ liệu quan hệ bằng nhiều cách Thông thường khóa thủy vân sẽ được nhúng với dữ liệu trong cơ
sở dữ liệu quan hệ rồi đưa vào ừong thuật toán sử dụng Điều quan trọng ở đây chính là việc ta giấu khóa thủy vân vào trong thuật toán như thế nào để không bị phát hiện đồng thời có thể chứng minh được đây chính là cơ sở dữ liệu quan hệ của mình Hay nói cách khác, việc đưa khóa vào ừong cơ sở dữ liệu quan hệ là một ừong những điểm quan trọng của bài toán bảo vệ bản quyền và đảm bảo sự toàn vẹn dữ liệu ừong cơ sở dữ liệu quan hệ có sử dụng khóa
1.1.3 Lược đồ thủy vân
Lược đồ thủy vân cơ sở dữ liệu quan hệ bao gồm 2 phần: nhúng thủy vân và phát hiện thủy vân Khi nhúng thủy vân, một khóa thủy vân K do chủ
sở hữu cơ sở dữ liệu tự chọn sẽ được sử dụng để nhúng thủy vân w vào cơ sở
dữ liệu gốc Sau khi nhúng thủy vân, các cơ sở dữ liệu sẽ được đưa vào ừong môi trường Internet Để xác minh quyền sở hữu của một cơ sở dữ liệu đáng ngờ, quá trình xác minh cơ sở dữ liệu bị nghi ngờ được thực hiện như là đầu vào và bằng cách sử dụng khóa thủy vân K (được sử dụng ừong giai đoạn nhúng) thủy vân nhúng (nếu có) được lấy ra và so sánh với các thông tin thủy
Trang 15vân ban đầu Hình 1.1 là sơ đồ mô tả lược đồ thủy vân cơ sở dữ liệu quan hệ
Thông tin thủy vân (W)
Hình 1.1 Sơ đồ mô tả lược đồ thủy vân cơ sở dữ liệu quan hệ cơ bản
Chúng ta có thể thấy rằng thủy vân các dữ liệu quan hệ có những yêu cầu
kỹ thuật cao và có các ứng dụng thực tế có ý nghĩa xứng đáng được quan tâm thích đáng từ phía cộng đồng những người nghiên cứu, phát triển cơ sở dữ liệu Cần phải xác định một hệ thống thủy vân và kèm theo đó là nghiên cứu, phát triển các lược đồ thủy vân nhất định Những lược đồ này chắc chắn là sẽ
kế thừa phần lớn từ các nguyên tắc thủy vân đang tồn tại
Giả sử, A là chủ nhân của quan hệ R chứa TỊ bộ, ừong đó anh ta đã đánh
dấu <ybộ Hệ thống thủy vân cần phải thỏa mãn những tính chất sau đây
Trang 161.2.1 Khả năng có thể phát hiện (Detectability)
A cần phải có khả năng phát hiện thủy vân của anh ta bằng cách xem
xét Cữ bộ từ cơ sở dữ liệu nghi ngờ Rõ ràng nếu mẫu bit (thủy vân) của anh ta
có mặt ở tất cả <ybộ thì anh có lý do chính xác để nghi ngờ có sự sao chép trái phép Tuy nhiên, A cũng có thể ngờ vực ngay cả khi mẫu của anh chỉ có mặt
ở ít nhất l à T b ộ ( T < (ú ), ừong đ ó Tphụ t h u ộ c vào Cỡ v à một giá trị a c h o
trước, được gọi là mức ý nghĩa của phép thử Giá ừị của rđược xác định sao
cho xác suất để A sẽ tìm thấy mẫu bit của anh ừong ít nhất T bộ từ Cữ bộ là nhỏ hơn a.
1.2.2 Tính bền vững (Robustness)
Các thủy vân cần phải bền vững trước những tấn công nhằm xóa bỏ
chúng Ví dụ với tư cách là kẻ tấn công, B thay đổi Ẹ bộ ừong quan hệ R của
A Chứng ta nói rằng thủy vân là an toàn đối với tấn công này nếu kẻ tấn công không thể phá hủy các dấu hiệu thủy vân ở ít nhất rbộ, trong đó Tphụ thuộc
vào (ù và a như đã nói ở ừên.
1.2.3 Cập nhật phần tăng thêm (Incremental Updatabỉlỉty)
Sau khi có quan hệ R đã thủy vân, A có thể cập nhật R khi cần thiết mà
không làm hỏng thủy vân Khi A thêm/bớt các bộ hoặc sửa đổi các giá trị của
các thuộc tính của R, thủy vân cần phải có khả năng cập nhật ừên những phần
gia tăng Tức là, các giá trị thủy vân chỉ phải tính toán lại đối với các bộ được thêm vào hoặc bị sửa đổi
1.2.4 Không dễ cảm nhận được (Imperceptỉbỉlỉty)
Thuỷ vân ẩn, không dễ nhận thấy được bằng mắt thường của con người Sự thay đổi do các dấu hiệu thuỷ vân gây ra cho dữ liệu quan hệ không được làm giảm giá ừị sử dụng của cơ sở dữ liệu Hơn nữa, các phép đo thống
Trang 17kê thông thường như trung bình, phương sai của các thuộc tính số cũng không nên bị ảnh hưởng đáng kể.
1.2.5 Hệ thống mù (Blind System)
Việc phát hiện thuỷ vân không nên đòi hỏi các thông tin về cơ sở dữ liệu gốc và cả thuỷ vân gốc Một hệ thống thủy vân như vậy được gọi là hệ thống mù Tính chất này rất quan ừọng vì nó cho phép có thể phát hiện thuỷ vân trong bản sao của quan hệ cơ sở dữ liệu cho dù quan hệ gốc đã được cập nhật
1.3 Những tấn công trên thuỷ vân cơ sở dữ liệu quan hệ
Vì các quan hệ cơ sở dữ liệu luôn được cập nhật nên các thuỷ vân được giấu ừong một quan hệ có thể bị mất do những cập nhật thông thường cũng như các tấn công có chủ đích
Các lược đồ thuỷ vân cần đảm bảo rằng người chủ cơ sở dữ liệu không
bị mất thuỷ vân ngay trong dữ liệu bị kẻ khác ăn trộm, thậm chí đối với những cập nhật của tên trộm đó
1.3.2 Tấn công có chủ đích
В có thể biết dữ liệu anh ta ăn trộm có chứa thủy vân, nhưng anh ta có thể cố xóa thủy vân này hoặc thử dùng các phương tiện khác để đòi quyền sở hữu trái phép Hệ thống đánh dấu cần phải bảo vệ A trước những tấn công gây hại của B Nghĩa là các cơ sở dữ liệu có thể bị những kẻ xấu ăn trộm, tấn
Trang 18công nhằm mục đích đòi quyền sở hữu trái phép hay phá huỷ dữ liệu, phá huỷ thuỷ vân, Do đó, hệ thống thuỷ vân cần phải bảo vệ người chủ cơ sở dữ liệu trước những tấn công gây hại của kẻ trộm.
Một số tấn công gây hại như [3]:
Tẩn công vào các bit: Cách tấn công gây hại đơn giản nhất là cố gắng
phá huỷ thuỷ vân bằng cách cập nhật một số bit Nếu tên ừộm в có thể thay đổi tất cả các bit, thì anh ta có thể dễ dàng phá huỷ thuỷ vân Tuy nhiên, việc này cũng làm cho dữ liệu của anh ta không còn sử dụng được nữa Do đó, tác hại của một cuộc tấn công cần phải được xem xét ừên cơ sở mối quan hệ giữa
số bit mà В và A thay đổi, vì mỗi thay đổi có thể được coi như một sai sót Càng có nhiều sai sót càng làm cho dữ liệu kém hữu dụng
Tẩn công ngẫu nhiên: Tấn công này sẽ gán các giá trị bit ngẫu nhiên
cho một số vị ừí bit nào đó Một tấn công zero hoá đặt giá trị của một số vị ừí
bit bằng zero Một tấn công đổi bit sẽ đổi giá trị của một số vị trí bit từ 0
thành 1 hoặc ngược lại từ 1 thành 0 Các phép cập nhật thông thường có thể được coi là một tấn công ngẫu nhiên
Tẩn công bằng cách làm tròn số : Kẻ tấn công có thể thử làm mất các
dấu hiệu ừong một thuộc tính kiểu số bằng cách làm ừòn tất cả các giá trị của thuộc tính này Anh ta phải đoán một cách chính xác có bao nhiêu vị ừí tham gia trong thuỷ vân Nếu anh ta đoán non thì tấn công có thể không thành công Nếu đoán già, thì anh ta đã làm giảm chất lượng của dữ liệu hơn mức cần thiết Thậm chí, ngay cả khi đoán đứng thì dữ liệu của anh ta cũng không tương thích với dữ liệu của người chủ dữ liệu vì nó ít chính xác hơn
Tẩn công tập hợp con: Kẻ tấn công có thể lấy đi một tập con các bộ
hoặc các thuộc tính của quan hệ đã thuỷ vân với hy vọng làm mất thuỷ vân đó
Trang 19Tẩn công cộng: Kẻ tấn công có thể cộng thêm thủy vân của anh ta vào
quan hệ đã thủy vân của chủ sở hữu và đòi quyền sở hữu
Tẩn công ngược lại: Kẻ tấn công có thể phát động một cuộc tấn công
ngược lại để đòi chủ quyền nếu anh ta có thể khám phá thành công một thủy vân bịa đặt Cái thủy vân mà kẻ tấn công công bố thực ra chỉ là một xuất hiện ngẫu nhiên mà thôi
1.4 Các ứng dụng chủ yếu của thuỷ vân cơ sở dữ liệu quan hệ
1.4.1 Bảo vệ bản quyền hoặc chứng mỉnh quyền sở hữu
Ngày nay, việc bảo vệ bản quyền hoặc chứng minh quyền sở hữu
(Copyright Protection or Proving Ownership) đối với các nguồn cơ sở dữ liệu
quan hệ ở bên ngoài là một vấn đề quan ừọng trong các môi trường ứng dụng dựa vào Internet và trong nhiều ứng dụng phân phối dữ liệu Đây là ứng dụng
cơ bản nhất của lược đồ ửiuỷ vân Một thông tin nào đó (hay còn gọi là thuỷ vân) mang ý nghĩa quyền sở hữu sẽ được nhúng vào ừong dữ liệu quan hệ Thuỷ vân đó chỉ một mình người chủ sở hữu hợp pháp cơ sở dữ liệu đó có và được dùng làm minh chứng cho bản quyền sản phẩm [9]
1.4.2 Chứng thực thông tín (Authentication)
Một tập thông tin sẽ được giấu ừong cơ sở dữ liệu quan hệ Sau đó, các thông tin này sẽ được sử dụng để nhận biết xem dữ liệu gốc có bị thay đổi hay không Bằng lược đồ thuỷ vân, người ta có thể lấy thông tin đã giấu vào ừong
dữ liệu quan hệ đó ra Nếu thông tin lấy ra trùng với thông tin ban đầu đem giấu thì chứng tỏ dữ liệu gốc không bị thay đổi Ngược lại, thông tin lấy ra và thông tin ban đầu có sự khác biệt thì chứng tỏ dữ liệu đã bị thay đổi, xuyên tạc Trong các ứng dụng thực tế, người ta mong muốn tìm được vị trí bị xuyên tạc, cũng như phân biệt được các thay đổi [9]
Trang 201.5 Các lược đồ thủy vân cơ sở dữ liệu quan hệ
Thuỷ vân trên cơ sở dữ liệu quan hệ là một kỹ thuật mới và rất phức tạp Cho đến nay mới chỉ có một vài cách tiếp cận bài toán thuỷ vân cơ sở dữ liệu quan hệ cho ứng dụng bảo vệ bản quyền Việc lựa chọn lược đồ thủy vân nào
là tuỳ thuộc vào yêu cầu của ứng dụng Một số lược đồ thuỷ vân trên cơ sở dữ liệu quan hệ như:
• Lược đồ thủy vân sử dụng các bit ít ý nghĩa nhất (LSB)
• Lược đồ thuỷ vân dựa vào kỹ thuật tối ưu hoá
• Lược đồ thủy vân sử dụng ảnh nhị phân
a Lược đồ thủy vân sử dụng các bit ít ý nghĩa nhất
Các lược đồ thủy vân dựa trên các bit ít ý nghĩa nhất (LSB - Least Significant Bit) áp dụng cho cơ sở dữ liệu quan hệ có dữ liệu kiểu số Tư tưởng chính của lược đồ này là sử dụng các bit ít ý nghĩa nhất (LSB) để thủy vân cho cơ sở dữ liệu quan hệ chứa các thuộc tính kiểu số chấp nhận được những thay đổi nhỏ mà không làm ảnh hưởng tới ý nghĩa của dữ liệu Lược
đồ này sử dụng các bit ít ý nghĩa nhất của các bộ ừong cơ sở dữ liệu quan hệ
để xây dựng ra thủy vân nhúng cho toàn bộ cơ sở dữ liệu Đồng thời, sử dụng mức ý nghĩa để phát hiện thủy vân đã được nhúng vào trong cơ sở dữ liệu
ưu điểm của lược đồ này là:
- Lược đồ tương đối đơn giản và áp dụng được cho các cơ sở dữ liệu chứa các thuộc tính kiểu số chấp nhận thay đổi nhỏ
- Là một trong những lược đồ thủy vân đầu tiên cho việc bảo vệ bản quyền cơ sở dữ liệu quan hệ
- Khả năng phát hiện mù và chi phí thấp khi xác minh quyền sở hữu các
dữ liệu
Nhược điểm của lược đồ này là:
- Nếu giá trị dữ liệu nhận giá ừị null (rỗng) nhưng vẫn thủy vân
Trang 21- Miền ứng dụng hẹp (chỉ áp dụng cho cơ sở dữ liệu có chứa các thuộc tính kiểu số).
- Cơ sở dữ liệu bị sửa đổi không còn là dữ liệu gốc ban đầu
- Việc xác định mức ý nghĩa của phép thử phức tạp
b Thủy vân dựa vào các phép hoán vị
Để giải quyết bài toán thủy vân cơ sở dữ liệu quan hệ khi những thay đổi Bryan Stephenson đã phát triển một lược đồ thủy vân đơn giản nhưng hiệu quả dựa vào việc hoán vị giá trị các thuộc tính Ý tưởng của lược đồ này là hoán đổi vị trí giá trị của một số thuộc tính trong một vài bộ của cơ sở dữ liệu với nhau thỏa mãn một khoảng cách được xây dựng Sử dụng số lượng các giá trị bị hoán đổi để kiểm soát sự sai khác của cơ sở dữ liệu nằm ừong một giới hạn mà cơ sở dữ liệu có thể chấp nhận được
ưu điểm của lược đồ này là:
- Có thể áp dụng cho nhiều loại dữ liệu nhưng sử dụng tốt nhất cho dữ liệu kiểu số
- Không làm thay đổi giá ừị của dữ liệu
Nhược điểm của lược đồ này là:
- Cơ sở dữ liệu vẫn bị sửa đổi tuy chỉ ở một số lượng bộ nhất định và được kiểm soát bởi khoảng cách;
- Chưa xây dựng được hàm khoảng cách;
- Việc cân đối giữa khả năng nhận nhầm và đoán sai phụ thuộc vào mức ý nghĩa và tỉ lệ hoán vị khó xác định
c Thủy vân dựa vào việc chèn thêm ảnh nhị phân
Năm 2008 các tác giả Al-Haj, A and Odeh, A đã đưa ra một lược đồ thủy vân cơ sở dữ liệu quan hệ để bảo vệ bản quyền bằng cách chèn thêm một bức ảnh nhị phân vào thuộc tính văn bản chứa nhiều từ
Trang 22Ý tưởng chính của lược đồ thủy vân này xuất phát từ việc nhúng bức ảnh nhị phân đó vào một thuộc tính kiểu văn bản có chứa nhiều từ Các điểm ảnh
của ảnh nhị phân sẽ được phân đoạn thành M xâu nhị phân ngắn có độ dài N
Các xâu nhị phân này sẽ được đổi sang dạng thập phân để nhúng vào thuộc tính kiểu văn bản có chứa nhiều từ của các bộ đã được chọn của quan hệ Các
từ ừong các thuộc tính kiểu văn bản được viết cách nhau đứng một dấu cách Việc nhúng thủy vân được thực hiện rất đơn giản Giả sử giá trị thập phân của
xâu nhị phân thứ j là dj thì để thủy vân giá ừị này vào thuộc tính văn bản, chỉ việc thêm một dấu cách vào sau từ thứ dj+i của xâu văn bản này, các khoảng
cách còn lại của xâu vẫn giữ nguyên Để làm được điều đó cần phải chọn ảnh nhị phân phù hợp với các quan hệ cần thủy vân Thuật toán sẽ nhúng thủy vân
vào từng nhóm, với cách chia đơn giản mỗi nhóm gồm M bộ và sẽ nhúng M
xâu nhị phân ngắn vào mỗi nhóm
ưu điểm của lược đồ này là\
- Dùng để bảo vệ bản quyền cơ sở dữ liệu có dữ liệu kiểu văn bản
- Quan hệ sau nhúng không ảnh hưởng đến giá trị sử dụng của dữ liệu
Nhược điểm của lược đồ này là:
- Cách chia nhóm tuần tự không phụ thuộc vào bất kỳ một tham số nào nên một kẻ tấn công có thể dễ dàng phát hiện ra các nhóm và phát hiện ra ảnh
đã nhúng
- Kích thước của ảnh nhị phân nhỏ
Tiếp theo chương này là chương 2 trình bày lược đồ thủy vân cơ
sở dữ liệu sử dụng bit ý nghĩa nhất (MSB - Most Significant Bit) dùng để bảo vệ bản quyền công khai cơ sở dữ liệu quan hệ mà không làm thay đổi dữ liệu
Trang 24đồ 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 để chứng minh 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 khi chứng minh quyền sở hữu 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ẻ phá hoại Ngoài ra, hầu hết các lược đồ thủy vân hiện có đều làm sai lệch dữ liệu trong quá 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ị sử dụng của dữ liệu Trong luận văn này, sẽ tìm hiểu một lược đồ thủy vân mà bất cứ ai cũng
có thể chứng minh quyền sở hữu dữ liệu một cách công khai bao nhiêu lần tùy
ý Lược đồ thủy vân này không làm sai lệch dữ liệu và phù hợp với mọi kiểu
dữ liệu để thủy vân Hơn nữa lược đồ này còn bền vững trước các tấn công điển hình như là 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
Thủy vân không nên làm ảnh hưởng đến sự hữu ích của dữ liệu và phải
đủ khó đối với những người muốn phát hiện ra nó và phá hủy nó một cách ừái phép mà không làm suy giảm giá trị sử dụng của dữ liệu Vì vậy, thủy vân có thể giúp ngăn chặn việc sao chép ừái phép bằng cách cung cấp một phương tiện dể chứng minh bản quyền gốc của một bản sao dữ liệu được phân phối
Trang 25Trong những năm gàn đây, các nhà nghiên cứu đã phát triển một số lược đồ 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 lược đồ 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 của mình.
Một điểm chung nữa là quá trình thủy vân có làm dữ liệu bị sai lệch Hầu hết các lược đồ thủy vân đều thay đổi các thuộc tính số trong khi các lược đồ khác lại hoán vị các giá trị cùng loại Những sai lệch chỉ được thực hiện ừong giới hạn sao cho tính hữu 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 ừên có thể ảnh hưởng nghiêm ừọng đến khả năng ứng dụng của các lược đồ thủy vân cơ sở dữ liệu quan hệ
Thứ nhất là, 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 Để chứng minh bản quyền đối vói một dữ liệu đáng 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 Khi biết được 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 ừong 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á ừị 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
Trang 26thủy vân thì cũng rất khó, thậm chí không thể đảm bảo có thể xác định được tất cả các ràng buộc.
Trong luận văn này, tôi giới thiệu một lược đồ thủy vân cơ sở dữ liệu đượ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
Lược đồ này được phát triển 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 Lược đồ của này có bốn đặc điểm nổi bật sau đây:
- Thứ nhất là 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 khi cần thiết
- Thứ hai là lược đồ này 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á ừị 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, lược đồ thủy vân này có thể được áp dụng ừong 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
Trang 272.2 Lược đồ thủy vân
Cho r là một quan hệ thuộc lược đồ R(P, A Ay), ừong đó p là thuộc tính khóa chính; A ] Ay là các thuộc tính đều có thể được chọn để thuỷ vân Gọi Củ là số các bộ ừong quan hệ r Với mỗi thuộc tính của một bộ sẽ được
biểu diễn dưới dạng nhị phân chuẩn, bit MSB của nó có thể được sử dụng để làm thuỷ vân Giả sử là mọi thay đổi thực hiện ừên bit MSB của giá trị thuộc tính sẽ dẫn đến một sai sót không thể chấp nhận được đối với giá trị sử dụng của dữ liệu
Các thuộc tính để thủy vân có thể nhận bất kỳ một kiểu dữ liệu nào Lược
đồ thủy vân sẽ xét đến bốn kiểu dữ liệu thường dùng đó là: kiểu số, kiểu ký
tự, kiểu Boolean và kiểu datetime Các thuộc tính đều được thể hiện dưới dạng các xâu bit ừong hệ thống máy tính
Giả sử chủ nhân của quan hệ r sở hữu một khóa thuỷ vân K Khóa này
phải đủ dài và được sử dụng ừong khi nhúng thủy vân và phát hiện thuỷ vân 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
rw Thủy vân rw là một quan hệ với lược đồ RW(P, W], , w n ), trong đó Wị, , WyỊ 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
quan hệ r, quan hệ thuỷ vân rw có cùng số bộ (ù và có cùng thuộc tính khóa chính p rị là số các thuộc tính nhị phân trong thuỷ vân rw và V là số bit nhị phân của rw Ở đây rị được coi là một tham biến điều khiển để xác định số
lượng các bit nhị phân V trong rw> ừong đó V = (ù tỊ và tỊ < Ỵ Trong trường hợp này, gọi rị là tham biến sinh thuỷ vân.
Trong phần sinh thuỷ vân rm bit MSB của các giá trị đã chọn dựa vào
khóa thủy vân và khóa chính của bộ, được sử dụng để tạo thuỷ vân Toàn bộ quá trình này 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 bit MSB sẽ giúp ngăn chặ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 rw và thuật toán nhúng thủy vân đều công
Trang 28khai nên bất kỳ ai cũng có thể tìm được các bit MSB trong r để sinh rw Tuy
nhiên, một kẻ tấn công không thể thay đổi các bit MSB 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 rw, mỗi bộ ừong quan hệ r đóng góp rị
bit MSB 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ố nhúng thủy vân rị 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
Hầu hết các máy tính hiện đại biểu diễn và xử lý bốn kiểu dữ liệu cơ bản tại các địa chỉ bộ nhớ: số, datetime, ký tự và Boolean Dù có thuộc kiểu gì thì khi được biểu diễn ừong máy tính, dữ liệu đều có dạng một chuỗi các bit Bit MSB của một chuỗi bit chính là bit trái nhất và có ừọng số lớn nhất Đối với
dữ liệu kiểu số (nguyên hoặc thực) có dấu thì có thể quay ừái một bit để tránh bit này và chọn bit MSB là bit ừái nhất Đối với dữ liệu kiểu ký tự, đầu tiên,
chọn ra ký tự thứ 0 mod /), với j là thuộc tính được chọn, / là độ dài xâu ký
tự Sau đó lấy bit ừái nhất của ký tự này làm bit MSB Giả sử có một giá trị
thuộc tính là “Đại học sư phạm Hà Nội 2” Đầu tiên, chọn ký tự thứ (j mod /)
với j = 6, / = 24 Đây là chữ “ọ” Chữ này có mã Unicode là 7885 Dạng nhị phân của mã này là 1111011001101 Bit trái nhất của nó có giá trị là 1 Vậy bit MSB của giá trị thuộc tính cần tìm là 1
Trong phần phát hiện thủy vân, sử dụng dữ liệu đầu vào là r \ K, rị, rw, T
để phát hiện thủy vân đối với quan hệ đáng ngờ r \ trong đó rị là tham số nhúng thủy vân được sử dụng ừong thuật toán nhúng thủy vân, và T 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
Trang 29hiện thủy vân rnằm trong khoảng (0.5, 1) Để tăng độ bền vững của thủy vân,
không cần phải đòi hỏi tất cả các bit MSB đã tìm được trong r ’ đều trùng vói
các bit tương ứng ừong rw, mà chỉ cần tỷ lệ phần trăm trùng khớp lớn hơn T là
được Tức là match_count / total_count > T ừong Thuật toán 2.
Thuật toán 1: Nhúng thủy vân
Input: Quan hệ r, khóa thủy vân K và tham số tạo thủy vân rỊ (rỊ < y)
Output: Quan hệ thủy vân rw
1 For i = ì to (ũ do
2 xây dựng một bộ ti trong rw có cùng khóa chính với Tị, tị.p = Tị.p
3 fo r k = ì to f] do II sinh giá trị cho rị thuộc tính của rw
4 j = H(K II ĩị.p ) mod Ỵ II chọn thuộc tính
5 i f (Ti.Aj có kiểu là số) then
13 i f (Ti.Aj có kiểu là xâu ký tự) then
14 q = charAt(ri.Aj, j mod length(ri.Aj))
II charAt(ri.A/, p): ký tự thứ p trong Ti.Aj
Trang 302 0 x ó a t h u ộ c tín h th ứ j t r o n g Tị
21 end fo r
22.end fo r
Thuật toán 2 Phát hiện thủy vân
Input: Quan hệ nghi ngờ r K, rỊ (rỊ < y), thủy vân rw và T (0.5 < T < 1)
Output: {true, false}
1 match_count = 0
2 total_count = 0
3 f o r i= ì to ũ)do
4 tìm một bộ tị trong rw có cùng khóa chính vói r ’u tị.p = r ’i.p
5 fo r k = 1 to fỊ do II sinh giá trị cho rị thuộc tính của r 'w
6 total_count = total_count + 1
7 j = H(K II r \.p ) mod Ỵ
8 i f (r ’ị.Aj có kiểu là số) then
9 q = r \.Aj quay ừái 1 bit
16 i f (r ’ị.Aj có kiểu là xâu kỷ tự) then
17 q = charAt(r \.Ap j mod length(r ’i-Ajj)
19 End if
20 i f (r \.Aj có kiểu là Boolean) then
Trang 312.3 Tính bền vững, chi phí về thời gian và bộ nhớ của lược đồ thủy vân
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 ừong thực tế Tính bền vững của lược đồ có thể được chứng minh bằng phương pháp xác suất nhị thức đã được nêu ra ừong [9] Mức độ bền vững cần phải được điều chỉnh để cân đối vói 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ố nhúng thủy vân rị và tham số phát hiện thủy vân X [11].
2.3.1 Xác suất nhi thức tồn tai• •
Xét n phép thử Bernoulli của một sự kiện với xác suất thành công p và thất bại là q = 1- p trong mọi phép thử Gọi Pp(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 suất rời rạc của
phân bố nhị thức) Ta có:
Trang 32Gọi Cp{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à Cp(k;n) là xác suất nhị thức tồn tại Theo phân tích chuẩn
của phân bố nhị thức, có:
c p(k;n)= Ỳ j Pp ^ n)
i - k+1
2.3.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 bit MSB trong dữ liệu có thể trùng hoặc không trùng vói bit tương ứng ừong 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à Cỡ như dữ liệu gốc (và cùng các giá trị khóa chính) V = Cữĩj là tổng số bit ừong thủy vân, ừong đó rị là tham số
nhúng thủy vân Xác suất nhận nhầm (false hit) FH có thể được biểu diễn
bằng công thức:
FH = C1/2(|_rv_|;v) = Cìl2ịvỵcỡ\\ricỡ)
2.3.3 Phát hiện thủy vân trong dữ liệu đã thủy vân
Khi phát hiện thủy vân ừong một quan hệ cơ sở dữ liệu đã thủy vân có thể xảy ra trường hợp đoán sai hay còn gọi là bỏ sót (false miss), tức là 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 các phép cập nhật cơ sở dữ liệu bao gồm thêm, xóa và sửa các bộ
Cập nhật cơ sở dữ liệu bao gồm thêm, xóa và thay đổi giá ừị các bộ Đối với phép xóa bộ và xóa thuộc tính, các bit MSB trong các bộ hoặc các thuộc tính bị xóa sẽ không được phát hiện ừong thủy vân; tuy nhiên, các bit MSB ừong các bộ khác sẽ không bị ảnh hưởng Do đó, tất cả các bit MSB đượ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
Xác suất đoán sai M đối với tấn công thêm bộ được biểu diễn bằng biểu thức:
Trang 33M í = Cl/2 07® - L « H
-Khi phát hiện thủy vân, một bit MSB được phát hiện sẽ có thể không
trùng vói bit tương ứng của nó ừong thủy vân công khai với xác suất rị/2y
Xác suất đoán sai đối vói việc trường hợp thay đổi Ç giá trị có thể được tính bằng biểu thức:
M ệ = c m» (*?<*> - \jnơ>\ - £)
2.3.4 Đánh giá về thòi gian và yêu cầu bộ nhớ đổi vói các thuật toán
bộ nhớ mGenrw đối với thuật toán nhứng thủy vân là:
ÍGenrw ~ ÖJtseed "I" "I" tm od "I" tb it "I" tdelA "I" tjf ) — 0 (б У > у )
ÏÏÏG enrw tuple YỊ n i\v k e y "I" ĩllp k e y O ( ^ y )
Đánh giá quá trình phát hiện thủy vân Ký hiệu chi phí thời gian tdetnv
và chi phí bộ nhớ mdetrw dành cho thuật toán phát hiện thủy vân có thể tính
như sau:
t-detrw — 2 t count "I" ÔẮseed "I" + t m{Kj + tbit "b tjjelA "I" 2 t count + t j f ) + tjf — О ( й й у )
lîld etrw ^ ĩĩlc o u n t + Ш tuple YỊ ni\v k ey "I" H lpkey- O (^ y )
Thủy vân rw sau khi được sinh ra sẽ được ghi lên đĩa Yêu cầu về không
gian đĩa m dừk là:
" W = l w l = ũjmpkey + ũ }T j= O (c 0 T j),d o T j< ỵ ^ m dixk = O(coỵ)
2.4 Chứng nhận bản quyền công khai
Tiếp theo sẽ nghiên cứu cách chứng minh một cách công khai chủ quyền đối với một quan hệ cơ sở dữ liệu bất cứ khi nào cần đến Nếu chủ
nhân dữ liệu giữ bí mật khóa thủy vân к thì việc chứng minh bản quyền chỉ
có thể thực hiện một cách bí mật bởi vì khi thực hiện công khai chỉ một lần thôi thì khóa này đã bị lộ
Trang 34Việ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 [11].
2.4.1 Giấy chứng nhận thủy vân
Định nghĩa: 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 ừong PKI, ừong đó 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 = (Torigin, Tstart, Tend) chỉ ra thời gian gốc Torigin khi cơ sở dữ liệu quan hệ lần đầu tiên được chứng thực, thời gian bắt đầu Tstart và thời gian kết thúc Tend của giấy chứng thực này ừong
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ì ừong 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 ừong Hình 2.1
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
Trong chứng thực định danh, khóa công khai của một cá nhân được ghép đôi cùng với một khóa bí mật riêng chỉ cá nhân này biết Trong trường
Trang 35hợp khóa này bị hỏng hoặc mất thì việc chứng thực định danh càn phải hủy
bỏ trước hạn Trong chứng thực thủy vân vì không có khóa bí mật riêng đi kèm với khóa thủy vân công khai cho nên không cần phải hủy bỏ Tuy nhiên, việc hủy bỏ và chứng thực lại có thể vẫn cần thiết ừong trường hợp có sự thay đổi về định danh, về bản quyền, DB-CA và các thay đổi cập nhật cơ sở dữ liệu
Hàm hash CSDL h(R) Chữ ký số
Hình 2.1 Quan hệ giữa thủy vân và chứng thực định danh
Vai ừò của DB-CA tương tự như CA truyền thống trong PKI với tư cách
là cơ quan pháp lý bảo vệ bản quyền cho người đăng ký Sự khác nhau là: (i)
nó gắn định danh của người đăng ký bản quyền với khóa thủy vân, thủy vân,
và dữ liệu được thủy vân; (ii) nó khẳng định thời gian gốc khi dữ liệu được thủy vân lần đầu được chứng thực Thời gian gốc đặc biệt hữu ích trong trường hợp phải chứng thực lại do có liên quan có những tranh chấp về bản quyền
2.4.2 Chứng thực công khai
Quá 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
Trang 36vâ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ý ừong chứng thực thủy vân không;
(iii) Chữ ký có được ký đứng như đã qui định ừong DB-CA không.(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 Nếu tất cả đều được chứng minh là đứng thì chủ quyền của quan hệ đáng ngờ được sẽ được công nhận một cách công khai là thuộc về chủ nhân của giấy chứng thực thủy vân ừong thời hạn đã được qui định ừong giấy chứng thực
Yêu cầu cuối cùng là tùy chọn Tùy thuộc vào dữ liệu có bị tấn công phá hoại hay không, trong các tấn công phá hoại, kẻ tấn công sẽ thay đổi một
số lượng lớn các dữ liệu đã thủy vân nhưng giữ nguyên không động đến các bit thủy vân (tức là các MSB của những giá ừị đã chọn) Trong lược đồ đang tìm hiểu, kẻ tấn công có thể xác định được một cách chính xác các bit 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
2.4.3 Quản lý chứng thực
Một khi quyền sở hữu đã được chứng minh dựa vào một giấy chứng thực thủy vân hợp pháp thì quyền sở hữu của dữ liệu đã thủy vân sẽ được xác lập cho chủ nhân của giấy chứng thực Quyền sở hữu hiện thời sẽ có giá trị
trong khoảng thời gian [Tstart,Tend\ như đã qui định trong giấy chứng thực Thời gian gốc Torigin khi dữ liệu lần đầu tiên được chứng thực cũng được ghi