![[personal profile]](https://www.dreamwidth.org/img/silk/identity/user.png)
В российских СМИ пишут, что за пассажирами метро будут следить при помощи SIM-карт (раз и два).
Утверждается, что "... Система будет работать следующим образом, рассказывает начальник оперативного отдела: когда пассажир пройдет в зоне действия датчика — ее радиус около 5 м, — система зафиксирует, что мимо пронесли SIM-карту с определенным номером. Если карта находится в розыске, система автоматически проложит маршрут ее передвижения и передаст информацию на пульт дежурного."
Как же это технически может быть реализовано?
Оттолкнемся от фактов:
1) Мобильный телефон в режиме ожидания почти ничего не передает (исключением являются периодические location update-ы).
2)SIM-карта не имеет непсредственной связи с внешним миром в обход телефона - это не RFID, ей нельзя послать радиосигнал и заставить послать что-то в ответ.
3)Телефон (точнее, baseband processor) реагирует на сигналы от базовых, причем не от всех подряд, а только от базовых текущего выбранного оператора, и только от той, которая является текущей "наилучшей базовой" с точки зрения телефона.
Вырисовывается два потенциальных сценария:
С1 (пассивный): "Датчик" изображает из себя базовую, при попадании в зону ее "покрытия" телефон автоматически выбирает ее в качестве "наилучшей" и тут же посылает location update
С2 (активный): "Датчик" изображает из себя базовую, при попадании в зону ее "покрытия" телефон автоматически выбирает ее в качестве "наилучшей", и базовая тут же посылает адресных или широковещательный сигнал, на который телефон каким-либо образом отреагирует.
"Пассивный" сценарий, очевидно, более интересный - чем проще будет система, тем лучше для ее разработчиков и заказчиков.
Как же сделать так, чтобы телефон выбрал базовую-"датчик" в качестве наилучшей?
В режиме ожидания телефон мониторит уровень сигнала текущей "наилучшей" базовой и принимает периодически рассылаемый этой базовой список частот соседних базовых. Эти частоты тоже мониторятся на предмет уровня сигнала, и как только кто-то из соседей становится ощутимо лучше текущей базовой телефон выбирает этого соседа в качестве новой "наилучшей" базовой и начинает слушать ее.
Получается, что необходимо добится выполнения трех условий:
У1: "Датчик" должен анонсировать себя как базовую, принадлежащую сразу нескольким (всем возможным) мобильным сетям - техически это возможно
У2: Находящиеся рядом с метро базовые GSM-операторов должны включать "датчик" в список соседей
У3: Когда абонент находится рядом с "датчиком", сигнал от датчика должен быть уверенно лучше сигналов от всех прочих соседних базовых
Заметим, что "датчику" не обязательно быть реально подключенным к сети операторов - он может ничего не отвечать на попытки телефона позвонить или послать SMS-ы. Впрочем, содействие оператор все равно необходимо: "датчик" должен быть прописан в "списке соседей" на базовых оператора.
Как же сделать так, чтобы телефон сам отсылал в нужный момент информацию о SIM-карте?
Если почитать, в какие момент осуществляется location update, то легко можно выяснить, что он делается сразу после включения телефона (в процессе регистрации в сети), а затем периодически раз в несколько часов или при смене location area.
Базовые станции сгрупированы в location area для удобства работы с ними и уменьшения количества служебного траффика в сети (при входящем звонке поиск телефона происходит в рамках одной location area). Каждая базовая регулярно передает номер своей группы (location area) по широковещательному каналу. Как только телефон при смене "наилучшей" базовой обнаруживает, что новая базовая и старая базовая из разных групп, он тут же делает location update - то есть, по сути, сообщает, что теперь в случае чего его надо искать в другой группе базовых, вот тут.
Получается, что "датчику" достаточно анонсировать себя как базовую, входящую в location area, отличную от всех своих сосдей - тогда телефон автоматически сделает location update, оказавшись рядом с ним.
Начальная фаза процедуры location update выполняется без использования шифрования, что может позволить "датчику" получить IMSI сим-карты (вот тут есть любопытная схема, которая слишком детальна для того, чтобы я ее описывал в этом посте).
А что насчет фразы про выключенные мобильники?
Вот она: "Для полноценной работы датчики должны быть установлены на всех камерах системы видеонаблюдения на станциях, в вагонах метро и вестибюлях, — пояснил Мохов (начальник оперативного отдела УВД на Московском метрополитене). — [...] При этом неважно, включен телефон или нет. Главное, чтобы внутри оставалась SIM-карта."
Тут можно сделать два комментария:
- Наличие в телефоне СИМ-карты действительно критично. Телефон без СИМ-карты будет регистрироваться в произвольной сети в режиме "emergency calls only" и не будет выполнять location update-ы по правилам, описанным выше.
- На месте начальника оперативного отдела я бы тоже говорил, что система - супер-крута, у нее орлиный глаз и ей пофигу, выключен телефон или нет. Это звучит намного лучше, чем правда о том, что выключение телефона сводит полезность системы на "нет". Опять же, глядишь, недалекого ума мошенники могут принять это за чистую монету и не выключить телефон. От такого заявления одни плюсы и никаких минусов, но отслеживание выключенных телефонов технически нереализуемо.
UPDATE:
По прошествии суток и после чтения комментариев мне пришли в голову такие дополнительные мысли:
Во-первых, если в метро уже есть покрытие, то с точки зрения оптимизации количества служебного траффика все базовые в метро должны быть выделены в свою отдельную location area, чтобы при переезде от станции к станции все мобильники "сидели тихо" (спасибо
dumendil и
kzayko). В таком случае велика вероятность, что при входе в метро мобильники оператора, обеспечивающего покрытие, уже делают location update. И если есть "плотные контакты" с оператором, то можно было бы подумать о том, как получать location update-ы с этих базовых.
С другой стороны, это не решает всех вопросов: а что делать с абонентами операторов, у которых нет покрытия в метро? А как отделять location update-ы в этих базовых от всех остальных, происходящих в сети (т.е. к какому элементу сети подключаться "людям в погонах", как фильтровать нужное/ненужное, как сделать так, чтобы инженеры сети и "люди в погонах" не ходили друг другу по ногам и не ломали (пусть даже нечаяно/ненамеренно) процессы друг друга?). Отдельное нечто, что изображает из себя базовую удобнее и для оператора и для людей в погонах.
Во-вторых, если мы говорим о получении данных о SIM-картах, то это точно не NFC и не RFID - в симке нету места для нормальной антены/транспондера RFID, а у NFC - дистанции не те (спасибо
zmeuka и
neograff)
Утверждается, что "... Система будет работать следующим образом, рассказывает начальник оперативного отдела: когда пассажир пройдет в зоне действия датчика — ее радиус около 5 м, — система зафиксирует, что мимо пронесли SIM-карту с определенным номером. Если карта находится в розыске, система автоматически проложит маршрут ее передвижения и передаст информацию на пульт дежурного."
Как же это технически может быть реализовано?
Оттолкнемся от фактов:
1) Мобильный телефон в режиме ожидания почти ничего не передает (исключением являются периодические location update-ы).
2)SIM-карта не имеет непсредственной связи с внешним миром в обход телефона - это не RFID, ей нельзя послать радиосигнал и заставить послать что-то в ответ.
3)Телефон (точнее, baseband processor) реагирует на сигналы от базовых, причем не от всех подряд, а только от базовых текущего выбранного оператора, и только от той, которая является текущей "наилучшей базовой" с точки зрения телефона.
Вырисовывается два потенциальных сценария:
С1 (пассивный): "Датчик" изображает из себя базовую, при попадании в зону ее "покрытия" телефон автоматически выбирает ее в качестве "наилучшей" и тут же посылает location update
С2 (активный): "Датчик" изображает из себя базовую, при попадании в зону ее "покрытия" телефон автоматически выбирает ее в качестве "наилучшей", и базовая тут же посылает адресных или широковещательный сигнал, на который телефон каким-либо образом отреагирует.
"Пассивный" сценарий, очевидно, более интересный - чем проще будет система, тем лучше для ее разработчиков и заказчиков.
Как же сделать так, чтобы телефон выбрал базовую-"датчик" в качестве наилучшей?
В режиме ожидания телефон мониторит уровень сигнала текущей "наилучшей" базовой и принимает периодически рассылаемый этой базовой список частот соседних базовых. Эти частоты тоже мониторятся на предмет уровня сигнала, и как только кто-то из соседей становится ощутимо лучше текущей базовой телефон выбирает этого соседа в качестве новой "наилучшей" базовой и начинает слушать ее.
Получается, что необходимо добится выполнения трех условий:
У1: "Датчик" должен анонсировать себя как базовую, принадлежащую сразу нескольким (всем возможным) мобильным сетям - техически это возможно
У2: Находящиеся рядом с метро базовые GSM-операторов должны включать "датчик" в список соседей
У3: Когда абонент находится рядом с "датчиком", сигнал от датчика должен быть уверенно лучше сигналов от всех прочих соседних базовых
Заметим, что "датчику" не обязательно быть реально подключенным к сети операторов - он может ничего не отвечать на попытки телефона позвонить или послать SMS-ы. Впрочем, содействие оператор все равно необходимо: "датчик" должен быть прописан в "списке соседей" на базовых оператора.
Как же сделать так, чтобы телефон сам отсылал в нужный момент информацию о SIM-карте?
Если почитать, в какие момент осуществляется location update, то легко можно выяснить, что он делается сразу после включения телефона (в процессе регистрации в сети), а затем периодически раз в несколько часов или при смене location area.
Базовые станции сгрупированы в location area для удобства работы с ними и уменьшения количества служебного траффика в сети (при входящем звонке поиск телефона происходит в рамках одной location area). Каждая базовая регулярно передает номер своей группы (location area) по широковещательному каналу. Как только телефон при смене "наилучшей" базовой обнаруживает, что новая базовая и старая базовая из разных групп, он тут же делает location update - то есть, по сути, сообщает, что теперь в случае чего его надо искать в другой группе базовых, вот тут.
Получается, что "датчику" достаточно анонсировать себя как базовую, входящую в location area, отличную от всех своих сосдей - тогда телефон автоматически сделает location update, оказавшись рядом с ним.
Начальная фаза процедуры location update выполняется без использования шифрования, что может позволить "датчику" получить IMSI сим-карты (вот тут есть любопытная схема, которая слишком детальна для того, чтобы я ее описывал в этом посте).
А что насчет фразы про выключенные мобильники?
Вот она: "Для полноценной работы датчики должны быть установлены на всех камерах системы видеонаблюдения на станциях, в вагонах метро и вестибюлях, — пояснил Мохов (начальник оперативного отдела УВД на Московском метрополитене). — [...] При этом неважно, включен телефон или нет. Главное, чтобы внутри оставалась SIM-карта."
Тут можно сделать два комментария:
- Наличие в телефоне СИМ-карты действительно критично. Телефон без СИМ-карты будет регистрироваться в произвольной сети в режиме "emergency calls only" и не будет выполнять location update-ы по правилам, описанным выше.
- На месте начальника оперативного отдела я бы тоже говорил, что система - супер-крута, у нее орлиный глаз и ей пофигу, выключен телефон или нет. Это звучит намного лучше, чем правда о том, что выключение телефона сводит полезность системы на "нет". Опять же, глядишь, недалекого ума мошенники могут принять это за чистую монету и не выключить телефон. От такого заявления одни плюсы и никаких минусов, но отслеживание выключенных телефонов технически нереализуемо.
UPDATE:
По прошествии суток и после чтения комментариев мне пришли в голову такие дополнительные мысли:
Во-первых, если в метро уже есть покрытие, то с точки зрения оптимизации количества служебного траффика все базовые в метро должны быть выделены в свою отдельную location area, чтобы при переезде от станции к станции все мобильники "сидели тихо" (спасибо
![[livejournal.com profile]](https://www.dreamwidth.org/img/external/lj-userinfo.gif)
![[livejournal.com profile]](https://www.dreamwidth.org/img/external/lj-userinfo.gif)
С другой стороны, это не решает всех вопросов: а что делать с абонентами операторов, у которых нет покрытия в метро? А как отделять location update-ы в этих базовых от всех остальных, происходящих в сети (т.е. к какому элементу сети подключаться "людям в погонах", как фильтровать нужное/ненужное, как сделать так, чтобы инженеры сети и "люди в погонах" не ходили друг другу по ногам и не ломали (пусть даже нечаяно/ненамеренно) процессы друг друга?). Отдельное нечто, что изображает из себя базовую удобнее и для оператора и для людей в погонах.
Во-вторых, если мы говорим о получении данных о SIM-картах, то это точно не NFC и не RFID - в симке нету места для нормальной антены/транспондера RFID, а у NFC - дистанции не те (спасибо
![[livejournal.com profile]](https://www.dreamwidth.org/img/external/lj-userinfo.gif)
![[livejournal.com profile]](https://www.dreamwidth.org/img/external/lj-userinfo.gif)
(no subject)
Date: 2013-07-31 03:35 pm (UTC)(no subject)
Date: 2013-07-31 03:47 pm (UTC)А им скажут, что ну, вы же понимаете, это метро, а кстати стоя на эскалаторе разговаривать по телефону вообще запрещено.