Каждый раз, когда разговор заходит о сохранении анонимности — а к этому вопросу так или иначе приводит множество тем, от свободы слова и вообще соблюдения гражданских прав до денежных переводов — мне вспоминается история, лично для меня являющаяся лучшей иллюстрацией того, как сложно удержать в секрете личность человека, если за ним организована охота. И это не история какого-то чёрного хакера, политического или религиозного диссидента. Это история Андрея Чикатило, одного из самых отвратительных преступников XX века.
Двадцать лет назад его имя было нарицательным. На его примере родители, школа, милиция учили нас, советских школьников, не общаться с незнакомыми на улице, не садиться с незнакомыми в лифт, не пускать незнакомых в дом. Он открыл для Советского Союза новый феномен: простого гражданина, под маской которого прячется хладнокровный убийца. Не знаю, слышат ли о нём дети сейчас, не мне решать, стоит ли о нём рассказывать вашим детям, но в биографии Чикатило есть минимум один ценный момент, забывать о котором не стоит и взрослым.
Обычный советский гражданин. Среднее специальное, а потом и высшее образование, армия, карьера воспитателя в училище, жена, дети. И — больше пятидесяти загубленных жизней. Он заманивал жертву в безлюдную местность, жестоко убивал. За ним охотилась вся страна, его поимку Партия называла одно время важнейшей из задач, на него были истрачены миллионы рублей и двенадцать лет.
А поймали очень просто. В ноябре 90-го милиционер, патрулировавший потенциально опасный район, проверил у Андрея Романовича документы и записал фамилию. На нём не было крови, из сумки не торчал нож, да и сумку вроде бы не проверяли. Но шестью годами ранее его имя уже засветилось среди тех, кого опрашивали в ходе розыскных мероприятий. И это крохотное совпадение поставило точку в биографии маньяка. Десять дней спустя он начал свой страшный рассказ.
Чикатило стал жертвой несложного рассуждения: если события произошли независимо друг от друга, между ними не должно быть ничего общего. И напротив, каждое совпадение в списке атрибутов будет указывать на связь. Математикам и программистам это правило известно как часть метода records linkage (букв. сопоставление записей в базе данных): оно — благо, если речь идёт о поимке преступника. Но и проклятие для всех, кто жаждет анонимности.
Чтобы лучше понять проблему, на неё нужно взглянуть от первого лица. Поэтому давайте проведём мысленный эксперимент. Представьте себя гражданином страны, в которой свобода слова значительно ограничена (к примеру, не приветствуется острая критика политиков или связанных с властью религиозных лидеров), а выход за ограничения наказывается помещением героя в места не столь отдалённые. Обойдёмся без имён, полагаю вы без труда назовёте хотя бы одно такое государство.
А теперь заведите блог, в котором вы реализуете своё гражданское право на критику всех и вся. Как не угодить за решётку? Естественно, работая анонимно. Благо, технологии нынче достаточно развиты, имеется масса готовых решений. Вопрос в том, насколько они способны противостоять элементарному методу, с помощью которого когда-то поймали Чикатило.
Пытаясь вычислить вас, ваш противник составит таблицу. Строчками в ней будут подозрительные объекты (в истории Чикатило это парки и пригородные районы), столбцами — свойства этих объектов, которые противник имеет возможность контролировать (в истории с Чикатило такими были фамилии людей, в парках появляющихся). Эта общая схема уточняется в каждом конкретном случае, но вне зависимости от конкретики любые совпадения наведут на ваш след — так же, как фамилия маньяка, появившаяся дважды в записях разных лет.
Задача облегчается ещё и тем, что обыватель мыслит шаблонно. Нужна анонимность? Стандартный рецепт: пользуйтесь публичной точкой доступа Wi-Fi, купленным с рук смартфоном, шифруйте трафик с помощью TOR. Надёжно? Увы, нет. Имея возможность контролировать состояние «всех парков страны», то есть всего национального сегмента Интернет (вы конечно слышали и про российский СОРМ, и про натовский Echelon), ваш противник вычислит вас, перебираясь от одного совпадения к другому.
TOR? Да, он позволяет скрыть точный смысл передаваемых данных от посторонних глаз, скрыть адреса узла-источника (ваш компьютер) и узла-назначения (ваш блог). Но, во-первых, чтобы вы попали в список подозреваемых, противнику не обязательно знать, что именно содержит исходящий с вашего компьютера трафик: достаточно самого факта вашей интернет-активности в определённые моменты времени (в момент появления свежей публикации на блоге). И, во-вторых, TOR пока ещё недостаточно популярен: пользователей в нём мало, что значительно ослабляет его стойкость (становится практически возможным быстрое выявление адресов, анализ трафика).
Публичный Wi-Fi? Да, так вы собьёте ищеек и в худшем случае они придут не к вам домой, а к владельцу точки доступа — в кафе, библиотеку. Но и здесь сопоставление записей быстро сузит круг подозреваемых до нескольких человек или конкретно вас: противнику будет достаточно проанализировать записи с видеокамер и выбрать тех людей, которые появляются в кадре в подходящее время (накануне обновления блога).
Чужой ноутбук? Краденый смартфон? Анонимная SIM-карта? Полагаю, вы уже готовы предугадать действия идущих по вашему следу: определив повторяющийся атрибут (к примеру, MAC-адрес компьютера или IMEI телефона), они в конце концов отыщут и вас.
И это лишь первое приближение. Упомянутые здесь MAC и IMEI выводят нас на огромную категорию «тайных идентификаторов», о существовании которых публика в массе своей даже не догадывается. Попросту говоря, есть множество мелочей, не замечаемых обывателем, но способных послужить общим свойством в таблице для сопоставлений. К примеру, шифрованный трафик TOR имеет некоторые характерные особенности. В логах веб-серверов хранятся не только IP-адреса, но и полные названия версий браузеров и операционных систем посетителей. В тэгах многих фотографий вписаны GPS-координаты места съёмки и серийный номер фотоаппарата. Два отрывка текста могут быть связаны между собой автороведческой экспертизой (лингвистические особенности укажут на автора), а характерный нажим пера выдаст автора анонимного рисунка. И так далее, и так далее.
Так можно ли добиться стопроцентной анонимности? Можно, но не так, как полагает большинство. Удлиняя цепочку технических решений для обезличивания, мы в лучшем случае осложняем противнику поиск, а в худшем дарим ему новые свойства, которые он сможет использовать для выявления корреляций. Решение предлагает математика (в частности, метод, известный как k-анонимизация — хоть он и предназначен для другой задачи): чтобы оторваться от погони совсем, необходимо сделать бесполезной таблицу объектов и свойств.
Как? Либо смешаться с толпой, стереть свои характерные отличия, сделать количество совпадений чрезмерно большим (вспомните, почему так долго не могли поймать Чикатило: у него не было отклонений, не было особенностей — он был как все!). Либо сознательно рвать каждую связь: никогда не пользоваться дважды одним устройством, одной точкой доступа, не появляться в одном месте, поменять авторский стиль (возможно ли?).
В обоих случаях цена решения оказывается неадекватно высокой, а техническая сложность запредельной для подавляющего большинства. Чистый итог: абсолютная анонимность математически достижима, практически же — как Вселенная, которая конечна, но до краёв которой никогда не добраться — обречена остаться мечтой.