OMEMO
OMEMO este o extensie a Extensible Messaging and Presence Protocol (XMPP) pentru criptare multi-client end-to-end dezvoltată de Andreas Straub. Potrivit Straub, OMEMO folosește algoritmul Double Ratchet „pentru a furniza criptare multi-end la multi-end, permițând sincronizarea sigură a mesajelor între mai mulți clienți, chiar dacă unii dintre ei sunt offline”. Numele „OMEMO” este un acronim recursiv care înseamnă „OMEMO Multi-End Message and Object Encryption”.
Este un standard deschis bazat pe algoritmul Double Ratchet și pe Protocolul de evenimente personale (PEP, XEP-0163).
OMEMO oferă viitorul secret și negare cu sincronizarea mesajelor și livrarea offline.
Caracteristici
În comparație cu OTR , protocolul OMEMO oferă multe-la-multe chat-uri criptate, așteptarea mesajelor offline, secretul de redirecționare , transferul de fișiere, verificabilitatea și negarea în detrimentul unei cheltuieli generale mai mari a dimensiunii mesajului. [1]
Istorie
Protocolul a fost dezvoltat și implementat pentru prima dată de Andreas Straub ca proiect la Google Summer of Code 2015. Scopul proiectului a fost implementarea unei scheme de criptare multi-end la multi-end bazată pe algoritmul dublu Ratchet într-un XMPP-based client de mesagerie instant pentru Android numit Conversații .
A fost introdus în Conversații și prezentat XMPP Standards Foundation (XSF) ca protocolul de extensie XMPP (XEP) propus în toamna anului 2015 și a fost acceptat ca XEP-0384 în decembrie 2016.
În iulie 2016, proiectul ChatSecure a anunțat că vor implementa OMEMO în versiunile ulterioare. ChatSecure v4.0 acceptă OMEMO și a fost lansat pe 17 ianuarie 2017. [2] [3]
O primă versiune experimentală a unui plugin OMEMO pentru clientul Gajim cross-platform XMPP a fost disponibilă pe 26 decembrie 2015.
În iunie 2016, consultanța non-profit în domeniul securității cibernetice Radical Open Security a publicat o analiză a protocolului OMEMO. [4]
Asistență din partea clienților
Clienți selectați care acceptă OMEMO (există, de asemenea, o listă completă de clienți [5] ):
- BeagleIM ( macOS )
- ChatSecure ( iOS ) [6]
- Conversații ( Android )
- Converse.js (bazat pe browser ) [7]
- Dino ( Linux , macOS ) [8]
- Gajim prin plugin oficial ( Linux , Windows , BSD )
- Monal ( iOS )
- Psi prin plugin oficial ( Linux , Windows , macOS )
- Psi + prin plugin oficial ( Linux , Windows , macOS , Haiku , FreeBSD )
- clienți libpurple precum Pidgin sau Finch prin intermediul pluginurilor experimentale
- Adium printr-un Xtra bazat pe pluginul libpurple
- Profanitate prin plugin experimental ( BSD , Linux , macOS , Windows )
- SiskinIM ( iOS )
Suport din biblioteci
- Smack acceptă OMEMO folosind cele două module smack-omemo și smack-omemo-signal [9]
- XMPPFramework ( macOS , iOS , tvOS ) [10] acceptă OMEMO prin extensia OMEMOModule [11] atunci când este utilizat împreună cu biblioteca SignalProtocol-ObjC [12] .
Notă
- ^ (EN) OMEMO Multi-End Message and Object Encryption , pe conversations.im. Adus la 22 ianuarie 2019 .
- ^ ChatSecure iOS v3.2.3 - XMPP Push , pe chatsecure.org , 25 iulie 2016. Adus pe 7 septembrie 2016 .
- ^ ChatSecure v4.0 - OMEMO și Signal Protocol , pe chatsecure.org , 17 ianuarie 2017. Adus pe 7 februarie 2017 .
- ^ (EN) OMEMO: Raport de analiză criptografică (PDF) pe conversations.im. Adus în 06.06.2016 .
- ^ ( RO ) Suntem deja OMEMO? , pe omemo.top . Adus la 22 ianuarie 2019 .
- ^ chatsecure.org . Adus la 17 ianuarie 2017 .
- ^ (EN)GitHub Converse.js , pe github.com. Adus la 20 noiembrie 2019 .
- ^ dino.im. Accesat la 6 noiembrie 2017 .
- ^ (RO) Paul Schaub, Smack v4.2 introduce asistența OMEMO! , la community.igniterealtime.org . Adus la 11 iulie 2017 .
- ^ GitHub XMPPFramework
- ^ Modulul GitHub XMPPFramework OMEMO
- ^ GitHub SignalProtocol-ObjC
linkuri externe
- Site-ul oficial
- XEP-0384: criptare OMEMO (experimentală)
- Biblioteca Python pentru implementarea OMEMO la alți clienți
- Implementarea protocolului OMEMO în C
- OMEMO Top - Listă de clienți de mesagerie instant care acceptă OMEMO