Chương 1 : TỔNG QUAN
3.5 Toàn vẹn bản tin
Toàn vẹn bản tin được thực hiện nhờ sử dụng một hàm băm tốn học để tính tốn đặc trưng của bản tin hay của file dữ liệu. Đặc trưng này được gọi là tóm tắt bản tin MD (Message Digest) và độ dài phụ thuộc vào hàm băm được sử dụng. Tất cả hoặc một phần của tóm tắt bản tin được truyền với dữ liệu tới host đích, nơi mà sẽ thực hiện cùng hàm băm để tái tạo tóm tắt bản tin này. Tóm tắt bản tin nguồn và đích sẽ được đối chiếu. Bất cứ sai lệch nào đều có
nghĩa là bản tin đã biến đổi kể từ khi bản tin nguồn được thiết lập. Sự tương xứng với nhau có nghĩa là chắc chắn dữ liệu khơng bị biến đổi trong q trình truyền.
Khi sử dụng giao thức IPSec, bản tin tóm tắt được thiết lập nhờ sử dụng trường khơng biến đổi từ gói tin IP và trường biến đổi được thay thế bằng giá trị 0 hoặc giá trị có thể dự đốn được. Tính tốn MD và sau đó là đặt nó vào trường dữ liệu nhận thực (ICV) của AH. Thiết bị đích sau đó copy MD từ AH và tách trường dữ liệu nhận thực trước khi tính tốn lại MD.
Với giao thức IPSec ESP, việc xử lý cũng tương tự, tóm tắt bản tin được tạo nhờ sử dụng dữ liệu khơng biến đổi trong gói tin IP bắt đầu từ ESP header và kết thúc là ESP trailer. MD tính tốn được sau đó đặt vào trường ICV tại cuối của gói tin. Với ESP, host đích khơng cần tách trường ICV bởi vì nó đặt bên ngồi phạm vi hàm băm thơng thường.
Có 2 thuật tốn chính để hỗ trợ tồn vẹn bản tin, đó là MD5 và SHA-1 (Secure Hash Algorithm-1: thuật toán băm an tồn-1), chúng sử dụng chơ chế khóa băm gọi là HMAC (Hashed-keyed Message Authenticaiton Code: mã nhận thực bản tin băm). Sau đây là tổng quan ba cơng cụ cho tồn vẹn bản tin này.
3.5.1 Mã nhận thực bản tin băm HMAC
RFC 2104 trình bày về thuật tốn HMAC, bởi vì nó được phát triển để làm việc cùng với thuật toán băm đang tồn tại là MD5 và SHA-1. Nhiều quá trình xử lý an ninh phức tạp trong chia sẻ dữ liệu u cầu sử dụng khóa bí mật và một cơ chế được gọi là mã nhận thực bản tin (MAC: Message Authentication Code). Một bên tạo MAC sử dụng khóa bí mật và truyền MAC tới bên kia. Bên kia tạo lại MAC sử dụng cùng một khóa bí mật và so sánh 2 giá trị MAC.
MD5 và SHA-1 có khái niệm tương tự nhau, nhưng chúng sử dụng khóa bí mật khác nhau. Điều này chính là u cầu có HMAC. HMAC được phát triển thêm vào một khóa bí mật cho tiêu chuẩn thuật tốn băm tính tốn tóm tắt bản tin. Khóa bí mật được thêm vào theo thể thức cùng độ dài nhưng kết quả tóm tắt bản tin khác nhau khi sử dụng thuật toán khác nhau.
3.5.2 Thuật tốn MD5
Thuật tốn tóm tắt bản tin MD5 thực hiện tóm tắt bất kì bản tin hay trường dữ liệu nào cũng miêu tả cơ đọng lại cịn 128 bít. Với HMAC-MD5-96, khóa bí mật có độ dài là 128 bít. Với AH và ESP, HMAC chỉ sử dụng có 96 bit nằm bên trái, đặt chúng vào trường nhận thực. Bên đích sau đó tính tốn lại 128 bit tóm tắt bản tin nhưng chỉ sử dụng 96 bit nằm bên trái để so sánh với giá trị được lưu trong trường nhận thực.
MD5 tạo ra một tóm tắt bản tin ngắn hơn SHA-1 và được xem như là ít an tồn hơn nhưng kết quả lại được thực hiện tốt hơn. MD5 khơng có HMAC được biết như là yếu hơn cho những lựa chọn dịch vụ chất lượng bảo mật cao.
3.5.3 Thuật tốn băm an tồn SHA
Thuật tốn băm an tồn được diễn tả trong RFC 2404. SHA-1 tạo ra một tóm tắt bản tin dài 160 bit, và sử dụng khóa bí mật 160 bit. Có thể với một vài sản phẩm thì nó sẽ lấy 96 bít bên trái của tóm tắt bản tin để gửi vào trường nhận thực. Bên thu tạo lại tóm tắt bản tin 160 bit sử dụng khóa bí mật dài 160 bit và chỉ so sánh 96 bit với tóm tắt bản tin trongkhung của trường nhận thực.
Tóm tắt bản tin SHA-1 dài 160 bit an toàn hơn so với MD5 dài 128 bit. Điều này được xem như là quá an toàn nhưng nếu như bạn cần một an toàn cao cho tồn vẹn bản tin thì có thể chọn thuật tốn HMAC-SHA-1.