phần mở đầu và phần kết luận, luận văn bao gồm ba chƣơng nhƣ sau: Chƣơng I. Tổng quan thủy vân số Trình bày những kiến thức cơ bản liên quan đến thủy vân số nhƣ: Khái niệm thủy vân số, khái niệm thủy vân cơ sở dữ liệu quan hệ, khóa thủy vân, lƣợc đồ thủy vân, các ứng dụng của thủy vân số,. Đồng thời cũng trình bày các kỹ thuật thủy vân số cho các cơ sở dữ liệu, đƣợc chia ra làm hai nhóm kỹ thuật, đó là: Các kỹ thuật thủy vân số làm thay đổi dữ liệu và các kỹ thuật thủy vân số không làm thay đổi dữ liệu trong CSDL quan hệ. Đồng thời cũng đƣa ra một số nhận xét về các lƣợc đồ thủy vân.
Chƣơng II. Xác thực sự toàn vẹn của cơ sở dữ liệu quan hệ bằng kỹ thuật thủy vân dựa vào hệ mật mã khóa công khai Trình bày chi tiết một kỹ thuật thủy vân số. Đó là kỹ thuật thủy vân số với cơ chế xác thực công khai. Kỹ thuật này bao gồm hai giai đoạn: giai đoạn tạo mã xác thực (dành cho chủ sở hữu CSDL) và giai đoạn xác thực tính toàn vẹn của dữ liệu (dành cho ngƣời sử dụng CSDL).
Chƣơng III. Xây dựng chƣơng trình thử nghiệm Trình bày bài toán, dữ liệu thử nghiệm và các mô hình thử nghiệm. Dùng chƣơng trình demo để chạy các mô hình thử nghiệm và đƣa ra kết quả đánh giá cho chƣơng trình demo. Số hóa bởi Trung tâm Học liệu http://www.vn/ 3 CHƢƠNG I.
TỔNG QUAN VỀ THỦY VÂN SỐ 1. Tổng quan về thủy vân cơ sở dữ liệu quan hệ 1. Một số khái niệm cơ bản 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 Số hóa bởi Trung tâm Học liệu http://www.vn/ 4 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 đó, 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. 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ỡ. Khóa thủy vân Để chủ sở hữu cơ sở dữ liệu có thể giữ bí mật cho thông tin thủy vân W và là ngƣời duy nhất có thể tìm lại đƣợc thông tin này thì cần phải trộn W vớ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. 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.
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 trong 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 trong thuật toán sử dụng.
Điều quan trọng ở đây chính là việc 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ở Số hóa bởi Trung tâm Học liệu http://www.vn/ 5 dữ liệu quan hệ của mình. Hay nói cách khác, việc đƣa khóa vào trong cơ sở dữ liệu quan hệ là một trong 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 trong cơ sở dữ liệu quan hệ có sử dụng khóa. Một trong những cách giấu khóa hữu hiệu nhất là sử dụng hàm băm vì kỹ thuật này đảm bảo đƣợc yêu cầu bảo mật cũng nhƣ chi phí tính toán. Hàm băm (Hash function) là giải thuật nhằm sinh ra các giá trị băm tƣơng ứng với mỗi khối dữ liệu (có thể là một chuỗi kí tự, một đối tƣợng, v.
Cho hàm băm H thao tác trên một thông điệp đầu vào có độ dài tùy ý M và kết quả là một chuỗi bít có độ dài cố định h: h = H(M). Hàm này có các đặc trƣng sau: i) với M đã cho, dễ dàng tính đƣợc h ii) với h đã cho, khó tìm đƣợc M sao cho H(M) = h iii) với M đã cho, khó tìm đƣợc một thông điệp khác M’ sao cho H(M)= H(M’). Trong lƣợc đồ thủy vân trình bày ở chƣơng II, một hàm băm sẽ đƣợc sử dụng để băm khóa thủy vân cùng với cơ sở dữ liệu.A) băm khóa K cùng với giá trị thuộc tính A của bộ r, hàm H(K || ri.Ay) băm khóa K cùng với các giá trị thuộc tính của bộ ri của cơ sở dữ liệu, trong đó || là phép ghép nối. Trong thực tế, hai hàm băm thông dụng nhất là MD5 và SHA [4].
Trong phần thử nghiệm, luận văn dùng hàm băm MD5. 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 [2]. Khi nhúng thủy vân, một khóa thủy vân K do Số hóa bởi Trung tâm Học liệu http://www.vn/ 6 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 môi trƣờng Internet.
Để xác minh quyền sở hữu của một cơ sở dữ liệu đáng ngờ, cần phải lấy đƣợc thủy vân đã nhúng trong CSDL này. Nếu thủy vân lấy ra trùng với thủy vân đã nhúng, điều này chứng tỏ đây là CSDL của chủ sở hữu. Tuy nhiên, nếu thủy vân lấy ra khác với thủy vân đã nhúng thì CSDL của chủ sở hữu đã bị thay đổi.1 là sơ đồ mô tả lƣợc đồ thủy vân cơ sở dữ liệu quan hệ [2]. Khóa K Cơ sở dữ Nhúng Cơ sở dữ liệu đã liệu gốc thủy vân nhúng thủy vân Thông tin thủy vân (W) Khóa K Cơ sở dữ Phát hiện Khẳng định đúng liệu nghi ngờ thủy vân hoặc sai Thông tin thủy vân (W) Hình 1.
Sơ đồ mô tả lƣợc đồ thủy vân cơ sở dữ liệu quan hệ Số hóa bởi Trung tâm Học liệu http://www.vn/ 7 Sự cần thiết của các kỹ thuật thủy vân cơ sở dữ liệu quan hệ Hiện nay, có khá nhiều tài liệu về thuỷ vân các dữ liệu đa phƣơng tiện. Hầu hết các kỹ thuật này ban đầu đƣợc phát triển cho các bức ảnh tĩnh và sau đó đƣợc mở rộng cho video và audio. Cho dù có khá nhiều điều có thể học hỏi đƣợc từ các kết quả đã đạt đƣợc về thuỷ vân 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 thuỷ vân 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 trọng. Những khác biệt đó bao gồm: Một đối tƣợng đa phƣơng tiện chứa một lƣợng rất lớn các bít với sự dƣ thừa đáng kể.
Vì vậy, các kỹ thuật thuỷ vân có một cái mặt nạ (vỏ) rất rộng để có thể giấu tin vào trong. Trong khi đó, một quan hệ cơ sở dữ liệu chứa các bộ, mỗi bộ này biểu diễn một đối tƣợng riêng biệt. Thuỷ vân cần phải đƣợc trải rộng trên tất cả các đối tƣợng riêng biệt này. Vị trí tƣơng đối về không gian/thời gian của các phần khác nhau của một đối tƣợng đa phƣơng tiện có đặc thù là không thay đổi.
Nhƣng các bộ của một quan hệ lại cấu thành một tập hợp, do vậy không cần phải áp đặt một thứ tự nào giữa các đối tƣợng này. Các phần khác nhau của một đối tƣợng đa phƣơng tiện không thể bị cắt bỏ hoặc thay thế một cách tuỳ ý mà không gây ra những thay đổi về cảm quan 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 bảng quan hệ lại là những phép toán chuẩn trong cơ sở dữ liệu. Do đó, sẽ rất khó để phát hiện những xâm hại đơn giản nhƣ xóa bỏ một số bộ hoặc thay thế chúng bằng các bộ của các quan hệ khác.
Số hóa bởi Trung tâm Học liệu http://www.vn/ 8 Do có những khác nhau nhƣ đã nêu trên đây mà các kỹ thuật đƣợ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 để thuỷ vân các dữ liệu quan hệ. Thật vậy, giả sử ánh xạ một quan hệ thành một bức ảnh bằng cách xem mỗi giá trị thuộc tính nhƣ một điểm ảnh. Nhƣng không may là “bức ảnh” đƣợc định nghĩa nhƣ vậy sẽ thiếu rất nhiều tính chất của một bức ảnh thật.