Jmap — Это Открытый Протокол, Который Заменит Imap При Обмене Электронной Почтой.

Ранее в этом месяце на Hacker News активно обсуждался Протокол JMAP разработан под руководством IETF .

Мы решили поговорить о том, зачем это нужно и как это работает.

JMAP — это открытый протокол, который заменит IMAP при обмене электронной почтой.
</p><p>

/ ++++++++++++++++++++++++++++++++++ /ПД



Что мне не понравилось в IMAP

Протокол IMAP был представлен в 1986 году.

Многие вещи, описанные в стандарте, сегодня уже не актуальны.

Например, протокол может возвращать количество строк письма и контрольные суммы.

MD5 — данный функционал практически не используется в современных почтовых клиентах.

Другая проблема связана с потреблением трафика.

При использовании IMAP электронные письма хранятся на сервере и периодически синхронизируются с локальными клиентами.

Если по какой-то причине копия на устройстве пользователя испортится, всю почту придется синхронизировать заново.

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

Трудности возникают не только с самим протоколом, но и с почтовыми клиентами, которые с ним работают. С момента своего создания протокол IMAP неоднократно подвергался различным изменениям — текущей версией на сегодняшний день является IMAP4. При этом для него существует множество дополнительных расширений - в сети опубликовано девяносто RFC с дополнениями.

Одним из последних является RFC8514 , представленный в 2019 году.

При этом многие компании предлагают собственные фирменные решения, которые должны упростить работу с IMAP или даже заменить его: Gmail , Перспективы , Нилас .

В результате существующие почтовые клиенты поддерживают только некоторые из доступных функций.

Такое разнообразие приводит к сегментации рынка.

«Более того, современный почтовый клиент должен не только пересылать сообщения, но и уметь работать с контактами и синхронизироваться с календарем», — говорит Сергей Белкин, руководитель разработки IaaS-провайдера.

1cloud.ru .

— Сегодня сторонние протоколы, такие как ЛДАП , КартаDAV И КалДАВ .

Такой подход усложняет настройку межсетевых экранов в корпоративных сетях и открывает новые векторы для кибератак».

JMAP предназначен для решения этих проблем.

Его разрабатывают специалисты FastMail под руководством Инженерной группы Интернета (IETF).

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

Помимо обработки писем, JMAP также предоставляет возможность подключения расширений для работы с контактами и планировщика календаря.



Особенности нового протокола

JMAP - это протокол без сохранения состояния (без гражданства) и не требует постоянного подключения к почтовому серверу.

Эта функция упрощает работу в нестабильных мобильных сетях и экономит заряд батареи устройств.

Электронное письмо в JMAP представлено в формате структуры JSON. Содержит всю информацию из сообщения RFC5322 (Формат интернет-сообщений), который может потребоваться приложениям электронной почты.

По мнению разработчиков, такой подход должен упростить создание клиентов, поскольку решение потенциальных сложностей (связанных с МИМ , чтение заголовков и кодирование) сервер ответит. Клиент использует API для связи с сервером.

Для этого он генерирует аутентифицированный запрос POST, свойства которого описаны в объекте сеанса JMAP. Запрос имеет формат application/json и состоит из одного объекта запроса JSON. Сервер также генерирует один объект ответа.

В Характеристики (пункт 3) авторы с просьбой приводят следующий пример:

  
   

{ "using": [ "urn:ietf:params:jmap:core", "urn:ietf:params:jmap:mail" ], "methodCalls": [ [ "method1", { "arg1": "arg1data", "arg2": "arg2data" }, "c1" ], [ "method2", { "arg1": "arg1data" }, "c2" ], [ "method3", {}, "c3" ] ] }

Ниже приведен пример ответа, который сгенерирует сервер:

{ "methodResponses": [ [ "method1", { "arg1": 3, "arg2": "foo" }, "c1" ], [ "method2", { "isBlah": true }, "c2" ], [ "anotherResponseFromMethod2", { "data": 10, "yetmoredata": "Hello" }, "c2"], [ "error", { "type":"unknownMethod" }, "c3" ] ], "sessionState": "75128aab4b1b" }

Полную спецификацию JMAP с примерами реализации можно найти по адресу Официальный веб-сайт проект. Там же авторы разместили описание технических характеристик Контакты JMAP И JMAP-календари — они направлены на работу с календарями и списками контактов.

К слова авторы, Контакты и Календари были выделены в отдельные документы, чтобы их можно было в дальнейшем развивать и стандартизировать независимо от «ядра».

Исходные коды для JMAP - в репозитории на GitHub .



JMAP — это открытый протокол, который заменит IMAP при обмене электронной почтой.
</p><p>

/ ++++++++++++++++++++++++++++++++++ /ПД

Перспективы

Несмотря на то, что работа над стандартом официально еще не завершена, он уже реализуется в производственных средах.

Например, создатели открытого почтового сервера Сайрус IMAP реализовал свою версию JMAP. Разработчики из FastMail выпущенный серверную структуру для нового протокола на Perl, а авторы JMAP представили Прокси сервер .

Мы можем ожидать, что в будущем будет все больше и больше проектов на основе JMAP. Например, есть некоторая вероятность того, что разработчики из Open-Xchange, создающие IMAP-сервер для систем Linux, перейдут на новый протокол.

Откажитесь от IMAP. члены сообщества спрашивают , сформированный вокруг инструментов компании.

Разработчики из IETF и FastMail говорят, что все больше пользователей видят необходимость в новом открытом стандарте обмена сообщениями.

Авторы JMAP надеются, что в будущем больше компаний начнут внедрять этот протокол.

Наши дополнительные ресурсы и источники:

JMAP — это открытый протокол, который заменит IMAP при обмене электронной почтой.
</p><p>

Как проверить файлы cookie на соответствие GDPR — поможет новый открытый инструмент

JMAP — это открытый протокол, который заменит IMAP при обмене электронной почтой.
</p><p>

Как сэкономить с помощью интерфейса прикладного программирования

JMAP — это открытый протокол, который заменит IMAP при обмене электронной почтой.
</p><p>

DevOps в облачном сервисе на примере 1cloud.ru

JMAP — это открытый протокол, который заменит IMAP при обмене электронной почтой.
</p><p>

Ээволюция облачной архитектуры 1cloud

JMAP — это открытый протокол, который заменит IMAP при обмене электронной почтой.
</p><p>

Потенциальные атаки на HTTPS и способы защиты от них

JMAP — это открытый протокол, который заменит IMAP при обмене электронной почтой.
</p><p>

Как защитить сервер в Интернете: опыт 1cloud.ru

JMAP — это открытый протокол, который заменит IMAP при обмене электронной почтой.
</p><p>

Краткий ликбез: что такое Continuous Integration
Теги: #облачные сервисы #разработка сайтов #мессенджеры #почта #ИТ-стандарты #IMAP #1cloud #JMAP
Вместе с данным постом часто просматривают: