Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Netzwerke (https://www.delphipraxis.net/14-netzwerke/)
-   -   Indy10 SSL unter Android: Kann kein Root-Zertifikat laden... (https://www.delphipraxis.net/192311-indy10-ssl-unter-android-kann-kein-root-zertifikat-laden.html)

idontknow 7. Apr 2017 12:52

Indy10 SSL unter Android: Kann kein Root-Zertifikat laden...
 
Ich verzweifele hier gerade beim Versuch, eine sichere SSL-Übertragung zwischen iOS/Android/Windows-FMX-Client und Windows-VCL-Indy10-Server auf die Beine zu stellen...

Beim Versuch, ein Root-Zertifikat unter Android einzubinden, habe ich gerade seltsame Probleme:
Unter "Bereitsstellung" habe ich das Zertifikat "cacert.pem" im Remotepfad "assets\internal" eingebunden.
Wenn ich (siehe Source-Schnipsel) mit FileExists nachschaue, dann sehe ich die Datei. Ich kann das File auch in eine Stringlist laden und mir anzeigen lassen.
Wenn ich allerdings den IdSSLIoHandler dazu anweise, die Datei zu öffnen, dann bekomme ich diese Fehlermeldung:

Erste Gelegenheit für Exception bei $61B1B8F3. Exception-Klasse EIdOSSLLoadingRootCertError mit Meldung
'Stammzertifikat konnte nicht geladen werden.
error:0B064071:x509 certificate routines:ADD_CERT_DIR:invalid directory'.
Prozess Project_FMX_Client.apk (32456)


Hat jemand eine Idee?

Hier mein Quellcode-Auszug:

Delphi-Quellcode:
CaCertFile := TPath.Combine(TPath.GetDocumentsPath, 'cacert.pem');
IdSSLIOHandlerSocketOpenSSL.SSLOptions.RootCertFile := CaCertFile; // Stammzertifikat laden
Info('Root=' + CaCertFile); // '/data/data/com.embarcadero.Project_FMX_Client/files/cacert.pem'
Info('Datei existiert = ' + IntToStr(Integer(FileExists(CaCertFile)))); // gibt 1 aus
Anmerkung: Info(Text) gibt nur Text in einem Memo aus.

bra 7. Apr 2017 13:06

AW: Indy10 SSL unter Android: Kann kein Root-Zertifikat laden...
 
Ergänze mal das:

Delphi-Quellcode:
IdSSLIOHandlerSocketOpenSSL.SSLOptions.VerifyDirs := ExtractFilePath(CaCertFile);

Union 7. Apr 2017 13:12

AW: Indy10 SSL unter Android: Kann kein Root-Zertifikat laden...
 
Bist Du sicher dass sich die Fehlermeldung auf das Zertifikat bezieht und nicht auf die SSL-Library?


Alle Zeitangaben in WEZ +1. Es ist jetzt 23:43 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz