Nguyên tắc hoạt động bắt tay SSL
Khái niệm,mục đích : SSL
Cho phép server và client xác thực và thỏa thuận
các thông tin về mã hóa và chứng thực bản tin
Giao thức này được dùng trước khi việc gửi nhận
dữ liệu bắt đầu
Thủ tục handshake chứa một chuỗi các message
gửi nhận
Các message chứa 3 trường dữ liệu: type, length
và content
1 byte 3bytes >=0bytes
| Type | Length | content |
Handshake Protocol
-Các giai đoạn trong qtrinh bắt tay của SSL Handshake
Phase 1:Thiết lập
Phase 2:Server gửi thông tin
Phase 3:Client gửi thông tin
Phase 4:Chờ cập nhập và kết thúc handshake
-Ý nghĩa các thông điệp trao đổi trong các giai đoạn của quá trình bắt tay.
Phase 1: + Khởi tạo kết nối và thiết lập các tính năng bảo mật
+ Client gửi bản tin client_hello với các thông số
nonce, session ID, cipher suite, phương thức
nén…
+ Server trả lại bản tin server_hello với các thông
tin nonce và một tập các tham số bảo mật đề xuất
Trao đổi khóa (Key exchanges): RSA | fixed,
ephemeral, anonymous Diffie-Hellman | Fortezza
Phase 2 : Hầu hết các bước trong phase này là tùy chọn
+ Server gửi certificate (X.509) nếu có yêu cầu nhận thực
+ Bản tin server_key_exchange được gửi nếu có yêu cầu.
+Đây chính là giá trị băm chứa tham số nonces để chống gửi lặp
+ Server có thể gửi bản tin certificate_request tới client.
Bản tin này gồm hai tham số: kiểu certificate và CA
+ Bản tin server_done (không có tham số) được gửi để kết thúc phase
+Server đợi phản hồi từ client
Phase 3: Client kiểm tra certificate nếu có yêu cầu và kiểm tra các tham số gửi từ server
+Gửi bản tin certificate tới server nếu server yêu cầu
+ Gửi bản tin client_key_exchange tới server để trao đổi thông tin khóa
+Gửi bản tin certificate_verify nếu cần để kiểm tra tính hợp lệ của khóa trong certificate
Phase 4: Đây là phiên hoàn tất việc thiết lập phiên kết nối bảo mật
+Client gửi bản tin change_cipher_spec và chuyển giá trị CipherSpec
hiện tại thành pending CipherSpec
+Client gửi bản tin finished với các giá trị đã thỏa thuận(thuật toán,
khóa, các thông tin bí mật)
+Server phải hồi lại cho client hai bản tin như trên
+ Quá trình Handshake thành công: client và server bắt đầu trao đổi dữ liệu mã hóa
Filed Under: Bảo mật và thâm nhập
