Перейти к содержанию
Fire Monkey от А до Я
  • 0

Внезапно перестал работать TNetHTTPClient


Android

Вопрос

Есть мобильное приложение (написанное на Берлине), которое через TNetHTTPClient обращается к https сайту (просто Get).

На сайте сертификат Let's Encrypt (срок истекает через месяц).

На Андроиде 9 всё норм, а на Андроиде 4 вдруг ни с того, ни с сего стал вдруг выдавать ошибку 'Server Certificate Invalid or not present' (хотя еще совсем недавно получал корректно всё с сайта). При попытке выставить Accepted := True; в событии OnValidateServerCertificate получаю ошибку "Error getting Server Certificate".

При этом если обращаться к сайтам не с сертификатом Let's Encrypt, то и 4-й Андроид работает. Дело в бесплатном Let's Encrypt?

Ссылка на комментарий

Рекомендуемые сообщения

  • 0

UPD:

То есть ошибки  'Server Certificate Invalid or not present' и "Error getting Server Certificate" выдает Windows 7, а Андроид 4 дает такую:

javax.net.ssl.SSLHandshakeException: javax.net.ssl.SSLProtocolException: SSL handshake aborted: ssl=0x70b758e0: Failure in SSL library, usually a protocol error

error:14077410:SSL routines:SSL23_GET_SERVER_HELLO:sslv3 alert handshake failure (external/openssl/ssl/s23_clnt.c:741 0x74055cf8:0x00000000)

Но с сайтами не с сертификатом Let's encrypt и Windows 7, и Андроид 4 работают корректно

Ссылка на комментарий
  • 0
В 15.12.2020 в 12:30, Android сказал:

Есть мобильное приложение (написанное на Берлине), которое через TNetHTTPClient обращается к https сайту (просто Get).

На сайте сертификат Let's Encrypt (срок истекает через месяц).

На Андроиде 9 всё норм, а на Андроиде 4 вдруг ни с того, ни с сего стал вдруг выдавать ошибку 'Server Certificate Invalid or not present' (хотя еще совсем недавно получал корректно всё с сайта). При попытке выставить Accepted := True; в событии OnValidateServerCertificate получаю ошибку "Error getting Server Certificate".

При этом если обращаться к сайтам не с сертификатом Let's Encrypt, то и 4-й Андроид работает. Дело в бесплатном Let's Encrypt?

LetsEncrypt не будет больше работать на Андроиде менее 6 версии. Гугл больше не подписывает их корневые сертификаты. 

Ссылка на комментарий
  • 0
1 минуту назад, Vitaldj сказал:

LetsEncrypt не будет больше работать на Андроиде менее 6 версии. Гугл больше не подписывает их корневые сертификаты. 

Интересная информация, спасибо. Где можно найти список таких "проблемных" сертификатов? Есть гарантия, что установив платный сертфикат, мы от проблемы избавимся?

Ссылка на комментарий
  • 0
35 минут назад, Android сказал:

Интересная информация, спасибо. Где можно найти список таких "проблемных" сертификатов? Есть гарантия, что установив платный сертфикат, мы от проблемы избавимся?

Вроде, да. Такая проблема только с LetsEncrypt. Но вы же понимаете, что с андроидом 4 никто уже ничего не гарантирует.

Ссылка на комментарий

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить на вопрос...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

  • Последние посетители   0 пользователей онлайн

    • Ни одного зарегистрированного пользователя не просматривает данную страницу
×
×
  • Создать...