«С кем я разговариваю?» — это два вопроса в одном предложении. Один о том, какой аккаунт написал сообщение, другой о машине на другом конце сетевого соединения, которое ваш клиент действительно держит. В чате через посредника это почти никогда не одна и та же сущность, и это различие объясняет большую часть путаницы о том, что VPN скрывает, а что не скрывает от человека, которому вы пишете. Если топология понятна, вопрос о приватности становится вопросом с ответом, а не эмоциональным.

Ваш клиент разговаривает с сервисом, а не с другим человеком

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

Alex's client  ->  chat service  ->  your client

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

Разные наблюдатели собирают разные доказательства

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

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

ObserverSeesCannot conclude
YouYour connection to the service, message contents, sender-supplied detailsThe other client's source address
The other participantTheir connection, message contents, what the service attachesYour source address
The serviceBoth connections, account mapping, delivery metadataWhat it does not retain, or what leaves its boundary

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

Когда приложение действительно работает напрямую

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

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

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

Что это значит для VPN

VPN меняет то, что сервис видит о вашем соединении. Он не меняет того, кто ваш транспортный партнёр, и не даёт другому участнику нового представления о вашем адресе. Ожидать, что VPN скроет вас от человека, которому вы пишете, — категориальная ошибка: у их клиента никогда не было соединения с вашим.

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

Затем держите два вопроса раздельно во всём, что записываете. Какой аккаунт это отправил и какая точка входа это пронесла. Ответьте явно на оба, отметьте, кто может наблюдать каждый ответ, и перестаньте сводить их в один вердикт о том, можно ли отследить сообщение.

Похожие статьи