Идентификация людей по “географическим координатам”
Предположим, что некий сервис распространяет программу для мобильных устройств, предлагающую какие-то услуги и при этом передающую обратно провайдерам сервиса данные о положении мобильного устройства (используется GPS-модуль). За примерами не нужно далеко ходить: вот вам “Мобильные Яндекс.Карты” – там, очевидно, передача сведений о местоположении устройства-носителя “на центральный сервер” в разные моменты времени используется для построения карты “свободных дорог”.
Допустим, что само мобильное приложение – “анонимное”, при загрузке из Интернета не требует идентифицировать загружающего. Можно ли позже, с помощью анализа перемещения устройства, выяснить, с хорошей точностью, персональные данные пользователя? При этом, понятно, никаких исходных персональных данных программа не собирает: это же не программа-шпион, правда? В записной книжке коммуникатора приложение не роется, каких-то уникальных параметров-идентификаторов из сети оператора связи не получает, и вообще, возможно, код приложения полностью открыт – всё должно быть строго, иначе такую программу перестанут использовать.
На первый взгляд, подобная задача может показаться невероятно сложной, даже неразрешимой: “чистая” программа, анонимная загрузка – есть только данные о вероятном местонахождении конкретного владельца. Как тут этого владельца-то вычислить?
Прежде, отметим один момент: формальной анонимности пользователя вовсе не противоречит создание на сервисе уникального аккаунта, привязанного к данной копии программы. Это необходимо и для обновлений, и для придания устойчивости системе в целом (помогает бороться с “поддельными запросами” злых хакеров и т.д.) Только по аккаунту личность пользователя установить нельзя.
Теперь о том, как же вычислить пользователя. Вот как: фиксируются его места пребывания в рабочее время, и в не рабочее время. Приехал человек на работу, находится долго “на одном месте” – несложно вычислить и место, и, собственно, рабочее время, так как людям свойственно действовать по некоторому графику. Вычисляется всё автоматически, никакой “сложной эвристики”.
Аналогично определяется вероятное место жительства – после работы люди едут домой, понятно. Итак, есть уже пара “точек на карте”, привязанных к одному пользователю. Понятно, что координаты у этих точек размытые, но “размытость” тут будет близка к масштабу с разрешающей способностью типа “с точностью до дома”. То есть, один-два дома вероятного пребывания определить можно в очень многих случаях. Опять же, определяется всё автоматически, “сложной эвристики” – снова не требуется.
Оказывается, что пара характеристик пользователя вида “приблизительный адрес места жительства”-“приблизительный адрес места работы” позволяет с большой точностью определить единственного кандидата, который и живёт, и работает в тех “размытых районах”, куда указывает эта “адресная пара”.
Действительно, если известен только приблизительный район места жительства пользователя, то “идентифицировать” его персону, по крайней мере, в случае с современным мегаполисом, невозможно: в том же районе прописаны тысячи людей. Но эти тысячи людей совсем не обязательно и работают в одном и том же небольшом районе. Поэтому добавление к “запросу” второго параметра – приблизительный адрес места работы, район – моментально урезает число вариантов до минимума.
Пользователь “вычислен персонально”.
Более того, можно составить чёткие критерии, когда программа “извлечения данных” определила пользователя точно, а когда – нет: просто учитывается число оставшихся возможных вариантов.
Да, конечно же, нужны базы данных с адресами, с указанием работодателя и места его нахождения. Но, с другой стороны, такие базы данных существуют, а “недостающие поля в таблицах” можно построить, сведя вместе несколько баз (это ещё и точность увеличивает).
Главное тут вот что: в приведённом решении хитрой задачи достигается “полная анонимность”, “полное обезличивание” на этапе сбора исходных данных; а позже, совсем другими серверами, из этих “обезличенных данных” восстанавливаются вполне точные персональные данные. Такая вот реконструкция алгоритмами data mining.
Кому интересно, вот ссылка на работу с исследованием этой темы: On the Anonymity of Home/Work Location Pairs. Также, около года назад, я писал про очень логически близкие к только что описанной технологии построения поведенческих профилей посетителей веб-сайтов.
Для тех, кто предпочитает сразу тему развивать: подумайте, что, в теории, аналогичная схема сработает и при анализе пользовательского интернет-трафика.
Адрес записки: https://dxdt.ru/2009/05/28/2385/
Похожие записки:
- Реплика: номера портов и работа Интернета
- Странные особенности Golang: комментарии и ассемблер
- Трафик на тестовом сервере TLS 1.3 и ESNI
- Полностью зашифрованные протоколы в Интернете
- Набеги ботов под прикрытием AI
- Техническое: один практический пример ошибочных настроек DNS
- Имена, не-имена и хостнеймы в DNS
- Новые криптосистемы на тестовом сервере TLS 1.3
- Утечки данных YubiKey/Infineon
- Геопривязка в персональных цифровых финансах
- Морфологический переворот как инструмент в "тесте Тьюринга"
Комментарии читателей блога: 9
1 <t> // 29th May 2009, 10:20 // Читатель arcman написал:
> в теории, аналогичная схема сработает и при анализе пользовательского интернет-трафика
Например владелец данного блога может, посмотрев логи, вычислить места работы и проживания читателей =)
Поэтому из дома и с работы нужно сидеть под разными никами.
В целом, даже если человек следит за своей приватностью, но при этом является активным интернет пользователем, то где нибудь он обязательно проколется.
2 <t> // 29th May 2009, 12:49 // Читатель sashket написал:
> Пользователь ?вычислен персонально?.
Ну, я не был бы столь категоричен. Если, к примеру, мой сосед по подъезду, или по лестничной клетке, да, наконец, жена работают со мной в одной конторе и пользуются данным ПО, тогда как?
3 <t> // 29th May 2009, 14:38 // Читатель arcman написал:
sashket
> тогда как?
тогда круг сужается не до 1 персоны, а до N, что все равно равносильно искомому.
это миллион человек трудно вручную проверить, а десяток, несложно уже.
4 <t> // 29th May 2009, 15:00 // Александр Венедюхин:
Угум-с.
Главное, что неоднозначное решение – оно легко определяется, опять же, на выходе получаем сильно конечный список “вероятных претендентов”. На следующем шаге “разрешающая способность” для этого списка увеличивается с помощью привлечения дополнительных факторов. Ну, например, посещение косметического салона. Или детского сада. Или поликлиники. Система отлично работает, уверяю вас.
5 <t> // 29th May 2009, 15:13 // Читатель Vladimir Dyuzhev написал:
> Система отлично работает, уверяю вас.
Это где это? Пока это только идея, хотя и 100% реализуемая.
P.S. Уверения — это не для научного блога. ;)
6 <t> // 29th May 2009, 17:06 // Александр Венедюхин:
ОК, исправим так: “схема отлично сработает…”
7 <t> // 29th May 2009, 17:11 // Читатель зашел в гости написал:
“Пока это только идея”
Да нет, уже давно не только идея. В развитых странах народ пользуется сотовыми телефонами, кредитными карточками, электронными “тэгами” для оплаты топлива, парковки, проезда по платным автодорогам, проезда в общественном транспорте, и т.д. За человеком можно вести чуть ли не поминутную слежку…
8 <t> // 30th May 2009, 03:25 // Читатель Vladimir Dyuzhev написал:
> За человеком можно вести чуть ли не поминутную слежку?
И это пока идея. Имплементация натолкнется на резкое сопротивление борцов за privacy. Они и по меньшим поводам вой поднимают. Правда, если КОМУ НАДО надо будет, то борцов успокоят, конечно. “Пытки необходимы для борьбы с терроризмом…” — и никто толком ничего сделать не может.
9 <t> // 1st June 2009, 00:14 // Читатель Sergey Kashin написал:
в журнале компью..ра давно писали, что поисковики так привязывают информацию от поситителей к анонимным профилям, и даже где-то эти базы с данными всплывали в интернете. http://offline.computerra.ru/2009/768/400255/ оригинал статьи