Dunczyk
Интересующийся
XMPP (англ. eXtensible Messaging and Presence Protocol «расширяемый протокол обмена сообщениями и информацией о присутствии»), ранее известный как джа́ббер (англ. Jabber [ˈʤæbə(r)] «болтовня, трёп, тарабарщина») — открытый, основанный на XML, свободный для использования протокол для мгновенного обмена сообщениями и информацией о присутствии в режиме, близком к режиму реального времени. Изначально спроектированный легко расширяемым, протокол, помимо передачи текстовых сообщений, поддерживает передачу голоса, видео и файлов по сети.
Регистрация
Рекомендую регистрироваться на
Почему xmpp.is? Потому что это стабильный американский джаббер-сервис. Не забываем по-возможности донатить доброму админу Lunar! Он делает важную и полезную работу!
Более широкий список серверов
Пошаговая инструкция по регистрации:
1. Заходим через Tor-браузер на
2. Если включен наивысший уровень безопасности, то включаем скрипты xmpp.is (xyz и прочее), hcaptcha.com
3. Регистрируем аккаунт, предварительно пройдя капчу. Почту можно указывать левую, она не проверяется, но используется при восстановлении доступа к аккаунта, если забыли пароль.
4. Поздравляю, аккаунт зарегистрирован!
Установка мессенджера
В соответствии с операционной системой устройства, выбираем необходимый мессенджер. Рекомендую использовать следующие:
Пошаговая инструкция по установке gajim:
1. Заходим через Tor-браузер на
2. Жмём кнопку Download Gajim
3. Жмём кнопку Сохранить (Save File)
4. Выбираем директорию для сохранения установщика, жмём кнопку Сохранить.
5. После скачивания установщика, запускаем его.
6. Здесь обязательно оставляйте галочку на строчке Открывать xmpp-ссылки в Gajim, тогда вы сможете обмениваться картинками и фотками прямо в чате мессенджера!
7. Выбираем директорию для установки мессенджера
8. Жмём кнопку Установить
9. Запускаем мессенджер, появляется приветственное окно "Добро пожаловать"
10. Вводим свой Jabber ID (JID), пароль, ставим галочку напротив Расширенных настроек и жмём кнопку Вход
11. Расширенные настройки необходимы для торификации при подключении мессенджера к аккаунту. Для этого необходимо настроить прокси-соединение через Tor, ввести правильно имя хоста jabber-сервера и порт. Для более детальной настройки прокси соединения жмём кнопку с отвёрткой и гаечным ключом справа.
12. Появится окно настройки прокси-соединения, выбираем имя Tor, тип соединения SOCKS5, хост 127.0.0.1, порт 9150. После введения настройки запоминаются автоматически, поэтому жмём крестик в правом углу окошка настройки прокси-соединения, чтобы вернуться обратно в окно Расширенных настроек.
13. Вернувшись в окно расширенных настроек, выбираем тип прокси-соединения Tor, в поле для имени хоста вводим prosody.xmpp.is, порт 5222 и жмём кнопку Вход
14. Просиходит подключение к серверу. Tor-браузер обязательно должен быть запущен, иначе подключение не произойдёт!
15. Если всё вышеперечисленное было сделано правильно, то появится вот такое сообщение. Жмём кнопку Подключить. Соединение будет идти через Tor, поэтому если у вас не настроен Whonix или Proxifier, обязательно включите браузер Tor, иначе соединения не будет.
16. После того, как произойдёт подключение учётной записи к сети, в левом нижнем углу появится вкладка аккаунта с зелёным кружком, свидетельствующем об онлайне.
17. Теперь можно добавлять в контакты другие Jabber ID и безопасно общаться с использованием OMEMO. Нажимаем на вкладку Учётные записи, выбираем Добавить контакт (Add Contact).
18. Для того, чтобы связаться со мной, вводим мой JID
19. В приветственном сообщении пишем Ухо от селёдки для того, чтобы я смог отличить вас от спамеров! Нажимаем кнопку Добавить контакт
20. Ваш запрос на авторизацию с приветственным сообщением я буду видеть вот так. Стандартный запрос авторизации может быть отклонён, запрос с приветственным сообщением Ухо от селёдки будет мной авторизован!
21. После добавления контакта он появится в вашем списке контактов, но до тех пор, пока вы не будете авторизованы им, вы не будете видеть онлайн он или нет
22. Чтобы пообщаться, нажимаем на контакт и справа появляется чат, внизу нужно вводить текст сообщения.
23. В диалоговом окне внизу вводим сообщение и нажимаем Enter для отправки сообщения
24. Для того, чтобы общаться безопасно, необходимо включить omemo-шифрование. Для этого в правом нижнем углу нажимаем на значок с замочком и выбираем вид шифрования, в нашем случае это OMEMO. Далее нажимаем на значок с щитом и смотрим отпечатки OMEMO. Чтобы верифицировать отпечаток вашего контакта, нажимаем на него и выбираем Подтверждённый (Verified). Делаем так же, как это делаю я при добавлении вашего контакта.
25. Теперь можно писать зашифрованные сообщения. Подтверждением включенному шифрованию будет зелёный значок щита справа от сообщения
Преимущества
Слабые стороны
Расширения XMPP
Протокол XMPP включает лишь базовую основу для передачи сообщений. Для реализации дополнительных возможностей используются расширения XEP (XMPP Extension Protocols). Модульная система позволяет собирать системы на основе XMPP, как для передачи сообщений, так и для передачи данных IoT-устройств и других задач. Для полноценной работы Jabber клиентов требуется поддержка соответствующих расширений. Одними из наиболее важных для работы XMPP клиентов являются расширения:
Примеры глобальных интеграций XMPP
Высокая отказоустойчивость и низкие издержки XMPP-серверов способствуют тому, что ряд крупных компаний использует XMPP как базовую платформу для создании закрытых мессенджеров и чатов, а также для доставки push-уведомлений
- Децентрализация: Архитектура сети XMPP схожа с электронной почтой; кто угодно может запустить свой собственный XMPP-сервер и нет какого-либо центрального сервера.
- Открытый стандарт: Internet Engineering Task Force формализовал XMPP как стандарт мгновенного обмена сообщениями и технологии присутствия под названием XMPP, и спецификации XMPP были опубликованы как RFC 3920 и RFC 3921. Никаких привилегий не требуется для добавления поддержки этих спецификаций, и их разработка не привязана к какому-либо разработчику. Существует множество реализаций серверов и клиентов, а также библиотек с открытым исходным кодом.
- Бесконечная расширяемость. Любой может написать своё расширение XEP и добавить его в протокол. Изначально предполагалось, что крупные компании будут создавать свои расширения протокола для интеграции собственных мессенджеров. Это бы позволило создать универсальный протокол общения между разными менеджерами. На практике это не произошло. Крупные Интернет-компании стали предпочитать собственные, закрытые протоколы.
- История: Технологии XMPP используются с 1998 года. При поддержке таких крупных компаний, как Sun Microsystems и Google, создано множество дополнений к стандартам XMPP для клиентов, серверов, компонент и библиотек кодов. В настоящее время XMPP существует практически без инвестиций, однако это не мешает дальнейшему развитию протокола сообществом, и постоянно появляются новые расширения.
- Безопасность: XMPP серверы могут быть изолированы от публичных сетей XMPP (например, во внутренней сети компании) и хорошо защищены (благодаря использованию SASL и TLS) встроенными в ядро XMPP спецификациями. Для поддержки использования шифрования канала XMPP Standards Foundation также использовал вспомогательный Центр сертификации xmpp.net, обеспечивая цифровые сертификаты для администраторов XMPP серверов при содействии StartCom Certification Authority (который является основным хранителем сертификатов для всех вспомогательных). Многие реализации серверов используют SSL при обмене между клиентом и сервером, и немало клиентов поддерживают шифрование с помощью PGP/GPG внутри протокола.
- Гибкость: Настраиваемая функциональность может быть надстроена поверх XMPP; для поддержки возможности взаимодействия различных сетей стандартные расширения поддерживаются XMPP Software Foundation. Приложения XMPP в дополнение к функциональности клиента сетевого общения включают в себя администрирование сети, распределение ресурсов, утилиты для совместной работы, обмен файлами, игры и мониторинг удалённых систем.
Слабые стороны
- Экономическая невыгодность для крупных мессенджеров. Открытый протокол приводит к оттоку пользователей у крупных мессенджеров, на множество мелких частных серверов и других поставщиков услуг.
- Избыточность передаваемой информации: Более 70 % межсерверного трафика XMPP составляют сообщения о присутствии, около 60 % которых являются излишними. XMPP создаёт избыточный трафик при доставке сообщений о присутствии (то есть «статус-сообщений») нескольким пользователям. Для решения существует несколько расширений. XEP-0352 передаёт только сообщения вместо статуса присутствия. Также решением является расширение XEP-0138 — компрессия передаваемых данных протокола алгоритмами lzw и zlib, а также использование компрессии в рамках шифрования соединения TLS RFC 3749, глава 3.
- Масштабируемость: XMPP сейчас страдает от фактически той же проблемы избыточности, но применительно к чат-комнатам и возможностям публикации информации. Решение этих проблем также ожидается в виде XEP-расширений. Пока они не введены, большие чат-комнаты образуют избыточный трафик.
- Неэффективность передачи бинарных данных: Так как XMPP является, по сути, одним длинным XML-документом, невозможно передать немодифицированную двоичную информацию. В результате для передачи файлов стараются использовать дополнительные расширения, например HTTP (http upload). Для передачи же файлов и другой бинарной информации непосредственно в XMPP потоке используется кодирование base64. С другой стороны, некоторые клиентские программы для передачи используют технологии p2p, не задействуя при этом сервер.
Расширения XMPP
Протокол XMPP включает лишь базовую основу для передачи сообщений. Для реализации дополнительных возможностей используются расширения XEP (XMPP Extension Protocols). Модульная система позволяет собирать системы на основе XMPP, как для передачи сообщений, так и для передачи данных IoT-устройств и других задач. Для полноценной работы Jabber клиентов требуется поддержка соответствующих расширений. Одними из наиболее важных для работы XMPP клиентов являются расширения:
- XEP-0163 Personal Eventing Protocol. Размещение аватарок, передача ключей OMEMO
- XEP-0191 Блокирование контактов. Чёрный список собеседников
- XEP-0198 Менеджер потоков. Необходим для доставки сообщений при нестабильном интернет-канале и выключенном архиве сообщений. Если сервер не получает уведомление о доставке, сервер повторно отправляет сообщение
- XEP-0237 Версии ростера. Вместо полной загрузки данных собеседников, передаются лишь обновлённые данные
- XEP-0280 Дублирование сообщений. Отправка сообщения на все включённые устройства. Используется, если не включён архив сообщений
- XEP-0352 Состояние клиента. Если XMPP клиент свернут, сервер передаёт лишь сообщения. Это экономит расход батареи и интернет-трафик
- XEP-0363 HTTP File Upload. Универсальная передача файлов между разными клиентами (через HTTP)
Примеры глобальных интеграций XMPP
Высокая отказоустойчивость и низкие издержки XMPP-серверов способствуют тому, что ряд крупных компаний использует XMPP как базовую платформу для создании закрытых мессенджеров и чатов, а также для доставки push-уведомлений
- WhatsApp ~ 800 млн пользователей, использует модифицированный протокол XMPP для чатов
- Electronic Arts ~40 млн пользователей, использует XMPP для чатов
- Nintendo Switch NPNS ~ 35 млн устройств. Доставка новостей, уведомлений и других сообщений
- Одноклассники (социальная сеть) — 42 млн пользователей. Внутренняя доставка сообщений между пользователями. Доступно подключение к социальной сети через XMPP-клиент
- League of Legends~ 27 млн пользователей, использует XMPP для чатов
- Neverwinter (MMORPG) −16 млн пользователей, использует XMPP для чатов
- Fortnite ~ 250 млн пользователей, использует XMPP для чатов
- EVE Online~ 1 млн пользователей, использует XMPP для чатов
- Star Trek Online ~900 тысяч пользователей, использует XMPP для чатов
- Google ~1.5 млрд пользователей. Доставка push-уведомлений
- Apple ~ 500 млн пользователей. Доставка push-уведомлений
- Агентство национальной безопасности США использует XMPP для внутренних коммуникаций
- Военные США и НАТО используют протокол для передачи сообщений в военных мессенджерах
- НАТО использует XMPP в военном клиенте JChat
- Фермилаб — Национальная ускорительная лаборатория им. Энрико Ферми использует XMPP для организации внутренней связи.
- Европейский парламент - Служба безопасности европейского парламента рекомендует использовать парламентариям Cisco Jabber вместо Signal и WhatsApp
- Федеральная полиция Германии использует секретный мессенджер на основе XMPP и Conversations
Регистрация
Рекомендую регистрироваться на
Для просмотра ссылки необходимо нажать
Вход или Регистрация
Почему xmpp.is? Потому что это стабильный американский джаббер-сервис. Не забываем по-возможности донатить доброму админу Lunar! Он делает важную и полезную работу!
Более широкий список серверов
Для просмотра ссылки необходимо нажать
Вход или Регистрация
.Пошаговая инструкция по регистрации:
1. Заходим через Tor-браузер на
Для просмотра ссылки необходимо нажать
Вход или Регистрация
2. Если включен наивысший уровень безопасности, то включаем скрипты xmpp.is (xyz и прочее), hcaptcha.com
3. Регистрируем аккаунт, предварительно пройдя капчу. Почту можно указывать левую, она не проверяется, но используется при восстановлении доступа к аккаунта, если забыли пароль.
4. Поздравляю, аккаунт зарегистрирован!
Установка мессенджера
В соответствии с операционной системой устройства, выбираем необходимый мессенджер. Рекомендую использовать следующие:
- Linux/Windows -
Для просмотра ссылки необходимо нажать Вход или Регистрация
- Android -
Для просмотра ссылки необходимо нажать Вход или РегистрацияилиДля просмотра ссылки необходимо нажать Вход или Регистрация
- iOS/macOS -
Для просмотра ссылки необходимо нажать Вход или РегистрацияилиДля просмотра ссылки необходимо нажать Вход или Регистрация
Для просмотра ссылки необходимо нажать
Вход или Регистрация
.Пошаговая инструкция по установке gajim:
1. Заходим через Tor-браузер на
Для просмотра ссылки необходимо нажать
Вход или Регистрация
, жмём вверху кнопку Download. Если у вас не windows, поковыряйтесь на сайте, найдите сборку под вашу ОС.2. Жмём кнопку Download Gajim
3. Жмём кнопку Сохранить (Save File)
4. Выбираем директорию для сохранения установщика, жмём кнопку Сохранить.
5. После скачивания установщика, запускаем его.
6. Здесь обязательно оставляйте галочку на строчке Открывать xmpp-ссылки в Gajim, тогда вы сможете обмениваться картинками и фотками прямо в чате мессенджера!
7. Выбираем директорию для установки мессенджера
8. Жмём кнопку Установить
9. Запускаем мессенджер, появляется приветственное окно "Добро пожаловать"
10. Вводим свой Jabber ID (JID), пароль, ставим галочку напротив Расширенных настроек и жмём кнопку Вход
11. Расширенные настройки необходимы для торификации при подключении мессенджера к аккаунту. Для этого необходимо настроить прокси-соединение через Tor, ввести правильно имя хоста jabber-сервера и порт. Для более детальной настройки прокси соединения жмём кнопку с отвёрткой и гаечным ключом справа.
12. Появится окно настройки прокси-соединения, выбираем имя Tor, тип соединения SOCKS5, хост 127.0.0.1, порт 9150. После введения настройки запоминаются автоматически, поэтому жмём крестик в правом углу окошка настройки прокси-соединения, чтобы вернуться обратно в окно Расширенных настроек.
13. Вернувшись в окно расширенных настроек, выбираем тип прокси-соединения Tor, в поле для имени хоста вводим prosody.xmpp.is, порт 5222 и жмём кнопку Вход
14. Просиходит подключение к серверу. Tor-браузер обязательно должен быть запущен, иначе подключение не произойдёт!
15. Если всё вышеперечисленное было сделано правильно, то появится вот такое сообщение. Жмём кнопку Подключить. Соединение будет идти через Tor, поэтому если у вас не настроен Whonix или Proxifier, обязательно включите браузер Tor, иначе соединения не будет.
16. После того, как произойдёт подключение учётной записи к сети, в левом нижнем углу появится вкладка аккаунта с зелёным кружком, свидетельствующем об онлайне.
17. Теперь можно добавлять в контакты другие Jabber ID и безопасно общаться с использованием OMEMO. Нажимаем на вкладку Учётные записи, выбираем Добавить контакт (Add Contact).
18. Для того, чтобы связаться со мной, вводим мой JID
19. В приветственном сообщении пишем Ухо от селёдки для того, чтобы я смог отличить вас от спамеров! Нажимаем кнопку Добавить контакт
20. Ваш запрос на авторизацию с приветственным сообщением я буду видеть вот так. Стандартный запрос авторизации может быть отклонён, запрос с приветственным сообщением Ухо от селёдки будет мной авторизован!
21. После добавления контакта он появится в вашем списке контактов, но до тех пор, пока вы не будете авторизованы им, вы не будете видеть онлайн он или нет
22. Чтобы пообщаться, нажимаем на контакт и справа появляется чат, внизу нужно вводить текст сообщения.
23. В диалоговом окне внизу вводим сообщение и нажимаем Enter для отправки сообщения
24. Для того, чтобы общаться безопасно, необходимо включить omemo-шифрование. Для этого в правом нижнем углу нажимаем на значок с замочком и выбираем вид шифрования, в нашем случае это OMEMO. Далее нажимаем на значок с щитом и смотрим отпечатки OMEMO. Чтобы верифицировать отпечаток вашего контакта, нажимаем на него и выбираем Подтверждённый (Verified). Делаем так же, как это делаю я при добавлении вашего контакта.
25. Теперь можно писать зашифрованные сообщения. Подтверждением включенному шифрованию будет зелёный значок щита справа от сообщения
ОТПРАВИЛ МНЕ ЗАПРОС НА АВТОРИЗАЦИЮ В ДЖАББЕР И Я НЕ ОТВЕТИЛ СРАЗУ???
ДОЖДИСЬ, Я ОБЯЗАТЕЛЬНО УВИЖУ, ДОБАВЛЮ В СПИСОК КОНТАКТОВ И ОТВЕЧУ!
ОБЫЧНО, В ТЕЧЕНИЕ 2-3 ЧАСОВ, РЕЖЕ - В ТЕЧЕНИЕ 1-2 ДНЕЙ.
ДОЖДИСЬ, Я ОБЯЗАТЕЛЬНО УВИЖУ, ДОБАВЛЮ В СПИСОК КОНТАКТОВ И ОТВЕЧУ!
ОБЫЧНО, В ТЕЧЕНИЕ 2-3 ЧАСОВ, РЕЖЕ - В ТЕЧЕНИЕ 1-2 ДНЕЙ.