Client Server Kommunikation https mit Zertifikaten

  • Hallo,


    ich versuche gerade eine Kommunikation über https mit Zertifikaten hinzubekommen.



    Leider bekomme ich folgende Fehlermeldung im CatLog:



    Wo mache ich was falsch oder wie muß ich anders machen damit es funktioniert ?


    Danke
    Ralf Kruppa

  • Hallo,
    auch dieses hatte cih schon getestet.
    Dann habe ich folgende Fehlermeldung


    Code
    E/MainActivity: Error in GetData
                                                                                   javax.net.ssl.SSLHandshakeException: java.security.cert.CertPathValidatorException: Trust anchor for certification path not found.


    Ich denke ich muß ihm noch irgendwie das Zertifikat geben, aber wie ?


    Gruß
    Ralf

  • Hallo, igentwie sieht das mit deiner Asynktast komisch aus. habe es noch nicht genau angeschaut.
    hier mal ein Beispiel wo ich eine Bild von einer Https seite lade.

  • HI, auch das habe ioch probiert.
    ICh denke el liegt daran das ich auch ein Client Zertifikat benutze und nicht nur ein Server Zertifikat.
    Dieses Client Zertifikat muß ich ja angeben, nur weiß ich nicht wie.


    Bei deinem Bild ist es zwar eine HTTPS Seite aber hier wirdaber kein Client Zertifikat benötigt.


    Gruß
    Ralf

  • Ich habe auf meinen HOme Server einen eigene PKI mit einen eigenen Server Zertifikat. Dann habe ich entsprechende Client Zertifikate erstellt die mit meinen Root Zertifikat signiert sind. Im Firefox habe ich beispielsweise meine Root Zertifikat eingespielt als Authentiofiezierungstelle und mein Clientzertifikat als Persoen Zertifikt. Damit kann ich per Firefox und https auf die Seite. Das Personen Zertifikat ist dann auch gleichzeitig die Anmeldung auf der Web seite. In der App habe ich nun zwar keine direkte Anmeldung aber der Webserver benötigt das Client Zertifikat zur Authentifizierung.


    Gruß
    Ralf

  • Hi ,


    sorry aber ich habe eine Problem das mit void setSSLSocketFactory umzusetzen.
    Auf der seite ist kein Beispiel und ich bekomme dieses nicht mal ansatzweise umgesetzt.


    Kennst du eine Beispiel in dem ich dann meine Zertifikatsdatei ersetzen muß.


    Gruß
    Ralf

  • https://www.google.de/url?sa=t…Vaw0Rze8swouxfHoULusHhI62

  • Hallo, das installieren des Zertifikates auf dem Handy habe ich schon gemacht . Aber danke nochmal fpür die Infos. Vom Chrom auf dem Handy kann ich die Seite auch mit Zertifikat aufrufen, dann bekomme ich noch mal die Abfrage welches ZErtifikat ich benuzen möche. Da ich nur ein Installiert ahbe habe ich auch nur das einen zur auswahl. Und dann klappt es auch.


    Der Andere Coe ist das ein APP Java Code ?
    Sieht mir mehr wie ein Java vom Windows Server aus .. oder ist das alles gleich ?


    Gruß Ralf

  • Hallo,


    ich habe das mal Probiert sieht soweit eigentlich sehr vielversprechend aus.


    Habe aber zwei Probleme :
    1. ich habe das Zertifikat unter Lokaler Speicher / SD-Karte download liegen. Eigentlich müste es ja unter APP Data in ein Verzeichnis speziell für die APP. Aber wie gebe ich den Pfad an "/sd-kard/dowload/zertifigat.cer" geht leider nicht.


    2. bei der Zeile "CertificateFactory cf = CertificateFactory.getInstance("X.509");" bekomme ich folgenden Fehler "Error:(36, 63) error: unreported exception CertificateException; must be caught or declared to be thrown".


    Gruß
    Ralf

  • Hi, in welchen Format ist dein Zertifikat. Android kann nur ca im binären Format verarbeiten. Dateiendung crt cer. ASCII geht nicht dazu must du es Convertiren vorher sollte es aber unterschrieben sein.
    Unter Linux mit "openssl x509 -inform PEM -outform DER -in CA.pem -out CA.crt"
    Convertiren.
    Dann auf die sd Karte kopieren und mit einem Datei Explorer aufrufen.

  • Das habe ich gemacht.
    In dem Beispiel wird eine crt Datei in der APP geladen, ist das denn nicht die Zertifikatsdatei die er für die Kommunikation nutz ?
    Ich dachte das man die dort angeben muß ?


    In dem Beispiel wird in der Zeit 5 eine crt Datei gelade, das ist doch die die die App nutzen soll, oder ?


    Der Andere Fahler ist in Zeile 3. dort wird scheinbar angemeckert das X.509 ?




    Ich habe mein Zertifikat in allen versionen zur Verfügung, das ist kein Problem.


    Gruß
    Ralf

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!