О торрентах и анонимности
Изобретение BitTorrent протокола, несомненно, одно из самых главных событий в истории Интернета. Хотя у большинства людей торренты напрямую ассоциируются с пиратством, технология применяется и для вполне легальных целей. К примеру, такие компании как Blizzard или Wargaming встроили торрент-клиент в установщики своих игр, чтобы после очередного обновления игроки не обрушивали сервера, а качали гигабайтные патчи друг у друга.
Но сегодня я бы хотел поговорить не о моральных аспектах использования BitTorrent протокола, а об угрозе анонимности, которую он представляет. Но для начала нам нужно слегка заглянуть под капот технологии.
Чтобы клиенты могли установить подключение и начать обмен, им нужно узнать адреса друг друга. Адреса они запрашивают у специальных серверов – торрент-трекеров. К трекерам очень часто прикручены форумы с поиском по каталогу, с описаниями и скриншотами, но это все побочные и опциональные функции. Самая важная задача трекера заключается в том, чтобы на запрос для определенного торрент-файла вернуть список клиентов, заинтересованных в обмене.
Торрент-файл, который пользователи добавляют в свои клиенты, содержит метаданные, состоящие из обязательной и опциональной частей. Обязательная часть содержит имена и контрольные суммы всех файлов раздачи, а также некоторую другую информацию. Для нее считается SHA-1 хеш, который становится ключом для хранения списка клиентов в хеш-таблице на трекере. В необязательной части прописываются адреса трекеров.
Информация о трекере в торрент-файле может отсутствовать, либо трекер может по каким-либо причинам быть недоступен. На этот случай предусмотрена специальная технология DHT (distributed hash-tables или распределенная хеш-таблица). По сути, каждый клиент становится узлом распределенной сети, который рассылает всем известным ему узлам, что если кого-то интересует торрент с определенным хешем, его нужно направлять на этот узел.
Это значит, что любой узел может просто посылать анонсы для популярных раздач и логгировать адреса всех заинтересованных клиентов. Один, скажем так, энтузиаст, реализовал это на практике. О результатах можно почитать здесь.
Если вы уже почувствовали себя неуютно и вспомнили серию Южного Парка, где ребята скачали несколько песен Металлики и Джудас Прист, после чего к ним вломилось ФБР, держитесь, сейчас будет еще веселее.
Еще в 2016 году появился сервис, в котором можно по ip-адресу просмотреть список торрентов, качавшихся и раздававшихся с этого адреса в последнее время. О нем писали на Хабре, после чего с автором статьи связались разработчики сервиса и рассказали, что в основном они сотрудничают с рекламными платформами, хотя и правообладателям информацию продают.
Для кого-то сервис показывает полнейшую чушь, для кого-то настоящие результаты. Если у вас статический ip, скорее всего, картина вас не порадует. У одного моего друга – динамический, но провайдер стабильный, и подключение не рвется месяцами. Поэтому друг увидел знакомые раздачи, даже несмотря на то, что DHT в его клиенте отключен. Так что информация в статье верная, авторы сервиса используют несколько методов сбора информации.
Какие выводы из этого можно сделать? Сама архитектура протокола не предполагает никакой анонимности. Единственный способ гарантированно нигде не засветить свой адрес – вообще не пользоваться торрентами. Но риск можно немного снизить, для этого следует:
- отключить в клиенте DHT;
- пользоваться публичными трекерами только в случае крайней необходимости, желательно через vpn;
- всеми правдами и неправдами пробраться на трекер, где регистрация только по приглашениям.
Пост написан исключительно для общего развития. Помните, что пиратство – это, во-первых, плохо, а во-вторых, уголовно наказуемо.