AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Android - SSL-Verschlüsselung

Ein Thema von AuronTLG · begonnen am 8. Dez 2021 · letzter Beitrag vom 20. Apr 2022
Antwort Antwort
AuronTLG

Registriert seit: 2. Mai 2018
Ort: Marburg
247 Beiträge
 
Delphi 12 Athens
 
#1

AW: Android - SLL-Verschlüsselung

  Alt 8. Dez 2021, 13:19
Da ich gerade dabei bin: Welche Bibliotheken sollte man dann für dasselbe in IOS nehmen? Der Link von Embarcadero scheint hoffnungslos veraltet zu sein.
  Mit Zitat antworten Zitat
philipp.hofmann

Registriert seit: 21. Mär 2012
Ort: Hannover
866 Beiträge
 
Delphi 10.4 Sydney
 
#2

AW: Android - SLL-Verschlüsselung

  Alt 8. Dez 2021, 13:26
Schick mir deine E-Mail-Adresse, dann sende ich dir die iOS-Libs. Da habe ich mir nicht notiert, woher ich sie habe.
  Mit Zitat antworten Zitat
AuronTLG

Registriert seit: 2. Mai 2018
Ort: Marburg
247 Beiträge
 
Delphi 12 Athens
 
#3

AW: Android - SSL-Verschlüsselung

  Alt 13. Dez 2021, 08:15
Hm, ist bei IOS noch irgendwas zu beachten?
Ich bekomme da beim SSL-Verbinden eine Zugriffsverletzung, die ich nicht weg bekomme.
Laut Embarcadero soll man die Libraries einfach in den Debug/Release-Ordner schmeißen, jedoch ist sind die ganzen Angaben von denen so veraltet, dass ich dem etwas misstraue.
  Mit Zitat antworten Zitat
philipp.hofmann

Registriert seit: 21. Mär 2012
Ort: Hannover
866 Beiträge
 
Delphi 10.4 Sydney
 
#4

AW: Android - SSL-Verschlüsselung

  Alt 13. Dez 2021, 12:02
Das mit dem in den Debug/Release-Pfad packen, ist soweit richtig.
Manchmal braucht man für iOS noch bestimmte Capabilities im developer.apple.com-Account, damit etwas geht.
Bei mir funktioniert es unter iOS auf jeden Fall und der auf iOS reduzierte Initialisierungscode ist ja denkbar knapp:

Delphi-Quellcode:
procedure TicTrainerF.initSSL();
begin
  if (not sslInited) then
  begin
    sslInited:=true;
    IdSSLOpenSSLHeaders.Load();
    mlog.info('SSL-Version: ' + OpenSSLVersion);
  end;
end;
Am Besten fragst du mal im englischen Forum nach (https://en.delphipraxis.net/), dort liest sowohl der Indy-Entwickler Remy mit, als auch Dave Nottage.
  Mit Zitat antworten Zitat
AuronTLG

Registriert seit: 2. Mai 2018
Ort: Marburg
247 Beiträge
 
Delphi 12 Athens
 
#5

AW: Android - SSL-Verschlüsselung

  Alt 14. Dez 2021, 11:29
Das mit dem englischen Delphipraxis werde ich machen, sobald ich das mit dem Account rübernehmen hinbekommen habe... hab mein Passwort wie gefordert resetted, aber es kommt keine Email an, auch nicht im Spam...

In der Zwischenzeit habe ich mal per Debugger geschaut, wo es denn eigentlich knallt.
Ergebnis: das Connect vom IDFTP löst es oberflächlich aus, ist aber eigentlich tief drin, genauer gesagt in der Unit "IdSSLOpenSSL" in der Methode "LoadOpenSSLLibrary" beim Aufruf von "OpenSSL_add_all_ciphers", was eine library-Methode ist.

Meine Vermutung wäre ja, dass noch irgendetwas beim statischen Laden der libssl.a und libcrypto.a schiefgeht oder eventuell irgendein Versionsschwachsinn.
Ich verwende momentan Delphi 10.4.2 und einer IOS 14.5 SDK.
  Mit Zitat antworten Zitat
AuronTLG

Registriert seit: 2. Mai 2018
Ort: Marburg
247 Beiträge
 
Delphi 12 Athens
 
#6

AW: Android - SSL-Verschlüsselung

  Alt 4. Apr 2022, 16:53
Ich hatte das Thema erstmal beiseite gelegt, da ich anderes zu tun hatte, habe es jetzt aber wieder aufgegriffen.

Ich bin mittlerweile auf Delphi 11 hoch und das Problem tritt leider immer noch genauso auf wie im obigen Post beschrieben.

Deswegen wollte ich hier nochmal nachfragen, ob irgendwer vielleicht einen entscheidenden Hinweis dafür hat, wie ich die SSL-Verschlüsselung auf IOS zum Laufen bekomme.
Ich bin mir bewusst, dass es andere Drittanbieter-Komponenten gibt, die das problemlos erledigen, nur wäre es mir am liebsten, wenn ich durchgängig den IDFTP dafür verwenden könnte, insbesondere, da es auf Android problemlos funktioniert...
  Mit Zitat antworten Zitat
oakley

Registriert seit: 15. Aug 2005
287 Beiträge
 
#7

AW: Android - SSL-Verschlüsselung

  Alt 19. Apr 2022, 19:18
Hallo,

sorry dass ich mich hier einklinke aber ich habe das gleiche Problem unter Android in Delphi 11.

Die libssl.so und libcrypto.so habe ich ins Android/Release Verzeichnis gepackt und stelle beide Dateien im Verzeichnis library\lib\armeabi-v7a\ bereit.

Die Prozedur initssl habe ich auf das Notwendigste für Android gekürzt. Wenn ich jetzt zur dementsprechenden https Adresse posten möchte, bekomme ich, dass die SSL Bibliothek nicht geladen werden konnte.

Delphi-Quellcode:
var help2: String;
begin
  if (not sslInited) then
  begin
    sslInited:=true;
    IdOpenSSLSetLibPath(String.Empty);
    IdSSLOpenSSLHeaders.Load();
    help2:=IdSSLOpenSSLHeaders.WhichFailedToLoad();
    if (length(help2) > 0) then
    begin
      IdOpenSSLSetLibPath(IncludeTrailingPathDelimiter(TPath.GetLibraryPath));
      IdSSLOpenSSLHeaders.Load();
      help2:=IdSSLOpenSSLHeaders.WhichFailedToLoad();
      if (length(help2) > 0) then
      begin
        IdOpenSSLSetLibPath(IncludeTrailingPathDelimiter(TPath.GetDocumentsPath));
        IdSSLOpenSSLHeaders.Load();
        help2:=IdSSLOpenSSLHeaders.WhichFailedToLoad();
      end;
    end;
  end;
end;
Delphi-Quellcode:
var H: TIdHttp;
    SS: TStringStream;
    IdSSL : TIdSSLIOHandlerSocketOpenSSL;
begin
  initssl;
  H := TIdHttp.Create(nil);
  idSSL := TIdSSLIOHandlerSocketOpenSSL.Create(H);
  idSSL.SSLOptions.Method := sslvTLSv1_2;
  idSSL.SSLOptions.SSLVersions := [sslvTLSv1_2];
  idSSL.SSLOptions.Mode := sslmUnassigned;
  idSSL.SSLOptions.VerifyMode := [];
  idSSL.SSLOptions.VerifyDepth := 0;
  H.IOHandler := IdSSL;

  try
    SS := TStringStream.Create;
    try
      H.Post(--> hier kommt die https URL,SS);
      ShowMessage(SS.DataString);
    finally SS.Free;
    end;
  finally H.Free;
  end;

Geändert von oakley (19. Apr 2022 um 20:01 Uhr)
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 03:21 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