Доступен выпуск мессенджера Delta Chat 1.42, работающего без специализированных серверов и использующего email в качестве транспорта (chat-over-email, специализированный почтовый клиент, работающий как мессенджер). Код приложений распространяется под лицензией GPLv3, а базовая библиотека доступна под лицензией MPL 2.0 (Mozilla Public License). Релиз доступен в Google Play и F-Droid, а также в сборках для Linux (AppImage, pacman, rpm, deb), Windows и MacOS.
Delta Chat не использует собственные серверы и может работать практически через любой почтовый сервер, поддерживающий SMTP и IMAP (для быстрого определения поступления новых сообщений применяется техника Push-IMAP). Поддерживается шифрование с использованием OpenPGP и сквозное шифрования при помощи стандарта Autocrypt или децентрализованных протоколов SecureJoin. Трафик шифруется с использованием TLS в реализации штатных системных библиотек.
Delta Chat полностью контролируется пользователем и не привязан к централизованным сервисам. Для работы не требуется регистрация в новых сервисах – в качестве идентификатора можно использовать существующий email. Если корреспондент не использует Delta Chat он может прочитать сообщение как обычное письмо. Борьба со спамом осуществляется при помощи отсеивания сообщений от неизвестных пользователей (по умолчанию отображаются только сообщения от пользователей из адресной книги и тех, кому раньше отправлялись сообщения, а также ответы на собственные сообщения). Возможно отображение вложений и прикреплённых изображений и видео.
Поддерживается создание групповых чатов, в которых могут общаться несколько участников. При этом имеется возможность привязки к группе верифицируемого списка участников, не позволяющего прочитать сообщения посторонним лицам (проверка участников осуществляется по криптографической подписи, а сообщения шифруются с использованием оконечного шифрования). Подключение к верифицированным группам осуществляется через отправку приглашения с QR-кодом.
Ядро мессенджера разрабатывается отдельно в форме библиотеки и может быть использовано для написания новых клиентов и ботов. Актуальный вариант базовой библиотеки написан на языке Rust (старый вариант был написан на языке Си). Имеются биндинги для Python, Node.js и Java. В разработке неофициальные биндинги для Go. Существует DeltaChat для libpurple, который может использовать как новое Rust-ядро, так и старое Cи-ядро.
В версии 1.42 представлена новая реализация сквозного шифрования, основанная на использовании децентрализованных протоколов SecureJoin, гарантирующих защиту от перехвата начальных ключей интернет-провайдерами или администраторами серверов. Ранее применяемое сквозное шифрование было основано на механизме автоматического обмена ключами Autocrypt, который обходится без использования серверов ключей за счёт передачи ключа в первом отправленном сообщении. Соответственно, во время передачи первого сообщения ключ мог быть перехвачен в ходе MITM-атаки или действий на стороне почтового сервера.
SecureJoin решает проблемы с компрометацией сеанса сквозного шифрования в ходе MITM-атак и предоставляет защиту от совершения вредоносных действий на уровне транзитных сетей и почтовых серверов. Новый метод основан на использовании QR-кодов для верификации пользователей и настройки ключей шифрования. После сканирования QR-кода в приложении создаётся чат с группой из двух участников (1:1), помеченной специальной “зелёной меткой” и позволяющей отправлять и принимать шифрованные сообщения, защищённые от транзитного перехвата. В дальнейшем через отправку приглашений с QR-кодом к группе могут быть подключены дополнительные участники.
Другие изменения:
- Обеспечена синхронизация между всеми устройствами пользователя действий, связанных с принятием/блокировкой, архивированием, закреплением и отключением уведомлений.
- В версии для настольных систем включено сжатие отправляемых изображений.
- В версии для настольных систем реализована общая галерея (Global Gallery) с изображениями, документами и мультимедийными файлами из всех чатов.
- В расширенные настройки версии для Android добавлена опция для включения реакций.