Основан 26 Июля 2013 года
freehacks.ru fhacks.me fhacks.pw fhacksnplmzxaaoo.onion
HashFlare
Показано с 1 по 3 из 3
  1. #1
    TopicStarter
    Заблокирован по собственному желанию
    Аватар для S3ct0r

    Статус
    Offline
    Регистрация
    30.03.2014
    Сообщений
    459
    Репутация
    202 + / -
    Другое

    Триангуляция

    Триангуляция по БС

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

    Часть этого утверждения — сущая правда. Стандартными средствами иногда можно определить расстояние от телефона до одной базовой станции. Именно этим, наверно, и объясняется живучесть убеждения в том, что триангуляция возможна. На самом деле это не так.

    Прежде чем начинать детальный разбор дела о триангуляции, стоит сделать существенную оговорку. Необходимо провести четкую границу между заблуждением о том, что базовые станции любой GSM-сети всегда триангулируют местоположение указанного телефона (вариант — всех телефонов в зоне покрытия) и возможностью обнаружения местоположения телефона другими средствами в рамках отдельно взятой сети.


    Услуги, привязанные к местоположению

    Для предоставления услуг, привязанных к местоположению абонента (location-based services, LBS), существует множество способов, опирающихся на наличие дополнительного программного и аппаратного обеспечения на всех базовых станциях конкретной сети, а иногда еще и в SIM-карте/телефоне абонента. Пример таких услуг: показать абоненту карту города и его место на ней, сообщить адрес ближайшего ресторана или магазина, сообщить о местоположении другого абонента, проложить маршрут в заданную точку.

    Для ряда применений достаточно приблизительно знать какую-то одну базовую станцию, в зоне покрытия которой находится абонент. Это можно сделать в любой сети GSM. Результат: круг радиусом до 32 км с центром в месте установки какой-то базовой станции. В городских условиях радиус можно сократить, так как зоны покрытия базовых станций обычно невелики. Стоит упомянуть, что информация о «текущей» базовой станции обновляется при каждом звонке/SMS или же где-то раз в час, поэтому для повышения точности обнаружения абоненту непосредственно перед «замером» присылают SMS или же побуждают самого абонента послать SMS с запросом вида «где я/где ближайший ресторан/гостиница/метро/...».

    Этот результат можно улучшить при помощи метода, называемого «time of arrival». Требуется модернизация всех базовых станций сети. Результат: круг радиусом 100-500 метров с центром в месте установки базовой станции. Применение еще более совершенных методов (их описание может быть найдено в сети по ключевым словам «angle of arrival», «uplink time difference of arrival», «GPS», «assisted GPS») позволяет еще больше сократить радиус круга или перенести его центр в реальное местоположение абонента.

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

    На этом экскурс в технологии определения местоположения абонента можно считать завершенным и возвращаться к оригинальной теме:

    Выглядит неправдоподобно? А что, если мы возьмем четыре компьютера, соединим их сетевыми кабелями друг с другом непосредственно, без использования промежуточных сетей, причем провода проложим строго по прямой? Сможем ли мы в таком случае определить координаты центрального компьютера, зная координаты периферийных и пользуясь только ping-ом? Сможем. Означает ли это, что подобный способ можно будет использовать всегда? Безусловно, нет. Во-первых, провода редко соединяют два компьютера непосредственно и строго по прямой, во-вторых, мы, как правило, не знаем точных координат «опорных» компьютеров и т.п. Продолжить этот список будет несложно.

    1. Возможна ли триангуляция местоположения телефона в сети GSM по трем (четырем, ...) базовым станциям?
    2. Кто может осуществить эту триангуляцию: абонент, оператор или обе стороны?


    Триангуляция

    Начнем с аналогии. Рассмотрим такое утверждение: "при помощи утилиты ping можно определить время прохождения TCP-пакетов от одного компьютера до другого, а значит и оценить расстояние между ними. Тогда по расстояниям от трех компьютеров, зная их координаты, можно получить координаты искомого компьютера".

    Выглядит неправдоподобно? А что, если мы возьмем четыре компьютера, соединим их сетевыми кабелями друг с другом непосредственно, без использования промежуточных сетей, причем провода проложим строго по прямой? Сможем ли мы в таком случае определить координаты центрального компьютера, зная координаты периферийных и пользуясь только ping-ом? Сможем. Означает ли это, что подобный способ можно будет использовать всегда? Безусловно, нет. Во-первых, провода редко соединяют два компьютера непосредственно и строго по прямой, во-вторых, мы, как правило, не знаем точных координат «опорных» компьютеров и т.п. Продолжить этот список будет несложно.

    Теперь вернемся к исходному утверждению. Можно ли стандартными средствами сети GSM определить расстояние от базовой станции до телефона? Короткий и ничего не объясняющий ответ - "можно". Зададимся дополнительными вопросами:

    1. Кто занимается измерениями – базовая станция или телефон?
    2. Всегда ли возможно такое измерение?
    3. Будет ли измерено кратчайшее расстояние между ними?
    4. С какой точностью будет произведено измерение?

    Чтобы понять, кто может произвести такое измерение, надо разобраться, что же знают друг о друге телефон и базовая станция. Стоит разделить описание на два случая: телефон находится в режиме ожидания и телефон находится в активном режиме (по нему разговаривают, принимают SMS, ...).

    Телефон в режиме ожидания

    [Только зарегистрированные могут видеть это. ]

    Базовые станции регулярно передают сигналы в эфир, чтобы телефоны могли понимать, находятся ли они в зоне покрытия. Телефоны же, напротив, большую часть времени ничего не передают, только принимают, с целью экономии заряда батарей. Это легко проверить на практике, положив телефон рядом с компьютерными аудиоколонками и наблюдая за наводимыми телефоном возмущениями либо купив простейший брелок-детектор GSM-сигналов. Отсюда следует, что определить местоположение обычного GSM-телефона в обычной GSM-сети в произвольный момент времени нельзя просто потому, что телефон молчит и никому "не сообщает", где он и куда его несут.

    Да, периодически телефон уведомляет сеть о том, в каком месте он находится, чтобы упростить доставку входящих звонков. Происходит это:

    1. При регистрации в сети;
    2. При переходе абонента из зоны покрытия одной группы базовых станций в другую (в группу может входить несколько сотен базовых станций, на миллионный город может быть всего дюжина подобных групп);
    3. Периодически — раз в полчаса-час, в зависимости от настроек сети.

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

    Во-первых, непонятно, от какой базовой станции измерять — со времени последнего обновления информации о местоположении телефон могли унести на значительное расстояние. Во-вторых, непонятно, что и как измерять. Базовая станция — не радиолокатор, и если телефон «молчит», то для нее он не существует.

    Итак, в режиме ожидания стандартный телефон в стандартной сети GSM полностью невидим для мобильной сети и не может быть ею "триангулирован".

    Сам телефон при этом находится в более выигрышном положении. Дело в том, что каждая базовая станция транслирует в эфир информацию о своих "соседях", указывая частоты, на которых работают ближайшие базовые станции той же сети. Телефон в режиме ожидания постоянно измеряет уровень сигнала (но не затухание) от каждой из "соседних" базовых и при необходимости выбирает в качестве дежурной базовой станции ту, сигнал от которой "лучше слышно". Если телефон обладает какими-то сведениями о том, где (по каким координатам) расположены базовые станции, то он может попытаться вычислить зону, в которой области гипотетического покрытия всех "соседних" базовых пересекаются. Где-то в пределах этой области и будет находиться телефон. Чем точнее телефон знает (или оценивает) границы зон покрытия, тем точнее будет работать такой метод. По имеющейся информации, именно так работает приложение Google Latitude. Если же данных о местонахождении базовых станций нет, то и у телефона не будет никакой возможности "триангулировать" свое положение.

    Телефон в активном режиме

    [Только зарегистрированные могут видеть это. ]

    В активном режиме телефон посылает сигналы какой-то одной базовой станции и принимает от нее ответные сигналы.

    У всех на слуху тот факт, что сети GSM могут работать на частотах 900, 1800 и (реже) 1900 mHz. На самом деле речь идет о диапазонах частот:890-960, 1710-1880 и 1850-1990 mHz соответственно.

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

    Базовая станция в процессе обслуживания разговора выполняет контролирующие и регулирующие функции. Она занимается расчетом величин так называемого временного сдвига (timing advance) и передает их телефону. Телефон использует их, чтобы корректировать ход своего таймера так, чтобы у него и у базовой станции «часы» шли синхронно и посланные телефоном сигналы достигали базовую станцию в пределах отведенного телефону «окна вещания». Чтобы правильно рассчитать временной сдвиг, базовая станция измеряет время прохождения сигнала от себя до телефона, но ей абсолютно не важно, сколько раз по пути следования сигнал отразился от зданий и прочих препятствий. Базовая станция также оценивает уровень сигнала от телефона и степень его затухания и выдает телефону рекомендации по необходимой мощности передачи.

    Телефон в процессе разговора тоже имеет информацию о временном сдвиге, уровне сигнала от базовой станции и мощности своего передатчика. Получается, что и базовая станция, и телефон могут, в принципе, как-то оценить расстояние друг до друга по пути следования радиосигнала, но они никак не могут учесть все возможные преломления и отклонения. Точность измерения расстояния по временному сдвигу составляет примерно 500 м.

    Выводы

    Если не вести речь про какого-то конкретного оператора, а говорить о GSM как о технологии вообще, то можно утверждать, что:

    1. Стандартные возможности сети GSM допускают построение систем определения местоположения абонента на основании измерения параметров прохождения радиосигнала, но стандарта GSM Phase 2+ на такие системы/технологии нет.
    2. Если в сети оператора не внедрена подобная технология, то средствами самой сети можно определить только последнее известное местоположение абонента с точностью до базовой станции, которая обслужила его звонок или регистрацию в сети. Можно послать на телефон SMS или позвонить и актуализировать эту информацию.
    3. На базе стандартного телефона сети GSM можно построить систему определения его местоположения, но только в том случае, если доступны данные о координатах установки базовых станций.
    4. Способ определения местоположения телефона средствами сети при помощи триангуляции (в том виде, в котором он изложен в начале статьи) — не более чем расхожий вымысел.

  2. 3 пользователя(ей) сказали cпасибо:
  3. #2
    Trust
    Аватар для ul1k317

    Статус
    Offline
    Регистрация
    26.08.2013
    Сообщений
    823
    Репутация
    395 + / -
    Web-программист
    Все верно кроме "определить местоположение обычного GSM-телефона в обычной GSM-сети в произвольный момент времени нельзя".
    Потому как существуют команды передаваемые базовой станцией широковещательно с целью определения подключен ли тот или иной абонент в настоящее время к этой "соте". Именно так и работает, например [Только зарегистрированные могут видеть это. ] и схожие сервисы у других операторов. Обычно такими методами определяется положение абонента в радиусе от 200м до 2км.

    P.S. При копипасте указываем источник.
    php, mysql, mssql, js, html, css, ajax, administrating, it consulting, etc.

  4. #3
    TopicStarter
    Заблокирован по собственному желанию
    Аватар для S3ct0r

    Статус
    Offline
    Регистрация
    30.03.2014
    Сообщений
    459
    Репутация
    202 + / -
    Другое
    Цитата Сообщение от ul1k317 Посмотреть сообщение
    Все верно кроме "определить местоположение обычного GSM-телефона в обычной GSM-сети в произвольный момент времени нельзя".
    Потому как существуют команды передаваемые базовой станцией широковещательно с целью определения подключен ли тот или иной абонент в настоящее время к этой "соте".
    но для того чтоб определить таким образом определенного абонента, нужно подавлять зону приема на определенных частотах, но это уже совсем другая история, будет время опишу подробно как это делается...

Метки этой темы

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •  
Информация на сайте предоставлена исключительно в ознакомительных целях, использование знаний в противозаконных целях преследуется по закону! Администрация не несет ответственности за ваши деяния.