Разработка защищенных мессенджеров


Разработка защищенных мессенджеров

Мобильные приложения стали неотъемлемой частью бизнеса. С ними открылись и новые возможности — использование приложений в качестве каналов продвижения и продажи, и новые угрозы — взлом приложений, утечка информации, потеря деловой репутации. За 2019 год мировая экономика лишилась 2,5 триллиона долларов из-за киберпреступлений, преимущественно хакерских атак и взломов. В эту сумму входят убытки, вызванные потерей конфиденциальных данных, кражей интеллектуальной собственности, нарушением бизнес-операций.

Конфиденциальность является самой чувствительной темой эпохи мобильного Интернета. Регулярно появляются новости о нарушениях безопасности из-за недостатков приложений. Ничто не безопасно, даже мессенджеры техногигантов. Каждый день внутренние сообщения просачиваются в Сеть, а учётные записи похищаются. Причин этому масса — от халатного обслуживания базы данных до использования простейших паролей. Такое положение дел повысило спрос на создание мессенджеров с шифрованием, их ещё называют защищенными или безопасными.

Принцип работы защищенных и классических мессенджеров

Приложениями для обмена сообщениями пользуется как минимум половина населения планеты. Одни только WhatsApp и Facebook Messenger насчитывают 2 миллиарда и 1,3 миллиарда активных пользователей соответственно. А насколько безопасно использовать их при общении на такие темы, о которых никто кроме вас и вашего собеседника не должен узнать?

Принцип работы защищенных мессенджеров

Большинство популярных мессенджеров строятся на двух типах безопасных протоколов обмена сообщениями:

  1. HTTP + push-уведомления. Это когда вы получаете уведомление о том, что пришло сообщение, а сервер отвечает вам уже только после того, как вы открыли приложение.
  2. Расширяемый протокол обмена сообщениями (XMPP) на основе сокетов. Этот протокол используется чаще, так как здесь вы всегда остаётесь подключённым к серверу, а если вдруг соединение пропадёт, то вы перейдёте в автономный режим.

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

Каждое приложение для обмена сообщениями использует собственные методы обеспечения безопасности, но главная разница между защищенными и классическими мессенджерами заключается в области реализации и подходе к пользовательским данным. Защищенные стали отдельной категорией из-за растущего осознания, что общение в Интернете небезопасно — там третья сторона может получить доступ к переписке. Известны случаи, когда крупные компании использовали данные пользователей, включая личные сообщения, для таргетированной рекламы.

Сквозное шифрование

Основным принципом безопасного обмена сообщениями является сквозное шифрование. Например, приложение Signal работает на одноимённом криптографическом протоколе, разработанном Open Whisper Systems ещё для первого приложения (TextSecure). Такой тип шифрования использует многоуровневый подход, который затрудняет грубое проникновение в переписку с доступом к данным. Signal Protocol также применяется по умолчанию в WhatsApp, и как дополнительная функция в Facebook Messenger (Secret conversations) и Skype (Private conversations).

Любой защищенный мессенджер строится на принципе сквозного шифрования, который выглядит следующим образом:

  • Два пользователя начинают диалог. Это событие генерирует два набора ключей:
    • закрытый ключ (остаётся на устройстве пользователя);
    • открытый ключ (хранится на сервере поставщика услуг).
  • Когда первый пользователь пишет второму, открытый ключ извлекается и используется для шифрования сообщения, чтобы оно было доступно только через закрытый ключ. Затем сообщение отправляется второму пользователю через сервер и расшифровывается им с помощью закрытого ключа.

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

Удаление сообщений

Возможность удаления сообщений — это ещё одна важная часть головоломки. Хотя функция удаления сообщений есть во многих мессенджерах, нельзя быть уверенным на 100%, что сообщения действительно удаляются с серверов приложений и из баз данных. Только поставщики услуг знают правду, но часто не раскрывают её. Достоверно известно, что Facebook и Google хранят сообщения из вашей переписки. Но так не во всех мессенджерах, по крайней мере, можно лишь надеяться на это. В любом случае возможность удаления сообщений — большой шаг к построению доверительных отношений с пользователями.

