Giao thức truyền số liệ u SSL Record Protocol

Một phần của tài liệu bài giảng an toàn bảo mật thông tin (Trang 119 - 120)

CHƢƠNG 5 MÃ CHỨ NG THỰC THÔNG ĐIỆP, HÀM BĂM

7.3.2Giao thức truyền số liệ u SSL Record Protocol

Hình bên dưới minh họa các bước thực hiện trong q trình truyền số liệu: Dữ liệu Chia nhỏ Nén Tính MAC Mã hóa Thêm SSL header

Hình 7-7. Truyền dữ liệu theo khối trong SSL

Trong giao thức truyền số liệu, dữ liệu được chia thành các khối có kích thước là 214 byte (16384) Sau đó, dữ liệu này được nén lạị Tuy nhiên hiện nay trong SSL version 3 chưa mô tả cụ thể một phương pháp nén nào nên mặc định xem như là không nén.

Bước tiếp theo giá trị MAC của khối dữ liệu nén được tính theo cơng thức sau: hash(MAC_key || pad_2 ||hash(MAC_key || pad_1 || seq_num ||type ||length || data)) trong đó:

- Hàm hash là hàm MD5 hay SHA-1

- MAC_key: khóa tính MAC đã được client và server thống nhất trong phần bắt tay

- pad_1: byte 0x36 (00110110) được lặp lại 48 lần (384 bít) đối với hàm hash MD5 và 40 lần (320 bít) đối với hàm hash SHA-1

-

pad_2: byte 0x5C (1 0101100) được lặp lại 48 lần đối với MD5 v à 40 lần với

SHA-1

- seq_num: số thứ tự của khối dữ liệu

- type: loại khối dữ liệu (xem phần bên dưới)

- length: kích thước khối dữ liệu

- data: khối dữ liệu

Sau khi tính MAC xong, khối dữ liệu cùng với giá trị MAC được mã hóa bằng một thuật tốn mã khối đã được lựa chọn trong giao thức bắt taỵ

Cuối cùng một SSL header được gắn vào đầu khối dữ liệụ SSL header gồm các field sau:

- Content Type (1 byte): Ngoài việc truyền dữ liệu của giao thức HTTP, SSL Record Protocol còn được dùng để truyền dữ liệu của giao thức Handshake cũng như hai giao thức còn lại SSL Change Cipher Spec và SSL Alert. Giá trị 116

của field này dùng để xác định loại giao thức đang được sử dụng. Đối với giao thức giao thức Handshake dữ liệu được truyền thẳng không cần nén, tính MAC và mã hóạ

- Major Version (1 byte): số hiệu chính của phiên bản SSL. Với SSLv3 field này có giá trị là 3.

- Minor Version (1 byte): số hiệu phụ của phiên bản SSL. Với SSLv3 field này có giá trị là 0.

- Compressed Length (2 byte): kích thước tính bằng byte của khối dữ liệu sau bước nén.

Một phần của tài liệu bài giảng an toàn bảo mật thông tin (Trang 119 - 120)