Einzelnen Beitrag anzeigen

Delphi.Narium

Registriert seit: 27. Nov 2017
2.508 Beiträge
 
Delphi 7 Professional
 
#13

AW: TIDHTTP - Open SSL - TLS

  Alt 14. Apr 2020, 16:14
Wenn ich es recht sehe, kommt alles mit Result = 1, mit sslvSSLv23 zurecht.
Result = 0 müsste bedeuten, dass hier sslvSSLv2 auszuwählen wäre.

Die Ermittlung der SSL-Version solltest Du immer auf das Rootverzeichnis (heißt das so) machen, also google.de, image03.conrad.com, mailing.dhl.de ... Damit verhinderst Du (meistens), dass Du über einen Fehler 403 "stolperst", weil Du zwar die SSL-Version ermitteln konntest, aber anschließende Fehler Dich doch wieder in die Fehlerbehandlung "jagen".
Aber: Fehler 403 heißt auch, dass die SSL-Version ermittelt werden konnte. Fehler 403 setzt u. a. voraus, dass Client und Server sich auf eine SSL-Version einigen konnten und erst nach dieser Einigung stellt der Server fest, dass Du die angeforderte Resource (mangels Zugriffsrechten) nicht erhalten darfst. Bei Fehler 404 verhält es sich analog, da gibt es dann die angeforderte Resource halt nicht.

Das bisherige Ergebnis lässt darauf schließen, dass Du "nur" mit images.trckacbm.com ein Problem hast, die anderen funktionieren alle.
Code:
https://www.ionos.de/ --> TLS 1.2
https://www.google.de/ --> TLS 1.0, TLS 1.1, TLS 1.2
https://www.delphipraxis.net/ --> TLS 1.0, TLS 1.1, TLS 1.2
https://images.trckacbm.com/ --> TLS 1.1, TLS 1.2
https://image03.conrad.com/ --> TLS 1.2
https://image.communication.geocaching.com/ --> TLS 1.2
https://newsletter.christ.de/ --> TLS 1.0, TLS 1.1, TLS 1.2
https://mailing.dhl.de/ --> TLS 1.0, TLS 1.1, TLS 1.2
Der einzige Unterschied: Die funktionierenden unterstützen entweder nur TLS 1.2 oder TLS 1.0, TLS 1.1 und TLS 1.2 das "Problemkind" aber "nur" TLS 1.1 und TLS 1.2.

Ausgehend vom Quelltext in der Unit IdSSLOpenSSL entspricht sslvSSLv23 demhier: [sslvSSLv2,sslvSSLv3,sslvTLSv1,sslvTLSv1_1,sslvTLSv 1_2]
Damit sollte eigentlich bei allen als SSL-Version sslvSSLv23 herauskommen.

Probier' bitte Dein "Problemkind" mal mit expliziter Angabe der SSL-Version sslvTLSv1_1 aus, bei Misserfolg mit expliziter Angabe von sslvTLSv1_2.

Wenn's damit nicht geht, weiß ich auch nicht mehr weiter.
Code:
Delphi 7
Indy        10.6.2.0 
libeay32.dll 1.0.2.12
ssleay32.dll 1.0.2.12
(ja, alles schon etwas antiquiert, aber funktioniert)

Ergebnis für: https://trckacbm.com/
sslvSSLv2  : Error getting SSL method.
sslvSSLv23 : HTTP/1.1 404 Not Found
sslvSSLv3  : Error connecting with SSL. error:14094410:SSL routines:ssl3_read_bytes:sslv3 alert handshake failure
sslvTLSv1  : HTTP/1.1 404 Not Found
sslvTLSv1_1: HTTP/1.1 404 Not Found
sslvTLSv1_2: HTTP/1.1 404 Not Found
Eventuell mal prüfen, ob Du dort https://www.delphipraxis.net/1453894-post74.html was aktuelleres findest, als momentan bei Dir vorhanden.
  Mit Zitat antworten Zitat