Метаданные тоже считаются проблемным элементом при соблюдении конфиденциальности. Они используются для идентификации пользователей и их учётных данных. Большинство мессенджеров по умолчанию хранят метаданные сообщений, такие как время, отправитель и получатель, список контактов, идентификатор устройства. Эта информация может быть использована хакерами для идентификации пользователя и применения социальной инженерии, чтобы получить ключ дешифрования. В качестве примера приложения, хранящего метаданные, можно привести тот же WhatsApp.

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

Итого получается, что ценность защищенных мессенджеров основана на четырёх принципах:

  1. Сквозное шифрование.
  2. Возможность удаления сообщений.
  3. Ограниченное использование метаданных.
  4. Прозрачность сервиса и продукта.

Статистика популярности мессенджеров

В разных странах сформировались свои рейтинги мессенджеров на основе статистики активных пользователей за месяц. В 169 странах первое место занимает WhatsApp, но ещё в 25 он уступил первенство. Из непокорённых стран в 15 лидером стал его родственник — Facebook Messenger, и только в 10 господствуют мессенджеры, не принадлежащие корпорации Фейсбук.

Раз уж рынок настолько глобализирован, пойдём от общего к частному. Вот так сейчас выглядит рейтинг приложений для обмена сообщениями в глобальном масштабе:

Мировая статистика мессенджеров

Данные о ежемесячном количестве активных пользователей составлены в конце 2019 года, а количество указано в миллионах.

А вот топ-3 приложений для обмена сообщениями в отдельно взятых странах:

Страна1-е место2-е место3-е место
РоссияWhatsAppViberTelegram
ВеликобританияWhatsAppFacebook MessengerSkype
СШАFacebook MessengerSnapchatWhatsApp
КитайWeChatQQMomo

Удивительный факт: мировой лидер WhatsApp на внутреннем рынке уступает и другому мессенджеру Фейсбука, и конкурентному приложению, хотя они появились на 2,5 года позже.

Популярные мессенджеры с шифрованием

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

Лучшие мессенджеры с шифрованием по версии сайта AVG (компании Avast) от марта 2020 года:

  1. Signal.
  2. Wickr Me.
  3. Dust.
  4. WhatsApp.
  5. Telegram.

Лучшие мессенджеры с шифрованием по версии онлайн-издания TechRadar от апреля 2020 года:

  1. Signal.
  2. WhatsApp.
  3. Telegram.
  4. Threema.
  5. Silence.

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

Мессенджеры на блокчейне: почему они бесполезны

Даже защищенные мессенджеры сталкиваются с проблемами безопасности. Многие уже знают о технологии блокчейн и считают её решением безопасности. Естественно, компании пробуют внедрять блокчейн повсюду. Только потом оказывается, что чудо-технология не способна обезопасить абсолютно всё, снизить расходы и одновременно повысить доход.

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

Блокчейну нужно место для хранения

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

Создатель блокчейн-мессенджера должен решить, где размещать все данные из сообщений. Блокчейну ведь нужны фуллноды — полные узлы с синхронизируемой копией реестра. Ими станут либо серверы владельца мессенджера, но тогда не будет децентрализации, либо устройства пользователей. А захотят ли люди хранить у себя гигабайты посторонней информации, тем более в смартфонах? У них встроенная память всего лишь 32–128 ГБ; карта microSDXC на 256 ГБ стоит около 3000 рублей. Для сравнения: в мае 2020 года размер блокчейна Биткоина достиг 280 ГБ, а Эфириума — 140 ГБ. Это только информация о транзакциях, без фото, аудио-, видеофайлов. Придётся как-то мотивировать участников сети поддерживать её функционирование.

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

Блокчейну нужны валидаторы

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

Если кому-то покажется интересной идея создать защищенный мессенджер на блокчейне, то новатор должен быть готов делиться чем-то с главными участниками сети. Тогда они тоже будут делиться своими ресурсами и временем на валидацию проходящих через сеть сообщений. Придётся заодно создавать токеномику там, где изначально она не была нужна. Всё взаимосвязано: без оплаты за действия не появятся валидаторы, без валидаторов не возникнет доверия, без доверия не найдётся столько пользователей, готовых держать фуллноды активными.

