OMEMO является расширением Extensible Messaging и Протокол присутствия (XMPP ) для мультиклиентского сквозного шифрования, разработанный Андреасом Штраубом. По словам Штрауба, OMEMO использует Double Ratchet Algorithm «для обеспечения многостороннего и многостороннего шифрования, позволяя надежно синхронизировать сообщения между несколькими клиентами, даже если некоторые из них отключены». Имя «OMEMO» - это рекурсивное сокращение от «OMEMO Multi-End Message and Object Encryption». Это открытый стандарт, основанный на алгоритме двойного храповика и (PEP, XEP-0163). OMEMO предлагает будущую и прямую секретность и отказ с помощью синхронизации сообщений и автономной доставки.
По сравнению с OTR, протокол OMEMO предлагает зашифрованный чат «многие ко многим», организацию очереди сообщений в автономном режиме, секретность пересылки, передачу файлов, возможность проверки и отрицание за счет немного большего размера сообщений.
Протокол был разработан и впервые реализован Андреасом Штраубом в качестве проекта Google Summer of Code в 2015 году. Целью проекта было внедрение многоточечного соединения с двойным храповым механизмом в многоцелевой. конец схемы шифрования в клиент обмена мгновенными сообщениями на базе Android XMPP называется. Он был представлен в Conversations и отправлен в Фонд стандартов XMPP (XSF) в качестве предлагаемого (XEP) осенью 2015 года и принят как XEP-0384 в декабре 2016 года.
В июле 2016 года проект ChatSecure объявил, что они будут внедрять OMEMO в следующих выпусках. ChatSecure v4.0 поддерживает OMEMO и был выпущен 17 января 2017 года.
Первая экспериментальная версия плагина OMEMO для кроссплатформенного клиента XMPP Gajim была выпущена 26 декабря, 2015.
В июне 2016 года некоммерческая консалтинговая компания по компьютерной безопасности Radically Open Security опубликовала анализ протокола OMEMO.
Выбранные клиенты, поддерживающие OMEMO ( также существует полный список клиентов):