Сравнение типов шифрования OTR и OMEMO в протоколе XMPP (Jabber)

CyberSec RuTOR

Кибербезопасность
Команда форума
Модератор
Сообщения
1.000
Реакции
1.435
В данной статье я приведу сравнение 2х самых популярных алгоритма шифрования для XMPP – OTR и OMEMO

Шифрование играет решающую роль в обеспечении безопасного обмена сообщениями. В XMPP (Jabber) есть 3 типа шифрования, OTR, OMEMO и OpenPGP, в данной статье мы сравним OMEMO и OTR, поскольку с OpenPGP и так всё понятно

Начнем с рассмотрения OTR

OTR - это криптографический протокол, обеспечивающий сквозное шифрование сообщений между 2мя собеседниками, идеальную прямую секретность (PFS) и правдоподобное отрицание.

Рассмотрим более подробно, как работает OTR

Процесс начинается с обмена ключами между двумя собеседниками. OTR использует для этого алгоритм Диффи-Хеллмана, который позволяет генерировать общий секрет по незащищенному каналу, не раскрывая его третьим лицам. Он используется в качестве основы для шифрования и дешифрования сообщений.

После его создания протокол OTR запускает сеанс между двумя сторонами. Во время этого процесса собеседники устанавливают определенные параметры, такие как алгоритмы шифрования и ключи, которые будут использоваться для защиты переписки.

Отправленные сообщения шифруются с помощью симметричного алгоритма шифрования AES (Advanced Encryption Standard), использующий общий секрет. Это гарантирует, что сообщение не может быть расшифровано третьей стороной, перехватившей сообщение.

OTR использует коды аутентификации сообщений (MAC) для проверки целостности и подлинности сообщений. MAC генерируются с помощью криптографических хэш-функций и отправляются вместе с зашифрованным сообщением. Получив сообщение, получатель может проверить MAC, чтобы убедиться, что сообщение не было подделано во время передачи.

Как упоминалось выше, одной из особенностей сквозного шифрования OTR является идеальная прямая секретность. Каждое сообщение шифруется уникальным сеансовым ключом, полученным из общего секрета. Если злоумышленнику удается получить один сеансовый ключ, он не может использовать его для расшифровки прошлых или будущих сообщений, что обеспечивает дополнительный уровень безопасности.

OTR также предлагает возможность правдоподобного отрицания, что означает, что сторона может отрицать отправку определенного сообщения, даже если оно может быть расшифровано и проверено получателем. Это достигается путем генерации "отрицаемого MAC", который позволяет правдоподобно отрицать происхождение сообщения.

Теперь перейдем к OMEMO

OMEMO
- это криптографический протокол, который обеспечивает сквозное шифрование, синхронизацию сообщений и идеальную прямую секретность. OMEMO является современной и надежной альтернативой протоколу OTR. Он разработан для обеспечения безопасного шифрования и расшифровки сообщений собеседников, даже если они перехвачены злоумышленником.

OMEMO в XMPP предполагает использование нескольких ключевых компонентов: Signal Protocol, алгоритм Double Ratchet и шифрование на основе эллиптических кривых.

Signal Protocol предусматривает сквозное шифрование сообщений, которыми обмениваются пользователи, это надежный протокол для безопасного обмена сообщениями, который обеспечивает конфиденциальность, целостность и подлинность сообщений. OMEMO использует Signal Protocol для установки зашифрованной сессии между двумя пользователями, обеспечивая безопасное шифрование и дешифрование сообщений, которыми они обмениваются.

Double Ratchet - это алгоритм обмена ключами, применяющийся для генерации сеансовых ключей. Double Ratchet разработан для обеспечения идеальной прямой секретности и правдоподобного отрицания (аналогично OTR)

OMEMO использует криптографию эллиптических кривых (ECDH) для обеспечения того, чтобы сеансовые ключи, используемые для шифрования и расшифровки сообщений, были уникальными для двух пользователей, участвующих в переписке.

В отличиии от OTR, OMEMO поддерживает передачу файлов в зашифрованном виде

Теперь сравним эти 2 алгоритма.

Недостатки OTR:

1. OTR поддерживается не всеми XMPP-клиентами.

2. OTR не обеспечивает синхронизацию сообщений, что затрудняет отслеживание пользователями своих переписок.

Преимущества OMEMO:

1. OMEMO обеспечивает лучшую безопасность, чем OTR, благодаря использованию современных алгоритмов шифрования и протоколов.

