Tìm hiểu chung về SSL và TLS Phần 2

ssl1

I.2 Kiến trúc SSL

SSL được thiết kế để dùng TCP cung cấp 1 dịch vụ bảo mật đầu cuối-đến-đầu cuối đáng tin cậy.SSL không phải là một giao thức đơn mà là 2 lớp giao thức,như minh họa dưới đây.

ssl21Hình I.1 : Chồng giao thức SSL

SSL Record Protocol cung cấp các dịch vụ bảo mật cơ bản cho nhiều giao thức khác nhau ở các lớp trên.Trong thực tế, Hyper Text Transfer Protocol (HTTP),cung cấp dịch vụ trao đổi cho tương tác Web client/server,có thể hoạt động trên đỉnh của SSL.Ba giao thức lớp trên được định nghĩa như là các phần của SSL: Handshake Protocol,Change Cypher Spec Protocol và Alert Protocol.Các giao thức mang tính đặc trưng-SSL này được dùng trong phần quản lý trao đổi SSL và được xét đến trong phần sau.

Hai khái niệm SSL quan trọng là SSL session (phiên SSL) và SSL connection ( kết nối SSL) ,được định nghĩa như sau:

   Connection ( kết nối): 1 kết nối là 1 transport _ trong định nghĩa mô hình phân lớp OSI_ cung cấp 1 loại dịch vụ thích hợp.Với SSL,những kết nối như vậy là những mối quan hệ ngang hàng.Các kết nối thì trao đổi nhanh chóng.Mỗi kết nối gắn với 1 phiên.

  Session (phiên): 1 phiên SSL là 1 liên kết giữa 1 client và 1 server.Các phiên được tạo ra bằng Handshake Protocol (giao thức bắt tay).Các phiên định nghĩa 1 tập các tham số bảo mật bằng mật mã,có thể được chia sẻ giữa nhiều kết nối.Các phiên được dùng để tránh những đàm phán tốn kém_về các tham số bảo mật mới_cho mỗi kết nối.

Giữa bất kì 1 cặp của nhóm nào (các ứng dụng như HTTP trên client hay server),có thể có nhiều kết nối bảo mật. Về lý thuyết ,có thể có nhiều phiên đồng thời giữa các nhóm,nhưng đặc trưng này không được dùng trong thực tiễn.

Thực sự có nhiều trạng thái gắn với mỗi phiên.Một khi 1 phiên được thành lập,có trạng thái hoạt động hiện thời cho cả đọc và ghi, (như nhận và gửi..).Thêm vào đó, trong suốt quá trình Handshake Protocol, trạng thái treo đọc và ghi được tạo ra.Dựa trên kết luận thành công của Handshake Protocol,các trạng thái treo trở thành trạng thái hiện thời.

-Một trạng thái phiên được định nghĩa bởi các thông số sau (các định nghĩa lấy từ đặc trưng SSL):

   Session Identifier : 1 chuỗi byte bất kì được chọn bởi server để nhận dạng trạng thái phiên là hoạt động

(active) hay phục hồi lại (resumable).

   Peer certificate: một chứng chỉ X509.v3.Thành phần này của trạng thái có thể là null.

   Compression method: thuật toán được dùng để nén dữ liệu trước khi mã hóa.

   Cypher spec : chỉ ra thuật toán mã hóa dữ liệu (như rỗng,AES…) và thuật toán băm (như MD5 hay SHA –

1) sử dụng để tính toán MAC.Nó cũng định nghĩa các thuộc tính mã hóa như hash-size.

   Master secret : 48 byte bí mật được chia sẻ giữa client và server.

   Is resumable : một cờ chỉ ra rằng phiên này có thể được dùng để khởi tạo các kết nối khác hay không.

-Một trạng thái kết nối được định nghĩa bởi các tham số sau:

   Server and client random: các chuỗi byte được chọn bởi server và client cho mỗi kết nối.

   Server write MAC secret: khóa bí mật được sử dụng bởi phép tính MAC trên dữ liệu, được gửi bởi server.

   Client write MAC secret: khóa bí mật được sử dụng bởi phép tính MAC trên dữ liệu,được gửi bởi client.

   Server write key: khóa mã hóa quy ước cho dữ liệu được mã hóa bởi server và giải mã bởi client.

   Client write key :khóa mã hóa quy ước cho dữ liệu được mã hóa bởi client và giải mã bởi server.

   Initialization vectors: khi 1 khối mã trong mode CBC được dùng, một vector khởi tạo (IV) được duy trì cho mỗi key.Phần này được khởi tạo trước tiên bởi SSL Handshake Protocol.Sau đó,khối mã hóa cuối cùng từ mỗi record được để dành lại để dùng làm IV cho record sau .

   Sequence number : mỗi bên duy trì các sequence number riêng cho mỗi message được truyền hoặc được nhận trong mỗi kết nối.Khi 1 bên gửi hoặc nhận một change cypher spec message, sequence number thích hợp được thiết lập về 0.Sequence number không thể vượt quá 264-1.

Còn tiếp phần 3 Giao thức SSL (Nguồn sưu tầm)

Comments

comments