Verschlüsselung von Kurznachrichten

  • Hallo zusammen,


    ich bin mir nicht sicher, ob dieses Thema nicht doch eher nach 'SMS, MMS, Töne, Logos & Co. ' gehört, ich war der Meinung, es wäre hier besser aufgehoben.


    Also:


    ich arbeite gerade an einer Möglichkeit, Kurznachrichten zu verschlüsseln. Da es hierzu noch keine Spezifikation gibt, muss mans neu erfinden.


    Als Voraussetzungen habe ich bisher:


    - der verwendete Algorithmus muss selektierbar sein
    - abwärtskompatibilität zu Hard- und Software, die das nicht beherrscht
    - Effizienz, d.h. möglichst viel verschlüsselter Inhalt pro Nachricht


    Aktuell denke ich, dass eine Implementierung als UDH-Element zum gewünschten Ziel führt. Ich habe ein Byte als Referenz an den Verschlüsselungsalgorithmus vorgesehen, damit kann ich 136 Byte verschlüsselt transportieren.


    Aber so ganz am Ende damit bin ich noch nicht. Sollte ich eine Referenz auf den Schlüssel mittransportieren? Oder das ganze nicht als eigenes UDH-Element implementieren, sondern als Applikation, die per 'port addressing' angesprochen wird?


    Wäre interessant zu hören, was ihr dazu meint.


    N.

  • Interessantes Thema. Sehr interessant. Wobei ich nicht über UDH gehen würde. Einige SMSCs fummeln da meiner Erfahrung nach im UDH rum und begradigen alles, was sie nicht kennen. Frage mich bitte nicht warum und wieseo. Aber so ist meine Erfahrung.


    Deine Frage zum Schlüssel habe ich nicht verstanden. Also Du hast ein Byte, welches Dir anzeigt welchen Algol Du nehmen willst. Man das sind ja 255 Möglichkeiten, wirklich so viel. ;)
    Was willst Du jetzt aber referenzieren?


    Wie sicher soll das ganze eigentlich sein. Einfach nur "verschlüsselt" oder richtig kryptographisch "sicher".

  • Zitat

    Original geschrieben von Abi99
    Interessantes Thema. Sehr interessant. Wobei ich nicht über UDH gehen würde. Einige SMSCs fummeln da meiner Erfahrung nach im UDH rum und begradigen alles, was sie nicht kennen


    Klingt ja schonmal spannend. Spezielle Verdächtige? Ich würds gern mal ausprobieren.


    Zitat

    Deine Frage zum Schlüssel habe ich nicht verstanden. Also Du hast ein Byte, welches Dir anzeigt welchen Algol Du nehmen willst. Man das sind ja 255 Möglichkeiten, wirklich so viel. ;)
    Was willst Du jetzt aber referenzieren?


    Naja, UDH-typisch halt. Also etwa 0x01 bedeutet 'AES verwenden', 0x02 bedeutet '3DES verwenden'. Wobei ich das höchstwertige Bit dann gerne als 'extension indicator' verwerten wollte, einfach um für Erweiterungen offen zu sein.


    Die Frage war, ob man etwa aus dem verwendeten Schlüssel einen Hashwert bilden und mitschicken sollte. Ich weiss nicht, ob das wirklich sinnvoll ist.


    Zitat

    Wie sicher soll das ganze eigentlich sein. Einfach nur "verschlüsselt" oder richtig kryptographisch "sicher".


    Siehe oben. AES, 3DES, TwoFish, Blowfish etc. Also richtig sicher. PGP habe ich gedanklich verworfen, wegen zu viel Overhead.


    N.

  • Die Vodafone D2 SMSC war das, wenn ich mich recht erinnere. Das war zu der Zeit wo einige Mobiltelefone hängen blieben, wenn man denen "böse" SMS geschickt hat. Vodafone schien da gut zu filtern absichtlich oder unabsichtlich. Keine Ahnung - schon "lang" her. ich würde es auf jeden Fall nicht über UDH oder sonst irgendwas Standard konformes machen, denn dann sieht jedes - ach da ist was in der SMS. Dann probieren wir doch mal.


    An der Aufuählung sehe ich, dass Du einen vorgefertigten Schlüssel nehmen willst. D.h. beide kennen den gleichen De-Kodierungs-Schlüssel. Sehe ich das richtig? Ich bin in Kroptographie nicht so auf dem laufenden. Warum willst Du den Schlüssel als Hash mitschicken?


    Hast Du mal geschaut ob "sichere" GSM Handys nicht auch eine Lösung für SMS besitzen. Ich kann mir nicht vorstellen, dass unser Bundeskanzler zwar sicher GSM reden kann, aber unsicher SMS schreiben soll. Oder ist SMS als Funktion bei diesen Geräten rausgeflogen?

  • Ich bin zwar auch nicht so der Kryptographie-Profi, aber meistens wird das ja so gehandhabt, dass über ein asymmetrisches Verfahren (meist RSA) Schlüssel ausgemacht werden und dann über ein symmetrisches Verfahren (z.B. 3DES) weiter kommuniziert wird. Bei SMS hast du nun aber das Problem, dass die Kommunikation immer aus nur einem "Paket" besteht und du deshalb vorher keine Schlüssel austauschen kannst. Du könntest also entweder nur auf RSA setzen, dann braucht du vorher nur irgendwie die öffentlichen Schlüssel verteilen. Wenn du nur ein symmetrisches Verfahren verwenden willst, muss du vorher mit jedem Kommunikationspartner einen Schlüssel ausmachen und diesen mit ihm irgendwie sicher austauschen (also z.B. persönlich), was ich irgendwie ungeschickt finden würde. Den öffentlichen Schlüssel könnte man hingegen auf seine Website stellen, oder auch unverschlüsselt per SMS schicken, wenn man darauf vertraut, dass diese eine Nachricht nicht manipuliert wird.

  • Zitat

    Original geschrieben von Abi99
    Die Vodafone D2 SMSC war das, wenn ich mich recht erinnere


    Die hab' ich alle durch - bisher keine Probleme.


    Zitat

    Ich würde es auf jeden Fall nicht über UDH oder sonst irgendwas Standard konformes machen, denn dann sieht jedes - ach da ist was in der SMS. Dann probieren wir doch mal.


    Nunja, zumindest so standardkonform, dass es kein empfangesndes Gerät beeinträchtigt, sollte es schon sein. Und wenn mans in den UDH packt sieht ein Gerät, welches das nicht unterstützt, einfach nix.


    Über DCS/PID gehts nicht, mittels 'port addressing' ists irgendwie auch nicht korrekt, weil ich ja keine Applikation adressiere, daher wäre eben UDH der Favorit.


    Und 'security by obscurity' hat ja noch nie funktioniert....


    Zitat

    An der Aufuählung sehe ich, dass Du einen vorgefertigten Schlüssel nehmen willst. D.h. beide kennen den gleichen De-Kodierungs-Schlüssel


    Nein, man könnte auch ein asymmetrisches Schlüsselpaar verwenden. Daher ja ein Deskriptor fürs Verschlüsselungsverfahren.


    Zitat

    Warum willst Du den Schlüssel als Hash mitschicken?


    Um dem Zielsystem zu ermöglichen, aus einer Menge von Schlüsseln den vermutlich korrekten auszuwählen.


    Zitat

    Hast Du mal geschaut ob "sichere" GSM Handys nicht auch eine Lösung für SMS besitzen


    Zu teuer. Viel zu teuer. Die angestrebte Lösung sollte letztendlich jedem ermöglichen, sicher mittels Kurznachrichten zu kommunizieren.


    N.

  • Hi nobbi
    Was du machst klingt spannend. Mich wuerde interessieren, wie der Empfaenger die verschluesselte SMS dann lesen kann. Moechtest du ein Midlet/Symbian Programm schreiben zum dechiffrieren, oder schreibst du einen Teil eines neuen Telefon OS?


    Die Idee mit dem Hashwert ist ganz interessant und streut ein bisschen das Risiko, allerdings kryptografisch sicher wird es IMHO dadurch auch nicht. Bei einer kommunikation wie SMS wuerde ich eher auf eine open/private Key Loesung setzten. Das muss nicht unbedingt PGP sein. Was das bei SMS allerdings fuer Probleme verursacht(reduktion der Nutzdaten etc.) steht auf einem anderen Blatt...
    Cheers Tulamidan

    Galaxy S8 on Oreo (lange ist es her...)

    Pixel 9 XL

  • Zitat

    Original geschrieben von nobbi
    'security by obscurity' hat ja noch nie funktioniert.

    Das ist klar, aber 'security with obsurity' ist meiner Meiung nach immer der 1. Schritt. Da fallen dann schon mal eine Menge Unwissende hinten runter. UDH wäre ganz klar der richtige Weg.


    Zitat

    Original geschrieben von nobbi
    Nein, man könnte auch ein asymmetrisches Schlüsselpaar verwenden.

    Keine Ahnung. Du wirst es wissen, ich fuchse mich da jetzt nicht in die tausend Möglichkeiten ein.


    Zitat

    Original geschrieben von nobbi
    Zu teuer.

    Nein, ich meinte dies in Zusammenhang mit "es gibt noch keinen Standard". Vielleicht haben die da doch was, was man einfach übernehmen könnte. Man muss ja nicht das Rad mehrmals erfinden. Ich weiß eben nicht, wie es bei einem solchen Gerät auf der SMS Seite aussieht.

  • Zitat

    Original geschrieben von tulamidan
    Was du machst klingt spannend. Mich wuerde interessieren, wie der Empfaenger die verschluesselte SMS dann lesen kann. Moechtest du ein Midlet/Symbian Programm schreiben zum dechiffrieren, oder schreibst du einen Teil eines neuen Telefon OS?


    Technisch gesehen ist die Auswahl gross. Alle beteiligten Spezifikationen und Algorithmen sind offen verfügbar, d.h. alles kann implementiert werden.


    Ich selber werde das zum testen erstmal in PDUspy einbauen.


    Zitat


    Die Idee mit dem Hashwert ist ganz interessant und streut ein bisschen das Risiko, allerdings kryptografisch sicher wird es IMHO dadurch auch nicht


    Äh. Was hat der Hashwert mit der kryptographischen Sicherheit zu tun?


    Nur ums nochmal klar zu stellen: VER- und ENTschlüsslt wird mit einem wählbaren Algorithmus (ich habe erstmal AES verwendet), der Schlüssel ist natürlich vom Benutzer auswählbar.


    Der Hashwert hilft nur dem empfangenden System, den Schlüssel zur Entschlüsselung aus der Liste der vorhandenen Schlüssel auszuwählen.


    Asymmetrische Schlüssel hätten auch Charme, allerdings wird der Overhead zur Schlüsselverwaltung IMO zu gross für so eine Low-Bandwidth-Anwendung.


    Man könnte natürlich fixe Keypaare generieren und austauschen, das wäre kein Hindernis. Welchen Algo würdest Du vorschlagen?


    N.

  • Zitat

    Original geschrieben von Abi99
    Nein, ich meinte dies in Zusammenhang mit "es gibt noch keinen Standard". Vielleicht haben die da doch was, was man einfach übernehmen könnte


    Achso. Nein, habe ich recherchiert, so weit das meine Möglichkeiten zulassen. Bisher gibts nix.


    N.

Jetzt mitmachen!

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