2016-01-22 98 views
15

Tôi đang cập nhật triển khai TLS 1.0 được nhúng vào TLS 1.2 (thiết bị có dung lượng mã 1MB trở xuống và không có hệ điều hành). Tại thời điểm này, tôi có AES-128 và AES-256 CBC mật mã làm việc với SHA-1 và SHA-256 tiêu hóa cho một thực hiện tối thiểu. Thư viện không thể thương lượng kết nối SSLv2, SSLv3, TLS 1.0 hoặc TLS 1.1.Máy chủ/máy khách TLS 1.2 có thể nhận được chỉ bằng TLS_RSA_WITH_AES_128_CBC_SHA không?

Tôi cảm thấy điều này là đủ, với điều kiện RFC 5246 tuyên bố, "TLS_RSA_WITH_AES_128_CBC_SHA hiện là bắt buộc để triển khai bộ mã hóa".

Tuy nhiên, khi tôi đọc các bài đăng khác nhau trên blog bảo mật, tôi thấy các đề xuất sẽ khiến người dùng vô hiệu hóa bộ đó và (ví dụ) chỉ cho phép các biến thể ECDHE_RSA hoặc DHE_RSA. Vì vậy, câu hỏi của tôi là liệu các thiết bị sử dụng thư viện của chúng tôi sẽ tương thích với các trình duyệt web hiện đại (như một máy chủ) và các máy chủ https/smtps/pop hiện đại (với tư cách là khách hàng) hay không. Có máy khách/máy chủ TLS 1.2 không thể thương lượng kết nối TLS_RSA_WITH_AES_128_CBC_SHA không?

+0

Phụ thuộc vào những gì bạn xác định "nhận được bởi". Tôi không phải là chuyên gia bảo mật. Nhưng tôi có thể ngửi thấy rằng "AES_128_CBC" không đủ an toàn. Điều đó nói rằng, tôi sẽ cảm thấy thoải mái hơn với một cái gì đó như "AES_256_GCM". Nếu đó thực sự là trường hợp, nếu bạn là khách hàng, có nguy cơ mật mã không được máy chủ hỗ trợ. Nếu bạn là máy chủ, bạn có thể hỗ trợ nó. Nhưng bạn muốn suy nghĩ kỹ về an ninh. – neurite

+0

Có nhiều máy chủ email không hỗ trợ TLS 1.2 đúng cách. – fcnorman

Trả lời

1

Tôi không chắc chắn có nhiều máy chủ hỗ trợ TLS không thể thương lượng TLS_RSA_WITH_AES_128_CBC_SHA với TLSv1.2 vì nó là bộ mã hoá bắt buộc cho TLSv1.2.

Tuy nhiên có một điều cần lưu ý:

  • TLS_RSA_WITH_3DES_EDE_CBC_SHA là bắt buộc đối với TLSv1.0TLSv1.1 nhưng vì lý do an ninh nó không còn được hỗ trợ bởi tất cả các máy chủ,
  • Mozilla khuyến cáo (và nó không phải là người duy nhất) ủng hộ AES128 thay vì AES256,
  • Bí mật chuyển tiếp hoàn hảo (PFS), được DHE hoặc ECDHE cho phép hiện là tính năng không thể có.

Vì vậy, nếu tôi có thể cung cấp cho bạn 4 bộ mã hoá (cùng số hơn bạn có), tôi sẽ nói những cái từ mạnh đến yếu nhất:

  1. TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256
  2. TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA
  3. TLS_RSA_WITH_AES_128_GCM_SHA256
  4. TLS_RSA_WITH_AES_128_CBC_SHA

Tôi sẽ nói rằng 4 bộ mã hóa này mang lại đủ bảo mật và khả năng tương thích với các máy chủ TLSv1.2.

Bây giờ câu hỏi chỉ hỗ trợ TLSv1.2 là một câu hỏi khác, nhưng nếu bạn có đủ dung lượng, tôi khuyên bạn thêm TLSv1.0 quá (TLSv1.1 không cung cấp khả năng tương thích bổ sung).

PS: Lý do tại sao AES128 được ưa chuộng thay vì AES256 là một số người nghĩ rằng an ninh bổ sung thêm bởi AES256 là (bây giờ) và vô giá trị mà AES128 có vẻ là khả năng chống các cuộc tấn công thời gian.

+0

Cảm ơn, đây là loại câu trả lời tôi đang tìm kiếm. Biết 'TLS_RSA_WITH_3DES_EDE_CBC_SHA' là bắt buộc trong TLS 1.0 và 1.1, nhưng bị vô hiệu vì lý do bảo mật là tiền lệ tốt cho những gì có thể xảy ra với TLS 1.2. – tomlogic

1

"Vì vậy, câu hỏi của tôi là liệu các thiết bị sử dụng thư viện của chúng tôi sẽ tương thích với các trình duyệt web hiện đại (như máy chủ) và các máy chủ https/smtps/pop hiện đại (là khách hàng).2 khách hàng/máy chủ thất bại trong việc đàm phán một kết nối TLS_RSA_WITH_AES_128_CBC_SHA "

Có có triển khai nhiều mà thất bại

chung nhất:?.

  1. Khách hàng vẫn gửi một SSL2.0 Khách hàng Xin chào
  2. Máy khách/Máy chủ chỉ hỗ trợ bộ mã hóa PFS
  3. Máy chủ vẫn không hỗ trợ TLS 1.2
  4. Máy chủ không còn hỗ trợ TLS 1. 2 - kể từ khi những người ủng hộ chỉ TLS 1,3

Tôi đề nghị là:

  • cũng hỗ trợ TLS 1.3 (không phải là khó để thực hiện, tôi đã làm nó)
  • cũng hỗ trợ DHE

Hoặc sử dụng một công cụ/trang web như https://www.ssllabs.com/ssltest/index.html và kiểm tra tính tương thích/bảo mật của máy chủ của bạn cho đến khi nó đủ cho bạn.

+0

Tôi thấy rằng TLS 1.3 vẫn là bản nháp đang hoạt động, nhưng chắc chắn nó có thể cung cấp hướng dẫn về mật mã để hỗ trợ cho đến khi tiêu chuẩn đã được phê duyệt. Tôi sẽ ngạc nhiên khi thấy các máy khách/máy chủ hỗ trợ TLS 1.3 nhưng không thể thương lượng một kết nối TLS 1.2 cho khả năng tương thích ngược, có lẽ với sự hỗ trợ mật mã giới hạn. – tomlogic

Các vấn đề liên quan