ĐẶT VẤN ĐỀ Truy cập Internet một cách dễ dàng đã thúc đẩy sự tăng trƣởng của nhiều ngành nghề khác nhau và nhiều lĩnh khác. Ngày nay, việc chia sẻ thông tin trực tuyến là một hoạt động quan trọng đối với kinh doanh và nghiên cứu,không những vậy, nó còn liên quan đến việc mua bán của cơ sở dữ liệu. Ví dụ, chia sẻ dữ liệu liên quan đến thời tiết, thị trƣờng chứng khoán, tiêu thụ điện năng, y tế, khoa học… vv đƣợc thực hiện thƣờng xuyên. Do đó, có một nhu cầu lớn trong việc cung cấp bảo mật cơ sở dữ liệu để ngăn cản việc sao chép và phân phối bất hợp pháp trong môi trƣờng internet.
Kỹ thuật thuỷ vân đang đƣợc xem là một trong những giải pháp đạt đƣợc kết quả cao trong việc bảo vệ bản quyền và xác thực tính toàn vẹn của dữ liệu số. Vì vậy những năm gần đây xuất hiện một hƣớng nghiên cứu mới là thủy vân thuận nghịch Trong giấu tin và thủy vân thuận nghịch thƣờng sử dụng các phép biến đổi nguyên khả nghịch nhƣ dịch chuyển Histogram, Wavelet nguyên, phép biến đổi tƣơng phản, phép biến đổi theo thuật toán di truyền, phép biến đổi mở rộng hiệu, ….Trong số đó kỹ thuật giấu tin và thủy vân dựa trên phép biến đổi theo giải thuật di truyền và mở rộng hiệu đạt đƣợc hiệu quả cao nên đang đƣợc nhiều ngƣời quan tâm. Chính vì vậy em chọn đề tài “Bảo vệ CSDL bằng kỹ thuật thủy vân dựa vào giải thuật di truyền và thuật toán mở rộng hiệu” làm luận văn tốt nghiệp của mình. Nội dung luận văn đƣợc tổ chức thành 3 chƣơng: Chƣơng 1.
Tổng quan, Chƣơng 2. Thủy vân CSDL bằng giải thuật di truyền và phƣơng pháp mở rộng hiệu, Chƣơng 3. Phần mềm thủy vân cơ sở dữ liệu quan hệ. Số hóa bởi Trung tâm Học liệu – ĐHTN http://www.vn 6 CHƢƠNG 1.
Một số khái niệm cơ bản Phần này trình bày một số khái niệm cơ bản về cơ sở dữ liệu, thủy vân số nói chung và thủy vân cơ sở dữ liệu nói riêng. Khái niệm cơ sở dữ liệu Cơ sở dữ liệu là bộ sƣu tập về các loại dữ liệu tác nghiệp bao gồm: chữ viết, văn bản, đồ họa, hình ảnh,. đƣợc lƣu trữ dƣới dạng file dữ liệu trên băng từ, đĩa từ,. Cấu trúc lƣu trữ dữ liệu tuân theo các nguyên tắc dựa trên lý thuyết toán học.
Cơ sở dữ liệu là tài nguyên thông tin dùng chung cho nhiều ngƣời, bất kỳ ngƣời dùng nào có quyền sử dụng, khai thác toàn bộ hay một phần đều có thể sử dụng và khai thác nó nhằm thỏa mãn nhu cầu khai thác thông tin 1. Mô hình cơ sở dữ liệu quan hệ Mô hình cơ sở dữ liệu quan hệ đƣợc tiến sĩ E. Codd phát triển vào năm 1970. Loại cơ sở dữ liệu này đã loại bỏ đƣợc những vấn đề liên quan đến các thiết kế cơ sở dữ liệu khác.
Sử dụng mô hình này có thể giảm thiểu việc dƣ thừa dữ liệu, tiết kiệm đƣợc không gian lƣu trữ và có khả năng truy xuất dữ liệu hiệu quả. Hiện nay cơ sở dữ liệu quan hệ đang đƣợc sử dụng phổ biến cho các ứng dụng. Mô hình cơ sở dữ liệu quan hệ lƣu trữ dữ liệu trên một hoặc nhiều bảng, mỗi bảng gồm nhiều hàng (row), nhiều cột (column) và đƣợc gọi là một quan hệ. Trong thực tế các hàng, các cột đƣợc gọi tên theo thuật ngữ là bản ghi (record) và trƣờng (field).
Số hóa bởi Trung tâm Học liệu – ĐHTN http://www.Biểu diễn quan hệ - Thực thể: là đối tƣợng có trong thế giới thực mà ta cần mô tả các đặc trƣng của nó. Ví dụ: Thực thể NHANVIEN. Các đặc trƣng của thực thể NHANVIEN gồm: Mã nhân viên (1), Họ (Trần Văn), Tên (An) Ngày sinh (15/4/1971),. - Thuộc tính: Là tên các cột của quan hệ, các dữ liệu thể hiện các đặc trƣng của thực thể, mỗi thuộc tính có một kiểu dữ liệu tƣơng ứng.Biểu diễn thuộc tính - Miền thuộc tính: Tập các giá trị có thể có của thuộc tính gọi là miền giá trị của thuộc tính đó gồm có tên, kiểu dữ liệu, khuôn dạng,.
Ví dụ: Ten: kiểu dữ liệu và Text, Ngaysinh, kiểu dữ liệu: date/time, khuôn dạng:dd/mm/yyyy Số hóa bởi Trung tâm Học liệu – ĐHTN http://www.vn 8 - Bộ dữ liệu: Là các dòng (bản ghi) của quan hệ không kể dòng tên của các thuộc tính, mỗi bộ chứa giá trị cụ thể của các thuộc tính.Biểu diễn bộ dữ liệu - Quan hệ: Cho 𝑅 = {𝐴1 , 𝐴2 ,. , 𝐴𝑛 }(trong đó R là tên quan hệ, A1,A2,.,An là các thuộc tính) là một tập hữu hạn các thuộc tính khác rỗng. Mỗi thuộc tính 𝐴𝑖 𝑅; 𝑖 = 1 ÷ 𝑛có một miền giá trị xác định. Mô hình cơ sở dữ liệu quan hệ thƣờng biểu diễn một quan hệ trên tập các thuộc tính bằng bảng 2 chiều.
Các thuộc tính của quan hệ là các cột 𝐴1 , 𝐴2 ,. , 𝐴𝑛 , các hàng của quan hệ đƣợc gọi là các bộ (bản ghi), ký hiệu r và giá trị của mỗi bộ gồm m thành phần. Quan hệ r đƣợc biểu diễn bởi bảng sau: A1 A2. An Ví dụ: SINHVIEN(MaSV Ten Ngaysinh Điachi) HCN01 Hải 12/10/1987 Hà Nội HCN02 Bình 06/08/1989 Hải Phòng HCN03 Minh 28/10/1990 Nghệ An HCN04 Hoa 17/09/1991 Quảng Ninh Số hóa bởi Trung tâm Học liệu – ĐHTN http://www.vn 9 Trong đó các thuộc tính là MaSV: Mã sinh viên; Ten: tên; Ngaysinh: Ngày sinh; Diachi: Địa chỉ.
Bộ giá trị là (HCN01, Hải, 12/10/1987, Hà Nội). - 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ệ. - Khóa của quan hệ: Trong một lƣợc đồ quan hệ luôn tồn tại một thuộc tính hay một tập các thuộc tính có khả năng biểu diễn duy nhất các thuộc tính còn lại. Nói cách khác giá trị của một hay nhiều thuộc tính có thể xác định duy nhất giá trị các thuộc tính khác.
Ví dụ Số chứng minh thƣ sẽ xác định đƣợc tất cả thông tin về ngƣời mang chứng minh thƣ đó. Tập thuộc tính có tính chất nhƣ trên đƣợc gọi là khoá của lƣợc đồ quan hệ. Thông thƣờng trong một lƣợc đồ quan hệ có thể tồn tại nhiều khoá. Trong số đó sẽ chọn một khoá làm khoá chính sao cho đơn giản và không nhập nhằng thông tin.
Giá trị các thành phần của khoá không thể nhận giá trị null hay các giá trị không xác định. Khóa của quan hệ R xác định trên tập thuộc tính 𝑅 = {𝐴1 , 𝐴2 ,. , 𝐴𝑛 } là tập con K R sao cho bất kỳ hai bộ khác nhau t1, t2 r luôn thỏa t1. Khóa là khái niệm quan trọng trong thiết kế cơ sở dữ liệu quan hệ.
Khóa thƣờng đƣợc áp dụng trong việc tìm kiếm và cập nhật dữ liệu trong các quan hệ cơ sở dữ liệu. Thủy vân số Thủy vân số là kỹ thuật nhúng thêm một lƣợng thông tin (dấu thủy vân) vào dữ liệu đa phƣơng tiện nhƣ: văn bản, hình ảnh, âm thanh và cơ sở dữ liệu (dữ liệu đa phƣơng tiện). Việc nhúng dấu thủy vân vào dữ liệu đa phƣơng tiện có thể làm giảm chất lƣợng dữ liệu nhƣng nó là dấu vết để chứng minh quyển sở hữu hoặc dùng để phát hiện ra sự đổi trái phép trên dữ liệu trong quá trình trao đổi thông tin. Số hóa bởi Trung tâm Học liệu – ĐHTN http://www.vn 10 Các lƣợc đồ thủy vân có thể đƣợc phân loại theo nhiều tiêu chí khác nhau nhƣ: Phân loại theo mục đích sử dụng: Dựa vào mục đích sử dụng, các lƣợc đồ thủy vân có thể đƣợc chia thành 2 loại nhƣ hình sau: Thủy vân số Thủy vân bền vững Thủy vân dễ vỡ Hình 1.
Phân loại thủy vân theo mục đích sử dụng. thủy vân bền vững là các lƣợc đồ thủy vân có khả năng chống đƣợc một số phép tấn công nhằm vi phạm bản quyền. Theo đó, dấu thủy vân cần ít bị biến đổi (bền vững) trƣớc sự thay đổi của dữ liệu thủy vân. Do vậy các lƣợc đồ thủy vân bền vững thƣờng đƣợc ứng dụng trong bài toán bảo vệ bản quyền các sản phẩm dữ liệu sô.
Trái với thủy vân bền vững, thủy vân dễ vỡ yêu cầu dấu thủy vân phải nhạy cảm (dễ bị biến đổi) trƣớc các sự thay đổi trái phép trên dữ liệu chứa dấu thủy vân. Vì vậy các lƣợc đồ này đƣợc dùng để xác thực tính toàn vẹn của dữ liệu hay định vị các vùng dữ liệu bị tấn công. Phân loại theo cách sử dụng khóa: Ngoài cách phân loại các lƣợc đồ thủy vân theo mục đích ứng dụng, ta còn có thể phân loại theo cách sử dụng khóa nhƣ hình sau: Số hóa bởi Trung tâm Học liệu – ĐHTN http://www.vn 11 Thủy vân số Thủy vân khóa bí mật Thủy vân khóa công khai Hình 1. Phân loại thủy vân theo cách sử dụng khóa.2, các lƣợc đồ thủy vân khóa bí mật sử dụng chung khóa cho cả quá trình nhúng và trích dấu (kiểm tra) dấu thủy vân.
Do vậy, khi triển khai ứng dụng cần phải thực hiện quá trình trao đổi khóa giữa bên gửi và bên kiểm tra. Trái với thủy vân khóa bí mật, các lƣợc đồ thủy vân khóa công khai sử dụng các khóa khác nhau cho hai quá trình. Thông thƣờng, khóa bí mật đƣợc dùng bên phía ngƣời nhúng dấu thủy vân và khóa công khai đƣợc sử dụng ở phía ngƣời kiểm tra dấu thủy vân. Cũng giống nhƣ các hệ mật mã, từ khóa công khai khó có thể suy ra đƣợc khóa bí mật.
Do không phải thực hiện quá trình trao đổi khóa nên các lƣợc đồ thủy vân khóa công khai thƣờng an toàn hơn và dễ dàng triển khai trong thực tế. Phân loại theo sự hiện diện của dấu thủy vân: Ngoài hai cách phân loại ở trên, dựa vào sự hiển thị hay không hiển thị (ẩn) của dấu thủy vân trên các sản phẩm chứa dấu thủy vân ngƣời ta có thể phân thành hai loại nhƣ: Số hóa bởi Trung tâm Học liệu – ĐHTN http://www.vn 12 Thủy vân số Thủy vân ẩn Thủy vân hiện Hình 1. Phân loại thủy vân theo sự hiện diện của dấu thủy vân.3, thủy vân hiện gồm các lƣợc đồ cho phép dấu thủy vân hiển thị trên sản phẩm cần bảo vệ. Các dấu thủy vân này thƣờng là các logo của các tổ chức.
Một ví dụ điển hình về thủy vân hiện là biểu tƣợng của các đài truyền hình đƣợc hiển thị trên màn hình tivi. Không giống nhƣ thủy vân hiện, trong thủy vân ẩn, dấu thủy vân ẩn lấp dƣới dữ liệu cần bảo vệ. Và bằng mắt thƣờng, ngƣời dùng khó có thể phân biệt sự khác biệt giữa dữ liệu chứa dấu thủy vân và dữ liệu không chứa dấu thủy vân.