Сегодня мы хотим рассказать о True Secure Messenger (TSM), поделиться опытом практического применения концепций безопасности и обратить внимание на ключевые моменты в разработке этого приложения.
Данный продукт был разработан компанией Telesens в 2016 году, опубликован в Google Play и продолжает свое функционирование.
Так что же собой представляет TSM?
Это защищенный мессенджер, в котором авторизация пользователей и все коммуникации осуществляются на основе методов криптографии.
TSM — это программное обеспечение для:
- сервера;
- клиента (для мобильного устройства, работающего под управлением операционной системы Android);
- клиентского приложения для ПК, под управлением ОС Windows и Linux.
Исключительная безопасность коммуникаций или концепции безопасности на практике.
При разработке мессенджера учитывались десятки принципов безопасности которые должны послужить действительно защищенной коммуникации. Говорить обо всех не будем, так как это широкая и объемная тема. Мы выделили несколько из них.
Сквозное шифрование (end-2-end encryption)
Хранение информации в открытом виде на сервере, в случае его взлома злоумышленником, приведет к полному доступу к конфиденциальной информации, переписке, файлам. Поэтому все данные на сервере хранятся в зашифрованном виде и расшифровка производится только на стороне клиента (пользователя), используя его личный ключ-дешифратор. Это полностью исключает утечку информации по вине администрации сервиса или в результате взлома серверов хакерами.
Открытость исходного кода
Данный принцип позволяет заинтересованным пользователям (компаниям) самостоятельно убедиться в том, что данное ПО не является вредоносным и не имеет никаких скрытых возможностей (backdoor) для получения доступа к конфиденциальной информации.
Шифрование данных
Для шифрования данных и цифровой подписи используются высоконадежные алгоритмы (AES, EdDSA, Curve25519) с длиной ключа 256 бит. При шифровании передаваемой информации используется временный сессионный ключ. Он меняется при каждом изменении состава участников чата, а также по истечении заданного периода времени.
Безопасная коммуникация между клиентом и сервером
Все сообщения/операции Пользователя и входящая от сервера информация подтверждаются цифровыми подписями пользователя и сервера соответственно. Личный пароль пользователя не хранится на устройстве и никогда его не покидает. Личные ключи пользователя для электронной подписи и для «облачного» хранилища хранятся на устройстве в зашифрованном виде. Они никогда и ни в каком виде не передаются по сети, могут быть экспортированы на другое устройство только через файл или QR код.
Для идентификации пользователя используется многофакторная аутентификация. Осуществляется она по нескольким признакам: идентификатор устройства, идентификатор приложения, регистрационный ключ, личная подпись. Аутентификация устройства пользователя происходит с использованием одноразовых кодов сервера — комбинацию признаков невозможно использовать повторно. Идентификаторы устройств хранятся в базе данных сервера в хэшированном виде, что исключает возможность их использования в случае утечки данных из сервера.
Гибкая настройка под нужды каждого
Мессенджер имеет настройки хранения истории переписки. Позволяет не просто хранить ее в зашифрованном виде на сервере или только на клиенте выбранный промежуток времени, но и полностью отключить сохранение истории. При регистрации нового пользователя нет привязки к мобильному номеру телефона и нет необходимости в доступе к телефонной книге, что также выделяет данный продукт от аналогов на рынке.
В виде заключения
Хотелось бы упомянуть о встроенной защите от атак типа «человек посередине» (MITM), которая автоматически блокирует чат при обнаружении угрозы. Всё вышеописанное позволяет нам вести безопасную коммуникацию в цифровом мире как друг с другом, так и со структурами такими как банки, суды и т.д.
True Secure Messenger — это концепции безопасности на практике.