Tóm lại, không, nhưng có thể có những trường hợp tinh tế tùy thuộc vào cách bạn muốn triển khai hệ thống.
HTTPS là HTTP qua SSL / TLS và bạn có thể sử dụng SSL / TLS mà không cần chứng chỉ hoặc với chứng chỉ thuộc các loại khác ngoài X.509 .
- Bộ mật mã ẩn danh: họ có thể cung cấp mã hóa, nhưng không cần xác thực. Thay vào đó là vô dụng khi có liên quan đến an ninh ... Để trích dẫn RFC 4346 : " Diffie-Hellman ẩn danh bị ngăn cản mạnh mẽ bởi vì nó không thể ngăn chặn các cuộc tấn công trung gian. "
- Các khóa được chia sẻ trước : nó có cơ chế riêng để xác minh danh tính từ xa, nhưng bản chất được chia sẻ của các khóa mang đến một bộ vấn đề riêng (đặc biệt là triển khai hạn chế).
- Bộ mật mã Kerberos : khách hàng có thể xác minh danh tính của máy chủ với tên chính của Kerberos.
Nói một cách chính xác, đặc tả HTTP qua TLS cho biết như sau:
Nói chung, các yêu cầu HTTP / TLS được tạo bằng cách hủy bỏ URI. Kết quả là, tên máy chủ cho máy chủ được biết đến với máy khách. Nếu tên máy chủ khả dụng, máy khách PHẢI kiểm tra nó dựa vào danh tính của máy chủ như được trình bày trong thông báo Chứng chỉ của máy chủ, để ngăn chặn các cuộc tấn công trung gian.
Nếu máy khách có thông tin bên ngoài về danh tính dự kiến của máy chủ, kiểm tra tên máy chủ có thể bị bỏ qua. (Ví dụ: máy khách có thể đang kết nối với máy có địa chỉ và tên máy chủ động nhưng máy khách biết chứng chỉ mà máy chủ sẽ xuất hiện.) Trong trường hợp đó, điều quan trọng là thu hẹp phạm vi chứng chỉ có thể chấp nhận càng nhiều càng tốt trong để ngăn chặn con người trong các cuộc tấn công giữa. Trong trường hợp đặc biệt, khách hàng có thể đơn giản bỏ qua danh tính của máy chủ, nhưng phải hiểu rằng điều này khiến kết nối mở để tấn công tích cực.
Nói tóm lại, nó rõ ràng là dành cho việc sử dụng với chứng chỉ X.509 (nó tham chiếu rõ ràng RFC 2459, sau này được thay thế bởi RFC 3280 và 5280: PKI với chứng chỉ X.509).
Có thể có trường hợp cạnh khi bạn đang sử dụng bộ mật mã Kerberos. Việc đối xử với vé dịch vụ Kerberos của máy chủ có thể được coi là có cùng mục đích với chứng chỉ X.509 trong HTTPS thông thường, để xác minh danh tính của bên từ xa. Nó không hoàn toàn phù hợp với các quy tắc của RFC 2818 (mặc dù nó có thể nằm trong phần " Nếu máy khách có thông tin bên ngoài như danh tính dự kiến của máy chủ, kiểm tra tên máy chủ có thể bị bỏ qua. "), Nhưng nó sẽ không hoàn toàn vô lý. Điều này đang được nói, tôi không nghĩ rằng các trình duyệt thông thường hỗ trợ bộ mật mã TLS Kerberos nói chung (một số có thể hỗ trợ Kerberos thông qua xác thực SPNEGO, nhưng điều đó không liên quan). Ngoài ra, điều này cũng sẽ chỉ hoạt động trong một môi trường sử dụng Kerberos phù hợp.
" [Cho] sự an tâm của người tiêu dùng rằng họ đang kết nối với trang web chính xác " thực sự là một trong những yêu cầu chính để đảm bảo liên lạc giữa họ và máy chủ của bạn. Sử dụng chứng chỉ mà họ có thể xác minh, với các quy ước đặt tên thích hợp (RFC 2818 hoặc gần đây hơn RFC 6125).