Квадратный протокол 3.10 TLS1.2: SSLProtocolException - Наборы шифров не поддерживаются по умолчанию - PullRequest
0 голосов
/ 25 ноября 2018

Я использую okhttp 3.10 для связи с сервером.Все было хорошо, пока обновление TSL не произошло на стороне сервера.Текущая версия TSL на сервере 1.2.С тех пор приложение начало получать исключение SSLProtocol.Я использовал ssllabs , чтобы увидеть включенные комплекты шифров для URL сервера.И заметил, что только TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 и TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384 включены сервером.

Наконец-то я исправил проблему, добавив TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 и TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384 к комплектам шифров в спецификациях соединения клиента okhttp.Нечто похожее на фрагмент ниже

ConnectionSpec spec = new ConnectionSpec.Builder(ConnectionSpec.COMPATIBLE_TLS)
        .tlsVersions(TlsVersion.TLS_1_2, TlsVersion.TLS_1_1, TlsVersion.TLS_1_0)
        .cipherSuites(ENABLED_CIPHERS)
        .build();
okhttpclient.setConnectionSpecs(Collections.singletonList(spec));

Но мне все еще интересно, почему эти два набора шифров не добавляются в спецификации подключения по умолчанию в okhttp?Также это хорошая идея добавить спецификации подключения на стороне клиента?

...