M được xây dựng từ Bản tin gố ca bằng thuật toán:
6.1.1.2. Phương pháp Bảo toàn dữ liệu
1). Dùng mã hóa hay giấu tin đề bảo toàn dữ liệu.
Phương pháp mã hóa hay giấu tin dùng để “che giấu” tài liệu x, kẻ gian có chặn bắt được nó, thì cũng “khó” hiểu được nó, do đó “khó thể” thay đổi được nội dung của x. Như vậy phương pháp này thực hiện được khả năng 2/.
(2/. G có thể không cho phép kẻ gian thay đổi nội dung của x).
Chú ý rằng nếu tài liệu x được mã hóa, kẻ gian “khó” giải được mã, nếu tài liệu x được “giấu” trong tài liệu khác, kẻ gian “khó” tách ra được tài liệu gốc.
Nhưng nếu kẻ gian vẫn thay x bằng y, thì phương pháp mã hóa hay giấu tin không xác minh được ! Tức là phương pháp này không có khả năng 1/.
(1/. N có thể phát hiện được sự thay đổi nội dung của x ).
2). Dùng “chữ ký số” đề bảo toàn dữ liệu.
Người gửi G cần chuyển tài liệu x tới người nhận N trên mạng công khai.
Nếu dùng “chữ ký số” để bảo toàn x, thì G phải chuyển x và cả chữ ký trên x là z cho N. Như vậy N sẽ nhận được cặp tin (tài
liệu, chữ ký) = (x, z), z = Sig (x).
Như vậy phương pháp này chỉ thực hiện được khả năng 1/. (1/. N có thể phát hiện được sự thay đổi nội dung của x ).
Nếu kẻ gian thay đổi nội dung của x, hay dùng y thay cho x, thì khi N kiểm tra chữ ký của G, chắc chắn chữ ký z là sai, vì x cũ đã bị thay đổi. Chú ý rằng phương pháp này không thực hiện được khả năng 2/.
Tức là kẻ gian có thể thay được đổi nội dung của x.
(2/. G có thể không cho phép kẻ gian thay đổi nội dung của x).
3). Dùng “thủy vân ký” đề bảo toàn dữ liệu.
Người gửi G cần chuyển tài liệu x tới người nhận N trên mạng công khai.
Nếu dùng “thủy vân ký” để bảo toàn x, thì G phải cho “ẩn giấu” vào x một “dấu hiệu đặc trưng” C của mình, như vậy x đã trở thành x’ (vật mang tin C). Sau đó
G chuyển x’ cho N trên mạng.
N tách C ra khỏi x’ và nhận được tài liệu gốc là x. Như vậy phương pháp này chỉ thực hiện được khả năng 1/. (1/. N có thể phát hiện được sự thay đổi nội dung của x ).
Lý do:
Kẻ gian không biết được tài liệu gốc là x, vì nó chỉ chặn bắt được x’. Nó tìm cách tách một dấu hiệu khả nghi C’ từ x’.
Khi đó tài liệu mà N nhận được không phải là x’, mà là x’’. N tách C ra khỏi x’’ , sẽ không nhận được “dấu hiệu” C. Tức là N có thể phát hiện được sự thay đổi nội dung của x.
Chú ý rằng phương pháp này không thực hiện được khả năng 2/ (như PP Ký). Tức là kẻ gian có thể thay được đổi nội dung của x.
(2/. G có thể không cho phép kẻ gian thay đổi nội dung của x).
4). Dùng “hàm băm” đề bảo toàn dữ liệu.
* Đặc điểm của hàm băm:
Hàm băm h là hàm một chiều (One-way Hash) với các đặc tính sau:
1). Với tài liệu đầu vào (bản tin gốc) x, chỉ thu được giá trị băm duy nhất z = h(x). 2). Nếu dữ liệu trong bản tin x bị thay đổi hay bị thay hoàn toàn để thành bản tin x’, thì giá trị băm h(x’) ≠ h(x).
Cho dù chỉ là một sự thay đổi nhỏ, ví dụ chỉ thay đổi 1 bit dữ liệu của bản tin gốc x, thì giá trị băm h(x) của nó cũng vẫn thay đổi. Điều này có nghĩa là: hai thông điệp khác nhau, thì giá trị băm của chúng cũng khác nhau.
Dựa vào đặc điểm trên của hàm băm, người ta bảo toàn dữ liệu như sau.
* Bảo toàn dữ liệu dùng “hàm băm”:
Người gửi G cần chuyển tài liệu x tới người nhận N trên mạng công khai.
Nếu dùng “hàm băm” để bảo toàn x, thì G phải chuyển x và cả giá trị băm trên x là z cho N. Như vậy N sẽ nhận được cặp tin (tài liệu, đại diện TL) = (x, z), z = h(x).
(Chú ý z là giá trị băm trên x, còn được gọi là đại diện tài liệu).
N sẽ băm lại x, và nhận được giá trị băm là z’. Nếu z’≠ z, thì chắc chắn x đã bị thay đổi trên đường truyền tin. Nếu z’≡ z, thì x được bảo toàn.
Như vậy phương pháp này chỉ thực hiện được khả năng 1/. Tức là N có thể phát hiện được sự thay đổi nội dung của x. (1/. N có thể phát hiện được sự thay đổi nội dung của x ).
Chú ý rằng phương pháp này không thực hiện được khả năng 2/(như PP Ký). Tức là kẻ gian có thể thay được đổi nội dung của x.
(2/. G có thể không cho phép kẻ gian thay đổi nội dung của x).