Khi chủ sở hữu CSDL đƣa CSDL và bản mã SD ra công cộng nhƣ
Internet,… và ngƣời sử dụng có thể dùng khóa công khai của chủ sở hữu CSDL Pkey để giải mã SD và nhận mã xác thực R. Sau đó có thể lấy đặc tính
Số hóa bởi Trung tâm Học liệu http://www.lrc-tnu.edu.vn/ C của bảng T , thực hiện toán tử XOR giữa C và R. Nếu ngƣời sử dụng lấy ra đƣợc thủy vân số hoàn chỉnh thì sẽ chứng minh bảng dữ liệu T toàn vẹn. Quá trình đƣợc chi tiết nhƣ sau:
Bƣớc 1: Ngƣời sử dụng dùng khóa công khai của ngƣời sở hữu CSDL
Pkey để giải mã SD và thu đƣợc mã xác thực R.
) (SD
P R key
Bƣớc 2: Bƣớc này thực hiện giống nhƣ bƣớc 2 trong quá trình tạo ra mã xác thực với tất cả các bản ghi (t ) và nhận đƣợc Mi dài 128 bít. Sau đó chia đôi Mi thành hai đoạn 64 bít bằng nhau. Đặt đoạn 64 bít đầu là bi và 64 bít sau là fi . Thực hiện toán tử XOR giữa bi và fi thu đƣợc giá trị Xi . Sau đó lấy phần dƣ của Xi chia cho 256 thu đƣợc Ci nằm giữa 0 và 255.
256 mod ) ( 5 i i i i i i i X C f b X t MD M
Bƣớc 3: Cho tới khi thu đƣợc tất cả các đặc tính Ci, kết hợp chúng lại thu đƣợc C . Thực hiện toán tử XOR giữa C và R, để nhận đƣợc một thủy vân số WM . Nếu ngƣời sử dụng có thể lấy đƣợc thủy vân số hoàn chỉnh thì nó sẽ chứng minh tính toàn vẹn của CSDL.
Để rõ hơn, dƣới đây là giả mã đƣợc đƣa ra cho bƣớc xác thực tính toán vẹn của dữ liệu nhƣ sau:
Input: - Bảng dữ liệu T (bảng dữ liệu đƣợc công khai trên mạng Internet,...) có N bản ghi (N N N ).
Số hóa bởi Trung tâm Học liệu http://www.lrc-tnu.edu.vn/
- bản mã SD (đƣợc tạo ra trong bƣớc Tạo mã xác thực, đƣợc công khai trên Internet,...)
- Khóa công khai Pkey .
Output: Bảng dữ liệu T có toàn vẹn dữ liệu hay không?
Thuật toán:
1. R Pkey(SD); 2. For i:= 1 To N Do
Mi MD5(ti) (độ dài của Milà 128 bít);
i
b = Lấy 64 bít đầu của Mi;
i
f = Lấy 64 bít sau của Mi ;
i i i b f X ; i C = Xi mod 256; 2. Kết hợp tất cả các Ci để đƣợc ma trận C ; 3. WM C R;
4. If (WM WM ) Thenreturn Dữ liệu T đƣợc toàn vẹn; Else return
Dữ liệu T không đƣợc toàn vẹn; Số lƣợng bản ghi đã bị thay đổi;
Số hóa bởi Trung tâm Học liệu http://www.lrc-tnu.edu.vn/