1. Diese Seite verwendet Cookies. Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies. Weitere Informationen

Hilfe bei der Wahl des richtigen Protokolls

Dieses Thema im Forum "Netzwerkprogrammierung" wurde erstellt von andre, 13. August 2015.

  1. andre

    andre New Member

    Hallo Informatik Kollegen,

    in meinem aktuellen Projekt muss ich eine Datenübertragung zwischen einem iOS-App und einem WildFly Application Server realisieren.
    Da die Wahl des Übertragungsprotokolls zwischen App und Server essentiell für den weiteren Verlauf des Projektes ist, würde ich mich über eure Meinungen freuen.
    Die App soll dabei eingescannte IDs und Prüfsummen an den Server senden, der Server soll darauf hin mit einer Prüfsumme antworten.

    Die Anforderungen an das Protokoll sind also folgende:
    • Es wird nur eine geringe Datengröße übertragen (IDs und Prüfsummen)
    • Keine hohe Auslastung (kein stetiger Datenaustausch)
    • Smartphone initiieren die Verbindung, Server antwortet (Request/Response)
    • Objective-C und Java Unterstützung
    Extrem wichtig sind:
    • Sicherheit (Vertraulichkeit und Authentizität der Nachrichten)
    • hohe Zuverlässigkeit

    Ich würde ein auf offenen Standards basierendes Protokoll einem proprietären vorziehen. Ich hatte überlegt die Kommunikation mittels WebServices zu realisieren. Ich habe in letzter Zeit sehr viel von sogenannten RESTful Webservices gelesen, weiß aber nicht, ob das nicht evtl. etwas oversized für das Projekt ist.

    Über eure Experten Meinung würde ich mich sehr freuen.

    Viele Grüße,
    André
  2. lano

    lano Well-Known Member c-b Experte

    REST mittels Https und OAuth wäre ne Möglichkeit.
  3. andre

    andre New Member

    Danke für die Anregung lano. Ich schaue mir das mal an.
  4. Firefall

    Firefall Well-Known Member c-b Experte

    Grundsätzlich ist REST über HTTPS schon keine schlechte Idee. OAuth finde ich dann wiederum Overkill (was aber auch daran liegt, dass es mir generell nicht sympatisch ist). Falls auch die Authenizität der Clients wichtig ist, kannst du auch mit Client-seitigen Zertifikaten arbeiten. Natürlich müssen die verwendeten Libraries sowas auch unterstüzten.

    Bei Anwendungen wo Sicherheit eine grosse Rolle spielt sollte man sich auf etablierte Lösungen verlassen, insbesondere wenn man nicht selbst Experte ist. Natürlich kann man auch selbst was basteln. Für deine eher kleinen Datenübertragungen ist HTTPS ein ziemlicher Overhead, was aber meiner Meinung nach kein Problem darstellt, wenn du nur wenig Traffic erwartest. Wenn du selbst was bastelst, wirst du sehr schnell Sicherheitsprobleme bekommen. Vertraulichkeit wirst du vielleicht hinkriegen, Authentizität mit etwas mehr Wissen und Aufwand auch, aber dann bist du noch nicht vor Replay-Attacken geschützt...