Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Delphi [игнор отключен] [закрыт для гостей] / InDy Error connecting with SSL - TLS 1.2 / 18 сообщений из 18, страница 1 из 1
14.09.2020, 11:31
    #39998240
X11
X11
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
InDy Error connecting with SSL - TLS 1.2
Хочу с сервера Телеграм скачать аватарку

Код: pascal
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
...
fidSSLIOHandlerSocketOpenSSL.SSLOptions.SSLVersions := [sslvTLSv1_2];


  try
    fIdHTTP.IOHandler := fidSSLIOHandlerSocketOpenSSL;
    fIdHTTP.HandleRedirects := True;
    fIdHTTP.AllowCookies    := True;


    try
      fidHTTP.Get(image_url, img_stream);// ошибка



получаю ошибку
Project raised exception class EIdOSSLUnderlyingCryptoError with message 'Error connecting with SSL.
error:1409442E:SSL routines:SSL3_READ_BYTES:tlsv1 alert protocol version'.


P.S.
т.е. TLS 1.2 они поддерживаютNot all SSL/TLS is equal
We support any SSL/TLS version TLS1.2 and up for your webhook. This means that SSLV2/3/TLS1.0/TSL1.1 are NOT supported, due to security issues associated with those older versions.

Скачал (отсюда https://indy.fulgan.com/SSL/) архив "openssl-1.0.2u-i386-win32.zip", заменил в папке проекта две DLLки - не помогает.
...
Рейтинг: 0 / 0
14.09.2020, 11:44
    #39998247
X11
X11
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
InDy Error connecting with SSL - TLS 1.2
В общем, переделал код на использование THTTPClient

Код: pascal
1.
2.
3.
4.
5.
6.
7.
  HttpClient := THTTPClient.Create;
  HttpClient.SecureProtocols := [THTTPSecureProtocol.TLS12];

  try

    try
      HttpClient.get(image_url, img_stream);
...
Рейтинг: 0 / 0
14.09.2020, 11:53
    #39998252
X11
X11
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
InDy Error connecting with SSL - TLS 1.2
В общем, я так подозреваю, что проблема была с теми двумя DLLками.
Но перепроверять уже лень. Тем более, что THTTPClient не требует никаких доп. dll, работает без них.
...
Рейтинг: 0 / 0
14.09.2020, 12:12
    #39998261
zedxxx
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
InDy Error connecting with SSL - TLS 1.2
X11, THTTPClient построен на WinAPI, соостветственно, использует системные библиотеки. Т.е. если вдруг вы захотите запустить ваш код на WinXP, то точно так же ничего не получится. А вот Indy с нормальными dll будет работать даже там. Если что, официальные dll для Indy лежат тут: https://github.com/IndySockets/OpenSSL-Binaries
...
Рейтинг: 0 / 0
14.09.2020, 12:57
    #39998280
X11
X11
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
InDy Error connecting with SSL - TLS 1.2
zedxxx,пишут, что кросплатформа

https://webdelphi.ru/2019/02/http-client-api-v-delphi/
...
Рейтинг: 0 / 0
14.09.2020, 13:00
    #39998283
_Vasilisk_
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
InDy Error connecting with SSL - TLS 1.2
X11
,пишут, что кросплатформа
Исходники смотрел? Может оказаться, что куча IFDEF для разных платформ
...
Рейтинг: 0 / 0
14.09.2020, 13:07
    #39998286
X11
X11
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
InDy Error connecting with SSL - TLS 1.2
Не смотрел.
Не само собой, что должно быть куча ifdef, иначе как по другому?
...
Рейтинг: 0 / 0
14.09.2020, 13:14
    #39998289
Dmitry Arefiev
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
InDy Error connecting with SSL - TLS 1.2
THttpClient кросcплатформенный. Для разных платформ используются различные родные API:
* Windows - WinHttp
* iOS, macOS - NSURLSession
* Linux - libcurl
* Android - JHttpURLConnection
...
Рейтинг: 0 / 0
14.09.2020, 13:27
    #39998302
_Vasilisk_
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
InDy Error connecting with SSL - TLS 1.2
X11
иначе как по другому?
Иначе использовать чистые сокеты, а уже в модуле, который импортирует низкоуровневые функции указывать что откуда брать
...
Рейтинг: 0 / 0
14.09.2020, 13:41
    #39998313
X11
X11
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
InDy Error connecting with SSL - TLS 1.2
В общем, даже Telegram-бот, который тоже использует THTTPClient, не стартует на WinXP.
...
Рейтинг: 0 / 0
14.09.2020, 14:25
    #39998335
zedxxx
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
InDy Error connecting with SSL - TLS 1.2
X11
который тоже использует THTTPClient, не стартует на WinXP.

Так да, об этом и разговор. Лучше взять Indy или ICS, которые не зависят от системных библиотек и быть уверенным, что работать будет на любой винде, а не только на крайней с обновами.
...
Рейтинг: 0 / 0
14.09.2020, 14:28
    #39998338
X11
X11
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
InDy Error connecting with SSL - TLS 1.2
Библиотека для Телеграм-бота не моя, поэтому я ничего заменить не могу. Ну не будет работать на Win XP штошшш
...
Рейтинг: 0 / 0
14.09.2020, 14:33
    #39998344
rgreat
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
InDy Error connecting with SSL - TLS 1.2
zedxxx,

Все так, пока не надо HTTPS.

А с HTTPS на INDY все мутно.
...
Рейтинг: 0 / 0
14.09.2020, 15:24
    #39998364
zedxxx
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
InDy Error connecting with SSL - TLS 1.2
rgreat, Если речь не про http/2, то обычно там всё Ок.
...
Рейтинг: 0 / 0
27.01.2021, 12:09
    #40039279
Mark V. Lobanov
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
InDy Error connecting with SSL - TLS 1.2
rgreat

Все так, пока не надо HTTPS.
А с HTTPS на INDY все мутно.


А в чем муть, если не пытаться прыгать выше TLS 1.2 как надо ТС ?
...
Рейтинг: 0 / 0
27.01.2021, 12:49
    #40039295
s62
s62
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
InDy Error connecting with SSL - TLS 1.2
X11
В общем, даже Telegram-бот, который тоже использует THTTPClient, не стартует на WinXP.
А где есть этот THTTPClient? У меня в Delphi 10.3.3 CE я нашел в палитре и справке только TNetHTTPClient. Поиск в интернете тоже привел пока только к этому компоненту.
p.s. нет, есть в интернете https://webdelphi.ru/glossary/thttpclient/ похоже, что это в более старых версиях что ли.
...
Рейтинг: 0 / 0
27.01.2021, 14:03
    #40039343
zedxxx
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
InDy Error connecting with SSL - TLS 1.2
...
Рейтинг: 0 / 0
27.01.2021, 15:03
    #40039374
s62
s62
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
InDy Error connecting with SSL - TLS 1.2
zedxxx,
спасибо, наверное опечатался, когда искал, почему-то указатель справки не находил его, а сейчас находит :)
Понятно, TNetHTTPClient и работает через этот класс:
Код: pascal
1.
2.
3.
4.
TNetHTTPClient = class(TComponent)
  private
    FHttpClient: THTTPClient;
...



Код: pascal
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
function TNetHTTPClient.Get(const AURL: string; const AResponseContent: TStream;
  const AHeaders: TNetHeaders): IHTTPResponse;
begin
  try
    if FAsynchronous then
      Result := FHttpClient.BeginGet(DoOnAsyncRequestCompleted, AURL, AResponseContent, AHeaders) as IHTTPResponse
    else
    begin
      Result := FHttpClient.Get(AURL, AResponseContent, AHeaders);
...
...
Рейтинг: 0 / 0
Форумы / Delphi [игнор отключен] [закрыт для гостей] / InDy Error connecting with SSL - TLS 1.2 / 18 сообщений из 18, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]