SSL Keystore und Truststore erstellen

  • 2 Antworten
  • Letztes Antwortdatum
A

axx

Neues Mitglied
0
Hallo,

ich beschäftige mich schon ein bisschen länger mit der Android Entwicklung und möchte nun aber in einer App eine sichere Verbindung zu einem Server aufbauen.

Auf dem Gebiet kenne ich mich noch nicht so gut aus und habe daher erst einmal ein wenig recherchiert und bin dabei auf folgendes Tutorial gestoßen:
https://blogs.oracle.com/lmalventosa/entry/using_the_ssl_tls_based

Das ganze funktioniert auch.

Jedoch geht das nach meinem Verständnis nur für einen Server mit einem Client (dem man vertraut), da hier Client und Server denselben private und Public Key verwenden. Wenn ich das auf einen Server und viele Clients (Nutzer meiner App) anwende, hat aber ja jeder Client den private Key und könnte somit ja auch den Verkehr von anderen Nutzern lesen was ich nicht möchte. Ist das soweit korrekt?

Falls das alles so stimmt wie ich mir das denke müsste ich beim ersten Start der App einen eigenen Truststore und Keystore speziell für diesen Nutzer erstellen und diesen Public Key dann (verschlüsselt mit dem Public Key des Servers) an den Server schicken. Wie mache ich das?

Ich hoffe hier kann mir jemand weiterhelfen oder vielleicht auf brauchbare Literatur/Tutorials verlinken. :)

Edit:
Gerade habe ich gelesen, dass Android gar kein RMI unterstützt, stimmt das? Ich Idiot habe bisher immer nur auf einer Konsolenanwendung als Client getestet.
 
Zuletzt bearbeitet:
Von sich aus kennt das Android Java kein RMI.
Du müsstest schon deinen RMI Stack selber mitbringen.
 
Schade. :(

Was kann man sonst verwenden außer Sockets oder REST? Ich würde ungern mein eigenes Protokoll für die Sockets schreiben wollen, aber andererseits muss ich teilweise auch auf die Anfragen zweier Clients synchronisiert Antworten können und das geht mit REST so ja nicht (außer durch polling).
 

Ähnliche Themen

5
Antworten
0
Aufrufe
1.300
586920
5
W
Antworten
2
Aufrufe
893
rene3006
R
koje71
Antworten
0
Aufrufe
172
koje71
koje71
Zurück
Oben Unten