Vì dựa trên SSL v3.0 nên TLS cũng có các mục tiêu theo thứ tự ưu tiên là: - An ninh mã hóa: TLS nên được sử dụng để thiết lập một kết nối an toàn giữa hai bên.
- Khả năng liên thông: Các nhà phát triển phần mềm độc lập có thể phát triển ứng dụng sử dụng TLS có thể trao đổi các tham số mã hóa mà không cần hiểu hết mã nguồn của người khác.
- Khả năng mở rộng: TLS nhằm tạo ra một khung cho phép phương pháp khóa công khai và mã hóa số lượng lớn mới tạo ra có thể kết hợp với nhau khi cần thiết. Điều này cũng sẽ thực hiện hai mục tiêu khác: tránh tạo ra một giao thức mới (rủi ro vì có thể có điểm yếu mới) và tránh phải xây dựng toàn bộ một thư viện bảo mật mới.
- Hiệu quả tương đối: Việc mã hóa có xu hướng sử dụng tài nguyên CPU cao, đặc biệt là quá trình trao đổi khóa công khai. Vì lý do này, TLS đã kết hợp một thủ tục lưu trữ bộ nhớ đệm theo phiên tùy chọn để giảm số lượng kết nối cần được thiết lập từ đầu. Ngoài ra, TLS cũng xem xét thực hiện giảm hoạt động mạng.
TLS cung cấp một kênh bảo mật trong suốt giữa hai đầu cuối, tức là dữ liệu đi qua kênh này không bị thay đổi, và nó cho phép các giao thức chạy được trên TCP cũng có thể chạy được trên TLS. Vì vậy, TLS nằm ngay phía trên giao thức TCP và dưới SIP, hay nói cách khác là SIP được mã hóa bởi TLS và truyền qua kết nối TCP.
Hình 2.1: Lớp bảo mật TLS cho giao thức SIP
Ưu điểm và nhược điểm của việc sử dụng TLS:
TLS cung cấp một vài chức năng bảo mật nhằm bảo mật cho các bản tin báo hiệu và còn có thể được sử dụng như là cơ chế trao đổi khóa cho RTP. Cùng lúc, một số hạn chế của nó cần được xem xét để ước lượng hiệu quả trong môi trường đặc biệt.
- Ưu điểm:
+ Hỗ trợ sự chứng thực sử dụng cơ chế xác thực.
+ Cung cấp sự bí mật và toàn vẹn cho gói tin, chống lại các cuộc tấn công như nghe trộm, tin nhắn giả mạo, phát lại…
+ Sự hiện diện của SSL cung cấp sự thông qua và triển khai được diễn ra dễ dàng hơn.
+ Nó có thể bảo vệ đàm phán của các mã khóa.
+ TLS là giao thức đã được chứng minh và sử dụng rộng rãi trong các ứng dụng của Internet như VPN, email, các ứng dụng web…
+ Hiệu năng thấp hơn so với các giao thức bảo mật khác ví dụ như Ipsec. - Nhược điểm:
+ Yêu cầu cần có cơ sở hạ tầng khóa PKI để chứng thực trên lớp SSL. + Không cung cấp cơ chế bảo mật trực tiếp đầu-cuối. Nó đòi hỏi sự chấm dứt và tạo ra của một phiên mới tại mỗi “hop” (ví dụ như giữa các proxy của SIP hoặc các phiên điều khiển biên).
+ TLS có thể được sử dụng với giao thức TCP, nhưng không thể sử dụng với giao thức UDP, bởi TLS sẽ ảnh hưởng đến sự thực thi của SIP nếu dùng UDP. Nhiều mạng doanh nghiệp hoặc nhà cung cấp chỉ sử dụng SIP trên UDP.
+ Dễ bị tấn công Dos như TCP floods (tấn công làm tràn các gói tin TCP) và RSTs (tấn công làm reset lại kết nối). Một tấn công TCP flood sẽ có mục tiêu khiến tiêu tốn tài nguyên của hệ thống (ví dụ như tốn tài nguyên CPU) làm RSA bị lộ mã. Ngoài ra, kẻ tấn công có thể tạo ra các gói RST giả mạo hoặc những bản ghi TLS làm chấm dứt sớm kết nối.
Nhìn chung, TLS được chọn để bảo mật các bản tin báo hiệu của SIP. SDU (Service Data Unit) từ lớp trên được mã hóa trước khi truyền đi, còn phia bên kia PDU (Protocol Data Unit) được giải mã và chuyển lên lớp bên trên. Hai phía đều phải có chứng chỉ hợp lệ do CA (Certificate Authority) cấp cho quá trình bắt tay của TLS.