OMEMO

aus Wikipedia, der freien Enzyklopädie
(Weitergeleitet von Omemo)
Wechseln zu: Navigation, Suche
Logo

OMEMO (XEP-0384) ist eine Erweiterung des Extensible Messaging and Presence Protocol (XMPP, „Jabber“) für Multi-Client-Ende-zu-Ende-Verschlüsselung und wurde von Andreas Straub entwickelt. OMEMO benutzt Olm, eine Implementierung des Signal-Protokolls, zum Schlüsselmanagement und um Nachrichten zwischen mehreren Clients zu synchronisieren, selbst wenn davon einige offline sind.[1] Der Name „OMEMO“ ist ein rekursives Akronym für „OMEMO Multi-End Message and Object Encryption“. OMEMO basiert außerdem auf dem Personal Eventing Protocol (PEP, XEP-0163)[2] und bietet Perfect Forward Secrecy sowie glaubhafte Abstreitbarkeit (eng. plausible deniability).

Bedeutung[Bearbeiten | Quelltext bearbeiten]

Die verbreitetste Verschlüsselungslösung für Instant Messaging, Off-the-Record Messaging (OTR), unterstützt zwar Forward Secrecy und glaubhafte Abstreitbarkeit, ist jedoch nicht nutzbar, wenn der Kommunikationspartner offline ist. OpenPGP unterstützt Offline-Nachrichten, jedoch weder Forward Secrecy noch glaubhafte Abstreitbarkeit. Olm und somit auch OMEMO unterstützen sowohl Forward Secrecy und glaubhafte Abstreitbarkeit als auch Offline-Nachrichten.[3][4]

Daneben wurden die existierenden Verschlüsselungslösungen für Instant Messaging wie OTR aufgrund fehlender Integration in das zugrundeliegende Chatprotokoll kritisiert. Entwickler von Empathy, dem offiziellen Messenger der Desktopumgebung Gnome, gaben dies als Grund an, dieses oft gewünschte Feature[5] nicht zu implementieren.[6] Durch seine Integration in das Chatprotokoll ist OMEMO eine Verbesserung in dieser Hinsicht.

Geschichte[Bearbeiten | Quelltext bearbeiten]

Das Protokoll wurde 2015 von Andreas Straub als Google-Summer-of-Code-Projekt entwickelt und implementiert. Ziel des Projekts war es, ein Axolotl-basiertes Multi-Ende-zu-Multi-Ende-Verschlüsselungsschema in einem XMPP-basierten Instant Messaging Client für Android, Conversations, zu implementieren. Es wurde im Herbst 2015 bei Conversations eingeführt, bei der XMPP Standards Foundation (XSF) als XMPP Extension Protocol (XEP) vorgeschlagen und als XEP-0384 im Dezember 2016 akzeptiert.[7]

Seit September 2016 nutzt die OMEMO Spezifikation nicht mehr das Signal-Protokoll, sondern die eigens für das Matrix-Netzwerkprotokoll geschriebene Implementierung Olm.[8] Allerdings muss man hinzufügen, dass alle existierenden Implementationen noch immer auf der Signal Bibliotheken basieren.

Im Oktober 2015 verkündete das ChatSecure-Projekt, dass es seinen verschlüsselnden Instant Messenger auf dem Conversations-Kern aufbauen, und an OMEMO-Unterstützung für eine iOS-Version arbeiten will.[9] Diese OMEMO-Unterstützung steht seit Januar 2017 offiziell zur Verfügung.[10]

Eine erste experimentelle Version des OMEMO-Plugins für den plattformübergreifenden XMPP-Client Gajim wurde am 26. Dezember 2015 veröffentlicht.[11]

Client-Unterstützung[Bearbeiten | Quelltext bearbeiten]

Library-Unterstützung[Bearbeiten | Quelltext bearbeiten]

  • Smack bietet experimentellen Support über die beiden Module smack-omemo + smack-omemo-signal[16]

Weblinks[Bearbeiten | Quelltext bearbeiten]

Einzelnachweise[Bearbeiten | Quelltext bearbeiten]

  1. Andreas Straub: OMEMO Encryption. In: XMPP Standards Foundation. 25. Oktober 2015, abgerufen am 23. November 2015.
  2. Daniel Gultsch: OMEMO Multi-End Message and Object Encryption. Abgerufen am 23. November 2015.
  3. GPN16 - Axolotl erklärt - Wie funktioniert die Crypto hinter Signal und Whatsapp
  4. Webseite von OMEMO, siehe Abschnitt Feature Comparison, abgerufen am 16. Oktober 2016
  5. US$ 621.42 bounty on FreedomSponsors: Telepathy should support OTR encryption. FreedomSponsors, abgerufen am 19. Januar 2016.
  6. Eric Hopper: Empathy and OTR. Journal of Omnifarious, 31. August 2009, abgerufen am 18. Januar 2016.
  7. [Standards] NEW: XEP-0384 (OMEMO Encryption). 7. Dezember 2016, abgerufen am 23. Dezember 2016.
  8. XEP-0384: OMEMO Encryption – Appendix H: Revision History. Abgerufen am 22. Januar 2017.
  9. Chris Ballinger: ChatSecure, Conversations and Zom. ChatSecure, 2. Oktober 2015, abgerufen am 19. Januar 2016.
  10. a b ChatSecure v4.0 – OMEMO and Signal Protocol. chatsecure.org, abgerufen am 17. Januar 2017.
  11. a b Gajim plugin for OMEMO Multi-End Message and Object Encryption. Abgerufen am 24. Januar 2017.
  12. Cryptocat – Security. crypto.cat, abgerufen am 22. September 2016.
  13. profanity-omemo-plugin. Abgerufen am 22. Januar 2017.
  14. Richard Bayerle: lurch - OMEMO for libpurple. Abgerufen am 14. Februar 2017.
  15. mancho / libpurple-omemo-plugin. Abgerufen am 24. März 2017.
  16. Paul Schaub: Ignite Realtime Blog: Smack v4.2 Introduces OME... | Ignite Realtime. Abgerufen am 11. Juli 2017 (deutsch).