Немного про процесс разработки Opengram.
Сейчас речь не пойдёт про добавленный «режим призрака», ускорение скорости загрузки медиа (иногда — до скоростей Premium) или множество улучшений интерфейса.
Когда автор интернет-ресурса (или уже разработчик?) добавлял очередной свой домен в список HSTS Preload (если просто — он встраивается в браузеры и всегда требует использовать HTTPS для сайта), ему пришла идея сделать тот же самый Preload, только для Telegram.
Кроме этого, не отходя от «кассы», можно было попытаться решить одну из архитектурных «дыр» Telegram — отсутствие сквозного шифрования по умолчанию.
Opengram Preload предполагал возможность добавить свой постоянный User ID в список, который бы «вшивался» в клиенты и требовал создавать только «секретный чат» с пользователем вместо облачного.
У этого «дизайна» было несколько проблем. Во-первых, только клиенты Opengram будут использовать этот список — что, на данном этапе, означает бессмысленность всего «мероприятия».
Во-вторых, этот список будет доступен всем, кому не «лень» — и учитывая то, что он содержит постоянный идентификатор, это создаёт хорошую возможность «следить» за пользователями в нем.
Любой смог бы скачать исходный код клиента, «вытащить» из него список UID и пометить каждый из них как «желающий приватности». Даже при том, что включение своего UID полностью опционально, создавать возможность добавить себя в такой публичный «лист» неприемлемо.
Касательно второго «пункта». По умолчанию, включение принудительного сквозного шифрования (секретных чатов) распространяется только на новые исходящие чаты, в т. ч. из-за крайней непопулярности секретных чатов.
Opengram различает «старые» и «новые» путём создания «снимка» всех идентификаторов чатов (не их содержания) при первом включении функции.
Этот список — «лакомый кусок» и потенциальная цель для ряда лиц, в т. ч. цифровых криминалистов, поэтому он зашифрован с применением Android StrongBox Keystore.
Все ключи генерируются и хранятся внутри StrongBox (т. е. криптографического процессора устройства). Сам файл зашифрован с применением AES-256 в режиме GCM.
На устройствах без поддержки StrongBox «снимок» не шифруется никак. В большинстве своём это очень старые устройства без криптографического процессора, подобрать пароль к которым (а значит — и к Android Keystore) достаточно просто.
На них дополнительные криптографические операции только создадут лишнюю нагрузку на логический процессор.
По умолчанию, код Opengram не записывает какие-либо данные на диск. Ровно так же, как и не делает своих сетевых запросов.
Попробовать все новые «фичи» можно в стабильном релизе 12.10.5c (7110), который уже доступен на GitHub.
Вам повезёт. || Интернет-сайт
Post #324
554
- ❤ 10