Telegram vs ФСБ

Telegram vs ФСБ


Прочитав новость об очередном акте Марлезонского балета «Телеграм vs ФСБ», Штаб Политрука задумался об смысле сего действа ещё раз.

Вооружившись принципом радикального сомнения Декарта, целесообразно задать вопросе - насколько соответствуют действительности утверждения разработчиков Телеграма?

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

А вот про “защищенный от прослушивания” врут, и вот почему.

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

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

При этом оператор сотовой связи или провайдер не могут выступить в такой роли - им помешает механизм сертификатов безопасности.

А вот владелецу сервера ничего не может помешать, кроме честности - он и так в середине, так протокол Телеграма устроен.

Так что лукавят хозяева Телеги - или в том, что “подслушать нельзя”, или в том, что делают вид, что не понимают, как подслушать можно.


Вторым вопросом повестки был - для чего вообще используется шифрование и где?

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

Первым массовым, по всей видимости, был “защищённый HTTP” - то, что каждый из вас имеет возможность наблюдать в адресной строке любимого браузера слева от имени домена в виде оптимистично оформленного значка и всплывающей надписи “соединение защищено”. 

Для чего оно нужно?

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

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

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


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

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


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

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

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

Следующий вопрос повестки - что такое оконечное шифрование и почему оно понадобилось?

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

А можно ли обойтись без этих непонятных центров, тем более требующих за свои услуги немалые деньги, и вообще без необходимости доверять кому-то третьему? 

Оказывается можно - сама проблема называется “выработка общего секретного ключа”, а наиболее известный алгоритм предложен Диффи и Хеллманом [https://youtu.be/vFjq9pID4-E]. 

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

А значит их не может узнать и ФСБ.

Казалось бы, вопрос можно закрыть, но есть пара нюансов. 

И первый из них - Конституция: часть 2 статьи 23 “Каждый имеет право на тайну переписки, телефонных переговоров, почтовых, телеграфных и иных сообщений. Ограничение этого права допускается только на основании судебного решения” и часть 3 статьи 55 “Права и свободы человека и гражданина могут быть ограничены федеральным законом только в той мере, в какой это необходимо в целях защиты основ конституционного строя, нравственности, здоровья, прав и законных интересов других лиц, обеспечения обороны страны и безопасности государства”. 

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

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

Не можете ни того, ни другого - исполняйте решение суда.



Report Page