И в то же время эти главные участники сети становятся её узким местом. Если их будет мало, или если количество операций в секунду будет пиковым для системы, то они не будут успевать валидировать совершаемые пользователями действия, что приведёт к сильной задержке.

Возьмём Bitcoin: в идеальных условиях BTC-транзакция валидируется через 10 минут — столько времени нужно на создание блока. В мае 2020-го через сеть Биткоина проводилось в среднем 3,44 транзакции в секунду (задержек не было). Максимальная проходимость там составляет 7 транзакций в секунду. Лимит для блока получается: 7 * 60 * 10 = 4200 транзакций, а всё, что превысит его, ставится в очередь на следующие блоки.
Сравним с WhatsApp: в апреле 2020-го через этот мессенджер отправлялось в среднем 752 тысячи сообщений в секунду. Если бы WhatsApp работал на блокчейне Биткоина, то пользователи стояли бы в очереди на создание 179 блоков, которые смогут вместить такое количество сообщений. И вместо 1 секунды ждали бы 1790 минут, то есть на доставку сообщения уходили бы 1 сутки 5 часов 50 минут.

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

Какие возможности должен предоставлять пользователям защищенный мессенджер

Регистрация по номеру телефона

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

Удаление сообщений и аккаунта

Возможность удаления сообщений — неотъемлемая функция, которая должна присутствовать в защищенном мессенджере. В некоторых мессенджерах можно включить удаление сообщений через заданный промежуток времени. Также и с удалением аккаунта: если пользователь не заходил в приложение в течение установленного срока, то аккаунт автоматически удаляется вместе со всеми диалогами и прочими данными.

Голосовые и видеозвонки

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

Групповые чаты

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

Обмен контентом

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

Защищенный мессенджер для бизнеса

Какие возможности открывает бизнесу свой защищенный мессенджер

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

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

Выходит, что пользоваться некоторыми приложениями для обмена сообщениями небезопасно: поставщик услуг может оказаться ненадёжным. Одно дело, когда пользователь идёт на компромисс, и совсем другое, когда сервис скомпрометирован. Бизнесмены не должны рисковать своей конфиденциальной информацией.

В таком случае собственный мессенджер с шифрованием решит проблему защиты ваших данных при общении. Вы можете сделать приложение закрытым: регистрация будет доступна только по приглашению существующим пользователем или конкретным человеком. Хранить данные на своём сервере, всегда иметь возможность полностью удалить их — вы сами будете контролировать информацию, которая проходит через ваш мессенджер.

Стоимость создания мессенджера с шифрованием

Разработка защищенного мессенджера — это сложный и трудоёмкий процесс. Нельзя собрать толпу из недорогих фрилансеров и выполнить задачу за несколько дней. Бэкенд для такого приложения имеет особые нюансы, и только с грамотным подходом можно упростить процесс, уменьшить срок разработки и её стоимость. Всё зависит от используемого стека технологий и реализуемых функций.

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

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

Само создание защищенного мессенджера состоит из таких этапов:

  1. Написание технического задания (если у вас его нет) — от 50 часов.
  2. Бизнес-анализ и спецификация — от 40 часов.
  3. UI и UX дизайн — около 150 часов.
  4. Разработка бэкенда — более 500 часов, в зависимости от требуемых функциональных возможностей приложения и количества платформ (ОС).
  5. Разработка мобильного приложения — более 320 часов.
  6. Тестирование — около 250 часов, в зависимости от количества платформ и функциональности.

Исходя из этих данных, приблизительная стоимость MVP приложения начинается от 50 000 долларов и дальше зависит от факторов, усложняющих работу. Также придётся заранее учесть, что после завершения разработки мессенджер ещё нужно поддерживать: исправлять возможные ошибки, дорабатывать и реализовывать новые функции. Такое обслуживание после релиза оплачивается отдельно.

Polygant 4 года занимается созданием мессенджеров для различных платформ. Мы умеем разрабатывать уникальные безопасные приложения, всегда учитываем пожелания заказчиков, подстраиваемся под специфику деятельности. Пришлите заявку и после детального обсуждения мы сразу приступим к работе над вашим проектом!

Ваше сообщение было успешно отправлено. Мы скоро с Вами свяжемся!