2. OMEMO позволяет пользователям получать доступ к своим перепискам с нескольких устройств.

3. Передача файлов в зашифрованном виде

4. OMEMO является нативным протоколом шифрования для XMPP и поддерживатся “из коробки” современными XMPP-клиентами, такими как Gajim, Dino, Monal и Conversations.

5. OMEMO поддерживает многопользовательские чаты


Прочитать про выбор XMPP (Jabber) - клиентов с OMEMO можно в другой статье -
 
Последнее редактирование:
Почему то через jabber со мной шоп просил вести диалог именно через протокол OTR, так до сих пор и не выяснил почему именно он, а не OMEMO, который был намного удобнее!
 
Почему то через jabber со мной шоп просил вести диалог именно через протокол OTR, так до сих пор и не выяснил почему именно он, а не OMEMO, который был намного удобнее!
потому что клиент с которого работает шоп, не имеет шифрования омемо и сообщаться вы не сможете(не отображаться сообщения) настаивайте на шифровании омемо если касается речь о работе в команде. (многим просто лень забыть пингина, а также часто шопы могут даже общаться с мобильных приложений, где не у всех есть омемо, если работодатель сам не хочет безопасно работать, то стоит подумать о смене работодателя имхо)
 
потому что клиент с которого работает шоп, не имеет шифрования омемо и сообщаться вы не сможете(не отображаться сообщения) настаивайте на шифровании омемо если касается речь о работе в команде. (многим просто лень забыть пингина, а также часто шопы могут даже общаться с мобильных приложений, где не у всех есть омемо, если работодатель сам не хочет безопасно работать, то стоит подумать о смене работодателя имхо)
А разве нельзя настроить OMEMO шифрование в Pidgin?
Сообщение обновлено:

Я нашёл гайд-там устанавливаешь плагин lurch на pidgin(у меня на таилсе), и если собеседник использует OMEMO, разговор зашифровывается автоматически. Я пробовал вроде работает. Или я чего-то недопонимаю.
 
Последнее редактирование:
А разве нельзя настроить OMEMO шифрование в Pidgin?
Сообщение обновлено:

Я нашёл гайд-там устанавливаешь плагин lurch на pidgin(у меня на таилсе), и если собеседник использует OMEMO, разговор зашифровывается автоматически. Я пробовал вроде работает. Или я чего-то недопонимаю.
нихуясе) давай перепили гайд) не слышал за такое.
Сообщение обновлено:

есть ли скрины работы в гайде? попозже проверю сам
 
Последнее редактирование:
пингвин поддерживаем омемо, позже скину гайд
 

Похожие темы

В дарк-среде годами спорят, что лучше: старый, как мир, Jabber (XMPP) или модный и навороченный Matrix? Одни топят за «дедовскую надёжность», другие — за современные фичи. Сегодня мы без фанатизма разберём оба протокола, чтобы ты сам решил, какой инструмент подходит под твою задачу. Что общего...
Ответы
1
Просмотры
167
В данной статье я постараюсь объяснить, что из себя представляет протокол Matrix, этот протокол используется в популярном мессенджере Element Matrix - протокол с открытым исходным кодом, обеспечивающий децентрализованное и федеративное взаимодействие. Протокол использует модель сервер-клиент, в...
Ответы
18
Просмотры
В данной статье я опишу какие XMPP (Jabber)-клиенты следует выбрать для различных ОС. Я считаю, что уже пора окончательно решить этот вопрос, чтобы новичкам было проще ориентироваться. В качестве метода шифрования переписки будет применяться OMEMO. Применение OMEMO обусловлено его интеграцией...
Ответы
41
Просмотры
️ 1. Защита на уровне Tails OS (Аппаратная маскировка) Название материнской платы — это идентификатор, который жестко зашит в BIOS/UEFI. Операционная система не может его изменить. Однако Tails OS уже содержит механизмы для маскировки тех аппаратных данных, которые могут просочиться в сеть...
Ответы
5
Просмотры
В данной статье я хотел бы описать процесс установки и настройки XMPP (Jabber) – клиента на Tails с шифрованием OMEMO. В качестве клиента будем использовать Gajim. Установим Gajim и OMEMO плагин следующей командой: sudo apt install gajim gajim-omemo Ждем окончания установки и открываем Gajim...
Ответы
46
Просмотры
Назад
Сверху Снизу