Phần mở đầu, ba chương nội dung, kết luận chung và tài liệu tham khảo. Tổng quát về cơ sở dữ liệu quan hệ và bài toán thủy vân cơ sở dữ liệu quan hệ, phân tích tình hình nghiên cứu về thủy vân cơ sở dữ liệu quan hệ trên thế giới. Trình bày các kỹ thuật thủy vân cơ sở dữ liệu quan hệ trong ứng dụng bảo vệ bản quyền cho cơ sở dữ liệu quan hệ. Cải tiến và đánh giá thử nghiệm hai lược đồ thủy vân dùng trong bảo vệ bản quyền là thủy vân dựa vào việc chèn ảnh nhị phân và dựa vào bit ý nghĩa nhất.
Chứng minh tính đúng đắn của các thuật toán trong lược đồ thủy vân dựa vào việc chèn thêm ảnh nhị phân. Cải tiến lược đồ thủy vân với thuộc tính phân loại, chứng minh tính đúng đắn của các thuật toán trong lược đồ thủy vân. Xây dựng hai lược đồ thủy vân với dữ liệu kiểu văn bản, đồng thời cũng chứng minh tính đúng đắn của các lược đồ thủy vân. Lược đồ đề xuất được dùng để phát hiện và khoanh vùng giả mạo nếu có.
Các kết quả chính của Luận án được công bố trong các công trình khoa học (1)-(9). Các kết quả này cũng đã được trình bày tại các seminar Viện Công nghệ thông tin – Viện Hàn Lâm KH&CN Việt Nam, trường ĐHSP Hà Nội 2, Hội thảo quốc gia “Một số vấn đề chọn lọc của Công nghệ thông tin và truyền thông” và Hội nghị quốc gia “Nghiên cứu cơ bản và ứng dụng Công nghệ thông tin – FAIR”. THỦY VÂN CƠ SỞ DỮ LIỆU QUAN HỆ 1. Các khái niệm về cơ sở dữ liệu Mục này trình bày các khái niệm cơ bản nhất về mô hình dữ liệu quan hệ do E.
Cơ sở dữ liệu Định nghĩa 1.1: Cơ sở dữ liệu Cơ sở dữ liệu (database) là một hệ thống các thông tin có cấu trúc được lưu trữ trên các thiết bị lưu trữ thứ cấp (băng từ, đĩa từ…) nhằm thoả mãn yêu cầu khai thác thông tin đồng thời của nhiều người sử dụng hay nhiều chương trình ứng dụng với nhiều mục đích khác nhau. Mô hình dữ liệu quan hệ Trong quá trình thiết kế và xây dựng các hệ quản trị cơ sở dữ liệu, người ta tiến hành xây dựng các mô hình dữ liệu. Mô hình dữ liệu phải được thể hiện được các mối quan hệ bản chất của các dữ liệu mà dữ liệu này phản ánh các mối quan hệ và các thực thể trong thế giới thực. Mô hình dữ liệu phản ánh khía cạnh cấu trúc logic mà không đi sâu vào khía cạnh vật lý của cơ sở dữ liệu.
Mô hình dữ liệu là một sự hình thức hóa toán học với một tập ký hiệu để mô tả dữ liệu và một tập các phép toán được sử dụng để thao tác các dữ liệu này. Khi xây dựng các mô hình dữ liệu cần phân biệt các thành phần cơ bản sau: - Thực thể: Là đối tượng có trong thực tế mà chúng ta cần mô tả các đặc trưng của nó. - Thuộc tính: Là các dữ liệu thể hiện các đặc trưng của thực thể. - Ràng buộc: Là các mối quan hệ logic của các thực thể.
Ba thành phần trên được thể hiện ở hai mức: - Mức loại dữ liệu: là sự khái quát hóa các ràng buộc, các thuộc tính, các thực thể cụ thể. - Mức thể hiện: Là một ràng buộc cụ thể, hoặc là các giá trị thuộc tính, hoặc là một thực thể cụ thể. Trên thực tế có một số mô hình dữ liệu đã được nghiên cứu: 9 - Mô hình dữ liệu mạng: Thể hiện trực tiếp các ràng buộc tùy ý giữa các loại bản ghi. Là mô hình dữ liệu được biểu diễn bởi một đồ thị có hướng.
- Mô hình dữ liệu quan hệ: Các ràng buộc được thể hiện qua các quan hệ tức là bảng giá trị. Mô hình dựa trên lý thuyết tập hợp và đại số quan hệ. Vì tính chất chặt chẽ của toán học về lí thuyết tập hợp nên mô hình này đã mô tả dữ liệu một cách rõ ràng, uyển chuyển và trở thành rất thông dụng. - Mô hình dữ liệu hướng đối tượng: Cho phép biểu diễn dữ liệu tự nhiên và sát với thực tế hơn cả.
Tuy nhiên cho đến nay, chưa có một cơ sở toán học tốt hình thức hóa ở mức cao, chặt chẽ đối với mô hình này. Mô hình dữ liệu quan hệ do E. Codd đề xuất năm 1970 là cơ sở cho hầu hết các hệ thống cơ sở dữ liệu hiện tại. Mô hình dữ liệu quan hệ được quan tâm là vì nó được xây dựng trên cơ sở toán học chặt chẽ.
Mô hình dữ liệu quan hệ cung cấp các khái niệm chặt chẽ được hình thức hóa cao, cho phép áp dụng các cộng cụ toán học, các thuật toán tối ưu trên mô hình dữ liệu quan hệ. Mô hình dữ liệu quan hệ được trừu tượng hóa cao và chỉ dừng ở mức logic. Thuộc tính, miền thuộc tính và kiểu thuộc tính Định nghĩa 1.2: Thuộc tính, miền giá trị của thuộc tính - Thuộc tính là đặc trưng của quan hệ. - Tập tất cả các giá trị có thể có của thuộc tính Ai gọi là miền giá trị của thuộc tính đó, ký hiệu: Dom(Ai) hay viết tắt là: D A i Ví dụ 1.1: Nhânviên(MaNV, Ten, NgSinh, Đchi) Dom(MaNV) = {char(5)}; Dom(Ten) = {char(10)}; Dom(NgSinh) = {date}; Dom(Đchi) = {‘HN’, ‘HP’, ‘VP’, …}.
Mỗi một thuộc tính đều phải thuộc một kiểu dữ liệu. Kiểu dữ liệu có thể là vô hướng - là các kiểu dữ liệu cơ bản như chuỗi, số, logic, ngày tháng,… hoặc các kiểu có cấu trúc được định nghĩa dựa trên các kiểu dữ liệu đã có sẵn. Quan hệ, lược đồ quan hệ Định nghĩa 1.3: Quan hệ Cho U = {A1, A2, …, A} là một tập hữu hạn không rỗng các thuộc tính. Mỗi thuộc tính Ai (i =1, 2, …, ) có miền giá trị là Dom(Ai).
Khi đó r là một tập các bộ 10 {r1, r2, …, rm} được gọi là quan hệ trên U với rj (j = 1, 2, …, m) là một hàm rj: U → DA sao cho rj. i Ai U Có thể xem một quan hệ như một bảng, trong đó mỗi hàng (phần tử) là một bộ và mỗi cột tương ứng với một thành phần gọi là thuộc tính. Biểu diễn quan hệ r thành bảng như sau: Bảng 1. Biểu diễn quan hệ r A1 A2 … A r1 r1.1 Hà 2/04/76 HN SP2.2 Anh 4/05/70 VP SP2.3 Bình 2/04/76 HP Trong đó các thuộc tính là MNV: mã nhân viên; TEN: tên; NgSinh: ngày sinh; Đchi: địa chỉ.
Bộ giá trị: (SP2.1, Hà, 2/04/76, HN) là một bộ.4: Lược đồ quan hệ Tập tất cả các thuộc tính trong một quan hệ cùng với mối liên hệ giữa chúng được gọi là lược đồ quan hệ. Lược đồ quan hệ R với tập thuộc tính U={A1, A2, ., A} được viết là R(U) hoặc R(A1, A2,. Khoá của quan hệ Định nghĩa 1.5: Khóa của quan hệ Khoá của quan hệ r xác định trên tập thuộc tính U = {A1, A2, ., A}là tập con K U sao cho bất kỳ hai bộ khác nhau t1, t2 r luôn thoả t1.K và bất kỳ tập con thực sự K1 K nào đó đều không có tính chất đó.2 thì thuộc tính MNV là khóa của quan hệ Nhanvien. Khoá là một khái niệm rất quan trọng trong việc thiết kế một cơ sở dữ liệu quan hệ.
Khoá thường được áp dụng trong việc tìm kiếm hay cập nhật dữ liệu trong các cơ sở dữ liệu quan hệ. Một số khái niệm về thủy vân cơ sở dữ liệu quan hệ 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 trê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 kỹ thuật 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 kỹ thuật này thường được dùng trong các ứng dụng nhận thực thông tin, đảm bảo sự toàn vẹn dữ liệu. Thủy vân cơ sở dữ liệu quan hệ Ngày nay, việc sử dụng các cơ sở dữ liệu trong 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 hiện đang đưa đến một sức ép rất nặng nề cho những người muốn bảo vệ dữ liệu trong việc tạo ra các dịch vụ (thường được gọi là các dịch vụ web hoặc các tiện ích điện tử) 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 cuối nhưng nó cũng bộc lộ một mối nguy hiểm cho những nhà cung cấp dữ liệu trước những kẻ trộm cắp dữ liệu. Do đó, 12 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ác cơ sở dữ liệu của họ bị đánh cắp.6: Thủy vân cơ sở dữ liệu quan hệ 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 đảm bảo 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 một cơ sở dữ liệu quan hệ, chẳng hạn như 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. Ví dụ, dữ liệu khí tượng được sử dụng để xây dựng các mô hình dự báo thời tiết. Độ chính xác của vectơ gió và nhiệt độ tương ứng trong dữ liệu này được đo chính xác đến 1. Các sai số được đưa vào do thuỷ vân có thể dễ dàng được hạn chế trong sự cho phép của các dữ liệu này.