Signal — мессенджер, в который из WhatsApp ушли миллионы пользователей. Вас может (неприятно) удивить его внешний вид, зато он очень безопасный Разбираемся, что в нем есть, а чего — нет
Primakov / Shutterstock.com
Из-за обновления политики конфиденциальности многие пользователи WhatsApp стали переходить в другие, более приватные мессенджеры. От этого особенно выиграл Signal, популярный среди журналистов, правозащитников и политических активистов, но не среди обычных людей. Еще год назад этим мессенджером пользовалось около полутора десятков миллионов человек, а после истории с WhatsApp, по некоторым оценкам, каждый день добавляется примерно по миллиону новых пользователей. Этот мессенджер стремится обеспечить максимальную приватность собеседников и при этом остается бесплатным. «Медуза» рассказывает, какие у Signal есть достоинства и недостатки.
✔️ Есть приложения для телефонов и компьютеров
Существуют официальные клиенты:
- для телефонов на Android
- для iPhone и iPad
- для компьютеров с Windows
- для компьютеров с macOS
- для компьютеров с Linux
У вас обязательно должен быть установлен Signal на мобильном устройстве — иначе вы не сможете воспользоваться им на компьютере (при этом использовать его одновременно на двух телефонах нельзя). Десктопные приложения считаются вспомогательными — связанными с основным, мобильным (айпад может выступать в роли как основного, то есть мобильного, устройства, так и вспомогательного, как компьютеры). У одного аккаунта может быть до пяти вспомогательных приложений.
❌ Нет версии для бразуера
И пока не планируется. Основатель проекта Мэтью Розенфельд (более известный как Moxie Marlinspike) объяснял, что веб-версию очень сложно реализовать надежным образом. Разработчики не могут полностью контролировать запущенный в браузере код, а его можно незаметно подменить для проведения атаки.
Версии для браузеров есть у Telegram (web.telegram.org) и WhatsApp (web.whatsapp.com). Но в веб-версии телеграма нет секретных чатов со сквозным шифрованием. А изобретенный вотсапом протокол для веба исследователи безопасности смогли использовать для подмены сообщений пользователя, для этого они сначала перехватили в браузере ключи шифрования, сгенерированные для защиты канала связи между браузером и телефоном пользователя.
«Медуза» подсматривала ключи шифрования в браузере, когда изучала работу московской системы дистанционного интернет-голосования.
В 2019 году мы расшифровали голоса избирателей на выборах в Мосгордуму. А в 2020-м во время голосования по поправкам к Конституции РФ обнаружили, что избиратели могут свое тайное голосование сделать явным, причем верифицируемым.
🆔 Идентификатор пользователя — его телефонный номер
- Ваш телефонный номер нужен для регистрации в Signal — так же, как в WhatsApp и Telegram.
- Вы не можете связаться с человеком в Signal, если не знаете его телефонного номера. А вот в телеграме это возможно, если ваш собеседник завел себе псевдоним (username).
- Если вы не хотите раскрывать собеседникам номер своего мобильного телефона, придется завести второй телефонный номер и зарегистрировать на него Signal. Это может быть важно, поскольку в России по номеру телефона о человеке можно узнать очень много, в том числе приватную информацию (и даже сотрудник спецслужб не сможет себя уберечь от такого).
- В Signal невозможно навсегда закрепить за собой конкретный аккаунт, так как он привязан к телефонному номеру. Очень важно контролировать этот номер.
📇 Сервис не хранит у себя список ваших контактов
Приложению нужно знать телефоны ваших собеседников и понимать, есть ли у них учетные записи в Signal, чтобы вы могли связаться через мессенджер. При этом сам сервис принципиально отказывается хранить у себя ваш список контактов в открытом виде. Даже сотрудники компании (не говоря уже о внешних наблюдателях) не могут узнать, кто с кем общается — и построить социальный граф всех пользователей.
Поэтому уведомления о том, что тот или иной человек из вашей адресной книги теперь обзавелся учетной записью в Signal, генерирует ваше приложение. Оно периодически отправляет телефоны из вашей адресной книги специальному сервису, но не в открытом виде, а в закодированном — в виде усеченных хеш-сумм. Сервис компании сравнивает их с полными хеш-суммами телефонных номеров всех пользователей (которые у компании есть благодаря тому, что в виде хеш-суммы кодируется каждый номер), в ответ сообщает, кого нашел, и сразу забывает о запросе.
Проблема с этими хешируемыми данными (а это телефонные номера, которые состоят только из цифр) в том, что они предсказуемы. Сервис в теории может перебрать все возможные варианты и следить за телефонами из адресных книг своих пользователей.
Для того, чтобы пользователям не приходилось доверять разработчикам на честное слово, они выложили в открытый доступ исходный код этого сервиса. И запустили его специальным образом, так, чтобы можно было проверить, что запущен именно он, а не какая-то другая программа.
🤙 Мессенджер предлагает все стандартные функции
Пользователи могут:
- переписываться
- созваниваться (в том числе по видеосвязи)
- записывать голосовые сообщения
- пересылать файлы
- делиться фото и видео
- отправлять стикеры (скоро должны появиться и анимированные)
- оставлять реакции к сообщениям в виде эмодзи
- делиться контактами
- указывать свое местоположение на карте
- объединяться в группы
- вести недоступные больше никому заметки
Все это сделано так, что Signal даже в теории не может узнать о вас какую-то информацию или ограничить общение. Все звонки, обмен сообщениями и файлами защищены сквозным шифрованием. А сервис, когда передает данные, явно знает только получателя, но не отправителя.
Даже наборы стикеров не хранятся на серверах компании: несколько предустановлено в мессенджере, остальные пересылаются пользователями друг другу в зашифрованном виде. Signal не в курсе, кто их создал, и не может запретить вам обмениваться даже особенно оскорбительными стикерами.
Для сравнения: в Telegram каждый стикерпак имеет свой постоянный адрес и считается публичным, поэтому компания предлагает пользователям жаловаться на них так же, как на каналы и боты.
⚠️ Signal на Android позволяет отправлять из мессенджера обычные SMS. Но будьте осторожны!
При установке мессенджера он предлагает использовать его в качестве приложения для SMS и MMS. Но стоит помнить, что такие сообщения не шифруются и будут храниться в открытом виде у мобильных операторов.
Если вы все же разрешили отправлять эсэмэски через Signal, проверяйте поле ввода. Если там написано «Сообщение Signal», используется сквозное шифрование (вы отправляете сообщение в мессенджере); а если «Незащищенное SMS» — не используется (это обычная эсэмэска, которая будет храниться у мобильного оператора).
Отправлять зашифрованные SMS все-таки можно
На заре существования мессенджера его разработчики позволяли шифровать и SMS, но потом осознанно отказались от этой функции. Шифрование не защищало от утечки метаданных: мобильные операторы знали, кто с кем, когда и как часто общался. Кроме того, собеседники сами должны были обмениваться ключами шифрования и заботиться, чтобы они были актуальными: в противном случае они могли получить абракадабру и потерять важное сообщение.
Некоторые пользователи решили, что шифрование SMS все же было полезным, и благодаря открытому исходному коду Signal создали на его основе отдельное приложение. Сейчас оно называется Silence. Его можно установить на Android и использовать как основное приложение для SMS и MMS (ничего другого там нет).
👻 Ваши сообщения могут исчезать через несколько секунд, а фотографии и видеозаписи — после одного просмотра
Мессенджер для Android и iOS позволяет установить таймер для автоматического удаления сообщений в конкретной переписке. Пользователь может установить его в диапазоне от пяти секунд до одной недели. Эта функция аналогична самоуничтожаемым сообщениям в Telegram, но там она работает только для секретных чатов, а в Signal — для всех, потому что в нем все чаты секретные.
Signal позволяет прислать собеседнику фотографию или видео, которые исчезнут сразу после просмотра. Правда, это не очень просто:
- нужно вернуться на главный экран приложения
- выбрать значок фотоаппарата
- после съемки фото или видео нажать кнопку слева внизу, которая переключает режим просмотра с бесконечного на однократный
- выбрать одного или нескольких получателей, нажав на стрелочку справа
🙈 Мессенджер умеет прятать лица на фотографиях
Gemma Chua Tran / Unsplash
Когда вы фотографируете в мессенджере или собираетесь поделиться готовым снимком, перед отправкой его можно отредактировать. Один из инструментов отвечает за размытие картинки. Можно водить по экрану пальцем или воспользоваться переключателем «Размыть лица».
💻 После подключения нового устройства на нем не будет старых переписок
Так происходит не только при установке приложения на компьютер, но и в случае смены мобильного телефона — и это, возможно, главный шок при использовании. Но это не ошибка, а осознанный выбор разработчиков. Они объясняют это заботой о безопасности пользователей. В противном случае злоумышленнику достаточно было бы завладеть телефонным номером (например, украсть сим-карту), чтобы получить доступ ко всем вашим сообщениям.
Правда, мы не знаем, почему они отказались от синхронизации мобильного устройства с компьютером, ведь, чтобы воспользоваться десктопным приложением, все равно нужен телефон. И если злоумышленник смог его установить, значит, у него и так есть доступ к телефонному номеру и всем данным.
Но если злоумышленник все же получил номер другого человека, он может попытаться выдать себя за него — для этого ему потребуется точно знать номера собеседников жертвы.
При этом ему нужен именно телефон (или айпад), потому что воспользоваться десктопным приложением без него не получится. А поскольку пользоваться Signal на двух мобильных устройствах сразу нельзя, настоящий владелец сразу потеряет к нему доступ. Именно поэтому так важно контролировать тот номер, на который зарегистрирован мессенджер, и соблюдать другие меры предосторожности. ⬇️
🧐 Во-первых, верифицируйте собеседников
Мессенджер предлагает пользователям сравнивать код безопасности (safety number). У каждой пары собеседников он будет уникальным. Одинаковый код на ваших устройствах — гарантия того, что вы общаетесь напрямую, без «невидимого посредника», организовавшего атаку и имеющего доступ к вашей переписке (man-in-the-middle attack).
Для этого нужно:
- забраться в «Настройки разговора» с конкретным человеком,
- выбрать пункт «Просмотреть код безопасности»,
- сравнить массивы цифр у себя и вашего собеседника (продиктовать их во время видеозвонка или отсканировать QR-код при встрече офлайн),
- активировать переключатель «Подтвержден»,
- проверить, что у вашего контакта появилась соответствующая пометка.
Если этот код потом поменяется, Signal сообщит вам об этом. Смена кода — предупреждение, что кто-то мог завладеть телефонным номером вашего собеседника. Но причина может быть и другой: ваш знакомый купил себе другой телефон или переустановил мессенджер на прежнем. В любом случае стоит снова сравнить ваши коды безопасности.
🔢 Во-вторых, используйте пин-код
Недавно Signal начал предлагать своим пользователям завести пин-код. Он выполняет несколько функций: позволяет сохранить в облаке ваш список контактов в зашифрованном виде (но не сообщения) и защитить от угона ваш аккаунт.
Если злоумышленник получит доступ к вашему телефонному номеру, но не будет знать пин-код, после нескольких неудачных попыток ему на семь дней запретят регистрироваться по этому номеру. Если за это время вы ни разу не воспользуетесь мессенджером, через неделю он все же сможет завести себе аккаунт. А если воспользуетесь, счетчик будет сброшен и отсчет семи дней начнется заново.
Но напомним: даже в худшем случае, если злоумышленник все-таки сможет установить Signal по вашему номеру, он не получит доступа ни к вашим перепискам, ни к списку контактов. Ваши собеседники получат сообщение о том, что у вашего номера сменился код безопасности, и смогут предпринять меры предосторожности.
Чтобы удостовериться, что вы не забыли свой пин-код, Signal будет периодически просить вас ввести его. Эти напоминания можно отключить, но восстановить забытый пин-код невозможно. Если вы его забудете, то тоже сможете установить мессенджер на новое устройство или переустановить на старое только через неделю. Речь только о смартфонах — для связи с компьютером пин-код не нужен.
Разработчики рассчитывают, что пин-код в будущем поможет избавиться от жесткой привязки к телефонному номеру как единственному идентификатору пользователя.
📲 Старую переписку иногда можно перенести на новый телефон. Но делать это придется самому
Владельцам телефонов и планшетов от Apple достаточно иметь под рукой оба мобильных устройства: старое и новое.
Тем, у кого телефоны на Android, придется создавать локальные копии, зашифрованные паролем из 30 цифр, и самим переносить их на новое устройство.
В любом случае не получится перенести старые сообщения с Android на iOS и наоборот.
✋ И вот еще несколько ограничений
- В группе не может быть больше тысячи человек.
- А в групповых звонках могут принимать участие до восьми человек.
- Существуют ограничения на размер пересылаемых: файлов — до 100 Мб, видео — до 500 Мб.
- Нельзя исправить отправленное сообщение. Можно только удалить старое и написать новое.
- В Signal нет аналогов телеграм-каналов. Все общение там приватное.
Второй фактор в Signal
Первый фактор (фактор владения) в мессенджере - это ваш телефонный номер. Вторым фактором (фактор знания) обычно является пароль, а в данном случае это пин-код. Проблема заключается в том, что злоумышленник может "сбросить" пин-код, получив доступ к вашему номеру. Мы об этом подробно рассказываем чуть ниже.
Мэтью Розенфельд (никнейм — Moxie Marlinspike)
Американский программист и криптограф, создатель Signal, бывший руководитель группы по безопасности в Twitter. Разработанные им протоколы используются для защиты также в WhatsApp.
Хеш-сумма
Число, являющееся результатом обработки неких данных математическим алгоритмом — хеш-функцией. Она преобразует любые данные произвольного размера в число фиксированного размера — хеш-сумму.
Перебор хеш-сумм
«Медуза» недавно проделала такой трюк и восстановила номера паспортов российских граждан, проголосовавших летом 2020 года за или против Конституции РФ через интернет.